Installation guide

#include <sys/sysinfo.h>
#include <sys/proc.h>
.
.
.
int buf[2], val, arg;
.
.
.
/* Do not print the warning to the user */
buf[0] = SSIN_UACPROC;
buf[1] = UAC_NOPRINT;
error = setsysinfo(SSI_NVPAIRS, buf, 1, 0, 0);
.
.
.
/* Do not print the warning and deliver a SIGBUS signal */
buf[0] = SSIN_UACPROC;
buf[1] = UAC_NOPRINT | UAC_SIGBUS;
error = setsysinfo(SSI_NVPAIRS, buf, 1, 0, 0);
.
.
.
On ULTRIX systems, the catopen routine opens a message catalog and
returns a catalog descriptor if successful. On DIGITAL UNIX systems,
the catopen routine does not open the message catalog. Instead, it is
the catgets routine that opens a message catalog. Therefore, if your
application checks whether a message catalog was successfully opened,
you must change your program to reflect this change. For example, the
following ULTRIX code will not work on a DIGITAL UNIX system:
catd = catopen("example.cat", 0);
if (catd == (nl_catd) -1)
/* message catalog was not opened */
else
/* message catalog was opened */
The following code shows how the previous code is modified to use the
catgets routine:
catd = catopen("example.cat", 0);
if (catgets(catd, 1, 1, NULL) == NULL)
/* message catalog was not opened */
else
/* message catalog was opened */
The manner for establishing controlling terminals is an
implementation-defined process that is different for DIGITAL UNIX
and ULTRIX systems. On the DIGITAL UNIX system (and according to
the POSIX standard), a process must be a session leader to establish a
controlling terminal. The DIGITAL UNIX system defines allocation of a
control terminal with an explicit call to ioctl(). When porting source
code, you need to obtain a controlling terminal in the following way:
(void) setsid();
fd = open("/dev/tty01", O_RDWR );
Migrating Your ULTRIX Application to a DIGITAL UNIX System 7–43