diff options
Diffstat (limited to 'defines.h')
-rw-r--r-- | defines.h | 207 |
1 files changed, 207 insertions, 0 deletions
diff --git a/defines.h b/defines.h new file mode 100644 index 000000000..9d5d17f2b --- /dev/null +++ b/defines.h | |||
@@ -0,0 +1,207 @@ | |||
1 | #include <sys/types.h> /* For u_intXX_t */ | ||
2 | #include <sys/socket.h> /* For SHUT_XXXX */ | ||
3 | |||
4 | #ifdef HAVE_PATHS_H | ||
5 | # include <paths.h> /* For _PATH_XXX */ | ||
6 | #endif | ||
7 | |||
8 | #ifdef HAVE_UTMP_H | ||
9 | # include <utmp.h> /* For _PATH_XXX */ | ||
10 | #endif | ||
11 | |||
12 | #if defined(HAVE_UTMPX_H) && defined(USE_UTMPX) | ||
13 | # include <utmpx.h> /* For _PATH_XXX */ | ||
14 | #endif | ||
15 | |||
16 | #ifdef HAVE_SYS_TIME_H | ||
17 | # include <sys/time.h> /* For timersub */ | ||
18 | #endif | ||
19 | |||
20 | #ifdef HAVE_MAILLOCK_H | ||
21 | #include <maillock.h> | ||
22 | #endif | ||
23 | |||
24 | #ifndef SHUT_RDWR | ||
25 | enum | ||
26 | { | ||
27 | SHUT_RD = 0, /* No more receptions. */ | ||
28 | SHUT_WR, /* No more transmissions. */ | ||
29 | SHUT_RDWR /* No more receptions or transmissions. */ | ||
30 | }; | ||
31 | # define SHUT_RD SHUT_RD | ||
32 | # define SHUT_WR SHUT_WR | ||
33 | # define SHUT_RDWR SHUT_RDWR | ||
34 | #endif | ||
35 | |||
36 | /* If sys/types.h does not supply intXX_t, supply them ourselves */ | ||
37 | /* (or die trying) */ | ||
38 | #ifndef HAVE_INTXX_T | ||
39 | # if (SIZEOF_SHORT_INT == 2) | ||
40 | # define int16_t short int | ||
41 | # else | ||
42 | # error "16 bit int type not found." | ||
43 | # endif | ||
44 | # if (SIZEOF_INT == 4) | ||
45 | # define int32_t int | ||
46 | # else | ||
47 | # error "32 bit int type not found." | ||
48 | # endif | ||
49 | # if (SIZEOF_LONG_INT == 8) | ||
50 | # define int64_t long int | ||
51 | # else | ||
52 | # if (SIZEOF_LONG_LONG_INT == 8) | ||
53 | # define int64_t long long int | ||
54 | # else | ||
55 | # error "64 bit int type not found." | ||
56 | # endif | ||
57 | # endif | ||
58 | #endif | ||
59 | |||
60 | /* If sys/types.h does not supply u_intXX_t, supply them ourselves */ | ||
61 | #ifndef HAVE_U_INTXX_T | ||
62 | # ifdef HAVE_UINTXX_T | ||
63 | # define u_int16_t uint16_t | ||
64 | # define u_int32_t uint32_t | ||
65 | # define u_int64_t uint64_t | ||
66 | # else | ||
67 | # if (SIZEOF_SHORT_INT == 2) | ||
68 | # define u_int16_t unsigned short int | ||
69 | # else | ||
70 | # error "16 bit int type not found." | ||
71 | # endif | ||
72 | # if (SIZEOF_INT == 4) | ||
73 | # define u_int32_t unsigned int | ||
74 | # else | ||
75 | # error "32 bit int type not found." | ||
76 | # endif | ||
77 | # if (SIZEOF_LONG_INT == 8) | ||
78 | # define u_int64_t unsigned long int | ||
79 | # else | ||
80 | # if (SIZEOF_LONG_LONG_INT == 8) | ||
81 | # define u_int64_t unsigned long long int | ||
82 | # else | ||
83 | # error "64 bit int type not found." | ||
84 | # endif | ||
85 | # endif | ||
86 | # endif | ||
87 | #endif | ||
88 | |||
89 | /* If quad_t is not supplied, then supply it now. We can rely on int64_t */ | ||
90 | /* being defined by the above */ | ||
91 | #ifndef HAVE_QUAD_T | ||
92 | # define quad_t int64_t | ||
93 | #endif | ||
94 | |||
95 | /* If _PATH_LASTLOG is not defined by system headers, set it to the */ | ||
96 | /* lastlog file detected by autoconf */ | ||
97 | #ifndef _PATH_LASTLOG | ||
98 | # ifdef LASTLOG_LOCATION | ||
99 | # define _PATH_LASTLOG LASTLOG_LOCATION | ||
100 | # endif | ||
101 | #endif | ||
102 | |||
103 | #ifndef _PATH_UTMP | ||
104 | # ifdef UTMP_FILE | ||
105 | # define _PATH_UTMP UTMP_FILE | ||
106 | # else | ||
107 | # define _PATH_UTMP "/var/adm/utmp" | ||
108 | # endif | ||
109 | #endif | ||
110 | |||
111 | #ifndef _PATH_WTMP | ||
112 | # ifdef WTMP_FILE | ||
113 | # define _PATH_WTMP WTMP_FILE | ||
114 | # else | ||
115 | # define _PATH_WTMP "/var/adm/wtmp" | ||
116 | # endif | ||
117 | #endif | ||
118 | |||
119 | #if defined(HAVE_UTMPX_H) && defined(USE_UTMPX) | ||
120 | # ifndef _PATH_UTMPX | ||
121 | # ifdef UTMPX_FILE | ||
122 | # define _PATH_UTMPX UTMPX_FILE | ||
123 | # else | ||
124 | # define _PATH_UTMPX "/var/adm/utmpx" | ||
125 | # endif | ||
126 | # endif | ||
127 | # ifndef _PATH_WTMPX | ||
128 | # ifdef WTMPX_FILE | ||
129 | # define _PATH_WTMPX WTMPX_FILE | ||
130 | # else | ||
131 | # define _PATH_WTMPX "/var/adm/wtmp" | ||
132 | # endif | ||
133 | # endif | ||
134 | #endif | ||
135 | |||
136 | #ifndef _PATH_BSHELL | ||
137 | # define _PATH_BSHELL "/bin/sh" | ||
138 | #endif | ||
139 | |||
140 | #ifdef USER_PATH | ||
141 | # ifdef _PATH_STDPATH | ||
142 | # undef _PATH_STDPATH | ||
143 | # endif | ||
144 | # define _PATH_STDPATH USER_PATH | ||
145 | #endif | ||
146 | |||
147 | #ifndef _PATH_STDPATH | ||
148 | # define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin" | ||
149 | #endif | ||
150 | |||
151 | #ifndef _PATH_DEVNULL | ||
152 | # define _PATH_DEVNULL "/dev/null" | ||
153 | #endif | ||
154 | |||
155 | #ifndef MAILDIR | ||
156 | # define MAILDIR MAIL_DIRECTORY | ||
157 | #endif | ||
158 | |||
159 | #if !defined(_PATH_MAILDIR) && defined(MAILDIR) | ||
160 | # define _PATH_MAILDIR MAILDIR | ||
161 | #endif /* !defined(_PATH_MAILDIR) && defined(MAILDIR) */ | ||
162 | |||
163 | #ifndef MAX | ||
164 | # define MAX(a,b) (((a)>(b))?(a):(b)) | ||
165 | # define MIN(a,b) (((a)<(b))?(a):(b)) | ||
166 | #endif | ||
167 | |||
168 | #ifndef timersub | ||
169 | #define timersub(a, b, result) \ | ||
170 | do { \ | ||
171 | (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; \ | ||
172 | (result)->tv_usec = (a)->tv_usec - (b)->tv_usec; \ | ||
173 | if ((result)->tv_usec < 0) { \ | ||
174 | --(result)->tv_sec; \ | ||
175 | (result)->tv_usec += 1000000; \ | ||
176 | } \ | ||
177 | } while (0) | ||
178 | #endif | ||
179 | |||
180 | /* In older versions of libpam, pam_strerror takes a single argument */ | ||
181 | #ifdef HAVE_OLD_PAM | ||
182 | # define PAM_STRERROR(a,b) pam_strerror((b)) | ||
183 | #else | ||
184 | # define PAM_STRERROR(a,b) pam_strerror((a),(b)) | ||
185 | #endif | ||
186 | |||
187 | #ifndef __P | ||
188 | # define __P(x) x | ||
189 | #endif | ||
190 | |||
191 | #if !defined(__GNUC__) || (__GNUC__ < 2) | ||
192 | # define __attribute__(x) | ||
193 | #endif /* !defined(__GNUC__) || (__GNUC__ < 2) */ | ||
194 | |||
195 | #if !defined(HAVE_SETEUID) && defined(HAVE_SETREUID) | ||
196 | # define seteuid(a) setreuid(-1,a) | ||
197 | #endif /* !defined(HAVE_SETEUID) && defined(HAVE_SETREUID) */ | ||
198 | |||
199 | #ifndef HAVE_INNETGR | ||
200 | # define innetgr(a,b,c,d) (0) | ||
201 | #endif /* HAVE_INNETGR */ | ||
202 | |||
203 | #ifndef _PATH_RSH | ||
204 | # ifdef RSH_PATH | ||
205 | # define _PATH_RSH RSH_PATH | ||
206 | # endif /* RSH_PATH */ | ||
207 | #endif /* _PATH_RSH */ | ||