COMPAT_ULTRIX(8)

NAME
compat_ultrix - setup procedure for ULTRIX compatibility on MIPS and VAX architectures

DESCRIPTION
NetBSD/mips and NetBSD/vax architectures can run Risc ULTRIX and VAX ULTRIX executables, respectively. However, you have to worry about the legal issues of ensuring that you have a right to use any ULTRIX binaries on your machine.

Most executables will work. The exceptions include programs that use proprietary, ULTRIX-specific features (LAT, CI support, DECnet support) and various system calls, ioctl()'s, or ULTRIX kernel semantics that are difficult to emulate (e.g. ULTRIX packetfilter) or buggy (e.g. ULTRIX NIS).

All ULTRIX executables are static, so no shared libraries are required for ULTRIX compatibility. However, ULTRIX is based on a 4.3BSD alpha release. ULTRIX commands and libraries are often much older than their NetBSD or even SunOS 4.x equivalents, and may require incompatible configuration files.

SYSTEM CONFIGURATION FILES
Set up resolv.conf and svc.conf as below:

# mkdir -p /emul/ultrix/etc
# cd /emul/ultrix/etc
# egrep 'domain|nameserver' /etc/resolv.conf > ./resolv.conf
# cp -p /usr/share/examples/emul/ultrix/etc/* ./

  /etc/resolv.conf
The ULTRIX resolver library only understands domain and nameserver lines in resolv.conf(5). You should create a copy of /etc/resolv.conf containing only those commands and put it in /emul/ultrix/etc/resolv.conf. Note that the domain search order used by ULTRIX executables may not be the same as native binaries; there is no good way around this.

  /etc/svc.conf
ULTRIX uses /etc/svc.conf to select an ordered search of NIS, Hesiod, or local flat-file mappings. You should create an /emul/ultrix/etc/svc.conf specifying either local files or bind (DNS) lookups for all ULTRIX name services.

SEE ALSO
resolv.conf(5)

BUGS
RISC ULTRIX NIS (YP) is known to not work. The ULTRIX NIS libraries have a consistent endian-ness bug. ULTRIX NIS client will not inter-operate with the NetBSD ypbind(8) process. The only workaround is to use /etc/svc.conf to disable NIS (YP).

The ndbm hashed-password file used by ULTRIX are incompatible with the db hashed-password file used by NetBSD. There is no good solution for this. NIS would be a good one, if ULTRIX NIS worked.

The API used by Xservers to talk to the kernel is currently compatible with ULTRIX 4.1. An implementation of the ULTRIX 4.2 Xws interface (used by X11R6) is in progress.

A complete list of things which fail to work in ULTRIX compatibility mode should be added here.