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-dynixptx.h,v 6.12 1998/11/10 03:59:54 mcooper Exp $
11  * @(#)os-dynixptx.h
12  */
13 
14 /*
15  * System V Release 4 (dynixptx)
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(dynixptx)
23 #define dynixptx
24 #endif
25 
26 /*
27  * We need <utime.h>
28  */
29 #define NEED_UTIME_H
30 
31 /*
32  * Set process args to messages that show up when running ps(1)
33  *
34  * Under some OS's, the SETARGS code will cause ": is not an identifier"
35  * errors for "special" commands.
36  */
37 #define SETARGS
38 
39 /*
40  * Define the type of directory routines your system has.
41  */
42 #define DIR_TYPE	DIR_DIRENT
43 
44 /*
45  * Determine what routines we have to get filesystem info.
46  */
47 #define FSI_TYPE	FSI_GETMNTENT
48 
49 /*
50  * Type of non-blocking I/O.
51  */
52 #define NBIO_TYPE	NBIO_FCNTL
53 
54 /*
55  * Type of wait() function to use.
56  */
57 #define WAIT_TYPE	WAIT_WAITPID
58 
59 /*
60  * Type of argument passed to wait() (above).
61  */
62 #define WAIT_ARG_TYPE	int
63 
64 /*
65  * Select the type of executable file format.
66  */
67 #define EXE_TYPE	EXE_COFF
68 #define FILEHDR_H	<filehdr.h>	/* Name of <filehdr.h> include file */
69 
70 /*
71  * Select the type of statfs() system call (if any).
72  */
73 #define STATFS_TYPE	STATFS_SYSV
74 
75 /*
76  * Type of arg functions we have.
77  */
78 #define ARG_TYPE	ARG_VARARGS
79 
80 /*
81  * Do we have select()?
82  */
83 #define HAVE_SELECT
84 
85 /*
86  * Type of signal handling functions.
87  */
88 #if	!defined(POSIX_SIGNALS)
89 #define POSIX_SIGNALS
90 #endif
91 #include <signal.h>
92 #define signal(s,a) sigset(s,(void(*)())a)
93 
94 /*
95  * System V compatibility
96  */
97 #include <string.h>
98 #include <fcntl.h>
99 #include <sys/select.h>
100 #include <time.h>
101 #include <netdb.h>
102 
103 #define bcopy(a,b,c) 	memcpy(b,a,c)
104 #define bzero(a,b) 	memset(a,0,b)
105 #define setlinebuf(a)	setvbuf(a, NULL, _IOLBF, BUFSIZ)
106 
107 /*
108  * UID argument type for chown()
109  */
110 typedef uid_t CHOWN_UID_T;
111 
112 /*
113  * GID argument type for chown()
114  */
115 typedef gid_t CHOWN_GID_T;
116 
117 /*
118  * Our types
119  */
120 typedef uid_t UID_T;	/* Must be signed */
121 typedef gid_t GID_T;	/* Must be signed */
122 
123 /*
124  * Generic pointer, used by memcpy, malloc, etc.  Usually char or void.
125  */
126 typedef char POINTER;
127 
128 /*
129  * Type of set file time function available
130  */
131 #define SETFTIME_TYPE	SETFTIME_UTIME
132 
133 #define MOUNTED MNTTABNAME
134 
135 /*
136  * We have fchown()
137  */
138 #undef HAVE_FCHOWN
139 
140 /*
141  * We have fchmod()
142  */
143 #undef HAVE_FCHMOD
144 
145 /*
146  * We don't have u_char
147  */
148 typedef unsigned char u_char;
149 
150 /*
151  * Path to the remote shell command
152  */
153 #define _PATH_REMSH	"/usr/bin/resh"
154