COMPAT_ULTRIX(8) | System Manager's Manual | 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.

January 16, 1999 | NetBSD 9.4