diff options
-rw-r--r-- | .cvsignore | 28 | ||||
-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | config.h.in | 1708 | ||||
-rwxr-xr-x | configure | 19741 | ||||
-rw-r--r-- | moduli.0 | 74 | ||||
-rw-r--r-- | openbsd-compat/.cvsignore | 1 | ||||
-rw-r--r-- | openbsd-compat/regress/.cvsignore | 5 | ||||
-rw-r--r-- | regress/.cvsignore | 31 | ||||
-rw-r--r-- | scard/.cvsignore | 2 | ||||
-rw-r--r-- | scp.0 | 163 | ||||
-rw-r--r-- | sftp-server.0 | 95 | ||||
-rw-r--r-- | sftp.0 | 370 | ||||
-rw-r--r-- | ssh-add.0 | 123 | ||||
-rw-r--r-- | ssh-agent.0 | 128 | ||||
-rw-r--r-- | ssh-keygen.0 | 562 | ||||
-rw-r--r-- | ssh-keyscan.0 | 110 | ||||
-rw-r--r-- | ssh-keysign.0 | 53 | ||||
-rw-r--r-- | ssh-pkcs11-helper.0 | 25 | ||||
-rw-r--r-- | ssh.0 | 946 | ||||
-rw-r--r-- | ssh_config.0 | 889 | ||||
-rw-r--r-- | sshd.0 | 643 | ||||
-rw-r--r-- | sshd_config.0 | 835 |
22 files changed, 26466 insertions, 67 deletions
diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index 9baaa3b4e..000000000 --- a/.cvsignore +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | *.0 | ||
2 | *.out | ||
3 | Makefile | ||
4 | autom4te.cache | ||
5 | buildit.sh | ||
6 | buildpkg.sh | ||
7 | config.cache | ||
8 | config.h | ||
9 | config.h.in | ||
10 | config.log | ||
11 | config.status | ||
12 | configure | ||
13 | openssh.xml | ||
14 | opensshd.init | ||
15 | scp | ||
16 | sftp | ||
17 | sftp-server | ||
18 | ssh | ||
19 | ssh-add | ||
20 | ssh-agent | ||
21 | ssh-keygen | ||
22 | ssh-keyscan | ||
23 | ssh-keysign | ||
24 | ssh-pkcs11-helper | ||
25 | sshd | ||
26 | stamp-h.in | ||
27 | survey | ||
28 | survey.sh | ||
@@ -2884,3 +2884,4 @@ | |||
2884 | [contrib/suse/openssh.spec] Update for release 6.0 | 2884 | [contrib/suse/openssh.spec] Update for release 6.0 |
2885 | - (djm) [README] Update URL to release notes. | 2885 | - (djm) [README] Update URL to release notes. |
2886 | - (djm) Release openssh-6.0 | 2886 | - (djm) Release openssh-6.0 |
2887 | |||
diff --git a/config.h.in b/config.h.in new file mode 100644 index 000000000..0401ad181 --- /dev/null +++ b/config.h.in | |||
@@ -0,0 +1,1708 @@ | |||
1 | /* config.h.in. Generated from configure.ac by autoheader. */ | ||
2 | |||
3 | /* Define if building universal (internal helper macro) */ | ||
4 | #undef AC_APPLE_UNIVERSAL_BUILD | ||
5 | |||
6 | /* Define if you have a getaddrinfo that fails for the all-zeros IPv6 address | ||
7 | */ | ||
8 | #undef AIX_GETNAMEINFO_HACK | ||
9 | |||
10 | /* Define if your AIX loginfailed() function takes 4 arguments (AIX >= 5.2) */ | ||
11 | #undef AIX_LOGINFAILED_4ARG | ||
12 | |||
13 | /* System only supports IPv4 audit records */ | ||
14 | #undef AU_IPv4 | ||
15 | |||
16 | /* Define if your resolver libs need this for getrrsetbyname */ | ||
17 | #undef BIND_8_COMPAT | ||
18 | |||
19 | /* The system has incomplete BSM API */ | ||
20 | #undef BROKEN_BSM_API | ||
21 | |||
22 | /* Define if cmsg_type is not passed correctly */ | ||
23 | #undef BROKEN_CMSG_TYPE | ||
24 | |||
25 | /* getaddrinfo is broken (if present) */ | ||
26 | #undef BROKEN_GETADDRINFO | ||
27 | |||
28 | /* getgroups(0,NULL) will return -1 */ | ||
29 | #undef BROKEN_GETGROUPS | ||
30 | |||
31 | /* FreeBSD glob does not do what we need */ | ||
32 | #undef BROKEN_GLOB | ||
33 | |||
34 | /* Define if you system's inet_ntoa is busted (e.g. Irix gcc issue) */ | ||
35 | #undef BROKEN_INET_NTOA | ||
36 | |||
37 | /* ia_uinfo routines not supported by OS yet */ | ||
38 | #undef BROKEN_LIBIAF | ||
39 | |||
40 | /* Ultrix mmap can't map files */ | ||
41 | #undef BROKEN_MMAP | ||
42 | |||
43 | /* Define if your struct dirent expects you to allocate extra space for d_name | ||
44 | */ | ||
45 | #undef BROKEN_ONE_BYTE_DIRENT_D_NAME | ||
46 | |||
47 | /* Can't do comparisons on readv */ | ||
48 | #undef BROKEN_READV_COMPARISON | ||
49 | |||
50 | /* NetBSD read function is sometimes redirected, breaking atomicio comparisons | ||
51 | against it */ | ||
52 | #undef BROKEN_READ_COMPARISON | ||
53 | |||
54 | /* Define if you have a broken realpath. */ | ||
55 | #undef BROKEN_REALPATH | ||
56 | |||
57 | /* Needed for NeXT */ | ||
58 | #undef BROKEN_SAVED_UIDS | ||
59 | |||
60 | /* Define if your setregid() is broken */ | ||
61 | #undef BROKEN_SETREGID | ||
62 | |||
63 | /* Define if your setresgid() is broken */ | ||
64 | #undef BROKEN_SETRESGID | ||
65 | |||
66 | /* Define if your setresuid() is broken */ | ||
67 | #undef BROKEN_SETRESUID | ||
68 | |||
69 | /* Define if your setreuid() is broken */ | ||
70 | #undef BROKEN_SETREUID | ||
71 | |||
72 | /* LynxOS has broken setvbuf() implementation */ | ||
73 | #undef BROKEN_SETVBUF | ||
74 | |||
75 | /* QNX shadow support is broken */ | ||
76 | #undef BROKEN_SHADOW_EXPIRE | ||
77 | |||
78 | /* Define if your snprintf is busted */ | ||
79 | #undef BROKEN_SNPRINTF | ||
80 | |||
81 | /* FreeBSD strnvis argument order is swapped compared to OpenBSD */ | ||
82 | #undef BROKEN_STRNVIS | ||
83 | |||
84 | /* tcgetattr with ICANON may hang */ | ||
85 | #undef BROKEN_TCGETATTR_ICANON | ||
86 | |||
87 | /* updwtmpx is broken (if present) */ | ||
88 | #undef BROKEN_UPDWTMPX | ||
89 | |||
90 | /* Define if you have BSD auth support */ | ||
91 | #undef BSD_AUTH | ||
92 | |||
93 | /* Define if you want to specify the path to your lastlog file */ | ||
94 | #undef CONF_LASTLOG_FILE | ||
95 | |||
96 | /* Define if you want to specify the path to your utmp file */ | ||
97 | #undef CONF_UTMP_FILE | ||
98 | |||
99 | /* Define if you want to specify the path to your wtmpx file */ | ||
100 | #undef CONF_WTMPX_FILE | ||
101 | |||
102 | /* Define if you want to specify the path to your wtmp file */ | ||
103 | #undef CONF_WTMP_FILE | ||
104 | |||
105 | /* Define if your platform needs to skip post auth file descriptor passing */ | ||
106 | #undef DISABLE_FD_PASSING | ||
107 | |||
108 | /* Define if you don't want to use lastlog */ | ||
109 | #undef DISABLE_LASTLOG | ||
110 | |||
111 | /* Define if you don't want to use your system's login() call */ | ||
112 | #undef DISABLE_LOGIN | ||
113 | |||
114 | /* Define if you don't want to use pututline() etc. to write [uw]tmp */ | ||
115 | #undef DISABLE_PUTUTLINE | ||
116 | |||
117 | /* Define if you don't want to use pututxline() etc. to write [uw]tmpx */ | ||
118 | #undef DISABLE_PUTUTXLINE | ||
119 | |||
120 | /* Define if you want to disable shadow passwords */ | ||
121 | #undef DISABLE_SHADOW | ||
122 | |||
123 | /* Define if you don't want to use utmp */ | ||
124 | #undef DISABLE_UTMP | ||
125 | |||
126 | /* Define if you don't want to use utmpx */ | ||
127 | #undef DISABLE_UTMPX | ||
128 | |||
129 | /* Define if you don't want to use wtmp */ | ||
130 | #undef DISABLE_WTMP | ||
131 | |||
132 | /* Define if you don't want to use wtmpx */ | ||
133 | #undef DISABLE_WTMPX | ||
134 | |||
135 | /* Enable for PKCS#11 support */ | ||
136 | #undef ENABLE_PKCS11 | ||
137 | |||
138 | /* File names may not contain backslash characters */ | ||
139 | #undef FILESYSTEM_NO_BACKSLASH | ||
140 | |||
141 | /* fsid_t has member val */ | ||
142 | #undef FSID_HAS_VAL | ||
143 | |||
144 | /* fsid_t has member __val */ | ||
145 | #undef FSID_HAS___VAL | ||
146 | |||
147 | /* Define to 1 if the `getpgrp' function requires zero arguments. */ | ||
148 | #undef GETPGRP_VOID | ||
149 | |||
150 | /* Conflicting defs for getspnam */ | ||
151 | #undef GETSPNAM_CONFLICTING_DEFS | ||
152 | |||
153 | /* Define if your system glob() function has the GLOB_ALTDIRFUNC extension */ | ||
154 | #undef GLOB_HAS_ALTDIRFUNC | ||
155 | |||
156 | /* Define if your system glob() function has gl_matchc options in glob_t */ | ||
157 | #undef GLOB_HAS_GL_MATCHC | ||
158 | |||
159 | /* Define if your system glob() function has gl_statv options in glob_t */ | ||
160 | #undef GLOB_HAS_GL_STATV | ||
161 | |||
162 | /* Define this if you want GSSAPI support in the version 2 protocol */ | ||
163 | #undef GSSAPI | ||
164 | |||
165 | /* Define if you want to use shadow password expire field */ | ||
166 | #undef HAS_SHADOW_EXPIRE | ||
167 | |||
168 | /* Define if your system uses access rights style file descriptor passing */ | ||
169 | #undef HAVE_ACCRIGHTS_IN_MSGHDR | ||
170 | |||
171 | /* Define if you have ut_addr in utmp.h */ | ||
172 | #undef HAVE_ADDR_IN_UTMP | ||
173 | |||
174 | /* Define if you have ut_addr in utmpx.h */ | ||
175 | #undef HAVE_ADDR_IN_UTMPX | ||
176 | |||
177 | /* Define if you have ut_addr_v6 in utmp.h */ | ||
178 | #undef HAVE_ADDR_V6_IN_UTMP | ||
179 | |||
180 | /* Define if you have ut_addr_v6 in utmpx.h */ | ||
181 | #undef HAVE_ADDR_V6_IN_UTMPX | ||
182 | |||
183 | /* Define to 1 if you have the `arc4random' function. */ | ||
184 | #undef HAVE_ARC4RANDOM | ||
185 | |||
186 | /* Define to 1 if you have the `arc4random_buf' function. */ | ||
187 | #undef HAVE_ARC4RANDOM_BUF | ||
188 | |||
189 | /* Define to 1 if you have the `arc4random_stir' function. */ | ||
190 | #undef HAVE_ARC4RANDOM_STIR | ||
191 | |||
192 | /* Define to 1 if you have the `arc4random_uniform' function. */ | ||
193 | #undef HAVE_ARC4RANDOM_UNIFORM | ||
194 | |||
195 | /* Define to 1 if you have the `asprintf' function. */ | ||
196 | #undef HAVE_ASPRINTF | ||
197 | |||
198 | /* OpenBSD's gcc has bounded */ | ||
199 | #undef HAVE_ATTRIBUTE__BOUNDED__ | ||
200 | |||
201 | /* Have attribute nonnull */ | ||
202 | #undef HAVE_ATTRIBUTE__NONNULL__ | ||
203 | |||
204 | /* OpenBSD's gcc has sentinel */ | ||
205 | #undef HAVE_ATTRIBUTE__SENTINEL__ | ||
206 | |||
207 | /* Define to 1 if you have the `aug_get_machine' function. */ | ||
208 | #undef HAVE_AUG_GET_MACHINE | ||
209 | |||
210 | /* Define to 1 if you have the `b64_ntop' function. */ | ||
211 | #undef HAVE_B64_NTOP | ||
212 | |||
213 | /* Define to 1 if you have the `b64_pton' function. */ | ||
214 | #undef HAVE_B64_PTON | ||
215 | |||
216 | /* Define if you have the basename function. */ | ||
217 | #undef HAVE_BASENAME | ||
218 | |||
219 | /* Define to 1 if you have the `bcopy' function. */ | ||
220 | #undef HAVE_BCOPY | ||
221 | |||
222 | /* Define to 1 if you have the `bcrypt_pbkdf' function. */ | ||
223 | #undef HAVE_BCRYPT_PBKDF | ||
224 | |||
225 | /* Define to 1 if you have the `bindresvport_sa' function. */ | ||
226 | #undef HAVE_BINDRESVPORT_SA | ||
227 | |||
228 | /* Define to 1 if you have the `blf_enc' function. */ | ||
229 | #undef HAVE_BLF_ENC | ||
230 | |||
231 | /* Define to 1 if you have the <blf.h> header file. */ | ||
232 | #undef HAVE_BLF_H | ||
233 | |||
234 | /* Define to 1 if you have the `Blowfish_expand0state' function. */ | ||
235 | #undef HAVE_BLOWFISH_EXPAND0STATE | ||
236 | |||
237 | /* Define to 1 if you have the `Blowfish_expandstate' function. */ | ||
238 | #undef HAVE_BLOWFISH_EXPANDSTATE | ||
239 | |||
240 | /* Define to 1 if you have the `Blowfish_initstate' function. */ | ||
241 | #undef HAVE_BLOWFISH_INITSTATE | ||
242 | |||
243 | /* Define to 1 if you have the `Blowfish_stream2word' function. */ | ||
244 | #undef HAVE_BLOWFISH_STREAM2WORD | ||
245 | |||
246 | /* Define to 1 if you have the `BN_is_prime_ex' function. */ | ||
247 | #undef HAVE_BN_IS_PRIME_EX | ||
248 | |||
249 | /* Define to 1 if you have the <bsd/libutil.h> header file. */ | ||
250 | #undef HAVE_BSD_LIBUTIL_H | ||
251 | |||
252 | /* Define to 1 if you have the <bsm/audit.h> header file. */ | ||
253 | #undef HAVE_BSM_AUDIT_H | ||
254 | |||
255 | /* Define to 1 if you have the <bstring.h> header file. */ | ||
256 | #undef HAVE_BSTRING_H | ||
257 | |||
258 | /* Define to 1 if you have the `cap_rights_limit' function. */ | ||
259 | #undef HAVE_CAP_RIGHTS_LIMIT | ||
260 | |||
261 | /* Define to 1 if you have the `clock' function. */ | ||
262 | #undef HAVE_CLOCK | ||
263 | |||
264 | /* Have clock_gettime */ | ||
265 | #undef HAVE_CLOCK_GETTIME | ||
266 | |||
267 | /* define if you have clock_t data type */ | ||
268 | #undef HAVE_CLOCK_T | ||
269 | |||
270 | /* Define to 1 if you have the `closefrom' function. */ | ||
271 | #undef HAVE_CLOSEFROM | ||
272 | |||
273 | /* Define if gai_strerror() returns const char * */ | ||
274 | #undef HAVE_CONST_GAI_STRERROR_PROTO | ||
275 | |||
276 | /* Define if your system uses ancillary data style file descriptor passing */ | ||
277 | #undef HAVE_CONTROL_IN_MSGHDR | ||
278 | |||
279 | /* Define to 1 if you have the `crypt' function. */ | ||
280 | #undef HAVE_CRYPT | ||
281 | |||
282 | /* Define to 1 if you have the <crypto/sha2.h> header file. */ | ||
283 | #undef HAVE_CRYPTO_SHA2_H | ||
284 | |||
285 | /* Define to 1 if you have the <crypt.h> header file. */ | ||
286 | #undef HAVE_CRYPT_H | ||
287 | |||
288 | /* Define if you are on Cygwin */ | ||
289 | #undef HAVE_CYGWIN | ||
290 | |||
291 | /* Define if your libraries define daemon() */ | ||
292 | #undef HAVE_DAEMON | ||
293 | |||
294 | /* Define to 1 if you have the declaration of `authenticate', and to 0 if you | ||
295 | don't. */ | ||
296 | #undef HAVE_DECL_AUTHENTICATE | ||
297 | |||
298 | /* Define to 1 if you have the declaration of `GLOB_NOMATCH', and to 0 if you | ||
299 | don't. */ | ||
300 | #undef HAVE_DECL_GLOB_NOMATCH | ||
301 | |||
302 | /* Define to 1 if you have the declaration of `GSS_C_NT_HOSTBASED_SERVICE', | ||
303 | and to 0 if you don't. */ | ||
304 | #undef HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE | ||
305 | |||
306 | /* Define to 1 if you have the declaration of `howmany', and to 0 if you | ||
307 | don't. */ | ||
308 | #undef HAVE_DECL_HOWMANY | ||
309 | |||
310 | /* Define to 1 if you have the declaration of `h_errno', and to 0 if you | ||
311 | don't. */ | ||
312 | #undef HAVE_DECL_H_ERRNO | ||
313 | |||
314 | /* Define to 1 if you have the declaration of `loginfailed', and to 0 if you | ||
315 | don't. */ | ||
316 | #undef HAVE_DECL_LOGINFAILED | ||
317 | |||
318 | /* Define to 1 if you have the declaration of `loginrestrictions', and to 0 if | ||
319 | you don't. */ | ||
320 | #undef HAVE_DECL_LOGINRESTRICTIONS | ||
321 | |||
322 | /* Define to 1 if you have the declaration of `loginsuccess', and to 0 if you | ||
323 | don't. */ | ||
324 | #undef HAVE_DECL_LOGINSUCCESS | ||
325 | |||
326 | /* Define to 1 if you have the declaration of `MAXSYMLINKS', and to 0 if you | ||
327 | don't. */ | ||
328 | #undef HAVE_DECL_MAXSYMLINKS | ||
329 | |||
330 | /* Define to 1 if you have the declaration of `NFDBITS', and to 0 if you | ||
331 | don't. */ | ||
332 | #undef HAVE_DECL_NFDBITS | ||
333 | |||
334 | /* Define to 1 if you have the declaration of `offsetof', and to 0 if you | ||
335 | don't. */ | ||
336 | #undef HAVE_DECL_OFFSETOF | ||
337 | |||
338 | /* Define to 1 if you have the declaration of `O_NONBLOCK', and to 0 if you | ||
339 | don't. */ | ||
340 | #undef HAVE_DECL_O_NONBLOCK | ||
341 | |||
342 | /* Define to 1 if you have the declaration of `passwdexpired', and to 0 if you | ||
343 | don't. */ | ||
344 | #undef HAVE_DECL_PASSWDEXPIRED | ||
345 | |||
346 | /* Define to 1 if you have the declaration of `setauthdb', and to 0 if you | ||
347 | don't. */ | ||
348 | #undef HAVE_DECL_SETAUTHDB | ||
349 | |||
350 | /* Define to 1 if you have the declaration of `SHUT_RD', and to 0 if you | ||
351 | don't. */ | ||
352 | #undef HAVE_DECL_SHUT_RD | ||
353 | |||
354 | /* Define to 1 if you have the declaration of `writev', and to 0 if you don't. | ||
355 | */ | ||
356 | #undef HAVE_DECL_WRITEV | ||
357 | |||
358 | /* Define to 1 if you have the declaration of `_getlong', and to 0 if you | ||
359 | don't. */ | ||
360 | #undef HAVE_DECL__GETLONG | ||
361 | |||
362 | /* Define to 1 if you have the declaration of `_getshort', and to 0 if you | ||
363 | don't. */ | ||
364 | #undef HAVE_DECL__GETSHORT | ||
365 | |||
366 | /* Define to 1 if you have the `DES_crypt' function. */ | ||
367 | #undef HAVE_DES_CRYPT | ||
368 | |||
369 | /* Define if you have /dev/ptmx */ | ||
370 | #undef HAVE_DEV_PTMX | ||
371 | |||
372 | /* Define if you have /dev/ptc */ | ||
373 | #undef HAVE_DEV_PTS_AND_PTC | ||
374 | |||
375 | /* Define to 1 if you have the <dirent.h> header file. */ | ||
376 | #undef HAVE_DIRENT_H | ||
377 | |||
378 | /* Define to 1 if you have the `dirfd' function. */ | ||
379 | #undef HAVE_DIRFD | ||
380 | |||
381 | /* Define to 1 if you have the `dirname' function. */ | ||
382 | #undef HAVE_DIRNAME | ||
383 | |||
384 | /* Define to 1 if you have the `DSA_generate_parameters_ex' function. */ | ||
385 | #undef HAVE_DSA_GENERATE_PARAMETERS_EX | ||
386 | |||
387 | /* Define to 1 if you have the <elf.h> header file. */ | ||
388 | #undef HAVE_ELF_H | ||
389 | |||
390 | /* Define to 1 if you have the `endgrent' function. */ | ||
391 | #undef HAVE_ENDGRENT | ||
392 | |||
393 | /* Define to 1 if you have the <endian.h> header file. */ | ||
394 | #undef HAVE_ENDIAN_H | ||
395 | |||
396 | /* Define to 1 if you have the `endutent' function. */ | ||
397 | #undef HAVE_ENDUTENT | ||
398 | |||
399 | /* Define to 1 if you have the `endutxent' function. */ | ||
400 | #undef HAVE_ENDUTXENT | ||
401 | |||
402 | /* Define if your system has /etc/default/login */ | ||
403 | #undef HAVE_ETC_DEFAULT_LOGIN | ||
404 | |||
405 | /* Define if libcrypto has EVP_CIPHER_CTX_ctrl */ | ||
406 | #undef HAVE_EVP_CIPHER_CTX_CTRL | ||
407 | |||
408 | /* Define to 1 if you have the `EVP_DigestFinal_ex' function. */ | ||
409 | #undef HAVE_EVP_DIGESTFINAL_EX | ||
410 | |||
411 | /* Define to 1 if you have the `EVP_DigestInit_ex' function. */ | ||
412 | #undef HAVE_EVP_DIGESTINIT_EX | ||
413 | |||
414 | /* Define to 1 if you have the `EVP_MD_CTX_cleanup' function. */ | ||
415 | #undef HAVE_EVP_MD_CTX_CLEANUP | ||
416 | |||
417 | /* Define to 1 if you have the `EVP_MD_CTX_copy_ex' function. */ | ||
418 | #undef HAVE_EVP_MD_CTX_COPY_EX | ||
419 | |||
420 | /* Define to 1 if you have the `EVP_MD_CTX_init' function. */ | ||
421 | #undef HAVE_EVP_MD_CTX_INIT | ||
422 | |||
423 | /* Define to 1 if you have the `EVP_sha256' function. */ | ||
424 | #undef HAVE_EVP_SHA256 | ||
425 | |||
426 | /* Define if you have ut_exit in utmp.h */ | ||
427 | #undef HAVE_EXIT_IN_UTMP | ||
428 | |||
429 | /* Define to 1 if you have the `explicit_bzero' function. */ | ||
430 | #undef HAVE_EXPLICIT_BZERO | ||
431 | |||
432 | /* Define to 1 if you have the `fchmod' function. */ | ||
433 | #undef HAVE_FCHMOD | ||
434 | |||
435 | /* Define to 1 if you have the `fchown' function. */ | ||
436 | #undef HAVE_FCHOWN | ||
437 | |||
438 | /* Use F_CLOSEM fcntl for closefrom */ | ||
439 | #undef HAVE_FCNTL_CLOSEM | ||
440 | |||
441 | /* Define to 1 if you have the <fcntl.h> header file. */ | ||
442 | #undef HAVE_FCNTL_H | ||
443 | |||
444 | /* Define to 1 if the system has the type `fd_mask'. */ | ||
445 | #undef HAVE_FD_MASK | ||
446 | |||
447 | /* Define to 1 if you have the <features.h> header file. */ | ||
448 | #undef HAVE_FEATURES_H | ||
449 | |||
450 | /* Define to 1 if you have the <floatingpoint.h> header file. */ | ||
451 | #undef HAVE_FLOATINGPOINT_H | ||
452 | |||
453 | /* Define to 1 if you have the `fmt_scaled' function. */ | ||
454 | #undef HAVE_FMT_SCALED | ||
455 | |||
456 | /* Define to 1 if you have the `freeaddrinfo' function. */ | ||
457 | #undef HAVE_FREEADDRINFO | ||
458 | |||
459 | /* Define to 1 if the system has the type `fsblkcnt_t'. */ | ||
460 | #undef HAVE_FSBLKCNT_T | ||
461 | |||
462 | /* Define to 1 if the system has the type `fsfilcnt_t'. */ | ||
463 | #undef HAVE_FSFILCNT_T | ||
464 | |||
465 | /* Define to 1 if you have the `fstatfs' function. */ | ||
466 | #undef HAVE_FSTATFS | ||
467 | |||
468 | /* Define to 1 if you have the `fstatvfs' function. */ | ||
469 | #undef HAVE_FSTATVFS | ||
470 | |||
471 | /* Define to 1 if you have the `futimes' function. */ | ||
472 | #undef HAVE_FUTIMES | ||
473 | |||
474 | /* Define to 1 if you have the `gai_strerror' function. */ | ||
475 | #undef HAVE_GAI_STRERROR | ||
476 | |||
477 | /* Define to 1 if you have the `getaddrinfo' function. */ | ||
478 | #undef HAVE_GETADDRINFO | ||
479 | |||
480 | /* Define to 1 if you have the `getaudit' function. */ | ||
481 | #undef HAVE_GETAUDIT | ||
482 | |||
483 | /* Define to 1 if you have the `getaudit_addr' function. */ | ||
484 | #undef HAVE_GETAUDIT_ADDR | ||
485 | |||
486 | /* Define to 1 if you have the `getcwd' function. */ | ||
487 | #undef HAVE_GETCWD | ||
488 | |||
489 | /* Define to 1 if you have the `getgrouplist' function. */ | ||
490 | #undef HAVE_GETGROUPLIST | ||
491 | |||
492 | /* Define to 1 if you have the `getgrset' function. */ | ||
493 | #undef HAVE_GETGRSET | ||
494 | |||
495 | /* Define to 1 if you have the `getlastlogxbyname' function. */ | ||
496 | #undef HAVE_GETLASTLOGXBYNAME | ||
497 | |||
498 | /* Define to 1 if you have the `getluid' function. */ | ||
499 | #undef HAVE_GETLUID | ||
500 | |||
501 | /* Define to 1 if you have the `getnameinfo' function. */ | ||
502 | #undef HAVE_GETNAMEINFO | ||
503 | |||
504 | /* Define to 1 if you have the `getopt' function. */ | ||
505 | #undef HAVE_GETOPT | ||
506 | |||
507 | /* Define to 1 if you have the <getopt.h> header file. */ | ||
508 | #undef HAVE_GETOPT_H | ||
509 | |||
510 | /* Define if your getopt(3) defines and uses optreset */ | ||
511 | #undef HAVE_GETOPT_OPTRESET | ||
512 | |||
513 | /* Define if your libraries define getpagesize() */ | ||
514 | #undef HAVE_GETPAGESIZE | ||
515 | |||
516 | /* Define to 1 if you have the `getpeereid' function. */ | ||
517 | #undef HAVE_GETPEEREID | ||
518 | |||
519 | /* Define to 1 if you have the `getpeerucred' function. */ | ||
520 | #undef HAVE_GETPEERUCRED | ||
521 | |||
522 | /* Define to 1 if you have the `getpgid' function. */ | ||
523 | #undef HAVE_GETPGID | ||
524 | |||
525 | /* Define to 1 if you have the `getpgrp' function. */ | ||
526 | #undef HAVE_GETPGRP | ||
527 | |||
528 | /* Define to 1 if you have the `getpwanam' function. */ | ||
529 | #undef HAVE_GETPWANAM | ||
530 | |||
531 | /* Define to 1 if you have the `getrlimit' function. */ | ||
532 | #undef HAVE_GETRLIMIT | ||
533 | |||
534 | /* Define if getrrsetbyname() exists */ | ||
535 | #undef HAVE_GETRRSETBYNAME | ||
536 | |||
537 | /* Define to 1 if you have the `getrusage' function. */ | ||
538 | #undef HAVE_GETRUSAGE | ||
539 | |||
540 | /* Define to 1 if you have the `getseuserbyname' function. */ | ||
541 | #undef HAVE_GETSEUSERBYNAME | ||
542 | |||
543 | /* Define to 1 if you have the `gettimeofday' function. */ | ||
544 | #undef HAVE_GETTIMEOFDAY | ||
545 | |||
546 | /* Define to 1 if you have the `getttyent' function. */ | ||
547 | #undef HAVE_GETTTYENT | ||
548 | |||
549 | /* Define to 1 if you have the `getutent' function. */ | ||
550 | #undef HAVE_GETUTENT | ||
551 | |||
552 | /* Define to 1 if you have the `getutid' function. */ | ||
553 | #undef HAVE_GETUTID | ||
554 | |||
555 | /* Define to 1 if you have the `getutline' function. */ | ||
556 | #undef HAVE_GETUTLINE | ||
557 | |||
558 | /* Define to 1 if you have the `getutxent' function. */ | ||
559 | #undef HAVE_GETUTXENT | ||
560 | |||
561 | /* Define to 1 if you have the `getutxid' function. */ | ||
562 | #undef HAVE_GETUTXID | ||
563 | |||
564 | /* Define to 1 if you have the `getutxline' function. */ | ||
565 | #undef HAVE_GETUTXLINE | ||
566 | |||
567 | /* Define to 1 if you have the `getutxuser' function. */ | ||
568 | #undef HAVE_GETUTXUSER | ||
569 | |||
570 | /* Define to 1 if you have the `get_default_context_with_level' function. */ | ||
571 | #undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL | ||
572 | |||
573 | /* Define to 1 if you have the `glob' function. */ | ||
574 | #undef HAVE_GLOB | ||
575 | |||
576 | /* Define to 1 if you have the <glob.h> header file. */ | ||
577 | #undef HAVE_GLOB_H | ||
578 | |||
579 | /* Define to 1 if you have the `group_from_gid' function. */ | ||
580 | #undef HAVE_GROUP_FROM_GID | ||
581 | |||
582 | /* Define to 1 if you have the <gssapi_generic.h> header file. */ | ||
583 | #undef HAVE_GSSAPI_GENERIC_H | ||
584 | |||
585 | /* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */ | ||
586 | #undef HAVE_GSSAPI_GSSAPI_GENERIC_H | ||
587 | |||
588 | /* Define to 1 if you have the <gssapi/gssapi.h> header file. */ | ||
589 | #undef HAVE_GSSAPI_GSSAPI_H | ||
590 | |||
591 | /* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */ | ||
592 | #undef HAVE_GSSAPI_GSSAPI_KRB5_H | ||
593 | |||
594 | /* Define to 1 if you have the <gssapi.h> header file. */ | ||
595 | #undef HAVE_GSSAPI_H | ||
596 | |||
597 | /* Define to 1 if you have the <gssapi_krb5.h> header file. */ | ||
598 | #undef HAVE_GSSAPI_KRB5_H | ||
599 | |||
600 | /* Define if HEADER.ad exists in arpa/nameser.h */ | ||
601 | #undef HAVE_HEADER_AD | ||
602 | |||
603 | /* Define to 1 if you have the `HMAC_CTX_init' function. */ | ||
604 | #undef HAVE_HMAC_CTX_INIT | ||
605 | |||
606 | /* Define if you have ut_host in utmp.h */ | ||
607 | #undef HAVE_HOST_IN_UTMP | ||
608 | |||
609 | /* Define if you have ut_host in utmpx.h */ | ||
610 | #undef HAVE_HOST_IN_UTMPX | ||
611 | |||
612 | /* Define to 1 if you have the <iaf.h> header file. */ | ||
613 | #undef HAVE_IAF_H | ||
614 | |||
615 | /* Define to 1 if you have the <ia.h> header file. */ | ||
616 | #undef HAVE_IA_H | ||
617 | |||
618 | /* Define if you have ut_id in utmp.h */ | ||
619 | #undef HAVE_ID_IN_UTMP | ||
620 | |||
621 | /* Define if you have ut_id in utmpx.h */ | ||
622 | #undef HAVE_ID_IN_UTMPX | ||
623 | |||
624 | /* Define to 1 if you have the `inet_aton' function. */ | ||
625 | #undef HAVE_INET_ATON | ||
626 | |||
627 | /* Define to 1 if you have the `inet_ntoa' function. */ | ||
628 | #undef HAVE_INET_NTOA | ||
629 | |||
630 | /* Define to 1 if you have the `inet_ntop' function. */ | ||
631 | #undef HAVE_INET_NTOP | ||
632 | |||
633 | /* Define to 1 if you have the `innetgr' function. */ | ||
634 | #undef HAVE_INNETGR | ||
635 | |||
636 | /* define if you have int64_t data type */ | ||
637 | #undef HAVE_INT64_T | ||
638 | |||
639 | /* Define to 1 if the system has the type `intmax_t'. */ | ||
640 | #undef HAVE_INTMAX_T | ||
641 | |||
642 | /* Define to 1 if you have the <inttypes.h> header file. */ | ||
643 | #undef HAVE_INTTYPES_H | ||
644 | |||
645 | /* define if you have intxx_t data type */ | ||
646 | #undef HAVE_INTXX_T | ||
647 | |||
648 | /* Define to 1 if the system has the type `in_addr_t'. */ | ||
649 | #undef HAVE_IN_ADDR_T | ||
650 | |||
651 | /* Define to 1 if the system has the type `in_port_t'. */ | ||
652 | #undef HAVE_IN_PORT_T | ||
653 | |||
654 | /* Define if you have isblank(3C). */ | ||
655 | #undef HAVE_ISBLANK | ||
656 | |||
657 | /* Define to 1 if you have the `krb5_cc_new_unique' function. */ | ||
658 | #undef HAVE_KRB5_CC_NEW_UNIQUE | ||
659 | |||
660 | /* Define to 1 if you have the `krb5_free_error_message' function. */ | ||
661 | #undef HAVE_KRB5_FREE_ERROR_MESSAGE | ||
662 | |||
663 | /* Define to 1 if you have the `krb5_get_error_message' function. */ | ||
664 | #undef HAVE_KRB5_GET_ERROR_MESSAGE | ||
665 | |||
666 | /* Define to 1 if you have the <lastlog.h> header file. */ | ||
667 | #undef HAVE_LASTLOG_H | ||
668 | |||
669 | /* Define if you want ldns support */ | ||
670 | #undef HAVE_LDNS | ||
671 | |||
672 | /* Define to 1 if you have the <libaudit.h> header file. */ | ||
673 | #undef HAVE_LIBAUDIT_H | ||
674 | |||
675 | /* Define to 1 if you have the `bsm' library (-lbsm). */ | ||
676 | #undef HAVE_LIBBSM | ||
677 | |||
678 | /* Define to 1 if you have the `crypt' library (-lcrypt). */ | ||
679 | #undef HAVE_LIBCRYPT | ||
680 | |||
681 | /* Define to 1 if you have the `dl' library (-ldl). */ | ||
682 | #undef HAVE_LIBDL | ||
683 | |||
684 | /* Define to 1 if you have the <libgen.h> header file. */ | ||
685 | #undef HAVE_LIBGEN_H | ||
686 | |||
687 | /* Define if system has libiaf that supports set_id */ | ||
688 | #undef HAVE_LIBIAF | ||
689 | |||
690 | /* Define to 1 if you have the `network' library (-lnetwork). */ | ||
691 | #undef HAVE_LIBNETWORK | ||
692 | |||
693 | /* Define to 1 if you have the `nsl' library (-lnsl). */ | ||
694 | #undef HAVE_LIBNSL | ||
695 | |||
696 | /* Define to 1 if you have the `pam' library (-lpam). */ | ||
697 | #undef HAVE_LIBPAM | ||
698 | |||
699 | /* Define to 1 if you have the `socket' library (-lsocket). */ | ||
700 | #undef HAVE_LIBSOCKET | ||
701 | |||
702 | /* Define to 1 if you have the <libutil.h> header file. */ | ||
703 | #undef HAVE_LIBUTIL_H | ||
704 | |||
705 | /* Define to 1 if you have the `xnet' library (-lxnet). */ | ||
706 | #undef HAVE_LIBXNET | ||
707 | |||
708 | /* Define to 1 if you have the `z' library (-lz). */ | ||
709 | #undef HAVE_LIBZ | ||
710 | |||
711 | /* Define to 1 if you have the <limits.h> header file. */ | ||
712 | #undef HAVE_LIMITS_H | ||
713 | |||
714 | /* Define to 1 if you have the <linux/audit.h> header file. */ | ||
715 | #undef HAVE_LINUX_AUDIT_H | ||
716 | |||
717 | /* Define to 1 if you have the <linux/filter.h> header file. */ | ||
718 | #undef HAVE_LINUX_FILTER_H | ||
719 | |||
720 | /* Define to 1 if you have the <linux/if_tun.h> header file. */ | ||
721 | #undef HAVE_LINUX_IF_TUN_H | ||
722 | |||
723 | /* Define to 1 if you have the <linux/seccomp.h> header file. */ | ||
724 | #undef HAVE_LINUX_SECCOMP_H | ||
725 | |||
726 | /* Define to 1 if you have the <locale.h> header file. */ | ||
727 | #undef HAVE_LOCALE_H | ||
728 | |||
729 | /* Define to 1 if you have the `login' function. */ | ||
730 | #undef HAVE_LOGIN | ||
731 | |||
732 | /* Define to 1 if you have the <login_cap.h> header file. */ | ||
733 | #undef HAVE_LOGIN_CAP_H | ||
734 | |||
735 | /* Define to 1 if you have the `login_getcapbool' function. */ | ||
736 | #undef HAVE_LOGIN_GETCAPBOOL | ||
737 | |||
738 | /* Define to 1 if you have the <login.h> header file. */ | ||
739 | #undef HAVE_LOGIN_H | ||
740 | |||
741 | /* Define to 1 if you have the `logout' function. */ | ||
742 | #undef HAVE_LOGOUT | ||
743 | |||
744 | /* Define to 1 if you have the `logwtmp' function. */ | ||
745 | #undef HAVE_LOGWTMP | ||
746 | |||
747 | /* Define to 1 if the system has the type `long double'. */ | ||
748 | #undef HAVE_LONG_DOUBLE | ||
749 | |||
750 | /* Define to 1 if the system has the type `long long'. */ | ||
751 | #undef HAVE_LONG_LONG | ||
752 | |||
753 | /* Define to 1 if you have the <maillock.h> header file. */ | ||
754 | #undef HAVE_MAILLOCK_H | ||
755 | |||
756 | /* Define to 1 if you have the `mblen' function. */ | ||
757 | #undef HAVE_MBLEN | ||
758 | |||
759 | /* Define to 1 if you have the `md5_crypt' function. */ | ||
760 | #undef HAVE_MD5_CRYPT | ||
761 | |||
762 | /* Define if you want to allow MD5 passwords */ | ||
763 | #undef HAVE_MD5_PASSWORDS | ||
764 | |||
765 | /* Define to 1 if you have the `memmove' function. */ | ||
766 | #undef HAVE_MEMMOVE | ||
767 | |||
768 | /* Define to 1 if you have the <memory.h> header file. */ | ||
769 | #undef HAVE_MEMORY_H | ||
770 | |||
771 | /* Define to 1 if you have the `mkdtemp' function. */ | ||
772 | #undef HAVE_MKDTEMP | ||
773 | |||
774 | /* Define to 1 if you have the `mmap' function. */ | ||
775 | #undef HAVE_MMAP | ||
776 | |||
777 | /* define if you have mode_t data type */ | ||
778 | #undef HAVE_MODE_T | ||
779 | |||
780 | /* Some systems put nanosleep outside of libc */ | ||
781 | #undef HAVE_NANOSLEEP | ||
782 | |||
783 | /* Define to 1 if you have the <ndir.h> header file. */ | ||
784 | #undef HAVE_NDIR_H | ||
785 | |||
786 | /* Define to 1 if you have the <netdb.h> header file. */ | ||
787 | #undef HAVE_NETDB_H | ||
788 | |||
789 | /* Define to 1 if you have the <netgroup.h> header file. */ | ||
790 | #undef HAVE_NETGROUP_H | ||
791 | |||
792 | /* Define to 1 if you have the <net/if_tun.h> header file. */ | ||
793 | #undef HAVE_NET_IF_TUN_H | ||
794 | |||
795 | /* Define if you are on NeXT */ | ||
796 | #undef HAVE_NEXT | ||
797 | |||
798 | /* Define to 1 if you have the `ngetaddrinfo' function. */ | ||
799 | #undef HAVE_NGETADDRINFO | ||
800 | |||
801 | /* Define to 1 if you have the `nsleep' function. */ | ||
802 | #undef HAVE_NSLEEP | ||
803 | |||
804 | /* Define to 1 if you have the `ogetaddrinfo' function. */ | ||
805 | #undef HAVE_OGETADDRINFO | ||
806 | |||
807 | /* Define if you have an old version of PAM which takes only one argument to | ||
808 | pam_strerror */ | ||
809 | #undef HAVE_OLD_PAM | ||
810 | |||
811 | /* Define to 1 if you have the `openlog_r' function. */ | ||
812 | #undef HAVE_OPENLOG_R | ||
813 | |||
814 | /* Define to 1 if you have the `openpty' function. */ | ||
815 | #undef HAVE_OPENPTY | ||
816 | |||
817 | /* Define if your ssl headers are included with #include <openssl/header.h> */ | ||
818 | #undef HAVE_OPENSSL | ||
819 | |||
820 | /* Define if you have Digital Unix Security Integration Architecture */ | ||
821 | #undef HAVE_OSF_SIA | ||
822 | |||
823 | /* Define to 1 if you have the `pam_getenvlist' function. */ | ||
824 | #undef HAVE_PAM_GETENVLIST | ||
825 | |||
826 | /* Define to 1 if you have the <pam/pam_appl.h> header file. */ | ||
827 | #undef HAVE_PAM_PAM_APPL_H | ||
828 | |||
829 | /* Define to 1 if you have the `pam_putenv' function. */ | ||
830 | #undef HAVE_PAM_PUTENV | ||
831 | |||
832 | /* Define to 1 if you have the <paths.h> header file. */ | ||
833 | #undef HAVE_PATHS_H | ||
834 | |||
835 | /* Define if you have ut_pid in utmp.h */ | ||
836 | #undef HAVE_PID_IN_UTMP | ||
837 | |||
838 | /* define if you have pid_t data type */ | ||
839 | #undef HAVE_PID_T | ||
840 | |||
841 | /* Define to 1 if you have the `poll' function. */ | ||
842 | #undef HAVE_POLL | ||
843 | |||
844 | /* Define to 1 if you have the <poll.h> header file. */ | ||
845 | #undef HAVE_POLL_H | ||
846 | |||
847 | /* Define to 1 if you have the `prctl' function. */ | ||
848 | #undef HAVE_PRCTL | ||
849 | |||
850 | /* Define if you have /proc/$pid/fd */ | ||
851 | #undef HAVE_PROC_PID | ||
852 | |||
853 | /* Define to 1 if you have the `pstat' function. */ | ||
854 | #undef HAVE_PSTAT | ||
855 | |||
856 | /* Define to 1 if you have the <pty.h> header file. */ | ||
857 | #undef HAVE_PTY_H | ||
858 | |||
859 | /* Define to 1 if you have the `pututline' function. */ | ||
860 | #undef HAVE_PUTUTLINE | ||
861 | |||
862 | /* Define to 1 if you have the `pututxline' function. */ | ||
863 | #undef HAVE_PUTUTXLINE | ||
864 | |||
865 | /* Define to 1 if you have the `readpassphrase' function. */ | ||
866 | #undef HAVE_READPASSPHRASE | ||
867 | |||
868 | /* Define to 1 if you have the <readpassphrase.h> header file. */ | ||
869 | #undef HAVE_READPASSPHRASE_H | ||
870 | |||
871 | /* Define to 1 if you have the `realpath' function. */ | ||
872 | #undef HAVE_REALPATH | ||
873 | |||
874 | /* Define to 1 if you have the `recvmsg' function. */ | ||
875 | #undef HAVE_RECVMSG | ||
876 | |||
877 | /* sys/resource.h has RLIMIT_NPROC */ | ||
878 | #undef HAVE_RLIMIT_NPROC | ||
879 | |||
880 | /* Define to 1 if you have the <rpc/types.h> header file. */ | ||
881 | #undef HAVE_RPC_TYPES_H | ||
882 | |||
883 | /* Define to 1 if you have the `rresvport_af' function. */ | ||
884 | #undef HAVE_RRESVPORT_AF | ||
885 | |||
886 | /* Define to 1 if you have the `RSA_generate_key_ex' function. */ | ||
887 | #undef HAVE_RSA_GENERATE_KEY_EX | ||
888 | |||
889 | /* Define to 1 if you have the `RSA_get_default_method' function. */ | ||
890 | #undef HAVE_RSA_GET_DEFAULT_METHOD | ||
891 | |||
892 | /* Define to 1 if you have the <sandbox.h> header file. */ | ||
893 | #undef HAVE_SANDBOX_H | ||
894 | |||
895 | /* Define to 1 if you have the `sandbox_init' function. */ | ||
896 | #undef HAVE_SANDBOX_INIT | ||
897 | |||
898 | /* define if you have sa_family_t data type */ | ||
899 | #undef HAVE_SA_FAMILY_T | ||
900 | |||
901 | /* Define to 1 if you have the `scan_scaled' function. */ | ||
902 | #undef HAVE_SCAN_SCALED | ||
903 | |||
904 | /* Define if you have SecureWare-based protected password database */ | ||
905 | #undef HAVE_SECUREWARE | ||
906 | |||
907 | /* Define to 1 if you have the <security/pam_appl.h> header file. */ | ||
908 | #undef HAVE_SECURITY_PAM_APPL_H | ||
909 | |||
910 | /* Define to 1 if you have the `sendmsg' function. */ | ||
911 | #undef HAVE_SENDMSG | ||
912 | |||
913 | /* Define to 1 if you have the `setauthdb' function. */ | ||
914 | #undef HAVE_SETAUTHDB | ||
915 | |||
916 | /* Define to 1 if you have the `setdtablesize' function. */ | ||
917 | #undef HAVE_SETDTABLESIZE | ||
918 | |||
919 | /* Define to 1 if you have the `setegid' function. */ | ||
920 | #undef HAVE_SETEGID | ||
921 | |||
922 | /* Define to 1 if you have the `setenv' function. */ | ||
923 | #undef HAVE_SETENV | ||
924 | |||
925 | /* Define to 1 if you have the `seteuid' function. */ | ||
926 | #undef HAVE_SETEUID | ||
927 | |||
928 | /* Define to 1 if you have the `setgroupent' function. */ | ||
929 | #undef HAVE_SETGROUPENT | ||
930 | |||
931 | /* Define to 1 if you have the `setgroups' function. */ | ||
932 | #undef HAVE_SETGROUPS | ||
933 | |||
934 | /* Define to 1 if you have the `setlinebuf' function. */ | ||
935 | #undef HAVE_SETLINEBUF | ||
936 | |||
937 | /* Define to 1 if you have the `setlogin' function. */ | ||
938 | #undef HAVE_SETLOGIN | ||
939 | |||
940 | /* Define to 1 if you have the `setluid' function. */ | ||
941 | #undef HAVE_SETLUID | ||
942 | |||
943 | /* Define to 1 if you have the `setpassent' function. */ | ||
944 | #undef HAVE_SETPASSENT | ||
945 | |||
946 | /* Define to 1 if you have the `setpcred' function. */ | ||
947 | #undef HAVE_SETPCRED | ||
948 | |||
949 | /* Define to 1 if you have the `setproctitle' function. */ | ||
950 | #undef HAVE_SETPROCTITLE | ||
951 | |||
952 | /* Define to 1 if you have the `setregid' function. */ | ||
953 | #undef HAVE_SETREGID | ||
954 | |||
955 | /* Define to 1 if you have the `setresgid' function. */ | ||
956 | #undef HAVE_SETRESGID | ||
957 | |||
958 | /* Define to 1 if you have the `setresuid' function. */ | ||
959 | #undef HAVE_SETRESUID | ||
960 | |||
961 | /* Define to 1 if you have the `setreuid' function. */ | ||
962 | #undef HAVE_SETREUID | ||
963 | |||
964 | /* Define to 1 if you have the `setrlimit' function. */ | ||
965 | #undef HAVE_SETRLIMIT | ||
966 | |||
967 | /* Define to 1 if you have the `setsid' function. */ | ||
968 | #undef HAVE_SETSID | ||
969 | |||
970 | /* Define to 1 if you have the `setutent' function. */ | ||
971 | #undef HAVE_SETUTENT | ||
972 | |||
973 | /* Define to 1 if you have the `setutxdb' function. */ | ||
974 | #undef HAVE_SETUTXDB | ||
975 | |||
976 | /* Define to 1 if you have the `setutxent' function. */ | ||
977 | #undef HAVE_SETUTXENT | ||
978 | |||
979 | /* Define to 1 if you have the `setvbuf' function. */ | ||
980 | #undef HAVE_SETVBUF | ||
981 | |||
982 | /* Define to 1 if you have the `set_id' function. */ | ||
983 | #undef HAVE_SET_ID | ||
984 | |||
985 | /* Define to 1 if you have the `SHA256_Update' function. */ | ||
986 | #undef HAVE_SHA256_UPDATE | ||
987 | |||
988 | /* Define to 1 if you have the <sha2.h> header file. */ | ||
989 | #undef HAVE_SHA2_H | ||
990 | |||
991 | /* Define to 1 if you have the <shadow.h> header file. */ | ||
992 | #undef HAVE_SHADOW_H | ||
993 | |||
994 | /* Define to 1 if you have the `sigaction' function. */ | ||
995 | #undef HAVE_SIGACTION | ||
996 | |||
997 | /* Define to 1 if you have the `sigvec' function. */ | ||
998 | #undef HAVE_SIGVEC | ||
999 | |||
1000 | /* Define to 1 if the system has the type `sig_atomic_t'. */ | ||
1001 | #undef HAVE_SIG_ATOMIC_T | ||
1002 | |||
1003 | /* define if you have size_t data type */ | ||
1004 | #undef HAVE_SIZE_T | ||
1005 | |||
1006 | /* Define to 1 if you have the `snprintf' function. */ | ||
1007 | #undef HAVE_SNPRINTF | ||
1008 | |||
1009 | /* Define to 1 if you have the `socketpair' function. */ | ||
1010 | #undef HAVE_SOCKETPAIR | ||
1011 | |||
1012 | /* Have PEERCRED socket option */ | ||
1013 | #undef HAVE_SO_PEERCRED | ||
1014 | |||
1015 | /* define if you have ssize_t data type */ | ||
1016 | #undef HAVE_SSIZE_T | ||
1017 | |||
1018 | /* Fields in struct sockaddr_storage */ | ||
1019 | #undef HAVE_SS_FAMILY_IN_SS | ||
1020 | |||
1021 | /* Define to 1 if you have the `statfs' function. */ | ||
1022 | #undef HAVE_STATFS | ||
1023 | |||
1024 | /* Define to 1 if you have the `statvfs' function. */ | ||
1025 | #undef HAVE_STATVFS | ||
1026 | |||
1027 | /* Define to 1 if you have the <stddef.h> header file. */ | ||
1028 | #undef HAVE_STDDEF_H | ||
1029 | |||
1030 | /* Define to 1 if you have the <stdint.h> header file. */ | ||
1031 | #undef HAVE_STDINT_H | ||
1032 | |||
1033 | /* Define to 1 if you have the <stdlib.h> header file. */ | ||
1034 | #undef HAVE_STDLIB_H | ||
1035 | |||
1036 | /* Define to 1 if you have the `strdup' function. */ | ||
1037 | #undef HAVE_STRDUP | ||
1038 | |||
1039 | /* Define to 1 if you have the `strerror' function. */ | ||
1040 | #undef HAVE_STRERROR | ||
1041 | |||
1042 | /* Define to 1 if you have the `strftime' function. */ | ||
1043 | #undef HAVE_STRFTIME | ||
1044 | |||
1045 | /* Silly mkstemp() */ | ||
1046 | #undef HAVE_STRICT_MKSTEMP | ||
1047 | |||
1048 | /* Define to 1 if you have the <strings.h> header file. */ | ||
1049 | #undef HAVE_STRINGS_H | ||
1050 | |||
1051 | /* Define to 1 if you have the <string.h> header file. */ | ||
1052 | #undef HAVE_STRING_H | ||
1053 | |||
1054 | /* Define to 1 if you have the `strlcat' function. */ | ||
1055 | #undef HAVE_STRLCAT | ||
1056 | |||
1057 | /* Define to 1 if you have the `strlcpy' function. */ | ||
1058 | #undef HAVE_STRLCPY | ||
1059 | |||
1060 | /* Define to 1 if you have the `strmode' function. */ | ||
1061 | #undef HAVE_STRMODE | ||
1062 | |||
1063 | /* Define to 1 if you have the `strnlen' function. */ | ||
1064 | #undef HAVE_STRNLEN | ||
1065 | |||
1066 | /* Define to 1 if you have the `strnvis' function. */ | ||
1067 | #undef HAVE_STRNVIS | ||
1068 | |||
1069 | /* Define to 1 if you have the `strptime' function. */ | ||
1070 | #undef HAVE_STRPTIME | ||
1071 | |||
1072 | /* Define to 1 if you have the `strsep' function. */ | ||
1073 | #undef HAVE_STRSEP | ||
1074 | |||
1075 | /* Define to 1 if you have the `strtoll' function. */ | ||
1076 | #undef HAVE_STRTOLL | ||
1077 | |||
1078 | /* Define to 1 if you have the `strtonum' function. */ | ||
1079 | #undef HAVE_STRTONUM | ||
1080 | |||
1081 | /* Define to 1 if you have the `strtoul' function. */ | ||
1082 | #undef HAVE_STRTOUL | ||
1083 | |||
1084 | /* Define to 1 if you have the `strtoull' function. */ | ||
1085 | #undef HAVE_STRTOULL | ||
1086 | |||
1087 | /* define if you have struct addrinfo data type */ | ||
1088 | #undef HAVE_STRUCT_ADDRINFO | ||
1089 | |||
1090 | /* define if you have struct in6_addr data type */ | ||
1091 | #undef HAVE_STRUCT_IN6_ADDR | ||
1092 | |||
1093 | /* Define to 1 if `pw_change' is a member of `struct passwd'. */ | ||
1094 | #undef HAVE_STRUCT_PASSWD_PW_CHANGE | ||
1095 | |||
1096 | /* Define to 1 if `pw_class' is a member of `struct passwd'. */ | ||
1097 | #undef HAVE_STRUCT_PASSWD_PW_CLASS | ||
1098 | |||
1099 | /* Define to 1 if `pw_expire' is a member of `struct passwd'. */ | ||
1100 | #undef HAVE_STRUCT_PASSWD_PW_EXPIRE | ||
1101 | |||
1102 | /* Define to 1 if `pw_gecos' is a member of `struct passwd'. */ | ||
1103 | #undef HAVE_STRUCT_PASSWD_PW_GECOS | ||
1104 | |||
1105 | /* define if you have struct sockaddr_in6 data type */ | ||
1106 | #undef HAVE_STRUCT_SOCKADDR_IN6 | ||
1107 | |||
1108 | /* Define to 1 if `sin6_scope_id' is a member of `struct sockaddr_in6'. */ | ||
1109 | #undef HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID | ||
1110 | |||
1111 | /* define if you have struct sockaddr_storage data type */ | ||
1112 | #undef HAVE_STRUCT_SOCKADDR_STORAGE | ||
1113 | |||
1114 | /* Define to 1 if `st_blksize' is a member of `struct stat'. */ | ||
1115 | #undef HAVE_STRUCT_STAT_ST_BLKSIZE | ||
1116 | |||
1117 | /* Define to 1 if the system has the type `struct timespec'. */ | ||
1118 | #undef HAVE_STRUCT_TIMESPEC | ||
1119 | |||
1120 | /* define if you have struct timeval */ | ||
1121 | #undef HAVE_STRUCT_TIMEVAL | ||
1122 | |||
1123 | /* Define to 1 if you have the `swap32' function. */ | ||
1124 | #undef HAVE_SWAP32 | ||
1125 | |||
1126 | /* Define to 1 if you have the `sysconf' function. */ | ||
1127 | #undef HAVE_SYSCONF | ||
1128 | |||
1129 | /* Define if you have syslen in utmpx.h */ | ||
1130 | #undef HAVE_SYSLEN_IN_UTMPX | ||
1131 | |||
1132 | /* Define to 1 if you have the <sys/audit.h> header file. */ | ||
1133 | #undef HAVE_SYS_AUDIT_H | ||
1134 | |||
1135 | /* Define to 1 if you have the <sys/bitypes.h> header file. */ | ||
1136 | #undef HAVE_SYS_BITYPES_H | ||
1137 | |||
1138 | /* Define to 1 if you have the <sys/bsdtty.h> header file. */ | ||
1139 | #undef HAVE_SYS_BSDTTY_H | ||
1140 | |||
1141 | /* Define to 1 if you have the <sys/capability.h> header file. */ | ||
1142 | #undef HAVE_SYS_CAPABILITY_H | ||
1143 | |||
1144 | /* Define to 1 if you have the <sys/cdefs.h> header file. */ | ||
1145 | #undef HAVE_SYS_CDEFS_H | ||
1146 | |||
1147 | /* Define to 1 if you have the <sys/dir.h> header file. */ | ||
1148 | #undef HAVE_SYS_DIR_H | ||
1149 | |||
1150 | /* Define if your system defines sys_errlist[] */ | ||
1151 | #undef HAVE_SYS_ERRLIST | ||
1152 | |||
1153 | /* Define to 1 if you have the <sys/mman.h> header file. */ | ||
1154 | #undef HAVE_SYS_MMAN_H | ||
1155 | |||
1156 | /* Define to 1 if you have the <sys/mount.h> header file. */ | ||
1157 | #undef HAVE_SYS_MOUNT_H | ||
1158 | |||
1159 | /* Define to 1 if you have the <sys/ndir.h> header file. */ | ||
1160 | #undef HAVE_SYS_NDIR_H | ||
1161 | |||
1162 | /* Define if your system defines sys_nerr */ | ||
1163 | #undef HAVE_SYS_NERR | ||
1164 | |||
1165 | /* Define to 1 if you have the <sys/poll.h> header file. */ | ||
1166 | #undef HAVE_SYS_POLL_H | ||
1167 | |||
1168 | /* Define to 1 if you have the <sys/prctl.h> header file. */ | ||
1169 | #undef HAVE_SYS_PRCTL_H | ||
1170 | |||
1171 | /* Define to 1 if you have the <sys/pstat.h> header file. */ | ||
1172 | #undef HAVE_SYS_PSTAT_H | ||
1173 | |||
1174 | /* Define to 1 if you have the <sys/ptms.h> header file. */ | ||
1175 | #undef HAVE_SYS_PTMS_H | ||
1176 | |||
1177 | /* Define to 1 if you have the <sys/select.h> header file. */ | ||
1178 | #undef HAVE_SYS_SELECT_H | ||
1179 | |||
1180 | /* Define to 1 if you have the <sys/statvfs.h> header file. */ | ||
1181 | #undef HAVE_SYS_STATVFS_H | ||
1182 | |||
1183 | /* Define to 1 if you have the <sys/stat.h> header file. */ | ||
1184 | #undef HAVE_SYS_STAT_H | ||
1185 | |||
1186 | /* Define to 1 if you have the <sys/stream.h> header file. */ | ||
1187 | #undef HAVE_SYS_STREAM_H | ||
1188 | |||
1189 | /* Define to 1 if you have the <sys/stropts.h> header file. */ | ||
1190 | #undef HAVE_SYS_STROPTS_H | ||
1191 | |||
1192 | /* Define to 1 if you have the <sys/strtio.h> header file. */ | ||
1193 | #undef HAVE_SYS_STRTIO_H | ||
1194 | |||
1195 | /* Force use of sys/syslog.h on Ultrix */ | ||
1196 | #undef HAVE_SYS_SYSLOG_H | ||
1197 | |||
1198 | /* Define to 1 if you have the <sys/sysmacros.h> header file. */ | ||
1199 | #undef HAVE_SYS_SYSMACROS_H | ||
1200 | |||
1201 | /* Define to 1 if you have the <sys/timers.h> header file. */ | ||
1202 | #undef HAVE_SYS_TIMERS_H | ||
1203 | |||
1204 | /* Define to 1 if you have the <sys/time.h> header file. */ | ||
1205 | #undef HAVE_SYS_TIME_H | ||
1206 | |||
1207 | /* Define to 1 if you have the <sys/types.h> header file. */ | ||
1208 | #undef HAVE_SYS_TYPES_H | ||
1209 | |||
1210 | /* Define to 1 if you have the <sys/un.h> header file. */ | ||
1211 | #undef HAVE_SYS_UN_H | ||
1212 | |||
1213 | /* Define to 1 if you have the `tcgetpgrp' function. */ | ||
1214 | #undef HAVE_TCGETPGRP | ||
1215 | |||
1216 | /* Define to 1 if you have the `tcsendbreak' function. */ | ||
1217 | #undef HAVE_TCSENDBREAK | ||
1218 | |||
1219 | /* Define to 1 if you have the `time' function. */ | ||
1220 | #undef HAVE_TIME | ||
1221 | |||
1222 | /* Define to 1 if you have the <time.h> header file. */ | ||
1223 | #undef HAVE_TIME_H | ||
1224 | |||
1225 | /* Define if you have ut_time in utmp.h */ | ||
1226 | #undef HAVE_TIME_IN_UTMP | ||
1227 | |||
1228 | /* Define if you have ut_time in utmpx.h */ | ||
1229 | #undef HAVE_TIME_IN_UTMPX | ||
1230 | |||
1231 | /* Define to 1 if you have the `timingsafe_bcmp' function. */ | ||
1232 | #undef HAVE_TIMINGSAFE_BCMP | ||
1233 | |||
1234 | /* Define to 1 if you have the <tmpdir.h> header file. */ | ||
1235 | #undef HAVE_TMPDIR_H | ||
1236 | |||
1237 | /* Define to 1 if you have the `truncate' function. */ | ||
1238 | #undef HAVE_TRUNCATE | ||
1239 | |||
1240 | /* Define to 1 if you have the <ttyent.h> header file. */ | ||
1241 | #undef HAVE_TTYENT_H | ||
1242 | |||
1243 | /* Define if you have ut_tv in utmp.h */ | ||
1244 | #undef HAVE_TV_IN_UTMP | ||
1245 | |||
1246 | /* Define if you have ut_tv in utmpx.h */ | ||
1247 | #undef HAVE_TV_IN_UTMPX | ||
1248 | |||
1249 | /* Define if you have ut_type in utmp.h */ | ||
1250 | #undef HAVE_TYPE_IN_UTMP | ||
1251 | |||
1252 | /* Define if you have ut_type in utmpx.h */ | ||
1253 | #undef HAVE_TYPE_IN_UTMPX | ||
1254 | |||
1255 | /* Define to 1 if you have the <ucred.h> header file. */ | ||
1256 | #undef HAVE_UCRED_H | ||
1257 | |||
1258 | /* Define to 1 if the system has the type `uintmax_t'. */ | ||
1259 | #undef HAVE_UINTMAX_T | ||
1260 | |||
1261 | /* define if you have uintxx_t data type */ | ||
1262 | #undef HAVE_UINTXX_T | ||
1263 | |||
1264 | /* Define to 1 if you have the <unistd.h> header file. */ | ||
1265 | #undef HAVE_UNISTD_H | ||
1266 | |||
1267 | /* Define to 1 if you have the `unsetenv' function. */ | ||
1268 | #undef HAVE_UNSETENV | ||
1269 | |||
1270 | /* Define to 1 if the system has the type `unsigned long long'. */ | ||
1271 | #undef HAVE_UNSIGNED_LONG_LONG | ||
1272 | |||
1273 | /* Define to 1 if you have the `updwtmp' function. */ | ||
1274 | #undef HAVE_UPDWTMP | ||
1275 | |||
1276 | /* Define to 1 if you have the `updwtmpx' function. */ | ||
1277 | #undef HAVE_UPDWTMPX | ||
1278 | |||
1279 | /* Define to 1 if you have the <usersec.h> header file. */ | ||
1280 | #undef HAVE_USERSEC_H | ||
1281 | |||
1282 | /* Define to 1 if you have the `user_from_uid' function. */ | ||
1283 | #undef HAVE_USER_FROM_UID | ||
1284 | |||
1285 | /* Define to 1 if you have the `usleep' function. */ | ||
1286 | #undef HAVE_USLEEP | ||
1287 | |||
1288 | /* Define to 1 if you have the <util.h> header file. */ | ||
1289 | #undef HAVE_UTIL_H | ||
1290 | |||
1291 | /* Define to 1 if you have the `utimes' function. */ | ||
1292 | #undef HAVE_UTIMES | ||
1293 | |||
1294 | /* Define to 1 if you have the <utime.h> header file. */ | ||
1295 | #undef HAVE_UTIME_H | ||
1296 | |||
1297 | /* Define to 1 if you have the `utmpname' function. */ | ||
1298 | #undef HAVE_UTMPNAME | ||
1299 | |||
1300 | /* Define to 1 if you have the `utmpxname' function. */ | ||
1301 | #undef HAVE_UTMPXNAME | ||
1302 | |||
1303 | /* Define to 1 if you have the <utmpx.h> header file. */ | ||
1304 | #undef HAVE_UTMPX_H | ||
1305 | |||
1306 | /* Define to 1 if you have the <utmp.h> header file. */ | ||
1307 | #undef HAVE_UTMP_H | ||
1308 | |||
1309 | /* define if you have u_char data type */ | ||
1310 | #undef HAVE_U_CHAR | ||
1311 | |||
1312 | /* define if you have u_int data type */ | ||
1313 | #undef HAVE_U_INT | ||
1314 | |||
1315 | /* define if you have u_int64_t data type */ | ||
1316 | #undef HAVE_U_INT64_T | ||
1317 | |||
1318 | /* define if you have u_intxx_t data type */ | ||
1319 | #undef HAVE_U_INTXX_T | ||
1320 | |||
1321 | /* Define to 1 if you have the `vasprintf' function. */ | ||
1322 | #undef HAVE_VASPRINTF | ||
1323 | |||
1324 | /* Define if va_copy exists */ | ||
1325 | #undef HAVE_VA_COPY | ||
1326 | |||
1327 | /* Define to 1 if you have the `vhangup' function. */ | ||
1328 | #undef HAVE_VHANGUP | ||
1329 | |||
1330 | /* Define to 1 if you have the <vis.h> header file. */ | ||
1331 | #undef HAVE_VIS_H | ||
1332 | |||
1333 | /* Define to 1 if you have the `vsnprintf' function. */ | ||
1334 | #undef HAVE_VSNPRINTF | ||
1335 | |||
1336 | /* Define to 1 if you have the `waitpid' function. */ | ||
1337 | #undef HAVE_WAITPID | ||
1338 | |||
1339 | /* Define to 1 if you have the `_getlong' function. */ | ||
1340 | #undef HAVE__GETLONG | ||
1341 | |||
1342 | /* Define to 1 if you have the `_getpty' function. */ | ||
1343 | #undef HAVE__GETPTY | ||
1344 | |||
1345 | /* Define to 1 if you have the `_getshort' function. */ | ||
1346 | #undef HAVE__GETSHORT | ||
1347 | |||
1348 | /* Define if you have struct __res_state _res as an extern */ | ||
1349 | #undef HAVE__RES_EXTERN | ||
1350 | |||
1351 | /* Define to 1 if you have the `__b64_ntop' function. */ | ||
1352 | #undef HAVE___B64_NTOP | ||
1353 | |||
1354 | /* Define to 1 if you have the `__b64_pton' function. */ | ||
1355 | #undef HAVE___B64_PTON | ||
1356 | |||
1357 | /* Define if compiler implements __FUNCTION__ */ | ||
1358 | #undef HAVE___FUNCTION__ | ||
1359 | |||
1360 | /* Define if libc defines __progname */ | ||
1361 | #undef HAVE___PROGNAME | ||
1362 | |||
1363 | /* Fields in struct sockaddr_storage */ | ||
1364 | #undef HAVE___SS_FAMILY_IN_SS | ||
1365 | |||
1366 | /* Define if __va_copy exists */ | ||
1367 | #undef HAVE___VA_COPY | ||
1368 | |||
1369 | /* Define if compiler implements __func__ */ | ||
1370 | #undef HAVE___func__ | ||
1371 | |||
1372 | /* Define this if you are using the Heimdal version of Kerberos V5 */ | ||
1373 | #undef HEIMDAL | ||
1374 | |||
1375 | /* Define if you need to use IP address instead of hostname in $DISPLAY */ | ||
1376 | #undef IPADDR_IN_DISPLAY | ||
1377 | |||
1378 | /* Detect IPv4 in IPv6 mapped addresses and treat as IPv4 */ | ||
1379 | #undef IPV4_IN_IPV6 | ||
1380 | |||
1381 | /* Define if your system choked on IP TOS setting */ | ||
1382 | #undef IP_TOS_IS_BROKEN | ||
1383 | |||
1384 | /* Define if you want Kerberos 5 support */ | ||
1385 | #undef KRB5 | ||
1386 | |||
1387 | /* Define if pututxline updates lastlog too */ | ||
1388 | #undef LASTLOG_WRITE_PUTUTXLINE | ||
1389 | |||
1390 | /* Define if you want TCP Wrappers support */ | ||
1391 | #undef LIBWRAP | ||
1392 | |||
1393 | /* Define to whatever link() returns for "not supported" if it doesn't return | ||
1394 | EOPNOTSUPP. */ | ||
1395 | #undef LINK_OPNOTSUPP_ERRNO | ||
1396 | |||
1397 | /* Adjust Linux out-of-memory killer */ | ||
1398 | #undef LINUX_OOM_ADJUST | ||
1399 | |||
1400 | /* max value of long long calculated by configure */ | ||
1401 | #undef LLONG_MAX | ||
1402 | |||
1403 | /* min value of long long calculated by configure */ | ||
1404 | #undef LLONG_MIN | ||
1405 | |||
1406 | /* Account locked with pw(1) */ | ||
1407 | #undef LOCKED_PASSWD_PREFIX | ||
1408 | |||
1409 | /* String used in /etc/passwd to denote locked account */ | ||
1410 | #undef LOCKED_PASSWD_STRING | ||
1411 | |||
1412 | /* String used in /etc/passwd to denote locked account */ | ||
1413 | #undef LOCKED_PASSWD_SUBSTR | ||
1414 | |||
1415 | /* Some versions of /bin/login need the TERM supplied on the commandline */ | ||
1416 | #undef LOGIN_NEEDS_TERM | ||
1417 | |||
1418 | /* Some systems need a utmpx entry for /bin/login to work */ | ||
1419 | #undef LOGIN_NEEDS_UTMPX | ||
1420 | |||
1421 | /* Define if your login program cannot handle end of options ("--") */ | ||
1422 | #undef LOGIN_NO_ENDOPT | ||
1423 | |||
1424 | /* If your header files don't define LOGIN_PROGRAM, then use this (detected) | ||
1425 | from environment and PATH */ | ||
1426 | #undef LOGIN_PROGRAM_FALLBACK | ||
1427 | |||
1428 | /* Set this to your mail directory if you do not have _PATH_MAILDIR */ | ||
1429 | #undef MAIL_DIRECTORY | ||
1430 | |||
1431 | /* Need setpgrp to acquire controlling tty */ | ||
1432 | #undef NEED_SETPGRP | ||
1433 | |||
1434 | /* compiler does not accept __attribute__ on return types */ | ||
1435 | #undef NO_ATTRIBUTE_ON_RETURN_TYPE | ||
1436 | |||
1437 | /* Define if the concept of ports only accessible to superusers isn't known */ | ||
1438 | #undef NO_IPPORT_RESERVED_CONCEPT | ||
1439 | |||
1440 | /* Define if you don't want to use lastlog in session.c */ | ||
1441 | #undef NO_SSH_LASTLOG | ||
1442 | |||
1443 | /* Define if X11 doesn't support AF_UNIX sockets on that system */ | ||
1444 | #undef NO_X11_UNIX_SOCKETS | ||
1445 | |||
1446 | /* Define if EVP_DigestUpdate returns void */ | ||
1447 | #undef OPENSSL_EVP_DIGESTUPDATE_VOID | ||
1448 | |||
1449 | /* OpenSSL has ECC */ | ||
1450 | #undef OPENSSL_HAS_ECC | ||
1451 | |||
1452 | /* libcrypto has NID_X9_62_prime256v1 */ | ||
1453 | #undef OPENSSL_HAS_NISTP256 | ||
1454 | |||
1455 | /* libcrypto has NID_secp384r1 */ | ||
1456 | #undef OPENSSL_HAS_NISTP384 | ||
1457 | |||
1458 | /* libcrypto has NID_secp521r1 */ | ||
1459 | #undef OPENSSL_HAS_NISTP521 | ||
1460 | |||
1461 | /* libcrypto has EVP AES CTR */ | ||
1462 | #undef OPENSSL_HAVE_EVPCTR | ||
1463 | |||
1464 | /* libcrypto has EVP AES GCM */ | ||
1465 | #undef OPENSSL_HAVE_EVPGCM | ||
1466 | |||
1467 | /* libcrypto is missing AES 192 and 256 bit functions */ | ||
1468 | #undef OPENSSL_LOBOTOMISED_AES | ||
1469 | |||
1470 | /* Define if you want OpenSSL's internally seeded PRNG only */ | ||
1471 | #undef OPENSSL_PRNG_ONLY | ||
1472 | |||
1473 | /* Define to the address where bug reports for this package should be sent. */ | ||
1474 | #undef PACKAGE_BUGREPORT | ||
1475 | |||
1476 | /* Define to the full name of this package. */ | ||
1477 | #undef PACKAGE_NAME | ||
1478 | |||
1479 | /* Define to the full name and version of this package. */ | ||
1480 | #undef PACKAGE_STRING | ||
1481 | |||
1482 | /* Define to the one symbol short name of this package. */ | ||
1483 | #undef PACKAGE_TARNAME | ||
1484 | |||
1485 | /* Define to the home page for this package. */ | ||
1486 | #undef PACKAGE_URL | ||
1487 | |||
1488 | /* Define to the version of this package. */ | ||
1489 | #undef PACKAGE_VERSION | ||
1490 | |||
1491 | /* Define if you are using Solaris-derived PAM which passes pam_messages to | ||
1492 | the conversation function with an extra level of indirection */ | ||
1493 | #undef PAM_SUN_CODEBASE | ||
1494 | |||
1495 | /* Work around problematic Linux PAM modules handling of PAM_TTY */ | ||
1496 | #undef PAM_TTY_KLUDGE | ||
1497 | |||
1498 | /* must supply username to passwd */ | ||
1499 | #undef PASSWD_NEEDS_USERNAME | ||
1500 | |||
1501 | /* System dirs owned by bin (uid 2) */ | ||
1502 | #undef PLATFORM_SYS_DIR_UID | ||
1503 | |||
1504 | /* Port number of PRNGD/EGD random number socket */ | ||
1505 | #undef PRNGD_PORT | ||
1506 | |||
1507 | /* Location of PRNGD/EGD random number socket */ | ||
1508 | #undef PRNGD_SOCKET | ||
1509 | |||
1510 | /* read(1) can return 0 for a non-closed fd */ | ||
1511 | #undef PTY_ZEROREAD | ||
1512 | |||
1513 | /* Sandbox using capsicum */ | ||
1514 | #undef SANDBOX_CAPSICUM | ||
1515 | |||
1516 | /* Sandbox using Darwin sandbox_init(3) */ | ||
1517 | #undef SANDBOX_DARWIN | ||
1518 | |||
1519 | /* no privsep sandboxing */ | ||
1520 | #undef SANDBOX_NULL | ||
1521 | |||
1522 | /* Sandbox using setrlimit(2) */ | ||
1523 | #undef SANDBOX_RLIMIT | ||
1524 | |||
1525 | /* Sandbox using seccomp filter */ | ||
1526 | #undef SANDBOX_SECCOMP_FILTER | ||
1527 | |||
1528 | /* setrlimit RLIMIT_FSIZE works */ | ||
1529 | #undef SANDBOX_SKIP_RLIMIT_FSIZE | ||
1530 | |||
1531 | /* define if setrlimit RLIMIT_NOFILE breaks things */ | ||
1532 | #undef SANDBOX_SKIP_RLIMIT_NOFILE | ||
1533 | |||
1534 | /* Sandbox using systrace(4) */ | ||
1535 | #undef SANDBOX_SYSTRACE | ||
1536 | |||
1537 | /* Specify the system call convention in use */ | ||
1538 | #undef SECCOMP_AUDIT_ARCH | ||
1539 | |||
1540 | /* Define if your platform breaks doing a seteuid before a setuid */ | ||
1541 | #undef SETEUID_BREAKS_SETUID | ||
1542 | |||
1543 | /* The size of `int', as computed by sizeof. */ | ||
1544 | #undef SIZEOF_INT | ||
1545 | |||
1546 | /* The size of `long int', as computed by sizeof. */ | ||
1547 | #undef SIZEOF_LONG_INT | ||
1548 | |||
1549 | /* The size of `long long int', as computed by sizeof. */ | ||
1550 | #undef SIZEOF_LONG_LONG_INT | ||
1551 | |||
1552 | /* The size of `short int', as computed by sizeof. */ | ||
1553 | #undef SIZEOF_SHORT_INT | ||
1554 | |||
1555 | /* Define if you want S/Key support */ | ||
1556 | #undef SKEY | ||
1557 | |||
1558 | /* Define if your skeychallenge() function takes 4 arguments (NetBSD) */ | ||
1559 | #undef SKEYCHALLENGE_4ARG | ||
1560 | |||
1561 | /* Define as const if snprintf() can declare const char *fmt */ | ||
1562 | #undef SNPRINTF_CONST | ||
1563 | |||
1564 | /* Define to a Set Process Title type if your system is supported by | ||
1565 | bsd-setproctitle.c */ | ||
1566 | #undef SPT_TYPE | ||
1567 | |||
1568 | /* Define if sshd somehow reacquires a controlling TTY after setsid() */ | ||
1569 | #undef SSHD_ACQUIRES_CTTY | ||
1570 | |||
1571 | /* Define if pam_chauthtok wants real uid set to the unpriv'ed user */ | ||
1572 | #undef SSHPAM_CHAUTHTOK_NEEDS_RUID | ||
1573 | |||
1574 | /* Use audit debugging module */ | ||
1575 | #undef SSH_AUDIT_EVENTS | ||
1576 | |||
1577 | /* Windows is sensitive to read buffer size */ | ||
1578 | #undef SSH_IOBUFSZ | ||
1579 | |||
1580 | /* non-privileged user for privilege separation */ | ||
1581 | #undef SSH_PRIVSEP_USER | ||
1582 | |||
1583 | /* Use tunnel device compatibility to OpenBSD */ | ||
1584 | #undef SSH_TUN_COMPAT_AF | ||
1585 | |||
1586 | /* Open tunnel devices the FreeBSD way */ | ||
1587 | #undef SSH_TUN_FREEBSD | ||
1588 | |||
1589 | /* Open tunnel devices the Linux tun/tap way */ | ||
1590 | #undef SSH_TUN_LINUX | ||
1591 | |||
1592 | /* No layer 2 tunnel support */ | ||
1593 | #undef SSH_TUN_NO_L2 | ||
1594 | |||
1595 | /* Open tunnel devices the OpenBSD way */ | ||
1596 | #undef SSH_TUN_OPENBSD | ||
1597 | |||
1598 | /* Prepend the address family to IP tunnel traffic */ | ||
1599 | #undef SSH_TUN_PREPEND_AF | ||
1600 | |||
1601 | /* Define to 1 if you have the ANSI C header files. */ | ||
1602 | #undef STDC_HEADERS | ||
1603 | |||
1604 | /* Define if you want a different $PATH for the superuser */ | ||
1605 | #undef SUPERUSER_PATH | ||
1606 | |||
1607 | /* syslog_r function is safe to use in in a signal handler */ | ||
1608 | #undef SYSLOG_R_SAFE_IN_SIGHAND | ||
1609 | |||
1610 | /* Support passwords > 8 chars */ | ||
1611 | #undef UNIXWARE_LONG_PASSWORDS | ||
1612 | |||
1613 | /* Specify default $PATH */ | ||
1614 | #undef USER_PATH | ||
1615 | |||
1616 | /* Define this if you want to use libkafs' AFS support */ | ||
1617 | #undef USE_AFS | ||
1618 | |||
1619 | /* Use BSM audit module */ | ||
1620 | #undef USE_BSM_AUDIT | ||
1621 | |||
1622 | /* Use btmp to log bad logins */ | ||
1623 | #undef USE_BTMP | ||
1624 | |||
1625 | /* Use libedit for sftp */ | ||
1626 | #undef USE_LIBEDIT | ||
1627 | |||
1628 | /* Use Linux audit module */ | ||
1629 | #undef USE_LINUX_AUDIT | ||
1630 | |||
1631 | /* Enable OpenSSL engine support */ | ||
1632 | #undef USE_OPENSSL_ENGINE | ||
1633 | |||
1634 | /* Define if you want to enable PAM support */ | ||
1635 | #undef USE_PAM | ||
1636 | |||
1637 | /* Use PIPES instead of a socketpair() */ | ||
1638 | #undef USE_PIPES | ||
1639 | |||
1640 | /* Define if you have Solaris process contracts */ | ||
1641 | #undef USE_SOLARIS_PROCESS_CONTRACTS | ||
1642 | |||
1643 | /* Define if you have Solaris projects */ | ||
1644 | #undef USE_SOLARIS_PROJECTS | ||
1645 | |||
1646 | /* Define if you shouldn't strip 'tty' from your ttyname in [uw]tmp */ | ||
1647 | #undef WITH_ABBREV_NO_TTY | ||
1648 | |||
1649 | /* Define if you want to enable AIX4's authenticate function */ | ||
1650 | #undef WITH_AIXAUTHENTICATE | ||
1651 | |||
1652 | /* Define if you have/want arrays (cluster-wide session managment, not C | ||
1653 | arrays) */ | ||
1654 | #undef WITH_IRIX_ARRAY | ||
1655 | |||
1656 | /* Define if you want IRIX audit trails */ | ||
1657 | #undef WITH_IRIX_AUDIT | ||
1658 | |||
1659 | /* Define if you want IRIX kernel jobs */ | ||
1660 | #undef WITH_IRIX_JOBS | ||
1661 | |||
1662 | /* Define if you want IRIX project management */ | ||
1663 | #undef WITH_IRIX_PROJECT | ||
1664 | |||
1665 | /* Define if you want SELinux support. */ | ||
1666 | #undef WITH_SELINUX | ||
1667 | |||
1668 | /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most | ||
1669 | significant byte first (like Motorola and SPARC, unlike Intel). */ | ||
1670 | #if defined AC_APPLE_UNIVERSAL_BUILD | ||
1671 | # if defined __BIG_ENDIAN__ | ||
1672 | # define WORDS_BIGENDIAN 1 | ||
1673 | # endif | ||
1674 | #else | ||
1675 | # ifndef WORDS_BIGENDIAN | ||
1676 | # undef WORDS_BIGENDIAN | ||
1677 | # endif | ||
1678 | #endif | ||
1679 | |||
1680 | /* Define if xauth is found in your path */ | ||
1681 | #undef XAUTH_PATH | ||
1682 | |||
1683 | /* Number of bits in a file offset, on hosts where this is settable. */ | ||
1684 | #undef _FILE_OFFSET_BITS | ||
1685 | |||
1686 | /* Define for large files, on AIX-style hosts. */ | ||
1687 | #undef _LARGE_FILES | ||
1688 | |||
1689 | /* log for bad login attempts */ | ||
1690 | #undef _PATH_BTMP | ||
1691 | |||
1692 | /* Full path of your "passwd" program */ | ||
1693 | #undef _PATH_PASSWD_PROG | ||
1694 | |||
1695 | /* Specify location of ssh.pid */ | ||
1696 | #undef _PATH_SSH_PIDDIR | ||
1697 | |||
1698 | /* Define if we don't have struct __res_state in resolv.h */ | ||
1699 | #undef __res_state | ||
1700 | |||
1701 | /* Define to `__inline__' or `__inline' if that's what the C compiler | ||
1702 | calls it, or to nothing if 'inline' is not supported under any name. */ | ||
1703 | #ifndef __cplusplus | ||
1704 | #undef inline | ||
1705 | #endif | ||
1706 | |||
1707 | /* type to use in place of socklen_t if not defined */ | ||
1708 | #undef socklen_t | ||
diff --git a/configure b/configure new file mode 100755 index 000000000..d690393a3 --- /dev/null +++ b/configure | |||
@@ -0,0 +1,19741 @@ | |||
1 | #! /bin/sh | ||
2 | # From configure.ac Revision: 1.571 . | ||
3 | # Guess values for system-dependent variables and create Makefiles. | ||
4 | # Generated by GNU Autoconf 2.68 for OpenSSH Portable. | ||
5 | # | ||
6 | # Report bugs to <openssh-unix-dev@mindrot.org>. | ||
7 | # | ||
8 | # | ||
9 | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, | ||
10 | # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software | ||
11 | # Foundation, Inc. | ||
12 | # | ||
13 | # | ||
14 | # This configure script is free software; the Free Software Foundation | ||
15 | # gives unlimited permission to copy, distribute and modify it. | ||
16 | ## -------------------- ## | ||
17 | ## M4sh Initialization. ## | ||
18 | ## -------------------- ## | ||
19 | |||
20 | # Be more Bourne compatible | ||
21 | DUALCASE=1; export DUALCASE # for MKS sh | ||
22 | if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : | ||
23 | emulate sh | ||
24 | NULLCMD=: | ||
25 | # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which | ||
26 | # is contrary to our usage. Disable this feature. | ||
27 | alias -g '${1+"$@"}'='"$@"' | ||
28 | setopt NO_GLOB_SUBST | ||
29 | else | ||
30 | case `(set -o) 2>/dev/null` in #( | ||
31 | *posix*) : | ||
32 | set -o posix ;; #( | ||
33 | *) : | ||
34 | ;; | ||
35 | esac | ||
36 | fi | ||
37 | |||
38 | |||
39 | as_nl=' | ||
40 | ' | ||
41 | export as_nl | ||
42 | # Printing a long string crashes Solaris 7 /usr/bin/printf. | ||
43 | as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' | ||
44 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo | ||
45 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo | ||
46 | # Prefer a ksh shell builtin over an external printf program on Solaris, | ||
47 | # but without wasting forks for bash or zsh. | ||
48 | if test -z "$BASH_VERSION$ZSH_VERSION" \ | ||
49 | && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
50 | as_echo='print -r --' | ||
51 | as_echo_n='print -rn --' | ||
52 | elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
53 | as_echo='printf %s\n' | ||
54 | as_echo_n='printf %s' | ||
55 | else | ||
56 | if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then | ||
57 | as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' | ||
58 | as_echo_n='/usr/ucb/echo -n' | ||
59 | else | ||
60 | as_echo_body='eval expr "X$1" : "X\\(.*\\)"' | ||
61 | as_echo_n_body='eval | ||
62 | arg=$1; | ||
63 | case $arg in #( | ||
64 | *"$as_nl"*) | ||
65 | expr "X$arg" : "X\\(.*\\)$as_nl"; | ||
66 | arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; | ||
67 | esac; | ||
68 | expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" | ||
69 | ' | ||
70 | export as_echo_n_body | ||
71 | as_echo_n='sh -c $as_echo_n_body as_echo' | ||
72 | fi | ||
73 | export as_echo_body | ||
74 | as_echo='sh -c $as_echo_body as_echo' | ||
75 | fi | ||
76 | |||
77 | # The user is always right. | ||
78 | if test "${PATH_SEPARATOR+set}" != set; then | ||
79 | PATH_SEPARATOR=: | ||
80 | (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { | ||
81 | (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || | ||
82 | PATH_SEPARATOR=';' | ||
83 | } | ||
84 | fi | ||
85 | |||
86 | |||
87 | # IFS | ||
88 | # We need space, tab and new line, in precisely that order. Quoting is | ||
89 | # there to prevent editors from complaining about space-tab. | ||
90 | # (If _AS_PATH_WALK were called with IFS unset, it would disable word | ||
91 | # splitting by setting IFS to empty value.) | ||
92 | IFS=" "" $as_nl" | ||
93 | |||
94 | # Find who we are. Look in the path if we contain no directory separator. | ||
95 | as_myself= | ||
96 | case $0 in #(( | ||
97 | *[\\/]* ) as_myself=$0 ;; | ||
98 | *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
99 | for as_dir in $PATH | ||
100 | do | ||
101 | IFS=$as_save_IFS | ||
102 | test -z "$as_dir" && as_dir=. | ||
103 | test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break | ||
104 | done | ||
105 | IFS=$as_save_IFS | ||
106 | |||
107 | ;; | ||
108 | esac | ||
109 | # We did not find ourselves, most probably we were run as `sh COMMAND' | ||
110 | # in which case we are not to be found in the path. | ||
111 | if test "x$as_myself" = x; then | ||
112 | as_myself=$0 | ||
113 | fi | ||
114 | if test ! -f "$as_myself"; then | ||
115 | $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 | ||
116 | exit 1 | ||
117 | fi | ||
118 | |||
119 | # Unset variables that we do not need and which cause bugs (e.g. in | ||
120 | # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" | ||
121 | # suppresses any "Segmentation fault" message there. '((' could | ||
122 | # trigger a bug in pdksh 5.2.14. | ||
123 | for as_var in BASH_ENV ENV MAIL MAILPATH | ||
124 | do eval test x\${$as_var+set} = xset \ | ||
125 | && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : | ||
126 | done | ||
127 | PS1='$ ' | ||
128 | PS2='> ' | ||
129 | PS4='+ ' | ||
130 | |||
131 | # NLS nuisances. | ||
132 | LC_ALL=C | ||
133 | export LC_ALL | ||
134 | LANGUAGE=C | ||
135 | export LANGUAGE | ||
136 | |||
137 | # CDPATH. | ||
138 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | ||
139 | |||
140 | if test "x$CONFIG_SHELL" = x; then | ||
141 | as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : | ||
142 | emulate sh | ||
143 | NULLCMD=: | ||
144 | # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which | ||
145 | # is contrary to our usage. Disable this feature. | ||
146 | alias -g '\${1+\"\$@\"}'='\"\$@\"' | ||
147 | setopt NO_GLOB_SUBST | ||
148 | else | ||
149 | case \`(set -o) 2>/dev/null\` in #( | ||
150 | *posix*) : | ||
151 | set -o posix ;; #( | ||
152 | *) : | ||
153 | ;; | ||
154 | esac | ||
155 | fi | ||
156 | " | ||
157 | as_required="as_fn_return () { (exit \$1); } | ||
158 | as_fn_success () { as_fn_return 0; } | ||
159 | as_fn_failure () { as_fn_return 1; } | ||
160 | as_fn_ret_success () { return 0; } | ||
161 | as_fn_ret_failure () { return 1; } | ||
162 | |||
163 | exitcode=0 | ||
164 | as_fn_success || { exitcode=1; echo as_fn_success failed.; } | ||
165 | as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } | ||
166 | as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } | ||
167 | as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } | ||
168 | if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : | ||
169 | |||
170 | else | ||
171 | exitcode=1; echo positional parameters were not saved. | ||
172 | fi | ||
173 | test x\$exitcode = x0 || exit 1" | ||
174 | as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO | ||
175 | as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO | ||
176 | eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && | ||
177 | test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 | ||
178 | test \$(( 1 + 1 )) = 2 || exit 1" | ||
179 | if (eval "$as_required") 2>/dev/null; then : | ||
180 | as_have_required=yes | ||
181 | else | ||
182 | as_have_required=no | ||
183 | fi | ||
184 | if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : | ||
185 | |||
186 | else | ||
187 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
188 | as_found=false | ||
189 | for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH | ||
190 | do | ||
191 | IFS=$as_save_IFS | ||
192 | test -z "$as_dir" && as_dir=. | ||
193 | as_found=: | ||
194 | case $as_dir in #( | ||
195 | /*) | ||
196 | for as_base in sh bash ksh sh5; do | ||
197 | # Try only shells that exist, to save several forks. | ||
198 | as_shell=$as_dir/$as_base | ||
199 | if { test -f "$as_shell" || test -f "$as_shell.exe"; } && | ||
200 | { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : | ||
201 | CONFIG_SHELL=$as_shell as_have_required=yes | ||
202 | if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : | ||
203 | break 2 | ||
204 | fi | ||
205 | fi | ||
206 | done;; | ||
207 | esac | ||
208 | as_found=false | ||
209 | done | ||
210 | $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && | ||
211 | { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : | ||
212 | CONFIG_SHELL=$SHELL as_have_required=yes | ||
213 | fi; } | ||
214 | IFS=$as_save_IFS | ||
215 | |||
216 | |||
217 | if test "x$CONFIG_SHELL" != x; then : | ||
218 | # We cannot yet assume a decent shell, so we have to provide a | ||
219 | # neutralization value for shells without unset; and this also | ||
220 | # works around shells that cannot unset nonexistent variables. | ||
221 | # Preserve -v and -x to the replacement shell. | ||
222 | BASH_ENV=/dev/null | ||
223 | ENV=/dev/null | ||
224 | (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV | ||
225 | export CONFIG_SHELL | ||
226 | case $- in # (((( | ||
227 | *v*x* | *x*v* ) as_opts=-vx ;; | ||
228 | *v* ) as_opts=-v ;; | ||
229 | *x* ) as_opts=-x ;; | ||
230 | * ) as_opts= ;; | ||
231 | esac | ||
232 | exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} | ||
233 | fi | ||
234 | |||
235 | if test x$as_have_required = xno; then : | ||
236 | $as_echo "$0: This script requires a shell more modern than all" | ||
237 | $as_echo "$0: the shells that I found on your system." | ||
238 | if test x${ZSH_VERSION+set} = xset ; then | ||
239 | $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" | ||
240 | $as_echo "$0: be upgraded to zsh 4.3.4 or later." | ||
241 | else | ||
242 | $as_echo "$0: Please tell bug-autoconf@gnu.org and | ||
243 | $0: openssh-unix-dev@mindrot.org about your system, | ||
244 | $0: including any error possibly output before this | ||
245 | $0: message. Then install a modern shell, or manually run | ||
246 | $0: the script under such a shell if you do have one." | ||
247 | fi | ||
248 | exit 1 | ||
249 | fi | ||
250 | fi | ||
251 | fi | ||
252 | SHELL=${CONFIG_SHELL-/bin/sh} | ||
253 | export SHELL | ||
254 | # Unset more variables known to interfere with behavior of common tools. | ||
255 | CLICOLOR_FORCE= GREP_OPTIONS= | ||
256 | unset CLICOLOR_FORCE GREP_OPTIONS | ||
257 | |||
258 | ## --------------------- ## | ||
259 | ## M4sh Shell Functions. ## | ||
260 | ## --------------------- ## | ||
261 | # as_fn_unset VAR | ||
262 | # --------------- | ||
263 | # Portably unset VAR. | ||
264 | as_fn_unset () | ||
265 | { | ||
266 | { eval $1=; unset $1;} | ||
267 | } | ||
268 | as_unset=as_fn_unset | ||
269 | |||
270 | # as_fn_set_status STATUS | ||
271 | # ----------------------- | ||
272 | # Set $? to STATUS, without forking. | ||
273 | as_fn_set_status () | ||
274 | { | ||
275 | return $1 | ||
276 | } # as_fn_set_status | ||
277 | |||
278 | # as_fn_exit STATUS | ||
279 | # ----------------- | ||
280 | # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. | ||
281 | as_fn_exit () | ||
282 | { | ||
283 | set +e | ||
284 | as_fn_set_status $1 | ||
285 | exit $1 | ||
286 | } # as_fn_exit | ||
287 | |||
288 | # as_fn_mkdir_p | ||
289 | # ------------- | ||
290 | # Create "$as_dir" as a directory, including parents if necessary. | ||
291 | as_fn_mkdir_p () | ||
292 | { | ||
293 | |||
294 | case $as_dir in #( | ||
295 | -*) as_dir=./$as_dir;; | ||
296 | esac | ||
297 | test -d "$as_dir" || eval $as_mkdir_p || { | ||
298 | as_dirs= | ||
299 | while :; do | ||
300 | case $as_dir in #( | ||
301 | *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( | ||
302 | *) as_qdir=$as_dir;; | ||
303 | esac | ||
304 | as_dirs="'$as_qdir' $as_dirs" | ||
305 | as_dir=`$as_dirname -- "$as_dir" || | ||
306 | $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
307 | X"$as_dir" : 'X\(//\)[^/]' \| \ | ||
308 | X"$as_dir" : 'X\(//\)$' \| \ | ||
309 | X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || | ||
310 | $as_echo X"$as_dir" | | ||
311 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
312 | s//\1/ | ||
313 | q | ||
314 | } | ||
315 | /^X\(\/\/\)[^/].*/{ | ||
316 | s//\1/ | ||
317 | q | ||
318 | } | ||
319 | /^X\(\/\/\)$/{ | ||
320 | s//\1/ | ||
321 | q | ||
322 | } | ||
323 | /^X\(\/\).*/{ | ||
324 | s//\1/ | ||
325 | q | ||
326 | } | ||
327 | s/.*/./; q'` | ||
328 | test -d "$as_dir" && break | ||
329 | done | ||
330 | test -z "$as_dirs" || eval "mkdir $as_dirs" | ||
331 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | ||
332 | |||
333 | |||
334 | } # as_fn_mkdir_p | ||
335 | # as_fn_append VAR VALUE | ||
336 | # ---------------------- | ||
337 | # Append the text in VALUE to the end of the definition contained in VAR. Take | ||
338 | # advantage of any shell optimizations that allow amortized linear growth over | ||
339 | # repeated appends, instead of the typical quadratic growth present in naive | ||
340 | # implementations. | ||
341 | if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : | ||
342 | eval 'as_fn_append () | ||
343 | { | ||
344 | eval $1+=\$2 | ||
345 | }' | ||
346 | else | ||
347 | as_fn_append () | ||
348 | { | ||
349 | eval $1=\$$1\$2 | ||
350 | } | ||
351 | fi # as_fn_append | ||
352 | |||
353 | # as_fn_arith ARG... | ||
354 | # ------------------ | ||
355 | # Perform arithmetic evaluation on the ARGs, and store the result in the | ||
356 | # global $as_val. Take advantage of shells that can avoid forks. The arguments | ||
357 | # must be portable across $(()) and expr. | ||
358 | if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : | ||
359 | eval 'as_fn_arith () | ||
360 | { | ||
361 | as_val=$(( $* )) | ||
362 | }' | ||
363 | else | ||
364 | as_fn_arith () | ||
365 | { | ||
366 | as_val=`expr "$@" || test $? -eq 1` | ||
367 | } | ||
368 | fi # as_fn_arith | ||
369 | |||
370 | |||
371 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | ||
372 | # ---------------------------------------- | ||
373 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | ||
374 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | ||
375 | # script with STATUS, using 1 if that was 0. | ||
376 | as_fn_error () | ||
377 | { | ||
378 | as_status=$1; test $as_status -eq 0 && as_status=1 | ||
379 | if test "$4"; then | ||
380 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
381 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | ||
382 | fi | ||
383 | $as_echo "$as_me: error: $2" >&2 | ||
384 | as_fn_exit $as_status | ||
385 | } # as_fn_error | ||
386 | |||
387 | if expr a : '\(a\)' >/dev/null 2>&1 && | ||
388 | test "X`expr 00001 : '.*\(...\)'`" = X001; then | ||
389 | as_expr=expr | ||
390 | else | ||
391 | as_expr=false | ||
392 | fi | ||
393 | |||
394 | if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then | ||
395 | as_basename=basename | ||
396 | else | ||
397 | as_basename=false | ||
398 | fi | ||
399 | |||
400 | if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then | ||
401 | as_dirname=dirname | ||
402 | else | ||
403 | as_dirname=false | ||
404 | fi | ||
405 | |||
406 | as_me=`$as_basename -- "$0" || | ||
407 | $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ | ||
408 | X"$0" : 'X\(//\)$' \| \ | ||
409 | X"$0" : 'X\(/\)' \| . 2>/dev/null || | ||
410 | $as_echo X/"$0" | | ||
411 | sed '/^.*\/\([^/][^/]*\)\/*$/{ | ||
412 | s//\1/ | ||
413 | q | ||
414 | } | ||
415 | /^X\/\(\/\/\)$/{ | ||
416 | s//\1/ | ||
417 | q | ||
418 | } | ||
419 | /^X\/\(\/\).*/{ | ||
420 | s//\1/ | ||
421 | q | ||
422 | } | ||
423 | s/.*/./; q'` | ||
424 | |||
425 | # Avoid depending upon Character Ranges. | ||
426 | as_cr_letters='abcdefghijklmnopqrstuvwxyz' | ||
427 | as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' | ||
428 | as_cr_Letters=$as_cr_letters$as_cr_LETTERS | ||
429 | as_cr_digits='0123456789' | ||
430 | as_cr_alnum=$as_cr_Letters$as_cr_digits | ||
431 | |||
432 | |||
433 | as_lineno_1=$LINENO as_lineno_1a=$LINENO | ||
434 | as_lineno_2=$LINENO as_lineno_2a=$LINENO | ||
435 | eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && | ||
436 | test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { | ||
437 | # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) | ||
438 | sed -n ' | ||
439 | p | ||
440 | /[$]LINENO/= | ||
441 | ' <$as_myself | | ||
442 | sed ' | ||
443 | s/[$]LINENO.*/&-/ | ||
444 | t lineno | ||
445 | b | ||
446 | :lineno | ||
447 | N | ||
448 | :loop | ||
449 | s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ | ||
450 | t loop | ||
451 | s/-\n.*// | ||
452 | ' >$as_me.lineno && | ||
453 | chmod +x "$as_me.lineno" || | ||
454 | { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } | ||
455 | |||
456 | # Don't try to exec as it changes $[0], causing all sort of problems | ||
457 | # (the dirname of $[0] is not the place where we might find the | ||
458 | # original and so on. Autoconf is especially sensitive to this). | ||
459 | . "./$as_me.lineno" | ||
460 | # Exit status is that of the last command. | ||
461 | exit | ||
462 | } | ||
463 | |||
464 | ECHO_C= ECHO_N= ECHO_T= | ||
465 | case `echo -n x` in #((((( | ||
466 | -n*) | ||
467 | case `echo 'xy\c'` in | ||
468 | *c*) ECHO_T=' ';; # ECHO_T is single tab character. | ||
469 | xy) ECHO_C='\c';; | ||
470 | *) echo `echo ksh88 bug on AIX 6.1` > /dev/null | ||
471 | ECHO_T=' ';; | ||
472 | esac;; | ||
473 | *) | ||
474 | ECHO_N='-n';; | ||
475 | esac | ||
476 | |||
477 | rm -f conf$$ conf$$.exe conf$$.file | ||
478 | if test -d conf$$.dir; then | ||
479 | rm -f conf$$.dir/conf$$.file | ||
480 | else | ||
481 | rm -f conf$$.dir | ||
482 | mkdir conf$$.dir 2>/dev/null | ||
483 | fi | ||
484 | if (echo >conf$$.file) 2>/dev/null; then | ||
485 | if ln -s conf$$.file conf$$ 2>/dev/null; then | ||
486 | as_ln_s='ln -s' | ||
487 | # ... but there are two gotchas: | ||
488 | # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. | ||
489 | # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. | ||
490 | # In both cases, we have to default to `cp -p'. | ||
491 | ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || | ||
492 | as_ln_s='cp -p' | ||
493 | elif ln conf$$.file conf$$ 2>/dev/null; then | ||
494 | as_ln_s=ln | ||
495 | else | ||
496 | as_ln_s='cp -p' | ||
497 | fi | ||
498 | else | ||
499 | as_ln_s='cp -p' | ||
500 | fi | ||
501 | rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file | ||
502 | rmdir conf$$.dir 2>/dev/null | ||
503 | |||
504 | if mkdir -p . 2>/dev/null; then | ||
505 | as_mkdir_p='mkdir -p "$as_dir"' | ||
506 | else | ||
507 | test -d ./-p && rmdir ./-p | ||
508 | as_mkdir_p=false | ||
509 | fi | ||
510 | |||
511 | if test -x / >/dev/null 2>&1; then | ||
512 | as_test_x='test -x' | ||
513 | else | ||
514 | if ls -dL / >/dev/null 2>&1; then | ||
515 | as_ls_L_option=L | ||
516 | else | ||
517 | as_ls_L_option= | ||
518 | fi | ||
519 | as_test_x=' | ||
520 | eval sh -c '\'' | ||
521 | if test -d "$1"; then | ||
522 | test -d "$1/."; | ||
523 | else | ||
524 | case $1 in #( | ||
525 | -*)set "./$1";; | ||
526 | esac; | ||
527 | case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( | ||
528 | ???[sx]*):;;*)false;;esac;fi | ||
529 | '\'' sh | ||
530 | ' | ||
531 | fi | ||
532 | as_executable_p=$as_test_x | ||
533 | |||
534 | # Sed expression to map a string onto a valid CPP name. | ||
535 | as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" | ||
536 | |||
537 | # Sed expression to map a string onto a valid variable name. | ||
538 | as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" | ||
539 | |||
540 | |||
541 | test -n "$DJDIR" || exec 7<&0 </dev/null | ||
542 | exec 6>&1 | ||
543 | |||
544 | # Name of the host. | ||
545 | # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, | ||
546 | # so uname gets run too. | ||
547 | ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` | ||
548 | |||
549 | # | ||
550 | # Initializations. | ||
551 | # | ||
552 | ac_default_prefix=/usr/local | ||
553 | ac_clean_files= | ||
554 | ac_config_libobj_dir=. | ||
555 | LIBOBJS= | ||
556 | cross_compiling=no | ||
557 | subdirs= | ||
558 | MFLAGS= | ||
559 | MAKEFLAGS= | ||
560 | |||
561 | # Identity of this package. | ||
562 | PACKAGE_NAME='OpenSSH' | ||
563 | PACKAGE_TARNAME='openssh' | ||
564 | PACKAGE_VERSION='Portable' | ||
565 | PACKAGE_STRING='OpenSSH Portable' | ||
566 | PACKAGE_BUGREPORT='openssh-unix-dev@mindrot.org' | ||
567 | PACKAGE_URL='' | ||
568 | |||
569 | ac_unique_file="ssh.c" | ||
570 | # Factoring default headers for most tests. | ||
571 | ac_includes_default="\ | ||
572 | #include <stdio.h> | ||
573 | #ifdef HAVE_SYS_TYPES_H | ||
574 | # include <sys/types.h> | ||
575 | #endif | ||
576 | #ifdef HAVE_SYS_STAT_H | ||
577 | # include <sys/stat.h> | ||
578 | #endif | ||
579 | #ifdef STDC_HEADERS | ||
580 | # include <stdlib.h> | ||
581 | # include <stddef.h> | ||
582 | #else | ||
583 | # ifdef HAVE_STDLIB_H | ||
584 | # include <stdlib.h> | ||
585 | # endif | ||
586 | #endif | ||
587 | #ifdef HAVE_STRING_H | ||
588 | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | ||
589 | # include <memory.h> | ||
590 | # endif | ||
591 | # include <string.h> | ||
592 | #endif | ||
593 | #ifdef HAVE_STRINGS_H | ||
594 | # include <strings.h> | ||
595 | #endif | ||
596 | #ifdef HAVE_INTTYPES_H | ||
597 | # include <inttypes.h> | ||
598 | #endif | ||
599 | #ifdef HAVE_STDINT_H | ||
600 | # include <stdint.h> | ||
601 | #endif | ||
602 | #ifdef HAVE_UNISTD_H | ||
603 | # include <unistd.h> | ||
604 | #endif" | ||
605 | |||
606 | ac_subst_vars='LTLIBOBJS | ||
607 | LIBOBJS | ||
608 | UNSUPPORTED_ALGORITHMS | ||
609 | TEST_MALLOC_OPTIONS | ||
610 | TEST_SSH_IPV6 | ||
611 | piddir | ||
612 | user_path | ||
613 | mansubdir | ||
614 | MANTYPE | ||
615 | XAUTH_PATH | ||
616 | STRIP_OPT | ||
617 | xauth_path | ||
618 | PRIVSEP_PATH | ||
619 | K5LIBS | ||
620 | GSSLIBS | ||
621 | KRB5CONF | ||
622 | SSHDLIBS | ||
623 | SSHLIBS | ||
624 | SSH_PRIVSEP_USER | ||
625 | COMMENT_OUT_ECC | ||
626 | TEST_SSH_ECC | ||
627 | LIBEDIT | ||
628 | PKGCONFIG | ||
629 | LD | ||
630 | PATH_PASSWD_PROG | ||
631 | LOGIN_PROGRAM_FALLBACK | ||
632 | STARTUP_SCRIPT_SHELL | ||
633 | MAKE_PACKAGE_SUPPORTED | ||
634 | PATH_USERADD_PROG | ||
635 | PATH_GROUPADD_PROG | ||
636 | MANFMT | ||
637 | TEST_SHELL | ||
638 | MANDOC | ||
639 | NROFF | ||
640 | GROFF | ||
641 | SH | ||
642 | TEST_MINUS_S_SH | ||
643 | ENT | ||
644 | SED | ||
645 | PERL | ||
646 | KILL | ||
647 | CAT | ||
648 | AR | ||
649 | INSTALL_DATA | ||
650 | INSTALL_SCRIPT | ||
651 | INSTALL_PROGRAM | ||
652 | RANLIB | ||
653 | AWK | ||
654 | EGREP | ||
655 | GREP | ||
656 | CPP | ||
657 | host_os | ||
658 | host_vendor | ||
659 | host_cpu | ||
660 | host | ||
661 | build_os | ||
662 | build_vendor | ||
663 | build_cpu | ||
664 | build | ||
665 | OBJEXT | ||
666 | EXEEXT | ||
667 | ac_ct_CC | ||
668 | CPPFLAGS | ||
669 | LDFLAGS | ||
670 | CFLAGS | ||
671 | CC | ||
672 | target_alias | ||
673 | host_alias | ||
674 | build_alias | ||
675 | LIBS | ||
676 | ECHO_T | ||
677 | ECHO_N | ||
678 | ECHO_C | ||
679 | DEFS | ||
680 | mandir | ||
681 | localedir | ||
682 | libdir | ||
683 | psdir | ||
684 | pdfdir | ||
685 | dvidir | ||
686 | htmldir | ||
687 | infodir | ||
688 | docdir | ||
689 | oldincludedir | ||
690 | includedir | ||
691 | localstatedir | ||
692 | sharedstatedir | ||
693 | sysconfdir | ||
694 | datadir | ||
695 | datarootdir | ||
696 | libexecdir | ||
697 | sbindir | ||
698 | bindir | ||
699 | program_transform_name | ||
700 | prefix | ||
701 | exec_prefix | ||
702 | PACKAGE_URL | ||
703 | PACKAGE_BUGREPORT | ||
704 | PACKAGE_STRING | ||
705 | PACKAGE_VERSION | ||
706 | PACKAGE_TARNAME | ||
707 | PACKAGE_NAME | ||
708 | PATH_SEPARATOR | ||
709 | SHELL' | ||
710 | ac_subst_files='' | ||
711 | ac_user_opts=' | ||
712 | enable_option_checking | ||
713 | enable_largefile | ||
714 | with_stackprotect | ||
715 | with_hardening | ||
716 | with_rpath | ||
717 | with_cflags | ||
718 | with_cppflags | ||
719 | with_ldflags | ||
720 | with_libs | ||
721 | with_Werror | ||
722 | with_solaris_contracts | ||
723 | with_solaris_projects | ||
724 | with_osfsia | ||
725 | with_zlib | ||
726 | with_zlib_version_check | ||
727 | with_skey | ||
728 | with_tcp_wrappers | ||
729 | with_ldns | ||
730 | with_libedit | ||
731 | with_audit | ||
732 | with_pie | ||
733 | with_ssl_dir | ||
734 | with_openssl_header_check | ||
735 | with_ssl_engine | ||
736 | with_prngd_port | ||
737 | with_prngd_socket | ||
738 | with_pam | ||
739 | with_privsep_user | ||
740 | with_sandbox | ||
741 | with_selinux | ||
742 | with_kerberos5 | ||
743 | with_privsep_path | ||
744 | with_xauth | ||
745 | enable_strip | ||
746 | with_maildir | ||
747 | with_mantype | ||
748 | with_md5_passwords | ||
749 | with_shadow | ||
750 | with_ipaddr_display | ||
751 | enable_etc_default_login | ||
752 | with_default_path | ||
753 | with_superuser_path | ||
754 | with_4in6 | ||
755 | with_bsd_auth | ||
756 | with_pid_dir | ||
757 | enable_lastlog | ||
758 | enable_utmp | ||
759 | enable_utmpx | ||
760 | enable_wtmp | ||
761 | enable_wtmpx | ||
762 | enable_libutil | ||
763 | enable_pututline | ||
764 | enable_pututxline | ||
765 | with_lastlog | ||
766 | ' | ||
767 | ac_precious_vars='build_alias | ||
768 | host_alias | ||
769 | target_alias | ||
770 | CC | ||
771 | CFLAGS | ||
772 | LDFLAGS | ||
773 | LIBS | ||
774 | CPPFLAGS | ||
775 | CPP' | ||
776 | |||
777 | |||
778 | # Initialize some variables set by options. | ||
779 | ac_init_help= | ||
780 | ac_init_version=false | ||
781 | ac_unrecognized_opts= | ||
782 | ac_unrecognized_sep= | ||
783 | # The variables have the same names as the options, with | ||
784 | # dashes changed to underlines. | ||
785 | cache_file=/dev/null | ||
786 | exec_prefix=NONE | ||
787 | no_create= | ||
788 | no_recursion= | ||
789 | prefix=NONE | ||
790 | program_prefix=NONE | ||
791 | program_suffix=NONE | ||
792 | program_transform_name=s,x,x, | ||
793 | silent= | ||
794 | site= | ||
795 | srcdir= | ||
796 | verbose= | ||
797 | x_includes=NONE | ||
798 | x_libraries=NONE | ||
799 | |||
800 | # Installation directory options. | ||
801 | # These are left unexpanded so users can "make install exec_prefix=/foo" | ||
802 | # and all the variables that are supposed to be based on exec_prefix | ||
803 | # by default will actually change. | ||
804 | # Use braces instead of parens because sh, perl, etc. also accept them. | ||
805 | # (The list follows the same order as the GNU Coding Standards.) | ||
806 | bindir='${exec_prefix}/bin' | ||
807 | sbindir='${exec_prefix}/sbin' | ||
808 | libexecdir='${exec_prefix}/libexec' | ||
809 | datarootdir='${prefix}/share' | ||
810 | datadir='${datarootdir}' | ||
811 | sysconfdir='${prefix}/etc' | ||
812 | sharedstatedir='${prefix}/com' | ||
813 | localstatedir='${prefix}/var' | ||
814 | includedir='${prefix}/include' | ||
815 | oldincludedir='/usr/include' | ||
816 | docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' | ||
817 | infodir='${datarootdir}/info' | ||
818 | htmldir='${docdir}' | ||
819 | dvidir='${docdir}' | ||
820 | pdfdir='${docdir}' | ||
821 | psdir='${docdir}' | ||
822 | libdir='${exec_prefix}/lib' | ||
823 | localedir='${datarootdir}/locale' | ||
824 | mandir='${datarootdir}/man' | ||
825 | |||
826 | ac_prev= | ||
827 | ac_dashdash= | ||
828 | for ac_option | ||
829 | do | ||
830 | # If the previous option needs an argument, assign it. | ||
831 | if test -n "$ac_prev"; then | ||
832 | eval $ac_prev=\$ac_option | ||
833 | ac_prev= | ||
834 | continue | ||
835 | fi | ||
836 | |||
837 | case $ac_option in | ||
838 | *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; | ||
839 | *=) ac_optarg= ;; | ||
840 | *) ac_optarg=yes ;; | ||
841 | esac | ||
842 | |||
843 | # Accept the important Cygnus configure options, so we can diagnose typos. | ||
844 | |||
845 | case $ac_dashdash$ac_option in | ||
846 | --) | ||
847 | ac_dashdash=yes ;; | ||
848 | |||
849 | -bindir | --bindir | --bindi | --bind | --bin | --bi) | ||
850 | ac_prev=bindir ;; | ||
851 | -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) | ||
852 | bindir=$ac_optarg ;; | ||
853 | |||
854 | -build | --build | --buil | --bui | --bu) | ||
855 | ac_prev=build_alias ;; | ||
856 | -build=* | --build=* | --buil=* | --bui=* | --bu=*) | ||
857 | build_alias=$ac_optarg ;; | ||
858 | |||
859 | -cache-file | --cache-file | --cache-fil | --cache-fi \ | ||
860 | | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) | ||
861 | ac_prev=cache_file ;; | ||
862 | -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | ||
863 | | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) | ||
864 | cache_file=$ac_optarg ;; | ||
865 | |||
866 | --config-cache | -C) | ||
867 | cache_file=config.cache ;; | ||
868 | |||
869 | -datadir | --datadir | --datadi | --datad) | ||
870 | ac_prev=datadir ;; | ||
871 | -datadir=* | --datadir=* | --datadi=* | --datad=*) | ||
872 | datadir=$ac_optarg ;; | ||
873 | |||
874 | -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | ||
875 | | --dataroo | --dataro | --datar) | ||
876 | ac_prev=datarootdir ;; | ||
877 | -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | ||
878 | | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) | ||
879 | datarootdir=$ac_optarg ;; | ||
880 | |||
881 | -disable-* | --disable-*) | ||
882 | ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` | ||
883 | # Reject names that are not valid shell variable names. | ||
884 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
885 | as_fn_error $? "invalid feature name: $ac_useropt" | ||
886 | ac_useropt_orig=$ac_useropt | ||
887 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
888 | case $ac_user_opts in | ||
889 | *" | ||
890 | "enable_$ac_useropt" | ||
891 | "*) ;; | ||
892 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" | ||
893 | ac_unrecognized_sep=', ';; | ||
894 | esac | ||
895 | eval enable_$ac_useropt=no ;; | ||
896 | |||
897 | -docdir | --docdir | --docdi | --doc | --do) | ||
898 | ac_prev=docdir ;; | ||
899 | -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) | ||
900 | docdir=$ac_optarg ;; | ||
901 | |||
902 | -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) | ||
903 | ac_prev=dvidir ;; | ||
904 | -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) | ||
905 | dvidir=$ac_optarg ;; | ||
906 | |||
907 | -enable-* | --enable-*) | ||
908 | ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` | ||
909 | # Reject names that are not valid shell variable names. | ||
910 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
911 | as_fn_error $? "invalid feature name: $ac_useropt" | ||
912 | ac_useropt_orig=$ac_useropt | ||
913 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
914 | case $ac_user_opts in | ||
915 | *" | ||
916 | "enable_$ac_useropt" | ||
917 | "*) ;; | ||
918 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" | ||
919 | ac_unrecognized_sep=', ';; | ||
920 | esac | ||
921 | eval enable_$ac_useropt=\$ac_optarg ;; | ||
922 | |||
923 | -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | ||
924 | | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | ||
925 | | --exec | --exe | --ex) | ||
926 | ac_prev=exec_prefix ;; | ||
927 | -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | ||
928 | | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | ||
929 | | --exec=* | --exe=* | --ex=*) | ||
930 | exec_prefix=$ac_optarg ;; | ||
931 | |||
932 | -gas | --gas | --ga | --g) | ||
933 | # Obsolete; use --with-gas. | ||
934 | with_gas=yes ;; | ||
935 | |||
936 | -help | --help | --hel | --he | -h) | ||
937 | ac_init_help=long ;; | ||
938 | -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) | ||
939 | ac_init_help=recursive ;; | ||
940 | -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) | ||
941 | ac_init_help=short ;; | ||
942 | |||
943 | -host | --host | --hos | --ho) | ||
944 | ac_prev=host_alias ;; | ||
945 | -host=* | --host=* | --hos=* | --ho=*) | ||
946 | host_alias=$ac_optarg ;; | ||
947 | |||
948 | -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) | ||
949 | ac_prev=htmldir ;; | ||
950 | -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | ||
951 | | --ht=*) | ||
952 | htmldir=$ac_optarg ;; | ||
953 | |||
954 | -includedir | --includedir | --includedi | --included | --include \ | ||
955 | | --includ | --inclu | --incl | --inc) | ||
956 | ac_prev=includedir ;; | ||
957 | -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | ||
958 | | --includ=* | --inclu=* | --incl=* | --inc=*) | ||
959 | includedir=$ac_optarg ;; | ||
960 | |||
961 | -infodir | --infodir | --infodi | --infod | --info | --inf) | ||
962 | ac_prev=infodir ;; | ||
963 | -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) | ||
964 | infodir=$ac_optarg ;; | ||
965 | |||
966 | -libdir | --libdir | --libdi | --libd) | ||
967 | ac_prev=libdir ;; | ||
968 | -libdir=* | --libdir=* | --libdi=* | --libd=*) | ||
969 | libdir=$ac_optarg ;; | ||
970 | |||
971 | -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | ||
972 | | --libexe | --libex | --libe) | ||
973 | ac_prev=libexecdir ;; | ||
974 | -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | ||
975 | | --libexe=* | --libex=* | --libe=*) | ||
976 | libexecdir=$ac_optarg ;; | ||
977 | |||
978 | -localedir | --localedir | --localedi | --localed | --locale) | ||
979 | ac_prev=localedir ;; | ||
980 | -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) | ||
981 | localedir=$ac_optarg ;; | ||
982 | |||
983 | -localstatedir | --localstatedir | --localstatedi | --localstated \ | ||
984 | | --localstate | --localstat | --localsta | --localst | --locals) | ||
985 | ac_prev=localstatedir ;; | ||
986 | -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | ||
987 | | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) | ||
988 | localstatedir=$ac_optarg ;; | ||
989 | |||
990 | -mandir | --mandir | --mandi | --mand | --man | --ma | --m) | ||
991 | ac_prev=mandir ;; | ||
992 | -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) | ||
993 | mandir=$ac_optarg ;; | ||
994 | |||
995 | -nfp | --nfp | --nf) | ||
996 | # Obsolete; use --without-fp. | ||
997 | with_fp=no ;; | ||
998 | |||
999 | -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | ||
1000 | | --no-cr | --no-c | -n) | ||
1001 | no_create=yes ;; | ||
1002 | |||
1003 | -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | ||
1004 | | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) | ||
1005 | no_recursion=yes ;; | ||
1006 | |||
1007 | -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | ||
1008 | | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | ||
1009 | | --oldin | --oldi | --old | --ol | --o) | ||
1010 | ac_prev=oldincludedir ;; | ||
1011 | -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | ||
1012 | | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | ||
1013 | | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) | ||
1014 | oldincludedir=$ac_optarg ;; | ||
1015 | |||
1016 | -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) | ||
1017 | ac_prev=prefix ;; | ||
1018 | -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) | ||
1019 | prefix=$ac_optarg ;; | ||
1020 | |||
1021 | -program-prefix | --program-prefix | --program-prefi | --program-pref \ | ||
1022 | | --program-pre | --program-pr | --program-p) | ||
1023 | ac_prev=program_prefix ;; | ||
1024 | -program-prefix=* | --program-prefix=* | --program-prefi=* \ | ||
1025 | | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) | ||
1026 | program_prefix=$ac_optarg ;; | ||
1027 | |||
1028 | -program-suffix | --program-suffix | --program-suffi | --program-suff \ | ||
1029 | | --program-suf | --program-su | --program-s) | ||
1030 | ac_prev=program_suffix ;; | ||
1031 | -program-suffix=* | --program-suffix=* | --program-suffi=* \ | ||
1032 | | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) | ||
1033 | program_suffix=$ac_optarg ;; | ||
1034 | |||
1035 | -program-transform-name | --program-transform-name \ | ||
1036 | | --program-transform-nam | --program-transform-na \ | ||
1037 | | --program-transform-n | --program-transform- \ | ||
1038 | | --program-transform | --program-transfor \ | ||
1039 | | --program-transfo | --program-transf \ | ||
1040 | | --program-trans | --program-tran \ | ||
1041 | | --progr-tra | --program-tr | --program-t) | ||
1042 | ac_prev=program_transform_name ;; | ||
1043 | -program-transform-name=* | --program-transform-name=* \ | ||
1044 | | --program-transform-nam=* | --program-transform-na=* \ | ||
1045 | | --program-transform-n=* | --program-transform-=* \ | ||
1046 | | --program-transform=* | --program-transfor=* \ | ||
1047 | | --program-transfo=* | --program-transf=* \ | ||
1048 | | --program-trans=* | --program-tran=* \ | ||
1049 | | --progr-tra=* | --program-tr=* | --program-t=*) | ||
1050 | program_transform_name=$ac_optarg ;; | ||
1051 | |||
1052 | -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) | ||
1053 | ac_prev=pdfdir ;; | ||
1054 | -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) | ||
1055 | pdfdir=$ac_optarg ;; | ||
1056 | |||
1057 | -psdir | --psdir | --psdi | --psd | --ps) | ||
1058 | ac_prev=psdir ;; | ||
1059 | -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) | ||
1060 | psdir=$ac_optarg ;; | ||
1061 | |||
1062 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
1063 | | -silent | --silent | --silen | --sile | --sil) | ||
1064 | silent=yes ;; | ||
1065 | |||
1066 | -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) | ||
1067 | ac_prev=sbindir ;; | ||
1068 | -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | ||
1069 | | --sbi=* | --sb=*) | ||
1070 | sbindir=$ac_optarg ;; | ||
1071 | |||
1072 | -sharedstatedir | --sharedstatedir | --sharedstatedi \ | ||
1073 | | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | ||
1074 | | --sharedst | --shareds | --shared | --share | --shar \ | ||
1075 | | --sha | --sh) | ||
1076 | ac_prev=sharedstatedir ;; | ||
1077 | -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | ||
1078 | | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | ||
1079 | | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | ||
1080 | | --sha=* | --sh=*) | ||
1081 | sharedstatedir=$ac_optarg ;; | ||
1082 | |||
1083 | -site | --site | --sit) | ||
1084 | ac_prev=site ;; | ||
1085 | -site=* | --site=* | --sit=*) | ||
1086 | site=$ac_optarg ;; | ||
1087 | |||
1088 | -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) | ||
1089 | ac_prev=srcdir ;; | ||
1090 | -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) | ||
1091 | srcdir=$ac_optarg ;; | ||
1092 | |||
1093 | -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | ||
1094 | | --syscon | --sysco | --sysc | --sys | --sy) | ||
1095 | ac_prev=sysconfdir ;; | ||
1096 | -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | ||
1097 | | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) | ||
1098 | sysconfdir=$ac_optarg ;; | ||
1099 | |||
1100 | -target | --target | --targe | --targ | --tar | --ta | --t) | ||
1101 | ac_prev=target_alias ;; | ||
1102 | -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) | ||
1103 | target_alias=$ac_optarg ;; | ||
1104 | |||
1105 | -v | -verbose | --verbose | --verbos | --verbo | --verb) | ||
1106 | verbose=yes ;; | ||
1107 | |||
1108 | -version | --version | --versio | --versi | --vers | -V) | ||
1109 | ac_init_version=: ;; | ||
1110 | |||
1111 | -with-* | --with-*) | ||
1112 | ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` | ||
1113 | # Reject names that are not valid shell variable names. | ||
1114 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
1115 | as_fn_error $? "invalid package name: $ac_useropt" | ||
1116 | ac_useropt_orig=$ac_useropt | ||
1117 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
1118 | case $ac_user_opts in | ||
1119 | *" | ||
1120 | "with_$ac_useropt" | ||
1121 | "*) ;; | ||
1122 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" | ||
1123 | ac_unrecognized_sep=', ';; | ||
1124 | esac | ||
1125 | eval with_$ac_useropt=\$ac_optarg ;; | ||
1126 | |||
1127 | -without-* | --without-*) | ||
1128 | ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` | ||
1129 | # Reject names that are not valid shell variable names. | ||
1130 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
1131 | as_fn_error $? "invalid package name: $ac_useropt" | ||
1132 | ac_useropt_orig=$ac_useropt | ||
1133 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
1134 | case $ac_user_opts in | ||
1135 | *" | ||
1136 | "with_$ac_useropt" | ||
1137 | "*) ;; | ||
1138 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" | ||
1139 | ac_unrecognized_sep=', ';; | ||
1140 | esac | ||
1141 | eval with_$ac_useropt=no ;; | ||
1142 | |||
1143 | --x) | ||
1144 | # Obsolete; use --with-x. | ||
1145 | with_x=yes ;; | ||
1146 | |||
1147 | -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | ||
1148 | | --x-incl | --x-inc | --x-in | --x-i) | ||
1149 | ac_prev=x_includes ;; | ||
1150 | -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | ||
1151 | | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) | ||
1152 | x_includes=$ac_optarg ;; | ||
1153 | |||
1154 | -x-libraries | --x-libraries | --x-librarie | --x-librari \ | ||
1155 | | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) | ||
1156 | ac_prev=x_libraries ;; | ||
1157 | -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | ||
1158 | | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) | ||
1159 | x_libraries=$ac_optarg ;; | ||
1160 | |||
1161 | -*) as_fn_error $? "unrecognized option: \`$ac_option' | ||
1162 | Try \`$0 --help' for more information" | ||
1163 | ;; | ||
1164 | |||
1165 | *=*) | ||
1166 | ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` | ||
1167 | # Reject names that are not valid shell variable names. | ||
1168 | case $ac_envvar in #( | ||
1169 | '' | [0-9]* | *[!_$as_cr_alnum]* ) | ||
1170 | as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; | ||
1171 | esac | ||
1172 | eval $ac_envvar=\$ac_optarg | ||
1173 | export $ac_envvar ;; | ||
1174 | |||
1175 | *) | ||
1176 | # FIXME: should be removed in autoconf 3.0. | ||
1177 | $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 | ||
1178 | expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && | ||
1179 | $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 | ||
1180 | : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" | ||
1181 | ;; | ||
1182 | |||
1183 | esac | ||
1184 | done | ||
1185 | |||
1186 | if test -n "$ac_prev"; then | ||
1187 | ac_option=--`echo $ac_prev | sed 's/_/-/g'` | ||
1188 | as_fn_error $? "missing argument to $ac_option" | ||
1189 | fi | ||
1190 | |||
1191 | if test -n "$ac_unrecognized_opts"; then | ||
1192 | case $enable_option_checking in | ||
1193 | no) ;; | ||
1194 | fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; | ||
1195 | *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; | ||
1196 | esac | ||
1197 | fi | ||
1198 | |||
1199 | # Check all directory arguments for consistency. | ||
1200 | for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ | ||
1201 | datadir sysconfdir sharedstatedir localstatedir includedir \ | ||
1202 | oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ | ||
1203 | libdir localedir mandir | ||
1204 | do | ||
1205 | eval ac_val=\$$ac_var | ||
1206 | # Remove trailing slashes. | ||
1207 | case $ac_val in | ||
1208 | */ ) | ||
1209 | ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` | ||
1210 | eval $ac_var=\$ac_val;; | ||
1211 | esac | ||
1212 | # Be sure to have absolute directory names. | ||
1213 | case $ac_val in | ||
1214 | [\\/$]* | ?:[\\/]* ) continue;; | ||
1215 | NONE | '' ) case $ac_var in *prefix ) continue;; esac;; | ||
1216 | esac | ||
1217 | as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" | ||
1218 | done | ||
1219 | |||
1220 | # There might be people who depend on the old broken behavior: `$host' | ||
1221 | # used to hold the argument of --host etc. | ||
1222 | # FIXME: To remove some day. | ||
1223 | build=$build_alias | ||
1224 | host=$host_alias | ||
1225 | target=$target_alias | ||
1226 | |||
1227 | # FIXME: To remove some day. | ||
1228 | if test "x$host_alias" != x; then | ||
1229 | if test "x$build_alias" = x; then | ||
1230 | cross_compiling=maybe | ||
1231 | $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. | ||
1232 | If a cross compiler is detected then cross compile mode will be used" >&2 | ||
1233 | elif test "x$build_alias" != "x$host_alias"; then | ||
1234 | cross_compiling=yes | ||
1235 | fi | ||
1236 | fi | ||
1237 | |||
1238 | ac_tool_prefix= | ||
1239 | test -n "$host_alias" && ac_tool_prefix=$host_alias- | ||
1240 | |||
1241 | test "$silent" = yes && exec 6>/dev/null | ||
1242 | |||
1243 | |||
1244 | ac_pwd=`pwd` && test -n "$ac_pwd" && | ||
1245 | ac_ls_di=`ls -di .` && | ||
1246 | ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || | ||
1247 | as_fn_error $? "working directory cannot be determined" | ||
1248 | test "X$ac_ls_di" = "X$ac_pwd_ls_di" || | ||
1249 | as_fn_error $? "pwd does not report name of working directory" | ||
1250 | |||
1251 | |||
1252 | # Find the source files, if location was not specified. | ||
1253 | if test -z "$srcdir"; then | ||
1254 | ac_srcdir_defaulted=yes | ||
1255 | # Try the directory containing this script, then the parent directory. | ||
1256 | ac_confdir=`$as_dirname -- "$as_myself" || | ||
1257 | $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
1258 | X"$as_myself" : 'X\(//\)[^/]' \| \ | ||
1259 | X"$as_myself" : 'X\(//\)$' \| \ | ||
1260 | X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || | ||
1261 | $as_echo X"$as_myself" | | ||
1262 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
1263 | s//\1/ | ||
1264 | q | ||
1265 | } | ||
1266 | /^X\(\/\/\)[^/].*/{ | ||
1267 | s//\1/ | ||
1268 | q | ||
1269 | } | ||
1270 | /^X\(\/\/\)$/{ | ||
1271 | s//\1/ | ||
1272 | q | ||
1273 | } | ||
1274 | /^X\(\/\).*/{ | ||
1275 | s//\1/ | ||
1276 | q | ||
1277 | } | ||
1278 | s/.*/./; q'` | ||
1279 | srcdir=$ac_confdir | ||
1280 | if test ! -r "$srcdir/$ac_unique_file"; then | ||
1281 | srcdir=.. | ||
1282 | fi | ||
1283 | else | ||
1284 | ac_srcdir_defaulted=no | ||
1285 | fi | ||
1286 | if test ! -r "$srcdir/$ac_unique_file"; then | ||
1287 | test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." | ||
1288 | as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" | ||
1289 | fi | ||
1290 | ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" | ||
1291 | ac_abs_confdir=`( | ||
1292 | cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" | ||
1293 | pwd)` | ||
1294 | # When building in place, set srcdir=. | ||
1295 | if test "$ac_abs_confdir" = "$ac_pwd"; then | ||
1296 | srcdir=. | ||
1297 | fi | ||
1298 | # Remove unnecessary trailing slashes from srcdir. | ||
1299 | # Double slashes in file names in object file debugging info | ||
1300 | # mess up M-x gdb in Emacs. | ||
1301 | case $srcdir in | ||
1302 | */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; | ||
1303 | esac | ||
1304 | for ac_var in $ac_precious_vars; do | ||
1305 | eval ac_env_${ac_var}_set=\${${ac_var}+set} | ||
1306 | eval ac_env_${ac_var}_value=\$${ac_var} | ||
1307 | eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} | ||
1308 | eval ac_cv_env_${ac_var}_value=\$${ac_var} | ||
1309 | done | ||
1310 | |||
1311 | # | ||
1312 | # Report the --help message. | ||
1313 | # | ||
1314 | if test "$ac_init_help" = "long"; then | ||
1315 | # Omit some internal or obsolete options to make the list less imposing. | ||
1316 | # This message is too long to be a string in the A/UX 3.1 sh. | ||
1317 | cat <<_ACEOF | ||
1318 | \`configure' configures OpenSSH Portable to adapt to many kinds of systems. | ||
1319 | |||
1320 | Usage: $0 [OPTION]... [VAR=VALUE]... | ||
1321 | |||
1322 | To assign environment variables (e.g., CC, CFLAGS...), specify them as | ||
1323 | VAR=VALUE. See below for descriptions of some of the useful variables. | ||
1324 | |||
1325 | Defaults for the options are specified in brackets. | ||
1326 | |||
1327 | Configuration: | ||
1328 | -h, --help display this help and exit | ||
1329 | --help=short display options specific to this package | ||
1330 | --help=recursive display the short help of all the included packages | ||
1331 | -V, --version display version information and exit | ||
1332 | -q, --quiet, --silent do not print \`checking ...' messages | ||
1333 | --cache-file=FILE cache test results in FILE [disabled] | ||
1334 | -C, --config-cache alias for \`--cache-file=config.cache' | ||
1335 | -n, --no-create do not create output files | ||
1336 | --srcdir=DIR find the sources in DIR [configure dir or \`..'] | ||
1337 | |||
1338 | Installation directories: | ||
1339 | --prefix=PREFIX install architecture-independent files in PREFIX | ||
1340 | [$ac_default_prefix] | ||
1341 | --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX | ||
1342 | [PREFIX] | ||
1343 | |||
1344 | By default, \`make install' will install all the files in | ||
1345 | \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify | ||
1346 | an installation prefix other than \`$ac_default_prefix' using \`--prefix', | ||
1347 | for instance \`--prefix=\$HOME'. | ||
1348 | |||
1349 | For better control, use the options below. | ||
1350 | |||
1351 | Fine tuning of the installation directories: | ||
1352 | --bindir=DIR user executables [EPREFIX/bin] | ||
1353 | --sbindir=DIR system admin executables [EPREFIX/sbin] | ||
1354 | --libexecdir=DIR program executables [EPREFIX/libexec] | ||
1355 | --sysconfdir=DIR read-only single-machine data [PREFIX/etc] | ||
1356 | --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] | ||
1357 | --localstatedir=DIR modifiable single-machine data [PREFIX/var] | ||
1358 | --libdir=DIR object code libraries [EPREFIX/lib] | ||
1359 | --includedir=DIR C header files [PREFIX/include] | ||
1360 | --oldincludedir=DIR C header files for non-gcc [/usr/include] | ||
1361 | --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] | ||
1362 | --datadir=DIR read-only architecture-independent data [DATAROOTDIR] | ||
1363 | --infodir=DIR info documentation [DATAROOTDIR/info] | ||
1364 | --localedir=DIR locale-dependent data [DATAROOTDIR/locale] | ||
1365 | --mandir=DIR man documentation [DATAROOTDIR/man] | ||
1366 | --docdir=DIR documentation root [DATAROOTDIR/doc/openssh] | ||
1367 | --htmldir=DIR html documentation [DOCDIR] | ||
1368 | --dvidir=DIR dvi documentation [DOCDIR] | ||
1369 | --pdfdir=DIR pdf documentation [DOCDIR] | ||
1370 | --psdir=DIR ps documentation [DOCDIR] | ||
1371 | _ACEOF | ||
1372 | |||
1373 | cat <<\_ACEOF | ||
1374 | |||
1375 | System types: | ||
1376 | --build=BUILD configure for building on BUILD [guessed] | ||
1377 | --host=HOST cross-compile to build programs to run on HOST [BUILD] | ||
1378 | _ACEOF | ||
1379 | fi | ||
1380 | |||
1381 | if test -n "$ac_init_help"; then | ||
1382 | case $ac_init_help in | ||
1383 | short | recursive ) echo "Configuration of OpenSSH Portable:";; | ||
1384 | esac | ||
1385 | cat <<\_ACEOF | ||
1386 | |||
1387 | Optional Features: | ||
1388 | --disable-option-checking ignore unrecognized --enable/--with options | ||
1389 | --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) | ||
1390 | --enable-FEATURE[=ARG] include FEATURE [ARG=yes] | ||
1391 | --disable-largefile omit support for large files | ||
1392 | --disable-strip Disable calling strip(1) on install | ||
1393 | --disable-etc-default-login Disable using PATH from /etc/default/login no | ||
1394 | --disable-lastlog disable use of lastlog even if detected no | ||
1395 | --disable-utmp disable use of utmp even if detected no | ||
1396 | --disable-utmpx disable use of utmpx even if detected no | ||
1397 | --disable-wtmp disable use of wtmp even if detected no | ||
1398 | --disable-wtmpx disable use of wtmpx even if detected no | ||
1399 | --disable-libutil disable use of libutil (login() etc.) no | ||
1400 | --disable-pututline disable use of pututline() etc. (uwtmp) no | ||
1401 | --disable-pututxline disable use of pututxline() etc. (uwtmpx) no | ||
1402 | |||
1403 | Optional Packages: | ||
1404 | --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] | ||
1405 | --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) | ||
1406 | --without-stackprotect Don't use compiler's stack protection | ||
1407 | --without-hardening Don't use toolchain hardening flags | ||
1408 | --without-rpath Disable auto-added -R linker paths | ||
1409 | --with-cflags Specify additional flags to pass to compiler | ||
1410 | --with-cppflags Specify additional flags to pass to preprocessor | ||
1411 | --with-ldflags Specify additional flags to pass to linker | ||
1412 | --with-libs Specify additional libraries to link with | ||
1413 | --with-Werror Build main code with -Werror | ||
1414 | --with-solaris-contracts Enable Solaris process contracts (experimental) | ||
1415 | --with-solaris-projects Enable Solaris projects (experimental) | ||
1416 | --with-osfsia Enable Digital Unix SIA | ||
1417 | --with-zlib=PATH Use zlib in PATH | ||
1418 | --without-zlib-version-check Disable zlib version check | ||
1419 | --with-skey[=PATH] Enable S/Key support (optionally in PATH) | ||
1420 | --with-tcp-wrappers[=PATH] Enable tcpwrappers support (optionally in PATH) | ||
1421 | --with-ldns[=PATH] Use ldns for DNSSEC support (optionally in PATH) | ||
1422 | --with-libedit[=PATH] Enable libedit support for sftp | ||
1423 | --with-audit=module Enable audit support (modules=debug,bsm,linux) | ||
1424 | --with-pie Build Position Independent Executables if possible | ||
1425 | --with-ssl-dir=PATH Specify path to OpenSSL installation | ||
1426 | --without-openssl-header-check Disable OpenSSL version consistency check | ||
1427 | --with-ssl-engine Enable OpenSSL (hardware) ENGINE support | ||
1428 | --with-prngd-port=PORT read entropy from PRNGD/EGD TCP localhost:PORT | ||
1429 | --with-prngd-socket=FILE read entropy from PRNGD/EGD socket FILE (default=/var/run/egd-pool) | ||
1430 | --with-pam Enable PAM support | ||
1431 | --with-privsep-user=user Specify non-privileged user for privilege separation | ||
1432 | --with-sandbox=style Specify privilege separation sandbox (no, darwin, rlimit, systrace, seccomp_filter, capsicum) | ||
1433 | --with-selinux Enable SELinux support | ||
1434 | --with-kerberos5=PATH Enable Kerberos 5 support | ||
1435 | --with-privsep-path=xxx Path for privilege separation chroot (default=/var/empty) | ||
1436 | --with-xauth=PATH Specify path to xauth program | ||
1437 | --with-maildir=/path/to/mail Specify your system mail directory | ||
1438 | --with-mantype=man|cat|doc Set man page type | ||
1439 | --with-md5-passwords Enable use of MD5 passwords | ||
1440 | --without-shadow Disable shadow password support | ||
1441 | --with-ipaddr-display Use ip address instead of hostname in \$DISPLAY | ||
1442 | --with-default-path= Specify default \$PATH environment for server | ||
1443 | --with-superuser-path= Specify different path for super-user | ||
1444 | --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses | ||
1445 | --with-bsd-auth Enable BSD auth support | ||
1446 | --with-pid-dir=PATH Specify location of ssh.pid file | ||
1447 | --with-lastlog=FILE|DIR specify lastlog location common locations | ||
1448 | |||
1449 | Some influential environment variables: | ||
1450 | CC C compiler command | ||
1451 | CFLAGS C compiler flags | ||
1452 | LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a | ||
1453 | nonstandard directory <lib dir> | ||
1454 | LIBS libraries to pass to the linker, e.g. -l<library> | ||
1455 | CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if | ||
1456 | you have headers in a nonstandard directory <include dir> | ||
1457 | CPP C preprocessor | ||
1458 | |||
1459 | Use these variables to override the choices made by `configure' or to help | ||
1460 | it to find libraries and programs with nonstandard names/locations. | ||
1461 | |||
1462 | Report bugs to <openssh-unix-dev@mindrot.org>. | ||
1463 | _ACEOF | ||
1464 | ac_status=$? | ||
1465 | fi | ||
1466 | |||
1467 | if test "$ac_init_help" = "recursive"; then | ||
1468 | # If there are subdirs, report their specific --help. | ||
1469 | for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue | ||
1470 | test -d "$ac_dir" || | ||
1471 | { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || | ||
1472 | continue | ||
1473 | ac_builddir=. | ||
1474 | |||
1475 | case "$ac_dir" in | ||
1476 | .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
1477 | *) | ||
1478 | ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` | ||
1479 | # A ".." for each directory in $ac_dir_suffix. | ||
1480 | ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` | ||
1481 | case $ac_top_builddir_sub in | ||
1482 | "") ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
1483 | *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; | ||
1484 | esac ;; | ||
1485 | esac | ||
1486 | ac_abs_top_builddir=$ac_pwd | ||
1487 | ac_abs_builddir=$ac_pwd$ac_dir_suffix | ||
1488 | # for backward compatibility: | ||
1489 | ac_top_builddir=$ac_top_build_prefix | ||
1490 | |||
1491 | case $srcdir in | ||
1492 | .) # We are building in place. | ||
1493 | ac_srcdir=. | ||
1494 | ac_top_srcdir=$ac_top_builddir_sub | ||
1495 | ac_abs_top_srcdir=$ac_pwd ;; | ||
1496 | [\\/]* | ?:[\\/]* ) # Absolute name. | ||
1497 | ac_srcdir=$srcdir$ac_dir_suffix; | ||
1498 | ac_top_srcdir=$srcdir | ||
1499 | ac_abs_top_srcdir=$srcdir ;; | ||
1500 | *) # Relative name. | ||
1501 | ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix | ||
1502 | ac_top_srcdir=$ac_top_build_prefix$srcdir | ||
1503 | ac_abs_top_srcdir=$ac_pwd/$srcdir ;; | ||
1504 | esac | ||
1505 | ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix | ||
1506 | |||
1507 | cd "$ac_dir" || { ac_status=$?; continue; } | ||
1508 | # Check for guested configure. | ||
1509 | if test -f "$ac_srcdir/configure.gnu"; then | ||
1510 | echo && | ||
1511 | $SHELL "$ac_srcdir/configure.gnu" --help=recursive | ||
1512 | elif test -f "$ac_srcdir/configure"; then | ||
1513 | echo && | ||
1514 | $SHELL "$ac_srcdir/configure" --help=recursive | ||
1515 | else | ||
1516 | $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 | ||
1517 | fi || ac_status=$? | ||
1518 | cd "$ac_pwd" || { ac_status=$?; break; } | ||
1519 | done | ||
1520 | fi | ||
1521 | |||
1522 | test -n "$ac_init_help" && exit $ac_status | ||
1523 | if $ac_init_version; then | ||
1524 | cat <<\_ACEOF | ||
1525 | OpenSSH configure Portable | ||
1526 | generated by GNU Autoconf 2.68 | ||
1527 | |||
1528 | Copyright (C) 2010 Free Software Foundation, Inc. | ||
1529 | This configure script is free software; the Free Software Foundation | ||
1530 | gives unlimited permission to copy, distribute and modify it. | ||
1531 | _ACEOF | ||
1532 | exit | ||
1533 | fi | ||
1534 | |||
1535 | ## ------------------------ ## | ||
1536 | ## Autoconf initialization. ## | ||
1537 | ## ------------------------ ## | ||
1538 | |||
1539 | # ac_fn_c_try_compile LINENO | ||
1540 | # -------------------------- | ||
1541 | # Try to compile conftest.$ac_ext, and return whether this succeeded. | ||
1542 | ac_fn_c_try_compile () | ||
1543 | { | ||
1544 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1545 | rm -f conftest.$ac_objext | ||
1546 | if { { ac_try="$ac_compile" | ||
1547 | case "(($ac_try" in | ||
1548 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1549 | *) ac_try_echo=$ac_try;; | ||
1550 | esac | ||
1551 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1552 | $as_echo "$ac_try_echo"; } >&5 | ||
1553 | (eval "$ac_compile") 2>conftest.err | ||
1554 | ac_status=$? | ||
1555 | if test -s conftest.err; then | ||
1556 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1557 | cat conftest.er1 >&5 | ||
1558 | mv -f conftest.er1 conftest.err | ||
1559 | fi | ||
1560 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1561 | test $ac_status = 0; } && { | ||
1562 | test -z "$ac_c_werror_flag" || | ||
1563 | test ! -s conftest.err | ||
1564 | } && test -s conftest.$ac_objext; then : | ||
1565 | ac_retval=0 | ||
1566 | else | ||
1567 | $as_echo "$as_me: failed program was:" >&5 | ||
1568 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1569 | |||
1570 | ac_retval=1 | ||
1571 | fi | ||
1572 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1573 | as_fn_set_status $ac_retval | ||
1574 | |||
1575 | } # ac_fn_c_try_compile | ||
1576 | |||
1577 | # ac_fn_c_try_run LINENO | ||
1578 | # ---------------------- | ||
1579 | # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes | ||
1580 | # that executables *can* be run. | ||
1581 | ac_fn_c_try_run () | ||
1582 | { | ||
1583 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1584 | if { { ac_try="$ac_link" | ||
1585 | case "(($ac_try" in | ||
1586 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1587 | *) ac_try_echo=$ac_try;; | ||
1588 | esac | ||
1589 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1590 | $as_echo "$ac_try_echo"; } >&5 | ||
1591 | (eval "$ac_link") 2>&5 | ||
1592 | ac_status=$? | ||
1593 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1594 | test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' | ||
1595 | { { case "(($ac_try" in | ||
1596 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1597 | *) ac_try_echo=$ac_try;; | ||
1598 | esac | ||
1599 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1600 | $as_echo "$ac_try_echo"; } >&5 | ||
1601 | (eval "$ac_try") 2>&5 | ||
1602 | ac_status=$? | ||
1603 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1604 | test $ac_status = 0; }; }; then : | ||
1605 | ac_retval=0 | ||
1606 | else | ||
1607 | $as_echo "$as_me: program exited with status $ac_status" >&5 | ||
1608 | $as_echo "$as_me: failed program was:" >&5 | ||
1609 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1610 | |||
1611 | ac_retval=$ac_status | ||
1612 | fi | ||
1613 | rm -rf conftest.dSYM conftest_ipa8_conftest.oo | ||
1614 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1615 | as_fn_set_status $ac_retval | ||
1616 | |||
1617 | } # ac_fn_c_try_run | ||
1618 | |||
1619 | # ac_fn_c_try_cpp LINENO | ||
1620 | # ---------------------- | ||
1621 | # Try to preprocess conftest.$ac_ext, and return whether this succeeded. | ||
1622 | ac_fn_c_try_cpp () | ||
1623 | { | ||
1624 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1625 | if { { ac_try="$ac_cpp conftest.$ac_ext" | ||
1626 | case "(($ac_try" in | ||
1627 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1628 | *) ac_try_echo=$ac_try;; | ||
1629 | esac | ||
1630 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1631 | $as_echo "$ac_try_echo"; } >&5 | ||
1632 | (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err | ||
1633 | ac_status=$? | ||
1634 | if test -s conftest.err; then | ||
1635 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1636 | cat conftest.er1 >&5 | ||
1637 | mv -f conftest.er1 conftest.err | ||
1638 | fi | ||
1639 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1640 | test $ac_status = 0; } > conftest.i && { | ||
1641 | test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || | ||
1642 | test ! -s conftest.err | ||
1643 | }; then : | ||
1644 | ac_retval=0 | ||
1645 | else | ||
1646 | $as_echo "$as_me: failed program was:" >&5 | ||
1647 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1648 | |||
1649 | ac_retval=1 | ||
1650 | fi | ||
1651 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1652 | as_fn_set_status $ac_retval | ||
1653 | |||
1654 | } # ac_fn_c_try_cpp | ||
1655 | |||
1656 | # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES | ||
1657 | # ------------------------------------------------------- | ||
1658 | # Tests whether HEADER exists and can be compiled using the include files in | ||
1659 | # INCLUDES, setting the cache variable VAR accordingly. | ||
1660 | ac_fn_c_check_header_compile () | ||
1661 | { | ||
1662 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1663 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1664 | $as_echo_n "checking for $2... " >&6; } | ||
1665 | if eval \${$3+:} false; then : | ||
1666 | $as_echo_n "(cached) " >&6 | ||
1667 | else | ||
1668 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1669 | /* end confdefs.h. */ | ||
1670 | $4 | ||
1671 | #include <$2> | ||
1672 | _ACEOF | ||
1673 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1674 | eval "$3=yes" | ||
1675 | else | ||
1676 | eval "$3=no" | ||
1677 | fi | ||
1678 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1679 | fi | ||
1680 | eval ac_res=\$$3 | ||
1681 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1682 | $as_echo "$ac_res" >&6; } | ||
1683 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1684 | |||
1685 | } # ac_fn_c_check_header_compile | ||
1686 | |||
1687 | # ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES | ||
1688 | # --------------------------------------------- | ||
1689 | # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR | ||
1690 | # accordingly. | ||
1691 | ac_fn_c_check_decl () | ||
1692 | { | ||
1693 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1694 | as_decl_name=`echo $2|sed 's/ *(.*//'` | ||
1695 | as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` | ||
1696 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 | ||
1697 | $as_echo_n "checking whether $as_decl_name is declared... " >&6; } | ||
1698 | if eval \${$3+:} false; then : | ||
1699 | $as_echo_n "(cached) " >&6 | ||
1700 | else | ||
1701 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1702 | /* end confdefs.h. */ | ||
1703 | $4 | ||
1704 | int | ||
1705 | main () | ||
1706 | { | ||
1707 | #ifndef $as_decl_name | ||
1708 | #ifdef __cplusplus | ||
1709 | (void) $as_decl_use; | ||
1710 | #else | ||
1711 | (void) $as_decl_name; | ||
1712 | #endif | ||
1713 | #endif | ||
1714 | |||
1715 | ; | ||
1716 | return 0; | ||
1717 | } | ||
1718 | _ACEOF | ||
1719 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1720 | eval "$3=yes" | ||
1721 | else | ||
1722 | eval "$3=no" | ||
1723 | fi | ||
1724 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1725 | fi | ||
1726 | eval ac_res=\$$3 | ||
1727 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1728 | $as_echo "$ac_res" >&6; } | ||
1729 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1730 | |||
1731 | } # ac_fn_c_check_decl | ||
1732 | |||
1733 | # ac_fn_c_try_link LINENO | ||
1734 | # ----------------------- | ||
1735 | # Try to link conftest.$ac_ext, and return whether this succeeded. | ||
1736 | ac_fn_c_try_link () | ||
1737 | { | ||
1738 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1739 | rm -f conftest.$ac_objext conftest$ac_exeext | ||
1740 | if { { ac_try="$ac_link" | ||
1741 | case "(($ac_try" in | ||
1742 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1743 | *) ac_try_echo=$ac_try;; | ||
1744 | esac | ||
1745 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1746 | $as_echo "$ac_try_echo"; } >&5 | ||
1747 | (eval "$ac_link") 2>conftest.err | ||
1748 | ac_status=$? | ||
1749 | if test -s conftest.err; then | ||
1750 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1751 | cat conftest.er1 >&5 | ||
1752 | mv -f conftest.er1 conftest.err | ||
1753 | fi | ||
1754 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1755 | test $ac_status = 0; } && { | ||
1756 | test -z "$ac_c_werror_flag" || | ||
1757 | test ! -s conftest.err | ||
1758 | } && test -s conftest$ac_exeext && { | ||
1759 | test "$cross_compiling" = yes || | ||
1760 | $as_test_x conftest$ac_exeext | ||
1761 | }; then : | ||
1762 | ac_retval=0 | ||
1763 | else | ||
1764 | $as_echo "$as_me: failed program was:" >&5 | ||
1765 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1766 | |||
1767 | ac_retval=1 | ||
1768 | fi | ||
1769 | # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information | ||
1770 | # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would | ||
1771 | # interfere with the next link command; also delete a directory that is | ||
1772 | # left behind by Apple's compiler. We do this before executing the actions. | ||
1773 | rm -rf conftest.dSYM conftest_ipa8_conftest.oo | ||
1774 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1775 | as_fn_set_status $ac_retval | ||
1776 | |||
1777 | } # ac_fn_c_try_link | ||
1778 | |||
1779 | # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES | ||
1780 | # ------------------------------------------------------- | ||
1781 | # Tests whether HEADER exists, giving a warning if it cannot be compiled using | ||
1782 | # the include files in INCLUDES and setting the cache variable VAR | ||
1783 | # accordingly. | ||
1784 | ac_fn_c_check_header_mongrel () | ||
1785 | { | ||
1786 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1787 | if eval \${$3+:} false; then : | ||
1788 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1789 | $as_echo_n "checking for $2... " >&6; } | ||
1790 | if eval \${$3+:} false; then : | ||
1791 | $as_echo_n "(cached) " >&6 | ||
1792 | fi | ||
1793 | eval ac_res=\$$3 | ||
1794 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1795 | $as_echo "$ac_res" >&6; } | ||
1796 | else | ||
1797 | # Is the header compilable? | ||
1798 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 | ||
1799 | $as_echo_n "checking $2 usability... " >&6; } | ||
1800 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1801 | /* end confdefs.h. */ | ||
1802 | $4 | ||
1803 | #include <$2> | ||
1804 | _ACEOF | ||
1805 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1806 | ac_header_compiler=yes | ||
1807 | else | ||
1808 | ac_header_compiler=no | ||
1809 | fi | ||
1810 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1811 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 | ||
1812 | $as_echo "$ac_header_compiler" >&6; } | ||
1813 | |||
1814 | # Is the header present? | ||
1815 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 | ||
1816 | $as_echo_n "checking $2 presence... " >&6; } | ||
1817 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1818 | /* end confdefs.h. */ | ||
1819 | #include <$2> | ||
1820 | _ACEOF | ||
1821 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
1822 | ac_header_preproc=yes | ||
1823 | else | ||
1824 | ac_header_preproc=no | ||
1825 | fi | ||
1826 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
1827 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 | ||
1828 | $as_echo "$ac_header_preproc" >&6; } | ||
1829 | |||
1830 | # So? What about this header? | ||
1831 | case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( | ||
1832 | yes:no: ) | ||
1833 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 | ||
1834 | $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} | ||
1835 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 | ||
1836 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} | ||
1837 | ;; | ||
1838 | no:yes:* ) | ||
1839 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 | ||
1840 | $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} | ||
1841 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 | ||
1842 | $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} | ||
1843 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 | ||
1844 | $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} | ||
1845 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 | ||
1846 | $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} | ||
1847 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 | ||
1848 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} | ||
1849 | ( $as_echo "## ------------------------------------------- ## | ||
1850 | ## Report this to openssh-unix-dev@mindrot.org ## | ||
1851 | ## ------------------------------------------- ##" | ||
1852 | ) | sed "s/^/$as_me: WARNING: /" >&2 | ||
1853 | ;; | ||
1854 | esac | ||
1855 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1856 | $as_echo_n "checking for $2... " >&6; } | ||
1857 | if eval \${$3+:} false; then : | ||
1858 | $as_echo_n "(cached) " >&6 | ||
1859 | else | ||
1860 | eval "$3=\$ac_header_compiler" | ||
1861 | fi | ||
1862 | eval ac_res=\$$3 | ||
1863 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1864 | $as_echo "$ac_res" >&6; } | ||
1865 | fi | ||
1866 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1867 | |||
1868 | } # ac_fn_c_check_header_mongrel | ||
1869 | |||
1870 | # ac_fn_c_check_func LINENO FUNC VAR | ||
1871 | # ---------------------------------- | ||
1872 | # Tests whether FUNC exists, setting the cache variable VAR accordingly | ||
1873 | ac_fn_c_check_func () | ||
1874 | { | ||
1875 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1876 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1877 | $as_echo_n "checking for $2... " >&6; } | ||
1878 | if eval \${$3+:} false; then : | ||
1879 | $as_echo_n "(cached) " >&6 | ||
1880 | else | ||
1881 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1882 | /* end confdefs.h. */ | ||
1883 | /* Define $2 to an innocuous variant, in case <limits.h> declares $2. | ||
1884 | For example, HP-UX 11i <limits.h> declares gettimeofday. */ | ||
1885 | #define $2 innocuous_$2 | ||
1886 | |||
1887 | /* System header to define __stub macros and hopefully few prototypes, | ||
1888 | which can conflict with char $2 (); below. | ||
1889 | Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
1890 | <limits.h> exists even on freestanding compilers. */ | ||
1891 | |||
1892 | #ifdef __STDC__ | ||
1893 | # include <limits.h> | ||
1894 | #else | ||
1895 | # include <assert.h> | ||
1896 | #endif | ||
1897 | |||
1898 | #undef $2 | ||
1899 | |||
1900 | /* Override any GCC internal prototype to avoid an error. | ||
1901 | Use char because int might match the return type of a GCC | ||
1902 | builtin and then its argument prototype would still apply. */ | ||
1903 | #ifdef __cplusplus | ||
1904 | extern "C" | ||
1905 | #endif | ||
1906 | char $2 (); | ||
1907 | /* The GNU C library defines this for functions which it implements | ||
1908 | to always fail with ENOSYS. Some functions are actually named | ||
1909 | something starting with __ and the normal name is an alias. */ | ||
1910 | #if defined __stub_$2 || defined __stub___$2 | ||
1911 | choke me | ||
1912 | #endif | ||
1913 | |||
1914 | int | ||
1915 | main () | ||
1916 | { | ||
1917 | return $2 (); | ||
1918 | ; | ||
1919 | return 0; | ||
1920 | } | ||
1921 | _ACEOF | ||
1922 | if ac_fn_c_try_link "$LINENO"; then : | ||
1923 | eval "$3=yes" | ||
1924 | else | ||
1925 | eval "$3=no" | ||
1926 | fi | ||
1927 | rm -f core conftest.err conftest.$ac_objext \ | ||
1928 | conftest$ac_exeext conftest.$ac_ext | ||
1929 | fi | ||
1930 | eval ac_res=\$$3 | ||
1931 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1932 | $as_echo "$ac_res" >&6; } | ||
1933 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1934 | |||
1935 | } # ac_fn_c_check_func | ||
1936 | |||
1937 | # ac_fn_c_check_type LINENO TYPE VAR INCLUDES | ||
1938 | # ------------------------------------------- | ||
1939 | # Tests whether TYPE exists after having included INCLUDES, setting cache | ||
1940 | # variable VAR accordingly. | ||
1941 | ac_fn_c_check_type () | ||
1942 | { | ||
1943 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1944 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1945 | $as_echo_n "checking for $2... " >&6; } | ||
1946 | if eval \${$3+:} false; then : | ||
1947 | $as_echo_n "(cached) " >&6 | ||
1948 | else | ||
1949 | eval "$3=no" | ||
1950 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1951 | /* end confdefs.h. */ | ||
1952 | $4 | ||
1953 | int | ||
1954 | main () | ||
1955 | { | ||
1956 | if (sizeof ($2)) | ||
1957 | return 0; | ||
1958 | ; | ||
1959 | return 0; | ||
1960 | } | ||
1961 | _ACEOF | ||
1962 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1963 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1964 | /* end confdefs.h. */ | ||
1965 | $4 | ||
1966 | int | ||
1967 | main () | ||
1968 | { | ||
1969 | if (sizeof (($2))) | ||
1970 | return 0; | ||
1971 | ; | ||
1972 | return 0; | ||
1973 | } | ||
1974 | _ACEOF | ||
1975 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1976 | |||
1977 | else | ||
1978 | eval "$3=yes" | ||
1979 | fi | ||
1980 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1981 | fi | ||
1982 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1983 | fi | ||
1984 | eval ac_res=\$$3 | ||
1985 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1986 | $as_echo "$ac_res" >&6; } | ||
1987 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1988 | |||
1989 | } # ac_fn_c_check_type | ||
1990 | |||
1991 | # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES | ||
1992 | # -------------------------------------------- | ||
1993 | # Tries to find the compile-time value of EXPR in a program that includes | ||
1994 | # INCLUDES, setting VAR accordingly. Returns whether the value could be | ||
1995 | # computed | ||
1996 | ac_fn_c_compute_int () | ||
1997 | { | ||
1998 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1999 | if test "$cross_compiling" = yes; then | ||
2000 | # Depending upon the size, compute the lo and hi bounds. | ||
2001 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2002 | /* end confdefs.h. */ | ||
2003 | $4 | ||
2004 | int | ||
2005 | main () | ||
2006 | { | ||
2007 | static int test_array [1 - 2 * !(($2) >= 0)]; | ||
2008 | test_array [0] = 0 | ||
2009 | |||
2010 | ; | ||
2011 | return 0; | ||
2012 | } | ||
2013 | _ACEOF | ||
2014 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2015 | ac_lo=0 ac_mid=0 | ||
2016 | while :; do | ||
2017 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2018 | /* end confdefs.h. */ | ||
2019 | $4 | ||
2020 | int | ||
2021 | main () | ||
2022 | { | ||
2023 | static int test_array [1 - 2 * !(($2) <= $ac_mid)]; | ||
2024 | test_array [0] = 0 | ||
2025 | |||
2026 | ; | ||
2027 | return 0; | ||
2028 | } | ||
2029 | _ACEOF | ||
2030 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2031 | ac_hi=$ac_mid; break | ||
2032 | else | ||
2033 | as_fn_arith $ac_mid + 1 && ac_lo=$as_val | ||
2034 | if test $ac_lo -le $ac_mid; then | ||
2035 | ac_lo= ac_hi= | ||
2036 | break | ||
2037 | fi | ||
2038 | as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val | ||
2039 | fi | ||
2040 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2041 | done | ||
2042 | else | ||
2043 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2044 | /* end confdefs.h. */ | ||
2045 | $4 | ||
2046 | int | ||
2047 | main () | ||
2048 | { | ||
2049 | static int test_array [1 - 2 * !(($2) < 0)]; | ||
2050 | test_array [0] = 0 | ||
2051 | |||
2052 | ; | ||
2053 | return 0; | ||
2054 | } | ||
2055 | _ACEOF | ||
2056 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2057 | ac_hi=-1 ac_mid=-1 | ||
2058 | while :; do | ||
2059 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2060 | /* end confdefs.h. */ | ||
2061 | $4 | ||
2062 | int | ||
2063 | main () | ||
2064 | { | ||
2065 | static int test_array [1 - 2 * !(($2) >= $ac_mid)]; | ||
2066 | test_array [0] = 0 | ||
2067 | |||
2068 | ; | ||
2069 | return 0; | ||
2070 | } | ||
2071 | _ACEOF | ||
2072 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2073 | ac_lo=$ac_mid; break | ||
2074 | else | ||
2075 | as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val | ||
2076 | if test $ac_mid -le $ac_hi; then | ||
2077 | ac_lo= ac_hi= | ||
2078 | break | ||
2079 | fi | ||
2080 | as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val | ||
2081 | fi | ||
2082 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2083 | done | ||
2084 | else | ||
2085 | ac_lo= ac_hi= | ||
2086 | fi | ||
2087 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2088 | fi | ||
2089 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2090 | # Binary search between lo and hi bounds. | ||
2091 | while test "x$ac_lo" != "x$ac_hi"; do | ||
2092 | as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val | ||
2093 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2094 | /* end confdefs.h. */ | ||
2095 | $4 | ||
2096 | int | ||
2097 | main () | ||
2098 | { | ||
2099 | static int test_array [1 - 2 * !(($2) <= $ac_mid)]; | ||
2100 | test_array [0] = 0 | ||
2101 | |||
2102 | ; | ||
2103 | return 0; | ||
2104 | } | ||
2105 | _ACEOF | ||
2106 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2107 | ac_hi=$ac_mid | ||
2108 | else | ||
2109 | as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val | ||
2110 | fi | ||
2111 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2112 | done | ||
2113 | case $ac_lo in #(( | ||
2114 | ?*) eval "$3=\$ac_lo"; ac_retval=0 ;; | ||
2115 | '') ac_retval=1 ;; | ||
2116 | esac | ||
2117 | else | ||
2118 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2119 | /* end confdefs.h. */ | ||
2120 | $4 | ||
2121 | static long int longval () { return $2; } | ||
2122 | static unsigned long int ulongval () { return $2; } | ||
2123 | #include <stdio.h> | ||
2124 | #include <stdlib.h> | ||
2125 | int | ||
2126 | main () | ||
2127 | { | ||
2128 | |||
2129 | FILE *f = fopen ("conftest.val", "w"); | ||
2130 | if (! f) | ||
2131 | return 1; | ||
2132 | if (($2) < 0) | ||
2133 | { | ||
2134 | long int i = longval (); | ||
2135 | if (i != ($2)) | ||
2136 | return 1; | ||
2137 | fprintf (f, "%ld", i); | ||
2138 | } | ||
2139 | else | ||
2140 | { | ||
2141 | unsigned long int i = ulongval (); | ||
2142 | if (i != ($2)) | ||
2143 | return 1; | ||
2144 | fprintf (f, "%lu", i); | ||
2145 | } | ||
2146 | /* Do not output a trailing newline, as this causes \r\n confusion | ||
2147 | on some platforms. */ | ||
2148 | return ferror (f) || fclose (f) != 0; | ||
2149 | |||
2150 | ; | ||
2151 | return 0; | ||
2152 | } | ||
2153 | _ACEOF | ||
2154 | if ac_fn_c_try_run "$LINENO"; then : | ||
2155 | echo >>conftest.val; read $3 <conftest.val; ac_retval=0 | ||
2156 | else | ||
2157 | ac_retval=1 | ||
2158 | fi | ||
2159 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
2160 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
2161 | rm -f conftest.val | ||
2162 | |||
2163 | fi | ||
2164 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2165 | as_fn_set_status $ac_retval | ||
2166 | |||
2167 | } # ac_fn_c_compute_int | ||
2168 | |||
2169 | # ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES | ||
2170 | # ---------------------------------------------------- | ||
2171 | # Tries to find if the field MEMBER exists in type AGGR, after including | ||
2172 | # INCLUDES, setting cache variable VAR accordingly. | ||
2173 | ac_fn_c_check_member () | ||
2174 | { | ||
2175 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
2176 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 | ||
2177 | $as_echo_n "checking for $2.$3... " >&6; } | ||
2178 | if eval \${$4+:} false; then : | ||
2179 | $as_echo_n "(cached) " >&6 | ||
2180 | else | ||
2181 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2182 | /* end confdefs.h. */ | ||
2183 | $5 | ||
2184 | int | ||
2185 | main () | ||
2186 | { | ||
2187 | static $2 ac_aggr; | ||
2188 | if (ac_aggr.$3) | ||
2189 | return 0; | ||
2190 | ; | ||
2191 | return 0; | ||
2192 | } | ||
2193 | _ACEOF | ||
2194 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2195 | eval "$4=yes" | ||
2196 | else | ||
2197 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2198 | /* end confdefs.h. */ | ||
2199 | $5 | ||
2200 | int | ||
2201 | main () | ||
2202 | { | ||
2203 | static $2 ac_aggr; | ||
2204 | if (sizeof ac_aggr.$3) | ||
2205 | return 0; | ||
2206 | ; | ||
2207 | return 0; | ||
2208 | } | ||
2209 | _ACEOF | ||
2210 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2211 | eval "$4=yes" | ||
2212 | else | ||
2213 | eval "$4=no" | ||
2214 | fi | ||
2215 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2216 | fi | ||
2217 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2218 | fi | ||
2219 | eval ac_res=\$$4 | ||
2220 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
2221 | $as_echo "$ac_res" >&6; } | ||
2222 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2223 | |||
2224 | } # ac_fn_c_check_member | ||
2225 | cat >config.log <<_ACEOF | ||
2226 | This file contains any messages produced by compilers while | ||
2227 | running configure, to aid debugging if configure makes a mistake. | ||
2228 | |||
2229 | It was created by OpenSSH $as_me Portable, which was | ||
2230 | generated by GNU Autoconf 2.68. Invocation command line was | ||
2231 | |||
2232 | $ $0 $@ | ||
2233 | |||
2234 | _ACEOF | ||
2235 | exec 5>>config.log | ||
2236 | { | ||
2237 | cat <<_ASUNAME | ||
2238 | ## --------- ## | ||
2239 | ## Platform. ## | ||
2240 | ## --------- ## | ||
2241 | |||
2242 | hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` | ||
2243 | uname -m = `(uname -m) 2>/dev/null || echo unknown` | ||
2244 | uname -r = `(uname -r) 2>/dev/null || echo unknown` | ||
2245 | uname -s = `(uname -s) 2>/dev/null || echo unknown` | ||
2246 | uname -v = `(uname -v) 2>/dev/null || echo unknown` | ||
2247 | |||
2248 | /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` | ||
2249 | /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` | ||
2250 | |||
2251 | /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` | ||
2252 | /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` | ||
2253 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` | ||
2254 | /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` | ||
2255 | /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` | ||
2256 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` | ||
2257 | /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` | ||
2258 | |||
2259 | _ASUNAME | ||
2260 | |||
2261 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2262 | for as_dir in $PATH | ||
2263 | do | ||
2264 | IFS=$as_save_IFS | ||
2265 | test -z "$as_dir" && as_dir=. | ||
2266 | $as_echo "PATH: $as_dir" | ||
2267 | done | ||
2268 | IFS=$as_save_IFS | ||
2269 | |||
2270 | } >&5 | ||
2271 | |||
2272 | cat >&5 <<_ACEOF | ||
2273 | |||
2274 | |||
2275 | ## ----------- ## | ||
2276 | ## Core tests. ## | ||
2277 | ## ----------- ## | ||
2278 | |||
2279 | _ACEOF | ||
2280 | |||
2281 | |||
2282 | # Keep a trace of the command line. | ||
2283 | # Strip out --no-create and --no-recursion so they do not pile up. | ||
2284 | # Strip out --silent because we don't want to record it for future runs. | ||
2285 | # Also quote any args containing shell meta-characters. | ||
2286 | # Make two passes to allow for proper duplicate-argument suppression. | ||
2287 | ac_configure_args= | ||
2288 | ac_configure_args0= | ||
2289 | ac_configure_args1= | ||
2290 | ac_must_keep_next=false | ||
2291 | for ac_pass in 1 2 | ||
2292 | do | ||
2293 | for ac_arg | ||
2294 | do | ||
2295 | case $ac_arg in | ||
2296 | -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; | ||
2297 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
2298 | | -silent | --silent | --silen | --sile | --sil) | ||
2299 | continue ;; | ||
2300 | *\'*) | ||
2301 | ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
2302 | esac | ||
2303 | case $ac_pass in | ||
2304 | 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; | ||
2305 | 2) | ||
2306 | as_fn_append ac_configure_args1 " '$ac_arg'" | ||
2307 | if test $ac_must_keep_next = true; then | ||
2308 | ac_must_keep_next=false # Got value, back to normal. | ||
2309 | else | ||
2310 | case $ac_arg in | ||
2311 | *=* | --config-cache | -C | -disable-* | --disable-* \ | ||
2312 | | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | ||
2313 | | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | ||
2314 | | -with-* | --with-* | -without-* | --without-* | --x) | ||
2315 | case "$ac_configure_args0 " in | ||
2316 | "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; | ||
2317 | esac | ||
2318 | ;; | ||
2319 | -* ) ac_must_keep_next=true ;; | ||
2320 | esac | ||
2321 | fi | ||
2322 | as_fn_append ac_configure_args " '$ac_arg'" | ||
2323 | ;; | ||
2324 | esac | ||
2325 | done | ||
2326 | done | ||
2327 | { ac_configure_args0=; unset ac_configure_args0;} | ||
2328 | { ac_configure_args1=; unset ac_configure_args1;} | ||
2329 | |||
2330 | # When interrupted or exit'd, cleanup temporary files, and complete | ||
2331 | # config.log. We remove comments because anyway the quotes in there | ||
2332 | # would cause problems or look ugly. | ||
2333 | # WARNING: Use '\'' to represent an apostrophe within the trap. | ||
2334 | # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. | ||
2335 | trap 'exit_status=$? | ||
2336 | # Save into config.log some information that might help in debugging. | ||
2337 | { | ||
2338 | echo | ||
2339 | |||
2340 | $as_echo "## ---------------- ## | ||
2341 | ## Cache variables. ## | ||
2342 | ## ---------------- ##" | ||
2343 | echo | ||
2344 | # The following way of writing the cache mishandles newlines in values, | ||
2345 | ( | ||
2346 | for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do | ||
2347 | eval ac_val=\$$ac_var | ||
2348 | case $ac_val in #( | ||
2349 | *${as_nl}*) | ||
2350 | case $ac_var in #( | ||
2351 | *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 | ||
2352 | $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | ||
2353 | esac | ||
2354 | case $ac_var in #( | ||
2355 | _ | IFS | as_nl) ;; #( | ||
2356 | BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( | ||
2357 | *) { eval $ac_var=; unset $ac_var;} ;; | ||
2358 | esac ;; | ||
2359 | esac | ||
2360 | done | ||
2361 | (set) 2>&1 | | ||
2362 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( | ||
2363 | *${as_nl}ac_space=\ *) | ||
2364 | sed -n \ | ||
2365 | "s/'\''/'\''\\\\'\'''\''/g; | ||
2366 | s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" | ||
2367 | ;; #( | ||
2368 | *) | ||
2369 | sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" | ||
2370 | ;; | ||
2371 | esac | | ||
2372 | sort | ||
2373 | ) | ||
2374 | echo | ||
2375 | |||
2376 | $as_echo "## ----------------- ## | ||
2377 | ## Output variables. ## | ||
2378 | ## ----------------- ##" | ||
2379 | echo | ||
2380 | for ac_var in $ac_subst_vars | ||
2381 | do | ||
2382 | eval ac_val=\$$ac_var | ||
2383 | case $ac_val in | ||
2384 | *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; | ||
2385 | esac | ||
2386 | $as_echo "$ac_var='\''$ac_val'\''" | ||
2387 | done | sort | ||
2388 | echo | ||
2389 | |||
2390 | if test -n "$ac_subst_files"; then | ||
2391 | $as_echo "## ------------------- ## | ||
2392 | ## File substitutions. ## | ||
2393 | ## ------------------- ##" | ||
2394 | echo | ||
2395 | for ac_var in $ac_subst_files | ||
2396 | do | ||
2397 | eval ac_val=\$$ac_var | ||
2398 | case $ac_val in | ||
2399 | *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; | ||
2400 | esac | ||
2401 | $as_echo "$ac_var='\''$ac_val'\''" | ||
2402 | done | sort | ||
2403 | echo | ||
2404 | fi | ||
2405 | |||
2406 | if test -s confdefs.h; then | ||
2407 | $as_echo "## ----------- ## | ||
2408 | ## confdefs.h. ## | ||
2409 | ## ----------- ##" | ||
2410 | echo | ||
2411 | cat confdefs.h | ||
2412 | echo | ||
2413 | fi | ||
2414 | test "$ac_signal" != 0 && | ||
2415 | $as_echo "$as_me: caught signal $ac_signal" | ||
2416 | $as_echo "$as_me: exit $exit_status" | ||
2417 | } >&5 | ||
2418 | rm -f core *.core core.conftest.* && | ||
2419 | rm -f -r conftest* confdefs* conf$$* $ac_clean_files && | ||
2420 | exit $exit_status | ||
2421 | ' 0 | ||
2422 | for ac_signal in 1 2 13 15; do | ||
2423 | trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal | ||
2424 | done | ||
2425 | ac_signal=0 | ||
2426 | |||
2427 | # confdefs.h avoids OS command line length limits that DEFS can exceed. | ||
2428 | rm -f -r conftest* confdefs.h | ||
2429 | |||
2430 | $as_echo "/* confdefs.h */" > confdefs.h | ||
2431 | |||
2432 | # Predefined preprocessor variables. | ||
2433 | |||
2434 | cat >>confdefs.h <<_ACEOF | ||
2435 | #define PACKAGE_NAME "$PACKAGE_NAME" | ||
2436 | _ACEOF | ||
2437 | |||
2438 | cat >>confdefs.h <<_ACEOF | ||
2439 | #define PACKAGE_TARNAME "$PACKAGE_TARNAME" | ||
2440 | _ACEOF | ||
2441 | |||
2442 | cat >>confdefs.h <<_ACEOF | ||
2443 | #define PACKAGE_VERSION "$PACKAGE_VERSION" | ||
2444 | _ACEOF | ||
2445 | |||
2446 | cat >>confdefs.h <<_ACEOF | ||
2447 | #define PACKAGE_STRING "$PACKAGE_STRING" | ||
2448 | _ACEOF | ||
2449 | |||
2450 | cat >>confdefs.h <<_ACEOF | ||
2451 | #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" | ||
2452 | _ACEOF | ||
2453 | |||
2454 | cat >>confdefs.h <<_ACEOF | ||
2455 | #define PACKAGE_URL "$PACKAGE_URL" | ||
2456 | _ACEOF | ||
2457 | |||
2458 | |||
2459 | # Let the site file select an alternate cache file if it wants to. | ||
2460 | # Prefer an explicitly selected file to automatically selected ones. | ||
2461 | ac_site_file1=NONE | ||
2462 | ac_site_file2=NONE | ||
2463 | if test -n "$CONFIG_SITE"; then | ||
2464 | # We do not want a PATH search for config.site. | ||
2465 | case $CONFIG_SITE in #(( | ||
2466 | -*) ac_site_file1=./$CONFIG_SITE;; | ||
2467 | */*) ac_site_file1=$CONFIG_SITE;; | ||
2468 | *) ac_site_file1=./$CONFIG_SITE;; | ||
2469 | esac | ||
2470 | elif test "x$prefix" != xNONE; then | ||
2471 | ac_site_file1=$prefix/share/config.site | ||
2472 | ac_site_file2=$prefix/etc/config.site | ||
2473 | else | ||
2474 | ac_site_file1=$ac_default_prefix/share/config.site | ||
2475 | ac_site_file2=$ac_default_prefix/etc/config.site | ||
2476 | fi | ||
2477 | for ac_site_file in "$ac_site_file1" "$ac_site_file2" | ||
2478 | do | ||
2479 | test "x$ac_site_file" = xNONE && continue | ||
2480 | if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then | ||
2481 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 | ||
2482 | $as_echo "$as_me: loading site script $ac_site_file" >&6;} | ||
2483 | sed 's/^/| /' "$ac_site_file" >&5 | ||
2484 | . "$ac_site_file" \ | ||
2485 | || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2486 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2487 | as_fn_error $? "failed to load site script $ac_site_file | ||
2488 | See \`config.log' for more details" "$LINENO" 5; } | ||
2489 | fi | ||
2490 | done | ||
2491 | |||
2492 | if test -r "$cache_file"; then | ||
2493 | # Some versions of bash will fail to source /dev/null (special files | ||
2494 | # actually), so we avoid doing that. DJGPP emulates it as a regular file. | ||
2495 | if test /dev/null != "$cache_file" && test -f "$cache_file"; then | ||
2496 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 | ||
2497 | $as_echo "$as_me: loading cache $cache_file" >&6;} | ||
2498 | case $cache_file in | ||
2499 | [\\/]* | ?:[\\/]* ) . "$cache_file";; | ||
2500 | *) . "./$cache_file";; | ||
2501 | esac | ||
2502 | fi | ||
2503 | else | ||
2504 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 | ||
2505 | $as_echo "$as_me: creating cache $cache_file" >&6;} | ||
2506 | >$cache_file | ||
2507 | fi | ||
2508 | |||
2509 | # Check that the precious variables saved in the cache have kept the same | ||
2510 | # value. | ||
2511 | ac_cache_corrupted=false | ||
2512 | for ac_var in $ac_precious_vars; do | ||
2513 | eval ac_old_set=\$ac_cv_env_${ac_var}_set | ||
2514 | eval ac_new_set=\$ac_env_${ac_var}_set | ||
2515 | eval ac_old_val=\$ac_cv_env_${ac_var}_value | ||
2516 | eval ac_new_val=\$ac_env_${ac_var}_value | ||
2517 | case $ac_old_set,$ac_new_set in | ||
2518 | set,) | ||
2519 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 | ||
2520 | $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} | ||
2521 | ac_cache_corrupted=: ;; | ||
2522 | ,set) | ||
2523 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 | ||
2524 | $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} | ||
2525 | ac_cache_corrupted=: ;; | ||
2526 | ,);; | ||
2527 | *) | ||
2528 | if test "x$ac_old_val" != "x$ac_new_val"; then | ||
2529 | # differences in whitespace do not lead to failure. | ||
2530 | ac_old_val_w=`echo x $ac_old_val` | ||
2531 | ac_new_val_w=`echo x $ac_new_val` | ||
2532 | if test "$ac_old_val_w" != "$ac_new_val_w"; then | ||
2533 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 | ||
2534 | $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} | ||
2535 | ac_cache_corrupted=: | ||
2536 | else | ||
2537 | { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 | ||
2538 | $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} | ||
2539 | eval $ac_var=\$ac_old_val | ||
2540 | fi | ||
2541 | { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 | ||
2542 | $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} | ||
2543 | { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 | ||
2544 | $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} | ||
2545 | fi;; | ||
2546 | esac | ||
2547 | # Pass precious variables to config.status. | ||
2548 | if test "$ac_new_set" = set; then | ||
2549 | case $ac_new_val in | ||
2550 | *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
2551 | *) ac_arg=$ac_var=$ac_new_val ;; | ||
2552 | esac | ||
2553 | case " $ac_configure_args " in | ||
2554 | *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. | ||
2555 | *) as_fn_append ac_configure_args " '$ac_arg'" ;; | ||
2556 | esac | ||
2557 | fi | ||
2558 | done | ||
2559 | if $ac_cache_corrupted; then | ||
2560 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2561 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2562 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 | ||
2563 | $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} | ||
2564 | as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 | ||
2565 | fi | ||
2566 | ## -------------------- ## | ||
2567 | ## Main body of script. ## | ||
2568 | ## -------------------- ## | ||
2569 | |||
2570 | ac_ext=c | ||
2571 | ac_cpp='$CPP $CPPFLAGS' | ||
2572 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2573 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2574 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2575 | |||
2576 | |||
2577 | |||
2578 | |||
2579 | ac_ext=c | ||
2580 | ac_cpp='$CPP $CPPFLAGS' | ||
2581 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2582 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2583 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2584 | |||
2585 | |||
2586 | ac_config_headers="$ac_config_headers config.h" | ||
2587 | |||
2588 | ac_ext=c | ||
2589 | ac_cpp='$CPP $CPPFLAGS' | ||
2590 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2591 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2592 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2593 | if test -n "$ac_tool_prefix"; then | ||
2594 | # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. | ||
2595 | set dummy ${ac_tool_prefix}gcc; ac_word=$2 | ||
2596 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2597 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2598 | if ${ac_cv_prog_CC+:} false; then : | ||
2599 | $as_echo_n "(cached) " >&6 | ||
2600 | else | ||
2601 | if test -n "$CC"; then | ||
2602 | ac_cv_prog_CC="$CC" # Let the user override the test. | ||
2603 | else | ||
2604 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2605 | for as_dir in $PATH | ||
2606 | do | ||
2607 | IFS=$as_save_IFS | ||
2608 | test -z "$as_dir" && as_dir=. | ||
2609 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2610 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2611 | ac_cv_prog_CC="${ac_tool_prefix}gcc" | ||
2612 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2613 | break 2 | ||
2614 | fi | ||
2615 | done | ||
2616 | done | ||
2617 | IFS=$as_save_IFS | ||
2618 | |||
2619 | fi | ||
2620 | fi | ||
2621 | CC=$ac_cv_prog_CC | ||
2622 | if test -n "$CC"; then | ||
2623 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 | ||
2624 | $as_echo "$CC" >&6; } | ||
2625 | else | ||
2626 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2627 | $as_echo "no" >&6; } | ||
2628 | fi | ||
2629 | |||
2630 | |||
2631 | fi | ||
2632 | if test -z "$ac_cv_prog_CC"; then | ||
2633 | ac_ct_CC=$CC | ||
2634 | # Extract the first word of "gcc", so it can be a program name with args. | ||
2635 | set dummy gcc; ac_word=$2 | ||
2636 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2637 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2638 | if ${ac_cv_prog_ac_ct_CC+:} false; then : | ||
2639 | $as_echo_n "(cached) " >&6 | ||
2640 | else | ||
2641 | if test -n "$ac_ct_CC"; then | ||
2642 | ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. | ||
2643 | else | ||
2644 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2645 | for as_dir in $PATH | ||
2646 | do | ||
2647 | IFS=$as_save_IFS | ||
2648 | test -z "$as_dir" && as_dir=. | ||
2649 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2650 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2651 | ac_cv_prog_ac_ct_CC="gcc" | ||
2652 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2653 | break 2 | ||
2654 | fi | ||
2655 | done | ||
2656 | done | ||
2657 | IFS=$as_save_IFS | ||
2658 | |||
2659 | fi | ||
2660 | fi | ||
2661 | ac_ct_CC=$ac_cv_prog_ac_ct_CC | ||
2662 | if test -n "$ac_ct_CC"; then | ||
2663 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 | ||
2664 | $as_echo "$ac_ct_CC" >&6; } | ||
2665 | else | ||
2666 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2667 | $as_echo "no" >&6; } | ||
2668 | fi | ||
2669 | |||
2670 | if test "x$ac_ct_CC" = x; then | ||
2671 | CC="" | ||
2672 | else | ||
2673 | case $cross_compiling:$ac_tool_warned in | ||
2674 | yes:) | ||
2675 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
2676 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
2677 | ac_tool_warned=yes ;; | ||
2678 | esac | ||
2679 | CC=$ac_ct_CC | ||
2680 | fi | ||
2681 | else | ||
2682 | CC="$ac_cv_prog_CC" | ||
2683 | fi | ||
2684 | |||
2685 | if test -z "$CC"; then | ||
2686 | if test -n "$ac_tool_prefix"; then | ||
2687 | # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. | ||
2688 | set dummy ${ac_tool_prefix}cc; ac_word=$2 | ||
2689 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2690 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2691 | if ${ac_cv_prog_CC+:} false; then : | ||
2692 | $as_echo_n "(cached) " >&6 | ||
2693 | else | ||
2694 | if test -n "$CC"; then | ||
2695 | ac_cv_prog_CC="$CC" # Let the user override the test. | ||
2696 | else | ||
2697 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2698 | for as_dir in $PATH | ||
2699 | do | ||
2700 | IFS=$as_save_IFS | ||
2701 | test -z "$as_dir" && as_dir=. | ||
2702 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2703 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2704 | ac_cv_prog_CC="${ac_tool_prefix}cc" | ||
2705 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2706 | break 2 | ||
2707 | fi | ||
2708 | done | ||
2709 | done | ||
2710 | IFS=$as_save_IFS | ||
2711 | |||
2712 | fi | ||
2713 | fi | ||
2714 | CC=$ac_cv_prog_CC | ||
2715 | if test -n "$CC"; then | ||
2716 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 | ||
2717 | $as_echo "$CC" >&6; } | ||
2718 | else | ||
2719 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2720 | $as_echo "no" >&6; } | ||
2721 | fi | ||
2722 | |||
2723 | |||
2724 | fi | ||
2725 | fi | ||
2726 | if test -z "$CC"; then | ||
2727 | # Extract the first word of "cc", so it can be a program name with args. | ||
2728 | set dummy cc; ac_word=$2 | ||
2729 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2730 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2731 | if ${ac_cv_prog_CC+:} false; then : | ||
2732 | $as_echo_n "(cached) " >&6 | ||
2733 | else | ||
2734 | if test -n "$CC"; then | ||
2735 | ac_cv_prog_CC="$CC" # Let the user override the test. | ||
2736 | else | ||
2737 | ac_prog_rejected=no | ||
2738 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2739 | for as_dir in $PATH | ||
2740 | do | ||
2741 | IFS=$as_save_IFS | ||
2742 | test -z "$as_dir" && as_dir=. | ||
2743 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2744 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2745 | if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then | ||
2746 | ac_prog_rejected=yes | ||
2747 | continue | ||
2748 | fi | ||
2749 | ac_cv_prog_CC="cc" | ||
2750 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2751 | break 2 | ||
2752 | fi | ||
2753 | done | ||
2754 | done | ||
2755 | IFS=$as_save_IFS | ||
2756 | |||
2757 | if test $ac_prog_rejected = yes; then | ||
2758 | # We found a bogon in the path, so make sure we never use it. | ||
2759 | set dummy $ac_cv_prog_CC | ||
2760 | shift | ||
2761 | if test $# != 0; then | ||
2762 | # We chose a different compiler from the bogus one. | ||
2763 | # However, it has the same basename, so the bogon will be chosen | ||
2764 | # first if we set CC to just the basename; use the full file name. | ||
2765 | shift | ||
2766 | ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" | ||
2767 | fi | ||
2768 | fi | ||
2769 | fi | ||
2770 | fi | ||
2771 | CC=$ac_cv_prog_CC | ||
2772 | if test -n "$CC"; then | ||
2773 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 | ||
2774 | $as_echo "$CC" >&6; } | ||
2775 | else | ||
2776 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2777 | $as_echo "no" >&6; } | ||
2778 | fi | ||
2779 | |||
2780 | |||
2781 | fi | ||
2782 | if test -z "$CC"; then | ||
2783 | if test -n "$ac_tool_prefix"; then | ||
2784 | for ac_prog in cl.exe | ||
2785 | do | ||
2786 | # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. | ||
2787 | set dummy $ac_tool_prefix$ac_prog; ac_word=$2 | ||
2788 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2789 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2790 | if ${ac_cv_prog_CC+:} false; then : | ||
2791 | $as_echo_n "(cached) " >&6 | ||
2792 | else | ||
2793 | if test -n "$CC"; then | ||
2794 | ac_cv_prog_CC="$CC" # Let the user override the test. | ||
2795 | else | ||
2796 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2797 | for as_dir in $PATH | ||
2798 | do | ||
2799 | IFS=$as_save_IFS | ||
2800 | test -z "$as_dir" && as_dir=. | ||
2801 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2802 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2803 | ac_cv_prog_CC="$ac_tool_prefix$ac_prog" | ||
2804 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2805 | break 2 | ||
2806 | fi | ||
2807 | done | ||
2808 | done | ||
2809 | IFS=$as_save_IFS | ||
2810 | |||
2811 | fi | ||
2812 | fi | ||
2813 | CC=$ac_cv_prog_CC | ||
2814 | if test -n "$CC"; then | ||
2815 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 | ||
2816 | $as_echo "$CC" >&6; } | ||
2817 | else | ||
2818 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2819 | $as_echo "no" >&6; } | ||
2820 | fi | ||
2821 | |||
2822 | |||
2823 | test -n "$CC" && break | ||
2824 | done | ||
2825 | fi | ||
2826 | if test -z "$CC"; then | ||
2827 | ac_ct_CC=$CC | ||
2828 | for ac_prog in cl.exe | ||
2829 | do | ||
2830 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
2831 | set dummy $ac_prog; ac_word=$2 | ||
2832 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2833 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2834 | if ${ac_cv_prog_ac_ct_CC+:} false; then : | ||
2835 | $as_echo_n "(cached) " >&6 | ||
2836 | else | ||
2837 | if test -n "$ac_ct_CC"; then | ||
2838 | ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. | ||
2839 | else | ||
2840 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2841 | for as_dir in $PATH | ||
2842 | do | ||
2843 | IFS=$as_save_IFS | ||
2844 | test -z "$as_dir" && as_dir=. | ||
2845 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2846 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
2847 | ac_cv_prog_ac_ct_CC="$ac_prog" | ||
2848 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2849 | break 2 | ||
2850 | fi | ||
2851 | done | ||
2852 | done | ||
2853 | IFS=$as_save_IFS | ||
2854 | |||
2855 | fi | ||
2856 | fi | ||
2857 | ac_ct_CC=$ac_cv_prog_ac_ct_CC | ||
2858 | if test -n "$ac_ct_CC"; then | ||
2859 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 | ||
2860 | $as_echo "$ac_ct_CC" >&6; } | ||
2861 | else | ||
2862 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2863 | $as_echo "no" >&6; } | ||
2864 | fi | ||
2865 | |||
2866 | |||
2867 | test -n "$ac_ct_CC" && break | ||
2868 | done | ||
2869 | |||
2870 | if test "x$ac_ct_CC" = x; then | ||
2871 | CC="" | ||
2872 | else | ||
2873 | case $cross_compiling:$ac_tool_warned in | ||
2874 | yes:) | ||
2875 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
2876 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
2877 | ac_tool_warned=yes ;; | ||
2878 | esac | ||
2879 | CC=$ac_ct_CC | ||
2880 | fi | ||
2881 | fi | ||
2882 | |||
2883 | fi | ||
2884 | |||
2885 | |||
2886 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2887 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2888 | as_fn_error $? "no acceptable C compiler found in \$PATH | ||
2889 | See \`config.log' for more details" "$LINENO" 5; } | ||
2890 | |||
2891 | # Provide some information about the compiler. | ||
2892 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 | ||
2893 | set X $ac_compile | ||
2894 | ac_compiler=$2 | ||
2895 | for ac_option in --version -v -V -qversion; do | ||
2896 | { { ac_try="$ac_compiler $ac_option >&5" | ||
2897 | case "(($ac_try" in | ||
2898 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2899 | *) ac_try_echo=$ac_try;; | ||
2900 | esac | ||
2901 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2902 | $as_echo "$ac_try_echo"; } >&5 | ||
2903 | (eval "$ac_compiler $ac_option >&5") 2>conftest.err | ||
2904 | ac_status=$? | ||
2905 | if test -s conftest.err; then | ||
2906 | sed '10a\ | ||
2907 | ... rest of stderr output deleted ... | ||
2908 | 10q' conftest.err >conftest.er1 | ||
2909 | cat conftest.er1 >&5 | ||
2910 | fi | ||
2911 | rm -f conftest.er1 conftest.err | ||
2912 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2913 | test $ac_status = 0; } | ||
2914 | done | ||
2915 | |||
2916 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2917 | /* end confdefs.h. */ | ||
2918 | |||
2919 | int | ||
2920 | main () | ||
2921 | { | ||
2922 | |||
2923 | ; | ||
2924 | return 0; | ||
2925 | } | ||
2926 | _ACEOF | ||
2927 | ac_clean_files_save=$ac_clean_files | ||
2928 | ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" | ||
2929 | # Try to create an executable without -o first, disregard a.out. | ||
2930 | # It will help us diagnose broken compilers, and finding out an intuition | ||
2931 | # of exeext. | ||
2932 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 | ||
2933 | $as_echo_n "checking whether the C compiler works... " >&6; } | ||
2934 | ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` | ||
2935 | |||
2936 | # The possible output files: | ||
2937 | ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" | ||
2938 | |||
2939 | ac_rmfiles= | ||
2940 | for ac_file in $ac_files | ||
2941 | do | ||
2942 | case $ac_file in | ||
2943 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; | ||
2944 | * ) ac_rmfiles="$ac_rmfiles $ac_file";; | ||
2945 | esac | ||
2946 | done | ||
2947 | rm -f $ac_rmfiles | ||
2948 | |||
2949 | if { { ac_try="$ac_link_default" | ||
2950 | case "(($ac_try" in | ||
2951 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2952 | *) ac_try_echo=$ac_try;; | ||
2953 | esac | ||
2954 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2955 | $as_echo "$ac_try_echo"; } >&5 | ||
2956 | (eval "$ac_link_default") 2>&5 | ||
2957 | ac_status=$? | ||
2958 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2959 | test $ac_status = 0; }; then : | ||
2960 | # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. | ||
2961 | # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' | ||
2962 | # in a Makefile. We should not override ac_cv_exeext if it was cached, | ||
2963 | # so that the user can short-circuit this test for compilers unknown to | ||
2964 | # Autoconf. | ||
2965 | for ac_file in $ac_files '' | ||
2966 | do | ||
2967 | test -f "$ac_file" || continue | ||
2968 | case $ac_file in | ||
2969 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) | ||
2970 | ;; | ||
2971 | [ab].out ) | ||
2972 | # We found the default executable, but exeext='' is most | ||
2973 | # certainly right. | ||
2974 | break;; | ||
2975 | *.* ) | ||
2976 | if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; | ||
2977 | then :; else | ||
2978 | ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` | ||
2979 | fi | ||
2980 | # We set ac_cv_exeext here because the later test for it is not | ||
2981 | # safe: cross compilers may not add the suffix if given an `-o' | ||
2982 | # argument, so we may need to know it at that point already. | ||
2983 | # Even if this section looks crufty: it has the advantage of | ||
2984 | # actually working. | ||
2985 | break;; | ||
2986 | * ) | ||
2987 | break;; | ||
2988 | esac | ||
2989 | done | ||
2990 | test "$ac_cv_exeext" = no && ac_cv_exeext= | ||
2991 | |||
2992 | else | ||
2993 | ac_file='' | ||
2994 | fi | ||
2995 | if test -z "$ac_file"; then : | ||
2996 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2997 | $as_echo "no" >&6; } | ||
2998 | $as_echo "$as_me: failed program was:" >&5 | ||
2999 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
3000 | |||
3001 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3002 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3003 | as_fn_error 77 "C compiler cannot create executables | ||
3004 | See \`config.log' for more details" "$LINENO" 5; } | ||
3005 | else | ||
3006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
3007 | $as_echo "yes" >&6; } | ||
3008 | fi | ||
3009 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 | ||
3010 | $as_echo_n "checking for C compiler default output file name... " >&6; } | ||
3011 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 | ||
3012 | $as_echo "$ac_file" >&6; } | ||
3013 | ac_exeext=$ac_cv_exeext | ||
3014 | |||
3015 | rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out | ||
3016 | ac_clean_files=$ac_clean_files_save | ||
3017 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 | ||
3018 | $as_echo_n "checking for suffix of executables... " >&6; } | ||
3019 | if { { ac_try="$ac_link" | ||
3020 | case "(($ac_try" in | ||
3021 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
3022 | *) ac_try_echo=$ac_try;; | ||
3023 | esac | ||
3024 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
3025 | $as_echo "$ac_try_echo"; } >&5 | ||
3026 | (eval "$ac_link") 2>&5 | ||
3027 | ac_status=$? | ||
3028 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
3029 | test $ac_status = 0; }; then : | ||
3030 | # If both `conftest.exe' and `conftest' are `present' (well, observable) | ||
3031 | # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will | ||
3032 | # work properly (i.e., refer to `conftest.exe'), while it won't with | ||
3033 | # `rm'. | ||
3034 | for ac_file in conftest.exe conftest conftest.*; do | ||
3035 | test -f "$ac_file" || continue | ||
3036 | case $ac_file in | ||
3037 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; | ||
3038 | *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` | ||
3039 | break;; | ||
3040 | * ) break;; | ||
3041 | esac | ||
3042 | done | ||
3043 | else | ||
3044 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3045 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3046 | as_fn_error $? "cannot compute suffix of executables: cannot compile and link | ||
3047 | See \`config.log' for more details" "$LINENO" 5; } | ||
3048 | fi | ||
3049 | rm -f conftest conftest$ac_cv_exeext | ||
3050 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 | ||
3051 | $as_echo "$ac_cv_exeext" >&6; } | ||
3052 | |||
3053 | rm -f conftest.$ac_ext | ||
3054 | EXEEXT=$ac_cv_exeext | ||
3055 | ac_exeext=$EXEEXT | ||
3056 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3057 | /* end confdefs.h. */ | ||
3058 | #include <stdio.h> | ||
3059 | int | ||
3060 | main () | ||
3061 | { | ||
3062 | FILE *f = fopen ("conftest.out", "w"); | ||
3063 | return ferror (f) || fclose (f) != 0; | ||
3064 | |||
3065 | ; | ||
3066 | return 0; | ||
3067 | } | ||
3068 | _ACEOF | ||
3069 | ac_clean_files="$ac_clean_files conftest.out" | ||
3070 | # Check that the compiler produces executables we can run. If not, either | ||
3071 | # the compiler is broken, or we cross compile. | ||
3072 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 | ||
3073 | $as_echo_n "checking whether we are cross compiling... " >&6; } | ||
3074 | if test "$cross_compiling" != yes; then | ||
3075 | { { ac_try="$ac_link" | ||
3076 | case "(($ac_try" in | ||
3077 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
3078 | *) ac_try_echo=$ac_try;; | ||
3079 | esac | ||
3080 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
3081 | $as_echo "$ac_try_echo"; } >&5 | ||
3082 | (eval "$ac_link") 2>&5 | ||
3083 | ac_status=$? | ||
3084 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
3085 | test $ac_status = 0; } | ||
3086 | if { ac_try='./conftest$ac_cv_exeext' | ||
3087 | { { case "(($ac_try" in | ||
3088 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
3089 | *) ac_try_echo=$ac_try;; | ||
3090 | esac | ||
3091 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
3092 | $as_echo "$ac_try_echo"; } >&5 | ||
3093 | (eval "$ac_try") 2>&5 | ||
3094 | ac_status=$? | ||
3095 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
3096 | test $ac_status = 0; }; }; then | ||
3097 | cross_compiling=no | ||
3098 | else | ||
3099 | if test "$cross_compiling" = maybe; then | ||
3100 | cross_compiling=yes | ||
3101 | else | ||
3102 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3103 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3104 | as_fn_error $? "cannot run C compiled programs. | ||
3105 | If you meant to cross compile, use \`--host'. | ||
3106 | See \`config.log' for more details" "$LINENO" 5; } | ||
3107 | fi | ||
3108 | fi | ||
3109 | fi | ||
3110 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 | ||
3111 | $as_echo "$cross_compiling" >&6; } | ||
3112 | |||
3113 | rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out | ||
3114 | ac_clean_files=$ac_clean_files_save | ||
3115 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 | ||
3116 | $as_echo_n "checking for suffix of object files... " >&6; } | ||
3117 | if ${ac_cv_objext+:} false; then : | ||
3118 | $as_echo_n "(cached) " >&6 | ||
3119 | else | ||
3120 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3121 | /* end confdefs.h. */ | ||
3122 | |||
3123 | int | ||
3124 | main () | ||
3125 | { | ||
3126 | |||
3127 | ; | ||
3128 | return 0; | ||
3129 | } | ||
3130 | _ACEOF | ||
3131 | rm -f conftest.o conftest.obj | ||
3132 | if { { ac_try="$ac_compile" | ||
3133 | case "(($ac_try" in | ||
3134 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
3135 | *) ac_try_echo=$ac_try;; | ||
3136 | esac | ||
3137 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
3138 | $as_echo "$ac_try_echo"; } >&5 | ||
3139 | (eval "$ac_compile") 2>&5 | ||
3140 | ac_status=$? | ||
3141 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
3142 | test $ac_status = 0; }; then : | ||
3143 | for ac_file in conftest.o conftest.obj conftest.*; do | ||
3144 | test -f "$ac_file" || continue; | ||
3145 | case $ac_file in | ||
3146 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; | ||
3147 | *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` | ||
3148 | break;; | ||
3149 | esac | ||
3150 | done | ||
3151 | else | ||
3152 | $as_echo "$as_me: failed program was:" >&5 | ||
3153 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
3154 | |||
3155 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3156 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3157 | as_fn_error $? "cannot compute suffix of object files: cannot compile | ||
3158 | See \`config.log' for more details" "$LINENO" 5; } | ||
3159 | fi | ||
3160 | rm -f conftest.$ac_cv_objext conftest.$ac_ext | ||
3161 | fi | ||
3162 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 | ||
3163 | $as_echo "$ac_cv_objext" >&6; } | ||
3164 | OBJEXT=$ac_cv_objext | ||
3165 | ac_objext=$OBJEXT | ||
3166 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 | ||
3167 | $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } | ||
3168 | if ${ac_cv_c_compiler_gnu+:} false; then : | ||
3169 | $as_echo_n "(cached) " >&6 | ||
3170 | else | ||
3171 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3172 | /* end confdefs.h. */ | ||
3173 | |||
3174 | int | ||
3175 | main () | ||
3176 | { | ||
3177 | #ifndef __GNUC__ | ||
3178 | choke me | ||
3179 | #endif | ||
3180 | |||
3181 | ; | ||
3182 | return 0; | ||
3183 | } | ||
3184 | _ACEOF | ||
3185 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3186 | ac_compiler_gnu=yes | ||
3187 | else | ||
3188 | ac_compiler_gnu=no | ||
3189 | fi | ||
3190 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3191 | ac_cv_c_compiler_gnu=$ac_compiler_gnu | ||
3192 | |||
3193 | fi | ||
3194 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 | ||
3195 | $as_echo "$ac_cv_c_compiler_gnu" >&6; } | ||
3196 | if test $ac_compiler_gnu = yes; then | ||
3197 | GCC=yes | ||
3198 | else | ||
3199 | GCC= | ||
3200 | fi | ||
3201 | ac_test_CFLAGS=${CFLAGS+set} | ||
3202 | ac_save_CFLAGS=$CFLAGS | ||
3203 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 | ||
3204 | $as_echo_n "checking whether $CC accepts -g... " >&6; } | ||
3205 | if ${ac_cv_prog_cc_g+:} false; then : | ||
3206 | $as_echo_n "(cached) " >&6 | ||
3207 | else | ||
3208 | ac_save_c_werror_flag=$ac_c_werror_flag | ||
3209 | ac_c_werror_flag=yes | ||
3210 | ac_cv_prog_cc_g=no | ||
3211 | CFLAGS="-g" | ||
3212 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3213 | /* end confdefs.h. */ | ||
3214 | |||
3215 | int | ||
3216 | main () | ||
3217 | { | ||
3218 | |||
3219 | ; | ||
3220 | return 0; | ||
3221 | } | ||
3222 | _ACEOF | ||
3223 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3224 | ac_cv_prog_cc_g=yes | ||
3225 | else | ||
3226 | CFLAGS="" | ||
3227 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3228 | /* end confdefs.h. */ | ||
3229 | |||
3230 | int | ||
3231 | main () | ||
3232 | { | ||
3233 | |||
3234 | ; | ||
3235 | return 0; | ||
3236 | } | ||
3237 | _ACEOF | ||
3238 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3239 | |||
3240 | else | ||
3241 | ac_c_werror_flag=$ac_save_c_werror_flag | ||
3242 | CFLAGS="-g" | ||
3243 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3244 | /* end confdefs.h. */ | ||
3245 | |||
3246 | int | ||
3247 | main () | ||
3248 | { | ||
3249 | |||
3250 | ; | ||
3251 | return 0; | ||
3252 | } | ||
3253 | _ACEOF | ||
3254 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3255 | ac_cv_prog_cc_g=yes | ||
3256 | fi | ||
3257 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3258 | fi | ||
3259 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3260 | fi | ||
3261 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3262 | ac_c_werror_flag=$ac_save_c_werror_flag | ||
3263 | fi | ||
3264 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 | ||
3265 | $as_echo "$ac_cv_prog_cc_g" >&6; } | ||
3266 | if test "$ac_test_CFLAGS" = set; then | ||
3267 | CFLAGS=$ac_save_CFLAGS | ||
3268 | elif test $ac_cv_prog_cc_g = yes; then | ||
3269 | if test "$GCC" = yes; then | ||
3270 | CFLAGS="-g -O2" | ||
3271 | else | ||
3272 | CFLAGS="-g" | ||
3273 | fi | ||
3274 | else | ||
3275 | if test "$GCC" = yes; then | ||
3276 | CFLAGS="-O2" | ||
3277 | else | ||
3278 | CFLAGS= | ||
3279 | fi | ||
3280 | fi | ||
3281 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 | ||
3282 | $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } | ||
3283 | if ${ac_cv_prog_cc_c89+:} false; then : | ||
3284 | $as_echo_n "(cached) " >&6 | ||
3285 | else | ||
3286 | ac_cv_prog_cc_c89=no | ||
3287 | ac_save_CC=$CC | ||
3288 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3289 | /* end confdefs.h. */ | ||
3290 | #include <stdarg.h> | ||
3291 | #include <stdio.h> | ||
3292 | #include <sys/types.h> | ||
3293 | #include <sys/stat.h> | ||
3294 | /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ | ||
3295 | struct buf { int x; }; | ||
3296 | FILE * (*rcsopen) (struct buf *, struct stat *, int); | ||
3297 | static char *e (p, i) | ||
3298 | char **p; | ||
3299 | int i; | ||
3300 | { | ||
3301 | return p[i]; | ||
3302 | } | ||
3303 | static char *f (char * (*g) (char **, int), char **p, ...) | ||
3304 | { | ||
3305 | char *s; | ||
3306 | va_list v; | ||
3307 | va_start (v,p); | ||
3308 | s = g (p, va_arg (v,int)); | ||
3309 | va_end (v); | ||
3310 | return s; | ||
3311 | } | ||
3312 | |||
3313 | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | ||
3314 | function prototypes and stuff, but not '\xHH' hex character constants. | ||
3315 | These don't provoke an error unfortunately, instead are silently treated | ||
3316 | as 'x'. The following induces an error, until -std is added to get | ||
3317 | proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an | ||
3318 | array size at least. It's necessary to write '\x00'==0 to get something | ||
3319 | that's true only with -std. */ | ||
3320 | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | ||
3321 | |||
3322 | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | ||
3323 | inside strings and character constants. */ | ||
3324 | #define FOO(x) 'x' | ||
3325 | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | ||
3326 | |||
3327 | int test (int i, double x); | ||
3328 | struct s1 {int (*f) (int a);}; | ||
3329 | struct s2 {int (*f) (double a);}; | ||
3330 | int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); | ||
3331 | int argc; | ||
3332 | char **argv; | ||
3333 | int | ||
3334 | main () | ||
3335 | { | ||
3336 | return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; | ||
3337 | ; | ||
3338 | return 0; | ||
3339 | } | ||
3340 | _ACEOF | ||
3341 | for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ | ||
3342 | -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" | ||
3343 | do | ||
3344 | CC="$ac_save_CC $ac_arg" | ||
3345 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3346 | ac_cv_prog_cc_c89=$ac_arg | ||
3347 | fi | ||
3348 | rm -f core conftest.err conftest.$ac_objext | ||
3349 | test "x$ac_cv_prog_cc_c89" != "xno" && break | ||
3350 | done | ||
3351 | rm -f conftest.$ac_ext | ||
3352 | CC=$ac_save_CC | ||
3353 | |||
3354 | fi | ||
3355 | # AC_CACHE_VAL | ||
3356 | case "x$ac_cv_prog_cc_c89" in | ||
3357 | x) | ||
3358 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 | ||
3359 | $as_echo "none needed" >&6; } ;; | ||
3360 | xno) | ||
3361 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 | ||
3362 | $as_echo "unsupported" >&6; } ;; | ||
3363 | *) | ||
3364 | CC="$CC $ac_cv_prog_cc_c89" | ||
3365 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 | ||
3366 | $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; | ||
3367 | esac | ||
3368 | if test "x$ac_cv_prog_cc_c89" != xno; then : | ||
3369 | |||
3370 | fi | ||
3371 | |||
3372 | ac_ext=c | ||
3373 | ac_cpp='$CPP $CPPFLAGS' | ||
3374 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3375 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3376 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3377 | |||
3378 | ac_aux_dir= | ||
3379 | for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do | ||
3380 | if test -f "$ac_dir/install-sh"; then | ||
3381 | ac_aux_dir=$ac_dir | ||
3382 | ac_install_sh="$ac_aux_dir/install-sh -c" | ||
3383 | break | ||
3384 | elif test -f "$ac_dir/install.sh"; then | ||
3385 | ac_aux_dir=$ac_dir | ||
3386 | ac_install_sh="$ac_aux_dir/install.sh -c" | ||
3387 | break | ||
3388 | elif test -f "$ac_dir/shtool"; then | ||
3389 | ac_aux_dir=$ac_dir | ||
3390 | ac_install_sh="$ac_aux_dir/shtool install -c" | ||
3391 | break | ||
3392 | fi | ||
3393 | done | ||
3394 | if test -z "$ac_aux_dir"; then | ||
3395 | as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 | ||
3396 | fi | ||
3397 | |||
3398 | # These three variables are undocumented and unsupported, | ||
3399 | # and are intended to be withdrawn in a future Autoconf release. | ||
3400 | # They can cause serious problems if a builder's source tree is in a directory | ||
3401 | # whose full name contains unusual characters. | ||
3402 | ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. | ||
3403 | ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. | ||
3404 | ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. | ||
3405 | |||
3406 | |||
3407 | # Make sure we can run config.sub. | ||
3408 | $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || | ||
3409 | as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 | ||
3410 | |||
3411 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 | ||
3412 | $as_echo_n "checking build system type... " >&6; } | ||
3413 | if ${ac_cv_build+:} false; then : | ||
3414 | $as_echo_n "(cached) " >&6 | ||
3415 | else | ||
3416 | ac_build_alias=$build_alias | ||
3417 | test "x$ac_build_alias" = x && | ||
3418 | ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` | ||
3419 | test "x$ac_build_alias" = x && | ||
3420 | as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 | ||
3421 | ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || | ||
3422 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 | ||
3423 | |||
3424 | fi | ||
3425 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 | ||
3426 | $as_echo "$ac_cv_build" >&6; } | ||
3427 | case $ac_cv_build in | ||
3428 | *-*-*) ;; | ||
3429 | *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; | ||
3430 | esac | ||
3431 | build=$ac_cv_build | ||
3432 | ac_save_IFS=$IFS; IFS='-' | ||
3433 | set x $ac_cv_build | ||
3434 | shift | ||
3435 | build_cpu=$1 | ||
3436 | build_vendor=$2 | ||
3437 | shift; shift | ||
3438 | # Remember, the first character of IFS is used to create $*, | ||
3439 | # except with old shells: | ||
3440 | build_os=$* | ||
3441 | IFS=$ac_save_IFS | ||
3442 | case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac | ||
3443 | |||
3444 | |||
3445 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 | ||
3446 | $as_echo_n "checking host system type... " >&6; } | ||
3447 | if ${ac_cv_host+:} false; then : | ||
3448 | $as_echo_n "(cached) " >&6 | ||
3449 | else | ||
3450 | if test "x$host_alias" = x; then | ||
3451 | ac_cv_host=$ac_cv_build | ||
3452 | else | ||
3453 | ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || | ||
3454 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 | ||
3455 | fi | ||
3456 | |||
3457 | fi | ||
3458 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 | ||
3459 | $as_echo "$ac_cv_host" >&6; } | ||
3460 | case $ac_cv_host in | ||
3461 | *-*-*) ;; | ||
3462 | *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; | ||
3463 | esac | ||
3464 | host=$ac_cv_host | ||
3465 | ac_save_IFS=$IFS; IFS='-' | ||
3466 | set x $ac_cv_host | ||
3467 | shift | ||
3468 | host_cpu=$1 | ||
3469 | host_vendor=$2 | ||
3470 | shift; shift | ||
3471 | # Remember, the first character of IFS is used to create $*, | ||
3472 | # except with old shells: | ||
3473 | host_os=$* | ||
3474 | IFS=$ac_save_IFS | ||
3475 | case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac | ||
3476 | |||
3477 | |||
3478 | |||
3479 | ac_ext=c | ||
3480 | ac_cpp='$CPP $CPPFLAGS' | ||
3481 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3482 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3483 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3484 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 | ||
3485 | $as_echo_n "checking how to run the C preprocessor... " >&6; } | ||
3486 | # On Suns, sometimes $CPP names a directory. | ||
3487 | if test -n "$CPP" && test -d "$CPP"; then | ||
3488 | CPP= | ||
3489 | fi | ||
3490 | if test -z "$CPP"; then | ||
3491 | if ${ac_cv_prog_CPP+:} false; then : | ||
3492 | $as_echo_n "(cached) " >&6 | ||
3493 | else | ||
3494 | # Double quotes because CPP needs to be expanded | ||
3495 | for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" | ||
3496 | do | ||
3497 | ac_preproc_ok=false | ||
3498 | for ac_c_preproc_warn_flag in '' yes | ||
3499 | do | ||
3500 | # Use a header file that comes with gcc, so configuring glibc | ||
3501 | # with a fresh cross-compiler works. | ||
3502 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
3503 | # <limits.h> exists even on freestanding compilers. | ||
3504 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
3505 | # not just through cpp. "Syntax error" is here to catch this case. | ||
3506 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3507 | /* end confdefs.h. */ | ||
3508 | #ifdef __STDC__ | ||
3509 | # include <limits.h> | ||
3510 | #else | ||
3511 | # include <assert.h> | ||
3512 | #endif | ||
3513 | Syntax error | ||
3514 | _ACEOF | ||
3515 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3516 | |||
3517 | else | ||
3518 | # Broken: fails on valid input. | ||
3519 | continue | ||
3520 | fi | ||
3521 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3522 | |||
3523 | # OK, works on sane cases. Now check whether nonexistent headers | ||
3524 | # can be detected and how. | ||
3525 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3526 | /* end confdefs.h. */ | ||
3527 | #include <ac_nonexistent.h> | ||
3528 | _ACEOF | ||
3529 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3530 | # Broken: success on invalid input. | ||
3531 | continue | ||
3532 | else | ||
3533 | # Passes both tests. | ||
3534 | ac_preproc_ok=: | ||
3535 | break | ||
3536 | fi | ||
3537 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3538 | |||
3539 | done | ||
3540 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
3541 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
3542 | if $ac_preproc_ok; then : | ||
3543 | break | ||
3544 | fi | ||
3545 | |||
3546 | done | ||
3547 | ac_cv_prog_CPP=$CPP | ||
3548 | |||
3549 | fi | ||
3550 | CPP=$ac_cv_prog_CPP | ||
3551 | else | ||
3552 | ac_cv_prog_CPP=$CPP | ||
3553 | fi | ||
3554 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 | ||
3555 | $as_echo "$CPP" >&6; } | ||
3556 | ac_preproc_ok=false | ||
3557 | for ac_c_preproc_warn_flag in '' yes | ||
3558 | do | ||
3559 | # Use a header file that comes with gcc, so configuring glibc | ||
3560 | # with a fresh cross-compiler works. | ||
3561 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
3562 | # <limits.h> exists even on freestanding compilers. | ||
3563 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
3564 | # not just through cpp. "Syntax error" is here to catch this case. | ||
3565 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3566 | /* end confdefs.h. */ | ||
3567 | #ifdef __STDC__ | ||
3568 | # include <limits.h> | ||
3569 | #else | ||
3570 | # include <assert.h> | ||
3571 | #endif | ||
3572 | Syntax error | ||
3573 | _ACEOF | ||
3574 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3575 | |||
3576 | else | ||
3577 | # Broken: fails on valid input. | ||
3578 | continue | ||
3579 | fi | ||
3580 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3581 | |||
3582 | # OK, works on sane cases. Now check whether nonexistent headers | ||
3583 | # can be detected and how. | ||
3584 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3585 | /* end confdefs.h. */ | ||
3586 | #include <ac_nonexistent.h> | ||
3587 | _ACEOF | ||
3588 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3589 | # Broken: success on invalid input. | ||
3590 | continue | ||
3591 | else | ||
3592 | # Passes both tests. | ||
3593 | ac_preproc_ok=: | ||
3594 | break | ||
3595 | fi | ||
3596 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3597 | |||
3598 | done | ||
3599 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
3600 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
3601 | if $ac_preproc_ok; then : | ||
3602 | |||
3603 | else | ||
3604 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3605 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3606 | as_fn_error $? "C preprocessor \"$CPP\" fails sanity check | ||
3607 | See \`config.log' for more details" "$LINENO" 5; } | ||
3608 | fi | ||
3609 | |||
3610 | ac_ext=c | ||
3611 | ac_cpp='$CPP $CPPFLAGS' | ||
3612 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3613 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3614 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3615 | |||
3616 | |||
3617 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 | ||
3618 | $as_echo_n "checking for grep that handles long lines and -e... " >&6; } | ||
3619 | if ${ac_cv_path_GREP+:} false; then : | ||
3620 | $as_echo_n "(cached) " >&6 | ||
3621 | else | ||
3622 | if test -z "$GREP"; then | ||
3623 | ac_path_GREP_found=false | ||
3624 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
3625 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
3626 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
3627 | do | ||
3628 | IFS=$as_save_IFS | ||
3629 | test -z "$as_dir" && as_dir=. | ||
3630 | for ac_prog in grep ggrep; do | ||
3631 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
3632 | ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" | ||
3633 | { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue | ||
3634 | # Check for GNU ac_path_GREP and select it if it is found. | ||
3635 | # Check for GNU $ac_path_GREP | ||
3636 | case `"$ac_path_GREP" --version 2>&1` in | ||
3637 | *GNU*) | ||
3638 | ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; | ||
3639 | *) | ||
3640 | ac_count=0 | ||
3641 | $as_echo_n 0123456789 >"conftest.in" | ||
3642 | while : | ||
3643 | do | ||
3644 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
3645 | mv "conftest.tmp" "conftest.in" | ||
3646 | cp "conftest.in" "conftest.nl" | ||
3647 | $as_echo 'GREP' >> "conftest.nl" | ||
3648 | "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
3649 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
3650 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
3651 | if test $ac_count -gt ${ac_path_GREP_max-0}; then | ||
3652 | # Best one so far, save it but keep looking for a better one | ||
3653 | ac_cv_path_GREP="$ac_path_GREP" | ||
3654 | ac_path_GREP_max=$ac_count | ||
3655 | fi | ||
3656 | # 10*(2^10) chars as input seems more than enough | ||
3657 | test $ac_count -gt 10 && break | ||
3658 | done | ||
3659 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
3660 | esac | ||
3661 | |||
3662 | $ac_path_GREP_found && break 3 | ||
3663 | done | ||
3664 | done | ||
3665 | done | ||
3666 | IFS=$as_save_IFS | ||
3667 | if test -z "$ac_cv_path_GREP"; then | ||
3668 | as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
3669 | fi | ||
3670 | else | ||
3671 | ac_cv_path_GREP=$GREP | ||
3672 | fi | ||
3673 | |||
3674 | fi | ||
3675 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 | ||
3676 | $as_echo "$ac_cv_path_GREP" >&6; } | ||
3677 | GREP="$ac_cv_path_GREP" | ||
3678 | |||
3679 | |||
3680 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 | ||
3681 | $as_echo_n "checking for egrep... " >&6; } | ||
3682 | if ${ac_cv_path_EGREP+:} false; then : | ||
3683 | $as_echo_n "(cached) " >&6 | ||
3684 | else | ||
3685 | if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 | ||
3686 | then ac_cv_path_EGREP="$GREP -E" | ||
3687 | else | ||
3688 | if test -z "$EGREP"; then | ||
3689 | ac_path_EGREP_found=false | ||
3690 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
3691 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
3692 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
3693 | do | ||
3694 | IFS=$as_save_IFS | ||
3695 | test -z "$as_dir" && as_dir=. | ||
3696 | for ac_prog in egrep; do | ||
3697 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
3698 | ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" | ||
3699 | { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue | ||
3700 | # Check for GNU ac_path_EGREP and select it if it is found. | ||
3701 | # Check for GNU $ac_path_EGREP | ||
3702 | case `"$ac_path_EGREP" --version 2>&1` in | ||
3703 | *GNU*) | ||
3704 | ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; | ||
3705 | *) | ||
3706 | ac_count=0 | ||
3707 | $as_echo_n 0123456789 >"conftest.in" | ||
3708 | while : | ||
3709 | do | ||
3710 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
3711 | mv "conftest.tmp" "conftest.in" | ||
3712 | cp "conftest.in" "conftest.nl" | ||
3713 | $as_echo 'EGREP' >> "conftest.nl" | ||
3714 | "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
3715 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
3716 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
3717 | if test $ac_count -gt ${ac_path_EGREP_max-0}; then | ||
3718 | # Best one so far, save it but keep looking for a better one | ||
3719 | ac_cv_path_EGREP="$ac_path_EGREP" | ||
3720 | ac_path_EGREP_max=$ac_count | ||
3721 | fi | ||
3722 | # 10*(2^10) chars as input seems more than enough | ||
3723 | test $ac_count -gt 10 && break | ||
3724 | done | ||
3725 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
3726 | esac | ||
3727 | |||
3728 | $ac_path_EGREP_found && break 3 | ||
3729 | done | ||
3730 | done | ||
3731 | done | ||
3732 | IFS=$as_save_IFS | ||
3733 | if test -z "$ac_cv_path_EGREP"; then | ||
3734 | as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
3735 | fi | ||
3736 | else | ||
3737 | ac_cv_path_EGREP=$EGREP | ||
3738 | fi | ||
3739 | |||
3740 | fi | ||
3741 | fi | ||
3742 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 | ||
3743 | $as_echo "$ac_cv_path_EGREP" >&6; } | ||
3744 | EGREP="$ac_cv_path_EGREP" | ||
3745 | |||
3746 | |||
3747 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 | ||
3748 | $as_echo_n "checking for ANSI C header files... " >&6; } | ||
3749 | if ${ac_cv_header_stdc+:} false; then : | ||
3750 | $as_echo_n "(cached) " >&6 | ||
3751 | else | ||
3752 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3753 | /* end confdefs.h. */ | ||
3754 | #include <stdlib.h> | ||
3755 | #include <stdarg.h> | ||
3756 | #include <string.h> | ||
3757 | #include <float.h> | ||
3758 | |||
3759 | int | ||
3760 | main () | ||
3761 | { | ||
3762 | |||
3763 | ; | ||
3764 | return 0; | ||
3765 | } | ||
3766 | _ACEOF | ||
3767 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3768 | ac_cv_header_stdc=yes | ||
3769 | else | ||
3770 | ac_cv_header_stdc=no | ||
3771 | fi | ||
3772 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3773 | |||
3774 | if test $ac_cv_header_stdc = yes; then | ||
3775 | # SunOS 4.x string.h does not declare mem*, contrary to ANSI. | ||
3776 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3777 | /* end confdefs.h. */ | ||
3778 | #include <string.h> | ||
3779 | |||
3780 | _ACEOF | ||
3781 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
3782 | $EGREP "memchr" >/dev/null 2>&1; then : | ||
3783 | |||
3784 | else | ||
3785 | ac_cv_header_stdc=no | ||
3786 | fi | ||
3787 | rm -f conftest* | ||
3788 | |||
3789 | fi | ||
3790 | |||
3791 | if test $ac_cv_header_stdc = yes; then | ||
3792 | # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. | ||
3793 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3794 | /* end confdefs.h. */ | ||
3795 | #include <stdlib.h> | ||
3796 | |||
3797 | _ACEOF | ||
3798 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
3799 | $EGREP "free" >/dev/null 2>&1; then : | ||
3800 | |||
3801 | else | ||
3802 | ac_cv_header_stdc=no | ||
3803 | fi | ||
3804 | rm -f conftest* | ||
3805 | |||
3806 | fi | ||
3807 | |||
3808 | if test $ac_cv_header_stdc = yes; then | ||
3809 | # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. | ||
3810 | if test "$cross_compiling" = yes; then : | ||
3811 | : | ||
3812 | else | ||
3813 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3814 | /* end confdefs.h. */ | ||
3815 | #include <ctype.h> | ||
3816 | #include <stdlib.h> | ||
3817 | #if ((' ' & 0x0FF) == 0x020) | ||
3818 | # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') | ||
3819 | # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) | ||
3820 | #else | ||
3821 | # define ISLOWER(c) \ | ||
3822 | (('a' <= (c) && (c) <= 'i') \ | ||
3823 | || ('j' <= (c) && (c) <= 'r') \ | ||
3824 | || ('s' <= (c) && (c) <= 'z')) | ||
3825 | # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) | ||
3826 | #endif | ||
3827 | |||
3828 | #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) | ||
3829 | int | ||
3830 | main () | ||
3831 | { | ||
3832 | int i; | ||
3833 | for (i = 0; i < 256; i++) | ||
3834 | if (XOR (islower (i), ISLOWER (i)) | ||
3835 | || toupper (i) != TOUPPER (i)) | ||
3836 | return 2; | ||
3837 | return 0; | ||
3838 | } | ||
3839 | _ACEOF | ||
3840 | if ac_fn_c_try_run "$LINENO"; then : | ||
3841 | |||
3842 | else | ||
3843 | ac_cv_header_stdc=no | ||
3844 | fi | ||
3845 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
3846 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
3847 | fi | ||
3848 | |||
3849 | fi | ||
3850 | fi | ||
3851 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 | ||
3852 | $as_echo "$ac_cv_header_stdc" >&6; } | ||
3853 | if test $ac_cv_header_stdc = yes; then | ||
3854 | |||
3855 | $as_echo "#define STDC_HEADERS 1" >>confdefs.h | ||
3856 | |||
3857 | fi | ||
3858 | |||
3859 | # On IRIX 5.3, sys/types and inttypes.h are conflicting. | ||
3860 | for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ | ||
3861 | inttypes.h stdint.h unistd.h | ||
3862 | do : | ||
3863 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
3864 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default | ||
3865 | " | ||
3866 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
3867 | cat >>confdefs.h <<_ACEOF | ||
3868 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
3869 | _ACEOF | ||
3870 | |||
3871 | fi | ||
3872 | |||
3873 | done | ||
3874 | |||
3875 | |||
3876 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 | ||
3877 | $as_echo_n "checking whether byte ordering is bigendian... " >&6; } | ||
3878 | if ${ac_cv_c_bigendian+:} false; then : | ||
3879 | $as_echo_n "(cached) " >&6 | ||
3880 | else | ||
3881 | ac_cv_c_bigendian=unknown | ||
3882 | # See if we're dealing with a universal compiler. | ||
3883 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3884 | /* end confdefs.h. */ | ||
3885 | #ifndef __APPLE_CC__ | ||
3886 | not a universal capable compiler | ||
3887 | #endif | ||
3888 | typedef int dummy; | ||
3889 | |||
3890 | _ACEOF | ||
3891 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3892 | |||
3893 | # Check for potential -arch flags. It is not universal unless | ||
3894 | # there are at least two -arch flags with different values. | ||
3895 | ac_arch= | ||
3896 | ac_prev= | ||
3897 | for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do | ||
3898 | if test -n "$ac_prev"; then | ||
3899 | case $ac_word in | ||
3900 | i?86 | x86_64 | ppc | ppc64) | ||
3901 | if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then | ||
3902 | ac_arch=$ac_word | ||
3903 | else | ||
3904 | ac_cv_c_bigendian=universal | ||
3905 | break | ||
3906 | fi | ||
3907 | ;; | ||
3908 | esac | ||
3909 | ac_prev= | ||
3910 | elif test "x$ac_word" = "x-arch"; then | ||
3911 | ac_prev=arch | ||
3912 | fi | ||
3913 | done | ||
3914 | fi | ||
3915 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3916 | if test $ac_cv_c_bigendian = unknown; then | ||
3917 | # See if sys/param.h defines the BYTE_ORDER macro. | ||
3918 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3919 | /* end confdefs.h. */ | ||
3920 | #include <sys/types.h> | ||
3921 | #include <sys/param.h> | ||
3922 | |||
3923 | int | ||
3924 | main () | ||
3925 | { | ||
3926 | #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ | ||
3927 | && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ | ||
3928 | && LITTLE_ENDIAN) | ||
3929 | bogus endian macros | ||
3930 | #endif | ||
3931 | |||
3932 | ; | ||
3933 | return 0; | ||
3934 | } | ||
3935 | _ACEOF | ||
3936 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3937 | # It does; now see whether it defined to BIG_ENDIAN or not. | ||
3938 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3939 | /* end confdefs.h. */ | ||
3940 | #include <sys/types.h> | ||
3941 | #include <sys/param.h> | ||
3942 | |||
3943 | int | ||
3944 | main () | ||
3945 | { | ||
3946 | #if BYTE_ORDER != BIG_ENDIAN | ||
3947 | not big endian | ||
3948 | #endif | ||
3949 | |||
3950 | ; | ||
3951 | return 0; | ||
3952 | } | ||
3953 | _ACEOF | ||
3954 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3955 | ac_cv_c_bigendian=yes | ||
3956 | else | ||
3957 | ac_cv_c_bigendian=no | ||
3958 | fi | ||
3959 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3960 | fi | ||
3961 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3962 | fi | ||
3963 | if test $ac_cv_c_bigendian = unknown; then | ||
3964 | # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). | ||
3965 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3966 | /* end confdefs.h. */ | ||
3967 | #include <limits.h> | ||
3968 | |||
3969 | int | ||
3970 | main () | ||
3971 | { | ||
3972 | #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) | ||
3973 | bogus endian macros | ||
3974 | #endif | ||
3975 | |||
3976 | ; | ||
3977 | return 0; | ||
3978 | } | ||
3979 | _ACEOF | ||
3980 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3981 | # It does; now see whether it defined to _BIG_ENDIAN or not. | ||
3982 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3983 | /* end confdefs.h. */ | ||
3984 | #include <limits.h> | ||
3985 | |||
3986 | int | ||
3987 | main () | ||
3988 | { | ||
3989 | #ifndef _BIG_ENDIAN | ||
3990 | not big endian | ||
3991 | #endif | ||
3992 | |||
3993 | ; | ||
3994 | return 0; | ||
3995 | } | ||
3996 | _ACEOF | ||
3997 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3998 | ac_cv_c_bigendian=yes | ||
3999 | else | ||
4000 | ac_cv_c_bigendian=no | ||
4001 | fi | ||
4002 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
4003 | fi | ||
4004 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
4005 | fi | ||
4006 | if test $ac_cv_c_bigendian = unknown; then | ||
4007 | # Compile a test program. | ||
4008 | if test "$cross_compiling" = yes; then : | ||
4009 | # Try to guess by grepping values from an object file. | ||
4010 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4011 | /* end confdefs.h. */ | ||
4012 | short int ascii_mm[] = | ||
4013 | { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; | ||
4014 | short int ascii_ii[] = | ||
4015 | { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; | ||
4016 | int use_ascii (int i) { | ||
4017 | return ascii_mm[i] + ascii_ii[i]; | ||
4018 | } | ||
4019 | short int ebcdic_ii[] = | ||
4020 | { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; | ||
4021 | short int ebcdic_mm[] = | ||
4022 | { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; | ||
4023 | int use_ebcdic (int i) { | ||
4024 | return ebcdic_mm[i] + ebcdic_ii[i]; | ||
4025 | } | ||
4026 | extern int foo; | ||
4027 | |||
4028 | int | ||
4029 | main () | ||
4030 | { | ||
4031 | return use_ascii (foo) == use_ebcdic (foo); | ||
4032 | ; | ||
4033 | return 0; | ||
4034 | } | ||
4035 | _ACEOF | ||
4036 | if ac_fn_c_try_compile "$LINENO"; then : | ||
4037 | if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then | ||
4038 | ac_cv_c_bigendian=yes | ||
4039 | fi | ||
4040 | if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then | ||
4041 | if test "$ac_cv_c_bigendian" = unknown; then | ||
4042 | ac_cv_c_bigendian=no | ||
4043 | else | ||
4044 | # finding both strings is unlikely to happen, but who knows? | ||
4045 | ac_cv_c_bigendian=unknown | ||
4046 | fi | ||
4047 | fi | ||
4048 | fi | ||
4049 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
4050 | else | ||
4051 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4052 | /* end confdefs.h. */ | ||
4053 | $ac_includes_default | ||
4054 | int | ||
4055 | main () | ||
4056 | { | ||
4057 | |||
4058 | /* Are we little or big endian? From Harbison&Steele. */ | ||
4059 | union | ||
4060 | { | ||
4061 | long int l; | ||
4062 | char c[sizeof (long int)]; | ||
4063 | } u; | ||
4064 | u.l = 1; | ||
4065 | return u.c[sizeof (long int) - 1] == 1; | ||
4066 | |||
4067 | ; | ||
4068 | return 0; | ||
4069 | } | ||
4070 | _ACEOF | ||
4071 | if ac_fn_c_try_run "$LINENO"; then : | ||
4072 | ac_cv_c_bigendian=no | ||
4073 | else | ||
4074 | ac_cv_c_bigendian=yes | ||
4075 | fi | ||
4076 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
4077 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
4078 | fi | ||
4079 | |||
4080 | fi | ||
4081 | fi | ||
4082 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 | ||
4083 | $as_echo "$ac_cv_c_bigendian" >&6; } | ||
4084 | case $ac_cv_c_bigendian in #( | ||
4085 | yes) | ||
4086 | $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h | ||
4087 | ;; #( | ||
4088 | no) | ||
4089 | ;; #( | ||
4090 | universal) | ||
4091 | |||
4092 | $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h | ||
4093 | |||
4094 | ;; #( | ||
4095 | *) | ||
4096 | as_fn_error $? "unknown endianness | ||
4097 | presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; | ||
4098 | esac | ||
4099 | |||
4100 | |||
4101 | # Checks for programs. | ||
4102 | for ac_prog in gawk mawk nawk awk | ||
4103 | do | ||
4104 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
4105 | set dummy $ac_prog; ac_word=$2 | ||
4106 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4107 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4108 | if ${ac_cv_prog_AWK+:} false; then : | ||
4109 | $as_echo_n "(cached) " >&6 | ||
4110 | else | ||
4111 | if test -n "$AWK"; then | ||
4112 | ac_cv_prog_AWK="$AWK" # Let the user override the test. | ||
4113 | else | ||
4114 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4115 | for as_dir in $PATH | ||
4116 | do | ||
4117 | IFS=$as_save_IFS | ||
4118 | test -z "$as_dir" && as_dir=. | ||
4119 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4120 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4121 | ac_cv_prog_AWK="$ac_prog" | ||
4122 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4123 | break 2 | ||
4124 | fi | ||
4125 | done | ||
4126 | done | ||
4127 | IFS=$as_save_IFS | ||
4128 | |||
4129 | fi | ||
4130 | fi | ||
4131 | AWK=$ac_cv_prog_AWK | ||
4132 | if test -n "$AWK"; then | ||
4133 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 | ||
4134 | $as_echo "$AWK" >&6; } | ||
4135 | else | ||
4136 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4137 | $as_echo "no" >&6; } | ||
4138 | fi | ||
4139 | |||
4140 | |||
4141 | test -n "$AWK" && break | ||
4142 | done | ||
4143 | |||
4144 | ac_ext=c | ||
4145 | ac_cpp='$CPP $CPPFLAGS' | ||
4146 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
4147 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
4148 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
4149 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 | ||
4150 | $as_echo_n "checking how to run the C preprocessor... " >&6; } | ||
4151 | # On Suns, sometimes $CPP names a directory. | ||
4152 | if test -n "$CPP" && test -d "$CPP"; then | ||
4153 | CPP= | ||
4154 | fi | ||
4155 | if test -z "$CPP"; then | ||
4156 | if ${ac_cv_prog_CPP+:} false; then : | ||
4157 | $as_echo_n "(cached) " >&6 | ||
4158 | else | ||
4159 | # Double quotes because CPP needs to be expanded | ||
4160 | for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" | ||
4161 | do | ||
4162 | ac_preproc_ok=false | ||
4163 | for ac_c_preproc_warn_flag in '' yes | ||
4164 | do | ||
4165 | # Use a header file that comes with gcc, so configuring glibc | ||
4166 | # with a fresh cross-compiler works. | ||
4167 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
4168 | # <limits.h> exists even on freestanding compilers. | ||
4169 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
4170 | # not just through cpp. "Syntax error" is here to catch this case. | ||
4171 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4172 | /* end confdefs.h. */ | ||
4173 | #ifdef __STDC__ | ||
4174 | # include <limits.h> | ||
4175 | #else | ||
4176 | # include <assert.h> | ||
4177 | #endif | ||
4178 | Syntax error | ||
4179 | _ACEOF | ||
4180 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4181 | |||
4182 | else | ||
4183 | # Broken: fails on valid input. | ||
4184 | continue | ||
4185 | fi | ||
4186 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4187 | |||
4188 | # OK, works on sane cases. Now check whether nonexistent headers | ||
4189 | # can be detected and how. | ||
4190 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4191 | /* end confdefs.h. */ | ||
4192 | #include <ac_nonexistent.h> | ||
4193 | _ACEOF | ||
4194 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4195 | # Broken: success on invalid input. | ||
4196 | continue | ||
4197 | else | ||
4198 | # Passes both tests. | ||
4199 | ac_preproc_ok=: | ||
4200 | break | ||
4201 | fi | ||
4202 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4203 | |||
4204 | done | ||
4205 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
4206 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
4207 | if $ac_preproc_ok; then : | ||
4208 | break | ||
4209 | fi | ||
4210 | |||
4211 | done | ||
4212 | ac_cv_prog_CPP=$CPP | ||
4213 | |||
4214 | fi | ||
4215 | CPP=$ac_cv_prog_CPP | ||
4216 | else | ||
4217 | ac_cv_prog_CPP=$CPP | ||
4218 | fi | ||
4219 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 | ||
4220 | $as_echo "$CPP" >&6; } | ||
4221 | ac_preproc_ok=false | ||
4222 | for ac_c_preproc_warn_flag in '' yes | ||
4223 | do | ||
4224 | # Use a header file that comes with gcc, so configuring glibc | ||
4225 | # with a fresh cross-compiler works. | ||
4226 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
4227 | # <limits.h> exists even on freestanding compilers. | ||
4228 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
4229 | # not just through cpp. "Syntax error" is here to catch this case. | ||
4230 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4231 | /* end confdefs.h. */ | ||
4232 | #ifdef __STDC__ | ||
4233 | # include <limits.h> | ||
4234 | #else | ||
4235 | # include <assert.h> | ||
4236 | #endif | ||
4237 | Syntax error | ||
4238 | _ACEOF | ||
4239 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4240 | |||
4241 | else | ||
4242 | # Broken: fails on valid input. | ||
4243 | continue | ||
4244 | fi | ||
4245 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4246 | |||
4247 | # OK, works on sane cases. Now check whether nonexistent headers | ||
4248 | # can be detected and how. | ||
4249 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4250 | /* end confdefs.h. */ | ||
4251 | #include <ac_nonexistent.h> | ||
4252 | _ACEOF | ||
4253 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4254 | # Broken: success on invalid input. | ||
4255 | continue | ||
4256 | else | ||
4257 | # Passes both tests. | ||
4258 | ac_preproc_ok=: | ||
4259 | break | ||
4260 | fi | ||
4261 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4262 | |||
4263 | done | ||
4264 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
4265 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
4266 | if $ac_preproc_ok; then : | ||
4267 | |||
4268 | else | ||
4269 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
4270 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
4271 | as_fn_error $? "C preprocessor \"$CPP\" fails sanity check | ||
4272 | See \`config.log' for more details" "$LINENO" 5; } | ||
4273 | fi | ||
4274 | |||
4275 | ac_ext=c | ||
4276 | ac_cpp='$CPP $CPPFLAGS' | ||
4277 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
4278 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
4279 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
4280 | |||
4281 | if test -n "$ac_tool_prefix"; then | ||
4282 | # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. | ||
4283 | set dummy ${ac_tool_prefix}ranlib; ac_word=$2 | ||
4284 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4285 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4286 | if ${ac_cv_prog_RANLIB+:} false; then : | ||
4287 | $as_echo_n "(cached) " >&6 | ||
4288 | else | ||
4289 | if test -n "$RANLIB"; then | ||
4290 | ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. | ||
4291 | else | ||
4292 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4293 | for as_dir in $PATH | ||
4294 | do | ||
4295 | IFS=$as_save_IFS | ||
4296 | test -z "$as_dir" && as_dir=. | ||
4297 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4298 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4299 | ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" | ||
4300 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4301 | break 2 | ||
4302 | fi | ||
4303 | done | ||
4304 | done | ||
4305 | IFS=$as_save_IFS | ||
4306 | |||
4307 | fi | ||
4308 | fi | ||
4309 | RANLIB=$ac_cv_prog_RANLIB | ||
4310 | if test -n "$RANLIB"; then | ||
4311 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 | ||
4312 | $as_echo "$RANLIB" >&6; } | ||
4313 | else | ||
4314 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4315 | $as_echo "no" >&6; } | ||
4316 | fi | ||
4317 | |||
4318 | |||
4319 | fi | ||
4320 | if test -z "$ac_cv_prog_RANLIB"; then | ||
4321 | ac_ct_RANLIB=$RANLIB | ||
4322 | # Extract the first word of "ranlib", so it can be a program name with args. | ||
4323 | set dummy ranlib; ac_word=$2 | ||
4324 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4325 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4326 | if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : | ||
4327 | $as_echo_n "(cached) " >&6 | ||
4328 | else | ||
4329 | if test -n "$ac_ct_RANLIB"; then | ||
4330 | ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. | ||
4331 | else | ||
4332 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4333 | for as_dir in $PATH | ||
4334 | do | ||
4335 | IFS=$as_save_IFS | ||
4336 | test -z "$as_dir" && as_dir=. | ||
4337 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4338 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4339 | ac_cv_prog_ac_ct_RANLIB="ranlib" | ||
4340 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4341 | break 2 | ||
4342 | fi | ||
4343 | done | ||
4344 | done | ||
4345 | IFS=$as_save_IFS | ||
4346 | |||
4347 | fi | ||
4348 | fi | ||
4349 | ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB | ||
4350 | if test -n "$ac_ct_RANLIB"; then | ||
4351 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 | ||
4352 | $as_echo "$ac_ct_RANLIB" >&6; } | ||
4353 | else | ||
4354 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4355 | $as_echo "no" >&6; } | ||
4356 | fi | ||
4357 | |||
4358 | if test "x$ac_ct_RANLIB" = x; then | ||
4359 | RANLIB=":" | ||
4360 | else | ||
4361 | case $cross_compiling:$ac_tool_warned in | ||
4362 | yes:) | ||
4363 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
4364 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
4365 | ac_tool_warned=yes ;; | ||
4366 | esac | ||
4367 | RANLIB=$ac_ct_RANLIB | ||
4368 | fi | ||
4369 | else | ||
4370 | RANLIB="$ac_cv_prog_RANLIB" | ||
4371 | fi | ||
4372 | |||
4373 | # Find a good install program. We prefer a C program (faster), | ||
4374 | # so one script is as good as another. But avoid the broken or | ||
4375 | # incompatible versions: | ||
4376 | # SysV /etc/install, /usr/sbin/install | ||
4377 | # SunOS /usr/etc/install | ||
4378 | # IRIX /sbin/install | ||
4379 | # AIX /bin/install | ||
4380 | # AmigaOS /C/install, which installs bootblocks on floppy discs | ||
4381 | # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag | ||
4382 | # AFS /usr/afsws/bin/install, which mishandles nonexistent args | ||
4383 | # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" | ||
4384 | # OS/2's system install, which has a completely different semantic | ||
4385 | # ./install, which can be erroneously created by make from ./install.sh. | ||
4386 | # Reject install programs that cannot install multiple files. | ||
4387 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 | ||
4388 | $as_echo_n "checking for a BSD-compatible install... " >&6; } | ||
4389 | if test -z "$INSTALL"; then | ||
4390 | if ${ac_cv_path_install+:} false; then : | ||
4391 | $as_echo_n "(cached) " >&6 | ||
4392 | else | ||
4393 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4394 | for as_dir in $PATH | ||
4395 | do | ||
4396 | IFS=$as_save_IFS | ||
4397 | test -z "$as_dir" && as_dir=. | ||
4398 | # Account for people who put trailing slashes in PATH elements. | ||
4399 | case $as_dir/ in #(( | ||
4400 | ./ | .// | /[cC]/* | \ | ||
4401 | /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ | ||
4402 | ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ | ||
4403 | /usr/ucb/* ) ;; | ||
4404 | *) | ||
4405 | # OSF1 and SCO ODT 3.0 have their own names for install. | ||
4406 | # Don't use installbsd from OSF since it installs stuff as root | ||
4407 | # by default. | ||
4408 | for ac_prog in ginstall scoinst install; do | ||
4409 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4410 | if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then | ||
4411 | if test $ac_prog = install && | ||
4412 | grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then | ||
4413 | # AIX install. It has an incompatible calling convention. | ||
4414 | : | ||
4415 | elif test $ac_prog = install && | ||
4416 | grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then | ||
4417 | # program-specific install script used by HP pwplus--don't use. | ||
4418 | : | ||
4419 | else | ||
4420 | rm -rf conftest.one conftest.two conftest.dir | ||
4421 | echo one > conftest.one | ||
4422 | echo two > conftest.two | ||
4423 | mkdir conftest.dir | ||
4424 | if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && | ||
4425 | test -s conftest.one && test -s conftest.two && | ||
4426 | test -s conftest.dir/conftest.one && | ||
4427 | test -s conftest.dir/conftest.two | ||
4428 | then | ||
4429 | ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" | ||
4430 | break 3 | ||
4431 | fi | ||
4432 | fi | ||
4433 | fi | ||
4434 | done | ||
4435 | done | ||
4436 | ;; | ||
4437 | esac | ||
4438 | |||
4439 | done | ||
4440 | IFS=$as_save_IFS | ||
4441 | |||
4442 | rm -rf conftest.one conftest.two conftest.dir | ||
4443 | |||
4444 | fi | ||
4445 | if test "${ac_cv_path_install+set}" = set; then | ||
4446 | INSTALL=$ac_cv_path_install | ||
4447 | else | ||
4448 | # As a last resort, use the slow shell script. Don't cache a | ||
4449 | # value for INSTALL within a source directory, because that will | ||
4450 | # break other packages using the cache if that directory is | ||
4451 | # removed, or if the value is a relative name. | ||
4452 | INSTALL=$ac_install_sh | ||
4453 | fi | ||
4454 | fi | ||
4455 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 | ||
4456 | $as_echo "$INSTALL" >&6; } | ||
4457 | |||
4458 | # Use test -z because SunOS4 sh mishandles braces in ${var-val}. | ||
4459 | # It thinks the first close brace ends the variable substitution. | ||
4460 | test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' | ||
4461 | |||
4462 | test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' | ||
4463 | |||
4464 | test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' | ||
4465 | |||
4466 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 | ||
4467 | $as_echo_n "checking for egrep... " >&6; } | ||
4468 | if ${ac_cv_path_EGREP+:} false; then : | ||
4469 | $as_echo_n "(cached) " >&6 | ||
4470 | else | ||
4471 | if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 | ||
4472 | then ac_cv_path_EGREP="$GREP -E" | ||
4473 | else | ||
4474 | if test -z "$EGREP"; then | ||
4475 | ac_path_EGREP_found=false | ||
4476 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
4477 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4478 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
4479 | do | ||
4480 | IFS=$as_save_IFS | ||
4481 | test -z "$as_dir" && as_dir=. | ||
4482 | for ac_prog in egrep; do | ||
4483 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4484 | ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" | ||
4485 | { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue | ||
4486 | # Check for GNU ac_path_EGREP and select it if it is found. | ||
4487 | # Check for GNU $ac_path_EGREP | ||
4488 | case `"$ac_path_EGREP" --version 2>&1` in | ||
4489 | *GNU*) | ||
4490 | ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; | ||
4491 | *) | ||
4492 | ac_count=0 | ||
4493 | $as_echo_n 0123456789 >"conftest.in" | ||
4494 | while : | ||
4495 | do | ||
4496 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
4497 | mv "conftest.tmp" "conftest.in" | ||
4498 | cp "conftest.in" "conftest.nl" | ||
4499 | $as_echo 'EGREP' >> "conftest.nl" | ||
4500 | "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
4501 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
4502 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
4503 | if test $ac_count -gt ${ac_path_EGREP_max-0}; then | ||
4504 | # Best one so far, save it but keep looking for a better one | ||
4505 | ac_cv_path_EGREP="$ac_path_EGREP" | ||
4506 | ac_path_EGREP_max=$ac_count | ||
4507 | fi | ||
4508 | # 10*(2^10) chars as input seems more than enough | ||
4509 | test $ac_count -gt 10 && break | ||
4510 | done | ||
4511 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
4512 | esac | ||
4513 | |||
4514 | $ac_path_EGREP_found && break 3 | ||
4515 | done | ||
4516 | done | ||
4517 | done | ||
4518 | IFS=$as_save_IFS | ||
4519 | if test -z "$ac_cv_path_EGREP"; then | ||
4520 | as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
4521 | fi | ||
4522 | else | ||
4523 | ac_cv_path_EGREP=$EGREP | ||
4524 | fi | ||
4525 | |||
4526 | fi | ||
4527 | fi | ||
4528 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 | ||
4529 | $as_echo "$ac_cv_path_EGREP" >&6; } | ||
4530 | EGREP="$ac_cv_path_EGREP" | ||
4531 | |||
4532 | |||
4533 | # Extract the first word of "ar", so it can be a program name with args. | ||
4534 | set dummy ar; ac_word=$2 | ||
4535 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4536 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4537 | if ${ac_cv_path_AR+:} false; then : | ||
4538 | $as_echo_n "(cached) " >&6 | ||
4539 | else | ||
4540 | case $AR in | ||
4541 | [\\/]* | ?:[\\/]*) | ||
4542 | ac_cv_path_AR="$AR" # Let the user override the test with a path. | ||
4543 | ;; | ||
4544 | *) | ||
4545 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4546 | for as_dir in $PATH | ||
4547 | do | ||
4548 | IFS=$as_save_IFS | ||
4549 | test -z "$as_dir" && as_dir=. | ||
4550 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4551 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4552 | ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext" | ||
4553 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4554 | break 2 | ||
4555 | fi | ||
4556 | done | ||
4557 | done | ||
4558 | IFS=$as_save_IFS | ||
4559 | |||
4560 | ;; | ||
4561 | esac | ||
4562 | fi | ||
4563 | AR=$ac_cv_path_AR | ||
4564 | if test -n "$AR"; then | ||
4565 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 | ||
4566 | $as_echo "$AR" >&6; } | ||
4567 | else | ||
4568 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4569 | $as_echo "no" >&6; } | ||
4570 | fi | ||
4571 | |||
4572 | |||
4573 | # Extract the first word of "cat", so it can be a program name with args. | ||
4574 | set dummy cat; ac_word=$2 | ||
4575 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4576 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4577 | if ${ac_cv_path_CAT+:} false; then : | ||
4578 | $as_echo_n "(cached) " >&6 | ||
4579 | else | ||
4580 | case $CAT in | ||
4581 | [\\/]* | ?:[\\/]*) | ||
4582 | ac_cv_path_CAT="$CAT" # Let the user override the test with a path. | ||
4583 | ;; | ||
4584 | *) | ||
4585 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4586 | for as_dir in $PATH | ||
4587 | do | ||
4588 | IFS=$as_save_IFS | ||
4589 | test -z "$as_dir" && as_dir=. | ||
4590 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4591 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4592 | ac_cv_path_CAT="$as_dir/$ac_word$ac_exec_ext" | ||
4593 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4594 | break 2 | ||
4595 | fi | ||
4596 | done | ||
4597 | done | ||
4598 | IFS=$as_save_IFS | ||
4599 | |||
4600 | ;; | ||
4601 | esac | ||
4602 | fi | ||
4603 | CAT=$ac_cv_path_CAT | ||
4604 | if test -n "$CAT"; then | ||
4605 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5 | ||
4606 | $as_echo "$CAT" >&6; } | ||
4607 | else | ||
4608 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4609 | $as_echo "no" >&6; } | ||
4610 | fi | ||
4611 | |||
4612 | |||
4613 | # Extract the first word of "kill", so it can be a program name with args. | ||
4614 | set dummy kill; ac_word=$2 | ||
4615 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4616 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4617 | if ${ac_cv_path_KILL+:} false; then : | ||
4618 | $as_echo_n "(cached) " >&6 | ||
4619 | else | ||
4620 | case $KILL in | ||
4621 | [\\/]* | ?:[\\/]*) | ||
4622 | ac_cv_path_KILL="$KILL" # Let the user override the test with a path. | ||
4623 | ;; | ||
4624 | *) | ||
4625 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4626 | for as_dir in $PATH | ||
4627 | do | ||
4628 | IFS=$as_save_IFS | ||
4629 | test -z "$as_dir" && as_dir=. | ||
4630 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4631 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4632 | ac_cv_path_KILL="$as_dir/$ac_word$ac_exec_ext" | ||
4633 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4634 | break 2 | ||
4635 | fi | ||
4636 | done | ||
4637 | done | ||
4638 | IFS=$as_save_IFS | ||
4639 | |||
4640 | ;; | ||
4641 | esac | ||
4642 | fi | ||
4643 | KILL=$ac_cv_path_KILL | ||
4644 | if test -n "$KILL"; then | ||
4645 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KILL" >&5 | ||
4646 | $as_echo "$KILL" >&6; } | ||
4647 | else | ||
4648 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4649 | $as_echo "no" >&6; } | ||
4650 | fi | ||
4651 | |||
4652 | |||
4653 | for ac_prog in perl5 perl | ||
4654 | do | ||
4655 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
4656 | set dummy $ac_prog; ac_word=$2 | ||
4657 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4658 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4659 | if ${ac_cv_path_PERL+:} false; then : | ||
4660 | $as_echo_n "(cached) " >&6 | ||
4661 | else | ||
4662 | case $PERL in | ||
4663 | [\\/]* | ?:[\\/]*) | ||
4664 | ac_cv_path_PERL="$PERL" # Let the user override the test with a path. | ||
4665 | ;; | ||
4666 | *) | ||
4667 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4668 | for as_dir in $PATH | ||
4669 | do | ||
4670 | IFS=$as_save_IFS | ||
4671 | test -z "$as_dir" && as_dir=. | ||
4672 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4673 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4674 | ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext" | ||
4675 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4676 | break 2 | ||
4677 | fi | ||
4678 | done | ||
4679 | done | ||
4680 | IFS=$as_save_IFS | ||
4681 | |||
4682 | ;; | ||
4683 | esac | ||
4684 | fi | ||
4685 | PERL=$ac_cv_path_PERL | ||
4686 | if test -n "$PERL"; then | ||
4687 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5 | ||
4688 | $as_echo "$PERL" >&6; } | ||
4689 | else | ||
4690 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4691 | $as_echo "no" >&6; } | ||
4692 | fi | ||
4693 | |||
4694 | |||
4695 | test -n "$PERL" && break | ||
4696 | done | ||
4697 | |||
4698 | # Extract the first word of "sed", so it can be a program name with args. | ||
4699 | set dummy sed; ac_word=$2 | ||
4700 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4701 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4702 | if ${ac_cv_path_SED+:} false; then : | ||
4703 | $as_echo_n "(cached) " >&6 | ||
4704 | else | ||
4705 | case $SED in | ||
4706 | [\\/]* | ?:[\\/]*) | ||
4707 | ac_cv_path_SED="$SED" # Let the user override the test with a path. | ||
4708 | ;; | ||
4709 | *) | ||
4710 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4711 | for as_dir in $PATH | ||
4712 | do | ||
4713 | IFS=$as_save_IFS | ||
4714 | test -z "$as_dir" && as_dir=. | ||
4715 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4716 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4717 | ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext" | ||
4718 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4719 | break 2 | ||
4720 | fi | ||
4721 | done | ||
4722 | done | ||
4723 | IFS=$as_save_IFS | ||
4724 | |||
4725 | ;; | ||
4726 | esac | ||
4727 | fi | ||
4728 | SED=$ac_cv_path_SED | ||
4729 | if test -n "$SED"; then | ||
4730 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 | ||
4731 | $as_echo "$SED" >&6; } | ||
4732 | else | ||
4733 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4734 | $as_echo "no" >&6; } | ||
4735 | fi | ||
4736 | |||
4737 | |||
4738 | |||
4739 | # Extract the first word of "ent", so it can be a program name with args. | ||
4740 | set dummy ent; ac_word=$2 | ||
4741 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4742 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4743 | if ${ac_cv_path_ENT+:} false; then : | ||
4744 | $as_echo_n "(cached) " >&6 | ||
4745 | else | ||
4746 | case $ENT in | ||
4747 | [\\/]* | ?:[\\/]*) | ||
4748 | ac_cv_path_ENT="$ENT" # Let the user override the test with a path. | ||
4749 | ;; | ||
4750 | *) | ||
4751 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4752 | for as_dir in $PATH | ||
4753 | do | ||
4754 | IFS=$as_save_IFS | ||
4755 | test -z "$as_dir" && as_dir=. | ||
4756 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4757 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4758 | ac_cv_path_ENT="$as_dir/$ac_word$ac_exec_ext" | ||
4759 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4760 | break 2 | ||
4761 | fi | ||
4762 | done | ||
4763 | done | ||
4764 | IFS=$as_save_IFS | ||
4765 | |||
4766 | ;; | ||
4767 | esac | ||
4768 | fi | ||
4769 | ENT=$ac_cv_path_ENT | ||
4770 | if test -n "$ENT"; then | ||
4771 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENT" >&5 | ||
4772 | $as_echo "$ENT" >&6; } | ||
4773 | else | ||
4774 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4775 | $as_echo "no" >&6; } | ||
4776 | fi | ||
4777 | |||
4778 | |||
4779 | |||
4780 | # Extract the first word of "bash", so it can be a program name with args. | ||
4781 | set dummy bash; ac_word=$2 | ||
4782 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4783 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4784 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4785 | $as_echo_n "(cached) " >&6 | ||
4786 | else | ||
4787 | case $TEST_MINUS_S_SH in | ||
4788 | [\\/]* | ?:[\\/]*) | ||
4789 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4790 | ;; | ||
4791 | *) | ||
4792 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4793 | for as_dir in $PATH | ||
4794 | do | ||
4795 | IFS=$as_save_IFS | ||
4796 | test -z "$as_dir" && as_dir=. | ||
4797 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4798 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4799 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4800 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4801 | break 2 | ||
4802 | fi | ||
4803 | done | ||
4804 | done | ||
4805 | IFS=$as_save_IFS | ||
4806 | |||
4807 | ;; | ||
4808 | esac | ||
4809 | fi | ||
4810 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4811 | if test -n "$TEST_MINUS_S_SH"; then | ||
4812 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4813 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4814 | else | ||
4815 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4816 | $as_echo "no" >&6; } | ||
4817 | fi | ||
4818 | |||
4819 | |||
4820 | # Extract the first word of "ksh", so it can be a program name with args. | ||
4821 | set dummy ksh; ac_word=$2 | ||
4822 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4823 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4824 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4825 | $as_echo_n "(cached) " >&6 | ||
4826 | else | ||
4827 | case $TEST_MINUS_S_SH in | ||
4828 | [\\/]* | ?:[\\/]*) | ||
4829 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4830 | ;; | ||
4831 | *) | ||
4832 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4833 | for as_dir in $PATH | ||
4834 | do | ||
4835 | IFS=$as_save_IFS | ||
4836 | test -z "$as_dir" && as_dir=. | ||
4837 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4838 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4839 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4840 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4841 | break 2 | ||
4842 | fi | ||
4843 | done | ||
4844 | done | ||
4845 | IFS=$as_save_IFS | ||
4846 | |||
4847 | ;; | ||
4848 | esac | ||
4849 | fi | ||
4850 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4851 | if test -n "$TEST_MINUS_S_SH"; then | ||
4852 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4853 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4854 | else | ||
4855 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4856 | $as_echo "no" >&6; } | ||
4857 | fi | ||
4858 | |||
4859 | |||
4860 | # Extract the first word of "sh", so it can be a program name with args. | ||
4861 | set dummy sh; ac_word=$2 | ||
4862 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4863 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4864 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4865 | $as_echo_n "(cached) " >&6 | ||
4866 | else | ||
4867 | case $TEST_MINUS_S_SH in | ||
4868 | [\\/]* | ?:[\\/]*) | ||
4869 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4870 | ;; | ||
4871 | *) | ||
4872 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4873 | for as_dir in $PATH | ||
4874 | do | ||
4875 | IFS=$as_save_IFS | ||
4876 | test -z "$as_dir" && as_dir=. | ||
4877 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4878 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4879 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4880 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4881 | break 2 | ||
4882 | fi | ||
4883 | done | ||
4884 | done | ||
4885 | IFS=$as_save_IFS | ||
4886 | |||
4887 | ;; | ||
4888 | esac | ||
4889 | fi | ||
4890 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4891 | if test -n "$TEST_MINUS_S_SH"; then | ||
4892 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4893 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4894 | else | ||
4895 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4896 | $as_echo "no" >&6; } | ||
4897 | fi | ||
4898 | |||
4899 | |||
4900 | # Extract the first word of "sh", so it can be a program name with args. | ||
4901 | set dummy sh; ac_word=$2 | ||
4902 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4903 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4904 | if ${ac_cv_path_SH+:} false; then : | ||
4905 | $as_echo_n "(cached) " >&6 | ||
4906 | else | ||
4907 | case $SH in | ||
4908 | [\\/]* | ?:[\\/]*) | ||
4909 | ac_cv_path_SH="$SH" # Let the user override the test with a path. | ||
4910 | ;; | ||
4911 | *) | ||
4912 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4913 | for as_dir in $PATH | ||
4914 | do | ||
4915 | IFS=$as_save_IFS | ||
4916 | test -z "$as_dir" && as_dir=. | ||
4917 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4918 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4919 | ac_cv_path_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4920 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4921 | break 2 | ||
4922 | fi | ||
4923 | done | ||
4924 | done | ||
4925 | IFS=$as_save_IFS | ||
4926 | |||
4927 | ;; | ||
4928 | esac | ||
4929 | fi | ||
4930 | SH=$ac_cv_path_SH | ||
4931 | if test -n "$SH"; then | ||
4932 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SH" >&5 | ||
4933 | $as_echo "$SH" >&6; } | ||
4934 | else | ||
4935 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4936 | $as_echo "no" >&6; } | ||
4937 | fi | ||
4938 | |||
4939 | |||
4940 | # Extract the first word of "groff", so it can be a program name with args. | ||
4941 | set dummy groff; ac_word=$2 | ||
4942 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4943 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4944 | if ${ac_cv_path_GROFF+:} false; then : | ||
4945 | $as_echo_n "(cached) " >&6 | ||
4946 | else | ||
4947 | case $GROFF in | ||
4948 | [\\/]* | ?:[\\/]*) | ||
4949 | ac_cv_path_GROFF="$GROFF" # Let the user override the test with a path. | ||
4950 | ;; | ||
4951 | *) | ||
4952 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4953 | for as_dir in $PATH | ||
4954 | do | ||
4955 | IFS=$as_save_IFS | ||
4956 | test -z "$as_dir" && as_dir=. | ||
4957 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4958 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4959 | ac_cv_path_GROFF="$as_dir/$ac_word$ac_exec_ext" | ||
4960 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4961 | break 2 | ||
4962 | fi | ||
4963 | done | ||
4964 | done | ||
4965 | IFS=$as_save_IFS | ||
4966 | |||
4967 | ;; | ||
4968 | esac | ||
4969 | fi | ||
4970 | GROFF=$ac_cv_path_GROFF | ||
4971 | if test -n "$GROFF"; then | ||
4972 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GROFF" >&5 | ||
4973 | $as_echo "$GROFF" >&6; } | ||
4974 | else | ||
4975 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4976 | $as_echo "no" >&6; } | ||
4977 | fi | ||
4978 | |||
4979 | |||
4980 | # Extract the first word of "nroff", so it can be a program name with args. | ||
4981 | set dummy nroff; ac_word=$2 | ||
4982 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4983 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4984 | if ${ac_cv_path_NROFF+:} false; then : | ||
4985 | $as_echo_n "(cached) " >&6 | ||
4986 | else | ||
4987 | case $NROFF in | ||
4988 | [\\/]* | ?:[\\/]*) | ||
4989 | ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path. | ||
4990 | ;; | ||
4991 | *) | ||
4992 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4993 | for as_dir in $PATH | ||
4994 | do | ||
4995 | IFS=$as_save_IFS | ||
4996 | test -z "$as_dir" && as_dir=. | ||
4997 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4998 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4999 | ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext" | ||
5000 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5001 | break 2 | ||
5002 | fi | ||
5003 | done | ||
5004 | done | ||
5005 | IFS=$as_save_IFS | ||
5006 | |||
5007 | ;; | ||
5008 | esac | ||
5009 | fi | ||
5010 | NROFF=$ac_cv_path_NROFF | ||
5011 | if test -n "$NROFF"; then | ||
5012 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5 | ||
5013 | $as_echo "$NROFF" >&6; } | ||
5014 | else | ||
5015 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5016 | $as_echo "no" >&6; } | ||
5017 | fi | ||
5018 | |||
5019 | |||
5020 | # Extract the first word of "mandoc", so it can be a program name with args. | ||
5021 | set dummy mandoc; ac_word=$2 | ||
5022 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5023 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5024 | if ${ac_cv_path_MANDOC+:} false; then : | ||
5025 | $as_echo_n "(cached) " >&6 | ||
5026 | else | ||
5027 | case $MANDOC in | ||
5028 | [\\/]* | ?:[\\/]*) | ||
5029 | ac_cv_path_MANDOC="$MANDOC" # Let the user override the test with a path. | ||
5030 | ;; | ||
5031 | *) | ||
5032 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5033 | for as_dir in $PATH | ||
5034 | do | ||
5035 | IFS=$as_save_IFS | ||
5036 | test -z "$as_dir" && as_dir=. | ||
5037 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5038 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5039 | ac_cv_path_MANDOC="$as_dir/$ac_word$ac_exec_ext" | ||
5040 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5041 | break 2 | ||
5042 | fi | ||
5043 | done | ||
5044 | done | ||
5045 | IFS=$as_save_IFS | ||
5046 | |||
5047 | ;; | ||
5048 | esac | ||
5049 | fi | ||
5050 | MANDOC=$ac_cv_path_MANDOC | ||
5051 | if test -n "$MANDOC"; then | ||
5052 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANDOC" >&5 | ||
5053 | $as_echo "$MANDOC" >&6; } | ||
5054 | else | ||
5055 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5056 | $as_echo "no" >&6; } | ||
5057 | fi | ||
5058 | |||
5059 | |||
5060 | TEST_SHELL=sh | ||
5061 | |||
5062 | |||
5063 | if test "x$MANDOC" != "x" ; then | ||
5064 | MANFMT="$MANDOC" | ||
5065 | elif test "x$NROFF" != "x" ; then | ||
5066 | MANFMT="$NROFF -mandoc" | ||
5067 | elif test "x$GROFF" != "x" ; then | ||
5068 | MANFMT="$GROFF -mandoc -Tascii" | ||
5069 | else | ||
5070 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no manpage formatted found" >&5 | ||
5071 | $as_echo "$as_me: WARNING: no manpage formatted found" >&2;} | ||
5072 | MANFMT="false" | ||
5073 | fi | ||
5074 | |||
5075 | |||
5076 | # Extract the first word of "groupadd", so it can be a program name with args. | ||
5077 | set dummy groupadd; ac_word=$2 | ||
5078 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5079 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5080 | if ${ac_cv_path_PATH_GROUPADD_PROG+:} false; then : | ||
5081 | $as_echo_n "(cached) " >&6 | ||
5082 | else | ||
5083 | case $PATH_GROUPADD_PROG in | ||
5084 | [\\/]* | ?:[\\/]*) | ||
5085 | ac_cv_path_PATH_GROUPADD_PROG="$PATH_GROUPADD_PROG" # Let the user override the test with a path. | ||
5086 | ;; | ||
5087 | *) | ||
5088 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5089 | for as_dir in /usr/sbin${PATH_SEPARATOR}/etc | ||
5090 | do | ||
5091 | IFS=$as_save_IFS | ||
5092 | test -z "$as_dir" && as_dir=. | ||
5093 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5094 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5095 | ac_cv_path_PATH_GROUPADD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
5096 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5097 | break 2 | ||
5098 | fi | ||
5099 | done | ||
5100 | done | ||
5101 | IFS=$as_save_IFS | ||
5102 | |||
5103 | test -z "$ac_cv_path_PATH_GROUPADD_PROG" && ac_cv_path_PATH_GROUPADD_PROG="groupadd" | ||
5104 | ;; | ||
5105 | esac | ||
5106 | fi | ||
5107 | PATH_GROUPADD_PROG=$ac_cv_path_PATH_GROUPADD_PROG | ||
5108 | if test -n "$PATH_GROUPADD_PROG"; then | ||
5109 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_GROUPADD_PROG" >&5 | ||
5110 | $as_echo "$PATH_GROUPADD_PROG" >&6; } | ||
5111 | else | ||
5112 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5113 | $as_echo "no" >&6; } | ||
5114 | fi | ||
5115 | |||
5116 | |||
5117 | # Extract the first word of "useradd", so it can be a program name with args. | ||
5118 | set dummy useradd; ac_word=$2 | ||
5119 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5120 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5121 | if ${ac_cv_path_PATH_USERADD_PROG+:} false; then : | ||
5122 | $as_echo_n "(cached) " >&6 | ||
5123 | else | ||
5124 | case $PATH_USERADD_PROG in | ||
5125 | [\\/]* | ?:[\\/]*) | ||
5126 | ac_cv_path_PATH_USERADD_PROG="$PATH_USERADD_PROG" # Let the user override the test with a path. | ||
5127 | ;; | ||
5128 | *) | ||
5129 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5130 | for as_dir in /usr/sbin${PATH_SEPARATOR}/etc | ||
5131 | do | ||
5132 | IFS=$as_save_IFS | ||
5133 | test -z "$as_dir" && as_dir=. | ||
5134 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5135 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5136 | ac_cv_path_PATH_USERADD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
5137 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5138 | break 2 | ||
5139 | fi | ||
5140 | done | ||
5141 | done | ||
5142 | IFS=$as_save_IFS | ||
5143 | |||
5144 | test -z "$ac_cv_path_PATH_USERADD_PROG" && ac_cv_path_PATH_USERADD_PROG="useradd" | ||
5145 | ;; | ||
5146 | esac | ||
5147 | fi | ||
5148 | PATH_USERADD_PROG=$ac_cv_path_PATH_USERADD_PROG | ||
5149 | if test -n "$PATH_USERADD_PROG"; then | ||
5150 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_USERADD_PROG" >&5 | ||
5151 | $as_echo "$PATH_USERADD_PROG" >&6; } | ||
5152 | else | ||
5153 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5154 | $as_echo "no" >&6; } | ||
5155 | fi | ||
5156 | |||
5157 | |||
5158 | # Extract the first word of "pkgmk", so it can be a program name with args. | ||
5159 | set dummy pkgmk; ac_word=$2 | ||
5160 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5161 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5162 | if ${ac_cv_prog_MAKE_PACKAGE_SUPPORTED+:} false; then : | ||
5163 | $as_echo_n "(cached) " >&6 | ||
5164 | else | ||
5165 | if test -n "$MAKE_PACKAGE_SUPPORTED"; then | ||
5166 | ac_cv_prog_MAKE_PACKAGE_SUPPORTED="$MAKE_PACKAGE_SUPPORTED" # Let the user override the test. | ||
5167 | else | ||
5168 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5169 | for as_dir in $PATH | ||
5170 | do | ||
5171 | IFS=$as_save_IFS | ||
5172 | test -z "$as_dir" && as_dir=. | ||
5173 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5174 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5175 | ac_cv_prog_MAKE_PACKAGE_SUPPORTED="yes" | ||
5176 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5177 | break 2 | ||
5178 | fi | ||
5179 | done | ||
5180 | done | ||
5181 | IFS=$as_save_IFS | ||
5182 | |||
5183 | test -z "$ac_cv_prog_MAKE_PACKAGE_SUPPORTED" && ac_cv_prog_MAKE_PACKAGE_SUPPORTED="no" | ||
5184 | fi | ||
5185 | fi | ||
5186 | MAKE_PACKAGE_SUPPORTED=$ac_cv_prog_MAKE_PACKAGE_SUPPORTED | ||
5187 | if test -n "$MAKE_PACKAGE_SUPPORTED"; then | ||
5188 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKE_PACKAGE_SUPPORTED" >&5 | ||
5189 | $as_echo "$MAKE_PACKAGE_SUPPORTED" >&6; } | ||
5190 | else | ||
5191 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5192 | $as_echo "no" >&6; } | ||
5193 | fi | ||
5194 | |||
5195 | |||
5196 | if test -x /sbin/sh; then | ||
5197 | STARTUP_SCRIPT_SHELL=/sbin/sh | ||
5198 | |||
5199 | else | ||
5200 | STARTUP_SCRIPT_SHELL=/bin/sh | ||
5201 | |||
5202 | fi | ||
5203 | |||
5204 | # System features | ||
5205 | # Check whether --enable-largefile was given. | ||
5206 | if test "${enable_largefile+set}" = set; then : | ||
5207 | enableval=$enable_largefile; | ||
5208 | fi | ||
5209 | |||
5210 | if test "$enable_largefile" != no; then | ||
5211 | |||
5212 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 | ||
5213 | $as_echo_n "checking for special C compiler options needed for large files... " >&6; } | ||
5214 | if ${ac_cv_sys_largefile_CC+:} false; then : | ||
5215 | $as_echo_n "(cached) " >&6 | ||
5216 | else | ||
5217 | ac_cv_sys_largefile_CC=no | ||
5218 | if test "$GCC" != yes; then | ||
5219 | ac_save_CC=$CC | ||
5220 | while :; do | ||
5221 | # IRIX 6.2 and later do not support large files by default, | ||
5222 | # so use the C compiler's -n32 option if that helps. | ||
5223 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5224 | /* end confdefs.h. */ | ||
5225 | #include <sys/types.h> | ||
5226 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5227 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5228 | since some C++ compilers masquerading as C compilers | ||
5229 | incorrectly reject 9223372036854775807. */ | ||
5230 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5231 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5232 | && LARGE_OFF_T % 2147483647 == 1) | ||
5233 | ? 1 : -1]; | ||
5234 | int | ||
5235 | main () | ||
5236 | { | ||
5237 | |||
5238 | ; | ||
5239 | return 0; | ||
5240 | } | ||
5241 | _ACEOF | ||
5242 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5243 | break | ||
5244 | fi | ||
5245 | rm -f core conftest.err conftest.$ac_objext | ||
5246 | CC="$CC -n32" | ||
5247 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5248 | ac_cv_sys_largefile_CC=' -n32'; break | ||
5249 | fi | ||
5250 | rm -f core conftest.err conftest.$ac_objext | ||
5251 | break | ||
5252 | done | ||
5253 | CC=$ac_save_CC | ||
5254 | rm -f conftest.$ac_ext | ||
5255 | fi | ||
5256 | fi | ||
5257 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 | ||
5258 | $as_echo "$ac_cv_sys_largefile_CC" >&6; } | ||
5259 | if test "$ac_cv_sys_largefile_CC" != no; then | ||
5260 | CC=$CC$ac_cv_sys_largefile_CC | ||
5261 | fi | ||
5262 | |||
5263 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 | ||
5264 | $as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } | ||
5265 | if ${ac_cv_sys_file_offset_bits+:} false; then : | ||
5266 | $as_echo_n "(cached) " >&6 | ||
5267 | else | ||
5268 | while :; do | ||
5269 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5270 | /* end confdefs.h. */ | ||
5271 | #include <sys/types.h> | ||
5272 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5273 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5274 | since some C++ compilers masquerading as C compilers | ||
5275 | incorrectly reject 9223372036854775807. */ | ||
5276 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5277 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5278 | && LARGE_OFF_T % 2147483647 == 1) | ||
5279 | ? 1 : -1]; | ||
5280 | int | ||
5281 | main () | ||
5282 | { | ||
5283 | |||
5284 | ; | ||
5285 | return 0; | ||
5286 | } | ||
5287 | _ACEOF | ||
5288 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5289 | ac_cv_sys_file_offset_bits=no; break | ||
5290 | fi | ||
5291 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5292 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5293 | /* end confdefs.h. */ | ||
5294 | #define _FILE_OFFSET_BITS 64 | ||
5295 | #include <sys/types.h> | ||
5296 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5297 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5298 | since some C++ compilers masquerading as C compilers | ||
5299 | incorrectly reject 9223372036854775807. */ | ||
5300 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5301 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5302 | && LARGE_OFF_T % 2147483647 == 1) | ||
5303 | ? 1 : -1]; | ||
5304 | int | ||
5305 | main () | ||
5306 | { | ||
5307 | |||
5308 | ; | ||
5309 | return 0; | ||
5310 | } | ||
5311 | _ACEOF | ||
5312 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5313 | ac_cv_sys_file_offset_bits=64; break | ||
5314 | fi | ||
5315 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5316 | ac_cv_sys_file_offset_bits=unknown | ||
5317 | break | ||
5318 | done | ||
5319 | fi | ||
5320 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 | ||
5321 | $as_echo "$ac_cv_sys_file_offset_bits" >&6; } | ||
5322 | case $ac_cv_sys_file_offset_bits in #( | ||
5323 | no | unknown) ;; | ||
5324 | *) | ||
5325 | cat >>confdefs.h <<_ACEOF | ||
5326 | #define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits | ||
5327 | _ACEOF | ||
5328 | ;; | ||
5329 | esac | ||
5330 | rm -rf conftest* | ||
5331 | if test $ac_cv_sys_file_offset_bits = unknown; then | ||
5332 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 | ||
5333 | $as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } | ||
5334 | if ${ac_cv_sys_large_files+:} false; then : | ||
5335 | $as_echo_n "(cached) " >&6 | ||
5336 | else | ||
5337 | while :; do | ||
5338 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5339 | /* end confdefs.h. */ | ||
5340 | #include <sys/types.h> | ||
5341 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5342 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5343 | since some C++ compilers masquerading as C compilers | ||
5344 | incorrectly reject 9223372036854775807. */ | ||
5345 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5346 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5347 | && LARGE_OFF_T % 2147483647 == 1) | ||
5348 | ? 1 : -1]; | ||
5349 | int | ||
5350 | main () | ||
5351 | { | ||
5352 | |||
5353 | ; | ||
5354 | return 0; | ||
5355 | } | ||
5356 | _ACEOF | ||
5357 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5358 | ac_cv_sys_large_files=no; break | ||
5359 | fi | ||
5360 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5361 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5362 | /* end confdefs.h. */ | ||
5363 | #define _LARGE_FILES 1 | ||
5364 | #include <sys/types.h> | ||
5365 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5366 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5367 | since some C++ compilers masquerading as C compilers | ||
5368 | incorrectly reject 9223372036854775807. */ | ||
5369 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5370 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5371 | && LARGE_OFF_T % 2147483647 == 1) | ||
5372 | ? 1 : -1]; | ||
5373 | int | ||
5374 | main () | ||
5375 | { | ||
5376 | |||
5377 | ; | ||
5378 | return 0; | ||
5379 | } | ||
5380 | _ACEOF | ||
5381 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5382 | ac_cv_sys_large_files=1; break | ||
5383 | fi | ||
5384 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5385 | ac_cv_sys_large_files=unknown | ||
5386 | break | ||
5387 | done | ||
5388 | fi | ||
5389 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 | ||
5390 | $as_echo "$ac_cv_sys_large_files" >&6; } | ||
5391 | case $ac_cv_sys_large_files in #( | ||
5392 | no | unknown) ;; | ||
5393 | *) | ||
5394 | cat >>confdefs.h <<_ACEOF | ||
5395 | #define _LARGE_FILES $ac_cv_sys_large_files | ||
5396 | _ACEOF | ||
5397 | ;; | ||
5398 | esac | ||
5399 | rm -rf conftest* | ||
5400 | fi | ||
5401 | fi | ||
5402 | |||
5403 | |||
5404 | if test -z "$AR" ; then | ||
5405 | as_fn_error $? "*** 'ar' missing, please install or fix your \$PATH ***" "$LINENO" 5 | ||
5406 | fi | ||
5407 | |||
5408 | # Use LOGIN_PROGRAM from environment if possible | ||
5409 | if test ! -z "$LOGIN_PROGRAM" ; then | ||
5410 | |||
5411 | cat >>confdefs.h <<_ACEOF | ||
5412 | #define LOGIN_PROGRAM_FALLBACK "$LOGIN_PROGRAM" | ||
5413 | _ACEOF | ||
5414 | |||
5415 | else | ||
5416 | # Search for login | ||
5417 | # Extract the first word of "login", so it can be a program name with args. | ||
5418 | set dummy login; ac_word=$2 | ||
5419 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5420 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5421 | if ${ac_cv_path_LOGIN_PROGRAM_FALLBACK+:} false; then : | ||
5422 | $as_echo_n "(cached) " >&6 | ||
5423 | else | ||
5424 | case $LOGIN_PROGRAM_FALLBACK in | ||
5425 | [\\/]* | ?:[\\/]*) | ||
5426 | ac_cv_path_LOGIN_PROGRAM_FALLBACK="$LOGIN_PROGRAM_FALLBACK" # Let the user override the test with a path. | ||
5427 | ;; | ||
5428 | *) | ||
5429 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5430 | for as_dir in $PATH | ||
5431 | do | ||
5432 | IFS=$as_save_IFS | ||
5433 | test -z "$as_dir" && as_dir=. | ||
5434 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5435 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5436 | ac_cv_path_LOGIN_PROGRAM_FALLBACK="$as_dir/$ac_word$ac_exec_ext" | ||
5437 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5438 | break 2 | ||
5439 | fi | ||
5440 | done | ||
5441 | done | ||
5442 | IFS=$as_save_IFS | ||
5443 | |||
5444 | ;; | ||
5445 | esac | ||
5446 | fi | ||
5447 | LOGIN_PROGRAM_FALLBACK=$ac_cv_path_LOGIN_PROGRAM_FALLBACK | ||
5448 | if test -n "$LOGIN_PROGRAM_FALLBACK"; then | ||
5449 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LOGIN_PROGRAM_FALLBACK" >&5 | ||
5450 | $as_echo "$LOGIN_PROGRAM_FALLBACK" >&6; } | ||
5451 | else | ||
5452 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5453 | $as_echo "no" >&6; } | ||
5454 | fi | ||
5455 | |||
5456 | |||
5457 | if test ! -z "$LOGIN_PROGRAM_FALLBACK" ; then | ||
5458 | cat >>confdefs.h <<_ACEOF | ||
5459 | #define LOGIN_PROGRAM_FALLBACK "$LOGIN_PROGRAM_FALLBACK" | ||
5460 | _ACEOF | ||
5461 | |||
5462 | fi | ||
5463 | fi | ||
5464 | |||
5465 | # Extract the first word of "passwd", so it can be a program name with args. | ||
5466 | set dummy passwd; ac_word=$2 | ||
5467 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5468 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5469 | if ${ac_cv_path_PATH_PASSWD_PROG+:} false; then : | ||
5470 | $as_echo_n "(cached) " >&6 | ||
5471 | else | ||
5472 | case $PATH_PASSWD_PROG in | ||
5473 | [\\/]* | ?:[\\/]*) | ||
5474 | ac_cv_path_PATH_PASSWD_PROG="$PATH_PASSWD_PROG" # Let the user override the test with a path. | ||
5475 | ;; | ||
5476 | *) | ||
5477 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5478 | for as_dir in $PATH | ||
5479 | do | ||
5480 | IFS=$as_save_IFS | ||
5481 | test -z "$as_dir" && as_dir=. | ||
5482 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5483 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
5484 | ac_cv_path_PATH_PASSWD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
5485 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5486 | break 2 | ||
5487 | fi | ||
5488 | done | ||
5489 | done | ||
5490 | IFS=$as_save_IFS | ||
5491 | |||
5492 | ;; | ||
5493 | esac | ||
5494 | fi | ||
5495 | PATH_PASSWD_PROG=$ac_cv_path_PATH_PASSWD_PROG | ||
5496 | if test -n "$PATH_PASSWD_PROG"; then | ||
5497 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_PASSWD_PROG" >&5 | ||
5498 | $as_echo "$PATH_PASSWD_PROG" >&6; } | ||
5499 | else | ||
5500 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5501 | $as_echo "no" >&6; } | ||
5502 | fi | ||
5503 | |||
5504 | |||
5505 | if test ! -z "$PATH_PASSWD_PROG" ; then | ||
5506 | |||
5507 | cat >>confdefs.h <<_ACEOF | ||
5508 | #define _PATH_PASSWD_PROG "$PATH_PASSWD_PROG" | ||
5509 | _ACEOF | ||
5510 | |||
5511 | fi | ||
5512 | |||
5513 | if test -z "$LD" ; then | ||
5514 | LD=$CC | ||
5515 | fi | ||
5516 | |||
5517 | |||
5518 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 | ||
5519 | $as_echo_n "checking for inline... " >&6; } | ||
5520 | if ${ac_cv_c_inline+:} false; then : | ||
5521 | $as_echo_n "(cached) " >&6 | ||
5522 | else | ||
5523 | ac_cv_c_inline=no | ||
5524 | for ac_kw in inline __inline__ __inline; do | ||
5525 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5526 | /* end confdefs.h. */ | ||
5527 | #ifndef __cplusplus | ||
5528 | typedef int foo_t; | ||
5529 | static $ac_kw foo_t static_foo () {return 0; } | ||
5530 | $ac_kw foo_t foo () {return 0; } | ||
5531 | #endif | ||
5532 | |||
5533 | _ACEOF | ||
5534 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5535 | ac_cv_c_inline=$ac_kw | ||
5536 | fi | ||
5537 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5538 | test "$ac_cv_c_inline" != no && break | ||
5539 | done | ||
5540 | |||
5541 | fi | ||
5542 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 | ||
5543 | $as_echo "$ac_cv_c_inline" >&6; } | ||
5544 | |||
5545 | case $ac_cv_c_inline in | ||
5546 | inline | yes) ;; | ||
5547 | *) | ||
5548 | case $ac_cv_c_inline in | ||
5549 | no) ac_val=;; | ||
5550 | *) ac_val=$ac_cv_c_inline;; | ||
5551 | esac | ||
5552 | cat >>confdefs.h <<_ACEOF | ||
5553 | #ifndef __cplusplus | ||
5554 | #define inline $ac_val | ||
5555 | #endif | ||
5556 | _ACEOF | ||
5557 | ;; | ||
5558 | esac | ||
5559 | |||
5560 | |||
5561 | ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h> | ||
5562 | " | ||
5563 | if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then : | ||
5564 | have_llong_max=1 | ||
5565 | fi | ||
5566 | |||
5567 | ac_fn_c_check_decl "$LINENO" "SYSTR_POLICY_KILL" "ac_cv_have_decl_SYSTR_POLICY_KILL" " | ||
5568 | #include <sys/types.h> | ||
5569 | #include <sys/param.h> | ||
5570 | #include <dev/systrace.h> | ||
5571 | |||
5572 | " | ||
5573 | if test "x$ac_cv_have_decl_SYSTR_POLICY_KILL" = xyes; then : | ||
5574 | have_systr_policy_kill=1 | ||
5575 | fi | ||
5576 | |||
5577 | ac_fn_c_check_decl "$LINENO" "RLIMIT_NPROC" "ac_cv_have_decl_RLIMIT_NPROC" " | ||
5578 | #include <sys/types.h> | ||
5579 | #include <sys/resource.h> | ||
5580 | |||
5581 | " | ||
5582 | if test "x$ac_cv_have_decl_RLIMIT_NPROC" = xyes; then : | ||
5583 | |||
5584 | $as_echo "#define HAVE_RLIMIT_NPROC /**/" >>confdefs.h | ||
5585 | |||
5586 | fi | ||
5587 | |||
5588 | ac_fn_c_check_decl "$LINENO" "PR_SET_NO_NEW_PRIVS" "ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" " | ||
5589 | #include <sys/types.h> | ||
5590 | #include <linux/prctl.h> | ||
5591 | |||
5592 | " | ||
5593 | if test "x$ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" = xyes; then : | ||
5594 | have_linux_no_new_privs=1 | ||
5595 | fi | ||
5596 | |||
5597 | |||
5598 | use_stack_protector=1 | ||
5599 | use_toolchain_hardening=1 | ||
5600 | |||
5601 | # Check whether --with-stackprotect was given. | ||
5602 | if test "${with_stackprotect+set}" = set; then : | ||
5603 | withval=$with_stackprotect; | ||
5604 | if test "x$withval" = "xno"; then | ||
5605 | use_stack_protector=0 | ||
5606 | fi | ||
5607 | fi | ||
5608 | |||
5609 | |||
5610 | # Check whether --with-hardening was given. | ||
5611 | if test "${with_hardening+set}" = set; then : | ||
5612 | withval=$with_hardening; | ||
5613 | if test "x$withval" = "xno"; then | ||
5614 | use_toolchain_hardening=0 | ||
5615 | fi | ||
5616 | fi | ||
5617 | |||
5618 | |||
5619 | # We use -Werror for the tests only so that we catch warnings like "this is | ||
5620 | # on by default" for things like -fPIE. | ||
5621 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror" >&5 | ||
5622 | $as_echo_n "checking if $CC supports -Werror... " >&6; } | ||
5623 | saved_CFLAGS="$CFLAGS" | ||
5624 | CFLAGS="$CFLAGS -Werror" | ||
5625 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5626 | /* end confdefs.h. */ | ||
5627 | int main(void) { return 0; } | ||
5628 | _ACEOF | ||
5629 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5630 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5631 | $as_echo "yes" >&6; } | ||
5632 | WERROR="-Werror" | ||
5633 | else | ||
5634 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5635 | $as_echo "no" >&6; } | ||
5636 | WERROR="" | ||
5637 | |||
5638 | fi | ||
5639 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5640 | CFLAGS="$saved_CFLAGS" | ||
5641 | |||
5642 | if test "$GCC" = "yes" || test "$GCC" = "egcs"; then | ||
5643 | { | ||
5644 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Qunused-arguments" >&5 | ||
5645 | $as_echo_n "checking if $CC supports compile flag -Qunused-arguments... " >&6; } | ||
5646 | saved_CFLAGS="$CFLAGS" | ||
5647 | CFLAGS="$CFLAGS $WERROR -Qunused-arguments" | ||
5648 | _define_flag="" | ||
5649 | test "x$_define_flag" = "x" && _define_flag="-Qunused-arguments" | ||
5650 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5651 | /* end confdefs.h. */ | ||
5652 | |||
5653 | #include <stdlib.h> | ||
5654 | #include <stdio.h> | ||
5655 | int main(int argc, char **argv) { | ||
5656 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5657 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5658 | float l = i * 2.1; | ||
5659 | double m = l / 0.5; | ||
5660 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5661 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5662 | exit(0); | ||
5663 | } | ||
5664 | |||
5665 | _ACEOF | ||
5666 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5667 | |||
5668 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5669 | then | ||
5670 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5671 | $as_echo "no" >&6; } | ||
5672 | CFLAGS="$saved_CFLAGS" | ||
5673 | else | ||
5674 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5675 | $as_echo "yes" >&6; } | ||
5676 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5677 | fi | ||
5678 | else | ||
5679 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5680 | $as_echo "no" >&6; } | ||
5681 | CFLAGS="$saved_CFLAGS" | ||
5682 | |||
5683 | fi | ||
5684 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5685 | } | ||
5686 | { | ||
5687 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunknown-warning-option" >&5 | ||
5688 | $as_echo_n "checking if $CC supports compile flag -Wunknown-warning-option... " >&6; } | ||
5689 | saved_CFLAGS="$CFLAGS" | ||
5690 | CFLAGS="$CFLAGS $WERROR -Wunknown-warning-option" | ||
5691 | _define_flag="" | ||
5692 | test "x$_define_flag" = "x" && _define_flag="-Wunknown-warning-option" | ||
5693 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5694 | /* end confdefs.h. */ | ||
5695 | |||
5696 | #include <stdlib.h> | ||
5697 | #include <stdio.h> | ||
5698 | int main(int argc, char **argv) { | ||
5699 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5700 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5701 | float l = i * 2.1; | ||
5702 | double m = l / 0.5; | ||
5703 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5704 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5705 | exit(0); | ||
5706 | } | ||
5707 | |||
5708 | _ACEOF | ||
5709 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5710 | |||
5711 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5712 | then | ||
5713 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5714 | $as_echo "no" >&6; } | ||
5715 | CFLAGS="$saved_CFLAGS" | ||
5716 | else | ||
5717 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5718 | $as_echo "yes" >&6; } | ||
5719 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5720 | fi | ||
5721 | else | ||
5722 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5723 | $as_echo "no" >&6; } | ||
5724 | CFLAGS="$saved_CFLAGS" | ||
5725 | |||
5726 | fi | ||
5727 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5728 | } | ||
5729 | { | ||
5730 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wall" >&5 | ||
5731 | $as_echo_n "checking if $CC supports compile flag -Wall... " >&6; } | ||
5732 | saved_CFLAGS="$CFLAGS" | ||
5733 | CFLAGS="$CFLAGS $WERROR -Wall" | ||
5734 | _define_flag="" | ||
5735 | test "x$_define_flag" = "x" && _define_flag="-Wall" | ||
5736 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5737 | /* end confdefs.h. */ | ||
5738 | |||
5739 | #include <stdlib.h> | ||
5740 | #include <stdio.h> | ||
5741 | int main(int argc, char **argv) { | ||
5742 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5743 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5744 | float l = i * 2.1; | ||
5745 | double m = l / 0.5; | ||
5746 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5747 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5748 | exit(0); | ||
5749 | } | ||
5750 | |||
5751 | _ACEOF | ||
5752 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5753 | |||
5754 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5755 | then | ||
5756 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5757 | $as_echo "no" >&6; } | ||
5758 | CFLAGS="$saved_CFLAGS" | ||
5759 | else | ||
5760 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5761 | $as_echo "yes" >&6; } | ||
5762 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5763 | fi | ||
5764 | else | ||
5765 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5766 | $as_echo "no" >&6; } | ||
5767 | CFLAGS="$saved_CFLAGS" | ||
5768 | |||
5769 | fi | ||
5770 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5771 | } | ||
5772 | { | ||
5773 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-arith" >&5 | ||
5774 | $as_echo_n "checking if $CC supports compile flag -Wpointer-arith... " >&6; } | ||
5775 | saved_CFLAGS="$CFLAGS" | ||
5776 | CFLAGS="$CFLAGS $WERROR -Wpointer-arith" | ||
5777 | _define_flag="" | ||
5778 | test "x$_define_flag" = "x" && _define_flag="-Wpointer-arith" | ||
5779 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5780 | /* end confdefs.h. */ | ||
5781 | |||
5782 | #include <stdlib.h> | ||
5783 | #include <stdio.h> | ||
5784 | int main(int argc, char **argv) { | ||
5785 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5786 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5787 | float l = i * 2.1; | ||
5788 | double m = l / 0.5; | ||
5789 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5790 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5791 | exit(0); | ||
5792 | } | ||
5793 | |||
5794 | _ACEOF | ||
5795 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5796 | |||
5797 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5798 | then | ||
5799 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5800 | $as_echo "no" >&6; } | ||
5801 | CFLAGS="$saved_CFLAGS" | ||
5802 | else | ||
5803 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5804 | $as_echo "yes" >&6; } | ||
5805 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5806 | fi | ||
5807 | else | ||
5808 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5809 | $as_echo "no" >&6; } | ||
5810 | CFLAGS="$saved_CFLAGS" | ||
5811 | |||
5812 | fi | ||
5813 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5814 | } | ||
5815 | { | ||
5816 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wuninitialized" >&5 | ||
5817 | $as_echo_n "checking if $CC supports compile flag -Wuninitialized... " >&6; } | ||
5818 | saved_CFLAGS="$CFLAGS" | ||
5819 | CFLAGS="$CFLAGS $WERROR -Wuninitialized" | ||
5820 | _define_flag="" | ||
5821 | test "x$_define_flag" = "x" && _define_flag="-Wuninitialized" | ||
5822 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5823 | /* end confdefs.h. */ | ||
5824 | |||
5825 | #include <stdlib.h> | ||
5826 | #include <stdio.h> | ||
5827 | int main(int argc, char **argv) { | ||
5828 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5829 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5830 | float l = i * 2.1; | ||
5831 | double m = l / 0.5; | ||
5832 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5833 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5834 | exit(0); | ||
5835 | } | ||
5836 | |||
5837 | _ACEOF | ||
5838 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5839 | |||
5840 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5841 | then | ||
5842 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5843 | $as_echo "no" >&6; } | ||
5844 | CFLAGS="$saved_CFLAGS" | ||
5845 | else | ||
5846 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5847 | $as_echo "yes" >&6; } | ||
5848 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5849 | fi | ||
5850 | else | ||
5851 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5852 | $as_echo "no" >&6; } | ||
5853 | CFLAGS="$saved_CFLAGS" | ||
5854 | |||
5855 | fi | ||
5856 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5857 | } | ||
5858 | { | ||
5859 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsign-compare" >&5 | ||
5860 | $as_echo_n "checking if $CC supports compile flag -Wsign-compare... " >&6; } | ||
5861 | saved_CFLAGS="$CFLAGS" | ||
5862 | CFLAGS="$CFLAGS $WERROR -Wsign-compare" | ||
5863 | _define_flag="" | ||
5864 | test "x$_define_flag" = "x" && _define_flag="-Wsign-compare" | ||
5865 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5866 | /* end confdefs.h. */ | ||
5867 | |||
5868 | #include <stdlib.h> | ||
5869 | #include <stdio.h> | ||
5870 | int main(int argc, char **argv) { | ||
5871 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5872 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5873 | float l = i * 2.1; | ||
5874 | double m = l / 0.5; | ||
5875 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5876 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5877 | exit(0); | ||
5878 | } | ||
5879 | |||
5880 | _ACEOF | ||
5881 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5882 | |||
5883 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5884 | then | ||
5885 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5886 | $as_echo "no" >&6; } | ||
5887 | CFLAGS="$saved_CFLAGS" | ||
5888 | else | ||
5889 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5890 | $as_echo "yes" >&6; } | ||
5891 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5892 | fi | ||
5893 | else | ||
5894 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5895 | $as_echo "no" >&6; } | ||
5896 | CFLAGS="$saved_CFLAGS" | ||
5897 | |||
5898 | fi | ||
5899 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5900 | } | ||
5901 | { | ||
5902 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wformat-security" >&5 | ||
5903 | $as_echo_n "checking if $CC supports compile flag -Wformat-security... " >&6; } | ||
5904 | saved_CFLAGS="$CFLAGS" | ||
5905 | CFLAGS="$CFLAGS $WERROR -Wformat-security" | ||
5906 | _define_flag="" | ||
5907 | test "x$_define_flag" = "x" && _define_flag="-Wformat-security" | ||
5908 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5909 | /* end confdefs.h. */ | ||
5910 | |||
5911 | #include <stdlib.h> | ||
5912 | #include <stdio.h> | ||
5913 | int main(int argc, char **argv) { | ||
5914 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5915 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5916 | float l = i * 2.1; | ||
5917 | double m = l / 0.5; | ||
5918 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5919 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5920 | exit(0); | ||
5921 | } | ||
5922 | |||
5923 | _ACEOF | ||
5924 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5925 | |||
5926 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5927 | then | ||
5928 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5929 | $as_echo "no" >&6; } | ||
5930 | CFLAGS="$saved_CFLAGS" | ||
5931 | else | ||
5932 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5933 | $as_echo "yes" >&6; } | ||
5934 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5935 | fi | ||
5936 | else | ||
5937 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5938 | $as_echo "no" >&6; } | ||
5939 | CFLAGS="$saved_CFLAGS" | ||
5940 | |||
5941 | fi | ||
5942 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5943 | } | ||
5944 | { | ||
5945 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsizeof-pointer-memaccess" >&5 | ||
5946 | $as_echo_n "checking if $CC supports compile flag -Wsizeof-pointer-memaccess... " >&6; } | ||
5947 | saved_CFLAGS="$CFLAGS" | ||
5948 | CFLAGS="$CFLAGS $WERROR -Wsizeof-pointer-memaccess" | ||
5949 | _define_flag="" | ||
5950 | test "x$_define_flag" = "x" && _define_flag="-Wsizeof-pointer-memaccess" | ||
5951 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5952 | /* end confdefs.h. */ | ||
5953 | |||
5954 | #include <stdlib.h> | ||
5955 | #include <stdio.h> | ||
5956 | int main(int argc, char **argv) { | ||
5957 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5958 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5959 | float l = i * 2.1; | ||
5960 | double m = l / 0.5; | ||
5961 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5962 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5963 | exit(0); | ||
5964 | } | ||
5965 | |||
5966 | _ACEOF | ||
5967 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5968 | |||
5969 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
5970 | then | ||
5971 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5972 | $as_echo "no" >&6; } | ||
5973 | CFLAGS="$saved_CFLAGS" | ||
5974 | else | ||
5975 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5976 | $as_echo "yes" >&6; } | ||
5977 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5978 | fi | ||
5979 | else | ||
5980 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5981 | $as_echo "no" >&6; } | ||
5982 | CFLAGS="$saved_CFLAGS" | ||
5983 | |||
5984 | fi | ||
5985 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5986 | } | ||
5987 | { | ||
5988 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-sign" >&5 | ||
5989 | $as_echo_n "checking if $CC supports compile flag -Wpointer-sign... " >&6; } | ||
5990 | saved_CFLAGS="$CFLAGS" | ||
5991 | CFLAGS="$CFLAGS $WERROR -Wpointer-sign" | ||
5992 | _define_flag="-Wno-pointer-sign" | ||
5993 | test "x$_define_flag" = "x" && _define_flag="-Wpointer-sign" | ||
5994 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5995 | /* end confdefs.h. */ | ||
5996 | |||
5997 | #include <stdlib.h> | ||
5998 | #include <stdio.h> | ||
5999 | int main(int argc, char **argv) { | ||
6000 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6001 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6002 | float l = i * 2.1; | ||
6003 | double m = l / 0.5; | ||
6004 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6005 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6006 | exit(0); | ||
6007 | } | ||
6008 | |||
6009 | _ACEOF | ||
6010 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6011 | |||
6012 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
6013 | then | ||
6014 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6015 | $as_echo "no" >&6; } | ||
6016 | CFLAGS="$saved_CFLAGS" | ||
6017 | else | ||
6018 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6019 | $as_echo "yes" >&6; } | ||
6020 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6021 | fi | ||
6022 | else | ||
6023 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6024 | $as_echo "no" >&6; } | ||
6025 | CFLAGS="$saved_CFLAGS" | ||
6026 | |||
6027 | fi | ||
6028 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6029 | } | ||
6030 | { | ||
6031 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunused-result" >&5 | ||
6032 | $as_echo_n "checking if $CC supports compile flag -Wunused-result... " >&6; } | ||
6033 | saved_CFLAGS="$CFLAGS" | ||
6034 | CFLAGS="$CFLAGS $WERROR -Wunused-result" | ||
6035 | _define_flag="-Wno-unused-result" | ||
6036 | test "x$_define_flag" = "x" && _define_flag="-Wunused-result" | ||
6037 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6038 | /* end confdefs.h. */ | ||
6039 | |||
6040 | #include <stdlib.h> | ||
6041 | #include <stdio.h> | ||
6042 | int main(int argc, char **argv) { | ||
6043 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6044 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6045 | float l = i * 2.1; | ||
6046 | double m = l / 0.5; | ||
6047 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6048 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6049 | exit(0); | ||
6050 | } | ||
6051 | |||
6052 | _ACEOF | ||
6053 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6054 | |||
6055 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
6056 | then | ||
6057 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6058 | $as_echo "no" >&6; } | ||
6059 | CFLAGS="$saved_CFLAGS" | ||
6060 | else | ||
6061 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6062 | $as_echo "yes" >&6; } | ||
6063 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6064 | fi | ||
6065 | else | ||
6066 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6067 | $as_echo "no" >&6; } | ||
6068 | CFLAGS="$saved_CFLAGS" | ||
6069 | |||
6070 | fi | ||
6071 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6072 | } | ||
6073 | { | ||
6074 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fno-strict-aliasing" >&5 | ||
6075 | $as_echo_n "checking if $CC supports compile flag -fno-strict-aliasing... " >&6; } | ||
6076 | saved_CFLAGS="$CFLAGS" | ||
6077 | CFLAGS="$CFLAGS $WERROR -fno-strict-aliasing" | ||
6078 | _define_flag="" | ||
6079 | test "x$_define_flag" = "x" && _define_flag="-fno-strict-aliasing" | ||
6080 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6081 | /* end confdefs.h. */ | ||
6082 | |||
6083 | #include <stdlib.h> | ||
6084 | #include <stdio.h> | ||
6085 | int main(int argc, char **argv) { | ||
6086 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6087 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6088 | float l = i * 2.1; | ||
6089 | double m = l / 0.5; | ||
6090 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6091 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6092 | exit(0); | ||
6093 | } | ||
6094 | |||
6095 | _ACEOF | ||
6096 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6097 | |||
6098 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
6099 | then | ||
6100 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6101 | $as_echo "no" >&6; } | ||
6102 | CFLAGS="$saved_CFLAGS" | ||
6103 | else | ||
6104 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6105 | $as_echo "yes" >&6; } | ||
6106 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6107 | fi | ||
6108 | else | ||
6109 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6110 | $as_echo "no" >&6; } | ||
6111 | CFLAGS="$saved_CFLAGS" | ||
6112 | |||
6113 | fi | ||
6114 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6115 | } | ||
6116 | { | ||
6117 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -D_FORTIFY_SOURCE=2" >&5 | ||
6118 | $as_echo_n "checking if $CC supports compile flag -D_FORTIFY_SOURCE=2... " >&6; } | ||
6119 | saved_CFLAGS="$CFLAGS" | ||
6120 | CFLAGS="$CFLAGS $WERROR -D_FORTIFY_SOURCE=2" | ||
6121 | _define_flag="" | ||
6122 | test "x$_define_flag" = "x" && _define_flag="-D_FORTIFY_SOURCE=2" | ||
6123 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6124 | /* end confdefs.h. */ | ||
6125 | |||
6126 | #include <stdlib.h> | ||
6127 | #include <stdio.h> | ||
6128 | int main(int argc, char **argv) { | ||
6129 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6130 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6131 | float l = i * 2.1; | ||
6132 | double m = l / 0.5; | ||
6133 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6134 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6135 | exit(0); | ||
6136 | } | ||
6137 | |||
6138 | _ACEOF | ||
6139 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6140 | |||
6141 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
6142 | then | ||
6143 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6144 | $as_echo "no" >&6; } | ||
6145 | CFLAGS="$saved_CFLAGS" | ||
6146 | else | ||
6147 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6148 | $as_echo "yes" >&6; } | ||
6149 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6150 | fi | ||
6151 | else | ||
6152 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6153 | $as_echo "no" >&6; } | ||
6154 | CFLAGS="$saved_CFLAGS" | ||
6155 | |||
6156 | fi | ||
6157 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6158 | } | ||
6159 | if test "x$use_toolchain_hardening" = "x1"; then | ||
6160 | { | ||
6161 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,relro" >&5 | ||
6162 | $as_echo_n "checking if $LD supports link flag -Wl,-z,relro... " >&6; } | ||
6163 | saved_LDFLAGS="$LDFLAGS" | ||
6164 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,relro" | ||
6165 | _define_flag="" | ||
6166 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,relro" | ||
6167 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6168 | /* end confdefs.h. */ | ||
6169 | |||
6170 | #include <stdlib.h> | ||
6171 | #include <stdio.h> | ||
6172 | int main(int argc, char **argv) { | ||
6173 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6174 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6175 | float l = i * 2.1; | ||
6176 | double m = l / 0.5; | ||
6177 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6178 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6179 | exit(0); | ||
6180 | } | ||
6181 | |||
6182 | _ACEOF | ||
6183 | if ac_fn_c_try_link "$LINENO"; then : | ||
6184 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6185 | $as_echo "yes" >&6; } | ||
6186 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6187 | else | ||
6188 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6189 | $as_echo "no" >&6; } | ||
6190 | LDFLAGS="$saved_LDFLAGS" | ||
6191 | |||
6192 | fi | ||
6193 | rm -f core conftest.err conftest.$ac_objext \ | ||
6194 | conftest$ac_exeext conftest.$ac_ext | ||
6195 | } | ||
6196 | { | ||
6197 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,now" >&5 | ||
6198 | $as_echo_n "checking if $LD supports link flag -Wl,-z,now... " >&6; } | ||
6199 | saved_LDFLAGS="$LDFLAGS" | ||
6200 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,now" | ||
6201 | _define_flag="" | ||
6202 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,now" | ||
6203 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6204 | /* end confdefs.h. */ | ||
6205 | |||
6206 | #include <stdlib.h> | ||
6207 | #include <stdio.h> | ||
6208 | int main(int argc, char **argv) { | ||
6209 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6210 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6211 | float l = i * 2.1; | ||
6212 | double m = l / 0.5; | ||
6213 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6214 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6215 | exit(0); | ||
6216 | } | ||
6217 | |||
6218 | _ACEOF | ||
6219 | if ac_fn_c_try_link "$LINENO"; then : | ||
6220 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6221 | $as_echo "yes" >&6; } | ||
6222 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6223 | else | ||
6224 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6225 | $as_echo "no" >&6; } | ||
6226 | LDFLAGS="$saved_LDFLAGS" | ||
6227 | |||
6228 | fi | ||
6229 | rm -f core conftest.err conftest.$ac_objext \ | ||
6230 | conftest$ac_exeext conftest.$ac_ext | ||
6231 | } | ||
6232 | { | ||
6233 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,noexecstack" >&5 | ||
6234 | $as_echo_n "checking if $LD supports link flag -Wl,-z,noexecstack... " >&6; } | ||
6235 | saved_LDFLAGS="$LDFLAGS" | ||
6236 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,noexecstack" | ||
6237 | _define_flag="" | ||
6238 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,noexecstack" | ||
6239 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6240 | /* end confdefs.h. */ | ||
6241 | |||
6242 | #include <stdlib.h> | ||
6243 | #include <stdio.h> | ||
6244 | int main(int argc, char **argv) { | ||
6245 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6246 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6247 | float l = i * 2.1; | ||
6248 | double m = l / 0.5; | ||
6249 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6250 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6251 | exit(0); | ||
6252 | } | ||
6253 | |||
6254 | _ACEOF | ||
6255 | if ac_fn_c_try_link "$LINENO"; then : | ||
6256 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6257 | $as_echo "yes" >&6; } | ||
6258 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6259 | else | ||
6260 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6261 | $as_echo "no" >&6; } | ||
6262 | LDFLAGS="$saved_LDFLAGS" | ||
6263 | |||
6264 | fi | ||
6265 | rm -f core conftest.err conftest.$ac_objext \ | ||
6266 | conftest$ac_exeext conftest.$ac_ext | ||
6267 | } | ||
6268 | # NB. -ftrapv expects certain support functions to be present in | ||
6269 | # the compiler library (libgcc or similar) to detect integer operations | ||
6270 | # that can overflow. We must check that the result of enabling it | ||
6271 | # actually links. The test program compiled/linked includes a number | ||
6272 | # of integer operations that should exercise this. | ||
6273 | { | ||
6274 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -ftrapv and linking succeeds" >&5 | ||
6275 | $as_echo_n "checking if $CC supports compile flag -ftrapv and linking succeeds... " >&6; } | ||
6276 | saved_CFLAGS="$CFLAGS" | ||
6277 | CFLAGS="$CFLAGS $WERROR -ftrapv" | ||
6278 | _define_flag="" | ||
6279 | test "x$_define_flag" = "x" && _define_flag="-ftrapv" | ||
6280 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6281 | /* end confdefs.h. */ | ||
6282 | |||
6283 | #include <stdlib.h> | ||
6284 | #include <stdio.h> | ||
6285 | int main(int argc, char **argv) { | ||
6286 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6287 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6288 | float l = i * 2.1; | ||
6289 | double m = l / 0.5; | ||
6290 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6291 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6292 | exit(0); | ||
6293 | } | ||
6294 | |||
6295 | _ACEOF | ||
6296 | if ac_fn_c_try_link "$LINENO"; then : | ||
6297 | |||
6298 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
6299 | then | ||
6300 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6301 | $as_echo "no" >&6; } | ||
6302 | CFLAGS="$saved_CFLAGS" | ||
6303 | else | ||
6304 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6305 | $as_echo "yes" >&6; } | ||
6306 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6307 | fi | ||
6308 | else | ||
6309 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6310 | $as_echo "no" >&6; } | ||
6311 | CFLAGS="$saved_CFLAGS" | ||
6312 | |||
6313 | fi | ||
6314 | rm -f core conftest.err conftest.$ac_objext \ | ||
6315 | conftest$ac_exeext conftest.$ac_ext | ||
6316 | } | ||
6317 | fi | ||
6318 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking gcc version" >&5 | ||
6319 | $as_echo_n "checking gcc version... " >&6; } | ||
6320 | GCC_VER=`$CC -v 2>&1 | $AWK '/gcc version /{print $3}'` | ||
6321 | case $GCC_VER in | ||
6322 | 1.*) no_attrib_nonnull=1 ;; | ||
6323 | 2.8* | 2.9*) | ||
6324 | no_attrib_nonnull=1 | ||
6325 | ;; | ||
6326 | 2.*) no_attrib_nonnull=1 ;; | ||
6327 | *) ;; | ||
6328 | esac | ||
6329 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCC_VER" >&5 | ||
6330 | $as_echo "$GCC_VER" >&6; } | ||
6331 | |||
6332 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC accepts -fno-builtin-memset" >&5 | ||
6333 | $as_echo_n "checking if $CC accepts -fno-builtin-memset... " >&6; } | ||
6334 | saved_CFLAGS="$CFLAGS" | ||
6335 | CFLAGS="$CFLAGS -fno-builtin-memset" | ||
6336 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6337 | /* end confdefs.h. */ | ||
6338 | #include <string.h> | ||
6339 | int | ||
6340 | main () | ||
6341 | { | ||
6342 | char b[10]; memset(b, 0, sizeof(b)); | ||
6343 | ; | ||
6344 | return 0; | ||
6345 | } | ||
6346 | _ACEOF | ||
6347 | if ac_fn_c_try_link "$LINENO"; then : | ||
6348 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6349 | $as_echo "yes" >&6; } | ||
6350 | else | ||
6351 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6352 | $as_echo "no" >&6; } | ||
6353 | CFLAGS="$saved_CFLAGS" | ||
6354 | |||
6355 | fi | ||
6356 | rm -f core conftest.err conftest.$ac_objext \ | ||
6357 | conftest$ac_exeext conftest.$ac_ext | ||
6358 | |||
6359 | # -fstack-protector-all doesn't always work for some GCC versions | ||
6360 | # and/or platforms, so we test if we can. If it's not supported | ||
6361 | # on a given platform gcc will emit a warning so we use -Werror. | ||
6362 | if test "x$use_stack_protector" = "x1"; then | ||
6363 | for t in -fstack-protector-strong -fstack-protector-all \ | ||
6364 | -fstack-protector; do | ||
6365 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports $t" >&5 | ||
6366 | $as_echo_n "checking if $CC supports $t... " >&6; } | ||
6367 | saved_CFLAGS="$CFLAGS" | ||
6368 | saved_LDFLAGS="$LDFLAGS" | ||
6369 | CFLAGS="$CFLAGS $t -Werror" | ||
6370 | LDFLAGS="$LDFLAGS $t -Werror" | ||
6371 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6372 | /* end confdefs.h. */ | ||
6373 | #include <stdio.h> | ||
6374 | int | ||
6375 | main () | ||
6376 | { | ||
6377 | |||
6378 | char x[256]; | ||
6379 | snprintf(x, sizeof(x), "XXX"); | ||
6380 | |||
6381 | ; | ||
6382 | return 0; | ||
6383 | } | ||
6384 | _ACEOF | ||
6385 | if ac_fn_c_try_link "$LINENO"; then : | ||
6386 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6387 | $as_echo "yes" >&6; } | ||
6388 | CFLAGS="$saved_CFLAGS $t" | ||
6389 | LDFLAGS="$saved_LDFLAGS $t" | ||
6390 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $t works" >&5 | ||
6391 | $as_echo_n "checking if $t works... " >&6; } | ||
6392 | if test "$cross_compiling" = yes; then : | ||
6393 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: cannot test" >&5 | ||
6394 | $as_echo "$as_me: WARNING: cross compiling: cannot test" >&2;} | ||
6395 | break | ||
6396 | |||
6397 | else | ||
6398 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6399 | /* end confdefs.h. */ | ||
6400 | #include <stdio.h> | ||
6401 | int | ||
6402 | main () | ||
6403 | { | ||
6404 | |||
6405 | char x[256]; | ||
6406 | snprintf(x, sizeof(x), "XXX"); | ||
6407 | |||
6408 | ; | ||
6409 | return 0; | ||
6410 | } | ||
6411 | _ACEOF | ||
6412 | if ac_fn_c_try_run "$LINENO"; then : | ||
6413 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6414 | $as_echo "yes" >&6; } | ||
6415 | break | ||
6416 | else | ||
6417 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6418 | $as_echo "no" >&6; } | ||
6419 | fi | ||
6420 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
6421 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
6422 | fi | ||
6423 | |||
6424 | |||
6425 | else | ||
6426 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6427 | $as_echo "no" >&6; } | ||
6428 | |||
6429 | fi | ||
6430 | rm -f core conftest.err conftest.$ac_objext \ | ||
6431 | conftest$ac_exeext conftest.$ac_ext | ||
6432 | CFLAGS="$saved_CFLAGS" | ||
6433 | LDFLAGS="$saved_LDFLAGS" | ||
6434 | done | ||
6435 | fi | ||
6436 | |||
6437 | if test -z "$have_llong_max"; then | ||
6438 | # retry LLONG_MAX with -std=gnu99, needed on some Linuxes | ||
6439 | unset ac_cv_have_decl_LLONG_MAX | ||
6440 | saved_CFLAGS="$CFLAGS" | ||
6441 | CFLAGS="$CFLAGS -std=gnu99" | ||
6442 | ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h> | ||
6443 | |||
6444 | " | ||
6445 | if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then : | ||
6446 | have_llong_max=1 | ||
6447 | else | ||
6448 | CFLAGS="$saved_CFLAGS" | ||
6449 | fi | ||
6450 | |||
6451 | fi | ||
6452 | fi | ||
6453 | |||
6454 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows __attribute__ on return types" >&5 | ||
6455 | $as_echo_n "checking if compiler allows __attribute__ on return types... " >&6; } | ||
6456 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6457 | /* end confdefs.h. */ | ||
6458 | |||
6459 | #include <stdlib.h> | ||
6460 | __attribute__((__unused__)) static void foo(void){return;} | ||
6461 | int | ||
6462 | main () | ||
6463 | { | ||
6464 | exit(0); | ||
6465 | ; | ||
6466 | return 0; | ||
6467 | } | ||
6468 | _ACEOF | ||
6469 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6470 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6471 | $as_echo "yes" >&6; } | ||
6472 | else | ||
6473 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6474 | $as_echo "no" >&6; } | ||
6475 | |||
6476 | $as_echo "#define NO_ATTRIBUTE_ON_RETURN_TYPE 1" >>confdefs.h | ||
6477 | |||
6478 | |||
6479 | fi | ||
6480 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6481 | |||
6482 | if test "x$no_attrib_nonnull" != "x1" ; then | ||
6483 | |||
6484 | $as_echo "#define HAVE_ATTRIBUTE__NONNULL__ 1" >>confdefs.h | ||
6485 | |||
6486 | fi | ||
6487 | |||
6488 | |||
6489 | # Check whether --with-rpath was given. | ||
6490 | if test "${with_rpath+set}" = set; then : | ||
6491 | withval=$with_rpath; | ||
6492 | if test "x$withval" = "xno" ; then | ||
6493 | need_dash_r="" | ||
6494 | fi | ||
6495 | if test "x$withval" = "xyes" ; then | ||
6496 | need_dash_r=1 | ||
6497 | fi | ||
6498 | |||
6499 | |||
6500 | fi | ||
6501 | |||
6502 | |||
6503 | # Allow user to specify flags | ||
6504 | |||
6505 | # Check whether --with-cflags was given. | ||
6506 | if test "${with_cflags+set}" = set; then : | ||
6507 | withval=$with_cflags; | ||
6508 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6509 | test "x${withval}" != "xyes"; then | ||
6510 | CFLAGS="$CFLAGS $withval" | ||
6511 | fi | ||
6512 | |||
6513 | |||
6514 | fi | ||
6515 | |||
6516 | |||
6517 | # Check whether --with-cppflags was given. | ||
6518 | if test "${with_cppflags+set}" = set; then : | ||
6519 | withval=$with_cppflags; | ||
6520 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6521 | test "x${withval}" != "xyes"; then | ||
6522 | CPPFLAGS="$CPPFLAGS $withval" | ||
6523 | fi | ||
6524 | |||
6525 | |||
6526 | fi | ||
6527 | |||
6528 | |||
6529 | # Check whether --with-ldflags was given. | ||
6530 | if test "${with_ldflags+set}" = set; then : | ||
6531 | withval=$with_ldflags; | ||
6532 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6533 | test "x${withval}" != "xyes"; then | ||
6534 | LDFLAGS="$LDFLAGS $withval" | ||
6535 | fi | ||
6536 | |||
6537 | |||
6538 | fi | ||
6539 | |||
6540 | |||
6541 | # Check whether --with-libs was given. | ||
6542 | if test "${with_libs+set}" = set; then : | ||
6543 | withval=$with_libs; | ||
6544 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6545 | test "x${withval}" != "xyes"; then | ||
6546 | LIBS="$LIBS $withval" | ||
6547 | fi | ||
6548 | |||
6549 | |||
6550 | fi | ||
6551 | |||
6552 | |||
6553 | # Check whether --with-Werror was given. | ||
6554 | if test "${with_Werror+set}" = set; then : | ||
6555 | withval=$with_Werror; | ||
6556 | if test -n "$withval" && test "x$withval" != "xno"; then | ||
6557 | werror_flags="-Werror" | ||
6558 | if test "x${withval}" != "xyes"; then | ||
6559 | werror_flags="$withval" | ||
6560 | fi | ||
6561 | fi | ||
6562 | |||
6563 | |||
6564 | fi | ||
6565 | |||
6566 | |||
6567 | for ac_header in \ | ||
6568 | blf.h \ | ||
6569 | bstring.h \ | ||
6570 | crypt.h \ | ||
6571 | crypto/sha2.h \ | ||
6572 | dirent.h \ | ||
6573 | endian.h \ | ||
6574 | elf.h \ | ||
6575 | features.h \ | ||
6576 | fcntl.h \ | ||
6577 | floatingpoint.h \ | ||
6578 | getopt.h \ | ||
6579 | glob.h \ | ||
6580 | ia.h \ | ||
6581 | iaf.h \ | ||
6582 | inttypes.h \ | ||
6583 | limits.h \ | ||
6584 | locale.h \ | ||
6585 | login.h \ | ||
6586 | maillock.h \ | ||
6587 | ndir.h \ | ||
6588 | net/if_tun.h \ | ||
6589 | netdb.h \ | ||
6590 | netgroup.h \ | ||
6591 | pam/pam_appl.h \ | ||
6592 | paths.h \ | ||
6593 | poll.h \ | ||
6594 | pty.h \ | ||
6595 | readpassphrase.h \ | ||
6596 | rpc/types.h \ | ||
6597 | security/pam_appl.h \ | ||
6598 | sha2.h \ | ||
6599 | shadow.h \ | ||
6600 | stddef.h \ | ||
6601 | stdint.h \ | ||
6602 | string.h \ | ||
6603 | strings.h \ | ||
6604 | sys/audit.h \ | ||
6605 | sys/bitypes.h \ | ||
6606 | sys/bsdtty.h \ | ||
6607 | sys/capability.h \ | ||
6608 | sys/cdefs.h \ | ||
6609 | sys/dir.h \ | ||
6610 | sys/mman.h \ | ||
6611 | sys/ndir.h \ | ||
6612 | sys/poll.h \ | ||
6613 | sys/prctl.h \ | ||
6614 | sys/pstat.h \ | ||
6615 | sys/select.h \ | ||
6616 | sys/stat.h \ | ||
6617 | sys/stream.h \ | ||
6618 | sys/stropts.h \ | ||
6619 | sys/strtio.h \ | ||
6620 | sys/statvfs.h \ | ||
6621 | sys/sysmacros.h \ | ||
6622 | sys/time.h \ | ||
6623 | sys/timers.h \ | ||
6624 | time.h \ | ||
6625 | tmpdir.h \ | ||
6626 | ttyent.h \ | ||
6627 | ucred.h \ | ||
6628 | unistd.h \ | ||
6629 | usersec.h \ | ||
6630 | util.h \ | ||
6631 | utime.h \ | ||
6632 | utmp.h \ | ||
6633 | utmpx.h \ | ||
6634 | vis.h \ | ||
6635 | |||
6636 | do : | ||
6637 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
6638 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
6639 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
6640 | cat >>confdefs.h <<_ACEOF | ||
6641 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
6642 | _ACEOF | ||
6643 | |||
6644 | fi | ||
6645 | |||
6646 | done | ||
6647 | |||
6648 | |||
6649 | # lastlog.h requires sys/time.h to be included first on Solaris | ||
6650 | for ac_header in lastlog.h | ||
6651 | do : | ||
6652 | ac_fn_c_check_header_compile "$LINENO" "lastlog.h" "ac_cv_header_lastlog_h" " | ||
6653 | #ifdef HAVE_SYS_TIME_H | ||
6654 | # include <sys/time.h> | ||
6655 | #endif | ||
6656 | |||
6657 | " | ||
6658 | if test "x$ac_cv_header_lastlog_h" = xyes; then : | ||
6659 | cat >>confdefs.h <<_ACEOF | ||
6660 | #define HAVE_LASTLOG_H 1 | ||
6661 | _ACEOF | ||
6662 | |||
6663 | fi | ||
6664 | |||
6665 | done | ||
6666 | |||
6667 | |||
6668 | # sys/ptms.h requires sys/stream.h to be included first on Solaris | ||
6669 | for ac_header in sys/ptms.h | ||
6670 | do : | ||
6671 | ac_fn_c_check_header_compile "$LINENO" "sys/ptms.h" "ac_cv_header_sys_ptms_h" " | ||
6672 | #ifdef HAVE_SYS_STREAM_H | ||
6673 | # include <sys/stream.h> | ||
6674 | #endif | ||
6675 | |||
6676 | " | ||
6677 | if test "x$ac_cv_header_sys_ptms_h" = xyes; then : | ||
6678 | cat >>confdefs.h <<_ACEOF | ||
6679 | #define HAVE_SYS_PTMS_H 1 | ||
6680 | _ACEOF | ||
6681 | |||
6682 | fi | ||
6683 | |||
6684 | done | ||
6685 | |||
6686 | |||
6687 | # login_cap.h requires sys/types.h on NetBSD | ||
6688 | for ac_header in login_cap.h | ||
6689 | do : | ||
6690 | ac_fn_c_check_header_compile "$LINENO" "login_cap.h" "ac_cv_header_login_cap_h" " | ||
6691 | #include <sys/types.h> | ||
6692 | |||
6693 | " | ||
6694 | if test "x$ac_cv_header_login_cap_h" = xyes; then : | ||
6695 | cat >>confdefs.h <<_ACEOF | ||
6696 | #define HAVE_LOGIN_CAP_H 1 | ||
6697 | _ACEOF | ||
6698 | |||
6699 | fi | ||
6700 | |||
6701 | done | ||
6702 | |||
6703 | |||
6704 | # older BSDs need sys/param.h before sys/mount.h | ||
6705 | for ac_header in sys/mount.h | ||
6706 | do : | ||
6707 | ac_fn_c_check_header_compile "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" " | ||
6708 | #include <sys/param.h> | ||
6709 | |||
6710 | " | ||
6711 | if test "x$ac_cv_header_sys_mount_h" = xyes; then : | ||
6712 | cat >>confdefs.h <<_ACEOF | ||
6713 | #define HAVE_SYS_MOUNT_H 1 | ||
6714 | _ACEOF | ||
6715 | |||
6716 | fi | ||
6717 | |||
6718 | done | ||
6719 | |||
6720 | |||
6721 | # Android requires sys/socket.h to be included before sys/un.h | ||
6722 | for ac_header in sys/un.h | ||
6723 | do : | ||
6724 | ac_fn_c_check_header_compile "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" " | ||
6725 | #include <sys/types.h> | ||
6726 | #include <sys/socket.h> | ||
6727 | |||
6728 | " | ||
6729 | if test "x$ac_cv_header_sys_un_h" = xyes; then : | ||
6730 | cat >>confdefs.h <<_ACEOF | ||
6731 | #define HAVE_SYS_UN_H 1 | ||
6732 | _ACEOF | ||
6733 | |||
6734 | fi | ||
6735 | |||
6736 | done | ||
6737 | |||
6738 | |||
6739 | # Messages for features tested for in target-specific section | ||
6740 | SIA_MSG="no" | ||
6741 | SPC_MSG="no" | ||
6742 | SP_MSG="no" | ||
6743 | |||
6744 | # Check for some target-specific stuff | ||
6745 | case "$host" in | ||
6746 | *-*-aix*) | ||
6747 | # Some versions of VAC won't allow macro redefinitions at | ||
6748 | # -qlanglevel=ansi, and autoconf 2.60 sometimes insists on using that | ||
6749 | # particularly with older versions of vac or xlc. | ||
6750 | # It also throws errors about null macro argments, but these are | ||
6751 | # not fatal. | ||
6752 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows macro redefinitions" >&5 | ||
6753 | $as_echo_n "checking if compiler allows macro redefinitions... " >&6; } | ||
6754 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6755 | /* end confdefs.h. */ | ||
6756 | |||
6757 | #define testmacro foo | ||
6758 | #define testmacro bar | ||
6759 | int | ||
6760 | main () | ||
6761 | { | ||
6762 | exit(0); | ||
6763 | ; | ||
6764 | return 0; | ||
6765 | } | ||
6766 | _ACEOF | ||
6767 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6768 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6769 | $as_echo "yes" >&6; } | ||
6770 | else | ||
6771 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6772 | $as_echo "no" >&6; } | ||
6773 | CC="`echo $CC | sed 's/-qlanglvl\=ansi//g'`" | ||
6774 | LD="`echo $LD | sed 's/-qlanglvl\=ansi//g'`" | ||
6775 | CFLAGS="`echo $CFLAGS | sed 's/-qlanglvl\=ansi//g'`" | ||
6776 | CPPFLAGS="`echo $CPPFLAGS | sed 's/-qlanglvl\=ansi//g'`" | ||
6777 | |||
6778 | |||
6779 | fi | ||
6780 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6781 | |||
6782 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to specify blibpath for linker ($LD)" >&5 | ||
6783 | $as_echo_n "checking how to specify blibpath for linker ($LD)... " >&6; } | ||
6784 | if (test -z "$blibpath"); then | ||
6785 | blibpath="/usr/lib:/lib" | ||
6786 | fi | ||
6787 | saved_LDFLAGS="$LDFLAGS" | ||
6788 | if test "$GCC" = "yes"; then | ||
6789 | flags="-Wl,-blibpath: -Wl,-rpath, -blibpath:" | ||
6790 | else | ||
6791 | flags="-blibpath: -Wl,-blibpath: -Wl,-rpath," | ||
6792 | fi | ||
6793 | for tryflags in $flags ;do | ||
6794 | if (test -z "$blibflags"); then | ||
6795 | LDFLAGS="$saved_LDFLAGS $tryflags$blibpath" | ||
6796 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6797 | /* end confdefs.h. */ | ||
6798 | |||
6799 | int | ||
6800 | main () | ||
6801 | { | ||
6802 | |||
6803 | ; | ||
6804 | return 0; | ||
6805 | } | ||
6806 | _ACEOF | ||
6807 | if ac_fn_c_try_link "$LINENO"; then : | ||
6808 | blibflags=$tryflags | ||
6809 | fi | ||
6810 | rm -f core conftest.err conftest.$ac_objext \ | ||
6811 | conftest$ac_exeext conftest.$ac_ext | ||
6812 | fi | ||
6813 | done | ||
6814 | if (test -z "$blibflags"); then | ||
6815 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
6816 | $as_echo "not found" >&6; } | ||
6817 | as_fn_error $? "*** must be able to specify blibpath on AIX - check config.log" "$LINENO" 5 | ||
6818 | else | ||
6819 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $blibflags" >&5 | ||
6820 | $as_echo "$blibflags" >&6; } | ||
6821 | fi | ||
6822 | LDFLAGS="$saved_LDFLAGS" | ||
6823 | ac_fn_c_check_func "$LINENO" "authenticate" "ac_cv_func_authenticate" | ||
6824 | if test "x$ac_cv_func_authenticate" = xyes; then : | ||
6825 | |||
6826 | $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h | ||
6827 | |||
6828 | else | ||
6829 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for authenticate in -ls" >&5 | ||
6830 | $as_echo_n "checking for authenticate in -ls... " >&6; } | ||
6831 | if ${ac_cv_lib_s_authenticate+:} false; then : | ||
6832 | $as_echo_n "(cached) " >&6 | ||
6833 | else | ||
6834 | ac_check_lib_save_LIBS=$LIBS | ||
6835 | LIBS="-ls $LIBS" | ||
6836 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6837 | /* end confdefs.h. */ | ||
6838 | |||
6839 | /* Override any GCC internal prototype to avoid an error. | ||
6840 | Use char because int might match the return type of a GCC | ||
6841 | builtin and then its argument prototype would still apply. */ | ||
6842 | #ifdef __cplusplus | ||
6843 | extern "C" | ||
6844 | #endif | ||
6845 | char authenticate (); | ||
6846 | int | ||
6847 | main () | ||
6848 | { | ||
6849 | return authenticate (); | ||
6850 | ; | ||
6851 | return 0; | ||
6852 | } | ||
6853 | _ACEOF | ||
6854 | if ac_fn_c_try_link "$LINENO"; then : | ||
6855 | ac_cv_lib_s_authenticate=yes | ||
6856 | else | ||
6857 | ac_cv_lib_s_authenticate=no | ||
6858 | fi | ||
6859 | rm -f core conftest.err conftest.$ac_objext \ | ||
6860 | conftest$ac_exeext conftest.$ac_ext | ||
6861 | LIBS=$ac_check_lib_save_LIBS | ||
6862 | fi | ||
6863 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_s_authenticate" >&5 | ||
6864 | $as_echo "$ac_cv_lib_s_authenticate" >&6; } | ||
6865 | if test "x$ac_cv_lib_s_authenticate" = xyes; then : | ||
6866 | $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h | ||
6867 | |||
6868 | LIBS="$LIBS -ls" | ||
6869 | |||
6870 | fi | ||
6871 | |||
6872 | |||
6873 | fi | ||
6874 | |||
6875 | ac_fn_c_check_decl "$LINENO" "authenticate" "ac_cv_have_decl_authenticate" "#include <usersec.h> | ||
6876 | " | ||
6877 | if test "x$ac_cv_have_decl_authenticate" = xyes; then : | ||
6878 | ac_have_decl=1 | ||
6879 | else | ||
6880 | ac_have_decl=0 | ||
6881 | fi | ||
6882 | |||
6883 | cat >>confdefs.h <<_ACEOF | ||
6884 | #define HAVE_DECL_AUTHENTICATE $ac_have_decl | ||
6885 | _ACEOF | ||
6886 | ac_fn_c_check_decl "$LINENO" "loginrestrictions" "ac_cv_have_decl_loginrestrictions" "#include <usersec.h> | ||
6887 | " | ||
6888 | if test "x$ac_cv_have_decl_loginrestrictions" = xyes; then : | ||
6889 | ac_have_decl=1 | ||
6890 | else | ||
6891 | ac_have_decl=0 | ||
6892 | fi | ||
6893 | |||
6894 | cat >>confdefs.h <<_ACEOF | ||
6895 | #define HAVE_DECL_LOGINRESTRICTIONS $ac_have_decl | ||
6896 | _ACEOF | ||
6897 | ac_fn_c_check_decl "$LINENO" "loginsuccess" "ac_cv_have_decl_loginsuccess" "#include <usersec.h> | ||
6898 | " | ||
6899 | if test "x$ac_cv_have_decl_loginsuccess" = xyes; then : | ||
6900 | ac_have_decl=1 | ||
6901 | else | ||
6902 | ac_have_decl=0 | ||
6903 | fi | ||
6904 | |||
6905 | cat >>confdefs.h <<_ACEOF | ||
6906 | #define HAVE_DECL_LOGINSUCCESS $ac_have_decl | ||
6907 | _ACEOF | ||
6908 | ac_fn_c_check_decl "$LINENO" "passwdexpired" "ac_cv_have_decl_passwdexpired" "#include <usersec.h> | ||
6909 | " | ||
6910 | if test "x$ac_cv_have_decl_passwdexpired" = xyes; then : | ||
6911 | ac_have_decl=1 | ||
6912 | else | ||
6913 | ac_have_decl=0 | ||
6914 | fi | ||
6915 | |||
6916 | cat >>confdefs.h <<_ACEOF | ||
6917 | #define HAVE_DECL_PASSWDEXPIRED $ac_have_decl | ||
6918 | _ACEOF | ||
6919 | ac_fn_c_check_decl "$LINENO" "setauthdb" "ac_cv_have_decl_setauthdb" "#include <usersec.h> | ||
6920 | " | ||
6921 | if test "x$ac_cv_have_decl_setauthdb" = xyes; then : | ||
6922 | ac_have_decl=1 | ||
6923 | else | ||
6924 | ac_have_decl=0 | ||
6925 | fi | ||
6926 | |||
6927 | cat >>confdefs.h <<_ACEOF | ||
6928 | #define HAVE_DECL_SETAUTHDB $ac_have_decl | ||
6929 | _ACEOF | ||
6930 | |||
6931 | ac_fn_c_check_decl "$LINENO" "loginfailed" "ac_cv_have_decl_loginfailed" "#include <usersec.h> | ||
6932 | |||
6933 | " | ||
6934 | if test "x$ac_cv_have_decl_loginfailed" = xyes; then : | ||
6935 | ac_have_decl=1 | ||
6936 | else | ||
6937 | ac_have_decl=0 | ||
6938 | fi | ||
6939 | |||
6940 | cat >>confdefs.h <<_ACEOF | ||
6941 | #define HAVE_DECL_LOGINFAILED $ac_have_decl | ||
6942 | _ACEOF | ||
6943 | if test $ac_have_decl = 1; then : | ||
6944 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if loginfailed takes 4 arguments" >&5 | ||
6945 | $as_echo_n "checking if loginfailed takes 4 arguments... " >&6; } | ||
6946 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6947 | /* end confdefs.h. */ | ||
6948 | #include <usersec.h> | ||
6949 | int | ||
6950 | main () | ||
6951 | { | ||
6952 | (void)loginfailed("user","host","tty",0); | ||
6953 | ; | ||
6954 | return 0; | ||
6955 | } | ||
6956 | _ACEOF | ||
6957 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6958 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6959 | $as_echo "yes" >&6; } | ||
6960 | |||
6961 | $as_echo "#define AIX_LOGINFAILED_4ARG 1" >>confdefs.h | ||
6962 | |||
6963 | else | ||
6964 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6965 | $as_echo "no" >&6; } | ||
6966 | |||
6967 | fi | ||
6968 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6969 | fi | ||
6970 | |||
6971 | for ac_func in getgrset setauthdb | ||
6972 | do : | ||
6973 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
6974 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
6975 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
6976 | cat >>confdefs.h <<_ACEOF | ||
6977 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
6978 | _ACEOF | ||
6979 | |||
6980 | fi | ||
6981 | done | ||
6982 | |||
6983 | ac_fn_c_check_decl "$LINENO" "F_CLOSEM" "ac_cv_have_decl_F_CLOSEM" " #include <limits.h> | ||
6984 | #include <fcntl.h> | ||
6985 | |||
6986 | " | ||
6987 | if test "x$ac_cv_have_decl_F_CLOSEM" = xyes; then : | ||
6988 | |||
6989 | $as_echo "#define HAVE_FCNTL_CLOSEM 1" >>confdefs.h | ||
6990 | |||
6991 | fi | ||
6992 | |||
6993 | check_for_aix_broken_getaddrinfo=1 | ||
6994 | |||
6995 | $as_echo "#define BROKEN_REALPATH 1" >>confdefs.h | ||
6996 | |||
6997 | |||
6998 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
6999 | |||
7000 | |||
7001 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7002 | |||
7003 | |||
7004 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7005 | |||
7006 | |||
7007 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
7008 | |||
7009 | |||
7010 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
7011 | |||
7012 | |||
7013 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7014 | |||
7015 | |||
7016 | $as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h | ||
7017 | |||
7018 | |||
7019 | $as_echo "#define PTY_ZEROREAD 1" >>confdefs.h | ||
7020 | |||
7021 | |||
7022 | $as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h | ||
7023 | |||
7024 | ;; | ||
7025 | *-*-android*) | ||
7026 | |||
7027 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
7028 | |||
7029 | |||
7030 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
7031 | |||
7032 | ;; | ||
7033 | *-*-cygwin*) | ||
7034 | check_for_libcrypt_later=1 | ||
7035 | LIBS="$LIBS /usr/lib/textreadmode.o" | ||
7036 | |||
7037 | $as_echo "#define HAVE_CYGWIN 1" >>confdefs.h | ||
7038 | |||
7039 | |||
7040 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7041 | |||
7042 | |||
7043 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
7044 | |||
7045 | |||
7046 | $as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h | ||
7047 | |||
7048 | |||
7049 | $as_echo "#define NO_IPPORT_RESERVED_CONCEPT 1" >>confdefs.h | ||
7050 | |||
7051 | |||
7052 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
7053 | |||
7054 | |||
7055 | $as_echo "#define SSH_IOBUFSZ 65535" >>confdefs.h | ||
7056 | |||
7057 | |||
7058 | $as_echo "#define FILESYSTEM_NO_BACKSLASH 1" >>confdefs.h | ||
7059 | |||
7060 | # Cygwin defines optargs, optargs as declspec(dllimport) for historical | ||
7061 | # reasons which cause compile warnings, so we disable those warnings. | ||
7062 | { | ||
7063 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wno-attributes" >&5 | ||
7064 | $as_echo_n "checking if $CC supports compile flag -Wno-attributes... " >&6; } | ||
7065 | saved_CFLAGS="$CFLAGS" | ||
7066 | CFLAGS="$CFLAGS $WERROR -Wno-attributes" | ||
7067 | _define_flag="" | ||
7068 | test "x$_define_flag" = "x" && _define_flag="-Wno-attributes" | ||
7069 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7070 | /* end confdefs.h. */ | ||
7071 | |||
7072 | #include <stdlib.h> | ||
7073 | #include <stdio.h> | ||
7074 | int main(int argc, char **argv) { | ||
7075 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
7076 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
7077 | float l = i * 2.1; | ||
7078 | double m = l / 0.5; | ||
7079 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
7080 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
7081 | exit(0); | ||
7082 | } | ||
7083 | |||
7084 | _ACEOF | ||
7085 | if ac_fn_c_try_compile "$LINENO"; then : | ||
7086 | |||
7087 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
7088 | then | ||
7089 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7090 | $as_echo "no" >&6; } | ||
7091 | CFLAGS="$saved_CFLAGS" | ||
7092 | else | ||
7093 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
7094 | $as_echo "yes" >&6; } | ||
7095 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
7096 | fi | ||
7097 | else | ||
7098 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7099 | $as_echo "no" >&6; } | ||
7100 | CFLAGS="$saved_CFLAGS" | ||
7101 | |||
7102 | fi | ||
7103 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
7104 | } | ||
7105 | ;; | ||
7106 | *-*-dgux*) | ||
7107 | |||
7108 | $as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h | ||
7109 | |||
7110 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7111 | |||
7112 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7113 | |||
7114 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7115 | |||
7116 | ;; | ||
7117 | *-*-darwin*) | ||
7118 | use_pie=auto | ||
7119 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we have working getaddrinfo" >&5 | ||
7120 | $as_echo_n "checking if we have working getaddrinfo... " >&6; } | ||
7121 | if test "$cross_compiling" = yes; then : | ||
7122 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: assume it is working" >&5 | ||
7123 | $as_echo "assume it is working" >&6; } | ||
7124 | else | ||
7125 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7126 | /* end confdefs.h. */ | ||
7127 | #include <mach-o/dyld.h> | ||
7128 | main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) | ||
7129 | exit(0); | ||
7130 | else | ||
7131 | exit(1); | ||
7132 | } | ||
7133 | |||
7134 | _ACEOF | ||
7135 | if ac_fn_c_try_run "$LINENO"; then : | ||
7136 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: working" >&5 | ||
7137 | $as_echo "working" >&6; } | ||
7138 | else | ||
7139 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy" >&5 | ||
7140 | $as_echo "buggy" >&6; } | ||
7141 | |||
7142 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
7143 | |||
7144 | |||
7145 | fi | ||
7146 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
7147 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
7148 | fi | ||
7149 | |||
7150 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7151 | |||
7152 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7153 | |||
7154 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7155 | |||
7156 | |||
7157 | $as_echo "#define BROKEN_GLOB 1" >>confdefs.h | ||
7158 | |||
7159 | |||
7160 | cat >>confdefs.h <<_ACEOF | ||
7161 | #define BIND_8_COMPAT 1 | ||
7162 | _ACEOF | ||
7163 | |||
7164 | |||
7165 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
7166 | |||
7167 | |||
7168 | $as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h | ||
7169 | |||
7170 | |||
7171 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
7172 | |||
7173 | |||
7174 | ac_fn_c_check_decl "$LINENO" "AU_IPv4" "ac_cv_have_decl_AU_IPv4" "$ac_includes_default" | ||
7175 | if test "x$ac_cv_have_decl_AU_IPv4" = xyes; then : | ||
7176 | |||
7177 | else | ||
7178 | |||
7179 | $as_echo "#define AU_IPv4 0" >>confdefs.h | ||
7180 | |||
7181 | #include <bsm/audit.h> | ||
7182 | |||
7183 | $as_echo "#define LASTLOG_WRITE_PUTUTXLINE 1" >>confdefs.h | ||
7184 | |||
7185 | |||
7186 | fi | ||
7187 | |||
7188 | |||
7189 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7190 | |||
7191 | for ac_func in sandbox_init | ||
7192 | do : | ||
7193 | ac_fn_c_check_func "$LINENO" "sandbox_init" "ac_cv_func_sandbox_init" | ||
7194 | if test "x$ac_cv_func_sandbox_init" = xyes; then : | ||
7195 | cat >>confdefs.h <<_ACEOF | ||
7196 | #define HAVE_SANDBOX_INIT 1 | ||
7197 | _ACEOF | ||
7198 | |||
7199 | fi | ||
7200 | done | ||
7201 | |||
7202 | for ac_header in sandbox.h | ||
7203 | do : | ||
7204 | ac_fn_c_check_header_mongrel "$LINENO" "sandbox.h" "ac_cv_header_sandbox_h" "$ac_includes_default" | ||
7205 | if test "x$ac_cv_header_sandbox_h" = xyes; then : | ||
7206 | cat >>confdefs.h <<_ACEOF | ||
7207 | #define HAVE_SANDBOX_H 1 | ||
7208 | _ACEOF | ||
7209 | |||
7210 | fi | ||
7211 | |||
7212 | done | ||
7213 | |||
7214 | ;; | ||
7215 | *-*-dragonfly*) | ||
7216 | SSHDLIBS="$SSHDLIBS -lcrypt" | ||
7217 | TEST_MALLOC_OPTIONS="AFGJPRX" | ||
7218 | ;; | ||
7219 | *-*-haiku*) | ||
7220 | LIBS="$LIBS -lbsd " | ||
7221 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket in -lnetwork" >&5 | ||
7222 | $as_echo_n "checking for socket in -lnetwork... " >&6; } | ||
7223 | if ${ac_cv_lib_network_socket+:} false; then : | ||
7224 | $as_echo_n "(cached) " >&6 | ||
7225 | else | ||
7226 | ac_check_lib_save_LIBS=$LIBS | ||
7227 | LIBS="-lnetwork $LIBS" | ||
7228 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7229 | /* end confdefs.h. */ | ||
7230 | |||
7231 | /* Override any GCC internal prototype to avoid an error. | ||
7232 | Use char because int might match the return type of a GCC | ||
7233 | builtin and then its argument prototype would still apply. */ | ||
7234 | #ifdef __cplusplus | ||
7235 | extern "C" | ||
7236 | #endif | ||
7237 | char socket (); | ||
7238 | int | ||
7239 | main () | ||
7240 | { | ||
7241 | return socket (); | ||
7242 | ; | ||
7243 | return 0; | ||
7244 | } | ||
7245 | _ACEOF | ||
7246 | if ac_fn_c_try_link "$LINENO"; then : | ||
7247 | ac_cv_lib_network_socket=yes | ||
7248 | else | ||
7249 | ac_cv_lib_network_socket=no | ||
7250 | fi | ||
7251 | rm -f core conftest.err conftest.$ac_objext \ | ||
7252 | conftest$ac_exeext conftest.$ac_ext | ||
7253 | LIBS=$ac_check_lib_save_LIBS | ||
7254 | fi | ||
7255 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_socket" >&5 | ||
7256 | $as_echo "$ac_cv_lib_network_socket" >&6; } | ||
7257 | if test "x$ac_cv_lib_network_socket" = xyes; then : | ||
7258 | cat >>confdefs.h <<_ACEOF | ||
7259 | #define HAVE_LIBNETWORK 1 | ||
7260 | _ACEOF | ||
7261 | |||
7262 | LIBS="-lnetwork $LIBS" | ||
7263 | |||
7264 | fi | ||
7265 | |||
7266 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
7267 | |||
7268 | MANTYPE=man | ||
7269 | ;; | ||
7270 | *-*-hpux*) | ||
7271 | # first we define all of the options common to all HP-UX releases | ||
7272 | CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1" | ||
7273 | IPADDR_IN_DISPLAY=yes | ||
7274 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7275 | |||
7276 | |||
7277 | $as_echo "#define LOGIN_NO_ENDOPT 1" >>confdefs.h | ||
7278 | |||
7279 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
7280 | |||
7281 | |||
7282 | $as_echo "#define LOCKED_PASSWD_STRING \"*\"" >>confdefs.h | ||
7283 | |||
7284 | $as_echo "#define SPT_TYPE SPT_PSTAT" >>confdefs.h | ||
7285 | |||
7286 | |||
7287 | $as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h | ||
7288 | |||
7289 | maildir="/var/mail" | ||
7290 | LIBS="$LIBS -lsec" | ||
7291 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_error in -lxnet" >&5 | ||
7292 | $as_echo_n "checking for t_error in -lxnet... " >&6; } | ||
7293 | if ${ac_cv_lib_xnet_t_error+:} false; then : | ||
7294 | $as_echo_n "(cached) " >&6 | ||
7295 | else | ||
7296 | ac_check_lib_save_LIBS=$LIBS | ||
7297 | LIBS="-lxnet $LIBS" | ||
7298 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7299 | /* end confdefs.h. */ | ||
7300 | |||
7301 | /* Override any GCC internal prototype to avoid an error. | ||
7302 | Use char because int might match the return type of a GCC | ||
7303 | builtin and then its argument prototype would still apply. */ | ||
7304 | #ifdef __cplusplus | ||
7305 | extern "C" | ||
7306 | #endif | ||
7307 | char t_error (); | ||
7308 | int | ||
7309 | main () | ||
7310 | { | ||
7311 | return t_error (); | ||
7312 | ; | ||
7313 | return 0; | ||
7314 | } | ||
7315 | _ACEOF | ||
7316 | if ac_fn_c_try_link "$LINENO"; then : | ||
7317 | ac_cv_lib_xnet_t_error=yes | ||
7318 | else | ||
7319 | ac_cv_lib_xnet_t_error=no | ||
7320 | fi | ||
7321 | rm -f core conftest.err conftest.$ac_objext \ | ||
7322 | conftest$ac_exeext conftest.$ac_ext | ||
7323 | LIBS=$ac_check_lib_save_LIBS | ||
7324 | fi | ||
7325 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_xnet_t_error" >&5 | ||
7326 | $as_echo "$ac_cv_lib_xnet_t_error" >&6; } | ||
7327 | if test "x$ac_cv_lib_xnet_t_error" = xyes; then : | ||
7328 | cat >>confdefs.h <<_ACEOF | ||
7329 | #define HAVE_LIBXNET 1 | ||
7330 | _ACEOF | ||
7331 | |||
7332 | LIBS="-lxnet $LIBS" | ||
7333 | |||
7334 | else | ||
7335 | as_fn_error $? "*** -lxnet needed on HP-UX - check config.log ***" "$LINENO" 5 | ||
7336 | fi | ||
7337 | |||
7338 | |||
7339 | # next, we define all of the options specific to major releases | ||
7340 | case "$host" in | ||
7341 | *-*-hpux10*) | ||
7342 | if test -z "$GCC"; then | ||
7343 | CFLAGS="$CFLAGS -Ae" | ||
7344 | fi | ||
7345 | ;; | ||
7346 | *-*-hpux11*) | ||
7347 | |||
7348 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
7349 | |||
7350 | |||
7351 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
7352 | |||
7353 | |||
7354 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
7355 | |||
7356 | check_for_hpux_broken_getaddrinfo=1 | ||
7357 | check_for_conflicting_getspnam=1 | ||
7358 | ;; | ||
7359 | esac | ||
7360 | |||
7361 | # lastly, we define options specific to minor releases | ||
7362 | case "$host" in | ||
7363 | *-*-hpux10.26) | ||
7364 | |||
7365 | $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h | ||
7366 | |||
7367 | disable_ptmx_check=yes | ||
7368 | LIBS="$LIBS -lsecpw" | ||
7369 | ;; | ||
7370 | esac | ||
7371 | ;; | ||
7372 | *-*-irix5*) | ||
7373 | PATH="$PATH:/usr/etc" | ||
7374 | |||
7375 | $as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h | ||
7376 | |||
7377 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7378 | |||
7379 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7380 | |||
7381 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7382 | |||
7383 | |||
7384 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
7385 | |||
7386 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
7387 | |||
7388 | ;; | ||
7389 | *-*-irix6*) | ||
7390 | PATH="$PATH:/usr/etc" | ||
7391 | |||
7392 | $as_echo "#define WITH_IRIX_ARRAY 1" >>confdefs.h | ||
7393 | |||
7394 | |||
7395 | $as_echo "#define WITH_IRIX_PROJECT 1" >>confdefs.h | ||
7396 | |||
7397 | |||
7398 | $as_echo "#define WITH_IRIX_AUDIT 1" >>confdefs.h | ||
7399 | |||
7400 | ac_fn_c_check_func "$LINENO" "jlimit_startjob" "ac_cv_func_jlimit_startjob" | ||
7401 | if test "x$ac_cv_func_jlimit_startjob" = xyes; then : | ||
7402 | |||
7403 | $as_echo "#define WITH_IRIX_JOBS 1" >>confdefs.h | ||
7404 | |||
7405 | fi | ||
7406 | |||
7407 | $as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h | ||
7408 | |||
7409 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7410 | |||
7411 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7412 | |||
7413 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7414 | |||
7415 | |||
7416 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
7417 | |||
7418 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
7419 | |||
7420 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
7421 | |||
7422 | ;; | ||
7423 | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) | ||
7424 | check_for_libcrypt_later=1 | ||
7425 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
7426 | |||
7427 | $as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h | ||
7428 | |||
7429 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7430 | |||
7431 | |||
7432 | $as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h | ||
7433 | |||
7434 | |||
7435 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
7436 | |||
7437 | ;; | ||
7438 | *-*-linux*) | ||
7439 | no_dev_ptmx=1 | ||
7440 | use_pie=auto | ||
7441 | check_for_libcrypt_later=1 | ||
7442 | check_for_openpty_ctty_bug=1 | ||
7443 | |||
7444 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
7445 | |||
7446 | |||
7447 | $as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h | ||
7448 | |||
7449 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7450 | |||
7451 | |||
7452 | $as_echo "#define LINK_OPNOTSUPP_ERRNO EPERM" >>confdefs.h | ||
7453 | |||
7454 | |||
7455 | $as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h | ||
7456 | |||
7457 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
7458 | |||
7459 | |||
7460 | $as_echo "#define LINUX_OOM_ADJUST 1" >>confdefs.h | ||
7461 | |||
7462 | inet6_default_4in6=yes | ||
7463 | case `uname -r` in | ||
7464 | 1.*|2.0.*) | ||
7465 | |||
7466 | $as_echo "#define BROKEN_CMSG_TYPE 1" >>confdefs.h | ||
7467 | |||
7468 | ;; | ||
7469 | esac | ||
7470 | # tun(4) forwarding compat code | ||
7471 | for ac_header in linux/if_tun.h | ||
7472 | do : | ||
7473 | ac_fn_c_check_header_mongrel "$LINENO" "linux/if_tun.h" "ac_cv_header_linux_if_tun_h" "$ac_includes_default" | ||
7474 | if test "x$ac_cv_header_linux_if_tun_h" = xyes; then : | ||
7475 | cat >>confdefs.h <<_ACEOF | ||
7476 | #define HAVE_LINUX_IF_TUN_H 1 | ||
7477 | _ACEOF | ||
7478 | |||
7479 | fi | ||
7480 | |||
7481 | done | ||
7482 | |||
7483 | if test "x$ac_cv_header_linux_if_tun_h" = "xyes" ; then | ||
7484 | |||
7485 | $as_echo "#define SSH_TUN_LINUX 1" >>confdefs.h | ||
7486 | |||
7487 | |||
7488 | $as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h | ||
7489 | |||
7490 | |||
7491 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
7492 | |||
7493 | fi | ||
7494 | for ac_header in linux/seccomp.h linux/filter.h linux/audit.h | ||
7495 | do : | ||
7496 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
7497 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#include <linux/types.h> | ||
7498 | " | ||
7499 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
7500 | cat >>confdefs.h <<_ACEOF | ||
7501 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
7502 | _ACEOF | ||
7503 | |||
7504 | fi | ||
7505 | |||
7506 | done | ||
7507 | |||
7508 | for ac_func in prctl | ||
7509 | do : | ||
7510 | ac_fn_c_check_func "$LINENO" "prctl" "ac_cv_func_prctl" | ||
7511 | if test "x$ac_cv_func_prctl" = xyes; then : | ||
7512 | cat >>confdefs.h <<_ACEOF | ||
7513 | #define HAVE_PRCTL 1 | ||
7514 | _ACEOF | ||
7515 | |||
7516 | fi | ||
7517 | done | ||
7518 | |||
7519 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for seccomp architecture" >&5 | ||
7520 | $as_echo_n "checking for seccomp architecture... " >&6; } | ||
7521 | seccomp_audit_arch= | ||
7522 | case "$host" in | ||
7523 | x86_64-*) | ||
7524 | seccomp_audit_arch=AUDIT_ARCH_X86_64 | ||
7525 | ;; | ||
7526 | i*86-*) | ||
7527 | seccomp_audit_arch=AUDIT_ARCH_I386 | ||
7528 | ;; | ||
7529 | arm*-*) | ||
7530 | seccomp_audit_arch=AUDIT_ARCH_ARM | ||
7531 | ;; | ||
7532 | esac | ||
7533 | if test "x$seccomp_audit_arch" != "x" ; then | ||
7534 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$seccomp_audit_arch\"" >&5 | ||
7535 | $as_echo "\"$seccomp_audit_arch\"" >&6; } | ||
7536 | |||
7537 | cat >>confdefs.h <<_ACEOF | ||
7538 | #define SECCOMP_AUDIT_ARCH $seccomp_audit_arch | ||
7539 | _ACEOF | ||
7540 | |||
7541 | else | ||
7542 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: architecture not supported" >&5 | ||
7543 | $as_echo "architecture not supported" >&6; } | ||
7544 | fi | ||
7545 | ;; | ||
7546 | mips-sony-bsd|mips-sony-newsos4) | ||
7547 | |||
7548 | $as_echo "#define NEED_SETPGRP 1" >>confdefs.h | ||
7549 | |||
7550 | SONY=1 | ||
7551 | ;; | ||
7552 | *-*-netbsd*) | ||
7553 | check_for_libcrypt_before=1 | ||
7554 | if test "x$withval" != "xno" ; then | ||
7555 | need_dash_r=1 | ||
7556 | fi | ||
7557 | |||
7558 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
7559 | |||
7560 | ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default" | ||
7561 | if test "x$ac_cv_header_net_if_tap_h" = xyes; then : | ||
7562 | |||
7563 | else | ||
7564 | |||
7565 | $as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h | ||
7566 | |||
7567 | fi | ||
7568 | |||
7569 | |||
7570 | |||
7571 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
7572 | |||
7573 | TEST_MALLOC_OPTIONS="AJRX" | ||
7574 | |||
7575 | $as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h | ||
7576 | |||
7577 | |||
7578 | $as_echo "#define BROKEN_READ_COMPARISON 1" >>confdefs.h | ||
7579 | |||
7580 | ;; | ||
7581 | *-*-freebsd*) | ||
7582 | check_for_libcrypt_later=1 | ||
7583 | |||
7584 | $as_echo "#define LOCKED_PASSWD_PREFIX \"*LOCKED*\"" >>confdefs.h | ||
7585 | |||
7586 | |||
7587 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
7588 | |||
7589 | ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default" | ||
7590 | if test "x$ac_cv_header_net_if_tap_h" = xyes; then : | ||
7591 | |||
7592 | else | ||
7593 | |||
7594 | $as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h | ||
7595 | |||
7596 | fi | ||
7597 | |||
7598 | |||
7599 | |||
7600 | $as_echo "#define BROKEN_GLOB 1" >>confdefs.h | ||
7601 | |||
7602 | |||
7603 | $as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h | ||
7604 | |||
7605 | TEST_MALLOC_OPTIONS="AJRX" | ||
7606 | # Preauth crypto occasionally uses file descriptors for crypto offload | ||
7607 | # and will crash if they cannot be opened. | ||
7608 | |||
7609 | $as_echo "#define SANDBOX_SKIP_RLIMIT_NOFILE 1" >>confdefs.h | ||
7610 | |||
7611 | ;; | ||
7612 | *-*-bsdi*) | ||
7613 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7614 | |||
7615 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7616 | |||
7617 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7618 | |||
7619 | ;; | ||
7620 | *-next-*) | ||
7621 | conf_lastlog_location="/usr/adm/lastlog" | ||
7622 | conf_utmp_location=/etc/utmp | ||
7623 | conf_wtmp_location=/usr/adm/wtmp | ||
7624 | maildir=/usr/spool/mail | ||
7625 | |||
7626 | $as_echo "#define HAVE_NEXT 1" >>confdefs.h | ||
7627 | |||
7628 | $as_echo "#define BROKEN_REALPATH 1" >>confdefs.h | ||
7629 | |||
7630 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7631 | |||
7632 | |||
7633 | $as_echo "#define BROKEN_SAVED_UIDS 1" >>confdefs.h | ||
7634 | |||
7635 | ;; | ||
7636 | *-*-openbsd*) | ||
7637 | use_pie=auto | ||
7638 | |||
7639 | $as_echo "#define HAVE_ATTRIBUTE__SENTINEL__ 1" >>confdefs.h | ||
7640 | |||
7641 | |||
7642 | $as_echo "#define HAVE_ATTRIBUTE__BOUNDED__ 1" >>confdefs.h | ||
7643 | |||
7644 | |||
7645 | $as_echo "#define SSH_TUN_OPENBSD 1" >>confdefs.h | ||
7646 | |||
7647 | |||
7648 | $as_echo "#define SYSLOG_R_SAFE_IN_SIGHAND 1" >>confdefs.h | ||
7649 | |||
7650 | TEST_MALLOC_OPTIONS="AFGJPRX" | ||
7651 | ;; | ||
7652 | *-*-solaris*) | ||
7653 | if test "x$withval" != "xno" ; then | ||
7654 | need_dash_r=1 | ||
7655 | fi | ||
7656 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
7657 | |||
7658 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
7659 | |||
7660 | |||
7661 | $as_echo "#define LOGIN_NEEDS_TERM 1" >>confdefs.h | ||
7662 | |||
7663 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
7664 | |||
7665 | |||
7666 | $as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h | ||
7667 | |||
7668 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
7669 | |||
7670 | # Pushing STREAMS modules will cause sshd to acquire a controlling tty. | ||
7671 | |||
7672 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
7673 | |||
7674 | |||
7675 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
7676 | |||
7677 | |||
7678 | $as_echo "#define BROKEN_TCGETATTR_ICANON 1" >>confdefs.h | ||
7679 | |||
7680 | external_path_file=/etc/default/login | ||
7681 | # hardwire lastlog location (can't detect it on some versions) | ||
7682 | conf_lastlog_location="/var/adm/lastlog" | ||
7683 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for obsolete utmp and wtmp in solaris2.x" >&5 | ||
7684 | $as_echo_n "checking for obsolete utmp and wtmp in solaris2.x... " >&6; } | ||
7685 | sol2ver=`echo "$host"| sed -e 's/.*[0-9]\.//'` | ||
7686 | if test "$sol2ver" -ge 8; then | ||
7687 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
7688 | $as_echo "yes" >&6; } | ||
7689 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
7690 | |||
7691 | |||
7692 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
7693 | |||
7694 | else | ||
7695 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7696 | $as_echo "no" >&6; } | ||
7697 | fi | ||
7698 | |||
7699 | # Check whether --with-solaris-contracts was given. | ||
7700 | if test "${with_solaris_contracts+set}" = set; then : | ||
7701 | withval=$with_solaris_contracts; | ||
7702 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ct_tmpl_activate in -lcontract" >&5 | ||
7703 | $as_echo_n "checking for ct_tmpl_activate in -lcontract... " >&6; } | ||
7704 | if ${ac_cv_lib_contract_ct_tmpl_activate+:} false; then : | ||
7705 | $as_echo_n "(cached) " >&6 | ||
7706 | else | ||
7707 | ac_check_lib_save_LIBS=$LIBS | ||
7708 | LIBS="-lcontract $LIBS" | ||
7709 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7710 | /* end confdefs.h. */ | ||
7711 | |||
7712 | /* Override any GCC internal prototype to avoid an error. | ||
7713 | Use char because int might match the return type of a GCC | ||
7714 | builtin and then its argument prototype would still apply. */ | ||
7715 | #ifdef __cplusplus | ||
7716 | extern "C" | ||
7717 | #endif | ||
7718 | char ct_tmpl_activate (); | ||
7719 | int | ||
7720 | main () | ||
7721 | { | ||
7722 | return ct_tmpl_activate (); | ||
7723 | ; | ||
7724 | return 0; | ||
7725 | } | ||
7726 | _ACEOF | ||
7727 | if ac_fn_c_try_link "$LINENO"; then : | ||
7728 | ac_cv_lib_contract_ct_tmpl_activate=yes | ||
7729 | else | ||
7730 | ac_cv_lib_contract_ct_tmpl_activate=no | ||
7731 | fi | ||
7732 | rm -f core conftest.err conftest.$ac_objext \ | ||
7733 | conftest$ac_exeext conftest.$ac_ext | ||
7734 | LIBS=$ac_check_lib_save_LIBS | ||
7735 | fi | ||
7736 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_contract_ct_tmpl_activate" >&5 | ||
7737 | $as_echo "$ac_cv_lib_contract_ct_tmpl_activate" >&6; } | ||
7738 | if test "x$ac_cv_lib_contract_ct_tmpl_activate" = xyes; then : | ||
7739 | |||
7740 | $as_echo "#define USE_SOLARIS_PROCESS_CONTRACTS 1" >>confdefs.h | ||
7741 | |||
7742 | SSHDLIBS="$SSHDLIBS -lcontract" | ||
7743 | SPC_MSG="yes" | ||
7744 | fi | ||
7745 | |||
7746 | |||
7747 | fi | ||
7748 | |||
7749 | |||
7750 | # Check whether --with-solaris-projects was given. | ||
7751 | if test "${with_solaris_projects+set}" = set; then : | ||
7752 | withval=$with_solaris_projects; | ||
7753 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setproject in -lproject" >&5 | ||
7754 | $as_echo_n "checking for setproject in -lproject... " >&6; } | ||
7755 | if ${ac_cv_lib_project_setproject+:} false; then : | ||
7756 | $as_echo_n "(cached) " >&6 | ||
7757 | else | ||
7758 | ac_check_lib_save_LIBS=$LIBS | ||
7759 | LIBS="-lproject $LIBS" | ||
7760 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7761 | /* end confdefs.h. */ | ||
7762 | |||
7763 | /* Override any GCC internal prototype to avoid an error. | ||
7764 | Use char because int might match the return type of a GCC | ||
7765 | builtin and then its argument prototype would still apply. */ | ||
7766 | #ifdef __cplusplus | ||
7767 | extern "C" | ||
7768 | #endif | ||
7769 | char setproject (); | ||
7770 | int | ||
7771 | main () | ||
7772 | { | ||
7773 | return setproject (); | ||
7774 | ; | ||
7775 | return 0; | ||
7776 | } | ||
7777 | _ACEOF | ||
7778 | if ac_fn_c_try_link "$LINENO"; then : | ||
7779 | ac_cv_lib_project_setproject=yes | ||
7780 | else | ||
7781 | ac_cv_lib_project_setproject=no | ||
7782 | fi | ||
7783 | rm -f core conftest.err conftest.$ac_objext \ | ||
7784 | conftest$ac_exeext conftest.$ac_ext | ||
7785 | LIBS=$ac_check_lib_save_LIBS | ||
7786 | fi | ||
7787 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_project_setproject" >&5 | ||
7788 | $as_echo "$ac_cv_lib_project_setproject" >&6; } | ||
7789 | if test "x$ac_cv_lib_project_setproject" = xyes; then : | ||
7790 | |||
7791 | $as_echo "#define USE_SOLARIS_PROJECTS 1" >>confdefs.h | ||
7792 | |||
7793 | SSHDLIBS="$SSHDLIBS -lproject" | ||
7794 | SP_MSG="yes" | ||
7795 | fi | ||
7796 | |||
7797 | |||
7798 | fi | ||
7799 | |||
7800 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
7801 | ;; | ||
7802 | *-*-sunos4*) | ||
7803 | CPPFLAGS="$CPPFLAGS -DSUNOS4" | ||
7804 | for ac_func in getpwanam | ||
7805 | do : | ||
7806 | ac_fn_c_check_func "$LINENO" "getpwanam" "ac_cv_func_getpwanam" | ||
7807 | if test "x$ac_cv_func_getpwanam" = xyes; then : | ||
7808 | cat >>confdefs.h <<_ACEOF | ||
7809 | #define HAVE_GETPWANAM 1 | ||
7810 | _ACEOF | ||
7811 | |||
7812 | fi | ||
7813 | done | ||
7814 | |||
7815 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
7816 | |||
7817 | conf_utmp_location=/etc/utmp | ||
7818 | conf_wtmp_location=/var/adm/wtmp | ||
7819 | conf_lastlog_location=/var/adm/lastlog | ||
7820 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7821 | |||
7822 | ;; | ||
7823 | *-ncr-sysv*) | ||
7824 | LIBS="$LIBS -lc89" | ||
7825 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7826 | |||
7827 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
7828 | |||
7829 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7830 | |||
7831 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7832 | |||
7833 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7834 | |||
7835 | ;; | ||
7836 | *-sni-sysv*) | ||
7837 | # /usr/ucblib MUST NOT be searched on ReliantUNIX | ||
7838 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlsym in -ldl" >&5 | ||
7839 | $as_echo_n "checking for dlsym in -ldl... " >&6; } | ||
7840 | if ${ac_cv_lib_dl_dlsym+:} false; then : | ||
7841 | $as_echo_n "(cached) " >&6 | ||
7842 | else | ||
7843 | ac_check_lib_save_LIBS=$LIBS | ||
7844 | LIBS="-ldl $LIBS" | ||
7845 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7846 | /* end confdefs.h. */ | ||
7847 | |||
7848 | /* Override any GCC internal prototype to avoid an error. | ||
7849 | Use char because int might match the return type of a GCC | ||
7850 | builtin and then its argument prototype would still apply. */ | ||
7851 | #ifdef __cplusplus | ||
7852 | extern "C" | ||
7853 | #endif | ||
7854 | char dlsym (); | ||
7855 | int | ||
7856 | main () | ||
7857 | { | ||
7858 | return dlsym (); | ||
7859 | ; | ||
7860 | return 0; | ||
7861 | } | ||
7862 | _ACEOF | ||
7863 | if ac_fn_c_try_link "$LINENO"; then : | ||
7864 | ac_cv_lib_dl_dlsym=yes | ||
7865 | else | ||
7866 | ac_cv_lib_dl_dlsym=no | ||
7867 | fi | ||
7868 | rm -f core conftest.err conftest.$ac_objext \ | ||
7869 | conftest$ac_exeext conftest.$ac_ext | ||
7870 | LIBS=$ac_check_lib_save_LIBS | ||
7871 | fi | ||
7872 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlsym" >&5 | ||
7873 | $as_echo "$ac_cv_lib_dl_dlsym" >&6; } | ||
7874 | if test "x$ac_cv_lib_dl_dlsym" = xyes; then : | ||
7875 | cat >>confdefs.h <<_ACEOF | ||
7876 | #define HAVE_LIBDL 1 | ||
7877 | _ACEOF | ||
7878 | |||
7879 | LIBS="-ldl $LIBS" | ||
7880 | |||
7881 | fi | ||
7882 | |||
7883 | # -lresolv needs to be at the end of LIBS or DNS lookups break | ||
7884 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5 | ||
7885 | $as_echo_n "checking for res_query in -lresolv... " >&6; } | ||
7886 | if ${ac_cv_lib_resolv_res_query+:} false; then : | ||
7887 | $as_echo_n "(cached) " >&6 | ||
7888 | else | ||
7889 | ac_check_lib_save_LIBS=$LIBS | ||
7890 | LIBS="-lresolv $LIBS" | ||
7891 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7892 | /* end confdefs.h. */ | ||
7893 | |||
7894 | /* Override any GCC internal prototype to avoid an error. | ||
7895 | Use char because int might match the return type of a GCC | ||
7896 | builtin and then its argument prototype would still apply. */ | ||
7897 | #ifdef __cplusplus | ||
7898 | extern "C" | ||
7899 | #endif | ||
7900 | char res_query (); | ||
7901 | int | ||
7902 | main () | ||
7903 | { | ||
7904 | return res_query (); | ||
7905 | ; | ||
7906 | return 0; | ||
7907 | } | ||
7908 | _ACEOF | ||
7909 | if ac_fn_c_try_link "$LINENO"; then : | ||
7910 | ac_cv_lib_resolv_res_query=yes | ||
7911 | else | ||
7912 | ac_cv_lib_resolv_res_query=no | ||
7913 | fi | ||
7914 | rm -f core conftest.err conftest.$ac_objext \ | ||
7915 | conftest$ac_exeext conftest.$ac_ext | ||
7916 | LIBS=$ac_check_lib_save_LIBS | ||
7917 | fi | ||
7918 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_res_query" >&5 | ||
7919 | $as_echo "$ac_cv_lib_resolv_res_query" >&6; } | ||
7920 | if test "x$ac_cv_lib_resolv_res_query" = xyes; then : | ||
7921 | LIBS="$LIBS -lresolv" | ||
7922 | fi | ||
7923 | |||
7924 | IPADDR_IN_DISPLAY=yes | ||
7925 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7926 | |||
7927 | $as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h | ||
7928 | |||
7929 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7930 | |||
7931 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7932 | |||
7933 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7934 | |||
7935 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
7936 | |||
7937 | external_path_file=/etc/default/login | ||
7938 | # /usr/ucblib/libucb.a no longer needed on ReliantUNIX | ||
7939 | # Attention: always take care to bind libsocket and libnsl before libc, | ||
7940 | # otherwise you will find lots of "SIOCGPGRP errno 22" on syslog | ||
7941 | ;; | ||
7942 | # UnixWare 1.x, UnixWare 2.x, and others based on code from Univel. | ||
7943 | *-*-sysv4.2*) | ||
7944 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7945 | |||
7946 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7947 | |||
7948 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7949 | |||
7950 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7951 | |||
7952 | |||
7953 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
7954 | |||
7955 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
7956 | |||
7957 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
7958 | ;; | ||
7959 | # UnixWare 7.x, OpenUNIX 8 | ||
7960 | *-*-sysv5*) | ||
7961 | CPPFLAGS="$CPPFLAGS -Dvsnprintf=_xvsnprintf -Dsnprintf=_xsnprintf" | ||
7962 | |||
7963 | $as_echo "#define UNIXWARE_LONG_PASSWORDS 1" >>confdefs.h | ||
7964 | |||
7965 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7966 | |||
7967 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7968 | |||
7969 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
7970 | |||
7971 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7972 | |||
7973 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7974 | |||
7975 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
7976 | |||
7977 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
7978 | case "$host" in | ||
7979 | *-*-sysv5SCO_SV*) # SCO OpenServer 6.x | ||
7980 | maildir=/var/spool/mail | ||
7981 | |||
7982 | $as_echo "#define BROKEN_LIBIAF 1" >>confdefs.h | ||
7983 | |||
7984 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
7985 | |||
7986 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getluid in -lprot" >&5 | ||
7987 | $as_echo_n "checking for getluid in -lprot... " >&6; } | ||
7988 | if ${ac_cv_lib_prot_getluid+:} false; then : | ||
7989 | $as_echo_n "(cached) " >&6 | ||
7990 | else | ||
7991 | ac_check_lib_save_LIBS=$LIBS | ||
7992 | LIBS="-lprot $LIBS" | ||
7993 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7994 | /* end confdefs.h. */ | ||
7995 | |||
7996 | /* Override any GCC internal prototype to avoid an error. | ||
7997 | Use char because int might match the return type of a GCC | ||
7998 | builtin and then its argument prototype would still apply. */ | ||
7999 | #ifdef __cplusplus | ||
8000 | extern "C" | ||
8001 | #endif | ||
8002 | char getluid (); | ||
8003 | int | ||
8004 | main () | ||
8005 | { | ||
8006 | return getluid (); | ||
8007 | ; | ||
8008 | return 0; | ||
8009 | } | ||
8010 | _ACEOF | ||
8011 | if ac_fn_c_try_link "$LINENO"; then : | ||
8012 | ac_cv_lib_prot_getluid=yes | ||
8013 | else | ||
8014 | ac_cv_lib_prot_getluid=no | ||
8015 | fi | ||
8016 | rm -f core conftest.err conftest.$ac_objext \ | ||
8017 | conftest$ac_exeext conftest.$ac_ext | ||
8018 | LIBS=$ac_check_lib_save_LIBS | ||
8019 | fi | ||
8020 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_prot_getluid" >&5 | ||
8021 | $as_echo "$ac_cv_lib_prot_getluid" >&6; } | ||
8022 | if test "x$ac_cv_lib_prot_getluid" = xyes; then : | ||
8023 | LIBS="$LIBS -lprot" | ||
8024 | for ac_func in getluid setluid | ||
8025 | do : | ||
8026 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
8027 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
8028 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
8029 | cat >>confdefs.h <<_ACEOF | ||
8030 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
8031 | _ACEOF | ||
8032 | |||
8033 | fi | ||
8034 | done | ||
8035 | |||
8036 | $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h | ||
8037 | |||
8038 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
8039 | |||
8040 | |||
8041 | fi | ||
8042 | |||
8043 | ;; | ||
8044 | *) $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8045 | |||
8046 | check_for_libcrypt_later=1 | ||
8047 | ;; | ||
8048 | esac | ||
8049 | ;; | ||
8050 | *-*-sysv*) | ||
8051 | ;; | ||
8052 | # SCO UNIX and OEM versions of SCO UNIX | ||
8053 | *-*-sco3.2v4*) | ||
8054 | as_fn_error $? "\"This Platform is no longer supported.\"" "$LINENO" 5 | ||
8055 | ;; | ||
8056 | # SCO OpenServer 5.x | ||
8057 | *-*-sco3.2v5*) | ||
8058 | if test -z "$GCC"; then | ||
8059 | CFLAGS="$CFLAGS -belf" | ||
8060 | fi | ||
8061 | LIBS="$LIBS -lprot -lx -ltinfo -lm" | ||
8062 | no_dev_ptmx=1 | ||
8063 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8064 | |||
8065 | $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h | ||
8066 | |||
8067 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
8068 | |||
8069 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8070 | |||
8071 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8072 | |||
8073 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
8074 | |||
8075 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8076 | |||
8077 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8078 | |||
8079 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
8080 | |||
8081 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
8082 | |||
8083 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
8084 | |||
8085 | for ac_func in getluid setluid | ||
8086 | do : | ||
8087 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
8088 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
8089 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
8090 | cat >>confdefs.h <<_ACEOF | ||
8091 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
8092 | _ACEOF | ||
8093 | |||
8094 | fi | ||
8095 | done | ||
8096 | |||
8097 | MANTYPE=man | ||
8098 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
8099 | SKIP_DISABLE_LASTLOG_DEFINE=yes | ||
8100 | ;; | ||
8101 | *-*-unicosmk*) | ||
8102 | |||
8103 | $as_echo "#define NO_SSH_LASTLOG 1" >>confdefs.h | ||
8104 | |||
8105 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8106 | |||
8107 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8108 | |||
8109 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8110 | |||
8111 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8112 | |||
8113 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8114 | |||
8115 | LDFLAGS="$LDFLAGS" | ||
8116 | LIBS="$LIBS -lgen -lrsc -lshare -luex -lacm" | ||
8117 | MANTYPE=cat | ||
8118 | ;; | ||
8119 | *-*-unicosmp*) | ||
8120 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8121 | |||
8122 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8123 | |||
8124 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8125 | |||
8126 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
8127 | |||
8128 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8129 | |||
8130 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8131 | |||
8132 | LDFLAGS="$LDFLAGS" | ||
8133 | LIBS="$LIBS -lgen -lacid -ldb" | ||
8134 | MANTYPE=cat | ||
8135 | ;; | ||
8136 | *-*-unicos*) | ||
8137 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8138 | |||
8139 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8140 | |||
8141 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8142 | |||
8143 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8144 | |||
8145 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8146 | |||
8147 | $as_echo "#define NO_SSH_LASTLOG 1" >>confdefs.h | ||
8148 | |||
8149 | LDFLAGS="$LDFLAGS -Wl,-Dmsglevel=334:fatal" | ||
8150 | LIBS="$LIBS -lgen -lrsc -lshare -luex -lacm" | ||
8151 | MANTYPE=cat | ||
8152 | ;; | ||
8153 | *-dec-osf*) | ||
8154 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Digital Unix SIA" >&5 | ||
8155 | $as_echo_n "checking for Digital Unix SIA... " >&6; } | ||
8156 | no_osfsia="" | ||
8157 | |||
8158 | # Check whether --with-osfsia was given. | ||
8159 | if test "${with_osfsia+set}" = set; then : | ||
8160 | withval=$with_osfsia; | ||
8161 | if test "x$withval" = "xno" ; then | ||
8162 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: disabled" >&5 | ||
8163 | $as_echo "disabled" >&6; } | ||
8164 | no_osfsia=1 | ||
8165 | fi | ||
8166 | |||
8167 | fi | ||
8168 | |||
8169 | if test -z "$no_osfsia" ; then | ||
8170 | if test -f /etc/sia/matrix.conf; then | ||
8171 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
8172 | $as_echo "yes" >&6; } | ||
8173 | |||
8174 | $as_echo "#define HAVE_OSF_SIA 1" >>confdefs.h | ||
8175 | |||
8176 | |||
8177 | $as_echo "#define DISABLE_LOGIN 1" >>confdefs.h | ||
8178 | |||
8179 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8180 | |||
8181 | LIBS="$LIBS -lsecurity -ldb -lm -laud" | ||
8182 | SIA_MSG="yes" | ||
8183 | else | ||
8184 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
8185 | $as_echo "no" >&6; } | ||
8186 | |||
8187 | $as_echo "#define LOCKED_PASSWD_SUBSTR \"Nologin\"" >>confdefs.h | ||
8188 | |||
8189 | fi | ||
8190 | fi | ||
8191 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
8192 | |||
8193 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8194 | |||
8195 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8196 | |||
8197 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8198 | |||
8199 | |||
8200 | $as_echo "#define BROKEN_READV_COMPARISON 1" >>confdefs.h | ||
8201 | |||
8202 | ;; | ||
8203 | |||
8204 | *-*-nto-qnx*) | ||
8205 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8206 | |||
8207 | $as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h | ||
8208 | |||
8209 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
8210 | |||
8211 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
8212 | |||
8213 | |||
8214 | $as_echo "#define BROKEN_SHADOW_EXPIRE 1" >>confdefs.h | ||
8215 | |||
8216 | enable_etc_default_login=no # has incompatible /etc/default/login | ||
8217 | case "$host" in | ||
8218 | *-*-nto-qnx6*) | ||
8219 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8220 | |||
8221 | ;; | ||
8222 | esac | ||
8223 | ;; | ||
8224 | |||
8225 | *-*-ultrix*) | ||
8226 | |||
8227 | $as_echo "#define BROKEN_GETGROUPS 1" >>confdefs.h | ||
8228 | |||
8229 | |||
8230 | $as_echo "#define BROKEN_MMAP 1" >>confdefs.h | ||
8231 | |||
8232 | $as_echo "#define NEED_SETPGRP 1" >>confdefs.h | ||
8233 | |||
8234 | |||
8235 | $as_echo "#define HAVE_SYS_SYSLOG_H 1" >>confdefs.h | ||
8236 | |||
8237 | ;; | ||
8238 | |||
8239 | *-*-lynxos) | ||
8240 | CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__" | ||
8241 | |||
8242 | $as_echo "#define BROKEN_SETVBUF 1" >>confdefs.h | ||
8243 | |||
8244 | ;; | ||
8245 | esac | ||
8246 | |||
8247 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler and flags for sanity" >&5 | ||
8248 | $as_echo_n "checking compiler and flags for sanity... " >&6; } | ||
8249 | if test "$cross_compiling" = yes; then : | ||
8250 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking compiler sanity" >&5 | ||
8251 | $as_echo "$as_me: WARNING: cross compiling: not checking compiler sanity" >&2;} | ||
8252 | |||
8253 | else | ||
8254 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8255 | /* end confdefs.h. */ | ||
8256 | #include <stdio.h> | ||
8257 | int | ||
8258 | main () | ||
8259 | { | ||
8260 | exit(0); | ||
8261 | ; | ||
8262 | return 0; | ||
8263 | } | ||
8264 | _ACEOF | ||
8265 | if ac_fn_c_try_run "$LINENO"; then : | ||
8266 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
8267 | $as_echo "yes" >&6; } | ||
8268 | else | ||
8269 | |||
8270 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
8271 | $as_echo "no" >&6; } | ||
8272 | as_fn_error $? "*** compiler cannot create working executables, check config.log ***" "$LINENO" 5 | ||
8273 | |||
8274 | fi | ||
8275 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
8276 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
8277 | fi | ||
8278 | |||
8279 | |||
8280 | # Checks for libraries. | ||
8281 | ac_fn_c_check_func "$LINENO" "yp_match" "ac_cv_func_yp_match" | ||
8282 | if test "x$ac_cv_func_yp_match" = xyes; then : | ||
8283 | |||
8284 | else | ||
8285 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for yp_match in -lnsl" >&5 | ||
8286 | $as_echo_n "checking for yp_match in -lnsl... " >&6; } | ||
8287 | if ${ac_cv_lib_nsl_yp_match+:} false; then : | ||
8288 | $as_echo_n "(cached) " >&6 | ||
8289 | else | ||
8290 | ac_check_lib_save_LIBS=$LIBS | ||
8291 | LIBS="-lnsl $LIBS" | ||
8292 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8293 | /* end confdefs.h. */ | ||
8294 | |||
8295 | /* Override any GCC internal prototype to avoid an error. | ||
8296 | Use char because int might match the return type of a GCC | ||
8297 | builtin and then its argument prototype would still apply. */ | ||
8298 | #ifdef __cplusplus | ||
8299 | extern "C" | ||
8300 | #endif | ||
8301 | char yp_match (); | ||
8302 | int | ||
8303 | main () | ||
8304 | { | ||
8305 | return yp_match (); | ||
8306 | ; | ||
8307 | return 0; | ||
8308 | } | ||
8309 | _ACEOF | ||
8310 | if ac_fn_c_try_link "$LINENO"; then : | ||
8311 | ac_cv_lib_nsl_yp_match=yes | ||
8312 | else | ||
8313 | ac_cv_lib_nsl_yp_match=no | ||
8314 | fi | ||
8315 | rm -f core conftest.err conftest.$ac_objext \ | ||
8316 | conftest$ac_exeext conftest.$ac_ext | ||
8317 | LIBS=$ac_check_lib_save_LIBS | ||
8318 | fi | ||
8319 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_yp_match" >&5 | ||
8320 | $as_echo "$ac_cv_lib_nsl_yp_match" >&6; } | ||
8321 | if test "x$ac_cv_lib_nsl_yp_match" = xyes; then : | ||
8322 | cat >>confdefs.h <<_ACEOF | ||
8323 | #define HAVE_LIBNSL 1 | ||
8324 | _ACEOF | ||
8325 | |||
8326 | LIBS="-lnsl $LIBS" | ||
8327 | |||
8328 | fi | ||
8329 | |||
8330 | fi | ||
8331 | |||
8332 | ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt" | ||
8333 | if test "x$ac_cv_func_setsockopt" = xyes; then : | ||
8334 | |||
8335 | else | ||
8336 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5 | ||
8337 | $as_echo_n "checking for setsockopt in -lsocket... " >&6; } | ||
8338 | if ${ac_cv_lib_socket_setsockopt+:} false; then : | ||
8339 | $as_echo_n "(cached) " >&6 | ||
8340 | else | ||
8341 | ac_check_lib_save_LIBS=$LIBS | ||
8342 | LIBS="-lsocket $LIBS" | ||
8343 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8344 | /* end confdefs.h. */ | ||
8345 | |||
8346 | /* Override any GCC internal prototype to avoid an error. | ||
8347 | Use char because int might match the return type of a GCC | ||
8348 | builtin and then its argument prototype would still apply. */ | ||
8349 | #ifdef __cplusplus | ||
8350 | extern "C" | ||
8351 | #endif | ||
8352 | char setsockopt (); | ||
8353 | int | ||
8354 | main () | ||
8355 | { | ||
8356 | return setsockopt (); | ||
8357 | ; | ||
8358 | return 0; | ||
8359 | } | ||
8360 | _ACEOF | ||
8361 | if ac_fn_c_try_link "$LINENO"; then : | ||
8362 | ac_cv_lib_socket_setsockopt=yes | ||
8363 | else | ||
8364 | ac_cv_lib_socket_setsockopt=no | ||
8365 | fi | ||
8366 | rm -f core conftest.err conftest.$ac_objext \ | ||
8367 | conftest$ac_exeext conftest.$ac_ext | ||
8368 | LIBS=$ac_check_lib_save_LIBS | ||
8369 | fi | ||
8370 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5 | ||
8371 | $as_echo "$ac_cv_lib_socket_setsockopt" >&6; } | ||
8372 | if test "x$ac_cv_lib_socket_setsockopt" = xyes; then : | ||
8373 | cat >>confdefs.h <<_ACEOF | ||
8374 | #define HAVE_LIBSOCKET 1 | ||
8375 | _ACEOF | ||
8376 | |||
8377 | LIBS="-lsocket $LIBS" | ||
8378 | |||
8379 | fi | ||
8380 | |||
8381 | fi | ||
8382 | |||
8383 | |||
8384 | for ac_func in dirname | ||
8385 | do : | ||
8386 | ac_fn_c_check_func "$LINENO" "dirname" "ac_cv_func_dirname" | ||
8387 | if test "x$ac_cv_func_dirname" = xyes; then : | ||
8388 | cat >>confdefs.h <<_ACEOF | ||
8389 | #define HAVE_DIRNAME 1 | ||
8390 | _ACEOF | ||
8391 | for ac_header in libgen.h | ||
8392 | do : | ||
8393 | ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default" | ||
8394 | if test "x$ac_cv_header_libgen_h" = xyes; then : | ||
8395 | cat >>confdefs.h <<_ACEOF | ||
8396 | #define HAVE_LIBGEN_H 1 | ||
8397 | _ACEOF | ||
8398 | |||
8399 | fi | ||
8400 | |||
8401 | done | ||
8402 | |||
8403 | else | ||
8404 | |||
8405 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dirname in -lgen" >&5 | ||
8406 | $as_echo_n "checking for dirname in -lgen... " >&6; } | ||
8407 | if ${ac_cv_lib_gen_dirname+:} false; then : | ||
8408 | $as_echo_n "(cached) " >&6 | ||
8409 | else | ||
8410 | ac_check_lib_save_LIBS=$LIBS | ||
8411 | LIBS="-lgen $LIBS" | ||
8412 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8413 | /* end confdefs.h. */ | ||
8414 | |||
8415 | /* Override any GCC internal prototype to avoid an error. | ||
8416 | Use char because int might match the return type of a GCC | ||
8417 | builtin and then its argument prototype would still apply. */ | ||
8418 | #ifdef __cplusplus | ||
8419 | extern "C" | ||
8420 | #endif | ||
8421 | char dirname (); | ||
8422 | int | ||
8423 | main () | ||
8424 | { | ||
8425 | return dirname (); | ||
8426 | ; | ||
8427 | return 0; | ||
8428 | } | ||
8429 | _ACEOF | ||
8430 | if ac_fn_c_try_link "$LINENO"; then : | ||
8431 | ac_cv_lib_gen_dirname=yes | ||
8432 | else | ||
8433 | ac_cv_lib_gen_dirname=no | ||
8434 | fi | ||
8435 | rm -f core conftest.err conftest.$ac_objext \ | ||
8436 | conftest$ac_exeext conftest.$ac_ext | ||
8437 | LIBS=$ac_check_lib_save_LIBS | ||
8438 | fi | ||
8439 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_dirname" >&5 | ||
8440 | $as_echo "$ac_cv_lib_gen_dirname" >&6; } | ||
8441 | if test "x$ac_cv_lib_gen_dirname" = xyes; then : | ||
8442 | |||
8443 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken dirname" >&5 | ||
8444 | $as_echo_n "checking for broken dirname... " >&6; } | ||
8445 | if ${ac_cv_have_broken_dirname+:} false; then : | ||
8446 | $as_echo_n "(cached) " >&6 | ||
8447 | else | ||
8448 | |||
8449 | save_LIBS="$LIBS" | ||
8450 | LIBS="$LIBS -lgen" | ||
8451 | if test "$cross_compiling" = yes; then : | ||
8452 | ac_cv_have_broken_dirname="no" | ||
8453 | else | ||
8454 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8455 | /* end confdefs.h. */ | ||
8456 | |||
8457 | #include <libgen.h> | ||
8458 | #include <string.h> | ||
8459 | |||
8460 | int main(int argc, char **argv) { | ||
8461 | char *s, buf[32]; | ||
8462 | |||
8463 | strncpy(buf,"/etc", 32); | ||
8464 | s = dirname(buf); | ||
8465 | if (!s || strncmp(s, "/", 32) != 0) { | ||
8466 | exit(1); | ||
8467 | } else { | ||
8468 | exit(0); | ||
8469 | } | ||
8470 | } | ||
8471 | |||
8472 | _ACEOF | ||
8473 | if ac_fn_c_try_run "$LINENO"; then : | ||
8474 | ac_cv_have_broken_dirname="no" | ||
8475 | else | ||
8476 | ac_cv_have_broken_dirname="yes" | ||
8477 | fi | ||
8478 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
8479 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
8480 | fi | ||
8481 | |||
8482 | LIBS="$save_LIBS" | ||
8483 | |||
8484 | fi | ||
8485 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_broken_dirname" >&5 | ||
8486 | $as_echo "$ac_cv_have_broken_dirname" >&6; } | ||
8487 | if test "x$ac_cv_have_broken_dirname" = "xno" ; then | ||
8488 | LIBS="$LIBS -lgen" | ||
8489 | $as_echo "#define HAVE_DIRNAME 1" >>confdefs.h | ||
8490 | |||
8491 | for ac_header in libgen.h | ||
8492 | do : | ||
8493 | ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default" | ||
8494 | if test "x$ac_cv_header_libgen_h" = xyes; then : | ||
8495 | cat >>confdefs.h <<_ACEOF | ||
8496 | #define HAVE_LIBGEN_H 1 | ||
8497 | _ACEOF | ||
8498 | |||
8499 | fi | ||
8500 | |||
8501 | done | ||
8502 | |||
8503 | fi | ||
8504 | |||
8505 | fi | ||
8506 | |||
8507 | |||
8508 | fi | ||
8509 | done | ||
8510 | |||
8511 | |||
8512 | ac_fn_c_check_func "$LINENO" "getspnam" "ac_cv_func_getspnam" | ||
8513 | if test "x$ac_cv_func_getspnam" = xyes; then : | ||
8514 | |||
8515 | else | ||
8516 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getspnam in -lgen" >&5 | ||
8517 | $as_echo_n "checking for getspnam in -lgen... " >&6; } | ||
8518 | if ${ac_cv_lib_gen_getspnam+:} false; then : | ||
8519 | $as_echo_n "(cached) " >&6 | ||
8520 | else | ||
8521 | ac_check_lib_save_LIBS=$LIBS | ||
8522 | LIBS="-lgen $LIBS" | ||
8523 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8524 | /* end confdefs.h. */ | ||
8525 | |||
8526 | /* Override any GCC internal prototype to avoid an error. | ||
8527 | Use char because int might match the return type of a GCC | ||
8528 | builtin and then its argument prototype would still apply. */ | ||
8529 | #ifdef __cplusplus | ||
8530 | extern "C" | ||
8531 | #endif | ||
8532 | char getspnam (); | ||
8533 | int | ||
8534 | main () | ||
8535 | { | ||
8536 | return getspnam (); | ||
8537 | ; | ||
8538 | return 0; | ||
8539 | } | ||
8540 | _ACEOF | ||
8541 | if ac_fn_c_try_link "$LINENO"; then : | ||
8542 | ac_cv_lib_gen_getspnam=yes | ||
8543 | else | ||
8544 | ac_cv_lib_gen_getspnam=no | ||
8545 | fi | ||
8546 | rm -f core conftest.err conftest.$ac_objext \ | ||
8547 | conftest$ac_exeext conftest.$ac_ext | ||
8548 | LIBS=$ac_check_lib_save_LIBS | ||
8549 | fi | ||
8550 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_getspnam" >&5 | ||
8551 | $as_echo "$ac_cv_lib_gen_getspnam" >&6; } | ||
8552 | if test "x$ac_cv_lib_gen_getspnam" = xyes; then : | ||
8553 | LIBS="$LIBS -lgen" | ||
8554 | fi | ||
8555 | |||
8556 | fi | ||
8557 | |||
8558 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing basename" >&5 | ||
8559 | $as_echo_n "checking for library containing basename... " >&6; } | ||
8560 | if ${ac_cv_search_basename+:} false; then : | ||
8561 | $as_echo_n "(cached) " >&6 | ||
8562 | else | ||
8563 | ac_func_search_save_LIBS=$LIBS | ||
8564 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8565 | /* end confdefs.h. */ | ||
8566 | |||
8567 | /* Override any GCC internal prototype to avoid an error. | ||
8568 | Use char because int might match the return type of a GCC | ||
8569 | builtin and then its argument prototype would still apply. */ | ||
8570 | #ifdef __cplusplus | ||
8571 | extern "C" | ||
8572 | #endif | ||
8573 | char basename (); | ||
8574 | int | ||
8575 | main () | ||
8576 | { | ||
8577 | return basename (); | ||
8578 | ; | ||
8579 | return 0; | ||
8580 | } | ||
8581 | _ACEOF | ||
8582 | for ac_lib in '' gen; do | ||
8583 | if test -z "$ac_lib"; then | ||
8584 | ac_res="none required" | ||
8585 | else | ||
8586 | ac_res=-l$ac_lib | ||
8587 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
8588 | fi | ||
8589 | if ac_fn_c_try_link "$LINENO"; then : | ||
8590 | ac_cv_search_basename=$ac_res | ||
8591 | fi | ||
8592 | rm -f core conftest.err conftest.$ac_objext \ | ||
8593 | conftest$ac_exeext | ||
8594 | if ${ac_cv_search_basename+:} false; then : | ||
8595 | break | ||
8596 | fi | ||
8597 | done | ||
8598 | if ${ac_cv_search_basename+:} false; then : | ||
8599 | |||
8600 | else | ||
8601 | ac_cv_search_basename=no | ||
8602 | fi | ||
8603 | rm conftest.$ac_ext | ||
8604 | LIBS=$ac_func_search_save_LIBS | ||
8605 | fi | ||
8606 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_basename" >&5 | ||
8607 | $as_echo "$ac_cv_search_basename" >&6; } | ||
8608 | ac_res=$ac_cv_search_basename | ||
8609 | if test "$ac_res" != no; then : | ||
8610 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
8611 | |||
8612 | $as_echo "#define HAVE_BASENAME 1" >>confdefs.h | ||
8613 | |||
8614 | fi | ||
8615 | |||
8616 | |||
8617 | |||
8618 | # Check whether --with-zlib was given. | ||
8619 | if test "${with_zlib+set}" = set; then : | ||
8620 | withval=$with_zlib; if test "x$withval" = "xno" ; then | ||
8621 | as_fn_error $? "*** zlib is required ***" "$LINENO" 5 | ||
8622 | elif test "x$withval" != "xyes"; then | ||
8623 | if test -d "$withval/lib"; then | ||
8624 | if test -n "${need_dash_r}"; then | ||
8625 | LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" | ||
8626 | else | ||
8627 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
8628 | fi | ||
8629 | else | ||
8630 | if test -n "${need_dash_r}"; then | ||
8631 | LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" | ||
8632 | else | ||
8633 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
8634 | fi | ||
8635 | fi | ||
8636 | if test -d "$withval/include"; then | ||
8637 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
8638 | else | ||
8639 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
8640 | fi | ||
8641 | fi | ||
8642 | |||
8643 | fi | ||
8644 | |||
8645 | |||
8646 | ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" | ||
8647 | if test "x$ac_cv_header_zlib_h" = xyes; then : | ||
8648 | |||
8649 | else | ||
8650 | as_fn_error $? "*** zlib.h missing - please install first or check config.log ***" "$LINENO" 5 | ||
8651 | fi | ||
8652 | |||
8653 | |||
8654 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for deflate in -lz" >&5 | ||
8655 | $as_echo_n "checking for deflate in -lz... " >&6; } | ||
8656 | if ${ac_cv_lib_z_deflate+:} false; then : | ||
8657 | $as_echo_n "(cached) " >&6 | ||
8658 | else | ||
8659 | ac_check_lib_save_LIBS=$LIBS | ||
8660 | LIBS="-lz $LIBS" | ||
8661 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8662 | /* end confdefs.h. */ | ||
8663 | |||
8664 | /* Override any GCC internal prototype to avoid an error. | ||
8665 | Use char because int might match the return type of a GCC | ||
8666 | builtin and then its argument prototype would still apply. */ | ||
8667 | #ifdef __cplusplus | ||
8668 | extern "C" | ||
8669 | #endif | ||
8670 | char deflate (); | ||
8671 | int | ||
8672 | main () | ||
8673 | { | ||
8674 | return deflate (); | ||
8675 | ; | ||
8676 | return 0; | ||
8677 | } | ||
8678 | _ACEOF | ||
8679 | if ac_fn_c_try_link "$LINENO"; then : | ||
8680 | ac_cv_lib_z_deflate=yes | ||
8681 | else | ||
8682 | ac_cv_lib_z_deflate=no | ||
8683 | fi | ||
8684 | rm -f core conftest.err conftest.$ac_objext \ | ||
8685 | conftest$ac_exeext conftest.$ac_ext | ||
8686 | LIBS=$ac_check_lib_save_LIBS | ||
8687 | fi | ||
8688 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflate" >&5 | ||
8689 | $as_echo "$ac_cv_lib_z_deflate" >&6; } | ||
8690 | if test "x$ac_cv_lib_z_deflate" = xyes; then : | ||
8691 | cat >>confdefs.h <<_ACEOF | ||
8692 | #define HAVE_LIBZ 1 | ||
8693 | _ACEOF | ||
8694 | |||
8695 | LIBS="-lz $LIBS" | ||
8696 | |||
8697 | else | ||
8698 | |||
8699 | saved_CPPFLAGS="$CPPFLAGS" | ||
8700 | saved_LDFLAGS="$LDFLAGS" | ||
8701 | save_LIBS="$LIBS" | ||
8702 | if test -n "${need_dash_r}"; then | ||
8703 | LDFLAGS="-L/usr/local/lib -R/usr/local/lib ${saved_LDFLAGS}" | ||
8704 | else | ||
8705 | LDFLAGS="-L/usr/local/lib ${saved_LDFLAGS}" | ||
8706 | fi | ||
8707 | CPPFLAGS="-I/usr/local/include ${saved_CPPFLAGS}" | ||
8708 | LIBS="$LIBS -lz" | ||
8709 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8710 | /* end confdefs.h. */ | ||
8711 | |||
8712 | /* Override any GCC internal prototype to avoid an error. | ||
8713 | Use char because int might match the return type of a GCC | ||
8714 | builtin and then its argument prototype would still apply. */ | ||
8715 | #ifdef __cplusplus | ||
8716 | extern "C" | ||
8717 | #endif | ||
8718 | char deflate (); | ||
8719 | int | ||
8720 | main () | ||
8721 | { | ||
8722 | return deflate (); | ||
8723 | ; | ||
8724 | return 0; | ||
8725 | } | ||
8726 | _ACEOF | ||
8727 | if ac_fn_c_try_link "$LINENO"; then : | ||
8728 | $as_echo "#define HAVE_LIBZ 1" >>confdefs.h | ||
8729 | |||
8730 | else | ||
8731 | |||
8732 | as_fn_error $? "*** zlib missing - please install first or check config.log ***" "$LINENO" 5 | ||
8733 | |||
8734 | |||
8735 | fi | ||
8736 | rm -f core conftest.err conftest.$ac_objext \ | ||
8737 | conftest$ac_exeext conftest.$ac_ext | ||
8738 | |||
8739 | |||
8740 | fi | ||
8741 | |||
8742 | |||
8743 | |||
8744 | # Check whether --with-zlib-version-check was given. | ||
8745 | if test "${with_zlib_version_check+set}" = set; then : | ||
8746 | withval=$with_zlib_version_check; if test "x$withval" = "xno" ; then | ||
8747 | zlib_check_nonfatal=1 | ||
8748 | fi | ||
8749 | |||
8750 | |||
8751 | fi | ||
8752 | |||
8753 | |||
8754 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for possibly buggy zlib" >&5 | ||
8755 | $as_echo_n "checking for possibly buggy zlib... " >&6; } | ||
8756 | if test "$cross_compiling" = yes; then : | ||
8757 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking zlib version" >&5 | ||
8758 | $as_echo "$as_me: WARNING: cross compiling: not checking zlib version" >&2;} | ||
8759 | |||
8760 | else | ||
8761 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8762 | /* end confdefs.h. */ | ||
8763 | |||
8764 | #include <stdio.h> | ||
8765 | #include <stdlib.h> | ||
8766 | #include <zlib.h> | ||
8767 | |||
8768 | int | ||
8769 | main () | ||
8770 | { | ||
8771 | |||
8772 | int a=0, b=0, c=0, d=0, n, v; | ||
8773 | n = sscanf(ZLIB_VERSION, "%d.%d.%d.%d", &a, &b, &c, &d); | ||
8774 | if (n != 3 && n != 4) | ||
8775 | exit(1); | ||
8776 | v = a*1000000 + b*10000 + c*100 + d; | ||
8777 | fprintf(stderr, "found zlib version %s (%d)\n", ZLIB_VERSION, v); | ||
8778 | |||
8779 | /* 1.1.4 is OK */ | ||
8780 | if (a == 1 && b == 1 && c >= 4) | ||
8781 | exit(0); | ||
8782 | |||
8783 | /* 1.2.3 and up are OK */ | ||
8784 | if (v >= 1020300) | ||
8785 | exit(0); | ||
8786 | |||
8787 | exit(2); | ||
8788 | |||
8789 | ; | ||
8790 | return 0; | ||
8791 | } | ||
8792 | _ACEOF | ||
8793 | if ac_fn_c_try_run "$LINENO"; then : | ||
8794 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
8795 | $as_echo "no" >&6; } | ||
8796 | else | ||
8797 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
8798 | $as_echo "yes" >&6; } | ||
8799 | if test -z "$zlib_check_nonfatal" ; then | ||
8800 | as_fn_error $? "*** zlib too old - check config.log *** | ||
8801 | Your reported zlib version has known security problems. It's possible your | ||
8802 | vendor has fixed these problems without changing the version number. If you | ||
8803 | are sure this is the case, you can disable the check by running | ||
8804 | \"./configure --without-zlib-version-check\". | ||
8805 | If you are in doubt, upgrade zlib to version 1.2.3 or greater. | ||
8806 | See http://www.gzip.org/zlib/ for details." "$LINENO" 5 | ||
8807 | else | ||
8808 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib version may have security problems" >&5 | ||
8809 | $as_echo "$as_me: WARNING: zlib version may have security problems" >&2;} | ||
8810 | fi | ||
8811 | |||
8812 | fi | ||
8813 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
8814 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
8815 | fi | ||
8816 | |||
8817 | |||
8818 | ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp" | ||
8819 | if test "x$ac_cv_func_strcasecmp" = xyes; then : | ||
8820 | |||
8821 | else | ||
8822 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolv" >&5 | ||
8823 | $as_echo_n "checking for strcasecmp in -lresolv... " >&6; } | ||
8824 | if ${ac_cv_lib_resolv_strcasecmp+:} false; then : | ||
8825 | $as_echo_n "(cached) " >&6 | ||
8826 | else | ||
8827 | ac_check_lib_save_LIBS=$LIBS | ||
8828 | LIBS="-lresolv $LIBS" | ||
8829 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8830 | /* end confdefs.h. */ | ||
8831 | |||
8832 | /* Override any GCC internal prototype to avoid an error. | ||
8833 | Use char because int might match the return type of a GCC | ||
8834 | builtin and then its argument prototype would still apply. */ | ||
8835 | #ifdef __cplusplus | ||
8836 | extern "C" | ||
8837 | #endif | ||
8838 | char strcasecmp (); | ||
8839 | int | ||
8840 | main () | ||
8841 | { | ||
8842 | return strcasecmp (); | ||
8843 | ; | ||
8844 | return 0; | ||
8845 | } | ||
8846 | _ACEOF | ||
8847 | if ac_fn_c_try_link "$LINENO"; then : | ||
8848 | ac_cv_lib_resolv_strcasecmp=yes | ||
8849 | else | ||
8850 | ac_cv_lib_resolv_strcasecmp=no | ||
8851 | fi | ||
8852 | rm -f core conftest.err conftest.$ac_objext \ | ||
8853 | conftest$ac_exeext conftest.$ac_ext | ||
8854 | LIBS=$ac_check_lib_save_LIBS | ||
8855 | fi | ||
8856 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_strcasecmp" >&5 | ||
8857 | $as_echo "$ac_cv_lib_resolv_strcasecmp" >&6; } | ||
8858 | if test "x$ac_cv_lib_resolv_strcasecmp" = xyes; then : | ||
8859 | LIBS="$LIBS -lresolv" | ||
8860 | fi | ||
8861 | |||
8862 | |||
8863 | fi | ||
8864 | |||
8865 | for ac_func in utimes | ||
8866 | do : | ||
8867 | ac_fn_c_check_func "$LINENO" "utimes" "ac_cv_func_utimes" | ||
8868 | if test "x$ac_cv_func_utimes" = xyes; then : | ||
8869 | cat >>confdefs.h <<_ACEOF | ||
8870 | #define HAVE_UTIMES 1 | ||
8871 | _ACEOF | ||
8872 | |||
8873 | else | ||
8874 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for utimes in -lc89" >&5 | ||
8875 | $as_echo_n "checking for utimes in -lc89... " >&6; } | ||
8876 | if ${ac_cv_lib_c89_utimes+:} false; then : | ||
8877 | $as_echo_n "(cached) " >&6 | ||
8878 | else | ||
8879 | ac_check_lib_save_LIBS=$LIBS | ||
8880 | LIBS="-lc89 $LIBS" | ||
8881 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8882 | /* end confdefs.h. */ | ||
8883 | |||
8884 | /* Override any GCC internal prototype to avoid an error. | ||
8885 | Use char because int might match the return type of a GCC | ||
8886 | builtin and then its argument prototype would still apply. */ | ||
8887 | #ifdef __cplusplus | ||
8888 | extern "C" | ||
8889 | #endif | ||
8890 | char utimes (); | ||
8891 | int | ||
8892 | main () | ||
8893 | { | ||
8894 | return utimes (); | ||
8895 | ; | ||
8896 | return 0; | ||
8897 | } | ||
8898 | _ACEOF | ||
8899 | if ac_fn_c_try_link "$LINENO"; then : | ||
8900 | ac_cv_lib_c89_utimes=yes | ||
8901 | else | ||
8902 | ac_cv_lib_c89_utimes=no | ||
8903 | fi | ||
8904 | rm -f core conftest.err conftest.$ac_objext \ | ||
8905 | conftest$ac_exeext conftest.$ac_ext | ||
8906 | LIBS=$ac_check_lib_save_LIBS | ||
8907 | fi | ||
8908 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c89_utimes" >&5 | ||
8909 | $as_echo "$ac_cv_lib_c89_utimes" >&6; } | ||
8910 | if test "x$ac_cv_lib_c89_utimes" = xyes; then : | ||
8911 | $as_echo "#define HAVE_UTIMES 1" >>confdefs.h | ||
8912 | |||
8913 | LIBS="$LIBS -lc89" | ||
8914 | fi | ||
8915 | |||
8916 | |||
8917 | fi | ||
8918 | done | ||
8919 | |||
8920 | |||
8921 | for ac_header in bsd/libutil.h libutil.h | ||
8922 | do : | ||
8923 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
8924 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
8925 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
8926 | cat >>confdefs.h <<_ACEOF | ||
8927 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
8928 | _ACEOF | ||
8929 | |||
8930 | fi | ||
8931 | |||
8932 | done | ||
8933 | |||
8934 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fmt_scaled" >&5 | ||
8935 | $as_echo_n "checking for library containing fmt_scaled... " >&6; } | ||
8936 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
8937 | $as_echo_n "(cached) " >&6 | ||
8938 | else | ||
8939 | ac_func_search_save_LIBS=$LIBS | ||
8940 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8941 | /* end confdefs.h. */ | ||
8942 | |||
8943 | /* Override any GCC internal prototype to avoid an error. | ||
8944 | Use char because int might match the return type of a GCC | ||
8945 | builtin and then its argument prototype would still apply. */ | ||
8946 | #ifdef __cplusplus | ||
8947 | extern "C" | ||
8948 | #endif | ||
8949 | char fmt_scaled (); | ||
8950 | int | ||
8951 | main () | ||
8952 | { | ||
8953 | return fmt_scaled (); | ||
8954 | ; | ||
8955 | return 0; | ||
8956 | } | ||
8957 | _ACEOF | ||
8958 | for ac_lib in '' util bsd; do | ||
8959 | if test -z "$ac_lib"; then | ||
8960 | ac_res="none required" | ||
8961 | else | ||
8962 | ac_res=-l$ac_lib | ||
8963 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
8964 | fi | ||
8965 | if ac_fn_c_try_link "$LINENO"; then : | ||
8966 | ac_cv_search_fmt_scaled=$ac_res | ||
8967 | fi | ||
8968 | rm -f core conftest.err conftest.$ac_objext \ | ||
8969 | conftest$ac_exeext | ||
8970 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
8971 | break | ||
8972 | fi | ||
8973 | done | ||
8974 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
8975 | |||
8976 | else | ||
8977 | ac_cv_search_fmt_scaled=no | ||
8978 | fi | ||
8979 | rm conftest.$ac_ext | ||
8980 | LIBS=$ac_func_search_save_LIBS | ||
8981 | fi | ||
8982 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmt_scaled" >&5 | ||
8983 | $as_echo "$ac_cv_search_fmt_scaled" >&6; } | ||
8984 | ac_res=$ac_cv_search_fmt_scaled | ||
8985 | if test "$ac_res" != no; then : | ||
8986 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
8987 | |||
8988 | fi | ||
8989 | |||
8990 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing scan_scaled" >&5 | ||
8991 | $as_echo_n "checking for library containing scan_scaled... " >&6; } | ||
8992 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
8993 | $as_echo_n "(cached) " >&6 | ||
8994 | else | ||
8995 | ac_func_search_save_LIBS=$LIBS | ||
8996 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8997 | /* end confdefs.h. */ | ||
8998 | |||
8999 | /* Override any GCC internal prototype to avoid an error. | ||
9000 | Use char because int might match the return type of a GCC | ||
9001 | builtin and then its argument prototype would still apply. */ | ||
9002 | #ifdef __cplusplus | ||
9003 | extern "C" | ||
9004 | #endif | ||
9005 | char scan_scaled (); | ||
9006 | int | ||
9007 | main () | ||
9008 | { | ||
9009 | return scan_scaled (); | ||
9010 | ; | ||
9011 | return 0; | ||
9012 | } | ||
9013 | _ACEOF | ||
9014 | for ac_lib in '' util bsd; do | ||
9015 | if test -z "$ac_lib"; then | ||
9016 | ac_res="none required" | ||
9017 | else | ||
9018 | ac_res=-l$ac_lib | ||
9019 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9020 | fi | ||
9021 | if ac_fn_c_try_link "$LINENO"; then : | ||
9022 | ac_cv_search_scan_scaled=$ac_res | ||
9023 | fi | ||
9024 | rm -f core conftest.err conftest.$ac_objext \ | ||
9025 | conftest$ac_exeext | ||
9026 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
9027 | break | ||
9028 | fi | ||
9029 | done | ||
9030 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
9031 | |||
9032 | else | ||
9033 | ac_cv_search_scan_scaled=no | ||
9034 | fi | ||
9035 | rm conftest.$ac_ext | ||
9036 | LIBS=$ac_func_search_save_LIBS | ||
9037 | fi | ||
9038 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_scan_scaled" >&5 | ||
9039 | $as_echo "$ac_cv_search_scan_scaled" >&6; } | ||
9040 | ac_res=$ac_cv_search_scan_scaled | ||
9041 | if test "$ac_res" != no; then : | ||
9042 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9043 | |||
9044 | fi | ||
9045 | |||
9046 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing login" >&5 | ||
9047 | $as_echo_n "checking for library containing login... " >&6; } | ||
9048 | if ${ac_cv_search_login+:} false; then : | ||
9049 | $as_echo_n "(cached) " >&6 | ||
9050 | else | ||
9051 | ac_func_search_save_LIBS=$LIBS | ||
9052 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9053 | /* end confdefs.h. */ | ||
9054 | |||
9055 | /* Override any GCC internal prototype to avoid an error. | ||
9056 | Use char because int might match the return type of a GCC | ||
9057 | builtin and then its argument prototype would still apply. */ | ||
9058 | #ifdef __cplusplus | ||
9059 | extern "C" | ||
9060 | #endif | ||
9061 | char login (); | ||
9062 | int | ||
9063 | main () | ||
9064 | { | ||
9065 | return login (); | ||
9066 | ; | ||
9067 | return 0; | ||
9068 | } | ||
9069 | _ACEOF | ||
9070 | for ac_lib in '' util bsd; do | ||
9071 | if test -z "$ac_lib"; then | ||
9072 | ac_res="none required" | ||
9073 | else | ||
9074 | ac_res=-l$ac_lib | ||
9075 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9076 | fi | ||
9077 | if ac_fn_c_try_link "$LINENO"; then : | ||
9078 | ac_cv_search_login=$ac_res | ||
9079 | fi | ||
9080 | rm -f core conftest.err conftest.$ac_objext \ | ||
9081 | conftest$ac_exeext | ||
9082 | if ${ac_cv_search_login+:} false; then : | ||
9083 | break | ||
9084 | fi | ||
9085 | done | ||
9086 | if ${ac_cv_search_login+:} false; then : | ||
9087 | |||
9088 | else | ||
9089 | ac_cv_search_login=no | ||
9090 | fi | ||
9091 | rm conftest.$ac_ext | ||
9092 | LIBS=$ac_func_search_save_LIBS | ||
9093 | fi | ||
9094 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_login" >&5 | ||
9095 | $as_echo "$ac_cv_search_login" >&6; } | ||
9096 | ac_res=$ac_cv_search_login | ||
9097 | if test "$ac_res" != no; then : | ||
9098 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9099 | |||
9100 | fi | ||
9101 | |||
9102 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logout" >&5 | ||
9103 | $as_echo_n "checking for library containing logout... " >&6; } | ||
9104 | if ${ac_cv_search_logout+:} false; then : | ||
9105 | $as_echo_n "(cached) " >&6 | ||
9106 | else | ||
9107 | ac_func_search_save_LIBS=$LIBS | ||
9108 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9109 | /* end confdefs.h. */ | ||
9110 | |||
9111 | /* Override any GCC internal prototype to avoid an error. | ||
9112 | Use char because int might match the return type of a GCC | ||
9113 | builtin and then its argument prototype would still apply. */ | ||
9114 | #ifdef __cplusplus | ||
9115 | extern "C" | ||
9116 | #endif | ||
9117 | char logout (); | ||
9118 | int | ||
9119 | main () | ||
9120 | { | ||
9121 | return logout (); | ||
9122 | ; | ||
9123 | return 0; | ||
9124 | } | ||
9125 | _ACEOF | ||
9126 | for ac_lib in '' util bsd; do | ||
9127 | if test -z "$ac_lib"; then | ||
9128 | ac_res="none required" | ||
9129 | else | ||
9130 | ac_res=-l$ac_lib | ||
9131 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9132 | fi | ||
9133 | if ac_fn_c_try_link "$LINENO"; then : | ||
9134 | ac_cv_search_logout=$ac_res | ||
9135 | fi | ||
9136 | rm -f core conftest.err conftest.$ac_objext \ | ||
9137 | conftest$ac_exeext | ||
9138 | if ${ac_cv_search_logout+:} false; then : | ||
9139 | break | ||
9140 | fi | ||
9141 | done | ||
9142 | if ${ac_cv_search_logout+:} false; then : | ||
9143 | |||
9144 | else | ||
9145 | ac_cv_search_logout=no | ||
9146 | fi | ||
9147 | rm conftest.$ac_ext | ||
9148 | LIBS=$ac_func_search_save_LIBS | ||
9149 | fi | ||
9150 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logout" >&5 | ||
9151 | $as_echo "$ac_cv_search_logout" >&6; } | ||
9152 | ac_res=$ac_cv_search_logout | ||
9153 | if test "$ac_res" != no; then : | ||
9154 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9155 | |||
9156 | fi | ||
9157 | |||
9158 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logwtmp" >&5 | ||
9159 | $as_echo_n "checking for library containing logwtmp... " >&6; } | ||
9160 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9161 | $as_echo_n "(cached) " >&6 | ||
9162 | else | ||
9163 | ac_func_search_save_LIBS=$LIBS | ||
9164 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9165 | /* end confdefs.h. */ | ||
9166 | |||
9167 | /* Override any GCC internal prototype to avoid an error. | ||
9168 | Use char because int might match the return type of a GCC | ||
9169 | builtin and then its argument prototype would still apply. */ | ||
9170 | #ifdef __cplusplus | ||
9171 | extern "C" | ||
9172 | #endif | ||
9173 | char logwtmp (); | ||
9174 | int | ||
9175 | main () | ||
9176 | { | ||
9177 | return logwtmp (); | ||
9178 | ; | ||
9179 | return 0; | ||
9180 | } | ||
9181 | _ACEOF | ||
9182 | for ac_lib in '' util bsd; do | ||
9183 | if test -z "$ac_lib"; then | ||
9184 | ac_res="none required" | ||
9185 | else | ||
9186 | ac_res=-l$ac_lib | ||
9187 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9188 | fi | ||
9189 | if ac_fn_c_try_link "$LINENO"; then : | ||
9190 | ac_cv_search_logwtmp=$ac_res | ||
9191 | fi | ||
9192 | rm -f core conftest.err conftest.$ac_objext \ | ||
9193 | conftest$ac_exeext | ||
9194 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9195 | break | ||
9196 | fi | ||
9197 | done | ||
9198 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9199 | |||
9200 | else | ||
9201 | ac_cv_search_logwtmp=no | ||
9202 | fi | ||
9203 | rm conftest.$ac_ext | ||
9204 | LIBS=$ac_func_search_save_LIBS | ||
9205 | fi | ||
9206 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logwtmp" >&5 | ||
9207 | $as_echo "$ac_cv_search_logwtmp" >&6; } | ||
9208 | ac_res=$ac_cv_search_logwtmp | ||
9209 | if test "$ac_res" != no; then : | ||
9210 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9211 | |||
9212 | fi | ||
9213 | |||
9214 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing openpty" >&5 | ||
9215 | $as_echo_n "checking for library containing openpty... " >&6; } | ||
9216 | if ${ac_cv_search_openpty+:} false; then : | ||
9217 | $as_echo_n "(cached) " >&6 | ||
9218 | else | ||
9219 | ac_func_search_save_LIBS=$LIBS | ||
9220 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9221 | /* end confdefs.h. */ | ||
9222 | |||
9223 | /* Override any GCC internal prototype to avoid an error. | ||
9224 | Use char because int might match the return type of a GCC | ||
9225 | builtin and then its argument prototype would still apply. */ | ||
9226 | #ifdef __cplusplus | ||
9227 | extern "C" | ||
9228 | #endif | ||
9229 | char openpty (); | ||
9230 | int | ||
9231 | main () | ||
9232 | { | ||
9233 | return openpty (); | ||
9234 | ; | ||
9235 | return 0; | ||
9236 | } | ||
9237 | _ACEOF | ||
9238 | for ac_lib in '' util bsd; do | ||
9239 | if test -z "$ac_lib"; then | ||
9240 | ac_res="none required" | ||
9241 | else | ||
9242 | ac_res=-l$ac_lib | ||
9243 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9244 | fi | ||
9245 | if ac_fn_c_try_link "$LINENO"; then : | ||
9246 | ac_cv_search_openpty=$ac_res | ||
9247 | fi | ||
9248 | rm -f core conftest.err conftest.$ac_objext \ | ||
9249 | conftest$ac_exeext | ||
9250 | if ${ac_cv_search_openpty+:} false; then : | ||
9251 | break | ||
9252 | fi | ||
9253 | done | ||
9254 | if ${ac_cv_search_openpty+:} false; then : | ||
9255 | |||
9256 | else | ||
9257 | ac_cv_search_openpty=no | ||
9258 | fi | ||
9259 | rm conftest.$ac_ext | ||
9260 | LIBS=$ac_func_search_save_LIBS | ||
9261 | fi | ||
9262 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_openpty" >&5 | ||
9263 | $as_echo "$ac_cv_search_openpty" >&6; } | ||
9264 | ac_res=$ac_cv_search_openpty | ||
9265 | if test "$ac_res" != no; then : | ||
9266 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9267 | |||
9268 | fi | ||
9269 | |||
9270 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing updwtmp" >&5 | ||
9271 | $as_echo_n "checking for library containing updwtmp... " >&6; } | ||
9272 | if ${ac_cv_search_updwtmp+:} false; then : | ||
9273 | $as_echo_n "(cached) " >&6 | ||
9274 | else | ||
9275 | ac_func_search_save_LIBS=$LIBS | ||
9276 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9277 | /* end confdefs.h. */ | ||
9278 | |||
9279 | /* Override any GCC internal prototype to avoid an error. | ||
9280 | Use char because int might match the return type of a GCC | ||
9281 | builtin and then its argument prototype would still apply. */ | ||
9282 | #ifdef __cplusplus | ||
9283 | extern "C" | ||
9284 | #endif | ||
9285 | char updwtmp (); | ||
9286 | int | ||
9287 | main () | ||
9288 | { | ||
9289 | return updwtmp (); | ||
9290 | ; | ||
9291 | return 0; | ||
9292 | } | ||
9293 | _ACEOF | ||
9294 | for ac_lib in '' util bsd; do | ||
9295 | if test -z "$ac_lib"; then | ||
9296 | ac_res="none required" | ||
9297 | else | ||
9298 | ac_res=-l$ac_lib | ||
9299 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9300 | fi | ||
9301 | if ac_fn_c_try_link "$LINENO"; then : | ||
9302 | ac_cv_search_updwtmp=$ac_res | ||
9303 | fi | ||
9304 | rm -f core conftest.err conftest.$ac_objext \ | ||
9305 | conftest$ac_exeext | ||
9306 | if ${ac_cv_search_updwtmp+:} false; then : | ||
9307 | break | ||
9308 | fi | ||
9309 | done | ||
9310 | if ${ac_cv_search_updwtmp+:} false; then : | ||
9311 | |||
9312 | else | ||
9313 | ac_cv_search_updwtmp=no | ||
9314 | fi | ||
9315 | rm conftest.$ac_ext | ||
9316 | LIBS=$ac_func_search_save_LIBS | ||
9317 | fi | ||
9318 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_updwtmp" >&5 | ||
9319 | $as_echo "$ac_cv_search_updwtmp" >&6; } | ||
9320 | ac_res=$ac_cv_search_updwtmp | ||
9321 | if test "$ac_res" != no; then : | ||
9322 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9323 | |||
9324 | fi | ||
9325 | |||
9326 | for ac_func in fmt_scaled scan_scaled login logout openpty updwtmp logwtmp | ||
9327 | do : | ||
9328 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
9329 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
9330 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
9331 | cat >>confdefs.h <<_ACEOF | ||
9332 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
9333 | _ACEOF | ||
9334 | |||
9335 | fi | ||
9336 | done | ||
9337 | |||
9338 | |||
9339 | # On some platforms, inet_ntop may be found in libresolv or libnsl. | ||
9340 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inet_ntop" >&5 | ||
9341 | $as_echo_n "checking for library containing inet_ntop... " >&6; } | ||
9342 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
9343 | $as_echo_n "(cached) " >&6 | ||
9344 | else | ||
9345 | ac_func_search_save_LIBS=$LIBS | ||
9346 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9347 | /* end confdefs.h. */ | ||
9348 | |||
9349 | /* Override any GCC internal prototype to avoid an error. | ||
9350 | Use char because int might match the return type of a GCC | ||
9351 | builtin and then its argument prototype would still apply. */ | ||
9352 | #ifdef __cplusplus | ||
9353 | extern "C" | ||
9354 | #endif | ||
9355 | char inet_ntop (); | ||
9356 | int | ||
9357 | main () | ||
9358 | { | ||
9359 | return inet_ntop (); | ||
9360 | ; | ||
9361 | return 0; | ||
9362 | } | ||
9363 | _ACEOF | ||
9364 | for ac_lib in '' resolv nsl; do | ||
9365 | if test -z "$ac_lib"; then | ||
9366 | ac_res="none required" | ||
9367 | else | ||
9368 | ac_res=-l$ac_lib | ||
9369 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9370 | fi | ||
9371 | if ac_fn_c_try_link "$LINENO"; then : | ||
9372 | ac_cv_search_inet_ntop=$ac_res | ||
9373 | fi | ||
9374 | rm -f core conftest.err conftest.$ac_objext \ | ||
9375 | conftest$ac_exeext | ||
9376 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
9377 | break | ||
9378 | fi | ||
9379 | done | ||
9380 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
9381 | |||
9382 | else | ||
9383 | ac_cv_search_inet_ntop=no | ||
9384 | fi | ||
9385 | rm conftest.$ac_ext | ||
9386 | LIBS=$ac_func_search_save_LIBS | ||
9387 | fi | ||
9388 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_ntop" >&5 | ||
9389 | $as_echo "$ac_cv_search_inet_ntop" >&6; } | ||
9390 | ac_res=$ac_cv_search_inet_ntop | ||
9391 | if test "$ac_res" != no; then : | ||
9392 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9393 | |||
9394 | fi | ||
9395 | |||
9396 | |||
9397 | for ac_func in strftime | ||
9398 | do : | ||
9399 | ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime" | ||
9400 | if test "x$ac_cv_func_strftime" = xyes; then : | ||
9401 | cat >>confdefs.h <<_ACEOF | ||
9402 | #define HAVE_STRFTIME 1 | ||
9403 | _ACEOF | ||
9404 | |||
9405 | else | ||
9406 | # strftime is in -lintl on SCO UNIX. | ||
9407 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strftime in -lintl" >&5 | ||
9408 | $as_echo_n "checking for strftime in -lintl... " >&6; } | ||
9409 | if ${ac_cv_lib_intl_strftime+:} false; then : | ||
9410 | $as_echo_n "(cached) " >&6 | ||
9411 | else | ||
9412 | ac_check_lib_save_LIBS=$LIBS | ||
9413 | LIBS="-lintl $LIBS" | ||
9414 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9415 | /* end confdefs.h. */ | ||
9416 | |||
9417 | /* Override any GCC internal prototype to avoid an error. | ||
9418 | Use char because int might match the return type of a GCC | ||
9419 | builtin and then its argument prototype would still apply. */ | ||
9420 | #ifdef __cplusplus | ||
9421 | extern "C" | ||
9422 | #endif | ||
9423 | char strftime (); | ||
9424 | int | ||
9425 | main () | ||
9426 | { | ||
9427 | return strftime (); | ||
9428 | ; | ||
9429 | return 0; | ||
9430 | } | ||
9431 | _ACEOF | ||
9432 | if ac_fn_c_try_link "$LINENO"; then : | ||
9433 | ac_cv_lib_intl_strftime=yes | ||
9434 | else | ||
9435 | ac_cv_lib_intl_strftime=no | ||
9436 | fi | ||
9437 | rm -f core conftest.err conftest.$ac_objext \ | ||
9438 | conftest$ac_exeext conftest.$ac_ext | ||
9439 | LIBS=$ac_check_lib_save_LIBS | ||
9440 | fi | ||
9441 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5 | ||
9442 | $as_echo "$ac_cv_lib_intl_strftime" >&6; } | ||
9443 | if test "x$ac_cv_lib_intl_strftime" = xyes; then : | ||
9444 | $as_echo "#define HAVE_STRFTIME 1" >>confdefs.h | ||
9445 | |||
9446 | LIBS="-lintl $LIBS" | ||
9447 | fi | ||
9448 | |||
9449 | fi | ||
9450 | done | ||
9451 | |||
9452 | |||
9453 | # Check for ALTDIRFUNC glob() extension | ||
9454 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_ALTDIRFUNC support" >&5 | ||
9455 | $as_echo_n "checking for GLOB_ALTDIRFUNC support... " >&6; } | ||
9456 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9457 | /* end confdefs.h. */ | ||
9458 | |||
9459 | #include <glob.h> | ||
9460 | #ifdef GLOB_ALTDIRFUNC | ||
9461 | FOUNDIT | ||
9462 | #endif | ||
9463 | |||
9464 | _ACEOF | ||
9465 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
9466 | $EGREP "FOUNDIT" >/dev/null 2>&1; then : | ||
9467 | |||
9468 | |||
9469 | $as_echo "#define GLOB_HAS_ALTDIRFUNC 1" >>confdefs.h | ||
9470 | |||
9471 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9472 | $as_echo "yes" >&6; } | ||
9473 | |||
9474 | else | ||
9475 | |||
9476 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9477 | $as_echo "no" >&6; } | ||
9478 | |||
9479 | |||
9480 | fi | ||
9481 | rm -f conftest* | ||
9482 | |||
9483 | |||
9484 | # Check for g.gl_matchc glob() extension | ||
9485 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_matchc field in glob_t" >&5 | ||
9486 | $as_echo_n "checking for gl_matchc field in glob_t... " >&6; } | ||
9487 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9488 | /* end confdefs.h. */ | ||
9489 | #include <glob.h> | ||
9490 | int | ||
9491 | main () | ||
9492 | { | ||
9493 | glob_t g; g.gl_matchc = 1; | ||
9494 | ; | ||
9495 | return 0; | ||
9496 | } | ||
9497 | _ACEOF | ||
9498 | if ac_fn_c_try_compile "$LINENO"; then : | ||
9499 | |||
9500 | |||
9501 | $as_echo "#define GLOB_HAS_GL_MATCHC 1" >>confdefs.h | ||
9502 | |||
9503 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9504 | $as_echo "yes" >&6; } | ||
9505 | |||
9506 | else | ||
9507 | |||
9508 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9509 | $as_echo "no" >&6; } | ||
9510 | |||
9511 | fi | ||
9512 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
9513 | |||
9514 | # Check for g.gl_statv glob() extension | ||
9515 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_statv and GLOB_KEEPSTAT extensions for glob" >&5 | ||
9516 | $as_echo_n "checking for gl_statv and GLOB_KEEPSTAT extensions for glob... " >&6; } | ||
9517 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9518 | /* end confdefs.h. */ | ||
9519 | #include <glob.h> | ||
9520 | int | ||
9521 | main () | ||
9522 | { | ||
9523 | |||
9524 | #ifndef GLOB_KEEPSTAT | ||
9525 | #error "glob does not support GLOB_KEEPSTAT extension" | ||
9526 | #endif | ||
9527 | glob_t g; | ||
9528 | g.gl_statv = NULL; | ||
9529 | |||
9530 | ; | ||
9531 | return 0; | ||
9532 | } | ||
9533 | _ACEOF | ||
9534 | if ac_fn_c_try_compile "$LINENO"; then : | ||
9535 | |||
9536 | |||
9537 | $as_echo "#define GLOB_HAS_GL_STATV 1" >>confdefs.h | ||
9538 | |||
9539 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9540 | $as_echo "yes" >&6; } | ||
9541 | |||
9542 | else | ||
9543 | |||
9544 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9545 | $as_echo "no" >&6; } | ||
9546 | |||
9547 | |||
9548 | fi | ||
9549 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
9550 | |||
9551 | ac_fn_c_check_decl "$LINENO" "GLOB_NOMATCH" "ac_cv_have_decl_GLOB_NOMATCH" "#include <glob.h> | ||
9552 | " | ||
9553 | if test "x$ac_cv_have_decl_GLOB_NOMATCH" = xyes; then : | ||
9554 | ac_have_decl=1 | ||
9555 | else | ||
9556 | ac_have_decl=0 | ||
9557 | fi | ||
9558 | |||
9559 | cat >>confdefs.h <<_ACEOF | ||
9560 | #define HAVE_DECL_GLOB_NOMATCH $ac_have_decl | ||
9561 | _ACEOF | ||
9562 | |||
9563 | |||
9564 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct dirent allocates space for d_name" >&5 | ||
9565 | $as_echo_n "checking whether struct dirent allocates space for d_name... " >&6; } | ||
9566 | if test "$cross_compiling" = yes; then : | ||
9567 | |||
9568 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&5 | ||
9569 | $as_echo "$as_me: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&2;} | ||
9570 | $as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h | ||
9571 | |||
9572 | |||
9573 | |||
9574 | else | ||
9575 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9576 | /* end confdefs.h. */ | ||
9577 | |||
9578 | #include <sys/types.h> | ||
9579 | #include <dirent.h> | ||
9580 | int | ||
9581 | main () | ||
9582 | { | ||
9583 | |||
9584 | struct dirent d; | ||
9585 | exit(sizeof(d.d_name)<=sizeof(char)); | ||
9586 | |||
9587 | ; | ||
9588 | return 0; | ||
9589 | } | ||
9590 | _ACEOF | ||
9591 | if ac_fn_c_try_run "$LINENO"; then : | ||
9592 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9593 | $as_echo "yes" >&6; } | ||
9594 | else | ||
9595 | |||
9596 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9597 | $as_echo "no" >&6; } | ||
9598 | |||
9599 | $as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h | ||
9600 | |||
9601 | |||
9602 | fi | ||
9603 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
9604 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
9605 | fi | ||
9606 | |||
9607 | |||
9608 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for /proc/pid/fd directory" >&5 | ||
9609 | $as_echo_n "checking for /proc/pid/fd directory... " >&6; } | ||
9610 | if test -d "/proc/$$/fd" ; then | ||
9611 | |||
9612 | $as_echo "#define HAVE_PROC_PID 1" >>confdefs.h | ||
9613 | |||
9614 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9615 | $as_echo "yes" >&6; } | ||
9616 | else | ||
9617 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9618 | $as_echo "no" >&6; } | ||
9619 | fi | ||
9620 | |||
9621 | # Check whether user wants S/Key support | ||
9622 | SKEY_MSG="no" | ||
9623 | |||
9624 | # Check whether --with-skey was given. | ||
9625 | if test "${with_skey+set}" = set; then : | ||
9626 | withval=$with_skey; | ||
9627 | if test "x$withval" != "xno" ; then | ||
9628 | |||
9629 | if test "x$withval" != "xyes" ; then | ||
9630 | CPPFLAGS="$CPPFLAGS -I${withval}/include" | ||
9631 | LDFLAGS="$LDFLAGS -L${withval}/lib" | ||
9632 | fi | ||
9633 | |||
9634 | |||
9635 | $as_echo "#define SKEY 1" >>confdefs.h | ||
9636 | |||
9637 | LIBS="-lskey $LIBS" | ||
9638 | SKEY_MSG="yes" | ||
9639 | |||
9640 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for s/key support" >&5 | ||
9641 | $as_echo_n "checking for s/key support... " >&6; } | ||
9642 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9643 | /* end confdefs.h. */ | ||
9644 | |||
9645 | #include <stdio.h> | ||
9646 | #include <skey.h> | ||
9647 | |||
9648 | int | ||
9649 | main () | ||
9650 | { | ||
9651 | |||
9652 | char *ff = skey_keyinfo(""); ff=""; | ||
9653 | exit(0); | ||
9654 | |||
9655 | ; | ||
9656 | return 0; | ||
9657 | } | ||
9658 | _ACEOF | ||
9659 | if ac_fn_c_try_link "$LINENO"; then : | ||
9660 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9661 | $as_echo "yes" >&6; } | ||
9662 | else | ||
9663 | |||
9664 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9665 | $as_echo "no" >&6; } | ||
9666 | as_fn_error $? "** Incomplete or missing s/key libraries." "$LINENO" 5 | ||
9667 | |||
9668 | fi | ||
9669 | rm -f core conftest.err conftest.$ac_objext \ | ||
9670 | conftest$ac_exeext conftest.$ac_ext | ||
9671 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if skeychallenge takes 4 arguments" >&5 | ||
9672 | $as_echo_n "checking if skeychallenge takes 4 arguments... " >&6; } | ||
9673 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9674 | /* end confdefs.h. */ | ||
9675 | |||
9676 | #include <stdio.h> | ||
9677 | #include <skey.h> | ||
9678 | |||
9679 | int | ||
9680 | main () | ||
9681 | { | ||
9682 | |||
9683 | (void)skeychallenge(NULL,"name","",0); | ||
9684 | |||
9685 | ; | ||
9686 | return 0; | ||
9687 | } | ||
9688 | _ACEOF | ||
9689 | if ac_fn_c_try_compile "$LINENO"; then : | ||
9690 | |||
9691 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9692 | $as_echo "yes" >&6; } | ||
9693 | |||
9694 | $as_echo "#define SKEYCHALLENGE_4ARG 1" >>confdefs.h | ||
9695 | |||
9696 | else | ||
9697 | |||
9698 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9699 | $as_echo "no" >&6; } | ||
9700 | |||
9701 | fi | ||
9702 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
9703 | fi | ||
9704 | |||
9705 | |||
9706 | fi | ||
9707 | |||
9708 | |||
9709 | # Check whether user wants TCP wrappers support | ||
9710 | TCPW_MSG="no" | ||
9711 | |||
9712 | # Check whether --with-tcp-wrappers was given. | ||
9713 | if test "${with_tcp_wrappers+set}" = set; then : | ||
9714 | withval=$with_tcp_wrappers; | ||
9715 | if test "x$withval" != "xno" ; then | ||
9716 | saved_LIBS="$LIBS" | ||
9717 | saved_LDFLAGS="$LDFLAGS" | ||
9718 | saved_CPPFLAGS="$CPPFLAGS" | ||
9719 | if test -n "${withval}" && \ | ||
9720 | test "x${withval}" != "xyes"; then | ||
9721 | if test -d "${withval}/lib"; then | ||
9722 | if test -n "${need_dash_r}"; then | ||
9723 | LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" | ||
9724 | else | ||
9725 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
9726 | fi | ||
9727 | else | ||
9728 | if test -n "${need_dash_r}"; then | ||
9729 | LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" | ||
9730 | else | ||
9731 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
9732 | fi | ||
9733 | fi | ||
9734 | if test -d "${withval}/include"; then | ||
9735 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
9736 | else | ||
9737 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
9738 | fi | ||
9739 | fi | ||
9740 | LIBS="-lwrap $LIBS" | ||
9741 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libwrap" >&5 | ||
9742 | $as_echo_n "checking for libwrap... " >&6; } | ||
9743 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9744 | /* end confdefs.h. */ | ||
9745 | |||
9746 | #include <sys/types.h> | ||
9747 | #include <sys/socket.h> | ||
9748 | #include <netinet/in.h> | ||
9749 | #include <tcpd.h> | ||
9750 | int deny_severity = 0, allow_severity = 0; | ||
9751 | |||
9752 | int | ||
9753 | main () | ||
9754 | { | ||
9755 | |||
9756 | hosts_access(0); | ||
9757 | |||
9758 | ; | ||
9759 | return 0; | ||
9760 | } | ||
9761 | _ACEOF | ||
9762 | if ac_fn_c_try_link "$LINENO"; then : | ||
9763 | |||
9764 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9765 | $as_echo "yes" >&6; } | ||
9766 | |||
9767 | $as_echo "#define LIBWRAP 1" >>confdefs.h | ||
9768 | |||
9769 | SSHDLIBS="$SSHDLIBS -lwrap" | ||
9770 | TCPW_MSG="yes" | ||
9771 | |||
9772 | else | ||
9773 | |||
9774 | as_fn_error $? "*** libwrap missing" "$LINENO" 5 | ||
9775 | |||
9776 | |||
9777 | fi | ||
9778 | rm -f core conftest.err conftest.$ac_objext \ | ||
9779 | conftest$ac_exeext conftest.$ac_ext | ||
9780 | LIBS="$saved_LIBS" | ||
9781 | fi | ||
9782 | |||
9783 | |||
9784 | fi | ||
9785 | |||
9786 | |||
9787 | # Check whether user wants to use ldns | ||
9788 | LDNS_MSG="no" | ||
9789 | |||
9790 | # Check whether --with-ldns was given. | ||
9791 | if test "${with_ldns+set}" = set; then : | ||
9792 | withval=$with_ldns; | ||
9793 | if test "x$withval" != "xno" ; then | ||
9794 | |||
9795 | if test "x$withval" != "xyes" ; then | ||
9796 | CPPFLAGS="$CPPFLAGS -I${withval}/include" | ||
9797 | LDFLAGS="$LDFLAGS -L${withval}/lib" | ||
9798 | fi | ||
9799 | |||
9800 | |||
9801 | $as_echo "#define HAVE_LDNS 1" >>confdefs.h | ||
9802 | |||
9803 | LIBS="-lldns $LIBS" | ||
9804 | LDNS_MSG="yes" | ||
9805 | |||
9806 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldns support" >&5 | ||
9807 | $as_echo_n "checking for ldns support... " >&6; } | ||
9808 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9809 | /* end confdefs.h. */ | ||
9810 | |||
9811 | #include <stdio.h> | ||
9812 | #include <stdlib.h> | ||
9813 | #include <stdint.h> | ||
9814 | #include <ldns/ldns.h> | ||
9815 | int main() { ldns_status status = ldns_verify_trusted(NULL, NULL, NULL, NULL); status=LDNS_STATUS_OK; exit(0); } | ||
9816 | |||
9817 | |||
9818 | _ACEOF | ||
9819 | if ac_fn_c_try_link "$LINENO"; then : | ||
9820 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9821 | $as_echo "yes" >&6; } | ||
9822 | else | ||
9823 | |||
9824 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9825 | $as_echo "no" >&6; } | ||
9826 | as_fn_error $? "** Incomplete or missing ldns libraries." "$LINENO" 5 | ||
9827 | |||
9828 | fi | ||
9829 | rm -f core conftest.err conftest.$ac_objext \ | ||
9830 | conftest$ac_exeext conftest.$ac_ext | ||
9831 | fi | ||
9832 | |||
9833 | |||
9834 | fi | ||
9835 | |||
9836 | |||
9837 | # Check whether user wants libedit support | ||
9838 | LIBEDIT_MSG="no" | ||
9839 | |||
9840 | # Check whether --with-libedit was given. | ||
9841 | if test "${with_libedit+set}" = set; then : | ||
9842 | withval=$with_libedit; if test "x$withval" != "xno" ; then | ||
9843 | if test "x$withval" = "xyes" ; then | ||
9844 | if test -n "$ac_tool_prefix"; then | ||
9845 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. | ||
9846 | set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 | ||
9847 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
9848 | $as_echo_n "checking for $ac_word... " >&6; } | ||
9849 | if ${ac_cv_path_PKGCONFIG+:} false; then : | ||
9850 | $as_echo_n "(cached) " >&6 | ||
9851 | else | ||
9852 | case $PKGCONFIG in | ||
9853 | [\\/]* | ?:[\\/]*) | ||
9854 | ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path. | ||
9855 | ;; | ||
9856 | *) | ||
9857 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
9858 | for as_dir in $PATH | ||
9859 | do | ||
9860 | IFS=$as_save_IFS | ||
9861 | test -z "$as_dir" && as_dir=. | ||
9862 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
9863 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
9864 | ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
9865 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
9866 | break 2 | ||
9867 | fi | ||
9868 | done | ||
9869 | done | ||
9870 | IFS=$as_save_IFS | ||
9871 | |||
9872 | ;; | ||
9873 | esac | ||
9874 | fi | ||
9875 | PKGCONFIG=$ac_cv_path_PKGCONFIG | ||
9876 | if test -n "$PKGCONFIG"; then | ||
9877 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5 | ||
9878 | $as_echo "$PKGCONFIG" >&6; } | ||
9879 | else | ||
9880 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9881 | $as_echo "no" >&6; } | ||
9882 | fi | ||
9883 | |||
9884 | |||
9885 | fi | ||
9886 | if test -z "$ac_cv_path_PKGCONFIG"; then | ||
9887 | ac_pt_PKGCONFIG=$PKGCONFIG | ||
9888 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
9889 | set dummy pkg-config; ac_word=$2 | ||
9890 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
9891 | $as_echo_n "checking for $ac_word... " >&6; } | ||
9892 | if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then : | ||
9893 | $as_echo_n "(cached) " >&6 | ||
9894 | else | ||
9895 | case $ac_pt_PKGCONFIG in | ||
9896 | [\\/]* | ?:[\\/]*) | ||
9897 | ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path. | ||
9898 | ;; | ||
9899 | *) | ||
9900 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
9901 | for as_dir in $PATH | ||
9902 | do | ||
9903 | IFS=$as_save_IFS | ||
9904 | test -z "$as_dir" && as_dir=. | ||
9905 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
9906 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
9907 | ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
9908 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
9909 | break 2 | ||
9910 | fi | ||
9911 | done | ||
9912 | done | ||
9913 | IFS=$as_save_IFS | ||
9914 | |||
9915 | ;; | ||
9916 | esac | ||
9917 | fi | ||
9918 | ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG | ||
9919 | if test -n "$ac_pt_PKGCONFIG"; then | ||
9920 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5 | ||
9921 | $as_echo "$ac_pt_PKGCONFIG" >&6; } | ||
9922 | else | ||
9923 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9924 | $as_echo "no" >&6; } | ||
9925 | fi | ||
9926 | |||
9927 | if test "x$ac_pt_PKGCONFIG" = x; then | ||
9928 | PKGCONFIG="no" | ||
9929 | else | ||
9930 | case $cross_compiling:$ac_tool_warned in | ||
9931 | yes:) | ||
9932 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
9933 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
9934 | ac_tool_warned=yes ;; | ||
9935 | esac | ||
9936 | PKGCONFIG=$ac_pt_PKGCONFIG | ||
9937 | fi | ||
9938 | else | ||
9939 | PKGCONFIG="$ac_cv_path_PKGCONFIG" | ||
9940 | fi | ||
9941 | |||
9942 | if test "x$PKGCONFIG" != "xno"; then | ||
9943 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $PKGCONFIG knows about libedit" >&5 | ||
9944 | $as_echo_n "checking if $PKGCONFIG knows about libedit... " >&6; } | ||
9945 | if "$PKGCONFIG" libedit; then | ||
9946 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9947 | $as_echo "yes" >&6; } | ||
9948 | use_pkgconfig_for_libedit=yes | ||
9949 | else | ||
9950 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9951 | $as_echo "no" >&6; } | ||
9952 | fi | ||
9953 | fi | ||
9954 | else | ||
9955 | CPPFLAGS="$CPPFLAGS -I${withval}/include" | ||
9956 | if test -n "${need_dash_r}"; then | ||
9957 | LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" | ||
9958 | else | ||
9959 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
9960 | fi | ||
9961 | fi | ||
9962 | if test "x$use_pkgconfig_for_libedit" = "xyes"; then | ||
9963 | LIBEDIT=`$PKGCONFIG --libs libedit` | ||
9964 | CPPFLAGS="$CPPFLAGS `$PKGCONFIG --cflags libedit`" | ||
9965 | else | ||
9966 | LIBEDIT="-ledit -lcurses" | ||
9967 | fi | ||
9968 | OTHERLIBS=`echo $LIBEDIT | sed 's/-ledit//'` | ||
9969 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for el_init in -ledit" >&5 | ||
9970 | $as_echo_n "checking for el_init in -ledit... " >&6; } | ||
9971 | if ${ac_cv_lib_edit_el_init+:} false; then : | ||
9972 | $as_echo_n "(cached) " >&6 | ||
9973 | else | ||
9974 | ac_check_lib_save_LIBS=$LIBS | ||
9975 | LIBS="-ledit $OTHERLIBS | ||
9976 | $LIBS" | ||
9977 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9978 | /* end confdefs.h. */ | ||
9979 | |||
9980 | /* Override any GCC internal prototype to avoid an error. | ||
9981 | Use char because int might match the return type of a GCC | ||
9982 | builtin and then its argument prototype would still apply. */ | ||
9983 | #ifdef __cplusplus | ||
9984 | extern "C" | ||
9985 | #endif | ||
9986 | char el_init (); | ||
9987 | int | ||
9988 | main () | ||
9989 | { | ||
9990 | return el_init (); | ||
9991 | ; | ||
9992 | return 0; | ||
9993 | } | ||
9994 | _ACEOF | ||
9995 | if ac_fn_c_try_link "$LINENO"; then : | ||
9996 | ac_cv_lib_edit_el_init=yes | ||
9997 | else | ||
9998 | ac_cv_lib_edit_el_init=no | ||
9999 | fi | ||
10000 | rm -f core conftest.err conftest.$ac_objext \ | ||
10001 | conftest$ac_exeext conftest.$ac_ext | ||
10002 | LIBS=$ac_check_lib_save_LIBS | ||
10003 | fi | ||
10004 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_edit_el_init" >&5 | ||
10005 | $as_echo "$ac_cv_lib_edit_el_init" >&6; } | ||
10006 | if test "x$ac_cv_lib_edit_el_init" = xyes; then : | ||
10007 | |||
10008 | $as_echo "#define USE_LIBEDIT 1" >>confdefs.h | ||
10009 | |||
10010 | LIBEDIT_MSG="yes" | ||
10011 | |||
10012 | |||
10013 | else | ||
10014 | as_fn_error $? "libedit not found" "$LINENO" 5 | ||
10015 | fi | ||
10016 | |||
10017 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libedit version is compatible" >&5 | ||
10018 | $as_echo_n "checking if libedit version is compatible... " >&6; } | ||
10019 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10020 | /* end confdefs.h. */ | ||
10021 | #include <histedit.h> | ||
10022 | int | ||
10023 | main () | ||
10024 | { | ||
10025 | |||
10026 | int i = H_SETSIZE; | ||
10027 | el_init("", NULL, NULL, NULL); | ||
10028 | exit(0); | ||
10029 | |||
10030 | ; | ||
10031 | return 0; | ||
10032 | } | ||
10033 | _ACEOF | ||
10034 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10035 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10036 | $as_echo "yes" >&6; } | ||
10037 | else | ||
10038 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10039 | $as_echo "no" >&6; } | ||
10040 | as_fn_error $? "libedit version is not compatible" "$LINENO" 5 | ||
10041 | |||
10042 | fi | ||
10043 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10044 | fi | ||
10045 | |||
10046 | fi | ||
10047 | |||
10048 | |||
10049 | AUDIT_MODULE=none | ||
10050 | |||
10051 | # Check whether --with-audit was given. | ||
10052 | if test "${with_audit+set}" = set; then : | ||
10053 | withval=$with_audit; | ||
10054 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for supported audit module" >&5 | ||
10055 | $as_echo_n "checking for supported audit module... " >&6; } | ||
10056 | case "$withval" in | ||
10057 | bsm) | ||
10058 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: bsm" >&5 | ||
10059 | $as_echo "bsm" >&6; } | ||
10060 | AUDIT_MODULE=bsm | ||
10061 | for ac_header in bsm/audit.h | ||
10062 | do : | ||
10063 | ac_fn_c_check_header_compile "$LINENO" "bsm/audit.h" "ac_cv_header_bsm_audit_h" " | ||
10064 | #ifdef HAVE_TIME_H | ||
10065 | # include <time.h> | ||
10066 | #endif | ||
10067 | |||
10068 | |||
10069 | " | ||
10070 | if test "x$ac_cv_header_bsm_audit_h" = xyes; then : | ||
10071 | cat >>confdefs.h <<_ACEOF | ||
10072 | #define HAVE_BSM_AUDIT_H 1 | ||
10073 | _ACEOF | ||
10074 | |||
10075 | else | ||
10076 | as_fn_error $? "BSM enabled and bsm/audit.h not found" "$LINENO" 5 | ||
10077 | fi | ||
10078 | |||
10079 | done | ||
10080 | |||
10081 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaudit in -lbsm" >&5 | ||
10082 | $as_echo_n "checking for getaudit in -lbsm... " >&6; } | ||
10083 | if ${ac_cv_lib_bsm_getaudit+:} false; then : | ||
10084 | $as_echo_n "(cached) " >&6 | ||
10085 | else | ||
10086 | ac_check_lib_save_LIBS=$LIBS | ||
10087 | LIBS="-lbsm $LIBS" | ||
10088 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10089 | /* end confdefs.h. */ | ||
10090 | |||
10091 | /* Override any GCC internal prototype to avoid an error. | ||
10092 | Use char because int might match the return type of a GCC | ||
10093 | builtin and then its argument prototype would still apply. */ | ||
10094 | #ifdef __cplusplus | ||
10095 | extern "C" | ||
10096 | #endif | ||
10097 | char getaudit (); | ||
10098 | int | ||
10099 | main () | ||
10100 | { | ||
10101 | return getaudit (); | ||
10102 | ; | ||
10103 | return 0; | ||
10104 | } | ||
10105 | _ACEOF | ||
10106 | if ac_fn_c_try_link "$LINENO"; then : | ||
10107 | ac_cv_lib_bsm_getaudit=yes | ||
10108 | else | ||
10109 | ac_cv_lib_bsm_getaudit=no | ||
10110 | fi | ||
10111 | rm -f core conftest.err conftest.$ac_objext \ | ||
10112 | conftest$ac_exeext conftest.$ac_ext | ||
10113 | LIBS=$ac_check_lib_save_LIBS | ||
10114 | fi | ||
10115 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsm_getaudit" >&5 | ||
10116 | $as_echo "$ac_cv_lib_bsm_getaudit" >&6; } | ||
10117 | if test "x$ac_cv_lib_bsm_getaudit" = xyes; then : | ||
10118 | cat >>confdefs.h <<_ACEOF | ||
10119 | #define HAVE_LIBBSM 1 | ||
10120 | _ACEOF | ||
10121 | |||
10122 | LIBS="-lbsm $LIBS" | ||
10123 | |||
10124 | else | ||
10125 | as_fn_error $? "BSM enabled and required library not found" "$LINENO" 5 | ||
10126 | fi | ||
10127 | |||
10128 | for ac_func in getaudit | ||
10129 | do : | ||
10130 | ac_fn_c_check_func "$LINENO" "getaudit" "ac_cv_func_getaudit" | ||
10131 | if test "x$ac_cv_func_getaudit" = xyes; then : | ||
10132 | cat >>confdefs.h <<_ACEOF | ||
10133 | #define HAVE_GETAUDIT 1 | ||
10134 | _ACEOF | ||
10135 | |||
10136 | else | ||
10137 | as_fn_error $? "BSM enabled and required function not found" "$LINENO" 5 | ||
10138 | fi | ||
10139 | done | ||
10140 | |||
10141 | # These are optional | ||
10142 | for ac_func in getaudit_addr aug_get_machine | ||
10143 | do : | ||
10144 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
10145 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
10146 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
10147 | cat >>confdefs.h <<_ACEOF | ||
10148 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
10149 | _ACEOF | ||
10150 | |||
10151 | fi | ||
10152 | done | ||
10153 | |||
10154 | |||
10155 | $as_echo "#define USE_BSM_AUDIT 1" >>confdefs.h | ||
10156 | |||
10157 | if test "$sol2ver" -ge 11; then | ||
10158 | SSHDLIBS="$SSHDLIBS -lscf" | ||
10159 | |||
10160 | $as_echo "#define BROKEN_BSM_API 1" >>confdefs.h | ||
10161 | |||
10162 | fi | ||
10163 | ;; | ||
10164 | linux) | ||
10165 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: linux" >&5 | ||
10166 | $as_echo "linux" >&6; } | ||
10167 | AUDIT_MODULE=linux | ||
10168 | for ac_header in libaudit.h | ||
10169 | do : | ||
10170 | ac_fn_c_check_header_mongrel "$LINENO" "libaudit.h" "ac_cv_header_libaudit_h" "$ac_includes_default" | ||
10171 | if test "x$ac_cv_header_libaudit_h" = xyes; then : | ||
10172 | cat >>confdefs.h <<_ACEOF | ||
10173 | #define HAVE_LIBAUDIT_H 1 | ||
10174 | _ACEOF | ||
10175 | |||
10176 | fi | ||
10177 | |||
10178 | done | ||
10179 | |||
10180 | SSHDLIBS="$SSHDLIBS -laudit" | ||
10181 | |||
10182 | $as_echo "#define USE_LINUX_AUDIT 1" >>confdefs.h | ||
10183 | |||
10184 | ;; | ||
10185 | debug) | ||
10186 | AUDIT_MODULE=debug | ||
10187 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: debug" >&5 | ||
10188 | $as_echo "debug" >&6; } | ||
10189 | |||
10190 | $as_echo "#define SSH_AUDIT_EVENTS 1" >>confdefs.h | ||
10191 | |||
10192 | ;; | ||
10193 | no) | ||
10194 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10195 | $as_echo "no" >&6; } | ||
10196 | ;; | ||
10197 | *) | ||
10198 | as_fn_error $? "Unknown audit module $withval" "$LINENO" 5 | ||
10199 | ;; | ||
10200 | esac | ||
10201 | |||
10202 | fi | ||
10203 | |||
10204 | |||
10205 | |||
10206 | # Check whether --with-pie was given. | ||
10207 | if test "${with_pie+set}" = set; then : | ||
10208 | withval=$with_pie; | ||
10209 | if test "x$withval" = "xno"; then | ||
10210 | use_pie=no | ||
10211 | fi | ||
10212 | if test "x$withval" = "xyes"; then | ||
10213 | use_pie=yes | ||
10214 | fi | ||
10215 | |||
10216 | |||
10217 | fi | ||
10218 | |||
10219 | if test "x$use_pie" = "x"; then | ||
10220 | use_pie=no | ||
10221 | fi | ||
10222 | if test "x$use_toolchain_hardening" != "x1" && test "x$use_pie" = "xauto"; then | ||
10223 | # Turn off automatic PIE when toolchain hardening is off. | ||
10224 | use_pie=no | ||
10225 | fi | ||
10226 | if test "x$use_pie" = "xauto"; then | ||
10227 | # Automatic PIE requires gcc >= 4.x | ||
10228 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc >= 4.x" >&5 | ||
10229 | $as_echo_n "checking for gcc >= 4.x... " >&6; } | ||
10230 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10231 | /* end confdefs.h. */ | ||
10232 | |||
10233 | #if !defined(__GNUC__) || __GNUC__ < 4 | ||
10234 | #error gcc is too old | ||
10235 | #endif | ||
10236 | |||
10237 | _ACEOF | ||
10238 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10239 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10240 | $as_echo "yes" >&6; } | ||
10241 | else | ||
10242 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10243 | $as_echo "no" >&6; } | ||
10244 | use_pie=no | ||
10245 | |||
10246 | fi | ||
10247 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10248 | fi | ||
10249 | if test "x$use_pie" != "xno"; then | ||
10250 | SAVED_CFLAGS="$CFLAGS" | ||
10251 | SAVED_LDFLAGS="$LDFLAGS" | ||
10252 | { | ||
10253 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fPIE" >&5 | ||
10254 | $as_echo_n "checking if $CC supports compile flag -fPIE... " >&6; } | ||
10255 | saved_CFLAGS="$CFLAGS" | ||
10256 | CFLAGS="$CFLAGS $WERROR -fPIE" | ||
10257 | _define_flag="" | ||
10258 | test "x$_define_flag" = "x" && _define_flag="-fPIE" | ||
10259 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10260 | /* end confdefs.h. */ | ||
10261 | |||
10262 | #include <stdlib.h> | ||
10263 | #include <stdio.h> | ||
10264 | int main(int argc, char **argv) { | ||
10265 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
10266 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
10267 | float l = i * 2.1; | ||
10268 | double m = l / 0.5; | ||
10269 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
10270 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
10271 | exit(0); | ||
10272 | } | ||
10273 | |||
10274 | _ACEOF | ||
10275 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10276 | |||
10277 | if `grep -i "unrecognized option" conftest.err >/dev/null` | ||
10278 | then | ||
10279 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10280 | $as_echo "no" >&6; } | ||
10281 | CFLAGS="$saved_CFLAGS" | ||
10282 | else | ||
10283 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10284 | $as_echo "yes" >&6; } | ||
10285 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
10286 | fi | ||
10287 | else | ||
10288 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10289 | $as_echo "no" >&6; } | ||
10290 | CFLAGS="$saved_CFLAGS" | ||
10291 | |||
10292 | fi | ||
10293 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10294 | } | ||
10295 | { | ||
10296 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -pie" >&5 | ||
10297 | $as_echo_n "checking if $LD supports link flag -pie... " >&6; } | ||
10298 | saved_LDFLAGS="$LDFLAGS" | ||
10299 | LDFLAGS="$LDFLAGS $WERROR -pie" | ||
10300 | _define_flag="" | ||
10301 | test "x$_define_flag" = "x" && _define_flag="-pie" | ||
10302 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10303 | /* end confdefs.h. */ | ||
10304 | |||
10305 | #include <stdlib.h> | ||
10306 | #include <stdio.h> | ||
10307 | int main(int argc, char **argv) { | ||
10308 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
10309 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
10310 | float l = i * 2.1; | ||
10311 | double m = l / 0.5; | ||
10312 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
10313 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
10314 | exit(0); | ||
10315 | } | ||
10316 | |||
10317 | _ACEOF | ||
10318 | if ac_fn_c_try_link "$LINENO"; then : | ||
10319 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10320 | $as_echo "yes" >&6; } | ||
10321 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
10322 | else | ||
10323 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10324 | $as_echo "no" >&6; } | ||
10325 | LDFLAGS="$saved_LDFLAGS" | ||
10326 | |||
10327 | fi | ||
10328 | rm -f core conftest.err conftest.$ac_objext \ | ||
10329 | conftest$ac_exeext conftest.$ac_ext | ||
10330 | } | ||
10331 | # We use both -fPIE and -pie or neither. | ||
10332 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether both -fPIE and -pie are supported" >&5 | ||
10333 | $as_echo_n "checking whether both -fPIE and -pie are supported... " >&6; } | ||
10334 | if echo "x $CFLAGS" | grep ' -fPIE' >/dev/null 2>&1 && \ | ||
10335 | echo "x $LDFLAGS" | grep ' -pie' >/dev/null 2>&1 ; then | ||
10336 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10337 | $as_echo "yes" >&6; } | ||
10338 | else | ||
10339 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10340 | $as_echo "no" >&6; } | ||
10341 | CFLAGS="$SAVED_CFLAGS" | ||
10342 | LDFLAGS="$SAVED_LDFLAGS" | ||
10343 | fi | ||
10344 | fi | ||
10345 | |||
10346 | for ac_func in \ | ||
10347 | Blowfish_initstate \ | ||
10348 | Blowfish_expandstate \ | ||
10349 | Blowfish_expand0state \ | ||
10350 | Blowfish_stream2word \ | ||
10351 | arc4random \ | ||
10352 | arc4random_buf \ | ||
10353 | arc4random_stir \ | ||
10354 | arc4random_uniform \ | ||
10355 | asprintf \ | ||
10356 | b64_ntop \ | ||
10357 | __b64_ntop \ | ||
10358 | b64_pton \ | ||
10359 | __b64_pton \ | ||
10360 | bcopy \ | ||
10361 | bcrypt_pbkdf \ | ||
10362 | bindresvport_sa \ | ||
10363 | blf_enc \ | ||
10364 | cap_rights_limit \ | ||
10365 | clock \ | ||
10366 | closefrom \ | ||
10367 | dirfd \ | ||
10368 | endgrent \ | ||
10369 | explicit_bzero \ | ||
10370 | fchmod \ | ||
10371 | fchown \ | ||
10372 | freeaddrinfo \ | ||
10373 | fstatfs \ | ||
10374 | fstatvfs \ | ||
10375 | futimes \ | ||
10376 | getaddrinfo \ | ||
10377 | getcwd \ | ||
10378 | getgrouplist \ | ||
10379 | getnameinfo \ | ||
10380 | getopt \ | ||
10381 | getpeereid \ | ||
10382 | getpeerucred \ | ||
10383 | getpgid \ | ||
10384 | getpgrp \ | ||
10385 | _getpty \ | ||
10386 | getrlimit \ | ||
10387 | getttyent \ | ||
10388 | glob \ | ||
10389 | group_from_gid \ | ||
10390 | inet_aton \ | ||
10391 | inet_ntoa \ | ||
10392 | inet_ntop \ | ||
10393 | innetgr \ | ||
10394 | login_getcapbool \ | ||
10395 | mblen \ | ||
10396 | md5_crypt \ | ||
10397 | memmove \ | ||
10398 | mkdtemp \ | ||
10399 | mmap \ | ||
10400 | ngetaddrinfo \ | ||
10401 | nsleep \ | ||
10402 | ogetaddrinfo \ | ||
10403 | openlog_r \ | ||
10404 | poll \ | ||
10405 | prctl \ | ||
10406 | pstat \ | ||
10407 | readpassphrase \ | ||
10408 | realpath \ | ||
10409 | recvmsg \ | ||
10410 | rresvport_af \ | ||
10411 | sendmsg \ | ||
10412 | setdtablesize \ | ||
10413 | setegid \ | ||
10414 | setenv \ | ||
10415 | seteuid \ | ||
10416 | setgroupent \ | ||
10417 | setgroups \ | ||
10418 | setlinebuf \ | ||
10419 | setlogin \ | ||
10420 | setpassent\ | ||
10421 | setpcred \ | ||
10422 | setproctitle \ | ||
10423 | setregid \ | ||
10424 | setreuid \ | ||
10425 | setrlimit \ | ||
10426 | setsid \ | ||
10427 | setvbuf \ | ||
10428 | sigaction \ | ||
10429 | sigvec \ | ||
10430 | snprintf \ | ||
10431 | socketpair \ | ||
10432 | statfs \ | ||
10433 | statvfs \ | ||
10434 | strdup \ | ||
10435 | strerror \ | ||
10436 | strlcat \ | ||
10437 | strlcpy \ | ||
10438 | strmode \ | ||
10439 | strnlen \ | ||
10440 | strnvis \ | ||
10441 | strptime \ | ||
10442 | strtonum \ | ||
10443 | strtoll \ | ||
10444 | strtoul \ | ||
10445 | strtoull \ | ||
10446 | swap32 \ | ||
10447 | sysconf \ | ||
10448 | tcgetpgrp \ | ||
10449 | timingsafe_bcmp \ | ||
10450 | truncate \ | ||
10451 | unsetenv \ | ||
10452 | updwtmpx \ | ||
10453 | user_from_uid \ | ||
10454 | usleep \ | ||
10455 | vasprintf \ | ||
10456 | vhangup \ | ||
10457 | vsnprintf \ | ||
10458 | waitpid \ | ||
10459 | |||
10460 | do : | ||
10461 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
10462 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
10463 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
10464 | cat >>confdefs.h <<_ACEOF | ||
10465 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
10466 | _ACEOF | ||
10467 | |||
10468 | fi | ||
10469 | done | ||
10470 | |||
10471 | |||
10472 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10473 | /* end confdefs.h. */ | ||
10474 | #include <ctype.h> | ||
10475 | int | ||
10476 | main () | ||
10477 | { | ||
10478 | return (isblank('a')); | ||
10479 | ; | ||
10480 | return 0; | ||
10481 | } | ||
10482 | _ACEOF | ||
10483 | if ac_fn_c_try_link "$LINENO"; then : | ||
10484 | |||
10485 | $as_echo "#define HAVE_ISBLANK 1" >>confdefs.h | ||
10486 | |||
10487 | |||
10488 | fi | ||
10489 | rm -f core conftest.err conftest.$ac_objext \ | ||
10490 | conftest$ac_exeext conftest.$ac_ext | ||
10491 | |||
10492 | # PKCS#11 support requires dlopen() and co | ||
10493 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 | ||
10494 | $as_echo_n "checking for library containing dlopen... " >&6; } | ||
10495 | if ${ac_cv_search_dlopen+:} false; then : | ||
10496 | $as_echo_n "(cached) " >&6 | ||
10497 | else | ||
10498 | ac_func_search_save_LIBS=$LIBS | ||
10499 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10500 | /* end confdefs.h. */ | ||
10501 | |||
10502 | /* Override any GCC internal prototype to avoid an error. | ||
10503 | Use char because int might match the return type of a GCC | ||
10504 | builtin and then its argument prototype would still apply. */ | ||
10505 | #ifdef __cplusplus | ||
10506 | extern "C" | ||
10507 | #endif | ||
10508 | char dlopen (); | ||
10509 | int | ||
10510 | main () | ||
10511 | { | ||
10512 | return dlopen (); | ||
10513 | ; | ||
10514 | return 0; | ||
10515 | } | ||
10516 | _ACEOF | ||
10517 | for ac_lib in '' dl; do | ||
10518 | if test -z "$ac_lib"; then | ||
10519 | ac_res="none required" | ||
10520 | else | ||
10521 | ac_res=-l$ac_lib | ||
10522 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10523 | fi | ||
10524 | if ac_fn_c_try_link "$LINENO"; then : | ||
10525 | ac_cv_search_dlopen=$ac_res | ||
10526 | fi | ||
10527 | rm -f core conftest.err conftest.$ac_objext \ | ||
10528 | conftest$ac_exeext | ||
10529 | if ${ac_cv_search_dlopen+:} false; then : | ||
10530 | break | ||
10531 | fi | ||
10532 | done | ||
10533 | if ${ac_cv_search_dlopen+:} false; then : | ||
10534 | |||
10535 | else | ||
10536 | ac_cv_search_dlopen=no | ||
10537 | fi | ||
10538 | rm conftest.$ac_ext | ||
10539 | LIBS=$ac_func_search_save_LIBS | ||
10540 | fi | ||
10541 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5 | ||
10542 | $as_echo "$ac_cv_search_dlopen" >&6; } | ||
10543 | ac_res=$ac_cv_search_dlopen | ||
10544 | if test "$ac_res" != no; then : | ||
10545 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10546 | |||
10547 | $as_echo "#define ENABLE_PKCS11 /**/" >>confdefs.h | ||
10548 | |||
10549 | |||
10550 | fi | ||
10551 | |||
10552 | |||
10553 | # IRIX has a const char return value for gai_strerror() | ||
10554 | for ac_func in gai_strerror | ||
10555 | do : | ||
10556 | ac_fn_c_check_func "$LINENO" "gai_strerror" "ac_cv_func_gai_strerror" | ||
10557 | if test "x$ac_cv_func_gai_strerror" = xyes; then : | ||
10558 | cat >>confdefs.h <<_ACEOF | ||
10559 | #define HAVE_GAI_STRERROR 1 | ||
10560 | _ACEOF | ||
10561 | |||
10562 | $as_echo "#define HAVE_GAI_STRERROR 1" >>confdefs.h | ||
10563 | |||
10564 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10565 | /* end confdefs.h. */ | ||
10566 | |||
10567 | #include <sys/types.h> | ||
10568 | #include <sys/socket.h> | ||
10569 | #include <netdb.h> | ||
10570 | |||
10571 | const char *gai_strerror(int); | ||
10572 | |||
10573 | int | ||
10574 | main () | ||
10575 | { | ||
10576 | |||
10577 | char *str; | ||
10578 | str = gai_strerror(0); | ||
10579 | |||
10580 | ; | ||
10581 | return 0; | ||
10582 | } | ||
10583 | _ACEOF | ||
10584 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10585 | |||
10586 | |||
10587 | $as_echo "#define HAVE_CONST_GAI_STRERROR_PROTO 1" >>confdefs.h | ||
10588 | |||
10589 | fi | ||
10590 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10591 | fi | ||
10592 | done | ||
10593 | |||
10594 | |||
10595 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing nanosleep" >&5 | ||
10596 | $as_echo_n "checking for library containing nanosleep... " >&6; } | ||
10597 | if ${ac_cv_search_nanosleep+:} false; then : | ||
10598 | $as_echo_n "(cached) " >&6 | ||
10599 | else | ||
10600 | ac_func_search_save_LIBS=$LIBS | ||
10601 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10602 | /* end confdefs.h. */ | ||
10603 | |||
10604 | /* Override any GCC internal prototype to avoid an error. | ||
10605 | Use char because int might match the return type of a GCC | ||
10606 | builtin and then its argument prototype would still apply. */ | ||
10607 | #ifdef __cplusplus | ||
10608 | extern "C" | ||
10609 | #endif | ||
10610 | char nanosleep (); | ||
10611 | int | ||
10612 | main () | ||
10613 | { | ||
10614 | return nanosleep (); | ||
10615 | ; | ||
10616 | return 0; | ||
10617 | } | ||
10618 | _ACEOF | ||
10619 | for ac_lib in '' rt posix4; do | ||
10620 | if test -z "$ac_lib"; then | ||
10621 | ac_res="none required" | ||
10622 | else | ||
10623 | ac_res=-l$ac_lib | ||
10624 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10625 | fi | ||
10626 | if ac_fn_c_try_link "$LINENO"; then : | ||
10627 | ac_cv_search_nanosleep=$ac_res | ||
10628 | fi | ||
10629 | rm -f core conftest.err conftest.$ac_objext \ | ||
10630 | conftest$ac_exeext | ||
10631 | if ${ac_cv_search_nanosleep+:} false; then : | ||
10632 | break | ||
10633 | fi | ||
10634 | done | ||
10635 | if ${ac_cv_search_nanosleep+:} false; then : | ||
10636 | |||
10637 | else | ||
10638 | ac_cv_search_nanosleep=no | ||
10639 | fi | ||
10640 | rm conftest.$ac_ext | ||
10641 | LIBS=$ac_func_search_save_LIBS | ||
10642 | fi | ||
10643 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5 | ||
10644 | $as_echo "$ac_cv_search_nanosleep" >&6; } | ||
10645 | ac_res=$ac_cv_search_nanosleep | ||
10646 | if test "$ac_res" != no; then : | ||
10647 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10648 | |||
10649 | $as_echo "#define HAVE_NANOSLEEP 1" >>confdefs.h | ||
10650 | |||
10651 | fi | ||
10652 | |||
10653 | |||
10654 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 | ||
10655 | $as_echo_n "checking for library containing clock_gettime... " >&6; } | ||
10656 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
10657 | $as_echo_n "(cached) " >&6 | ||
10658 | else | ||
10659 | ac_func_search_save_LIBS=$LIBS | ||
10660 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10661 | /* end confdefs.h. */ | ||
10662 | |||
10663 | /* Override any GCC internal prototype to avoid an error. | ||
10664 | Use char because int might match the return type of a GCC | ||
10665 | builtin and then its argument prototype would still apply. */ | ||
10666 | #ifdef __cplusplus | ||
10667 | extern "C" | ||
10668 | #endif | ||
10669 | char clock_gettime (); | ||
10670 | int | ||
10671 | main () | ||
10672 | { | ||
10673 | return clock_gettime (); | ||
10674 | ; | ||
10675 | return 0; | ||
10676 | } | ||
10677 | _ACEOF | ||
10678 | for ac_lib in '' rt; do | ||
10679 | if test -z "$ac_lib"; then | ||
10680 | ac_res="none required" | ||
10681 | else | ||
10682 | ac_res=-l$ac_lib | ||
10683 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10684 | fi | ||
10685 | if ac_fn_c_try_link "$LINENO"; then : | ||
10686 | ac_cv_search_clock_gettime=$ac_res | ||
10687 | fi | ||
10688 | rm -f core conftest.err conftest.$ac_objext \ | ||
10689 | conftest$ac_exeext | ||
10690 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
10691 | break | ||
10692 | fi | ||
10693 | done | ||
10694 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
10695 | |||
10696 | else | ||
10697 | ac_cv_search_clock_gettime=no | ||
10698 | fi | ||
10699 | rm conftest.$ac_ext | ||
10700 | LIBS=$ac_func_search_save_LIBS | ||
10701 | fi | ||
10702 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 | ||
10703 | $as_echo "$ac_cv_search_clock_gettime" >&6; } | ||
10704 | ac_res=$ac_cv_search_clock_gettime | ||
10705 | if test "$ac_res" != no; then : | ||
10706 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10707 | |||
10708 | $as_echo "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h | ||
10709 | |||
10710 | fi | ||
10711 | |||
10712 | |||
10713 | ac_fn_c_check_decl "$LINENO" "getrusage" "ac_cv_have_decl_getrusage" "$ac_includes_default" | ||
10714 | if test "x$ac_cv_have_decl_getrusage" = xyes; then : | ||
10715 | for ac_func in getrusage | ||
10716 | do : | ||
10717 | ac_fn_c_check_func "$LINENO" "getrusage" "ac_cv_func_getrusage" | ||
10718 | if test "x$ac_cv_func_getrusage" = xyes; then : | ||
10719 | cat >>confdefs.h <<_ACEOF | ||
10720 | #define HAVE_GETRUSAGE 1 | ||
10721 | _ACEOF | ||
10722 | |||
10723 | fi | ||
10724 | done | ||
10725 | |||
10726 | fi | ||
10727 | |||
10728 | ac_fn_c_check_decl "$LINENO" "strsep" "ac_cv_have_decl_strsep" " | ||
10729 | #ifdef HAVE_STRING_H | ||
10730 | # include <string.h> | ||
10731 | #endif | ||
10732 | |||
10733 | " | ||
10734 | if test "x$ac_cv_have_decl_strsep" = xyes; then : | ||
10735 | for ac_func in strsep | ||
10736 | do : | ||
10737 | ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep" | ||
10738 | if test "x$ac_cv_func_strsep" = xyes; then : | ||
10739 | cat >>confdefs.h <<_ACEOF | ||
10740 | #define HAVE_STRSEP 1 | ||
10741 | _ACEOF | ||
10742 | |||
10743 | fi | ||
10744 | done | ||
10745 | |||
10746 | fi | ||
10747 | |||
10748 | |||
10749 | ac_fn_c_check_decl "$LINENO" "tcsendbreak" "ac_cv_have_decl_tcsendbreak" "#include <termios.h> | ||
10750 | |||
10751 | " | ||
10752 | if test "x$ac_cv_have_decl_tcsendbreak" = xyes; then : | ||
10753 | $as_echo "#define HAVE_TCSENDBREAK 1" >>confdefs.h | ||
10754 | |||
10755 | else | ||
10756 | for ac_func in tcsendbreak | ||
10757 | do : | ||
10758 | ac_fn_c_check_func "$LINENO" "tcsendbreak" "ac_cv_func_tcsendbreak" | ||
10759 | if test "x$ac_cv_func_tcsendbreak" = xyes; then : | ||
10760 | cat >>confdefs.h <<_ACEOF | ||
10761 | #define HAVE_TCSENDBREAK 1 | ||
10762 | _ACEOF | ||
10763 | |||
10764 | fi | ||
10765 | done | ||
10766 | |||
10767 | fi | ||
10768 | |||
10769 | |||
10770 | ac_fn_c_check_decl "$LINENO" "h_errno" "ac_cv_have_decl_h_errno" "#include <netdb.h> | ||
10771 | " | ||
10772 | if test "x$ac_cv_have_decl_h_errno" = xyes; then : | ||
10773 | ac_have_decl=1 | ||
10774 | else | ||
10775 | ac_have_decl=0 | ||
10776 | fi | ||
10777 | |||
10778 | cat >>confdefs.h <<_ACEOF | ||
10779 | #define HAVE_DECL_H_ERRNO $ac_have_decl | ||
10780 | _ACEOF | ||
10781 | |||
10782 | |||
10783 | ac_fn_c_check_decl "$LINENO" "SHUT_RD" "ac_cv_have_decl_SHUT_RD" " | ||
10784 | #include <sys/types.h> | ||
10785 | #include <sys/socket.h> | ||
10786 | |||
10787 | " | ||
10788 | if test "x$ac_cv_have_decl_SHUT_RD" = xyes; then : | ||
10789 | ac_have_decl=1 | ||
10790 | else | ||
10791 | ac_have_decl=0 | ||
10792 | fi | ||
10793 | |||
10794 | cat >>confdefs.h <<_ACEOF | ||
10795 | #define HAVE_DECL_SHUT_RD $ac_have_decl | ||
10796 | _ACEOF | ||
10797 | |||
10798 | |||
10799 | ac_fn_c_check_decl "$LINENO" "O_NONBLOCK" "ac_cv_have_decl_O_NONBLOCK" " | ||
10800 | #include <sys/types.h> | ||
10801 | #ifdef HAVE_SYS_STAT_H | ||
10802 | # include <sys/stat.h> | ||
10803 | #endif | ||
10804 | #ifdef HAVE_FCNTL_H | ||
10805 | # include <fcntl.h> | ||
10806 | #endif | ||
10807 | |||
10808 | " | ||
10809 | if test "x$ac_cv_have_decl_O_NONBLOCK" = xyes; then : | ||
10810 | ac_have_decl=1 | ||
10811 | else | ||
10812 | ac_have_decl=0 | ||
10813 | fi | ||
10814 | |||
10815 | cat >>confdefs.h <<_ACEOF | ||
10816 | #define HAVE_DECL_O_NONBLOCK $ac_have_decl | ||
10817 | _ACEOF | ||
10818 | |||
10819 | |||
10820 | ac_fn_c_check_decl "$LINENO" "writev" "ac_cv_have_decl_writev" " | ||
10821 | #include <sys/types.h> | ||
10822 | #include <sys/uio.h> | ||
10823 | #include <unistd.h> | ||
10824 | |||
10825 | " | ||
10826 | if test "x$ac_cv_have_decl_writev" = xyes; then : | ||
10827 | ac_have_decl=1 | ||
10828 | else | ||
10829 | ac_have_decl=0 | ||
10830 | fi | ||
10831 | |||
10832 | cat >>confdefs.h <<_ACEOF | ||
10833 | #define HAVE_DECL_WRITEV $ac_have_decl | ||
10834 | _ACEOF | ||
10835 | |||
10836 | |||
10837 | ac_fn_c_check_decl "$LINENO" "MAXSYMLINKS" "ac_cv_have_decl_MAXSYMLINKS" " | ||
10838 | #include <sys/param.h> | ||
10839 | |||
10840 | " | ||
10841 | if test "x$ac_cv_have_decl_MAXSYMLINKS" = xyes; then : | ||
10842 | ac_have_decl=1 | ||
10843 | else | ||
10844 | ac_have_decl=0 | ||
10845 | fi | ||
10846 | |||
10847 | cat >>confdefs.h <<_ACEOF | ||
10848 | #define HAVE_DECL_MAXSYMLINKS $ac_have_decl | ||
10849 | _ACEOF | ||
10850 | |||
10851 | |||
10852 | ac_fn_c_check_decl "$LINENO" "offsetof" "ac_cv_have_decl_offsetof" " | ||
10853 | #include <stddef.h> | ||
10854 | |||
10855 | " | ||
10856 | if test "x$ac_cv_have_decl_offsetof" = xyes; then : | ||
10857 | ac_have_decl=1 | ||
10858 | else | ||
10859 | ac_have_decl=0 | ||
10860 | fi | ||
10861 | |||
10862 | cat >>confdefs.h <<_ACEOF | ||
10863 | #define HAVE_DECL_OFFSETOF $ac_have_decl | ||
10864 | _ACEOF | ||
10865 | |||
10866 | |||
10867 | # extra bits for select(2) | ||
10868 | ac_fn_c_check_decl "$LINENO" "howmany" "ac_cv_have_decl_howmany" " | ||
10869 | #include <sys/param.h> | ||
10870 | #include <sys/types.h> | ||
10871 | #ifdef HAVE_SYS_SYSMACROS_H | ||
10872 | #include <sys/sysmacros.h> | ||
10873 | #endif | ||
10874 | #ifdef HAVE_SYS_SELECT_H | ||
10875 | #include <sys/select.h> | ||
10876 | #endif | ||
10877 | #ifdef HAVE_SYS_TIME_H | ||
10878 | #include <sys/time.h> | ||
10879 | #endif | ||
10880 | #ifdef HAVE_UNISTD_H | ||
10881 | #include <unistd.h> | ||
10882 | #endif | ||
10883 | |||
10884 | " | ||
10885 | if test "x$ac_cv_have_decl_howmany" = xyes; then : | ||
10886 | ac_have_decl=1 | ||
10887 | else | ||
10888 | ac_have_decl=0 | ||
10889 | fi | ||
10890 | |||
10891 | cat >>confdefs.h <<_ACEOF | ||
10892 | #define HAVE_DECL_HOWMANY $ac_have_decl | ||
10893 | _ACEOF | ||
10894 | ac_fn_c_check_decl "$LINENO" "NFDBITS" "ac_cv_have_decl_NFDBITS" " | ||
10895 | #include <sys/param.h> | ||
10896 | #include <sys/types.h> | ||
10897 | #ifdef HAVE_SYS_SYSMACROS_H | ||
10898 | #include <sys/sysmacros.h> | ||
10899 | #endif | ||
10900 | #ifdef HAVE_SYS_SELECT_H | ||
10901 | #include <sys/select.h> | ||
10902 | #endif | ||
10903 | #ifdef HAVE_SYS_TIME_H | ||
10904 | #include <sys/time.h> | ||
10905 | #endif | ||
10906 | #ifdef HAVE_UNISTD_H | ||
10907 | #include <unistd.h> | ||
10908 | #endif | ||
10909 | |||
10910 | " | ||
10911 | if test "x$ac_cv_have_decl_NFDBITS" = xyes; then : | ||
10912 | ac_have_decl=1 | ||
10913 | else | ||
10914 | ac_have_decl=0 | ||
10915 | fi | ||
10916 | |||
10917 | cat >>confdefs.h <<_ACEOF | ||
10918 | #define HAVE_DECL_NFDBITS $ac_have_decl | ||
10919 | _ACEOF | ||
10920 | |||
10921 | ac_fn_c_check_type "$LINENO" "fd_mask" "ac_cv_type_fd_mask" " | ||
10922 | #include <sys/param.h> | ||
10923 | #include <sys/types.h> | ||
10924 | #ifdef HAVE_SYS_SELECT_H | ||
10925 | #include <sys/select.h> | ||
10926 | #endif | ||
10927 | #ifdef HAVE_SYS_TIME_H | ||
10928 | #include <sys/time.h> | ||
10929 | #endif | ||
10930 | #ifdef HAVE_UNISTD_H | ||
10931 | #include <unistd.h> | ||
10932 | #endif | ||
10933 | |||
10934 | " | ||
10935 | if test "x$ac_cv_type_fd_mask" = xyes; then : | ||
10936 | |||
10937 | cat >>confdefs.h <<_ACEOF | ||
10938 | #define HAVE_FD_MASK 1 | ||
10939 | _ACEOF | ||
10940 | |||
10941 | |||
10942 | fi | ||
10943 | |||
10944 | |||
10945 | for ac_func in setresuid | ||
10946 | do : | ||
10947 | ac_fn_c_check_func "$LINENO" "setresuid" "ac_cv_func_setresuid" | ||
10948 | if test "x$ac_cv_func_setresuid" = xyes; then : | ||
10949 | cat >>confdefs.h <<_ACEOF | ||
10950 | #define HAVE_SETRESUID 1 | ||
10951 | _ACEOF | ||
10952 | |||
10953 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresuid seems to work" >&5 | ||
10954 | $as_echo_n "checking if setresuid seems to work... " >&6; } | ||
10955 | if test "$cross_compiling" = yes; then : | ||
10956 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5 | ||
10957 | $as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;} | ||
10958 | |||
10959 | else | ||
10960 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10961 | /* end confdefs.h. */ | ||
10962 | |||
10963 | #include <stdlib.h> | ||
10964 | #include <errno.h> | ||
10965 | |||
10966 | int | ||
10967 | main () | ||
10968 | { | ||
10969 | |||
10970 | errno=0; | ||
10971 | setresuid(0,0,0); | ||
10972 | if (errno==ENOSYS) | ||
10973 | exit(1); | ||
10974 | else | ||
10975 | exit(0); | ||
10976 | |||
10977 | ; | ||
10978 | return 0; | ||
10979 | } | ||
10980 | _ACEOF | ||
10981 | if ac_fn_c_try_run "$LINENO"; then : | ||
10982 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10983 | $as_echo "yes" >&6; } | ||
10984 | else | ||
10985 | |||
10986 | $as_echo "#define BROKEN_SETRESUID 1" >>confdefs.h | ||
10987 | |||
10988 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5 | ||
10989 | $as_echo "not implemented" >&6; } | ||
10990 | fi | ||
10991 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
10992 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
10993 | fi | ||
10994 | |||
10995 | |||
10996 | fi | ||
10997 | done | ||
10998 | |||
10999 | |||
11000 | for ac_func in setresgid | ||
11001 | do : | ||
11002 | ac_fn_c_check_func "$LINENO" "setresgid" "ac_cv_func_setresgid" | ||
11003 | if test "x$ac_cv_func_setresgid" = xyes; then : | ||
11004 | cat >>confdefs.h <<_ACEOF | ||
11005 | #define HAVE_SETRESGID 1 | ||
11006 | _ACEOF | ||
11007 | |||
11008 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresgid seems to work" >&5 | ||
11009 | $as_echo_n "checking if setresgid seems to work... " >&6; } | ||
11010 | if test "$cross_compiling" = yes; then : | ||
11011 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5 | ||
11012 | $as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;} | ||
11013 | |||
11014 | else | ||
11015 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11016 | /* end confdefs.h. */ | ||
11017 | |||
11018 | #include <stdlib.h> | ||
11019 | #include <errno.h> | ||
11020 | |||
11021 | int | ||
11022 | main () | ||
11023 | { | ||
11024 | |||
11025 | errno=0; | ||
11026 | setresgid(0,0,0); | ||
11027 | if (errno==ENOSYS) | ||
11028 | exit(1); | ||
11029 | else | ||
11030 | exit(0); | ||
11031 | |||
11032 | ; | ||
11033 | return 0; | ||
11034 | } | ||
11035 | _ACEOF | ||
11036 | if ac_fn_c_try_run "$LINENO"; then : | ||
11037 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11038 | $as_echo "yes" >&6; } | ||
11039 | else | ||
11040 | |||
11041 | $as_echo "#define BROKEN_SETRESGID 1" >>confdefs.h | ||
11042 | |||
11043 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5 | ||
11044 | $as_echo "not implemented" >&6; } | ||
11045 | fi | ||
11046 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11047 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11048 | fi | ||
11049 | |||
11050 | |||
11051 | fi | ||
11052 | done | ||
11053 | |||
11054 | |||
11055 | for ac_func in gettimeofday time | ||
11056 | do : | ||
11057 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11058 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11059 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11060 | cat >>confdefs.h <<_ACEOF | ||
11061 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11062 | _ACEOF | ||
11063 | |||
11064 | fi | ||
11065 | done | ||
11066 | |||
11067 | for ac_func in endutent getutent getutid getutline pututline setutent | ||
11068 | do : | ||
11069 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11070 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11071 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11072 | cat >>confdefs.h <<_ACEOF | ||
11073 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11074 | _ACEOF | ||
11075 | |||
11076 | fi | ||
11077 | done | ||
11078 | |||
11079 | for ac_func in utmpname | ||
11080 | do : | ||
11081 | ac_fn_c_check_func "$LINENO" "utmpname" "ac_cv_func_utmpname" | ||
11082 | if test "x$ac_cv_func_utmpname" = xyes; then : | ||
11083 | cat >>confdefs.h <<_ACEOF | ||
11084 | #define HAVE_UTMPNAME 1 | ||
11085 | _ACEOF | ||
11086 | |||
11087 | fi | ||
11088 | done | ||
11089 | |||
11090 | for ac_func in endutxent getutxent getutxid getutxline getutxuser pututxline | ||
11091 | do : | ||
11092 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11093 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11094 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11095 | cat >>confdefs.h <<_ACEOF | ||
11096 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11097 | _ACEOF | ||
11098 | |||
11099 | fi | ||
11100 | done | ||
11101 | |||
11102 | for ac_func in setutxdb setutxent utmpxname | ||
11103 | do : | ||
11104 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11105 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11106 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11107 | cat >>confdefs.h <<_ACEOF | ||
11108 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11109 | _ACEOF | ||
11110 | |||
11111 | fi | ||
11112 | done | ||
11113 | |||
11114 | for ac_func in getlastlogxbyname | ||
11115 | do : | ||
11116 | ac_fn_c_check_func "$LINENO" "getlastlogxbyname" "ac_cv_func_getlastlogxbyname" | ||
11117 | if test "x$ac_cv_func_getlastlogxbyname" = xyes; then : | ||
11118 | cat >>confdefs.h <<_ACEOF | ||
11119 | #define HAVE_GETLASTLOGXBYNAME 1 | ||
11120 | _ACEOF | ||
11121 | |||
11122 | fi | ||
11123 | done | ||
11124 | |||
11125 | |||
11126 | ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon" | ||
11127 | if test "x$ac_cv_func_daemon" = xyes; then : | ||
11128 | |||
11129 | $as_echo "#define HAVE_DAEMON 1" >>confdefs.h | ||
11130 | |||
11131 | else | ||
11132 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5 | ||
11133 | $as_echo_n "checking for daemon in -lbsd... " >&6; } | ||
11134 | if ${ac_cv_lib_bsd_daemon+:} false; then : | ||
11135 | $as_echo_n "(cached) " >&6 | ||
11136 | else | ||
11137 | ac_check_lib_save_LIBS=$LIBS | ||
11138 | LIBS="-lbsd $LIBS" | ||
11139 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11140 | /* end confdefs.h. */ | ||
11141 | |||
11142 | /* Override any GCC internal prototype to avoid an error. | ||
11143 | Use char because int might match the return type of a GCC | ||
11144 | builtin and then its argument prototype would still apply. */ | ||
11145 | #ifdef __cplusplus | ||
11146 | extern "C" | ||
11147 | #endif | ||
11148 | char daemon (); | ||
11149 | int | ||
11150 | main () | ||
11151 | { | ||
11152 | return daemon (); | ||
11153 | ; | ||
11154 | return 0; | ||
11155 | } | ||
11156 | _ACEOF | ||
11157 | if ac_fn_c_try_link "$LINENO"; then : | ||
11158 | ac_cv_lib_bsd_daemon=yes | ||
11159 | else | ||
11160 | ac_cv_lib_bsd_daemon=no | ||
11161 | fi | ||
11162 | rm -f core conftest.err conftest.$ac_objext \ | ||
11163 | conftest$ac_exeext conftest.$ac_ext | ||
11164 | LIBS=$ac_check_lib_save_LIBS | ||
11165 | fi | ||
11166 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5 | ||
11167 | $as_echo "$ac_cv_lib_bsd_daemon" >&6; } | ||
11168 | if test "x$ac_cv_lib_bsd_daemon" = xyes; then : | ||
11169 | LIBS="$LIBS -lbsd"; $as_echo "#define HAVE_DAEMON 1" >>confdefs.h | ||
11170 | |||
11171 | fi | ||
11172 | |||
11173 | |||
11174 | fi | ||
11175 | |||
11176 | |||
11177 | ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" | ||
11178 | if test "x$ac_cv_func_getpagesize" = xyes; then : | ||
11179 | |||
11180 | $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h | ||
11181 | |||
11182 | else | ||
11183 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpagesize in -lucb" >&5 | ||
11184 | $as_echo_n "checking for getpagesize in -lucb... " >&6; } | ||
11185 | if ${ac_cv_lib_ucb_getpagesize+:} false; then : | ||
11186 | $as_echo_n "(cached) " >&6 | ||
11187 | else | ||
11188 | ac_check_lib_save_LIBS=$LIBS | ||
11189 | LIBS="-lucb $LIBS" | ||
11190 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11191 | /* end confdefs.h. */ | ||
11192 | |||
11193 | /* Override any GCC internal prototype to avoid an error. | ||
11194 | Use char because int might match the return type of a GCC | ||
11195 | builtin and then its argument prototype would still apply. */ | ||
11196 | #ifdef __cplusplus | ||
11197 | extern "C" | ||
11198 | #endif | ||
11199 | char getpagesize (); | ||
11200 | int | ||
11201 | main () | ||
11202 | { | ||
11203 | return getpagesize (); | ||
11204 | ; | ||
11205 | return 0; | ||
11206 | } | ||
11207 | _ACEOF | ||
11208 | if ac_fn_c_try_link "$LINENO"; then : | ||
11209 | ac_cv_lib_ucb_getpagesize=yes | ||
11210 | else | ||
11211 | ac_cv_lib_ucb_getpagesize=no | ||
11212 | fi | ||
11213 | rm -f core conftest.err conftest.$ac_objext \ | ||
11214 | conftest$ac_exeext conftest.$ac_ext | ||
11215 | LIBS=$ac_check_lib_save_LIBS | ||
11216 | fi | ||
11217 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ucb_getpagesize" >&5 | ||
11218 | $as_echo "$ac_cv_lib_ucb_getpagesize" >&6; } | ||
11219 | if test "x$ac_cv_lib_ucb_getpagesize" = xyes; then : | ||
11220 | LIBS="$LIBS -lucb"; $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h | ||
11221 | |||
11222 | fi | ||
11223 | |||
11224 | |||
11225 | fi | ||
11226 | |||
11227 | |||
11228 | # Check for broken snprintf | ||
11229 | if test "x$ac_cv_func_snprintf" = "xyes" ; then | ||
11230 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf correctly terminates long strings" >&5 | ||
11231 | $as_echo_n "checking whether snprintf correctly terminates long strings... " >&6; } | ||
11232 | if test "$cross_compiling" = yes; then : | ||
11233 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5 | ||
11234 | $as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;} | ||
11235 | |||
11236 | else | ||
11237 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11238 | /* end confdefs.h. */ | ||
11239 | #include <stdio.h> | ||
11240 | int | ||
11241 | main () | ||
11242 | { | ||
11243 | |||
11244 | char b[5]; | ||
11245 | snprintf(b,5,"123456789"); | ||
11246 | exit(b[4]!='\0'); | ||
11247 | |||
11248 | ; | ||
11249 | return 0; | ||
11250 | } | ||
11251 | _ACEOF | ||
11252 | if ac_fn_c_try_run "$LINENO"; then : | ||
11253 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11254 | $as_echo "yes" >&6; } | ||
11255 | else | ||
11256 | |||
11257 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11258 | $as_echo "no" >&6; } | ||
11259 | |||
11260 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
11261 | |||
11262 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&5 | ||
11263 | $as_echo "$as_me: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&2;} | ||
11264 | |||
11265 | fi | ||
11266 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11267 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11268 | fi | ||
11269 | |||
11270 | fi | ||
11271 | |||
11272 | # If we don't have a working asprintf, then we strongly depend on vsnprintf | ||
11273 | # returning the right thing on overflow: the number of characters it tried to | ||
11274 | # create (as per SUSv3) | ||
11275 | if test "x$ac_cv_func_asprintf" != "xyes" && \ | ||
11276 | test "x$ac_cv_func_vsnprintf" = "xyes" ; then | ||
11277 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether vsnprintf returns correct values on overflow" >&5 | ||
11278 | $as_echo_n "checking whether vsnprintf returns correct values on overflow... " >&6; } | ||
11279 | if test "$cross_compiling" = yes; then : | ||
11280 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working vsnprintf()" >&5 | ||
11281 | $as_echo "$as_me: WARNING: cross compiling: Assuming working vsnprintf()" >&2;} | ||
11282 | |||
11283 | else | ||
11284 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11285 | /* end confdefs.h. */ | ||
11286 | |||
11287 | #include <sys/types.h> | ||
11288 | #include <stdio.h> | ||
11289 | #include <stdarg.h> | ||
11290 | |||
11291 | int x_snprintf(char *str,size_t count,const char *fmt,...) | ||
11292 | { | ||
11293 | size_t ret; va_list ap; | ||
11294 | va_start(ap, fmt); ret = vsnprintf(str, count, fmt, ap); va_end(ap); | ||
11295 | return ret; | ||
11296 | } | ||
11297 | |||
11298 | int | ||
11299 | main () | ||
11300 | { | ||
11301 | |||
11302 | char x[1]; | ||
11303 | exit(x_snprintf(x, 1, "%s %d", "hello", 12345) == 11 ? 0 : 1); | ||
11304 | |||
11305 | ; | ||
11306 | return 0; | ||
11307 | } | ||
11308 | _ACEOF | ||
11309 | if ac_fn_c_try_run "$LINENO"; then : | ||
11310 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11311 | $as_echo "yes" >&6; } | ||
11312 | else | ||
11313 | |||
11314 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11315 | $as_echo "no" >&6; } | ||
11316 | |||
11317 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
11318 | |||
11319 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&5 | ||
11320 | $as_echo "$as_me: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&2;} | ||
11321 | |||
11322 | fi | ||
11323 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11324 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11325 | fi | ||
11326 | |||
11327 | fi | ||
11328 | |||
11329 | # On systems where [v]snprintf is broken, but is declared in stdio, | ||
11330 | # check that the fmt argument is const char * or just char *. | ||
11331 | # This is only useful for when BROKEN_SNPRINTF | ||
11332 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf can declare const char *fmt" >&5 | ||
11333 | $as_echo_n "checking whether snprintf can declare const char *fmt... " >&6; } | ||
11334 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11335 | /* end confdefs.h. */ | ||
11336 | |||
11337 | #include <stdio.h> | ||
11338 | int snprintf(char *a, size_t b, const char *c, ...) { return 0; } | ||
11339 | |||
11340 | int | ||
11341 | main () | ||
11342 | { | ||
11343 | |||
11344 | snprintf(0, 0, 0); | ||
11345 | |||
11346 | ; | ||
11347 | return 0; | ||
11348 | } | ||
11349 | _ACEOF | ||
11350 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11351 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11352 | $as_echo "yes" >&6; } | ||
11353 | |||
11354 | $as_echo "#define SNPRINTF_CONST const" >>confdefs.h | ||
11355 | |||
11356 | else | ||
11357 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11358 | $as_echo "no" >&6; } | ||
11359 | $as_echo "#define SNPRINTF_CONST /* not const */" >>confdefs.h | ||
11360 | |||
11361 | fi | ||
11362 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11363 | |||
11364 | # Check for missing getpeereid (or equiv) support | ||
11365 | NO_PEERCHECK="" | ||
11366 | if test "x$ac_cv_func_getpeereid" != "xyes" -a "x$ac_cv_func_getpeerucred" != "xyes"; then | ||
11367 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system supports SO_PEERCRED getsockopt" >&5 | ||
11368 | $as_echo_n "checking whether system supports SO_PEERCRED getsockopt... " >&6; } | ||
11369 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11370 | /* end confdefs.h. */ | ||
11371 | |||
11372 | #include <sys/types.h> | ||
11373 | #include <sys/socket.h> | ||
11374 | int | ||
11375 | main () | ||
11376 | { | ||
11377 | int i = SO_PEERCRED; | ||
11378 | ; | ||
11379 | return 0; | ||
11380 | } | ||
11381 | _ACEOF | ||
11382 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11383 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11384 | $as_echo "yes" >&6; } | ||
11385 | |||
11386 | $as_echo "#define HAVE_SO_PEERCRED 1" >>confdefs.h | ||
11387 | |||
11388 | |||
11389 | else | ||
11390 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11391 | $as_echo "no" >&6; } | ||
11392 | NO_PEERCHECK=1 | ||
11393 | |||
11394 | fi | ||
11395 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11396 | fi | ||
11397 | |||
11398 | if test "x$ac_cv_func_mkdtemp" = "xyes" ; then | ||
11399 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for (overly) strict mkstemp" >&5 | ||
11400 | $as_echo_n "checking for (overly) strict mkstemp... " >&6; } | ||
11401 | if test "$cross_compiling" = yes; then : | ||
11402 | |||
11403 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11404 | $as_echo "yes" >&6; } | ||
11405 | $as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h | ||
11406 | |||
11407 | |||
11408 | |||
11409 | else | ||
11410 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11411 | /* end confdefs.h. */ | ||
11412 | |||
11413 | #include <stdlib.h> | ||
11414 | |||
11415 | int | ||
11416 | main () | ||
11417 | { | ||
11418 | |||
11419 | char template[]="conftest.mkstemp-test"; | ||
11420 | if (mkstemp(template) == -1) | ||
11421 | exit(1); | ||
11422 | unlink(template); | ||
11423 | exit(0); | ||
11424 | |||
11425 | ; | ||
11426 | return 0; | ||
11427 | } | ||
11428 | _ACEOF | ||
11429 | if ac_fn_c_try_run "$LINENO"; then : | ||
11430 | |||
11431 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11432 | $as_echo "no" >&6; } | ||
11433 | |||
11434 | else | ||
11435 | |||
11436 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11437 | $as_echo "yes" >&6; } | ||
11438 | |||
11439 | $as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h | ||
11440 | |||
11441 | |||
11442 | fi | ||
11443 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11444 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11445 | fi | ||
11446 | |||
11447 | fi | ||
11448 | |||
11449 | if test ! -z "$check_for_openpty_ctty_bug"; then | ||
11450 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if openpty correctly handles controlling tty" >&5 | ||
11451 | $as_echo_n "checking if openpty correctly handles controlling tty... " >&6; } | ||
11452 | if test "$cross_compiling" = yes; then : | ||
11453 | |||
11454 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5 | ||
11455 | $as_echo "cross-compiling, assuming yes" >&6; } | ||
11456 | |||
11457 | |||
11458 | else | ||
11459 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11460 | /* end confdefs.h. */ | ||
11461 | |||
11462 | #include <stdio.h> | ||
11463 | #include <sys/fcntl.h> | ||
11464 | #include <sys/types.h> | ||
11465 | #include <sys/wait.h> | ||
11466 | |||
11467 | int | ||
11468 | main () | ||
11469 | { | ||
11470 | |||
11471 | pid_t pid; | ||
11472 | int fd, ptyfd, ttyfd, status; | ||
11473 | |||
11474 | pid = fork(); | ||
11475 | if (pid < 0) { /* failed */ | ||
11476 | exit(1); | ||
11477 | } else if (pid > 0) { /* parent */ | ||
11478 | waitpid(pid, &status, 0); | ||
11479 | if (WIFEXITED(status)) | ||
11480 | exit(WEXITSTATUS(status)); | ||
11481 | else | ||
11482 | exit(2); | ||
11483 | } else { /* child */ | ||
11484 | close(0); close(1); close(2); | ||
11485 | setsid(); | ||
11486 | openpty(&ptyfd, &ttyfd, NULL, NULL, NULL); | ||
11487 | fd = open("/dev/tty", O_RDWR | O_NOCTTY); | ||
11488 | if (fd >= 0) | ||
11489 | exit(3); /* Acquired ctty: broken */ | ||
11490 | else | ||
11491 | exit(0); /* Did not acquire ctty: OK */ | ||
11492 | } | ||
11493 | |||
11494 | ; | ||
11495 | return 0; | ||
11496 | } | ||
11497 | _ACEOF | ||
11498 | if ac_fn_c_try_run "$LINENO"; then : | ||
11499 | |||
11500 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11501 | $as_echo "yes" >&6; } | ||
11502 | |||
11503 | else | ||
11504 | |||
11505 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11506 | $as_echo "no" >&6; } | ||
11507 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
11508 | |||
11509 | |||
11510 | fi | ||
11511 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11512 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11513 | fi | ||
11514 | |||
11515 | fi | ||
11516 | |||
11517 | if test "x$ac_cv_func_getaddrinfo" = "xyes" && \ | ||
11518 | test "x$check_for_hpux_broken_getaddrinfo" = "x1"; then | ||
11519 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5 | ||
11520 | $as_echo_n "checking if getaddrinfo seems to work... " >&6; } | ||
11521 | if test "$cross_compiling" = yes; then : | ||
11522 | |||
11523 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5 | ||
11524 | $as_echo "cross-compiling, assuming yes" >&6; } | ||
11525 | |||
11526 | |||
11527 | else | ||
11528 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11529 | /* end confdefs.h. */ | ||
11530 | |||
11531 | #include <stdio.h> | ||
11532 | #include <sys/socket.h> | ||
11533 | #include <netdb.h> | ||
11534 | #include <errno.h> | ||
11535 | #include <netinet/in.h> | ||
11536 | |||
11537 | #define TEST_PORT "2222" | ||
11538 | |||
11539 | int | ||
11540 | main () | ||
11541 | { | ||
11542 | |||
11543 | int err, sock; | ||
11544 | struct addrinfo *gai_ai, *ai, hints; | ||
11545 | char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL; | ||
11546 | |||
11547 | memset(&hints, 0, sizeof(hints)); | ||
11548 | hints.ai_family = PF_UNSPEC; | ||
11549 | hints.ai_socktype = SOCK_STREAM; | ||
11550 | hints.ai_flags = AI_PASSIVE; | ||
11551 | |||
11552 | err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai); | ||
11553 | if (err != 0) { | ||
11554 | fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err)); | ||
11555 | exit(1); | ||
11556 | } | ||
11557 | |||
11558 | for (ai = gai_ai; ai != NULL; ai = ai->ai_next) { | ||
11559 | if (ai->ai_family != AF_INET6) | ||
11560 | continue; | ||
11561 | |||
11562 | err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop, | ||
11563 | sizeof(ntop), strport, sizeof(strport), | ||
11564 | NI_NUMERICHOST|NI_NUMERICSERV); | ||
11565 | |||
11566 | if (err != 0) { | ||
11567 | if (err == EAI_SYSTEM) | ||
11568 | perror("getnameinfo EAI_SYSTEM"); | ||
11569 | else | ||
11570 | fprintf(stderr, "getnameinfo failed: %s\n", | ||
11571 | gai_strerror(err)); | ||
11572 | exit(2); | ||
11573 | } | ||
11574 | |||
11575 | sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); | ||
11576 | if (sock < 0) | ||
11577 | perror("socket"); | ||
11578 | if (bind(sock, ai->ai_addr, ai->ai_addrlen) < 0) { | ||
11579 | if (errno == EBADF) | ||
11580 | exit(3); | ||
11581 | } | ||
11582 | } | ||
11583 | exit(0); | ||
11584 | |||
11585 | ; | ||
11586 | return 0; | ||
11587 | } | ||
11588 | _ACEOF | ||
11589 | if ac_fn_c_try_run "$LINENO"; then : | ||
11590 | |||
11591 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11592 | $as_echo "yes" >&6; } | ||
11593 | |||
11594 | else | ||
11595 | |||
11596 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11597 | $as_echo "no" >&6; } | ||
11598 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
11599 | |||
11600 | |||
11601 | fi | ||
11602 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11603 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11604 | fi | ||
11605 | |||
11606 | fi | ||
11607 | |||
11608 | if test "x$ac_cv_func_getaddrinfo" = "xyes" && \ | ||
11609 | test "x$check_for_aix_broken_getaddrinfo" = "x1"; then | ||
11610 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5 | ||
11611 | $as_echo_n "checking if getaddrinfo seems to work... " >&6; } | ||
11612 | if test "$cross_compiling" = yes; then : | ||
11613 | |||
11614 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming no" >&5 | ||
11615 | $as_echo "cross-compiling, assuming no" >&6; } | ||
11616 | |||
11617 | |||
11618 | else | ||
11619 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11620 | /* end confdefs.h. */ | ||
11621 | |||
11622 | #include <stdio.h> | ||
11623 | #include <sys/socket.h> | ||
11624 | #include <netdb.h> | ||
11625 | #include <errno.h> | ||
11626 | #include <netinet/in.h> | ||
11627 | |||
11628 | #define TEST_PORT "2222" | ||
11629 | |||
11630 | int | ||
11631 | main () | ||
11632 | { | ||
11633 | |||
11634 | int err, sock; | ||
11635 | struct addrinfo *gai_ai, *ai, hints; | ||
11636 | char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL; | ||
11637 | |||
11638 | memset(&hints, 0, sizeof(hints)); | ||
11639 | hints.ai_family = PF_UNSPEC; | ||
11640 | hints.ai_socktype = SOCK_STREAM; | ||
11641 | hints.ai_flags = AI_PASSIVE; | ||
11642 | |||
11643 | err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai); | ||
11644 | if (err != 0) { | ||
11645 | fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err)); | ||
11646 | exit(1); | ||
11647 | } | ||
11648 | |||
11649 | for (ai = gai_ai; ai != NULL; ai = ai->ai_next) { | ||
11650 | if (ai->ai_family != AF_INET && ai->ai_family != AF_INET6) | ||
11651 | continue; | ||
11652 | |||
11653 | err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop, | ||
11654 | sizeof(ntop), strport, sizeof(strport), | ||
11655 | NI_NUMERICHOST|NI_NUMERICSERV); | ||
11656 | |||
11657 | if (ai->ai_family == AF_INET && err != 0) { | ||
11658 | perror("getnameinfo"); | ||
11659 | exit(2); | ||
11660 | } | ||
11661 | } | ||
11662 | exit(0); | ||
11663 | |||
11664 | ; | ||
11665 | return 0; | ||
11666 | } | ||
11667 | _ACEOF | ||
11668 | if ac_fn_c_try_run "$LINENO"; then : | ||
11669 | |||
11670 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11671 | $as_echo "yes" >&6; } | ||
11672 | |||
11673 | $as_echo "#define AIX_GETNAMEINFO_HACK 1" >>confdefs.h | ||
11674 | |||
11675 | |||
11676 | else | ||
11677 | |||
11678 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11679 | $as_echo "no" >&6; } | ||
11680 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
11681 | |||
11682 | |||
11683 | fi | ||
11684 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11685 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11686 | fi | ||
11687 | |||
11688 | fi | ||
11689 | |||
11690 | if test "x$check_for_conflicting_getspnam" = "x1"; then | ||
11691 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for conflicting getspnam in shadow.h" >&5 | ||
11692 | $as_echo_n "checking for conflicting getspnam in shadow.h... " >&6; } | ||
11693 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11694 | /* end confdefs.h. */ | ||
11695 | #include <shadow.h> | ||
11696 | int | ||
11697 | main () | ||
11698 | { | ||
11699 | exit(0); | ||
11700 | ; | ||
11701 | return 0; | ||
11702 | } | ||
11703 | _ACEOF | ||
11704 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11705 | |||
11706 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11707 | $as_echo "no" >&6; } | ||
11708 | |||
11709 | else | ||
11710 | |||
11711 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11712 | $as_echo "yes" >&6; } | ||
11713 | |||
11714 | $as_echo "#define GETSPNAM_CONFLICTING_DEFS 1" >>confdefs.h | ||
11715 | |||
11716 | |||
11717 | |||
11718 | fi | ||
11719 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11720 | fi | ||
11721 | |||
11722 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpgrp requires zero arguments" >&5 | ||
11723 | $as_echo_n "checking whether getpgrp requires zero arguments... " >&6; } | ||
11724 | if ${ac_cv_func_getpgrp_void+:} false; then : | ||
11725 | $as_echo_n "(cached) " >&6 | ||
11726 | else | ||
11727 | # Use it with a single arg. | ||
11728 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11729 | /* end confdefs.h. */ | ||
11730 | $ac_includes_default | ||
11731 | int | ||
11732 | main () | ||
11733 | { | ||
11734 | getpgrp (0); | ||
11735 | ; | ||
11736 | return 0; | ||
11737 | } | ||
11738 | _ACEOF | ||
11739 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11740 | ac_cv_func_getpgrp_void=no | ||
11741 | else | ||
11742 | ac_cv_func_getpgrp_void=yes | ||
11743 | fi | ||
11744 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11745 | |||
11746 | fi | ||
11747 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_getpgrp_void" >&5 | ||
11748 | $as_echo "$ac_cv_func_getpgrp_void" >&6; } | ||
11749 | if test $ac_cv_func_getpgrp_void = yes; then | ||
11750 | |||
11751 | $as_echo "#define GETPGRP_VOID 1" >>confdefs.h | ||
11752 | |||
11753 | fi | ||
11754 | |||
11755 | |||
11756 | # Search for OpenSSL | ||
11757 | saved_CPPFLAGS="$CPPFLAGS" | ||
11758 | saved_LDFLAGS="$LDFLAGS" | ||
11759 | |||
11760 | # Check whether --with-ssl-dir was given. | ||
11761 | if test "${with_ssl_dir+set}" = set; then : | ||
11762 | withval=$with_ssl_dir; | ||
11763 | if test "x$withval" != "xno" ; then | ||
11764 | case "$withval" in | ||
11765 | # Relative paths | ||
11766 | ./*|../*) withval="`pwd`/$withval" | ||
11767 | esac | ||
11768 | if test -d "$withval/lib"; then | ||
11769 | if test -n "${need_dash_r}"; then | ||
11770 | LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" | ||
11771 | else | ||
11772 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
11773 | fi | ||
11774 | elif test -d "$withval/lib64"; then | ||
11775 | if test -n "${need_dash_r}"; then | ||
11776 | LDFLAGS="-L${withval}/lib64 -R${withval}/lib64 ${LDFLAGS}" | ||
11777 | else | ||
11778 | LDFLAGS="-L${withval}/lib64 ${LDFLAGS}" | ||
11779 | fi | ||
11780 | else | ||
11781 | if test -n "${need_dash_r}"; then | ||
11782 | LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" | ||
11783 | else | ||
11784 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
11785 | fi | ||
11786 | fi | ||
11787 | if test -d "$withval/include"; then | ||
11788 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
11789 | else | ||
11790 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
11791 | fi | ||
11792 | fi | ||
11793 | |||
11794 | |||
11795 | fi | ||
11796 | |||
11797 | LIBS="-lcrypto $LIBS" | ||
11798 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11799 | /* end confdefs.h. */ | ||
11800 | |||
11801 | /* Override any GCC internal prototype to avoid an error. | ||
11802 | Use char because int might match the return type of a GCC | ||
11803 | builtin and then its argument prototype would still apply. */ | ||
11804 | #ifdef __cplusplus | ||
11805 | extern "C" | ||
11806 | #endif | ||
11807 | char RAND_add (); | ||
11808 | int | ||
11809 | main () | ||
11810 | { | ||
11811 | return RAND_add (); | ||
11812 | ; | ||
11813 | return 0; | ||
11814 | } | ||
11815 | _ACEOF | ||
11816 | if ac_fn_c_try_link "$LINENO"; then : | ||
11817 | |||
11818 | $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h | ||
11819 | |||
11820 | else | ||
11821 | |||
11822 | if test -n "${need_dash_r}"; then | ||
11823 | LDFLAGS="-L/usr/local/ssl/lib -R/usr/local/ssl/lib ${saved_LDFLAGS}" | ||
11824 | else | ||
11825 | LDFLAGS="-L/usr/local/ssl/lib ${saved_LDFLAGS}" | ||
11826 | fi | ||
11827 | CPPFLAGS="-I/usr/local/ssl/include ${saved_CPPFLAGS}" | ||
11828 | ac_fn_c_check_header_mongrel "$LINENO" "openssl/opensslv.h" "ac_cv_header_openssl_opensslv_h" "$ac_includes_default" | ||
11829 | if test "x$ac_cv_header_openssl_opensslv_h" = xyes; then : | ||
11830 | |||
11831 | else | ||
11832 | as_fn_error $? "*** OpenSSL headers missing - please install first or check config.log ***" "$LINENO" 5 | ||
11833 | fi | ||
11834 | |||
11835 | |||
11836 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11837 | /* end confdefs.h. */ | ||
11838 | |||
11839 | /* Override any GCC internal prototype to avoid an error. | ||
11840 | Use char because int might match the return type of a GCC | ||
11841 | builtin and then its argument prototype would still apply. */ | ||
11842 | #ifdef __cplusplus | ||
11843 | extern "C" | ||
11844 | #endif | ||
11845 | char RAND_add (); | ||
11846 | int | ||
11847 | main () | ||
11848 | { | ||
11849 | return RAND_add (); | ||
11850 | ; | ||
11851 | return 0; | ||
11852 | } | ||
11853 | _ACEOF | ||
11854 | if ac_fn_c_try_link "$LINENO"; then : | ||
11855 | $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h | ||
11856 | |||
11857 | else | ||
11858 | |||
11859 | as_fn_error $? "*** Can't find recent OpenSSL libcrypto (see config.log for details) ***" "$LINENO" 5 | ||
11860 | |||
11861 | |||
11862 | fi | ||
11863 | rm -f core conftest.err conftest.$ac_objext \ | ||
11864 | conftest$ac_exeext conftest.$ac_ext | ||
11865 | |||
11866 | |||
11867 | fi | ||
11868 | rm -f core conftest.err conftest.$ac_objext \ | ||
11869 | conftest$ac_exeext conftest.$ac_ext | ||
11870 | |||
11871 | # Determine OpenSSL header version | ||
11872 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL header version" >&5 | ||
11873 | $as_echo_n "checking OpenSSL header version... " >&6; } | ||
11874 | if test "$cross_compiling" = yes; then : | ||
11875 | |||
11876 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
11877 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
11878 | |||
11879 | |||
11880 | else | ||
11881 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11882 | /* end confdefs.h. */ | ||
11883 | |||
11884 | #include <stdio.h> | ||
11885 | #include <string.h> | ||
11886 | #include <openssl/opensslv.h> | ||
11887 | #define DATA "conftest.sslincver" | ||
11888 | |||
11889 | int | ||
11890 | main () | ||
11891 | { | ||
11892 | |||
11893 | FILE *fd; | ||
11894 | int rc; | ||
11895 | |||
11896 | fd = fopen(DATA,"w"); | ||
11897 | if(fd == NULL) | ||
11898 | exit(1); | ||
11899 | |||
11900 | if ((rc = fprintf(fd ,"%x (%s)\n", OPENSSL_VERSION_NUMBER, OPENSSL_VERSION_TEXT)) <0) | ||
11901 | exit(1); | ||
11902 | |||
11903 | exit(0); | ||
11904 | |||
11905 | ; | ||
11906 | return 0; | ||
11907 | } | ||
11908 | _ACEOF | ||
11909 | if ac_fn_c_try_run "$LINENO"; then : | ||
11910 | |||
11911 | ssl_header_ver=`cat conftest.sslincver` | ||
11912 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_header_ver" >&5 | ||
11913 | $as_echo "$ssl_header_ver" >&6; } | ||
11914 | |||
11915 | else | ||
11916 | |||
11917 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
11918 | $as_echo "not found" >&6; } | ||
11919 | as_fn_error $? "OpenSSL version header not found." "$LINENO" 5 | ||
11920 | |||
11921 | fi | ||
11922 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11923 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11924 | fi | ||
11925 | |||
11926 | |||
11927 | # Determine OpenSSL library version | ||
11928 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL library version" >&5 | ||
11929 | $as_echo_n "checking OpenSSL library version... " >&6; } | ||
11930 | if test "$cross_compiling" = yes; then : | ||
11931 | |||
11932 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
11933 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
11934 | |||
11935 | |||
11936 | else | ||
11937 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11938 | /* end confdefs.h. */ | ||
11939 | |||
11940 | #include <stdio.h> | ||
11941 | #include <string.h> | ||
11942 | #include <openssl/opensslv.h> | ||
11943 | #include <openssl/crypto.h> | ||
11944 | #define DATA "conftest.ssllibver" | ||
11945 | |||
11946 | int | ||
11947 | main () | ||
11948 | { | ||
11949 | |||
11950 | FILE *fd; | ||
11951 | int rc; | ||
11952 | |||
11953 | fd = fopen(DATA,"w"); | ||
11954 | if(fd == NULL) | ||
11955 | exit(1); | ||
11956 | |||
11957 | if ((rc = fprintf(fd ,"%x (%s)\n", SSLeay(), SSLeay_version(SSLEAY_VERSION))) <0) | ||
11958 | exit(1); | ||
11959 | |||
11960 | exit(0); | ||
11961 | |||
11962 | ; | ||
11963 | return 0; | ||
11964 | } | ||
11965 | _ACEOF | ||
11966 | if ac_fn_c_try_run "$LINENO"; then : | ||
11967 | |||
11968 | ssl_library_ver=`cat conftest.ssllibver` | ||
11969 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_library_ver" >&5 | ||
11970 | $as_echo "$ssl_library_ver" >&6; } | ||
11971 | |||
11972 | else | ||
11973 | |||
11974 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
11975 | $as_echo "not found" >&6; } | ||
11976 | as_fn_error $? "OpenSSL library not found." "$LINENO" 5 | ||
11977 | |||
11978 | fi | ||
11979 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11980 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11981 | fi | ||
11982 | |||
11983 | |||
11984 | |||
11985 | # Check whether --with-openssl-header-check was given. | ||
11986 | if test "${with_openssl_header_check+set}" = set; then : | ||
11987 | withval=$with_openssl_header_check; if test "x$withval" = "xno" ; then | ||
11988 | openssl_check_nonfatal=1 | ||
11989 | fi | ||
11990 | |||
11991 | |||
11992 | fi | ||
11993 | |||
11994 | |||
11995 | # Sanity check OpenSSL headers | ||
11996 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's headers match the library" >&5 | ||
11997 | $as_echo_n "checking whether OpenSSL's headers match the library... " >&6; } | ||
11998 | if test "$cross_compiling" = yes; then : | ||
11999 | |||
12000 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
12001 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
12002 | |||
12003 | |||
12004 | else | ||
12005 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12006 | /* end confdefs.h. */ | ||
12007 | |||
12008 | #include <string.h> | ||
12009 | #include <openssl/opensslv.h> | ||
12010 | |||
12011 | int | ||
12012 | main () | ||
12013 | { | ||
12014 | |||
12015 | exit(SSLeay() == OPENSSL_VERSION_NUMBER ? 0 : 1); | ||
12016 | |||
12017 | ; | ||
12018 | return 0; | ||
12019 | } | ||
12020 | _ACEOF | ||
12021 | if ac_fn_c_try_run "$LINENO"; then : | ||
12022 | |||
12023 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12024 | $as_echo "yes" >&6; } | ||
12025 | |||
12026 | else | ||
12027 | |||
12028 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12029 | $as_echo "no" >&6; } | ||
12030 | if test "x$openssl_check_nonfatal" = "x"; then | ||
12031 | as_fn_error $? "Your OpenSSL headers do not match your | ||
12032 | library. Check config.log for details. | ||
12033 | If you are sure your installation is consistent, you can disable the check | ||
12034 | by running \"./configure --without-openssl-header-check\". | ||
12035 | Also see contrib/findssl.sh for help identifying header/library mismatches. | ||
12036 | " "$LINENO" 5 | ||
12037 | else | ||
12038 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Your OpenSSL headers do not match your | ||
12039 | library. Check config.log for details. | ||
12040 | Also see contrib/findssl.sh for help identifying header/library mismatches." >&5 | ||
12041 | $as_echo "$as_me: WARNING: Your OpenSSL headers do not match your | ||
12042 | library. Check config.log for details. | ||
12043 | Also see contrib/findssl.sh for help identifying header/library mismatches." >&2;} | ||
12044 | fi | ||
12045 | |||
12046 | fi | ||
12047 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12048 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12049 | fi | ||
12050 | |||
12051 | |||
12052 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL functions will link" >&5 | ||
12053 | $as_echo_n "checking if programs using OpenSSL functions will link... " >&6; } | ||
12054 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12055 | /* end confdefs.h. */ | ||
12056 | #include <openssl/evp.h> | ||
12057 | int | ||
12058 | main () | ||
12059 | { | ||
12060 | SSLeay_add_all_algorithms(); | ||
12061 | ; | ||
12062 | return 0; | ||
12063 | } | ||
12064 | _ACEOF | ||
12065 | if ac_fn_c_try_link "$LINENO"; then : | ||
12066 | |||
12067 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12068 | $as_echo "yes" >&6; } | ||
12069 | |||
12070 | else | ||
12071 | |||
12072 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12073 | $as_echo "no" >&6; } | ||
12074 | saved_LIBS="$LIBS" | ||
12075 | LIBS="$LIBS -ldl" | ||
12076 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL need -ldl" >&5 | ||
12077 | $as_echo_n "checking if programs using OpenSSL need -ldl... " >&6; } | ||
12078 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12079 | /* end confdefs.h. */ | ||
12080 | #include <openssl/evp.h> | ||
12081 | int | ||
12082 | main () | ||
12083 | { | ||
12084 | SSLeay_add_all_algorithms(); | ||
12085 | ; | ||
12086 | return 0; | ||
12087 | } | ||
12088 | _ACEOF | ||
12089 | if ac_fn_c_try_link "$LINENO"; then : | ||
12090 | |||
12091 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12092 | $as_echo "yes" >&6; } | ||
12093 | |||
12094 | else | ||
12095 | |||
12096 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12097 | $as_echo "no" >&6; } | ||
12098 | LIBS="$saved_LIBS" | ||
12099 | |||
12100 | |||
12101 | fi | ||
12102 | rm -f core conftest.err conftest.$ac_objext \ | ||
12103 | conftest$ac_exeext conftest.$ac_ext | ||
12104 | |||
12105 | |||
12106 | fi | ||
12107 | rm -f core conftest.err conftest.$ac_objext \ | ||
12108 | conftest$ac_exeext conftest.$ac_ext | ||
12109 | |||
12110 | for ac_func in \ | ||
12111 | BN_is_prime_ex \ | ||
12112 | DSA_generate_parameters_ex \ | ||
12113 | EVP_DigestInit_ex \ | ||
12114 | EVP_DigestFinal_ex \ | ||
12115 | EVP_MD_CTX_init \ | ||
12116 | EVP_MD_CTX_cleanup \ | ||
12117 | EVP_MD_CTX_copy_ex \ | ||
12118 | HMAC_CTX_init \ | ||
12119 | RSA_generate_key_ex \ | ||
12120 | RSA_get_default_method \ | ||
12121 | |||
12122 | do : | ||
12123 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12124 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12125 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12126 | cat >>confdefs.h <<_ACEOF | ||
12127 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12128 | _ACEOF | ||
12129 | |||
12130 | fi | ||
12131 | done | ||
12132 | |||
12133 | |||
12134 | |||
12135 | # Check whether --with-ssl-engine was given. | ||
12136 | if test "${with_ssl_engine+set}" = set; then : | ||
12137 | withval=$with_ssl_engine; if test "x$withval" != "xno" ; then | ||
12138 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL ENGINE support" >&5 | ||
12139 | $as_echo_n "checking for OpenSSL ENGINE support... " >&6; } | ||
12140 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12141 | /* end confdefs.h. */ | ||
12142 | |||
12143 | #include <openssl/engine.h> | ||
12144 | |||
12145 | int | ||
12146 | main () | ||
12147 | { | ||
12148 | |||
12149 | ENGINE_load_builtin_engines(); | ||
12150 | ENGINE_register_all_complete(); | ||
12151 | |||
12152 | ; | ||
12153 | return 0; | ||
12154 | } | ||
12155 | _ACEOF | ||
12156 | if ac_fn_c_try_compile "$LINENO"; then : | ||
12157 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12158 | $as_echo "yes" >&6; } | ||
12159 | |||
12160 | $as_echo "#define USE_OPENSSL_ENGINE 1" >>confdefs.h | ||
12161 | |||
12162 | |||
12163 | else | ||
12164 | as_fn_error $? "OpenSSL ENGINE support not found" "$LINENO" 5 | ||
12165 | |||
12166 | fi | ||
12167 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
12168 | fi | ||
12169 | |||
12170 | fi | ||
12171 | |||
12172 | |||
12173 | # Check for OpenSSL without EVP_aes_{192,256}_cbc | ||
12174 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has crippled AES support" >&5 | ||
12175 | $as_echo_n "checking whether OpenSSL has crippled AES support... " >&6; } | ||
12176 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12177 | /* end confdefs.h. */ | ||
12178 | |||
12179 | #include <string.h> | ||
12180 | #include <openssl/evp.h> | ||
12181 | |||
12182 | int | ||
12183 | main () | ||
12184 | { | ||
12185 | |||
12186 | exit(EVP_aes_192_cbc() == NULL || EVP_aes_256_cbc() == NULL); | ||
12187 | |||
12188 | ; | ||
12189 | return 0; | ||
12190 | } | ||
12191 | _ACEOF | ||
12192 | if ac_fn_c_try_link "$LINENO"; then : | ||
12193 | |||
12194 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12195 | $as_echo "no" >&6; } | ||
12196 | |||
12197 | else | ||
12198 | |||
12199 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12200 | $as_echo "yes" >&6; } | ||
12201 | |||
12202 | $as_echo "#define OPENSSL_LOBOTOMISED_AES 1" >>confdefs.h | ||
12203 | |||
12204 | |||
12205 | |||
12206 | fi | ||
12207 | rm -f core conftest.err conftest.$ac_objext \ | ||
12208 | conftest$ac_exeext conftest.$ac_ext | ||
12209 | |||
12210 | # Check for OpenSSL with EVP_aes_*ctr | ||
12211 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES CTR via EVP" >&5 | ||
12212 | $as_echo_n "checking whether OpenSSL has AES CTR via EVP... " >&6; } | ||
12213 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12214 | /* end confdefs.h. */ | ||
12215 | |||
12216 | #include <string.h> | ||
12217 | #include <openssl/evp.h> | ||
12218 | |||
12219 | int | ||
12220 | main () | ||
12221 | { | ||
12222 | |||
12223 | exit(EVP_aes_128_ctr() == NULL || | ||
12224 | EVP_aes_192_cbc() == NULL || | ||
12225 | EVP_aes_256_cbc() == NULL); | ||
12226 | |||
12227 | ; | ||
12228 | return 0; | ||
12229 | } | ||
12230 | _ACEOF | ||
12231 | if ac_fn_c_try_link "$LINENO"; then : | ||
12232 | |||
12233 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12234 | $as_echo "yes" >&6; } | ||
12235 | |||
12236 | $as_echo "#define OPENSSL_HAVE_EVPCTR 1" >>confdefs.h | ||
12237 | |||
12238 | |||
12239 | else | ||
12240 | |||
12241 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12242 | $as_echo "no" >&6; } | ||
12243 | |||
12244 | |||
12245 | fi | ||
12246 | rm -f core conftest.err conftest.$ac_objext \ | ||
12247 | conftest$ac_exeext conftest.$ac_ext | ||
12248 | |||
12249 | # Check for OpenSSL with EVP_aes_*gcm | ||
12250 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES GCM via EVP" >&5 | ||
12251 | $as_echo_n "checking whether OpenSSL has AES GCM via EVP... " >&6; } | ||
12252 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12253 | /* end confdefs.h. */ | ||
12254 | |||
12255 | #include <string.h> | ||
12256 | #include <openssl/evp.h> | ||
12257 | |||
12258 | int | ||
12259 | main () | ||
12260 | { | ||
12261 | |||
12262 | exit(EVP_aes_128_gcm() == NULL || | ||
12263 | EVP_aes_256_gcm() == NULL || | ||
12264 | EVP_CTRL_GCM_SET_IV_FIXED == 0 || | ||
12265 | EVP_CTRL_GCM_IV_GEN == 0 || | ||
12266 | EVP_CTRL_GCM_SET_TAG == 0 || | ||
12267 | EVP_CTRL_GCM_GET_TAG == 0 || | ||
12268 | EVP_CIPHER_CTX_ctrl(NULL, 0, 0, NULL) == 0); | ||
12269 | |||
12270 | ; | ||
12271 | return 0; | ||
12272 | } | ||
12273 | _ACEOF | ||
12274 | if ac_fn_c_try_link "$LINENO"; then : | ||
12275 | |||
12276 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12277 | $as_echo "yes" >&6; } | ||
12278 | |||
12279 | $as_echo "#define OPENSSL_HAVE_EVPGCM 1" >>confdefs.h | ||
12280 | |||
12281 | |||
12282 | else | ||
12283 | |||
12284 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12285 | $as_echo "no" >&6; } | ||
12286 | unsupported_algorithms="$unsupported_cipers \ | ||
12287 | aes128-gcm@openssh.com aes256-gcm@openssh.com" | ||
12288 | |||
12289 | |||
12290 | fi | ||
12291 | rm -f core conftest.err conftest.$ac_objext \ | ||
12292 | conftest$ac_exeext conftest.$ac_ext | ||
12293 | |||
12294 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_ctrl" >&5 | ||
12295 | $as_echo_n "checking for library containing EVP_CIPHER_CTX_ctrl... " >&6; } | ||
12296 | if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then : | ||
12297 | $as_echo_n "(cached) " >&6 | ||
12298 | else | ||
12299 | ac_func_search_save_LIBS=$LIBS | ||
12300 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12301 | /* end confdefs.h. */ | ||
12302 | |||
12303 | /* Override any GCC internal prototype to avoid an error. | ||
12304 | Use char because int might match the return type of a GCC | ||
12305 | builtin and then its argument prototype would still apply. */ | ||
12306 | #ifdef __cplusplus | ||
12307 | extern "C" | ||
12308 | #endif | ||
12309 | char EVP_CIPHER_CTX_ctrl (); | ||
12310 | int | ||
12311 | main () | ||
12312 | { | ||
12313 | return EVP_CIPHER_CTX_ctrl (); | ||
12314 | ; | ||
12315 | return 0; | ||
12316 | } | ||
12317 | _ACEOF | ||
12318 | for ac_lib in '' crypto; do | ||
12319 | if test -z "$ac_lib"; then | ||
12320 | ac_res="none required" | ||
12321 | else | ||
12322 | ac_res=-l$ac_lib | ||
12323 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
12324 | fi | ||
12325 | if ac_fn_c_try_link "$LINENO"; then : | ||
12326 | ac_cv_search_EVP_CIPHER_CTX_ctrl=$ac_res | ||
12327 | fi | ||
12328 | rm -f core conftest.err conftest.$ac_objext \ | ||
12329 | conftest$ac_exeext | ||
12330 | if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then : | ||
12331 | break | ||
12332 | fi | ||
12333 | done | ||
12334 | if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then : | ||
12335 | |||
12336 | else | ||
12337 | ac_cv_search_EVP_CIPHER_CTX_ctrl=no | ||
12338 | fi | ||
12339 | rm conftest.$ac_ext | ||
12340 | LIBS=$ac_func_search_save_LIBS | ||
12341 | fi | ||
12342 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_ctrl" >&5 | ||
12343 | $as_echo "$ac_cv_search_EVP_CIPHER_CTX_ctrl" >&6; } | ||
12344 | ac_res=$ac_cv_search_EVP_CIPHER_CTX_ctrl | ||
12345 | if test "$ac_res" != no; then : | ||
12346 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
12347 | |||
12348 | $as_echo "#define HAVE_EVP_CIPHER_CTX_CTRL 1" >>confdefs.h | ||
12349 | |||
12350 | fi | ||
12351 | |||
12352 | |||
12353 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if EVP_DigestUpdate returns an int" >&5 | ||
12354 | $as_echo_n "checking if EVP_DigestUpdate returns an int... " >&6; } | ||
12355 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12356 | /* end confdefs.h. */ | ||
12357 | |||
12358 | #include <string.h> | ||
12359 | #include <openssl/evp.h> | ||
12360 | |||
12361 | int | ||
12362 | main () | ||
12363 | { | ||
12364 | |||
12365 | if(EVP_DigestUpdate(NULL, NULL,0)) | ||
12366 | exit(0); | ||
12367 | |||
12368 | ; | ||
12369 | return 0; | ||
12370 | } | ||
12371 | _ACEOF | ||
12372 | if ac_fn_c_try_link "$LINENO"; then : | ||
12373 | |||
12374 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12375 | $as_echo "yes" >&6; } | ||
12376 | |||
12377 | else | ||
12378 | |||
12379 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12380 | $as_echo "no" >&6; } | ||
12381 | |||
12382 | $as_echo "#define OPENSSL_EVP_DIGESTUPDATE_VOID 1" >>confdefs.h | ||
12383 | |||
12384 | |||
12385 | |||
12386 | fi | ||
12387 | rm -f core conftest.err conftest.$ac_objext \ | ||
12388 | conftest$ac_exeext conftest.$ac_ext | ||
12389 | |||
12390 | # Some systems want crypt() from libcrypt, *not* the version in OpenSSL, | ||
12391 | # because the system crypt() is more featureful. | ||
12392 | if test "x$check_for_libcrypt_before" = "x1"; then | ||
12393 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5 | ||
12394 | $as_echo_n "checking for crypt in -lcrypt... " >&6; } | ||
12395 | if ${ac_cv_lib_crypt_crypt+:} false; then : | ||
12396 | $as_echo_n "(cached) " >&6 | ||
12397 | else | ||
12398 | ac_check_lib_save_LIBS=$LIBS | ||
12399 | LIBS="-lcrypt $LIBS" | ||
12400 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12401 | /* end confdefs.h. */ | ||
12402 | |||
12403 | /* Override any GCC internal prototype to avoid an error. | ||
12404 | Use char because int might match the return type of a GCC | ||
12405 | builtin and then its argument prototype would still apply. */ | ||
12406 | #ifdef __cplusplus | ||
12407 | extern "C" | ||
12408 | #endif | ||
12409 | char crypt (); | ||
12410 | int | ||
12411 | main () | ||
12412 | { | ||
12413 | return crypt (); | ||
12414 | ; | ||
12415 | return 0; | ||
12416 | } | ||
12417 | _ACEOF | ||
12418 | if ac_fn_c_try_link "$LINENO"; then : | ||
12419 | ac_cv_lib_crypt_crypt=yes | ||
12420 | else | ||
12421 | ac_cv_lib_crypt_crypt=no | ||
12422 | fi | ||
12423 | rm -f core conftest.err conftest.$ac_objext \ | ||
12424 | conftest$ac_exeext conftest.$ac_ext | ||
12425 | LIBS=$ac_check_lib_save_LIBS | ||
12426 | fi | ||
12427 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5 | ||
12428 | $as_echo "$ac_cv_lib_crypt_crypt" >&6; } | ||
12429 | if test "x$ac_cv_lib_crypt_crypt" = xyes; then : | ||
12430 | cat >>confdefs.h <<_ACEOF | ||
12431 | #define HAVE_LIBCRYPT 1 | ||
12432 | _ACEOF | ||
12433 | |||
12434 | LIBS="-lcrypt $LIBS" | ||
12435 | |||
12436 | fi | ||
12437 | |||
12438 | fi | ||
12439 | |||
12440 | # Some Linux systems (Slackware) need crypt() from libcrypt, *not* the | ||
12441 | # version in OpenSSL. | ||
12442 | if test "x$check_for_libcrypt_later" = "x1"; then | ||
12443 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5 | ||
12444 | $as_echo_n "checking for crypt in -lcrypt... " >&6; } | ||
12445 | if ${ac_cv_lib_crypt_crypt+:} false; then : | ||
12446 | $as_echo_n "(cached) " >&6 | ||
12447 | else | ||
12448 | ac_check_lib_save_LIBS=$LIBS | ||
12449 | LIBS="-lcrypt $LIBS" | ||
12450 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12451 | /* end confdefs.h. */ | ||
12452 | |||
12453 | /* Override any GCC internal prototype to avoid an error. | ||
12454 | Use char because int might match the return type of a GCC | ||
12455 | builtin and then its argument prototype would still apply. */ | ||
12456 | #ifdef __cplusplus | ||
12457 | extern "C" | ||
12458 | #endif | ||
12459 | char crypt (); | ||
12460 | int | ||
12461 | main () | ||
12462 | { | ||
12463 | return crypt (); | ||
12464 | ; | ||
12465 | return 0; | ||
12466 | } | ||
12467 | _ACEOF | ||
12468 | if ac_fn_c_try_link "$LINENO"; then : | ||
12469 | ac_cv_lib_crypt_crypt=yes | ||
12470 | else | ||
12471 | ac_cv_lib_crypt_crypt=no | ||
12472 | fi | ||
12473 | rm -f core conftest.err conftest.$ac_objext \ | ||
12474 | conftest$ac_exeext conftest.$ac_ext | ||
12475 | LIBS=$ac_check_lib_save_LIBS | ||
12476 | fi | ||
12477 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5 | ||
12478 | $as_echo "$ac_cv_lib_crypt_crypt" >&6; } | ||
12479 | if test "x$ac_cv_lib_crypt_crypt" = xyes; then : | ||
12480 | LIBS="$LIBS -lcrypt" | ||
12481 | fi | ||
12482 | |||
12483 | fi | ||
12484 | for ac_func in crypt DES_crypt | ||
12485 | do : | ||
12486 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12487 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12488 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12489 | cat >>confdefs.h <<_ACEOF | ||
12490 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12491 | _ACEOF | ||
12492 | |||
12493 | fi | ||
12494 | done | ||
12495 | |||
12496 | |||
12497 | # Search for SHA256 support in libc and/or OpenSSL | ||
12498 | for ac_func in SHA256_Update EVP_sha256 | ||
12499 | do : | ||
12500 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12501 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12502 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12503 | cat >>confdefs.h <<_ACEOF | ||
12504 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12505 | _ACEOF | ||
12506 | |||
12507 | else | ||
12508 | unsupported_algorithms="$unsupported_algorithms \ | ||
12509 | hmac-sha2-256 hmac-sha2-512 \ | ||
12510 | diffie-hellman-group-exchange-sha256 \ | ||
12511 | hmac-sha2-256-etm@openssh.com hmac-sha2-512-etm@openssh.com" | ||
12512 | |||
12513 | |||
12514 | fi | ||
12515 | done | ||
12516 | |||
12517 | |||
12518 | # Check complete ECC support in OpenSSL | ||
12519 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_X9_62_prime256v1" >&5 | ||
12520 | $as_echo_n "checking whether OpenSSL has NID_X9_62_prime256v1... " >&6; } | ||
12521 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12522 | /* end confdefs.h. */ | ||
12523 | |||
12524 | #include <openssl/ec.h> | ||
12525 | #include <openssl/ecdh.h> | ||
12526 | #include <openssl/ecdsa.h> | ||
12527 | #include <openssl/evp.h> | ||
12528 | #include <openssl/objects.h> | ||
12529 | #include <openssl/opensslv.h> | ||
12530 | #if OPENSSL_VERSION_NUMBER < 0x0090807f /* 0.9.8g */ | ||
12531 | # error "OpenSSL < 0.9.8g has unreliable ECC code" | ||
12532 | #endif | ||
12533 | |||
12534 | int | ||
12535 | main () | ||
12536 | { | ||
12537 | |||
12538 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1); | ||
12539 | const EVP_MD *m = EVP_sha256(); /* We need this too */ | ||
12540 | |||
12541 | ; | ||
12542 | return 0; | ||
12543 | } | ||
12544 | _ACEOF | ||
12545 | if ac_fn_c_try_link "$LINENO"; then : | ||
12546 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12547 | $as_echo "yes" >&6; } | ||
12548 | enable_nistp256=1 | ||
12549 | else | ||
12550 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12551 | $as_echo "no" >&6; } | ||
12552 | |||
12553 | fi | ||
12554 | rm -f core conftest.err conftest.$ac_objext \ | ||
12555 | conftest$ac_exeext conftest.$ac_ext | ||
12556 | |||
12557 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp384r1" >&5 | ||
12558 | $as_echo_n "checking whether OpenSSL has NID_secp384r1... " >&6; } | ||
12559 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12560 | /* end confdefs.h. */ | ||
12561 | |||
12562 | #include <openssl/ec.h> | ||
12563 | #include <openssl/ecdh.h> | ||
12564 | #include <openssl/ecdsa.h> | ||
12565 | #include <openssl/evp.h> | ||
12566 | #include <openssl/objects.h> | ||
12567 | #include <openssl/opensslv.h> | ||
12568 | #if OPENSSL_VERSION_NUMBER < 0x0090807f /* 0.9.8g */ | ||
12569 | # error "OpenSSL < 0.9.8g has unreliable ECC code" | ||
12570 | #endif | ||
12571 | |||
12572 | int | ||
12573 | main () | ||
12574 | { | ||
12575 | |||
12576 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp384r1); | ||
12577 | const EVP_MD *m = EVP_sha384(); /* We need this too */ | ||
12578 | |||
12579 | ; | ||
12580 | return 0; | ||
12581 | } | ||
12582 | _ACEOF | ||
12583 | if ac_fn_c_try_link "$LINENO"; then : | ||
12584 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12585 | $as_echo "yes" >&6; } | ||
12586 | enable_nistp384=1 | ||
12587 | else | ||
12588 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12589 | $as_echo "no" >&6; } | ||
12590 | |||
12591 | fi | ||
12592 | rm -f core conftest.err conftest.$ac_objext \ | ||
12593 | conftest$ac_exeext conftest.$ac_ext | ||
12594 | |||
12595 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp521r1" >&5 | ||
12596 | $as_echo_n "checking whether OpenSSL has NID_secp521r1... " >&6; } | ||
12597 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12598 | /* end confdefs.h. */ | ||
12599 | |||
12600 | #include <openssl/ec.h> | ||
12601 | #include <openssl/ecdh.h> | ||
12602 | #include <openssl/ecdsa.h> | ||
12603 | #include <openssl/evp.h> | ||
12604 | #include <openssl/objects.h> | ||
12605 | #include <openssl/opensslv.h> | ||
12606 | #if OPENSSL_VERSION_NUMBER < 0x0090807f /* 0.9.8g */ | ||
12607 | # error "OpenSSL < 0.9.8g has unreliable ECC code" | ||
12608 | #endif | ||
12609 | |||
12610 | int | ||
12611 | main () | ||
12612 | { | ||
12613 | |||
12614 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1); | ||
12615 | const EVP_MD *m = EVP_sha512(); /* We need this too */ | ||
12616 | |||
12617 | ; | ||
12618 | return 0; | ||
12619 | } | ||
12620 | _ACEOF | ||
12621 | if ac_fn_c_try_link "$LINENO"; then : | ||
12622 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12623 | $as_echo "yes" >&6; } | ||
12624 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OpenSSL's NID_secp521r1 is functional" >&5 | ||
12625 | $as_echo_n "checking if OpenSSL's NID_secp521r1 is functional... " >&6; } | ||
12626 | if test "$cross_compiling" = yes; then : | ||
12627 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross-compiling: assuming yes" >&5 | ||
12628 | $as_echo "$as_me: WARNING: cross-compiling: assuming yes" >&2;} | ||
12629 | enable_nistp521=1 | ||
12630 | |||
12631 | else | ||
12632 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12633 | /* end confdefs.h. */ | ||
12634 | |||
12635 | #include <openssl/ec.h> | ||
12636 | #include <openssl/ecdh.h> | ||
12637 | #include <openssl/ecdsa.h> | ||
12638 | #include <openssl/evp.h> | ||
12639 | #include <openssl/objects.h> | ||
12640 | #include <openssl/opensslv.h> | ||
12641 | |||
12642 | int | ||
12643 | main () | ||
12644 | { | ||
12645 | |||
12646 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1); | ||
12647 | const EVP_MD *m = EVP_sha512(); /* We need this too */ | ||
12648 | exit(e == NULL || m == NULL); | ||
12649 | |||
12650 | ; | ||
12651 | return 0; | ||
12652 | } | ||
12653 | _ACEOF | ||
12654 | if ac_fn_c_try_run "$LINENO"; then : | ||
12655 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12656 | $as_echo "yes" >&6; } | ||
12657 | enable_nistp521=1 | ||
12658 | else | ||
12659 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12660 | $as_echo "no" >&6; } | ||
12661 | fi | ||
12662 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12663 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12664 | fi | ||
12665 | |||
12666 | else | ||
12667 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12668 | $as_echo "no" >&6; } | ||
12669 | |||
12670 | fi | ||
12671 | rm -f core conftest.err conftest.$ac_objext \ | ||
12672 | conftest$ac_exeext conftest.$ac_ext | ||
12673 | |||
12674 | COMMENT_OUT_ECC="#no ecc#" | ||
12675 | TEST_SSH_ECC=no | ||
12676 | |||
12677 | if test x$enable_nistp256 = x1 || test x$enable_nistp384 = x1 || \ | ||
12678 | test x$enable_nistp521 = x1; then | ||
12679 | |||
12680 | $as_echo "#define OPENSSL_HAS_ECC 1" >>confdefs.h | ||
12681 | |||
12682 | fi | ||
12683 | if test x$enable_nistp256 = x1; then | ||
12684 | |||
12685 | $as_echo "#define OPENSSL_HAS_NISTP256 1" >>confdefs.h | ||
12686 | |||
12687 | TEST_SSH_ECC=yes | ||
12688 | COMMENT_OUT_ECC="" | ||
12689 | else | ||
12690 | unsupported_algorithms="$unsupported_algorithms ecdsa-sha2-nistp256 \ | ||
12691 | ecdh-sha2-nistp256 ecdsa-sha2-nistp256-cert-v01@openssh.com" | ||
12692 | fi | ||
12693 | if test x$enable_nistp384 = x1; then | ||
12694 | |||
12695 | $as_echo "#define OPENSSL_HAS_NISTP384 1" >>confdefs.h | ||
12696 | |||
12697 | TEST_SSH_ECC=yes | ||
12698 | COMMENT_OUT_ECC="" | ||
12699 | else | ||
12700 | unsupported_algorithms="$unsupported_algorithms ecdsa-sha2-nistp384 \ | ||
12701 | ecdh-sha2-nistp384 ecdsa-sha2-nistp384-cert-v01@openssh.com" | ||
12702 | fi | ||
12703 | if test x$enable_nistp521 = x1; then | ||
12704 | |||
12705 | $as_echo "#define OPENSSL_HAS_NISTP521 1" >>confdefs.h | ||
12706 | |||
12707 | TEST_SSH_ECC=yes | ||
12708 | COMMENT_OUT_ECC="" | ||
12709 | else | ||
12710 | unsupported_algorithms="$unsupported_algorithms ecdh-sha2-nistp521 \ | ||
12711 | ecdsa-sha2-nistp521 ecdsa-sha2-nistp521-cert-v01@openssh.com" | ||
12712 | fi | ||
12713 | |||
12714 | |||
12715 | |||
12716 | |||
12717 | saved_LIBS="$LIBS" | ||
12718 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ia_openinfo in -liaf" >&5 | ||
12719 | $as_echo_n "checking for ia_openinfo in -liaf... " >&6; } | ||
12720 | if ${ac_cv_lib_iaf_ia_openinfo+:} false; then : | ||
12721 | $as_echo_n "(cached) " >&6 | ||
12722 | else | ||
12723 | ac_check_lib_save_LIBS=$LIBS | ||
12724 | LIBS="-liaf $LIBS" | ||
12725 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12726 | /* end confdefs.h. */ | ||
12727 | |||
12728 | /* Override any GCC internal prototype to avoid an error. | ||
12729 | Use char because int might match the return type of a GCC | ||
12730 | builtin and then its argument prototype would still apply. */ | ||
12731 | #ifdef __cplusplus | ||
12732 | extern "C" | ||
12733 | #endif | ||
12734 | char ia_openinfo (); | ||
12735 | int | ||
12736 | main () | ||
12737 | { | ||
12738 | return ia_openinfo (); | ||
12739 | ; | ||
12740 | return 0; | ||
12741 | } | ||
12742 | _ACEOF | ||
12743 | if ac_fn_c_try_link "$LINENO"; then : | ||
12744 | ac_cv_lib_iaf_ia_openinfo=yes | ||
12745 | else | ||
12746 | ac_cv_lib_iaf_ia_openinfo=no | ||
12747 | fi | ||
12748 | rm -f core conftest.err conftest.$ac_objext \ | ||
12749 | conftest$ac_exeext conftest.$ac_ext | ||
12750 | LIBS=$ac_check_lib_save_LIBS | ||
12751 | fi | ||
12752 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iaf_ia_openinfo" >&5 | ||
12753 | $as_echo "$ac_cv_lib_iaf_ia_openinfo" >&6; } | ||
12754 | if test "x$ac_cv_lib_iaf_ia_openinfo" = xyes; then : | ||
12755 | |||
12756 | LIBS="$LIBS -liaf" | ||
12757 | for ac_func in set_id | ||
12758 | do : | ||
12759 | ac_fn_c_check_func "$LINENO" "set_id" "ac_cv_func_set_id" | ||
12760 | if test "x$ac_cv_func_set_id" = xyes; then : | ||
12761 | cat >>confdefs.h <<_ACEOF | ||
12762 | #define HAVE_SET_ID 1 | ||
12763 | _ACEOF | ||
12764 | SSHDLIBS="$SSHDLIBS -liaf" | ||
12765 | |||
12766 | $as_echo "#define HAVE_LIBIAF 1" >>confdefs.h | ||
12767 | |||
12768 | |||
12769 | fi | ||
12770 | done | ||
12771 | |||
12772 | |||
12773 | fi | ||
12774 | |||
12775 | LIBS="$saved_LIBS" | ||
12776 | |||
12777 | ### Configure cryptographic random number support | ||
12778 | |||
12779 | # Check wheter OpenSSL seeds itself | ||
12780 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's PRNG is internally seeded" >&5 | ||
12781 | $as_echo_n "checking whether OpenSSL's PRNG is internally seeded... " >&6; } | ||
12782 | if test "$cross_compiling" = yes; then : | ||
12783 | |||
12784 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
12785 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
12786 | # This is safe, since we will fatal() at runtime if | ||
12787 | # OpenSSL is not seeded correctly. | ||
12788 | OPENSSL_SEEDS_ITSELF=yes | ||
12789 | |||
12790 | |||
12791 | else | ||
12792 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12793 | /* end confdefs.h. */ | ||
12794 | |||
12795 | #include <string.h> | ||
12796 | #include <openssl/rand.h> | ||
12797 | |||
12798 | int | ||
12799 | main () | ||
12800 | { | ||
12801 | |||
12802 | exit(RAND_status() == 1 ? 0 : 1); | ||
12803 | |||
12804 | ; | ||
12805 | return 0; | ||
12806 | } | ||
12807 | _ACEOF | ||
12808 | if ac_fn_c_try_run "$LINENO"; then : | ||
12809 | |||
12810 | OPENSSL_SEEDS_ITSELF=yes | ||
12811 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12812 | $as_echo "yes" >&6; } | ||
12813 | |||
12814 | else | ||
12815 | |||
12816 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12817 | $as_echo "no" >&6; } | ||
12818 | |||
12819 | fi | ||
12820 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12821 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12822 | fi | ||
12823 | |||
12824 | |||
12825 | # PRNGD TCP socket | ||
12826 | |||
12827 | # Check whether --with-prngd-port was given. | ||
12828 | if test "${with_prngd_port+set}" = set; then : | ||
12829 | withval=$with_prngd_port; | ||
12830 | case "$withval" in | ||
12831 | no) | ||
12832 | withval="" | ||
12833 | ;; | ||
12834 | [0-9]*) | ||
12835 | ;; | ||
12836 | *) | ||
12837 | as_fn_error $? "You must specify a numeric port number for --with-prngd-port" "$LINENO" 5 | ||
12838 | ;; | ||
12839 | esac | ||
12840 | if test ! -z "$withval" ; then | ||
12841 | PRNGD_PORT="$withval" | ||
12842 | |||
12843 | cat >>confdefs.h <<_ACEOF | ||
12844 | #define PRNGD_PORT $PRNGD_PORT | ||
12845 | _ACEOF | ||
12846 | |||
12847 | fi | ||
12848 | |||
12849 | |||
12850 | fi | ||
12851 | |||
12852 | |||
12853 | # PRNGD Unix domain socket | ||
12854 | |||
12855 | # Check whether --with-prngd-socket was given. | ||
12856 | if test "${with_prngd_socket+set}" = set; then : | ||
12857 | withval=$with_prngd_socket; | ||
12858 | case "$withval" in | ||
12859 | yes) | ||
12860 | withval="/var/run/egd-pool" | ||
12861 | ;; | ||
12862 | no) | ||
12863 | withval="" | ||
12864 | ;; | ||
12865 | /*) | ||
12866 | ;; | ||
12867 | *) | ||
12868 | as_fn_error $? "You must specify an absolute path to the entropy socket" "$LINENO" 5 | ||
12869 | ;; | ||
12870 | esac | ||
12871 | |||
12872 | if test ! -z "$withval" ; then | ||
12873 | if test ! -z "$PRNGD_PORT" ; then | ||
12874 | as_fn_error $? "You may not specify both a PRNGD/EGD port and socket" "$LINENO" 5 | ||
12875 | fi | ||
12876 | if test ! -r "$withval" ; then | ||
12877 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Entropy socket is not readable" >&5 | ||
12878 | $as_echo "$as_me: WARNING: Entropy socket is not readable" >&2;} | ||
12879 | fi | ||
12880 | PRNGD_SOCKET="$withval" | ||
12881 | |||
12882 | cat >>confdefs.h <<_ACEOF | ||
12883 | #define PRNGD_SOCKET "$PRNGD_SOCKET" | ||
12884 | _ACEOF | ||
12885 | |||
12886 | fi | ||
12887 | |||
12888 | else | ||
12889 | |||
12890 | # Check for existing socket only if we don't have a random device already | ||
12891 | if test "x$OPENSSL_SEEDS_ITSELF" != "xyes" ; then | ||
12892 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PRNGD/EGD socket" >&5 | ||
12893 | $as_echo_n "checking for PRNGD/EGD socket... " >&6; } | ||
12894 | # Insert other locations here | ||
12895 | for sock in /var/run/egd-pool /dev/egd-pool /etc/entropy; do | ||
12896 | if test -r $sock && $TEST_MINUS_S_SH -c "test -S $sock -o -p $sock" ; then | ||
12897 | PRNGD_SOCKET="$sock" | ||
12898 | cat >>confdefs.h <<_ACEOF | ||
12899 | #define PRNGD_SOCKET "$PRNGD_SOCKET" | ||
12900 | _ACEOF | ||
12901 | |||
12902 | break; | ||
12903 | fi | ||
12904 | done | ||
12905 | if test ! -z "$PRNGD_SOCKET" ; then | ||
12906 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PRNGD_SOCKET" >&5 | ||
12907 | $as_echo "$PRNGD_SOCKET" >&6; } | ||
12908 | else | ||
12909 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
12910 | $as_echo "not found" >&6; } | ||
12911 | fi | ||
12912 | fi | ||
12913 | |||
12914 | |||
12915 | fi | ||
12916 | |||
12917 | |||
12918 | # Which randomness source do we use? | ||
12919 | if test ! -z "$PRNGD_PORT" ; then | ||
12920 | RAND_MSG="PRNGd port $PRNGD_PORT" | ||
12921 | elif test ! -z "$PRNGD_SOCKET" ; then | ||
12922 | RAND_MSG="PRNGd socket $PRNGD_SOCKET" | ||
12923 | elif test ! -z "$OPENSSL_SEEDS_ITSELF" ; then | ||
12924 | |||
12925 | $as_echo "#define OPENSSL_PRNG_ONLY 1" >>confdefs.h | ||
12926 | |||
12927 | RAND_MSG="OpenSSL internal ONLY" | ||
12928 | else | ||
12929 | as_fn_error $? "OpenSSH has no source of random numbers. Please configure OpenSSL with an entropy source or re-run configure using one of the --with-prngd-port or --with-prngd-socket options" "$LINENO" 5 | ||
12930 | fi | ||
12931 | |||
12932 | # Check for PAM libs | ||
12933 | PAM_MSG="no" | ||
12934 | |||
12935 | # Check whether --with-pam was given. | ||
12936 | if test "${with_pam+set}" = set; then : | ||
12937 | withval=$with_pam; | ||
12938 | if test "x$withval" != "xno" ; then | ||
12939 | if test "x$ac_cv_header_security_pam_appl_h" != "xyes" && \ | ||
12940 | test "x$ac_cv_header_pam_pam_appl_h" != "xyes" ; then | ||
12941 | as_fn_error $? "PAM headers not found" "$LINENO" 5 | ||
12942 | fi | ||
12943 | |||
12944 | saved_LIBS="$LIBS" | ||
12945 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 | ||
12946 | $as_echo_n "checking for dlopen in -ldl... " >&6; } | ||
12947 | if ${ac_cv_lib_dl_dlopen+:} false; then : | ||
12948 | $as_echo_n "(cached) " >&6 | ||
12949 | else | ||
12950 | ac_check_lib_save_LIBS=$LIBS | ||
12951 | LIBS="-ldl $LIBS" | ||
12952 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12953 | /* end confdefs.h. */ | ||
12954 | |||
12955 | /* Override any GCC internal prototype to avoid an error. | ||
12956 | Use char because int might match the return type of a GCC | ||
12957 | builtin and then its argument prototype would still apply. */ | ||
12958 | #ifdef __cplusplus | ||
12959 | extern "C" | ||
12960 | #endif | ||
12961 | char dlopen (); | ||
12962 | int | ||
12963 | main () | ||
12964 | { | ||
12965 | return dlopen (); | ||
12966 | ; | ||
12967 | return 0; | ||
12968 | } | ||
12969 | _ACEOF | ||
12970 | if ac_fn_c_try_link "$LINENO"; then : | ||
12971 | ac_cv_lib_dl_dlopen=yes | ||
12972 | else | ||
12973 | ac_cv_lib_dl_dlopen=no | ||
12974 | fi | ||
12975 | rm -f core conftest.err conftest.$ac_objext \ | ||
12976 | conftest$ac_exeext conftest.$ac_ext | ||
12977 | LIBS=$ac_check_lib_save_LIBS | ||
12978 | fi | ||
12979 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 | ||
12980 | $as_echo "$ac_cv_lib_dl_dlopen" >&6; } | ||
12981 | if test "x$ac_cv_lib_dl_dlopen" = xyes; then : | ||
12982 | cat >>confdefs.h <<_ACEOF | ||
12983 | #define HAVE_LIBDL 1 | ||
12984 | _ACEOF | ||
12985 | |||
12986 | LIBS="-ldl $LIBS" | ||
12987 | |||
12988 | fi | ||
12989 | |||
12990 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pam_set_item in -lpam" >&5 | ||
12991 | $as_echo_n "checking for pam_set_item in -lpam... " >&6; } | ||
12992 | if ${ac_cv_lib_pam_pam_set_item+:} false; then : | ||
12993 | $as_echo_n "(cached) " >&6 | ||
12994 | else | ||
12995 | ac_check_lib_save_LIBS=$LIBS | ||
12996 | LIBS="-lpam $LIBS" | ||
12997 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12998 | /* end confdefs.h. */ | ||
12999 | |||
13000 | /* Override any GCC internal prototype to avoid an error. | ||
13001 | Use char because int might match the return type of a GCC | ||
13002 | builtin and then its argument prototype would still apply. */ | ||
13003 | #ifdef __cplusplus | ||
13004 | extern "C" | ||
13005 | #endif | ||
13006 | char pam_set_item (); | ||
13007 | int | ||
13008 | main () | ||
13009 | { | ||
13010 | return pam_set_item (); | ||
13011 | ; | ||
13012 | return 0; | ||
13013 | } | ||
13014 | _ACEOF | ||
13015 | if ac_fn_c_try_link "$LINENO"; then : | ||
13016 | ac_cv_lib_pam_pam_set_item=yes | ||
13017 | else | ||
13018 | ac_cv_lib_pam_pam_set_item=no | ||
13019 | fi | ||
13020 | rm -f core conftest.err conftest.$ac_objext \ | ||
13021 | conftest$ac_exeext conftest.$ac_ext | ||
13022 | LIBS=$ac_check_lib_save_LIBS | ||
13023 | fi | ||
13024 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pam_pam_set_item" >&5 | ||
13025 | $as_echo "$ac_cv_lib_pam_pam_set_item" >&6; } | ||
13026 | if test "x$ac_cv_lib_pam_pam_set_item" = xyes; then : | ||
13027 | cat >>confdefs.h <<_ACEOF | ||
13028 | #define HAVE_LIBPAM 1 | ||
13029 | _ACEOF | ||
13030 | |||
13031 | LIBS="-lpam $LIBS" | ||
13032 | |||
13033 | else | ||
13034 | as_fn_error $? "*** libpam missing" "$LINENO" 5 | ||
13035 | fi | ||
13036 | |||
13037 | for ac_func in pam_getenvlist | ||
13038 | do : | ||
13039 | ac_fn_c_check_func "$LINENO" "pam_getenvlist" "ac_cv_func_pam_getenvlist" | ||
13040 | if test "x$ac_cv_func_pam_getenvlist" = xyes; then : | ||
13041 | cat >>confdefs.h <<_ACEOF | ||
13042 | #define HAVE_PAM_GETENVLIST 1 | ||
13043 | _ACEOF | ||
13044 | |||
13045 | fi | ||
13046 | done | ||
13047 | |||
13048 | for ac_func in pam_putenv | ||
13049 | do : | ||
13050 | ac_fn_c_check_func "$LINENO" "pam_putenv" "ac_cv_func_pam_putenv" | ||
13051 | if test "x$ac_cv_func_pam_putenv" = xyes; then : | ||
13052 | cat >>confdefs.h <<_ACEOF | ||
13053 | #define HAVE_PAM_PUTENV 1 | ||
13054 | _ACEOF | ||
13055 | |||
13056 | fi | ||
13057 | done | ||
13058 | |||
13059 | LIBS="$saved_LIBS" | ||
13060 | |||
13061 | PAM_MSG="yes" | ||
13062 | |||
13063 | SSHDLIBS="$SSHDLIBS -lpam" | ||
13064 | |||
13065 | $as_echo "#define USE_PAM 1" >>confdefs.h | ||
13066 | |||
13067 | |||
13068 | if test $ac_cv_lib_dl_dlopen = yes; then | ||
13069 | case "$LIBS" in | ||
13070 | *-ldl*) | ||
13071 | # libdl already in LIBS | ||
13072 | ;; | ||
13073 | *) | ||
13074 | SSHDLIBS="$SSHDLIBS -ldl" | ||
13075 | ;; | ||
13076 | esac | ||
13077 | fi | ||
13078 | fi | ||
13079 | |||
13080 | |||
13081 | fi | ||
13082 | |||
13083 | |||
13084 | # Check for older PAM | ||
13085 | if test "x$PAM_MSG" = "xyes" ; then | ||
13086 | # Check PAM strerror arguments (old PAM) | ||
13087 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pam_strerror takes only one argument" >&5 | ||
13088 | $as_echo_n "checking whether pam_strerror takes only one argument... " >&6; } | ||
13089 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13090 | /* end confdefs.h. */ | ||
13091 | |||
13092 | #include <stdlib.h> | ||
13093 | #if defined(HAVE_SECURITY_PAM_APPL_H) | ||
13094 | #include <security/pam_appl.h> | ||
13095 | #elif defined (HAVE_PAM_PAM_APPL_H) | ||
13096 | #include <pam/pam_appl.h> | ||
13097 | #endif | ||
13098 | |||
13099 | int | ||
13100 | main () | ||
13101 | { | ||
13102 | |||
13103 | (void)pam_strerror((pam_handle_t *)NULL, -1); | ||
13104 | |||
13105 | ; | ||
13106 | return 0; | ||
13107 | } | ||
13108 | _ACEOF | ||
13109 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13110 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13111 | $as_echo "no" >&6; } | ||
13112 | else | ||
13113 | |||
13114 | |||
13115 | $as_echo "#define HAVE_OLD_PAM 1" >>confdefs.h | ||
13116 | |||
13117 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13118 | $as_echo "yes" >&6; } | ||
13119 | PAM_MSG="yes (old library)" | ||
13120 | |||
13121 | |||
13122 | fi | ||
13123 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13124 | fi | ||
13125 | |||
13126 | SSH_PRIVSEP_USER=sshd | ||
13127 | |||
13128 | # Check whether --with-privsep-user was given. | ||
13129 | if test "${with_privsep_user+set}" = set; then : | ||
13130 | withval=$with_privsep_user; | ||
13131 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
13132 | test "x${withval}" != "xyes"; then | ||
13133 | SSH_PRIVSEP_USER=$withval | ||
13134 | fi | ||
13135 | |||
13136 | |||
13137 | fi | ||
13138 | |||
13139 | |||
13140 | cat >>confdefs.h <<_ACEOF | ||
13141 | #define SSH_PRIVSEP_USER "$SSH_PRIVSEP_USER" | ||
13142 | _ACEOF | ||
13143 | |||
13144 | |||
13145 | |||
13146 | if test "x$have_linux_no_new_privs" = "x1" ; then | ||
13147 | ac_fn_c_check_decl "$LINENO" "SECCOMP_MODE_FILTER" "ac_cv_have_decl_SECCOMP_MODE_FILTER" " | ||
13148 | #include <sys/types.h> | ||
13149 | #include <linux/seccomp.h> | ||
13150 | |||
13151 | " | ||
13152 | if test "x$ac_cv_have_decl_SECCOMP_MODE_FILTER" = xyes; then : | ||
13153 | have_seccomp_filter=1 | ||
13154 | fi | ||
13155 | |||
13156 | fi | ||
13157 | if test "x$have_seccomp_filter" = "x1" ; then | ||
13158 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking kernel for seccomp_filter support" >&5 | ||
13159 | $as_echo_n "checking kernel for seccomp_filter support... " >&6; } | ||
13160 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13161 | /* end confdefs.h. */ | ||
13162 | |||
13163 | #include <errno.h> | ||
13164 | #include <elf.h> | ||
13165 | #include <linux/audit.h> | ||
13166 | #include <linux/seccomp.h> | ||
13167 | #include <stdlib.h> | ||
13168 | #include <sys/prctl.h> | ||
13169 | |||
13170 | int | ||
13171 | main () | ||
13172 | { | ||
13173 | int i = $seccomp_audit_arch; | ||
13174 | errno = 0; | ||
13175 | prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0); | ||
13176 | exit(errno == EFAULT ? 0 : 1); | ||
13177 | ; | ||
13178 | return 0; | ||
13179 | } | ||
13180 | _ACEOF | ||
13181 | if ac_fn_c_try_link "$LINENO"; then : | ||
13182 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13183 | $as_echo "yes" >&6; } | ||
13184 | else | ||
13185 | |||
13186 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13187 | $as_echo "no" >&6; } | ||
13188 | # Disable seccomp filter as a target | ||
13189 | have_seccomp_filter=0 | ||
13190 | |||
13191 | |||
13192 | fi | ||
13193 | rm -f core conftest.err conftest.$ac_objext \ | ||
13194 | conftest$ac_exeext conftest.$ac_ext | ||
13195 | fi | ||
13196 | |||
13197 | # Decide which sandbox style to use | ||
13198 | sandbox_arg="" | ||
13199 | |||
13200 | # Check whether --with-sandbox was given. | ||
13201 | if test "${with_sandbox+set}" = set; then : | ||
13202 | withval=$with_sandbox; | ||
13203 | if test "x$withval" = "xyes" ; then | ||
13204 | sandbox_arg="" | ||
13205 | else | ||
13206 | sandbox_arg="$withval" | ||
13207 | fi | ||
13208 | |||
13209 | |||
13210 | fi | ||
13211 | |||
13212 | |||
13213 | # Some platforms (seems to be the ones that have a kernel poll(2)-type | ||
13214 | # function with which they implement select(2)) use an extra file descriptor | ||
13215 | # when calling select(2), which means we can't use the rlimit sandbox. | ||
13216 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if select works with descriptor rlimit" >&5 | ||
13217 | $as_echo_n "checking if select works with descriptor rlimit... " >&6; } | ||
13218 | if test "$cross_compiling" = yes; then : | ||
13219 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
13220 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
13221 | |||
13222 | else | ||
13223 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13224 | /* end confdefs.h. */ | ||
13225 | |||
13226 | #include <sys/types.h> | ||
13227 | #ifdef HAVE_SYS_TIME_H | ||
13228 | # include <sys/time.h> | ||
13229 | #endif | ||
13230 | #include <sys/resource.h> | ||
13231 | #ifdef HAVE_SYS_SELECT_H | ||
13232 | # include <sys/select.h> | ||
13233 | #endif | ||
13234 | #include <errno.h> | ||
13235 | #include <fcntl.h> | ||
13236 | #include <stdlib.h> | ||
13237 | |||
13238 | int | ||
13239 | main () | ||
13240 | { | ||
13241 | |||
13242 | struct rlimit rl_zero; | ||
13243 | int fd, r; | ||
13244 | fd_set fds; | ||
13245 | struct timeval tv; | ||
13246 | |||
13247 | fd = open("/dev/null", O_RDONLY); | ||
13248 | FD_ZERO(&fds); | ||
13249 | FD_SET(fd, &fds); | ||
13250 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
13251 | setrlimit(RLIMIT_FSIZE, &rl_zero); | ||
13252 | setrlimit(RLIMIT_NOFILE, &rl_zero); | ||
13253 | tv.tv_sec = 1; | ||
13254 | tv.tv_usec = 0; | ||
13255 | r = select(fd+1, &fds, NULL, NULL, &tv); | ||
13256 | exit (r == -1 ? 1 : 0); | ||
13257 | |||
13258 | ; | ||
13259 | return 0; | ||
13260 | } | ||
13261 | _ACEOF | ||
13262 | if ac_fn_c_try_run "$LINENO"; then : | ||
13263 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13264 | $as_echo "yes" >&6; } | ||
13265 | select_works_with_rlimit=yes | ||
13266 | else | ||
13267 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13268 | $as_echo "no" >&6; } | ||
13269 | select_works_with_rlimit=no | ||
13270 | fi | ||
13271 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13272 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13273 | fi | ||
13274 | |||
13275 | |||
13276 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit(RLIMIT_NOFILE,{0,0}) works" >&5 | ||
13277 | $as_echo_n "checking if setrlimit(RLIMIT_NOFILE,{0,0}) works... " >&6; } | ||
13278 | if test "$cross_compiling" = yes; then : | ||
13279 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
13280 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
13281 | |||
13282 | else | ||
13283 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13284 | /* end confdefs.h. */ | ||
13285 | |||
13286 | #include <sys/types.h> | ||
13287 | #ifdef HAVE_SYS_TIME_H | ||
13288 | # include <sys/time.h> | ||
13289 | #endif | ||
13290 | #include <sys/resource.h> | ||
13291 | #include <errno.h> | ||
13292 | #include <stdlib.h> | ||
13293 | |||
13294 | int | ||
13295 | main () | ||
13296 | { | ||
13297 | |||
13298 | struct rlimit rl_zero; | ||
13299 | int fd, r; | ||
13300 | fd_set fds; | ||
13301 | |||
13302 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
13303 | r = setrlimit(RLIMIT_NOFILE, &rl_zero); | ||
13304 | exit (r == -1 ? 1 : 0); | ||
13305 | |||
13306 | ; | ||
13307 | return 0; | ||
13308 | } | ||
13309 | _ACEOF | ||
13310 | if ac_fn_c_try_run "$LINENO"; then : | ||
13311 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13312 | $as_echo "yes" >&6; } | ||
13313 | rlimit_nofile_zero_works=yes | ||
13314 | else | ||
13315 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13316 | $as_echo "no" >&6; } | ||
13317 | rlimit_nofile_zero_works=no | ||
13318 | fi | ||
13319 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13320 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13321 | fi | ||
13322 | |||
13323 | |||
13324 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit RLIMIT_FSIZE works" >&5 | ||
13325 | $as_echo_n "checking if setrlimit RLIMIT_FSIZE works... " >&6; } | ||
13326 | if test "$cross_compiling" = yes; then : | ||
13327 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
13328 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
13329 | |||
13330 | else | ||
13331 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13332 | /* end confdefs.h. */ | ||
13333 | |||
13334 | #include <sys/types.h> | ||
13335 | #include <sys/resource.h> | ||
13336 | #include <stdlib.h> | ||
13337 | |||
13338 | int | ||
13339 | main () | ||
13340 | { | ||
13341 | |||
13342 | struct rlimit rl_zero; | ||
13343 | |||
13344 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
13345 | exit(setrlimit(RLIMIT_FSIZE, &rl_zero) != 0); | ||
13346 | |||
13347 | ; | ||
13348 | return 0; | ||
13349 | } | ||
13350 | _ACEOF | ||
13351 | if ac_fn_c_try_run "$LINENO"; then : | ||
13352 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13353 | $as_echo "yes" >&6; } | ||
13354 | else | ||
13355 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13356 | $as_echo "no" >&6; } | ||
13357 | |||
13358 | $as_echo "#define SANDBOX_SKIP_RLIMIT_FSIZE 1" >>confdefs.h | ||
13359 | |||
13360 | fi | ||
13361 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13362 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13363 | fi | ||
13364 | |||
13365 | |||
13366 | if test "x$sandbox_arg" = "xsystrace" || \ | ||
13367 | ( test -z "$sandbox_arg" && test "x$have_systr_policy_kill" = "x1" ) ; then | ||
13368 | test "x$have_systr_policy_kill" != "x1" && \ | ||
13369 | as_fn_error $? "systrace sandbox requires systrace headers and SYSTR_POLICY_KILL support" "$LINENO" 5 | ||
13370 | SANDBOX_STYLE="systrace" | ||
13371 | |||
13372 | $as_echo "#define SANDBOX_SYSTRACE 1" >>confdefs.h | ||
13373 | |||
13374 | elif test "x$sandbox_arg" = "xdarwin" || \ | ||
13375 | ( test -z "$sandbox_arg" && test "x$ac_cv_func_sandbox_init" = "xyes" && \ | ||
13376 | test "x$ac_cv_header_sandbox_h" = "xyes") ; then | ||
13377 | test "x$ac_cv_func_sandbox_init" != "xyes" -o \ | ||
13378 | "x$ac_cv_header_sandbox_h" != "xyes" && \ | ||
13379 | as_fn_error $? "Darwin seatbelt sandbox requires sandbox.h and sandbox_init function" "$LINENO" 5 | ||
13380 | SANDBOX_STYLE="darwin" | ||
13381 | |||
13382 | $as_echo "#define SANDBOX_DARWIN 1" >>confdefs.h | ||
13383 | |||
13384 | elif test "x$sandbox_arg" = "xseccomp_filter" || \ | ||
13385 | ( test -z "$sandbox_arg" && \ | ||
13386 | test "x$have_seccomp_filter" = "x1" && \ | ||
13387 | test "x$ac_cv_header_elf_h" = "xyes" && \ | ||
13388 | test "x$ac_cv_header_linux_audit_h" = "xyes" && \ | ||
13389 | test "x$ac_cv_header_linux_filter_h" = "xyes" && \ | ||
13390 | test "x$seccomp_audit_arch" != "x" && \ | ||
13391 | test "x$have_linux_no_new_privs" = "x1" && \ | ||
13392 | test "x$ac_cv_func_prctl" = "xyes" ) ; then | ||
13393 | test "x$seccomp_audit_arch" = "x" && \ | ||
13394 | as_fn_error $? "seccomp_filter sandbox not supported on $host" "$LINENO" 5 | ||
13395 | test "x$have_linux_no_new_privs" != "x1" && \ | ||
13396 | as_fn_error $? "seccomp_filter sandbox requires PR_SET_NO_NEW_PRIVS" "$LINENO" 5 | ||
13397 | test "x$have_seccomp_filter" != "x1" && \ | ||
13398 | as_fn_error $? "seccomp_filter sandbox requires seccomp headers" "$LINENO" 5 | ||
13399 | test "x$ac_cv_func_prctl" != "xyes" && \ | ||
13400 | as_fn_error $? "seccomp_filter sandbox requires prctl function" "$LINENO" 5 | ||
13401 | SANDBOX_STYLE="seccomp_filter" | ||
13402 | |||
13403 | $as_echo "#define SANDBOX_SECCOMP_FILTER 1" >>confdefs.h | ||
13404 | |||
13405 | elif test "x$sandbox_arg" = "xcapsicum" || \ | ||
13406 | ( test -z "$sandbox_arg" && \ | ||
13407 | test "x$ac_cv_header_sys_capability_h" = "xyes" && \ | ||
13408 | test "x$ac_cv_func_cap_rights_limit" = "xyes") ; then | ||
13409 | test "x$ac_cv_header_sys_capability_h" != "xyes" && \ | ||
13410 | as_fn_error $? "capsicum sandbox requires sys/capability.h header" "$LINENO" 5 | ||
13411 | test "x$ac_cv_func_cap_rights_limit" != "xyes" && \ | ||
13412 | as_fn_error $? "capsicum sandbox requires cap_rights_limit function" "$LINENO" 5 | ||
13413 | SANDBOX_STYLE="capsicum" | ||
13414 | |||
13415 | $as_echo "#define SANDBOX_CAPSICUM 1" >>confdefs.h | ||
13416 | |||
13417 | elif test "x$sandbox_arg" = "xrlimit" || \ | ||
13418 | ( test -z "$sandbox_arg" && test "x$ac_cv_func_setrlimit" = "xyes" && \ | ||
13419 | test "x$select_works_with_rlimit" = "xyes" && \ | ||
13420 | test "x$rlimit_nofile_zero_works" = "xyes" ) ; then | ||
13421 | test "x$ac_cv_func_setrlimit" != "xyes" && \ | ||
13422 | as_fn_error $? "rlimit sandbox requires setrlimit function" "$LINENO" 5 | ||
13423 | test "x$select_works_with_rlimit" != "xyes" && \ | ||
13424 | as_fn_error $? "rlimit sandbox requires select to work with rlimit" "$LINENO" 5 | ||
13425 | SANDBOX_STYLE="rlimit" | ||
13426 | |||
13427 | $as_echo "#define SANDBOX_RLIMIT 1" >>confdefs.h | ||
13428 | |||
13429 | elif test -z "$sandbox_arg" || test "x$sandbox_arg" = "xno" || \ | ||
13430 | test "x$sandbox_arg" = "xnone" || test "x$sandbox_arg" = "xnull" ; then | ||
13431 | SANDBOX_STYLE="none" | ||
13432 | |||
13433 | $as_echo "#define SANDBOX_NULL 1" >>confdefs.h | ||
13434 | |||
13435 | else | ||
13436 | as_fn_error $? "unsupported --with-sandbox" "$LINENO" 5 | ||
13437 | fi | ||
13438 | |||
13439 | # Cheap hack to ensure NEWS-OS libraries are arranged right. | ||
13440 | if test ! -z "$SONY" ; then | ||
13441 | LIBS="$LIBS -liberty"; | ||
13442 | fi | ||
13443 | |||
13444 | # Check for long long datatypes | ||
13445 | ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default" | ||
13446 | if test "x$ac_cv_type_long_long" = xyes; then : | ||
13447 | |||
13448 | cat >>confdefs.h <<_ACEOF | ||
13449 | #define HAVE_LONG_LONG 1 | ||
13450 | _ACEOF | ||
13451 | |||
13452 | |||
13453 | fi | ||
13454 | ac_fn_c_check_type "$LINENO" "unsigned long long" "ac_cv_type_unsigned_long_long" "$ac_includes_default" | ||
13455 | if test "x$ac_cv_type_unsigned_long_long" = xyes; then : | ||
13456 | |||
13457 | cat >>confdefs.h <<_ACEOF | ||
13458 | #define HAVE_UNSIGNED_LONG_LONG 1 | ||
13459 | _ACEOF | ||
13460 | |||
13461 | |||
13462 | fi | ||
13463 | ac_fn_c_check_type "$LINENO" "long double" "ac_cv_type_long_double" "$ac_includes_default" | ||
13464 | if test "x$ac_cv_type_long_double" = xyes; then : | ||
13465 | |||
13466 | cat >>confdefs.h <<_ACEOF | ||
13467 | #define HAVE_LONG_DOUBLE 1 | ||
13468 | _ACEOF | ||
13469 | |||
13470 | |||
13471 | fi | ||
13472 | |||
13473 | |||
13474 | # Check datatype sizes | ||
13475 | # The cast to long int works around a bug in the HP C Compiler | ||
13476 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
13477 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
13478 | # This bug is HP SR number 8606223364. | ||
13479 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short int" >&5 | ||
13480 | $as_echo_n "checking size of short int... " >&6; } | ||
13481 | if ${ac_cv_sizeof_short_int+:} false; then : | ||
13482 | $as_echo_n "(cached) " >&6 | ||
13483 | else | ||
13484 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short int))" "ac_cv_sizeof_short_int" "$ac_includes_default"; then : | ||
13485 | |||
13486 | else | ||
13487 | if test "$ac_cv_type_short_int" = yes; then | ||
13488 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
13489 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
13490 | as_fn_error 77 "cannot compute sizeof (short int) | ||
13491 | See \`config.log' for more details" "$LINENO" 5; } | ||
13492 | else | ||
13493 | ac_cv_sizeof_short_int=0 | ||
13494 | fi | ||
13495 | fi | ||
13496 | |||
13497 | fi | ||
13498 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short_int" >&5 | ||
13499 | $as_echo "$ac_cv_sizeof_short_int" >&6; } | ||
13500 | |||
13501 | |||
13502 | |||
13503 | cat >>confdefs.h <<_ACEOF | ||
13504 | #define SIZEOF_SHORT_INT $ac_cv_sizeof_short_int | ||
13505 | _ACEOF | ||
13506 | |||
13507 | |||
13508 | # The cast to long int works around a bug in the HP C Compiler | ||
13509 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
13510 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
13511 | # This bug is HP SR number 8606223364. | ||
13512 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5 | ||
13513 | $as_echo_n "checking size of int... " >&6; } | ||
13514 | if ${ac_cv_sizeof_int+:} false; then : | ||
13515 | $as_echo_n "(cached) " >&6 | ||
13516 | else | ||
13517 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then : | ||
13518 | |||
13519 | else | ||
13520 | if test "$ac_cv_type_int" = yes; then | ||
13521 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
13522 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
13523 | as_fn_error 77 "cannot compute sizeof (int) | ||
13524 | See \`config.log' for more details" "$LINENO" 5; } | ||
13525 | else | ||
13526 | ac_cv_sizeof_int=0 | ||
13527 | fi | ||
13528 | fi | ||
13529 | |||
13530 | fi | ||
13531 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5 | ||
13532 | $as_echo "$ac_cv_sizeof_int" >&6; } | ||
13533 | |||
13534 | |||
13535 | |||
13536 | cat >>confdefs.h <<_ACEOF | ||
13537 | #define SIZEOF_INT $ac_cv_sizeof_int | ||
13538 | _ACEOF | ||
13539 | |||
13540 | |||
13541 | # The cast to long int works around a bug in the HP C Compiler | ||
13542 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
13543 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
13544 | # This bug is HP SR number 8606223364. | ||
13545 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long int" >&5 | ||
13546 | $as_echo_n "checking size of long int... " >&6; } | ||
13547 | if ${ac_cv_sizeof_long_int+:} false; then : | ||
13548 | $as_echo_n "(cached) " >&6 | ||
13549 | else | ||
13550 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long int))" "ac_cv_sizeof_long_int" "$ac_includes_default"; then : | ||
13551 | |||
13552 | else | ||
13553 | if test "$ac_cv_type_long_int" = yes; then | ||
13554 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
13555 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
13556 | as_fn_error 77 "cannot compute sizeof (long int) | ||
13557 | See \`config.log' for more details" "$LINENO" 5; } | ||
13558 | else | ||
13559 | ac_cv_sizeof_long_int=0 | ||
13560 | fi | ||
13561 | fi | ||
13562 | |||
13563 | fi | ||
13564 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_int" >&5 | ||
13565 | $as_echo "$ac_cv_sizeof_long_int" >&6; } | ||
13566 | |||
13567 | |||
13568 | |||
13569 | cat >>confdefs.h <<_ACEOF | ||
13570 | #define SIZEOF_LONG_INT $ac_cv_sizeof_long_int | ||
13571 | _ACEOF | ||
13572 | |||
13573 | |||
13574 | # The cast to long int works around a bug in the HP C Compiler | ||
13575 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
13576 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
13577 | # This bug is HP SR number 8606223364. | ||
13578 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long int" >&5 | ||
13579 | $as_echo_n "checking size of long long int... " >&6; } | ||
13580 | if ${ac_cv_sizeof_long_long_int+:} false; then : | ||
13581 | $as_echo_n "(cached) " >&6 | ||
13582 | else | ||
13583 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long int))" "ac_cv_sizeof_long_long_int" "$ac_includes_default"; then : | ||
13584 | |||
13585 | else | ||
13586 | if test "$ac_cv_type_long_long_int" = yes; then | ||
13587 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
13588 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
13589 | as_fn_error 77 "cannot compute sizeof (long long int) | ||
13590 | See \`config.log' for more details" "$LINENO" 5; } | ||
13591 | else | ||
13592 | ac_cv_sizeof_long_long_int=0 | ||
13593 | fi | ||
13594 | fi | ||
13595 | |||
13596 | fi | ||
13597 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long_int" >&5 | ||
13598 | $as_echo "$ac_cv_sizeof_long_long_int" >&6; } | ||
13599 | |||
13600 | |||
13601 | |||
13602 | cat >>confdefs.h <<_ACEOF | ||
13603 | #define SIZEOF_LONG_LONG_INT $ac_cv_sizeof_long_long_int | ||
13604 | _ACEOF | ||
13605 | |||
13606 | |||
13607 | |||
13608 | # Sanity check long long for some platforms (AIX) | ||
13609 | if test "x$ac_cv_sizeof_long_long_int" = "x4" ; then | ||
13610 | ac_cv_sizeof_long_long_int=0 | ||
13611 | fi | ||
13612 | |||
13613 | # compute LLONG_MIN and LLONG_MAX if we don't know them. | ||
13614 | if test -z "$have_llong_max"; then | ||
13615 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for max value of long long" >&5 | ||
13616 | $as_echo_n "checking for max value of long long... " >&6; } | ||
13617 | if test "$cross_compiling" = yes; then : | ||
13618 | |||
13619 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
13620 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
13621 | |||
13622 | |||
13623 | else | ||
13624 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13625 | /* end confdefs.h. */ | ||
13626 | |||
13627 | #include <stdio.h> | ||
13628 | /* Why is this so damn hard? */ | ||
13629 | #ifdef __GNUC__ | ||
13630 | # undef __GNUC__ | ||
13631 | #endif | ||
13632 | #define __USE_ISOC99 | ||
13633 | #include <limits.h> | ||
13634 | #define DATA "conftest.llminmax" | ||
13635 | #define my_abs(a) ((a) < 0 ? ((a) * -1) : (a)) | ||
13636 | |||
13637 | /* | ||
13638 | * printf in libc on some platforms (eg old Tru64) does not understand %lld so | ||
13639 | * we do this the hard way. | ||
13640 | */ | ||
13641 | static int | ||
13642 | fprint_ll(FILE *f, long long n) | ||
13643 | { | ||
13644 | unsigned int i; | ||
13645 | int l[sizeof(long long) * 8]; | ||
13646 | |||
13647 | if (n < 0) | ||
13648 | if (fprintf(f, "-") < 0) | ||
13649 | return -1; | ||
13650 | for (i = 0; n != 0; i++) { | ||
13651 | l[i] = my_abs(n % 10); | ||
13652 | n /= 10; | ||
13653 | } | ||
13654 | do { | ||
13655 | if (fprintf(f, "%d", l[--i]) < 0) | ||
13656 | return -1; | ||
13657 | } while (i != 0); | ||
13658 | if (fprintf(f, " ") < 0) | ||
13659 | return -1; | ||
13660 | return 0; | ||
13661 | } | ||
13662 | |||
13663 | int | ||
13664 | main () | ||
13665 | { | ||
13666 | |||
13667 | FILE *f; | ||
13668 | long long i, llmin, llmax = 0; | ||
13669 | |||
13670 | if((f = fopen(DATA,"w")) == NULL) | ||
13671 | exit(1); | ||
13672 | |||
13673 | #if defined(LLONG_MIN) && defined(LLONG_MAX) | ||
13674 | fprintf(stderr, "Using system header for LLONG_MIN and LLONG_MAX\n"); | ||
13675 | llmin = LLONG_MIN; | ||
13676 | llmax = LLONG_MAX; | ||
13677 | #else | ||
13678 | fprintf(stderr, "Calculating LLONG_MIN and LLONG_MAX\n"); | ||
13679 | /* This will work on one's complement and two's complement */ | ||
13680 | for (i = 1; i > llmax; i <<= 1, i++) | ||
13681 | llmax = i; | ||
13682 | llmin = llmax + 1LL; /* wrap */ | ||
13683 | #endif | ||
13684 | |||
13685 | /* Sanity check */ | ||
13686 | if (llmin + 1 < llmin || llmin - 1 < llmin || llmax + 1 > llmax | ||
13687 | || llmax - 1 > llmax || llmin == llmax || llmin == 0 | ||
13688 | || llmax == 0 || llmax < LONG_MAX || llmin > LONG_MIN) { | ||
13689 | fprintf(f, "unknown unknown\n"); | ||
13690 | exit(2); | ||
13691 | } | ||
13692 | |||
13693 | if (fprint_ll(f, llmin) < 0) | ||
13694 | exit(3); | ||
13695 | if (fprint_ll(f, llmax) < 0) | ||
13696 | exit(4); | ||
13697 | if (fclose(f) < 0) | ||
13698 | exit(5); | ||
13699 | exit(0); | ||
13700 | |||
13701 | ; | ||
13702 | return 0; | ||
13703 | } | ||
13704 | _ACEOF | ||
13705 | if ac_fn_c_try_run "$LINENO"; then : | ||
13706 | |||
13707 | llong_min=`$AWK '{print $1}' conftest.llminmax` | ||
13708 | llong_max=`$AWK '{print $2}' conftest.llminmax` | ||
13709 | |||
13710 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_max" >&5 | ||
13711 | $as_echo "$llong_max" >&6; } | ||
13712 | |||
13713 | cat >>confdefs.h <<_ACEOF | ||
13714 | #define LLONG_MAX ${llong_max}LL | ||
13715 | _ACEOF | ||
13716 | |||
13717 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for min value of long long" >&5 | ||
13718 | $as_echo_n "checking for min value of long long... " >&6; } | ||
13719 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_min" >&5 | ||
13720 | $as_echo "$llong_min" >&6; } | ||
13721 | |||
13722 | cat >>confdefs.h <<_ACEOF | ||
13723 | #define LLONG_MIN ${llong_min}LL | ||
13724 | _ACEOF | ||
13725 | |||
13726 | |||
13727 | else | ||
13728 | |||
13729 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
13730 | $as_echo "not found" >&6; } | ||
13731 | |||
13732 | fi | ||
13733 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13734 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13735 | fi | ||
13736 | |||
13737 | fi | ||
13738 | |||
13739 | |||
13740 | # More checks for data types | ||
13741 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int type" >&5 | ||
13742 | $as_echo_n "checking for u_int type... " >&6; } | ||
13743 | if ${ac_cv_have_u_int+:} false; then : | ||
13744 | $as_echo_n "(cached) " >&6 | ||
13745 | else | ||
13746 | |||
13747 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13748 | /* end confdefs.h. */ | ||
13749 | #include <sys/types.h> | ||
13750 | int | ||
13751 | main () | ||
13752 | { | ||
13753 | u_int a; a = 1; | ||
13754 | ; | ||
13755 | return 0; | ||
13756 | } | ||
13757 | _ACEOF | ||
13758 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13759 | ac_cv_have_u_int="yes" | ||
13760 | else | ||
13761 | ac_cv_have_u_int="no" | ||
13762 | |||
13763 | fi | ||
13764 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13765 | |||
13766 | fi | ||
13767 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int" >&5 | ||
13768 | $as_echo "$ac_cv_have_u_int" >&6; } | ||
13769 | if test "x$ac_cv_have_u_int" = "xyes" ; then | ||
13770 | |||
13771 | $as_echo "#define HAVE_U_INT 1" >>confdefs.h | ||
13772 | |||
13773 | have_u_int=1 | ||
13774 | fi | ||
13775 | |||
13776 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types" >&5 | ||
13777 | $as_echo_n "checking for intXX_t types... " >&6; } | ||
13778 | if ${ac_cv_have_intxx_t+:} false; then : | ||
13779 | $as_echo_n "(cached) " >&6 | ||
13780 | else | ||
13781 | |||
13782 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13783 | /* end confdefs.h. */ | ||
13784 | #include <sys/types.h> | ||
13785 | int | ||
13786 | main () | ||
13787 | { | ||
13788 | int8_t a; int16_t b; int32_t c; a = b = c = 1; | ||
13789 | ; | ||
13790 | return 0; | ||
13791 | } | ||
13792 | _ACEOF | ||
13793 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13794 | ac_cv_have_intxx_t="yes" | ||
13795 | else | ||
13796 | ac_cv_have_intxx_t="no" | ||
13797 | |||
13798 | fi | ||
13799 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13800 | |||
13801 | fi | ||
13802 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_intxx_t" >&5 | ||
13803 | $as_echo "$ac_cv_have_intxx_t" >&6; } | ||
13804 | if test "x$ac_cv_have_intxx_t" = "xyes" ; then | ||
13805 | |||
13806 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
13807 | |||
13808 | have_intxx_t=1 | ||
13809 | fi | ||
13810 | |||
13811 | if (test -z "$have_intxx_t" && \ | ||
13812 | test "x$ac_cv_header_stdint_h" = "xyes") | ||
13813 | then | ||
13814 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types in stdint.h" >&5 | ||
13815 | $as_echo_n "checking for intXX_t types in stdint.h... " >&6; } | ||
13816 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13817 | /* end confdefs.h. */ | ||
13818 | #include <stdint.h> | ||
13819 | int | ||
13820 | main () | ||
13821 | { | ||
13822 | int8_t a; int16_t b; int32_t c; a = b = c = 1; | ||
13823 | ; | ||
13824 | return 0; | ||
13825 | } | ||
13826 | _ACEOF | ||
13827 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13828 | |||
13829 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
13830 | |||
13831 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13832 | $as_echo "yes" >&6; } | ||
13833 | |||
13834 | else | ||
13835 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13836 | $as_echo "no" >&6; } | ||
13837 | |||
13838 | fi | ||
13839 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13840 | fi | ||
13841 | |||
13842 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for int64_t type" >&5 | ||
13843 | $as_echo_n "checking for int64_t type... " >&6; } | ||
13844 | if ${ac_cv_have_int64_t+:} false; then : | ||
13845 | $as_echo_n "(cached) " >&6 | ||
13846 | else | ||
13847 | |||
13848 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13849 | /* end confdefs.h. */ | ||
13850 | |||
13851 | #include <sys/types.h> | ||
13852 | #ifdef HAVE_STDINT_H | ||
13853 | # include <stdint.h> | ||
13854 | #endif | ||
13855 | #include <sys/socket.h> | ||
13856 | #ifdef HAVE_SYS_BITYPES_H | ||
13857 | # include <sys/bitypes.h> | ||
13858 | #endif | ||
13859 | |||
13860 | int | ||
13861 | main () | ||
13862 | { | ||
13863 | |||
13864 | int64_t a; a = 1; | ||
13865 | |||
13866 | ; | ||
13867 | return 0; | ||
13868 | } | ||
13869 | _ACEOF | ||
13870 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13871 | ac_cv_have_int64_t="yes" | ||
13872 | else | ||
13873 | ac_cv_have_int64_t="no" | ||
13874 | |||
13875 | fi | ||
13876 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13877 | |||
13878 | fi | ||
13879 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_int64_t" >&5 | ||
13880 | $as_echo "$ac_cv_have_int64_t" >&6; } | ||
13881 | if test "x$ac_cv_have_int64_t" = "xyes" ; then | ||
13882 | |||
13883 | $as_echo "#define HAVE_INT64_T 1" >>confdefs.h | ||
13884 | |||
13885 | fi | ||
13886 | |||
13887 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types" >&5 | ||
13888 | $as_echo_n "checking for u_intXX_t types... " >&6; } | ||
13889 | if ${ac_cv_have_u_intxx_t+:} false; then : | ||
13890 | $as_echo_n "(cached) " >&6 | ||
13891 | else | ||
13892 | |||
13893 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13894 | /* end confdefs.h. */ | ||
13895 | #include <sys/types.h> | ||
13896 | int | ||
13897 | main () | ||
13898 | { | ||
13899 | u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1; | ||
13900 | ; | ||
13901 | return 0; | ||
13902 | } | ||
13903 | _ACEOF | ||
13904 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13905 | ac_cv_have_u_intxx_t="yes" | ||
13906 | else | ||
13907 | ac_cv_have_u_intxx_t="no" | ||
13908 | |||
13909 | fi | ||
13910 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13911 | |||
13912 | fi | ||
13913 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_intxx_t" >&5 | ||
13914 | $as_echo "$ac_cv_have_u_intxx_t" >&6; } | ||
13915 | if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then | ||
13916 | |||
13917 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
13918 | |||
13919 | have_u_intxx_t=1 | ||
13920 | fi | ||
13921 | |||
13922 | if test -z "$have_u_intxx_t" ; then | ||
13923 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types in sys/socket.h" >&5 | ||
13924 | $as_echo_n "checking for u_intXX_t types in sys/socket.h... " >&6; } | ||
13925 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13926 | /* end confdefs.h. */ | ||
13927 | #include <sys/socket.h> | ||
13928 | int | ||
13929 | main () | ||
13930 | { | ||
13931 | u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1; | ||
13932 | ; | ||
13933 | return 0; | ||
13934 | } | ||
13935 | _ACEOF | ||
13936 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13937 | |||
13938 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
13939 | |||
13940 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13941 | $as_echo "yes" >&6; } | ||
13942 | |||
13943 | else | ||
13944 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13945 | $as_echo "no" >&6; } | ||
13946 | |||
13947 | fi | ||
13948 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13949 | fi | ||
13950 | |||
13951 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t types" >&5 | ||
13952 | $as_echo_n "checking for u_int64_t types... " >&6; } | ||
13953 | if ${ac_cv_have_u_int64_t+:} false; then : | ||
13954 | $as_echo_n "(cached) " >&6 | ||
13955 | else | ||
13956 | |||
13957 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13958 | /* end confdefs.h. */ | ||
13959 | #include <sys/types.h> | ||
13960 | int | ||
13961 | main () | ||
13962 | { | ||
13963 | u_int64_t a; a = 1; | ||
13964 | ; | ||
13965 | return 0; | ||
13966 | } | ||
13967 | _ACEOF | ||
13968 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13969 | ac_cv_have_u_int64_t="yes" | ||
13970 | else | ||
13971 | ac_cv_have_u_int64_t="no" | ||
13972 | |||
13973 | fi | ||
13974 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13975 | |||
13976 | fi | ||
13977 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int64_t" >&5 | ||
13978 | $as_echo "$ac_cv_have_u_int64_t" >&6; } | ||
13979 | if test "x$ac_cv_have_u_int64_t" = "xyes" ; then | ||
13980 | |||
13981 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
13982 | |||
13983 | have_u_int64_t=1 | ||
13984 | fi | ||
13985 | |||
13986 | if (test -z "$have_u_int64_t" && \ | ||
13987 | test "x$ac_cv_header_sys_bitypes_h" = "xyes") | ||
13988 | then | ||
13989 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t type in sys/bitypes.h" >&5 | ||
13990 | $as_echo_n "checking for u_int64_t type in sys/bitypes.h... " >&6; } | ||
13991 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13992 | /* end confdefs.h. */ | ||
13993 | #include <sys/bitypes.h> | ||
13994 | int | ||
13995 | main () | ||
13996 | { | ||
13997 | u_int64_t a; a = 1 | ||
13998 | ; | ||
13999 | return 0; | ||
14000 | } | ||
14001 | _ACEOF | ||
14002 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14003 | |||
14004 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
14005 | |||
14006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14007 | $as_echo "yes" >&6; } | ||
14008 | |||
14009 | else | ||
14010 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14011 | $as_echo "no" >&6; } | ||
14012 | |||
14013 | fi | ||
14014 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14015 | fi | ||
14016 | |||
14017 | if test -z "$have_u_intxx_t" ; then | ||
14018 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types" >&5 | ||
14019 | $as_echo_n "checking for uintXX_t types... " >&6; } | ||
14020 | if ${ac_cv_have_uintxx_t+:} false; then : | ||
14021 | $as_echo_n "(cached) " >&6 | ||
14022 | else | ||
14023 | |||
14024 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14025 | /* end confdefs.h. */ | ||
14026 | |||
14027 | #include <sys/types.h> | ||
14028 | |||
14029 | int | ||
14030 | main () | ||
14031 | { | ||
14032 | |||
14033 | uint8_t a; | ||
14034 | uint16_t b; | ||
14035 | uint32_t c; | ||
14036 | a = b = c = 1; | ||
14037 | |||
14038 | ; | ||
14039 | return 0; | ||
14040 | } | ||
14041 | _ACEOF | ||
14042 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14043 | ac_cv_have_uintxx_t="yes" | ||
14044 | else | ||
14045 | ac_cv_have_uintxx_t="no" | ||
14046 | |||
14047 | fi | ||
14048 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14049 | |||
14050 | fi | ||
14051 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_uintxx_t" >&5 | ||
14052 | $as_echo "$ac_cv_have_uintxx_t" >&6; } | ||
14053 | if test "x$ac_cv_have_uintxx_t" = "xyes" ; then | ||
14054 | |||
14055 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
14056 | |||
14057 | fi | ||
14058 | fi | ||
14059 | |||
14060 | if (test -z "$have_uintxx_t" && \ | ||
14061 | test "x$ac_cv_header_stdint_h" = "xyes") | ||
14062 | then | ||
14063 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in stdint.h" >&5 | ||
14064 | $as_echo_n "checking for uintXX_t types in stdint.h... " >&6; } | ||
14065 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14066 | /* end confdefs.h. */ | ||
14067 | #include <stdint.h> | ||
14068 | int | ||
14069 | main () | ||
14070 | { | ||
14071 | uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; | ||
14072 | ; | ||
14073 | return 0; | ||
14074 | } | ||
14075 | _ACEOF | ||
14076 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14077 | |||
14078 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
14079 | |||
14080 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14081 | $as_echo "yes" >&6; } | ||
14082 | |||
14083 | else | ||
14084 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14085 | $as_echo "no" >&6; } | ||
14086 | |||
14087 | fi | ||
14088 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14089 | fi | ||
14090 | |||
14091 | if (test -z "$have_uintxx_t" && \ | ||
14092 | test "x$ac_cv_header_inttypes_h" = "xyes") | ||
14093 | then | ||
14094 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in inttypes.h" >&5 | ||
14095 | $as_echo_n "checking for uintXX_t types in inttypes.h... " >&6; } | ||
14096 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14097 | /* end confdefs.h. */ | ||
14098 | #include <inttypes.h> | ||
14099 | int | ||
14100 | main () | ||
14101 | { | ||
14102 | uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; | ||
14103 | ; | ||
14104 | return 0; | ||
14105 | } | ||
14106 | _ACEOF | ||
14107 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14108 | |||
14109 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
14110 | |||
14111 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14112 | $as_echo "yes" >&6; } | ||
14113 | |||
14114 | else | ||
14115 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14116 | $as_echo "no" >&6; } | ||
14117 | |||
14118 | fi | ||
14119 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14120 | fi | ||
14121 | |||
14122 | if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \ | ||
14123 | test "x$ac_cv_header_sys_bitypes_h" = "xyes") | ||
14124 | then | ||
14125 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t and u_intXX_t types in sys/bitypes.h" >&5 | ||
14126 | $as_echo_n "checking for intXX_t and u_intXX_t types in sys/bitypes.h... " >&6; } | ||
14127 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14128 | /* end confdefs.h. */ | ||
14129 | |||
14130 | #include <sys/bitypes.h> | ||
14131 | |||
14132 | int | ||
14133 | main () | ||
14134 | { | ||
14135 | |||
14136 | int8_t a; int16_t b; int32_t c; | ||
14137 | u_int8_t e; u_int16_t f; u_int32_t g; | ||
14138 | a = b = c = e = f = g = 1; | ||
14139 | |||
14140 | ; | ||
14141 | return 0; | ||
14142 | } | ||
14143 | _ACEOF | ||
14144 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14145 | |||
14146 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
14147 | |||
14148 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
14149 | |||
14150 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14151 | $as_echo "yes" >&6; } | ||
14152 | |||
14153 | else | ||
14154 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14155 | $as_echo "no" >&6; } | ||
14156 | |||
14157 | fi | ||
14158 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14159 | fi | ||
14160 | |||
14161 | |||
14162 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_char" >&5 | ||
14163 | $as_echo_n "checking for u_char... " >&6; } | ||
14164 | if ${ac_cv_have_u_char+:} false; then : | ||
14165 | $as_echo_n "(cached) " >&6 | ||
14166 | else | ||
14167 | |||
14168 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14169 | /* end confdefs.h. */ | ||
14170 | #include <sys/types.h> | ||
14171 | int | ||
14172 | main () | ||
14173 | { | ||
14174 | u_char foo; foo = 125; | ||
14175 | ; | ||
14176 | return 0; | ||
14177 | } | ||
14178 | _ACEOF | ||
14179 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14180 | ac_cv_have_u_char="yes" | ||
14181 | else | ||
14182 | ac_cv_have_u_char="no" | ||
14183 | |||
14184 | fi | ||
14185 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14186 | |||
14187 | fi | ||
14188 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_char" >&5 | ||
14189 | $as_echo "$ac_cv_have_u_char" >&6; } | ||
14190 | if test "x$ac_cv_have_u_char" = "xyes" ; then | ||
14191 | |||
14192 | $as_echo "#define HAVE_U_CHAR 1" >>confdefs.h | ||
14193 | |||
14194 | fi | ||
14195 | |||
14196 | ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" " | ||
14197 | #include <sys/types.h> | ||
14198 | #include <stdint.h> | ||
14199 | |||
14200 | " | ||
14201 | if test "x$ac_cv_type_intmax_t" = xyes; then : | ||
14202 | |||
14203 | cat >>confdefs.h <<_ACEOF | ||
14204 | #define HAVE_INTMAX_T 1 | ||
14205 | _ACEOF | ||
14206 | |||
14207 | |||
14208 | fi | ||
14209 | ac_fn_c_check_type "$LINENO" "uintmax_t" "ac_cv_type_uintmax_t" " | ||
14210 | #include <sys/types.h> | ||
14211 | #include <stdint.h> | ||
14212 | |||
14213 | " | ||
14214 | if test "x$ac_cv_type_uintmax_t" = xyes; then : | ||
14215 | |||
14216 | cat >>confdefs.h <<_ACEOF | ||
14217 | #define HAVE_UINTMAX_T 1 | ||
14218 | _ACEOF | ||
14219 | |||
14220 | |||
14221 | fi | ||
14222 | |||
14223 | |||
14224 | |||
14225 | ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include <sys/types.h> | ||
14226 | #include <sys/socket.h> | ||
14227 | " | ||
14228 | if test "x$ac_cv_type_socklen_t" = xyes; then : | ||
14229 | |||
14230 | else | ||
14231 | |||
14232 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5 | ||
14233 | $as_echo_n "checking for socklen_t equivalent... " >&6; } | ||
14234 | if ${curl_cv_socklen_t_equiv+:} false; then : | ||
14235 | $as_echo_n "(cached) " >&6 | ||
14236 | else | ||
14237 | |||
14238 | # Systems have either "struct sockaddr *" or | ||
14239 | # "void *" as the second argument to getpeername | ||
14240 | curl_cv_socklen_t_equiv= | ||
14241 | for arg2 in "struct sockaddr" void; do | ||
14242 | for t in int size_t unsigned long "unsigned long"; do | ||
14243 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14244 | /* end confdefs.h. */ | ||
14245 | |||
14246 | #include <sys/types.h> | ||
14247 | #include <sys/socket.h> | ||
14248 | |||
14249 | int getpeername (int, $arg2 *, $t *); | ||
14250 | |||
14251 | int | ||
14252 | main () | ||
14253 | { | ||
14254 | |||
14255 | $t len; | ||
14256 | getpeername(0,0,&len); | ||
14257 | |||
14258 | ; | ||
14259 | return 0; | ||
14260 | } | ||
14261 | _ACEOF | ||
14262 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14263 | |||
14264 | curl_cv_socklen_t_equiv="$t" | ||
14265 | break | ||
14266 | |||
14267 | fi | ||
14268 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14269 | done | ||
14270 | done | ||
14271 | |||
14272 | if test "x$curl_cv_socklen_t_equiv" = x; then | ||
14273 | as_fn_error $? "Cannot find a type to use in place of socklen_t" "$LINENO" 5 | ||
14274 | fi | ||
14275 | |||
14276 | fi | ||
14277 | |||
14278 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_socklen_t_equiv" >&5 | ||
14279 | $as_echo "$curl_cv_socklen_t_equiv" >&6; } | ||
14280 | |||
14281 | cat >>confdefs.h <<_ACEOF | ||
14282 | #define socklen_t $curl_cv_socklen_t_equiv | ||
14283 | _ACEOF | ||
14284 | |||
14285 | fi | ||
14286 | |||
14287 | |||
14288 | |||
14289 | ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "#include <signal.h> | ||
14290 | " | ||
14291 | if test "x$ac_cv_type_sig_atomic_t" = xyes; then : | ||
14292 | |||
14293 | cat >>confdefs.h <<_ACEOF | ||
14294 | #define HAVE_SIG_ATOMIC_T 1 | ||
14295 | _ACEOF | ||
14296 | |||
14297 | |||
14298 | fi | ||
14299 | |||
14300 | ac_fn_c_check_type "$LINENO" "fsblkcnt_t" "ac_cv_type_fsblkcnt_t" " | ||
14301 | #include <sys/types.h> | ||
14302 | #ifdef HAVE_SYS_BITYPES_H | ||
14303 | #include <sys/bitypes.h> | ||
14304 | #endif | ||
14305 | #ifdef HAVE_SYS_STATFS_H | ||
14306 | #include <sys/statfs.h> | ||
14307 | #endif | ||
14308 | #ifdef HAVE_SYS_STATVFS_H | ||
14309 | #include <sys/statvfs.h> | ||
14310 | #endif | ||
14311 | |||
14312 | " | ||
14313 | if test "x$ac_cv_type_fsblkcnt_t" = xyes; then : | ||
14314 | |||
14315 | cat >>confdefs.h <<_ACEOF | ||
14316 | #define HAVE_FSBLKCNT_T 1 | ||
14317 | _ACEOF | ||
14318 | |||
14319 | |||
14320 | fi | ||
14321 | ac_fn_c_check_type "$LINENO" "fsfilcnt_t" "ac_cv_type_fsfilcnt_t" " | ||
14322 | #include <sys/types.h> | ||
14323 | #ifdef HAVE_SYS_BITYPES_H | ||
14324 | #include <sys/bitypes.h> | ||
14325 | #endif | ||
14326 | #ifdef HAVE_SYS_STATFS_H | ||
14327 | #include <sys/statfs.h> | ||
14328 | #endif | ||
14329 | #ifdef HAVE_SYS_STATVFS_H | ||
14330 | #include <sys/statvfs.h> | ||
14331 | #endif | ||
14332 | |||
14333 | " | ||
14334 | if test "x$ac_cv_type_fsfilcnt_t" = xyes; then : | ||
14335 | |||
14336 | cat >>confdefs.h <<_ACEOF | ||
14337 | #define HAVE_FSFILCNT_T 1 | ||
14338 | _ACEOF | ||
14339 | |||
14340 | |||
14341 | fi | ||
14342 | |||
14343 | |||
14344 | ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "#include <sys/types.h> | ||
14345 | #include <netinet/in.h> | ||
14346 | " | ||
14347 | if test "x$ac_cv_type_in_addr_t" = xyes; then : | ||
14348 | |||
14349 | cat >>confdefs.h <<_ACEOF | ||
14350 | #define HAVE_IN_ADDR_T 1 | ||
14351 | _ACEOF | ||
14352 | |||
14353 | |||
14354 | fi | ||
14355 | ac_fn_c_check_type "$LINENO" "in_port_t" "ac_cv_type_in_port_t" "#include <sys/types.h> | ||
14356 | #include <netinet/in.h> | ||
14357 | " | ||
14358 | if test "x$ac_cv_type_in_port_t" = xyes; then : | ||
14359 | |||
14360 | cat >>confdefs.h <<_ACEOF | ||
14361 | #define HAVE_IN_PORT_T 1 | ||
14362 | _ACEOF | ||
14363 | |||
14364 | |||
14365 | fi | ||
14366 | |||
14367 | |||
14368 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for size_t" >&5 | ||
14369 | $as_echo_n "checking for size_t... " >&6; } | ||
14370 | if ${ac_cv_have_size_t+:} false; then : | ||
14371 | $as_echo_n "(cached) " >&6 | ||
14372 | else | ||
14373 | |||
14374 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14375 | /* end confdefs.h. */ | ||
14376 | #include <sys/types.h> | ||
14377 | int | ||
14378 | main () | ||
14379 | { | ||
14380 | size_t foo; foo = 1235; | ||
14381 | ; | ||
14382 | return 0; | ||
14383 | } | ||
14384 | _ACEOF | ||
14385 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14386 | ac_cv_have_size_t="yes" | ||
14387 | else | ||
14388 | ac_cv_have_size_t="no" | ||
14389 | |||
14390 | fi | ||
14391 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14392 | |||
14393 | fi | ||
14394 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_size_t" >&5 | ||
14395 | $as_echo "$ac_cv_have_size_t" >&6; } | ||
14396 | if test "x$ac_cv_have_size_t" = "xyes" ; then | ||
14397 | |||
14398 | $as_echo "#define HAVE_SIZE_T 1" >>confdefs.h | ||
14399 | |||
14400 | fi | ||
14401 | |||
14402 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5 | ||
14403 | $as_echo_n "checking for ssize_t... " >&6; } | ||
14404 | if ${ac_cv_have_ssize_t+:} false; then : | ||
14405 | $as_echo_n "(cached) " >&6 | ||
14406 | else | ||
14407 | |||
14408 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14409 | /* end confdefs.h. */ | ||
14410 | #include <sys/types.h> | ||
14411 | int | ||
14412 | main () | ||
14413 | { | ||
14414 | ssize_t foo; foo = 1235; | ||
14415 | ; | ||
14416 | return 0; | ||
14417 | } | ||
14418 | _ACEOF | ||
14419 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14420 | ac_cv_have_ssize_t="yes" | ||
14421 | else | ||
14422 | ac_cv_have_ssize_t="no" | ||
14423 | |||
14424 | fi | ||
14425 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14426 | |||
14427 | fi | ||
14428 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ssize_t" >&5 | ||
14429 | $as_echo "$ac_cv_have_ssize_t" >&6; } | ||
14430 | if test "x$ac_cv_have_ssize_t" = "xyes" ; then | ||
14431 | |||
14432 | $as_echo "#define HAVE_SSIZE_T 1" >>confdefs.h | ||
14433 | |||
14434 | fi | ||
14435 | |||
14436 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5 | ||
14437 | $as_echo_n "checking for clock_t... " >&6; } | ||
14438 | if ${ac_cv_have_clock_t+:} false; then : | ||
14439 | $as_echo_n "(cached) " >&6 | ||
14440 | else | ||
14441 | |||
14442 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14443 | /* end confdefs.h. */ | ||
14444 | #include <time.h> | ||
14445 | int | ||
14446 | main () | ||
14447 | { | ||
14448 | clock_t foo; foo = 1235; | ||
14449 | ; | ||
14450 | return 0; | ||
14451 | } | ||
14452 | _ACEOF | ||
14453 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14454 | ac_cv_have_clock_t="yes" | ||
14455 | else | ||
14456 | ac_cv_have_clock_t="no" | ||
14457 | |||
14458 | fi | ||
14459 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14460 | |||
14461 | fi | ||
14462 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_clock_t" >&5 | ||
14463 | $as_echo "$ac_cv_have_clock_t" >&6; } | ||
14464 | if test "x$ac_cv_have_clock_t" = "xyes" ; then | ||
14465 | |||
14466 | $as_echo "#define HAVE_CLOCK_T 1" >>confdefs.h | ||
14467 | |||
14468 | fi | ||
14469 | |||
14470 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sa_family_t" >&5 | ||
14471 | $as_echo_n "checking for sa_family_t... " >&6; } | ||
14472 | if ${ac_cv_have_sa_family_t+:} false; then : | ||
14473 | $as_echo_n "(cached) " >&6 | ||
14474 | else | ||
14475 | |||
14476 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14477 | /* end confdefs.h. */ | ||
14478 | |||
14479 | #include <sys/types.h> | ||
14480 | #include <sys/socket.h> | ||
14481 | |||
14482 | int | ||
14483 | main () | ||
14484 | { | ||
14485 | sa_family_t foo; foo = 1235; | ||
14486 | ; | ||
14487 | return 0; | ||
14488 | } | ||
14489 | _ACEOF | ||
14490 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14491 | ac_cv_have_sa_family_t="yes" | ||
14492 | else | ||
14493 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14494 | /* end confdefs.h. */ | ||
14495 | |||
14496 | #include <sys/types.h> | ||
14497 | #include <sys/socket.h> | ||
14498 | #include <netinet/in.h> | ||
14499 | |||
14500 | int | ||
14501 | main () | ||
14502 | { | ||
14503 | sa_family_t foo; foo = 1235; | ||
14504 | ; | ||
14505 | return 0; | ||
14506 | } | ||
14507 | _ACEOF | ||
14508 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14509 | ac_cv_have_sa_family_t="yes" | ||
14510 | else | ||
14511 | ac_cv_have_sa_family_t="no" | ||
14512 | |||
14513 | fi | ||
14514 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14515 | |||
14516 | fi | ||
14517 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14518 | |||
14519 | fi | ||
14520 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sa_family_t" >&5 | ||
14521 | $as_echo "$ac_cv_have_sa_family_t" >&6; } | ||
14522 | if test "x$ac_cv_have_sa_family_t" = "xyes" ; then | ||
14523 | |||
14524 | $as_echo "#define HAVE_SA_FAMILY_T 1" >>confdefs.h | ||
14525 | |||
14526 | fi | ||
14527 | |||
14528 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pid_t" >&5 | ||
14529 | $as_echo_n "checking for pid_t... " >&6; } | ||
14530 | if ${ac_cv_have_pid_t+:} false; then : | ||
14531 | $as_echo_n "(cached) " >&6 | ||
14532 | else | ||
14533 | |||
14534 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14535 | /* end confdefs.h. */ | ||
14536 | #include <sys/types.h> | ||
14537 | int | ||
14538 | main () | ||
14539 | { | ||
14540 | pid_t foo; foo = 1235; | ||
14541 | ; | ||
14542 | return 0; | ||
14543 | } | ||
14544 | _ACEOF | ||
14545 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14546 | ac_cv_have_pid_t="yes" | ||
14547 | else | ||
14548 | ac_cv_have_pid_t="no" | ||
14549 | |||
14550 | fi | ||
14551 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14552 | |||
14553 | fi | ||
14554 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_pid_t" >&5 | ||
14555 | $as_echo "$ac_cv_have_pid_t" >&6; } | ||
14556 | if test "x$ac_cv_have_pid_t" = "xyes" ; then | ||
14557 | |||
14558 | $as_echo "#define HAVE_PID_T 1" >>confdefs.h | ||
14559 | |||
14560 | fi | ||
14561 | |||
14562 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mode_t" >&5 | ||
14563 | $as_echo_n "checking for mode_t... " >&6; } | ||
14564 | if ${ac_cv_have_mode_t+:} false; then : | ||
14565 | $as_echo_n "(cached) " >&6 | ||
14566 | else | ||
14567 | |||
14568 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14569 | /* end confdefs.h. */ | ||
14570 | #include <sys/types.h> | ||
14571 | int | ||
14572 | main () | ||
14573 | { | ||
14574 | mode_t foo; foo = 1235; | ||
14575 | ; | ||
14576 | return 0; | ||
14577 | } | ||
14578 | _ACEOF | ||
14579 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14580 | ac_cv_have_mode_t="yes" | ||
14581 | else | ||
14582 | ac_cv_have_mode_t="no" | ||
14583 | |||
14584 | fi | ||
14585 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14586 | |||
14587 | fi | ||
14588 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_mode_t" >&5 | ||
14589 | $as_echo "$ac_cv_have_mode_t" >&6; } | ||
14590 | if test "x$ac_cv_have_mode_t" = "xyes" ; then | ||
14591 | |||
14592 | $as_echo "#define HAVE_MODE_T 1" >>confdefs.h | ||
14593 | |||
14594 | fi | ||
14595 | |||
14596 | |||
14597 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_storage" >&5 | ||
14598 | $as_echo_n "checking for struct sockaddr_storage... " >&6; } | ||
14599 | if ${ac_cv_have_struct_sockaddr_storage+:} false; then : | ||
14600 | $as_echo_n "(cached) " >&6 | ||
14601 | else | ||
14602 | |||
14603 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14604 | /* end confdefs.h. */ | ||
14605 | |||
14606 | #include <sys/types.h> | ||
14607 | #include <sys/socket.h> | ||
14608 | |||
14609 | int | ||
14610 | main () | ||
14611 | { | ||
14612 | struct sockaddr_storage s; | ||
14613 | ; | ||
14614 | return 0; | ||
14615 | } | ||
14616 | _ACEOF | ||
14617 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14618 | ac_cv_have_struct_sockaddr_storage="yes" | ||
14619 | else | ||
14620 | ac_cv_have_struct_sockaddr_storage="no" | ||
14621 | |||
14622 | fi | ||
14623 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14624 | |||
14625 | fi | ||
14626 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_storage" >&5 | ||
14627 | $as_echo "$ac_cv_have_struct_sockaddr_storage" >&6; } | ||
14628 | if test "x$ac_cv_have_struct_sockaddr_storage" = "xyes" ; then | ||
14629 | |||
14630 | $as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h | ||
14631 | |||
14632 | fi | ||
14633 | |||
14634 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_in6" >&5 | ||
14635 | $as_echo_n "checking for struct sockaddr_in6... " >&6; } | ||
14636 | if ${ac_cv_have_struct_sockaddr_in6+:} false; then : | ||
14637 | $as_echo_n "(cached) " >&6 | ||
14638 | else | ||
14639 | |||
14640 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14641 | /* end confdefs.h. */ | ||
14642 | |||
14643 | #include <sys/types.h> | ||
14644 | #include <netinet/in.h> | ||
14645 | |||
14646 | int | ||
14647 | main () | ||
14648 | { | ||
14649 | struct sockaddr_in6 s; s.sin6_family = 0; | ||
14650 | ; | ||
14651 | return 0; | ||
14652 | } | ||
14653 | _ACEOF | ||
14654 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14655 | ac_cv_have_struct_sockaddr_in6="yes" | ||
14656 | else | ||
14657 | ac_cv_have_struct_sockaddr_in6="no" | ||
14658 | |||
14659 | fi | ||
14660 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14661 | |||
14662 | fi | ||
14663 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_in6" >&5 | ||
14664 | $as_echo "$ac_cv_have_struct_sockaddr_in6" >&6; } | ||
14665 | if test "x$ac_cv_have_struct_sockaddr_in6" = "xyes" ; then | ||
14666 | |||
14667 | $as_echo "#define HAVE_STRUCT_SOCKADDR_IN6 1" >>confdefs.h | ||
14668 | |||
14669 | fi | ||
14670 | |||
14671 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct in6_addr" >&5 | ||
14672 | $as_echo_n "checking for struct in6_addr... " >&6; } | ||
14673 | if ${ac_cv_have_struct_in6_addr+:} false; then : | ||
14674 | $as_echo_n "(cached) " >&6 | ||
14675 | else | ||
14676 | |||
14677 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14678 | /* end confdefs.h. */ | ||
14679 | |||
14680 | #include <sys/types.h> | ||
14681 | #include <netinet/in.h> | ||
14682 | |||
14683 | int | ||
14684 | main () | ||
14685 | { | ||
14686 | struct in6_addr s; s.s6_addr[0] = 0; | ||
14687 | ; | ||
14688 | return 0; | ||
14689 | } | ||
14690 | _ACEOF | ||
14691 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14692 | ac_cv_have_struct_in6_addr="yes" | ||
14693 | else | ||
14694 | ac_cv_have_struct_in6_addr="no" | ||
14695 | |||
14696 | fi | ||
14697 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14698 | |||
14699 | fi | ||
14700 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_in6_addr" >&5 | ||
14701 | $as_echo "$ac_cv_have_struct_in6_addr" >&6; } | ||
14702 | if test "x$ac_cv_have_struct_in6_addr" = "xyes" ; then | ||
14703 | |||
14704 | $as_echo "#define HAVE_STRUCT_IN6_ADDR 1" >>confdefs.h | ||
14705 | |||
14706 | |||
14707 | ac_fn_c_check_member "$LINENO" "struct sockaddr_in6" "sin6_scope_id" "ac_cv_member_struct_sockaddr_in6_sin6_scope_id" " | ||
14708 | #ifdef HAVE_SYS_TYPES_H | ||
14709 | #include <sys/types.h> | ||
14710 | #endif | ||
14711 | #include <netinet/in.h> | ||
14712 | |||
14713 | " | ||
14714 | if test "x$ac_cv_member_struct_sockaddr_in6_sin6_scope_id" = xyes; then : | ||
14715 | |||
14716 | cat >>confdefs.h <<_ACEOF | ||
14717 | #define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1 | ||
14718 | _ACEOF | ||
14719 | |||
14720 | |||
14721 | fi | ||
14722 | |||
14723 | fi | ||
14724 | |||
14725 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct addrinfo" >&5 | ||
14726 | $as_echo_n "checking for struct addrinfo... " >&6; } | ||
14727 | if ${ac_cv_have_struct_addrinfo+:} false; then : | ||
14728 | $as_echo_n "(cached) " >&6 | ||
14729 | else | ||
14730 | |||
14731 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14732 | /* end confdefs.h. */ | ||
14733 | |||
14734 | #include <sys/types.h> | ||
14735 | #include <sys/socket.h> | ||
14736 | #include <netdb.h> | ||
14737 | |||
14738 | int | ||
14739 | main () | ||
14740 | { | ||
14741 | struct addrinfo s; s.ai_flags = AI_PASSIVE; | ||
14742 | ; | ||
14743 | return 0; | ||
14744 | } | ||
14745 | _ACEOF | ||
14746 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14747 | ac_cv_have_struct_addrinfo="yes" | ||
14748 | else | ||
14749 | ac_cv_have_struct_addrinfo="no" | ||
14750 | |||
14751 | fi | ||
14752 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14753 | |||
14754 | fi | ||
14755 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_addrinfo" >&5 | ||
14756 | $as_echo "$ac_cv_have_struct_addrinfo" >&6; } | ||
14757 | if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then | ||
14758 | |||
14759 | $as_echo "#define HAVE_STRUCT_ADDRINFO 1" >>confdefs.h | ||
14760 | |||
14761 | fi | ||
14762 | |||
14763 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5 | ||
14764 | $as_echo_n "checking for struct timeval... " >&6; } | ||
14765 | if ${ac_cv_have_struct_timeval+:} false; then : | ||
14766 | $as_echo_n "(cached) " >&6 | ||
14767 | else | ||
14768 | |||
14769 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14770 | /* end confdefs.h. */ | ||
14771 | #include <sys/time.h> | ||
14772 | int | ||
14773 | main () | ||
14774 | { | ||
14775 | struct timeval tv; tv.tv_sec = 1; | ||
14776 | ; | ||
14777 | return 0; | ||
14778 | } | ||
14779 | _ACEOF | ||
14780 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14781 | ac_cv_have_struct_timeval="yes" | ||
14782 | else | ||
14783 | ac_cv_have_struct_timeval="no" | ||
14784 | |||
14785 | fi | ||
14786 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14787 | |||
14788 | fi | ||
14789 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_timeval" >&5 | ||
14790 | $as_echo "$ac_cv_have_struct_timeval" >&6; } | ||
14791 | if test "x$ac_cv_have_struct_timeval" = "xyes" ; then | ||
14792 | |||
14793 | $as_echo "#define HAVE_STRUCT_TIMEVAL 1" >>confdefs.h | ||
14794 | |||
14795 | have_struct_timeval=1 | ||
14796 | fi | ||
14797 | |||
14798 | ac_fn_c_check_type "$LINENO" "struct timespec" "ac_cv_type_struct_timespec" "$ac_includes_default" | ||
14799 | if test "x$ac_cv_type_struct_timespec" = xyes; then : | ||
14800 | |||
14801 | cat >>confdefs.h <<_ACEOF | ||
14802 | #define HAVE_STRUCT_TIMESPEC 1 | ||
14803 | _ACEOF | ||
14804 | |||
14805 | |||
14806 | fi | ||
14807 | |||
14808 | |||
14809 | # We need int64_t or else certian parts of the compile will fail. | ||
14810 | if test "x$ac_cv_have_int64_t" = "xno" && \ | ||
14811 | test "x$ac_cv_sizeof_long_int" != "x8" && \ | ||
14812 | test "x$ac_cv_sizeof_long_long_int" = "x0" ; then | ||
14813 | echo "OpenSSH requires int64_t support. Contact your vendor or install" | ||
14814 | echo "an alternative compiler (I.E., GCC) before continuing." | ||
14815 | echo "" | ||
14816 | exit 1; | ||
14817 | else | ||
14818 | if test "$cross_compiling" = yes; then : | ||
14819 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5 | ||
14820 | $as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;} | ||
14821 | |||
14822 | else | ||
14823 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14824 | /* end confdefs.h. */ | ||
14825 | |||
14826 | #include <stdio.h> | ||
14827 | #include <string.h> | ||
14828 | #ifdef HAVE_SNPRINTF | ||
14829 | main() | ||
14830 | { | ||
14831 | char buf[50]; | ||
14832 | char expected_out[50]; | ||
14833 | int mazsize = 50 ; | ||
14834 | #if (SIZEOF_LONG_INT == 8) | ||
14835 | long int num = 0x7fffffffffffffff; | ||
14836 | #else | ||
14837 | long long num = 0x7fffffffffffffffll; | ||
14838 | #endif | ||
14839 | strcpy(expected_out, "9223372036854775807"); | ||
14840 | snprintf(buf, mazsize, "%lld", num); | ||
14841 | if(strcmp(buf, expected_out) != 0) | ||
14842 | exit(1); | ||
14843 | exit(0); | ||
14844 | } | ||
14845 | #else | ||
14846 | main() { exit(0); } | ||
14847 | #endif | ||
14848 | |||
14849 | _ACEOF | ||
14850 | if ac_fn_c_try_run "$LINENO"; then : | ||
14851 | true | ||
14852 | else | ||
14853 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
14854 | |||
14855 | fi | ||
14856 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
14857 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
14858 | fi | ||
14859 | |||
14860 | fi | ||
14861 | |||
14862 | |||
14863 | # look for field 'ut_host' in header 'utmp.h' | ||
14864 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
14865 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host | ||
14866 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmp.h" >&5 | ||
14867 | $as_echo_n "checking for ut_host field in utmp.h... " >&6; } | ||
14868 | if eval \${$ossh_varname+:} false; then : | ||
14869 | $as_echo_n "(cached) " >&6 | ||
14870 | else | ||
14871 | |||
14872 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14873 | /* end confdefs.h. */ | ||
14874 | #include <utmp.h> | ||
14875 | |||
14876 | _ACEOF | ||
14877 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
14878 | $EGREP "ut_host" >/dev/null 2>&1; then : | ||
14879 | eval "$ossh_varname=yes" | ||
14880 | else | ||
14881 | eval "$ossh_varname=no" | ||
14882 | fi | ||
14883 | rm -f conftest* | ||
14884 | |||
14885 | fi | ||
14886 | |||
14887 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
14888 | if test -n "`echo $ossh_varname`"; then | ||
14889 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
14890 | $as_echo "$ossh_result" >&6; } | ||
14891 | if test "x$ossh_result" = "xyes"; then | ||
14892 | |||
14893 | $as_echo "#define HAVE_HOST_IN_UTMP 1" >>confdefs.h | ||
14894 | |||
14895 | fi | ||
14896 | else | ||
14897 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14898 | $as_echo "no" >&6; } | ||
14899 | fi | ||
14900 | |||
14901 | |||
14902 | # look for field 'ut_host' in header 'utmpx.h' | ||
14903 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
14904 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host | ||
14905 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmpx.h" >&5 | ||
14906 | $as_echo_n "checking for ut_host field in utmpx.h... " >&6; } | ||
14907 | if eval \${$ossh_varname+:} false; then : | ||
14908 | $as_echo_n "(cached) " >&6 | ||
14909 | else | ||
14910 | |||
14911 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14912 | /* end confdefs.h. */ | ||
14913 | #include <utmpx.h> | ||
14914 | |||
14915 | _ACEOF | ||
14916 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
14917 | $EGREP "ut_host" >/dev/null 2>&1; then : | ||
14918 | eval "$ossh_varname=yes" | ||
14919 | else | ||
14920 | eval "$ossh_varname=no" | ||
14921 | fi | ||
14922 | rm -f conftest* | ||
14923 | |||
14924 | fi | ||
14925 | |||
14926 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
14927 | if test -n "`echo $ossh_varname`"; then | ||
14928 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
14929 | $as_echo "$ossh_result" >&6; } | ||
14930 | if test "x$ossh_result" = "xyes"; then | ||
14931 | |||
14932 | $as_echo "#define HAVE_HOST_IN_UTMPX 1" >>confdefs.h | ||
14933 | |||
14934 | fi | ||
14935 | else | ||
14936 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14937 | $as_echo "no" >&6; } | ||
14938 | fi | ||
14939 | |||
14940 | |||
14941 | # look for field 'syslen' in header 'utmpx.h' | ||
14942 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
14943 | ossh_varname="ossh_cv_$ossh_safe""_has_"syslen | ||
14944 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for syslen field in utmpx.h" >&5 | ||
14945 | $as_echo_n "checking for syslen field in utmpx.h... " >&6; } | ||
14946 | if eval \${$ossh_varname+:} false; then : | ||
14947 | $as_echo_n "(cached) " >&6 | ||
14948 | else | ||
14949 | |||
14950 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14951 | /* end confdefs.h. */ | ||
14952 | #include <utmpx.h> | ||
14953 | |||
14954 | _ACEOF | ||
14955 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
14956 | $EGREP "syslen" >/dev/null 2>&1; then : | ||
14957 | eval "$ossh_varname=yes" | ||
14958 | else | ||
14959 | eval "$ossh_varname=no" | ||
14960 | fi | ||
14961 | rm -f conftest* | ||
14962 | |||
14963 | fi | ||
14964 | |||
14965 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
14966 | if test -n "`echo $ossh_varname`"; then | ||
14967 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
14968 | $as_echo "$ossh_result" >&6; } | ||
14969 | if test "x$ossh_result" = "xyes"; then | ||
14970 | |||
14971 | $as_echo "#define HAVE_SYSLEN_IN_UTMPX 1" >>confdefs.h | ||
14972 | |||
14973 | fi | ||
14974 | else | ||
14975 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14976 | $as_echo "no" >&6; } | ||
14977 | fi | ||
14978 | |||
14979 | |||
14980 | # look for field 'ut_pid' in header 'utmp.h' | ||
14981 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
14982 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_pid | ||
14983 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_pid field in utmp.h" >&5 | ||
14984 | $as_echo_n "checking for ut_pid field in utmp.h... " >&6; } | ||
14985 | if eval \${$ossh_varname+:} false; then : | ||
14986 | $as_echo_n "(cached) " >&6 | ||
14987 | else | ||
14988 | |||
14989 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14990 | /* end confdefs.h. */ | ||
14991 | #include <utmp.h> | ||
14992 | |||
14993 | _ACEOF | ||
14994 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
14995 | $EGREP "ut_pid" >/dev/null 2>&1; then : | ||
14996 | eval "$ossh_varname=yes" | ||
14997 | else | ||
14998 | eval "$ossh_varname=no" | ||
14999 | fi | ||
15000 | rm -f conftest* | ||
15001 | |||
15002 | fi | ||
15003 | |||
15004 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15005 | if test -n "`echo $ossh_varname`"; then | ||
15006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15007 | $as_echo "$ossh_result" >&6; } | ||
15008 | if test "x$ossh_result" = "xyes"; then | ||
15009 | |||
15010 | $as_echo "#define HAVE_PID_IN_UTMP 1" >>confdefs.h | ||
15011 | |||
15012 | fi | ||
15013 | else | ||
15014 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15015 | $as_echo "no" >&6; } | ||
15016 | fi | ||
15017 | |||
15018 | |||
15019 | # look for field 'ut_type' in header 'utmp.h' | ||
15020 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15021 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type | ||
15022 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmp.h" >&5 | ||
15023 | $as_echo_n "checking for ut_type field in utmp.h... " >&6; } | ||
15024 | if eval \${$ossh_varname+:} false; then : | ||
15025 | $as_echo_n "(cached) " >&6 | ||
15026 | else | ||
15027 | |||
15028 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15029 | /* end confdefs.h. */ | ||
15030 | #include <utmp.h> | ||
15031 | |||
15032 | _ACEOF | ||
15033 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15034 | $EGREP "ut_type" >/dev/null 2>&1; then : | ||
15035 | eval "$ossh_varname=yes" | ||
15036 | else | ||
15037 | eval "$ossh_varname=no" | ||
15038 | fi | ||
15039 | rm -f conftest* | ||
15040 | |||
15041 | fi | ||
15042 | |||
15043 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15044 | if test -n "`echo $ossh_varname`"; then | ||
15045 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15046 | $as_echo "$ossh_result" >&6; } | ||
15047 | if test "x$ossh_result" = "xyes"; then | ||
15048 | |||
15049 | $as_echo "#define HAVE_TYPE_IN_UTMP 1" >>confdefs.h | ||
15050 | |||
15051 | fi | ||
15052 | else | ||
15053 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15054 | $as_echo "no" >&6; } | ||
15055 | fi | ||
15056 | |||
15057 | |||
15058 | # look for field 'ut_type' in header 'utmpx.h' | ||
15059 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15060 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type | ||
15061 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmpx.h" >&5 | ||
15062 | $as_echo_n "checking for ut_type field in utmpx.h... " >&6; } | ||
15063 | if eval \${$ossh_varname+:} false; then : | ||
15064 | $as_echo_n "(cached) " >&6 | ||
15065 | else | ||
15066 | |||
15067 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15068 | /* end confdefs.h. */ | ||
15069 | #include <utmpx.h> | ||
15070 | |||
15071 | _ACEOF | ||
15072 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15073 | $EGREP "ut_type" >/dev/null 2>&1; then : | ||
15074 | eval "$ossh_varname=yes" | ||
15075 | else | ||
15076 | eval "$ossh_varname=no" | ||
15077 | fi | ||
15078 | rm -f conftest* | ||
15079 | |||
15080 | fi | ||
15081 | |||
15082 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15083 | if test -n "`echo $ossh_varname`"; then | ||
15084 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15085 | $as_echo "$ossh_result" >&6; } | ||
15086 | if test "x$ossh_result" = "xyes"; then | ||
15087 | |||
15088 | $as_echo "#define HAVE_TYPE_IN_UTMPX 1" >>confdefs.h | ||
15089 | |||
15090 | fi | ||
15091 | else | ||
15092 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15093 | $as_echo "no" >&6; } | ||
15094 | fi | ||
15095 | |||
15096 | |||
15097 | # look for field 'ut_tv' in header 'utmp.h' | ||
15098 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15099 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv | ||
15100 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmp.h" >&5 | ||
15101 | $as_echo_n "checking for ut_tv field in utmp.h... " >&6; } | ||
15102 | if eval \${$ossh_varname+:} false; then : | ||
15103 | $as_echo_n "(cached) " >&6 | ||
15104 | else | ||
15105 | |||
15106 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15107 | /* end confdefs.h. */ | ||
15108 | #include <utmp.h> | ||
15109 | |||
15110 | _ACEOF | ||
15111 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15112 | $EGREP "ut_tv" >/dev/null 2>&1; then : | ||
15113 | eval "$ossh_varname=yes" | ||
15114 | else | ||
15115 | eval "$ossh_varname=no" | ||
15116 | fi | ||
15117 | rm -f conftest* | ||
15118 | |||
15119 | fi | ||
15120 | |||
15121 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15122 | if test -n "`echo $ossh_varname`"; then | ||
15123 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15124 | $as_echo "$ossh_result" >&6; } | ||
15125 | if test "x$ossh_result" = "xyes"; then | ||
15126 | |||
15127 | $as_echo "#define HAVE_TV_IN_UTMP 1" >>confdefs.h | ||
15128 | |||
15129 | fi | ||
15130 | else | ||
15131 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15132 | $as_echo "no" >&6; } | ||
15133 | fi | ||
15134 | |||
15135 | |||
15136 | # look for field 'ut_id' in header 'utmp.h' | ||
15137 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15138 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id | ||
15139 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmp.h" >&5 | ||
15140 | $as_echo_n "checking for ut_id field in utmp.h... " >&6; } | ||
15141 | if eval \${$ossh_varname+:} false; then : | ||
15142 | $as_echo_n "(cached) " >&6 | ||
15143 | else | ||
15144 | |||
15145 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15146 | /* end confdefs.h. */ | ||
15147 | #include <utmp.h> | ||
15148 | |||
15149 | _ACEOF | ||
15150 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15151 | $EGREP "ut_id" >/dev/null 2>&1; then : | ||
15152 | eval "$ossh_varname=yes" | ||
15153 | else | ||
15154 | eval "$ossh_varname=no" | ||
15155 | fi | ||
15156 | rm -f conftest* | ||
15157 | |||
15158 | fi | ||
15159 | |||
15160 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15161 | if test -n "`echo $ossh_varname`"; then | ||
15162 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15163 | $as_echo "$ossh_result" >&6; } | ||
15164 | if test "x$ossh_result" = "xyes"; then | ||
15165 | |||
15166 | $as_echo "#define HAVE_ID_IN_UTMP 1" >>confdefs.h | ||
15167 | |||
15168 | fi | ||
15169 | else | ||
15170 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15171 | $as_echo "no" >&6; } | ||
15172 | fi | ||
15173 | |||
15174 | |||
15175 | # look for field 'ut_id' in header 'utmpx.h' | ||
15176 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15177 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id | ||
15178 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmpx.h" >&5 | ||
15179 | $as_echo_n "checking for ut_id field in utmpx.h... " >&6; } | ||
15180 | if eval \${$ossh_varname+:} false; then : | ||
15181 | $as_echo_n "(cached) " >&6 | ||
15182 | else | ||
15183 | |||
15184 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15185 | /* end confdefs.h. */ | ||
15186 | #include <utmpx.h> | ||
15187 | |||
15188 | _ACEOF | ||
15189 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15190 | $EGREP "ut_id" >/dev/null 2>&1; then : | ||
15191 | eval "$ossh_varname=yes" | ||
15192 | else | ||
15193 | eval "$ossh_varname=no" | ||
15194 | fi | ||
15195 | rm -f conftest* | ||
15196 | |||
15197 | fi | ||
15198 | |||
15199 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15200 | if test -n "`echo $ossh_varname`"; then | ||
15201 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15202 | $as_echo "$ossh_result" >&6; } | ||
15203 | if test "x$ossh_result" = "xyes"; then | ||
15204 | |||
15205 | $as_echo "#define HAVE_ID_IN_UTMPX 1" >>confdefs.h | ||
15206 | |||
15207 | fi | ||
15208 | else | ||
15209 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15210 | $as_echo "no" >&6; } | ||
15211 | fi | ||
15212 | |||
15213 | |||
15214 | # look for field 'ut_addr' in header 'utmp.h' | ||
15215 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15216 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr | ||
15217 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmp.h" >&5 | ||
15218 | $as_echo_n "checking for ut_addr field in utmp.h... " >&6; } | ||
15219 | if eval \${$ossh_varname+:} false; then : | ||
15220 | $as_echo_n "(cached) " >&6 | ||
15221 | else | ||
15222 | |||
15223 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15224 | /* end confdefs.h. */ | ||
15225 | #include <utmp.h> | ||
15226 | |||
15227 | _ACEOF | ||
15228 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15229 | $EGREP "ut_addr" >/dev/null 2>&1; then : | ||
15230 | eval "$ossh_varname=yes" | ||
15231 | else | ||
15232 | eval "$ossh_varname=no" | ||
15233 | fi | ||
15234 | rm -f conftest* | ||
15235 | |||
15236 | fi | ||
15237 | |||
15238 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15239 | if test -n "`echo $ossh_varname`"; then | ||
15240 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15241 | $as_echo "$ossh_result" >&6; } | ||
15242 | if test "x$ossh_result" = "xyes"; then | ||
15243 | |||
15244 | $as_echo "#define HAVE_ADDR_IN_UTMP 1" >>confdefs.h | ||
15245 | |||
15246 | fi | ||
15247 | else | ||
15248 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15249 | $as_echo "no" >&6; } | ||
15250 | fi | ||
15251 | |||
15252 | |||
15253 | # look for field 'ut_addr' in header 'utmpx.h' | ||
15254 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15255 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr | ||
15256 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmpx.h" >&5 | ||
15257 | $as_echo_n "checking for ut_addr field in utmpx.h... " >&6; } | ||
15258 | if eval \${$ossh_varname+:} false; then : | ||
15259 | $as_echo_n "(cached) " >&6 | ||
15260 | else | ||
15261 | |||
15262 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15263 | /* end confdefs.h. */ | ||
15264 | #include <utmpx.h> | ||
15265 | |||
15266 | _ACEOF | ||
15267 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15268 | $EGREP "ut_addr" >/dev/null 2>&1; then : | ||
15269 | eval "$ossh_varname=yes" | ||
15270 | else | ||
15271 | eval "$ossh_varname=no" | ||
15272 | fi | ||
15273 | rm -f conftest* | ||
15274 | |||
15275 | fi | ||
15276 | |||
15277 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15278 | if test -n "`echo $ossh_varname`"; then | ||
15279 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15280 | $as_echo "$ossh_result" >&6; } | ||
15281 | if test "x$ossh_result" = "xyes"; then | ||
15282 | |||
15283 | $as_echo "#define HAVE_ADDR_IN_UTMPX 1" >>confdefs.h | ||
15284 | |||
15285 | fi | ||
15286 | else | ||
15287 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15288 | $as_echo "no" >&6; } | ||
15289 | fi | ||
15290 | |||
15291 | |||
15292 | # look for field 'ut_addr_v6' in header 'utmp.h' | ||
15293 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15294 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6 | ||
15295 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmp.h" >&5 | ||
15296 | $as_echo_n "checking for ut_addr_v6 field in utmp.h... " >&6; } | ||
15297 | if eval \${$ossh_varname+:} false; then : | ||
15298 | $as_echo_n "(cached) " >&6 | ||
15299 | else | ||
15300 | |||
15301 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15302 | /* end confdefs.h. */ | ||
15303 | #include <utmp.h> | ||
15304 | |||
15305 | _ACEOF | ||
15306 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15307 | $EGREP "ut_addr_v6" >/dev/null 2>&1; then : | ||
15308 | eval "$ossh_varname=yes" | ||
15309 | else | ||
15310 | eval "$ossh_varname=no" | ||
15311 | fi | ||
15312 | rm -f conftest* | ||
15313 | |||
15314 | fi | ||
15315 | |||
15316 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15317 | if test -n "`echo $ossh_varname`"; then | ||
15318 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15319 | $as_echo "$ossh_result" >&6; } | ||
15320 | if test "x$ossh_result" = "xyes"; then | ||
15321 | |||
15322 | $as_echo "#define HAVE_ADDR_V6_IN_UTMP 1" >>confdefs.h | ||
15323 | |||
15324 | fi | ||
15325 | else | ||
15326 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15327 | $as_echo "no" >&6; } | ||
15328 | fi | ||
15329 | |||
15330 | |||
15331 | # look for field 'ut_addr_v6' in header 'utmpx.h' | ||
15332 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15333 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6 | ||
15334 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmpx.h" >&5 | ||
15335 | $as_echo_n "checking for ut_addr_v6 field in utmpx.h... " >&6; } | ||
15336 | if eval \${$ossh_varname+:} false; then : | ||
15337 | $as_echo_n "(cached) " >&6 | ||
15338 | else | ||
15339 | |||
15340 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15341 | /* end confdefs.h. */ | ||
15342 | #include <utmpx.h> | ||
15343 | |||
15344 | _ACEOF | ||
15345 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15346 | $EGREP "ut_addr_v6" >/dev/null 2>&1; then : | ||
15347 | eval "$ossh_varname=yes" | ||
15348 | else | ||
15349 | eval "$ossh_varname=no" | ||
15350 | fi | ||
15351 | rm -f conftest* | ||
15352 | |||
15353 | fi | ||
15354 | |||
15355 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15356 | if test -n "`echo $ossh_varname`"; then | ||
15357 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15358 | $as_echo "$ossh_result" >&6; } | ||
15359 | if test "x$ossh_result" = "xyes"; then | ||
15360 | |||
15361 | $as_echo "#define HAVE_ADDR_V6_IN_UTMPX 1" >>confdefs.h | ||
15362 | |||
15363 | fi | ||
15364 | else | ||
15365 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15366 | $as_echo "no" >&6; } | ||
15367 | fi | ||
15368 | |||
15369 | |||
15370 | # look for field 'ut_exit' in header 'utmp.h' | ||
15371 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15372 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_exit | ||
15373 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_exit field in utmp.h" >&5 | ||
15374 | $as_echo_n "checking for ut_exit field in utmp.h... " >&6; } | ||
15375 | if eval \${$ossh_varname+:} false; then : | ||
15376 | $as_echo_n "(cached) " >&6 | ||
15377 | else | ||
15378 | |||
15379 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15380 | /* end confdefs.h. */ | ||
15381 | #include <utmp.h> | ||
15382 | |||
15383 | _ACEOF | ||
15384 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15385 | $EGREP "ut_exit" >/dev/null 2>&1; then : | ||
15386 | eval "$ossh_varname=yes" | ||
15387 | else | ||
15388 | eval "$ossh_varname=no" | ||
15389 | fi | ||
15390 | rm -f conftest* | ||
15391 | |||
15392 | fi | ||
15393 | |||
15394 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15395 | if test -n "`echo $ossh_varname`"; then | ||
15396 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15397 | $as_echo "$ossh_result" >&6; } | ||
15398 | if test "x$ossh_result" = "xyes"; then | ||
15399 | |||
15400 | $as_echo "#define HAVE_EXIT_IN_UTMP 1" >>confdefs.h | ||
15401 | |||
15402 | fi | ||
15403 | else | ||
15404 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15405 | $as_echo "no" >&6; } | ||
15406 | fi | ||
15407 | |||
15408 | |||
15409 | # look for field 'ut_time' in header 'utmp.h' | ||
15410 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
15411 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time | ||
15412 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmp.h" >&5 | ||
15413 | $as_echo_n "checking for ut_time field in utmp.h... " >&6; } | ||
15414 | if eval \${$ossh_varname+:} false; then : | ||
15415 | $as_echo_n "(cached) " >&6 | ||
15416 | else | ||
15417 | |||
15418 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15419 | /* end confdefs.h. */ | ||
15420 | #include <utmp.h> | ||
15421 | |||
15422 | _ACEOF | ||
15423 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15424 | $EGREP "ut_time" >/dev/null 2>&1; then : | ||
15425 | eval "$ossh_varname=yes" | ||
15426 | else | ||
15427 | eval "$ossh_varname=no" | ||
15428 | fi | ||
15429 | rm -f conftest* | ||
15430 | |||
15431 | fi | ||
15432 | |||
15433 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15434 | if test -n "`echo $ossh_varname`"; then | ||
15435 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15436 | $as_echo "$ossh_result" >&6; } | ||
15437 | if test "x$ossh_result" = "xyes"; then | ||
15438 | |||
15439 | $as_echo "#define HAVE_TIME_IN_UTMP 1" >>confdefs.h | ||
15440 | |||
15441 | fi | ||
15442 | else | ||
15443 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15444 | $as_echo "no" >&6; } | ||
15445 | fi | ||
15446 | |||
15447 | |||
15448 | # look for field 'ut_time' in header 'utmpx.h' | ||
15449 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15450 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time | ||
15451 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmpx.h" >&5 | ||
15452 | $as_echo_n "checking for ut_time field in utmpx.h... " >&6; } | ||
15453 | if eval \${$ossh_varname+:} false; then : | ||
15454 | $as_echo_n "(cached) " >&6 | ||
15455 | else | ||
15456 | |||
15457 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15458 | /* end confdefs.h. */ | ||
15459 | #include <utmpx.h> | ||
15460 | |||
15461 | _ACEOF | ||
15462 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15463 | $EGREP "ut_time" >/dev/null 2>&1; then : | ||
15464 | eval "$ossh_varname=yes" | ||
15465 | else | ||
15466 | eval "$ossh_varname=no" | ||
15467 | fi | ||
15468 | rm -f conftest* | ||
15469 | |||
15470 | fi | ||
15471 | |||
15472 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15473 | if test -n "`echo $ossh_varname`"; then | ||
15474 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15475 | $as_echo "$ossh_result" >&6; } | ||
15476 | if test "x$ossh_result" = "xyes"; then | ||
15477 | |||
15478 | $as_echo "#define HAVE_TIME_IN_UTMPX 1" >>confdefs.h | ||
15479 | |||
15480 | fi | ||
15481 | else | ||
15482 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15483 | $as_echo "no" >&6; } | ||
15484 | fi | ||
15485 | |||
15486 | |||
15487 | # look for field 'ut_tv' in header 'utmpx.h' | ||
15488 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
15489 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv | ||
15490 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmpx.h" >&5 | ||
15491 | $as_echo_n "checking for ut_tv field in utmpx.h... " >&6; } | ||
15492 | if eval \${$ossh_varname+:} false; then : | ||
15493 | $as_echo_n "(cached) " >&6 | ||
15494 | else | ||
15495 | |||
15496 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15497 | /* end confdefs.h. */ | ||
15498 | #include <utmpx.h> | ||
15499 | |||
15500 | _ACEOF | ||
15501 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
15502 | $EGREP "ut_tv" >/dev/null 2>&1; then : | ||
15503 | eval "$ossh_varname=yes" | ||
15504 | else | ||
15505 | eval "$ossh_varname=no" | ||
15506 | fi | ||
15507 | rm -f conftest* | ||
15508 | |||
15509 | fi | ||
15510 | |||
15511 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
15512 | if test -n "`echo $ossh_varname`"; then | ||
15513 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
15514 | $as_echo "$ossh_result" >&6; } | ||
15515 | if test "x$ossh_result" = "xyes"; then | ||
15516 | |||
15517 | $as_echo "#define HAVE_TV_IN_UTMPX 1" >>confdefs.h | ||
15518 | |||
15519 | fi | ||
15520 | else | ||
15521 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15522 | $as_echo "no" >&6; } | ||
15523 | fi | ||
15524 | |||
15525 | |||
15526 | ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default" | ||
15527 | if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then : | ||
15528 | |||
15529 | cat >>confdefs.h <<_ACEOF | ||
15530 | #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 | ||
15531 | _ACEOF | ||
15532 | |||
15533 | |||
15534 | fi | ||
15535 | |||
15536 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_gecos" "ac_cv_member_struct_passwd_pw_gecos" " | ||
15537 | #include <sys/types.h> | ||
15538 | #include <pwd.h> | ||
15539 | |||
15540 | " | ||
15541 | if test "x$ac_cv_member_struct_passwd_pw_gecos" = xyes; then : | ||
15542 | |||
15543 | cat >>confdefs.h <<_ACEOF | ||
15544 | #define HAVE_STRUCT_PASSWD_PW_GECOS 1 | ||
15545 | _ACEOF | ||
15546 | |||
15547 | |||
15548 | fi | ||
15549 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_class" "ac_cv_member_struct_passwd_pw_class" " | ||
15550 | #include <sys/types.h> | ||
15551 | #include <pwd.h> | ||
15552 | |||
15553 | " | ||
15554 | if test "x$ac_cv_member_struct_passwd_pw_class" = xyes; then : | ||
15555 | |||
15556 | cat >>confdefs.h <<_ACEOF | ||
15557 | #define HAVE_STRUCT_PASSWD_PW_CLASS 1 | ||
15558 | _ACEOF | ||
15559 | |||
15560 | |||
15561 | fi | ||
15562 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_change" "ac_cv_member_struct_passwd_pw_change" " | ||
15563 | #include <sys/types.h> | ||
15564 | #include <pwd.h> | ||
15565 | |||
15566 | " | ||
15567 | if test "x$ac_cv_member_struct_passwd_pw_change" = xyes; then : | ||
15568 | |||
15569 | cat >>confdefs.h <<_ACEOF | ||
15570 | #define HAVE_STRUCT_PASSWD_PW_CHANGE 1 | ||
15571 | _ACEOF | ||
15572 | |||
15573 | |||
15574 | fi | ||
15575 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_expire" "ac_cv_member_struct_passwd_pw_expire" " | ||
15576 | #include <sys/types.h> | ||
15577 | #include <pwd.h> | ||
15578 | |||
15579 | " | ||
15580 | if test "x$ac_cv_member_struct_passwd_pw_expire" = xyes; then : | ||
15581 | |||
15582 | cat >>confdefs.h <<_ACEOF | ||
15583 | #define HAVE_STRUCT_PASSWD_PW_EXPIRE 1 | ||
15584 | _ACEOF | ||
15585 | |||
15586 | |||
15587 | fi | ||
15588 | |||
15589 | |||
15590 | ac_fn_c_check_member "$LINENO" "struct __res_state" "retrans" "ac_cv_member_struct___res_state_retrans" " | ||
15591 | #include <stdio.h> | ||
15592 | #if HAVE_SYS_TYPES_H | ||
15593 | # include <sys/types.h> | ||
15594 | #endif | ||
15595 | #include <netinet/in.h> | ||
15596 | #include <arpa/nameser.h> | ||
15597 | #include <resolv.h> | ||
15598 | |||
15599 | " | ||
15600 | if test "x$ac_cv_member_struct___res_state_retrans" = xyes; then : | ||
15601 | |||
15602 | else | ||
15603 | |||
15604 | $as_echo "#define __res_state state" >>confdefs.h | ||
15605 | |||
15606 | fi | ||
15607 | |||
15608 | |||
15609 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ss_family field in struct sockaddr_storage" >&5 | ||
15610 | $as_echo_n "checking for ss_family field in struct sockaddr_storage... " >&6; } | ||
15611 | if ${ac_cv_have_ss_family_in_struct_ss+:} false; then : | ||
15612 | $as_echo_n "(cached) " >&6 | ||
15613 | else | ||
15614 | |||
15615 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15616 | /* end confdefs.h. */ | ||
15617 | |||
15618 | #include <sys/types.h> | ||
15619 | #include <sys/socket.h> | ||
15620 | |||
15621 | int | ||
15622 | main () | ||
15623 | { | ||
15624 | struct sockaddr_storage s; s.ss_family = 1; | ||
15625 | ; | ||
15626 | return 0; | ||
15627 | } | ||
15628 | _ACEOF | ||
15629 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15630 | ac_cv_have_ss_family_in_struct_ss="yes" | ||
15631 | else | ||
15632 | ac_cv_have_ss_family_in_struct_ss="no" | ||
15633 | fi | ||
15634 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15635 | |||
15636 | fi | ||
15637 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ss_family_in_struct_ss" >&5 | ||
15638 | $as_echo "$ac_cv_have_ss_family_in_struct_ss" >&6; } | ||
15639 | if test "x$ac_cv_have_ss_family_in_struct_ss" = "xyes" ; then | ||
15640 | |||
15641 | $as_echo "#define HAVE_SS_FAMILY_IN_SS 1" >>confdefs.h | ||
15642 | |||
15643 | fi | ||
15644 | |||
15645 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __ss_family field in struct sockaddr_storage" >&5 | ||
15646 | $as_echo_n "checking for __ss_family field in struct sockaddr_storage... " >&6; } | ||
15647 | if ${ac_cv_have___ss_family_in_struct_ss+:} false; then : | ||
15648 | $as_echo_n "(cached) " >&6 | ||
15649 | else | ||
15650 | |||
15651 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15652 | /* end confdefs.h. */ | ||
15653 | |||
15654 | #include <sys/types.h> | ||
15655 | #include <sys/socket.h> | ||
15656 | |||
15657 | int | ||
15658 | main () | ||
15659 | { | ||
15660 | struct sockaddr_storage s; s.__ss_family = 1; | ||
15661 | ; | ||
15662 | return 0; | ||
15663 | } | ||
15664 | _ACEOF | ||
15665 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15666 | ac_cv_have___ss_family_in_struct_ss="yes" | ||
15667 | else | ||
15668 | ac_cv_have___ss_family_in_struct_ss="no" | ||
15669 | |||
15670 | fi | ||
15671 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15672 | |||
15673 | fi | ||
15674 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___ss_family_in_struct_ss" >&5 | ||
15675 | $as_echo "$ac_cv_have___ss_family_in_struct_ss" >&6; } | ||
15676 | if test "x$ac_cv_have___ss_family_in_struct_ss" = "xyes" ; then | ||
15677 | |||
15678 | $as_echo "#define HAVE___SS_FAMILY_IN_SS 1" >>confdefs.h | ||
15679 | |||
15680 | fi | ||
15681 | |||
15682 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_accrights field in struct msghdr" >&5 | ||
15683 | $as_echo_n "checking for msg_accrights field in struct msghdr... " >&6; } | ||
15684 | if ${ac_cv_have_accrights_in_msghdr+:} false; then : | ||
15685 | $as_echo_n "(cached) " >&6 | ||
15686 | else | ||
15687 | |||
15688 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15689 | /* end confdefs.h. */ | ||
15690 | |||
15691 | #include <sys/types.h> | ||
15692 | #include <sys/socket.h> | ||
15693 | #include <sys/uio.h> | ||
15694 | |||
15695 | int | ||
15696 | main () | ||
15697 | { | ||
15698 | |||
15699 | #ifdef msg_accrights | ||
15700 | #error "msg_accrights is a macro" | ||
15701 | exit(1); | ||
15702 | #endif | ||
15703 | struct msghdr m; | ||
15704 | m.msg_accrights = 0; | ||
15705 | exit(0); | ||
15706 | |||
15707 | ; | ||
15708 | return 0; | ||
15709 | } | ||
15710 | _ACEOF | ||
15711 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15712 | ac_cv_have_accrights_in_msghdr="yes" | ||
15713 | else | ||
15714 | ac_cv_have_accrights_in_msghdr="no" | ||
15715 | |||
15716 | fi | ||
15717 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15718 | |||
15719 | fi | ||
15720 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_accrights_in_msghdr" >&5 | ||
15721 | $as_echo "$ac_cv_have_accrights_in_msghdr" >&6; } | ||
15722 | if test "x$ac_cv_have_accrights_in_msghdr" = "xyes" ; then | ||
15723 | |||
15724 | $as_echo "#define HAVE_ACCRIGHTS_IN_MSGHDR 1" >>confdefs.h | ||
15725 | |||
15726 | fi | ||
15727 | |||
15728 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct statvfs.f_fsid is integral type" >&5 | ||
15729 | $as_echo_n "checking if struct statvfs.f_fsid is integral type... " >&6; } | ||
15730 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15731 | /* end confdefs.h. */ | ||
15732 | |||
15733 | #include <sys/param.h> | ||
15734 | #include <sys/stat.h> | ||
15735 | #ifdef HAVE_SYS_TIME_H | ||
15736 | # include <sys/time.h> | ||
15737 | #endif | ||
15738 | #ifdef HAVE_SYS_MOUNT_H | ||
15739 | #include <sys/mount.h> | ||
15740 | #endif | ||
15741 | #ifdef HAVE_SYS_STATVFS_H | ||
15742 | #include <sys/statvfs.h> | ||
15743 | #endif | ||
15744 | |||
15745 | int | ||
15746 | main () | ||
15747 | { | ||
15748 | struct statvfs s; s.f_fsid = 0; | ||
15749 | ; | ||
15750 | return 0; | ||
15751 | } | ||
15752 | _ACEOF | ||
15753 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15754 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15755 | $as_echo "yes" >&6; } | ||
15756 | else | ||
15757 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15758 | $as_echo "no" >&6; } | ||
15759 | |||
15760 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsid_t has member val" >&5 | ||
15761 | $as_echo_n "checking if fsid_t has member val... " >&6; } | ||
15762 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15763 | /* end confdefs.h. */ | ||
15764 | |||
15765 | #include <sys/types.h> | ||
15766 | #include <sys/statvfs.h> | ||
15767 | |||
15768 | int | ||
15769 | main () | ||
15770 | { | ||
15771 | fsid_t t; t.val[0] = 0; | ||
15772 | ; | ||
15773 | return 0; | ||
15774 | } | ||
15775 | _ACEOF | ||
15776 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15777 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15778 | $as_echo "yes" >&6; } | ||
15779 | |||
15780 | $as_echo "#define FSID_HAS_VAL 1" >>confdefs.h | ||
15781 | |||
15782 | else | ||
15783 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15784 | $as_echo "no" >&6; } | ||
15785 | fi | ||
15786 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15787 | |||
15788 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if f_fsid has member __val" >&5 | ||
15789 | $as_echo_n "checking if f_fsid has member __val... " >&6; } | ||
15790 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15791 | /* end confdefs.h. */ | ||
15792 | |||
15793 | #include <sys/types.h> | ||
15794 | #include <sys/statvfs.h> | ||
15795 | |||
15796 | int | ||
15797 | main () | ||
15798 | { | ||
15799 | fsid_t t; t.__val[0] = 0; | ||
15800 | ; | ||
15801 | return 0; | ||
15802 | } | ||
15803 | _ACEOF | ||
15804 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15805 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15806 | $as_echo "yes" >&6; } | ||
15807 | |||
15808 | $as_echo "#define FSID_HAS___VAL 1" >>confdefs.h | ||
15809 | |||
15810 | else | ||
15811 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15812 | $as_echo "no" >&6; } | ||
15813 | fi | ||
15814 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15815 | |||
15816 | fi | ||
15817 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15818 | |||
15819 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_control field in struct msghdr" >&5 | ||
15820 | $as_echo_n "checking for msg_control field in struct msghdr... " >&6; } | ||
15821 | if ${ac_cv_have_control_in_msghdr+:} false; then : | ||
15822 | $as_echo_n "(cached) " >&6 | ||
15823 | else | ||
15824 | |||
15825 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15826 | /* end confdefs.h. */ | ||
15827 | |||
15828 | #include <sys/types.h> | ||
15829 | #include <sys/socket.h> | ||
15830 | #include <sys/uio.h> | ||
15831 | |||
15832 | int | ||
15833 | main () | ||
15834 | { | ||
15835 | |||
15836 | #ifdef msg_control | ||
15837 | #error "msg_control is a macro" | ||
15838 | exit(1); | ||
15839 | #endif | ||
15840 | struct msghdr m; | ||
15841 | m.msg_control = 0; | ||
15842 | exit(0); | ||
15843 | |||
15844 | ; | ||
15845 | return 0; | ||
15846 | } | ||
15847 | _ACEOF | ||
15848 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15849 | ac_cv_have_control_in_msghdr="yes" | ||
15850 | else | ||
15851 | ac_cv_have_control_in_msghdr="no" | ||
15852 | |||
15853 | fi | ||
15854 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15855 | |||
15856 | fi | ||
15857 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_control_in_msghdr" >&5 | ||
15858 | $as_echo "$ac_cv_have_control_in_msghdr" >&6; } | ||
15859 | if test "x$ac_cv_have_control_in_msghdr" = "xyes" ; then | ||
15860 | |||
15861 | $as_echo "#define HAVE_CONTROL_IN_MSGHDR 1" >>confdefs.h | ||
15862 | |||
15863 | fi | ||
15864 | |||
15865 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines __progname" >&5 | ||
15866 | $as_echo_n "checking if libc defines __progname... " >&6; } | ||
15867 | if ${ac_cv_libc_defines___progname+:} false; then : | ||
15868 | $as_echo_n "(cached) " >&6 | ||
15869 | else | ||
15870 | |||
15871 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15872 | /* end confdefs.h. */ | ||
15873 | |||
15874 | int | ||
15875 | main () | ||
15876 | { | ||
15877 | extern char *__progname; printf("%s", __progname); | ||
15878 | ; | ||
15879 | return 0; | ||
15880 | } | ||
15881 | _ACEOF | ||
15882 | if ac_fn_c_try_link "$LINENO"; then : | ||
15883 | ac_cv_libc_defines___progname="yes" | ||
15884 | else | ||
15885 | ac_cv_libc_defines___progname="no" | ||
15886 | |||
15887 | fi | ||
15888 | rm -f core conftest.err conftest.$ac_objext \ | ||
15889 | conftest$ac_exeext conftest.$ac_ext | ||
15890 | |||
15891 | fi | ||
15892 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines___progname" >&5 | ||
15893 | $as_echo "$ac_cv_libc_defines___progname" >&6; } | ||
15894 | if test "x$ac_cv_libc_defines___progname" = "xyes" ; then | ||
15895 | |||
15896 | $as_echo "#define HAVE___PROGNAME 1" >>confdefs.h | ||
15897 | |||
15898 | fi | ||
15899 | |||
15900 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __FUNCTION__" >&5 | ||
15901 | $as_echo_n "checking whether $CC implements __FUNCTION__... " >&6; } | ||
15902 | if ${ac_cv_cc_implements___FUNCTION__+:} false; then : | ||
15903 | $as_echo_n "(cached) " >&6 | ||
15904 | else | ||
15905 | |||
15906 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15907 | /* end confdefs.h. */ | ||
15908 | #include <stdio.h> | ||
15909 | int | ||
15910 | main () | ||
15911 | { | ||
15912 | printf("%s", __FUNCTION__); | ||
15913 | ; | ||
15914 | return 0; | ||
15915 | } | ||
15916 | _ACEOF | ||
15917 | if ac_fn_c_try_link "$LINENO"; then : | ||
15918 | ac_cv_cc_implements___FUNCTION__="yes" | ||
15919 | else | ||
15920 | ac_cv_cc_implements___FUNCTION__="no" | ||
15921 | |||
15922 | fi | ||
15923 | rm -f core conftest.err conftest.$ac_objext \ | ||
15924 | conftest$ac_exeext conftest.$ac_ext | ||
15925 | |||
15926 | fi | ||
15927 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___FUNCTION__" >&5 | ||
15928 | $as_echo "$ac_cv_cc_implements___FUNCTION__" >&6; } | ||
15929 | if test "x$ac_cv_cc_implements___FUNCTION__" = "xyes" ; then | ||
15930 | |||
15931 | $as_echo "#define HAVE___FUNCTION__ 1" >>confdefs.h | ||
15932 | |||
15933 | fi | ||
15934 | |||
15935 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __func__" >&5 | ||
15936 | $as_echo_n "checking whether $CC implements __func__... " >&6; } | ||
15937 | if ${ac_cv_cc_implements___func__+:} false; then : | ||
15938 | $as_echo_n "(cached) " >&6 | ||
15939 | else | ||
15940 | |||
15941 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15942 | /* end confdefs.h. */ | ||
15943 | #include <stdio.h> | ||
15944 | int | ||
15945 | main () | ||
15946 | { | ||
15947 | printf("%s", __func__); | ||
15948 | ; | ||
15949 | return 0; | ||
15950 | } | ||
15951 | _ACEOF | ||
15952 | if ac_fn_c_try_link "$LINENO"; then : | ||
15953 | ac_cv_cc_implements___func__="yes" | ||
15954 | else | ||
15955 | ac_cv_cc_implements___func__="no" | ||
15956 | |||
15957 | fi | ||
15958 | rm -f core conftest.err conftest.$ac_objext \ | ||
15959 | conftest$ac_exeext conftest.$ac_ext | ||
15960 | |||
15961 | fi | ||
15962 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___func__" >&5 | ||
15963 | $as_echo "$ac_cv_cc_implements___func__" >&6; } | ||
15964 | if test "x$ac_cv_cc_implements___func__" = "xyes" ; then | ||
15965 | |||
15966 | $as_echo "#define HAVE___func__ 1" >>confdefs.h | ||
15967 | |||
15968 | fi | ||
15969 | |||
15970 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether va_copy exists" >&5 | ||
15971 | $as_echo_n "checking whether va_copy exists... " >&6; } | ||
15972 | if ${ac_cv_have_va_copy+:} false; then : | ||
15973 | $as_echo_n "(cached) " >&6 | ||
15974 | else | ||
15975 | |||
15976 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15977 | /* end confdefs.h. */ | ||
15978 | |||
15979 | #include <stdarg.h> | ||
15980 | va_list x,y; | ||
15981 | |||
15982 | int | ||
15983 | main () | ||
15984 | { | ||
15985 | va_copy(x,y); | ||
15986 | ; | ||
15987 | return 0; | ||
15988 | } | ||
15989 | _ACEOF | ||
15990 | if ac_fn_c_try_link "$LINENO"; then : | ||
15991 | ac_cv_have_va_copy="yes" | ||
15992 | else | ||
15993 | ac_cv_have_va_copy="no" | ||
15994 | |||
15995 | fi | ||
15996 | rm -f core conftest.err conftest.$ac_objext \ | ||
15997 | conftest$ac_exeext conftest.$ac_ext | ||
15998 | |||
15999 | fi | ||
16000 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_va_copy" >&5 | ||
16001 | $as_echo "$ac_cv_have_va_copy" >&6; } | ||
16002 | if test "x$ac_cv_have_va_copy" = "xyes" ; then | ||
16003 | |||
16004 | $as_echo "#define HAVE_VA_COPY 1" >>confdefs.h | ||
16005 | |||
16006 | fi | ||
16007 | |||
16008 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __va_copy exists" >&5 | ||
16009 | $as_echo_n "checking whether __va_copy exists... " >&6; } | ||
16010 | if ${ac_cv_have___va_copy+:} false; then : | ||
16011 | $as_echo_n "(cached) " >&6 | ||
16012 | else | ||
16013 | |||
16014 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16015 | /* end confdefs.h. */ | ||
16016 | |||
16017 | #include <stdarg.h> | ||
16018 | va_list x,y; | ||
16019 | |||
16020 | int | ||
16021 | main () | ||
16022 | { | ||
16023 | __va_copy(x,y); | ||
16024 | ; | ||
16025 | return 0; | ||
16026 | } | ||
16027 | _ACEOF | ||
16028 | if ac_fn_c_try_link "$LINENO"; then : | ||
16029 | ac_cv_have___va_copy="yes" | ||
16030 | else | ||
16031 | ac_cv_have___va_copy="no" | ||
16032 | |||
16033 | fi | ||
16034 | rm -f core conftest.err conftest.$ac_objext \ | ||
16035 | conftest$ac_exeext conftest.$ac_ext | ||
16036 | |||
16037 | fi | ||
16038 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___va_copy" >&5 | ||
16039 | $as_echo "$ac_cv_have___va_copy" >&6; } | ||
16040 | if test "x$ac_cv_have___va_copy" = "xyes" ; then | ||
16041 | |||
16042 | $as_echo "#define HAVE___VA_COPY 1" >>confdefs.h | ||
16043 | |||
16044 | fi | ||
16045 | |||
16046 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getopt has optreset support" >&5 | ||
16047 | $as_echo_n "checking whether getopt has optreset support... " >&6; } | ||
16048 | if ${ac_cv_have_getopt_optreset+:} false; then : | ||
16049 | $as_echo_n "(cached) " >&6 | ||
16050 | else | ||
16051 | |||
16052 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16053 | /* end confdefs.h. */ | ||
16054 | #include <getopt.h> | ||
16055 | int | ||
16056 | main () | ||
16057 | { | ||
16058 | extern int optreset; optreset = 0; | ||
16059 | ; | ||
16060 | return 0; | ||
16061 | } | ||
16062 | _ACEOF | ||
16063 | if ac_fn_c_try_link "$LINENO"; then : | ||
16064 | ac_cv_have_getopt_optreset="yes" | ||
16065 | else | ||
16066 | ac_cv_have_getopt_optreset="no" | ||
16067 | |||
16068 | fi | ||
16069 | rm -f core conftest.err conftest.$ac_objext \ | ||
16070 | conftest$ac_exeext conftest.$ac_ext | ||
16071 | |||
16072 | fi | ||
16073 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getopt_optreset" >&5 | ||
16074 | $as_echo "$ac_cv_have_getopt_optreset" >&6; } | ||
16075 | if test "x$ac_cv_have_getopt_optreset" = "xyes" ; then | ||
16076 | |||
16077 | $as_echo "#define HAVE_GETOPT_OPTRESET 1" >>confdefs.h | ||
16078 | |||
16079 | fi | ||
16080 | |||
16081 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_errlist" >&5 | ||
16082 | $as_echo_n "checking if libc defines sys_errlist... " >&6; } | ||
16083 | if ${ac_cv_libc_defines_sys_errlist+:} false; then : | ||
16084 | $as_echo_n "(cached) " >&6 | ||
16085 | else | ||
16086 | |||
16087 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16088 | /* end confdefs.h. */ | ||
16089 | |||
16090 | int | ||
16091 | main () | ||
16092 | { | ||
16093 | extern const char *const sys_errlist[]; printf("%s", sys_errlist[0]); | ||
16094 | ; | ||
16095 | return 0; | ||
16096 | } | ||
16097 | _ACEOF | ||
16098 | if ac_fn_c_try_link "$LINENO"; then : | ||
16099 | ac_cv_libc_defines_sys_errlist="yes" | ||
16100 | else | ||
16101 | ac_cv_libc_defines_sys_errlist="no" | ||
16102 | |||
16103 | fi | ||
16104 | rm -f core conftest.err conftest.$ac_objext \ | ||
16105 | conftest$ac_exeext conftest.$ac_ext | ||
16106 | |||
16107 | fi | ||
16108 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_errlist" >&5 | ||
16109 | $as_echo "$ac_cv_libc_defines_sys_errlist" >&6; } | ||
16110 | if test "x$ac_cv_libc_defines_sys_errlist" = "xyes" ; then | ||
16111 | |||
16112 | $as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h | ||
16113 | |||
16114 | fi | ||
16115 | |||
16116 | |||
16117 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_nerr" >&5 | ||
16118 | $as_echo_n "checking if libc defines sys_nerr... " >&6; } | ||
16119 | if ${ac_cv_libc_defines_sys_nerr+:} false; then : | ||
16120 | $as_echo_n "(cached) " >&6 | ||
16121 | else | ||
16122 | |||
16123 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16124 | /* end confdefs.h. */ | ||
16125 | |||
16126 | int | ||
16127 | main () | ||
16128 | { | ||
16129 | extern int sys_nerr; printf("%i", sys_nerr); | ||
16130 | ; | ||
16131 | return 0; | ||
16132 | } | ||
16133 | _ACEOF | ||
16134 | if ac_fn_c_try_link "$LINENO"; then : | ||
16135 | ac_cv_libc_defines_sys_nerr="yes" | ||
16136 | else | ||
16137 | ac_cv_libc_defines_sys_nerr="no" | ||
16138 | |||
16139 | fi | ||
16140 | rm -f core conftest.err conftest.$ac_objext \ | ||
16141 | conftest$ac_exeext conftest.$ac_ext | ||
16142 | |||
16143 | fi | ||
16144 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_nerr" >&5 | ||
16145 | $as_echo "$ac_cv_libc_defines_sys_nerr" >&6; } | ||
16146 | if test "x$ac_cv_libc_defines_sys_nerr" = "xyes" ; then | ||
16147 | |||
16148 | $as_echo "#define HAVE_SYS_NERR 1" >>confdefs.h | ||
16149 | |||
16150 | fi | ||
16151 | |||
16152 | # Check libraries needed by DNS fingerprint support | ||
16153 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing getrrsetbyname" >&5 | ||
16154 | $as_echo_n "checking for library containing getrrsetbyname... " >&6; } | ||
16155 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
16156 | $as_echo_n "(cached) " >&6 | ||
16157 | else | ||
16158 | ac_func_search_save_LIBS=$LIBS | ||
16159 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16160 | /* end confdefs.h. */ | ||
16161 | |||
16162 | /* Override any GCC internal prototype to avoid an error. | ||
16163 | Use char because int might match the return type of a GCC | ||
16164 | builtin and then its argument prototype would still apply. */ | ||
16165 | #ifdef __cplusplus | ||
16166 | extern "C" | ||
16167 | #endif | ||
16168 | char getrrsetbyname (); | ||
16169 | int | ||
16170 | main () | ||
16171 | { | ||
16172 | return getrrsetbyname (); | ||
16173 | ; | ||
16174 | return 0; | ||
16175 | } | ||
16176 | _ACEOF | ||
16177 | for ac_lib in '' resolv; do | ||
16178 | if test -z "$ac_lib"; then | ||
16179 | ac_res="none required" | ||
16180 | else | ||
16181 | ac_res=-l$ac_lib | ||
16182 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
16183 | fi | ||
16184 | if ac_fn_c_try_link "$LINENO"; then : | ||
16185 | ac_cv_search_getrrsetbyname=$ac_res | ||
16186 | fi | ||
16187 | rm -f core conftest.err conftest.$ac_objext \ | ||
16188 | conftest$ac_exeext | ||
16189 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
16190 | break | ||
16191 | fi | ||
16192 | done | ||
16193 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
16194 | |||
16195 | else | ||
16196 | ac_cv_search_getrrsetbyname=no | ||
16197 | fi | ||
16198 | rm conftest.$ac_ext | ||
16199 | LIBS=$ac_func_search_save_LIBS | ||
16200 | fi | ||
16201 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_getrrsetbyname" >&5 | ||
16202 | $as_echo "$ac_cv_search_getrrsetbyname" >&6; } | ||
16203 | ac_res=$ac_cv_search_getrrsetbyname | ||
16204 | if test "$ac_res" != no; then : | ||
16205 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
16206 | |||
16207 | $as_echo "#define HAVE_GETRRSETBYNAME 1" >>confdefs.h | ||
16208 | |||
16209 | else | ||
16210 | |||
16211 | # Needed by our getrrsetbyname() | ||
16212 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing res_query" >&5 | ||
16213 | $as_echo_n "checking for library containing res_query... " >&6; } | ||
16214 | if ${ac_cv_search_res_query+:} false; then : | ||
16215 | $as_echo_n "(cached) " >&6 | ||
16216 | else | ||
16217 | ac_func_search_save_LIBS=$LIBS | ||
16218 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16219 | /* end confdefs.h. */ | ||
16220 | |||
16221 | /* Override any GCC internal prototype to avoid an error. | ||
16222 | Use char because int might match the return type of a GCC | ||
16223 | builtin and then its argument prototype would still apply. */ | ||
16224 | #ifdef __cplusplus | ||
16225 | extern "C" | ||
16226 | #endif | ||
16227 | char res_query (); | ||
16228 | int | ||
16229 | main () | ||
16230 | { | ||
16231 | return res_query (); | ||
16232 | ; | ||
16233 | return 0; | ||
16234 | } | ||
16235 | _ACEOF | ||
16236 | for ac_lib in '' resolv; do | ||
16237 | if test -z "$ac_lib"; then | ||
16238 | ac_res="none required" | ||
16239 | else | ||
16240 | ac_res=-l$ac_lib | ||
16241 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
16242 | fi | ||
16243 | if ac_fn_c_try_link "$LINENO"; then : | ||
16244 | ac_cv_search_res_query=$ac_res | ||
16245 | fi | ||
16246 | rm -f core conftest.err conftest.$ac_objext \ | ||
16247 | conftest$ac_exeext | ||
16248 | if ${ac_cv_search_res_query+:} false; then : | ||
16249 | break | ||
16250 | fi | ||
16251 | done | ||
16252 | if ${ac_cv_search_res_query+:} false; then : | ||
16253 | |||
16254 | else | ||
16255 | ac_cv_search_res_query=no | ||
16256 | fi | ||
16257 | rm conftest.$ac_ext | ||
16258 | LIBS=$ac_func_search_save_LIBS | ||
16259 | fi | ||
16260 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_query" >&5 | ||
16261 | $as_echo "$ac_cv_search_res_query" >&6; } | ||
16262 | ac_res=$ac_cv_search_res_query | ||
16263 | if test "$ac_res" != no; then : | ||
16264 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
16265 | |||
16266 | fi | ||
16267 | |||
16268 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5 | ||
16269 | $as_echo_n "checking for library containing dn_expand... " >&6; } | ||
16270 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16271 | $as_echo_n "(cached) " >&6 | ||
16272 | else | ||
16273 | ac_func_search_save_LIBS=$LIBS | ||
16274 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16275 | /* end confdefs.h. */ | ||
16276 | |||
16277 | /* Override any GCC internal prototype to avoid an error. | ||
16278 | Use char because int might match the return type of a GCC | ||
16279 | builtin and then its argument prototype would still apply. */ | ||
16280 | #ifdef __cplusplus | ||
16281 | extern "C" | ||
16282 | #endif | ||
16283 | char dn_expand (); | ||
16284 | int | ||
16285 | main () | ||
16286 | { | ||
16287 | return dn_expand (); | ||
16288 | ; | ||
16289 | return 0; | ||
16290 | } | ||
16291 | _ACEOF | ||
16292 | for ac_lib in '' resolv; do | ||
16293 | if test -z "$ac_lib"; then | ||
16294 | ac_res="none required" | ||
16295 | else | ||
16296 | ac_res=-l$ac_lib | ||
16297 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
16298 | fi | ||
16299 | if ac_fn_c_try_link "$LINENO"; then : | ||
16300 | ac_cv_search_dn_expand=$ac_res | ||
16301 | fi | ||
16302 | rm -f core conftest.err conftest.$ac_objext \ | ||
16303 | conftest$ac_exeext | ||
16304 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16305 | break | ||
16306 | fi | ||
16307 | done | ||
16308 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16309 | |||
16310 | else | ||
16311 | ac_cv_search_dn_expand=no | ||
16312 | fi | ||
16313 | rm conftest.$ac_ext | ||
16314 | LIBS=$ac_func_search_save_LIBS | ||
16315 | fi | ||
16316 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5 | ||
16317 | $as_echo "$ac_cv_search_dn_expand" >&6; } | ||
16318 | ac_res=$ac_cv_search_dn_expand | ||
16319 | if test "$ac_res" != no; then : | ||
16320 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
16321 | |||
16322 | fi | ||
16323 | |||
16324 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if res_query will link" >&5 | ||
16325 | $as_echo_n "checking if res_query will link... " >&6; } | ||
16326 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16327 | /* end confdefs.h. */ | ||
16328 | |||
16329 | #include <sys/types.h> | ||
16330 | #include <netinet/in.h> | ||
16331 | #include <arpa/nameser.h> | ||
16332 | #include <netdb.h> | ||
16333 | #include <resolv.h> | ||
16334 | |||
16335 | int | ||
16336 | main () | ||
16337 | { | ||
16338 | |||
16339 | res_query (0, 0, 0, 0, 0); | ||
16340 | |||
16341 | ; | ||
16342 | return 0; | ||
16343 | } | ||
16344 | _ACEOF | ||
16345 | if ac_fn_c_try_link "$LINENO"; then : | ||
16346 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16347 | $as_echo "yes" >&6; } | ||
16348 | else | ||
16349 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16350 | $as_echo "no" >&6; } | ||
16351 | saved_LIBS="$LIBS" | ||
16352 | LIBS="$LIBS -lresolv" | ||
16353 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5 | ||
16354 | $as_echo_n "checking for res_query in -lresolv... " >&6; } | ||
16355 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16356 | /* end confdefs.h. */ | ||
16357 | |||
16358 | #include <sys/types.h> | ||
16359 | #include <netinet/in.h> | ||
16360 | #include <arpa/nameser.h> | ||
16361 | #include <netdb.h> | ||
16362 | #include <resolv.h> | ||
16363 | |||
16364 | int | ||
16365 | main () | ||
16366 | { | ||
16367 | |||
16368 | res_query (0, 0, 0, 0, 0); | ||
16369 | |||
16370 | ; | ||
16371 | return 0; | ||
16372 | } | ||
16373 | _ACEOF | ||
16374 | if ac_fn_c_try_link "$LINENO"; then : | ||
16375 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16376 | $as_echo "yes" >&6; } | ||
16377 | else | ||
16378 | LIBS="$saved_LIBS" | ||
16379 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16380 | $as_echo "no" >&6; } | ||
16381 | fi | ||
16382 | rm -f core conftest.err conftest.$ac_objext \ | ||
16383 | conftest$ac_exeext conftest.$ac_ext | ||
16384 | |||
16385 | fi | ||
16386 | rm -f core conftest.err conftest.$ac_objext \ | ||
16387 | conftest$ac_exeext conftest.$ac_ext | ||
16388 | for ac_func in _getshort _getlong | ||
16389 | do : | ||
16390 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
16391 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
16392 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
16393 | cat >>confdefs.h <<_ACEOF | ||
16394 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
16395 | _ACEOF | ||
16396 | |||
16397 | fi | ||
16398 | done | ||
16399 | |||
16400 | ac_fn_c_check_decl "$LINENO" "_getshort" "ac_cv_have_decl__getshort" "#include <sys/types.h> | ||
16401 | #include <arpa/nameser.h> | ||
16402 | " | ||
16403 | if test "x$ac_cv_have_decl__getshort" = xyes; then : | ||
16404 | ac_have_decl=1 | ||
16405 | else | ||
16406 | ac_have_decl=0 | ||
16407 | fi | ||
16408 | |||
16409 | cat >>confdefs.h <<_ACEOF | ||
16410 | #define HAVE_DECL__GETSHORT $ac_have_decl | ||
16411 | _ACEOF | ||
16412 | ac_fn_c_check_decl "$LINENO" "_getlong" "ac_cv_have_decl__getlong" "#include <sys/types.h> | ||
16413 | #include <arpa/nameser.h> | ||
16414 | " | ||
16415 | if test "x$ac_cv_have_decl__getlong" = xyes; then : | ||
16416 | ac_have_decl=1 | ||
16417 | else | ||
16418 | ac_have_decl=0 | ||
16419 | fi | ||
16420 | |||
16421 | cat >>confdefs.h <<_ACEOF | ||
16422 | #define HAVE_DECL__GETLONG $ac_have_decl | ||
16423 | _ACEOF | ||
16424 | |||
16425 | ac_fn_c_check_member "$LINENO" "HEADER" "ad" "ac_cv_member_HEADER_ad" "#include <arpa/nameser.h> | ||
16426 | " | ||
16427 | if test "x$ac_cv_member_HEADER_ad" = xyes; then : | ||
16428 | |||
16429 | $as_echo "#define HAVE_HEADER_AD 1" >>confdefs.h | ||
16430 | |||
16431 | fi | ||
16432 | |||
16433 | |||
16434 | fi | ||
16435 | |||
16436 | |||
16437 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct __res_state _res is an extern" >&5 | ||
16438 | $as_echo_n "checking if struct __res_state _res is an extern... " >&6; } | ||
16439 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16440 | /* end confdefs.h. */ | ||
16441 | |||
16442 | #include <stdio.h> | ||
16443 | #if HAVE_SYS_TYPES_H | ||
16444 | # include <sys/types.h> | ||
16445 | #endif | ||
16446 | #include <netinet/in.h> | ||
16447 | #include <arpa/nameser.h> | ||
16448 | #include <resolv.h> | ||
16449 | extern struct __res_state _res; | ||
16450 | |||
16451 | int | ||
16452 | main () | ||
16453 | { | ||
16454 | |||
16455 | ; | ||
16456 | return 0; | ||
16457 | } | ||
16458 | _ACEOF | ||
16459 | if ac_fn_c_try_link "$LINENO"; then : | ||
16460 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16461 | $as_echo "yes" >&6; } | ||
16462 | |||
16463 | $as_echo "#define HAVE__RES_EXTERN 1" >>confdefs.h | ||
16464 | |||
16465 | |||
16466 | else | ||
16467 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16468 | $as_echo "no" >&6; } | ||
16469 | |||
16470 | fi | ||
16471 | rm -f core conftest.err conftest.$ac_objext \ | ||
16472 | conftest$ac_exeext conftest.$ac_ext | ||
16473 | |||
16474 | # Check whether user wants SELinux support | ||
16475 | SELINUX_MSG="no" | ||
16476 | LIBSELINUX="" | ||
16477 | |||
16478 | # Check whether --with-selinux was given. | ||
16479 | if test "${with_selinux+set}" = set; then : | ||
16480 | withval=$with_selinux; if test "x$withval" != "xno" ; then | ||
16481 | save_LIBS="$LIBS" | ||
16482 | |||
16483 | $as_echo "#define WITH_SELINUX 1" >>confdefs.h | ||
16484 | |||
16485 | SELINUX_MSG="yes" | ||
16486 | ac_fn_c_check_header_mongrel "$LINENO" "selinux/selinux.h" "ac_cv_header_selinux_selinux_h" "$ac_includes_default" | ||
16487 | if test "x$ac_cv_header_selinux_selinux_h" = xyes; then : | ||
16488 | |||
16489 | else | ||
16490 | as_fn_error $? "SELinux support requires selinux.h header" "$LINENO" 5 | ||
16491 | fi | ||
16492 | |||
16493 | |||
16494 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setexeccon in -lselinux" >&5 | ||
16495 | $as_echo_n "checking for setexeccon in -lselinux... " >&6; } | ||
16496 | if ${ac_cv_lib_selinux_setexeccon+:} false; then : | ||
16497 | $as_echo_n "(cached) " >&6 | ||
16498 | else | ||
16499 | ac_check_lib_save_LIBS=$LIBS | ||
16500 | LIBS="-lselinux $LIBS" | ||
16501 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16502 | /* end confdefs.h. */ | ||
16503 | |||
16504 | /* Override any GCC internal prototype to avoid an error. | ||
16505 | Use char because int might match the return type of a GCC | ||
16506 | builtin and then its argument prototype would still apply. */ | ||
16507 | #ifdef __cplusplus | ||
16508 | extern "C" | ||
16509 | #endif | ||
16510 | char setexeccon (); | ||
16511 | int | ||
16512 | main () | ||
16513 | { | ||
16514 | return setexeccon (); | ||
16515 | ; | ||
16516 | return 0; | ||
16517 | } | ||
16518 | _ACEOF | ||
16519 | if ac_fn_c_try_link "$LINENO"; then : | ||
16520 | ac_cv_lib_selinux_setexeccon=yes | ||
16521 | else | ||
16522 | ac_cv_lib_selinux_setexeccon=no | ||
16523 | fi | ||
16524 | rm -f core conftest.err conftest.$ac_objext \ | ||
16525 | conftest$ac_exeext conftest.$ac_ext | ||
16526 | LIBS=$ac_check_lib_save_LIBS | ||
16527 | fi | ||
16528 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_setexeccon" >&5 | ||
16529 | $as_echo "$ac_cv_lib_selinux_setexeccon" >&6; } | ||
16530 | if test "x$ac_cv_lib_selinux_setexeccon" = xyes; then : | ||
16531 | LIBSELINUX="-lselinux" | ||
16532 | LIBS="$LIBS -lselinux" | ||
16533 | |||
16534 | else | ||
16535 | as_fn_error $? "SELinux support requires libselinux library" "$LINENO" 5 | ||
16536 | fi | ||
16537 | |||
16538 | SSHLIBS="$SSHLIBS $LIBSELINUX" | ||
16539 | SSHDLIBS="$SSHDLIBS $LIBSELINUX" | ||
16540 | for ac_func in getseuserbyname get_default_context_with_level | ||
16541 | do : | ||
16542 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
16543 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
16544 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
16545 | cat >>confdefs.h <<_ACEOF | ||
16546 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
16547 | _ACEOF | ||
16548 | |||
16549 | fi | ||
16550 | done | ||
16551 | |||
16552 | LIBS="$save_LIBS" | ||
16553 | fi | ||
16554 | |||
16555 | fi | ||
16556 | |||
16557 | |||
16558 | |||
16559 | |||
16560 | # Check whether user wants Kerberos 5 support | ||
16561 | KRB5_MSG="no" | ||
16562 | |||
16563 | # Check whether --with-kerberos5 was given. | ||
16564 | if test "${with_kerberos5+set}" = set; then : | ||
16565 | withval=$with_kerberos5; if test "x$withval" != "xno" ; then | ||
16566 | if test "x$withval" = "xyes" ; then | ||
16567 | KRB5ROOT="/usr/local" | ||
16568 | else | ||
16569 | KRB5ROOT=${withval} | ||
16570 | fi | ||
16571 | |||
16572 | |||
16573 | $as_echo "#define KRB5 1" >>confdefs.h | ||
16574 | |||
16575 | KRB5_MSG="yes" | ||
16576 | |||
16577 | # Extract the first word of "krb5-config", so it can be a program name with args. | ||
16578 | set dummy krb5-config; ac_word=$2 | ||
16579 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
16580 | $as_echo_n "checking for $ac_word... " >&6; } | ||
16581 | if ${ac_cv_path_KRB5CONF+:} false; then : | ||
16582 | $as_echo_n "(cached) " >&6 | ||
16583 | else | ||
16584 | case $KRB5CONF in | ||
16585 | [\\/]* | ?:[\\/]*) | ||
16586 | ac_cv_path_KRB5CONF="$KRB5CONF" # Let the user override the test with a path. | ||
16587 | ;; | ||
16588 | *) | ||
16589 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
16590 | as_dummy="$KRB5ROOT/bin:$PATH" | ||
16591 | for as_dir in $as_dummy | ||
16592 | do | ||
16593 | IFS=$as_save_IFS | ||
16594 | test -z "$as_dir" && as_dir=. | ||
16595 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
16596 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
16597 | ac_cv_path_KRB5CONF="$as_dir/$ac_word$ac_exec_ext" | ||
16598 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
16599 | break 2 | ||
16600 | fi | ||
16601 | done | ||
16602 | done | ||
16603 | IFS=$as_save_IFS | ||
16604 | |||
16605 | test -z "$ac_cv_path_KRB5CONF" && ac_cv_path_KRB5CONF="$KRB5ROOT/bin/krb5-config" | ||
16606 | ;; | ||
16607 | esac | ||
16608 | fi | ||
16609 | KRB5CONF=$ac_cv_path_KRB5CONF | ||
16610 | if test -n "$KRB5CONF"; then | ||
16611 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KRB5CONF" >&5 | ||
16612 | $as_echo "$KRB5CONF" >&6; } | ||
16613 | else | ||
16614 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16615 | $as_echo "no" >&6; } | ||
16616 | fi | ||
16617 | |||
16618 | |||
16619 | if test -x $KRB5CONF ; then | ||
16620 | K5CFLAGS="`$KRB5CONF --cflags`" | ||
16621 | K5LIBS="`$KRB5CONF --libs`" | ||
16622 | CPPFLAGS="$CPPFLAGS $K5CFLAGS" | ||
16623 | |||
16624 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gssapi support" >&5 | ||
16625 | $as_echo_n "checking for gssapi support... " >&6; } | ||
16626 | if $KRB5CONF | grep gssapi >/dev/null ; then | ||
16627 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16628 | $as_echo "yes" >&6; } | ||
16629 | |||
16630 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
16631 | |||
16632 | GSSCFLAGS="`$KRB5CONF --cflags gssapi`" | ||
16633 | GSSLIBS="`$KRB5CONF --libs gssapi`" | ||
16634 | CPPFLAGS="$CPPFLAGS $GSSCFLAGS" | ||
16635 | else | ||
16636 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16637 | $as_echo "no" >&6; } | ||
16638 | fi | ||
16639 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5 | ||
16640 | $as_echo_n "checking whether we are using Heimdal... " >&6; } | ||
16641 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16642 | /* end confdefs.h. */ | ||
16643 | #include <krb5.h> | ||
16644 | |||
16645 | int | ||
16646 | main () | ||
16647 | { | ||
16648 | char *tmp = heimdal_version; | ||
16649 | ; | ||
16650 | return 0; | ||
16651 | } | ||
16652 | _ACEOF | ||
16653 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16654 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16655 | $as_echo "yes" >&6; } | ||
16656 | |||
16657 | $as_echo "#define HEIMDAL 1" >>confdefs.h | ||
16658 | |||
16659 | else | ||
16660 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16661 | $as_echo "no" >&6; } | ||
16662 | |||
16663 | fi | ||
16664 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16665 | else | ||
16666 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include" | ||
16667 | LDFLAGS="$LDFLAGS -L${KRB5ROOT}/lib" | ||
16668 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5 | ||
16669 | $as_echo_n "checking whether we are using Heimdal... " >&6; } | ||
16670 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16671 | /* end confdefs.h. */ | ||
16672 | #include <krb5.h> | ||
16673 | |||
16674 | int | ||
16675 | main () | ||
16676 | { | ||
16677 | char *tmp = heimdal_version; | ||
16678 | ; | ||
16679 | return 0; | ||
16680 | } | ||
16681 | _ACEOF | ||
16682 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16683 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16684 | $as_echo "yes" >&6; } | ||
16685 | $as_echo "#define HEIMDAL 1" >>confdefs.h | ||
16686 | |||
16687 | K5LIBS="-lkrb5" | ||
16688 | K5LIBS="$K5LIBS -lcom_err -lasn1" | ||
16689 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for net_write in -lroken" >&5 | ||
16690 | $as_echo_n "checking for net_write in -lroken... " >&6; } | ||
16691 | if ${ac_cv_lib_roken_net_write+:} false; then : | ||
16692 | $as_echo_n "(cached) " >&6 | ||
16693 | else | ||
16694 | ac_check_lib_save_LIBS=$LIBS | ||
16695 | LIBS="-lroken $LIBS" | ||
16696 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16697 | /* end confdefs.h. */ | ||
16698 | |||
16699 | /* Override any GCC internal prototype to avoid an error. | ||
16700 | Use char because int might match the return type of a GCC | ||
16701 | builtin and then its argument prototype would still apply. */ | ||
16702 | #ifdef __cplusplus | ||
16703 | extern "C" | ||
16704 | #endif | ||
16705 | char net_write (); | ||
16706 | int | ||
16707 | main () | ||
16708 | { | ||
16709 | return net_write (); | ||
16710 | ; | ||
16711 | return 0; | ||
16712 | } | ||
16713 | _ACEOF | ||
16714 | if ac_fn_c_try_link "$LINENO"; then : | ||
16715 | ac_cv_lib_roken_net_write=yes | ||
16716 | else | ||
16717 | ac_cv_lib_roken_net_write=no | ||
16718 | fi | ||
16719 | rm -f core conftest.err conftest.$ac_objext \ | ||
16720 | conftest$ac_exeext conftest.$ac_ext | ||
16721 | LIBS=$ac_check_lib_save_LIBS | ||
16722 | fi | ||
16723 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_roken_net_write" >&5 | ||
16724 | $as_echo "$ac_cv_lib_roken_net_write" >&6; } | ||
16725 | if test "x$ac_cv_lib_roken_net_write" = xyes; then : | ||
16726 | K5LIBS="$K5LIBS -lroken" | ||
16727 | fi | ||
16728 | |||
16729 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for des_cbc_encrypt in -ldes" >&5 | ||
16730 | $as_echo_n "checking for des_cbc_encrypt in -ldes... " >&6; } | ||
16731 | if ${ac_cv_lib_des_des_cbc_encrypt+:} false; then : | ||
16732 | $as_echo_n "(cached) " >&6 | ||
16733 | else | ||
16734 | ac_check_lib_save_LIBS=$LIBS | ||
16735 | LIBS="-ldes $LIBS" | ||
16736 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16737 | /* end confdefs.h. */ | ||
16738 | |||
16739 | /* Override any GCC internal prototype to avoid an error. | ||
16740 | Use char because int might match the return type of a GCC | ||
16741 | builtin and then its argument prototype would still apply. */ | ||
16742 | #ifdef __cplusplus | ||
16743 | extern "C" | ||
16744 | #endif | ||
16745 | char des_cbc_encrypt (); | ||
16746 | int | ||
16747 | main () | ||
16748 | { | ||
16749 | return des_cbc_encrypt (); | ||
16750 | ; | ||
16751 | return 0; | ||
16752 | } | ||
16753 | _ACEOF | ||
16754 | if ac_fn_c_try_link "$LINENO"; then : | ||
16755 | ac_cv_lib_des_des_cbc_encrypt=yes | ||
16756 | else | ||
16757 | ac_cv_lib_des_des_cbc_encrypt=no | ||
16758 | fi | ||
16759 | rm -f core conftest.err conftest.$ac_objext \ | ||
16760 | conftest$ac_exeext conftest.$ac_ext | ||
16761 | LIBS=$ac_check_lib_save_LIBS | ||
16762 | fi | ||
16763 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_des_des_cbc_encrypt" >&5 | ||
16764 | $as_echo "$ac_cv_lib_des_des_cbc_encrypt" >&6; } | ||
16765 | if test "x$ac_cv_lib_des_des_cbc_encrypt" = xyes; then : | ||
16766 | K5LIBS="$K5LIBS -ldes" | ||
16767 | fi | ||
16768 | |||
16769 | |||
16770 | else | ||
16771 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16772 | $as_echo "no" >&6; } | ||
16773 | K5LIBS="-lkrb5 -lk5crypto -lcom_err" | ||
16774 | |||
16775 | |||
16776 | fi | ||
16777 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16778 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5 | ||
16779 | $as_echo_n "checking for library containing dn_expand... " >&6; } | ||
16780 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16781 | $as_echo_n "(cached) " >&6 | ||
16782 | else | ||
16783 | ac_func_search_save_LIBS=$LIBS | ||
16784 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16785 | /* end confdefs.h. */ | ||
16786 | |||
16787 | /* Override any GCC internal prototype to avoid an error. | ||
16788 | Use char because int might match the return type of a GCC | ||
16789 | builtin and then its argument prototype would still apply. */ | ||
16790 | #ifdef __cplusplus | ||
16791 | extern "C" | ||
16792 | #endif | ||
16793 | char dn_expand (); | ||
16794 | int | ||
16795 | main () | ||
16796 | { | ||
16797 | return dn_expand (); | ||
16798 | ; | ||
16799 | return 0; | ||
16800 | } | ||
16801 | _ACEOF | ||
16802 | for ac_lib in '' resolv; do | ||
16803 | if test -z "$ac_lib"; then | ||
16804 | ac_res="none required" | ||
16805 | else | ||
16806 | ac_res=-l$ac_lib | ||
16807 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
16808 | fi | ||
16809 | if ac_fn_c_try_link "$LINENO"; then : | ||
16810 | ac_cv_search_dn_expand=$ac_res | ||
16811 | fi | ||
16812 | rm -f core conftest.err conftest.$ac_objext \ | ||
16813 | conftest$ac_exeext | ||
16814 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16815 | break | ||
16816 | fi | ||
16817 | done | ||
16818 | if ${ac_cv_search_dn_expand+:} false; then : | ||
16819 | |||
16820 | else | ||
16821 | ac_cv_search_dn_expand=no | ||
16822 | fi | ||
16823 | rm conftest.$ac_ext | ||
16824 | LIBS=$ac_func_search_save_LIBS | ||
16825 | fi | ||
16826 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5 | ||
16827 | $as_echo "$ac_cv_search_dn_expand" >&6; } | ||
16828 | ac_res=$ac_cv_search_dn_expand | ||
16829 | if test "$ac_res" != no; then : | ||
16830 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
16831 | |||
16832 | fi | ||
16833 | |||
16834 | |||
16835 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi_krb5" >&5 | ||
16836 | $as_echo_n "checking for gss_init_sec_context in -lgssapi_krb5... " >&6; } | ||
16837 | if ${ac_cv_lib_gssapi_krb5_gss_init_sec_context+:} false; then : | ||
16838 | $as_echo_n "(cached) " >&6 | ||
16839 | else | ||
16840 | ac_check_lib_save_LIBS=$LIBS | ||
16841 | LIBS="-lgssapi_krb5 $LIBS" | ||
16842 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16843 | /* end confdefs.h. */ | ||
16844 | |||
16845 | /* Override any GCC internal prototype to avoid an error. | ||
16846 | Use char because int might match the return type of a GCC | ||
16847 | builtin and then its argument prototype would still apply. */ | ||
16848 | #ifdef __cplusplus | ||
16849 | extern "C" | ||
16850 | #endif | ||
16851 | char gss_init_sec_context (); | ||
16852 | int | ||
16853 | main () | ||
16854 | { | ||
16855 | return gss_init_sec_context (); | ||
16856 | ; | ||
16857 | return 0; | ||
16858 | } | ||
16859 | _ACEOF | ||
16860 | if ac_fn_c_try_link "$LINENO"; then : | ||
16861 | ac_cv_lib_gssapi_krb5_gss_init_sec_context=yes | ||
16862 | else | ||
16863 | ac_cv_lib_gssapi_krb5_gss_init_sec_context=no | ||
16864 | fi | ||
16865 | rm -f core conftest.err conftest.$ac_objext \ | ||
16866 | conftest$ac_exeext conftest.$ac_ext | ||
16867 | LIBS=$ac_check_lib_save_LIBS | ||
16868 | fi | ||
16869 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&5 | ||
16870 | $as_echo "$ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&6; } | ||
16871 | if test "x$ac_cv_lib_gssapi_krb5_gss_init_sec_context" = xyes; then : | ||
16872 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
16873 | |||
16874 | GSSLIBS="-lgssapi_krb5" | ||
16875 | else | ||
16876 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi" >&5 | ||
16877 | $as_echo_n "checking for gss_init_sec_context in -lgssapi... " >&6; } | ||
16878 | if ${ac_cv_lib_gssapi_gss_init_sec_context+:} false; then : | ||
16879 | $as_echo_n "(cached) " >&6 | ||
16880 | else | ||
16881 | ac_check_lib_save_LIBS=$LIBS | ||
16882 | LIBS="-lgssapi $LIBS" | ||
16883 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16884 | /* end confdefs.h. */ | ||
16885 | |||
16886 | /* Override any GCC internal prototype to avoid an error. | ||
16887 | Use char because int might match the return type of a GCC | ||
16888 | builtin and then its argument prototype would still apply. */ | ||
16889 | #ifdef __cplusplus | ||
16890 | extern "C" | ||
16891 | #endif | ||
16892 | char gss_init_sec_context (); | ||
16893 | int | ||
16894 | main () | ||
16895 | { | ||
16896 | return gss_init_sec_context (); | ||
16897 | ; | ||
16898 | return 0; | ||
16899 | } | ||
16900 | _ACEOF | ||
16901 | if ac_fn_c_try_link "$LINENO"; then : | ||
16902 | ac_cv_lib_gssapi_gss_init_sec_context=yes | ||
16903 | else | ||
16904 | ac_cv_lib_gssapi_gss_init_sec_context=no | ||
16905 | fi | ||
16906 | rm -f core conftest.err conftest.$ac_objext \ | ||
16907 | conftest$ac_exeext conftest.$ac_ext | ||
16908 | LIBS=$ac_check_lib_save_LIBS | ||
16909 | fi | ||
16910 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_gss_init_sec_context" >&5 | ||
16911 | $as_echo "$ac_cv_lib_gssapi_gss_init_sec_context" >&6; } | ||
16912 | if test "x$ac_cv_lib_gssapi_gss_init_sec_context" = xyes; then : | ||
16913 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
16914 | |||
16915 | GSSLIBS="-lgssapi" | ||
16916 | else | ||
16917 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgss" >&5 | ||
16918 | $as_echo_n "checking for gss_init_sec_context in -lgss... " >&6; } | ||
16919 | if ${ac_cv_lib_gss_gss_init_sec_context+:} false; then : | ||
16920 | $as_echo_n "(cached) " >&6 | ||
16921 | else | ||
16922 | ac_check_lib_save_LIBS=$LIBS | ||
16923 | LIBS="-lgss $LIBS" | ||
16924 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16925 | /* end confdefs.h. */ | ||
16926 | |||
16927 | /* Override any GCC internal prototype to avoid an error. | ||
16928 | Use char because int might match the return type of a GCC | ||
16929 | builtin and then its argument prototype would still apply. */ | ||
16930 | #ifdef __cplusplus | ||
16931 | extern "C" | ||
16932 | #endif | ||
16933 | char gss_init_sec_context (); | ||
16934 | int | ||
16935 | main () | ||
16936 | { | ||
16937 | return gss_init_sec_context (); | ||
16938 | ; | ||
16939 | return 0; | ||
16940 | } | ||
16941 | _ACEOF | ||
16942 | if ac_fn_c_try_link "$LINENO"; then : | ||
16943 | ac_cv_lib_gss_gss_init_sec_context=yes | ||
16944 | else | ||
16945 | ac_cv_lib_gss_gss_init_sec_context=no | ||
16946 | fi | ||
16947 | rm -f core conftest.err conftest.$ac_objext \ | ||
16948 | conftest$ac_exeext conftest.$ac_ext | ||
16949 | LIBS=$ac_check_lib_save_LIBS | ||
16950 | fi | ||
16951 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gss_gss_init_sec_context" >&5 | ||
16952 | $as_echo "$ac_cv_lib_gss_gss_init_sec_context" >&6; } | ||
16953 | if test "x$ac_cv_lib_gss_gss_init_sec_context" = xyes; then : | ||
16954 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
16955 | |||
16956 | GSSLIBS="-lgss" | ||
16957 | else | ||
16958 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api library - build may fail" >&5 | ||
16959 | $as_echo "$as_me: WARNING: Cannot find any suitable gss-api library - build may fail" >&2;} | ||
16960 | fi | ||
16961 | |||
16962 | |||
16963 | fi | ||
16964 | |||
16965 | |||
16966 | fi | ||
16967 | |||
16968 | |||
16969 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default" | ||
16970 | if test "x$ac_cv_header_gssapi_h" = xyes; then : | ||
16971 | |||
16972 | else | ||
16973 | unset ac_cv_header_gssapi_h | ||
16974 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi" | ||
16975 | for ac_header in gssapi.h | ||
16976 | do : | ||
16977 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default" | ||
16978 | if test "x$ac_cv_header_gssapi_h" = xyes; then : | ||
16979 | cat >>confdefs.h <<_ACEOF | ||
16980 | #define HAVE_GSSAPI_H 1 | ||
16981 | _ACEOF | ||
16982 | |||
16983 | else | ||
16984 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api header - build may fail" >&5 | ||
16985 | $as_echo "$as_me: WARNING: Cannot find any suitable gss-api header - build may fail" >&2;} | ||
16986 | |||
16987 | fi | ||
16988 | |||
16989 | done | ||
16990 | |||
16991 | |||
16992 | |||
16993 | fi | ||
16994 | |||
16995 | |||
16996 | |||
16997 | oldCPP="$CPPFLAGS" | ||
16998 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi" | ||
16999 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi_krb5.h" "ac_cv_header_gssapi_krb5_h" "$ac_includes_default" | ||
17000 | if test "x$ac_cv_header_gssapi_krb5_h" = xyes; then : | ||
17001 | |||
17002 | else | ||
17003 | CPPFLAGS="$oldCPP" | ||
17004 | fi | ||
17005 | |||
17006 | |||
17007 | |||
17008 | fi | ||
17009 | if test ! -z "$need_dash_r" ; then | ||
17010 | LDFLAGS="$LDFLAGS -R${KRB5ROOT}/lib" | ||
17011 | fi | ||
17012 | if test ! -z "$blibpath" ; then | ||
17013 | blibpath="$blibpath:${KRB5ROOT}/lib" | ||
17014 | fi | ||
17015 | |||
17016 | for ac_header in gssapi.h gssapi/gssapi.h | ||
17017 | do : | ||
17018 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
17019 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
17020 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
17021 | cat >>confdefs.h <<_ACEOF | ||
17022 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
17023 | _ACEOF | ||
17024 | |||
17025 | fi | ||
17026 | |||
17027 | done | ||
17028 | |||
17029 | for ac_header in gssapi_krb5.h gssapi/gssapi_krb5.h | ||
17030 | do : | ||
17031 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
17032 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
17033 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
17034 | cat >>confdefs.h <<_ACEOF | ||
17035 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
17036 | _ACEOF | ||
17037 | |||
17038 | fi | ||
17039 | |||
17040 | done | ||
17041 | |||
17042 | for ac_header in gssapi_generic.h gssapi/gssapi_generic.h | ||
17043 | do : | ||
17044 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
17045 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
17046 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
17047 | cat >>confdefs.h <<_ACEOF | ||
17048 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
17049 | _ACEOF | ||
17050 | |||
17051 | fi | ||
17052 | |||
17053 | done | ||
17054 | |||
17055 | |||
17056 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing k_hasafs" >&5 | ||
17057 | $as_echo_n "checking for library containing k_hasafs... " >&6; } | ||
17058 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
17059 | $as_echo_n "(cached) " >&6 | ||
17060 | else | ||
17061 | ac_func_search_save_LIBS=$LIBS | ||
17062 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17063 | /* end confdefs.h. */ | ||
17064 | |||
17065 | /* Override any GCC internal prototype to avoid an error. | ||
17066 | Use char because int might match the return type of a GCC | ||
17067 | builtin and then its argument prototype would still apply. */ | ||
17068 | #ifdef __cplusplus | ||
17069 | extern "C" | ||
17070 | #endif | ||
17071 | char k_hasafs (); | ||
17072 | int | ||
17073 | main () | ||
17074 | { | ||
17075 | return k_hasafs (); | ||
17076 | ; | ||
17077 | return 0; | ||
17078 | } | ||
17079 | _ACEOF | ||
17080 | for ac_lib in '' kafs; do | ||
17081 | if test -z "$ac_lib"; then | ||
17082 | ac_res="none required" | ||
17083 | else | ||
17084 | ac_res=-l$ac_lib | ||
17085 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
17086 | fi | ||
17087 | if ac_fn_c_try_link "$LINENO"; then : | ||
17088 | ac_cv_search_k_hasafs=$ac_res | ||
17089 | fi | ||
17090 | rm -f core conftest.err conftest.$ac_objext \ | ||
17091 | conftest$ac_exeext | ||
17092 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
17093 | break | ||
17094 | fi | ||
17095 | done | ||
17096 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
17097 | |||
17098 | else | ||
17099 | ac_cv_search_k_hasafs=no | ||
17100 | fi | ||
17101 | rm conftest.$ac_ext | ||
17102 | LIBS=$ac_func_search_save_LIBS | ||
17103 | fi | ||
17104 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_k_hasafs" >&5 | ||
17105 | $as_echo "$ac_cv_search_k_hasafs" >&6; } | ||
17106 | ac_res=$ac_cv_search_k_hasafs | ||
17107 | if test "$ac_res" != no; then : | ||
17108 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
17109 | |||
17110 | $as_echo "#define USE_AFS 1" >>confdefs.h | ||
17111 | |||
17112 | fi | ||
17113 | |||
17114 | |||
17115 | ac_fn_c_check_decl "$LINENO" "GSS_C_NT_HOSTBASED_SERVICE" "ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" " | ||
17116 | #ifdef HAVE_GSSAPI_H | ||
17117 | # include <gssapi.h> | ||
17118 | #elif defined(HAVE_GSSAPI_GSSAPI_H) | ||
17119 | # include <gssapi/gssapi.h> | ||
17120 | #endif | ||
17121 | |||
17122 | #ifdef HAVE_GSSAPI_GENERIC_H | ||
17123 | # include <gssapi_generic.h> | ||
17124 | #elif defined(HAVE_GSSAPI_GSSAPI_GENERIC_H) | ||
17125 | # include <gssapi/gssapi_generic.h> | ||
17126 | #endif | ||
17127 | |||
17128 | " | ||
17129 | if test "x$ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" = xyes; then : | ||
17130 | ac_have_decl=1 | ||
17131 | else | ||
17132 | ac_have_decl=0 | ||
17133 | fi | ||
17134 | |||
17135 | cat >>confdefs.h <<_ACEOF | ||
17136 | #define HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE $ac_have_decl | ||
17137 | _ACEOF | ||
17138 | |||
17139 | saved_LIBS="$LIBS" | ||
17140 | LIBS="$LIBS $K5LIBS" | ||
17141 | for ac_func in krb5_cc_new_unique krb5_get_error_message krb5_free_error_message | ||
17142 | do : | ||
17143 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
17144 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
17145 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
17146 | cat >>confdefs.h <<_ACEOF | ||
17147 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
17148 | _ACEOF | ||
17149 | |||
17150 | fi | ||
17151 | done | ||
17152 | |||
17153 | LIBS="$saved_LIBS" | ||
17154 | |||
17155 | fi | ||
17156 | |||
17157 | |||
17158 | fi | ||
17159 | |||
17160 | |||
17161 | |||
17162 | |||
17163 | # Looking for programs, paths and files | ||
17164 | |||
17165 | PRIVSEP_PATH=/var/empty | ||
17166 | |||
17167 | # Check whether --with-privsep-path was given. | ||
17168 | if test "${with_privsep_path+set}" = set; then : | ||
17169 | withval=$with_privsep_path; | ||
17170 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
17171 | test "x${withval}" != "xyes"; then | ||
17172 | PRIVSEP_PATH=$withval | ||
17173 | fi | ||
17174 | |||
17175 | |||
17176 | fi | ||
17177 | |||
17178 | |||
17179 | |||
17180 | |||
17181 | # Check whether --with-xauth was given. | ||
17182 | if test "${with_xauth+set}" = set; then : | ||
17183 | withval=$with_xauth; | ||
17184 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
17185 | test "x${withval}" != "xyes"; then | ||
17186 | xauth_path=$withval | ||
17187 | fi | ||
17188 | |||
17189 | else | ||
17190 | |||
17191 | TestPath="$PATH" | ||
17192 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/X/bin" | ||
17193 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/bin/X11" | ||
17194 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/X11R6/bin" | ||
17195 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/openwin/bin" | ||
17196 | # Extract the first word of "xauth", so it can be a program name with args. | ||
17197 | set dummy xauth; ac_word=$2 | ||
17198 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
17199 | $as_echo_n "checking for $ac_word... " >&6; } | ||
17200 | if ${ac_cv_path_xauth_path+:} false; then : | ||
17201 | $as_echo_n "(cached) " >&6 | ||
17202 | else | ||
17203 | case $xauth_path in | ||
17204 | [\\/]* | ?:[\\/]*) | ||
17205 | ac_cv_path_xauth_path="$xauth_path" # Let the user override the test with a path. | ||
17206 | ;; | ||
17207 | *) | ||
17208 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
17209 | for as_dir in $TestPath | ||
17210 | do | ||
17211 | IFS=$as_save_IFS | ||
17212 | test -z "$as_dir" && as_dir=. | ||
17213 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
17214 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
17215 | ac_cv_path_xauth_path="$as_dir/$ac_word$ac_exec_ext" | ||
17216 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
17217 | break 2 | ||
17218 | fi | ||
17219 | done | ||
17220 | done | ||
17221 | IFS=$as_save_IFS | ||
17222 | |||
17223 | ;; | ||
17224 | esac | ||
17225 | fi | ||
17226 | xauth_path=$ac_cv_path_xauth_path | ||
17227 | if test -n "$xauth_path"; then | ||
17228 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xauth_path" >&5 | ||
17229 | $as_echo "$xauth_path" >&6; } | ||
17230 | else | ||
17231 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17232 | $as_echo "no" >&6; } | ||
17233 | fi | ||
17234 | |||
17235 | |||
17236 | if (test ! -z "$xauth_path" && test -x "/usr/openwin/bin/xauth") ; then | ||
17237 | xauth_path="/usr/openwin/bin/xauth" | ||
17238 | fi | ||
17239 | |||
17240 | |||
17241 | fi | ||
17242 | |||
17243 | |||
17244 | STRIP_OPT=-s | ||
17245 | # Check whether --enable-strip was given. | ||
17246 | if test "${enable_strip+set}" = set; then : | ||
17247 | enableval=$enable_strip; | ||
17248 | if test "x$enableval" = "xno" ; then | ||
17249 | STRIP_OPT= | ||
17250 | fi | ||
17251 | |||
17252 | |||
17253 | fi | ||
17254 | |||
17255 | |||
17256 | |||
17257 | if test -z "$xauth_path" ; then | ||
17258 | XAUTH_PATH="undefined" | ||
17259 | |||
17260 | else | ||
17261 | |||
17262 | cat >>confdefs.h <<_ACEOF | ||
17263 | #define XAUTH_PATH "$xauth_path" | ||
17264 | _ACEOF | ||
17265 | |||
17266 | XAUTH_PATH=$xauth_path | ||
17267 | |||
17268 | fi | ||
17269 | |||
17270 | # Check for mail directory | ||
17271 | |||
17272 | # Check whether --with-maildir was given. | ||
17273 | if test "${with_maildir+set}" = set; then : | ||
17274 | withval=$with_maildir; | ||
17275 | if test "X$withval" != X && test "x$withval" != xno && \ | ||
17276 | test "x${withval}" != xyes; then | ||
17277 | |||
17278 | cat >>confdefs.h <<_ACEOF | ||
17279 | #define MAIL_DIRECTORY "$withval" | ||
17280 | _ACEOF | ||
17281 | |||
17282 | fi | ||
17283 | |||
17284 | else | ||
17285 | |||
17286 | if test "X$maildir" != "X"; then | ||
17287 | cat >>confdefs.h <<_ACEOF | ||
17288 | #define MAIL_DIRECTORY "$maildir" | ||
17289 | _ACEOF | ||
17290 | |||
17291 | else | ||
17292 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking Discovering system mail directory" >&5 | ||
17293 | $as_echo_n "checking Discovering system mail directory... " >&6; } | ||
17294 | if test "$cross_compiling" = yes; then : | ||
17295 | |||
17296 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&5 | ||
17297 | $as_echo "$as_me: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&2;} | ||
17298 | |||
17299 | |||
17300 | else | ||
17301 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17302 | /* end confdefs.h. */ | ||
17303 | |||
17304 | #include <stdio.h> | ||
17305 | #include <string.h> | ||
17306 | #ifdef HAVE_PATHS_H | ||
17307 | #include <paths.h> | ||
17308 | #endif | ||
17309 | #ifdef HAVE_MAILLOCK_H | ||
17310 | #include <maillock.h> | ||
17311 | #endif | ||
17312 | #define DATA "conftest.maildir" | ||
17313 | |||
17314 | int | ||
17315 | main () | ||
17316 | { | ||
17317 | |||
17318 | FILE *fd; | ||
17319 | int rc; | ||
17320 | |||
17321 | fd = fopen(DATA,"w"); | ||
17322 | if(fd == NULL) | ||
17323 | exit(1); | ||
17324 | |||
17325 | #if defined (_PATH_MAILDIR) | ||
17326 | if ((rc = fprintf(fd ,"_PATH_MAILDIR:%s\n", _PATH_MAILDIR)) <0) | ||
17327 | exit(1); | ||
17328 | #elif defined (MAILDIR) | ||
17329 | if ((rc = fprintf(fd ,"MAILDIR:%s\n", MAILDIR)) <0) | ||
17330 | exit(1); | ||
17331 | #elif defined (_PATH_MAIL) | ||
17332 | if ((rc = fprintf(fd ,"_PATH_MAIL:%s\n", _PATH_MAIL)) <0) | ||
17333 | exit(1); | ||
17334 | #else | ||
17335 | exit (2); | ||
17336 | #endif | ||
17337 | |||
17338 | exit(0); | ||
17339 | |||
17340 | ; | ||
17341 | return 0; | ||
17342 | } | ||
17343 | _ACEOF | ||
17344 | if ac_fn_c_try_run "$LINENO"; then : | ||
17345 | |||
17346 | maildir_what=`awk -F: '{print $1}' conftest.maildir` | ||
17347 | maildir=`awk -F: '{print $2}' conftest.maildir \ | ||
17348 | | sed 's|/$||'` | ||
17349 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: $maildir from $maildir_what" >&5 | ||
17350 | $as_echo "Using: $maildir from $maildir_what" >&6; } | ||
17351 | if test "x$maildir_what" != "x_PATH_MAILDIR"; then | ||
17352 | cat >>confdefs.h <<_ACEOF | ||
17353 | #define MAIL_DIRECTORY "$maildir" | ||
17354 | _ACEOF | ||
17355 | |||
17356 | fi | ||
17357 | |||
17358 | else | ||
17359 | |||
17360 | if test "X$ac_status" = "X2";then | ||
17361 | # our test program didn't find it. Default to /var/spool/mail | ||
17362 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: default value of /var/spool/mail" >&5 | ||
17363 | $as_echo "Using: default value of /var/spool/mail" >&6; } | ||
17364 | cat >>confdefs.h <<_ACEOF | ||
17365 | #define MAIL_DIRECTORY "/var/spool/mail" | ||
17366 | _ACEOF | ||
17367 | |||
17368 | else | ||
17369 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: *** not found ***" >&5 | ||
17370 | $as_echo "*** not found ***" >&6; } | ||
17371 | fi | ||
17372 | |||
17373 | fi | ||
17374 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
17375 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
17376 | fi | ||
17377 | |||
17378 | fi | ||
17379 | |||
17380 | |||
17381 | fi | ||
17382 | # maildir | ||
17383 | |||
17384 | if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes"; then | ||
17385 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptmx test" >&5 | ||
17386 | $as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptmx test" >&2;} | ||
17387 | disable_ptmx_check=yes | ||
17388 | fi | ||
17389 | if test -z "$no_dev_ptmx" ; then | ||
17390 | if test "x$disable_ptmx_check" != "xyes" ; then | ||
17391 | as_ac_File=`$as_echo "ac_cv_file_"/dev/ptmx"" | $as_tr_sh` | ||
17392 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptmx\"" >&5 | ||
17393 | $as_echo_n "checking for \"/dev/ptmx\"... " >&6; } | ||
17394 | if eval \${$as_ac_File+:} false; then : | ||
17395 | $as_echo_n "(cached) " >&6 | ||
17396 | else | ||
17397 | test "$cross_compiling" = yes && | ||
17398 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
17399 | if test -r ""/dev/ptmx""; then | ||
17400 | eval "$as_ac_File=yes" | ||
17401 | else | ||
17402 | eval "$as_ac_File=no" | ||
17403 | fi | ||
17404 | fi | ||
17405 | eval ac_res=\$$as_ac_File | ||
17406 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
17407 | $as_echo "$ac_res" >&6; } | ||
17408 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
17409 | |||
17410 | |||
17411 | cat >>confdefs.h <<_ACEOF | ||
17412 | #define HAVE_DEV_PTMX 1 | ||
17413 | _ACEOF | ||
17414 | |||
17415 | have_dev_ptmx=1 | ||
17416 | |||
17417 | |||
17418 | fi | ||
17419 | |||
17420 | fi | ||
17421 | fi | ||
17422 | |||
17423 | if test ! -z "$cross_compiling" && test "x$cross_compiling" != "xyes"; then | ||
17424 | as_ac_File=`$as_echo "ac_cv_file_"/dev/ptc"" | $as_tr_sh` | ||
17425 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptc\"" >&5 | ||
17426 | $as_echo_n "checking for \"/dev/ptc\"... " >&6; } | ||
17427 | if eval \${$as_ac_File+:} false; then : | ||
17428 | $as_echo_n "(cached) " >&6 | ||
17429 | else | ||
17430 | test "$cross_compiling" = yes && | ||
17431 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
17432 | if test -r ""/dev/ptc""; then | ||
17433 | eval "$as_ac_File=yes" | ||
17434 | else | ||
17435 | eval "$as_ac_File=no" | ||
17436 | fi | ||
17437 | fi | ||
17438 | eval ac_res=\$$as_ac_File | ||
17439 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
17440 | $as_echo "$ac_res" >&6; } | ||
17441 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
17442 | |||
17443 | |||
17444 | cat >>confdefs.h <<_ACEOF | ||
17445 | #define HAVE_DEV_PTS_AND_PTC 1 | ||
17446 | _ACEOF | ||
17447 | |||
17448 | have_dev_ptc=1 | ||
17449 | |||
17450 | |||
17451 | fi | ||
17452 | |||
17453 | else | ||
17454 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptc test" >&5 | ||
17455 | $as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptc test" >&2;} | ||
17456 | fi | ||
17457 | |||
17458 | # Options from here on. Some of these are preset by platform above | ||
17459 | |||
17460 | # Check whether --with-mantype was given. | ||
17461 | if test "${with_mantype+set}" = set; then : | ||
17462 | withval=$with_mantype; | ||
17463 | case "$withval" in | ||
17464 | man|cat|doc) | ||
17465 | MANTYPE=$withval | ||
17466 | ;; | ||
17467 | *) | ||
17468 | as_fn_error $? "invalid man type: $withval" "$LINENO" 5 | ||
17469 | ;; | ||
17470 | esac | ||
17471 | |||
17472 | |||
17473 | fi | ||
17474 | |||
17475 | if test -z "$MANTYPE"; then | ||
17476 | TestPath="/usr/bin${PATH_SEPARATOR}/usr/ucb" | ||
17477 | for ac_prog in nroff awf | ||
17478 | do | ||
17479 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
17480 | set dummy $ac_prog; ac_word=$2 | ||
17481 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
17482 | $as_echo_n "checking for $ac_word... " >&6; } | ||
17483 | if ${ac_cv_path_NROFF+:} false; then : | ||
17484 | $as_echo_n "(cached) " >&6 | ||
17485 | else | ||
17486 | case $NROFF in | ||
17487 | [\\/]* | ?:[\\/]*) | ||
17488 | ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path. | ||
17489 | ;; | ||
17490 | *) | ||
17491 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
17492 | for as_dir in $TestPath | ||
17493 | do | ||
17494 | IFS=$as_save_IFS | ||
17495 | test -z "$as_dir" && as_dir=. | ||
17496 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
17497 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
17498 | ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext" | ||
17499 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
17500 | break 2 | ||
17501 | fi | ||
17502 | done | ||
17503 | done | ||
17504 | IFS=$as_save_IFS | ||
17505 | |||
17506 | ;; | ||
17507 | esac | ||
17508 | fi | ||
17509 | NROFF=$ac_cv_path_NROFF | ||
17510 | if test -n "$NROFF"; then | ||
17511 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5 | ||
17512 | $as_echo "$NROFF" >&6; } | ||
17513 | else | ||
17514 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17515 | $as_echo "no" >&6; } | ||
17516 | fi | ||
17517 | |||
17518 | |||
17519 | test -n "$NROFF" && break | ||
17520 | done | ||
17521 | test -n "$NROFF" || NROFF="/bin/false" | ||
17522 | |||
17523 | if ${NROFF} -mdoc ${srcdir}/ssh.1 >/dev/null 2>&1; then | ||
17524 | MANTYPE=doc | ||
17525 | elif ${NROFF} -man ${srcdir}/ssh.1 >/dev/null 2>&1; then | ||
17526 | MANTYPE=man | ||
17527 | else | ||
17528 | MANTYPE=cat | ||
17529 | fi | ||
17530 | fi | ||
17531 | |||
17532 | if test "$MANTYPE" = "doc"; then | ||
17533 | mansubdir=man; | ||
17534 | else | ||
17535 | mansubdir=$MANTYPE; | ||
17536 | fi | ||
17537 | |||
17538 | |||
17539 | # Check whether to enable MD5 passwords | ||
17540 | MD5_MSG="no" | ||
17541 | |||
17542 | # Check whether --with-md5-passwords was given. | ||
17543 | if test "${with_md5_passwords+set}" = set; then : | ||
17544 | withval=$with_md5_passwords; | ||
17545 | if test "x$withval" != "xno" ; then | ||
17546 | |||
17547 | $as_echo "#define HAVE_MD5_PASSWORDS 1" >>confdefs.h | ||
17548 | |||
17549 | MD5_MSG="yes" | ||
17550 | fi | ||
17551 | |||
17552 | |||
17553 | fi | ||
17554 | |||
17555 | |||
17556 | # Whether to disable shadow password support | ||
17557 | |||
17558 | # Check whether --with-shadow was given. | ||
17559 | if test "${with_shadow+set}" = set; then : | ||
17560 | withval=$with_shadow; | ||
17561 | if test "x$withval" = "xno" ; then | ||
17562 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
17563 | |||
17564 | disable_shadow=yes | ||
17565 | fi | ||
17566 | |||
17567 | |||
17568 | fi | ||
17569 | |||
17570 | |||
17571 | if test -z "$disable_shadow" ; then | ||
17572 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the systems has expire shadow information" >&5 | ||
17573 | $as_echo_n "checking if the systems has expire shadow information... " >&6; } | ||
17574 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17575 | /* end confdefs.h. */ | ||
17576 | |||
17577 | #include <sys/types.h> | ||
17578 | #include <shadow.h> | ||
17579 | struct spwd sp; | ||
17580 | |||
17581 | int | ||
17582 | main () | ||
17583 | { | ||
17584 | sp.sp_expire = sp.sp_lstchg = sp.sp_inact = 0; | ||
17585 | ; | ||
17586 | return 0; | ||
17587 | } | ||
17588 | _ACEOF | ||
17589 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17590 | sp_expire_available=yes | ||
17591 | fi | ||
17592 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17593 | |||
17594 | if test "x$sp_expire_available" = "xyes" ; then | ||
17595 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
17596 | $as_echo "yes" >&6; } | ||
17597 | |||
17598 | $as_echo "#define HAS_SHADOW_EXPIRE 1" >>confdefs.h | ||
17599 | |||
17600 | else | ||
17601 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17602 | $as_echo "no" >&6; } | ||
17603 | fi | ||
17604 | fi | ||
17605 | |||
17606 | # Use ip address instead of hostname in $DISPLAY | ||
17607 | if test ! -z "$IPADDR_IN_DISPLAY" ; then | ||
17608 | DISPLAY_HACK_MSG="yes" | ||
17609 | |||
17610 | $as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h | ||
17611 | |||
17612 | else | ||
17613 | DISPLAY_HACK_MSG="no" | ||
17614 | |||
17615 | # Check whether --with-ipaddr-display was given. | ||
17616 | if test "${with_ipaddr_display+set}" = set; then : | ||
17617 | withval=$with_ipaddr_display; | ||
17618 | if test "x$withval" != "xno" ; then | ||
17619 | $as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h | ||
17620 | |||
17621 | DISPLAY_HACK_MSG="yes" | ||
17622 | fi | ||
17623 | |||
17624 | |||
17625 | fi | ||
17626 | |||
17627 | fi | ||
17628 | |||
17629 | # check for /etc/default/login and use it if present. | ||
17630 | # Check whether --enable-etc-default-login was given. | ||
17631 | if test "${enable_etc_default_login+set}" = set; then : | ||
17632 | enableval=$enable_etc_default_login; if test "x$enableval" = "xno"; then | ||
17633 | { $as_echo "$as_me:${as_lineno-$LINENO}: /etc/default/login handling disabled" >&5 | ||
17634 | $as_echo "$as_me: /etc/default/login handling disabled" >&6;} | ||
17635 | etc_default_login=no | ||
17636 | else | ||
17637 | etc_default_login=yes | ||
17638 | fi | ||
17639 | else | ||
17640 | if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes"; | ||
17641 | then | ||
17642 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking /etc/default/login" >&5 | ||
17643 | $as_echo "$as_me: WARNING: cross compiling: not checking /etc/default/login" >&2;} | ||
17644 | etc_default_login=no | ||
17645 | else | ||
17646 | etc_default_login=yes | ||
17647 | fi | ||
17648 | |||
17649 | fi | ||
17650 | |||
17651 | |||
17652 | if test "x$etc_default_login" != "xno"; then | ||
17653 | as_ac_File=`$as_echo "ac_cv_file_"/etc/default/login"" | $as_tr_sh` | ||
17654 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/etc/default/login\"" >&5 | ||
17655 | $as_echo_n "checking for \"/etc/default/login\"... " >&6; } | ||
17656 | if eval \${$as_ac_File+:} false; then : | ||
17657 | $as_echo_n "(cached) " >&6 | ||
17658 | else | ||
17659 | test "$cross_compiling" = yes && | ||
17660 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
17661 | if test -r ""/etc/default/login""; then | ||
17662 | eval "$as_ac_File=yes" | ||
17663 | else | ||
17664 | eval "$as_ac_File=no" | ||
17665 | fi | ||
17666 | fi | ||
17667 | eval ac_res=\$$as_ac_File | ||
17668 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
17669 | $as_echo "$ac_res" >&6; } | ||
17670 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
17671 | external_path_file=/etc/default/login | ||
17672 | fi | ||
17673 | |||
17674 | if test "x$external_path_file" = "x/etc/default/login"; then | ||
17675 | |||
17676 | $as_echo "#define HAVE_ETC_DEFAULT_LOGIN 1" >>confdefs.h | ||
17677 | |||
17678 | fi | ||
17679 | fi | ||
17680 | |||
17681 | if test $ac_cv_func_login_getcapbool = "yes" && \ | ||
17682 | test $ac_cv_header_login_cap_h = "yes" ; then | ||
17683 | external_path_file=/etc/login.conf | ||
17684 | fi | ||
17685 | |||
17686 | # Whether to mess with the default path | ||
17687 | SERVER_PATH_MSG="(default)" | ||
17688 | |||
17689 | # Check whether --with-default-path was given. | ||
17690 | if test "${with_default_path+set}" = set; then : | ||
17691 | withval=$with_default_path; | ||
17692 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
17693 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
17694 | --with-default-path=PATH has no effect on this system. | ||
17695 | Edit /etc/login.conf instead." >&5 | ||
17696 | $as_echo "$as_me: WARNING: | ||
17697 | --with-default-path=PATH has no effect on this system. | ||
17698 | Edit /etc/login.conf instead." >&2;} | ||
17699 | elif test "x$withval" != "xno" ; then | ||
17700 | if test ! -z "$external_path_file" ; then | ||
17701 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
17702 | --with-default-path=PATH will only be used if PATH is not defined in | ||
17703 | $external_path_file ." >&5 | ||
17704 | $as_echo "$as_me: WARNING: | ||
17705 | --with-default-path=PATH will only be used if PATH is not defined in | ||
17706 | $external_path_file ." >&2;} | ||
17707 | fi | ||
17708 | user_path="$withval" | ||
17709 | SERVER_PATH_MSG="$withval" | ||
17710 | fi | ||
17711 | |||
17712 | else | ||
17713 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
17714 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Make sure the path to scp is in /etc/login.conf" >&5 | ||
17715 | $as_echo "$as_me: WARNING: Make sure the path to scp is in /etc/login.conf" >&2;} | ||
17716 | else | ||
17717 | if test ! -z "$external_path_file" ; then | ||
17718 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
17719 | If PATH is defined in $external_path_file, ensure the path to scp is included, | ||
17720 | otherwise scp will not work." >&5 | ||
17721 | $as_echo "$as_me: WARNING: | ||
17722 | If PATH is defined in $external_path_file, ensure the path to scp is included, | ||
17723 | otherwise scp will not work." >&2;} | ||
17724 | fi | ||
17725 | if test "$cross_compiling" = yes; then : | ||
17726 | user_path="/usr/bin:/bin:/usr/sbin:/sbin" | ||
17727 | |||
17728 | else | ||
17729 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17730 | /* end confdefs.h. */ | ||
17731 | |||
17732 | /* find out what STDPATH is */ | ||
17733 | #include <stdio.h> | ||
17734 | #ifdef HAVE_PATHS_H | ||
17735 | # include <paths.h> | ||
17736 | #endif | ||
17737 | #ifndef _PATH_STDPATH | ||
17738 | # ifdef _PATH_USERPATH /* Irix */ | ||
17739 | # define _PATH_STDPATH _PATH_USERPATH | ||
17740 | # else | ||
17741 | # define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin" | ||
17742 | # endif | ||
17743 | #endif | ||
17744 | #include <sys/types.h> | ||
17745 | #include <sys/stat.h> | ||
17746 | #include <fcntl.h> | ||
17747 | #define DATA "conftest.stdpath" | ||
17748 | |||
17749 | int | ||
17750 | main () | ||
17751 | { | ||
17752 | |||
17753 | FILE *fd; | ||
17754 | int rc; | ||
17755 | |||
17756 | fd = fopen(DATA,"w"); | ||
17757 | if(fd == NULL) | ||
17758 | exit(1); | ||
17759 | |||
17760 | if ((rc = fprintf(fd,"%s", _PATH_STDPATH)) < 0) | ||
17761 | exit(1); | ||
17762 | |||
17763 | exit(0); | ||
17764 | |||
17765 | ; | ||
17766 | return 0; | ||
17767 | } | ||
17768 | _ACEOF | ||
17769 | if ac_fn_c_try_run "$LINENO"; then : | ||
17770 | user_path=`cat conftest.stdpath` | ||
17771 | else | ||
17772 | user_path="/usr/bin:/bin:/usr/sbin:/sbin" | ||
17773 | fi | ||
17774 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
17775 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
17776 | fi | ||
17777 | |||
17778 | # make sure $bindir is in USER_PATH so scp will work | ||
17779 | t_bindir="${bindir}" | ||
17780 | while echo "${t_bindir}" | egrep '\$\{|NONE/' >/dev/null 2>&1; do | ||
17781 | t_bindir=`eval echo ${t_bindir}` | ||
17782 | case $t_bindir in | ||
17783 | NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$prefix~"` ;; | ||
17784 | esac | ||
17785 | case $t_bindir in | ||
17786 | NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$ac_default_prefix~"` ;; | ||
17787 | esac | ||
17788 | done | ||
17789 | echo $user_path | grep ":$t_bindir" > /dev/null 2>&1 | ||
17790 | if test $? -ne 0 ; then | ||
17791 | echo $user_path | grep "^$t_bindir" > /dev/null 2>&1 | ||
17792 | if test $? -ne 0 ; then | ||
17793 | user_path=$user_path:$t_bindir | ||
17794 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Adding $t_bindir to USER_PATH so scp will work" >&5 | ||
17795 | $as_echo "Adding $t_bindir to USER_PATH so scp will work" >&6; } | ||
17796 | fi | ||
17797 | fi | ||
17798 | fi | ||
17799 | |||
17800 | fi | ||
17801 | |||
17802 | if test "x$external_path_file" != "x/etc/login.conf" ; then | ||
17803 | |||
17804 | cat >>confdefs.h <<_ACEOF | ||
17805 | #define USER_PATH "$user_path" | ||
17806 | _ACEOF | ||
17807 | |||
17808 | |||
17809 | fi | ||
17810 | |||
17811 | # Set superuser path separately to user path | ||
17812 | |||
17813 | # Check whether --with-superuser-path was given. | ||
17814 | if test "${with_superuser_path+set}" = set; then : | ||
17815 | withval=$with_superuser_path; | ||
17816 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
17817 | test "x${withval}" != "xyes"; then | ||
17818 | |||
17819 | cat >>confdefs.h <<_ACEOF | ||
17820 | #define SUPERUSER_PATH "$withval" | ||
17821 | _ACEOF | ||
17822 | |||
17823 | superuser_path=$withval | ||
17824 | fi | ||
17825 | |||
17826 | |||
17827 | fi | ||
17828 | |||
17829 | |||
17830 | |||
17831 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need to convert IPv4 in IPv6-mapped addresses" >&5 | ||
17832 | $as_echo_n "checking if we need to convert IPv4 in IPv6-mapped addresses... " >&6; } | ||
17833 | IPV4_IN6_HACK_MSG="no" | ||
17834 | |||
17835 | # Check whether --with-4in6 was given. | ||
17836 | if test "${with_4in6+set}" = set; then : | ||
17837 | withval=$with_4in6; | ||
17838 | if test "x$withval" != "xno" ; then | ||
17839 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
17840 | $as_echo "yes" >&6; } | ||
17841 | |||
17842 | $as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h | ||
17843 | |||
17844 | IPV4_IN6_HACK_MSG="yes" | ||
17845 | else | ||
17846 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17847 | $as_echo "no" >&6; } | ||
17848 | fi | ||
17849 | |||
17850 | else | ||
17851 | |||
17852 | if test "x$inet6_default_4in6" = "xyes"; then | ||
17853 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (default)" >&5 | ||
17854 | $as_echo "yes (default)" >&6; } | ||
17855 | $as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h | ||
17856 | |||
17857 | IPV4_IN6_HACK_MSG="yes" | ||
17858 | else | ||
17859 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (default)" >&5 | ||
17860 | $as_echo "no (default)" >&6; } | ||
17861 | fi | ||
17862 | |||
17863 | |||
17864 | fi | ||
17865 | |||
17866 | |||
17867 | # Whether to enable BSD auth support | ||
17868 | BSD_AUTH_MSG=no | ||
17869 | |||
17870 | # Check whether --with-bsd-auth was given. | ||
17871 | if test "${with_bsd_auth+set}" = set; then : | ||
17872 | withval=$with_bsd_auth; | ||
17873 | if test "x$withval" != "xno" ; then | ||
17874 | |||
17875 | $as_echo "#define BSD_AUTH 1" >>confdefs.h | ||
17876 | |||
17877 | BSD_AUTH_MSG=yes | ||
17878 | fi | ||
17879 | |||
17880 | |||
17881 | fi | ||
17882 | |||
17883 | |||
17884 | # Where to place sshd.pid | ||
17885 | piddir=/var/run | ||
17886 | # make sure the directory exists | ||
17887 | if test ! -d $piddir ; then | ||
17888 | piddir=`eval echo ${sysconfdir}` | ||
17889 | case $piddir in | ||
17890 | NONE/*) piddir=`echo $piddir | sed "s~NONE~$ac_default_prefix~"` ;; | ||
17891 | esac | ||
17892 | fi | ||
17893 | |||
17894 | |||
17895 | # Check whether --with-pid-dir was given. | ||
17896 | if test "${with_pid_dir+set}" = set; then : | ||
17897 | withval=$with_pid_dir; | ||
17898 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
17899 | test "x${withval}" != "xyes"; then | ||
17900 | piddir=$withval | ||
17901 | if test ! -d $piddir ; then | ||
17902 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** no $piddir directory on this system **" >&5 | ||
17903 | $as_echo "$as_me: WARNING: ** no $piddir directory on this system **" >&2;} | ||
17904 | fi | ||
17905 | fi | ||
17906 | |||
17907 | |||
17908 | fi | ||
17909 | |||
17910 | |||
17911 | |||
17912 | cat >>confdefs.h <<_ACEOF | ||
17913 | #define _PATH_SSH_PIDDIR "$piddir" | ||
17914 | _ACEOF | ||
17915 | |||
17916 | |||
17917 | |||
17918 | # Check whether --enable-lastlog was given. | ||
17919 | if test "${enable_lastlog+set}" = set; then : | ||
17920 | enableval=$enable_lastlog; | ||
17921 | if test "x$enableval" = "xno" ; then | ||
17922 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
17923 | |||
17924 | fi | ||
17925 | |||
17926 | |||
17927 | fi | ||
17928 | |||
17929 | # Check whether --enable-utmp was given. | ||
17930 | if test "${enable_utmp+set}" = set; then : | ||
17931 | enableval=$enable_utmp; | ||
17932 | if test "x$enableval" = "xno" ; then | ||
17933 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
17934 | |||
17935 | fi | ||
17936 | |||
17937 | |||
17938 | fi | ||
17939 | |||
17940 | # Check whether --enable-utmpx was given. | ||
17941 | if test "${enable_utmpx+set}" = set; then : | ||
17942 | enableval=$enable_utmpx; | ||
17943 | if test "x$enableval" = "xno" ; then | ||
17944 | |||
17945 | $as_echo "#define DISABLE_UTMPX 1" >>confdefs.h | ||
17946 | |||
17947 | fi | ||
17948 | |||
17949 | |||
17950 | fi | ||
17951 | |||
17952 | # Check whether --enable-wtmp was given. | ||
17953 | if test "${enable_wtmp+set}" = set; then : | ||
17954 | enableval=$enable_wtmp; | ||
17955 | if test "x$enableval" = "xno" ; then | ||
17956 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
17957 | |||
17958 | fi | ||
17959 | |||
17960 | |||
17961 | fi | ||
17962 | |||
17963 | # Check whether --enable-wtmpx was given. | ||
17964 | if test "${enable_wtmpx+set}" = set; then : | ||
17965 | enableval=$enable_wtmpx; | ||
17966 | if test "x$enableval" = "xno" ; then | ||
17967 | |||
17968 | $as_echo "#define DISABLE_WTMPX 1" >>confdefs.h | ||
17969 | |||
17970 | fi | ||
17971 | |||
17972 | |||
17973 | fi | ||
17974 | |||
17975 | # Check whether --enable-libutil was given. | ||
17976 | if test "${enable_libutil+set}" = set; then : | ||
17977 | enableval=$enable_libutil; | ||
17978 | if test "x$enableval" = "xno" ; then | ||
17979 | $as_echo "#define DISABLE_LOGIN 1" >>confdefs.h | ||
17980 | |||
17981 | fi | ||
17982 | |||
17983 | |||
17984 | fi | ||
17985 | |||
17986 | # Check whether --enable-pututline was given. | ||
17987 | if test "${enable_pututline+set}" = set; then : | ||
17988 | enableval=$enable_pututline; | ||
17989 | if test "x$enableval" = "xno" ; then | ||
17990 | |||
17991 | $as_echo "#define DISABLE_PUTUTLINE 1" >>confdefs.h | ||
17992 | |||
17993 | fi | ||
17994 | |||
17995 | |||
17996 | fi | ||
17997 | |||
17998 | # Check whether --enable-pututxline was given. | ||
17999 | if test "${enable_pututxline+set}" = set; then : | ||
18000 | enableval=$enable_pututxline; | ||
18001 | if test "x$enableval" = "xno" ; then | ||
18002 | |||
18003 | $as_echo "#define DISABLE_PUTUTXLINE 1" >>confdefs.h | ||
18004 | |||
18005 | fi | ||
18006 | |||
18007 | |||
18008 | fi | ||
18009 | |||
18010 | |||
18011 | # Check whether --with-lastlog was given. | ||
18012 | if test "${with_lastlog+set}" = set; then : | ||
18013 | withval=$with_lastlog; | ||
18014 | if test "x$withval" = "xno" ; then | ||
18015 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
18016 | |||
18017 | elif test -n "$withval" && test "x${withval}" != "xyes"; then | ||
18018 | conf_lastlog_location=$withval | ||
18019 | fi | ||
18020 | |||
18021 | |||
18022 | fi | ||
18023 | |||
18024 | |||
18025 | |||
18026 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines LASTLOG_FILE" >&5 | ||
18027 | $as_echo_n "checking if your system defines LASTLOG_FILE... " >&6; } | ||
18028 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18029 | /* end confdefs.h. */ | ||
18030 | |||
18031 | #include <sys/types.h> | ||
18032 | #include <utmp.h> | ||
18033 | #ifdef HAVE_LASTLOG_H | ||
18034 | # include <lastlog.h> | ||
18035 | #endif | ||
18036 | #ifdef HAVE_PATHS_H | ||
18037 | # include <paths.h> | ||
18038 | #endif | ||
18039 | #ifdef HAVE_LOGIN_H | ||
18040 | # include <login.h> | ||
18041 | #endif | ||
18042 | |||
18043 | int | ||
18044 | main () | ||
18045 | { | ||
18046 | char *lastlog = LASTLOG_FILE; | ||
18047 | ; | ||
18048 | return 0; | ||
18049 | } | ||
18050 | _ACEOF | ||
18051 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18052 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18053 | $as_echo "yes" >&6; } | ||
18054 | else | ||
18055 | |||
18056 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18057 | $as_echo "no" >&6; } | ||
18058 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines _PATH_LASTLOG" >&5 | ||
18059 | $as_echo_n "checking if your system defines _PATH_LASTLOG... " >&6; } | ||
18060 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18061 | /* end confdefs.h. */ | ||
18062 | |||
18063 | #include <sys/types.h> | ||
18064 | #include <utmp.h> | ||
18065 | #ifdef HAVE_LASTLOG_H | ||
18066 | # include <lastlog.h> | ||
18067 | #endif | ||
18068 | #ifdef HAVE_PATHS_H | ||
18069 | # include <paths.h> | ||
18070 | #endif | ||
18071 | |||
18072 | int | ||
18073 | main () | ||
18074 | { | ||
18075 | char *lastlog = _PATH_LASTLOG; | ||
18076 | ; | ||
18077 | return 0; | ||
18078 | } | ||
18079 | _ACEOF | ||
18080 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18081 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18082 | $as_echo "yes" >&6; } | ||
18083 | else | ||
18084 | |||
18085 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18086 | $as_echo "no" >&6; } | ||
18087 | system_lastlog_path=no | ||
18088 | |||
18089 | fi | ||
18090 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18091 | |||
18092 | fi | ||
18093 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18094 | |||
18095 | if test -z "$conf_lastlog_location"; then | ||
18096 | if test x"$system_lastlog_path" = x"no" ; then | ||
18097 | for f in /var/log/lastlog /usr/adm/lastlog /var/adm/lastlog /etc/security/lastlog ; do | ||
18098 | if (test -d "$f" || test -f "$f") ; then | ||
18099 | conf_lastlog_location=$f | ||
18100 | fi | ||
18101 | done | ||
18102 | if test -z "$conf_lastlog_location"; then | ||
18103 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** Cannot find lastlog **" >&5 | ||
18104 | $as_echo "$as_me: WARNING: ** Cannot find lastlog **" >&2;} | ||
18105 | fi | ||
18106 | fi | ||
18107 | fi | ||
18108 | |||
18109 | if test -n "$conf_lastlog_location"; then | ||
18110 | |||
18111 | cat >>confdefs.h <<_ACEOF | ||
18112 | #define CONF_LASTLOG_FILE "$conf_lastlog_location" | ||
18113 | _ACEOF | ||
18114 | |||
18115 | fi | ||
18116 | |||
18117 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines UTMP_FILE" >&5 | ||
18118 | $as_echo_n "checking if your system defines UTMP_FILE... " >&6; } | ||
18119 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18120 | /* end confdefs.h. */ | ||
18121 | |||
18122 | #include <sys/types.h> | ||
18123 | #include <utmp.h> | ||
18124 | #ifdef HAVE_PATHS_H | ||
18125 | # include <paths.h> | ||
18126 | #endif | ||
18127 | |||
18128 | int | ||
18129 | main () | ||
18130 | { | ||
18131 | char *utmp = UTMP_FILE; | ||
18132 | ; | ||
18133 | return 0; | ||
18134 | } | ||
18135 | _ACEOF | ||
18136 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18137 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18138 | $as_echo "yes" >&6; } | ||
18139 | else | ||
18140 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18141 | $as_echo "no" >&6; } | ||
18142 | system_utmp_path=no | ||
18143 | |||
18144 | fi | ||
18145 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18146 | if test -z "$conf_utmp_location"; then | ||
18147 | if test x"$system_utmp_path" = x"no" ; then | ||
18148 | for f in /etc/utmp /usr/adm/utmp /var/run/utmp; do | ||
18149 | if test -f $f ; then | ||
18150 | conf_utmp_location=$f | ||
18151 | fi | ||
18152 | done | ||
18153 | if test -z "$conf_utmp_location"; then | ||
18154 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
18155 | |||
18156 | fi | ||
18157 | fi | ||
18158 | fi | ||
18159 | if test -n "$conf_utmp_location"; then | ||
18160 | |||
18161 | cat >>confdefs.h <<_ACEOF | ||
18162 | #define CONF_UTMP_FILE "$conf_utmp_location" | ||
18163 | _ACEOF | ||
18164 | |||
18165 | fi | ||
18166 | |||
18167 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMP_FILE" >&5 | ||
18168 | $as_echo_n "checking if your system defines WTMP_FILE... " >&6; } | ||
18169 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18170 | /* end confdefs.h. */ | ||
18171 | |||
18172 | #include <sys/types.h> | ||
18173 | #include <utmp.h> | ||
18174 | #ifdef HAVE_PATHS_H | ||
18175 | # include <paths.h> | ||
18176 | #endif | ||
18177 | |||
18178 | int | ||
18179 | main () | ||
18180 | { | ||
18181 | char *wtmp = WTMP_FILE; | ||
18182 | ; | ||
18183 | return 0; | ||
18184 | } | ||
18185 | _ACEOF | ||
18186 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18187 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18188 | $as_echo "yes" >&6; } | ||
18189 | else | ||
18190 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18191 | $as_echo "no" >&6; } | ||
18192 | system_wtmp_path=no | ||
18193 | |||
18194 | fi | ||
18195 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18196 | if test -z "$conf_wtmp_location"; then | ||
18197 | if test x"$system_wtmp_path" = x"no" ; then | ||
18198 | for f in /usr/adm/wtmp /var/log/wtmp; do | ||
18199 | if test -f $f ; then | ||
18200 | conf_wtmp_location=$f | ||
18201 | fi | ||
18202 | done | ||
18203 | if test -z "$conf_wtmp_location"; then | ||
18204 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
18205 | |||
18206 | fi | ||
18207 | fi | ||
18208 | fi | ||
18209 | if test -n "$conf_wtmp_location"; then | ||
18210 | |||
18211 | cat >>confdefs.h <<_ACEOF | ||
18212 | #define CONF_WTMP_FILE "$conf_wtmp_location" | ||
18213 | _ACEOF | ||
18214 | |||
18215 | fi | ||
18216 | |||
18217 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMPX_FILE" >&5 | ||
18218 | $as_echo_n "checking if your system defines WTMPX_FILE... " >&6; } | ||
18219 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18220 | /* end confdefs.h. */ | ||
18221 | |||
18222 | #include <sys/types.h> | ||
18223 | #include <utmp.h> | ||
18224 | #ifdef HAVE_UTMPX_H | ||
18225 | #include <utmpx.h> | ||
18226 | #endif | ||
18227 | #ifdef HAVE_PATHS_H | ||
18228 | # include <paths.h> | ||
18229 | #endif | ||
18230 | |||
18231 | int | ||
18232 | main () | ||
18233 | { | ||
18234 | char *wtmpx = WTMPX_FILE; | ||
18235 | ; | ||
18236 | return 0; | ||
18237 | } | ||
18238 | _ACEOF | ||
18239 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18240 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18241 | $as_echo "yes" >&6; } | ||
18242 | else | ||
18243 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18244 | $as_echo "no" >&6; } | ||
18245 | system_wtmpx_path=no | ||
18246 | |||
18247 | fi | ||
18248 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18249 | if test -z "$conf_wtmpx_location"; then | ||
18250 | if test x"$system_wtmpx_path" = x"no" ; then | ||
18251 | $as_echo "#define DISABLE_WTMPX 1" >>confdefs.h | ||
18252 | |||
18253 | fi | ||
18254 | else | ||
18255 | |||
18256 | cat >>confdefs.h <<_ACEOF | ||
18257 | #define CONF_WTMPX_FILE "$conf_wtmpx_location" | ||
18258 | _ACEOF | ||
18259 | |||
18260 | fi | ||
18261 | |||
18262 | |||
18263 | if test ! -z "$blibpath" ; then | ||
18264 | LDFLAGS="$LDFLAGS $blibflags$blibpath" | ||
18265 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&5 | ||
18266 | $as_echo "$as_me: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&2;} | ||
18267 | fi | ||
18268 | |||
18269 | ac_fn_c_check_member "$LINENO" "struct lastlog" "ll_line" "ac_cv_member_struct_lastlog_ll_line" " | ||
18270 | #ifdef HAVE_SYS_TYPES_H | ||
18271 | #include <sys/types.h> | ||
18272 | #endif | ||
18273 | #ifdef HAVE_UTMP_H | ||
18274 | #include <utmp.h> | ||
18275 | #endif | ||
18276 | #ifdef HAVE_UTMPX_H | ||
18277 | #include <utmpx.h> | ||
18278 | #endif | ||
18279 | #ifdef HAVE_LASTLOG_H | ||
18280 | #include <lastlog.h> | ||
18281 | #endif | ||
18282 | |||
18283 | " | ||
18284 | if test "x$ac_cv_member_struct_lastlog_ll_line" = xyes; then : | ||
18285 | |||
18286 | else | ||
18287 | |||
18288 | if test x$SKIP_DISABLE_LASTLOG_DEFINE != "xyes" ; then | ||
18289 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
18290 | |||
18291 | fi | ||
18292 | |||
18293 | fi | ||
18294 | |||
18295 | |||
18296 | ac_fn_c_check_member "$LINENO" "struct utmp" "ut_line" "ac_cv_member_struct_utmp_ut_line" " | ||
18297 | #ifdef HAVE_SYS_TYPES_H | ||
18298 | #include <sys/types.h> | ||
18299 | #endif | ||
18300 | #ifdef HAVE_UTMP_H | ||
18301 | #include <utmp.h> | ||
18302 | #endif | ||
18303 | #ifdef HAVE_UTMPX_H | ||
18304 | #include <utmpx.h> | ||
18305 | #endif | ||
18306 | #ifdef HAVE_LASTLOG_H | ||
18307 | #include <lastlog.h> | ||
18308 | #endif | ||
18309 | |||
18310 | " | ||
18311 | if test "x$ac_cv_member_struct_utmp_ut_line" = xyes; then : | ||
18312 | |||
18313 | else | ||
18314 | |||
18315 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
18316 | |||
18317 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
18318 | |||
18319 | |||
18320 | fi | ||
18321 | |||
18322 | |||
18323 | CFLAGS="$CFLAGS $werror_flags" | ||
18324 | |||
18325 | if test "x$ac_cv_func_getaddrinfo" != "xyes" ; then | ||
18326 | TEST_SSH_IPV6=no | ||
18327 | else | ||
18328 | TEST_SSH_IPV6=yes | ||
18329 | fi | ||
18330 | ac_fn_c_check_decl "$LINENO" "BROKEN_GETADDRINFO" "ac_cv_have_decl_BROKEN_GETADDRINFO" "$ac_includes_default" | ||
18331 | if test "x$ac_cv_have_decl_BROKEN_GETADDRINFO" = xyes; then : | ||
18332 | TEST_SSH_IPV6=no | ||
18333 | fi | ||
18334 | |||
18335 | TEST_SSH_IPV6=$TEST_SSH_IPV6 | ||
18336 | |||
18337 | TEST_MALLOC_OPTIONS=$TEST_MALLOC_OPTIONS | ||
18338 | |||
18339 | UNSUPPORTED_ALGORITHMS=$unsupported_algorithms | ||
18340 | |||
18341 | |||
18342 | |||
18343 | ac_config_files="$ac_config_files Makefile buildpkg.sh opensshd.init openssh.xml openbsd-compat/Makefile openbsd-compat/regress/Makefile survey.sh" | ||
18344 | |||
18345 | cat >confcache <<\_ACEOF | ||
18346 | # This file is a shell script that caches the results of configure | ||
18347 | # tests run on this system so they can be shared between configure | ||
18348 | # scripts and configure runs, see configure's option --config-cache. | ||
18349 | # It is not useful on other systems. If it contains results you don't | ||
18350 | # want to keep, you may remove or edit it. | ||
18351 | # | ||
18352 | # config.status only pays attention to the cache file if you give it | ||
18353 | # the --recheck option to rerun configure. | ||
18354 | # | ||
18355 | # `ac_cv_env_foo' variables (set or unset) will be overridden when | ||
18356 | # loading this file, other *unset* `ac_cv_foo' will be assigned the | ||
18357 | # following values. | ||
18358 | |||
18359 | _ACEOF | ||
18360 | |||
18361 | # The following way of writing the cache mishandles newlines in values, | ||
18362 | # but we know of no workaround that is simple, portable, and efficient. | ||
18363 | # So, we kill variables containing newlines. | ||
18364 | # Ultrix sh set writes to stderr and can't be redirected directly, | ||
18365 | # and sets the high bit in the cache file unless we assign to the vars. | ||
18366 | ( | ||
18367 | for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do | ||
18368 | eval ac_val=\$$ac_var | ||
18369 | case $ac_val in #( | ||
18370 | *${as_nl}*) | ||
18371 | case $ac_var in #( | ||
18372 | *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 | ||
18373 | $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | ||
18374 | esac | ||
18375 | case $ac_var in #( | ||
18376 | _ | IFS | as_nl) ;; #( | ||
18377 | BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( | ||
18378 | *) { eval $ac_var=; unset $ac_var;} ;; | ||
18379 | esac ;; | ||
18380 | esac | ||
18381 | done | ||
18382 | |||
18383 | (set) 2>&1 | | ||
18384 | case $as_nl`(ac_space=' '; set) 2>&1` in #( | ||
18385 | *${as_nl}ac_space=\ *) | ||
18386 | # `set' does not quote correctly, so add quotes: double-quote | ||
18387 | # substitution turns \\\\ into \\, and sed turns \\ into \. | ||
18388 | sed -n \ | ||
18389 | "s/'/'\\\\''/g; | ||
18390 | s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" | ||
18391 | ;; #( | ||
18392 | *) | ||
18393 | # `set' quotes correctly as required by POSIX, so do not add quotes. | ||
18394 | sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" | ||
18395 | ;; | ||
18396 | esac | | ||
18397 | sort | ||
18398 | ) | | ||
18399 | sed ' | ||
18400 | /^ac_cv_env_/b end | ||
18401 | t clear | ||
18402 | :clear | ||
18403 | s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ | ||
18404 | t end | ||
18405 | s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ | ||
18406 | :end' >>confcache | ||
18407 | if diff "$cache_file" confcache >/dev/null 2>&1; then :; else | ||
18408 | if test -w "$cache_file"; then | ||
18409 | if test "x$cache_file" != "x/dev/null"; then | ||
18410 | { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 | ||
18411 | $as_echo "$as_me: updating cache $cache_file" >&6;} | ||
18412 | if test ! -f "$cache_file" || test -h "$cache_file"; then | ||
18413 | cat confcache >"$cache_file" | ||
18414 | else | ||
18415 | case $cache_file in #( | ||
18416 | */* | ?:*) | ||
18417 | mv -f confcache "$cache_file"$$ && | ||
18418 | mv -f "$cache_file"$$ "$cache_file" ;; #( | ||
18419 | *) | ||
18420 | mv -f confcache "$cache_file" ;; | ||
18421 | esac | ||
18422 | fi | ||
18423 | fi | ||
18424 | else | ||
18425 | { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 | ||
18426 | $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} | ||
18427 | fi | ||
18428 | fi | ||
18429 | rm -f confcache | ||
18430 | |||
18431 | test "x$prefix" = xNONE && prefix=$ac_default_prefix | ||
18432 | # Let make expand exec_prefix. | ||
18433 | test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' | ||
18434 | |||
18435 | DEFS=-DHAVE_CONFIG_H | ||
18436 | |||
18437 | ac_libobjs= | ||
18438 | ac_ltlibobjs= | ||
18439 | U= | ||
18440 | for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue | ||
18441 | # 1. Remove the extension, and $U if already installed. | ||
18442 | ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' | ||
18443 | ac_i=`$as_echo "$ac_i" | sed "$ac_script"` | ||
18444 | # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR | ||
18445 | # will be set to the directory where LIBOBJS objects are built. | ||
18446 | as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" | ||
18447 | as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' | ||
18448 | done | ||
18449 | LIBOBJS=$ac_libobjs | ||
18450 | |||
18451 | LTLIBOBJS=$ac_ltlibobjs | ||
18452 | |||
18453 | |||
18454 | |||
18455 | |||
18456 | : "${CONFIG_STATUS=./config.status}" | ||
18457 | ac_write_fail=0 | ||
18458 | ac_clean_files_save=$ac_clean_files | ||
18459 | ac_clean_files="$ac_clean_files $CONFIG_STATUS" | ||
18460 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 | ||
18461 | $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} | ||
18462 | as_write_fail=0 | ||
18463 | cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 | ||
18464 | #! $SHELL | ||
18465 | # Generated by $as_me. | ||
18466 | # Run this file to recreate the current configuration. | ||
18467 | # Compiler output produced by configure, useful for debugging | ||
18468 | # configure, is in config.log if it exists. | ||
18469 | |||
18470 | debug=false | ||
18471 | ac_cs_recheck=false | ||
18472 | ac_cs_silent=false | ||
18473 | |||
18474 | SHELL=\${CONFIG_SHELL-$SHELL} | ||
18475 | export SHELL | ||
18476 | _ASEOF | ||
18477 | cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 | ||
18478 | ## -------------------- ## | ||
18479 | ## M4sh Initialization. ## | ||
18480 | ## -------------------- ## | ||
18481 | |||
18482 | # Be more Bourne compatible | ||
18483 | DUALCASE=1; export DUALCASE # for MKS sh | ||
18484 | if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : | ||
18485 | emulate sh | ||
18486 | NULLCMD=: | ||
18487 | # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which | ||
18488 | # is contrary to our usage. Disable this feature. | ||
18489 | alias -g '${1+"$@"}'='"$@"' | ||
18490 | setopt NO_GLOB_SUBST | ||
18491 | else | ||
18492 | case `(set -o) 2>/dev/null` in #( | ||
18493 | *posix*) : | ||
18494 | set -o posix ;; #( | ||
18495 | *) : | ||
18496 | ;; | ||
18497 | esac | ||
18498 | fi | ||
18499 | |||
18500 | |||
18501 | as_nl=' | ||
18502 | ' | ||
18503 | export as_nl | ||
18504 | # Printing a long string crashes Solaris 7 /usr/bin/printf. | ||
18505 | as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' | ||
18506 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo | ||
18507 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo | ||
18508 | # Prefer a ksh shell builtin over an external printf program on Solaris, | ||
18509 | # but without wasting forks for bash or zsh. | ||
18510 | if test -z "$BASH_VERSION$ZSH_VERSION" \ | ||
18511 | && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
18512 | as_echo='print -r --' | ||
18513 | as_echo_n='print -rn --' | ||
18514 | elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
18515 | as_echo='printf %s\n' | ||
18516 | as_echo_n='printf %s' | ||
18517 | else | ||
18518 | if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then | ||
18519 | as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' | ||
18520 | as_echo_n='/usr/ucb/echo -n' | ||
18521 | else | ||
18522 | as_echo_body='eval expr "X$1" : "X\\(.*\\)"' | ||
18523 | as_echo_n_body='eval | ||
18524 | arg=$1; | ||
18525 | case $arg in #( | ||
18526 | *"$as_nl"*) | ||
18527 | expr "X$arg" : "X\\(.*\\)$as_nl"; | ||
18528 | arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; | ||
18529 | esac; | ||
18530 | expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" | ||
18531 | ' | ||
18532 | export as_echo_n_body | ||
18533 | as_echo_n='sh -c $as_echo_n_body as_echo' | ||
18534 | fi | ||
18535 | export as_echo_body | ||
18536 | as_echo='sh -c $as_echo_body as_echo' | ||
18537 | fi | ||
18538 | |||
18539 | # The user is always right. | ||
18540 | if test "${PATH_SEPARATOR+set}" != set; then | ||
18541 | PATH_SEPARATOR=: | ||
18542 | (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { | ||
18543 | (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || | ||
18544 | PATH_SEPARATOR=';' | ||
18545 | } | ||
18546 | fi | ||
18547 | |||
18548 | |||
18549 | # IFS | ||
18550 | # We need space, tab and new line, in precisely that order. Quoting is | ||
18551 | # there to prevent editors from complaining about space-tab. | ||
18552 | # (If _AS_PATH_WALK were called with IFS unset, it would disable word | ||
18553 | # splitting by setting IFS to empty value.) | ||
18554 | IFS=" "" $as_nl" | ||
18555 | |||
18556 | # Find who we are. Look in the path if we contain no directory separator. | ||
18557 | as_myself= | ||
18558 | case $0 in #(( | ||
18559 | *[\\/]* ) as_myself=$0 ;; | ||
18560 | *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
18561 | for as_dir in $PATH | ||
18562 | do | ||
18563 | IFS=$as_save_IFS | ||
18564 | test -z "$as_dir" && as_dir=. | ||
18565 | test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break | ||
18566 | done | ||
18567 | IFS=$as_save_IFS | ||
18568 | |||
18569 | ;; | ||
18570 | esac | ||
18571 | # We did not find ourselves, most probably we were run as `sh COMMAND' | ||
18572 | # in which case we are not to be found in the path. | ||
18573 | if test "x$as_myself" = x; then | ||
18574 | as_myself=$0 | ||
18575 | fi | ||
18576 | if test ! -f "$as_myself"; then | ||
18577 | $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 | ||
18578 | exit 1 | ||
18579 | fi | ||
18580 | |||
18581 | # Unset variables that we do not need and which cause bugs (e.g. in | ||
18582 | # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" | ||
18583 | # suppresses any "Segmentation fault" message there. '((' could | ||
18584 | # trigger a bug in pdksh 5.2.14. | ||
18585 | for as_var in BASH_ENV ENV MAIL MAILPATH | ||
18586 | do eval test x\${$as_var+set} = xset \ | ||
18587 | && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : | ||
18588 | done | ||
18589 | PS1='$ ' | ||
18590 | PS2='> ' | ||
18591 | PS4='+ ' | ||
18592 | |||
18593 | # NLS nuisances. | ||
18594 | LC_ALL=C | ||
18595 | export LC_ALL | ||
18596 | LANGUAGE=C | ||
18597 | export LANGUAGE | ||
18598 | |||
18599 | # CDPATH. | ||
18600 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | ||
18601 | |||
18602 | |||
18603 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | ||
18604 | # ---------------------------------------- | ||
18605 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | ||
18606 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | ||
18607 | # script with STATUS, using 1 if that was 0. | ||
18608 | as_fn_error () | ||
18609 | { | ||
18610 | as_status=$1; test $as_status -eq 0 && as_status=1 | ||
18611 | if test "$4"; then | ||
18612 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
18613 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | ||
18614 | fi | ||
18615 | $as_echo "$as_me: error: $2" >&2 | ||
18616 | as_fn_exit $as_status | ||
18617 | } # as_fn_error | ||
18618 | |||
18619 | |||
18620 | # as_fn_set_status STATUS | ||
18621 | # ----------------------- | ||
18622 | # Set $? to STATUS, without forking. | ||
18623 | as_fn_set_status () | ||
18624 | { | ||
18625 | return $1 | ||
18626 | } # as_fn_set_status | ||
18627 | |||
18628 | # as_fn_exit STATUS | ||
18629 | # ----------------- | ||
18630 | # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. | ||
18631 | as_fn_exit () | ||
18632 | { | ||
18633 | set +e | ||
18634 | as_fn_set_status $1 | ||
18635 | exit $1 | ||
18636 | } # as_fn_exit | ||
18637 | |||
18638 | # as_fn_unset VAR | ||
18639 | # --------------- | ||
18640 | # Portably unset VAR. | ||
18641 | as_fn_unset () | ||
18642 | { | ||
18643 | { eval $1=; unset $1;} | ||
18644 | } | ||
18645 | as_unset=as_fn_unset | ||
18646 | # as_fn_append VAR VALUE | ||
18647 | # ---------------------- | ||
18648 | # Append the text in VALUE to the end of the definition contained in VAR. Take | ||
18649 | # advantage of any shell optimizations that allow amortized linear growth over | ||
18650 | # repeated appends, instead of the typical quadratic growth present in naive | ||
18651 | # implementations. | ||
18652 | if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : | ||
18653 | eval 'as_fn_append () | ||
18654 | { | ||
18655 | eval $1+=\$2 | ||
18656 | }' | ||
18657 | else | ||
18658 | as_fn_append () | ||
18659 | { | ||
18660 | eval $1=\$$1\$2 | ||
18661 | } | ||
18662 | fi # as_fn_append | ||
18663 | |||
18664 | # as_fn_arith ARG... | ||
18665 | # ------------------ | ||
18666 | # Perform arithmetic evaluation on the ARGs, and store the result in the | ||
18667 | # global $as_val. Take advantage of shells that can avoid forks. The arguments | ||
18668 | # must be portable across $(()) and expr. | ||
18669 | if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : | ||
18670 | eval 'as_fn_arith () | ||
18671 | { | ||
18672 | as_val=$(( $* )) | ||
18673 | }' | ||
18674 | else | ||
18675 | as_fn_arith () | ||
18676 | { | ||
18677 | as_val=`expr "$@" || test $? -eq 1` | ||
18678 | } | ||
18679 | fi # as_fn_arith | ||
18680 | |||
18681 | |||
18682 | if expr a : '\(a\)' >/dev/null 2>&1 && | ||
18683 | test "X`expr 00001 : '.*\(...\)'`" = X001; then | ||
18684 | as_expr=expr | ||
18685 | else | ||
18686 | as_expr=false | ||
18687 | fi | ||
18688 | |||
18689 | if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then | ||
18690 | as_basename=basename | ||
18691 | else | ||
18692 | as_basename=false | ||
18693 | fi | ||
18694 | |||
18695 | if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then | ||
18696 | as_dirname=dirname | ||
18697 | else | ||
18698 | as_dirname=false | ||
18699 | fi | ||
18700 | |||
18701 | as_me=`$as_basename -- "$0" || | ||
18702 | $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ | ||
18703 | X"$0" : 'X\(//\)$' \| \ | ||
18704 | X"$0" : 'X\(/\)' \| . 2>/dev/null || | ||
18705 | $as_echo X/"$0" | | ||
18706 | sed '/^.*\/\([^/][^/]*\)\/*$/{ | ||
18707 | s//\1/ | ||
18708 | q | ||
18709 | } | ||
18710 | /^X\/\(\/\/\)$/{ | ||
18711 | s//\1/ | ||
18712 | q | ||
18713 | } | ||
18714 | /^X\/\(\/\).*/{ | ||
18715 | s//\1/ | ||
18716 | q | ||
18717 | } | ||
18718 | s/.*/./; q'` | ||
18719 | |||
18720 | # Avoid depending upon Character Ranges. | ||
18721 | as_cr_letters='abcdefghijklmnopqrstuvwxyz' | ||
18722 | as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' | ||
18723 | as_cr_Letters=$as_cr_letters$as_cr_LETTERS | ||
18724 | as_cr_digits='0123456789' | ||
18725 | as_cr_alnum=$as_cr_Letters$as_cr_digits | ||
18726 | |||
18727 | ECHO_C= ECHO_N= ECHO_T= | ||
18728 | case `echo -n x` in #((((( | ||
18729 | -n*) | ||
18730 | case `echo 'xy\c'` in | ||
18731 | *c*) ECHO_T=' ';; # ECHO_T is single tab character. | ||
18732 | xy) ECHO_C='\c';; | ||
18733 | *) echo `echo ksh88 bug on AIX 6.1` > /dev/null | ||
18734 | ECHO_T=' ';; | ||
18735 | esac;; | ||
18736 | *) | ||
18737 | ECHO_N='-n';; | ||
18738 | esac | ||
18739 | |||
18740 | rm -f conf$$ conf$$.exe conf$$.file | ||
18741 | if test -d conf$$.dir; then | ||
18742 | rm -f conf$$.dir/conf$$.file | ||
18743 | else | ||
18744 | rm -f conf$$.dir | ||
18745 | mkdir conf$$.dir 2>/dev/null | ||
18746 | fi | ||
18747 | if (echo >conf$$.file) 2>/dev/null; then | ||
18748 | if ln -s conf$$.file conf$$ 2>/dev/null; then | ||
18749 | as_ln_s='ln -s' | ||
18750 | # ... but there are two gotchas: | ||
18751 | # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. | ||
18752 | # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. | ||
18753 | # In both cases, we have to default to `cp -p'. | ||
18754 | ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || | ||
18755 | as_ln_s='cp -p' | ||
18756 | elif ln conf$$.file conf$$ 2>/dev/null; then | ||
18757 | as_ln_s=ln | ||
18758 | else | ||
18759 | as_ln_s='cp -p' | ||
18760 | fi | ||
18761 | else | ||
18762 | as_ln_s='cp -p' | ||
18763 | fi | ||
18764 | rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file | ||
18765 | rmdir conf$$.dir 2>/dev/null | ||
18766 | |||
18767 | |||
18768 | # as_fn_mkdir_p | ||
18769 | # ------------- | ||
18770 | # Create "$as_dir" as a directory, including parents if necessary. | ||
18771 | as_fn_mkdir_p () | ||
18772 | { | ||
18773 | |||
18774 | case $as_dir in #( | ||
18775 | -*) as_dir=./$as_dir;; | ||
18776 | esac | ||
18777 | test -d "$as_dir" || eval $as_mkdir_p || { | ||
18778 | as_dirs= | ||
18779 | while :; do | ||
18780 | case $as_dir in #( | ||
18781 | *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( | ||
18782 | *) as_qdir=$as_dir;; | ||
18783 | esac | ||
18784 | as_dirs="'$as_qdir' $as_dirs" | ||
18785 | as_dir=`$as_dirname -- "$as_dir" || | ||
18786 | $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
18787 | X"$as_dir" : 'X\(//\)[^/]' \| \ | ||
18788 | X"$as_dir" : 'X\(//\)$' \| \ | ||
18789 | X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || | ||
18790 | $as_echo X"$as_dir" | | ||
18791 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
18792 | s//\1/ | ||
18793 | q | ||
18794 | } | ||
18795 | /^X\(\/\/\)[^/].*/{ | ||
18796 | s//\1/ | ||
18797 | q | ||
18798 | } | ||
18799 | /^X\(\/\/\)$/{ | ||
18800 | s//\1/ | ||
18801 | q | ||
18802 | } | ||
18803 | /^X\(\/\).*/{ | ||
18804 | s//\1/ | ||
18805 | q | ||
18806 | } | ||
18807 | s/.*/./; q'` | ||
18808 | test -d "$as_dir" && break | ||
18809 | done | ||
18810 | test -z "$as_dirs" || eval "mkdir $as_dirs" | ||
18811 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | ||
18812 | |||
18813 | |||
18814 | } # as_fn_mkdir_p | ||
18815 | if mkdir -p . 2>/dev/null; then | ||
18816 | as_mkdir_p='mkdir -p "$as_dir"' | ||
18817 | else | ||
18818 | test -d ./-p && rmdir ./-p | ||
18819 | as_mkdir_p=false | ||
18820 | fi | ||
18821 | |||
18822 | if test -x / >/dev/null 2>&1; then | ||
18823 | as_test_x='test -x' | ||
18824 | else | ||
18825 | if ls -dL / >/dev/null 2>&1; then | ||
18826 | as_ls_L_option=L | ||
18827 | else | ||
18828 | as_ls_L_option= | ||
18829 | fi | ||
18830 | as_test_x=' | ||
18831 | eval sh -c '\'' | ||
18832 | if test -d "$1"; then | ||
18833 | test -d "$1/."; | ||
18834 | else | ||
18835 | case $1 in #( | ||
18836 | -*)set "./$1";; | ||
18837 | esac; | ||
18838 | case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( | ||
18839 | ???[sx]*):;;*)false;;esac;fi | ||
18840 | '\'' sh | ||
18841 | ' | ||
18842 | fi | ||
18843 | as_executable_p=$as_test_x | ||
18844 | |||
18845 | # Sed expression to map a string onto a valid CPP name. | ||
18846 | as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" | ||
18847 | |||
18848 | # Sed expression to map a string onto a valid variable name. | ||
18849 | as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" | ||
18850 | |||
18851 | |||
18852 | exec 6>&1 | ||
18853 | ## ----------------------------------- ## | ||
18854 | ## Main body of $CONFIG_STATUS script. ## | ||
18855 | ## ----------------------------------- ## | ||
18856 | _ASEOF | ||
18857 | test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 | ||
18858 | |||
18859 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
18860 | # Save the log message, to keep $0 and so on meaningful, and to | ||
18861 | # report actual input values of CONFIG_FILES etc. instead of their | ||
18862 | # values after options handling. | ||
18863 | ac_log=" | ||
18864 | This file was extended by OpenSSH $as_me Portable, which was | ||
18865 | generated by GNU Autoconf 2.68. Invocation command line was | ||
18866 | |||
18867 | CONFIG_FILES = $CONFIG_FILES | ||
18868 | CONFIG_HEADERS = $CONFIG_HEADERS | ||
18869 | CONFIG_LINKS = $CONFIG_LINKS | ||
18870 | CONFIG_COMMANDS = $CONFIG_COMMANDS | ||
18871 | $ $0 $@ | ||
18872 | |||
18873 | on `(hostname || uname -n) 2>/dev/null | sed 1q` | ||
18874 | " | ||
18875 | |||
18876 | _ACEOF | ||
18877 | |||
18878 | case $ac_config_files in *" | ||
18879 | "*) set x $ac_config_files; shift; ac_config_files=$*;; | ||
18880 | esac | ||
18881 | |||
18882 | case $ac_config_headers in *" | ||
18883 | "*) set x $ac_config_headers; shift; ac_config_headers=$*;; | ||
18884 | esac | ||
18885 | |||
18886 | |||
18887 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
18888 | # Files that config.status was made for. | ||
18889 | config_files="$ac_config_files" | ||
18890 | config_headers="$ac_config_headers" | ||
18891 | |||
18892 | _ACEOF | ||
18893 | |||
18894 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
18895 | ac_cs_usage="\ | ||
18896 | \`$as_me' instantiates files and other configuration actions | ||
18897 | from templates according to the current configuration. Unless the files | ||
18898 | and actions are specified as TAGs, all are instantiated by default. | ||
18899 | |||
18900 | Usage: $0 [OPTION]... [TAG]... | ||
18901 | |||
18902 | -h, --help print this help, then exit | ||
18903 | -V, --version print version number and configuration settings, then exit | ||
18904 | --config print configuration, then exit | ||
18905 | -q, --quiet, --silent | ||
18906 | do not print progress messages | ||
18907 | -d, --debug don't remove temporary files | ||
18908 | --recheck update $as_me by reconfiguring in the same conditions | ||
18909 | --file=FILE[:TEMPLATE] | ||
18910 | instantiate the configuration file FILE | ||
18911 | --header=FILE[:TEMPLATE] | ||
18912 | instantiate the configuration header FILE | ||
18913 | |||
18914 | Configuration files: | ||
18915 | $config_files | ||
18916 | |||
18917 | Configuration headers: | ||
18918 | $config_headers | ||
18919 | |||
18920 | Report bugs to <openssh-unix-dev@mindrot.org>." | ||
18921 | |||
18922 | _ACEOF | ||
18923 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
18924 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | ||
18925 | ac_cs_version="\\ | ||
18926 | OpenSSH config.status Portable | ||
18927 | configured by $0, generated by GNU Autoconf 2.68, | ||
18928 | with options \\"\$ac_cs_config\\" | ||
18929 | |||
18930 | Copyright (C) 2010 Free Software Foundation, Inc. | ||
18931 | This config.status script is free software; the Free Software Foundation | ||
18932 | gives unlimited permission to copy, distribute and modify it." | ||
18933 | |||
18934 | ac_pwd='$ac_pwd' | ||
18935 | srcdir='$srcdir' | ||
18936 | INSTALL='$INSTALL' | ||
18937 | AWK='$AWK' | ||
18938 | test -n "\$AWK" || AWK=awk | ||
18939 | _ACEOF | ||
18940 | |||
18941 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
18942 | # The default lists apply if the user does not specify any file. | ||
18943 | ac_need_defaults=: | ||
18944 | while test $# != 0 | ||
18945 | do | ||
18946 | case $1 in | ||
18947 | --*=?*) | ||
18948 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | ||
18949 | ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` | ||
18950 | ac_shift=: | ||
18951 | ;; | ||
18952 | --*=) | ||
18953 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | ||
18954 | ac_optarg= | ||
18955 | ac_shift=: | ||
18956 | ;; | ||
18957 | *) | ||
18958 | ac_option=$1 | ||
18959 | ac_optarg=$2 | ||
18960 | ac_shift=shift | ||
18961 | ;; | ||
18962 | esac | ||
18963 | |||
18964 | case $ac_option in | ||
18965 | # Handling of the options. | ||
18966 | -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) | ||
18967 | ac_cs_recheck=: ;; | ||
18968 | --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) | ||
18969 | $as_echo "$ac_cs_version"; exit ;; | ||
18970 | --config | --confi | --conf | --con | --co | --c ) | ||
18971 | $as_echo "$ac_cs_config"; exit ;; | ||
18972 | --debug | --debu | --deb | --de | --d | -d ) | ||
18973 | debug=: ;; | ||
18974 | --file | --fil | --fi | --f ) | ||
18975 | $ac_shift | ||
18976 | case $ac_optarg in | ||
18977 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
18978 | '') as_fn_error $? "missing file argument" ;; | ||
18979 | esac | ||
18980 | as_fn_append CONFIG_FILES " '$ac_optarg'" | ||
18981 | ac_need_defaults=false;; | ||
18982 | --header | --heade | --head | --hea ) | ||
18983 | $ac_shift | ||
18984 | case $ac_optarg in | ||
18985 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
18986 | esac | ||
18987 | as_fn_append CONFIG_HEADERS " '$ac_optarg'" | ||
18988 | ac_need_defaults=false;; | ||
18989 | --he | --h) | ||
18990 | # Conflict between --help and --header | ||
18991 | as_fn_error $? "ambiguous option: \`$1' | ||
18992 | Try \`$0 --help' for more information.";; | ||
18993 | --help | --hel | -h ) | ||
18994 | $as_echo "$ac_cs_usage"; exit ;; | ||
18995 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
18996 | | -silent | --silent | --silen | --sile | --sil | --si | --s) | ||
18997 | ac_cs_silent=: ;; | ||
18998 | |||
18999 | # This is an error. | ||
19000 | -*) as_fn_error $? "unrecognized option: \`$1' | ||
19001 | Try \`$0 --help' for more information." ;; | ||
19002 | |||
19003 | *) as_fn_append ac_config_targets " $1" | ||
19004 | ac_need_defaults=false ;; | ||
19005 | |||
19006 | esac | ||
19007 | shift | ||
19008 | done | ||
19009 | |||
19010 | ac_configure_extra_args= | ||
19011 | |||
19012 | if $ac_cs_silent; then | ||
19013 | exec 6>/dev/null | ||
19014 | ac_configure_extra_args="$ac_configure_extra_args --silent" | ||
19015 | fi | ||
19016 | |||
19017 | _ACEOF | ||
19018 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19019 | if \$ac_cs_recheck; then | ||
19020 | set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion | ||
19021 | shift | ||
19022 | \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 | ||
19023 | CONFIG_SHELL='$SHELL' | ||
19024 | export CONFIG_SHELL | ||
19025 | exec "\$@" | ||
19026 | fi | ||
19027 | |||
19028 | _ACEOF | ||
19029 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19030 | exec 5>>config.log | ||
19031 | { | ||
19032 | echo | ||
19033 | sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX | ||
19034 | ## Running $as_me. ## | ||
19035 | _ASBOX | ||
19036 | $as_echo "$ac_log" | ||
19037 | } >&5 | ||
19038 | |||
19039 | _ACEOF | ||
19040 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19041 | _ACEOF | ||
19042 | |||
19043 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19044 | |||
19045 | # Handling of arguments. | ||
19046 | for ac_config_target in $ac_config_targets | ||
19047 | do | ||
19048 | case $ac_config_target in | ||
19049 | "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; | ||
19050 | "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; | ||
19051 | "buildpkg.sh") CONFIG_FILES="$CONFIG_FILES buildpkg.sh" ;; | ||
19052 | "opensshd.init") CONFIG_FILES="$CONFIG_FILES opensshd.init" ;; | ||
19053 | "openssh.xml") CONFIG_FILES="$CONFIG_FILES openssh.xml" ;; | ||
19054 | "openbsd-compat/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/Makefile" ;; | ||
19055 | "openbsd-compat/regress/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/regress/Makefile" ;; | ||
19056 | "survey.sh") CONFIG_FILES="$CONFIG_FILES survey.sh" ;; | ||
19057 | |||
19058 | *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; | ||
19059 | esac | ||
19060 | done | ||
19061 | |||
19062 | |||
19063 | # If the user did not use the arguments to specify the items to instantiate, | ||
19064 | # then the envvar interface is used. Set only those that are not. | ||
19065 | # We use the long form for the default assignment because of an extremely | ||
19066 | # bizarre bug on SunOS 4.1.3. | ||
19067 | if $ac_need_defaults; then | ||
19068 | test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files | ||
19069 | test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers | ||
19070 | fi | ||
19071 | |||
19072 | # Have a temporary directory for convenience. Make it in the build tree | ||
19073 | # simply because there is no reason against having it here, and in addition, | ||
19074 | # creating and moving files from /tmp can sometimes cause problems. | ||
19075 | # Hook for its removal unless debugging. | ||
19076 | # Note that there is a small window in which the directory will not be cleaned: | ||
19077 | # after its creation but before its name has been assigned to `$tmp'. | ||
19078 | $debug || | ||
19079 | { | ||
19080 | tmp= ac_tmp= | ||
19081 | trap 'exit_status=$? | ||
19082 | : "${ac_tmp:=$tmp}" | ||
19083 | { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status | ||
19084 | ' 0 | ||
19085 | trap 'as_fn_exit 1' 1 2 13 15 | ||
19086 | } | ||
19087 | # Create a (secure) tmp directory for tmp files. | ||
19088 | |||
19089 | { | ||
19090 | tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && | ||
19091 | test -d "$tmp" | ||
19092 | } || | ||
19093 | { | ||
19094 | tmp=./conf$$-$RANDOM | ||
19095 | (umask 077 && mkdir "$tmp") | ||
19096 | } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 | ||
19097 | ac_tmp=$tmp | ||
19098 | |||
19099 | # Set up the scripts for CONFIG_FILES section. | ||
19100 | # No need to generate them if there are no CONFIG_FILES. | ||
19101 | # This happens for instance with `./config.status config.h'. | ||
19102 | if test -n "$CONFIG_FILES"; then | ||
19103 | |||
19104 | |||
19105 | ac_cr=`echo X | tr X '\015'` | ||
19106 | # On cygwin, bash can eat \r inside `` if the user requested igncr. | ||
19107 | # But we know of no other shell where ac_cr would be empty at this | ||
19108 | # point, so we can use a bashism as a fallback. | ||
19109 | if test "x$ac_cr" = x; then | ||
19110 | eval ac_cr=\$\'\\r\' | ||
19111 | fi | ||
19112 | ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` | ||
19113 | if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then | ||
19114 | ac_cs_awk_cr='\\r' | ||
19115 | else | ||
19116 | ac_cs_awk_cr=$ac_cr | ||
19117 | fi | ||
19118 | |||
19119 | echo 'BEGIN {' >"$ac_tmp/subs1.awk" && | ||
19120 | _ACEOF | ||
19121 | |||
19122 | |||
19123 | { | ||
19124 | echo "cat >conf$$subs.awk <<_ACEOF" && | ||
19125 | echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && | ||
19126 | echo "_ACEOF" | ||
19127 | } >conf$$subs.sh || | ||
19128 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
19129 | ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` | ||
19130 | ac_delim='%!_!# ' | ||
19131 | for ac_last_try in false false false false false :; do | ||
19132 | . ./conf$$subs.sh || | ||
19133 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
19134 | |||
19135 | ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` | ||
19136 | if test $ac_delim_n = $ac_delim_num; then | ||
19137 | break | ||
19138 | elif $ac_last_try; then | ||
19139 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
19140 | else | ||
19141 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | ||
19142 | fi | ||
19143 | done | ||
19144 | rm -f conf$$subs.sh | ||
19145 | |||
19146 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19147 | cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && | ||
19148 | _ACEOF | ||
19149 | sed -n ' | ||
19150 | h | ||
19151 | s/^/S["/; s/!.*/"]=/ | ||
19152 | p | ||
19153 | g | ||
19154 | s/^[^!]*!// | ||
19155 | :repl | ||
19156 | t repl | ||
19157 | s/'"$ac_delim"'$// | ||
19158 | t delim | ||
19159 | :nl | ||
19160 | h | ||
19161 | s/\(.\{148\}\)..*/\1/ | ||
19162 | t more1 | ||
19163 | s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ | ||
19164 | p | ||
19165 | n | ||
19166 | b repl | ||
19167 | :more1 | ||
19168 | s/["\\]/\\&/g; s/^/"/; s/$/"\\/ | ||
19169 | p | ||
19170 | g | ||
19171 | s/.\{148\}// | ||
19172 | t nl | ||
19173 | :delim | ||
19174 | h | ||
19175 | s/\(.\{148\}\)..*/\1/ | ||
19176 | t more2 | ||
19177 | s/["\\]/\\&/g; s/^/"/; s/$/"/ | ||
19178 | p | ||
19179 | b | ||
19180 | :more2 | ||
19181 | s/["\\]/\\&/g; s/^/"/; s/$/"\\/ | ||
19182 | p | ||
19183 | g | ||
19184 | s/.\{148\}// | ||
19185 | t delim | ||
19186 | ' <conf$$subs.awk | sed ' | ||
19187 | /^[^""]/{ | ||
19188 | N | ||
19189 | s/\n// | ||
19190 | } | ||
19191 | ' >>$CONFIG_STATUS || ac_write_fail=1 | ||
19192 | rm -f conf$$subs.awk | ||
19193 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19194 | _ACAWK | ||
19195 | cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && | ||
19196 | for (key in S) S_is_set[key] = 1 | ||
19197 | FS = "" | ||
19198 | |||
19199 | } | ||
19200 | { | ||
19201 | line = $ 0 | ||
19202 | nfields = split(line, field, "@") | ||
19203 | substed = 0 | ||
19204 | len = length(field[1]) | ||
19205 | for (i = 2; i < nfields; i++) { | ||
19206 | key = field[i] | ||
19207 | keylen = length(key) | ||
19208 | if (S_is_set[key]) { | ||
19209 | value = S[key] | ||
19210 | line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) | ||
19211 | len += length(value) + length(field[++i]) | ||
19212 | substed = 1 | ||
19213 | } else | ||
19214 | len += 1 + keylen | ||
19215 | } | ||
19216 | |||
19217 | print line | ||
19218 | } | ||
19219 | |||
19220 | _ACAWK | ||
19221 | _ACEOF | ||
19222 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19223 | if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then | ||
19224 | sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" | ||
19225 | else | ||
19226 | cat | ||
19227 | fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ | ||
19228 | || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 | ||
19229 | _ACEOF | ||
19230 | |||
19231 | # VPATH may cause trouble with some makes, so we remove sole $(srcdir), | ||
19232 | # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and | ||
19233 | # trailing colons and then remove the whole line if VPATH becomes empty | ||
19234 | # (actually we leave an empty line to preserve line numbers). | ||
19235 | if test "x$srcdir" = x.; then | ||
19236 | ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ | ||
19237 | h | ||
19238 | s/// | ||
19239 | s/^/:/ | ||
19240 | s/[ ]*$/:/ | ||
19241 | s/:\$(srcdir):/:/g | ||
19242 | s/:\${srcdir}:/:/g | ||
19243 | s/:@srcdir@:/:/g | ||
19244 | s/^:*// | ||
19245 | s/:*$// | ||
19246 | x | ||
19247 | s/\(=[ ]*\).*/\1/ | ||
19248 | G | ||
19249 | s/\n// | ||
19250 | s/^[^=]*=[ ]*$// | ||
19251 | }' | ||
19252 | fi | ||
19253 | |||
19254 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19255 | fi # test -n "$CONFIG_FILES" | ||
19256 | |||
19257 | # Set up the scripts for CONFIG_HEADERS section. | ||
19258 | # No need to generate them if there are no CONFIG_HEADERS. | ||
19259 | # This happens for instance with `./config.status Makefile'. | ||
19260 | if test -n "$CONFIG_HEADERS"; then | ||
19261 | cat >"$ac_tmp/defines.awk" <<\_ACAWK || | ||
19262 | BEGIN { | ||
19263 | _ACEOF | ||
19264 | |||
19265 | # Transform confdefs.h into an awk script `defines.awk', embedded as | ||
19266 | # here-document in config.status, that substitutes the proper values into | ||
19267 | # config.h.in to produce config.h. | ||
19268 | |||
19269 | # Create a delimiter string that does not exist in confdefs.h, to ease | ||
19270 | # handling of long lines. | ||
19271 | ac_delim='%!_!# ' | ||
19272 | for ac_last_try in false false :; do | ||
19273 | ac_tt=`sed -n "/$ac_delim/p" confdefs.h` | ||
19274 | if test -z "$ac_tt"; then | ||
19275 | break | ||
19276 | elif $ac_last_try; then | ||
19277 | as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 | ||
19278 | else | ||
19279 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | ||
19280 | fi | ||
19281 | done | ||
19282 | |||
19283 | # For the awk script, D is an array of macro values keyed by name, | ||
19284 | # likewise P contains macro parameters if any. Preserve backslash | ||
19285 | # newline sequences. | ||
19286 | |||
19287 | ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* | ||
19288 | sed -n ' | ||
19289 | s/.\{148\}/&'"$ac_delim"'/g | ||
19290 | t rset | ||
19291 | :rset | ||
19292 | s/^[ ]*#[ ]*define[ ][ ]*/ / | ||
19293 | t def | ||
19294 | d | ||
19295 | :def | ||
19296 | s/\\$// | ||
19297 | t bsnl | ||
19298 | s/["\\]/\\&/g | ||
19299 | s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ | ||
19300 | D["\1"]=" \3"/p | ||
19301 | s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p | ||
19302 | d | ||
19303 | :bsnl | ||
19304 | s/["\\]/\\&/g | ||
19305 | s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ | ||
19306 | D["\1"]=" \3\\\\\\n"\\/p | ||
19307 | t cont | ||
19308 | s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p | ||
19309 | t cont | ||
19310 | d | ||
19311 | :cont | ||
19312 | n | ||
19313 | s/.\{148\}/&'"$ac_delim"'/g | ||
19314 | t clear | ||
19315 | :clear | ||
19316 | s/\\$// | ||
19317 | t bsnlc | ||
19318 | s/["\\]/\\&/g; s/^/"/; s/$/"/p | ||
19319 | d | ||
19320 | :bsnlc | ||
19321 | s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p | ||
19322 | b cont | ||
19323 | ' <confdefs.h | sed ' | ||
19324 | s/'"$ac_delim"'/"\\\ | ||
19325 | "/g' >>$CONFIG_STATUS || ac_write_fail=1 | ||
19326 | |||
19327 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19328 | for (key in D) D_is_set[key] = 1 | ||
19329 | FS = "" | ||
19330 | } | ||
19331 | /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { | ||
19332 | line = \$ 0 | ||
19333 | split(line, arg, " ") | ||
19334 | if (arg[1] == "#") { | ||
19335 | defundef = arg[2] | ||
19336 | mac1 = arg[3] | ||
19337 | } else { | ||
19338 | defundef = substr(arg[1], 2) | ||
19339 | mac1 = arg[2] | ||
19340 | } | ||
19341 | split(mac1, mac2, "(") #) | ||
19342 | macro = mac2[1] | ||
19343 | prefix = substr(line, 1, index(line, defundef) - 1) | ||
19344 | if (D_is_set[macro]) { | ||
19345 | # Preserve the white space surrounding the "#". | ||
19346 | print prefix "define", macro P[macro] D[macro] | ||
19347 | next | ||
19348 | } else { | ||
19349 | # Replace #undef with comments. This is necessary, for example, | ||
19350 | # in the case of _POSIX_SOURCE, which is predefined and required | ||
19351 | # on some systems where configure will not decide to define it. | ||
19352 | if (defundef == "undef") { | ||
19353 | print "/*", prefix defundef, macro, "*/" | ||
19354 | next | ||
19355 | } | ||
19356 | } | ||
19357 | } | ||
19358 | { print } | ||
19359 | _ACAWK | ||
19360 | _ACEOF | ||
19361 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19362 | as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 | ||
19363 | fi # test -n "$CONFIG_HEADERS" | ||
19364 | |||
19365 | |||
19366 | eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " | ||
19367 | shift | ||
19368 | for ac_tag | ||
19369 | do | ||
19370 | case $ac_tag in | ||
19371 | :[FHLC]) ac_mode=$ac_tag; continue;; | ||
19372 | esac | ||
19373 | case $ac_mode$ac_tag in | ||
19374 | :[FHL]*:*);; | ||
19375 | :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; | ||
19376 | :[FH]-) ac_tag=-:-;; | ||
19377 | :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; | ||
19378 | esac | ||
19379 | ac_save_IFS=$IFS | ||
19380 | IFS=: | ||
19381 | set x $ac_tag | ||
19382 | IFS=$ac_save_IFS | ||
19383 | shift | ||
19384 | ac_file=$1 | ||
19385 | shift | ||
19386 | |||
19387 | case $ac_mode in | ||
19388 | :L) ac_source=$1;; | ||
19389 | :[FH]) | ||
19390 | ac_file_inputs= | ||
19391 | for ac_f | ||
19392 | do | ||
19393 | case $ac_f in | ||
19394 | -) ac_f="$ac_tmp/stdin";; | ||
19395 | *) # Look for the file first in the build tree, then in the source tree | ||
19396 | # (if the path is not absolute). The absolute path cannot be DOS-style, | ||
19397 | # because $ac_f cannot contain `:'. | ||
19398 | test -f "$ac_f" || | ||
19399 | case $ac_f in | ||
19400 | [\\/$]*) false;; | ||
19401 | *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; | ||
19402 | esac || | ||
19403 | as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; | ||
19404 | esac | ||
19405 | case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac | ||
19406 | as_fn_append ac_file_inputs " '$ac_f'" | ||
19407 | done | ||
19408 | |||
19409 | # Let's still pretend it is `configure' which instantiates (i.e., don't | ||
19410 | # use $as_me), people would be surprised to read: | ||
19411 | # /* config.h. Generated by config.status. */ | ||
19412 | configure_input='Generated from '` | ||
19413 | $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' | ||
19414 | `' by configure.' | ||
19415 | if test x"$ac_file" != x-; then | ||
19416 | configure_input="$ac_file. $configure_input" | ||
19417 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 | ||
19418 | $as_echo "$as_me: creating $ac_file" >&6;} | ||
19419 | fi | ||
19420 | # Neutralize special characters interpreted by sed in replacement strings. | ||
19421 | case $configure_input in #( | ||
19422 | *\&* | *\|* | *\\* ) | ||
19423 | ac_sed_conf_input=`$as_echo "$configure_input" | | ||
19424 | sed 's/[\\\\&|]/\\\\&/g'`;; #( | ||
19425 | *) ac_sed_conf_input=$configure_input;; | ||
19426 | esac | ||
19427 | |||
19428 | case $ac_tag in | ||
19429 | *:-:* | *:-) cat >"$ac_tmp/stdin" \ | ||
19430 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; | ||
19431 | esac | ||
19432 | ;; | ||
19433 | esac | ||
19434 | |||
19435 | ac_dir=`$as_dirname -- "$ac_file" || | ||
19436 | $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
19437 | X"$ac_file" : 'X\(//\)[^/]' \| \ | ||
19438 | X"$ac_file" : 'X\(//\)$' \| \ | ||
19439 | X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || | ||
19440 | $as_echo X"$ac_file" | | ||
19441 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
19442 | s//\1/ | ||
19443 | q | ||
19444 | } | ||
19445 | /^X\(\/\/\)[^/].*/{ | ||
19446 | s//\1/ | ||
19447 | q | ||
19448 | } | ||
19449 | /^X\(\/\/\)$/{ | ||
19450 | s//\1/ | ||
19451 | q | ||
19452 | } | ||
19453 | /^X\(\/\).*/{ | ||
19454 | s//\1/ | ||
19455 | q | ||
19456 | } | ||
19457 | s/.*/./; q'` | ||
19458 | as_dir="$ac_dir"; as_fn_mkdir_p | ||
19459 | ac_builddir=. | ||
19460 | |||
19461 | case "$ac_dir" in | ||
19462 | .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
19463 | *) | ||
19464 | ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` | ||
19465 | # A ".." for each directory in $ac_dir_suffix. | ||
19466 | ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` | ||
19467 | case $ac_top_builddir_sub in | ||
19468 | "") ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
19469 | *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; | ||
19470 | esac ;; | ||
19471 | esac | ||
19472 | ac_abs_top_builddir=$ac_pwd | ||
19473 | ac_abs_builddir=$ac_pwd$ac_dir_suffix | ||
19474 | # for backward compatibility: | ||
19475 | ac_top_builddir=$ac_top_build_prefix | ||
19476 | |||
19477 | case $srcdir in | ||
19478 | .) # We are building in place. | ||
19479 | ac_srcdir=. | ||
19480 | ac_top_srcdir=$ac_top_builddir_sub | ||
19481 | ac_abs_top_srcdir=$ac_pwd ;; | ||
19482 | [\\/]* | ?:[\\/]* ) # Absolute name. | ||
19483 | ac_srcdir=$srcdir$ac_dir_suffix; | ||
19484 | ac_top_srcdir=$srcdir | ||
19485 | ac_abs_top_srcdir=$srcdir ;; | ||
19486 | *) # Relative name. | ||
19487 | ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix | ||
19488 | ac_top_srcdir=$ac_top_build_prefix$srcdir | ||
19489 | ac_abs_top_srcdir=$ac_pwd/$srcdir ;; | ||
19490 | esac | ||
19491 | ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix | ||
19492 | |||
19493 | |||
19494 | case $ac_mode in | ||
19495 | :F) | ||
19496 | # | ||
19497 | # CONFIG_FILE | ||
19498 | # | ||
19499 | |||
19500 | case $INSTALL in | ||
19501 | [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; | ||
19502 | *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; | ||
19503 | esac | ||
19504 | _ACEOF | ||
19505 | |||
19506 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19507 | # If the template does not know about datarootdir, expand it. | ||
19508 | # FIXME: This hack should be removed a few years after 2.60. | ||
19509 | ac_datarootdir_hack=; ac_datarootdir_seen= | ||
19510 | ac_sed_dataroot=' | ||
19511 | /datarootdir/ { | ||
19512 | p | ||
19513 | q | ||
19514 | } | ||
19515 | /@datadir@/p | ||
19516 | /@docdir@/p | ||
19517 | /@infodir@/p | ||
19518 | /@localedir@/p | ||
19519 | /@mandir@/p' | ||
19520 | case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in | ||
19521 | *datarootdir*) ac_datarootdir_seen=yes;; | ||
19522 | *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) | ||
19523 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 | ||
19524 | $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} | ||
19525 | _ACEOF | ||
19526 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19527 | ac_datarootdir_hack=' | ||
19528 | s&@datadir@&$datadir&g | ||
19529 | s&@docdir@&$docdir&g | ||
19530 | s&@infodir@&$infodir&g | ||
19531 | s&@localedir@&$localedir&g | ||
19532 | s&@mandir@&$mandir&g | ||
19533 | s&\\\${datarootdir}&$datarootdir&g' ;; | ||
19534 | esac | ||
19535 | _ACEOF | ||
19536 | |||
19537 | # Neutralize VPATH when `$srcdir' = `.'. | ||
19538 | # Shell code in configure.ac might set extrasub. | ||
19539 | # FIXME: do we really want to maintain this feature? | ||
19540 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
19541 | ac_sed_extra="$ac_vpsub | ||
19542 | $extrasub | ||
19543 | _ACEOF | ||
19544 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
19545 | :t | ||
19546 | /@[a-zA-Z_][a-zA-Z_0-9]*@/!b | ||
19547 | s|@configure_input@|$ac_sed_conf_input|;t t | ||
19548 | s&@top_builddir@&$ac_top_builddir_sub&;t t | ||
19549 | s&@top_build_prefix@&$ac_top_build_prefix&;t t | ||
19550 | s&@srcdir@&$ac_srcdir&;t t | ||
19551 | s&@abs_srcdir@&$ac_abs_srcdir&;t t | ||
19552 | s&@top_srcdir@&$ac_top_srcdir&;t t | ||
19553 | s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t | ||
19554 | s&@builddir@&$ac_builddir&;t t | ||
19555 | s&@abs_builddir@&$ac_abs_builddir&;t t | ||
19556 | s&@abs_top_builddir@&$ac_abs_top_builddir&;t t | ||
19557 | s&@INSTALL@&$ac_INSTALL&;t t | ||
19558 | $ac_datarootdir_hack | ||
19559 | " | ||
19560 | eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ | ||
19561 | >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
19562 | |||
19563 | test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && | ||
19564 | { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && | ||
19565 | { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ | ||
19566 | "$ac_tmp/out"`; test -z "$ac_out"; } && | ||
19567 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' | ||
19568 | which seems to be undefined. Please make sure it is defined" >&5 | ||
19569 | $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' | ||
19570 | which seems to be undefined. Please make sure it is defined" >&2;} | ||
19571 | |||
19572 | rm -f "$ac_tmp/stdin" | ||
19573 | case $ac_file in | ||
19574 | -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; | ||
19575 | *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; | ||
19576 | esac \ | ||
19577 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
19578 | ;; | ||
19579 | :H) | ||
19580 | # | ||
19581 | # CONFIG_HEADER | ||
19582 | # | ||
19583 | if test x"$ac_file" != x-; then | ||
19584 | { | ||
19585 | $as_echo "/* $configure_input */" \ | ||
19586 | && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" | ||
19587 | } >"$ac_tmp/config.h" \ | ||
19588 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
19589 | if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then | ||
19590 | { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 | ||
19591 | $as_echo "$as_me: $ac_file is unchanged" >&6;} | ||
19592 | else | ||
19593 | rm -f "$ac_file" | ||
19594 | mv "$ac_tmp/config.h" "$ac_file" \ | ||
19595 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
19596 | fi | ||
19597 | else | ||
19598 | $as_echo "/* $configure_input */" \ | ||
19599 | && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ | ||
19600 | || as_fn_error $? "could not create -" "$LINENO" 5 | ||
19601 | fi | ||
19602 | ;; | ||
19603 | |||
19604 | |||
19605 | esac | ||
19606 | |||
19607 | done # for ac_tag | ||
19608 | |||
19609 | |||
19610 | as_fn_exit 0 | ||
19611 | _ACEOF | ||
19612 | ac_clean_files=$ac_clean_files_save | ||
19613 | |||
19614 | test $ac_write_fail = 0 || | ||
19615 | as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 | ||
19616 | |||
19617 | |||
19618 | # configure is writing to config.log, and then calls config.status. | ||
19619 | # config.status does its own redirection, appending to config.log. | ||
19620 | # Unfortunately, on DOS this fails, as config.log is still kept open | ||
19621 | # by configure, so config.status won't be able to write to it; its | ||
19622 | # output is simply discarded. So we exec the FD to /dev/null, | ||
19623 | # effectively closing config.log, so it can be properly (re)opened and | ||
19624 | # appended to by config.status. When coming back to configure, we | ||
19625 | # need to make the FD available again. | ||
19626 | if test "$no_create" != yes; then | ||
19627 | ac_cs_success=: | ||
19628 | ac_config_status_args= | ||
19629 | test "$silent" = yes && | ||
19630 | ac_config_status_args="$ac_config_status_args --quiet" | ||
19631 | exec 5>/dev/null | ||
19632 | $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false | ||
19633 | exec 5>>config.log | ||
19634 | # Use ||, not &&, to avoid exiting from the if with $? = 1, which | ||
19635 | # would make configure fail if this is the last instruction. | ||
19636 | $ac_cs_success || as_fn_exit 1 | ||
19637 | fi | ||
19638 | if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then | ||
19639 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 | ||
19640 | $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} | ||
19641 | fi | ||
19642 | |||
19643 | |||
19644 | # Print summary of options | ||
19645 | |||
19646 | # Someone please show me a better way :) | ||
19647 | A=`eval echo ${prefix}` ; A=`eval echo ${A}` | ||
19648 | B=`eval echo ${bindir}` ; B=`eval echo ${B}` | ||
19649 | C=`eval echo ${sbindir}` ; C=`eval echo ${C}` | ||
19650 | D=`eval echo ${sysconfdir}` ; D=`eval echo ${D}` | ||
19651 | E=`eval echo ${libexecdir}/ssh-askpass` ; E=`eval echo ${E}` | ||
19652 | F=`eval echo ${mandir}/${mansubdir}X` ; F=`eval echo ${F}` | ||
19653 | G=`eval echo ${piddir}` ; G=`eval echo ${G}` | ||
19654 | H=`eval echo ${PRIVSEP_PATH}` ; H=`eval echo ${H}` | ||
19655 | I=`eval echo ${user_path}` ; I=`eval echo ${I}` | ||
19656 | J=`eval echo ${superuser_path}` ; J=`eval echo ${J}` | ||
19657 | |||
19658 | echo "" | ||
19659 | echo "OpenSSH has been configured with the following options:" | ||
19660 | echo " User binaries: $B" | ||
19661 | echo " System binaries: $C" | ||
19662 | echo " Configuration files: $D" | ||
19663 | echo " Askpass program: $E" | ||
19664 | echo " Manual pages: $F" | ||
19665 | echo " PID file: $G" | ||
19666 | echo " Privilege separation chroot path: $H" | ||
19667 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
19668 | echo " At runtime, sshd will use the path defined in $external_path_file" | ||
19669 | echo " Make sure the path to scp is present, otherwise scp will not work" | ||
19670 | else | ||
19671 | echo " sshd default user PATH: $I" | ||
19672 | if test ! -z "$external_path_file"; then | ||
19673 | echo " (If PATH is set in $external_path_file it will be used instead. If" | ||
19674 | echo " used, ensure the path to scp is present, otherwise scp will not work.)" | ||
19675 | fi | ||
19676 | fi | ||
19677 | if test ! -z "$superuser_path" ; then | ||
19678 | echo " sshd superuser user PATH: $J" | ||
19679 | fi | ||
19680 | echo " Manpage format: $MANTYPE" | ||
19681 | echo " PAM support: $PAM_MSG" | ||
19682 | echo " OSF SIA support: $SIA_MSG" | ||
19683 | echo " KerberosV support: $KRB5_MSG" | ||
19684 | echo " SELinux support: $SELINUX_MSG" | ||
19685 | echo " Smartcard support: $SCARD_MSG" | ||
19686 | echo " S/KEY support: $SKEY_MSG" | ||
19687 | echo " TCP Wrappers support: $TCPW_MSG" | ||
19688 | echo " MD5 password support: $MD5_MSG" | ||
19689 | echo " libedit support: $LIBEDIT_MSG" | ||
19690 | echo " Solaris process contract support: $SPC_MSG" | ||
19691 | echo " Solaris project support: $SP_MSG" | ||
19692 | echo " IP address in \$DISPLAY hack: $DISPLAY_HACK_MSG" | ||
19693 | echo " Translate v4 in v6 hack: $IPV4_IN6_HACK_MSG" | ||
19694 | echo " BSD Auth support: $BSD_AUTH_MSG" | ||
19695 | echo " Random number source: $RAND_MSG" | ||
19696 | echo " Privsep sandbox style: $SANDBOX_STYLE" | ||
19697 | |||
19698 | echo "" | ||
19699 | |||
19700 | echo " Host: ${host}" | ||
19701 | echo " Compiler: ${CC}" | ||
19702 | echo " Compiler flags: ${CFLAGS}" | ||
19703 | echo "Preprocessor flags: ${CPPFLAGS}" | ||
19704 | echo " Linker flags: ${LDFLAGS}" | ||
19705 | echo " Libraries: ${LIBS}" | ||
19706 | if test ! -z "${SSHDLIBS}"; then | ||
19707 | echo " +for sshd: ${SSHDLIBS}" | ||
19708 | fi | ||
19709 | if test ! -z "${SSHLIBS}"; then | ||
19710 | echo " +for ssh: ${SSHLIBS}" | ||
19711 | fi | ||
19712 | |||
19713 | echo "" | ||
19714 | |||
19715 | if test "x$MAKE_PACKAGE_SUPPORTED" = "xyes" ; then | ||
19716 | echo "SVR4 style packages are supported with \"make package\"" | ||
19717 | echo "" | ||
19718 | fi | ||
19719 | |||
19720 | if test "x$PAM_MSG" = "xyes" ; then | ||
19721 | echo "PAM is enabled. You may need to install a PAM control file " | ||
19722 | echo "for sshd, otherwise password authentication may fail. " | ||
19723 | echo "Example PAM control files can be found in the contrib/ " | ||
19724 | echo "subdirectory" | ||
19725 | echo "" | ||
19726 | fi | ||
19727 | |||
19728 | if test ! -z "$NO_PEERCHECK" ; then | ||
19729 | echo "WARNING: the operating system that you are using does not" | ||
19730 | echo "appear to support getpeereid(), getpeerucred() or the" | ||
19731 | echo "SO_PEERCRED getsockopt() option. These facilities are used to" | ||
19732 | echo "enforce security checks to prevent unauthorised connections to" | ||
19733 | echo "ssh-agent. Their absence increases the risk that a malicious" | ||
19734 | echo "user can connect to your agent." | ||
19735 | echo "" | ||
19736 | fi | ||
19737 | |||
19738 | if test "$AUDIT_MODULE" = "bsm" ; then | ||
19739 | echo "WARNING: BSM audit support is currently considered EXPERIMENTAL." | ||
19740 | echo "See the Solaris section in README.platform for details." | ||
19741 | fi | ||
diff --git a/moduli.0 b/moduli.0 new file mode 100644 index 000000000..7d678b459 --- /dev/null +++ b/moduli.0 | |||
@@ -0,0 +1,74 @@ | |||
1 | MODULI(5) OpenBSD Programmer's Manual MODULI(5) | ||
2 | |||
3 | NAME | ||
4 | moduli - Diffie-Hellman moduli | ||
5 | |||
6 | DESCRIPTION | ||
7 | The /etc/moduli file contains prime numbers and generators for use by | ||
8 | sshd(8) in the Diffie-Hellman Group Exchange key exchange method. | ||
9 | |||
10 | New moduli may be generated with ssh-keygen(1) using a two-step process. | ||
11 | An initial candidate generation pass, using ssh-keygen -G, calculates | ||
12 | numbers that are likely to be useful. A second primality testing pass, | ||
13 | using ssh-keygen -T, provides a high degree of assurance that the numbers | ||
14 | are prime and are safe for use in Diffie-Hellman operations by sshd(8). | ||
15 | This moduli format is used as the output from each pass. | ||
16 | |||
17 | The file consists of newline-separated records, one per modulus, | ||
18 | containing seven space-separated fields. These fields are as follows: | ||
19 | |||
20 | timestamp The time that the modulus was last processed as | ||
21 | YYYYMMDDHHMMSS. | ||
22 | |||
23 | type Decimal number specifying the internal structure of | ||
24 | the prime modulus. Supported types are: | ||
25 | |||
26 | 0 Unknown, not tested. | ||
27 | 2 "Safe" prime; (p-1)/2 is also prime. | ||
28 | 4 Sophie Germain; 2p+1 is also prime. | ||
29 | |||
30 | Moduli candidates initially produced by ssh-keygen(1) | ||
31 | are Sophie Germain primes (type 4). Further primality | ||
32 | testing with ssh-keygen(1) produces safe prime moduli | ||
33 | (type 2) that are ready for use in sshd(8). Other | ||
34 | types are not used by OpenSSH. | ||
35 | |||
36 | tests Decimal number indicating the type of primality tests | ||
37 | that the number has been subjected to represented as a | ||
38 | bitmask of the following values: | ||
39 | |||
40 | 0x00 Not tested. | ||
41 | 0x01 Composite number - not prime. | ||
42 | 0x02 Sieve of Eratosthenes. | ||
43 | 0x04 Probabilistic Miller-Rabin primality tests. | ||
44 | |||
45 | The ssh-keygen(1) moduli candidate generation uses the | ||
46 | Sieve of Eratosthenes (flag 0x02). Subsequent | ||
47 | ssh-keygen(1) primality tests are Miller-Rabin tests | ||
48 | (flag 0x04). | ||
49 | |||
50 | trials Decimal number indicating the number of primality | ||
51 | trials that have been performed on the modulus. | ||
52 | |||
53 | size Decimal number indicating the size of the prime in | ||
54 | bits. | ||
55 | |||
56 | generator The recommended generator for use with this modulus | ||
57 | (hexadecimal). | ||
58 | |||
59 | modulus The modulus itself in hexadecimal. | ||
60 | |||
61 | When performing Diffie-Hellman Group Exchange, sshd(8) first estimates | ||
62 | the size of the modulus required to produce enough Diffie-Hellman output | ||
63 | to sufficiently key the selected symmetric cipher. sshd(8) then randomly | ||
64 | selects a modulus from /etc/moduli that best meets the size requirement. | ||
65 | |||
66 | SEE ALSO | ||
67 | ssh-keygen(1), sshd(8) | ||
68 | |||
69 | STANDARDS | ||
70 | M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for | ||
71 | the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006, | ||
72 | 2006. | ||
73 | |||
74 | OpenBSD 5.5 September 26, 2012 OpenBSD 5.5 | ||
diff --git a/openbsd-compat/.cvsignore b/openbsd-compat/.cvsignore deleted file mode 100644 index f3c7a7c5d..000000000 --- a/openbsd-compat/.cvsignore +++ /dev/null | |||
@@ -1 +0,0 @@ | |||
1 | Makefile | ||
diff --git a/openbsd-compat/regress/.cvsignore b/openbsd-compat/regress/.cvsignore deleted file mode 100644 index afbf7cc3f..000000000 --- a/openbsd-compat/regress/.cvsignore +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | Makefile | ||
2 | snprintftest | ||
3 | strduptest | ||
4 | strtonumtest | ||
5 | |||
diff --git a/regress/.cvsignore b/regress/.cvsignore deleted file mode 100644 index 3fd25b02e..000000000 --- a/regress/.cvsignore +++ /dev/null | |||
@@ -1,31 +0,0 @@ | |||
1 | *-agent | ||
2 | *.copy | ||
3 | *.log | ||
4 | *.prv | ||
5 | *.pub | ||
6 | actual | ||
7 | authorized_keys_* | ||
8 | batch | ||
9 | copy.dd* | ||
10 | data | ||
11 | expect | ||
12 | host.rsa* | ||
13 | key.* | ||
14 | known_hosts | ||
15 | krl-* | ||
16 | modpipe | ||
17 | remote_pid | ||
18 | revoked-* | ||
19 | revoked-ca | ||
20 | revoked-keyid | ||
21 | revoked-serials | ||
22 | rsa | ||
23 | rsa1 | ||
24 | sftp-server.sh | ||
25 | ssh-log-wrapper.sh | ||
26 | ssh_config | ||
27 | ssh_proxy* | ||
28 | sshd_config | ||
29 | sshd_proxy* | ||
30 | t*.out | ||
31 | t*.out[0-9] | ||
diff --git a/scard/.cvsignore b/scard/.cvsignore deleted file mode 100644 index 5349d34ae..000000000 --- a/scard/.cvsignore +++ /dev/null | |||
@@ -1,2 +0,0 @@ | |||
1 | Makefile | ||
2 | Ssh.bin | ||
@@ -0,0 +1,163 @@ | |||
1 | SCP(1) OpenBSD Reference Manual SCP(1) | ||
2 | |||
3 | NAME | ||
4 | scp - secure copy (remote file copy program) | ||
5 | |||
6 | SYNOPSIS | ||
7 | scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] | ||
8 | [-l limit] [-o ssh_option] [-P port] [-S program] | ||
9 | [[user@]host1:]file1 ... [[user@]host2:]file2 | ||
10 | |||
11 | DESCRIPTION | ||
12 | scp copies files between hosts on a network. It uses ssh(1) for data | ||
13 | transfer, and uses the same authentication and provides the same security | ||
14 | as ssh(1). Unlike rcp(1), scp will ask for passwords or passphrases if | ||
15 | they are needed for authentication. | ||
16 | |||
17 | File names may contain a user and host specification to indicate that the | ||
18 | file is to be copied to/from that host. Local file names can be made | ||
19 | explicit using absolute or relative pathnames to avoid scp treating file | ||
20 | names containing `:' as host specifiers. Copies between two remote hosts | ||
21 | are also permitted. | ||
22 | |||
23 | The options are as follows: | ||
24 | |||
25 | -1 Forces scp to use protocol 1. | ||
26 | |||
27 | -2 Forces scp to use protocol 2. | ||
28 | |||
29 | -3 Copies between two remote hosts are transferred through the local | ||
30 | host. Without this option the data is copied directly between | ||
31 | the two remote hosts. Note that this option disables the | ||
32 | progress meter. | ||
33 | |||
34 | -4 Forces scp to use IPv4 addresses only. | ||
35 | |||
36 | -6 Forces scp to use IPv6 addresses only. | ||
37 | |||
38 | -B Selects batch mode (prevents asking for passwords or | ||
39 | passphrases). | ||
40 | |||
41 | -C Compression enable. Passes the -C flag to ssh(1) to enable | ||
42 | compression. | ||
43 | |||
44 | -c cipher | ||
45 | Selects the cipher to use for encrypting the data transfer. This | ||
46 | option is directly passed to ssh(1). | ||
47 | |||
48 | -F ssh_config | ||
49 | Specifies an alternative per-user configuration file for ssh. | ||
50 | This option is directly passed to ssh(1). | ||
51 | |||
52 | -i identity_file | ||
53 | Selects the file from which the identity (private key) for public | ||
54 | key authentication is read. This option is directly passed to | ||
55 | ssh(1). | ||
56 | |||
57 | -l limit | ||
58 | Limits the used bandwidth, specified in Kbit/s. | ||
59 | |||
60 | -o ssh_option | ||
61 | Can be used to pass options to ssh in the format used in | ||
62 | ssh_config(5). This is useful for specifying options for which | ||
63 | there is no separate scp command-line flag. For full details of | ||
64 | the options listed below, and their possible values, see | ||
65 | ssh_config(5). | ||
66 | |||
67 | AddressFamily | ||
68 | BatchMode | ||
69 | BindAddress | ||
70 | CanonicalDomains | ||
71 | CanonicalizeFallbackLocal | ||
72 | CanonicalizeHostname | ||
73 | CanonicalizeMaxDots | ||
74 | CanonicalizePermittedCNAMEs | ||
75 | ChallengeResponseAuthentication | ||
76 | CheckHostIP | ||
77 | Cipher | ||
78 | Ciphers | ||
79 | Compression | ||
80 | CompressionLevel | ||
81 | ConnectionAttempts | ||
82 | ConnectTimeout | ||
83 | ControlMaster | ||
84 | ControlPath | ||
85 | ControlPersist | ||
86 | GlobalKnownHostsFile | ||
87 | GSSAPIAuthentication | ||
88 | GSSAPIDelegateCredentials | ||
89 | HashKnownHosts | ||
90 | Host | ||
91 | HostbasedAuthentication | ||
92 | HostKeyAlgorithms | ||
93 | HostKeyAlias | ||
94 | HostName | ||
95 | IdentityFile | ||
96 | IdentitiesOnly | ||
97 | IPQoS | ||
98 | KbdInteractiveAuthentication | ||
99 | KbdInteractiveDevices | ||
100 | KexAlgorithms | ||
101 | LogLevel | ||
102 | MACs | ||
103 | NoHostAuthenticationForLocalhost | ||
104 | NumberOfPasswordPrompts | ||
105 | PasswordAuthentication | ||
106 | PKCS11Provider | ||
107 | Port | ||
108 | PreferredAuthentications | ||
109 | Protocol | ||
110 | ProxyCommand | ||
111 | PubkeyAuthentication | ||
112 | RekeyLimit | ||
113 | RhostsRSAAuthentication | ||
114 | RSAAuthentication | ||
115 | SendEnv | ||
116 | ServerAliveInterval | ||
117 | ServerAliveCountMax | ||
118 | StrictHostKeyChecking | ||
119 | TCPKeepAlive | ||
120 | UsePrivilegedPort | ||
121 | User | ||
122 | UserKnownHostsFile | ||
123 | VerifyHostKeyDNS | ||
124 | |||
125 | -P port | ||
126 | Specifies the port to connect to on the remote host. Note that | ||
127 | this option is written with a capital `P', because -p is already | ||
128 | reserved for preserving the times and modes of the file in | ||
129 | rcp(1). | ||
130 | |||
131 | -p Preserves modification times, access times, and modes from the | ||
132 | original file. | ||
133 | |||
134 | -q Quiet mode: disables the progress meter as well as warning and | ||
135 | diagnostic messages from ssh(1). | ||
136 | |||
137 | -r Recursively copy entire directories. Note that scp follows | ||
138 | symbolic links encountered in the tree traversal. | ||
139 | |||
140 | -S program | ||
141 | Name of program to use for the encrypted connection. The program | ||
142 | must understand ssh(1) options. | ||
143 | |||
144 | -v Verbose mode. Causes scp and ssh(1) to print debugging messages | ||
145 | about their progress. This is helpful in debugging connection, | ||
146 | authentication, and configuration problems. | ||
147 | |||
148 | EXIT STATUS | ||
149 | The scp utility exits 0 on success, and >0 if an error occurs. | ||
150 | |||
151 | SEE ALSO | ||
152 | rcp(1), sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), | ||
153 | ssh_config(5), sshd(8) | ||
154 | |||
155 | HISTORY | ||
156 | scp is based on the rcp(1) program in BSD source code from the Regents of | ||
157 | the University of California. | ||
158 | |||
159 | AUTHORS | ||
160 | Timo Rinne <tri@iki.fi> | ||
161 | Tatu Ylonen <ylo@cs.hut.fi> | ||
162 | |||
163 | OpenBSD 5.5 October 20, 2013 OpenBSD 5.5 | ||
diff --git a/sftp-server.0 b/sftp-server.0 new file mode 100644 index 000000000..ce7ddc07f --- /dev/null +++ b/sftp-server.0 | |||
@@ -0,0 +1,95 @@ | |||
1 | SFTP-SERVER(8) OpenBSD System Manager's Manual SFTP-SERVER(8) | ||
2 | |||
3 | NAME | ||
4 | sftp-server - SFTP server subsystem | ||
5 | |||
6 | SYNOPSIS | ||
7 | sftp-server [-ehR] [-d start_directory] [-f log_facility] [-l log_level] | ||
8 | [-P blacklisted_requests] [-p whitelisted_requests] | ||
9 | [-u umask] | ||
10 | sftp-server -Q protocol_feature | ||
11 | |||
12 | DESCRIPTION | ||
13 | sftp-server is a program that speaks the server side of SFTP protocol to | ||
14 | stdout and expects client requests from stdin. sftp-server is not | ||
15 | intended to be called directly, but from sshd(8) using the Subsystem | ||
16 | option. | ||
17 | |||
18 | Command-line flags to sftp-server should be specified in the Subsystem | ||
19 | declaration. See sshd_config(5) for more information. | ||
20 | |||
21 | Valid options are: | ||
22 | |||
23 | -d start_directory | ||
24 | specifies an alternate starting directory for users. The | ||
25 | pathname may contain the following tokens that are expanded at | ||
26 | runtime: %% is replaced by a literal '%', %h is replaced by the | ||
27 | home directory of the user being authenticated, and %u is | ||
28 | replaced by the username of that user. The default is to use the | ||
29 | user's home directory. This option is useful in conjunction with | ||
30 | the sshd_config(5) ChrootDirectory option. | ||
31 | |||
32 | -e Causes sftp-server to print logging information to stderr instead | ||
33 | of syslog for debugging. | ||
34 | |||
35 | -f log_facility | ||
36 | Specifies the facility code that is used when logging messages | ||
37 | from sftp-server. The possible values are: DAEMON, USER, AUTH, | ||
38 | LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. | ||
39 | The default is AUTH. | ||
40 | |||
41 | -h Displays sftp-server usage information. | ||
42 | |||
43 | -l log_level | ||
44 | Specifies which messages will be logged by sftp-server. The | ||
45 | possible values are: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, | ||
46 | DEBUG1, DEBUG2, and DEBUG3. INFO and VERBOSE log transactions | ||
47 | that sftp-server performs on behalf of the client. DEBUG and | ||
48 | DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify higher | ||
49 | levels of debugging output. The default is ERROR. | ||
50 | |||
51 | -P blacklisted_requests | ||
52 | Specify a comma-separated list of SFTP protocol requests that are | ||
53 | banned by the server. sftp-server will reply to any blacklisted | ||
54 | request with a failure. The -Q flag can be used to determine the | ||
55 | supported request types. If both a blacklist and a whitelist are | ||
56 | specified, then the blacklist is applied before the whitelist. | ||
57 | |||
58 | -p whitelisted_requests | ||
59 | Specify a comma-separated list of SFTP protocol requests that are | ||
60 | permitted by the server. All request types that are not on the | ||
61 | whitelist will be logged and replied to with a failure message. | ||
62 | |||
63 | Care must be taken when using this feature to ensure that | ||
64 | requests made implicitly by SFTP clients are permitted. | ||
65 | |||
66 | -Q protocol_feature | ||
67 | Query protocol features supported by sftp-server. At present the | ||
68 | only feature that may be queried is ``requests'', which may be | ||
69 | used for black or whitelisting (flags -P and -p respectively). | ||
70 | |||
71 | -R Places this instance of sftp-server into a read-only mode. | ||
72 | Attempts to open files for writing, as well as other operations | ||
73 | that change the state of the filesystem, will be denied. | ||
74 | |||
75 | -u umask | ||
76 | Sets an explicit umask(2) to be applied to newly-created files | ||
77 | and directories, instead of the user's default mask. | ||
78 | |||
79 | For logging to work, sftp-server must be able to access /dev/log. Use of | ||
80 | sftp-server in a chroot configuration therefore requires that syslogd(8) | ||
81 | establish a logging socket inside the chroot directory. | ||
82 | |||
83 | SEE ALSO | ||
84 | sftp(1), ssh(1), sshd_config(5), sshd(8) | ||
85 | |||
86 | T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh- | ||
87 | filexfer-02.txt, October 2001, work in progress material. | ||
88 | |||
89 | HISTORY | ||
90 | sftp-server first appeared in OpenBSD 2.8. | ||
91 | |||
92 | AUTHORS | ||
93 | Markus Friedl <markus@openbsd.org> | ||
94 | |||
95 | OpenBSD 5.5 October 14, 2013 OpenBSD 5.5 | ||
@@ -0,0 +1,370 @@ | |||
1 | SFTP(1) OpenBSD Reference Manual SFTP(1) | ||
2 | |||
3 | NAME | ||
4 | sftp - secure file transfer program | ||
5 | |||
6 | SYNOPSIS | ||
7 | sftp [-1246aCfpqrv] [-B buffer_size] [-b batchfile] [-c cipher] | ||
8 | [-D sftp_server_path] [-F ssh_config] [-i identity_file] [-l limit] | ||
9 | [-o ssh_option] [-P port] [-R num_requests] [-S program] | ||
10 | [-s subsystem | sftp_server] host | ||
11 | sftp [user@]host[:file ...] | ||
12 | sftp [user@]host[:dir[/]] | ||
13 | sftp -b batchfile [user@]host | ||
14 | |||
15 | DESCRIPTION | ||
16 | sftp is an interactive file transfer program, similar to ftp(1), which | ||
17 | performs all operations over an encrypted ssh(1) transport. It may also | ||
18 | use many features of ssh, such as public key authentication and | ||
19 | compression. sftp connects and logs into the specified host, then enters | ||
20 | an interactive command mode. | ||
21 | |||
22 | The second usage format will retrieve files automatically if a non- | ||
23 | interactive authentication method is used; otherwise it will do so after | ||
24 | successful interactive authentication. | ||
25 | |||
26 | The third usage format allows sftp to start in a remote directory. | ||
27 | |||
28 | The final usage format allows for automated sessions using the -b option. | ||
29 | In such cases, it is necessary to configure non-interactive | ||
30 | authentication to obviate the need to enter a password at connection time | ||
31 | (see sshd(8) and ssh-keygen(1) for details). | ||
32 | |||
33 | Since some usage formats use colon characters to delimit host names from | ||
34 | path names, IPv6 addresses must be enclosed in square brackets to avoid | ||
35 | ambiguity. | ||
36 | |||
37 | The options are as follows: | ||
38 | |||
39 | -1 Specify the use of protocol version 1. | ||
40 | |||
41 | -2 Specify the use of protocol version 2. | ||
42 | |||
43 | -4 Forces sftp to use IPv4 addresses only. | ||
44 | |||
45 | -6 Forces sftp to use IPv6 addresses only. | ||
46 | |||
47 | -a Attempt to continue interrupted downloads rather than overwriting | ||
48 | existing partial or complete copies of files. If the remote file | ||
49 | contents differ from the partial local copy then the resultant | ||
50 | file is likely to be corrupt. | ||
51 | |||
52 | -B buffer_size | ||
53 | Specify the size of the buffer that sftp uses when transferring | ||
54 | files. Larger buffers require fewer round trips at the cost of | ||
55 | higher memory consumption. The default is 32768 bytes. | ||
56 | |||
57 | -b batchfile | ||
58 | Batch mode reads a series of commands from an input batchfile | ||
59 | instead of stdin. Since it lacks user interaction it should be | ||
60 | used in conjunction with non-interactive authentication. A | ||
61 | batchfile of `-' may be used to indicate standard input. sftp | ||
62 | will abort if any of the following commands fail: get, put, | ||
63 | reget, rename, ln, rm, mkdir, chdir, ls, lchdir, chmod, chown, | ||
64 | chgrp, lpwd, df, symlink, and lmkdir. Termination on error can | ||
65 | be suppressed on a command by command basis by prefixing the | ||
66 | command with a `-' character (for example, -rm /tmp/blah*). | ||
67 | |||
68 | -C Enables compression (via ssh's -C flag). | ||
69 | |||
70 | -c cipher | ||
71 | Selects the cipher to use for encrypting the data transfers. | ||
72 | This option is directly passed to ssh(1). | ||
73 | |||
74 | -D sftp_server_path | ||
75 | Connect directly to a local sftp server (rather than via ssh(1)). | ||
76 | This option may be useful in debugging the client and server. | ||
77 | |||
78 | -F ssh_config | ||
79 | Specifies an alternative per-user configuration file for ssh(1). | ||
80 | This option is directly passed to ssh(1). | ||
81 | |||
82 | -f Requests that files be flushed to disk immediately after | ||
83 | transfer. When uploading files, this feature is only enabled if | ||
84 | the server implements the "fsync@openssh.com" extension. | ||
85 | |||
86 | -i identity_file | ||
87 | Selects the file from which the identity (private key) for public | ||
88 | key authentication is read. This option is directly passed to | ||
89 | ssh(1). | ||
90 | |||
91 | -l limit | ||
92 | Limits the used bandwidth, specified in Kbit/s. | ||
93 | |||
94 | -o ssh_option | ||
95 | Can be used to pass options to ssh in the format used in | ||
96 | ssh_config(5). This is useful for specifying options for which | ||
97 | there is no separate sftp command-line flag. For example, to | ||
98 | specify an alternate port use: sftp -oPort=24. For full details | ||
99 | of the options listed below, and their possible values, see | ||
100 | ssh_config(5). | ||
101 | |||
102 | AddressFamily | ||
103 | BatchMode | ||
104 | BindAddress | ||
105 | CanonicalDomains | ||
106 | CanonicalizeFallbackLocal | ||
107 | CanonicalizeHostname | ||
108 | CanonicalizeMaxDots | ||
109 | CanonicalizePermittedCNAMEs | ||
110 | ChallengeResponseAuthentication | ||
111 | CheckHostIP | ||
112 | Cipher | ||
113 | Ciphers | ||
114 | Compression | ||
115 | CompressionLevel | ||
116 | ConnectionAttempts | ||
117 | ConnectTimeout | ||
118 | ControlMaster | ||
119 | ControlPath | ||
120 | ControlPersist | ||
121 | GlobalKnownHostsFile | ||
122 | GSSAPIAuthentication | ||
123 | GSSAPIDelegateCredentials | ||
124 | HashKnownHosts | ||
125 | Host | ||
126 | HostbasedAuthentication | ||
127 | HostKeyAlgorithms | ||
128 | HostKeyAlias | ||
129 | HostName | ||
130 | IdentityFile | ||
131 | IdentitiesOnly | ||
132 | IPQoS | ||
133 | KbdInteractiveAuthentication | ||
134 | KbdInteractiveDevices | ||
135 | KexAlgorithms | ||
136 | LogLevel | ||
137 | MACs | ||
138 | NoHostAuthenticationForLocalhost | ||
139 | NumberOfPasswordPrompts | ||
140 | PasswordAuthentication | ||
141 | PKCS11Provider | ||
142 | Port | ||
143 | PreferredAuthentications | ||
144 | Protocol | ||
145 | ProxyCommand | ||
146 | PubkeyAuthentication | ||
147 | RekeyLimit | ||
148 | RhostsRSAAuthentication | ||
149 | RSAAuthentication | ||
150 | SendEnv | ||
151 | ServerAliveInterval | ||
152 | ServerAliveCountMax | ||
153 | StrictHostKeyChecking | ||
154 | TCPKeepAlive | ||
155 | UsePrivilegedPort | ||
156 | User | ||
157 | UserKnownHostsFile | ||
158 | VerifyHostKeyDNS | ||
159 | |||
160 | -P port | ||
161 | Specifies the port to connect to on the remote host. | ||
162 | |||
163 | -p Preserves modification times, access times, and modes from the | ||
164 | original files transferred. | ||
165 | |||
166 | -q Quiet mode: disables the progress meter as well as warning and | ||
167 | diagnostic messages from ssh(1). | ||
168 | |||
169 | -R num_requests | ||
170 | Specify how many requests may be outstanding at any one time. | ||
171 | Increasing this may slightly improve file transfer speed but will | ||
172 | increase memory usage. The default is 64 outstanding requests. | ||
173 | |||
174 | -r Recursively copy entire directories when uploading and | ||
175 | downloading. Note that sftp does not follow symbolic links | ||
176 | encountered in the tree traversal. | ||
177 | |||
178 | -S program | ||
179 | Name of the program to use for the encrypted connection. The | ||
180 | program must understand ssh(1) options. | ||
181 | |||
182 | -s subsystem | sftp_server | ||
183 | Specifies the SSH2 subsystem or the path for an sftp server on | ||
184 | the remote host. A path is useful for using sftp over protocol | ||
185 | version 1, or when the remote sshd(8) does not have an sftp | ||
186 | subsystem configured. | ||
187 | |||
188 | -v Raise logging level. This option is also passed to ssh. | ||
189 | |||
190 | INTERACTIVE COMMANDS | ||
191 | Once in interactive mode, sftp understands a set of commands similar to | ||
192 | those of ftp(1). Commands are case insensitive. Pathnames that contain | ||
193 | spaces must be enclosed in quotes. Any special characters contained | ||
194 | within pathnames that are recognized by glob(3) must be escaped with | ||
195 | backslashes (`\'). | ||
196 | |||
197 | bye Quit sftp. | ||
198 | |||
199 | cd path | ||
200 | Change remote directory to path. | ||
201 | |||
202 | chgrp grp path | ||
203 | Change group of file path to grp. path may contain glob(3) | ||
204 | characters and may match multiple files. grp must be a numeric | ||
205 | GID. | ||
206 | |||
207 | chmod mode path | ||
208 | Change permissions of file path to mode. path may contain | ||
209 | glob(3) characters and may match multiple files. | ||
210 | |||
211 | chown own path | ||
212 | Change owner of file path to own. path may contain glob(3) | ||
213 | characters and may match multiple files. own must be a numeric | ||
214 | UID. | ||
215 | |||
216 | df [-hi] [path] | ||
217 | Display usage information for the filesystem holding the current | ||
218 | directory (or path if specified). If the -h flag is specified, | ||
219 | the capacity information will be displayed using "human-readable" | ||
220 | suffixes. The -i flag requests display of inode information in | ||
221 | addition to capacity information. This command is only supported | ||
222 | on servers that implement the ``statvfs@openssh.com'' extension. | ||
223 | |||
224 | exit Quit sftp. | ||
225 | |||
226 | get [-afPpr] remote-path [local-path] | ||
227 | Retrieve the remote-path and store it on the local machine. If | ||
228 | the local path name is not specified, it is given the same name | ||
229 | it has on the remote machine. remote-path may contain glob(3) | ||
230 | characters and may match multiple files. If it does and | ||
231 | local-path is specified, then local-path must specify a | ||
232 | directory. | ||
233 | |||
234 | If the -a flag is specified, then attempt to resume partial | ||
235 | transfers of existing files. Note that resumption assumes that | ||
236 | any partial copy of the local file matches the remote copy. If | ||
237 | the remote file contents differ from the partial local copy then | ||
238 | the resultant file is likely to be corrupt. | ||
239 | |||
240 | If the -f flag is specified, then fsync(2) will be called after | ||
241 | the file transfer has completed to flush the file to disk. | ||
242 | |||
243 | If either the -P or -p flag is specified, then full file | ||
244 | permissions and access times are copied too. | ||
245 | |||
246 | If the -r flag is specified then directories will be copied | ||
247 | recursively. Note that sftp does not follow symbolic links when | ||
248 | performing recursive transfers. | ||
249 | |||
250 | help Display help text. | ||
251 | |||
252 | lcd path | ||
253 | Change local directory to path. | ||
254 | |||
255 | lls [ls-options [path]] | ||
256 | Display local directory listing of either path or current | ||
257 | directory if path is not specified. ls-options may contain any | ||
258 | flags supported by the local system's ls(1) command. path may | ||
259 | contain glob(3) characters and may match multiple files. | ||
260 | |||
261 | lmkdir path | ||
262 | Create local directory specified by path. | ||
263 | |||
264 | ln [-s] oldpath newpath | ||
265 | Create a link from oldpath to newpath. If the -s flag is | ||
266 | specified the created link is a symbolic link, otherwise it is a | ||
267 | hard link. | ||
268 | |||
269 | lpwd Print local working directory. | ||
270 | |||
271 | ls [-1afhlnrSt] [path] | ||
272 | Display a remote directory listing of either path or the current | ||
273 | directory if path is not specified. path may contain glob(3) | ||
274 | characters and may match multiple files. | ||
275 | |||
276 | The following flags are recognized and alter the behaviour of ls | ||
277 | accordingly: | ||
278 | |||
279 | -1 Produce single columnar output. | ||
280 | |||
281 | -a List files beginning with a dot (`.'). | ||
282 | |||
283 | -f Do not sort the listing. The default sort order is | ||
284 | lexicographical. | ||
285 | |||
286 | -h When used with a long format option, use unit suffixes: | ||
287 | Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte, | ||
288 | and Exabyte in order to reduce the number of digits to | ||
289 | four or fewer using powers of 2 for sizes (K=1024, | ||
290 | M=1048576, etc.). | ||
291 | |||
292 | -l Display additional details including permissions and | ||
293 | ownership information. | ||
294 | |||
295 | -n Produce a long listing with user and group information | ||
296 | presented numerically. | ||
297 | |||
298 | -r Reverse the sort order of the listing. | ||
299 | |||
300 | -S Sort the listing by file size. | ||
301 | |||
302 | -t Sort the listing by last modification time. | ||
303 | |||
304 | lumask umask | ||
305 | Set local umask to umask. | ||
306 | |||
307 | mkdir path | ||
308 | Create remote directory specified by path. | ||
309 | |||
310 | progress | ||
311 | Toggle display of progress meter. | ||
312 | |||
313 | put [-fPpr] local-path [remote-path] | ||
314 | Upload local-path and store it on the remote machine. If the | ||
315 | remote path name is not specified, it is given the same name it | ||
316 | has on the local machine. local-path may contain glob(3) | ||
317 | characters and may match multiple files. If it does and | ||
318 | remote-path is specified, then remote-path must specify a | ||
319 | directory. | ||
320 | |||
321 | If the -f flag is specified, then a request will be sent to the | ||
322 | server to call fsync(2) after the file has been transferred. | ||
323 | Note that this is only supported by servers that implement the | ||
324 | "fsync@openssh.com" extension. | ||
325 | |||
326 | If either the -P or -p flag is specified, then full file | ||
327 | permissions and access times are copied too. | ||
328 | |||
329 | If the -r flag is specified then directories will be copied | ||
330 | recursively. Note that sftp does not follow symbolic links when | ||
331 | performing recursive transfers. | ||
332 | |||
333 | pwd Display remote working directory. | ||
334 | |||
335 | quit Quit sftp. | ||
336 | |||
337 | reget [-Ppr] remote-path [local-path] | ||
338 | Resume download of remote-path. Equivalent to get with the -a | ||
339 | flag set. | ||
340 | |||
341 | rename oldpath newpath | ||
342 | Rename remote file from oldpath to newpath. | ||
343 | |||
344 | rm path | ||
345 | Delete remote file specified by path. | ||
346 | |||
347 | rmdir path | ||
348 | Remove remote directory specified by path. | ||
349 | |||
350 | symlink oldpath newpath | ||
351 | Create a symbolic link from oldpath to newpath. | ||
352 | |||
353 | version | ||
354 | Display the sftp protocol version. | ||
355 | |||
356 | !command | ||
357 | Execute command in local shell. | ||
358 | |||
359 | ! Escape to local shell. | ||
360 | |||
361 | ? Synonym for help. | ||
362 | |||
363 | SEE ALSO | ||
364 | ftp(1), ls(1), scp(1), ssh(1), ssh-add(1), ssh-keygen(1), glob(3), | ||
365 | ssh_config(5), sftp-server(8), sshd(8) | ||
366 | |||
367 | T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh- | ||
368 | filexfer-00.txt, January 2001, work in progress material. | ||
369 | |||
370 | OpenBSD 5.5 October 20, 2013 OpenBSD 5.5 | ||
diff --git a/ssh-add.0 b/ssh-add.0 new file mode 100644 index 000000000..ba43fee69 --- /dev/null +++ b/ssh-add.0 | |||
@@ -0,0 +1,123 @@ | |||
1 | SSH-ADD(1) OpenBSD Reference Manual SSH-ADD(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-add - adds private key identities to the authentication agent | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-add [-cDdkLlXx] [-t life] [file ...] | ||
8 | ssh-add -s pkcs11 | ||
9 | ssh-add -e pkcs11 | ||
10 | |||
11 | DESCRIPTION | ||
12 | ssh-add adds private key identities to the authentication agent, | ||
13 | ssh-agent(1). When run without arguments, it adds the files | ||
14 | ~/.ssh/id_rsa, ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and | ||
15 | ~/.ssh/identity. After loading a private key, ssh-add will try to load | ||
16 | corresponding certificate information from the filename obtained by | ||
17 | appending -cert.pub to the name of the private key file. Alternative | ||
18 | file names can be given on the command line. | ||
19 | |||
20 | If any file requires a passphrase, ssh-add asks for the passphrase from | ||
21 | the user. The passphrase is read from the user's tty. ssh-add retries | ||
22 | the last passphrase if multiple identity files are given. | ||
23 | |||
24 | The authentication agent must be running and the SSH_AUTH_SOCK | ||
25 | environment variable must contain the name of its socket for ssh-add to | ||
26 | work. | ||
27 | |||
28 | The options are as follows: | ||
29 | |||
30 | -c Indicates that added identities should be subject to confirmation | ||
31 | before being used for authentication. Confirmation is performed | ||
32 | by the SSH_ASKPASS program mentioned below. Successful | ||
33 | confirmation is signaled by a zero exit status from the | ||
34 | SSH_ASKPASS program, rather than text entered into the requester. | ||
35 | |||
36 | -D Deletes all identities from the agent. | ||
37 | |||
38 | -d Instead of adding identities, removes identities from the agent. | ||
39 | If ssh-add has been run without arguments, the keys for the | ||
40 | default identities and their corresponding certificates will be | ||
41 | removed. Otherwise, the argument list will be interpreted as a | ||
42 | list of paths to public key files to specify keys and | ||
43 | certificates to be removed from the agent. If no public key is | ||
44 | found at a given path, ssh-add will append .pub and retry. | ||
45 | |||
46 | -e pkcs11 | ||
47 | Remove keys provided by the PKCS#11 shared library pkcs11. | ||
48 | |||
49 | -k When loading keys into or deleting keys from the agent, process | ||
50 | plain private keys only and skip certificates. | ||
51 | |||
52 | -L Lists public key parameters of all identities currently | ||
53 | represented by the agent. | ||
54 | |||
55 | -l Lists fingerprints of all identities currently represented by the | ||
56 | agent. | ||
57 | |||
58 | -s pkcs11 | ||
59 | Add keys provided by the PKCS#11 shared library pkcs11. | ||
60 | |||
61 | -t life | ||
62 | Set a maximum lifetime when adding identities to an agent. The | ||
63 | lifetime may be specified in seconds or in a time format | ||
64 | specified in sshd_config(5). | ||
65 | |||
66 | -X Unlock the agent. | ||
67 | |||
68 | -x Lock the agent with a password. | ||
69 | |||
70 | ENVIRONMENT | ||
71 | DISPLAY and SSH_ASKPASS | ||
72 | If ssh-add needs a passphrase, it will read the passphrase from | ||
73 | the current terminal if it was run from a terminal. If ssh-add | ||
74 | does not have a terminal associated with it but DISPLAY and | ||
75 | SSH_ASKPASS are set, it will execute the program specified by | ||
76 | SSH_ASKPASS and open an X11 window to read the passphrase. This | ||
77 | is particularly useful when calling ssh-add from a .xsession or | ||
78 | related script. (Note that on some machines it may be necessary | ||
79 | to redirect the input from /dev/null to make this work.) | ||
80 | |||
81 | SSH_AUTH_SOCK | ||
82 | Identifies the path of a UNIX-domain socket used to communicate | ||
83 | with the agent. | ||
84 | |||
85 | FILES | ||
86 | ~/.ssh/identity | ||
87 | Contains the protocol version 1 RSA authentication identity of | ||
88 | the user. | ||
89 | |||
90 | ~/.ssh/id_dsa | ||
91 | Contains the protocol version 2 DSA authentication identity of | ||
92 | the user. | ||
93 | |||
94 | ~/.ssh/id_ecdsa | ||
95 | Contains the protocol version 2 ECDSA authentication identity of | ||
96 | the user. | ||
97 | |||
98 | ~/.ssh/id_ed25519 | ||
99 | Contains the protocol version 2 ED25519 authentication identity | ||
100 | of the user. | ||
101 | |||
102 | ~/.ssh/id_rsa | ||
103 | Contains the protocol version 2 RSA authentication identity of | ||
104 | the user. | ||
105 | |||
106 | Identity files should not be readable by anyone but the user. Note that | ||
107 | ssh-add ignores identity files if they are accessible by others. | ||
108 | |||
109 | EXIT STATUS | ||
110 | Exit status is 0 on success, 1 if the specified command fails, and 2 if | ||
111 | ssh-add is unable to contact the authentication agent. | ||
112 | |||
113 | SEE ALSO | ||
114 | ssh(1), ssh-agent(1), ssh-keygen(1), sshd(8) | ||
115 | |||
116 | AUTHORS | ||
117 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
118 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
119 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
120 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
121 | versions 1.5 and 2.0. | ||
122 | |||
123 | OpenBSD 5.5 December 7, 2013 OpenBSD 5.5 | ||
diff --git a/ssh-agent.0 b/ssh-agent.0 new file mode 100644 index 000000000..c11523db3 --- /dev/null +++ b/ssh-agent.0 | |||
@@ -0,0 +1,128 @@ | |||
1 | SSH-AGENT(1) OpenBSD Reference Manual SSH-AGENT(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-agent - authentication agent | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-agent [-c | -s] [-d] [-a bind_address] [-t life] [command [arg ...]] | ||
8 | ssh-agent [-c | -s] -k | ||
9 | |||
10 | DESCRIPTION | ||
11 | ssh-agent is a program to hold private keys used for public key | ||
12 | authentication (RSA, DSA, ECDSA, ED25519). The idea is that ssh-agent is | ||
13 | started in the beginning of an X-session or a login session, and all | ||
14 | other windows or programs are started as clients to the ssh-agent | ||
15 | program. Through use of environment variables the agent can be located | ||
16 | and automatically used for authentication when logging in to other | ||
17 | machines using ssh(1). | ||
18 | |||
19 | The options are as follows: | ||
20 | |||
21 | -a bind_address | ||
22 | Bind the agent to the UNIX-domain socket bind_address. The | ||
23 | default is $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>. | ||
24 | |||
25 | -c Generate C-shell commands on stdout. This is the default if | ||
26 | SHELL looks like it's a csh style of shell. | ||
27 | |||
28 | -d Debug mode. When this option is specified ssh-agent will not | ||
29 | fork. | ||
30 | |||
31 | -k Kill the current agent (given by the SSH_AGENT_PID environment | ||
32 | variable). | ||
33 | |||
34 | -s Generate Bourne shell commands on stdout. This is the default if | ||
35 | SHELL does not look like it's a csh style of shell. | ||
36 | |||
37 | -t life | ||
38 | Set a default value for the maximum lifetime of identities added | ||
39 | to the agent. The lifetime may be specified in seconds or in a | ||
40 | time format specified in sshd_config(5). A lifetime specified | ||
41 | for an identity with ssh-add(1) overrides this value. Without | ||
42 | this option the default maximum lifetime is forever. | ||
43 | |||
44 | If a commandline is given, this is executed as a subprocess of the agent. | ||
45 | When the command dies, so does the agent. | ||
46 | |||
47 | The agent initially does not have any private keys. Keys are added using | ||
48 | ssh-add(1). When executed without arguments, ssh-add(1) adds the files | ||
49 | ~/.ssh/id_rsa, ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and | ||
50 | ~/.ssh/identity. If the identity has a passphrase, ssh-add(1) asks for | ||
51 | the passphrase on the terminal if it has one or from a small X11 program | ||
52 | if running under X11. If neither of these is the case then the | ||
53 | authentication will fail. It then sends the identity to the agent. | ||
54 | Several identities can be stored in the agent; the agent can | ||
55 | automatically use any of these identities. ssh-add -l displays the | ||
56 | identities currently held by the agent. | ||
57 | |||
58 | The idea is that the agent is run in the user's local PC, laptop, or | ||
59 | terminal. Authentication data need not be stored on any other machine, | ||
60 | and authentication passphrases never go over the network. However, the | ||
61 | connection to the agent is forwarded over SSH remote logins, and the user | ||
62 | can thus use the privileges given by the identities anywhere in the | ||
63 | network in a secure way. | ||
64 | |||
65 | There are two main ways to get an agent set up: The first is that the | ||
66 | agent starts a new subcommand into which some environment variables are | ||
67 | exported, eg ssh-agent xterm &. The second is that the agent prints the | ||
68 | needed shell commands (either sh(1) or csh(1) syntax can be generated) | ||
69 | which can be evaluated in the calling shell, eg eval `ssh-agent -s` for | ||
70 | Bourne-type shells such as sh(1) or ksh(1) and eval `ssh-agent -c` for | ||
71 | csh(1) and derivatives. | ||
72 | |||
73 | Later ssh(1) looks at these variables and uses them to establish a | ||
74 | connection to the agent. | ||
75 | |||
76 | The agent will never send a private key over its request channel. | ||
77 | Instead, operations that require a private key will be performed by the | ||
78 | agent, and the result will be returned to the requester. This way, | ||
79 | private keys are not exposed to clients using the agent. | ||
80 | |||
81 | A UNIX-domain socket is created and the name of this socket is stored in | ||
82 | the SSH_AUTH_SOCK environment variable. The socket is made accessible | ||
83 | only to the current user. This method is easily abused by root or | ||
84 | another instance of the same user. | ||
85 | |||
86 | The SSH_AGENT_PID environment variable holds the agent's process ID. | ||
87 | |||
88 | The agent exits automatically when the command given on the command line | ||
89 | terminates. | ||
90 | |||
91 | FILES | ||
92 | ~/.ssh/identity | ||
93 | Contains the protocol version 1 RSA authentication identity of | ||
94 | the user. | ||
95 | |||
96 | ~/.ssh/id_dsa | ||
97 | Contains the protocol version 2 DSA authentication identity of | ||
98 | the user. | ||
99 | |||
100 | ~/.ssh/id_ecdsa | ||
101 | Contains the protocol version 2 ECDSA authentication identity of | ||
102 | the user. | ||
103 | |||
104 | ~/.ssh/id_ed25519 | ||
105 | Contains the protocol version 2 ED25519 authentication identity | ||
106 | of the user. | ||
107 | |||
108 | ~/.ssh/id_rsa | ||
109 | Contains the protocol version 2 RSA authentication identity of | ||
110 | the user. | ||
111 | |||
112 | $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid> | ||
113 | UNIX-domain sockets used to contain the connection to the | ||
114 | authentication agent. These sockets should only be readable by | ||
115 | the owner. The sockets should get automatically removed when the | ||
116 | agent exits. | ||
117 | |||
118 | SEE ALSO | ||
119 | ssh(1), ssh-add(1), ssh-keygen(1), sshd(8) | ||
120 | |||
121 | AUTHORS | ||
122 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
123 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
124 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
125 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
126 | versions 1.5 and 2.0. | ||
127 | |||
128 | OpenBSD 5.5 December 7, 2013 OpenBSD 5.5 | ||
diff --git a/ssh-keygen.0 b/ssh-keygen.0 new file mode 100644 index 000000000..c43678ff0 --- /dev/null +++ b/ssh-keygen.0 | |||
@@ -0,0 +1,562 @@ | |||
1 | SSH-KEYGEN(1) OpenBSD Reference Manual SSH-KEYGEN(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-keygen - authentication key generation, management and conversion | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keygen [-q] [-b bits] [-t type] [-N new_passphrase] [-C comment] | ||
8 | [-f output_keyfile] | ||
9 | ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile] | ||
10 | ssh-keygen -i [-m key_format] [-f input_keyfile] | ||
11 | ssh-keygen -e [-m key_format] [-f input_keyfile] | ||
12 | ssh-keygen -y [-f input_keyfile] | ||
13 | ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile] | ||
14 | ssh-keygen -l [-f input_keyfile] | ||
15 | ssh-keygen -B [-f input_keyfile] | ||
16 | ssh-keygen -D pkcs11 | ||
17 | ssh-keygen -F hostname [-f known_hosts_file] [-l] | ||
18 | ssh-keygen -H [-f known_hosts_file] | ||
19 | ssh-keygen -R hostname [-f known_hosts_file] | ||
20 | ssh-keygen -r hostname [-f input_keyfile] [-g] | ||
21 | ssh-keygen -G output_file [-v] [-b bits] [-M memory] [-S start_point] | ||
22 | ssh-keygen -T output_file -f input_file [-v] [-a rounds] [-J num_lines] | ||
23 | [-j start_line] [-K checkpt] [-W generator] | ||
24 | ssh-keygen -s ca_key -I certificate_identity [-h] [-n principals] | ||
25 | [-O option] [-V validity_interval] [-z serial_number] file ... | ||
26 | ssh-keygen -L [-f input_keyfile] | ||
27 | ssh-keygen -A | ||
28 | ssh-keygen -k -f krl_file [-u] [-s ca_public] [-z version_number] | ||
29 | file ... | ||
30 | ssh-keygen -Q -f krl_file file ... | ||
31 | |||
32 | DESCRIPTION | ||
33 | ssh-keygen generates, manages and converts authentication keys for | ||
34 | ssh(1). ssh-keygen can create RSA keys for use by SSH protocol version 1 | ||
35 | and DSA, ECDSA, ED25519 or RSA keys for use by SSH protocol version 2. | ||
36 | The type of key to be generated is specified with the -t option. If | ||
37 | invoked without any arguments, ssh-keygen will generate an RSA key for | ||
38 | use in SSH protocol 2 connections. | ||
39 | |||
40 | ssh-keygen is also used to generate groups for use in Diffie-Hellman | ||
41 | group exchange (DH-GEX). See the MODULI GENERATION section for details. | ||
42 | |||
43 | Finally, ssh-keygen can be used to generate and update Key Revocation | ||
44 | Lists, and to test whether given keys have been revoked by one. See the | ||
45 | KEY REVOCATION LISTS section for details. | ||
46 | |||
47 | Normally each user wishing to use SSH with public key authentication runs | ||
48 | this once to create the authentication key in ~/.ssh/identity, | ||
49 | ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 or ~/.ssh/id_rsa. | ||
50 | Additionally, the system administrator may use this to generate host | ||
51 | keys, as seen in /etc/rc. | ||
52 | |||
53 | Normally this program generates the key and asks for a file in which to | ||
54 | store the private key. The public key is stored in a file with the same | ||
55 | name but ``.pub'' appended. The program also asks for a passphrase. The | ||
56 | passphrase may be empty to indicate no passphrase (host keys must have an | ||
57 | empty passphrase), or it may be a string of arbitrary length. A | ||
58 | passphrase is similar to a password, except it can be a phrase with a | ||
59 | series of words, punctuation, numbers, whitespace, or any string of | ||
60 | characters you want. Good passphrases are 10-30 characters long, are not | ||
61 | simple sentences or otherwise easily guessable (English prose has only | ||
62 | 1-2 bits of entropy per character, and provides very bad passphrases), | ||
63 | and contain a mix of upper and lowercase letters, numbers, and non- | ||
64 | alphanumeric characters. The passphrase can be changed later by using | ||
65 | the -p option. | ||
66 | |||
67 | There is no way to recover a lost passphrase. If the passphrase is lost | ||
68 | or forgotten, a new key must be generated and the corresponding public | ||
69 | key copied to other machines. | ||
70 | |||
71 | For RSA1 keys, there is also a comment field in the key file that is only | ||
72 | for convenience to the user to help identify the key. The comment can | ||
73 | tell what the key is for, or whatever is useful. The comment is | ||
74 | initialized to ``user@host'' when the key is created, but can be changed | ||
75 | using the -c option. | ||
76 | |||
77 | After a key is generated, instructions below detail where the keys should | ||
78 | be placed to be activated. | ||
79 | |||
80 | The options are as follows: | ||
81 | |||
82 | -A For each of the key types (rsa1, rsa, dsa, ecdsa and ed25519) for | ||
83 | which host keys do not exist, generate the host keys with the | ||
84 | default key file path, an empty passphrase, default bits for the | ||
85 | key type, and default comment. This is used by /etc/rc to | ||
86 | generate new host keys. | ||
87 | |||
88 | -a rounds | ||
89 | When saving a new-format private key (i.e. an ed25519 key or any | ||
90 | SSH protocol 2 key when the -o flag is set), this option | ||
91 | specifies the number of KDF (key derivation function) rounds | ||
92 | used. Higher numbers result in slower passphrase verification | ||
93 | and increased resistance to brute-force password cracking (should | ||
94 | the keys be stolen). | ||
95 | |||
96 | When screening DH-GEX candidates ( using the -T command). This | ||
97 | option specifies the number of primality tests to perform. | ||
98 | |||
99 | -B Show the bubblebabble digest of specified private or public key | ||
100 | file. | ||
101 | |||
102 | -b bits | ||
103 | Specifies the number of bits in the key to create. For RSA keys, | ||
104 | the minimum size is 768 bits and the default is 2048 bits. | ||
105 | Generally, 2048 bits is considered sufficient. DSA keys must be | ||
106 | exactly 1024 bits as specified by FIPS 186-2. For ECDSA keys, | ||
107 | the -b flag determines the key length by selecting from one of | ||
108 | three elliptic curve sizes: 256, 384 or 521 bits. Attempting to | ||
109 | use bit lengths other than these three values for ECDSA keys will | ||
110 | fail. ED25519 keys have a fixed length and the -b flag will be | ||
111 | ignored. | ||
112 | |||
113 | -C comment | ||
114 | Provides a new comment. | ||
115 | |||
116 | -c Requests changing the comment in the private and public key | ||
117 | files. This operation is only supported for RSA1 keys. The | ||
118 | program will prompt for the file containing the private keys, for | ||
119 | the passphrase if the key has one, and for the new comment. | ||
120 | |||
121 | -D pkcs11 | ||
122 | Download the RSA public keys provided by the PKCS#11 shared | ||
123 | library pkcs11. When used in combination with -s, this option | ||
124 | indicates that a CA key resides in a PKCS#11 token (see the | ||
125 | CERTIFICATES section for details). | ||
126 | |||
127 | -e This option will read a private or public OpenSSH key file and | ||
128 | print to stdout the key in one of the formats specified by the -m | ||
129 | option. The default export format is ``RFC4716''. This option | ||
130 | allows exporting OpenSSH keys for use by other programs, | ||
131 | including several commercial SSH implementations. | ||
132 | |||
133 | -F hostname | ||
134 | Search for the specified hostname in a known_hosts file, listing | ||
135 | any occurrences found. This option is useful to find hashed host | ||
136 | names or addresses and may also be used in conjunction with the | ||
137 | -H option to print found keys in a hashed format. | ||
138 | |||
139 | -f filename | ||
140 | Specifies the filename of the key file. | ||
141 | |||
142 | -G output_file | ||
143 | Generate candidate primes for DH-GEX. These primes must be | ||
144 | screened for safety (using the -T option) before use. | ||
145 | |||
146 | -g Use generic DNS format when printing fingerprint resource records | ||
147 | using the -r command. | ||
148 | |||
149 | -H Hash a known_hosts file. This replaces all hostnames and | ||
150 | addresses with hashed representations within the specified file; | ||
151 | the original content is moved to a file with a .old suffix. | ||
152 | These hashes may be used normally by ssh and sshd, but they do | ||
153 | not reveal identifying information should the file's contents be | ||
154 | disclosed. This option will not modify existing hashed hostnames | ||
155 | and is therefore safe to use on files that mix hashed and non- | ||
156 | hashed names. | ||
157 | |||
158 | -h When signing a key, create a host certificate instead of a user | ||
159 | certificate. Please see the CERTIFICATES section for details. | ||
160 | |||
161 | -I certificate_identity | ||
162 | Specify the key identity when signing a public key. Please see | ||
163 | the CERTIFICATES section for details. | ||
164 | |||
165 | -i This option will read an unencrypted private (or public) key file | ||
166 | in the format specified by the -m option and print an OpenSSH | ||
167 | compatible private (or public) key to stdout. | ||
168 | |||
169 | -J num_lines | ||
170 | Exit after screening the specified number of lines while | ||
171 | performing DH candidate screening using the -T option. | ||
172 | |||
173 | -j start_line | ||
174 | Start screening at the specified line number while performing DH | ||
175 | candidate screening using the -T option. | ||
176 | |||
177 | -K checkpt | ||
178 | Write the last line processed to the file checkpt while | ||
179 | performing DH candidate screening using the -T option. This will | ||
180 | be used to skip lines in the input file that have already been | ||
181 | processed if the job is restarted. This option allows importing | ||
182 | keys from other software, including several commercial SSH | ||
183 | implementations. The default import format is ``RFC4716''. | ||
184 | |||
185 | -k Generate a KRL file. In this mode, ssh-keygen will generate a | ||
186 | KRL file at the location specified via the -f flag that revokes | ||
187 | every key or certificate presented on the command line. | ||
188 | Keys/certificates to be revoked may be specified by public key | ||
189 | file or using the format described in the KEY REVOCATION LISTS | ||
190 | section. | ||
191 | |||
192 | -L Prints the contents of a certificate. | ||
193 | |||
194 | -l Show fingerprint of specified public key file. Private RSA1 keys | ||
195 | are also supported. For RSA and DSA keys ssh-keygen tries to | ||
196 | find the matching public key file and prints its fingerprint. If | ||
197 | combined with -v, an ASCII art representation of the key is | ||
198 | supplied with the fingerprint. | ||
199 | |||
200 | -M memory | ||
201 | Specify the amount of memory to use (in megabytes) when | ||
202 | generating candidate moduli for DH-GEX. | ||
203 | |||
204 | -m key_format | ||
205 | Specify a key format for the -i (import) or -e (export) | ||
206 | conversion options. The supported key formats are: ``RFC4716'' | ||
207 | (RFC 4716/SSH2 public or private key), ``PKCS8'' (PEM PKCS8 | ||
208 | public key) or ``PEM'' (PEM public key). The default conversion | ||
209 | format is ``RFC4716''. | ||
210 | |||
211 | -N new_passphrase | ||
212 | Provides the new passphrase. | ||
213 | |||
214 | -n principals | ||
215 | Specify one or more principals (user or host names) to be | ||
216 | included in a certificate when signing a key. Multiple | ||
217 | principals may be specified, separated by commas. Please see the | ||
218 | CERTIFICATES section for details. | ||
219 | |||
220 | -O option | ||
221 | Specify a certificate option when signing a key. This option may | ||
222 | be specified multiple times. Please see the CERTIFICATES section | ||
223 | for details. The options that are valid for user certificates | ||
224 | are: | ||
225 | |||
226 | clear Clear all enabled permissions. This is useful for | ||
227 | clearing the default set of permissions so permissions | ||
228 | may be added individually. | ||
229 | |||
230 | force-command=command | ||
231 | Forces the execution of command instead of any shell or | ||
232 | command specified by the user when the certificate is | ||
233 | used for authentication. | ||
234 | |||
235 | no-agent-forwarding | ||
236 | Disable ssh-agent(1) forwarding (permitted by default). | ||
237 | |||
238 | no-port-forwarding | ||
239 | Disable port forwarding (permitted by default). | ||
240 | |||
241 | no-pty Disable PTY allocation (permitted by default). | ||
242 | |||
243 | no-user-rc | ||
244 | Disable execution of ~/.ssh/rc by sshd(8) (permitted by | ||
245 | default). | ||
246 | |||
247 | no-x11-forwarding | ||
248 | Disable X11 forwarding (permitted by default). | ||
249 | |||
250 | permit-agent-forwarding | ||
251 | Allows ssh-agent(1) forwarding. | ||
252 | |||
253 | permit-port-forwarding | ||
254 | Allows port forwarding. | ||
255 | |||
256 | permit-pty | ||
257 | Allows PTY allocation. | ||
258 | |||
259 | permit-user-rc | ||
260 | Allows execution of ~/.ssh/rc by sshd(8). | ||
261 | |||
262 | permit-x11-forwarding | ||
263 | Allows X11 forwarding. | ||
264 | |||
265 | source-address=address_list | ||
266 | Restrict the source addresses from which the certificate | ||
267 | is considered valid. The address_list is a comma- | ||
268 | separated list of one or more address/netmask pairs in | ||
269 | CIDR format. | ||
270 | |||
271 | At present, no options are valid for host keys. | ||
272 | |||
273 | -o Causes ssh-keygen to save SSH protocol 2 private keys using the | ||
274 | new OpenSSH format rather than the more compatible PEM format. | ||
275 | The new format has increased resistance to brute-force password | ||
276 | cracking but is not supported by versions of OpenSSH prior to | ||
277 | 6.5. Ed25519 keys always use the new private key format. | ||
278 | |||
279 | -P passphrase | ||
280 | Provides the (old) passphrase. | ||
281 | |||
282 | -p Requests changing the passphrase of a private key file instead of | ||
283 | creating a new private key. The program will prompt for the file | ||
284 | containing the private key, for the old passphrase, and twice for | ||
285 | the new passphrase. | ||
286 | |||
287 | -Q Test whether keys have been revoked in a KRL. | ||
288 | |||
289 | -q Silence ssh-keygen. | ||
290 | |||
291 | -R hostname | ||
292 | Removes all keys belonging to hostname from a known_hosts file. | ||
293 | This option is useful to delete hashed hosts (see the -H option | ||
294 | above). | ||
295 | |||
296 | -r hostname | ||
297 | Print the SSHFP fingerprint resource record named hostname for | ||
298 | the specified public key file. | ||
299 | |||
300 | -S start | ||
301 | Specify start point (in hex) when generating candidate moduli for | ||
302 | DH-GEX. | ||
303 | |||
304 | -s ca_key | ||
305 | Certify (sign) a public key using the specified CA key. Please | ||
306 | see the CERTIFICATES section for details. | ||
307 | |||
308 | When generating a KRL, -s specifies a path to a CA public key | ||
309 | file used to revoke certificates directly by key ID or serial | ||
310 | number. See the KEY REVOCATION LISTS section for details. | ||
311 | |||
312 | -T output_file | ||
313 | Test DH group exchange candidate primes (generated using the -G | ||
314 | option) for safety. | ||
315 | |||
316 | -t type | ||
317 | Specifies the type of key to create. The possible values are | ||
318 | ``rsa1'' for protocol version 1 and ``dsa'', ``ecdsa'', | ||
319 | ``ed25519'', or ``rsa'' for protocol version 2. | ||
320 | |||
321 | -u Update a KRL. When specified with -k, keys listed via the | ||
322 | command line are added to the existing KRL rather than a new KRL | ||
323 | being created. | ||
324 | |||
325 | -V validity_interval | ||
326 | Specify a validity interval when signing a certificate. A | ||
327 | validity interval may consist of a single time, indicating that | ||
328 | the certificate is valid beginning now and expiring at that time, | ||
329 | or may consist of two times separated by a colon to indicate an | ||
330 | explicit time interval. The start time may be specified as a | ||
331 | date in YYYYMMDD format, a time in YYYYMMDDHHMMSS format or a | ||
332 | relative time (to the current time) consisting of a minus sign | ||
333 | followed by a relative time in the format described in the TIME | ||
334 | FORMATS section of sshd_config(5). The end time may be specified | ||
335 | as a YYYYMMDD date, a YYYYMMDDHHMMSS time or a relative time | ||
336 | starting with a plus character. | ||
337 | |||
338 | For example: ``+52w1d'' (valid from now to 52 weeks and one day | ||
339 | from now), ``-4w:+4w'' (valid from four weeks ago to four weeks | ||
340 | from now), ``20100101123000:20110101123000'' (valid from 12:30 | ||
341 | PM, January 1st, 2010 to 12:30 PM, January 1st, 2011), | ||
342 | ``-1d:20110101'' (valid from yesterday to midnight, January 1st, | ||
343 | 2011). | ||
344 | |||
345 | -v Verbose mode. Causes ssh-keygen to print debugging messages | ||
346 | about its progress. This is helpful for debugging moduli | ||
347 | generation. Multiple -v options increase the verbosity. The | ||
348 | maximum is 3. | ||
349 | |||
350 | -W generator | ||
351 | Specify desired generator when testing candidate moduli for DH- | ||
352 | GEX. | ||
353 | |||
354 | -y This option will read a private OpenSSH format file and print an | ||
355 | OpenSSH public key to stdout. | ||
356 | |||
357 | -z serial_number | ||
358 | Specifies a serial number to be embedded in the certificate to | ||
359 | distinguish this certificate from others from the same CA. The | ||
360 | default serial number is zero. | ||
361 | |||
362 | When generating a KRL, the -z flag is used to specify a KRL | ||
363 | version number. | ||
364 | |||
365 | MODULI GENERATION | ||
366 | ssh-keygen may be used to generate groups for the Diffie-Hellman Group | ||
367 | Exchange (DH-GEX) protocol. Generating these groups is a two-step | ||
368 | process: first, candidate primes are generated using a fast, but memory | ||
369 | intensive process. These candidate primes are then tested for | ||
370 | suitability (a CPU-intensive process). | ||
371 | |||
372 | Generation of primes is performed using the -G option. The desired | ||
373 | length of the primes may be specified by the -b option. For example: | ||
374 | |||
375 | # ssh-keygen -G moduli-2048.candidates -b 2048 | ||
376 | |||
377 | By default, the search for primes begins at a random point in the desired | ||
378 | length range. This may be overridden using the -S option, which | ||
379 | specifies a different start point (in hex). | ||
380 | |||
381 | Once a set of candidates have been generated, they must be screened for | ||
382 | suitability. This may be performed using the -T option. In this mode | ||
383 | ssh-keygen will read candidates from standard input (or a file specified | ||
384 | using the -f option). For example: | ||
385 | |||
386 | # ssh-keygen -T moduli-2048 -f moduli-2048.candidates | ||
387 | |||
388 | By default, each candidate will be subjected to 100 primality tests. | ||
389 | This may be overridden using the -a option. The DH generator value will | ||
390 | be chosen automatically for the prime under consideration. If a specific | ||
391 | generator is desired, it may be requested using the -W option. Valid | ||
392 | generator values are 2, 3, and 5. | ||
393 | |||
394 | Screened DH groups may be installed in /etc/moduli. It is important that | ||
395 | this file contains moduli of a range of bit lengths and that both ends of | ||
396 | a connection share common moduli. | ||
397 | |||
398 | CERTIFICATES | ||
399 | ssh-keygen supports signing of keys to produce certificates that may be | ||
400 | used for user or host authentication. Certificates consist of a public | ||
401 | key, some identity information, zero or more principal (user or host) | ||
402 | names and a set of options that are signed by a Certification Authority | ||
403 | (CA) key. Clients or servers may then trust only the CA key and verify | ||
404 | its signature on a certificate rather than trusting many user/host keys. | ||
405 | Note that OpenSSH certificates are a different, and much simpler, format | ||
406 | to the X.509 certificates used in ssl(8). | ||
407 | |||
408 | ssh-keygen supports two types of certificates: user and host. User | ||
409 | certificates authenticate users to servers, whereas host certificates | ||
410 | authenticate server hosts to users. To generate a user certificate: | ||
411 | |||
412 | $ ssh-keygen -s /path/to/ca_key -I key_id /path/to/user_key.pub | ||
413 | |||
414 | The resultant certificate will be placed in /path/to/user_key-cert.pub. | ||
415 | A host certificate requires the -h option: | ||
416 | |||
417 | $ ssh-keygen -s /path/to/ca_key -I key_id -h /path/to/host_key.pub | ||
418 | |||
419 | The host certificate will be output to /path/to/host_key-cert.pub. | ||
420 | |||
421 | It is possible to sign using a CA key stored in a PKCS#11 token by | ||
422 | providing the token library using -D and identifying the CA key by | ||
423 | providing its public half as an argument to -s: | ||
424 | |||
425 | $ ssh-keygen -s ca_key.pub -D libpkcs11.so -I key_id host_key.pub | ||
426 | |||
427 | In all cases, key_id is a "key identifier" that is logged by the server | ||
428 | when the certificate is used for authentication. | ||
429 | |||
430 | Certificates may be limited to be valid for a set of principal | ||
431 | (user/host) names. By default, generated certificates are valid for all | ||
432 | users or hosts. To generate a certificate for a specified set of | ||
433 | principals: | ||
434 | |||
435 | $ ssh-keygen -s ca_key -I key_id -n user1,user2 user_key.pub | ||
436 | $ ssh-keygen -s ca_key -I key_id -h -n host.domain user_key.pub | ||
437 | |||
438 | Additional limitations on the validity and use of user certificates may | ||
439 | be specified through certificate options. A certificate option may | ||
440 | disable features of the SSH session, may be valid only when presented | ||
441 | from particular source addresses or may force the use of a specific | ||
442 | command. For a list of valid certificate options, see the documentation | ||
443 | for the -O option above. | ||
444 | |||
445 | Finally, certificates may be defined with a validity lifetime. The -V | ||
446 | option allows specification of certificate start and end times. A | ||
447 | certificate that is presented at a time outside this range will not be | ||
448 | considered valid. By default, certificates are valid from UNIX Epoch to | ||
449 | the distant future. | ||
450 | |||
451 | For certificates to be used for user or host authentication, the CA | ||
452 | public key must be trusted by sshd(8) or ssh(1). Please refer to those | ||
453 | manual pages for details. | ||
454 | |||
455 | KEY REVOCATION LISTS | ||
456 | ssh-keygen is able to manage OpenSSH format Key Revocation Lists (KRLs). | ||
457 | These binary files specify keys or certificates to be revoked using a | ||
458 | compact format, taking as little as one bit per certificate if they are | ||
459 | being revoked by serial number. | ||
460 | |||
461 | KRLs may be generated using the -k flag. This option reads one or more | ||
462 | files from the command line and generates a new KRL. The files may | ||
463 | either contain a KRL specification (see below) or public keys, listed one | ||
464 | per line. Plain public keys are revoked by listing their hash or | ||
465 | contents in the KRL and certificates revoked by serial number or key ID | ||
466 | (if the serial is zero or not available). | ||
467 | |||
468 | Revoking keys using a KRL specification offers explicit control over the | ||
469 | types of record used to revoke keys and may be used to directly revoke | ||
470 | certificates by serial number or key ID without having the complete | ||
471 | original certificate on hand. A KRL specification consists of lines | ||
472 | containing one of the following directives followed by a colon and some | ||
473 | directive-specific information. | ||
474 | |||
475 | serial: serial_number[-serial_number] | ||
476 | Revokes a certificate with the specified serial number. Serial | ||
477 | numbers are 64-bit values, not including zero and may be | ||
478 | expressed in decimal, hex or octal. If two serial numbers are | ||
479 | specified separated by a hyphen, then the range of serial numbers | ||
480 | including and between each is revoked. The CA key must have been | ||
481 | specified on the ssh-keygen command line using the -s option. | ||
482 | |||
483 | id: key_id | ||
484 | Revokes a certificate with the specified key ID string. The CA | ||
485 | key must have been specified on the ssh-keygen command line using | ||
486 | the -s option. | ||
487 | |||
488 | key: public_key | ||
489 | Revokes the specified key. If a certificate is listed, then it | ||
490 | is revoked as a plain public key. | ||
491 | |||
492 | sha1: public_key | ||
493 | Revokes the specified key by its SHA1 hash. | ||
494 | |||
495 | KRLs may be updated using the -u flag in addition to -k. When this | ||
496 | option is specified, keys listed via the command line are merged into the | ||
497 | KRL, adding to those already there. | ||
498 | |||
499 | It is also possible, given a KRL, to test whether it revokes a particular | ||
500 | key (or keys). The -Q flag will query an existing KRL, testing each key | ||
501 | specified on the commandline. If any key listed on the command line has | ||
502 | been revoked (or an error encountered) then ssh-keygen will exit with a | ||
503 | non-zero exit status. A zero exit status will only be returned if no key | ||
504 | was revoked. | ||
505 | |||
506 | FILES | ||
507 | ~/.ssh/identity | ||
508 | Contains the protocol version 1 RSA authentication identity of | ||
509 | the user. This file should not be readable by anyone but the | ||
510 | user. It is possible to specify a passphrase when generating the | ||
511 | key; that passphrase will be used to encrypt the private part of | ||
512 | this file using 3DES. This file is not automatically accessed by | ||
513 | ssh-keygen but it is offered as the default file for the private | ||
514 | key. ssh(1) will read this file when a login attempt is made. | ||
515 | |||
516 | ~/.ssh/identity.pub | ||
517 | Contains the protocol version 1 RSA public key for | ||
518 | authentication. The contents of this file should be added to | ||
519 | ~/.ssh/authorized_keys on all machines where the user wishes to | ||
520 | log in using RSA authentication. There is no need to keep the | ||
521 | contents of this file secret. | ||
522 | |||
523 | ~/.ssh/id_dsa | ||
524 | ~/.ssh/id_ecdsa | ||
525 | ~/.ssh/id_ed25519 | ||
526 | ~/.ssh/id_rsa | ||
527 | Contains the protocol version 2 DSA, ECDSA, ED25519 or RSA | ||
528 | authentication identity of the user. This file should not be | ||
529 | readable by anyone but the user. It is possible to specify a | ||
530 | passphrase when generating the key; that passphrase will be used | ||
531 | to encrypt the private part of this file using 128-bit AES. This | ||
532 | file is not automatically accessed by ssh-keygen but it is | ||
533 | offered as the default file for the private key. ssh(1) will | ||
534 | read this file when a login attempt is made. | ||
535 | |||
536 | ~/.ssh/id_dsa.pub | ||
537 | ~/.ssh/id_ecdsa.pub | ||
538 | ~/.ssh/id_ed25519.pub | ||
539 | ~/.ssh/id_rsa.pub | ||
540 | Contains the protocol version 2 DSA, ECDSA, ED25519 or RSA public | ||
541 | key for authentication. The contents of this file should be | ||
542 | added to ~/.ssh/authorized_keys on all machines where the user | ||
543 | wishes to log in using public key authentication. There is no | ||
544 | need to keep the contents of this file secret. | ||
545 | |||
546 | /etc/moduli | ||
547 | Contains Diffie-Hellman groups used for DH-GEX. The file format | ||
548 | is described in moduli(5). | ||
549 | |||
550 | SEE ALSO | ||
551 | ssh(1), ssh-add(1), ssh-agent(1), moduli(5), sshd(8) | ||
552 | |||
553 | The Secure Shell (SSH) Public Key File Format, RFC 4716, 2006. | ||
554 | |||
555 | AUTHORS | ||
556 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
557 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
558 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
559 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
560 | versions 1.5 and 2.0. | ||
561 | |||
562 | OpenBSD 5.5 February 5, 2014 OpenBSD 5.5 | ||
diff --git a/ssh-keyscan.0 b/ssh-keyscan.0 new file mode 100644 index 000000000..638c19b48 --- /dev/null +++ b/ssh-keyscan.0 | |||
@@ -0,0 +1,110 @@ | |||
1 | SSH-KEYSCAN(1) OpenBSD Reference Manual SSH-KEYSCAN(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-keyscan - gather ssh public keys | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keyscan [-46Hv] [-f file] [-p port] [-T timeout] [-t type] | ||
8 | [host | addrlist namelist] ... | ||
9 | |||
10 | DESCRIPTION | ||
11 | ssh-keyscan is a utility for gathering the public ssh host keys of a | ||
12 | number of hosts. It was designed to aid in building and verifying | ||
13 | ssh_known_hosts files. ssh-keyscan provides a minimal interface suitable | ||
14 | for use by shell and perl scripts. | ||
15 | |||
16 | ssh-keyscan uses non-blocking socket I/O to contact as many hosts as | ||
17 | possible in parallel, so it is very efficient. The keys from a domain of | ||
18 | 1,000 hosts can be collected in tens of seconds, even when some of those | ||
19 | hosts are down or do not run ssh. For scanning, one does not need login | ||
20 | access to the machines that are being scanned, nor does the scanning | ||
21 | process involve any encryption. | ||
22 | |||
23 | The options are as follows: | ||
24 | |||
25 | -4 Forces ssh-keyscan to use IPv4 addresses only. | ||
26 | |||
27 | -6 Forces ssh-keyscan to use IPv6 addresses only. | ||
28 | |||
29 | -f file | ||
30 | Read hosts or ``addrlist namelist'' pairs from file, one per | ||
31 | line. If - is supplied instead of a filename, ssh-keyscan will | ||
32 | read hosts or ``addrlist namelist'' pairs from the standard | ||
33 | input. | ||
34 | |||
35 | -H Hash all hostnames and addresses in the output. Hashed names may | ||
36 | be used normally by ssh and sshd, but they do not reveal | ||
37 | identifying information should the file's contents be disclosed. | ||
38 | |||
39 | -p port | ||
40 | Port to connect to on the remote host. | ||
41 | |||
42 | -T timeout | ||
43 | Set the timeout for connection attempts. If timeout seconds have | ||
44 | elapsed since a connection was initiated to a host or since the | ||
45 | last time anything was read from that host, then the connection | ||
46 | is closed and the host in question considered unavailable. | ||
47 | Default is 5 seconds. | ||
48 | |||
49 | -t type | ||
50 | Specifies the type of the key to fetch from the scanned hosts. | ||
51 | The possible values are ``rsa1'' for protocol version 1 and | ||
52 | ``dsa'', ``ecdsa'', ``ed25519'', or ``rsa'' for protocol version | ||
53 | 2. Multiple values may be specified by separating them with | ||
54 | commas. The default is to fetch ``rsa'' and ``ecdsa'' keys. | ||
55 | |||
56 | -v Verbose mode. Causes ssh-keyscan to print debugging messages | ||
57 | about its progress. | ||
58 | |||
59 | SECURITY | ||
60 | If an ssh_known_hosts file is constructed using ssh-keyscan without | ||
61 | verifying the keys, users will be vulnerable to man in the middle | ||
62 | attacks. On the other hand, if the security model allows such a risk, | ||
63 | ssh-keyscan can help in the detection of tampered keyfiles or man in the | ||
64 | middle attacks which have begun after the ssh_known_hosts file was | ||
65 | created. | ||
66 | |||
67 | FILES | ||
68 | Input format: | ||
69 | |||
70 | 1.2.3.4,1.2.4.4 name.my.domain,name,n.my.domain,n,1.2.3.4,1.2.4.4 | ||
71 | |||
72 | Output format for rsa1 keys: | ||
73 | |||
74 | host-or-namelist bits exponent modulus | ||
75 | |||
76 | Output format for rsa, dsa and ecdsa keys: | ||
77 | |||
78 | host-or-namelist keytype base64-encoded-key | ||
79 | |||
80 | Where keytype is either ``ecdsa-sha2-nistp256'', ``ecdsa-sha2-nistp384'', | ||
81 | ``ecdsa-sha2-nistp521'', ``ssh-ed25519'', ``ssh-dss'' or ``ssh-rsa''. | ||
82 | |||
83 | /etc/ssh/ssh_known_hosts | ||
84 | |||
85 | EXAMPLES | ||
86 | Print the rsa host key for machine hostname: | ||
87 | |||
88 | $ ssh-keyscan hostname | ||
89 | |||
90 | Find all hosts from the file ssh_hosts which have new or different keys | ||
91 | from those in the sorted file ssh_known_hosts: | ||
92 | |||
93 | $ ssh-keyscan -t rsa,dsa,ecdsa -f ssh_hosts | \ | ||
94 | sort -u - ssh_known_hosts | diff ssh_known_hosts - | ||
95 | |||
96 | SEE ALSO | ||
97 | ssh(1), sshd(8) | ||
98 | |||
99 | AUTHORS | ||
100 | David Mazieres <dm@lcs.mit.edu> wrote the initial version, and Wayne | ||
101 | Davison <wayned@users.sourceforge.net> added support for protocol version | ||
102 | 2. | ||
103 | |||
104 | BUGS | ||
105 | It generates "Connection closed by remote host" messages on the consoles | ||
106 | of all the machines it scans if the server is older than version 2.9. | ||
107 | This is because it opens a connection to the ssh port, reads the public | ||
108 | key, and drops the connection as soon as it gets the key. | ||
109 | |||
110 | OpenBSD 5.5 January 28, 2014 OpenBSD 5.5 | ||
diff --git a/ssh-keysign.0 b/ssh-keysign.0 new file mode 100644 index 000000000..5f18b54e3 --- /dev/null +++ b/ssh-keysign.0 | |||
@@ -0,0 +1,53 @@ | |||
1 | SSH-KEYSIGN(8) OpenBSD System Manager's Manual SSH-KEYSIGN(8) | ||
2 | |||
3 | NAME | ||
4 | ssh-keysign - ssh helper program for host-based authentication | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keysign | ||
8 | |||
9 | DESCRIPTION | ||
10 | ssh-keysign is used by ssh(1) to access the local host keys and generate | ||
11 | the digital signature required during host-based authentication with SSH | ||
12 | protocol version 2. | ||
13 | |||
14 | ssh-keysign is disabled by default and can only be enabled in the global | ||
15 | client configuration file /etc/ssh/ssh_config by setting EnableSSHKeysign | ||
16 | to ``yes''. | ||
17 | |||
18 | ssh-keysign is not intended to be invoked by the user, but from ssh(1). | ||
19 | See ssh(1) and sshd(8) for more information about host-based | ||
20 | authentication. | ||
21 | |||
22 | FILES | ||
23 | /etc/ssh/ssh_config | ||
24 | Controls whether ssh-keysign is enabled. | ||
25 | |||
26 | /etc/ssh/ssh_host_dsa_key | ||
27 | /etc/ssh/ssh_host_ecdsa_key | ||
28 | /etc/ssh/ssh_host_ed25519_key | ||
29 | /etc/ssh/ssh_host_rsa_key | ||
30 | These files contain the private parts of the host keys used to | ||
31 | generate the digital signature. They should be owned by root, | ||
32 | readable only by root, and not accessible to others. Since they | ||
33 | are readable only by root, ssh-keysign must be set-uid root if | ||
34 | host-based authentication is used. | ||
35 | |||
36 | /etc/ssh/ssh_host_dsa_key-cert.pub | ||
37 | /etc/ssh/ssh_host_ecdsa_key-cert.pub | ||
38 | /etc/ssh/ssh_host_ed25519_key-cert.pub | ||
39 | /etc/ssh/ssh_host_rsa_key-cert.pub | ||
40 | If these files exist they are assumed to contain public | ||
41 | certificate information corresponding with the private keys | ||
42 | above. | ||
43 | |||
44 | SEE ALSO | ||
45 | ssh(1), ssh-keygen(1), ssh_config(5), sshd(8) | ||
46 | |||
47 | HISTORY | ||
48 | ssh-keysign first appeared in OpenBSD 3.2. | ||
49 | |||
50 | AUTHORS | ||
51 | Markus Friedl <markus@openbsd.org> | ||
52 | |||
53 | OpenBSD 5.5 December 7, 2013 OpenBSD 5.5 | ||
diff --git a/ssh-pkcs11-helper.0 b/ssh-pkcs11-helper.0 new file mode 100644 index 000000000..20d62f7a9 --- /dev/null +++ b/ssh-pkcs11-helper.0 | |||
@@ -0,0 +1,25 @@ | |||
1 | SSH-PKCS11-HELPER(8) OpenBSD System Manager's Manual SSH-PKCS11-HELPER(8) | ||
2 | |||
3 | NAME | ||
4 | ssh-pkcs11-helper - ssh-agent helper program for PKCS#11 support | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-pkcs11-helper | ||
8 | |||
9 | DESCRIPTION | ||
10 | ssh-pkcs11-helper is used by ssh-agent(1) to access keys provided by a | ||
11 | PKCS#11 token. | ||
12 | |||
13 | ssh-pkcs11-helper is not intended to be invoked by the user, but from | ||
14 | ssh-agent(1). | ||
15 | |||
16 | SEE ALSO | ||
17 | ssh(1), ssh-add(1), ssh-agent(1) | ||
18 | |||
19 | HISTORY | ||
20 | ssh-pkcs11-helper first appeared in OpenBSD 4.7. | ||
21 | |||
22 | AUTHORS | ||
23 | Markus Friedl <markus@openbsd.org> | ||
24 | |||
25 | OpenBSD 5.5 July 16, 2013 OpenBSD 5.5 | ||
@@ -0,0 +1,946 @@ | |||
1 | SSH(1) OpenBSD Reference Manual SSH(1) | ||
2 | |||
3 | NAME | ||
4 | ssh - OpenSSH SSH client (remote login program) | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] | ||
8 | [-D [bind_address:]port] [-E log_file] [-e escape_char] | ||
9 | [-F configfile] [-I pkcs11] [-i identity_file] | ||
10 | [-L [bind_address:]port:host:hostport] [-l login_name] [-m mac_spec] | ||
11 | [-O ctl_cmd] [-o option] [-p port] | ||
12 | [-Q cipher | cipher-auth | mac | kex | key] | ||
13 | [-R [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port] | ||
14 | [-w local_tun[:remote_tun]] [user@]hostname [command] | ||
15 | |||
16 | DESCRIPTION | ||
17 | ssh (SSH client) is a program for logging into a remote machine and for | ||
18 | executing commands on a remote machine. It is intended to replace rlogin | ||
19 | and rsh, and provide secure encrypted communications between two | ||
20 | untrusted hosts over an insecure network. X11 connections and arbitrary | ||
21 | TCP ports can also be forwarded over the secure channel. | ||
22 | |||
23 | ssh connects and logs into the specified hostname (with optional user | ||
24 | name). The user must prove his/her identity to the remote machine using | ||
25 | one of several methods depending on the protocol version used (see | ||
26 | below). | ||
27 | |||
28 | If command is specified, it is executed on the remote host instead of a | ||
29 | login shell. | ||
30 | |||
31 | The options are as follows: | ||
32 | |||
33 | -1 Forces ssh to try protocol version 1 only. | ||
34 | |||
35 | -2 Forces ssh to try protocol version 2 only. | ||
36 | |||
37 | -4 Forces ssh to use IPv4 addresses only. | ||
38 | |||
39 | -6 Forces ssh to use IPv6 addresses only. | ||
40 | |||
41 | -A Enables forwarding of the authentication agent connection. This | ||
42 | can also be specified on a per-host basis in a configuration | ||
43 | file. | ||
44 | |||
45 | Agent forwarding should be enabled with caution. Users with the | ||
46 | ability to bypass file permissions on the remote host (for the | ||
47 | agent's UNIX-domain socket) can access the local agent through | ||
48 | the forwarded connection. An attacker cannot obtain key material | ||
49 | from the agent, however they can perform operations on the keys | ||
50 | that enable them to authenticate using the identities loaded into | ||
51 | the agent. | ||
52 | |||
53 | -a Disables forwarding of the authentication agent connection. | ||
54 | |||
55 | -b bind_address | ||
56 | Use bind_address on the local machine as the source address of | ||
57 | the connection. Only useful on systems with more than one | ||
58 | address. | ||
59 | |||
60 | -C Requests compression of all data (including stdin, stdout, | ||
61 | stderr, and data for forwarded X11 and TCP connections). The | ||
62 | compression algorithm is the same used by gzip(1), and the | ||
63 | ``level'' can be controlled by the CompressionLevel option for | ||
64 | protocol version 1. Compression is desirable on modem lines and | ||
65 | other slow connections, but will only slow down things on fast | ||
66 | networks. The default value can be set on a host-by-host basis | ||
67 | in the configuration files; see the Compression option. | ||
68 | |||
69 | -c cipher_spec | ||
70 | Selects the cipher specification for encrypting the session. | ||
71 | |||
72 | Protocol version 1 allows specification of a single cipher. The | ||
73 | supported values are ``3des'', ``blowfish'', and ``des''. 3des | ||
74 | (triple-des) is an encrypt-decrypt-encrypt triple with three | ||
75 | different keys. It is believed to be secure. blowfish is a fast | ||
76 | block cipher; it appears very secure and is much faster than | ||
77 | 3des. des is only supported in the ssh client for | ||
78 | interoperability with legacy protocol 1 implementations that do | ||
79 | not support the 3des cipher. Its use is strongly discouraged due | ||
80 | to cryptographic weaknesses. The default is ``3des''. | ||
81 | |||
82 | For protocol version 2, cipher_spec is a comma-separated list of | ||
83 | ciphers listed in order of preference. See the Ciphers keyword | ||
84 | in ssh_config(5) for more information. | ||
85 | |||
86 | -D [bind_address:]port | ||
87 | Specifies a local ``dynamic'' application-level port forwarding. | ||
88 | This works by allocating a socket to listen to port on the local | ||
89 | side, optionally bound to the specified bind_address. Whenever a | ||
90 | connection is made to this port, the connection is forwarded over | ||
91 | the secure channel, and the application protocol is then used to | ||
92 | determine where to connect to from the remote machine. Currently | ||
93 | the SOCKS4 and SOCKS5 protocols are supported, and ssh will act | ||
94 | as a SOCKS server. Only root can forward privileged ports. | ||
95 | Dynamic port forwardings can also be specified in the | ||
96 | configuration file. | ||
97 | |||
98 | IPv6 addresses can be specified by enclosing the address in | ||
99 | square brackets. Only the superuser can forward privileged | ||
100 | ports. By default, the local port is bound in accordance with | ||
101 | the GatewayPorts setting. However, an explicit bind_address may | ||
102 | be used to bind the connection to a specific address. The | ||
103 | bind_address of ``localhost'' indicates that the listening port | ||
104 | be bound for local use only, while an empty address or `*' | ||
105 | indicates that the port should be available from all interfaces. | ||
106 | |||
107 | -E log_file | ||
108 | Append debug logs to log_file instead of standard error. | ||
109 | |||
110 | -e escape_char | ||
111 | Sets the escape character for sessions with a pty (default: `~'). | ||
112 | The escape character is only recognized at the beginning of a | ||
113 | line. The escape character followed by a dot (`.') closes the | ||
114 | connection; followed by control-Z suspends the connection; and | ||
115 | followed by itself sends the escape character once. Setting the | ||
116 | character to ``none'' disables any escapes and makes the session | ||
117 | fully transparent. | ||
118 | |||
119 | -F configfile | ||
120 | Specifies an alternative per-user configuration file. If a | ||
121 | configuration file is given on the command line, the system-wide | ||
122 | configuration file (/etc/ssh/ssh_config) will be ignored. The | ||
123 | default for the per-user configuration file is ~/.ssh/config. | ||
124 | |||
125 | -f Requests ssh to go to background just before command execution. | ||
126 | This is useful if ssh is going to ask for passwords or | ||
127 | passphrases, but the user wants it in the background. This | ||
128 | implies -n. The recommended way to start X11 programs at a | ||
129 | remote site is with something like ssh -f host xterm. | ||
130 | |||
131 | If the ExitOnForwardFailure configuration option is set to | ||
132 | ``yes'', then a client started with -f will wait for all remote | ||
133 | port forwards to be successfully established before placing | ||
134 | itself in the background. | ||
135 | |||
136 | -g Allows remote hosts to connect to local forwarded ports. | ||
137 | |||
138 | -I pkcs11 | ||
139 | Specify the PKCS#11 shared library ssh should use to communicate | ||
140 | with a PKCS#11 token providing the user's private RSA key. | ||
141 | |||
142 | -i identity_file | ||
143 | Selects a file from which the identity (private key) for public | ||
144 | key authentication is read. The default is ~/.ssh/identity for | ||
145 | protocol version 1, and ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, | ||
146 | ~/.ssh/id_ed25519 and ~/.ssh/id_rsa for protocol version 2. | ||
147 | Identity files may also be specified on a per-host basis in the | ||
148 | configuration file. It is possible to have multiple -i options | ||
149 | (and multiple identities specified in configuration files). ssh | ||
150 | will also try to load certificate information from the filename | ||
151 | obtained by appending -cert.pub to identity filenames. | ||
152 | |||
153 | -K Enables GSSAPI-based authentication and forwarding (delegation) | ||
154 | of GSSAPI credentials to the server. | ||
155 | |||
156 | -k Disables forwarding (delegation) of GSSAPI credentials to the | ||
157 | server. | ||
158 | |||
159 | -L [bind_address:]port:host:hostport | ||
160 | Specifies that the given port on the local (client) host is to be | ||
161 | forwarded to the given host and port on the remote side. This | ||
162 | works by allocating a socket to listen to port on the local side, | ||
163 | optionally bound to the specified bind_address. Whenever a | ||
164 | connection is made to this port, the connection is forwarded over | ||
165 | the secure channel, and a connection is made to host port | ||
166 | hostport from the remote machine. Port forwardings can also be | ||
167 | specified in the configuration file. IPv6 addresses can be | ||
168 | specified by enclosing the address in square brackets. Only the | ||
169 | superuser can forward privileged ports. By default, the local | ||
170 | port is bound in accordance with the GatewayPorts setting. | ||
171 | However, an explicit bind_address may be used to bind the | ||
172 | connection to a specific address. The bind_address of | ||
173 | ``localhost'' indicates that the listening port be bound for | ||
174 | local use only, while an empty address or `*' indicates that the | ||
175 | port should be available from all interfaces. | ||
176 | |||
177 | -l login_name | ||
178 | Specifies the user to log in as on the remote machine. This also | ||
179 | may be specified on a per-host basis in the configuration file. | ||
180 | |||
181 | -M Places the ssh client into ``master'' mode for connection | ||
182 | sharing. Multiple -M options places ssh into ``master'' mode | ||
183 | with confirmation required before slave connections are accepted. | ||
184 | Refer to the description of ControlMaster in ssh_config(5) for | ||
185 | details. | ||
186 | |||
187 | -m mac_spec | ||
188 | Additionally, for protocol version 2 a comma-separated list of | ||
189 | MAC (message authentication code) algorithms can be specified in | ||
190 | order of preference. See the MACs keyword for more information. | ||
191 | |||
192 | -N Do not execute a remote command. This is useful for just | ||
193 | forwarding ports (protocol version 2 only). | ||
194 | |||
195 | -n Redirects stdin from /dev/null (actually, prevents reading from | ||
196 | stdin). This must be used when ssh is run in the background. A | ||
197 | common trick is to use this to run X11 programs on a remote | ||
198 | machine. For example, ssh -n shadows.cs.hut.fi emacs & will | ||
199 | start an emacs on shadows.cs.hut.fi, and the X11 connection will | ||
200 | be automatically forwarded over an encrypted channel. The ssh | ||
201 | program will be put in the background. (This does not work if | ||
202 | ssh needs to ask for a password or passphrase; see also the -f | ||
203 | option.) | ||
204 | |||
205 | -O ctl_cmd | ||
206 | Control an active connection multiplexing master process. When | ||
207 | the -O option is specified, the ctl_cmd argument is interpreted | ||
208 | and passed to the master process. Valid commands are: ``check'' | ||
209 | (check that the master process is running), ``forward'' (request | ||
210 | forwardings without command execution), ``cancel'' (cancel | ||
211 | forwardings), ``exit'' (request the master to exit), and ``stop'' | ||
212 | (request the master to stop accepting further multiplexing | ||
213 | requests). | ||
214 | |||
215 | -o option | ||
216 | Can be used to give options in the format used in the | ||
217 | configuration file. This is useful for specifying options for | ||
218 | which there is no separate command-line flag. For full details | ||
219 | of the options listed below, and their possible values, see | ||
220 | ssh_config(5). | ||
221 | |||
222 | AddressFamily | ||
223 | BatchMode | ||
224 | BindAddress | ||
225 | CanonicalDomains | ||
226 | CanonicalizeFallbackLocal | ||
227 | CanonicalizeHostname | ||
228 | CanonicalizeMaxDots | ||
229 | CanonicalizePermittedCNAMEs | ||
230 | ChallengeResponseAuthentication | ||
231 | CheckHostIP | ||
232 | Cipher | ||
233 | Ciphers | ||
234 | ClearAllForwardings | ||
235 | Compression | ||
236 | CompressionLevel | ||
237 | ConnectionAttempts | ||
238 | ConnectTimeout | ||
239 | ControlMaster | ||
240 | ControlPath | ||
241 | ControlPersist | ||
242 | DynamicForward | ||
243 | EscapeChar | ||
244 | ExitOnForwardFailure | ||
245 | ForwardAgent | ||
246 | ForwardX11 | ||
247 | ForwardX11Timeout | ||
248 | ForwardX11Trusted | ||
249 | GatewayPorts | ||
250 | GlobalKnownHostsFile | ||
251 | GSSAPIAuthentication | ||
252 | GSSAPIDelegateCredentials | ||
253 | HashKnownHosts | ||
254 | Host | ||
255 | HostbasedAuthentication | ||
256 | HostKeyAlgorithms | ||
257 | HostKeyAlias | ||
258 | HostName | ||
259 | IdentityFile | ||
260 | IdentitiesOnly | ||
261 | IPQoS | ||
262 | KbdInteractiveAuthentication | ||
263 | KbdInteractiveDevices | ||
264 | KexAlgorithms | ||
265 | LocalCommand | ||
266 | LocalForward | ||
267 | LogLevel | ||
268 | MACs | ||
269 | Match | ||
270 | NoHostAuthenticationForLocalhost | ||
271 | NumberOfPasswordPrompts | ||
272 | PasswordAuthentication | ||
273 | PermitLocalCommand | ||
274 | PKCS11Provider | ||
275 | Port | ||
276 | PreferredAuthentications | ||
277 | Protocol | ||
278 | ProxyCommand | ||
279 | ProxyUseFdpass | ||
280 | PubkeyAuthentication | ||
281 | RekeyLimit | ||
282 | RemoteForward | ||
283 | RequestTTY | ||
284 | RhostsRSAAuthentication | ||
285 | RSAAuthentication | ||
286 | SendEnv | ||
287 | ServerAliveInterval | ||
288 | ServerAliveCountMax | ||
289 | StrictHostKeyChecking | ||
290 | TCPKeepAlive | ||
291 | Tunnel | ||
292 | TunnelDevice | ||
293 | UsePrivilegedPort | ||
294 | User | ||
295 | UserKnownHostsFile | ||
296 | VerifyHostKeyDNS | ||
297 | VisualHostKey | ||
298 | XAuthLocation | ||
299 | |||
300 | -p port | ||
301 | Port to connect to on the remote host. This can be specified on | ||
302 | a per-host basis in the configuration file. | ||
303 | |||
304 | -Q cipher | cipher-auth | mac | kex | key | ||
305 | Queries ssh for the algorithms supported for the specified | ||
306 | version 2. The available features are: cipher (supported | ||
307 | symmetric ciphers), cipher-auth (supported symmetric ciphers that | ||
308 | support authenticated encryption), mac (supported message | ||
309 | integrity codes), kex (key exchange algorithms), key (key types). | ||
310 | |||
311 | -q Quiet mode. Causes most warning and diagnostic messages to be | ||
312 | suppressed. | ||
313 | |||
314 | -R [bind_address:]port:host:hostport | ||
315 | Specifies that the given port on the remote (server) host is to | ||
316 | be forwarded to the given host and port on the local side. This | ||
317 | works by allocating a socket to listen to port on the remote | ||
318 | side, and whenever a connection is made to this port, the | ||
319 | connection is forwarded over the secure channel, and a connection | ||
320 | is made to host port hostport from the local machine. | ||
321 | |||
322 | Port forwardings can also be specified in the configuration file. | ||
323 | Privileged ports can be forwarded only when logging in as root on | ||
324 | the remote machine. IPv6 addresses can be specified by enclosing | ||
325 | the address in square brackets. | ||
326 | |||
327 | By default, the listening socket on the server will be bound to | ||
328 | the loopback interface only. This may be overridden by | ||
329 | specifying a bind_address. An empty bind_address, or the address | ||
330 | `*', indicates that the remote socket should listen on all | ||
331 | interfaces. Specifying a remote bind_address will only succeed | ||
332 | if the server's GatewayPorts option is enabled (see | ||
333 | sshd_config(5)). | ||
334 | |||
335 | If the port argument is `0', the listen port will be dynamically | ||
336 | allocated on the server and reported to the client at run time. | ||
337 | When used together with -O forward the allocated port will be | ||
338 | printed to the standard output. | ||
339 | |||
340 | -S ctl_path | ||
341 | Specifies the location of a control socket for connection | ||
342 | sharing, or the string ``none'' to disable connection sharing. | ||
343 | Refer to the description of ControlPath and ControlMaster in | ||
344 | ssh_config(5) for details. | ||
345 | |||
346 | -s May be used to request invocation of a subsystem on the remote | ||
347 | system. Subsystems are a feature of the SSH2 protocol which | ||
348 | facilitate the use of SSH as a secure transport for other | ||
349 | applications (eg. sftp(1)). The subsystem is specified as the | ||
350 | remote command. | ||
351 | |||
352 | -T Disable pseudo-tty allocation. | ||
353 | |||
354 | -t Force pseudo-tty allocation. This can be used to execute | ||
355 | arbitrary screen-based programs on a remote machine, which can be | ||
356 | very useful, e.g. when implementing menu services. Multiple -t | ||
357 | options force tty allocation, even if ssh has no local tty. | ||
358 | |||
359 | -V Display the version number and exit. | ||
360 | |||
361 | -v Verbose mode. Causes ssh to print debugging messages about its | ||
362 | progress. This is helpful in debugging connection, | ||
363 | authentication, and configuration problems. Multiple -v options | ||
364 | increase the verbosity. The maximum is 3. | ||
365 | |||
366 | -W host:port | ||
367 | Requests that standard input and output on the client be | ||
368 | forwarded to host on port over the secure channel. Implies -N, | ||
369 | -T, ExitOnForwardFailure and ClearAllForwardings. Works with | ||
370 | Protocol version 2 only. | ||
371 | |||
372 | -w local_tun[:remote_tun] | ||
373 | Requests tunnel device forwarding with the specified tun(4) | ||
374 | devices between the client (local_tun) and the server | ||
375 | (remote_tun). | ||
376 | |||
377 | The devices may be specified by numerical ID or the keyword | ||
378 | ``any'', which uses the next available tunnel device. If | ||
379 | remote_tun is not specified, it defaults to ``any''. See also | ||
380 | the Tunnel and TunnelDevice directives in ssh_config(5). If the | ||
381 | Tunnel directive is unset, it is set to the default tunnel mode, | ||
382 | which is ``point-to-point''. | ||
383 | |||
384 | -X Enables X11 forwarding. This can also be specified on a per-host | ||
385 | basis in a configuration file. | ||
386 | |||
387 | X11 forwarding should be enabled with caution. Users with the | ||
388 | ability to bypass file permissions on the remote host (for the | ||
389 | user's X authorization database) can access the local X11 display | ||
390 | through the forwarded connection. An attacker may then be able | ||
391 | to perform activities such as keystroke monitoring. | ||
392 | |||
393 | For this reason, X11 forwarding is subjected to X11 SECURITY | ||
394 | extension restrictions by default. Please refer to the ssh -Y | ||
395 | option and the ForwardX11Trusted directive in ssh_config(5) for | ||
396 | more information. | ||
397 | |||
398 | -x Disables X11 forwarding. | ||
399 | |||
400 | -Y Enables trusted X11 forwarding. Trusted X11 forwardings are not | ||
401 | subjected to the X11 SECURITY extension controls. | ||
402 | |||
403 | -y Send log information using the syslog(3) system module. By | ||
404 | default this information is sent to stderr. | ||
405 | |||
406 | ssh may additionally obtain configuration data from a per-user | ||
407 | configuration file and a system-wide configuration file. The file format | ||
408 | and configuration options are described in ssh_config(5). | ||
409 | |||
410 | AUTHENTICATION | ||
411 | The OpenSSH SSH client supports SSH protocols 1 and 2. The default is to | ||
412 | use protocol 2 only, though this can be changed via the Protocol option | ||
413 | in ssh_config(5) or the -1 and -2 options (see above). Both protocols | ||
414 | support similar authentication methods, but protocol 2 is the default | ||
415 | since it provides additional mechanisms for confidentiality (the traffic | ||
416 | is encrypted using AES, 3DES, Blowfish, CAST128, or Arcfour) and | ||
417 | integrity (hmac-md5, hmac-sha1, hmac-sha2-256, hmac-sha2-512, umac-64, | ||
418 | umac-128, hmac-ripemd160). Protocol 1 lacks a strong mechanism for | ||
419 | ensuring the integrity of the connection. | ||
420 | |||
421 | The methods available for authentication are: GSSAPI-based | ||
422 | authentication, host-based authentication, public key authentication, | ||
423 | challenge-response authentication, and password authentication. | ||
424 | Authentication methods are tried in the order specified above, though | ||
425 | protocol 2 has a configuration option to change the default order: | ||
426 | PreferredAuthentications. | ||
427 | |||
428 | Host-based authentication works as follows: If the machine the user logs | ||
429 | in from is listed in /etc/hosts.equiv or /etc/shosts.equiv on the remote | ||
430 | machine, and the user names are the same on both sides, or if the files | ||
431 | ~/.rhosts or ~/.shosts exist in the user's home directory on the remote | ||
432 | machine and contain a line containing the name of the client machine and | ||
433 | the name of the user on that machine, the user is considered for login. | ||
434 | Additionally, the server must be able to verify the client's host key | ||
435 | (see the description of /etc/ssh/ssh_known_hosts and ~/.ssh/known_hosts, | ||
436 | below) for login to be permitted. This authentication method closes | ||
437 | security holes due to IP spoofing, DNS spoofing, and routing spoofing. | ||
438 | [Note to the administrator: /etc/hosts.equiv, ~/.rhosts, and the | ||
439 | rlogin/rsh protocol in general, are inherently insecure and should be | ||
440 | disabled if security is desired.] | ||
441 | |||
442 | Public key authentication works as follows: The scheme is based on | ||
443 | public-key cryptography, using cryptosystems where encryption and | ||
444 | decryption are done using separate keys, and it is unfeasible to derive | ||
445 | the decryption key from the encryption key. The idea is that each user | ||
446 | creates a public/private key pair for authentication purposes. The | ||
447 | server knows the public key, and only the user knows the private key. | ||
448 | ssh implements public key authentication protocol automatically, using | ||
449 | one of the DSA, ECDSA, ED25519 or RSA algorithms. Protocol 1 is | ||
450 | restricted to using only RSA keys, but protocol 2 may use any. The | ||
451 | HISTORY section of ssl(8) contains a brief discussion of the DSA and RSA | ||
452 | algorithms. | ||
453 | |||
454 | The file ~/.ssh/authorized_keys lists the public keys that are permitted | ||
455 | for logging in. When the user logs in, the ssh program tells the server | ||
456 | which key pair it would like to use for authentication. The client | ||
457 | proves that it has access to the private key and the server checks that | ||
458 | the corresponding public key is authorized to accept the account. | ||
459 | |||
460 | The user creates his/her key pair by running ssh-keygen(1). This stores | ||
461 | the private key in ~/.ssh/identity (protocol 1), ~/.ssh/id_dsa (protocol | ||
462 | 2 DSA), ~/.ssh/id_ecdsa (protocol 2 ECDSA), ~/.ssh/id_ed25519 (protocol 2 | ||
463 | ED25519), or ~/.ssh/id_rsa (protocol 2 RSA) and stores the public key in | ||
464 | ~/.ssh/identity.pub (protocol 1), ~/.ssh/id_dsa.pub (protocol 2 DSA), | ||
465 | ~/.ssh/id_ecdsa.pub (protocol 2 ECDSA), ~/.ssh/id_ed25519.pub (protocol 2 | ||
466 | ED25519), or ~/.ssh/id_rsa.pub (protocol 2 RSA) in the user's home | ||
467 | directory. The user should then copy the public key to | ||
468 | ~/.ssh/authorized_keys in his/her home directory on the remote machine. | ||
469 | The authorized_keys file corresponds to the conventional ~/.rhosts file, | ||
470 | and has one key per line, though the lines can be very long. After this, | ||
471 | the user can log in without giving the password. | ||
472 | |||
473 | A variation on public key authentication is available in the form of | ||
474 | certificate authentication: instead of a set of public/private keys, | ||
475 | signed certificates are used. This has the advantage that a single | ||
476 | trusted certification authority can be used in place of many | ||
477 | public/private keys. See the CERTIFICATES section of ssh-keygen(1) for | ||
478 | more information. | ||
479 | |||
480 | The most convenient way to use public key or certificate authentication | ||
481 | may be with an authentication agent. See ssh-agent(1) for more | ||
482 | information. | ||
483 | |||
484 | Challenge-response authentication works as follows: The server sends an | ||
485 | arbitrary "challenge" text, and prompts for a response. Protocol 2 | ||
486 | allows multiple challenges and responses; protocol 1 is restricted to | ||
487 | just one challenge/response. Examples of challenge-response | ||
488 | authentication include BSD Authentication (see login.conf(5)) and PAM | ||
489 | (some non-OpenBSD systems). | ||
490 | |||
491 | Finally, if other authentication methods fail, ssh prompts the user for a | ||
492 | password. The password is sent to the remote host for checking; however, | ||
493 | since all communications are encrypted, the password cannot be seen by | ||
494 | someone listening on the network. | ||
495 | |||
496 | ssh automatically maintains and checks a database containing | ||
497 | identification for all hosts it has ever been used with. Host keys are | ||
498 | stored in ~/.ssh/known_hosts in the user's home directory. Additionally, | ||
499 | the file /etc/ssh/ssh_known_hosts is automatically checked for known | ||
500 | hosts. Any new hosts are automatically added to the user's file. If a | ||
501 | host's identification ever changes, ssh warns about this and disables | ||
502 | password authentication to prevent server spoofing or man-in-the-middle | ||
503 | attacks, which could otherwise be used to circumvent the encryption. The | ||
504 | StrictHostKeyChecking option can be used to control logins to machines | ||
505 | whose host key is not known or has changed. | ||
506 | |||
507 | When the user's identity has been accepted by the server, the server | ||
508 | either executes the given command, or logs into the machine and gives the | ||
509 | user a normal shell on the remote machine. All communication with the | ||
510 | remote command or shell will be automatically encrypted. | ||
511 | |||
512 | If a pseudo-terminal has been allocated (normal login session), the user | ||
513 | may use the escape characters noted below. | ||
514 | |||
515 | If no pseudo-tty has been allocated, the session is transparent and can | ||
516 | be used to reliably transfer binary data. On most systems, setting the | ||
517 | escape character to ``none'' will also make the session transparent even | ||
518 | if a tty is used. | ||
519 | |||
520 | The session terminates when the command or shell on the remote machine | ||
521 | exits and all X11 and TCP connections have been closed. | ||
522 | |||
523 | ESCAPE CHARACTERS | ||
524 | When a pseudo-terminal has been requested, ssh supports a number of | ||
525 | functions through the use of an escape character. | ||
526 | |||
527 | A single tilde character can be sent as ~~ or by following the tilde by a | ||
528 | character other than those described below. The escape character must | ||
529 | always follow a newline to be interpreted as special. The escape | ||
530 | character can be changed in configuration files using the EscapeChar | ||
531 | configuration directive or on the command line by the -e option. | ||
532 | |||
533 | The supported escapes (assuming the default `~') are: | ||
534 | |||
535 | ~. Disconnect. | ||
536 | |||
537 | ~^Z Background ssh. | ||
538 | |||
539 | ~# List forwarded connections. | ||
540 | |||
541 | ~& Background ssh at logout when waiting for forwarded connection / | ||
542 | X11 sessions to terminate. | ||
543 | |||
544 | ~? Display a list of escape characters. | ||
545 | |||
546 | ~B Send a BREAK to the remote system (only useful for SSH protocol | ||
547 | version 2 and if the peer supports it). | ||
548 | |||
549 | ~C Open command line. Currently this allows the addition of port | ||
550 | forwardings using the -L, -R and -D options (see above). It also | ||
551 | allows the cancellation of existing port-forwardings with | ||
552 | -KL[bind_address:]port for local, -KR[bind_address:]port for | ||
553 | remote and -KD[bind_address:]port for dynamic port-forwardings. | ||
554 | !command allows the user to execute a local command if the | ||
555 | PermitLocalCommand option is enabled in ssh_config(5). Basic | ||
556 | help is available, using the -h option. | ||
557 | |||
558 | ~R Request rekeying of the connection (only useful for SSH protocol | ||
559 | version 2 and if the peer supports it). | ||
560 | |||
561 | ~V Decrease the verbosity (LogLevel) when errors are being written | ||
562 | to stderr. | ||
563 | |||
564 | ~v Increase the verbosity (LogLevel) when errors are being written | ||
565 | to stderr. | ||
566 | |||
567 | TCP FORWARDING | ||
568 | Forwarding of arbitrary TCP connections over the secure channel can be | ||
569 | specified either on the command line or in a configuration file. One | ||
570 | possible application of TCP forwarding is a secure connection to a mail | ||
571 | server; another is going through firewalls. | ||
572 | |||
573 | In the example below, we look at encrypting communication between an IRC | ||
574 | client and server, even though the IRC server does not directly support | ||
575 | encrypted communications. This works as follows: the user connects to | ||
576 | the remote host using ssh, specifying a port to be used to forward | ||
577 | connections to the remote server. After that it is possible to start the | ||
578 | service which is to be encrypted on the client machine, connecting to the | ||
579 | same local port, and ssh will encrypt and forward the connection. | ||
580 | |||
581 | The following example tunnels an IRC session from client machine | ||
582 | ``127.0.0.1'' (localhost) to remote server ``server.example.com'': | ||
583 | |||
584 | $ ssh -f -L 1234:localhost:6667 server.example.com sleep 10 | ||
585 | $ irc -c '#users' -p 1234 pinky 127.0.0.1 | ||
586 | |||
587 | This tunnels a connection to IRC server ``server.example.com'', joining | ||
588 | channel ``#users'', nickname ``pinky'', using port 1234. It doesn't | ||
589 | matter which port is used, as long as it's greater than 1023 (remember, | ||
590 | only root can open sockets on privileged ports) and doesn't conflict with | ||
591 | any ports already in use. The connection is forwarded to port 6667 on | ||
592 | the remote server, since that's the standard port for IRC services. | ||
593 | |||
594 | The -f option backgrounds ssh and the remote command ``sleep 10'' is | ||
595 | specified to allow an amount of time (10 seconds, in the example) to | ||
596 | start the service which is to be tunnelled. If no connections are made | ||
597 | within the time specified, ssh will exit. | ||
598 | |||
599 | X11 FORWARDING | ||
600 | If the ForwardX11 variable is set to ``yes'' (or see the description of | ||
601 | the -X, -x, and -Y options above) and the user is using X11 (the DISPLAY | ||
602 | environment variable is set), the connection to the X11 display is | ||
603 | automatically forwarded to the remote side in such a way that any X11 | ||
604 | programs started from the shell (or command) will go through the | ||
605 | encrypted channel, and the connection to the real X server will be made | ||
606 | from the local machine. The user should not manually set DISPLAY. | ||
607 | Forwarding of X11 connections can be configured on the command line or in | ||
608 | configuration files. | ||
609 | |||
610 | The DISPLAY value set by ssh will point to the server machine, but with a | ||
611 | display number greater than zero. This is normal, and happens because | ||
612 | ssh creates a ``proxy'' X server on the server machine for forwarding the | ||
613 | connections over the encrypted channel. | ||
614 | |||
615 | ssh will also automatically set up Xauthority data on the server machine. | ||
616 | For this purpose, it will generate a random authorization cookie, store | ||
617 | it in Xauthority on the server, and verify that any forwarded connections | ||
618 | carry this cookie and replace it by the real cookie when the connection | ||
619 | is opened. The real authentication cookie is never sent to the server | ||
620 | machine (and no cookies are sent in the plain). | ||
621 | |||
622 | If the ForwardAgent variable is set to ``yes'' (or see the description of | ||
623 | the -A and -a options above) and the user is using an authentication | ||
624 | agent, the connection to the agent is automatically forwarded to the | ||
625 | remote side. | ||
626 | |||
627 | VERIFYING HOST KEYS | ||
628 | When connecting to a server for the first time, a fingerprint of the | ||
629 | server's public key is presented to the user (unless the option | ||
630 | StrictHostKeyChecking has been disabled). Fingerprints can be determined | ||
631 | using ssh-keygen(1): | ||
632 | |||
633 | $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key | ||
634 | |||
635 | If the fingerprint is already known, it can be matched and the key can be | ||
636 | accepted or rejected. Because of the difficulty of comparing host keys | ||
637 | just by looking at hex strings, there is also support to compare host | ||
638 | keys visually, using random art. By setting the VisualHostKey option to | ||
639 | ``yes'', a small ASCII graphic gets displayed on every login to a server, | ||
640 | no matter if the session itself is interactive or not. By learning the | ||
641 | pattern a known server produces, a user can easily find out that the host | ||
642 | key has changed when a completely different pattern is displayed. | ||
643 | Because these patterns are not unambiguous however, a pattern that looks | ||
644 | similar to the pattern remembered only gives a good probability that the | ||
645 | host key is the same, not guaranteed proof. | ||
646 | |||
647 | To get a listing of the fingerprints along with their random art for all | ||
648 | known hosts, the following command line can be used: | ||
649 | |||
650 | $ ssh-keygen -lv -f ~/.ssh/known_hosts | ||
651 | |||
652 | If the fingerprint is unknown, an alternative method of verification is | ||
653 | available: SSH fingerprints verified by DNS. An additional resource | ||
654 | record (RR), SSHFP, is added to a zonefile and the connecting client is | ||
655 | able to match the fingerprint with that of the key presented. | ||
656 | |||
657 | In this example, we are connecting a client to a server, | ||
658 | ``host.example.com''. The SSHFP resource records should first be added | ||
659 | to the zonefile for host.example.com: | ||
660 | |||
661 | $ ssh-keygen -r host.example.com. | ||
662 | |||
663 | The output lines will have to be added to the zonefile. To check that | ||
664 | the zone is answering fingerprint queries: | ||
665 | |||
666 | $ dig -t SSHFP host.example.com | ||
667 | |||
668 | Finally the client connects: | ||
669 | |||
670 | $ ssh -o "VerifyHostKeyDNS ask" host.example.com | ||
671 | [...] | ||
672 | Matching host key fingerprint found in DNS. | ||
673 | Are you sure you want to continue connecting (yes/no)? | ||
674 | |||
675 | See the VerifyHostKeyDNS option in ssh_config(5) for more information. | ||
676 | |||
677 | SSH-BASED VIRTUAL PRIVATE NETWORKS | ||
678 | ssh contains support for Virtual Private Network (VPN) tunnelling using | ||
679 | the tun(4) network pseudo-device, allowing two networks to be joined | ||
680 | securely. The sshd_config(5) configuration option PermitTunnel controls | ||
681 | whether the server supports this, and at what level (layer 2 or 3 | ||
682 | traffic). | ||
683 | |||
684 | The following example would connect client network 10.0.50.0/24 with | ||
685 | remote network 10.0.99.0/24 using a point-to-point connection from | ||
686 | 10.1.1.1 to 10.1.1.2, provided that the SSH server running on the gateway | ||
687 | to the remote network, at 192.168.1.15, allows it. | ||
688 | |||
689 | On the client: | ||
690 | |||
691 | # ssh -f -w 0:1 192.168.1.15 true | ||
692 | # ifconfig tun0 10.1.1.1 10.1.1.2 netmask 255.255.255.252 | ||
693 | # route add 10.0.99.0/24 10.1.1.2 | ||
694 | |||
695 | On the server: | ||
696 | |||
697 | # ifconfig tun1 10.1.1.2 10.1.1.1 netmask 255.255.255.252 | ||
698 | # route add 10.0.50.0/24 10.1.1.1 | ||
699 | |||
700 | Client access may be more finely tuned via the /root/.ssh/authorized_keys | ||
701 | file (see below) and the PermitRootLogin server option. The following | ||
702 | entry would permit connections on tun(4) device 1 from user ``jane'' and | ||
703 | on tun device 2 from user ``john'', if PermitRootLogin is set to | ||
704 | ``forced-commands-only'': | ||
705 | |||
706 | tunnel="1",command="sh /etc/netstart tun1" ssh-rsa ... jane | ||
707 | tunnel="2",command="sh /etc/netstart tun2" ssh-rsa ... john | ||
708 | |||
709 | Since an SSH-based setup entails a fair amount of overhead, it may be | ||
710 | more suited to temporary setups, such as for wireless VPNs. More | ||
711 | permanent VPNs are better provided by tools such as ipsecctl(8) and | ||
712 | isakmpd(8). | ||
713 | |||
714 | ENVIRONMENT | ||
715 | ssh will normally set the following environment variables: | ||
716 | |||
717 | DISPLAY The DISPLAY variable indicates the location of the | ||
718 | X11 server. It is automatically set by ssh to | ||
719 | point to a value of the form ``hostname:n'', where | ||
720 | ``hostname'' indicates the host where the shell | ||
721 | runs, and `n' is an integer >= 1. ssh uses this | ||
722 | special value to forward X11 connections over the | ||
723 | secure channel. The user should normally not set | ||
724 | DISPLAY explicitly, as that will render the X11 | ||
725 | connection insecure (and will require the user to | ||
726 | manually copy any required authorization cookies). | ||
727 | |||
728 | HOME Set to the path of the user's home directory. | ||
729 | |||
730 | LOGNAME Synonym for USER; set for compatibility with | ||
731 | systems that use this variable. | ||
732 | |||
733 | MAIL Set to the path of the user's mailbox. | ||
734 | |||
735 | PATH Set to the default PATH, as specified when | ||
736 | compiling ssh. | ||
737 | |||
738 | SSH_ASKPASS If ssh needs a passphrase, it will read the | ||
739 | passphrase from the current terminal if it was run | ||
740 | from a terminal. If ssh does not have a terminal | ||
741 | associated with it but DISPLAY and SSH_ASKPASS are | ||
742 | set, it will execute the program specified by | ||
743 | SSH_ASKPASS and open an X11 window to read the | ||
744 | passphrase. This is particularly useful when | ||
745 | calling ssh from a .xsession or related script. | ||
746 | (Note that on some machines it may be necessary to | ||
747 | redirect the input from /dev/null to make this | ||
748 | work.) | ||
749 | |||
750 | SSH_AUTH_SOCK Identifies the path of a UNIX-domain socket used to | ||
751 | communicate with the agent. | ||
752 | |||
753 | SSH_CONNECTION Identifies the client and server ends of the | ||
754 | connection. The variable contains four space- | ||
755 | separated values: client IP address, client port | ||
756 | number, server IP address, and server port number. | ||
757 | |||
758 | SSH_ORIGINAL_COMMAND This variable contains the original command line if | ||
759 | a forced command is executed. It can be used to | ||
760 | extract the original arguments. | ||
761 | |||
762 | SSH_TTY This is set to the name of the tty (path to the | ||
763 | device) associated with the current shell or | ||
764 | command. If the current session has no tty, this | ||
765 | variable is not set. | ||
766 | |||
767 | TZ This variable is set to indicate the present time | ||
768 | zone if it was set when the daemon was started | ||
769 | (i.e. the daemon passes the value on to new | ||
770 | connections). | ||
771 | |||
772 | USER Set to the name of the user logging in. | ||
773 | |||
774 | Additionally, ssh reads ~/.ssh/environment, and adds lines of the format | ||
775 | ``VARNAME=value'' to the environment if the file exists and users are | ||
776 | allowed to change their environment. For more information, see the | ||
777 | PermitUserEnvironment option in sshd_config(5). | ||
778 | |||
779 | FILES | ||
780 | ~/.rhosts | ||
781 | This file is used for host-based authentication (see above). On | ||
782 | some machines this file may need to be world-readable if the | ||
783 | user's home directory is on an NFS partition, because sshd(8) | ||
784 | reads it as root. Additionally, this file must be owned by the | ||
785 | user, and must not have write permissions for anyone else. The | ||
786 | recommended permission for most machines is read/write for the | ||
787 | user, and not accessible by others. | ||
788 | |||
789 | ~/.shosts | ||
790 | This file is used in exactly the same way as .rhosts, but allows | ||
791 | host-based authentication without permitting login with | ||
792 | rlogin/rsh. | ||
793 | |||
794 | ~/.ssh/ | ||
795 | This directory is the default location for all user-specific | ||
796 | configuration and authentication information. There is no | ||
797 | general requirement to keep the entire contents of this directory | ||
798 | secret, but the recommended permissions are read/write/execute | ||
799 | for the user, and not accessible by others. | ||
800 | |||
801 | ~/.ssh/authorized_keys | ||
802 | Lists the public keys (DSA, ECDSA, ED25519, RSA) that can be used | ||
803 | for logging in as this user. The format of this file is | ||
804 | described in the sshd(8) manual page. This file is not highly | ||
805 | sensitive, but the recommended permissions are read/write for the | ||
806 | user, and not accessible by others. | ||
807 | |||
808 | ~/.ssh/config | ||
809 | This is the per-user configuration file. The file format and | ||
810 | configuration options are described in ssh_config(5). Because of | ||
811 | the potential for abuse, this file must have strict permissions: | ||
812 | read/write for the user, and not writable by others. | ||
813 | |||
814 | ~/.ssh/environment | ||
815 | Contains additional definitions for environment variables; see | ||
816 | ENVIRONMENT, above. | ||
817 | |||
818 | ~/.ssh/identity | ||
819 | ~/.ssh/id_dsa | ||
820 | ~/.ssh/id_ecdsa | ||
821 | ~/.ssh/id_ed25519 | ||
822 | ~/.ssh/id_rsa | ||
823 | Contains the private key for authentication. These files contain | ||
824 | sensitive data and should be readable by the user but not | ||
825 | accessible by others (read/write/execute). ssh will simply | ||
826 | ignore a private key file if it is accessible by others. It is | ||
827 | possible to specify a passphrase when generating the key which | ||
828 | will be used to encrypt the sensitive part of this file using | ||
829 | 3DES. | ||
830 | |||
831 | ~/.ssh/identity.pub | ||
832 | ~/.ssh/id_dsa.pub | ||
833 | ~/.ssh/id_ecdsa.pub | ||
834 | ~/.ssh/id_ed25519.pub | ||
835 | ~/.ssh/id_rsa.pub | ||
836 | Contains the public key for authentication. These files are not | ||
837 | sensitive and can (but need not) be readable by anyone. | ||
838 | |||
839 | ~/.ssh/known_hosts | ||
840 | Contains a list of host keys for all hosts the user has logged | ||
841 | into that are not already in the systemwide list of known host | ||
842 | keys. See sshd(8) for further details of the format of this | ||
843 | file. | ||
844 | |||
845 | ~/.ssh/rc | ||
846 | Commands in this file are executed by ssh when the user logs in, | ||
847 | just before the user's shell (or command) is started. See the | ||
848 | sshd(8) manual page for more information. | ||
849 | |||
850 | /etc/hosts.equiv | ||
851 | This file is for host-based authentication (see above). It | ||
852 | should only be writable by root. | ||
853 | |||
854 | /etc/shosts.equiv | ||
855 | This file is used in exactly the same way as hosts.equiv, but | ||
856 | allows host-based authentication without permitting login with | ||
857 | rlogin/rsh. | ||
858 | |||
859 | /etc/ssh/ssh_config | ||
860 | Systemwide configuration file. The file format and configuration | ||
861 | options are described in ssh_config(5). | ||
862 | |||
863 | /etc/ssh/ssh_host_key | ||
864 | /etc/ssh/ssh_host_dsa_key | ||
865 | /etc/ssh/ssh_host_ecdsa_key | ||
866 | /etc/ssh/ssh_host_ed25519_key | ||
867 | /etc/ssh/ssh_host_rsa_key | ||
868 | These files contain the private parts of the host keys and are | ||
869 | used for host-based authentication. If protocol version 1 is | ||
870 | used, ssh must be setuid root, since the host key is readable | ||
871 | only by root. For protocol version 2, ssh uses ssh-keysign(8) to | ||
872 | access the host keys, eliminating the requirement that ssh be | ||
873 | setuid root when host-based authentication is used. By default | ||
874 | ssh is not setuid root. | ||
875 | |||
876 | /etc/ssh/ssh_known_hosts | ||
877 | Systemwide list of known host keys. This file should be prepared | ||
878 | by the system administrator to contain the public host keys of | ||
879 | all machines in the organization. It should be world-readable. | ||
880 | See sshd(8) for further details of the format of this file. | ||
881 | |||
882 | /etc/ssh/sshrc | ||
883 | Commands in this file are executed by ssh when the user logs in, | ||
884 | just before the user's shell (or command) is started. See the | ||
885 | sshd(8) manual page for more information. | ||
886 | |||
887 | EXIT STATUS | ||
888 | ssh exits with the exit status of the remote command or with 255 if an | ||
889 | error occurred. | ||
890 | |||
891 | SEE ALSO | ||
892 | scp(1), sftp(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh-keyscan(1), | ||
893 | tun(4), hosts.equiv(5), ssh_config(5), ssh-keysign(8), sshd(8) | ||
894 | |||
895 | STANDARDS | ||
896 | S. Lehtinen and C. Lonvick, The Secure Shell (SSH) Protocol Assigned | ||
897 | Numbers, RFC 4250, January 2006. | ||
898 | |||
899 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Protocol Architecture, | ||
900 | RFC 4251, January 2006. | ||
901 | |||
902 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Authentication Protocol, | ||
903 | RFC 4252, January 2006. | ||
904 | |||
905 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Transport Layer | ||
906 | Protocol, RFC 4253, January 2006. | ||
907 | |||
908 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Connection Protocol, RFC | ||
909 | 4254, January 2006. | ||
910 | |||
911 | J. Schlyter and W. Griffin, Using DNS to Securely Publish Secure Shell | ||
912 | (SSH) Key Fingerprints, RFC 4255, January 2006. | ||
913 | |||
914 | F. Cusack and M. Forssen, Generic Message Exchange Authentication for the | ||
915 | Secure Shell Protocol (SSH), RFC 4256, January 2006. | ||
916 | |||
917 | J. Galbraith and P. Remaker, The Secure Shell (SSH) Session Channel Break | ||
918 | Extension, RFC 4335, January 2006. | ||
919 | |||
920 | M. Bellare, T. Kohno, and C. Namprempre, The Secure Shell (SSH) Transport | ||
921 | Layer Encryption Modes, RFC 4344, January 2006. | ||
922 | |||
923 | B. Harris, Improved Arcfour Modes for the Secure Shell (SSH) Transport | ||
924 | Layer Protocol, RFC 4345, January 2006. | ||
925 | |||
926 | M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for | ||
927 | the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006. | ||
928 | |||
929 | J. Galbraith and R. Thayer, The Secure Shell (SSH) Public Key File | ||
930 | Format, RFC 4716, November 2006. | ||
931 | |||
932 | D. Stebila and J. Green, Elliptic Curve Algorithm Integration in the | ||
933 | Secure Shell Transport Layer, RFC 5656, December 2009. | ||
934 | |||
935 | A. Perrig and D. Song, Hash Visualization: a New Technique to improve | ||
936 | Real-World Security, 1999, International Workshop on Cryptographic | ||
937 | Techniques and E-Commerce (CrypTEC '99). | ||
938 | |||
939 | AUTHORS | ||
940 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
941 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
942 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
943 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
944 | versions 1.5 and 2.0. | ||
945 | |||
946 | OpenBSD 5.5 December 7, 2013 OpenBSD 5.5 | ||
diff --git a/ssh_config.0 b/ssh_config.0 new file mode 100644 index 000000000..6fbd10d61 --- /dev/null +++ b/ssh_config.0 | |||
@@ -0,0 +1,889 @@ | |||
1 | SSH_CONFIG(5) OpenBSD Programmer's Manual SSH_CONFIG(5) | ||
2 | |||
3 | NAME | ||
4 | ssh_config - OpenSSH SSH client configuration files | ||
5 | |||
6 | SYNOPSIS | ||
7 | ~/.ssh/config | ||
8 | /etc/ssh/ssh_config | ||
9 | |||
10 | DESCRIPTION | ||
11 | ssh(1) obtains configuration data from the following sources in the | ||
12 | following order: | ||
13 | |||
14 | 1. command-line options | ||
15 | 2. user's configuration file (~/.ssh/config) | ||
16 | 3. system-wide configuration file (/etc/ssh/ssh_config) | ||
17 | |||
18 | For each parameter, the first obtained value will be used. The | ||
19 | configuration files contain sections separated by ``Host'' | ||
20 | specifications, and that section is only applied for hosts that match one | ||
21 | of the patterns given in the specification. The matched host name is the | ||
22 | one given on the command line. | ||
23 | |||
24 | Since the first obtained value for each parameter is used, more host- | ||
25 | specific declarations should be given near the beginning of the file, and | ||
26 | general defaults at the end. | ||
27 | |||
28 | The configuration file has the following format: | ||
29 | |||
30 | Empty lines and lines starting with `#' are comments. Otherwise a line | ||
31 | is of the format ``keyword arguments''. Configuration options may be | ||
32 | separated by whitespace or optional whitespace and exactly one `='; the | ||
33 | latter format is useful to avoid the need to quote whitespace when | ||
34 | specifying configuration options using the ssh, scp, and sftp -o option. | ||
35 | Arguments may optionally be enclosed in double quotes (") in order to | ||
36 | represent arguments containing spaces. | ||
37 | |||
38 | The possible keywords and their meanings are as follows (note that | ||
39 | keywords are case-insensitive and arguments are case-sensitive): | ||
40 | |||
41 | Host Restricts the following declarations (up to the next Host or | ||
42 | Match keyword) to be only for those hosts that match one of the | ||
43 | patterns given after the keyword. If more than one pattern is | ||
44 | provided, they should be separated by whitespace. A single `*' | ||
45 | as a pattern can be used to provide global defaults for all | ||
46 | hosts. The host is the hostname argument given on the command | ||
47 | line (i.e. the name is not converted to a canonicalized host name | ||
48 | before matching). | ||
49 | |||
50 | A pattern entry may be negated by prefixing it with an | ||
51 | exclamation mark (`!'). If a negated entry is matched, then the | ||
52 | Host entry is ignored, regardless of whether any other patterns | ||
53 | on the line match. Negated matches are therefore useful to | ||
54 | provide exceptions for wildcard matches. | ||
55 | |||
56 | See PATTERNS for more information on patterns. | ||
57 | |||
58 | Match Restricts the following declarations (up to the next Host or | ||
59 | Match keyword) to be used only when the conditions following the | ||
60 | Match keyword are satisfied. Match conditions are specified | ||
61 | using one or more keyword/criteria pairs or the single token all | ||
62 | which matches all criteria. The available keywords are: exec, | ||
63 | host, originalhost, user, and localuser. | ||
64 | |||
65 | The exec keyword executes the specified command under the user's | ||
66 | shell. If the command returns a zero exit status then the | ||
67 | condition is considered true. Commands containing whitespace | ||
68 | characters must be quoted. The following character sequences in | ||
69 | the command will be expanded prior to execution: `%L' will be | ||
70 | substituted by the first component of the local host name, `%l' | ||
71 | will be substituted by the local host name (including any domain | ||
72 | name), `%h' will be substituted by the target host name, `%n' | ||
73 | will be substituted by the original target host name specified on | ||
74 | the command-line, `%p' the destination port, `%r' by the remote | ||
75 | login username, and `%u' by the username of the user running | ||
76 | ssh(1). | ||
77 | |||
78 | The other keywords' criteria must be single entries or comma- | ||
79 | separated lists and may use the wildcard and negation operators | ||
80 | described in the PATTERNS section. The criteria for the host | ||
81 | keyword are matched against the target hostname, after any | ||
82 | substitution by the Hostname option. The originalhost keyword | ||
83 | matches against the hostname as it was specified on the command- | ||
84 | line. The user keyword matches against the target username on | ||
85 | the remote host. The localuser keyword matches against the name | ||
86 | of the local user running ssh(1) (this keyword may be useful in | ||
87 | system-wide ssh_config files). | ||
88 | |||
89 | AddressFamily | ||
90 | Specifies which address family to use when connecting. Valid | ||
91 | arguments are ``any'', ``inet'' (use IPv4 only), or ``inet6'' | ||
92 | (use IPv6 only). | ||
93 | |||
94 | BatchMode | ||
95 | If set to ``yes'', passphrase/password querying will be disabled. | ||
96 | This option is useful in scripts and other batch jobs where no | ||
97 | user is present to supply the password. The argument must be | ||
98 | ``yes'' or ``no''. The default is ``no''. | ||
99 | |||
100 | BindAddress | ||
101 | Use the specified address on the local machine as the source | ||
102 | address of the connection. Only useful on systems with more than | ||
103 | one address. Note that this option does not work if | ||
104 | UsePrivilegedPort is set to ``yes''. | ||
105 | |||
106 | CanonicalDomains | ||
107 | When CanonicalizeHostname is enabled, this option specifies the | ||
108 | list of domain suffixes in which to search for the specified | ||
109 | destination host. | ||
110 | |||
111 | CanonicalizeFallbackLocal | ||
112 | Specifies whether to fail with an error when hostname | ||
113 | canonicalization fails. The default, ``yes'', will attempt to | ||
114 | look up the unqualified hostname using the system resolver's | ||
115 | search rules. A value of ``no'' will cause ssh(1) to fail | ||
116 | instantly if CanonicalizeHostname is enabled and the target | ||
117 | hostname cannot be found in any of the domains specified by | ||
118 | CanonicalDomains. | ||
119 | |||
120 | CanonicalizeHostname | ||
121 | Controls whether explicit hostname canonicalization is performed. | ||
122 | The default, ``no'', is not to perform any name rewriting and let | ||
123 | the system resolver handle all hostname lookups. If set to | ||
124 | ``yes'' then, for connections that do not use a ProxyCommand, | ||
125 | ssh(1) will attempt to canonicalize the hostname specified on the | ||
126 | command line using the CanonicalDomains suffixes and | ||
127 | CanonicalizePermittedCNAMEs rules. If CanonicalizeHostname is | ||
128 | set to ``always'', then canonicalization is applied to proxied | ||
129 | connections too. | ||
130 | |||
131 | If this option is enabled and canonicalisation results in the | ||
132 | target hostname changing, then the configuration files are | ||
133 | processed again using the new target name to pick up any new | ||
134 | configuration in matching Host stanzas. | ||
135 | |||
136 | CanonicalizeMaxDots | ||
137 | Specifies the maximum number of dot characters in a hostname | ||
138 | before canonicalization is disabled. The default, ``1'', allows | ||
139 | a single dot (i.e. hostname.subdomain). | ||
140 | |||
141 | CanonicalizePermittedCNAMEs | ||
142 | Specifies rules to determine whether CNAMEs should be followed | ||
143 | when canonicalizing hostnames. The rules consist of one or more | ||
144 | arguments of source_domain_list:target_domain_list, where | ||
145 | source_domain_list is a pattern-list of domains that may follow | ||
146 | CNAMEs in canonicalization, and target_domain_list is a pattern- | ||
147 | list of domains that they may resolve to. | ||
148 | |||
149 | For example, ``*.a.example.com:*.b.example.com,*.c.example.com'' | ||
150 | will allow hostnames matching ``*.a.example.com'' to be | ||
151 | canonicalized to names in the ``*.b.example.com'' or | ||
152 | ``*.c.example.com'' domains. | ||
153 | |||
154 | ChallengeResponseAuthentication | ||
155 | Specifies whether to use challenge-response authentication. The | ||
156 | argument to this keyword must be ``yes'' or ``no''. The default | ||
157 | is ``yes''. | ||
158 | |||
159 | CheckHostIP | ||
160 | If this flag is set to ``yes'', ssh(1) will additionally check | ||
161 | the host IP address in the known_hosts file. This allows ssh to | ||
162 | detect if a host key changed due to DNS spoofing. If the option | ||
163 | is set to ``no'', the check will not be executed. The default is | ||
164 | ``yes''. | ||
165 | |||
166 | Cipher Specifies the cipher to use for encrypting the session in | ||
167 | protocol version 1. Currently, ``blowfish'', ``3des'', and | ||
168 | ``des'' are supported. des is only supported in the ssh(1) | ||
169 | client for interoperability with legacy protocol 1 | ||
170 | implementations that do not support the 3des cipher. Its use is | ||
171 | strongly discouraged due to cryptographic weaknesses. The | ||
172 | default is ``3des''. | ||
173 | |||
174 | Ciphers | ||
175 | Specifies the ciphers allowed for protocol version 2 in order of | ||
176 | preference. Multiple ciphers must be comma-separated. The | ||
177 | supported ciphers are: | ||
178 | |||
179 | ``3des-cbc'', ``aes128-cbc'', ``aes192-cbc'', ``aes256-cbc'', | ||
180 | ``aes128-ctr'', ``aes192-ctr'', ``aes256-ctr'', | ||
181 | ``aes128-gcm@openssh.com'', ``aes256-gcm@openssh.com'', | ||
182 | ``arcfour128'', ``arcfour256'', ``arcfour'', ``blowfish-cbc'', | ||
183 | ``cast128-cbc'', and ``chacha20-poly1305@openssh.com''. | ||
184 | |||
185 | The default is: | ||
186 | |||
187 | aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128, | ||
188 | aes128-gcm@openssh.com,aes256-gcm@openssh.com, | ||
189 | chacha20-poly1305@openssh.com, | ||
190 | aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc, | ||
191 | aes256-cbc,arcfour | ||
192 | |||
193 | The list of available ciphers may also be obtained using the -Q | ||
194 | option of ssh(1). | ||
195 | |||
196 | ClearAllForwardings | ||
197 | Specifies that all local, remote, and dynamic port forwardings | ||
198 | specified in the configuration files or on the command line be | ||
199 | cleared. This option is primarily useful when used from the | ||
200 | ssh(1) command line to clear port forwardings set in | ||
201 | configuration files, and is automatically set by scp(1) and | ||
202 | sftp(1). The argument must be ``yes'' or ``no''. The default is | ||
203 | ``no''. | ||
204 | |||
205 | Compression | ||
206 | Specifies whether to use compression. The argument must be | ||
207 | ``yes'' or ``no''. The default is ``no''. | ||
208 | |||
209 | CompressionLevel | ||
210 | Specifies the compression level to use if compression is enabled. | ||
211 | The argument must be an integer from 1 (fast) to 9 (slow, best). | ||
212 | The default level is 6, which is good for most applications. The | ||
213 | meaning of the values is the same as in gzip(1). Note that this | ||
214 | option applies to protocol version 1 only. | ||
215 | |||
216 | ConnectionAttempts | ||
217 | Specifies the number of tries (one per second) to make before | ||
218 | exiting. The argument must be an integer. This may be useful in | ||
219 | scripts if the connection sometimes fails. The default is 1. | ||
220 | |||
221 | ConnectTimeout | ||
222 | Specifies the timeout (in seconds) used when connecting to the | ||
223 | SSH server, instead of using the default system TCP timeout. | ||
224 | This value is used only when the target is down or really | ||
225 | unreachable, not when it refuses the connection. | ||
226 | |||
227 | ControlMaster | ||
228 | Enables the sharing of multiple sessions over a single network | ||
229 | connection. When set to ``yes'', ssh(1) will listen for | ||
230 | connections on a control socket specified using the ControlPath | ||
231 | argument. Additional sessions can connect to this socket using | ||
232 | the same ControlPath with ControlMaster set to ``no'' (the | ||
233 | default). These sessions will try to reuse the master instance's | ||
234 | network connection rather than initiating new ones, but will fall | ||
235 | back to connecting normally if the control socket does not exist, | ||
236 | or is not listening. | ||
237 | |||
238 | Setting this to ``ask'' will cause ssh to listen for control | ||
239 | connections, but require confirmation using the SSH_ASKPASS | ||
240 | program before they are accepted (see ssh-add(1) for details). | ||
241 | If the ControlPath cannot be opened, ssh will continue without | ||
242 | connecting to a master instance. | ||
243 | |||
244 | X11 and ssh-agent(1) forwarding is supported over these | ||
245 | multiplexed connections, however the display and agent forwarded | ||
246 | will be the one belonging to the master connection i.e. it is not | ||
247 | possible to forward multiple displays or agents. | ||
248 | |||
249 | Two additional options allow for opportunistic multiplexing: try | ||
250 | to use a master connection but fall back to creating a new one if | ||
251 | one does not already exist. These options are: ``auto'' and | ||
252 | ``autoask''. The latter requires confirmation like the ``ask'' | ||
253 | option. | ||
254 | |||
255 | ControlPath | ||
256 | Specify the path to the control socket used for connection | ||
257 | sharing as described in the ControlMaster section above or the | ||
258 | string ``none'' to disable connection sharing. In the path, `%L' | ||
259 | will be substituted by the first component of the local host | ||
260 | name, `%l' will be substituted by the local host name (including | ||
261 | any domain name), `%h' will be substituted by the target host | ||
262 | name, `%n' will be substituted by the original target host name | ||
263 | specified on the command line, `%p' the destination port, `%r' by | ||
264 | the remote login username, and `%u' by the username of the user | ||
265 | running ssh(1). It is recommended that any ControlPath used for | ||
266 | opportunistic connection sharing include at least %h, %p, and %r. | ||
267 | This ensures that shared connections are uniquely identified. | ||
268 | |||
269 | ControlPersist | ||
270 | When used in conjunction with ControlMaster, specifies that the | ||
271 | master connection should remain open in the background (waiting | ||
272 | for future client connections) after the initial client | ||
273 | connection has been closed. If set to ``no'', then the master | ||
274 | connection will not be placed into the background, and will close | ||
275 | as soon as the initial client connection is closed. If set to | ||
276 | ``yes'', then the master connection will remain in the background | ||
277 | indefinitely (until killed or closed via a mechanism such as the | ||
278 | ssh(1) ``-O exit'' option). If set to a time in seconds, or a | ||
279 | time in any of the formats documented in sshd_config(5), then the | ||
280 | backgrounded master connection will automatically terminate after | ||
281 | it has remained idle (with no client connections) for the | ||
282 | specified time. | ||
283 | |||
284 | DynamicForward | ||
285 | Specifies that a TCP port on the local machine be forwarded over | ||
286 | the secure channel, and the application protocol is then used to | ||
287 | determine where to connect to from the remote machine. | ||
288 | |||
289 | The argument must be [bind_address:]port. IPv6 addresses can be | ||
290 | specified by enclosing addresses in square brackets. By default, | ||
291 | the local port is bound in accordance with the GatewayPorts | ||
292 | setting. However, an explicit bind_address may be used to bind | ||
293 | the connection to a specific address. The bind_address of | ||
294 | ``localhost'' indicates that the listening port be bound for | ||
295 | local use only, while an empty address or `*' indicates that the | ||
296 | port should be available from all interfaces. | ||
297 | |||
298 | Currently the SOCKS4 and SOCKS5 protocols are supported, and | ||
299 | ssh(1) will act as a SOCKS server. Multiple forwardings may be | ||
300 | specified, and additional forwardings can be given on the command | ||
301 | line. Only the superuser can forward privileged ports. | ||
302 | |||
303 | EnableSSHKeysign | ||
304 | Setting this option to ``yes'' in the global client configuration | ||
305 | file /etc/ssh/ssh_config enables the use of the helper program | ||
306 | ssh-keysign(8) during HostbasedAuthentication. The argument must | ||
307 | be ``yes'' or ``no''. The default is ``no''. This option should | ||
308 | be placed in the non-hostspecific section. See ssh-keysign(8) | ||
309 | for more information. | ||
310 | |||
311 | EscapeChar | ||
312 | Sets the escape character (default: `~'). The escape character | ||
313 | can also be set on the command line. The argument should be a | ||
314 | single character, `^' followed by a letter, or ``none'' to | ||
315 | disable the escape character entirely (making the connection | ||
316 | transparent for binary data). | ||
317 | |||
318 | ExitOnForwardFailure | ||
319 | Specifies whether ssh(1) should terminate the connection if it | ||
320 | cannot set up all requested dynamic, tunnel, local, and remote | ||
321 | port forwardings. The argument must be ``yes'' or ``no''. The | ||
322 | default is ``no''. | ||
323 | |||
324 | ForwardAgent | ||
325 | Specifies whether the connection to the authentication agent (if | ||
326 | any) will be forwarded to the remote machine. The argument must | ||
327 | be ``yes'' or ``no''. The default is ``no''. | ||
328 | |||
329 | Agent forwarding should be enabled with caution. Users with the | ||
330 | ability to bypass file permissions on the remote host (for the | ||
331 | agent's Unix-domain socket) can access the local agent through | ||
332 | the forwarded connection. An attacker cannot obtain key material | ||
333 | from the agent, however they can perform operations on the keys | ||
334 | that enable them to authenticate using the identities loaded into | ||
335 | the agent. | ||
336 | |||
337 | ForwardX11 | ||
338 | Specifies whether X11 connections will be automatically | ||
339 | redirected over the secure channel and DISPLAY set. The argument | ||
340 | must be ``yes'' or ``no''. The default is ``no''. | ||
341 | |||
342 | X11 forwarding should be enabled with caution. Users with the | ||
343 | ability to bypass file permissions on the remote host (for the | ||
344 | user's X11 authorization database) can access the local X11 | ||
345 | display through the forwarded connection. An attacker may then | ||
346 | be able to perform activities such as keystroke monitoring if the | ||
347 | ForwardX11Trusted option is also enabled. | ||
348 | |||
349 | ForwardX11Timeout | ||
350 | Specify a timeout for untrusted X11 forwarding using the format | ||
351 | described in the TIME FORMATS section of sshd_config(5). X11 | ||
352 | connections received by ssh(1) after this time will be refused. | ||
353 | The default is to disable untrusted X11 forwarding after twenty | ||
354 | minutes has elapsed. | ||
355 | |||
356 | ForwardX11Trusted | ||
357 | If this option is set to ``yes'', remote X11 clients will have | ||
358 | full access to the original X11 display. | ||
359 | |||
360 | If this option is set to ``no'', remote X11 clients will be | ||
361 | considered untrusted and prevented from stealing or tampering | ||
362 | with data belonging to trusted X11 clients. Furthermore, the | ||
363 | xauth(1) token used for the session will be set to expire after | ||
364 | 20 minutes. Remote clients will be refused access after this | ||
365 | time. | ||
366 | |||
367 | The default is ``no''. | ||
368 | |||
369 | See the X11 SECURITY extension specification for full details on | ||
370 | the restrictions imposed on untrusted clients. | ||
371 | |||
372 | GatewayPorts | ||
373 | Specifies whether remote hosts are allowed to connect to local | ||
374 | forwarded ports. By default, ssh(1) binds local port forwardings | ||
375 | to the loopback address. This prevents other remote hosts from | ||
376 | connecting to forwarded ports. GatewayPorts can be used to | ||
377 | specify that ssh should bind local port forwardings to the | ||
378 | wildcard address, thus allowing remote hosts to connect to | ||
379 | forwarded ports. The argument must be ``yes'' or ``no''. The | ||
380 | default is ``no''. | ||
381 | |||
382 | GlobalKnownHostsFile | ||
383 | Specifies one or more files to use for the global host key | ||
384 | database, separated by whitespace. The default is | ||
385 | /etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2. | ||
386 | |||
387 | GSSAPIAuthentication | ||
388 | Specifies whether user authentication based on GSSAPI is allowed. | ||
389 | The default is ``no''. Note that this option applies to protocol | ||
390 | version 2 only. | ||
391 | |||
392 | GSSAPIDelegateCredentials | ||
393 | Forward (delegate) credentials to the server. The default is | ||
394 | ``no''. Note that this option applies to protocol version 2 | ||
395 | only. | ||
396 | |||
397 | HashKnownHosts | ||
398 | Indicates that ssh(1) should hash host names and addresses when | ||
399 | they are added to ~/.ssh/known_hosts. These hashed names may be | ||
400 | used normally by ssh(1) and sshd(8), but they do not reveal | ||
401 | identifying information should the file's contents be disclosed. | ||
402 | The default is ``no''. Note that existing names and addresses in | ||
403 | known hosts files will not be converted automatically, but may be | ||
404 | manually hashed using ssh-keygen(1). | ||
405 | |||
406 | HostbasedAuthentication | ||
407 | Specifies whether to try rhosts based authentication with public | ||
408 | key authentication. The argument must be ``yes'' or ``no''. The | ||
409 | default is ``no''. This option applies to protocol version 2 | ||
410 | only and is similar to RhostsRSAAuthentication. | ||
411 | |||
412 | HostKeyAlgorithms | ||
413 | Specifies the protocol version 2 host key algorithms that the | ||
414 | client wants to use in order of preference. The default for this | ||
415 | option is: | ||
416 | |||
417 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
418 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
419 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
420 | ssh-ed25519-cert-v01@openssh.com, | ||
421 | ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com, | ||
422 | ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com, | ||
423 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
424 | ssh-ed25519,ssh-rsa,ssh-dss | ||
425 | |||
426 | If hostkeys are known for the destination host then this default | ||
427 | is modified to prefer their algorithms. | ||
428 | |||
429 | HostKeyAlias | ||
430 | Specifies an alias that should be used instead of the real host | ||
431 | name when looking up or saving the host key in the host key | ||
432 | database files. This option is useful for tunneling SSH | ||
433 | connections or for multiple servers running on a single host. | ||
434 | |||
435 | HostName | ||
436 | Specifies the real host name to log into. This can be used to | ||
437 | specify nicknames or abbreviations for hosts. If the hostname | ||
438 | contains the character sequence `%h', then this will be replaced | ||
439 | with the host name specified on the command line (this is useful | ||
440 | for manipulating unqualified names). The default is the name | ||
441 | given on the command line. Numeric IP addresses are also | ||
442 | permitted (both on the command line and in HostName | ||
443 | specifications). | ||
444 | |||
445 | IdentitiesOnly | ||
446 | Specifies that ssh(1) should only use the authentication identity | ||
447 | files configured in the ssh_config files, even if ssh-agent(1) or | ||
448 | a PKCS11Provider offers more identities. The argument to this | ||
449 | keyword must be ``yes'' or ``no''. This option is intended for | ||
450 | situations where ssh-agent offers many different identities. The | ||
451 | default is ``no''. | ||
452 | |||
453 | IdentityFile | ||
454 | Specifies a file from which the user's DSA, ECDSA, ED25519 or RSA | ||
455 | authentication identity is read. The default is ~/.ssh/identity | ||
456 | for protocol version 1, and ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, | ||
457 | ~/.ssh/id_ed25519 and ~/.ssh/id_rsa for protocol version 2. | ||
458 | Additionally, any identities represented by the authentication | ||
459 | agent will be used for authentication unless IdentitiesOnly is | ||
460 | set. ssh(1) will try to load certificate information from the | ||
461 | filename obtained by appending -cert.pub to the path of a | ||
462 | specified IdentityFile. | ||
463 | |||
464 | The file name may use the tilde syntax to refer to a user's home | ||
465 | directory or one of the following escape characters: `%d' (local | ||
466 | user's home directory), `%u' (local user name), `%l' (local host | ||
467 | name), `%h' (remote host name) or `%r' (remote user name). | ||
468 | |||
469 | It is possible to have multiple identity files specified in | ||
470 | configuration files; all these identities will be tried in | ||
471 | sequence. Multiple IdentityFile directives will add to the list | ||
472 | of identities tried (this behaviour differs from that of other | ||
473 | configuration directives). | ||
474 | |||
475 | IdentityFile may be used in conjunction with IdentitiesOnly to | ||
476 | select which identities in an agent are offered during | ||
477 | authentication. | ||
478 | |||
479 | IgnoreUnknown | ||
480 | Specifies a pattern-list of unknown options to be ignored if they | ||
481 | are encountered in configuration parsing. This may be used to | ||
482 | suppress errors if ssh_config contains options that are | ||
483 | unrecognised by ssh(1). It is recommended that IgnoreUnknown be | ||
484 | listed early in the configuration file as it will not be applied | ||
485 | to unknown options that appear before it. | ||
486 | |||
487 | IPQoS Specifies the IPv4 type-of-service or DSCP class for connections. | ||
488 | Accepted values are ``af11'', ``af12'', ``af13'', ``af21'', | ||
489 | ``af22'', ``af23'', ``af31'', ``af32'', ``af33'', ``af41'', | ||
490 | ``af42'', ``af43'', ``cs0'', ``cs1'', ``cs2'', ``cs3'', ``cs4'', | ||
491 | ``cs5'', ``cs6'', ``cs7'', ``ef'', ``lowdelay'', ``throughput'', | ||
492 | ``reliability'', or a numeric value. This option may take one or | ||
493 | two arguments, separated by whitespace. If one argument is | ||
494 | specified, it is used as the packet class unconditionally. If | ||
495 | two values are specified, the first is automatically selected for | ||
496 | interactive sessions and the second for non-interactive sessions. | ||
497 | The default is ``lowdelay'' for interactive sessions and | ||
498 | ``throughput'' for non-interactive sessions. | ||
499 | |||
500 | KbdInteractiveAuthentication | ||
501 | Specifies whether to use keyboard-interactive authentication. | ||
502 | The argument to this keyword must be ``yes'' or ``no''. The | ||
503 | default is ``yes''. | ||
504 | |||
505 | KbdInteractiveDevices | ||
506 | Specifies the list of methods to use in keyboard-interactive | ||
507 | authentication. Multiple method names must be comma-separated. | ||
508 | The default is to use the server specified list. The methods | ||
509 | available vary depending on what the server supports. For an | ||
510 | OpenSSH server, it may be zero or more of: ``bsdauth'', ``pam'', | ||
511 | and ``skey''. | ||
512 | |||
513 | KexAlgorithms | ||
514 | Specifies the available KEX (Key Exchange) algorithms. Multiple | ||
515 | algorithms must be comma-separated. The default is: | ||
516 | |||
517 | curve25519-sha256@libssh.org, | ||
518 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | ||
519 | diffie-hellman-group-exchange-sha256, | ||
520 | diffie-hellman-group-exchange-sha1, | ||
521 | diffie-hellman-group14-sha1, | ||
522 | diffie-hellman-group1-sha1 | ||
523 | |||
524 | LocalCommand | ||
525 | Specifies a command to execute on the local machine after | ||
526 | successfully connecting to the server. The command string | ||
527 | extends to the end of the line, and is executed with the user's | ||
528 | shell. The following escape character substitutions will be | ||
529 | performed: `%d' (local user's home directory), `%h' (remote host | ||
530 | name), `%l' (local host name), `%n' (host name as provided on the | ||
531 | command line), `%p' (remote port), `%r' (remote user name) or | ||
532 | `%u' (local user name). | ||
533 | |||
534 | The command is run synchronously and does not have access to the | ||
535 | session of the ssh(1) that spawned it. It should not be used for | ||
536 | interactive commands. | ||
537 | |||
538 | This directive is ignored unless PermitLocalCommand has been | ||
539 | enabled. | ||
540 | |||
541 | LocalForward | ||
542 | Specifies that a TCP port on the local machine be forwarded over | ||
543 | the secure channel to the specified host and port from the remote | ||
544 | machine. The first argument must be [bind_address:]port and the | ||
545 | second argument must be host:hostport. IPv6 addresses can be | ||
546 | specified by enclosing addresses in square brackets. Multiple | ||
547 | forwardings may be specified, and additional forwardings can be | ||
548 | given on the command line. Only the superuser can forward | ||
549 | privileged ports. By default, the local port is bound in | ||
550 | accordance with the GatewayPorts setting. However, an explicit | ||
551 | bind_address may be used to bind the connection to a specific | ||
552 | address. The bind_address of ``localhost'' indicates that the | ||
553 | listening port be bound for local use only, while an empty | ||
554 | address or `*' indicates that the port should be available from | ||
555 | all interfaces. | ||
556 | |||
557 | LogLevel | ||
558 | Gives the verbosity level that is used when logging messages from | ||
559 | ssh(1). The possible values are: QUIET, FATAL, ERROR, INFO, | ||
560 | VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO. | ||
561 | DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify | ||
562 | higher levels of verbose output. | ||
563 | |||
564 | MACs Specifies the MAC (message authentication code) algorithms in | ||
565 | order of preference. The MAC algorithm is used in protocol | ||
566 | version 2 for data integrity protection. Multiple algorithms | ||
567 | must be comma-separated. The algorithms that contain ``-etm'' | ||
568 | calculate the MAC after encryption (encrypt-then-mac). These are | ||
569 | considered safer and their use recommended. The default is: | ||
570 | |||
571 | hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com, | ||
572 | umac-64-etm@openssh.com,umac-128-etm@openssh.com, | ||
573 | hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, | ||
574 | hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com, | ||
575 | hmac-md5-96-etm@openssh.com, | ||
576 | hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com, | ||
577 | hmac-sha2-256,hmac-sha2-512,hmac-ripemd160, | ||
578 | hmac-sha1-96,hmac-md5-96 | ||
579 | |||
580 | NoHostAuthenticationForLocalhost | ||
581 | This option can be used if the home directory is shared across | ||
582 | machines. In this case localhost will refer to a different | ||
583 | machine on each of the machines and the user will get many | ||
584 | warnings about changed host keys. However, this option disables | ||
585 | host authentication for localhost. The argument to this keyword | ||
586 | must be ``yes'' or ``no''. The default is to check the host key | ||
587 | for localhost. | ||
588 | |||
589 | NumberOfPasswordPrompts | ||
590 | Specifies the number of password prompts before giving up. The | ||
591 | argument to this keyword must be an integer. The default is 3. | ||
592 | |||
593 | PasswordAuthentication | ||
594 | Specifies whether to use password authentication. The argument | ||
595 | to this keyword must be ``yes'' or ``no''. The default is | ||
596 | ``yes''. | ||
597 | |||
598 | PermitLocalCommand | ||
599 | Allow local command execution via the LocalCommand option or | ||
600 | using the !command escape sequence in ssh(1). The argument must | ||
601 | be ``yes'' or ``no''. The default is ``no''. | ||
602 | |||
603 | PKCS11Provider | ||
604 | Specifies which PKCS#11 provider to use. The argument to this | ||
605 | keyword is the PKCS#11 shared library ssh(1) should use to | ||
606 | communicate with a PKCS#11 token providing the user's private RSA | ||
607 | key. | ||
608 | |||
609 | Port Specifies the port number to connect on the remote host. The | ||
610 | default is 22. | ||
611 | |||
612 | PreferredAuthentications | ||
613 | Specifies the order in which the client should try protocol 2 | ||
614 | authentication methods. This allows a client to prefer one | ||
615 | method (e.g. keyboard-interactive) over another method (e.g. | ||
616 | password). The default is: | ||
617 | |||
618 | gssapi-with-mic,hostbased,publickey, | ||
619 | keyboard-interactive,password | ||
620 | |||
621 | Protocol | ||
622 | Specifies the protocol versions ssh(1) should support in order of | ||
623 | preference. The possible values are `1' and `2'. Multiple | ||
624 | versions must be comma-separated. When this option is set to | ||
625 | ``2,1'' ssh will try version 2 and fall back to version 1 if | ||
626 | version 2 is not available. The default is `2'. | ||
627 | |||
628 | ProxyCommand | ||
629 | Specifies the command to use to connect to the server. The | ||
630 | command string extends to the end of the line, and is executed | ||
631 | with the user's shell. In the command string, any occurrence of | ||
632 | `%h' will be substituted by the host name to connect, `%p' by the | ||
633 | port, and `%r' by the remote user name. The command can be | ||
634 | basically anything, and should read from its standard input and | ||
635 | write to its standard output. It should eventually connect an | ||
636 | sshd(8) server running on some machine, or execute sshd -i | ||
637 | somewhere. Host key management will be done using the HostName | ||
638 | of the host being connected (defaulting to the name typed by the | ||
639 | user). Setting the command to ``none'' disables this option | ||
640 | entirely. Note that CheckHostIP is not available for connects | ||
641 | with a proxy command. | ||
642 | |||
643 | This directive is useful in conjunction with nc(1) and its proxy | ||
644 | support. For example, the following directive would connect via | ||
645 | an HTTP proxy at 192.0.2.0: | ||
646 | |||
647 | ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p | ||
648 | |||
649 | ProxyUseFdpass | ||
650 | Specifies that ProxyCommand will pass a connected file descriptor | ||
651 | back to ssh(1) instead of continuing to execute and pass data. | ||
652 | The default is ``no''. | ||
653 | |||
654 | PubkeyAuthentication | ||
655 | Specifies whether to try public key authentication. The argument | ||
656 | to this keyword must be ``yes'' or ``no''. The default is | ||
657 | ``yes''. This option applies to protocol version 2 only. | ||
658 | |||
659 | RekeyLimit | ||
660 | Specifies the maximum amount of data that may be transmitted | ||
661 | before the session key is renegotiated, optionally followed a | ||
662 | maximum amount of time that may pass before the session key is | ||
663 | renegotiated. The first argument is specified in bytes and may | ||
664 | have a suffix of `K', `M', or `G' to indicate Kilobytes, | ||
665 | Megabytes, or Gigabytes, respectively. The default is between | ||
666 | `1G' and `4G', depending on the cipher. The optional second | ||
667 | value is specified in seconds and may use any of the units | ||
668 | documented in the TIME FORMATS section of sshd_config(5). The | ||
669 | default value for RekeyLimit is ``default none'', which means | ||
670 | that rekeying is performed after the cipher's default amount of | ||
671 | data has been sent or received and no time based rekeying is | ||
672 | done. This option applies to protocol version 2 only. | ||
673 | |||
674 | RemoteForward | ||
675 | Specifies that a TCP port on the remote machine be forwarded over | ||
676 | the secure channel to the specified host and port from the local | ||
677 | machine. The first argument must be [bind_address:]port and the | ||
678 | second argument must be host:hostport. IPv6 addresses can be | ||
679 | specified by enclosing addresses in square brackets. Multiple | ||
680 | forwardings may be specified, and additional forwardings can be | ||
681 | given on the command line. Privileged ports can be forwarded | ||
682 | only when logging in as root on the remote machine. | ||
683 | |||
684 | If the port argument is `0', the listen port will be dynamically | ||
685 | allocated on the server and reported to the client at run time. | ||
686 | |||
687 | If the bind_address is not specified, the default is to only bind | ||
688 | to loopback addresses. If the bind_address is `*' or an empty | ||
689 | string, then the forwarding is requested to listen on all | ||
690 | interfaces. Specifying a remote bind_address will only succeed | ||
691 | if the server's GatewayPorts option is enabled (see | ||
692 | sshd_config(5)). | ||
693 | |||
694 | RequestTTY | ||
695 | Specifies whether to request a pseudo-tty for the session. The | ||
696 | argument may be one of: ``no'' (never request a TTY), ``yes'' | ||
697 | (always request a TTY when standard input is a TTY), ``force'' | ||
698 | (always request a TTY) or ``auto'' (request a TTY when opening a | ||
699 | login session). This option mirrors the -t and -T flags for | ||
700 | ssh(1). | ||
701 | |||
702 | RhostsRSAAuthentication | ||
703 | Specifies whether to try rhosts based authentication with RSA | ||
704 | host authentication. The argument must be ``yes'' or ``no''. | ||
705 | The default is ``no''. This option applies to protocol version 1 | ||
706 | only and requires ssh(1) to be setuid root. | ||
707 | |||
708 | RSAAuthentication | ||
709 | Specifies whether to try RSA authentication. The argument to | ||
710 | this keyword must be ``yes'' or ``no''. RSA authentication will | ||
711 | only be attempted if the identity file exists, or an | ||
712 | authentication agent is running. The default is ``yes''. Note | ||
713 | that this option applies to protocol version 1 only. | ||
714 | |||
715 | SendEnv | ||
716 | Specifies what variables from the local environ(7) should be sent | ||
717 | to the server. Note that environment passing is only supported | ||
718 | for protocol 2. The server must also support it, and the server | ||
719 | must be configured to accept these environment variables. Refer | ||
720 | to AcceptEnv in sshd_config(5) for how to configure the server. | ||
721 | Variables are specified by name, which may contain wildcard | ||
722 | characters. Multiple environment variables may be separated by | ||
723 | whitespace or spread across multiple SendEnv directives. The | ||
724 | default is not to send any environment variables. | ||
725 | |||
726 | See PATTERNS for more information on patterns. | ||
727 | |||
728 | ServerAliveCountMax | ||
729 | Sets the number of server alive messages (see below) which may be | ||
730 | sent without ssh(1) receiving any messages back from the server. | ||
731 | If this threshold is reached while server alive messages are | ||
732 | being sent, ssh will disconnect from the server, terminating the | ||
733 | session. It is important to note that the use of server alive | ||
734 | messages is very different from TCPKeepAlive (below). The server | ||
735 | alive messages are sent through the encrypted channel and | ||
736 | therefore will not be spoofable. The TCP keepalive option | ||
737 | enabled by TCPKeepAlive is spoofable. The server alive mechanism | ||
738 | is valuable when the client or server depend on knowing when a | ||
739 | connection has become inactive. | ||
740 | |||
741 | The default value is 3. If, for example, ServerAliveInterval | ||
742 | (see below) is set to 15 and ServerAliveCountMax is left at the | ||
743 | default, if the server becomes unresponsive, ssh will disconnect | ||
744 | after approximately 45 seconds. This option applies to protocol | ||
745 | version 2 only. | ||
746 | |||
747 | ServerAliveInterval | ||
748 | Sets a timeout interval in seconds after which if no data has | ||
749 | been received from the server, ssh(1) will send a message through | ||
750 | the encrypted channel to request a response from the server. The | ||
751 | default is 0, indicating that these messages will not be sent to | ||
752 | the server. This option applies to protocol version 2 only. | ||
753 | |||
754 | StrictHostKeyChecking | ||
755 | If this flag is set to ``yes'', ssh(1) will never automatically | ||
756 | add host keys to the ~/.ssh/known_hosts file, and refuses to | ||
757 | connect to hosts whose host key has changed. This provides | ||
758 | maximum protection against trojan horse attacks, though it can be | ||
759 | annoying when the /etc/ssh/ssh_known_hosts file is poorly | ||
760 | maintained or when connections to new hosts are frequently made. | ||
761 | This option forces the user to manually add all new hosts. If | ||
762 | this flag is set to ``no'', ssh will automatically add new host | ||
763 | keys to the user known hosts files. If this flag is set to | ||
764 | ``ask'', new host keys will be added to the user known host files | ||
765 | only after the user has confirmed that is what they really want | ||
766 | to do, and ssh will refuse to connect to hosts whose host key has | ||
767 | changed. The host keys of known hosts will be verified | ||
768 | automatically in all cases. The argument must be ``yes'', | ||
769 | ``no'', or ``ask''. The default is ``ask''. | ||
770 | |||
771 | TCPKeepAlive | ||
772 | Specifies whether the system should send TCP keepalive messages | ||
773 | to the other side. If they are sent, death of the connection or | ||
774 | crash of one of the machines will be properly noticed. However, | ||
775 | this means that connections will die if the route is down | ||
776 | temporarily, and some people find it annoying. | ||
777 | |||
778 | The default is ``yes'' (to send TCP keepalive messages), and the | ||
779 | client will notice if the network goes down or the remote host | ||
780 | dies. This is important in scripts, and many users want it too. | ||
781 | |||
782 | To disable TCP keepalive messages, the value should be set to | ||
783 | ``no''. | ||
784 | |||
785 | Tunnel Request tun(4) device forwarding between the client and the | ||
786 | server. The argument must be ``yes'', ``point-to-point'' (layer | ||
787 | 3), ``ethernet'' (layer 2), or ``no''. Specifying ``yes'' | ||
788 | requests the default tunnel mode, which is ``point-to-point''. | ||
789 | The default is ``no''. | ||
790 | |||
791 | TunnelDevice | ||
792 | Specifies the tun(4) devices to open on the client (local_tun) | ||
793 | and the server (remote_tun). | ||
794 | |||
795 | The argument must be local_tun[:remote_tun]. The devices may be | ||
796 | specified by numerical ID or the keyword ``any'', which uses the | ||
797 | next available tunnel device. If remote_tun is not specified, it | ||
798 | defaults to ``any''. The default is ``any:any''. | ||
799 | |||
800 | UsePrivilegedPort | ||
801 | Specifies whether to use a privileged port for outgoing | ||
802 | connections. The argument must be ``yes'' or ``no''. The | ||
803 | default is ``no''. If set to ``yes'', ssh(1) must be setuid | ||
804 | root. Note that this option must be set to ``yes'' for | ||
805 | RhostsRSAAuthentication with older servers. | ||
806 | |||
807 | User Specifies the user to log in as. This can be useful when a | ||
808 | different user name is used on different machines. This saves | ||
809 | the trouble of having to remember to give the user name on the | ||
810 | command line. | ||
811 | |||
812 | UserKnownHostsFile | ||
813 | Specifies one or more files to use for the user host key | ||
814 | database, separated by whitespace. The default is | ||
815 | ~/.ssh/known_hosts, ~/.ssh/known_hosts2. | ||
816 | |||
817 | VerifyHostKeyDNS | ||
818 | Specifies whether to verify the remote key using DNS and SSHFP | ||
819 | resource records. If this option is set to ``yes'', the client | ||
820 | will implicitly trust keys that match a secure fingerprint from | ||
821 | DNS. Insecure fingerprints will be handled as if this option was | ||
822 | set to ``ask''. If this option is set to ``ask'', information on | ||
823 | fingerprint match will be displayed, but the user will still need | ||
824 | to confirm new host keys according to the StrictHostKeyChecking | ||
825 | option. The argument must be ``yes'', ``no'', or ``ask''. The | ||
826 | default is ``no''. Note that this option applies to protocol | ||
827 | version 2 only. | ||
828 | |||
829 | See also VERIFYING HOST KEYS in ssh(1). | ||
830 | |||
831 | VisualHostKey | ||
832 | If this flag is set to ``yes'', an ASCII art representation of | ||
833 | the remote host key fingerprint is printed in addition to the hex | ||
834 | fingerprint string at login and for unknown host keys. If this | ||
835 | flag is set to ``no'', no fingerprint strings are printed at | ||
836 | login and only the hex fingerprint string will be printed for | ||
837 | unknown host keys. The default is ``no''. | ||
838 | |||
839 | XAuthLocation | ||
840 | Specifies the full pathname of the xauth(1) program. The default | ||
841 | is /usr/X11R6/bin/xauth. | ||
842 | |||
843 | PATTERNS | ||
844 | A pattern consists of zero or more non-whitespace characters, `*' (a | ||
845 | wildcard that matches zero or more characters), or `?' (a wildcard that | ||
846 | matches exactly one character). For example, to specify a set of | ||
847 | declarations for any host in the ``.co.uk'' set of domains, the following | ||
848 | pattern could be used: | ||
849 | |||
850 | Host *.co.uk | ||
851 | |||
852 | The following pattern would match any host in the 192.168.0.[0-9] network | ||
853 | range: | ||
854 | |||
855 | Host 192.168.0.? | ||
856 | |||
857 | A pattern-list is a comma-separated list of patterns. Patterns within | ||
858 | pattern-lists may be negated by preceding them with an exclamation mark | ||
859 | (`!'). For example, to allow a key to be used from anywhere within an | ||
860 | organization except from the ``dialup'' pool, the following entry (in | ||
861 | authorized_keys) could be used: | ||
862 | |||
863 | from="!*.dialup.example.com,*.example.com" | ||
864 | |||
865 | FILES | ||
866 | ~/.ssh/config | ||
867 | This is the per-user configuration file. The format of this file | ||
868 | is described above. This file is used by the SSH client. | ||
869 | Because of the potential for abuse, this file must have strict | ||
870 | permissions: read/write for the user, and not accessible by | ||
871 | others. | ||
872 | |||
873 | /etc/ssh/ssh_config | ||
874 | Systemwide configuration file. This file provides defaults for | ||
875 | those values that are not specified in the user's configuration | ||
876 | file, and for those users who do not have a configuration file. | ||
877 | This file must be world-readable. | ||
878 | |||
879 | SEE ALSO | ||
880 | ssh(1) | ||
881 | |||
882 | AUTHORS | ||
883 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
884 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
885 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
886 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
887 | versions 1.5 and 2.0. | ||
888 | |||
889 | OpenBSD 5.5 February 23, 2014 OpenBSD 5.5 | ||
@@ -0,0 +1,643 @@ | |||
1 | SSHD(8) OpenBSD System Manager's Manual SSHD(8) | ||
2 | |||
3 | NAME | ||
4 | sshd - OpenSSH SSH daemon | ||
5 | |||
6 | SYNOPSIS | ||
7 | sshd [-46DdeiqTt] [-b bits] [-C connection_spec] | ||
8 | [-c host_certificate_file] [-E log_file] [-f config_file] | ||
9 | [-g login_grace_time] [-h host_key_file] [-k key_gen_time] | ||
10 | [-o option] [-p port] [-u len] | ||
11 | |||
12 | DESCRIPTION | ||
13 | sshd (OpenSSH Daemon) is the daemon program for ssh(1). Together these | ||
14 | programs replace rlogin(1) and rsh(1), and provide secure encrypted | ||
15 | communications between two untrusted hosts over an insecure network. | ||
16 | |||
17 | sshd listens for connections from clients. It is normally started at | ||
18 | boot from /etc/rc. It forks a new daemon for each incoming connection. | ||
19 | The forked daemons handle key exchange, encryption, authentication, | ||
20 | command execution, and data exchange. | ||
21 | |||
22 | sshd can be configured using command-line options or a configuration file | ||
23 | (by default sshd_config(5)); command-line options override values | ||
24 | specified in the configuration file. sshd rereads its configuration file | ||
25 | when it receives a hangup signal, SIGHUP, by executing itself with the | ||
26 | name and options it was started with, e.g. /usr/sbin/sshd. | ||
27 | |||
28 | The options are as follows: | ||
29 | |||
30 | -4 Forces sshd to use IPv4 addresses only. | ||
31 | |||
32 | -6 Forces sshd to use IPv6 addresses only. | ||
33 | |||
34 | -b bits | ||
35 | Specifies the number of bits in the ephemeral protocol version 1 | ||
36 | server key (default 1024). | ||
37 | |||
38 | -C connection_spec | ||
39 | Specify the connection parameters to use for the -T extended test | ||
40 | mode. If provided, any Match directives in the configuration | ||
41 | file that would apply to the specified user, host, and address | ||
42 | will be set before the configuration is written to standard | ||
43 | output. The connection parameters are supplied as keyword=value | ||
44 | pairs. The keywords are ``user'', ``host'', ``laddr'', | ||
45 | ``lport'', and ``addr''. All are required and may be supplied in | ||
46 | any order, either with multiple -C options or as a comma- | ||
47 | separated list. | ||
48 | |||
49 | -c host_certificate_file | ||
50 | Specifies a path to a certificate file to identify sshd during | ||
51 | key exchange. The certificate file must match a host key file | ||
52 | specified using the -h option or the HostKey configuration | ||
53 | directive. | ||
54 | |||
55 | -D When this option is specified, sshd will not detach and does not | ||
56 | become a daemon. This allows easy monitoring of sshd. | ||
57 | |||
58 | -d Debug mode. The server sends verbose debug output to standard | ||
59 | error, and does not put itself in the background. The server | ||
60 | also will not fork and will only process one connection. This | ||
61 | option is only intended for debugging for the server. Multiple | ||
62 | -d options increase the debugging level. Maximum is 3. | ||
63 | |||
64 | -E log_file | ||
65 | Append debug logs to log_file instead of the system log. | ||
66 | |||
67 | -e Write debug logs to standard error instead of the system log. | ||
68 | |||
69 | -f config_file | ||
70 | Specifies the name of the configuration file. The default is | ||
71 | /etc/ssh/sshd_config. sshd refuses to start if there is no | ||
72 | configuration file. | ||
73 | |||
74 | -g login_grace_time | ||
75 | Gives the grace time for clients to authenticate themselves | ||
76 | (default 120 seconds). If the client fails to authenticate the | ||
77 | user within this many seconds, the server disconnects and exits. | ||
78 | A value of zero indicates no limit. | ||
79 | |||
80 | -h host_key_file | ||
81 | Specifies a file from which a host key is read. This option must | ||
82 | be given if sshd is not run as root (as the normal host key files | ||
83 | are normally not readable by anyone but root). The default is | ||
84 | /etc/ssh/ssh_host_key for protocol version 1, and | ||
85 | /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_ecdsa_key. | ||
86 | /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key for | ||
87 | protocol version 2. It is possible to have multiple host key | ||
88 | files for the different protocol versions and host key | ||
89 | algorithms. | ||
90 | |||
91 | -i Specifies that sshd is being run from inetd(8). sshd is normally | ||
92 | not run from inetd because it needs to generate the server key | ||
93 | before it can respond to the client, and this may take tens of | ||
94 | seconds. Clients would have to wait too long if the key was | ||
95 | regenerated every time. However, with small key sizes (e.g. 512) | ||
96 | using sshd from inetd may be feasible. | ||
97 | |||
98 | -k key_gen_time | ||
99 | Specifies how often the ephemeral protocol version 1 server key | ||
100 | is regenerated (default 3600 seconds, or one hour). The | ||
101 | motivation for regenerating the key fairly often is that the key | ||
102 | is not stored anywhere, and after about an hour it becomes | ||
103 | impossible to recover the key for decrypting intercepted | ||
104 | communications even if the machine is cracked into or physically | ||
105 | seized. A value of zero indicates that the key will never be | ||
106 | regenerated. | ||
107 | |||
108 | -o option | ||
109 | Can be used to give options in the format used in the | ||
110 | configuration file. This is useful for specifying options for | ||
111 | which there is no separate command-line flag. For full details | ||
112 | of the options, and their values, see sshd_config(5). | ||
113 | |||
114 | -p port | ||
115 | Specifies the port on which the server listens for connections | ||
116 | (default 22). Multiple port options are permitted. Ports | ||
117 | specified in the configuration file with the Port option are | ||
118 | ignored when a command-line port is specified. Ports specified | ||
119 | using the ListenAddress option override command-line ports. | ||
120 | |||
121 | -q Quiet mode. Nothing is sent to the system log. Normally the | ||
122 | beginning, authentication, and termination of each connection is | ||
123 | logged. | ||
124 | |||
125 | -T Extended test mode. Check the validity of the configuration | ||
126 | file, output the effective configuration to stdout and then exit. | ||
127 | Optionally, Match rules may be applied by specifying the | ||
128 | connection parameters using one or more -C options. | ||
129 | |||
130 | -t Test mode. Only check the validity of the configuration file and | ||
131 | sanity of the keys. This is useful for updating sshd reliably as | ||
132 | configuration options may change. | ||
133 | |||
134 | -u len This option is used to specify the size of the field in the utmp | ||
135 | structure that holds the remote host name. If the resolved host | ||
136 | name is longer than len, the dotted decimal value will be used | ||
137 | instead. This allows hosts with very long host names that | ||
138 | overflow this field to still be uniquely identified. Specifying | ||
139 | -u0 indicates that only dotted decimal addresses should be put | ||
140 | into the utmp file. -u0 may also be used to prevent sshd from | ||
141 | making DNS requests unless the authentication mechanism or | ||
142 | configuration requires it. Authentication mechanisms that may | ||
143 | require DNS include RhostsRSAAuthentication, | ||
144 | HostbasedAuthentication, and using a from="pattern-list" option | ||
145 | in a key file. Configuration options that require DNS include | ||
146 | using a USER@HOST pattern in AllowUsers or DenyUsers. | ||
147 | |||
148 | AUTHENTICATION | ||
149 | The OpenSSH SSH daemon supports SSH protocols 1 and 2. The default is to | ||
150 | use protocol 2 only, though this can be changed via the Protocol option | ||
151 | in sshd_config(5). Protocol 2 supports DSA, ECDSA, ED25519 and RSA keys; | ||
152 | protocol 1 only supports RSA keys. For both protocols, each host has a | ||
153 | host-specific key, normally 2048 bits, used to identify the host. | ||
154 | |||
155 | Forward security for protocol 1 is provided through an additional server | ||
156 | key, normally 768 bits, generated when the server starts. This key is | ||
157 | normally regenerated every hour if it has been used, and is never stored | ||
158 | on disk. Whenever a client connects, the daemon responds with its public | ||
159 | host and server keys. The client compares the RSA host key against its | ||
160 | own database to verify that it has not changed. The client then | ||
161 | generates a 256-bit random number. It encrypts this random number using | ||
162 | both the host key and the server key, and sends the encrypted number to | ||
163 | the server. Both sides then use this random number as a session key | ||
164 | which is used to encrypt all further communications in the session. The | ||
165 | rest of the session is encrypted using a conventional cipher, currently | ||
166 | Blowfish or 3DES, with 3DES being used by default. The client selects | ||
167 | the encryption algorithm to use from those offered by the server. | ||
168 | |||
169 | For protocol 2, forward security is provided through a Diffie-Hellman key | ||
170 | agreement. This key agreement results in a shared session key. The rest | ||
171 | of the session is encrypted using a symmetric cipher, currently 128-bit | ||
172 | AES, Blowfish, 3DES, CAST128, Arcfour, 192-bit AES, or 256-bit AES. The | ||
173 | client selects the encryption algorithm to use from those offered by the | ||
174 | server. Additionally, session integrity is provided through a | ||
175 | cryptographic message authentication code (hmac-md5, hmac-sha1, umac-64, | ||
176 | umac-128, hmac-ripemd160, hmac-sha2-256 or hmac-sha2-512). | ||
177 | |||
178 | Finally, the server and the client enter an authentication dialog. The | ||
179 | client tries to authenticate itself using host-based authentication, | ||
180 | public key authentication, challenge-response authentication, or password | ||
181 | authentication. | ||
182 | |||
183 | Regardless of the authentication type, the account is checked to ensure | ||
184 | that it is accessible. An account is not accessible if it is locked, | ||
185 | listed in DenyUsers or its group is listed in DenyGroups . The | ||
186 | definition of a locked account is system dependant. Some platforms have | ||
187 | their own account database (eg AIX) and some modify the passwd field ( | ||
188 | `*LK*' on Solaris and UnixWare, `*' on HP-UX, containing `Nologin' on | ||
189 | Tru64, a leading `*LOCKED*' on FreeBSD and a leading `!' on most | ||
190 | Linuxes). If there is a requirement to disable password authentication | ||
191 | for the account while allowing still public-key, then the passwd field | ||
192 | should be set to something other than these values (eg `NP' or `*NP*' ). | ||
193 | |||
194 | If the client successfully authenticates itself, a dialog for preparing | ||
195 | the session is entered. At this time the client may request things like | ||
196 | allocating a pseudo-tty, forwarding X11 connections, forwarding TCP | ||
197 | connections, or forwarding the authentication agent connection over the | ||
198 | secure channel. | ||
199 | |||
200 | After this, the client either requests a shell or execution of a command. | ||
201 | The sides then enter session mode. In this mode, either side may send | ||
202 | data at any time, and such data is forwarded to/from the shell or command | ||
203 | on the server side, and the user terminal in the client side. | ||
204 | |||
205 | When the user program terminates and all forwarded X11 and other | ||
206 | connections have been closed, the server sends command exit status to the | ||
207 | client, and both sides exit. | ||
208 | |||
209 | LOGIN PROCESS | ||
210 | When a user successfully logs in, sshd does the following: | ||
211 | |||
212 | 1. If the login is on a tty, and no command has been specified, | ||
213 | prints last login time and /etc/motd (unless prevented in the | ||
214 | configuration file or by ~/.hushlogin; see the FILES section). | ||
215 | |||
216 | 2. If the login is on a tty, records login time. | ||
217 | |||
218 | 3. Checks /etc/nologin; if it exists, prints contents and quits | ||
219 | (unless root). | ||
220 | |||
221 | 4. Changes to run with normal user privileges. | ||
222 | |||
223 | 5. Sets up basic environment. | ||
224 | |||
225 | 6. Reads the file ~/.ssh/environment, if it exists, and users are | ||
226 | allowed to change their environment. See the | ||
227 | PermitUserEnvironment option in sshd_config(5). | ||
228 | |||
229 | 7. Changes to user's home directory. | ||
230 | |||
231 | 8. If ~/.ssh/rc exists, runs it; else if /etc/ssh/sshrc exists, | ||
232 | runs it; otherwise runs xauth. The ``rc'' files are given the | ||
233 | X11 authentication protocol and cookie in standard input. See | ||
234 | SSHRC, below. | ||
235 | |||
236 | 9. Runs user's shell or command. | ||
237 | |||
238 | SSHRC | ||
239 | If the file ~/.ssh/rc exists, sh(1) runs it after reading the environment | ||
240 | files but before starting the user's shell or command. It must not | ||
241 | produce any output on stdout; stderr must be used instead. If X11 | ||
242 | forwarding is in use, it will receive the "proto cookie" pair in its | ||
243 | standard input (and DISPLAY in its environment). The script must call | ||
244 | xauth(1) because sshd will not run xauth automatically to add X11 | ||
245 | cookies. | ||
246 | |||
247 | The primary purpose of this file is to run any initialization routines | ||
248 | which may be needed before the user's home directory becomes accessible; | ||
249 | AFS is a particular example of such an environment. | ||
250 | |||
251 | This file will probably contain some initialization code followed by | ||
252 | something similar to: | ||
253 | |||
254 | if read proto cookie && [ -n "$DISPLAY" ]; then | ||
255 | if [ `echo $DISPLAY | cut -c1-10` = 'localhost:' ]; then | ||
256 | # X11UseLocalhost=yes | ||
257 | echo add unix:`echo $DISPLAY | | ||
258 | cut -c11-` $proto $cookie | ||
259 | else | ||
260 | # X11UseLocalhost=no | ||
261 | echo add $DISPLAY $proto $cookie | ||
262 | fi | xauth -q - | ||
263 | fi | ||
264 | |||
265 | If this file does not exist, /etc/ssh/sshrc is run, and if that does not | ||
266 | exist either, xauth is used to add the cookie. | ||
267 | |||
268 | AUTHORIZED_KEYS FILE FORMAT | ||
269 | AuthorizedKeysFile specifies the files containing public keys for public | ||
270 | key authentication; if none is specified, the default is | ||
271 | ~/.ssh/authorized_keys and ~/.ssh/authorized_keys2. Each line of the | ||
272 | file contains one key (empty lines and lines starting with a `#' are | ||
273 | ignored as comments). Protocol 1 public keys consist of the following | ||
274 | space-separated fields: options, bits, exponent, modulus, comment. | ||
275 | Protocol 2 public key consist of: options, keytype, base64-encoded key, | ||
276 | comment. The options field is optional; its presence is determined by | ||
277 | whether the line starts with a number or not (the options field never | ||
278 | starts with a number). The bits, exponent, modulus, and comment fields | ||
279 | give the RSA key for protocol version 1; the comment field is not used | ||
280 | for anything (but may be convenient for the user to identify the key). | ||
281 | For protocol version 2 the keytype is ``ecdsa-sha2-nistp256'', | ||
282 | ``ecdsa-sha2-nistp384'', ``ecdsa-sha2-nistp521'', ``ssh-ed25519'', | ||
283 | ``ssh-dss'' or ``ssh-rsa''. | ||
284 | |||
285 | Note that lines in this file are usually several hundred bytes long | ||
286 | (because of the size of the public key encoding) up to a limit of 8 | ||
287 | kilobytes, which permits DSA keys up to 8 kilobits and RSA keys up to 16 | ||
288 | kilobits. You don't want to type them in; instead, copy the | ||
289 | identity.pub, id_dsa.pub, id_ecdsa.pub, id_ed25519.pub, or the id_rsa.pub | ||
290 | file and edit it. | ||
291 | |||
292 | sshd enforces a minimum RSA key modulus size for protocol 1 and protocol | ||
293 | 2 keys of 768 bits. | ||
294 | |||
295 | The options (if present) consist of comma-separated option | ||
296 | specifications. No spaces are permitted, except within double quotes. | ||
297 | The following option specifications are supported (note that option | ||
298 | keywords are case-insensitive): | ||
299 | |||
300 | cert-authority | ||
301 | Specifies that the listed key is a certification authority (CA) | ||
302 | that is trusted to validate signed certificates for user | ||
303 | authentication. | ||
304 | |||
305 | Certificates may encode access restrictions similar to these key | ||
306 | options. If both certificate restrictions and key options are | ||
307 | present, the most restrictive union of the two is applied. | ||
308 | |||
309 | command="command" | ||
310 | Specifies that the command is executed whenever this key is used | ||
311 | for authentication. The command supplied by the user (if any) is | ||
312 | ignored. The command is run on a pty if the client requests a | ||
313 | pty; otherwise it is run without a tty. If an 8-bit clean | ||
314 | channel is required, one must not request a pty or should specify | ||
315 | no-pty. A quote may be included in the command by quoting it | ||
316 | with a backslash. This option might be useful to restrict | ||
317 | certain public keys to perform just a specific operation. An | ||
318 | example might be a key that permits remote backups but nothing | ||
319 | else. Note that the client may specify TCP and/or X11 forwarding | ||
320 | unless they are explicitly prohibited. The command originally | ||
321 | supplied by the client is available in the SSH_ORIGINAL_COMMAND | ||
322 | environment variable. Note that this option applies to shell, | ||
323 | command or subsystem execution. Also note that this command may | ||
324 | be superseded by either a sshd_config(5) ForceCommand directive | ||
325 | or a command embedded in a certificate. | ||
326 | |||
327 | environment="NAME=value" | ||
328 | Specifies that the string is to be added to the environment when | ||
329 | logging in using this key. Environment variables set this way | ||
330 | override other default environment values. Multiple options of | ||
331 | this type are permitted. Environment processing is disabled by | ||
332 | default and is controlled via the PermitUserEnvironment option. | ||
333 | This option is automatically disabled if UseLogin is enabled. | ||
334 | |||
335 | from="pattern-list" | ||
336 | Specifies that in addition to public key authentication, either | ||
337 | the canonical name of the remote host or its IP address must be | ||
338 | present in the comma-separated list of patterns. See PATTERNS in | ||
339 | ssh_config(5) for more information on patterns. | ||
340 | |||
341 | In addition to the wildcard matching that may be applied to | ||
342 | hostnames or addresses, a from stanza may match IP addresses | ||
343 | using CIDR address/masklen notation. | ||
344 | |||
345 | The purpose of this option is to optionally increase security: | ||
346 | public key authentication by itself does not trust the network or | ||
347 | name servers or anything (but the key); however, if somebody | ||
348 | somehow steals the key, the key permits an intruder to log in | ||
349 | from anywhere in the world. This additional option makes using a | ||
350 | stolen key more difficult (name servers and/or routers would have | ||
351 | to be compromised in addition to just the key). | ||
352 | |||
353 | no-agent-forwarding | ||
354 | Forbids authentication agent forwarding when this key is used for | ||
355 | authentication. | ||
356 | |||
357 | no-port-forwarding | ||
358 | Forbids TCP forwarding when this key is used for authentication. | ||
359 | Any port forward requests by the client will return an error. | ||
360 | This might be used, e.g. in connection with the command option. | ||
361 | |||
362 | no-pty Prevents tty allocation (a request to allocate a pty will fail). | ||
363 | |||
364 | no-user-rc | ||
365 | Disables execution of ~/.ssh/rc. | ||
366 | |||
367 | no-X11-forwarding | ||
368 | Forbids X11 forwarding when this key is used for authentication. | ||
369 | Any X11 forward requests by the client will return an error. | ||
370 | |||
371 | permitopen="host:port" | ||
372 | Limit local ``ssh -L'' port forwarding such that it may only | ||
373 | connect to the specified host and port. IPv6 addresses can be | ||
374 | specified by enclosing the address in square brackets. Multiple | ||
375 | permitopen options may be applied separated by commas. No | ||
376 | pattern matching is performed on the specified hostnames, they | ||
377 | must be literal domains or addresses. A port specification of * | ||
378 | matches any port. | ||
379 | |||
380 | principals="principals" | ||
381 | On a cert-authority line, specifies allowed principals for | ||
382 | certificate authentication as a comma-separated list. At least | ||
383 | one name from the list must appear in the certificate's list of | ||
384 | principals for the certificate to be accepted. This option is | ||
385 | ignored for keys that are not marked as trusted certificate | ||
386 | signers using the cert-authority option. | ||
387 | |||
388 | tunnel="n" | ||
389 | Force a tun(4) device on the server. Without this option, the | ||
390 | next available device will be used if the client requests a | ||
391 | tunnel. | ||
392 | |||
393 | An example authorized_keys file: | ||
394 | |||
395 | # Comments allowed at start of line | ||
396 | ssh-rsa AAAAB3Nza...LiPk== user@example.net | ||
397 | from="*.sales.example.net,!pc.sales.example.net" ssh-rsa | ||
398 | AAAAB2...19Q== john@example.net | ||
399 | command="dump /home",no-pty,no-port-forwarding ssh-dss | ||
400 | AAAAC3...51R== example.net | ||
401 | permitopen="192.0.2.1:80",permitopen="192.0.2.2:25" ssh-dss | ||
402 | AAAAB5...21S== | ||
403 | tunnel="0",command="sh /etc/netstart tun0" ssh-rsa AAAA...== | ||
404 | jane@example.net | ||
405 | |||
406 | SSH_KNOWN_HOSTS FILE FORMAT | ||
407 | The /etc/ssh/ssh_known_hosts and ~/.ssh/known_hosts files contain host | ||
408 | public keys for all known hosts. The global file should be prepared by | ||
409 | the administrator (optional), and the per-user file is maintained | ||
410 | automatically: whenever the user connects from an unknown host, its key | ||
411 | is added to the per-user file. | ||
412 | |||
413 | Each line in these files contains the following fields: markers | ||
414 | (optional), hostnames, bits, exponent, modulus, comment. The fields are | ||
415 | separated by spaces. | ||
416 | |||
417 | The marker is optional, but if it is present then it must be one of | ||
418 | ``@cert-authority'', to indicate that the line contains a certification | ||
419 | authority (CA) key, or ``@revoked'', to indicate that the key contained | ||
420 | on the line is revoked and must not ever be accepted. Only one marker | ||
421 | should be used on a key line. | ||
422 | |||
423 | Hostnames is a comma-separated list of patterns (`*' and `?' act as | ||
424 | wildcards); each pattern in turn is matched against the canonical host | ||
425 | name (when authenticating a client) or against the user-supplied name | ||
426 | (when authenticating a server). A pattern may also be preceded by `!' to | ||
427 | indicate negation: if the host name matches a negated pattern, it is not | ||
428 | accepted (by that line) even if it matched another pattern on the line. | ||
429 | A hostname or address may optionally be enclosed within `[' and `]' | ||
430 | brackets then followed by `:' and a non-standard port number. | ||
431 | |||
432 | Alternately, hostnames may be stored in a hashed form which hides host | ||
433 | names and addresses should the file's contents be disclosed. Hashed | ||
434 | hostnames start with a `|' character. Only one hashed hostname may | ||
435 | appear on a single line and none of the above negation or wildcard | ||
436 | operators may be applied. | ||
437 | |||
438 | Bits, exponent, and modulus are taken directly from the RSA host key; | ||
439 | they can be obtained, for example, from /etc/ssh/ssh_host_key.pub. The | ||
440 | optional comment field continues to the end of the line, and is not used. | ||
441 | |||
442 | Lines starting with `#' and empty lines are ignored as comments. | ||
443 | |||
444 | When performing host authentication, authentication is accepted if any | ||
445 | matching line has the proper key; either one that matches exactly or, if | ||
446 | the server has presented a certificate for authentication, the key of the | ||
447 | certification authority that signed the certificate. For a key to be | ||
448 | trusted as a certification authority, it must use the ``@cert-authority'' | ||
449 | marker described above. | ||
450 | |||
451 | The known hosts file also provides a facility to mark keys as revoked, | ||
452 | for example when it is known that the associated private key has been | ||
453 | stolen. Revoked keys are specified by including the ``@revoked'' marker | ||
454 | at the beginning of the key line, and are never accepted for | ||
455 | authentication or as certification authorities, but instead will produce | ||
456 | a warning from ssh(1) when they are encountered. | ||
457 | |||
458 | It is permissible (but not recommended) to have several lines or | ||
459 | different host keys for the same names. This will inevitably happen when | ||
460 | short forms of host names from different domains are put in the file. It | ||
461 | is possible that the files contain conflicting information; | ||
462 | authentication is accepted if valid information can be found from either | ||
463 | file. | ||
464 | |||
465 | Note that the lines in these files are typically hundreds of characters | ||
466 | long, and you definitely don't want to type in the host keys by hand. | ||
467 | Rather, generate them by a script, ssh-keyscan(1) or by taking | ||
468 | /etc/ssh/ssh_host_key.pub and adding the host names at the front. | ||
469 | ssh-keygen(1) also offers some basic automated editing for | ||
470 | ~/.ssh/known_hosts including removing hosts matching a host name and | ||
471 | converting all host names to their hashed representations. | ||
472 | |||
473 | An example ssh_known_hosts file: | ||
474 | |||
475 | # Comments allowed at start of line | ||
476 | closenet,...,192.0.2.53 1024 37 159...93 closenet.example.net | ||
477 | cvs.example.net,192.0.2.10 ssh-rsa AAAA1234.....= | ||
478 | # A hashed hostname | ||
479 | |1|JfKTdBh7rNbXkVAQCRp4OQoPfmI=|USECr3SWf1JUPsms5AqfD5QfxkM= ssh-rsa | ||
480 | AAAA1234.....= | ||
481 | # A revoked key | ||
482 | @revoked * ssh-rsa AAAAB5W... | ||
483 | # A CA key, accepted for any host in *.mydomain.com or *.mydomain.org | ||
484 | @cert-authority *.mydomain.org,*.mydomain.com ssh-rsa AAAAB5W... | ||
485 | |||
486 | FILES | ||
487 | ~/.hushlogin | ||
488 | This file is used to suppress printing the last login time and | ||
489 | /etc/motd, if PrintLastLog and PrintMotd, respectively, are | ||
490 | enabled. It does not suppress printing of the banner specified | ||
491 | by Banner. | ||
492 | |||
493 | ~/.rhosts | ||
494 | This file is used for host-based authentication (see ssh(1) for | ||
495 | more information). On some machines this file may need to be | ||
496 | world-readable if the user's home directory is on an NFS | ||
497 | partition, because sshd reads it as root. Additionally, this | ||
498 | file must be owned by the user, and must not have write | ||
499 | permissions for anyone else. The recommended permission for most | ||
500 | machines is read/write for the user, and not accessible by | ||
501 | others. | ||
502 | |||
503 | ~/.shosts | ||
504 | This file is used in exactly the same way as .rhosts, but allows | ||
505 | host-based authentication without permitting login with | ||
506 | rlogin/rsh. | ||
507 | |||
508 | ~/.ssh/ | ||
509 | This directory is the default location for all user-specific | ||
510 | configuration and authentication information. There is no | ||
511 | general requirement to keep the entire contents of this directory | ||
512 | secret, but the recommended permissions are read/write/execute | ||
513 | for the user, and not accessible by others. | ||
514 | |||
515 | ~/.ssh/authorized_keys | ||
516 | Lists the public keys (DSA, ECDSA, ED25519, RSA) that can be used | ||
517 | for logging in as this user. The format of this file is | ||
518 | described above. The content of the file is not highly | ||
519 | sensitive, but the recommended permissions are read/write for the | ||
520 | user, and not accessible by others. | ||
521 | |||
522 | If this file, the ~/.ssh directory, or the user's home directory | ||
523 | are writable by other users, then the file could be modified or | ||
524 | replaced by unauthorized users. In this case, sshd will not | ||
525 | allow it to be used unless the StrictModes option has been set to | ||
526 | ``no''. | ||
527 | |||
528 | ~/.ssh/environment | ||
529 | This file is read into the environment at login (if it exists). | ||
530 | It can only contain empty lines, comment lines (that start with | ||
531 | `#'), and assignment lines of the form name=value. The file | ||
532 | should be writable only by the user; it need not be readable by | ||
533 | anyone else. Environment processing is disabled by default and | ||
534 | is controlled via the PermitUserEnvironment option. | ||
535 | |||
536 | ~/.ssh/known_hosts | ||
537 | Contains a list of host keys for all hosts the user has logged | ||
538 | into that are not already in the systemwide list of known host | ||
539 | keys. The format of this file is described above. This file | ||
540 | should be writable only by root/the owner and can, but need not | ||
541 | be, world-readable. | ||
542 | |||
543 | ~/.ssh/rc | ||
544 | Contains initialization routines to be run before the user's home | ||
545 | directory becomes accessible. This file should be writable only | ||
546 | by the user, and need not be readable by anyone else. | ||
547 | |||
548 | /etc/hosts.allow | ||
549 | /etc/hosts.deny | ||
550 | Access controls that should be enforced by tcp-wrappers are | ||
551 | defined here. Further details are described in hosts_access(5). | ||
552 | |||
553 | /etc/hosts.equiv | ||
554 | This file is for host-based authentication (see ssh(1)). It | ||
555 | should only be writable by root. | ||
556 | |||
557 | /etc/moduli | ||
558 | Contains Diffie-Hellman groups used for the "Diffie-Hellman Group | ||
559 | Exchange". The file format is described in moduli(5). | ||
560 | |||
561 | /etc/motd | ||
562 | See motd(5). | ||
563 | |||
564 | /etc/nologin | ||
565 | If this file exists, sshd refuses to let anyone except root log | ||
566 | in. The contents of the file are displayed to anyone trying to | ||
567 | log in, and non-root connections are refused. The file should be | ||
568 | world-readable. | ||
569 | |||
570 | /etc/shosts.equiv | ||
571 | This file is used in exactly the same way as hosts.equiv, but | ||
572 | allows host-based authentication without permitting login with | ||
573 | rlogin/rsh. | ||
574 | |||
575 | /etc/ssh/ssh_host_key | ||
576 | /etc/ssh/ssh_host_dsa_key | ||
577 | /etc/ssh/ssh_host_ecdsa_key | ||
578 | /etc/ssh/ssh_host_ed25519_key | ||
579 | /etc/ssh/ssh_host_rsa_key | ||
580 | These files contain the private parts of the host keys. These | ||
581 | files should only be owned by root, readable only by root, and | ||
582 | not accessible to others. Note that sshd does not start if these | ||
583 | files are group/world-accessible. | ||
584 | |||
585 | /etc/ssh/ssh_host_key.pub | ||
586 | /etc/ssh/ssh_host_dsa_key.pub | ||
587 | /etc/ssh/ssh_host_ecdsa_key.pub | ||
588 | /etc/ssh/ssh_host_ed25519_key.pub | ||
589 | /etc/ssh/ssh_host_rsa_key.pub | ||
590 | These files contain the public parts of the host keys. These | ||
591 | files should be world-readable but writable only by root. Their | ||
592 | contents should match the respective private parts. These files | ||
593 | are not really used for anything; they are provided for the | ||
594 | convenience of the user so their contents can be copied to known | ||
595 | hosts files. These files are created using ssh-keygen(1). | ||
596 | |||
597 | /etc/ssh/ssh_known_hosts | ||
598 | Systemwide list of known host keys. This file should be prepared | ||
599 | by the system administrator to contain the public host keys of | ||
600 | all machines in the organization. The format of this file is | ||
601 | described above. This file should be writable only by root/the | ||
602 | owner and should be world-readable. | ||
603 | |||
604 | /etc/ssh/sshd_config | ||
605 | Contains configuration data for sshd. The file format and | ||
606 | configuration options are described in sshd_config(5). | ||
607 | |||
608 | /etc/ssh/sshrc | ||
609 | Similar to ~/.ssh/rc, it can be used to specify machine-specific | ||
610 | login-time initializations globally. This file should be | ||
611 | writable only by root, and should be world-readable. | ||
612 | |||
613 | /var/empty | ||
614 | chroot(2) directory used by sshd during privilege separation in | ||
615 | the pre-authentication phase. The directory should not contain | ||
616 | any files and must be owned by root and not group or world- | ||
617 | writable. | ||
618 | |||
619 | /var/run/sshd.pid | ||
620 | Contains the process ID of the sshd listening for connections (if | ||
621 | there are several daemons running concurrently for different | ||
622 | ports, this contains the process ID of the one started last). | ||
623 | The content of this file is not sensitive; it can be world- | ||
624 | readable. | ||
625 | |||
626 | SEE ALSO | ||
627 | scp(1), sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), | ||
628 | ssh-keyscan(1), chroot(2), hosts_access(5), login.conf(5), moduli(5), | ||
629 | sshd_config(5), inetd(8), sftp-server(8) | ||
630 | |||
631 | AUTHORS | ||
632 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
633 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
634 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
635 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
636 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | ||
637 | for privilege separation. | ||
638 | |||
639 | CAVEATS | ||
640 | System security is not improved unless rshd, rlogind, and rexecd are | ||
641 | disabled (thus completely disabling rlogin and rsh into the machine). | ||
642 | |||
643 | OpenBSD 5.5 December 7, 2013 OpenBSD 5.5 | ||
diff --git a/sshd_config.0 b/sshd_config.0 new file mode 100644 index 000000000..413c26008 --- /dev/null +++ b/sshd_config.0 | |||
@@ -0,0 +1,835 @@ | |||
1 | SSHD_CONFIG(5) OpenBSD Programmer's Manual SSHD_CONFIG(5) | ||
2 | |||
3 | NAME | ||
4 | sshd_config - OpenSSH SSH daemon configuration file | ||
5 | |||
6 | SYNOPSIS | ||
7 | /etc/ssh/sshd_config | ||
8 | |||
9 | DESCRIPTION | ||
10 | sshd(8) reads configuration data from /etc/ssh/sshd_config (or the file | ||
11 | specified with -f on the command line). The file contains keyword- | ||
12 | argument pairs, one per line. Lines starting with `#' and empty lines | ||
13 | are interpreted as comments. Arguments may optionally be enclosed in | ||
14 | double quotes (") in order to represent arguments containing spaces. | ||
15 | |||
16 | The possible keywords and their meanings are as follows (note that | ||
17 | keywords are case-insensitive and arguments are case-sensitive): | ||
18 | |||
19 | AcceptEnv | ||
20 | Specifies what environment variables sent by the client will be | ||
21 | copied into the session's environ(7). See SendEnv in | ||
22 | ssh_config(5) for how to configure the client. Note that | ||
23 | environment passing is only supported for protocol 2. Variables | ||
24 | are specified by name, which may contain the wildcard characters | ||
25 | `*' and `?'. Multiple environment variables may be separated by | ||
26 | whitespace or spread across multiple AcceptEnv directives. Be | ||
27 | warned that some environment variables could be used to bypass | ||
28 | restricted user environments. For this reason, care should be | ||
29 | taken in the use of this directive. The default is not to accept | ||
30 | any environment variables. | ||
31 | |||
32 | AddressFamily | ||
33 | Specifies which address family should be used by sshd(8). Valid | ||
34 | arguments are ``any'', ``inet'' (use IPv4 only), or ``inet6'' | ||
35 | (use IPv6 only). The default is ``any''. | ||
36 | |||
37 | AllowAgentForwarding | ||
38 | Specifies whether ssh-agent(1) forwarding is permitted. The | ||
39 | default is ``yes''. Note that disabling agent forwarding does | ||
40 | not improve security unless users are also denied shell access, | ||
41 | as they can always install their own forwarders. | ||
42 | |||
43 | AllowGroups | ||
44 | This keyword can be followed by a list of group name patterns, | ||
45 | separated by spaces. If specified, login is allowed only for | ||
46 | users whose primary group or supplementary group list matches one | ||
47 | of the patterns. Only group names are valid; a numerical group | ||
48 | ID is not recognized. By default, login is allowed for all | ||
49 | groups. The allow/deny directives are processed in the following | ||
50 | order: DenyUsers, AllowUsers, DenyGroups, and finally | ||
51 | AllowGroups. | ||
52 | |||
53 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
54 | |||
55 | AllowTcpForwarding | ||
56 | Specifies whether TCP forwarding is permitted. The available | ||
57 | options are ``yes'' or ``all'' to allow TCP forwarding, ``no'' to | ||
58 | prevent all TCP forwarding, ``local'' to allow local (from the | ||
59 | perspective of ssh(1)) forwarding only or ``remote'' to allow | ||
60 | remote forwarding only. The default is ``yes''. Note that | ||
61 | disabling TCP forwarding does not improve security unless users | ||
62 | are also denied shell access, as they can always install their | ||
63 | own forwarders. | ||
64 | |||
65 | AllowUsers | ||
66 | This keyword can be followed by a list of user name patterns, | ||
67 | separated by spaces. If specified, login is allowed only for | ||
68 | user names that match one of the patterns. Only user names are | ||
69 | valid; a numerical user ID is not recognized. By default, login | ||
70 | is allowed for all users. If the pattern takes the form | ||
71 | USER@HOST then USER and HOST are separately checked, restricting | ||
72 | logins to particular users from particular hosts. The allow/deny | ||
73 | directives are processed in the following order: DenyUsers, | ||
74 | AllowUsers, DenyGroups, and finally AllowGroups. | ||
75 | |||
76 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
77 | |||
78 | AuthenticationMethods | ||
79 | Specifies the authentication methods that must be successfully | ||
80 | completed for a user to be granted access. This option must be | ||
81 | followed by one or more comma-separated lists of authentication | ||
82 | method names. Successful authentication requires completion of | ||
83 | every method in at least one of these lists. | ||
84 | |||
85 | For example, an argument of ``publickey,password | ||
86 | publickey,keyboard-interactive'' would require the user to | ||
87 | complete public key authentication, followed by either password | ||
88 | or keyboard interactive authentication. Only methods that are | ||
89 | next in one or more lists are offered at each stage, so for this | ||
90 | example, it would not be possible to attempt password or | ||
91 | keyboard-interactive authentication before public key. | ||
92 | |||
93 | For keyboard interactive authentication it is also possible to | ||
94 | restrict authentication to a specific device by appending a colon | ||
95 | followed by the device identifier ``bsdauth'', ``pam'', or | ||
96 | ``skey'', depending on the server configuration. For example, | ||
97 | ``keyboard-interactive:bsdauth'' would restrict keyboard | ||
98 | interactive authentication to the ``bsdauth'' device. | ||
99 | |||
100 | This option is only available for SSH protocol 2 and will yield a | ||
101 | fatal error if enabled if protocol 1 is also enabled. Note that | ||
102 | each authentication method listed should also be explicitly | ||
103 | enabled in the configuration. The default is not to require | ||
104 | multiple authentication; successful completion of a single | ||
105 | authentication method is sufficient. | ||
106 | |||
107 | AuthorizedKeysCommand | ||
108 | Specifies a program to be used to look up the user's public keys. | ||
109 | The program must be owned by root and not writable by group or | ||
110 | others. It will be invoked with a single argument of the | ||
111 | username being authenticated, and should produce on standard | ||
112 | output zero or more lines of authorized_keys output (see | ||
113 | AUTHORIZED_KEYS in sshd(8)). If a key supplied by | ||
114 | AuthorizedKeysCommand does not successfully authenticate and | ||
115 | authorize the user then public key authentication continues using | ||
116 | the usual AuthorizedKeysFile files. By default, no | ||
117 | AuthorizedKeysCommand is run. | ||
118 | |||
119 | AuthorizedKeysCommandUser | ||
120 | Specifies the user under whose account the AuthorizedKeysCommand | ||
121 | is run. It is recommended to use a dedicated user that has no | ||
122 | other role on the host than running authorized keys commands. | ||
123 | |||
124 | AuthorizedKeysFile | ||
125 | Specifies the file that contains the public keys that can be used | ||
126 | for user authentication. The format is described in the | ||
127 | AUTHORIZED_KEYS FILE FORMAT section of sshd(8). | ||
128 | AuthorizedKeysFile may contain tokens of the form %T which are | ||
129 | substituted during connection setup. The following tokens are | ||
130 | defined: %% is replaced by a literal '%', %h is replaced by the | ||
131 | home directory of the user being authenticated, and %u is | ||
132 | replaced by the username of that user. After expansion, | ||
133 | AuthorizedKeysFile is taken to be an absolute path or one | ||
134 | relative to the user's home directory. Multiple files may be | ||
135 | listed, separated by whitespace. The default is | ||
136 | ``.ssh/authorized_keys .ssh/authorized_keys2''. | ||
137 | |||
138 | AuthorizedPrincipalsFile | ||
139 | Specifies a file that lists principal names that are accepted for | ||
140 | certificate authentication. When using certificates signed by a | ||
141 | key listed in TrustedUserCAKeys, this file lists names, one of | ||
142 | which must appear in the certificate for it to be accepted for | ||
143 | authentication. Names are listed one per line preceded by key | ||
144 | options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)). | ||
145 | Empty lines and comments starting with `#' are ignored. | ||
146 | |||
147 | AuthorizedPrincipalsFile may contain tokens of the form %T which | ||
148 | are substituted during connection setup. The following tokens | ||
149 | are defined: %% is replaced by a literal '%', %h is replaced by | ||
150 | the home directory of the user being authenticated, and %u is | ||
151 | replaced by the username of that user. After expansion, | ||
152 | AuthorizedPrincipalsFile is taken to be an absolute path or one | ||
153 | relative to the user's home directory. | ||
154 | |||
155 | The default is ``none'', i.e. not to use a principals file - in | ||
156 | this case, the username of the user must appear in a | ||
157 | certificate's principals list for it to be accepted. Note that | ||
158 | AuthorizedPrincipalsFile is only used when authentication | ||
159 | proceeds using a CA listed in TrustedUserCAKeys and is not | ||
160 | consulted for certification authorities trusted via | ||
161 | ~/.ssh/authorized_keys, though the principals= key option offers | ||
162 | a similar facility (see sshd(8) for details). | ||
163 | |||
164 | Banner The contents of the specified file are sent to the remote user | ||
165 | before authentication is allowed. If the argument is ``none'' | ||
166 | then no banner is displayed. This option is only available for | ||
167 | protocol version 2. By default, no banner is displayed. | ||
168 | |||
169 | ChallengeResponseAuthentication | ||
170 | Specifies whether challenge-response authentication is allowed | ||
171 | (e.g. via PAM or though authentication styles supported in | ||
172 | login.conf(5)) The default is ``yes''. | ||
173 | |||
174 | ChrootDirectory | ||
175 | Specifies the pathname of a directory to chroot(2) to after | ||
176 | authentication. All components of the pathname must be root- | ||
177 | owned directories that are not writable by any other user or | ||
178 | group. After the chroot, sshd(8) changes the working directory | ||
179 | to the user's home directory. | ||
180 | |||
181 | The pathname may contain the following tokens that are expanded | ||
182 | at runtime once the connecting user has been authenticated: %% is | ||
183 | replaced by a literal '%', %h is replaced by the home directory | ||
184 | of the user being authenticated, and %u is replaced by the | ||
185 | username of that user. | ||
186 | |||
187 | The ChrootDirectory must contain the necessary files and | ||
188 | directories to support the user's session. For an interactive | ||
189 | session this requires at least a shell, typically sh(1), and | ||
190 | basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4), | ||
191 | stderr(4), arandom(4) and tty(4) devices. For file transfer | ||
192 | sessions using ``sftp'', no additional configuration of the | ||
193 | environment is necessary if the in-process sftp server is used, | ||
194 | though sessions which use logging do require /dev/log inside the | ||
195 | chroot directory (see sftp-server(8) for details). | ||
196 | |||
197 | The default is not to chroot(2). | ||
198 | |||
199 | Ciphers | ||
200 | Specifies the ciphers allowed for protocol version 2. Multiple | ||
201 | ciphers must be comma-separated. The supported ciphers are: | ||
202 | |||
203 | ``3des-cbc'', ``aes128-cbc'', ``aes192-cbc'', ``aes256-cbc'', | ||
204 | ``aes128-ctr'', ``aes192-ctr'', ``aes256-ctr'', | ||
205 | ``aes128-gcm@openssh.com'', ``aes256-gcm@openssh.com'', | ||
206 | ``arcfour128'', ``arcfour256'', ``arcfour'', ``blowfish-cbc'', | ||
207 | ``cast128-cbc'', and ``chacha20-poly1305@openssh.com''. | ||
208 | |||
209 | The default is: | ||
210 | |||
211 | aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128, | ||
212 | aes128-gcm@openssh.com,aes256-gcm@openssh.com, | ||
213 | chacha20-poly1305@openssh.com, | ||
214 | aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc, | ||
215 | aes256-cbc,arcfour | ||
216 | |||
217 | The list of available ciphers may also be obtained using the -Q | ||
218 | option of ssh(1). | ||
219 | |||
220 | ClientAliveCountMax | ||
221 | Sets the number of client alive messages (see below) which may be | ||
222 | sent without sshd(8) receiving any messages back from the client. | ||
223 | If this threshold is reached while client alive messages are | ||
224 | being sent, sshd will disconnect the client, terminating the | ||
225 | session. It is important to note that the use of client alive | ||
226 | messages is very different from TCPKeepAlive (below). The client | ||
227 | alive messages are sent through the encrypted channel and | ||
228 | therefore will not be spoofable. The TCP keepalive option | ||
229 | enabled by TCPKeepAlive is spoofable. The client alive mechanism | ||
230 | is valuable when the client or server depend on knowing when a | ||
231 | connection has become inactive. | ||
232 | |||
233 | The default value is 3. If ClientAliveInterval (see below) is | ||
234 | set to 15, and ClientAliveCountMax is left at the default, | ||
235 | unresponsive SSH clients will be disconnected after approximately | ||
236 | 45 seconds. This option applies to protocol version 2 only. | ||
237 | |||
238 | ClientAliveInterval | ||
239 | Sets a timeout interval in seconds after which if no data has | ||
240 | been received from the client, sshd(8) will send a message | ||
241 | through the encrypted channel to request a response from the | ||
242 | client. The default is 0, indicating that these messages will | ||
243 | not be sent to the client. This option applies to protocol | ||
244 | version 2 only. | ||
245 | |||
246 | Compression | ||
247 | Specifies whether compression is allowed, or delayed until the | ||
248 | user has authenticated successfully. The argument must be | ||
249 | ``yes'', ``delayed'', or ``no''. The default is ``delayed''. | ||
250 | |||
251 | DenyGroups | ||
252 | This keyword can be followed by a list of group name patterns, | ||
253 | separated by spaces. Login is disallowed for users whose primary | ||
254 | group or supplementary group list matches one of the patterns. | ||
255 | Only group names are valid; a numerical group ID is not | ||
256 | recognized. By default, login is allowed for all groups. The | ||
257 | allow/deny directives are processed in the following order: | ||
258 | DenyUsers, AllowUsers, DenyGroups, and finally AllowGroups. | ||
259 | |||
260 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
261 | |||
262 | DenyUsers | ||
263 | This keyword can be followed by a list of user name patterns, | ||
264 | separated by spaces. Login is disallowed for user names that | ||
265 | match one of the patterns. Only user names are valid; a | ||
266 | numerical user ID is not recognized. By default, login is | ||
267 | allowed for all users. If the pattern takes the form USER@HOST | ||
268 | then USER and HOST are separately checked, restricting logins to | ||
269 | particular users from particular hosts. The allow/deny | ||
270 | directives are processed in the following order: DenyUsers, | ||
271 | AllowUsers, DenyGroups, and finally AllowGroups. | ||
272 | |||
273 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
274 | |||
275 | ForceCommand | ||
276 | Forces the execution of the command specified by ForceCommand, | ||
277 | ignoring any command supplied by the client and ~/.ssh/rc if | ||
278 | present. The command is invoked by using the user's login shell | ||
279 | with the -c option. This applies to shell, command, or subsystem | ||
280 | execution. It is most useful inside a Match block. The command | ||
281 | originally supplied by the client is available in the | ||
282 | SSH_ORIGINAL_COMMAND environment variable. Specifying a command | ||
283 | of ``internal-sftp'' will force the use of an in-process sftp | ||
284 | server that requires no support files when used with | ||
285 | ChrootDirectory. | ||
286 | |||
287 | GatewayPorts | ||
288 | Specifies whether remote hosts are allowed to connect to ports | ||
289 | forwarded for the client. By default, sshd(8) binds remote port | ||
290 | forwardings to the loopback address. This prevents other remote | ||
291 | hosts from connecting to forwarded ports. GatewayPorts can be | ||
292 | used to specify that sshd should allow remote port forwardings to | ||
293 | bind to non-loopback addresses, thus allowing other hosts to | ||
294 | connect. The argument may be ``no'' to force remote port | ||
295 | forwardings to be available to the local host only, ``yes'' to | ||
296 | force remote port forwardings to bind to the wildcard address, or | ||
297 | ``clientspecified'' to allow the client to select the address to | ||
298 | which the forwarding is bound. The default is ``no''. | ||
299 | |||
300 | GSSAPIAuthentication | ||
301 | Specifies whether user authentication based on GSSAPI is allowed. | ||
302 | The default is ``no''. Note that this option applies to protocol | ||
303 | version 2 only. | ||
304 | |||
305 | GSSAPICleanupCredentials | ||
306 | Specifies whether to automatically destroy the user's credentials | ||
307 | cache on logout. The default is ``yes''. Note that this option | ||
308 | applies to protocol version 2 only. | ||
309 | |||
310 | HostbasedAuthentication | ||
311 | Specifies whether rhosts or /etc/hosts.equiv authentication | ||
312 | together with successful public key client host authentication is | ||
313 | allowed (host-based authentication). This option is similar to | ||
314 | RhostsRSAAuthentication and applies to protocol version 2 only. | ||
315 | The default is ``no''. | ||
316 | |||
317 | HostbasedUsesNameFromPacketOnly | ||
318 | Specifies whether or not the server will attempt to perform a | ||
319 | reverse name lookup when matching the name in the ~/.shosts, | ||
320 | ~/.rhosts, and /etc/hosts.equiv files during | ||
321 | HostbasedAuthentication. A setting of ``yes'' means that sshd(8) | ||
322 | uses the name supplied by the client rather than attempting to | ||
323 | resolve the name from the TCP connection itself. The default is | ||
324 | ``no''. | ||
325 | |||
326 | HostCertificate | ||
327 | Specifies a file containing a public host certificate. The | ||
328 | certificate's public key must match a private host key already | ||
329 | specified by HostKey. The default behaviour of sshd(8) is not to | ||
330 | load any certificates. | ||
331 | |||
332 | HostKey | ||
333 | Specifies a file containing a private host key used by SSH. The | ||
334 | default is /etc/ssh/ssh_host_key for protocol version 1, and | ||
335 | /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_ecdsa_key, | ||
336 | /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key for | ||
337 | protocol version 2. Note that sshd(8) will refuse to use a file | ||
338 | if it is group/world-accessible. It is possible to have multiple | ||
339 | host key files. ``rsa1'' keys are used for version 1 and | ||
340 | ``dsa'', ``ecdsa'', ``ed25519'' or ``rsa'' are used for version 2 | ||
341 | of the SSH protocol. It is also possible to specify public host | ||
342 | key files instead. In this case operations on the private key | ||
343 | will be delegated to an ssh-agent(1). | ||
344 | |||
345 | HostKeyAgent | ||
346 | Identifies the UNIX-domain socket used to communicate with an | ||
347 | agent that has access to the private host keys. If | ||
348 | ``SSH_AUTH_SOCK'' is specified, the location of the socket will | ||
349 | be read from the SSH_AUTH_SOCK environment variable. | ||
350 | |||
351 | IgnoreRhosts | ||
352 | Specifies that .rhosts and .shosts files will not be used in | ||
353 | RhostsRSAAuthentication or HostbasedAuthentication. | ||
354 | |||
355 | /etc/hosts.equiv and /etc/shosts.equiv are still used. The | ||
356 | default is ``yes''. | ||
357 | |||
358 | IgnoreUserKnownHosts | ||
359 | Specifies whether sshd(8) should ignore the user's | ||
360 | ~/.ssh/known_hosts during RhostsRSAAuthentication or | ||
361 | HostbasedAuthentication. The default is ``no''. | ||
362 | |||
363 | IPQoS Specifies the IPv4 type-of-service or DSCP class for the | ||
364 | connection. Accepted values are ``af11'', ``af12'', ``af13'', | ||
365 | ``af21'', ``af22'', ``af23'', ``af31'', ``af32'', ``af33'', | ||
366 | ``af41'', ``af42'', ``af43'', ``cs0'', ``cs1'', ``cs2'', ``cs3'', | ||
367 | ``cs4'', ``cs5'', ``cs6'', ``cs7'', ``ef'', ``lowdelay'', | ||
368 | ``throughput'', ``reliability'', or a numeric value. This option | ||
369 | may take one or two arguments, separated by whitespace. If one | ||
370 | argument is specified, it is used as the packet class | ||
371 | unconditionally. If two values are specified, the first is | ||
372 | automatically selected for interactive sessions and the second | ||
373 | for non-interactive sessions. The default is ``lowdelay'' for | ||
374 | interactive sessions and ``throughput'' for non-interactive | ||
375 | sessions. | ||
376 | |||
377 | KbdInteractiveAuthentication | ||
378 | Specifies whether to allow keyboard-interactive authentication. | ||
379 | The argument to this keyword must be ``yes'' or ``no''. The | ||
380 | default is to use whatever value ChallengeResponseAuthentication | ||
381 | is set to (by default ``yes''). | ||
382 | |||
383 | KerberosAuthentication | ||
384 | Specifies whether the password provided by the user for | ||
385 | PasswordAuthentication will be validated through the Kerberos | ||
386 | KDC. To use this option, the server needs a Kerberos servtab | ||
387 | which allows the verification of the KDC's identity. The default | ||
388 | is ``no''. | ||
389 | |||
390 | KerberosGetAFSToken | ||
391 | If AFS is active and the user has a Kerberos 5 TGT, attempt to | ||
392 | acquire an AFS token before accessing the user's home directory. | ||
393 | The default is ``no''. | ||
394 | |||
395 | KerberosOrLocalPasswd | ||
396 | If password authentication through Kerberos fails then the | ||
397 | password will be validated via any additional local mechanism | ||
398 | such as /etc/passwd. The default is ``yes''. | ||
399 | |||
400 | KerberosTicketCleanup | ||
401 | Specifies whether to automatically destroy the user's ticket | ||
402 | cache file on logout. The default is ``yes''. | ||
403 | |||
404 | KexAlgorithms | ||
405 | Specifies the available KEX (Key Exchange) algorithms. Multiple | ||
406 | algorithms must be comma-separated. The default is | ||
407 | |||
408 | curve25519-sha256@libssh.org, | ||
409 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | ||
410 | diffie-hellman-group-exchange-sha256, | ||
411 | diffie-hellman-group-exchange-sha1, | ||
412 | diffie-hellman-group14-sha1, | ||
413 | diffie-hellman-group1-sha1 | ||
414 | |||
415 | KeyRegenerationInterval | ||
416 | In protocol version 1, the ephemeral server key is automatically | ||
417 | regenerated after this many seconds (if it has been used). The | ||
418 | purpose of regeneration is to prevent decrypting captured | ||
419 | sessions by later breaking into the machine and stealing the | ||
420 | keys. The key is never stored anywhere. If the value is 0, the | ||
421 | key is never regenerated. The default is 3600 (seconds). | ||
422 | |||
423 | ListenAddress | ||
424 | Specifies the local addresses sshd(8) should listen on. The | ||
425 | following forms may be used: | ||
426 | |||
427 | ListenAddress host|IPv4_addr|IPv6_addr | ||
428 | ListenAddress host|IPv4_addr:port | ||
429 | ListenAddress [host|IPv6_addr]:port | ||
430 | |||
431 | If port is not specified, sshd will listen on the address and all | ||
432 | prior Port options specified. The default is to listen on all | ||
433 | local addresses. Multiple ListenAddress options are permitted. | ||
434 | Additionally, any Port options must precede this option for non- | ||
435 | port qualified addresses. | ||
436 | |||
437 | LoginGraceTime | ||
438 | The server disconnects after this time if the user has not | ||
439 | successfully logged in. If the value is 0, there is no time | ||
440 | limit. The default is 120 seconds. | ||
441 | |||
442 | LogLevel | ||
443 | Gives the verbosity level that is used when logging messages from | ||
444 | sshd(8). The possible values are: QUIET, FATAL, ERROR, INFO, | ||
445 | VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO. | ||
446 | DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify | ||
447 | higher levels of debugging output. Logging with a DEBUG level | ||
448 | violates the privacy of users and is not recommended. | ||
449 | |||
450 | MACs Specifies the available MAC (message authentication code) | ||
451 | algorithms. The MAC algorithm is used in protocol version 2 for | ||
452 | data integrity protection. Multiple algorithms must be comma- | ||
453 | separated. The algorithms that contain ``-etm'' calculate the | ||
454 | MAC after encryption (encrypt-then-mac). These are considered | ||
455 | safer and their use recommended. The default is: | ||
456 | |||
457 | hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com, | ||
458 | umac-64-etm@openssh.com,umac-128-etm@openssh.com, | ||
459 | hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, | ||
460 | hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com, | ||
461 | hmac-md5-96-etm@openssh.com, | ||
462 | hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com, | ||
463 | hmac-sha2-256,hmac-sha2-512,hmac-ripemd160, | ||
464 | hmac-sha1-96,hmac-md5-96 | ||
465 | |||
466 | Match Introduces a conditional block. If all of the criteria on the | ||
467 | Match line are satisfied, the keywords on the following lines | ||
468 | override those set in the global section of the config file, | ||
469 | until either another Match line or the end of the file. If a | ||
470 | keyword appears in multiple Match blocks that are satisified, | ||
471 | only the first instance of the keyword is applied. | ||
472 | |||
473 | The arguments to Match are one or more criteria-pattern pairs or | ||
474 | the single token All which matches all criteria. The available | ||
475 | criteria are User, Group, Host, LocalAddress, LocalPort, and | ||
476 | Address. The match patterns may consist of single entries or | ||
477 | comma-separated lists and may use the wildcard and negation | ||
478 | operators described in the PATTERNS section of ssh_config(5). | ||
479 | |||
480 | The patterns in an Address criteria may additionally contain | ||
481 | addresses to match in CIDR address/masklen format, e.g. | ||
482 | ``192.0.2.0/24'' or ``3ffe:ffff::/32''. Note that the mask | ||
483 | length provided must be consistent with the address - it is an | ||
484 | error to specify a mask length that is too long for the address | ||
485 | or one with bits set in this host portion of the address. For | ||
486 | example, ``192.0.2.0/33'' and ``192.0.2.0/8'' respectively. | ||
487 | |||
488 | Only a subset of keywords may be used on the lines following a | ||
489 | Match keyword. Available keywords are AcceptEnv, | ||
490 | AllowAgentForwarding, AllowGroups, AllowTcpForwarding, | ||
491 | AllowUsers, AuthenticationMethods, AuthorizedKeysCommand, | ||
492 | AuthorizedKeysCommandUser, AuthorizedKeysFile, | ||
493 | AuthorizedPrincipalsFile, Banner, ChrootDirectory, DenyGroups, | ||
494 | DenyUsers, ForceCommand, GatewayPorts, GSSAPIAuthentication, | ||
495 | HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, | ||
496 | KbdInteractiveAuthentication, KerberosAuthentication, | ||
497 | MaxAuthTries, MaxSessions, PasswordAuthentication, | ||
498 | PermitEmptyPasswords, PermitOpen, PermitRootLogin, PermitTTY, | ||
499 | PermitTunnel, PubkeyAuthentication, RekeyLimit, | ||
500 | RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, | ||
501 | X11Forwarding and X11UseLocalHost. | ||
502 | |||
503 | MaxAuthTries | ||
504 | Specifies the maximum number of authentication attempts permitted | ||
505 | per connection. Once the number of failures reaches half this | ||
506 | value, additional failures are logged. The default is 6. | ||
507 | |||
508 | MaxSessions | ||
509 | Specifies the maximum number of open sessions permitted per | ||
510 | network connection. The default is 10. | ||
511 | |||
512 | MaxStartups | ||
513 | Specifies the maximum number of concurrent unauthenticated | ||
514 | connections to the SSH daemon. Additional connections will be | ||
515 | dropped until authentication succeeds or the LoginGraceTime | ||
516 | expires for a connection. The default is 10:30:100. | ||
517 | |||
518 | Alternatively, random early drop can be enabled by specifying the | ||
519 | three colon separated values ``start:rate:full'' (e.g. | ||
520 | "10:30:60"). sshd(8) will refuse connection attempts with a | ||
521 | probability of ``rate/100'' (30%) if there are currently | ||
522 | ``start'' (10) unauthenticated connections. The probability | ||
523 | increases linearly and all connection attempts are refused if the | ||
524 | number of unauthenticated connections reaches ``full'' (60). | ||
525 | |||
526 | PasswordAuthentication | ||
527 | Specifies whether password authentication is allowed. The | ||
528 | default is ``yes''. | ||
529 | |||
530 | PermitEmptyPasswords | ||
531 | When password authentication is allowed, it specifies whether the | ||
532 | server allows login to accounts with empty password strings. The | ||
533 | default is ``no''. | ||
534 | |||
535 | PermitOpen | ||
536 | Specifies the destinations to which TCP port forwarding is | ||
537 | permitted. The forwarding specification must be one of the | ||
538 | following forms: | ||
539 | |||
540 | PermitOpen host:port | ||
541 | PermitOpen IPv4_addr:port | ||
542 | PermitOpen [IPv6_addr]:port | ||
543 | |||
544 | Multiple forwards may be specified by separating them with | ||
545 | whitespace. An argument of ``any'' can be used to remove all | ||
546 | restrictions and permit any forwarding requests. An argument of | ||
547 | ``none'' can be used to prohibit all forwarding requests. By | ||
548 | default all port forwarding requests are permitted. | ||
549 | |||
550 | PermitRootLogin | ||
551 | Specifies whether root can log in using ssh(1). The argument | ||
552 | must be ``yes'', ``without-password'', ``forced-commands-only'', | ||
553 | or ``no''. The default is ``yes''. | ||
554 | |||
555 | If this option is set to ``without-password'', password | ||
556 | authentication is disabled for root. | ||
557 | |||
558 | If this option is set to ``forced-commands-only'', root login | ||
559 | with public key authentication will be allowed, but only if the | ||
560 | command option has been specified (which may be useful for taking | ||
561 | remote backups even if root login is normally not allowed). All | ||
562 | other authentication methods are disabled for root. | ||
563 | |||
564 | If this option is set to ``no'', root is not allowed to log in. | ||
565 | |||
566 | PermitTunnel | ||
567 | Specifies whether tun(4) device forwarding is allowed. The | ||
568 | argument must be ``yes'', ``point-to-point'' (layer 3), | ||
569 | ``ethernet'' (layer 2), or ``no''. Specifying ``yes'' permits | ||
570 | both ``point-to-point'' and ``ethernet''. The default is ``no''. | ||
571 | |||
572 | PermitTTY | ||
573 | Specifies whether pty(4) allocation is permitted. The default is | ||
574 | ``yes''. | ||
575 | |||
576 | PermitUserEnvironment | ||
577 | Specifies whether ~/.ssh/environment and environment= options in | ||
578 | ~/.ssh/authorized_keys are processed by sshd(8). The default is | ||
579 | ``no''. Enabling environment processing may enable users to | ||
580 | bypass access restrictions in some configurations using | ||
581 | mechanisms such as LD_PRELOAD. | ||
582 | |||
583 | PidFile | ||
584 | Specifies the file that contains the process ID of the SSH | ||
585 | daemon. The default is /var/run/sshd.pid. | ||
586 | |||
587 | Port Specifies the port number that sshd(8) listens on. The default | ||
588 | is 22. Multiple options of this type are permitted. See also | ||
589 | ListenAddress. | ||
590 | |||
591 | PrintLastLog | ||
592 | Specifies whether sshd(8) should print the date and time of the | ||
593 | last user login when a user logs in interactively. The default | ||
594 | is ``yes''. | ||
595 | |||
596 | PrintMotd | ||
597 | Specifies whether sshd(8) should print /etc/motd when a user logs | ||
598 | in interactively. (On some systems it is also printed by the | ||
599 | shell, /etc/profile, or equivalent.) The default is ``yes''. | ||
600 | |||
601 | Protocol | ||
602 | Specifies the protocol versions sshd(8) supports. The possible | ||
603 | values are `1' and `2'. Multiple versions must be comma- | ||
604 | separated. The default is `2'. Note that the order of the | ||
605 | protocol list does not indicate preference, because the client | ||
606 | selects among multiple protocol versions offered by the server. | ||
607 | Specifying ``2,1'' is identical to ``1,2''. | ||
608 | |||
609 | PubkeyAuthentication | ||
610 | Specifies whether public key authentication is allowed. The | ||
611 | default is ``yes''. Note that this option applies to protocol | ||
612 | version 2 only. | ||
613 | |||
614 | RekeyLimit | ||
615 | Specifies the maximum amount of data that may be transmitted | ||
616 | before the session key is renegotiated, optionally followed a | ||
617 | maximum amount of time that may pass before the session key is | ||
618 | renegotiated. The first argument is specified in bytes and may | ||
619 | have a suffix of `K', `M', or `G' to indicate Kilobytes, | ||
620 | Megabytes, or Gigabytes, respectively. The default is between | ||
621 | `1G' and `4G', depending on the cipher. The optional second | ||
622 | value is specified in seconds and may use any of the units | ||
623 | documented in the TIME FORMATS section. The default value for | ||
624 | RekeyLimit is ``default none'', which means that rekeying is | ||
625 | performed after the cipher's default amount of data has been sent | ||
626 | or received and no time based rekeying is done. This option | ||
627 | applies to protocol version 2 only. | ||
628 | |||
629 | RevokedKeys | ||
630 | Specifies revoked public keys. Keys listed in this file will be | ||
631 | refused for public key authentication. Note that if this file is | ||
632 | not readable, then public key authentication will be refused for | ||
633 | all users. Keys may be specified as a text file, listing one | ||
634 | public key per line, or as an OpenSSH Key Revocation List (KRL) | ||
635 | as generated by ssh-keygen(1). For more information on KRLs, see | ||
636 | the KEY REVOCATION LISTS section in ssh-keygen(1). | ||
637 | |||
638 | RhostsRSAAuthentication | ||
639 | Specifies whether rhosts or /etc/hosts.equiv authentication | ||
640 | together with successful RSA host authentication is allowed. The | ||
641 | default is ``no''. This option applies to protocol version 1 | ||
642 | only. | ||
643 | |||
644 | RSAAuthentication | ||
645 | Specifies whether pure RSA authentication is allowed. The | ||
646 | default is ``yes''. This option applies to protocol version 1 | ||
647 | only. | ||
648 | |||
649 | ServerKeyBits | ||
650 | Defines the number of bits in the ephemeral protocol version 1 | ||
651 | server key. The minimum value is 512, and the default is 1024. | ||
652 | |||
653 | StrictModes | ||
654 | Specifies whether sshd(8) should check file modes and ownership | ||
655 | of the user's files and home directory before accepting login. | ||
656 | This is normally desirable because novices sometimes accidentally | ||
657 | leave their directory or files world-writable. The default is | ||
658 | ``yes''. Note that this does not apply to ChrootDirectory, whose | ||
659 | permissions and ownership are checked unconditionally. | ||
660 | |||
661 | Subsystem | ||
662 | Configures an external subsystem (e.g. file transfer daemon). | ||
663 | Arguments should be a subsystem name and a command (with optional | ||
664 | arguments) to execute upon subsystem request. | ||
665 | |||
666 | The command sftp-server(8) implements the ``sftp'' file transfer | ||
667 | subsystem. | ||
668 | |||
669 | Alternately the name ``internal-sftp'' implements an in-process | ||
670 | ``sftp'' server. This may simplify configurations using | ||
671 | ChrootDirectory to force a different filesystem root on clients. | ||
672 | |||
673 | By default no subsystems are defined. Note that this option | ||
674 | applies to protocol version 2 only. | ||
675 | |||
676 | SyslogFacility | ||
677 | Gives the facility code that is used when logging messages from | ||
678 | sshd(8). The possible values are: DAEMON, USER, AUTH, LOCAL0, | ||
679 | LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The | ||
680 | default is AUTH. | ||
681 | |||
682 | TCPKeepAlive | ||
683 | Specifies whether the system should send TCP keepalive messages | ||
684 | to the other side. If they are sent, death of the connection or | ||
685 | crash of one of the machines will be properly noticed. However, | ||
686 | this means that connections will die if the route is down | ||
687 | temporarily, and some people find it annoying. On the other | ||
688 | hand, if TCP keepalives are not sent, sessions may hang | ||
689 | indefinitely on the server, leaving ``ghost'' users and consuming | ||
690 | server resources. | ||
691 | |||
692 | The default is ``yes'' (to send TCP keepalive messages), and the | ||
693 | server will notice if the network goes down or the client host | ||
694 | crashes. This avoids infinitely hanging sessions. | ||
695 | |||
696 | To disable TCP keepalive messages, the value should be set to | ||
697 | ``no''. | ||
698 | |||
699 | TrustedUserCAKeys | ||
700 | Specifies a file containing public keys of certificate | ||
701 | authorities that are trusted to sign user certificates for | ||
702 | authentication. Keys are listed one per line; empty lines and | ||
703 | comments starting with `#' are allowed. If a certificate is | ||
704 | presented for authentication and has its signing CA key listed in | ||
705 | this file, then it may be used for authentication for any user | ||
706 | listed in the certificate's principals list. Note that | ||
707 | certificates that lack a list of principals will not be permitted | ||
708 | for authentication using TrustedUserCAKeys. For more details on | ||
709 | certificates, see the CERTIFICATES section in ssh-keygen(1). | ||
710 | |||
711 | UseDNS Specifies whether sshd(8) should look up the remote host name and | ||
712 | check that the resolved host name for the remote IP address maps | ||
713 | back to the very same IP address. The default is ``yes''. | ||
714 | |||
715 | UseLogin | ||
716 | Specifies whether login(1) is used for interactive login | ||
717 | sessions. The default is ``no''. Note that login(1) is never | ||
718 | used for remote command execution. Note also, that if this is | ||
719 | enabled, X11Forwarding will be disabled because login(1) does not | ||
720 | know how to handle xauth(1) cookies. If UsePrivilegeSeparation | ||
721 | is specified, it will be disabled after authentication. | ||
722 | |||
723 | UsePAM Enables the Pluggable Authentication Module interface. If set to | ||
724 | ``yes'' this will enable PAM authentication using | ||
725 | ChallengeResponseAuthentication and PasswordAuthentication in | ||
726 | addition to PAM account and session module processing for all | ||
727 | authentication types. | ||
728 | |||
729 | Because PAM challenge-response authentication usually serves an | ||
730 | equivalent role to password authentication, you should disable | ||
731 | either PasswordAuthentication or ChallengeResponseAuthentication. | ||
732 | |||
733 | If UsePAM is enabled, you will not be able to run sshd(8) as a | ||
734 | non-root user. The default is ``no''. | ||
735 | |||
736 | UsePrivilegeSeparation | ||
737 | Specifies whether sshd(8) separates privileges by creating an | ||
738 | unprivileged child process to deal with incoming network traffic. | ||
739 | After successful authentication, another process will be created | ||
740 | that has the privilege of the authenticated user. The goal of | ||
741 | privilege separation is to prevent privilege escalation by | ||
742 | containing any corruption within the unprivileged processes. The | ||
743 | default is ``yes''. If UsePrivilegeSeparation is set to | ||
744 | ``sandbox'' then the pre-authentication unprivileged process is | ||
745 | subject to additional restrictions. | ||
746 | |||
747 | VersionAddendum | ||
748 | Optionally specifies additional text to append to the SSH | ||
749 | protocol banner sent by the server upon connection. The default | ||
750 | is ``none''. | ||
751 | |||
752 | X11DisplayOffset | ||
753 | Specifies the first display number available for sshd(8)'s X11 | ||
754 | forwarding. This prevents sshd from interfering with real X11 | ||
755 | servers. The default is 10. | ||
756 | |||
757 | X11Forwarding | ||
758 | Specifies whether X11 forwarding is permitted. The argument must | ||
759 | be ``yes'' or ``no''. The default is ``no''. | ||
760 | |||
761 | When X11 forwarding is enabled, there may be additional exposure | ||
762 | to the server and to client displays if the sshd(8) proxy display | ||
763 | is configured to listen on the wildcard address (see | ||
764 | X11UseLocalhost below), though this is not the default. | ||
765 | Additionally, the authentication spoofing and authentication data | ||
766 | verification and substitution occur on the client side. The | ||
767 | security risk of using X11 forwarding is that the client's X11 | ||
768 | display server may be exposed to attack when the SSH client | ||
769 | requests forwarding (see the warnings for ForwardX11 in | ||
770 | ssh_config(5)). A system administrator may have a stance in | ||
771 | which they want to protect clients that may expose themselves to | ||
772 | attack by unwittingly requesting X11 forwarding, which can | ||
773 | warrant a ``no'' setting. | ||
774 | |||
775 | Note that disabling X11 forwarding does not prevent users from | ||
776 | forwarding X11 traffic, as users can always install their own | ||
777 | forwarders. X11 forwarding is automatically disabled if UseLogin | ||
778 | is enabled. | ||
779 | |||
780 | X11UseLocalhost | ||
781 | Specifies whether sshd(8) should bind the X11 forwarding server | ||
782 | to the loopback address or to the wildcard address. By default, | ||
783 | sshd binds the forwarding server to the loopback address and sets | ||
784 | the hostname part of the DISPLAY environment variable to | ||
785 | ``localhost''. This prevents remote hosts from connecting to the | ||
786 | proxy display. However, some older X11 clients may not function | ||
787 | with this configuration. X11UseLocalhost may be set to ``no'' to | ||
788 | specify that the forwarding server should be bound to the | ||
789 | wildcard address. The argument must be ``yes'' or ``no''. The | ||
790 | default is ``yes''. | ||
791 | |||
792 | XAuthLocation | ||
793 | Specifies the full pathname of the xauth(1) program. The default | ||
794 | is /usr/X11R6/bin/xauth. | ||
795 | |||
796 | TIME FORMATS | ||
797 | sshd(8) command-line arguments and configuration file options that | ||
798 | specify time may be expressed using a sequence of the form: | ||
799 | time[qualifier], where time is a positive integer value and qualifier is | ||
800 | one of the following: | ||
801 | |||
802 | <none> seconds | ||
803 | s | S seconds | ||
804 | m | M minutes | ||
805 | h | H hours | ||
806 | d | D days | ||
807 | w | W weeks | ||
808 | |||
809 | Each member of the sequence is added together to calculate the total time | ||
810 | value. | ||
811 | |||
812 | Time format examples: | ||
813 | |||
814 | 600 600 seconds (10 minutes) | ||
815 | 10m 10 minutes | ||
816 | 1h30m 1 hour 30 minutes (90 minutes) | ||
817 | |||
818 | FILES | ||
819 | /etc/ssh/sshd_config | ||
820 | Contains configuration data for sshd(8). This file should be | ||
821 | writable by root only, but it is recommended (though not | ||
822 | necessary) that it be world-readable. | ||
823 | |||
824 | SEE ALSO | ||
825 | sshd(8) | ||
826 | |||
827 | AUTHORS | ||
828 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
829 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
830 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
831 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
832 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | ||
833 | for privilege separation. | ||
834 | |||
835 | OpenBSD 5.5 February 27, 2014 OpenBSD 5.5 | ||