1 /* 2 * Copyright (c) 1992-1998 Michael A. Cooper. 3 * This software may be freely used and distributed provided it is not 4 * sold for profit or used in part or in whole for commercial gain 5 * without prior written agreement, and the author is credited 6 * appropriately. 7 */ 8 9 /* 10 * $Id: os-unicos.h,v 6.5 1998/11/10 04:00:07 mcooper Exp $ 11 * @(#)os-unicos.h 12 */ 13 14 /* 15 * Unicos 16 */ 17 18 /* 19 * Define the following name for use in #ifdef's. 20 * The value should be all upper-case with no periods (.). 21 */ 22 #if !defined(UNICOS) 23 #define UNICOS 24 #endif 25 26 /* 27 * Set process args to messages that show up when running ps(1) 28 * 29 * Under some OS's, the SETARGS code will cause ": is not an identifier" 30 * errors for "special" commands. 31 */ 32 #define SETARGS 33 34 /* 35 * Define the type of directory routines your system has. 36 */ 37 #define DIR_TYPE DIR_DIRENT 38 39 /* 40 * Determine what routines we have to get filesystem info. 41 */ 42 #define FSI_TYPE FSI_GETMNTENT2 43 44 /* 45 * Type of non-blocking I/O. 46 */ 47 #define NBIO_TYPE NBIO_FCNTL 48 49 /* 50 * Type of wait() function to use. 51 */ 52 #define WAIT_TYPE WAIT_WAITPID 53 54 /* 55 * Type of argument passed to wait() (above). 56 */ 57 #define WAIT_ARG_TYPE int 58 59 /* 60 * Select the type of executable file format. 61 */ 62 #define EXE_TYPE EXE_AOUT 63 64 /* 65 * Select the type of statfs() system call (if any). 66 */ 67 #define STATFS_TYPE STATFS_SYSV 68 69 /* 70 * Type of arg functions we have. 71 */ 72 #define ARG_TYPE ARG_VARARGS 73 74 /* 75 * System V compatibility 76 */ 77 #include <string.h> 78 79 #define bcopy(a,b,c) memcpy(b,a,c) 80 #define bzero(a,b) memset(a,0,b) 81 #define setlinebuf(a) setvbuf(a, NULL, _IOLBF, BUFSIZ) 82 83 /* 84 * UID argument type for chown() 85 */ 86 typedef int CHOWN_UID_T; 87 88 /* 89 * GID argument type for chown() 90 */ 91 typedef int CHOWN_GID_T; 92 93 /* 94 * Our types 95 */ 96 typedef long UID_T; /* Must be signed */ 97 typedef long GID_T; /* Must be signed */ 98 99 #define MAXPATHLEN PATH_MAX 100 #define N_BADMAG BADMAG 101 102 #define mnt_special mt_filsys 103 #define mnt_fstype mt_fstyp 104 #define mnt_mntopts mt_mntopts 105 #define mnt_mountp mt_dev 106 #define target utarget 107 108 /* 109 * Generic pointer, used by memcpy, malloc, etc. Usually char or void. 110 */ 111 typedef void POINTER; 112 113 /* 114 * Type of set file time function available 115 */ 116 #define SETFTIME_TYPE SETFTIME_UTIMES 117 118 /* 119 * Things we have 120 */ 121 #define HAVE_FCHOWN /* Have fchown() */ 122 #define HAVE_FCHMOD /* Have fchmod() */ 123 #define HAVE_SELECT /* Have select() */ 124 /*#define HAVE_SAVED_IDS /* Have POSIX style saved [ug]id's */ 125 #ifndef POSIX_SIGNALS 126 #define POSIX_SIGNALS /* Have POSIX signals */ 127 #endif 128 129 /* 130 * Things we need 131 */ 132 #define NEED_UNISTD_H /* Need <unistd.h> */ 133 #define NEED_FCNTL_H /* Need <fcntl.h> */ 134 135 /* 136 * Miscellaneous 137 */ 138 #define MNTENT_H <mntent.h> /* Name of mntent.h include file */ 139 #define MNTTAB_H <mnttab.h> /* Name of mnttab.h include file */ 140 141 /* 142 * Mount table 143 */ 144 #ifndef MNTTAB 145 #define MNTTAB "/etc/mnttab 146 #endif 147