summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cvsignore28
-rw-r--r--ChangeLog1
-rw-r--r--config.h.in1708
-rwxr-xr-xconfigure19741
-rw-r--r--moduli.074
-rw-r--r--openbsd-compat/.cvsignore1
-rw-r--r--openbsd-compat/regress/.cvsignore5
-rw-r--r--regress/.cvsignore31
-rw-r--r--scard/.cvsignore2
-rw-r--r--scp.0163
-rw-r--r--sftp-server.095
-rw-r--r--sftp.0370
-rw-r--r--ssh-add.0123
-rw-r--r--ssh-agent.0128
-rw-r--r--ssh-keygen.0562
-rw-r--r--ssh-keyscan.0110
-rw-r--r--ssh-keysign.053
-rw-r--r--ssh-pkcs11-helper.025
-rw-r--r--ssh.0946
-rw-r--r--ssh_config.0889
-rw-r--r--sshd.0643
-rw-r--r--sshd_config.0835
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
3Makefile
4autom4te.cache
5buildit.sh
6buildpkg.sh
7config.cache
8config.h
9config.h.in
10config.log
11config.status
12configure
13openssh.xml
14opensshd.init
15scp
16sftp
17sftp-server
18ssh
19ssh-add
20ssh-agent
21ssh-keygen
22ssh-keyscan
23ssh-keysign
24ssh-pkcs11-helper
25sshd
26stamp-h.in
27survey
28survey.sh
diff --git a/ChangeLog b/ChangeLog
index 9c59cc43b..38de846ff 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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
21DUALCASE=1; export DUALCASE # for MKS sh
22if 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
29else
30 case `(set -o) 2>/dev/null` in #(
31 *posix*) :
32 set -o posix ;; #(
33 *) :
34 ;;
35esac
36fi
37
38
39as_nl='
40'
41export as_nl
42# Printing a long string crashes Solaris 7 /usr/bin/printf.
43as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
44as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
45as_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.
48if 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 --'
52elif (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'
55else
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'
75fi
76
77# The user is always right.
78if 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 }
84fi
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.)
92IFS=" "" $as_nl"
93
94# Find who we are. Look in the path if we contain no directory separator.
95as_myself=
96case $0 in #((
97 *[\\/]* ) as_myself=$0 ;;
98 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
99for as_dir in $PATH
100do
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
105IFS=$as_save_IFS
106
107 ;;
108esac
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.
111if test "x$as_myself" = x; then
112 as_myself=$0
113fi
114if test ! -f "$as_myself"; then
115 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
116 exit 1
117fi
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.
123for as_var in BASH_ENV ENV MAIL MAILPATH
124do eval test x\${$as_var+set} = xset \
125 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
126done
127PS1='$ '
128PS2='> '
129PS4='+ '
130
131# NLS nuisances.
132LC_ALL=C
133export LC_ALL
134LANGUAGE=C
135export LANGUAGE
136
137# CDPATH.
138(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
139
140if 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
148else
149 case \`(set -o) 2>/dev/null\` in #(
150 *posix*) :
151 set -o posix ;; #(
152 *) :
153 ;;
154esac
155fi
156"
157 as_required="as_fn_return () { (exit \$1); }
158as_fn_success () { as_fn_return 0; }
159as_fn_failure () { as_fn_return 1; }
160as_fn_ret_success () { return 0; }
161as_fn_ret_failure () { return 1; }
162
163exitcode=0
164as_fn_success || { exitcode=1; echo as_fn_success failed.; }
165as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
166as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
167as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
168if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
169
170else
171 exitcode=1; echo positional parameters were not saved.
172fi
173test 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
178test \$(( 1 + 1 )) = 2 || exit 1"
179 if (eval "$as_required") 2>/dev/null; then :
180 as_have_required=yes
181else
182 as_have_required=no
183fi
184 if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
185
186else
187 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
188as_found=false
189for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
190do
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
204fi
205fi
206 done;;
207 esac
208 as_found=false
209done
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
213fi; }
214IFS=$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+"$@"}
233fi
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
249fi
250fi
251fi
252SHELL=${CONFIG_SHELL-/bin/sh}
253export SHELL
254# Unset more variables known to interfere with behavior of common tools.
255CLICOLOR_FORCE= GREP_OPTIONS=
256unset CLICOLOR_FORCE GREP_OPTIONS
257
258## --------------------- ##
259## M4sh Shell Functions. ##
260## --------------------- ##
261# as_fn_unset VAR
262# ---------------
263# Portably unset VAR.
264as_fn_unset ()
265{
266 { eval $1=; unset $1;}
267}
268as_unset=as_fn_unset
269
270# as_fn_set_status STATUS
271# -----------------------
272# Set $? to STATUS, without forking.
273as_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.
281as_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.
291as_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.
341if (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 }'
346else
347 as_fn_append ()
348 {
349 eval $1=\$$1\$2
350 }
351fi # 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.
358if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
359 eval 'as_fn_arith ()
360 {
361 as_val=$(( $* ))
362 }'
363else
364 as_fn_arith ()
365 {
366 as_val=`expr "$@" || test $? -eq 1`
367 }
368fi # 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.
376as_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
387if expr a : '\(a\)' >/dev/null 2>&1 &&
388 test "X`expr 00001 : '.*\(...\)'`" = X001; then
389 as_expr=expr
390else
391 as_expr=false
392fi
393
394if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
395 as_basename=basename
396else
397 as_basename=false
398fi
399
400if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
401 as_dirname=dirname
402else
403 as_dirname=false
404fi
405
406as_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.
426as_cr_letters='abcdefghijklmnopqrstuvwxyz'
427as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
428as_cr_Letters=$as_cr_letters$as_cr_LETTERS
429as_cr_digits='0123456789'
430as_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
464ECHO_C= ECHO_N= ECHO_T=
465case `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';;
475esac
476
477rm -f conf$$ conf$$.exe conf$$.file
478if test -d conf$$.dir; then
479 rm -f conf$$.dir/conf$$.file
480else
481 rm -f conf$$.dir
482 mkdir conf$$.dir 2>/dev/null
483fi
484if (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
498else
499 as_ln_s='cp -p'
500fi
501rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
502rmdir conf$$.dir 2>/dev/null
503
504if mkdir -p . 2>/dev/null; then
505 as_mkdir_p='mkdir -p "$as_dir"'
506else
507 test -d ./-p && rmdir ./-p
508 as_mkdir_p=false
509fi
510
511if test -x / >/dev/null 2>&1; then
512 as_test_x='test -x'
513else
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 '
531fi
532as_executable_p=$as_test_x
533
534# Sed expression to map a string onto a valid CPP name.
535as_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.
538as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
539
540
541test -n "$DJDIR" || exec 7<&0 </dev/null
542exec 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.
547ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
548
549#
550# Initializations.
551#
552ac_default_prefix=/usr/local
553ac_clean_files=
554ac_config_libobj_dir=.
555LIBOBJS=
556cross_compiling=no
557subdirs=
558MFLAGS=
559MAKEFLAGS=
560
561# Identity of this package.
562PACKAGE_NAME='OpenSSH'
563PACKAGE_TARNAME='openssh'
564PACKAGE_VERSION='Portable'
565PACKAGE_STRING='OpenSSH Portable'
566PACKAGE_BUGREPORT='openssh-unix-dev@mindrot.org'
567PACKAGE_URL=''
568
569ac_unique_file="ssh.c"
570# Factoring default headers for most tests.
571ac_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
606ac_subst_vars='LTLIBOBJS
607LIBOBJS
608UNSUPPORTED_ALGORITHMS
609TEST_MALLOC_OPTIONS
610TEST_SSH_IPV6
611piddir
612user_path
613mansubdir
614MANTYPE
615XAUTH_PATH
616STRIP_OPT
617xauth_path
618PRIVSEP_PATH
619K5LIBS
620GSSLIBS
621KRB5CONF
622SSHDLIBS
623SSHLIBS
624SSH_PRIVSEP_USER
625COMMENT_OUT_ECC
626TEST_SSH_ECC
627LIBEDIT
628PKGCONFIG
629LD
630PATH_PASSWD_PROG
631LOGIN_PROGRAM_FALLBACK
632STARTUP_SCRIPT_SHELL
633MAKE_PACKAGE_SUPPORTED
634PATH_USERADD_PROG
635PATH_GROUPADD_PROG
636MANFMT
637TEST_SHELL
638MANDOC
639NROFF
640GROFF
641SH
642TEST_MINUS_S_SH
643ENT
644SED
645PERL
646KILL
647CAT
648AR
649INSTALL_DATA
650INSTALL_SCRIPT
651INSTALL_PROGRAM
652RANLIB
653AWK
654EGREP
655GREP
656CPP
657host_os
658host_vendor
659host_cpu
660host
661build_os
662build_vendor
663build_cpu
664build
665OBJEXT
666EXEEXT
667ac_ct_CC
668CPPFLAGS
669LDFLAGS
670CFLAGS
671CC
672target_alias
673host_alias
674build_alias
675LIBS
676ECHO_T
677ECHO_N
678ECHO_C
679DEFS
680mandir
681localedir
682libdir
683psdir
684pdfdir
685dvidir
686htmldir
687infodir
688docdir
689oldincludedir
690includedir
691localstatedir
692sharedstatedir
693sysconfdir
694datadir
695datarootdir
696libexecdir
697sbindir
698bindir
699program_transform_name
700prefix
701exec_prefix
702PACKAGE_URL
703PACKAGE_BUGREPORT
704PACKAGE_STRING
705PACKAGE_VERSION
706PACKAGE_TARNAME
707PACKAGE_NAME
708PATH_SEPARATOR
709SHELL'
710ac_subst_files=''
711ac_user_opts='
712enable_option_checking
713enable_largefile
714with_stackprotect
715with_hardening
716with_rpath
717with_cflags
718with_cppflags
719with_ldflags
720with_libs
721with_Werror
722with_solaris_contracts
723with_solaris_projects
724with_osfsia
725with_zlib
726with_zlib_version_check
727with_skey
728with_tcp_wrappers
729with_ldns
730with_libedit
731with_audit
732with_pie
733with_ssl_dir
734with_openssl_header_check
735with_ssl_engine
736with_prngd_port
737with_prngd_socket
738with_pam
739with_privsep_user
740with_sandbox
741with_selinux
742with_kerberos5
743with_privsep_path
744with_xauth
745enable_strip
746with_maildir
747with_mantype
748with_md5_passwords
749with_shadow
750with_ipaddr_display
751enable_etc_default_login
752with_default_path
753with_superuser_path
754with_4in6
755with_bsd_auth
756with_pid_dir
757enable_lastlog
758enable_utmp
759enable_utmpx
760enable_wtmp
761enable_wtmpx
762enable_libutil
763enable_pututline
764enable_pututxline
765with_lastlog
766'
767 ac_precious_vars='build_alias
768host_alias
769target_alias
770CC
771CFLAGS
772LDFLAGS
773LIBS
774CPPFLAGS
775CPP'
776
777
778# Initialize some variables set by options.
779ac_init_help=
780ac_init_version=false
781ac_unrecognized_opts=
782ac_unrecognized_sep=
783# The variables have the same names as the options, with
784# dashes changed to underlines.
785cache_file=/dev/null
786exec_prefix=NONE
787no_create=
788no_recursion=
789prefix=NONE
790program_prefix=NONE
791program_suffix=NONE
792program_transform_name=s,x,x,
793silent=
794site=
795srcdir=
796verbose=
797x_includes=NONE
798x_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.)
806bindir='${exec_prefix}/bin'
807sbindir='${exec_prefix}/sbin'
808libexecdir='${exec_prefix}/libexec'
809datarootdir='${prefix}/share'
810datadir='${datarootdir}'
811sysconfdir='${prefix}/etc'
812sharedstatedir='${prefix}/com'
813localstatedir='${prefix}/var'
814includedir='${prefix}/include'
815oldincludedir='/usr/include'
816docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
817infodir='${datarootdir}/info'
818htmldir='${docdir}'
819dvidir='${docdir}'
820pdfdir='${docdir}'
821psdir='${docdir}'
822libdir='${exec_prefix}/lib'
823localedir='${datarootdir}/locale'
824mandir='${datarootdir}/man'
825
826ac_prev=
827ac_dashdash=
828for ac_option
829do
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'
1162Try \`$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
1184done
1185
1186if test -n "$ac_prev"; then
1187 ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1188 as_fn_error $? "missing argument to $ac_option"
1189fi
1190
1191if 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
1197fi
1198
1199# Check all directory arguments for consistency.
1200for 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
1204do
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"
1218done
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.
1223build=$build_alias
1224host=$host_alias
1225target=$target_alias
1226
1227# FIXME: To remove some day.
1228if 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
1236fi
1237
1238ac_tool_prefix=
1239test -n "$host_alias" && ac_tool_prefix=$host_alias-
1240
1241test "$silent" = yes && exec 6>/dev/null
1242
1243
1244ac_pwd=`pwd` && test -n "$ac_pwd" &&
1245ac_ls_di=`ls -di .` &&
1246ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1247 as_fn_error $? "working directory cannot be determined"
1248test "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.
1253if 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
1283else
1284 ac_srcdir_defaulted=no
1285fi
1286if 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"
1289fi
1290ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1291ac_abs_confdir=`(
1292 cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
1293 pwd)`
1294# When building in place, set srcdir=.
1295if test "$ac_abs_confdir" = "$ac_pwd"; then
1296 srcdir=.
1297fi
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.
1301case $srcdir in
1302*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1303esac
1304for 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}
1309done
1310
1311#
1312# Report the --help message.
1313#
1314if 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
1320Usage: $0 [OPTION]... [VAR=VALUE]...
1321
1322To assign environment variables (e.g., CC, CFLAGS...), specify them as
1323VAR=VALUE. See below for descriptions of some of the useful variables.
1324
1325Defaults for the options are specified in brackets.
1326
1327Configuration:
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
1338Installation 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
1344By default, \`make install' will install all the files in
1345\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
1346an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1347for instance \`--prefix=\$HOME'.
1348
1349For better control, use the options below.
1350
1351Fine 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
1375System 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
1379fi
1380
1381if 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
1387Optional 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
1403Optional 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
1449Some 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
1459Use these variables to override the choices made by `configure' or to help
1460it to find libraries and programs with nonstandard names/locations.
1461
1462Report bugs to <openssh-unix-dev@mindrot.org>.
1463_ACEOF
1464ac_status=$?
1465fi
1466
1467if 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
1475case "$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 ;;
1485esac
1486ac_abs_top_builddir=$ac_pwd
1487ac_abs_builddir=$ac_pwd$ac_dir_suffix
1488# for backward compatibility:
1489ac_top_builddir=$ac_top_build_prefix
1490
1491case $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 ;;
1504esac
1505ac_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
1520fi
1521
1522test -n "$ac_init_help" && exit $ac_status
1523if $ac_init_version; then
1524 cat <<\_ACEOF
1525OpenSSH configure Portable
1526generated by GNU Autoconf 2.68
1527
1528Copyright (C) 2010 Free Software Foundation, Inc.
1529This configure script is free software; the Free Software Foundation
1530gives unlimited permission to copy, distribute and modify it.
1531_ACEOF
1532 exit
1533fi
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.
1542ac_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"
1547case "(($ac_try" in
1548 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1549 *) ac_try_echo=$ac_try;;
1550esac
1551eval 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
1566else
1567 $as_echo "$as_me: failed program was:" >&5
1568sed 's/^/| /' conftest.$ac_ext >&5
1569
1570 ac_retval=1
1571fi
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.
1581ac_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"
1585case "(($ac_try" in
1586 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1587 *) ac_try_echo=$ac_try;;
1588esac
1589eval 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;;
1598esac
1599eval 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
1606else
1607 $as_echo "$as_me: program exited with status $ac_status" >&5
1608 $as_echo "$as_me: failed program was:" >&5
1609sed 's/^/| /' conftest.$ac_ext >&5
1610
1611 ac_retval=$ac_status
1612fi
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.
1622ac_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"
1626case "(($ac_try" in
1627 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1628 *) ac_try_echo=$ac_try;;
1629esac
1630eval 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
1645else
1646 $as_echo "$as_me: failed program was:" >&5
1647sed 's/^/| /' conftest.$ac_ext >&5
1648
1649 ac_retval=1
1650fi
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.
1660ac_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; }
1665if eval \${$3+:} false; then :
1666 $as_echo_n "(cached) " >&6
1667else
1668 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1669/* end confdefs.h. */
1670$4
1671#include <$2>
1672_ACEOF
1673if ac_fn_c_try_compile "$LINENO"; then :
1674 eval "$3=yes"
1675else
1676 eval "$3=no"
1677fi
1678rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1679fi
1680eval 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.
1691ac_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; }
1698if eval \${$3+:} false; then :
1699 $as_echo_n "(cached) " >&6
1700else
1701 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1702/* end confdefs.h. */
1703$4
1704int
1705main ()
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
1719if ac_fn_c_try_compile "$LINENO"; then :
1720 eval "$3=yes"
1721else
1722 eval "$3=no"
1723fi
1724rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1725fi
1726eval 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.
1736ac_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"
1741case "(($ac_try" in
1742 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1743 *) ac_try_echo=$ac_try;;
1744esac
1745eval 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
1763else
1764 $as_echo "$as_me: failed program was:" >&5
1765sed 's/^/| /' conftest.$ac_ext >&5
1766
1767 ac_retval=1
1768fi
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.
1784ac_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; }
1790if eval \${$3+:} false; then :
1791 $as_echo_n "(cached) " >&6
1792fi
1793eval ac_res=\$$3
1794 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1795$as_echo "$ac_res" >&6; }
1796else
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; }
1800cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1801/* end confdefs.h. */
1802$4
1803#include <$2>
1804_ACEOF
1805if ac_fn_c_try_compile "$LINENO"; then :
1806 ac_header_compiler=yes
1807else
1808 ac_header_compiler=no
1809fi
1810rm -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; }
1817cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1818/* end confdefs.h. */
1819#include <$2>
1820_ACEOF
1821if ac_fn_c_try_cpp "$LINENO"; then :
1822 ac_header_preproc=yes
1823else
1824 ac_header_preproc=no
1825fi
1826rm -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?
1831case $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 ;;
1854esac
1855 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1856$as_echo_n "checking for $2... " >&6; }
1857if eval \${$3+:} false; then :
1858 $as_echo_n "(cached) " >&6
1859else
1860 eval "$3=\$ac_header_compiler"
1861fi
1862eval ac_res=\$$3
1863 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1864$as_echo "$ac_res" >&6; }
1865fi
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
1873ac_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; }
1878if eval \${$3+:} false; then :
1879 $as_echo_n "(cached) " >&6
1880else
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
1904extern "C"
1905#endif
1906char $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
1911choke me
1912#endif
1913
1914int
1915main ()
1916{
1917return $2 ();
1918 ;
1919 return 0;
1920}
1921_ACEOF
1922if ac_fn_c_try_link "$LINENO"; then :
1923 eval "$3=yes"
1924else
1925 eval "$3=no"
1926fi
1927rm -f core conftest.err conftest.$ac_objext \
1928 conftest$ac_exeext conftest.$ac_ext
1929fi
1930eval 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.
1941ac_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; }
1946if eval \${$3+:} false; then :
1947 $as_echo_n "(cached) " >&6
1948else
1949 eval "$3=no"
1950 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1951/* end confdefs.h. */
1952$4
1953int
1954main ()
1955{
1956if (sizeof ($2))
1957 return 0;
1958 ;
1959 return 0;
1960}
1961_ACEOF
1962if ac_fn_c_try_compile "$LINENO"; then :
1963 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1964/* end confdefs.h. */
1965$4
1966int
1967main ()
1968{
1969if (sizeof (($2)))
1970 return 0;
1971 ;
1972 return 0;
1973}
1974_ACEOF
1975if ac_fn_c_try_compile "$LINENO"; then :
1976
1977else
1978 eval "$3=yes"
1979fi
1980rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1981fi
1982rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1983fi
1984eval 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
1996ac_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.
2001cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2002/* end confdefs.h. */
2003$4
2004int
2005main ()
2006{
2007static int test_array [1 - 2 * !(($2) >= 0)];
2008test_array [0] = 0
2009
2010 ;
2011 return 0;
2012}
2013_ACEOF
2014if 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
2020int
2021main ()
2022{
2023static int test_array [1 - 2 * !(($2) <= $ac_mid)];
2024test_array [0] = 0
2025
2026 ;
2027 return 0;
2028}
2029_ACEOF
2030if ac_fn_c_try_compile "$LINENO"; then :
2031 ac_hi=$ac_mid; break
2032else
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
2039fi
2040rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2041 done
2042else
2043 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2044/* end confdefs.h. */
2045$4
2046int
2047main ()
2048{
2049static int test_array [1 - 2 * !(($2) < 0)];
2050test_array [0] = 0
2051
2052 ;
2053 return 0;
2054}
2055_ACEOF
2056if 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
2062int
2063main ()
2064{
2065static int test_array [1 - 2 * !(($2) >= $ac_mid)];
2066test_array [0] = 0
2067
2068 ;
2069 return 0;
2070}
2071_ACEOF
2072if ac_fn_c_try_compile "$LINENO"; then :
2073 ac_lo=$ac_mid; break
2074else
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
2081fi
2082rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2083 done
2084else
2085 ac_lo= ac_hi=
2086fi
2087rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2088fi
2089rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2090# Binary search between lo and hi bounds.
2091while 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
2096int
2097main ()
2098{
2099static int test_array [1 - 2 * !(($2) <= $ac_mid)];
2100test_array [0] = 0
2101
2102 ;
2103 return 0;
2104}
2105_ACEOF
2106if ac_fn_c_try_compile "$LINENO"; then :
2107 ac_hi=$ac_mid
2108else
2109 as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
2110fi
2111rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2112done
2113case $ac_lo in #((
2114?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
2115'') ac_retval=1 ;;
2116esac
2117 else
2118 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2119/* end confdefs.h. */
2120$4
2121static long int longval () { return $2; }
2122static unsigned long int ulongval () { return $2; }
2123#include <stdio.h>
2124#include <stdlib.h>
2125int
2126main ()
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
2154if ac_fn_c_try_run "$LINENO"; then :
2155 echo >>conftest.val; read $3 <conftest.val; ac_retval=0
2156else
2157 ac_retval=1
2158fi
2159rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
2160 conftest.$ac_objext conftest.beam conftest.$ac_ext
2161rm -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.
2173ac_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; }
2178if eval \${$4+:} false; then :
2179 $as_echo_n "(cached) " >&6
2180else
2181 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2182/* end confdefs.h. */
2183$5
2184int
2185main ()
2186{
2187static $2 ac_aggr;
2188if (ac_aggr.$3)
2189return 0;
2190 ;
2191 return 0;
2192}
2193_ACEOF
2194if ac_fn_c_try_compile "$LINENO"; then :
2195 eval "$4=yes"
2196else
2197 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2198/* end confdefs.h. */
2199$5
2200int
2201main ()
2202{
2203static $2 ac_aggr;
2204if (sizeof ac_aggr.$3)
2205return 0;
2206 ;
2207 return 0;
2208}
2209_ACEOF
2210if ac_fn_c_try_compile "$LINENO"; then :
2211 eval "$4=yes"
2212else
2213 eval "$4=no"
2214fi
2215rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2216fi
2217rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2218fi
2219eval 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
2225cat >config.log <<_ACEOF
2226This file contains any messages produced by compilers while
2227running configure, to aid debugging if configure makes a mistake.
2228
2229It was created by OpenSSH $as_me Portable, which was
2230generated by GNU Autoconf 2.68. Invocation command line was
2231
2232 $ $0 $@
2233
2234_ACEOF
2235exec 5>>config.log
2236{
2237cat <<_ASUNAME
2238## --------- ##
2239## Platform. ##
2240## --------- ##
2241
2242hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
2243uname -m = `(uname -m) 2>/dev/null || echo unknown`
2244uname -r = `(uname -r) 2>/dev/null || echo unknown`
2245uname -s = `(uname -s) 2>/dev/null || echo unknown`
2246uname -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
2261as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2262for as_dir in $PATH
2263do
2264 IFS=$as_save_IFS
2265 test -z "$as_dir" && as_dir=.
2266 $as_echo "PATH: $as_dir"
2267 done
2268IFS=$as_save_IFS
2269
2270} >&5
2271
2272cat >&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.
2287ac_configure_args=
2288ac_configure_args0=
2289ac_configure_args1=
2290ac_must_keep_next=false
2291for ac_pass in 1 2
2292do
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
2326done
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.
2335trap '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
2422for ac_signal in 1 2 13 15; do
2423 trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
2424done
2425ac_signal=0
2426
2427# confdefs.h avoids OS command line length limits that DEFS can exceed.
2428rm -f -r conftest* confdefs.h
2429
2430$as_echo "/* confdefs.h */" > confdefs.h
2431
2432# Predefined preprocessor variables.
2433
2434cat >>confdefs.h <<_ACEOF
2435#define PACKAGE_NAME "$PACKAGE_NAME"
2436_ACEOF
2437
2438cat >>confdefs.h <<_ACEOF
2439#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
2440_ACEOF
2441
2442cat >>confdefs.h <<_ACEOF
2443#define PACKAGE_VERSION "$PACKAGE_VERSION"
2444_ACEOF
2445
2446cat >>confdefs.h <<_ACEOF
2447#define PACKAGE_STRING "$PACKAGE_STRING"
2448_ACEOF
2449
2450cat >>confdefs.h <<_ACEOF
2451#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
2452_ACEOF
2453
2454cat >>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.
2461ac_site_file1=NONE
2462ac_site_file2=NONE
2463if 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
2470elif test "x$prefix" != xNONE; then
2471 ac_site_file1=$prefix/share/config.site
2472 ac_site_file2=$prefix/etc/config.site
2473else
2474 ac_site_file1=$ac_default_prefix/share/config.site
2475 ac_site_file2=$ac_default_prefix/etc/config.site
2476fi
2477for ac_site_file in "$ac_site_file1" "$ac_site_file2"
2478do
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;}
2487as_fn_error $? "failed to load site script $ac_site_file
2488See \`config.log' for more details" "$LINENO" 5; }
2489 fi
2490done
2491
2492if 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
2503else
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
2507fi
2508
2509# Check that the precious variables saved in the cache have kept the same
2510# value.
2511ac_cache_corrupted=false
2512for 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
2558done
2559if $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
2565fi
2566## -------------------- ##
2567## Main body of script. ##
2568## -------------------- ##
2569
2570ac_ext=c
2571ac_cpp='$CPP $CPPFLAGS'
2572ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2573ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2574ac_compiler_gnu=$ac_cv_c_compiler_gnu
2575
2576
2577
2578
2579ac_ext=c
2580ac_cpp='$CPP $CPPFLAGS'
2581ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2582ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2583ac_compiler_gnu=$ac_cv_c_compiler_gnu
2584
2585
2586ac_config_headers="$ac_config_headers config.h"
2587
2588ac_ext=c
2589ac_cpp='$CPP $CPPFLAGS'
2590ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2591ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2592ac_compiler_gnu=$ac_cv_c_compiler_gnu
2593if 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.
2595set 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; }
2598if ${ac_cv_prog_CC+:} false; then :
2599 $as_echo_n "(cached) " >&6
2600else
2601 if test -n "$CC"; then
2602 ac_cv_prog_CC="$CC" # Let the user override the test.
2603else
2604as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2605for as_dir in $PATH
2606do
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
2615done
2616 done
2617IFS=$as_save_IFS
2618
2619fi
2620fi
2621CC=$ac_cv_prog_CC
2622if test -n "$CC"; then
2623 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2624$as_echo "$CC" >&6; }
2625else
2626 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2627$as_echo "no" >&6; }
2628fi
2629
2630
2631fi
2632if 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.
2635set 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; }
2638if ${ac_cv_prog_ac_ct_CC+:} false; then :
2639 $as_echo_n "(cached) " >&6
2640else
2641 if test -n "$ac_ct_CC"; then
2642 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2643else
2644as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2645for as_dir in $PATH
2646do
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
2655done
2656 done
2657IFS=$as_save_IFS
2658
2659fi
2660fi
2661ac_ct_CC=$ac_cv_prog_ac_ct_CC
2662if 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; }
2665else
2666 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2667$as_echo "no" >&6; }
2668fi
2669
2670 if test "x$ac_ct_CC" = x; then
2671 CC=""
2672 else
2673 case $cross_compiling:$ac_tool_warned in
2674yes:)
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;}
2677ac_tool_warned=yes ;;
2678esac
2679 CC=$ac_ct_CC
2680 fi
2681else
2682 CC="$ac_cv_prog_CC"
2683fi
2684
2685if 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.
2688set 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; }
2691if ${ac_cv_prog_CC+:} false; then :
2692 $as_echo_n "(cached) " >&6
2693else
2694 if test -n "$CC"; then
2695 ac_cv_prog_CC="$CC" # Let the user override the test.
2696else
2697as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2698for as_dir in $PATH
2699do
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
2708done
2709 done
2710IFS=$as_save_IFS
2711
2712fi
2713fi
2714CC=$ac_cv_prog_CC
2715if test -n "$CC"; then
2716 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2717$as_echo "$CC" >&6; }
2718else
2719 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2720$as_echo "no" >&6; }
2721fi
2722
2723
2724 fi
2725fi
2726if test -z "$CC"; then
2727 # Extract the first word of "cc", so it can be a program name with args.
2728set 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; }
2731if ${ac_cv_prog_CC+:} false; then :
2732 $as_echo_n "(cached) " >&6
2733else
2734 if test -n "$CC"; then
2735 ac_cv_prog_CC="$CC" # Let the user override the test.
2736else
2737 ac_prog_rejected=no
2738as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2739for as_dir in $PATH
2740do
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
2753done
2754 done
2755IFS=$as_save_IFS
2756
2757if 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
2768fi
2769fi
2770fi
2771CC=$ac_cv_prog_CC
2772if test -n "$CC"; then
2773 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2774$as_echo "$CC" >&6; }
2775else
2776 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2777$as_echo "no" >&6; }
2778fi
2779
2780
2781fi
2782if 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.
2787set 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; }
2790if ${ac_cv_prog_CC+:} false; then :
2791 $as_echo_n "(cached) " >&6
2792else
2793 if test -n "$CC"; then
2794 ac_cv_prog_CC="$CC" # Let the user override the test.
2795else
2796as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2797for as_dir in $PATH
2798do
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
2807done
2808 done
2809IFS=$as_save_IFS
2810
2811fi
2812fi
2813CC=$ac_cv_prog_CC
2814if test -n "$CC"; then
2815 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2816$as_echo "$CC" >&6; }
2817else
2818 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2819$as_echo "no" >&6; }
2820fi
2821
2822
2823 test -n "$CC" && break
2824 done
2825fi
2826if test -z "$CC"; then
2827 ac_ct_CC=$CC
2828 for ac_prog in cl.exe
2829do
2830 # Extract the first word of "$ac_prog", so it can be a program name with args.
2831set 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; }
2834if ${ac_cv_prog_ac_ct_CC+:} false; then :
2835 $as_echo_n "(cached) " >&6
2836else
2837 if test -n "$ac_ct_CC"; then
2838 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2839else
2840as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2841for as_dir in $PATH
2842do
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
2851done
2852 done
2853IFS=$as_save_IFS
2854
2855fi
2856fi
2857ac_ct_CC=$ac_cv_prog_ac_ct_CC
2858if 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; }
2861else
2862 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2863$as_echo "no" >&6; }
2864fi
2865
2866
2867 test -n "$ac_ct_CC" && break
2868done
2869
2870 if test "x$ac_ct_CC" = x; then
2871 CC=""
2872 else
2873 case $cross_compiling:$ac_tool_warned in
2874yes:)
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;}
2877ac_tool_warned=yes ;;
2878esac
2879 CC=$ac_ct_CC
2880 fi
2881fi
2882
2883fi
2884
2885
2886test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2887$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2888as_fn_error $? "no acceptable C compiler found in \$PATH
2889See \`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
2893set X $ac_compile
2894ac_compiler=$2
2895for ac_option in --version -v -V -qversion; do
2896 { { ac_try="$ac_compiler $ac_option >&5"
2897case "(($ac_try" in
2898 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2899 *) ac_try_echo=$ac_try;;
2900esac
2901eval 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; }
2914done
2915
2916cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2917/* end confdefs.h. */
2918
2919int
2920main ()
2921{
2922
2923 ;
2924 return 0;
2925}
2926_ACEOF
2927ac_clean_files_save=$ac_clean_files
2928ac_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; }
2934ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
2935
2936# The possible output files:
2937ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
2938
2939ac_rmfiles=
2940for ac_file in $ac_files
2941do
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
2946done
2947rm -f $ac_rmfiles
2948
2949if { { ac_try="$ac_link_default"
2950case "(($ac_try" in
2951 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2952 *) ac_try_echo=$ac_try;;
2953esac
2954eval 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.
2965for ac_file in $ac_files ''
2966do
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
2989done
2990test "$ac_cv_exeext" = no && ac_cv_exeext=
2991
2992else
2993 ac_file=''
2994fi
2995if 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
2999sed '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;}
3003as_fn_error 77 "C compiler cannot create executables
3004See \`config.log' for more details" "$LINENO" 5; }
3005else
3006 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
3007$as_echo "yes" >&6; }
3008fi
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; }
3013ac_exeext=$ac_cv_exeext
3014
3015rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
3016ac_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; }
3019if { { ac_try="$ac_link"
3020case "(($ac_try" in
3021 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3022 *) ac_try_echo=$ac_try;;
3023esac
3024eval 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'.
3034for 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
3042done
3043else
3044 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3045$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3046as_fn_error $? "cannot compute suffix of executables: cannot compile and link
3047See \`config.log' for more details" "$LINENO" 5; }
3048fi
3049rm -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
3053rm -f conftest.$ac_ext
3054EXEEXT=$ac_cv_exeext
3055ac_exeext=$EXEEXT
3056cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3057/* end confdefs.h. */
3058#include <stdio.h>
3059int
3060main ()
3061{
3062FILE *f = fopen ("conftest.out", "w");
3063 return ferror (f) || fclose (f) != 0;
3064
3065 ;
3066 return 0;
3067}
3068_ACEOF
3069ac_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; }
3074if test "$cross_compiling" != yes; then
3075 { { ac_try="$ac_link"
3076case "(($ac_try" in
3077 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3078 *) ac_try_echo=$ac_try;;
3079esac
3080eval 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;;
3090esac
3091eval 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;}
3104as_fn_error $? "cannot run C compiled programs.
3105If you meant to cross compile, use \`--host'.
3106See \`config.log' for more details" "$LINENO" 5; }
3107 fi
3108 fi
3109fi
3110{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
3111$as_echo "$cross_compiling" >&6; }
3112
3113rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
3114ac_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; }
3117if ${ac_cv_objext+:} false; then :
3118 $as_echo_n "(cached) " >&6
3119else
3120 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3121/* end confdefs.h. */
3122
3123int
3124main ()
3125{
3126
3127 ;
3128 return 0;
3129}
3130_ACEOF
3131rm -f conftest.o conftest.obj
3132if { { ac_try="$ac_compile"
3133case "(($ac_try" in
3134 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3135 *) ac_try_echo=$ac_try;;
3136esac
3137eval 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
3150done
3151else
3152 $as_echo "$as_me: failed program was:" >&5
3153sed '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;}
3157as_fn_error $? "cannot compute suffix of object files: cannot compile
3158See \`config.log' for more details" "$LINENO" 5; }
3159fi
3160rm -f conftest.$ac_cv_objext conftest.$ac_ext
3161fi
3162{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
3163$as_echo "$ac_cv_objext" >&6; }
3164OBJEXT=$ac_cv_objext
3165ac_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; }
3168if ${ac_cv_c_compiler_gnu+:} false; then :
3169 $as_echo_n "(cached) " >&6
3170else
3171 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3172/* end confdefs.h. */
3173
3174int
3175main ()
3176{
3177#ifndef __GNUC__
3178 choke me
3179#endif
3180
3181 ;
3182 return 0;
3183}
3184_ACEOF
3185if ac_fn_c_try_compile "$LINENO"; then :
3186 ac_compiler_gnu=yes
3187else
3188 ac_compiler_gnu=no
3189fi
3190rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3191ac_cv_c_compiler_gnu=$ac_compiler_gnu
3192
3193fi
3194{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
3195$as_echo "$ac_cv_c_compiler_gnu" >&6; }
3196if test $ac_compiler_gnu = yes; then
3197 GCC=yes
3198else
3199 GCC=
3200fi
3201ac_test_CFLAGS=${CFLAGS+set}
3202ac_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; }
3205if ${ac_cv_prog_cc_g+:} false; then :
3206 $as_echo_n "(cached) " >&6
3207else
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
3215int
3216main ()
3217{
3218
3219 ;
3220 return 0;
3221}
3222_ACEOF
3223if ac_fn_c_try_compile "$LINENO"; then :
3224 ac_cv_prog_cc_g=yes
3225else
3226 CFLAGS=""
3227 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3228/* end confdefs.h. */
3229
3230int
3231main ()
3232{
3233
3234 ;
3235 return 0;
3236}
3237_ACEOF
3238if ac_fn_c_try_compile "$LINENO"; then :
3239
3240else
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
3246int
3247main ()
3248{
3249
3250 ;
3251 return 0;
3252}
3253_ACEOF
3254if ac_fn_c_try_compile "$LINENO"; then :
3255 ac_cv_prog_cc_g=yes
3256fi
3257rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3258fi
3259rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3260fi
3261rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3262 ac_c_werror_flag=$ac_save_c_werror_flag
3263fi
3264{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
3265$as_echo "$ac_cv_prog_cc_g" >&6; }
3266if test "$ac_test_CFLAGS" = set; then
3267 CFLAGS=$ac_save_CFLAGS
3268elif 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
3274else
3275 if test "$GCC" = yes; then
3276 CFLAGS="-O2"
3277 else
3278 CFLAGS=
3279 fi
3280fi
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; }
3283if ${ac_cv_prog_cc_c89+:} false; then :
3284 $as_echo_n "(cached) " >&6
3285else
3286 ac_cv_prog_cc_c89=no
3287ac_save_CC=$CC
3288cat 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. */
3295struct buf { int x; };
3296FILE * (*rcsopen) (struct buf *, struct stat *, int);
3297static char *e (p, i)
3298 char **p;
3299 int i;
3300{
3301 return p[i];
3302}
3303static 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. */
3320int 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'
3325int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
3326
3327int test (int i, double x);
3328struct s1 {int (*f) (int a);};
3329struct s2 {int (*f) (double a);};
3330int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
3331int argc;
3332char **argv;
3333int
3334main ()
3335{
3336return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
3337 ;
3338 return 0;
3339}
3340_ACEOF
3341for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
3342 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
3343do
3344 CC="$ac_save_CC $ac_arg"
3345 if ac_fn_c_try_compile "$LINENO"; then :
3346 ac_cv_prog_cc_c89=$ac_arg
3347fi
3348rm -f core conftest.err conftest.$ac_objext
3349 test "x$ac_cv_prog_cc_c89" != "xno" && break
3350done
3351rm -f conftest.$ac_ext
3352CC=$ac_save_CC
3353
3354fi
3355# AC_CACHE_VAL
3356case "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; } ;;
3367esac
3368if test "x$ac_cv_prog_cc_c89" != xno; then :
3369
3370fi
3371
3372ac_ext=c
3373ac_cpp='$CPP $CPPFLAGS'
3374ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3375ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3376ac_compiler_gnu=$ac_cv_c_compiler_gnu
3377
3378ac_aux_dir=
3379for 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
3393done
3394if test -z "$ac_aux_dir"; then
3395 as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
3396fi
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.
3402ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
3403ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
3404ac_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; }
3413if ${ac_cv_build+:} false; then :
3414 $as_echo_n "(cached) " >&6
3415else
3416 ac_build_alias=$build_alias
3417test "x$ac_build_alias" = x &&
3418 ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
3419test "x$ac_build_alias" = x &&
3420 as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
3421ac_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
3424fi
3425{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
3426$as_echo "$ac_cv_build" >&6; }
3427case $ac_cv_build in
3428*-*-*) ;;
3429*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
3430esac
3431build=$ac_cv_build
3432ac_save_IFS=$IFS; IFS='-'
3433set x $ac_cv_build
3434shift
3435build_cpu=$1
3436build_vendor=$2
3437shift; shift
3438# Remember, the first character of IFS is used to create $*,
3439# except with old shells:
3440build_os=$*
3441IFS=$ac_save_IFS
3442case $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; }
3447if ${ac_cv_host+:} false; then :
3448 $as_echo_n "(cached) " >&6
3449else
3450 if test "x$host_alias" = x; then
3451 ac_cv_host=$ac_cv_build
3452else
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
3455fi
3456
3457fi
3458{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
3459$as_echo "$ac_cv_host" >&6; }
3460case $ac_cv_host in
3461*-*-*) ;;
3462*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
3463esac
3464host=$ac_cv_host
3465ac_save_IFS=$IFS; IFS='-'
3466set x $ac_cv_host
3467shift
3468host_cpu=$1
3469host_vendor=$2
3470shift; shift
3471# Remember, the first character of IFS is used to create $*,
3472# except with old shells:
3473host_os=$*
3474IFS=$ac_save_IFS
3475case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
3476
3477
3478
3479ac_ext=c
3480ac_cpp='$CPP $CPPFLAGS'
3481ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3482ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3483ac_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.
3487if test -n "$CPP" && test -d "$CPP"; then
3488 CPP=
3489fi
3490if test -z "$CPP"; then
3491 if ${ac_cv_prog_CPP+:} false; then :
3492 $as_echo_n "(cached) " >&6
3493else
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
3498for ac_c_preproc_warn_flag in '' yes
3499do
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
3515if ac_fn_c_try_cpp "$LINENO"; then :
3516
3517else
3518 # Broken: fails on valid input.
3519continue
3520fi
3521rm -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
3529if ac_fn_c_try_cpp "$LINENO"; then :
3530 # Broken: success on invalid input.
3531continue
3532else
3533 # Passes both tests.
3534ac_preproc_ok=:
3535break
3536fi
3537rm -f conftest.err conftest.i conftest.$ac_ext
3538
3539done
3540# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
3541rm -f conftest.i conftest.err conftest.$ac_ext
3542if $ac_preproc_ok; then :
3543 break
3544fi
3545
3546 done
3547 ac_cv_prog_CPP=$CPP
3548
3549fi
3550 CPP=$ac_cv_prog_CPP
3551else
3552 ac_cv_prog_CPP=$CPP
3553fi
3554{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
3555$as_echo "$CPP" >&6; }
3556ac_preproc_ok=false
3557for ac_c_preproc_warn_flag in '' yes
3558do
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
3574if ac_fn_c_try_cpp "$LINENO"; then :
3575
3576else
3577 # Broken: fails on valid input.
3578continue
3579fi
3580rm -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
3588if ac_fn_c_try_cpp "$LINENO"; then :
3589 # Broken: success on invalid input.
3590continue
3591else
3592 # Passes both tests.
3593ac_preproc_ok=:
3594break
3595fi
3596rm -f conftest.err conftest.i conftest.$ac_ext
3597
3598done
3599# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
3600rm -f conftest.i conftest.err conftest.$ac_ext
3601if $ac_preproc_ok; then :
3602
3603else
3604 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3605$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3606as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
3607See \`config.log' for more details" "$LINENO" 5; }
3608fi
3609
3610ac_ext=c
3611ac_cpp='$CPP $CPPFLAGS'
3612ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3613ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3614ac_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; }
3619if ${ac_cv_path_GREP+:} false; then :
3620 $as_echo_n "(cached) " >&6
3621else
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
3626for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
3627do
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
3636case `"$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;;
3660esac
3661
3662 $ac_path_GREP_found && break 3
3663 done
3664 done
3665 done
3666IFS=$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
3670else
3671 ac_cv_path_GREP=$GREP
3672fi
3673
3674fi
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; }
3682if ${ac_cv_path_EGREP+:} false; then :
3683 $as_echo_n "(cached) " >&6
3684else
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
3692for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
3693do
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
3702case `"$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;;
3726esac
3727
3728 $ac_path_EGREP_found && break 3
3729 done
3730 done
3731 done
3732IFS=$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
3736else
3737 ac_cv_path_EGREP=$EGREP
3738fi
3739
3740 fi
3741fi
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; }
3749if ${ac_cv_header_stdc+:} false; then :
3750 $as_echo_n "(cached) " >&6
3751else
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
3759int
3760main ()
3761{
3762
3763 ;
3764 return 0;
3765}
3766_ACEOF
3767if ac_fn_c_try_compile "$LINENO"; then :
3768 ac_cv_header_stdc=yes
3769else
3770 ac_cv_header_stdc=no
3771fi
3772rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3773
3774if 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
3781if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
3782 $EGREP "memchr" >/dev/null 2>&1; then :
3783
3784else
3785 ac_cv_header_stdc=no
3786fi
3787rm -f conftest*
3788
3789fi
3790
3791if 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
3798if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
3799 $EGREP "free" >/dev/null 2>&1; then :
3800
3801else
3802 ac_cv_header_stdc=no
3803fi
3804rm -f conftest*
3805
3806fi
3807
3808if 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 :
3812else
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)))
3829int
3830main ()
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
3840if ac_fn_c_try_run "$LINENO"; then :
3841
3842else
3843 ac_cv_header_stdc=no
3844fi
3845rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
3846 conftest.$ac_objext conftest.beam conftest.$ac_ext
3847fi
3848
3849fi
3850fi
3851{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
3852$as_echo "$ac_cv_header_stdc" >&6; }
3853if test $ac_cv_header_stdc = yes; then
3854
3855$as_echo "#define STDC_HEADERS 1" >>confdefs.h
3856
3857fi
3858
3859# On IRIX 5.3, sys/types and inttypes.h are conflicting.
3860for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
3861 inttypes.h stdint.h unistd.h
3862do :
3863 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
3864ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
3865"
3866if 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
3871fi
3872
3873done
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; }
3878if ${ac_cv_c_bigendian+:} false; then :
3879 $as_echo_n "(cached) " >&6
3880else
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
3891if 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
3914fi
3915rm -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
3923int
3924main ()
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
3936if 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
3943int
3944main ()
3945{
3946#if BYTE_ORDER != BIG_ENDIAN
3947 not big endian
3948 #endif
3949
3950 ;
3951 return 0;
3952}
3953_ACEOF
3954if ac_fn_c_try_compile "$LINENO"; then :
3955 ac_cv_c_bigendian=yes
3956else
3957 ac_cv_c_bigendian=no
3958fi
3959rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3960fi
3961rm -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
3969int
3970main ()
3971{
3972#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
3973 bogus endian macros
3974 #endif
3975
3976 ;
3977 return 0;
3978}
3979_ACEOF
3980if 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
3986int
3987main ()
3988{
3989#ifndef _BIG_ENDIAN
3990 not big endian
3991 #endif
3992
3993 ;
3994 return 0;
3995}
3996_ACEOF
3997if ac_fn_c_try_compile "$LINENO"; then :
3998 ac_cv_c_bigendian=yes
3999else
4000 ac_cv_c_bigendian=no
4001fi
4002rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4003fi
4004rm -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. */
4012short 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
4028int
4029main ()
4030{
4031return use_ascii (foo) == use_ebcdic (foo);
4032 ;
4033 return 0;
4034}
4035_ACEOF
4036if 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
4048fi
4049rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4050else
4051 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4052/* end confdefs.h. */
4053$ac_includes_default
4054int
4055main ()
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
4071if ac_fn_c_try_run "$LINENO"; then :
4072 ac_cv_c_bigendian=no
4073else
4074 ac_cv_c_bigendian=yes
4075fi
4076rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
4077 conftest.$ac_objext conftest.beam conftest.$ac_ext
4078fi
4079
4080 fi
4081fi
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.
4102for ac_prog in gawk mawk nawk awk
4103do
4104 # Extract the first word of "$ac_prog", so it can be a program name with args.
4105set 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; }
4108if ${ac_cv_prog_AWK+:} false; then :
4109 $as_echo_n "(cached) " >&6
4110else
4111 if test -n "$AWK"; then
4112 ac_cv_prog_AWK="$AWK" # Let the user override the test.
4113else
4114as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4115for as_dir in $PATH
4116do
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
4125done
4126 done
4127IFS=$as_save_IFS
4128
4129fi
4130fi
4131AWK=$ac_cv_prog_AWK
4132if test -n "$AWK"; then
4133 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
4134$as_echo "$AWK" >&6; }
4135else
4136 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4137$as_echo "no" >&6; }
4138fi
4139
4140
4141 test -n "$AWK" && break
4142done
4143
4144ac_ext=c
4145ac_cpp='$CPP $CPPFLAGS'
4146ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4147ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4148ac_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.
4152if test -n "$CPP" && test -d "$CPP"; then
4153 CPP=
4154fi
4155if test -z "$CPP"; then
4156 if ${ac_cv_prog_CPP+:} false; then :
4157 $as_echo_n "(cached) " >&6
4158else
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
4163for ac_c_preproc_warn_flag in '' yes
4164do
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
4180if ac_fn_c_try_cpp "$LINENO"; then :
4181
4182else
4183 # Broken: fails on valid input.
4184continue
4185fi
4186rm -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
4194if ac_fn_c_try_cpp "$LINENO"; then :
4195 # Broken: success on invalid input.
4196continue
4197else
4198 # Passes both tests.
4199ac_preproc_ok=:
4200break
4201fi
4202rm -f conftest.err conftest.i conftest.$ac_ext
4203
4204done
4205# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4206rm -f conftest.i conftest.err conftest.$ac_ext
4207if $ac_preproc_ok; then :
4208 break
4209fi
4210
4211 done
4212 ac_cv_prog_CPP=$CPP
4213
4214fi
4215 CPP=$ac_cv_prog_CPP
4216else
4217 ac_cv_prog_CPP=$CPP
4218fi
4219{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
4220$as_echo "$CPP" >&6; }
4221ac_preproc_ok=false
4222for ac_c_preproc_warn_flag in '' yes
4223do
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
4239if ac_fn_c_try_cpp "$LINENO"; then :
4240
4241else
4242 # Broken: fails on valid input.
4243continue
4244fi
4245rm -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
4253if ac_fn_c_try_cpp "$LINENO"; then :
4254 # Broken: success on invalid input.
4255continue
4256else
4257 # Passes both tests.
4258ac_preproc_ok=:
4259break
4260fi
4261rm -f conftest.err conftest.i conftest.$ac_ext
4262
4263done
4264# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4265rm -f conftest.i conftest.err conftest.$ac_ext
4266if $ac_preproc_ok; then :
4267
4268else
4269 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
4270$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
4271as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
4272See \`config.log' for more details" "$LINENO" 5; }
4273fi
4274
4275ac_ext=c
4276ac_cpp='$CPP $CPPFLAGS'
4277ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4278ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4279ac_compiler_gnu=$ac_cv_c_compiler_gnu
4280
4281if 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.
4283set 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; }
4286if ${ac_cv_prog_RANLIB+:} false; then :
4287 $as_echo_n "(cached) " >&6
4288else
4289 if test -n "$RANLIB"; then
4290 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
4291else
4292as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4293for as_dir in $PATH
4294do
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
4303done
4304 done
4305IFS=$as_save_IFS
4306
4307fi
4308fi
4309RANLIB=$ac_cv_prog_RANLIB
4310if test -n "$RANLIB"; then
4311 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
4312$as_echo "$RANLIB" >&6; }
4313else
4314 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4315$as_echo "no" >&6; }
4316fi
4317
4318
4319fi
4320if 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.
4323set 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; }
4326if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
4327 $as_echo_n "(cached) " >&6
4328else
4329 if test -n "$ac_ct_RANLIB"; then
4330 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
4331else
4332as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4333for as_dir in $PATH
4334do
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
4343done
4344 done
4345IFS=$as_save_IFS
4346
4347fi
4348fi
4349ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
4350if 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; }
4353else
4354 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4355$as_echo "no" >&6; }
4356fi
4357
4358 if test "x$ac_ct_RANLIB" = x; then
4359 RANLIB=":"
4360 else
4361 case $cross_compiling:$ac_tool_warned in
4362yes:)
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;}
4365ac_tool_warned=yes ;;
4366esac
4367 RANLIB=$ac_ct_RANLIB
4368 fi
4369else
4370 RANLIB="$ac_cv_prog_RANLIB"
4371fi
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; }
4389if test -z "$INSTALL"; then
4390if ${ac_cv_path_install+:} false; then :
4391 $as_echo_n "(cached) " >&6
4392else
4393 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4394for as_dir in $PATH
4395do
4396 IFS=$as_save_IFS
4397 test -z "$as_dir" && as_dir=.
4398 # Account for people who put trailing slashes in PATH elements.
4399case $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 ;;
4437esac
4438
4439 done
4440IFS=$as_save_IFS
4441
4442rm -rf conftest.one conftest.two conftest.dir
4443
4444fi
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
4454fi
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.
4460test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
4461
4462test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
4463
4464test -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; }
4468if ${ac_cv_path_EGREP+:} false; then :
4469 $as_echo_n "(cached) " >&6
4470else
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
4478for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4479do
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
4488case `"$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;;
4512esac
4513
4514 $ac_path_EGREP_found && break 3
4515 done
4516 done
4517 done
4518IFS=$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
4522else
4523 ac_cv_path_EGREP=$EGREP
4524fi
4525
4526 fi
4527fi
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.
4534set 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; }
4537if ${ac_cv_path_AR+:} false; then :
4538 $as_echo_n "(cached) " >&6
4539else
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
4546for as_dir in $PATH
4547do
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
4556done
4557 done
4558IFS=$as_save_IFS
4559
4560 ;;
4561esac
4562fi
4563AR=$ac_cv_path_AR
4564if test -n "$AR"; then
4565 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
4566$as_echo "$AR" >&6; }
4567else
4568 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4569$as_echo "no" >&6; }
4570fi
4571
4572
4573# Extract the first word of "cat", so it can be a program name with args.
4574set 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; }
4577if ${ac_cv_path_CAT+:} false; then :
4578 $as_echo_n "(cached) " >&6
4579else
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
4586for as_dir in $PATH
4587do
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
4596done
4597 done
4598IFS=$as_save_IFS
4599
4600 ;;
4601esac
4602fi
4603CAT=$ac_cv_path_CAT
4604if test -n "$CAT"; then
4605 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5
4606$as_echo "$CAT" >&6; }
4607else
4608 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4609$as_echo "no" >&6; }
4610fi
4611
4612
4613# Extract the first word of "kill", so it can be a program name with args.
4614set 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; }
4617if ${ac_cv_path_KILL+:} false; then :
4618 $as_echo_n "(cached) " >&6
4619else
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
4626for as_dir in $PATH
4627do
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
4636done
4637 done
4638IFS=$as_save_IFS
4639
4640 ;;
4641esac
4642fi
4643KILL=$ac_cv_path_KILL
4644if test -n "$KILL"; then
4645 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KILL" >&5
4646$as_echo "$KILL" >&6; }
4647else
4648 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4649$as_echo "no" >&6; }
4650fi
4651
4652
4653for ac_prog in perl5 perl
4654do
4655 # Extract the first word of "$ac_prog", so it can be a program name with args.
4656set 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; }
4659if ${ac_cv_path_PERL+:} false; then :
4660 $as_echo_n "(cached) " >&6
4661else
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
4668for as_dir in $PATH
4669do
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
4678done
4679 done
4680IFS=$as_save_IFS
4681
4682 ;;
4683esac
4684fi
4685PERL=$ac_cv_path_PERL
4686if test -n "$PERL"; then
4687 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
4688$as_echo "$PERL" >&6; }
4689else
4690 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4691$as_echo "no" >&6; }
4692fi
4693
4694
4695 test -n "$PERL" && break
4696done
4697
4698# Extract the first word of "sed", so it can be a program name with args.
4699set 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; }
4702if ${ac_cv_path_SED+:} false; then :
4703 $as_echo_n "(cached) " >&6
4704else
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
4711for as_dir in $PATH
4712do
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
4721done
4722 done
4723IFS=$as_save_IFS
4724
4725 ;;
4726esac
4727fi
4728SED=$ac_cv_path_SED
4729if test -n "$SED"; then
4730 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
4731$as_echo "$SED" >&6; }
4732else
4733 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4734$as_echo "no" >&6; }
4735fi
4736
4737
4738
4739# Extract the first word of "ent", so it can be a program name with args.
4740set 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; }
4743if ${ac_cv_path_ENT+:} false; then :
4744 $as_echo_n "(cached) " >&6
4745else
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
4752for as_dir in $PATH
4753do
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
4762done
4763 done
4764IFS=$as_save_IFS
4765
4766 ;;
4767esac
4768fi
4769ENT=$ac_cv_path_ENT
4770if test -n "$ENT"; then
4771 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENT" >&5
4772$as_echo "$ENT" >&6; }
4773else
4774 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4775$as_echo "no" >&6; }
4776fi
4777
4778
4779
4780# Extract the first word of "bash", so it can be a program name with args.
4781set 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; }
4784if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4785 $as_echo_n "(cached) " >&6
4786else
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
4793for as_dir in $PATH
4794do
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
4803done
4804 done
4805IFS=$as_save_IFS
4806
4807 ;;
4808esac
4809fi
4810TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4811if 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; }
4814else
4815 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4816$as_echo "no" >&6; }
4817fi
4818
4819
4820# Extract the first word of "ksh", so it can be a program name with args.
4821set 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; }
4824if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4825 $as_echo_n "(cached) " >&6
4826else
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
4833for as_dir in $PATH
4834do
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
4843done
4844 done
4845IFS=$as_save_IFS
4846
4847 ;;
4848esac
4849fi
4850TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4851if 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; }
4854else
4855 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4856$as_echo "no" >&6; }
4857fi
4858
4859
4860# Extract the first word of "sh", so it can be a program name with args.
4861set 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; }
4864if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4865 $as_echo_n "(cached) " >&6
4866else
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
4873for as_dir in $PATH
4874do
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
4883done
4884 done
4885IFS=$as_save_IFS
4886
4887 ;;
4888esac
4889fi
4890TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4891if 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; }
4894else
4895 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4896$as_echo "no" >&6; }
4897fi
4898
4899
4900# Extract the first word of "sh", so it can be a program name with args.
4901set 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; }
4904if ${ac_cv_path_SH+:} false; then :
4905 $as_echo_n "(cached) " >&6
4906else
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
4913for as_dir in $PATH
4914do
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
4923done
4924 done
4925IFS=$as_save_IFS
4926
4927 ;;
4928esac
4929fi
4930SH=$ac_cv_path_SH
4931if test -n "$SH"; then
4932 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SH" >&5
4933$as_echo "$SH" >&6; }
4934else
4935 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4936$as_echo "no" >&6; }
4937fi
4938
4939
4940# Extract the first word of "groff", so it can be a program name with args.
4941set 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; }
4944if ${ac_cv_path_GROFF+:} false; then :
4945 $as_echo_n "(cached) " >&6
4946else
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
4953for as_dir in $PATH
4954do
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
4963done
4964 done
4965IFS=$as_save_IFS
4966
4967 ;;
4968esac
4969fi
4970GROFF=$ac_cv_path_GROFF
4971if test -n "$GROFF"; then
4972 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GROFF" >&5
4973$as_echo "$GROFF" >&6; }
4974else
4975 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4976$as_echo "no" >&6; }
4977fi
4978
4979
4980# Extract the first word of "nroff", so it can be a program name with args.
4981set 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; }
4984if ${ac_cv_path_NROFF+:} false; then :
4985 $as_echo_n "(cached) " >&6
4986else
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
4993for as_dir in $PATH
4994do
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
5003done
5004 done
5005IFS=$as_save_IFS
5006
5007 ;;
5008esac
5009fi
5010NROFF=$ac_cv_path_NROFF
5011if test -n "$NROFF"; then
5012 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
5013$as_echo "$NROFF" >&6; }
5014else
5015 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5016$as_echo "no" >&6; }
5017fi
5018
5019
5020# Extract the first word of "mandoc", so it can be a program name with args.
5021set 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; }
5024if ${ac_cv_path_MANDOC+:} false; then :
5025 $as_echo_n "(cached) " >&6
5026else
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
5033for as_dir in $PATH
5034do
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
5043done
5044 done
5045IFS=$as_save_IFS
5046
5047 ;;
5048esac
5049fi
5050MANDOC=$ac_cv_path_MANDOC
5051if test -n "$MANDOC"; then
5052 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANDOC" >&5
5053$as_echo "$MANDOC" >&6; }
5054else
5055 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5056$as_echo "no" >&6; }
5057fi
5058
5059
5060TEST_SHELL=sh
5061
5062
5063if test "x$MANDOC" != "x" ; then
5064 MANFMT="$MANDOC"
5065elif test "x$NROFF" != "x" ; then
5066 MANFMT="$NROFF -mandoc"
5067elif test "x$GROFF" != "x" ; then
5068 MANFMT="$GROFF -mandoc -Tascii"
5069else
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"
5073fi
5074
5075
5076# Extract the first word of "groupadd", so it can be a program name with args.
5077set 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; }
5080if ${ac_cv_path_PATH_GROUPADD_PROG+:} false; then :
5081 $as_echo_n "(cached) " >&6
5082else
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
5089for as_dir in /usr/sbin${PATH_SEPARATOR}/etc
5090do
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
5099done
5100 done
5101IFS=$as_save_IFS
5102
5103 test -z "$ac_cv_path_PATH_GROUPADD_PROG" && ac_cv_path_PATH_GROUPADD_PROG="groupadd"
5104 ;;
5105esac
5106fi
5107PATH_GROUPADD_PROG=$ac_cv_path_PATH_GROUPADD_PROG
5108if 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; }
5111else
5112 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5113$as_echo "no" >&6; }
5114fi
5115
5116
5117# Extract the first word of "useradd", so it can be a program name with args.
5118set 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; }
5121if ${ac_cv_path_PATH_USERADD_PROG+:} false; then :
5122 $as_echo_n "(cached) " >&6
5123else
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
5130for as_dir in /usr/sbin${PATH_SEPARATOR}/etc
5131do
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
5140done
5141 done
5142IFS=$as_save_IFS
5143
5144 test -z "$ac_cv_path_PATH_USERADD_PROG" && ac_cv_path_PATH_USERADD_PROG="useradd"
5145 ;;
5146esac
5147fi
5148PATH_USERADD_PROG=$ac_cv_path_PATH_USERADD_PROG
5149if 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; }
5152else
5153 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5154$as_echo "no" >&6; }
5155fi
5156
5157
5158# Extract the first word of "pkgmk", so it can be a program name with args.
5159set 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; }
5162if ${ac_cv_prog_MAKE_PACKAGE_SUPPORTED+:} false; then :
5163 $as_echo_n "(cached) " >&6
5164else
5165 if test -n "$MAKE_PACKAGE_SUPPORTED"; then
5166 ac_cv_prog_MAKE_PACKAGE_SUPPORTED="$MAKE_PACKAGE_SUPPORTED" # Let the user override the test.
5167else
5168as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5169for as_dir in $PATH
5170do
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
5179done
5180 done
5181IFS=$as_save_IFS
5182
5183 test -z "$ac_cv_prog_MAKE_PACKAGE_SUPPORTED" && ac_cv_prog_MAKE_PACKAGE_SUPPORTED="no"
5184fi
5185fi
5186MAKE_PACKAGE_SUPPORTED=$ac_cv_prog_MAKE_PACKAGE_SUPPORTED
5187if 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; }
5190else
5191 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5192$as_echo "no" >&6; }
5193fi
5194
5195
5196if test -x /sbin/sh; then
5197 STARTUP_SCRIPT_SHELL=/sbin/sh
5198
5199else
5200 STARTUP_SCRIPT_SHELL=/bin/sh
5201
5202fi
5203
5204# System features
5205# Check whether --enable-largefile was given.
5206if test "${enable_largefile+set}" = set; then :
5207 enableval=$enable_largefile;
5208fi
5209
5210if 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; }
5214if ${ac_cv_sys_largefile_CC+:} false; then :
5215 $as_echo_n "(cached) " >&6
5216else
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];
5234int
5235main ()
5236{
5237
5238 ;
5239 return 0;
5240}
5241_ACEOF
5242 if ac_fn_c_try_compile "$LINENO"; then :
5243 break
5244fi
5245rm -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
5249fi
5250rm -f core conftest.err conftest.$ac_objext
5251 break
5252 done
5253 CC=$ac_save_CC
5254 rm -f conftest.$ac_ext
5255 fi
5256fi
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; }
5265if ${ac_cv_sys_file_offset_bits+:} false; then :
5266 $as_echo_n "(cached) " >&6
5267else
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];
5280int
5281main ()
5282{
5283
5284 ;
5285 return 0;
5286}
5287_ACEOF
5288if ac_fn_c_try_compile "$LINENO"; then :
5289 ac_cv_sys_file_offset_bits=no; break
5290fi
5291rm -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];
5304int
5305main ()
5306{
5307
5308 ;
5309 return 0;
5310}
5311_ACEOF
5312if ac_fn_c_try_compile "$LINENO"; then :
5313 ac_cv_sys_file_offset_bits=64; break
5314fi
5315rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5316 ac_cv_sys_file_offset_bits=unknown
5317 break
5318done
5319fi
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; }
5322case $ac_cv_sys_file_offset_bits in #(
5323 no | unknown) ;;
5324 *)
5325cat >>confdefs.h <<_ACEOF
5326#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
5327_ACEOF
5328;;
5329esac
5330rm -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; }
5334if ${ac_cv_sys_large_files+:} false; then :
5335 $as_echo_n "(cached) " >&6
5336else
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];
5349int
5350main ()
5351{
5352
5353 ;
5354 return 0;
5355}
5356_ACEOF
5357if ac_fn_c_try_compile "$LINENO"; then :
5358 ac_cv_sys_large_files=no; break
5359fi
5360rm -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];
5373int
5374main ()
5375{
5376
5377 ;
5378 return 0;
5379}
5380_ACEOF
5381if ac_fn_c_try_compile "$LINENO"; then :
5382 ac_cv_sys_large_files=1; break
5383fi
5384rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5385 ac_cv_sys_large_files=unknown
5386 break
5387done
5388fi
5389{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
5390$as_echo "$ac_cv_sys_large_files" >&6; }
5391case $ac_cv_sys_large_files in #(
5392 no | unknown) ;;
5393 *)
5394cat >>confdefs.h <<_ACEOF
5395#define _LARGE_FILES $ac_cv_sys_large_files
5396_ACEOF
5397;;
5398esac
5399rm -rf conftest*
5400 fi
5401fi
5402
5403
5404if test -z "$AR" ; then
5405 as_fn_error $? "*** 'ar' missing, please install or fix your \$PATH ***" "$LINENO" 5
5406fi
5407
5408# Use LOGIN_PROGRAM from environment if possible
5409if test ! -z "$LOGIN_PROGRAM" ; then
5410
5411cat >>confdefs.h <<_ACEOF
5412#define LOGIN_PROGRAM_FALLBACK "$LOGIN_PROGRAM"
5413_ACEOF
5414
5415else
5416 # Search for login
5417 # Extract the first word of "login", so it can be a program name with args.
5418set 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; }
5421if ${ac_cv_path_LOGIN_PROGRAM_FALLBACK+:} false; then :
5422 $as_echo_n "(cached) " >&6
5423else
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
5430for as_dir in $PATH
5431do
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
5440done
5441 done
5442IFS=$as_save_IFS
5443
5444 ;;
5445esac
5446fi
5447LOGIN_PROGRAM_FALLBACK=$ac_cv_path_LOGIN_PROGRAM_FALLBACK
5448if 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; }
5451else
5452 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5453$as_echo "no" >&6; }
5454fi
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
5463fi
5464
5465# Extract the first word of "passwd", so it can be a program name with args.
5466set 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; }
5469if ${ac_cv_path_PATH_PASSWD_PROG+:} false; then :
5470 $as_echo_n "(cached) " >&6
5471else
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
5478for as_dir in $PATH
5479do
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
5488done
5489 done
5490IFS=$as_save_IFS
5491
5492 ;;
5493esac
5494fi
5495PATH_PASSWD_PROG=$ac_cv_path_PATH_PASSWD_PROG
5496if 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; }
5499else
5500 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5501$as_echo "no" >&6; }
5502fi
5503
5504
5505if test ! -z "$PATH_PASSWD_PROG" ; then
5506
5507cat >>confdefs.h <<_ACEOF
5508#define _PATH_PASSWD_PROG "$PATH_PASSWD_PROG"
5509_ACEOF
5510
5511fi
5512
5513if test -z "$LD" ; then
5514 LD=$CC
5515fi
5516
5517
5518{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
5519$as_echo_n "checking for inline... " >&6; }
5520if ${ac_cv_c_inline+:} false; then :
5521 $as_echo_n "(cached) " >&6
5522else
5523 ac_cv_c_inline=no
5524for ac_kw in inline __inline__ __inline; do
5525 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5526/* end confdefs.h. */
5527#ifndef __cplusplus
5528typedef int foo_t;
5529static $ac_kw foo_t static_foo () {return 0; }
5530$ac_kw foo_t foo () {return 0; }
5531#endif
5532
5533_ACEOF
5534if ac_fn_c_try_compile "$LINENO"; then :
5535 ac_cv_c_inline=$ac_kw
5536fi
5537rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5538 test "$ac_cv_c_inline" != no && break
5539done
5540
5541fi
5542{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
5543$as_echo "$ac_cv_c_inline" >&6; }
5544
5545case $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 ;;
5558esac
5559
5560
5561ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h>
5562"
5563if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then :
5564 have_llong_max=1
5565fi
5566
5567ac_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"
5573if test "x$ac_cv_have_decl_SYSTR_POLICY_KILL" = xyes; then :
5574 have_systr_policy_kill=1
5575fi
5576
5577ac_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"
5582if test "x$ac_cv_have_decl_RLIMIT_NPROC" = xyes; then :
5583
5584$as_echo "#define HAVE_RLIMIT_NPROC /**/" >>confdefs.h
5585
5586fi
5587
5588ac_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"
5593if test "x$ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" = xyes; then :
5594 have_linux_no_new_privs=1
5595fi
5596
5597
5598use_stack_protector=1
5599use_toolchain_hardening=1
5600
5601# Check whether --with-stackprotect was given.
5602if test "${with_stackprotect+set}" = set; then :
5603 withval=$with_stackprotect;
5604 if test "x$withval" = "xno"; then
5605 use_stack_protector=0
5606 fi
5607fi
5608
5609
5610# Check whether --with-hardening was given.
5611if test "${with_hardening+set}" = set; then :
5612 withval=$with_hardening;
5613 if test "x$withval" = "xno"; then
5614 use_toolchain_hardening=0
5615 fi
5616fi
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; }
5623saved_CFLAGS="$CFLAGS"
5624CFLAGS="$CFLAGS -Werror"
5625cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5626/* end confdefs.h. */
5627int main(void) { return 0; }
5628_ACEOF
5629if 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"
5633else
5634 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5635$as_echo "no" >&6; }
5636 WERROR=""
5637
5638fi
5639rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5640CFLAGS="$saved_CFLAGS"
5641
5642if 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>
5655int 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
5666if ac_fn_c_try_compile "$LINENO"; then :
5667
5668if `grep -i "unrecognized option" conftest.err >/dev/null`
5669then
5670 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5671$as_echo "no" >&6; }
5672 CFLAGS="$saved_CFLAGS"
5673else
5674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5675$as_echo "yes" >&6; }
5676 CFLAGS="$saved_CFLAGS $_define_flag"
5677fi
5678else
5679 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5680$as_echo "no" >&6; }
5681 CFLAGS="$saved_CFLAGS"
5682
5683fi
5684rm -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>
5698int 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
5709if ac_fn_c_try_compile "$LINENO"; then :
5710
5711if `grep -i "unrecognized option" conftest.err >/dev/null`
5712then
5713 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5714$as_echo "no" >&6; }
5715 CFLAGS="$saved_CFLAGS"
5716else
5717 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5718$as_echo "yes" >&6; }
5719 CFLAGS="$saved_CFLAGS $_define_flag"
5720fi
5721else
5722 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5723$as_echo "no" >&6; }
5724 CFLAGS="$saved_CFLAGS"
5725
5726fi
5727rm -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>
5741int 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
5752if ac_fn_c_try_compile "$LINENO"; then :
5753
5754if `grep -i "unrecognized option" conftest.err >/dev/null`
5755then
5756 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5757$as_echo "no" >&6; }
5758 CFLAGS="$saved_CFLAGS"
5759else
5760 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5761$as_echo "yes" >&6; }
5762 CFLAGS="$saved_CFLAGS $_define_flag"
5763fi
5764else
5765 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5766$as_echo "no" >&6; }
5767 CFLAGS="$saved_CFLAGS"
5768
5769fi
5770rm -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>
5784int 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
5795if ac_fn_c_try_compile "$LINENO"; then :
5796
5797if `grep -i "unrecognized option" conftest.err >/dev/null`
5798then
5799 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5800$as_echo "no" >&6; }
5801 CFLAGS="$saved_CFLAGS"
5802else
5803 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5804$as_echo "yes" >&6; }
5805 CFLAGS="$saved_CFLAGS $_define_flag"
5806fi
5807else
5808 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5809$as_echo "no" >&6; }
5810 CFLAGS="$saved_CFLAGS"
5811
5812fi
5813rm -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>
5827int 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
5838if ac_fn_c_try_compile "$LINENO"; then :
5839
5840if `grep -i "unrecognized option" conftest.err >/dev/null`
5841then
5842 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5843$as_echo "no" >&6; }
5844 CFLAGS="$saved_CFLAGS"
5845else
5846 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5847$as_echo "yes" >&6; }
5848 CFLAGS="$saved_CFLAGS $_define_flag"
5849fi
5850else
5851 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5852$as_echo "no" >&6; }
5853 CFLAGS="$saved_CFLAGS"
5854
5855fi
5856rm -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>
5870int 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
5881if ac_fn_c_try_compile "$LINENO"; then :
5882
5883if `grep -i "unrecognized option" conftest.err >/dev/null`
5884then
5885 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5886$as_echo "no" >&6; }
5887 CFLAGS="$saved_CFLAGS"
5888else
5889 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5890$as_echo "yes" >&6; }
5891 CFLAGS="$saved_CFLAGS $_define_flag"
5892fi
5893else
5894 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5895$as_echo "no" >&6; }
5896 CFLAGS="$saved_CFLAGS"
5897
5898fi
5899rm -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>
5913int 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
5924if ac_fn_c_try_compile "$LINENO"; then :
5925
5926if `grep -i "unrecognized option" conftest.err >/dev/null`
5927then
5928 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5929$as_echo "no" >&6; }
5930 CFLAGS="$saved_CFLAGS"
5931else
5932 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5933$as_echo "yes" >&6; }
5934 CFLAGS="$saved_CFLAGS $_define_flag"
5935fi
5936else
5937 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5938$as_echo "no" >&6; }
5939 CFLAGS="$saved_CFLAGS"
5940
5941fi
5942rm -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>
5956int 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
5967if ac_fn_c_try_compile "$LINENO"; then :
5968
5969if `grep -i "unrecognized option" conftest.err >/dev/null`
5970then
5971 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5972$as_echo "no" >&6; }
5973 CFLAGS="$saved_CFLAGS"
5974else
5975 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5976$as_echo "yes" >&6; }
5977 CFLAGS="$saved_CFLAGS $_define_flag"
5978fi
5979else
5980 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5981$as_echo "no" >&6; }
5982 CFLAGS="$saved_CFLAGS"
5983
5984fi
5985rm -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>
5999int 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
6010if ac_fn_c_try_compile "$LINENO"; then :
6011
6012if `grep -i "unrecognized option" conftest.err >/dev/null`
6013then
6014 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6015$as_echo "no" >&6; }
6016 CFLAGS="$saved_CFLAGS"
6017else
6018 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6019$as_echo "yes" >&6; }
6020 CFLAGS="$saved_CFLAGS $_define_flag"
6021fi
6022else
6023 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6024$as_echo "no" >&6; }
6025 CFLAGS="$saved_CFLAGS"
6026
6027fi
6028rm -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>
6042int 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
6053if ac_fn_c_try_compile "$LINENO"; then :
6054
6055if `grep -i "unrecognized option" conftest.err >/dev/null`
6056then
6057 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6058$as_echo "no" >&6; }
6059 CFLAGS="$saved_CFLAGS"
6060else
6061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6062$as_echo "yes" >&6; }
6063 CFLAGS="$saved_CFLAGS $_define_flag"
6064fi
6065else
6066 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6067$as_echo "no" >&6; }
6068 CFLAGS="$saved_CFLAGS"
6069
6070fi
6071rm -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>
6085int 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
6096if ac_fn_c_try_compile "$LINENO"; then :
6097
6098if `grep -i "unrecognized option" conftest.err >/dev/null`
6099then
6100 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6101$as_echo "no" >&6; }
6102 CFLAGS="$saved_CFLAGS"
6103else
6104 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6105$as_echo "yes" >&6; }
6106 CFLAGS="$saved_CFLAGS $_define_flag"
6107fi
6108else
6109 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6110$as_echo "no" >&6; }
6111 CFLAGS="$saved_CFLAGS"
6112
6113fi
6114rm -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>
6128int 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
6139if ac_fn_c_try_compile "$LINENO"; then :
6140
6141if `grep -i "unrecognized option" conftest.err >/dev/null`
6142then
6143 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6144$as_echo "no" >&6; }
6145 CFLAGS="$saved_CFLAGS"
6146else
6147 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6148$as_echo "yes" >&6; }
6149 CFLAGS="$saved_CFLAGS $_define_flag"
6150fi
6151else
6152 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6153$as_echo "no" >&6; }
6154 CFLAGS="$saved_CFLAGS"
6155
6156fi
6157rm -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>
6172int 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
6183if 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"
6187else
6188 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6189$as_echo "no" >&6; }
6190 LDFLAGS="$saved_LDFLAGS"
6191
6192fi
6193rm -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>
6208int 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
6219if 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"
6223else
6224 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6225$as_echo "no" >&6; }
6226 LDFLAGS="$saved_LDFLAGS"
6227
6228fi
6229rm -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>
6244int 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
6255if 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"
6259else
6260 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6261$as_echo "no" >&6; }
6262 LDFLAGS="$saved_LDFLAGS"
6263
6264fi
6265rm -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>
6285int 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
6296if ac_fn_c_try_link "$LINENO"; then :
6297
6298if `grep -i "unrecognized option" conftest.err >/dev/null`
6299then
6300 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6301$as_echo "no" >&6; }
6302 CFLAGS="$saved_CFLAGS"
6303else
6304 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6305$as_echo "yes" >&6; }
6306 CFLAGS="$saved_CFLAGS $_define_flag"
6307fi
6308else
6309 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6310$as_echo "no" >&6; }
6311 CFLAGS="$saved_CFLAGS"
6312
6313fi
6314rm -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>
6339int
6340main ()
6341{
6342 char b[10]; memset(b, 0, sizeof(b));
6343 ;
6344 return 0;
6345}
6346_ACEOF
6347if ac_fn_c_try_link "$LINENO"; then :
6348 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6349$as_echo "yes" >&6; }
6350else
6351 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6352$as_echo "no" >&6; }
6353 CFLAGS="$saved_CFLAGS"
6354
6355fi
6356rm -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>
6374int
6375main ()
6376{
6377
6378 char x[256];
6379 snprintf(x, sizeof(x), "XXX");
6380
6381 ;
6382 return 0;
6383}
6384_ACEOF
6385if 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
6397else
6398 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6399/* end confdefs.h. */
6400 #include <stdio.h>
6401int
6402main ()
6403{
6404
6405 char x[256];
6406 snprintf(x, sizeof(x), "XXX");
6407
6408 ;
6409 return 0;
6410}
6411_ACEOF
6412if 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
6416else
6417 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6418$as_echo "no" >&6; }
6419fi
6420rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
6421 conftest.$ac_objext conftest.beam conftest.$ac_ext
6422fi
6423
6424
6425else
6426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6427$as_echo "no" >&6; }
6428
6429fi
6430rm -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"
6445if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then :
6446 have_llong_max=1
6447else
6448 CFLAGS="$saved_CFLAGS"
6449fi
6450
6451 fi
6452fi
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; }
6456cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6457/* end confdefs.h. */
6458
6459#include <stdlib.h>
6460__attribute__((__unused__)) static void foo(void){return;}
6461int
6462main ()
6463{
6464 exit(0);
6465 ;
6466 return 0;
6467}
6468_ACEOF
6469if ac_fn_c_try_compile "$LINENO"; then :
6470 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6471$as_echo "yes" >&6; }
6472else
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
6479fi
6480rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6481
6482if test "x$no_attrib_nonnull" != "x1" ; then
6483
6484$as_echo "#define HAVE_ATTRIBUTE__NONNULL__ 1" >>confdefs.h
6485
6486fi
6487
6488
6489# Check whether --with-rpath was given.
6490if 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
6500fi
6501
6502
6503# Allow user to specify flags
6504
6505# Check whether --with-cflags was given.
6506if 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
6514fi
6515
6516
6517# Check whether --with-cppflags was given.
6518if 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
6526fi
6527
6528
6529# Check whether --with-ldflags was given.
6530if 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
6538fi
6539
6540
6541# Check whether --with-libs was given.
6542if 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
6550fi
6551
6552
6553# Check whether --with-Werror was given.
6554if 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
6564fi
6565
6566
6567for 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
6636do :
6637 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
6638ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
6639if 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
6644fi
6645
6646done
6647
6648
6649# lastlog.h requires sys/time.h to be included first on Solaris
6650for ac_header in lastlog.h
6651do :
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"
6658if test "x$ac_cv_header_lastlog_h" = xyes; then :
6659 cat >>confdefs.h <<_ACEOF
6660#define HAVE_LASTLOG_H 1
6661_ACEOF
6662
6663fi
6664
6665done
6666
6667
6668# sys/ptms.h requires sys/stream.h to be included first on Solaris
6669for ac_header in sys/ptms.h
6670do :
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"
6677if 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
6682fi
6683
6684done
6685
6686
6687# login_cap.h requires sys/types.h on NetBSD
6688for ac_header in login_cap.h
6689do :
6690 ac_fn_c_check_header_compile "$LINENO" "login_cap.h" "ac_cv_header_login_cap_h" "
6691#include <sys/types.h>
6692
6693"
6694if 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
6699fi
6700
6701done
6702
6703
6704# older BSDs need sys/param.h before sys/mount.h
6705for ac_header in sys/mount.h
6706do :
6707 ac_fn_c_check_header_compile "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" "
6708#include <sys/param.h>
6709
6710"
6711if 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
6716fi
6717
6718done
6719
6720
6721# Android requires sys/socket.h to be included before sys/un.h
6722for ac_header in sys/un.h
6723do :
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"
6729if 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
6734fi
6735
6736done
6737
6738
6739# Messages for features tested for in target-specific section
6740SIA_MSG="no"
6741SPC_MSG="no"
6742SP_MSG="no"
6743
6744# Check for some target-specific stuff
6745case "$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
6759int
6760main ()
6761{
6762 exit(0);
6763 ;
6764 return 0;
6765}
6766_ACEOF
6767if ac_fn_c_try_compile "$LINENO"; then :
6768 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6769$as_echo "yes" >&6; }
6770else
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
6779fi
6780rm -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
6799int
6800main ()
6801{
6802
6803 ;
6804 return 0;
6805}
6806_ACEOF
6807if ac_fn_c_try_link "$LINENO"; then :
6808 blibflags=$tryflags
6809fi
6810rm -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"
6824if test "x$ac_cv_func_authenticate" = xyes; then :
6825
6826$as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h
6827
6828else
6829 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for authenticate in -ls" >&5
6830$as_echo_n "checking for authenticate in -ls... " >&6; }
6831if ${ac_cv_lib_s_authenticate+:} false; then :
6832 $as_echo_n "(cached) " >&6
6833else
6834 ac_check_lib_save_LIBS=$LIBS
6835LIBS="-ls $LIBS"
6836cat 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
6843extern "C"
6844#endif
6845char authenticate ();
6846int
6847main ()
6848{
6849return authenticate ();
6850 ;
6851 return 0;
6852}
6853_ACEOF
6854if ac_fn_c_try_link "$LINENO"; then :
6855 ac_cv_lib_s_authenticate=yes
6856else
6857 ac_cv_lib_s_authenticate=no
6858fi
6859rm -f core conftest.err conftest.$ac_objext \
6860 conftest$ac_exeext conftest.$ac_ext
6861LIBS=$ac_check_lib_save_LIBS
6862fi
6863{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_s_authenticate" >&5
6864$as_echo "$ac_cv_lib_s_authenticate" >&6; }
6865if test "x$ac_cv_lib_s_authenticate" = xyes; then :
6866 $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h
6867
6868 LIBS="$LIBS -ls"
6869
6870fi
6871
6872
6873fi
6874
6875 ac_fn_c_check_decl "$LINENO" "authenticate" "ac_cv_have_decl_authenticate" "#include <usersec.h>
6876"
6877if test "x$ac_cv_have_decl_authenticate" = xyes; then :
6878 ac_have_decl=1
6879else
6880 ac_have_decl=0
6881fi
6882
6883cat >>confdefs.h <<_ACEOF
6884#define HAVE_DECL_AUTHENTICATE $ac_have_decl
6885_ACEOF
6886ac_fn_c_check_decl "$LINENO" "loginrestrictions" "ac_cv_have_decl_loginrestrictions" "#include <usersec.h>
6887"
6888if test "x$ac_cv_have_decl_loginrestrictions" = xyes; then :
6889 ac_have_decl=1
6890else
6891 ac_have_decl=0
6892fi
6893
6894cat >>confdefs.h <<_ACEOF
6895#define HAVE_DECL_LOGINRESTRICTIONS $ac_have_decl
6896_ACEOF
6897ac_fn_c_check_decl "$LINENO" "loginsuccess" "ac_cv_have_decl_loginsuccess" "#include <usersec.h>
6898"
6899if test "x$ac_cv_have_decl_loginsuccess" = xyes; then :
6900 ac_have_decl=1
6901else
6902 ac_have_decl=0
6903fi
6904
6905cat >>confdefs.h <<_ACEOF
6906#define HAVE_DECL_LOGINSUCCESS $ac_have_decl
6907_ACEOF
6908ac_fn_c_check_decl "$LINENO" "passwdexpired" "ac_cv_have_decl_passwdexpired" "#include <usersec.h>
6909"
6910if test "x$ac_cv_have_decl_passwdexpired" = xyes; then :
6911 ac_have_decl=1
6912else
6913 ac_have_decl=0
6914fi
6915
6916cat >>confdefs.h <<_ACEOF
6917#define HAVE_DECL_PASSWDEXPIRED $ac_have_decl
6918_ACEOF
6919ac_fn_c_check_decl "$LINENO" "setauthdb" "ac_cv_have_decl_setauthdb" "#include <usersec.h>
6920"
6921if test "x$ac_cv_have_decl_setauthdb" = xyes; then :
6922 ac_have_decl=1
6923else
6924 ac_have_decl=0
6925fi
6926
6927cat >>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"
6934if test "x$ac_cv_have_decl_loginfailed" = xyes; then :
6935 ac_have_decl=1
6936else
6937 ac_have_decl=0
6938fi
6939
6940cat >>confdefs.h <<_ACEOF
6941#define HAVE_DECL_LOGINFAILED $ac_have_decl
6942_ACEOF
6943if 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>
6949int
6950main ()
6951{
6952 (void)loginfailed("user","host","tty",0);
6953 ;
6954 return 0;
6955}
6956_ACEOF
6957if 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
6963else
6964 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6965$as_echo "no" >&6; }
6966
6967fi
6968rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6969fi
6970
6971 for ac_func in getgrset setauthdb
6972do :
6973 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
6974ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
6975if 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
6980fi
6981done
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"
6987if test "x$ac_cv_have_decl_F_CLOSEM" = xyes; then :
6988
6989$as_echo "#define HAVE_FCNTL_CLOSEM 1" >>confdefs.h
6990
6991fi
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>
7074int 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
7085if ac_fn_c_try_compile "$LINENO"; then :
7086
7087if `grep -i "unrecognized option" conftest.err >/dev/null`
7088then
7089 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7090$as_echo "no" >&6; }
7091 CFLAGS="$saved_CFLAGS"
7092else
7093 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
7094$as_echo "yes" >&6; }
7095 CFLAGS="$saved_CFLAGS $_define_flag"
7096fi
7097else
7098 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7099$as_echo "no" >&6; }
7100 CFLAGS="$saved_CFLAGS"
7101
7102fi
7103rm -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; }
7124else
7125 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7126/* end confdefs.h. */
7127 #include <mach-o/dyld.h>
7128main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16))
7129 exit(0);
7130 else
7131 exit(1);
7132}
7133
7134_ACEOF
7135if ac_fn_c_try_run "$LINENO"; then :
7136 { $as_echo "$as_me:${as_lineno-$LINENO}: result: working" >&5
7137$as_echo "working" >&6; }
7138else
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
7145fi
7146rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
7147 conftest.$ac_objext conftest.beam conftest.$ac_ext
7148fi
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
7160cat >>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"
7175if test "x$ac_cv_have_decl_AU_IPv4" = xyes; then :
7176
7177else
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
7186fi
7187
7188
7189$as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h
7190
7191 for ac_func in sandbox_init
7192do :
7193 ac_fn_c_check_func "$LINENO" "sandbox_init" "ac_cv_func_sandbox_init"
7194if test "x$ac_cv_func_sandbox_init" = xyes; then :
7195 cat >>confdefs.h <<_ACEOF
7196#define HAVE_SANDBOX_INIT 1
7197_ACEOF
7198
7199fi
7200done
7201
7202 for ac_header in sandbox.h
7203do :
7204 ac_fn_c_check_header_mongrel "$LINENO" "sandbox.h" "ac_cv_header_sandbox_h" "$ac_includes_default"
7205if test "x$ac_cv_header_sandbox_h" = xyes; then :
7206 cat >>confdefs.h <<_ACEOF
7207#define HAVE_SANDBOX_H 1
7208_ACEOF
7209
7210fi
7211
7212done
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; }
7223if ${ac_cv_lib_network_socket+:} false; then :
7224 $as_echo_n "(cached) " >&6
7225else
7226 ac_check_lib_save_LIBS=$LIBS
7227LIBS="-lnetwork $LIBS"
7228cat 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
7235extern "C"
7236#endif
7237char socket ();
7238int
7239main ()
7240{
7241return socket ();
7242 ;
7243 return 0;
7244}
7245_ACEOF
7246if ac_fn_c_try_link "$LINENO"; then :
7247 ac_cv_lib_network_socket=yes
7248else
7249 ac_cv_lib_network_socket=no
7250fi
7251rm -f core conftest.err conftest.$ac_objext \
7252 conftest$ac_exeext conftest.$ac_ext
7253LIBS=$ac_check_lib_save_LIBS
7254fi
7255{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_socket" >&5
7256$as_echo "$ac_cv_lib_network_socket" >&6; }
7257if 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
7264fi
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; }
7293if ${ac_cv_lib_xnet_t_error+:} false; then :
7294 $as_echo_n "(cached) " >&6
7295else
7296 ac_check_lib_save_LIBS=$LIBS
7297LIBS="-lxnet $LIBS"
7298cat 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
7305extern "C"
7306#endif
7307char t_error ();
7308int
7309main ()
7310{
7311return t_error ();
7312 ;
7313 return 0;
7314}
7315_ACEOF
7316if ac_fn_c_try_link "$LINENO"; then :
7317 ac_cv_lib_xnet_t_error=yes
7318else
7319 ac_cv_lib_xnet_t_error=no
7320fi
7321rm -f core conftest.err conftest.$ac_objext \
7322 conftest$ac_exeext conftest.$ac_ext
7323LIBS=$ac_check_lib_save_LIBS
7324fi
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; }
7327if 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
7334else
7335 as_fn_error $? "*** -lxnet needed on HP-UX - check config.log ***" "$LINENO" 5
7336fi
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"
7401if test "x$ac_cv_func_jlimit_startjob" = xyes; then :
7402
7403$as_echo "#define WITH_IRIX_JOBS 1" >>confdefs.h
7404
7405fi
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
7472do :
7473 ac_fn_c_check_header_mongrel "$LINENO" "linux/if_tun.h" "ac_cv_header_linux_if_tun_h" "$ac_includes_default"
7474if 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
7479fi
7480
7481done
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
7495do :
7496 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
7497ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#include <linux/types.h>
7498"
7499if 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
7504fi
7505
7506done
7507
7508 for ac_func in prctl
7509do :
7510 ac_fn_c_check_func "$LINENO" "prctl" "ac_cv_func_prctl"
7511if test "x$ac_cv_func_prctl" = xyes; then :
7512 cat >>confdefs.h <<_ACEOF
7513#define HAVE_PRCTL 1
7514_ACEOF
7515
7516fi
7517done
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
7537cat >>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 ;;
7546mips-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"
7561if test "x$ac_cv_header_net_if_tap_h" = xyes; then :
7562
7563else
7564
7565$as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h
7566
7567fi
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"
7590if test "x$ac_cv_header_net_if_tap_h" = xyes; then :
7591
7592else
7593
7594$as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h
7595
7596fi
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.
7700if 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; }
7704if ${ac_cv_lib_contract_ct_tmpl_activate+:} false; then :
7705 $as_echo_n "(cached) " >&6
7706else
7707 ac_check_lib_save_LIBS=$LIBS
7708LIBS="-lcontract $LIBS"
7709cat 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
7716extern "C"
7717#endif
7718char ct_tmpl_activate ();
7719int
7720main ()
7721{
7722return ct_tmpl_activate ();
7723 ;
7724 return 0;
7725}
7726_ACEOF
7727if ac_fn_c_try_link "$LINENO"; then :
7728 ac_cv_lib_contract_ct_tmpl_activate=yes
7729else
7730 ac_cv_lib_contract_ct_tmpl_activate=no
7731fi
7732rm -f core conftest.err conftest.$ac_objext \
7733 conftest$ac_exeext conftest.$ac_ext
7734LIBS=$ac_check_lib_save_LIBS
7735fi
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; }
7738if 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"
7744fi
7745
7746
7747fi
7748
7749
7750# Check whether --with-solaris-projects was given.
7751if 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; }
7755if ${ac_cv_lib_project_setproject+:} false; then :
7756 $as_echo_n "(cached) " >&6
7757else
7758 ac_check_lib_save_LIBS=$LIBS
7759LIBS="-lproject $LIBS"
7760cat 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
7767extern "C"
7768#endif
7769char setproject ();
7770int
7771main ()
7772{
7773return setproject ();
7774 ;
7775 return 0;
7776}
7777_ACEOF
7778if ac_fn_c_try_link "$LINENO"; then :
7779 ac_cv_lib_project_setproject=yes
7780else
7781 ac_cv_lib_project_setproject=no
7782fi
7783rm -f core conftest.err conftest.$ac_objext \
7784 conftest$ac_exeext conftest.$ac_ext
7785LIBS=$ac_check_lib_save_LIBS
7786fi
7787{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_project_setproject" >&5
7788$as_echo "$ac_cv_lib_project_setproject" >&6; }
7789if 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"
7795fi
7796
7797
7798fi
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
7805do :
7806 ac_fn_c_check_func "$LINENO" "getpwanam" "ac_cv_func_getpwanam"
7807if test "x$ac_cv_func_getpwanam" = xyes; then :
7808 cat >>confdefs.h <<_ACEOF
7809#define HAVE_GETPWANAM 1
7810_ACEOF
7811
7812fi
7813done
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; }
7840if ${ac_cv_lib_dl_dlsym+:} false; then :
7841 $as_echo_n "(cached) " >&6
7842else
7843 ac_check_lib_save_LIBS=$LIBS
7844LIBS="-ldl $LIBS"
7845cat 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
7852extern "C"
7853#endif
7854char dlsym ();
7855int
7856main ()
7857{
7858return dlsym ();
7859 ;
7860 return 0;
7861}
7862_ACEOF
7863if ac_fn_c_try_link "$LINENO"; then :
7864 ac_cv_lib_dl_dlsym=yes
7865else
7866 ac_cv_lib_dl_dlsym=no
7867fi
7868rm -f core conftest.err conftest.$ac_objext \
7869 conftest$ac_exeext conftest.$ac_ext
7870LIBS=$ac_check_lib_save_LIBS
7871fi
7872{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlsym" >&5
7873$as_echo "$ac_cv_lib_dl_dlsym" >&6; }
7874if 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
7881fi
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; }
7886if ${ac_cv_lib_resolv_res_query+:} false; then :
7887 $as_echo_n "(cached) " >&6
7888else
7889 ac_check_lib_save_LIBS=$LIBS
7890LIBS="-lresolv $LIBS"
7891cat 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
7898extern "C"
7899#endif
7900char res_query ();
7901int
7902main ()
7903{
7904return res_query ();
7905 ;
7906 return 0;
7907}
7908_ACEOF
7909if ac_fn_c_try_link "$LINENO"; then :
7910 ac_cv_lib_resolv_res_query=yes
7911else
7912 ac_cv_lib_resolv_res_query=no
7913fi
7914rm -f core conftest.err conftest.$ac_objext \
7915 conftest$ac_exeext conftest.$ac_ext
7916LIBS=$ac_check_lib_save_LIBS
7917fi
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; }
7920if test "x$ac_cv_lib_resolv_res_query" = xyes; then :
7921 LIBS="$LIBS -lresolv"
7922fi
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; }
7988if ${ac_cv_lib_prot_getluid+:} false; then :
7989 $as_echo_n "(cached) " >&6
7990else
7991 ac_check_lib_save_LIBS=$LIBS
7992LIBS="-lprot $LIBS"
7993cat 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
8000extern "C"
8001#endif
8002char getluid ();
8003int
8004main ()
8005{
8006return getluid ();
8007 ;
8008 return 0;
8009}
8010_ACEOF
8011if ac_fn_c_try_link "$LINENO"; then :
8012 ac_cv_lib_prot_getluid=yes
8013else
8014 ac_cv_lib_prot_getluid=no
8015fi
8016rm -f core conftest.err conftest.$ac_objext \
8017 conftest$ac_exeext conftest.$ac_ext
8018LIBS=$ac_check_lib_save_LIBS
8019fi
8020{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_prot_getluid" >&5
8021$as_echo "$ac_cv_lib_prot_getluid" >&6; }
8022if test "x$ac_cv_lib_prot_getluid" = xyes; then :
8023 LIBS="$LIBS -lprot"
8024 for ac_func in getluid setluid
8025do :
8026 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
8027ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
8028if 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
8033fi
8034done
8035
8036 $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h
8037
8038 $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h
8039
8040
8041fi
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
8086do :
8087 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
8088ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
8089if 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
8094fi
8095done
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.
8159if 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
8167fi
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 ;;
8245esac
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; }
8249if 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
8253else
8254 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8255/* end confdefs.h. */
8256 #include <stdio.h>
8257int
8258main ()
8259{
8260 exit(0);
8261 ;
8262 return 0;
8263}
8264_ACEOF
8265if ac_fn_c_try_run "$LINENO"; then :
8266 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
8267$as_echo "yes" >&6; }
8268else
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
8274fi
8275rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
8276 conftest.$ac_objext conftest.beam conftest.$ac_ext
8277fi
8278
8279
8280# Checks for libraries.
8281ac_fn_c_check_func "$LINENO" "yp_match" "ac_cv_func_yp_match"
8282if test "x$ac_cv_func_yp_match" = xyes; then :
8283
8284else
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; }
8287if ${ac_cv_lib_nsl_yp_match+:} false; then :
8288 $as_echo_n "(cached) " >&6
8289else
8290 ac_check_lib_save_LIBS=$LIBS
8291LIBS="-lnsl $LIBS"
8292cat 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
8299extern "C"
8300#endif
8301char yp_match ();
8302int
8303main ()
8304{
8305return yp_match ();
8306 ;
8307 return 0;
8308}
8309_ACEOF
8310if ac_fn_c_try_link "$LINENO"; then :
8311 ac_cv_lib_nsl_yp_match=yes
8312else
8313 ac_cv_lib_nsl_yp_match=no
8314fi
8315rm -f core conftest.err conftest.$ac_objext \
8316 conftest$ac_exeext conftest.$ac_ext
8317LIBS=$ac_check_lib_save_LIBS
8318fi
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; }
8321if 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
8328fi
8329
8330fi
8331
8332ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt"
8333if test "x$ac_cv_func_setsockopt" = xyes; then :
8334
8335else
8336 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5
8337$as_echo_n "checking for setsockopt in -lsocket... " >&6; }
8338if ${ac_cv_lib_socket_setsockopt+:} false; then :
8339 $as_echo_n "(cached) " >&6
8340else
8341 ac_check_lib_save_LIBS=$LIBS
8342LIBS="-lsocket $LIBS"
8343cat 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
8350extern "C"
8351#endif
8352char setsockopt ();
8353int
8354main ()
8355{
8356return setsockopt ();
8357 ;
8358 return 0;
8359}
8360_ACEOF
8361if ac_fn_c_try_link "$LINENO"; then :
8362 ac_cv_lib_socket_setsockopt=yes
8363else
8364 ac_cv_lib_socket_setsockopt=no
8365fi
8366rm -f core conftest.err conftest.$ac_objext \
8367 conftest$ac_exeext conftest.$ac_ext
8368LIBS=$ac_check_lib_save_LIBS
8369fi
8370{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5
8371$as_echo "$ac_cv_lib_socket_setsockopt" >&6; }
8372if 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
8379fi
8380
8381fi
8382
8383
8384for ac_func in dirname
8385do :
8386 ac_fn_c_check_func "$LINENO" "dirname" "ac_cv_func_dirname"
8387if 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
8392do :
8393 ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default"
8394if test "x$ac_cv_header_libgen_h" = xyes; then :
8395 cat >>confdefs.h <<_ACEOF
8396#define HAVE_LIBGEN_H 1
8397_ACEOF
8398
8399fi
8400
8401done
8402
8403else
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; }
8407if ${ac_cv_lib_gen_dirname+:} false; then :
8408 $as_echo_n "(cached) " >&6
8409else
8410 ac_check_lib_save_LIBS=$LIBS
8411LIBS="-lgen $LIBS"
8412cat 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
8419extern "C"
8420#endif
8421char dirname ();
8422int
8423main ()
8424{
8425return dirname ();
8426 ;
8427 return 0;
8428}
8429_ACEOF
8430if ac_fn_c_try_link "$LINENO"; then :
8431 ac_cv_lib_gen_dirname=yes
8432else
8433 ac_cv_lib_gen_dirname=no
8434fi
8435rm -f core conftest.err conftest.$ac_objext \
8436 conftest$ac_exeext conftest.$ac_ext
8437LIBS=$ac_check_lib_save_LIBS
8438fi
8439{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_dirname" >&5
8440$as_echo "$ac_cv_lib_gen_dirname" >&6; }
8441if 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; }
8445if ${ac_cv_have_broken_dirname+:} false; then :
8446 $as_echo_n "(cached) " >&6
8447else
8448
8449 save_LIBS="$LIBS"
8450 LIBS="$LIBS -lgen"
8451 if test "$cross_compiling" = yes; then :
8452 ac_cv_have_broken_dirname="no"
8453else
8454 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8455/* end confdefs.h. */
8456
8457#include <libgen.h>
8458#include <string.h>
8459
8460int 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
8473if ac_fn_c_try_run "$LINENO"; then :
8474 ac_cv_have_broken_dirname="no"
8475else
8476 ac_cv_have_broken_dirname="yes"
8477fi
8478rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
8479 conftest.$ac_objext conftest.beam conftest.$ac_ext
8480fi
8481
8482 LIBS="$save_LIBS"
8483
8484fi
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
8492do :
8493 ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default"
8494if test "x$ac_cv_header_libgen_h" = xyes; then :
8495 cat >>confdefs.h <<_ACEOF
8496#define HAVE_LIBGEN_H 1
8497_ACEOF
8498
8499fi
8500
8501done
8502
8503 fi
8504
8505fi
8506
8507
8508fi
8509done
8510
8511
8512ac_fn_c_check_func "$LINENO" "getspnam" "ac_cv_func_getspnam"
8513if test "x$ac_cv_func_getspnam" = xyes; then :
8514
8515else
8516 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getspnam in -lgen" >&5
8517$as_echo_n "checking for getspnam in -lgen... " >&6; }
8518if ${ac_cv_lib_gen_getspnam+:} false; then :
8519 $as_echo_n "(cached) " >&6
8520else
8521 ac_check_lib_save_LIBS=$LIBS
8522LIBS="-lgen $LIBS"
8523cat 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
8530extern "C"
8531#endif
8532char getspnam ();
8533int
8534main ()
8535{
8536return getspnam ();
8537 ;
8538 return 0;
8539}
8540_ACEOF
8541if ac_fn_c_try_link "$LINENO"; then :
8542 ac_cv_lib_gen_getspnam=yes
8543else
8544 ac_cv_lib_gen_getspnam=no
8545fi
8546rm -f core conftest.err conftest.$ac_objext \
8547 conftest$ac_exeext conftest.$ac_ext
8548LIBS=$ac_check_lib_save_LIBS
8549fi
8550{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_getspnam" >&5
8551$as_echo "$ac_cv_lib_gen_getspnam" >&6; }
8552if test "x$ac_cv_lib_gen_getspnam" = xyes; then :
8553 LIBS="$LIBS -lgen"
8554fi
8555
8556fi
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; }
8560if ${ac_cv_search_basename+:} false; then :
8561 $as_echo_n "(cached) " >&6
8562else
8563 ac_func_search_save_LIBS=$LIBS
8564cat 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
8571extern "C"
8572#endif
8573char basename ();
8574int
8575main ()
8576{
8577return basename ();
8578 ;
8579 return 0;
8580}
8581_ACEOF
8582for 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
8591fi
8592rm -f core conftest.err conftest.$ac_objext \
8593 conftest$ac_exeext
8594 if ${ac_cv_search_basename+:} false; then :
8595 break
8596fi
8597done
8598if ${ac_cv_search_basename+:} false; then :
8599
8600else
8601 ac_cv_search_basename=no
8602fi
8603rm conftest.$ac_ext
8604LIBS=$ac_func_search_save_LIBS
8605fi
8606{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_basename" >&5
8607$as_echo "$ac_cv_search_basename" >&6; }
8608ac_res=$ac_cv_search_basename
8609if 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
8614fi
8615
8616
8617
8618# Check whether --with-zlib was given.
8619if 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
8643fi
8644
8645
8646ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
8647if test "x$ac_cv_header_zlib_h" = xyes; then :
8648
8649else
8650 as_fn_error $? "*** zlib.h missing - please install first or check config.log ***" "$LINENO" 5
8651fi
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; }
8656if ${ac_cv_lib_z_deflate+:} false; then :
8657 $as_echo_n "(cached) " >&6
8658else
8659 ac_check_lib_save_LIBS=$LIBS
8660LIBS="-lz $LIBS"
8661cat 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
8668extern "C"
8669#endif
8670char deflate ();
8671int
8672main ()
8673{
8674return deflate ();
8675 ;
8676 return 0;
8677}
8678_ACEOF
8679if ac_fn_c_try_link "$LINENO"; then :
8680 ac_cv_lib_z_deflate=yes
8681else
8682 ac_cv_lib_z_deflate=no
8683fi
8684rm -f core conftest.err conftest.$ac_objext \
8685 conftest$ac_exeext conftest.$ac_ext
8686LIBS=$ac_check_lib_save_LIBS
8687fi
8688{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflate" >&5
8689$as_echo "$ac_cv_lib_z_deflate" >&6; }
8690if 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
8697else
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
8716extern "C"
8717#endif
8718char deflate ();
8719int
8720main ()
8721{
8722return deflate ();
8723 ;
8724 return 0;
8725}
8726_ACEOF
8727if ac_fn_c_try_link "$LINENO"; then :
8728 $as_echo "#define HAVE_LIBZ 1" >>confdefs.h
8729
8730else
8731
8732 as_fn_error $? "*** zlib missing - please install first or check config.log ***" "$LINENO" 5
8733
8734
8735fi
8736rm -f core conftest.err conftest.$ac_objext \
8737 conftest$ac_exeext conftest.$ac_ext
8738
8739
8740fi
8741
8742
8743
8744# Check whether --with-zlib-version-check was given.
8745if 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
8751fi
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; }
8756if 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
8760else
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
8768int
8769main ()
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
8793if ac_fn_c_try_run "$LINENO"; then :
8794 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8795$as_echo "no" >&6; }
8796else
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 ***
8801Your reported zlib version has known security problems. It's possible your
8802vendor has fixed these problems without changing the version number. If you
8803are sure this is the case, you can disable the check by running
8804\"./configure --without-zlib-version-check\".
8805If you are in doubt, upgrade zlib to version 1.2.3 or greater.
8806See 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
8812fi
8813rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
8814 conftest.$ac_objext conftest.beam conftest.$ac_ext
8815fi
8816
8817
8818ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
8819if test "x$ac_cv_func_strcasecmp" = xyes; then :
8820
8821else
8822 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolv" >&5
8823$as_echo_n "checking for strcasecmp in -lresolv... " >&6; }
8824if ${ac_cv_lib_resolv_strcasecmp+:} false; then :
8825 $as_echo_n "(cached) " >&6
8826else
8827 ac_check_lib_save_LIBS=$LIBS
8828LIBS="-lresolv $LIBS"
8829cat 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
8836extern "C"
8837#endif
8838char strcasecmp ();
8839int
8840main ()
8841{
8842return strcasecmp ();
8843 ;
8844 return 0;
8845}
8846_ACEOF
8847if ac_fn_c_try_link "$LINENO"; then :
8848 ac_cv_lib_resolv_strcasecmp=yes
8849else
8850 ac_cv_lib_resolv_strcasecmp=no
8851fi
8852rm -f core conftest.err conftest.$ac_objext \
8853 conftest$ac_exeext conftest.$ac_ext
8854LIBS=$ac_check_lib_save_LIBS
8855fi
8856{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_strcasecmp" >&5
8857$as_echo "$ac_cv_lib_resolv_strcasecmp" >&6; }
8858if test "x$ac_cv_lib_resolv_strcasecmp" = xyes; then :
8859 LIBS="$LIBS -lresolv"
8860fi
8861
8862
8863fi
8864
8865for ac_func in utimes
8866do :
8867 ac_fn_c_check_func "$LINENO" "utimes" "ac_cv_func_utimes"
8868if test "x$ac_cv_func_utimes" = xyes; then :
8869 cat >>confdefs.h <<_ACEOF
8870#define HAVE_UTIMES 1
8871_ACEOF
8872
8873else
8874 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for utimes in -lc89" >&5
8875$as_echo_n "checking for utimes in -lc89... " >&6; }
8876if ${ac_cv_lib_c89_utimes+:} false; then :
8877 $as_echo_n "(cached) " >&6
8878else
8879 ac_check_lib_save_LIBS=$LIBS
8880LIBS="-lc89 $LIBS"
8881cat 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
8888extern "C"
8889#endif
8890char utimes ();
8891int
8892main ()
8893{
8894return utimes ();
8895 ;
8896 return 0;
8897}
8898_ACEOF
8899if ac_fn_c_try_link "$LINENO"; then :
8900 ac_cv_lib_c89_utimes=yes
8901else
8902 ac_cv_lib_c89_utimes=no
8903fi
8904rm -f core conftest.err conftest.$ac_objext \
8905 conftest$ac_exeext conftest.$ac_ext
8906LIBS=$ac_check_lib_save_LIBS
8907fi
8908{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c89_utimes" >&5
8909$as_echo "$ac_cv_lib_c89_utimes" >&6; }
8910if test "x$ac_cv_lib_c89_utimes" = xyes; then :
8911 $as_echo "#define HAVE_UTIMES 1" >>confdefs.h
8912
8913 LIBS="$LIBS -lc89"
8914fi
8915
8916
8917fi
8918done
8919
8920
8921for ac_header in bsd/libutil.h libutil.h
8922do :
8923 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
8924ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
8925if 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
8930fi
8931
8932done
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; }
8936if ${ac_cv_search_fmt_scaled+:} false; then :
8937 $as_echo_n "(cached) " >&6
8938else
8939 ac_func_search_save_LIBS=$LIBS
8940cat 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
8947extern "C"
8948#endif
8949char fmt_scaled ();
8950int
8951main ()
8952{
8953return fmt_scaled ();
8954 ;
8955 return 0;
8956}
8957_ACEOF
8958for 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
8967fi
8968rm -f core conftest.err conftest.$ac_objext \
8969 conftest$ac_exeext
8970 if ${ac_cv_search_fmt_scaled+:} false; then :
8971 break
8972fi
8973done
8974if ${ac_cv_search_fmt_scaled+:} false; then :
8975
8976else
8977 ac_cv_search_fmt_scaled=no
8978fi
8979rm conftest.$ac_ext
8980LIBS=$ac_func_search_save_LIBS
8981fi
8982{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmt_scaled" >&5
8983$as_echo "$ac_cv_search_fmt_scaled" >&6; }
8984ac_res=$ac_cv_search_fmt_scaled
8985if test "$ac_res" != no; then :
8986 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
8987
8988fi
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; }
8992if ${ac_cv_search_scan_scaled+:} false; then :
8993 $as_echo_n "(cached) " >&6
8994else
8995 ac_func_search_save_LIBS=$LIBS
8996cat 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
9003extern "C"
9004#endif
9005char scan_scaled ();
9006int
9007main ()
9008{
9009return scan_scaled ();
9010 ;
9011 return 0;
9012}
9013_ACEOF
9014for 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
9023fi
9024rm -f core conftest.err conftest.$ac_objext \
9025 conftest$ac_exeext
9026 if ${ac_cv_search_scan_scaled+:} false; then :
9027 break
9028fi
9029done
9030if ${ac_cv_search_scan_scaled+:} false; then :
9031
9032else
9033 ac_cv_search_scan_scaled=no
9034fi
9035rm conftest.$ac_ext
9036LIBS=$ac_func_search_save_LIBS
9037fi
9038{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_scan_scaled" >&5
9039$as_echo "$ac_cv_search_scan_scaled" >&6; }
9040ac_res=$ac_cv_search_scan_scaled
9041if test "$ac_res" != no; then :
9042 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9043
9044fi
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; }
9048if ${ac_cv_search_login+:} false; then :
9049 $as_echo_n "(cached) " >&6
9050else
9051 ac_func_search_save_LIBS=$LIBS
9052cat 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
9059extern "C"
9060#endif
9061char login ();
9062int
9063main ()
9064{
9065return login ();
9066 ;
9067 return 0;
9068}
9069_ACEOF
9070for 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
9079fi
9080rm -f core conftest.err conftest.$ac_objext \
9081 conftest$ac_exeext
9082 if ${ac_cv_search_login+:} false; then :
9083 break
9084fi
9085done
9086if ${ac_cv_search_login+:} false; then :
9087
9088else
9089 ac_cv_search_login=no
9090fi
9091rm conftest.$ac_ext
9092LIBS=$ac_func_search_save_LIBS
9093fi
9094{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_login" >&5
9095$as_echo "$ac_cv_search_login" >&6; }
9096ac_res=$ac_cv_search_login
9097if test "$ac_res" != no; then :
9098 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9099
9100fi
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; }
9104if ${ac_cv_search_logout+:} false; then :
9105 $as_echo_n "(cached) " >&6
9106else
9107 ac_func_search_save_LIBS=$LIBS
9108cat 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
9115extern "C"
9116#endif
9117char logout ();
9118int
9119main ()
9120{
9121return logout ();
9122 ;
9123 return 0;
9124}
9125_ACEOF
9126for 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
9135fi
9136rm -f core conftest.err conftest.$ac_objext \
9137 conftest$ac_exeext
9138 if ${ac_cv_search_logout+:} false; then :
9139 break
9140fi
9141done
9142if ${ac_cv_search_logout+:} false; then :
9143
9144else
9145 ac_cv_search_logout=no
9146fi
9147rm conftest.$ac_ext
9148LIBS=$ac_func_search_save_LIBS
9149fi
9150{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logout" >&5
9151$as_echo "$ac_cv_search_logout" >&6; }
9152ac_res=$ac_cv_search_logout
9153if test "$ac_res" != no; then :
9154 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9155
9156fi
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; }
9160if ${ac_cv_search_logwtmp+:} false; then :
9161 $as_echo_n "(cached) " >&6
9162else
9163 ac_func_search_save_LIBS=$LIBS
9164cat 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
9171extern "C"
9172#endif
9173char logwtmp ();
9174int
9175main ()
9176{
9177return logwtmp ();
9178 ;
9179 return 0;
9180}
9181_ACEOF
9182for 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
9191fi
9192rm -f core conftest.err conftest.$ac_objext \
9193 conftest$ac_exeext
9194 if ${ac_cv_search_logwtmp+:} false; then :
9195 break
9196fi
9197done
9198if ${ac_cv_search_logwtmp+:} false; then :
9199
9200else
9201 ac_cv_search_logwtmp=no
9202fi
9203rm conftest.$ac_ext
9204LIBS=$ac_func_search_save_LIBS
9205fi
9206{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logwtmp" >&5
9207$as_echo "$ac_cv_search_logwtmp" >&6; }
9208ac_res=$ac_cv_search_logwtmp
9209if test "$ac_res" != no; then :
9210 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9211
9212fi
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; }
9216if ${ac_cv_search_openpty+:} false; then :
9217 $as_echo_n "(cached) " >&6
9218else
9219 ac_func_search_save_LIBS=$LIBS
9220cat 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
9227extern "C"
9228#endif
9229char openpty ();
9230int
9231main ()
9232{
9233return openpty ();
9234 ;
9235 return 0;
9236}
9237_ACEOF
9238for 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
9247fi
9248rm -f core conftest.err conftest.$ac_objext \
9249 conftest$ac_exeext
9250 if ${ac_cv_search_openpty+:} false; then :
9251 break
9252fi
9253done
9254if ${ac_cv_search_openpty+:} false; then :
9255
9256else
9257 ac_cv_search_openpty=no
9258fi
9259rm conftest.$ac_ext
9260LIBS=$ac_func_search_save_LIBS
9261fi
9262{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_openpty" >&5
9263$as_echo "$ac_cv_search_openpty" >&6; }
9264ac_res=$ac_cv_search_openpty
9265if test "$ac_res" != no; then :
9266 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9267
9268fi
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; }
9272if ${ac_cv_search_updwtmp+:} false; then :
9273 $as_echo_n "(cached) " >&6
9274else
9275 ac_func_search_save_LIBS=$LIBS
9276cat 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
9283extern "C"
9284#endif
9285char updwtmp ();
9286int
9287main ()
9288{
9289return updwtmp ();
9290 ;
9291 return 0;
9292}
9293_ACEOF
9294for 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
9303fi
9304rm -f core conftest.err conftest.$ac_objext \
9305 conftest$ac_exeext
9306 if ${ac_cv_search_updwtmp+:} false; then :
9307 break
9308fi
9309done
9310if ${ac_cv_search_updwtmp+:} false; then :
9311
9312else
9313 ac_cv_search_updwtmp=no
9314fi
9315rm conftest.$ac_ext
9316LIBS=$ac_func_search_save_LIBS
9317fi
9318{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_updwtmp" >&5
9319$as_echo "$ac_cv_search_updwtmp" >&6; }
9320ac_res=$ac_cv_search_updwtmp
9321if test "$ac_res" != no; then :
9322 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9323
9324fi
9325
9326for ac_func in fmt_scaled scan_scaled login logout openpty updwtmp logwtmp
9327do :
9328 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
9329ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
9330if 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
9335fi
9336done
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; }
9342if ${ac_cv_search_inet_ntop+:} false; then :
9343 $as_echo_n "(cached) " >&6
9344else
9345 ac_func_search_save_LIBS=$LIBS
9346cat 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
9353extern "C"
9354#endif
9355char inet_ntop ();
9356int
9357main ()
9358{
9359return inet_ntop ();
9360 ;
9361 return 0;
9362}
9363_ACEOF
9364for 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
9373fi
9374rm -f core conftest.err conftest.$ac_objext \
9375 conftest$ac_exeext
9376 if ${ac_cv_search_inet_ntop+:} false; then :
9377 break
9378fi
9379done
9380if ${ac_cv_search_inet_ntop+:} false; then :
9381
9382else
9383 ac_cv_search_inet_ntop=no
9384fi
9385rm conftest.$ac_ext
9386LIBS=$ac_func_search_save_LIBS
9387fi
9388{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_ntop" >&5
9389$as_echo "$ac_cv_search_inet_ntop" >&6; }
9390ac_res=$ac_cv_search_inet_ntop
9391if test "$ac_res" != no; then :
9392 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9393
9394fi
9395
9396
9397for ac_func in strftime
9398do :
9399 ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
9400if test "x$ac_cv_func_strftime" = xyes; then :
9401 cat >>confdefs.h <<_ACEOF
9402#define HAVE_STRFTIME 1
9403_ACEOF
9404
9405else
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; }
9409if ${ac_cv_lib_intl_strftime+:} false; then :
9410 $as_echo_n "(cached) " >&6
9411else
9412 ac_check_lib_save_LIBS=$LIBS
9413LIBS="-lintl $LIBS"
9414cat 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
9421extern "C"
9422#endif
9423char strftime ();
9424int
9425main ()
9426{
9427return strftime ();
9428 ;
9429 return 0;
9430}
9431_ACEOF
9432if ac_fn_c_try_link "$LINENO"; then :
9433 ac_cv_lib_intl_strftime=yes
9434else
9435 ac_cv_lib_intl_strftime=no
9436fi
9437rm -f core conftest.err conftest.$ac_objext \
9438 conftest$ac_exeext conftest.$ac_ext
9439LIBS=$ac_check_lib_save_LIBS
9440fi
9441{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5
9442$as_echo "$ac_cv_lib_intl_strftime" >&6; }
9443if test "x$ac_cv_lib_intl_strftime" = xyes; then :
9444 $as_echo "#define HAVE_STRFTIME 1" >>confdefs.h
9445
9446LIBS="-lintl $LIBS"
9447fi
9448
9449fi
9450done
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; }
9456cat 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
9465if (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
9474else
9475
9476 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9477$as_echo "no" >&6; }
9478
9479
9480fi
9481rm -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; }
9487cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9488/* end confdefs.h. */
9489 #include <glob.h>
9490int
9491main ()
9492{
9493 glob_t g; g.gl_matchc = 1;
9494 ;
9495 return 0;
9496}
9497_ACEOF
9498if 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
9506else
9507
9508 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9509$as_echo "no" >&6; }
9510
9511fi
9512rm -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; }
9517cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9518/* end confdefs.h. */
9519 #include <glob.h>
9520int
9521main ()
9522{
9523
9524#ifndef GLOB_KEEPSTAT
9525#error "glob does not support GLOB_KEEPSTAT extension"
9526#endif
9527glob_t g;
9528g.gl_statv = NULL;
9529
9530 ;
9531 return 0;
9532}
9533_ACEOF
9534if 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
9542else
9543
9544 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9545$as_echo "no" >&6; }
9546
9547
9548fi
9549rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
9550
9551ac_fn_c_check_decl "$LINENO" "GLOB_NOMATCH" "ac_cv_have_decl_GLOB_NOMATCH" "#include <glob.h>
9552"
9553if test "x$ac_cv_have_decl_GLOB_NOMATCH" = xyes; then :
9554 ac_have_decl=1
9555else
9556 ac_have_decl=0
9557fi
9558
9559cat >>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; }
9566if 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
9574else
9575 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9576/* end confdefs.h. */
9577
9578#include <sys/types.h>
9579#include <dirent.h>
9580int
9581main ()
9582{
9583
9584 struct dirent d;
9585 exit(sizeof(d.d_name)<=sizeof(char));
9586
9587 ;
9588 return 0;
9589}
9590_ACEOF
9591if ac_fn_c_try_run "$LINENO"; then :
9592 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
9593$as_echo "yes" >&6; }
9594else
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
9602fi
9603rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
9604 conftest.$ac_objext conftest.beam conftest.$ac_ext
9605fi
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; }
9610if 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; }
9616else
9617 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9618$as_echo "no" >&6; }
9619fi
9620
9621# Check whether user wants S/Key support
9622SKEY_MSG="no"
9623
9624# Check whether --with-skey was given.
9625if 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
9648int
9649main ()
9650{
9651
9652 char *ff = skey_keyinfo(""); ff="";
9653 exit(0);
9654
9655 ;
9656 return 0;
9657}
9658_ACEOF
9659if ac_fn_c_try_link "$LINENO"; then :
9660 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
9661$as_echo "yes" >&6; }
9662else
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
9668fi
9669rm -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
9679int
9680main ()
9681{
9682
9683 (void)skeychallenge(NULL,"name","",0);
9684
9685 ;
9686 return 0;
9687}
9688_ACEOF
9689if 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
9696else
9697
9698 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9699$as_echo "no" >&6; }
9700
9701fi
9702rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
9703 fi
9704
9705
9706fi
9707
9708
9709# Check whether user wants TCP wrappers support
9710TCPW_MSG="no"
9711
9712# Check whether --with-tcp-wrappers was given.
9713if 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>
9750int deny_severity = 0, allow_severity = 0;
9751
9752int
9753main ()
9754{
9755
9756 hosts_access(0);
9757
9758 ;
9759 return 0;
9760}
9761_ACEOF
9762if 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
9772else
9773
9774 as_fn_error $? "*** libwrap missing" "$LINENO" 5
9775
9776
9777fi
9778rm -f core conftest.err conftest.$ac_objext \
9779 conftest$ac_exeext conftest.$ac_ext
9780 LIBS="$saved_LIBS"
9781 fi
9782
9783
9784fi
9785
9786
9787# Check whether user wants to use ldns
9788LDNS_MSG="no"
9789
9790# Check whether --with-ldns was given.
9791if 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>
9815int main() { ldns_status status = ldns_verify_trusted(NULL, NULL, NULL, NULL); status=LDNS_STATUS_OK; exit(0); }
9816
9817
9818_ACEOF
9819if ac_fn_c_try_link "$LINENO"; then :
9820 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
9821$as_echo "yes" >&6; }
9822else
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
9828fi
9829rm -f core conftest.err conftest.$ac_objext \
9830 conftest$ac_exeext conftest.$ac_ext
9831 fi
9832
9833
9834fi
9835
9836
9837# Check whether user wants libedit support
9838LIBEDIT_MSG="no"
9839
9840# Check whether --with-libedit was given.
9841if 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.
9846set 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; }
9849if ${ac_cv_path_PKGCONFIG+:} false; then :
9850 $as_echo_n "(cached) " >&6
9851else
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
9858for as_dir in $PATH
9859do
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
9868done
9869 done
9870IFS=$as_save_IFS
9871
9872 ;;
9873esac
9874fi
9875PKGCONFIG=$ac_cv_path_PKGCONFIG
9876if test -n "$PKGCONFIG"; then
9877 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
9878$as_echo "$PKGCONFIG" >&6; }
9879else
9880 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9881$as_echo "no" >&6; }
9882fi
9883
9884
9885fi
9886if 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.
9889set 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; }
9892if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
9893 $as_echo_n "(cached) " >&6
9894else
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
9901for as_dir in $PATH
9902do
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
9911done
9912 done
9913IFS=$as_save_IFS
9914
9915 ;;
9916esac
9917fi
9918ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
9919if 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; }
9922else
9923 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9924$as_echo "no" >&6; }
9925fi
9926
9927 if test "x$ac_pt_PKGCONFIG" = x; then
9928 PKGCONFIG="no"
9929 else
9930 case $cross_compiling:$ac_tool_warned in
9931yes:)
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;}
9934ac_tool_warned=yes ;;
9935esac
9936 PKGCONFIG=$ac_pt_PKGCONFIG
9937 fi
9938else
9939 PKGCONFIG="$ac_cv_path_PKGCONFIG"
9940fi
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; }
9971if ${ac_cv_lib_edit_el_init+:} false; then :
9972 $as_echo_n "(cached) " >&6
9973else
9974 ac_check_lib_save_LIBS=$LIBS
9975LIBS="-ledit $OTHERLIBS
9976 $LIBS"
9977cat 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
9984extern "C"
9985#endif
9986char el_init ();
9987int
9988main ()
9989{
9990return el_init ();
9991 ;
9992 return 0;
9993}
9994_ACEOF
9995if ac_fn_c_try_link "$LINENO"; then :
9996 ac_cv_lib_edit_el_init=yes
9997else
9998 ac_cv_lib_edit_el_init=no
9999fi
10000rm -f core conftest.err conftest.$ac_objext \
10001 conftest$ac_exeext conftest.$ac_ext
10002LIBS=$ac_check_lib_save_LIBS
10003fi
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; }
10006if 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
10013else
10014 as_fn_error $? "libedit not found" "$LINENO" 5
10015fi
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>
10022int
10023main ()
10024{
10025
10026 int i = H_SETSIZE;
10027 el_init("", NULL, NULL, NULL);
10028 exit(0);
10029
10030 ;
10031 return 0;
10032}
10033_ACEOF
10034if ac_fn_c_try_compile "$LINENO"; then :
10035 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10036$as_echo "yes" >&6; }
10037else
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
10042fi
10043rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10044 fi
10045
10046fi
10047
10048
10049AUDIT_MODULE=none
10050
10051# Check whether --with-audit was given.
10052if 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
10062do :
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"
10070if 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
10075else
10076 as_fn_error $? "BSM enabled and bsm/audit.h not found" "$LINENO" 5
10077fi
10078
10079done
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; }
10083if ${ac_cv_lib_bsm_getaudit+:} false; then :
10084 $as_echo_n "(cached) " >&6
10085else
10086 ac_check_lib_save_LIBS=$LIBS
10087LIBS="-lbsm $LIBS"
10088cat 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
10095extern "C"
10096#endif
10097char getaudit ();
10098int
10099main ()
10100{
10101return getaudit ();
10102 ;
10103 return 0;
10104}
10105_ACEOF
10106if ac_fn_c_try_link "$LINENO"; then :
10107 ac_cv_lib_bsm_getaudit=yes
10108else
10109 ac_cv_lib_bsm_getaudit=no
10110fi
10111rm -f core conftest.err conftest.$ac_objext \
10112 conftest$ac_exeext conftest.$ac_ext
10113LIBS=$ac_check_lib_save_LIBS
10114fi
10115{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsm_getaudit" >&5
10116$as_echo "$ac_cv_lib_bsm_getaudit" >&6; }
10117if 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
10124else
10125 as_fn_error $? "BSM enabled and required library not found" "$LINENO" 5
10126fi
10127
10128 for ac_func in getaudit
10129do :
10130 ac_fn_c_check_func "$LINENO" "getaudit" "ac_cv_func_getaudit"
10131if test "x$ac_cv_func_getaudit" = xyes; then :
10132 cat >>confdefs.h <<_ACEOF
10133#define HAVE_GETAUDIT 1
10134_ACEOF
10135
10136else
10137 as_fn_error $? "BSM enabled and required function not found" "$LINENO" 5
10138fi
10139done
10140
10141 # These are optional
10142 for ac_func in getaudit_addr aug_get_machine
10143do :
10144 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
10145ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
10146if 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
10151fi
10152done
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
10169do :
10170 ac_fn_c_check_header_mongrel "$LINENO" "libaudit.h" "ac_cv_header_libaudit_h" "$ac_includes_default"
10171if test "x$ac_cv_header_libaudit_h" = xyes; then :
10172 cat >>confdefs.h <<_ACEOF
10173#define HAVE_LIBAUDIT_H 1
10174_ACEOF
10175
10176fi
10177
10178done
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
10202fi
10203
10204
10205
10206# Check whether --with-pie was given.
10207if 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
10217fi
10218
10219if test "x$use_pie" = "x"; then
10220 use_pie=no
10221fi
10222if 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
10225fi
10226if 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
10238if ac_fn_c_try_compile "$LINENO"; then :
10239 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10240$as_echo "yes" >&6; }
10241else
10242 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10243$as_echo "no" >&6; }
10244 use_pie=no
10245
10246fi
10247rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10248fi
10249if 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>
10264int 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
10275if ac_fn_c_try_compile "$LINENO"; then :
10276
10277if `grep -i "unrecognized option" conftest.err >/dev/null`
10278then
10279 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10280$as_echo "no" >&6; }
10281 CFLAGS="$saved_CFLAGS"
10282else
10283 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10284$as_echo "yes" >&6; }
10285 CFLAGS="$saved_CFLAGS $_define_flag"
10286fi
10287else
10288 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10289$as_echo "no" >&6; }
10290 CFLAGS="$saved_CFLAGS"
10291
10292fi
10293rm -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>
10307int 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
10318if 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"
10322else
10323 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10324$as_echo "no" >&6; }
10325 LDFLAGS="$saved_LDFLAGS"
10326
10327fi
10328rm -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
10344fi
10345
10346for 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
10460do :
10461 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
10462ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
10463if 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
10468fi
10469done
10470
10471
10472cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10473/* end confdefs.h. */
10474 #include <ctype.h>
10475int
10476main ()
10477{
10478 return (isblank('a'));
10479 ;
10480 return 0;
10481}
10482_ACEOF
10483if ac_fn_c_try_link "$LINENO"; then :
10484
10485$as_echo "#define HAVE_ISBLANK 1" >>confdefs.h
10486
10487
10488fi
10489rm -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; }
10495if ${ac_cv_search_dlopen+:} false; then :
10496 $as_echo_n "(cached) " >&6
10497else
10498 ac_func_search_save_LIBS=$LIBS
10499cat 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
10506extern "C"
10507#endif
10508char dlopen ();
10509int
10510main ()
10511{
10512return dlopen ();
10513 ;
10514 return 0;
10515}
10516_ACEOF
10517for 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
10526fi
10527rm -f core conftest.err conftest.$ac_objext \
10528 conftest$ac_exeext
10529 if ${ac_cv_search_dlopen+:} false; then :
10530 break
10531fi
10532done
10533if ${ac_cv_search_dlopen+:} false; then :
10534
10535else
10536 ac_cv_search_dlopen=no
10537fi
10538rm conftest.$ac_ext
10539LIBS=$ac_func_search_save_LIBS
10540fi
10541{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5
10542$as_echo "$ac_cv_search_dlopen" >&6; }
10543ac_res=$ac_cv_search_dlopen
10544if 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
10550fi
10551
10552
10553# IRIX has a const char return value for gai_strerror()
10554for ac_func in gai_strerror
10555do :
10556 ac_fn_c_check_func "$LINENO" "gai_strerror" "ac_cv_func_gai_strerror"
10557if 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
10571const char *gai_strerror(int);
10572
10573int
10574main ()
10575{
10576
10577 char *str;
10578 str = gai_strerror(0);
10579
10580 ;
10581 return 0;
10582}
10583_ACEOF
10584if ac_fn_c_try_compile "$LINENO"; then :
10585
10586
10587$as_echo "#define HAVE_CONST_GAI_STRERROR_PROTO 1" >>confdefs.h
10588
10589fi
10590rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10591fi
10592done
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; }
10597if ${ac_cv_search_nanosleep+:} false; then :
10598 $as_echo_n "(cached) " >&6
10599else
10600 ac_func_search_save_LIBS=$LIBS
10601cat 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
10608extern "C"
10609#endif
10610char nanosleep ();
10611int
10612main ()
10613{
10614return nanosleep ();
10615 ;
10616 return 0;
10617}
10618_ACEOF
10619for 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
10628fi
10629rm -f core conftest.err conftest.$ac_objext \
10630 conftest$ac_exeext
10631 if ${ac_cv_search_nanosleep+:} false; then :
10632 break
10633fi
10634done
10635if ${ac_cv_search_nanosleep+:} false; then :
10636
10637else
10638 ac_cv_search_nanosleep=no
10639fi
10640rm conftest.$ac_ext
10641LIBS=$ac_func_search_save_LIBS
10642fi
10643{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5
10644$as_echo "$ac_cv_search_nanosleep" >&6; }
10645ac_res=$ac_cv_search_nanosleep
10646if 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
10651fi
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; }
10656if ${ac_cv_search_clock_gettime+:} false; then :
10657 $as_echo_n "(cached) " >&6
10658else
10659 ac_func_search_save_LIBS=$LIBS
10660cat 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
10667extern "C"
10668#endif
10669char clock_gettime ();
10670int
10671main ()
10672{
10673return clock_gettime ();
10674 ;
10675 return 0;
10676}
10677_ACEOF
10678for 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
10687fi
10688rm -f core conftest.err conftest.$ac_objext \
10689 conftest$ac_exeext
10690 if ${ac_cv_search_clock_gettime+:} false; then :
10691 break
10692fi
10693done
10694if ${ac_cv_search_clock_gettime+:} false; then :
10695
10696else
10697 ac_cv_search_clock_gettime=no
10698fi
10699rm conftest.$ac_ext
10700LIBS=$ac_func_search_save_LIBS
10701fi
10702{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
10703$as_echo "$ac_cv_search_clock_gettime" >&6; }
10704ac_res=$ac_cv_search_clock_gettime
10705if 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
10710fi
10711
10712
10713ac_fn_c_check_decl "$LINENO" "getrusage" "ac_cv_have_decl_getrusage" "$ac_includes_default"
10714if test "x$ac_cv_have_decl_getrusage" = xyes; then :
10715 for ac_func in getrusage
10716do :
10717 ac_fn_c_check_func "$LINENO" "getrusage" "ac_cv_func_getrusage"
10718if test "x$ac_cv_func_getrusage" = xyes; then :
10719 cat >>confdefs.h <<_ACEOF
10720#define HAVE_GETRUSAGE 1
10721_ACEOF
10722
10723fi
10724done
10725
10726fi
10727
10728ac_fn_c_check_decl "$LINENO" "strsep" "ac_cv_have_decl_strsep" "
10729#ifdef HAVE_STRING_H
10730# include <string.h>
10731#endif
10732
10733"
10734if test "x$ac_cv_have_decl_strsep" = xyes; then :
10735 for ac_func in strsep
10736do :
10737 ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep"
10738if test "x$ac_cv_func_strsep" = xyes; then :
10739 cat >>confdefs.h <<_ACEOF
10740#define HAVE_STRSEP 1
10741_ACEOF
10742
10743fi
10744done
10745
10746fi
10747
10748
10749ac_fn_c_check_decl "$LINENO" "tcsendbreak" "ac_cv_have_decl_tcsendbreak" "#include <termios.h>
10750
10751"
10752if test "x$ac_cv_have_decl_tcsendbreak" = xyes; then :
10753 $as_echo "#define HAVE_TCSENDBREAK 1" >>confdefs.h
10754
10755else
10756 for ac_func in tcsendbreak
10757do :
10758 ac_fn_c_check_func "$LINENO" "tcsendbreak" "ac_cv_func_tcsendbreak"
10759if test "x$ac_cv_func_tcsendbreak" = xyes; then :
10760 cat >>confdefs.h <<_ACEOF
10761#define HAVE_TCSENDBREAK 1
10762_ACEOF
10763
10764fi
10765done
10766
10767fi
10768
10769
10770ac_fn_c_check_decl "$LINENO" "h_errno" "ac_cv_have_decl_h_errno" "#include <netdb.h>
10771"
10772if test "x$ac_cv_have_decl_h_errno" = xyes; then :
10773 ac_have_decl=1
10774else
10775 ac_have_decl=0
10776fi
10777
10778cat >>confdefs.h <<_ACEOF
10779#define HAVE_DECL_H_ERRNO $ac_have_decl
10780_ACEOF
10781
10782
10783ac_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"
10788if test "x$ac_cv_have_decl_SHUT_RD" = xyes; then :
10789 ac_have_decl=1
10790else
10791 ac_have_decl=0
10792fi
10793
10794cat >>confdefs.h <<_ACEOF
10795#define HAVE_DECL_SHUT_RD $ac_have_decl
10796_ACEOF
10797
10798
10799ac_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"
10809if test "x$ac_cv_have_decl_O_NONBLOCK" = xyes; then :
10810 ac_have_decl=1
10811else
10812 ac_have_decl=0
10813fi
10814
10815cat >>confdefs.h <<_ACEOF
10816#define HAVE_DECL_O_NONBLOCK $ac_have_decl
10817_ACEOF
10818
10819
10820ac_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"
10826if test "x$ac_cv_have_decl_writev" = xyes; then :
10827 ac_have_decl=1
10828else
10829 ac_have_decl=0
10830fi
10831
10832cat >>confdefs.h <<_ACEOF
10833#define HAVE_DECL_WRITEV $ac_have_decl
10834_ACEOF
10835
10836
10837ac_fn_c_check_decl "$LINENO" "MAXSYMLINKS" "ac_cv_have_decl_MAXSYMLINKS" "
10838#include <sys/param.h>
10839
10840"
10841if test "x$ac_cv_have_decl_MAXSYMLINKS" = xyes; then :
10842 ac_have_decl=1
10843else
10844 ac_have_decl=0
10845fi
10846
10847cat >>confdefs.h <<_ACEOF
10848#define HAVE_DECL_MAXSYMLINKS $ac_have_decl
10849_ACEOF
10850
10851
10852ac_fn_c_check_decl "$LINENO" "offsetof" "ac_cv_have_decl_offsetof" "
10853#include <stddef.h>
10854
10855"
10856if test "x$ac_cv_have_decl_offsetof" = xyes; then :
10857 ac_have_decl=1
10858else
10859 ac_have_decl=0
10860fi
10861
10862cat >>confdefs.h <<_ACEOF
10863#define HAVE_DECL_OFFSETOF $ac_have_decl
10864_ACEOF
10865
10866
10867# extra bits for select(2)
10868ac_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"
10885if test "x$ac_cv_have_decl_howmany" = xyes; then :
10886 ac_have_decl=1
10887else
10888 ac_have_decl=0
10889fi
10890
10891cat >>confdefs.h <<_ACEOF
10892#define HAVE_DECL_HOWMANY $ac_have_decl
10893_ACEOF
10894ac_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"
10911if test "x$ac_cv_have_decl_NFDBITS" = xyes; then :
10912 ac_have_decl=1
10913else
10914 ac_have_decl=0
10915fi
10916
10917cat >>confdefs.h <<_ACEOF
10918#define HAVE_DECL_NFDBITS $ac_have_decl
10919_ACEOF
10920
10921ac_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"
10935if test "x$ac_cv_type_fd_mask" = xyes; then :
10936
10937cat >>confdefs.h <<_ACEOF
10938#define HAVE_FD_MASK 1
10939_ACEOF
10940
10941
10942fi
10943
10944
10945for ac_func in setresuid
10946do :
10947 ac_fn_c_check_func "$LINENO" "setresuid" "ac_cv_func_setresuid"
10948if 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
10959else
10960 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10961/* end confdefs.h. */
10962
10963#include <stdlib.h>
10964#include <errno.h>
10965
10966int
10967main ()
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
10981if ac_fn_c_try_run "$LINENO"; then :
10982 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10983$as_echo "yes" >&6; }
10984else
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; }
10990fi
10991rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
10992 conftest.$ac_objext conftest.beam conftest.$ac_ext
10993fi
10994
10995
10996fi
10997done
10998
10999
11000for ac_func in setresgid
11001do :
11002 ac_fn_c_check_func "$LINENO" "setresgid" "ac_cv_func_setresgid"
11003if 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
11014else
11015 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11016/* end confdefs.h. */
11017
11018#include <stdlib.h>
11019#include <errno.h>
11020
11021int
11022main ()
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
11036if ac_fn_c_try_run "$LINENO"; then :
11037 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11038$as_echo "yes" >&6; }
11039else
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; }
11045fi
11046rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11047 conftest.$ac_objext conftest.beam conftest.$ac_ext
11048fi
11049
11050
11051fi
11052done
11053
11054
11055for ac_func in gettimeofday time
11056do :
11057 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11058ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11059if 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
11064fi
11065done
11066
11067for ac_func in endutent getutent getutid getutline pututline setutent
11068do :
11069 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11070ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11071if 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
11076fi
11077done
11078
11079for ac_func in utmpname
11080do :
11081 ac_fn_c_check_func "$LINENO" "utmpname" "ac_cv_func_utmpname"
11082if test "x$ac_cv_func_utmpname" = xyes; then :
11083 cat >>confdefs.h <<_ACEOF
11084#define HAVE_UTMPNAME 1
11085_ACEOF
11086
11087fi
11088done
11089
11090for ac_func in endutxent getutxent getutxid getutxline getutxuser pututxline
11091do :
11092 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11093ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11094if 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
11099fi
11100done
11101
11102for ac_func in setutxdb setutxent utmpxname
11103do :
11104 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11105ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11106if 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
11111fi
11112done
11113
11114for ac_func in getlastlogxbyname
11115do :
11116 ac_fn_c_check_func "$LINENO" "getlastlogxbyname" "ac_cv_func_getlastlogxbyname"
11117if test "x$ac_cv_func_getlastlogxbyname" = xyes; then :
11118 cat >>confdefs.h <<_ACEOF
11119#define HAVE_GETLASTLOGXBYNAME 1
11120_ACEOF
11121
11122fi
11123done
11124
11125
11126ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon"
11127if test "x$ac_cv_func_daemon" = xyes; then :
11128
11129$as_echo "#define HAVE_DAEMON 1" >>confdefs.h
11130
11131else
11132 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5
11133$as_echo_n "checking for daemon in -lbsd... " >&6; }
11134if ${ac_cv_lib_bsd_daemon+:} false; then :
11135 $as_echo_n "(cached) " >&6
11136else
11137 ac_check_lib_save_LIBS=$LIBS
11138LIBS="-lbsd $LIBS"
11139cat 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
11146extern "C"
11147#endif
11148char daemon ();
11149int
11150main ()
11151{
11152return daemon ();
11153 ;
11154 return 0;
11155}
11156_ACEOF
11157if ac_fn_c_try_link "$LINENO"; then :
11158 ac_cv_lib_bsd_daemon=yes
11159else
11160 ac_cv_lib_bsd_daemon=no
11161fi
11162rm -f core conftest.err conftest.$ac_objext \
11163 conftest$ac_exeext conftest.$ac_ext
11164LIBS=$ac_check_lib_save_LIBS
11165fi
11166{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5
11167$as_echo "$ac_cv_lib_bsd_daemon" >&6; }
11168if test "x$ac_cv_lib_bsd_daemon" = xyes; then :
11169 LIBS="$LIBS -lbsd"; $as_echo "#define HAVE_DAEMON 1" >>confdefs.h
11170
11171fi
11172
11173
11174fi
11175
11176
11177ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
11178if test "x$ac_cv_func_getpagesize" = xyes; then :
11179
11180$as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h
11181
11182else
11183 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpagesize in -lucb" >&5
11184$as_echo_n "checking for getpagesize in -lucb... " >&6; }
11185if ${ac_cv_lib_ucb_getpagesize+:} false; then :
11186 $as_echo_n "(cached) " >&6
11187else
11188 ac_check_lib_save_LIBS=$LIBS
11189LIBS="-lucb $LIBS"
11190cat 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
11197extern "C"
11198#endif
11199char getpagesize ();
11200int
11201main ()
11202{
11203return getpagesize ();
11204 ;
11205 return 0;
11206}
11207_ACEOF
11208if ac_fn_c_try_link "$LINENO"; then :
11209 ac_cv_lib_ucb_getpagesize=yes
11210else
11211 ac_cv_lib_ucb_getpagesize=no
11212fi
11213rm -f core conftest.err conftest.$ac_objext \
11214 conftest$ac_exeext conftest.$ac_ext
11215LIBS=$ac_check_lib_save_LIBS
11216fi
11217{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ucb_getpagesize" >&5
11218$as_echo "$ac_cv_lib_ucb_getpagesize" >&6; }
11219if test "x$ac_cv_lib_ucb_getpagesize" = xyes; then :
11220 LIBS="$LIBS -lucb"; $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h
11221
11222fi
11223
11224
11225fi
11226
11227
11228# Check for broken snprintf
11229if 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
11236else
11237 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11238/* end confdefs.h. */
11239 #include <stdio.h>
11240int
11241main ()
11242{
11243
11244 char b[5];
11245 snprintf(b,5,"123456789");
11246 exit(b[4]!='\0');
11247
11248 ;
11249 return 0;
11250}
11251_ACEOF
11252if ac_fn_c_try_run "$LINENO"; then :
11253 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11254$as_echo "yes" >&6; }
11255else
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
11265fi
11266rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11267 conftest.$ac_objext conftest.beam conftest.$ac_ext
11268fi
11269
11270fi
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)
11275if 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
11283else
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
11291int 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
11298int
11299main ()
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
11309if ac_fn_c_try_run "$LINENO"; then :
11310 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11311$as_echo "yes" >&6; }
11312else
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
11322fi
11323rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11324 conftest.$ac_objext conftest.beam conftest.$ac_ext
11325fi
11326
11327fi
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; }
11334cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11335/* end confdefs.h. */
11336
11337#include <stdio.h>
11338int snprintf(char *a, size_t b, const char *c, ...) { return 0; }
11339
11340int
11341main ()
11342{
11343
11344 snprintf(0, 0, 0);
11345
11346 ;
11347 return 0;
11348}
11349_ACEOF
11350if 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
11356else
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
11361fi
11362rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
11363
11364# Check for missing getpeereid (or equiv) support
11365NO_PEERCHECK=""
11366if 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>
11374int
11375main ()
11376{
11377int i = SO_PEERCRED;
11378 ;
11379 return 0;
11380}
11381_ACEOF
11382if 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
11389else
11390 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
11391$as_echo "no" >&6; }
11392 NO_PEERCHECK=1
11393
11394fi
11395rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
11396fi
11397
11398if 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; }
11401if 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
11409else
11410 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11411/* end confdefs.h. */
11412
11413#include <stdlib.h>
11414
11415int
11416main ()
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
11429if 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
11434else
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
11442fi
11443rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11444 conftest.$ac_objext conftest.beam conftest.$ac_ext
11445fi
11446
11447fi
11448
11449if 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
11458else
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
11467int
11468main ()
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
11498if 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
11503else
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
11510fi
11511rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11512 conftest.$ac_objext conftest.beam conftest.$ac_ext
11513fi
11514
11515fi
11516
11517if 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
11527else
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
11539int
11540main ()
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
11589if 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
11594else
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
11601fi
11602rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11603 conftest.$ac_objext conftest.beam conftest.$ac_ext
11604fi
11605
11606fi
11607
11608if 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
11618else
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
11630int
11631main ()
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
11668if 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
11676else
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
11683fi
11684rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11685 conftest.$ac_objext conftest.beam conftest.$ac_ext
11686fi
11687
11688fi
11689
11690if 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>
11696int
11697main ()
11698{
11699 exit(0);
11700 ;
11701 return 0;
11702}
11703_ACEOF
11704if 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
11709else
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
11718fi
11719rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
11720fi
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; }
11724if ${ac_cv_func_getpgrp_void+:} false; then :
11725 $as_echo_n "(cached) " >&6
11726else
11727 # Use it with a single arg.
11728cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11729/* end confdefs.h. */
11730$ac_includes_default
11731int
11732main ()
11733{
11734getpgrp (0);
11735 ;
11736 return 0;
11737}
11738_ACEOF
11739if ac_fn_c_try_compile "$LINENO"; then :
11740 ac_cv_func_getpgrp_void=no
11741else
11742 ac_cv_func_getpgrp_void=yes
11743fi
11744rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
11745
11746fi
11747{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_getpgrp_void" >&5
11748$as_echo "$ac_cv_func_getpgrp_void" >&6; }
11749if test $ac_cv_func_getpgrp_void = yes; then
11750
11751$as_echo "#define GETPGRP_VOID 1" >>confdefs.h
11752
11753fi
11754
11755
11756# Search for OpenSSL
11757saved_CPPFLAGS="$CPPFLAGS"
11758saved_LDFLAGS="$LDFLAGS"
11759
11760# Check whether --with-ssl-dir was given.
11761if 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
11795fi
11796
11797LIBS="-lcrypto $LIBS"
11798cat 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
11805extern "C"
11806#endif
11807char RAND_add ();
11808int
11809main ()
11810{
11811return RAND_add ();
11812 ;
11813 return 0;
11814}
11815_ACEOF
11816if ac_fn_c_try_link "$LINENO"; then :
11817
11818$as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
11819
11820else
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"
11829if test "x$ac_cv_header_openssl_opensslv_h" = xyes; then :
11830
11831else
11832 as_fn_error $? "*** OpenSSL headers missing - please install first or check config.log ***" "$LINENO" 5
11833fi
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
11843extern "C"
11844#endif
11845char RAND_add ();
11846int
11847main ()
11848{
11849return RAND_add ();
11850 ;
11851 return 0;
11852}
11853_ACEOF
11854if ac_fn_c_try_link "$LINENO"; then :
11855 $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
11856
11857else
11858
11859 as_fn_error $? "*** Can't find recent OpenSSL libcrypto (see config.log for details) ***" "$LINENO" 5
11860
11861
11862fi
11863rm -f core conftest.err conftest.$ac_objext \
11864 conftest$ac_exeext conftest.$ac_ext
11865
11866
11867fi
11868rm -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; }
11874if 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
11880else
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
11889int
11890main ()
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
11909if 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
11915else
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
11921fi
11922rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11923 conftest.$ac_objext conftest.beam conftest.$ac_ext
11924fi
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; }
11930if 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
11936else
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
11946int
11947main ()
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
11966if 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
11972else
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
11978fi
11979rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11980 conftest.$ac_objext conftest.beam conftest.$ac_ext
11981fi
11982
11983
11984
11985# Check whether --with-openssl-header-check was given.
11986if 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
11992fi
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; }
11998if 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
12004else
12005 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12006/* end confdefs.h. */
12007
12008#include <string.h>
12009#include <openssl/opensslv.h>
12010
12011int
12012main ()
12013{
12014
12015 exit(SSLeay() == OPENSSL_VERSION_NUMBER ? 0 : 1);
12016
12017 ;
12018 return 0;
12019}
12020_ACEOF
12021if 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
12026else
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
12032library. Check config.log for details.
12033If you are sure your installation is consistent, you can disable the check
12034by running \"./configure --without-openssl-header-check\".
12035Also 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
12039library. Check config.log for details.
12040Also see contrib/findssl.sh for help identifying header/library mismatches." >&5
12041$as_echo "$as_me: WARNING: Your OpenSSL headers do not match your
12042library. Check config.log for details.
12043Also see contrib/findssl.sh for help identifying header/library mismatches." >&2;}
12044 fi
12045
12046fi
12047rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12048 conftest.$ac_objext conftest.beam conftest.$ac_ext
12049fi
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; }
12054cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12055/* end confdefs.h. */
12056 #include <openssl/evp.h>
12057int
12058main ()
12059{
12060 SSLeay_add_all_algorithms();
12061 ;
12062 return 0;
12063}
12064_ACEOF
12065if 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
12070else
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>
12081int
12082main ()
12083{
12084 SSLeay_add_all_algorithms();
12085 ;
12086 return 0;
12087}
12088_ACEOF
12089if 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
12094else
12095
12096 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12097$as_echo "no" >&6; }
12098 LIBS="$saved_LIBS"
12099
12100
12101fi
12102rm -f core conftest.err conftest.$ac_objext \
12103 conftest$ac_exeext conftest.$ac_ext
12104
12105
12106fi
12107rm -f core conftest.err conftest.$ac_objext \
12108 conftest$ac_exeext conftest.$ac_ext
12109
12110for 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
12122do :
12123 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
12124ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
12125if 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
12130fi
12131done
12132
12133
12134
12135# Check whether --with-ssl-engine was given.
12136if 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
12145int
12146main ()
12147{
12148
12149 ENGINE_load_builtin_engines();
12150 ENGINE_register_all_complete();
12151
12152 ;
12153 return 0;
12154}
12155_ACEOF
12156if 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
12163else
12164 as_fn_error $? "OpenSSL ENGINE support not found" "$LINENO" 5
12165
12166fi
12167rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12168 fi
12169
12170fi
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; }
12176cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12177/* end confdefs.h. */
12178
12179#include <string.h>
12180#include <openssl/evp.h>
12181
12182int
12183main ()
12184{
12185
12186 exit(EVP_aes_192_cbc() == NULL || EVP_aes_256_cbc() == NULL);
12187
12188 ;
12189 return 0;
12190}
12191_ACEOF
12192if 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
12197else
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
12206fi
12207rm -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; }
12213cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12214/* end confdefs.h. */
12215
12216#include <string.h>
12217#include <openssl/evp.h>
12218
12219int
12220main ()
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
12231if 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
12239else
12240
12241 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12242$as_echo "no" >&6; }
12243
12244
12245fi
12246rm -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; }
12252cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12253/* end confdefs.h. */
12254
12255#include <string.h>
12256#include <openssl/evp.h>
12257
12258int
12259main ()
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
12274if 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
12282else
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
12290fi
12291rm -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; }
12296if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
12297 $as_echo_n "(cached) " >&6
12298else
12299 ac_func_search_save_LIBS=$LIBS
12300cat 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
12307extern "C"
12308#endif
12309char EVP_CIPHER_CTX_ctrl ();
12310int
12311main ()
12312{
12313return EVP_CIPHER_CTX_ctrl ();
12314 ;
12315 return 0;
12316}
12317_ACEOF
12318for 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
12327fi
12328rm -f core conftest.err conftest.$ac_objext \
12329 conftest$ac_exeext
12330 if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
12331 break
12332fi
12333done
12334if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
12335
12336else
12337 ac_cv_search_EVP_CIPHER_CTX_ctrl=no
12338fi
12339rm conftest.$ac_ext
12340LIBS=$ac_func_search_save_LIBS
12341fi
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; }
12344ac_res=$ac_cv_search_EVP_CIPHER_CTX_ctrl
12345if 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
12350fi
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; }
12355cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12356/* end confdefs.h. */
12357
12358#include <string.h>
12359#include <openssl/evp.h>
12360
12361int
12362main ()
12363{
12364
12365 if(EVP_DigestUpdate(NULL, NULL,0))
12366 exit(0);
12367
12368 ;
12369 return 0;
12370}
12371_ACEOF
12372if 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
12377else
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
12386fi
12387rm -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.
12392if 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; }
12395if ${ac_cv_lib_crypt_crypt+:} false; then :
12396 $as_echo_n "(cached) " >&6
12397else
12398 ac_check_lib_save_LIBS=$LIBS
12399LIBS="-lcrypt $LIBS"
12400cat 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
12407extern "C"
12408#endif
12409char crypt ();
12410int
12411main ()
12412{
12413return crypt ();
12414 ;
12415 return 0;
12416}
12417_ACEOF
12418if ac_fn_c_try_link "$LINENO"; then :
12419 ac_cv_lib_crypt_crypt=yes
12420else
12421 ac_cv_lib_crypt_crypt=no
12422fi
12423rm -f core conftest.err conftest.$ac_objext \
12424 conftest$ac_exeext conftest.$ac_ext
12425LIBS=$ac_check_lib_save_LIBS
12426fi
12427{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5
12428$as_echo "$ac_cv_lib_crypt_crypt" >&6; }
12429if 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
12436fi
12437
12438fi
12439
12440# Some Linux systems (Slackware) need crypt() from libcrypt, *not* the
12441# version in OpenSSL.
12442if 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; }
12445if ${ac_cv_lib_crypt_crypt+:} false; then :
12446 $as_echo_n "(cached) " >&6
12447else
12448 ac_check_lib_save_LIBS=$LIBS
12449LIBS="-lcrypt $LIBS"
12450cat 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
12457extern "C"
12458#endif
12459char crypt ();
12460int
12461main ()
12462{
12463return crypt ();
12464 ;
12465 return 0;
12466}
12467_ACEOF
12468if ac_fn_c_try_link "$LINENO"; then :
12469 ac_cv_lib_crypt_crypt=yes
12470else
12471 ac_cv_lib_crypt_crypt=no
12472fi
12473rm -f core conftest.err conftest.$ac_objext \
12474 conftest$ac_exeext conftest.$ac_ext
12475LIBS=$ac_check_lib_save_LIBS
12476fi
12477{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5
12478$as_echo "$ac_cv_lib_crypt_crypt" >&6; }
12479if test "x$ac_cv_lib_crypt_crypt" = xyes; then :
12480 LIBS="$LIBS -lcrypt"
12481fi
12482
12483fi
12484for ac_func in crypt DES_crypt
12485do :
12486 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
12487ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
12488if 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
12493fi
12494done
12495
12496
12497# Search for SHA256 support in libc and/or OpenSSL
12498for ac_func in SHA256_Update EVP_sha256
12499do :
12500 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
12501ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
12502if 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
12507else
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
12514fi
12515done
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; }
12521cat 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
12534int
12535main ()
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
12545if 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
12549else
12550 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12551$as_echo "no" >&6; }
12552
12553fi
12554rm -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; }
12559cat 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
12572int
12573main ()
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
12583if 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
12587else
12588 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12589$as_echo "no" >&6; }
12590
12591fi
12592rm -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; }
12597cat 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
12610int
12611main ()
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
12621if 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
12631else
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
12642int
12643main ()
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
12654if 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
12658else
12659 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12660$as_echo "no" >&6; }
12661fi
12662rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12663 conftest.$ac_objext conftest.beam conftest.$ac_ext
12664fi
12665
12666else
12667 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12668$as_echo "no" >&6; }
12669
12670fi
12671rm -f core conftest.err conftest.$ac_objext \
12672 conftest$ac_exeext conftest.$ac_ext
12673
12674COMMENT_OUT_ECC="#no ecc#"
12675TEST_SSH_ECC=no
12676
12677if 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
12682fi
12683if 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=""
12689else
12690 unsupported_algorithms="$unsupported_algorithms ecdsa-sha2-nistp256 \
12691 ecdh-sha2-nistp256 ecdsa-sha2-nistp256-cert-v01@openssh.com"
12692fi
12693if 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=""
12699else
12700 unsupported_algorithms="$unsupported_algorithms ecdsa-sha2-nistp384 \
12701 ecdh-sha2-nistp384 ecdsa-sha2-nistp384-cert-v01@openssh.com"
12702fi
12703if 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=""
12709else
12710 unsupported_algorithms="$unsupported_algorithms ecdh-sha2-nistp521 \
12711 ecdsa-sha2-nistp521 ecdsa-sha2-nistp521-cert-v01@openssh.com"
12712fi
12713
12714
12715
12716
12717saved_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; }
12720if ${ac_cv_lib_iaf_ia_openinfo+:} false; then :
12721 $as_echo_n "(cached) " >&6
12722else
12723 ac_check_lib_save_LIBS=$LIBS
12724LIBS="-liaf $LIBS"
12725cat 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
12732extern "C"
12733#endif
12734char ia_openinfo ();
12735int
12736main ()
12737{
12738return ia_openinfo ();
12739 ;
12740 return 0;
12741}
12742_ACEOF
12743if ac_fn_c_try_link "$LINENO"; then :
12744 ac_cv_lib_iaf_ia_openinfo=yes
12745else
12746 ac_cv_lib_iaf_ia_openinfo=no
12747fi
12748rm -f core conftest.err conftest.$ac_objext \
12749 conftest$ac_exeext conftest.$ac_ext
12750LIBS=$ac_check_lib_save_LIBS
12751fi
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; }
12754if test "x$ac_cv_lib_iaf_ia_openinfo" = xyes; then :
12755
12756 LIBS="$LIBS -liaf"
12757 for ac_func in set_id
12758do :
12759 ac_fn_c_check_func "$LINENO" "set_id" "ac_cv_func_set_id"
12760if 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
12769fi
12770done
12771
12772
12773fi
12774
12775LIBS="$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; }
12782if 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
12791else
12792 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12793/* end confdefs.h. */
12794
12795#include <string.h>
12796#include <openssl/rand.h>
12797
12798int
12799main ()
12800{
12801
12802 exit(RAND_status() == 1 ? 0 : 1);
12803
12804 ;
12805 return 0;
12806}
12807_ACEOF
12808if 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
12814else
12815
12816 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12817$as_echo "no" >&6; }
12818
12819fi
12820rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12821 conftest.$ac_objext conftest.beam conftest.$ac_ext
12822fi
12823
12824
12825# PRNGD TCP socket
12826
12827# Check whether --with-prngd-port was given.
12828if 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
12843cat >>confdefs.h <<_ACEOF
12844#define PRNGD_PORT $PRNGD_PORT
12845_ACEOF
12846
12847 fi
12848
12849
12850fi
12851
12852
12853# PRNGD Unix domain socket
12854
12855# Check whether --with-prngd-socket was given.
12856if 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
12882cat >>confdefs.h <<_ACEOF
12883#define PRNGD_SOCKET "$PRNGD_SOCKET"
12884_ACEOF
12885
12886 fi
12887
12888else
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
12915fi
12916
12917
12918# Which randomness source do we use?
12919if test ! -z "$PRNGD_PORT" ; then
12920 RAND_MSG="PRNGd port $PRNGD_PORT"
12921elif test ! -z "$PRNGD_SOCKET" ; then
12922 RAND_MSG="PRNGd socket $PRNGD_SOCKET"
12923elif test ! -z "$OPENSSL_SEEDS_ITSELF" ; then
12924
12925$as_echo "#define OPENSSL_PRNG_ONLY 1" >>confdefs.h
12926
12927 RAND_MSG="OpenSSL internal ONLY"
12928else
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
12930fi
12931
12932# Check for PAM libs
12933PAM_MSG="no"
12934
12935# Check whether --with-pam was given.
12936if 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; }
12947if ${ac_cv_lib_dl_dlopen+:} false; then :
12948 $as_echo_n "(cached) " >&6
12949else
12950 ac_check_lib_save_LIBS=$LIBS
12951LIBS="-ldl $LIBS"
12952cat 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
12959extern "C"
12960#endif
12961char dlopen ();
12962int
12963main ()
12964{
12965return dlopen ();
12966 ;
12967 return 0;
12968}
12969_ACEOF
12970if ac_fn_c_try_link "$LINENO"; then :
12971 ac_cv_lib_dl_dlopen=yes
12972else
12973 ac_cv_lib_dl_dlopen=no
12974fi
12975rm -f core conftest.err conftest.$ac_objext \
12976 conftest$ac_exeext conftest.$ac_ext
12977LIBS=$ac_check_lib_save_LIBS
12978fi
12979{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
12980$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
12981if 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
12988fi
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; }
12992if ${ac_cv_lib_pam_pam_set_item+:} false; then :
12993 $as_echo_n "(cached) " >&6
12994else
12995 ac_check_lib_save_LIBS=$LIBS
12996LIBS="-lpam $LIBS"
12997cat 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
13004extern "C"
13005#endif
13006char pam_set_item ();
13007int
13008main ()
13009{
13010return pam_set_item ();
13011 ;
13012 return 0;
13013}
13014_ACEOF
13015if ac_fn_c_try_link "$LINENO"; then :
13016 ac_cv_lib_pam_pam_set_item=yes
13017else
13018 ac_cv_lib_pam_pam_set_item=no
13019fi
13020rm -f core conftest.err conftest.$ac_objext \
13021 conftest$ac_exeext conftest.$ac_ext
13022LIBS=$ac_check_lib_save_LIBS
13023fi
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; }
13026if 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
13033else
13034 as_fn_error $? "*** libpam missing" "$LINENO" 5
13035fi
13036
13037 for ac_func in pam_getenvlist
13038do :
13039 ac_fn_c_check_func "$LINENO" "pam_getenvlist" "ac_cv_func_pam_getenvlist"
13040if test "x$ac_cv_func_pam_getenvlist" = xyes; then :
13041 cat >>confdefs.h <<_ACEOF
13042#define HAVE_PAM_GETENVLIST 1
13043_ACEOF
13044
13045fi
13046done
13047
13048 for ac_func in pam_putenv
13049do :
13050 ac_fn_c_check_func "$LINENO" "pam_putenv" "ac_cv_func_pam_putenv"
13051if test "x$ac_cv_func_pam_putenv" = xyes; then :
13052 cat >>confdefs.h <<_ACEOF
13053#define HAVE_PAM_PUTENV 1
13054_ACEOF
13055
13056fi
13057done
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
13081fi
13082
13083
13084# Check for older PAM
13085if 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
13099int
13100main ()
13101{
13102
13103(void)pam_strerror((pam_handle_t *)NULL, -1);
13104
13105 ;
13106 return 0;
13107}
13108_ACEOF
13109if ac_fn_c_try_compile "$LINENO"; then :
13110 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13111$as_echo "no" >&6; }
13112else
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
13122fi
13123rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13124fi
13125
13126SSH_PRIVSEP_USER=sshd
13127
13128# Check whether --with-privsep-user was given.
13129if 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
13137fi
13138
13139
13140cat >>confdefs.h <<_ACEOF
13141#define SSH_PRIVSEP_USER "$SSH_PRIVSEP_USER"
13142_ACEOF
13143
13144
13145
13146if test "x$have_linux_no_new_privs" = "x1" ; then
13147ac_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"
13152if test "x$ac_cv_have_decl_SECCOMP_MODE_FILTER" = xyes; then :
13153 have_seccomp_filter=1
13154fi
13155
13156fi
13157if 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; }
13160cat 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
13170int
13171main ()
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
13181if ac_fn_c_try_link "$LINENO"; then :
13182 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13183$as_echo "yes" >&6; }
13184else
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
13192fi
13193rm -f core conftest.err conftest.$ac_objext \
13194 conftest$ac_exeext conftest.$ac_ext
13195fi
13196
13197# Decide which sandbox style to use
13198sandbox_arg=""
13199
13200# Check whether --with-sandbox was given.
13201if 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
13210fi
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; }
13218if 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
13222else
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
13238int
13239main ()
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
13262if 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
13266else
13267 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13268$as_echo "no" >&6; }
13269 select_works_with_rlimit=no
13270fi
13271rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13272 conftest.$ac_objext conftest.beam conftest.$ac_ext
13273fi
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; }
13278if 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
13282else
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
13294int
13295main ()
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
13310if 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
13314else
13315 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13316$as_echo "no" >&6; }
13317 rlimit_nofile_zero_works=no
13318fi
13319rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13320 conftest.$ac_objext conftest.beam conftest.$ac_ext
13321fi
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; }
13326if 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
13330else
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
13338int
13339main ()
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
13351if ac_fn_c_try_run "$LINENO"; then :
13352 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13353$as_echo "yes" >&6; }
13354else
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
13360fi
13361rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13362 conftest.$ac_objext conftest.beam conftest.$ac_ext
13363fi
13364
13365
13366if 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
13374elif 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
13384elif 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
13405elif 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
13417elif 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
13429elif 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
13435else
13436 as_fn_error $? "unsupported --with-sandbox" "$LINENO" 5
13437fi
13438
13439# Cheap hack to ensure NEWS-OS libraries are arranged right.
13440if test ! -z "$SONY" ; then
13441 LIBS="$LIBS -liberty";
13442fi
13443
13444# Check for long long datatypes
13445ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
13446if test "x$ac_cv_type_long_long" = xyes; then :
13447
13448cat >>confdefs.h <<_ACEOF
13449#define HAVE_LONG_LONG 1
13450_ACEOF
13451
13452
13453fi
13454ac_fn_c_check_type "$LINENO" "unsigned long long" "ac_cv_type_unsigned_long_long" "$ac_includes_default"
13455if test "x$ac_cv_type_unsigned_long_long" = xyes; then :
13456
13457cat >>confdefs.h <<_ACEOF
13458#define HAVE_UNSIGNED_LONG_LONG 1
13459_ACEOF
13460
13461
13462fi
13463ac_fn_c_check_type "$LINENO" "long double" "ac_cv_type_long_double" "$ac_includes_default"
13464if test "x$ac_cv_type_long_double" = xyes; then :
13465
13466cat >>confdefs.h <<_ACEOF
13467#define HAVE_LONG_DOUBLE 1
13468_ACEOF
13469
13470
13471fi
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; }
13481if ${ac_cv_sizeof_short_int+:} false; then :
13482 $as_echo_n "(cached) " >&6
13483else
13484 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short int))" "ac_cv_sizeof_short_int" "$ac_includes_default"; then :
13485
13486else
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;}
13490as_fn_error 77 "cannot compute sizeof (short int)
13491See \`config.log' for more details" "$LINENO" 5; }
13492 else
13493 ac_cv_sizeof_short_int=0
13494 fi
13495fi
13496
13497fi
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
13503cat >>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; }
13514if ${ac_cv_sizeof_int+:} false; then :
13515 $as_echo_n "(cached) " >&6
13516else
13517 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then :
13518
13519else
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;}
13523as_fn_error 77 "cannot compute sizeof (int)
13524See \`config.log' for more details" "$LINENO" 5; }
13525 else
13526 ac_cv_sizeof_int=0
13527 fi
13528fi
13529
13530fi
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
13536cat >>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; }
13547if ${ac_cv_sizeof_long_int+:} false; then :
13548 $as_echo_n "(cached) " >&6
13549else
13550 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long int))" "ac_cv_sizeof_long_int" "$ac_includes_default"; then :
13551
13552else
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;}
13556as_fn_error 77 "cannot compute sizeof (long int)
13557See \`config.log' for more details" "$LINENO" 5; }
13558 else
13559 ac_cv_sizeof_long_int=0
13560 fi
13561fi
13562
13563fi
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
13569cat >>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; }
13580if ${ac_cv_sizeof_long_long_int+:} false; then :
13581 $as_echo_n "(cached) " >&6
13582else
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
13585else
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;}
13589as_fn_error 77 "cannot compute sizeof (long long int)
13590See \`config.log' for more details" "$LINENO" 5; }
13591 else
13592 ac_cv_sizeof_long_long_int=0
13593 fi
13594fi
13595
13596fi
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
13602cat >>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)
13609if test "x$ac_cv_sizeof_long_long_int" = "x4" ; then
13610 ac_cv_sizeof_long_long_int=0
13611fi
13612
13613# compute LLONG_MIN and LLONG_MAX if we don't know them.
13614if 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
13623else
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 */
13641static int
13642fprint_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
13663int
13664main ()
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
13705if 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
13713cat >>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
13722cat >>confdefs.h <<_ACEOF
13723#define LLONG_MIN ${llong_min}LL
13724_ACEOF
13725
13726
13727else
13728
13729 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
13730$as_echo "not found" >&6; }
13731
13732fi
13733rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13734 conftest.$ac_objext conftest.beam conftest.$ac_ext
13735fi
13736
13737fi
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; }
13743if ${ac_cv_have_u_int+:} false; then :
13744 $as_echo_n "(cached) " >&6
13745else
13746
13747 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13748/* end confdefs.h. */
13749 #include <sys/types.h>
13750int
13751main ()
13752{
13753 u_int a; a = 1;
13754 ;
13755 return 0;
13756}
13757_ACEOF
13758if ac_fn_c_try_compile "$LINENO"; then :
13759 ac_cv_have_u_int="yes"
13760else
13761 ac_cv_have_u_int="no"
13762
13763fi
13764rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13765
13766fi
13767{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int" >&5
13768$as_echo "$ac_cv_have_u_int" >&6; }
13769if 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
13774fi
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; }
13778if ${ac_cv_have_intxx_t+:} false; then :
13779 $as_echo_n "(cached) " >&6
13780else
13781
13782 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13783/* end confdefs.h. */
13784 #include <sys/types.h>
13785int
13786main ()
13787{
13788 int8_t a; int16_t b; int32_t c; a = b = c = 1;
13789 ;
13790 return 0;
13791}
13792_ACEOF
13793if ac_fn_c_try_compile "$LINENO"; then :
13794 ac_cv_have_intxx_t="yes"
13795else
13796 ac_cv_have_intxx_t="no"
13797
13798fi
13799rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13800
13801fi
13802{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_intxx_t" >&5
13803$as_echo "$ac_cv_have_intxx_t" >&6; }
13804if 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
13809fi
13810
13811if (test -z "$have_intxx_t" && \
13812 test "x$ac_cv_header_stdint_h" = "xyes")
13813then
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>
13819int
13820main ()
13821{
13822 int8_t a; int16_t b; int32_t c; a = b = c = 1;
13823 ;
13824 return 0;
13825}
13826_ACEOF
13827if 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
13834else
13835 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13836$as_echo "no" >&6; }
13837
13838fi
13839rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13840fi
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; }
13844if ${ac_cv_have_int64_t+:} false; then :
13845 $as_echo_n "(cached) " >&6
13846else
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
13860int
13861main ()
13862{
13863
13864int64_t a; a = 1;
13865
13866 ;
13867 return 0;
13868}
13869_ACEOF
13870if ac_fn_c_try_compile "$LINENO"; then :
13871 ac_cv_have_int64_t="yes"
13872else
13873 ac_cv_have_int64_t="no"
13874
13875fi
13876rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13877
13878fi
13879{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_int64_t" >&5
13880$as_echo "$ac_cv_have_int64_t" >&6; }
13881if test "x$ac_cv_have_int64_t" = "xyes" ; then
13882
13883$as_echo "#define HAVE_INT64_T 1" >>confdefs.h
13884
13885fi
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; }
13889if ${ac_cv_have_u_intxx_t+:} false; then :
13890 $as_echo_n "(cached) " >&6
13891else
13892
13893 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13894/* end confdefs.h. */
13895 #include <sys/types.h>
13896int
13897main ()
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
13904if ac_fn_c_try_compile "$LINENO"; then :
13905 ac_cv_have_u_intxx_t="yes"
13906else
13907 ac_cv_have_u_intxx_t="no"
13908
13909fi
13910rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13911
13912fi
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; }
13915if 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
13920fi
13921
13922if 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>
13928int
13929main ()
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
13936if 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
13943else
13944 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13945$as_echo "no" >&6; }
13946
13947fi
13948rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13949fi
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; }
13953if ${ac_cv_have_u_int64_t+:} false; then :
13954 $as_echo_n "(cached) " >&6
13955else
13956
13957 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13958/* end confdefs.h. */
13959 #include <sys/types.h>
13960int
13961main ()
13962{
13963 u_int64_t a; a = 1;
13964 ;
13965 return 0;
13966}
13967_ACEOF
13968if ac_fn_c_try_compile "$LINENO"; then :
13969 ac_cv_have_u_int64_t="yes"
13970else
13971 ac_cv_have_u_int64_t="no"
13972
13973fi
13974rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13975
13976fi
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; }
13979if 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
13984fi
13985
13986if (test -z "$have_u_int64_t" && \
13987 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
13988then
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>
13994int
13995main ()
13996{
13997 u_int64_t a; a = 1
13998 ;
13999 return 0;
14000}
14001_ACEOF
14002if 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
14009else
14010 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
14011$as_echo "no" >&6; }
14012
14013fi
14014rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14015fi
14016
14017if 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; }
14020if ${ac_cv_have_uintxx_t+:} false; then :
14021 $as_echo_n "(cached) " >&6
14022else
14023
14024 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14025/* end confdefs.h. */
14026
14027#include <sys/types.h>
14028
14029int
14030main ()
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
14042if ac_fn_c_try_compile "$LINENO"; then :
14043 ac_cv_have_uintxx_t="yes"
14044else
14045 ac_cv_have_uintxx_t="no"
14046
14047fi
14048rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14049
14050fi
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
14058fi
14059
14060if (test -z "$have_uintxx_t" && \
14061 test "x$ac_cv_header_stdint_h" = "xyes")
14062then
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>
14068int
14069main ()
14070{
14071 uint8_t a; uint16_t b; uint32_t c; a = b = c = 1;
14072 ;
14073 return 0;
14074}
14075_ACEOF
14076if 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
14083else
14084 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
14085$as_echo "no" >&6; }
14086
14087fi
14088rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14089fi
14090
14091if (test -z "$have_uintxx_t" && \
14092 test "x$ac_cv_header_inttypes_h" = "xyes")
14093then
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>
14099int
14100main ()
14101{
14102 uint8_t a; uint16_t b; uint32_t c; a = b = c = 1;
14103 ;
14104 return 0;
14105}
14106_ACEOF
14107if 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
14114else
14115 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
14116$as_echo "no" >&6; }
14117
14118fi
14119rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14120fi
14121
14122if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
14123 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
14124then
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
14132int
14133main ()
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
14144if 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
14153else
14154 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
14155$as_echo "no" >&6; }
14156
14157fi
14158rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14159fi
14160
14161
14162{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_char" >&5
14163$as_echo_n "checking for u_char... " >&6; }
14164if ${ac_cv_have_u_char+:} false; then :
14165 $as_echo_n "(cached) " >&6
14166else
14167
14168 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14169/* end confdefs.h. */
14170 #include <sys/types.h>
14171int
14172main ()
14173{
14174 u_char foo; foo = 125;
14175 ;
14176 return 0;
14177}
14178_ACEOF
14179if ac_fn_c_try_compile "$LINENO"; then :
14180 ac_cv_have_u_char="yes"
14181else
14182 ac_cv_have_u_char="no"
14183
14184fi
14185rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14186
14187fi
14188{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_char" >&5
14189$as_echo "$ac_cv_have_u_char" >&6; }
14190if test "x$ac_cv_have_u_char" = "xyes" ; then
14191
14192$as_echo "#define HAVE_U_CHAR 1" >>confdefs.h
14193
14194fi
14195
14196ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" "
14197#include <sys/types.h>
14198#include <stdint.h>
14199
14200"
14201if test "x$ac_cv_type_intmax_t" = xyes; then :
14202
14203cat >>confdefs.h <<_ACEOF
14204#define HAVE_INTMAX_T 1
14205_ACEOF
14206
14207
14208fi
14209ac_fn_c_check_type "$LINENO" "uintmax_t" "ac_cv_type_uintmax_t" "
14210#include <sys/types.h>
14211#include <stdint.h>
14212
14213"
14214if test "x$ac_cv_type_uintmax_t" = xyes; then :
14215
14216cat >>confdefs.h <<_ACEOF
14217#define HAVE_UINTMAX_T 1
14218_ACEOF
14219
14220
14221fi
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"
14228if test "x$ac_cv_type_socklen_t" = xyes; then :
14229
14230else
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
14236else
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
14251int
14252main ()
14253{
14254
14255 $t len;
14256 getpeername(0,0,&len);
14257
14258 ;
14259 return 0;
14260}
14261_ACEOF
14262if ac_fn_c_try_compile "$LINENO"; then :
14263
14264 curl_cv_socklen_t_equiv="$t"
14265 break
14266
14267fi
14268rm -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
14276fi
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
14281cat >>confdefs.h <<_ACEOF
14282#define socklen_t $curl_cv_socklen_t_equiv
14283_ACEOF
14284
14285fi
14286
14287
14288
14289ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "#include <signal.h>
14290"
14291if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
14292
14293cat >>confdefs.h <<_ACEOF
14294#define HAVE_SIG_ATOMIC_T 1
14295_ACEOF
14296
14297
14298fi
14299
14300ac_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"
14313if test "x$ac_cv_type_fsblkcnt_t" = xyes; then :
14314
14315cat >>confdefs.h <<_ACEOF
14316#define HAVE_FSBLKCNT_T 1
14317_ACEOF
14318
14319
14320fi
14321ac_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"
14334if test "x$ac_cv_type_fsfilcnt_t" = xyes; then :
14335
14336cat >>confdefs.h <<_ACEOF
14337#define HAVE_FSFILCNT_T 1
14338_ACEOF
14339
14340
14341fi
14342
14343
14344ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "#include <sys/types.h>
14345#include <netinet/in.h>
14346"
14347if test "x$ac_cv_type_in_addr_t" = xyes; then :
14348
14349cat >>confdefs.h <<_ACEOF
14350#define HAVE_IN_ADDR_T 1
14351_ACEOF
14352
14353
14354fi
14355ac_fn_c_check_type "$LINENO" "in_port_t" "ac_cv_type_in_port_t" "#include <sys/types.h>
14356#include <netinet/in.h>
14357"
14358if test "x$ac_cv_type_in_port_t" = xyes; then :
14359
14360cat >>confdefs.h <<_ACEOF
14361#define HAVE_IN_PORT_T 1
14362_ACEOF
14363
14364
14365fi
14366
14367
14368{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size_t" >&5
14369$as_echo_n "checking for size_t... " >&6; }
14370if ${ac_cv_have_size_t+:} false; then :
14371 $as_echo_n "(cached) " >&6
14372else
14373
14374 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14375/* end confdefs.h. */
14376 #include <sys/types.h>
14377int
14378main ()
14379{
14380 size_t foo; foo = 1235;
14381 ;
14382 return 0;
14383}
14384_ACEOF
14385if ac_fn_c_try_compile "$LINENO"; then :
14386 ac_cv_have_size_t="yes"
14387else
14388 ac_cv_have_size_t="no"
14389
14390fi
14391rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14392
14393fi
14394{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_size_t" >&5
14395$as_echo "$ac_cv_have_size_t" >&6; }
14396if test "x$ac_cv_have_size_t" = "xyes" ; then
14397
14398$as_echo "#define HAVE_SIZE_T 1" >>confdefs.h
14399
14400fi
14401
14402{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5
14403$as_echo_n "checking for ssize_t... " >&6; }
14404if ${ac_cv_have_ssize_t+:} false; then :
14405 $as_echo_n "(cached) " >&6
14406else
14407
14408 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14409/* end confdefs.h. */
14410 #include <sys/types.h>
14411int
14412main ()
14413{
14414 ssize_t foo; foo = 1235;
14415 ;
14416 return 0;
14417}
14418_ACEOF
14419if ac_fn_c_try_compile "$LINENO"; then :
14420 ac_cv_have_ssize_t="yes"
14421else
14422 ac_cv_have_ssize_t="no"
14423
14424fi
14425rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14426
14427fi
14428{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ssize_t" >&5
14429$as_echo "$ac_cv_have_ssize_t" >&6; }
14430if test "x$ac_cv_have_ssize_t" = "xyes" ; then
14431
14432$as_echo "#define HAVE_SSIZE_T 1" >>confdefs.h
14433
14434fi
14435
14436{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5
14437$as_echo_n "checking for clock_t... " >&6; }
14438if ${ac_cv_have_clock_t+:} false; then :
14439 $as_echo_n "(cached) " >&6
14440else
14441
14442 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14443/* end confdefs.h. */
14444 #include <time.h>
14445int
14446main ()
14447{
14448 clock_t foo; foo = 1235;
14449 ;
14450 return 0;
14451}
14452_ACEOF
14453if ac_fn_c_try_compile "$LINENO"; then :
14454 ac_cv_have_clock_t="yes"
14455else
14456 ac_cv_have_clock_t="no"
14457
14458fi
14459rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14460
14461fi
14462{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_clock_t" >&5
14463$as_echo "$ac_cv_have_clock_t" >&6; }
14464if test "x$ac_cv_have_clock_t" = "xyes" ; then
14465
14466$as_echo "#define HAVE_CLOCK_T 1" >>confdefs.h
14467
14468fi
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; }
14472if ${ac_cv_have_sa_family_t+:} false; then :
14473 $as_echo_n "(cached) " >&6
14474else
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
14482int
14483main ()
14484{
14485 sa_family_t foo; foo = 1235;
14486 ;
14487 return 0;
14488}
14489_ACEOF
14490if ac_fn_c_try_compile "$LINENO"; then :
14491 ac_cv_have_sa_family_t="yes"
14492else
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
14500int
14501main ()
14502{
14503 sa_family_t foo; foo = 1235;
14504 ;
14505 return 0;
14506}
14507_ACEOF
14508if ac_fn_c_try_compile "$LINENO"; then :
14509 ac_cv_have_sa_family_t="yes"
14510else
14511 ac_cv_have_sa_family_t="no"
14512
14513fi
14514rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14515
14516fi
14517rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14518
14519fi
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; }
14522if test "x$ac_cv_have_sa_family_t" = "xyes" ; then
14523
14524$as_echo "#define HAVE_SA_FAMILY_T 1" >>confdefs.h
14525
14526fi
14527
14528{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pid_t" >&5
14529$as_echo_n "checking for pid_t... " >&6; }
14530if ${ac_cv_have_pid_t+:} false; then :
14531 $as_echo_n "(cached) " >&6
14532else
14533
14534 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14535/* end confdefs.h. */
14536 #include <sys/types.h>
14537int
14538main ()
14539{
14540 pid_t foo; foo = 1235;
14541 ;
14542 return 0;
14543}
14544_ACEOF
14545if ac_fn_c_try_compile "$LINENO"; then :
14546 ac_cv_have_pid_t="yes"
14547else
14548 ac_cv_have_pid_t="no"
14549
14550fi
14551rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14552
14553fi
14554{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_pid_t" >&5
14555$as_echo "$ac_cv_have_pid_t" >&6; }
14556if test "x$ac_cv_have_pid_t" = "xyes" ; then
14557
14558$as_echo "#define HAVE_PID_T 1" >>confdefs.h
14559
14560fi
14561
14562{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for mode_t" >&5
14563$as_echo_n "checking for mode_t... " >&6; }
14564if ${ac_cv_have_mode_t+:} false; then :
14565 $as_echo_n "(cached) " >&6
14566else
14567
14568 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14569/* end confdefs.h. */
14570 #include <sys/types.h>
14571int
14572main ()
14573{
14574 mode_t foo; foo = 1235;
14575 ;
14576 return 0;
14577}
14578_ACEOF
14579if ac_fn_c_try_compile "$LINENO"; then :
14580 ac_cv_have_mode_t="yes"
14581else
14582 ac_cv_have_mode_t="no"
14583
14584fi
14585rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14586
14587fi
14588{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_mode_t" >&5
14589$as_echo "$ac_cv_have_mode_t" >&6; }
14590if test "x$ac_cv_have_mode_t" = "xyes" ; then
14591
14592$as_echo "#define HAVE_MODE_T 1" >>confdefs.h
14593
14594fi
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; }
14599if ${ac_cv_have_struct_sockaddr_storage+:} false; then :
14600 $as_echo_n "(cached) " >&6
14601else
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
14609int
14610main ()
14611{
14612 struct sockaddr_storage s;
14613 ;
14614 return 0;
14615}
14616_ACEOF
14617if ac_fn_c_try_compile "$LINENO"; then :
14618 ac_cv_have_struct_sockaddr_storage="yes"
14619else
14620 ac_cv_have_struct_sockaddr_storage="no"
14621
14622fi
14623rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14624
14625fi
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; }
14628if test "x$ac_cv_have_struct_sockaddr_storage" = "xyes" ; then
14629
14630$as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
14631
14632fi
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; }
14636if ${ac_cv_have_struct_sockaddr_in6+:} false; then :
14637 $as_echo_n "(cached) " >&6
14638else
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
14646int
14647main ()
14648{
14649 struct sockaddr_in6 s; s.sin6_family = 0;
14650 ;
14651 return 0;
14652}
14653_ACEOF
14654if ac_fn_c_try_compile "$LINENO"; then :
14655 ac_cv_have_struct_sockaddr_in6="yes"
14656else
14657 ac_cv_have_struct_sockaddr_in6="no"
14658
14659fi
14660rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14661
14662fi
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; }
14665if test "x$ac_cv_have_struct_sockaddr_in6" = "xyes" ; then
14666
14667$as_echo "#define HAVE_STRUCT_SOCKADDR_IN6 1" >>confdefs.h
14668
14669fi
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; }
14673if ${ac_cv_have_struct_in6_addr+:} false; then :
14674 $as_echo_n "(cached) " >&6
14675else
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
14683int
14684main ()
14685{
14686 struct in6_addr s; s.s6_addr[0] = 0;
14687 ;
14688 return 0;
14689}
14690_ACEOF
14691if ac_fn_c_try_compile "$LINENO"; then :
14692 ac_cv_have_struct_in6_addr="yes"
14693else
14694 ac_cv_have_struct_in6_addr="no"
14695
14696fi
14697rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14698
14699fi
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; }
14702if 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"
14714if test "x$ac_cv_member_struct_sockaddr_in6_sin6_scope_id" = xyes; then :
14715
14716cat >>confdefs.h <<_ACEOF
14717#define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1
14718_ACEOF
14719
14720
14721fi
14722
14723fi
14724
14725{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct addrinfo" >&5
14726$as_echo_n "checking for struct addrinfo... " >&6; }
14727if ${ac_cv_have_struct_addrinfo+:} false; then :
14728 $as_echo_n "(cached) " >&6
14729else
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
14738int
14739main ()
14740{
14741 struct addrinfo s; s.ai_flags = AI_PASSIVE;
14742 ;
14743 return 0;
14744}
14745_ACEOF
14746if ac_fn_c_try_compile "$LINENO"; then :
14747 ac_cv_have_struct_addrinfo="yes"
14748else
14749 ac_cv_have_struct_addrinfo="no"
14750
14751fi
14752rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14753
14754fi
14755{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_addrinfo" >&5
14756$as_echo "$ac_cv_have_struct_addrinfo" >&6; }
14757if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then
14758
14759$as_echo "#define HAVE_STRUCT_ADDRINFO 1" >>confdefs.h
14760
14761fi
14762
14763{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
14764$as_echo_n "checking for struct timeval... " >&6; }
14765if ${ac_cv_have_struct_timeval+:} false; then :
14766 $as_echo_n "(cached) " >&6
14767else
14768
14769 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14770/* end confdefs.h. */
14771 #include <sys/time.h>
14772int
14773main ()
14774{
14775 struct timeval tv; tv.tv_sec = 1;
14776 ;
14777 return 0;
14778}
14779_ACEOF
14780if ac_fn_c_try_compile "$LINENO"; then :
14781 ac_cv_have_struct_timeval="yes"
14782else
14783 ac_cv_have_struct_timeval="no"
14784
14785fi
14786rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
14787
14788fi
14789{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_timeval" >&5
14790$as_echo "$ac_cv_have_struct_timeval" >&6; }
14791if 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
14796fi
14797
14798ac_fn_c_check_type "$LINENO" "struct timespec" "ac_cv_type_struct_timespec" "$ac_includes_default"
14799if test "x$ac_cv_type_struct_timespec" = xyes; then :
14800
14801cat >>confdefs.h <<_ACEOF
14802#define HAVE_STRUCT_TIMESPEC 1
14803_ACEOF
14804
14805
14806fi
14807
14808
14809# We need int64_t or else certian parts of the compile will fail.
14810if 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;
14817else
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
14822else
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
14829main()
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
14846main() { exit(0); }
14847#endif
14848
14849_ACEOF
14850if ac_fn_c_try_run "$LINENO"; then :
14851 true
14852else
14853 $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h
14854
14855fi
14856rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
14857 conftest.$ac_objext conftest.beam conftest.$ac_ext
14858fi
14859
14860fi
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
14870else
14871
14872 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14873/* end confdefs.h. */
14874#include <utmp.h>
14875
14876_ACEOF
14877if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
14878 $EGREP "ut_host" >/dev/null 2>&1; then :
14879 eval "$ossh_varname=yes"
14880else
14881 eval "$ossh_varname=no"
14882fi
14883rm -f conftest*
14884
14885fi
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
14909else
14910
14911 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14912/* end confdefs.h. */
14913#include <utmpx.h>
14914
14915_ACEOF
14916if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
14917 $EGREP "ut_host" >/dev/null 2>&1; then :
14918 eval "$ossh_varname=yes"
14919else
14920 eval "$ossh_varname=no"
14921fi
14922rm -f conftest*
14923
14924fi
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
14948else
14949
14950 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14951/* end confdefs.h. */
14952#include <utmpx.h>
14953
14954_ACEOF
14955if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
14956 $EGREP "syslen" >/dev/null 2>&1; then :
14957 eval "$ossh_varname=yes"
14958else
14959 eval "$ossh_varname=no"
14960fi
14961rm -f conftest*
14962
14963fi
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
14987else
14988
14989 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14990/* end confdefs.h. */
14991#include <utmp.h>
14992
14993_ACEOF
14994if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
14995 $EGREP "ut_pid" >/dev/null 2>&1; then :
14996 eval "$ossh_varname=yes"
14997else
14998 eval "$ossh_varname=no"
14999fi
15000rm -f conftest*
15001
15002fi
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
15026else
15027
15028 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15029/* end confdefs.h. */
15030#include <utmp.h>
15031
15032_ACEOF
15033if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15034 $EGREP "ut_type" >/dev/null 2>&1; then :
15035 eval "$ossh_varname=yes"
15036else
15037 eval "$ossh_varname=no"
15038fi
15039rm -f conftest*
15040
15041fi
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
15065else
15066
15067 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15068/* end confdefs.h. */
15069#include <utmpx.h>
15070
15071_ACEOF
15072if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15073 $EGREP "ut_type" >/dev/null 2>&1; then :
15074 eval "$ossh_varname=yes"
15075else
15076 eval "$ossh_varname=no"
15077fi
15078rm -f conftest*
15079
15080fi
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
15104else
15105
15106 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15107/* end confdefs.h. */
15108#include <utmp.h>
15109
15110_ACEOF
15111if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15112 $EGREP "ut_tv" >/dev/null 2>&1; then :
15113 eval "$ossh_varname=yes"
15114else
15115 eval "$ossh_varname=no"
15116fi
15117rm -f conftest*
15118
15119fi
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
15143else
15144
15145 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15146/* end confdefs.h. */
15147#include <utmp.h>
15148
15149_ACEOF
15150if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15151 $EGREP "ut_id" >/dev/null 2>&1; then :
15152 eval "$ossh_varname=yes"
15153else
15154 eval "$ossh_varname=no"
15155fi
15156rm -f conftest*
15157
15158fi
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
15182else
15183
15184 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15185/* end confdefs.h. */
15186#include <utmpx.h>
15187
15188_ACEOF
15189if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15190 $EGREP "ut_id" >/dev/null 2>&1; then :
15191 eval "$ossh_varname=yes"
15192else
15193 eval "$ossh_varname=no"
15194fi
15195rm -f conftest*
15196
15197fi
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
15221else
15222
15223 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15224/* end confdefs.h. */
15225#include <utmp.h>
15226
15227_ACEOF
15228if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15229 $EGREP "ut_addr" >/dev/null 2>&1; then :
15230 eval "$ossh_varname=yes"
15231else
15232 eval "$ossh_varname=no"
15233fi
15234rm -f conftest*
15235
15236fi
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
15260else
15261
15262 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15263/* end confdefs.h. */
15264#include <utmpx.h>
15265
15266_ACEOF
15267if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15268 $EGREP "ut_addr" >/dev/null 2>&1; then :
15269 eval "$ossh_varname=yes"
15270else
15271 eval "$ossh_varname=no"
15272fi
15273rm -f conftest*
15274
15275fi
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
15299else
15300
15301 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15302/* end confdefs.h. */
15303#include <utmp.h>
15304
15305_ACEOF
15306if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15307 $EGREP "ut_addr_v6" >/dev/null 2>&1; then :
15308 eval "$ossh_varname=yes"
15309else
15310 eval "$ossh_varname=no"
15311fi
15312rm -f conftest*
15313
15314fi
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
15338else
15339
15340 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15341/* end confdefs.h. */
15342#include <utmpx.h>
15343
15344_ACEOF
15345if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15346 $EGREP "ut_addr_v6" >/dev/null 2>&1; then :
15347 eval "$ossh_varname=yes"
15348else
15349 eval "$ossh_varname=no"
15350fi
15351rm -f conftest*
15352
15353fi
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
15377else
15378
15379 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15380/* end confdefs.h. */
15381#include <utmp.h>
15382
15383_ACEOF
15384if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15385 $EGREP "ut_exit" >/dev/null 2>&1; then :
15386 eval "$ossh_varname=yes"
15387else
15388 eval "$ossh_varname=no"
15389fi
15390rm -f conftest*
15391
15392fi
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
15416else
15417
15418 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15419/* end confdefs.h. */
15420#include <utmp.h>
15421
15422_ACEOF
15423if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15424 $EGREP "ut_time" >/dev/null 2>&1; then :
15425 eval "$ossh_varname=yes"
15426else
15427 eval "$ossh_varname=no"
15428fi
15429rm -f conftest*
15430
15431fi
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
15455else
15456
15457 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15458/* end confdefs.h. */
15459#include <utmpx.h>
15460
15461_ACEOF
15462if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15463 $EGREP "ut_time" >/dev/null 2>&1; then :
15464 eval "$ossh_varname=yes"
15465else
15466 eval "$ossh_varname=no"
15467fi
15468rm -f conftest*
15469
15470fi
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
15494else
15495
15496 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15497/* end confdefs.h. */
15498#include <utmpx.h>
15499
15500_ACEOF
15501if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
15502 $EGREP "ut_tv" >/dev/null 2>&1; then :
15503 eval "$ossh_varname=yes"
15504else
15505 eval "$ossh_varname=no"
15506fi
15507rm -f conftest*
15508
15509fi
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
15526ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default"
15527if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then :
15528
15529cat >>confdefs.h <<_ACEOF
15530#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
15531_ACEOF
15532
15533
15534fi
15535
15536ac_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"
15541if test "x$ac_cv_member_struct_passwd_pw_gecos" = xyes; then :
15542
15543cat >>confdefs.h <<_ACEOF
15544#define HAVE_STRUCT_PASSWD_PW_GECOS 1
15545_ACEOF
15546
15547
15548fi
15549ac_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"
15554if test "x$ac_cv_member_struct_passwd_pw_class" = xyes; then :
15555
15556cat >>confdefs.h <<_ACEOF
15557#define HAVE_STRUCT_PASSWD_PW_CLASS 1
15558_ACEOF
15559
15560
15561fi
15562ac_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"
15567if test "x$ac_cv_member_struct_passwd_pw_change" = xyes; then :
15568
15569cat >>confdefs.h <<_ACEOF
15570#define HAVE_STRUCT_PASSWD_PW_CHANGE 1
15571_ACEOF
15572
15573
15574fi
15575ac_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"
15580if test "x$ac_cv_member_struct_passwd_pw_expire" = xyes; then :
15581
15582cat >>confdefs.h <<_ACEOF
15583#define HAVE_STRUCT_PASSWD_PW_EXPIRE 1
15584_ACEOF
15585
15586
15587fi
15588
15589
15590ac_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"
15600if test "x$ac_cv_member_struct___res_state_retrans" = xyes; then :
15601
15602else
15603
15604$as_echo "#define __res_state state" >>confdefs.h
15605
15606fi
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; }
15611if ${ac_cv_have_ss_family_in_struct_ss+:} false; then :
15612 $as_echo_n "(cached) " >&6
15613else
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
15621int
15622main ()
15623{
15624 struct sockaddr_storage s; s.ss_family = 1;
15625 ;
15626 return 0;
15627}
15628_ACEOF
15629if ac_fn_c_try_compile "$LINENO"; then :
15630 ac_cv_have_ss_family_in_struct_ss="yes"
15631else
15632 ac_cv_have_ss_family_in_struct_ss="no"
15633fi
15634rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15635
15636fi
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; }
15639if 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
15643fi
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; }
15647if ${ac_cv_have___ss_family_in_struct_ss+:} false; then :
15648 $as_echo_n "(cached) " >&6
15649else
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
15657int
15658main ()
15659{
15660 struct sockaddr_storage s; s.__ss_family = 1;
15661 ;
15662 return 0;
15663}
15664_ACEOF
15665if ac_fn_c_try_compile "$LINENO"; then :
15666 ac_cv_have___ss_family_in_struct_ss="yes"
15667else
15668 ac_cv_have___ss_family_in_struct_ss="no"
15669
15670fi
15671rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15672
15673fi
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; }
15676if 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
15680fi
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; }
15684if ${ac_cv_have_accrights_in_msghdr+:} false; then :
15685 $as_echo_n "(cached) " >&6
15686else
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
15695int
15696main ()
15697{
15698
15699#ifdef msg_accrights
15700#error "msg_accrights is a macro"
15701exit(1);
15702#endif
15703struct msghdr m;
15704m.msg_accrights = 0;
15705exit(0);
15706
15707 ;
15708 return 0;
15709}
15710_ACEOF
15711if ac_fn_c_try_compile "$LINENO"; then :
15712 ac_cv_have_accrights_in_msghdr="yes"
15713else
15714 ac_cv_have_accrights_in_msghdr="no"
15715
15716fi
15717rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15718
15719fi
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; }
15722if test "x$ac_cv_have_accrights_in_msghdr" = "xyes" ; then
15723
15724$as_echo "#define HAVE_ACCRIGHTS_IN_MSGHDR 1" >>confdefs.h
15725
15726fi
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; }
15730cat 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
15745int
15746main ()
15747{
15748 struct statvfs s; s.f_fsid = 0;
15749 ;
15750 return 0;
15751}
15752_ACEOF
15753if ac_fn_c_try_compile "$LINENO"; then :
15754 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15755$as_echo "yes" >&6; }
15756else
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
15768int
15769main ()
15770{
15771 fsid_t t; t.val[0] = 0;
15772 ;
15773 return 0;
15774}
15775_ACEOF
15776if 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
15782else
15783 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15784$as_echo "no" >&6; }
15785fi
15786rm -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
15796int
15797main ()
15798{
15799 fsid_t t; t.__val[0] = 0;
15800 ;
15801 return 0;
15802}
15803_ACEOF
15804if 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
15810else
15811 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15812$as_echo "no" >&6; }
15813fi
15814rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15815
15816fi
15817rm -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; }
15821if ${ac_cv_have_control_in_msghdr+:} false; then :
15822 $as_echo_n "(cached) " >&6
15823else
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
15832int
15833main ()
15834{
15835
15836#ifdef msg_control
15837#error "msg_control is a macro"
15838exit(1);
15839#endif
15840struct msghdr m;
15841m.msg_control = 0;
15842exit(0);
15843
15844 ;
15845 return 0;
15846}
15847_ACEOF
15848if ac_fn_c_try_compile "$LINENO"; then :
15849 ac_cv_have_control_in_msghdr="yes"
15850else
15851 ac_cv_have_control_in_msghdr="no"
15852
15853fi
15854rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15855
15856fi
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; }
15859if test "x$ac_cv_have_control_in_msghdr" = "xyes" ; then
15860
15861$as_echo "#define HAVE_CONTROL_IN_MSGHDR 1" >>confdefs.h
15862
15863fi
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; }
15867if ${ac_cv_libc_defines___progname+:} false; then :
15868 $as_echo_n "(cached) " >&6
15869else
15870
15871 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15872/* end confdefs.h. */
15873
15874int
15875main ()
15876{
15877 extern char *__progname; printf("%s", __progname);
15878 ;
15879 return 0;
15880}
15881_ACEOF
15882if ac_fn_c_try_link "$LINENO"; then :
15883 ac_cv_libc_defines___progname="yes"
15884else
15885 ac_cv_libc_defines___progname="no"
15886
15887fi
15888rm -f core conftest.err conftest.$ac_objext \
15889 conftest$ac_exeext conftest.$ac_ext
15890
15891fi
15892{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines___progname" >&5
15893$as_echo "$ac_cv_libc_defines___progname" >&6; }
15894if test "x$ac_cv_libc_defines___progname" = "xyes" ; then
15895
15896$as_echo "#define HAVE___PROGNAME 1" >>confdefs.h
15897
15898fi
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; }
15902if ${ac_cv_cc_implements___FUNCTION__+:} false; then :
15903 $as_echo_n "(cached) " >&6
15904else
15905
15906 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15907/* end confdefs.h. */
15908 #include <stdio.h>
15909int
15910main ()
15911{
15912 printf("%s", __FUNCTION__);
15913 ;
15914 return 0;
15915}
15916_ACEOF
15917if ac_fn_c_try_link "$LINENO"; then :
15918 ac_cv_cc_implements___FUNCTION__="yes"
15919else
15920 ac_cv_cc_implements___FUNCTION__="no"
15921
15922fi
15923rm -f core conftest.err conftest.$ac_objext \
15924 conftest$ac_exeext conftest.$ac_ext
15925
15926fi
15927{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___FUNCTION__" >&5
15928$as_echo "$ac_cv_cc_implements___FUNCTION__" >&6; }
15929if test "x$ac_cv_cc_implements___FUNCTION__" = "xyes" ; then
15930
15931$as_echo "#define HAVE___FUNCTION__ 1" >>confdefs.h
15932
15933fi
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; }
15937if ${ac_cv_cc_implements___func__+:} false; then :
15938 $as_echo_n "(cached) " >&6
15939else
15940
15941 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15942/* end confdefs.h. */
15943 #include <stdio.h>
15944int
15945main ()
15946{
15947 printf("%s", __func__);
15948 ;
15949 return 0;
15950}
15951_ACEOF
15952if ac_fn_c_try_link "$LINENO"; then :
15953 ac_cv_cc_implements___func__="yes"
15954else
15955 ac_cv_cc_implements___func__="no"
15956
15957fi
15958rm -f core conftest.err conftest.$ac_objext \
15959 conftest$ac_exeext conftest.$ac_ext
15960
15961fi
15962{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___func__" >&5
15963$as_echo "$ac_cv_cc_implements___func__" >&6; }
15964if test "x$ac_cv_cc_implements___func__" = "xyes" ; then
15965
15966$as_echo "#define HAVE___func__ 1" >>confdefs.h
15967
15968fi
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; }
15972if ${ac_cv_have_va_copy+:} false; then :
15973 $as_echo_n "(cached) " >&6
15974else
15975
15976 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15977/* end confdefs.h. */
15978
15979#include <stdarg.h>
15980va_list x,y;
15981
15982int
15983main ()
15984{
15985 va_copy(x,y);
15986 ;
15987 return 0;
15988}
15989_ACEOF
15990if ac_fn_c_try_link "$LINENO"; then :
15991 ac_cv_have_va_copy="yes"
15992else
15993 ac_cv_have_va_copy="no"
15994
15995fi
15996rm -f core conftest.err conftest.$ac_objext \
15997 conftest$ac_exeext conftest.$ac_ext
15998
15999fi
16000{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_va_copy" >&5
16001$as_echo "$ac_cv_have_va_copy" >&6; }
16002if test "x$ac_cv_have_va_copy" = "xyes" ; then
16003
16004$as_echo "#define HAVE_VA_COPY 1" >>confdefs.h
16005
16006fi
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; }
16010if ${ac_cv_have___va_copy+:} false; then :
16011 $as_echo_n "(cached) " >&6
16012else
16013
16014 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16015/* end confdefs.h. */
16016
16017#include <stdarg.h>
16018va_list x,y;
16019
16020int
16021main ()
16022{
16023 __va_copy(x,y);
16024 ;
16025 return 0;
16026}
16027_ACEOF
16028if ac_fn_c_try_link "$LINENO"; then :
16029 ac_cv_have___va_copy="yes"
16030else
16031 ac_cv_have___va_copy="no"
16032
16033fi
16034rm -f core conftest.err conftest.$ac_objext \
16035 conftest$ac_exeext conftest.$ac_ext
16036
16037fi
16038{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___va_copy" >&5
16039$as_echo "$ac_cv_have___va_copy" >&6; }
16040if test "x$ac_cv_have___va_copy" = "xyes" ; then
16041
16042$as_echo "#define HAVE___VA_COPY 1" >>confdefs.h
16043
16044fi
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; }
16048if ${ac_cv_have_getopt_optreset+:} false; then :
16049 $as_echo_n "(cached) " >&6
16050else
16051
16052 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16053/* end confdefs.h. */
16054 #include <getopt.h>
16055int
16056main ()
16057{
16058 extern int optreset; optreset = 0;
16059 ;
16060 return 0;
16061}
16062_ACEOF
16063if ac_fn_c_try_link "$LINENO"; then :
16064 ac_cv_have_getopt_optreset="yes"
16065else
16066 ac_cv_have_getopt_optreset="no"
16067
16068fi
16069rm -f core conftest.err conftest.$ac_objext \
16070 conftest$ac_exeext conftest.$ac_ext
16071
16072fi
16073{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getopt_optreset" >&5
16074$as_echo "$ac_cv_have_getopt_optreset" >&6; }
16075if test "x$ac_cv_have_getopt_optreset" = "xyes" ; then
16076
16077$as_echo "#define HAVE_GETOPT_OPTRESET 1" >>confdefs.h
16078
16079fi
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; }
16083if ${ac_cv_libc_defines_sys_errlist+:} false; then :
16084 $as_echo_n "(cached) " >&6
16085else
16086
16087 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16088/* end confdefs.h. */
16089
16090int
16091main ()
16092{
16093 extern const char *const sys_errlist[]; printf("%s", sys_errlist[0]);
16094 ;
16095 return 0;
16096}
16097_ACEOF
16098if ac_fn_c_try_link "$LINENO"; then :
16099 ac_cv_libc_defines_sys_errlist="yes"
16100else
16101 ac_cv_libc_defines_sys_errlist="no"
16102
16103fi
16104rm -f core conftest.err conftest.$ac_objext \
16105 conftest$ac_exeext conftest.$ac_ext
16106
16107fi
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; }
16110if test "x$ac_cv_libc_defines_sys_errlist" = "xyes" ; then
16111
16112$as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h
16113
16114fi
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; }
16119if ${ac_cv_libc_defines_sys_nerr+:} false; then :
16120 $as_echo_n "(cached) " >&6
16121else
16122
16123 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16124/* end confdefs.h. */
16125
16126int
16127main ()
16128{
16129 extern int sys_nerr; printf("%i", sys_nerr);
16130 ;
16131 return 0;
16132}
16133_ACEOF
16134if ac_fn_c_try_link "$LINENO"; then :
16135 ac_cv_libc_defines_sys_nerr="yes"
16136else
16137 ac_cv_libc_defines_sys_nerr="no"
16138
16139fi
16140rm -f core conftest.err conftest.$ac_objext \
16141 conftest$ac_exeext conftest.$ac_ext
16142
16143fi
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; }
16146if test "x$ac_cv_libc_defines_sys_nerr" = "xyes" ; then
16147
16148$as_echo "#define HAVE_SYS_NERR 1" >>confdefs.h
16149
16150fi
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; }
16155if ${ac_cv_search_getrrsetbyname+:} false; then :
16156 $as_echo_n "(cached) " >&6
16157else
16158 ac_func_search_save_LIBS=$LIBS
16159cat 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
16166extern "C"
16167#endif
16168char getrrsetbyname ();
16169int
16170main ()
16171{
16172return getrrsetbyname ();
16173 ;
16174 return 0;
16175}
16176_ACEOF
16177for 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
16186fi
16187rm -f core conftest.err conftest.$ac_objext \
16188 conftest$ac_exeext
16189 if ${ac_cv_search_getrrsetbyname+:} false; then :
16190 break
16191fi
16192done
16193if ${ac_cv_search_getrrsetbyname+:} false; then :
16194
16195else
16196 ac_cv_search_getrrsetbyname=no
16197fi
16198rm conftest.$ac_ext
16199LIBS=$ac_func_search_save_LIBS
16200fi
16201{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_getrrsetbyname" >&5
16202$as_echo "$ac_cv_search_getrrsetbyname" >&6; }
16203ac_res=$ac_cv_search_getrrsetbyname
16204if 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
16209else
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; }
16214if ${ac_cv_search_res_query+:} false; then :
16215 $as_echo_n "(cached) " >&6
16216else
16217 ac_func_search_save_LIBS=$LIBS
16218cat 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
16225extern "C"
16226#endif
16227char res_query ();
16228int
16229main ()
16230{
16231return res_query ();
16232 ;
16233 return 0;
16234}
16235_ACEOF
16236for 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
16245fi
16246rm -f core conftest.err conftest.$ac_objext \
16247 conftest$ac_exeext
16248 if ${ac_cv_search_res_query+:} false; then :
16249 break
16250fi
16251done
16252if ${ac_cv_search_res_query+:} false; then :
16253
16254else
16255 ac_cv_search_res_query=no
16256fi
16257rm conftest.$ac_ext
16258LIBS=$ac_func_search_save_LIBS
16259fi
16260{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_query" >&5
16261$as_echo "$ac_cv_search_res_query" >&6; }
16262ac_res=$ac_cv_search_res_query
16263if test "$ac_res" != no; then :
16264 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
16265
16266fi
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; }
16270if ${ac_cv_search_dn_expand+:} false; then :
16271 $as_echo_n "(cached) " >&6
16272else
16273 ac_func_search_save_LIBS=$LIBS
16274cat 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
16281extern "C"
16282#endif
16283char dn_expand ();
16284int
16285main ()
16286{
16287return dn_expand ();
16288 ;
16289 return 0;
16290}
16291_ACEOF
16292for 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
16301fi
16302rm -f core conftest.err conftest.$ac_objext \
16303 conftest$ac_exeext
16304 if ${ac_cv_search_dn_expand+:} false; then :
16305 break
16306fi
16307done
16308if ${ac_cv_search_dn_expand+:} false; then :
16309
16310else
16311 ac_cv_search_dn_expand=no
16312fi
16313rm conftest.$ac_ext
16314LIBS=$ac_func_search_save_LIBS
16315fi
16316{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5
16317$as_echo "$ac_cv_search_dn_expand" >&6; }
16318ac_res=$ac_cv_search_dn_expand
16319if test "$ac_res" != no; then :
16320 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
16321
16322fi
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
16335int
16336main ()
16337{
16338
16339 res_query (0, 0, 0, 0, 0);
16340
16341 ;
16342 return 0;
16343}
16344_ACEOF
16345if ac_fn_c_try_link "$LINENO"; then :
16346 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16347$as_echo "yes" >&6; }
16348else
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
16364int
16365main ()
16366{
16367
16368 res_query (0, 0, 0, 0, 0);
16369
16370 ;
16371 return 0;
16372}
16373_ACEOF
16374if ac_fn_c_try_link "$LINENO"; then :
16375 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16376$as_echo "yes" >&6; }
16377else
16378 LIBS="$saved_LIBS"
16379 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16380$as_echo "no" >&6; }
16381fi
16382rm -f core conftest.err conftest.$ac_objext \
16383 conftest$ac_exeext conftest.$ac_ext
16384
16385fi
16386rm -f core conftest.err conftest.$ac_objext \
16387 conftest$ac_exeext conftest.$ac_ext
16388 for ac_func in _getshort _getlong
16389do :
16390 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
16391ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
16392if 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
16397fi
16398done
16399
16400 ac_fn_c_check_decl "$LINENO" "_getshort" "ac_cv_have_decl__getshort" "#include <sys/types.h>
16401 #include <arpa/nameser.h>
16402"
16403if test "x$ac_cv_have_decl__getshort" = xyes; then :
16404 ac_have_decl=1
16405else
16406 ac_have_decl=0
16407fi
16408
16409cat >>confdefs.h <<_ACEOF
16410#define HAVE_DECL__GETSHORT $ac_have_decl
16411_ACEOF
16412ac_fn_c_check_decl "$LINENO" "_getlong" "ac_cv_have_decl__getlong" "#include <sys/types.h>
16413 #include <arpa/nameser.h>
16414"
16415if test "x$ac_cv_have_decl__getlong" = xyes; then :
16416 ac_have_decl=1
16417else
16418 ac_have_decl=0
16419fi
16420
16421cat >>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"
16427if test "x$ac_cv_member_HEADER_ad" = xyes; then :
16428
16429$as_echo "#define HAVE_HEADER_AD 1" >>confdefs.h
16430
16431fi
16432
16433
16434fi
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; }
16439cat 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>
16449extern struct __res_state _res;
16450
16451int
16452main ()
16453{
16454
16455 ;
16456 return 0;
16457}
16458_ACEOF
16459if 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
16466else
16467 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16468$as_echo "no" >&6; }
16469
16470fi
16471rm -f core conftest.err conftest.$ac_objext \
16472 conftest$ac_exeext conftest.$ac_ext
16473
16474# Check whether user wants SELinux support
16475SELINUX_MSG="no"
16476LIBSELINUX=""
16477
16478# Check whether --with-selinux was given.
16479if 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"
16487if test "x$ac_cv_header_selinux_selinux_h" = xyes; then :
16488
16489else
16490 as_fn_error $? "SELinux support requires selinux.h header" "$LINENO" 5
16491fi
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; }
16496if ${ac_cv_lib_selinux_setexeccon+:} false; then :
16497 $as_echo_n "(cached) " >&6
16498else
16499 ac_check_lib_save_LIBS=$LIBS
16500LIBS="-lselinux $LIBS"
16501cat 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
16508extern "C"
16509#endif
16510char setexeccon ();
16511int
16512main ()
16513{
16514return setexeccon ();
16515 ;
16516 return 0;
16517}
16518_ACEOF
16519if ac_fn_c_try_link "$LINENO"; then :
16520 ac_cv_lib_selinux_setexeccon=yes
16521else
16522 ac_cv_lib_selinux_setexeccon=no
16523fi
16524rm -f core conftest.err conftest.$ac_objext \
16525 conftest$ac_exeext conftest.$ac_ext
16526LIBS=$ac_check_lib_save_LIBS
16527fi
16528{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_setexeccon" >&5
16529$as_echo "$ac_cv_lib_selinux_setexeccon" >&6; }
16530if test "x$ac_cv_lib_selinux_setexeccon" = xyes; then :
16531 LIBSELINUX="-lselinux"
16532 LIBS="$LIBS -lselinux"
16533
16534else
16535 as_fn_error $? "SELinux support requires libselinux library" "$LINENO" 5
16536fi
16537
16538 SSHLIBS="$SSHLIBS $LIBSELINUX"
16539 SSHDLIBS="$SSHDLIBS $LIBSELINUX"
16540 for ac_func in getseuserbyname get_default_context_with_level
16541do :
16542 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
16543ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
16544if 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
16549fi
16550done
16551
16552 LIBS="$save_LIBS"
16553 fi
16554
16555fi
16556
16557
16558
16559
16560# Check whether user wants Kerberos 5 support
16561KRB5_MSG="no"
16562
16563# Check whether --with-kerberos5 was given.
16564if 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.
16578set 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; }
16581if ${ac_cv_path_KRB5CONF+:} false; then :
16582 $as_echo_n "(cached) " >&6
16583else
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
16590as_dummy="$KRB5ROOT/bin:$PATH"
16591for as_dir in $as_dummy
16592do
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
16601done
16602 done
16603IFS=$as_save_IFS
16604
16605 test -z "$ac_cv_path_KRB5CONF" && ac_cv_path_KRB5CONF="$KRB5ROOT/bin/krb5-config"
16606 ;;
16607esac
16608fi
16609KRB5CONF=$ac_cv_path_KRB5CONF
16610if test -n "$KRB5CONF"; then
16611 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KRB5CONF" >&5
16612$as_echo "$KRB5CONF" >&6; }
16613else
16614 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16615$as_echo "no" >&6; }
16616fi
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
16645int
16646main ()
16647{
16648 char *tmp = heimdal_version;
16649 ;
16650 return 0;
16651}
16652_ACEOF
16653if 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
16659else
16660 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16661$as_echo "no" >&6; }
16662
16663fi
16664rm -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
16674int
16675main ()
16676{
16677 char *tmp = heimdal_version;
16678 ;
16679 return 0;
16680}
16681_ACEOF
16682if 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; }
16691if ${ac_cv_lib_roken_net_write+:} false; then :
16692 $as_echo_n "(cached) " >&6
16693else
16694 ac_check_lib_save_LIBS=$LIBS
16695LIBS="-lroken $LIBS"
16696cat 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
16703extern "C"
16704#endif
16705char net_write ();
16706int
16707main ()
16708{
16709return net_write ();
16710 ;
16711 return 0;
16712}
16713_ACEOF
16714if ac_fn_c_try_link "$LINENO"; then :
16715 ac_cv_lib_roken_net_write=yes
16716else
16717 ac_cv_lib_roken_net_write=no
16718fi
16719rm -f core conftest.err conftest.$ac_objext \
16720 conftest$ac_exeext conftest.$ac_ext
16721LIBS=$ac_check_lib_save_LIBS
16722fi
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; }
16725if test "x$ac_cv_lib_roken_net_write" = xyes; then :
16726 K5LIBS="$K5LIBS -lroken"
16727fi
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; }
16731if ${ac_cv_lib_des_des_cbc_encrypt+:} false; then :
16732 $as_echo_n "(cached) " >&6
16733else
16734 ac_check_lib_save_LIBS=$LIBS
16735LIBS="-ldes $LIBS"
16736cat 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
16743extern "C"
16744#endif
16745char des_cbc_encrypt ();
16746int
16747main ()
16748{
16749return des_cbc_encrypt ();
16750 ;
16751 return 0;
16752}
16753_ACEOF
16754if ac_fn_c_try_link "$LINENO"; then :
16755 ac_cv_lib_des_des_cbc_encrypt=yes
16756else
16757 ac_cv_lib_des_des_cbc_encrypt=no
16758fi
16759rm -f core conftest.err conftest.$ac_objext \
16760 conftest$ac_exeext conftest.$ac_ext
16761LIBS=$ac_check_lib_save_LIBS
16762fi
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; }
16765if test "x$ac_cv_lib_des_des_cbc_encrypt" = xyes; then :
16766 K5LIBS="$K5LIBS -ldes"
16767fi
16768
16769
16770else
16771 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16772$as_echo "no" >&6; }
16773 K5LIBS="-lkrb5 -lk5crypto -lcom_err"
16774
16775
16776fi
16777rm -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; }
16780if ${ac_cv_search_dn_expand+:} false; then :
16781 $as_echo_n "(cached) " >&6
16782else
16783 ac_func_search_save_LIBS=$LIBS
16784cat 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
16791extern "C"
16792#endif
16793char dn_expand ();
16794int
16795main ()
16796{
16797return dn_expand ();
16798 ;
16799 return 0;
16800}
16801_ACEOF
16802for 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
16811fi
16812rm -f core conftest.err conftest.$ac_objext \
16813 conftest$ac_exeext
16814 if ${ac_cv_search_dn_expand+:} false; then :
16815 break
16816fi
16817done
16818if ${ac_cv_search_dn_expand+:} false; then :
16819
16820else
16821 ac_cv_search_dn_expand=no
16822fi
16823rm conftest.$ac_ext
16824LIBS=$ac_func_search_save_LIBS
16825fi
16826{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5
16827$as_echo "$ac_cv_search_dn_expand" >&6; }
16828ac_res=$ac_cv_search_dn_expand
16829if test "$ac_res" != no; then :
16830 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
16831
16832fi
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; }
16837if ${ac_cv_lib_gssapi_krb5_gss_init_sec_context+:} false; then :
16838 $as_echo_n "(cached) " >&6
16839else
16840 ac_check_lib_save_LIBS=$LIBS
16841LIBS="-lgssapi_krb5 $LIBS"
16842cat 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
16849extern "C"
16850#endif
16851char gss_init_sec_context ();
16852int
16853main ()
16854{
16855return gss_init_sec_context ();
16856 ;
16857 return 0;
16858}
16859_ACEOF
16860if ac_fn_c_try_link "$LINENO"; then :
16861 ac_cv_lib_gssapi_krb5_gss_init_sec_context=yes
16862else
16863 ac_cv_lib_gssapi_krb5_gss_init_sec_context=no
16864fi
16865rm -f core conftest.err conftest.$ac_objext \
16866 conftest$ac_exeext conftest.$ac_ext
16867LIBS=$ac_check_lib_save_LIBS
16868fi
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; }
16871if 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"
16875else
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; }
16878if ${ac_cv_lib_gssapi_gss_init_sec_context+:} false; then :
16879 $as_echo_n "(cached) " >&6
16880else
16881 ac_check_lib_save_LIBS=$LIBS
16882LIBS="-lgssapi $LIBS"
16883cat 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
16890extern "C"
16891#endif
16892char gss_init_sec_context ();
16893int
16894main ()
16895{
16896return gss_init_sec_context ();
16897 ;
16898 return 0;
16899}
16900_ACEOF
16901if ac_fn_c_try_link "$LINENO"; then :
16902 ac_cv_lib_gssapi_gss_init_sec_context=yes
16903else
16904 ac_cv_lib_gssapi_gss_init_sec_context=no
16905fi
16906rm -f core conftest.err conftest.$ac_objext \
16907 conftest$ac_exeext conftest.$ac_ext
16908LIBS=$ac_check_lib_save_LIBS
16909fi
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; }
16912if test "x$ac_cv_lib_gssapi_gss_init_sec_context" = xyes; then :
16913 $as_echo "#define GSSAPI 1" >>confdefs.h
16914
16915 GSSLIBS="-lgssapi"
16916else
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; }
16919if ${ac_cv_lib_gss_gss_init_sec_context+:} false; then :
16920 $as_echo_n "(cached) " >&6
16921else
16922 ac_check_lib_save_LIBS=$LIBS
16923LIBS="-lgss $LIBS"
16924cat 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
16931extern "C"
16932#endif
16933char gss_init_sec_context ();
16934int
16935main ()
16936{
16937return gss_init_sec_context ();
16938 ;
16939 return 0;
16940}
16941_ACEOF
16942if ac_fn_c_try_link "$LINENO"; then :
16943 ac_cv_lib_gss_gss_init_sec_context=yes
16944else
16945 ac_cv_lib_gss_gss_init_sec_context=no
16946fi
16947rm -f core conftest.err conftest.$ac_objext \
16948 conftest$ac_exeext conftest.$ac_ext
16949LIBS=$ac_check_lib_save_LIBS
16950fi
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; }
16953if test "x$ac_cv_lib_gss_gss_init_sec_context" = xyes; then :
16954 $as_echo "#define GSSAPI 1" >>confdefs.h
16955
16956 GSSLIBS="-lgss"
16957else
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;}
16960fi
16961
16962
16963fi
16964
16965
16966fi
16967
16968
16969 ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
16970if test "x$ac_cv_header_gssapi_h" = xyes; then :
16971
16972else
16973 unset ac_cv_header_gssapi_h
16974 CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi"
16975 for ac_header in gssapi.h
16976do :
16977 ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
16978if test "x$ac_cv_header_gssapi_h" = xyes; then :
16979 cat >>confdefs.h <<_ACEOF
16980#define HAVE_GSSAPI_H 1
16981_ACEOF
16982
16983else
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
16987fi
16988
16989done
16990
16991
16992
16993fi
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"
17000if test "x$ac_cv_header_gssapi_krb5_h" = xyes; then :
17001
17002else
17003 CPPFLAGS="$oldCPP"
17004fi
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
17017do :
17018 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
17019ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
17020if 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
17025fi
17026
17027done
17028
17029 for ac_header in gssapi_krb5.h gssapi/gssapi_krb5.h
17030do :
17031 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
17032ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
17033if 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
17038fi
17039
17040done
17041
17042 for ac_header in gssapi_generic.h gssapi/gssapi_generic.h
17043do :
17044 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
17045ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
17046if 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
17051fi
17052
17053done
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; }
17058if ${ac_cv_search_k_hasafs+:} false; then :
17059 $as_echo_n "(cached) " >&6
17060else
17061 ac_func_search_save_LIBS=$LIBS
17062cat 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
17069extern "C"
17070#endif
17071char k_hasafs ();
17072int
17073main ()
17074{
17075return k_hasafs ();
17076 ;
17077 return 0;
17078}
17079_ACEOF
17080for 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
17089fi
17090rm -f core conftest.err conftest.$ac_objext \
17091 conftest$ac_exeext
17092 if ${ac_cv_search_k_hasafs+:} false; then :
17093 break
17094fi
17095done
17096if ${ac_cv_search_k_hasafs+:} false; then :
17097
17098else
17099 ac_cv_search_k_hasafs=no
17100fi
17101rm conftest.$ac_ext
17102LIBS=$ac_func_search_save_LIBS
17103fi
17104{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_k_hasafs" >&5
17105$as_echo "$ac_cv_search_k_hasafs" >&6; }
17106ac_res=$ac_cv_search_k_hasafs
17107if 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
17112fi
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"
17129if test "x$ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" = xyes; then :
17130 ac_have_decl=1
17131else
17132 ac_have_decl=0
17133fi
17134
17135cat >>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
17142do :
17143 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
17144ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
17145if 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
17150fi
17151done
17152
17153 LIBS="$saved_LIBS"
17154
17155 fi
17156
17157
17158fi
17159
17160
17161
17162
17163# Looking for programs, paths and files
17164
17165PRIVSEP_PATH=/var/empty
17166
17167# Check whether --with-privsep-path was given.
17168if 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
17176fi
17177
17178
17179
17180
17181# Check whether --with-xauth was given.
17182if 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
17189else
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.
17197set 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; }
17200if ${ac_cv_path_xauth_path+:} false; then :
17201 $as_echo_n "(cached) " >&6
17202else
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
17209for as_dir in $TestPath
17210do
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
17219done
17220 done
17221IFS=$as_save_IFS
17222
17223 ;;
17224esac
17225fi
17226xauth_path=$ac_cv_path_xauth_path
17227if test -n "$xauth_path"; then
17228 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xauth_path" >&5
17229$as_echo "$xauth_path" >&6; }
17230else
17231 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17232$as_echo "no" >&6; }
17233fi
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
17241fi
17242
17243
17244STRIP_OPT=-s
17245# Check whether --enable-strip was given.
17246if test "${enable_strip+set}" = set; then :
17247 enableval=$enable_strip;
17248 if test "x$enableval" = "xno" ; then
17249 STRIP_OPT=
17250 fi
17251
17252
17253fi
17254
17255
17256
17257if test -z "$xauth_path" ; then
17258 XAUTH_PATH="undefined"
17259
17260else
17261
17262cat >>confdefs.h <<_ACEOF
17263#define XAUTH_PATH "$xauth_path"
17264_ACEOF
17265
17266 XAUTH_PATH=$xauth_path
17267
17268fi
17269
17270# Check for mail directory
17271
17272# Check whether --with-maildir was given.
17273if 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
17278cat >>confdefs.h <<_ACEOF
17279#define MAIL_DIRECTORY "$withval"
17280_ACEOF
17281
17282 fi
17283
17284else
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
17300else
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
17314int
17315main ()
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
17344if 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
17358else
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
17373fi
17374rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
17375 conftest.$ac_objext conftest.beam conftest.$ac_ext
17376fi
17377
17378 fi
17379
17380
17381fi
17382 # maildir
17383
17384if 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
17388fi
17389if 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; }
17394if eval \${$as_ac_File+:} false; then :
17395 $as_echo_n "(cached) " >&6
17396else
17397 test "$cross_compiling" = yes &&
17398 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
17399if test -r ""/dev/ptmx""; then
17400 eval "$as_ac_File=yes"
17401else
17402 eval "$as_ac_File=no"
17403fi
17404fi
17405eval ac_res=\$$as_ac_File
17406 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
17407$as_echo "$ac_res" >&6; }
17408if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
17409
17410
17411cat >>confdefs.h <<_ACEOF
17412#define HAVE_DEV_PTMX 1
17413_ACEOF
17414
17415 have_dev_ptmx=1
17416
17417
17418fi
17419
17420 fi
17421fi
17422
17423if 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; }
17427if eval \${$as_ac_File+:} false; then :
17428 $as_echo_n "(cached) " >&6
17429else
17430 test "$cross_compiling" = yes &&
17431 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
17432if test -r ""/dev/ptc""; then
17433 eval "$as_ac_File=yes"
17434else
17435 eval "$as_ac_File=no"
17436fi
17437fi
17438eval ac_res=\$$as_ac_File
17439 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
17440$as_echo "$ac_res" >&6; }
17441if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
17442
17443
17444cat >>confdefs.h <<_ACEOF
17445#define HAVE_DEV_PTS_AND_PTC 1
17446_ACEOF
17447
17448 have_dev_ptc=1
17449
17450
17451fi
17452
17453else
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;}
17456fi
17457
17458# Options from here on. Some of these are preset by platform above
17459
17460# Check whether --with-mantype was given.
17461if 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
17473fi
17474
17475if test -z "$MANTYPE"; then
17476 TestPath="/usr/bin${PATH_SEPARATOR}/usr/ucb"
17477 for ac_prog in nroff awf
17478do
17479 # Extract the first word of "$ac_prog", so it can be a program name with args.
17480set 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; }
17483if ${ac_cv_path_NROFF+:} false; then :
17484 $as_echo_n "(cached) " >&6
17485else
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
17492for as_dir in $TestPath
17493do
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
17502done
17503 done
17504IFS=$as_save_IFS
17505
17506 ;;
17507esac
17508fi
17509NROFF=$ac_cv_path_NROFF
17510if test -n "$NROFF"; then
17511 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
17512$as_echo "$NROFF" >&6; }
17513else
17514 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17515$as_echo "no" >&6; }
17516fi
17517
17518
17519 test -n "$NROFF" && break
17520done
17521test -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
17530fi
17531
17532if test "$MANTYPE" = "doc"; then
17533 mansubdir=man;
17534else
17535 mansubdir=$MANTYPE;
17536fi
17537
17538
17539# Check whether to enable MD5 passwords
17540MD5_MSG="no"
17541
17542# Check whether --with-md5-passwords was given.
17543if 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
17553fi
17554
17555
17556# Whether to disable shadow password support
17557
17558# Check whether --with-shadow was given.
17559if 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
17568fi
17569
17570
17571if 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>
17579struct spwd sp;
17580
17581int
17582main ()
17583{
17584 sp.sp_expire = sp.sp_lstchg = sp.sp_inact = 0;
17585 ;
17586 return 0;
17587}
17588_ACEOF
17589if ac_fn_c_try_compile "$LINENO"; then :
17590 sp_expire_available=yes
17591fi
17592rm -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
17604fi
17605
17606# Use ip address instead of hostname in $DISPLAY
17607if test ! -z "$IPADDR_IN_DISPLAY" ; then
17608 DISPLAY_HACK_MSG="yes"
17609
17610$as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h
17611
17612else
17613 DISPLAY_HACK_MSG="no"
17614
17615# Check whether --with-ipaddr-display was given.
17616if 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
17625fi
17626
17627fi
17628
17629# check for /etc/default/login and use it if present.
17630# Check whether --enable-etc-default-login was given.
17631if 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
17639else
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
17649fi
17650
17651
17652if 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; }
17656if eval \${$as_ac_File+:} false; then :
17657 $as_echo_n "(cached) " >&6
17658else
17659 test "$cross_compiling" = yes &&
17660 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
17661if test -r ""/etc/default/login""; then
17662 eval "$as_ac_File=yes"
17663else
17664 eval "$as_ac_File=no"
17665fi
17666fi
17667eval ac_res=\$$as_ac_File
17668 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
17669$as_echo "$ac_res" >&6; }
17670if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
17671 external_path_file=/etc/default/login
17672fi
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
17679fi
17680
17681if test $ac_cv_func_login_getcapbool = "yes" && \
17682 test $ac_cv_header_login_cap_h = "yes" ; then
17683 external_path_file=/etc/login.conf
17684fi
17685
17686# Whether to mess with the default path
17687SERVER_PATH_MSG="(default)"
17688
17689# Check whether --with-default-path was given.
17690if 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.
17695Edit /etc/login.conf instead." >&5
17696$as_echo "$as_me: WARNING:
17697--with-default-path=PATH has no effect on this system.
17698Edit /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
17712else
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:
17719If PATH is defined in $external_path_file, ensure the path to scp is included,
17720otherwise scp will not work." >&5
17721$as_echo "$as_me: WARNING:
17722If PATH is defined in $external_path_file, ensure the path to scp is included,
17723otherwise scp will not work." >&2;}
17724 fi
17725 if test "$cross_compiling" = yes; then :
17726 user_path="/usr/bin:/bin:/usr/sbin:/sbin"
17727
17728else
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
17749int
17750main ()
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
17769if ac_fn_c_try_run "$LINENO"; then :
17770 user_path=`cat conftest.stdpath`
17771else
17772 user_path="/usr/bin:/bin:/usr/sbin:/sbin"
17773fi
17774rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
17775 conftest.$ac_objext conftest.beam conftest.$ac_ext
17776fi
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
17800fi
17801
17802if test "x$external_path_file" != "x/etc/login.conf" ; then
17803
17804cat >>confdefs.h <<_ACEOF
17805#define USER_PATH "$user_path"
17806_ACEOF
17807
17808
17809fi
17810
17811# Set superuser path separately to user path
17812
17813# Check whether --with-superuser-path was given.
17814if 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
17819cat >>confdefs.h <<_ACEOF
17820#define SUPERUSER_PATH "$withval"
17821_ACEOF
17822
17823 superuser_path=$withval
17824 fi
17825
17826
17827fi
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; }
17833IPV4_IN6_HACK_MSG="no"
17834
17835# Check whether --with-4in6 was given.
17836if 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
17850else
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
17864fi
17865
17866
17867# Whether to enable BSD auth support
17868BSD_AUTH_MSG=no
17869
17870# Check whether --with-bsd-auth was given.
17871if 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
17881fi
17882
17883
17884# Where to place sshd.pid
17885piddir=/var/run
17886# make sure the directory exists
17887if 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
17892fi
17893
17894
17895# Check whether --with-pid-dir was given.
17896if 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
17908fi
17909
17910
17911
17912cat >>confdefs.h <<_ACEOF
17913#define _PATH_SSH_PIDDIR "$piddir"
17914_ACEOF
17915
17916
17917
17918# Check whether --enable-lastlog was given.
17919if 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
17927fi
17928
17929# Check whether --enable-utmp was given.
17930if 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
17938fi
17939
17940# Check whether --enable-utmpx was given.
17941if 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
17950fi
17951
17952# Check whether --enable-wtmp was given.
17953if 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
17961fi
17962
17963# Check whether --enable-wtmpx was given.
17964if 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
17973fi
17974
17975# Check whether --enable-libutil was given.
17976if 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
17984fi
17985
17986# Check whether --enable-pututline was given.
17987if 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
17996fi
17997
17998# Check whether --enable-pututxline was given.
17999if 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
18008fi
18009
18010
18011# Check whether --with-lastlog was given.
18012if 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
18022fi
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; }
18028cat 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
18043int
18044main ()
18045{
18046 char *lastlog = LASTLOG_FILE;
18047 ;
18048 return 0;
18049}
18050_ACEOF
18051if ac_fn_c_try_compile "$LINENO"; then :
18052 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18053$as_echo "yes" >&6; }
18054else
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
18072int
18073main ()
18074{
18075 char *lastlog = _PATH_LASTLOG;
18076 ;
18077 return 0;
18078}
18079_ACEOF
18080if ac_fn_c_try_compile "$LINENO"; then :
18081 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18082$as_echo "yes" >&6; }
18083else
18084
18085 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18086$as_echo "no" >&6; }
18087 system_lastlog_path=no
18088
18089fi
18090rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18091
18092fi
18093rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18094
18095if 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
18107fi
18108
18109if test -n "$conf_lastlog_location"; then
18110
18111cat >>confdefs.h <<_ACEOF
18112#define CONF_LASTLOG_FILE "$conf_lastlog_location"
18113_ACEOF
18114
18115fi
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; }
18119cat 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
18128int
18129main ()
18130{
18131 char *utmp = UTMP_FILE;
18132 ;
18133 return 0;
18134}
18135_ACEOF
18136if ac_fn_c_try_compile "$LINENO"; then :
18137 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18138$as_echo "yes" >&6; }
18139else
18140 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18141$as_echo "no" >&6; }
18142 system_utmp_path=no
18143
18144fi
18145rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18146if 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
18158fi
18159if test -n "$conf_utmp_location"; then
18160
18161cat >>confdefs.h <<_ACEOF
18162#define CONF_UTMP_FILE "$conf_utmp_location"
18163_ACEOF
18164
18165fi
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; }
18169cat 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
18178int
18179main ()
18180{
18181 char *wtmp = WTMP_FILE;
18182 ;
18183 return 0;
18184}
18185_ACEOF
18186if ac_fn_c_try_compile "$LINENO"; then :
18187 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18188$as_echo "yes" >&6; }
18189else
18190 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18191$as_echo "no" >&6; }
18192 system_wtmp_path=no
18193
18194fi
18195rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18196if 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
18208fi
18209if test -n "$conf_wtmp_location"; then
18210
18211cat >>confdefs.h <<_ACEOF
18212#define CONF_WTMP_FILE "$conf_wtmp_location"
18213_ACEOF
18214
18215fi
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; }
18219cat 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
18231int
18232main ()
18233{
18234 char *wtmpx = WTMPX_FILE;
18235 ;
18236 return 0;
18237}
18238_ACEOF
18239if ac_fn_c_try_compile "$LINENO"; then :
18240 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18241$as_echo "yes" >&6; }
18242else
18243 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18244$as_echo "no" >&6; }
18245 system_wtmpx_path=no
18246
18247fi
18248rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18249if 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
18254else
18255
18256cat >>confdefs.h <<_ACEOF
18257#define CONF_WTMPX_FILE "$conf_wtmpx_location"
18258_ACEOF
18259
18260fi
18261
18262
18263if 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;}
18267fi
18268
18269ac_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"
18284if test "x$ac_cv_member_struct_lastlog_ll_line" = xyes; then :
18285
18286else
18287
18288 if test x$SKIP_DISABLE_LASTLOG_DEFINE != "xyes" ; then
18289 $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
18290
18291 fi
18292
18293fi
18294
18295
18296ac_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"
18311if test "x$ac_cv_member_struct_utmp_ut_line" = xyes; then :
18312
18313else
18314
18315 $as_echo "#define DISABLE_UTMP 1" >>confdefs.h
18316
18317 $as_echo "#define DISABLE_WTMP 1" >>confdefs.h
18318
18319
18320fi
18321
18322
18323CFLAGS="$CFLAGS $werror_flags"
18324
18325if test "x$ac_cv_func_getaddrinfo" != "xyes" ; then
18326 TEST_SSH_IPV6=no
18327else
18328 TEST_SSH_IPV6=yes
18329fi
18330ac_fn_c_check_decl "$LINENO" "BROKEN_GETADDRINFO" "ac_cv_have_decl_BROKEN_GETADDRINFO" "$ac_includes_default"
18331if test "x$ac_cv_have_decl_BROKEN_GETADDRINFO" = xyes; then :
18332 TEST_SSH_IPV6=no
18333fi
18334
18335TEST_SSH_IPV6=$TEST_SSH_IPV6
18336
18337TEST_MALLOC_OPTIONS=$TEST_MALLOC_OPTIONS
18338
18339UNSUPPORTED_ALGORITHMS=$unsupported_algorithms
18340
18341
18342
18343ac_config_files="$ac_config_files Makefile buildpkg.sh opensshd.init openssh.xml openbsd-compat/Makefile openbsd-compat/regress/Makefile survey.sh"
18344
18345cat >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
18407if 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
18428fi
18429rm -f confcache
18430
18431test "x$prefix" = xNONE && prefix=$ac_default_prefix
18432# Let make expand exec_prefix.
18433test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
18434
18435DEFS=-DHAVE_CONFIG_H
18436
18437ac_libobjs=
18438ac_ltlibobjs=
18439U=
18440for 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'
18448done
18449LIBOBJS=$ac_libobjs
18450
18451LTLIBOBJS=$ac_ltlibobjs
18452
18453
18454
18455
18456: "${CONFIG_STATUS=./config.status}"
18457ac_write_fail=0
18458ac_clean_files_save=$ac_clean_files
18459ac_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;}
18462as_write_fail=0
18463cat >$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
18470debug=false
18471ac_cs_recheck=false
18472ac_cs_silent=false
18473
18474SHELL=\${CONFIG_SHELL-$SHELL}
18475export SHELL
18476_ASEOF
18477cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
18478## -------------------- ##
18479## M4sh Initialization. ##
18480## -------------------- ##
18481
18482# Be more Bourne compatible
18483DUALCASE=1; export DUALCASE # for MKS sh
18484if 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
18491else
18492 case `(set -o) 2>/dev/null` in #(
18493 *posix*) :
18494 set -o posix ;; #(
18495 *) :
18496 ;;
18497esac
18498fi
18499
18500
18501as_nl='
18502'
18503export as_nl
18504# Printing a long string crashes Solaris 7 /usr/bin/printf.
18505as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
18506as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
18507as_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.
18510if 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 --'
18514elif (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'
18517else
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'
18537fi
18538
18539# The user is always right.
18540if 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 }
18546fi
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.)
18554IFS=" "" $as_nl"
18555
18556# Find who we are. Look in the path if we contain no directory separator.
18557as_myself=
18558case $0 in #((
18559 *[\\/]* ) as_myself=$0 ;;
18560 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
18561for as_dir in $PATH
18562do
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
18567IFS=$as_save_IFS
18568
18569 ;;
18570esac
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.
18573if test "x$as_myself" = x; then
18574 as_myself=$0
18575fi
18576if test ! -f "$as_myself"; then
18577 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
18578 exit 1
18579fi
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.
18585for as_var in BASH_ENV ENV MAIL MAILPATH
18586do eval test x\${$as_var+set} = xset \
18587 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
18588done
18589PS1='$ '
18590PS2='> '
18591PS4='+ '
18592
18593# NLS nuisances.
18594LC_ALL=C
18595export LC_ALL
18596LANGUAGE=C
18597export 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.
18608as_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.
18623as_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.
18631as_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.
18641as_fn_unset ()
18642{
18643 { eval $1=; unset $1;}
18644}
18645as_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.
18652if (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 }'
18657else
18658 as_fn_append ()
18659 {
18660 eval $1=\$$1\$2
18661 }
18662fi # 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.
18669if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
18670 eval 'as_fn_arith ()
18671 {
18672 as_val=$(( $* ))
18673 }'
18674else
18675 as_fn_arith ()
18676 {
18677 as_val=`expr "$@" || test $? -eq 1`
18678 }
18679fi # as_fn_arith
18680
18681
18682if expr a : '\(a\)' >/dev/null 2>&1 &&
18683 test "X`expr 00001 : '.*\(...\)'`" = X001; then
18684 as_expr=expr
18685else
18686 as_expr=false
18687fi
18688
18689if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
18690 as_basename=basename
18691else
18692 as_basename=false
18693fi
18694
18695if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
18696 as_dirname=dirname
18697else
18698 as_dirname=false
18699fi
18700
18701as_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.
18721as_cr_letters='abcdefghijklmnopqrstuvwxyz'
18722as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
18723as_cr_Letters=$as_cr_letters$as_cr_LETTERS
18724as_cr_digits='0123456789'
18725as_cr_alnum=$as_cr_Letters$as_cr_digits
18726
18727ECHO_C= ECHO_N= ECHO_T=
18728case `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';;
18738esac
18739
18740rm -f conf$$ conf$$.exe conf$$.file
18741if test -d conf$$.dir; then
18742 rm -f conf$$.dir/conf$$.file
18743else
18744 rm -f conf$$.dir
18745 mkdir conf$$.dir 2>/dev/null
18746fi
18747if (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
18761else
18762 as_ln_s='cp -p'
18763fi
18764rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
18765rmdir conf$$.dir 2>/dev/null
18766
18767
18768# as_fn_mkdir_p
18769# -------------
18770# Create "$as_dir" as a directory, including parents if necessary.
18771as_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
18815if mkdir -p . 2>/dev/null; then
18816 as_mkdir_p='mkdir -p "$as_dir"'
18817else
18818 test -d ./-p && rmdir ./-p
18819 as_mkdir_p=false
18820fi
18821
18822if test -x / >/dev/null 2>&1; then
18823 as_test_x='test -x'
18824else
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 '
18842fi
18843as_executable_p=$as_test_x
18844
18845# Sed expression to map a string onto a valid CPP name.
18846as_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.
18849as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
18850
18851
18852exec 6>&1
18853## ----------------------------------- ##
18854## Main body of $CONFIG_STATUS script. ##
18855## ----------------------------------- ##
18856_ASEOF
18857test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
18858
18859cat >>$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.
18863ac_log="
18864This file was extended by OpenSSH $as_me Portable, which was
18865generated 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
18873on `(hostname || uname -n) 2>/dev/null | sed 1q`
18874"
18875
18876_ACEOF
18877
18878case $ac_config_files in *"
18879"*) set x $ac_config_files; shift; ac_config_files=$*;;
18880esac
18881
18882case $ac_config_headers in *"
18883"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
18884esac
18885
18886
18887cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18888# Files that config.status was made for.
18889config_files="$ac_config_files"
18890config_headers="$ac_config_headers"
18891
18892_ACEOF
18893
18894cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18895ac_cs_usage="\
18896\`$as_me' instantiates files and other configuration actions
18897from templates according to the current configuration. Unless the files
18898and actions are specified as TAGs, all are instantiated by default.
18899
18900Usage: $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
18914Configuration files:
18915$config_files
18916
18917Configuration headers:
18918$config_headers
18919
18920Report bugs to <openssh-unix-dev@mindrot.org>."
18921
18922_ACEOF
18923cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18924ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
18925ac_cs_version="\\
18926OpenSSH config.status Portable
18927configured by $0, generated by GNU Autoconf 2.68,
18928 with options \\"\$ac_cs_config\\"
18929
18930Copyright (C) 2010 Free Software Foundation, Inc.
18931This config.status script is free software; the Free Software Foundation
18932gives unlimited permission to copy, distribute and modify it."
18933
18934ac_pwd='$ac_pwd'
18935srcdir='$srcdir'
18936INSTALL='$INSTALL'
18937AWK='$AWK'
18938test -n "\$AWK" || AWK=awk
18939_ACEOF
18940
18941cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18942# The default lists apply if the user does not specify any file.
18943ac_need_defaults=:
18944while test $# != 0
18945do
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'
18992Try \`$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'
19001Try \`$0 --help' for more information." ;;
19002
19003 *) as_fn_append ac_config_targets " $1"
19004 ac_need_defaults=false ;;
19005
19006 esac
19007 shift
19008done
19009
19010ac_configure_extra_args=
19011
19012if $ac_cs_silent; then
19013 exec 6>/dev/null
19014 ac_configure_extra_args="$ac_configure_extra_args --silent"
19015fi
19016
19017_ACEOF
19018cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19019if \$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 "\$@"
19026fi
19027
19028_ACEOF
19029cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19030exec 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
19040cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19041_ACEOF
19042
19043cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19044
19045# Handling of arguments.
19046for ac_config_target in $ac_config_targets
19047do
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
19060done
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.
19067if $ac_need_defaults; then
19068 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
19069 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
19070fi
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
19097ac_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'.
19102if test -n "$CONFIG_FILES"; then
19103
19104
19105ac_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.
19109if test "x$ac_cr" = x; then
19110 eval ac_cr=\$\'\\r\'
19111fi
19112ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
19113if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
19114 ac_cs_awk_cr='\\r'
19115else
19116 ac_cs_awk_cr=$ac_cr
19117fi
19118
19119echo '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
19129ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
19130ac_delim='%!_!# '
19131for 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
19143done
19144rm -f conf$$subs.sh
19145
19146cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19147cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
19148_ACEOF
19149sed -n '
19150h
19151s/^/S["/; s/!.*/"]=/
19152p
19153g
19154s/^[^!]*!//
19155:repl
19156t repl
19157s/'"$ac_delim"'$//
19158t delim
19159:nl
19160h
19161s/\(.\{148\}\)..*/\1/
19162t more1
19163s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
19164p
19165n
19166b repl
19167:more1
19168s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19169p
19170g
19171s/.\{148\}//
19172t nl
19173:delim
19174h
19175s/\(.\{148\}\)..*/\1/
19176t more2
19177s/["\\]/\\&/g; s/^/"/; s/$/"/
19178p
19179b
19180:more2
19181s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19182p
19183g
19184s/.\{148\}//
19185t delim
19186' <conf$$subs.awk | sed '
19187/^[^""]/{
19188 N
19189 s/\n//
19190}
19191' >>$CONFIG_STATUS || ac_write_fail=1
19192rm -f conf$$subs.awk
19193cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19194_ACAWK
19195cat >>"\$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
19222cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19223if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
19224 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
19225else
19226 cat
19227fi < "$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).
19235if test "x$srcdir" = x.; then
19236 ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
19237h
19238s///
19239s/^/:/
19240s/[ ]*$/:/
19241s/:\$(srcdir):/:/g
19242s/:\${srcdir}:/:/g
19243s/:@srcdir@:/:/g
19244s/^:*//
19245s/:*$//
19246x
19247s/\(=[ ]*\).*/\1/
19248G
19249s/\n//
19250s/^[^=]*=[ ]*$//
19251}'
19252fi
19253
19254cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19255fi # 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'.
19260if test -n "$CONFIG_HEADERS"; then
19261cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
19262BEGIN {
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.
19271ac_delim='%!_!# '
19272for 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
19281done
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
19287ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
19288sed -n '
19289s/.\{148\}/&'"$ac_delim"'/g
19290t rset
19291:rset
19292s/^[ ]*#[ ]*define[ ][ ]*/ /
19293t def
19294d
19295:def
19296s/\\$//
19297t bsnl
19298s/["\\]/\\&/g
19299s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19300D["\1"]=" \3"/p
19301s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
19302d
19303:bsnl
19304s/["\\]/\\&/g
19305s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19306D["\1"]=" \3\\\\\\n"\\/p
19307t cont
19308s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
19309t cont
19310d
19311:cont
19312n
19313s/.\{148\}/&'"$ac_delim"'/g
19314t clear
19315:clear
19316s/\\$//
19317t bsnlc
19318s/["\\]/\\&/g; s/^/"/; s/$/"/p
19319d
19320:bsnlc
19321s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
19322b cont
19323' <confdefs.h | sed '
19324s/'"$ac_delim"'/"\\\
19325"/g' >>$CONFIG_STATUS || ac_write_fail=1
19326
19327cat >>$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
19361cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19362 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
19363fi # test -n "$CONFIG_HEADERS"
19364
19365
19366eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS "
19367shift
19368for ac_tag
19369do
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
19461case "$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 ;;
19471esac
19472ac_abs_top_builddir=$ac_pwd
19473ac_abs_builddir=$ac_pwd$ac_dir_suffix
19474# for backward compatibility:
19475ac_top_builddir=$ac_top_build_prefix
19476
19477case $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 ;;
19490esac
19491ac_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
19506cat >>$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.
19509ac_datarootdir_hack=; ac_datarootdir_seen=
19510ac_sed_dataroot='
19511/datarootdir/ {
19512 p
19513 q
19514}
19515/@datadir@/p
19516/@docdir@/p
19517/@infodir@/p
19518/@localedir@/p
19519/@mandir@/p'
19520case `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
19526cat >>$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' ;;
19534esac
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?
19540cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19541ac_sed_extra="$ac_vpsub
19542$extrasub
19543_ACEOF
19544cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19545:t
19546/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
19547s|@configure_input@|$ac_sed_conf_input|;t t
19548s&@top_builddir@&$ac_top_builddir_sub&;t t
19549s&@top_build_prefix@&$ac_top_build_prefix&;t t
19550s&@srcdir@&$ac_srcdir&;t t
19551s&@abs_srcdir@&$ac_abs_srcdir&;t t
19552s&@top_srcdir@&$ac_top_srcdir&;t t
19553s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
19554s&@builddir@&$ac_builddir&;t t
19555s&@abs_builddir@&$ac_abs_builddir&;t t
19556s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
19557s&@INSTALL@&$ac_INSTALL&;t t
19558$ac_datarootdir_hack
19559"
19560eval 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
19563test -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'
19568which 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'
19570which 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
19607done # for ac_tag
19608
19609
19610as_fn_exit 0
19611_ACEOF
19612ac_clean_files=$ac_clean_files_save
19613
19614test $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.
19626if 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
19637fi
19638if 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;}
19641fi
19642
19643
19644# Print summary of options
19645
19646# Someone please show me a better way :)
19647A=`eval echo ${prefix}` ; A=`eval echo ${A}`
19648B=`eval echo ${bindir}` ; B=`eval echo ${B}`
19649C=`eval echo ${sbindir}` ; C=`eval echo ${C}`
19650D=`eval echo ${sysconfdir}` ; D=`eval echo ${D}`
19651E=`eval echo ${libexecdir}/ssh-askpass` ; E=`eval echo ${E}`
19652F=`eval echo ${mandir}/${mansubdir}X` ; F=`eval echo ${F}`
19653G=`eval echo ${piddir}` ; G=`eval echo ${G}`
19654H=`eval echo ${PRIVSEP_PATH}` ; H=`eval echo ${H}`
19655I=`eval echo ${user_path}` ; I=`eval echo ${I}`
19656J=`eval echo ${superuser_path}` ; J=`eval echo ${J}`
19657
19658echo ""
19659echo "OpenSSH has been configured with the following options:"
19660echo " User binaries: $B"
19661echo " System binaries: $C"
19662echo " Configuration files: $D"
19663echo " Askpass program: $E"
19664echo " Manual pages: $F"
19665echo " PID file: $G"
19666echo " Privilege separation chroot path: $H"
19667if test "x$external_path_file" = "x/etc/login.conf" ; then
19668echo " At runtime, sshd will use the path defined in $external_path_file"
19669echo " Make sure the path to scp is present, otherwise scp will not work"
19670else
19671echo " sshd default user PATH: $I"
19672 if test ! -z "$external_path_file"; then
19673echo " (If PATH is set in $external_path_file it will be used instead. If"
19674echo " used, ensure the path to scp is present, otherwise scp will not work.)"
19675 fi
19676fi
19677if test ! -z "$superuser_path" ; then
19678echo " sshd superuser user PATH: $J"
19679fi
19680echo " Manpage format: $MANTYPE"
19681echo " PAM support: $PAM_MSG"
19682echo " OSF SIA support: $SIA_MSG"
19683echo " KerberosV support: $KRB5_MSG"
19684echo " SELinux support: $SELINUX_MSG"
19685echo " Smartcard support: $SCARD_MSG"
19686echo " S/KEY support: $SKEY_MSG"
19687echo " TCP Wrappers support: $TCPW_MSG"
19688echo " MD5 password support: $MD5_MSG"
19689echo " libedit support: $LIBEDIT_MSG"
19690echo " Solaris process contract support: $SPC_MSG"
19691echo " Solaris project support: $SP_MSG"
19692echo " IP address in \$DISPLAY hack: $DISPLAY_HACK_MSG"
19693echo " Translate v4 in v6 hack: $IPV4_IN6_HACK_MSG"
19694echo " BSD Auth support: $BSD_AUTH_MSG"
19695echo " Random number source: $RAND_MSG"
19696echo " Privsep sandbox style: $SANDBOX_STYLE"
19697
19698echo ""
19699
19700echo " Host: ${host}"
19701echo " Compiler: ${CC}"
19702echo " Compiler flags: ${CFLAGS}"
19703echo "Preprocessor flags: ${CPPFLAGS}"
19704echo " Linker flags: ${LDFLAGS}"
19705echo " Libraries: ${LIBS}"
19706if test ! -z "${SSHDLIBS}"; then
19707echo " +for sshd: ${SSHDLIBS}"
19708fi
19709if test ! -z "${SSHLIBS}"; then
19710echo " +for ssh: ${SSHLIBS}"
19711fi
19712
19713echo ""
19714
19715if test "x$MAKE_PACKAGE_SUPPORTED" = "xyes" ; then
19716 echo "SVR4 style packages are supported with \"make package\""
19717 echo ""
19718fi
19719
19720if 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 ""
19726fi
19727
19728if 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 ""
19736fi
19737
19738if 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."
19741fi
diff --git a/moduli.0 b/moduli.0
new file mode 100644
index 000000000..7d678b459
--- /dev/null
+++ b/moduli.0
@@ -0,0 +1,74 @@
1MODULI(5) OpenBSD Programmer's Manual MODULI(5)
2
3NAME
4 moduli - Diffie-Hellman moduli
5
6DESCRIPTION
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
66SEE ALSO
67 ssh-keygen(1), sshd(8)
68
69STANDARDS
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
74OpenBSD 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 @@
1Makefile
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 @@
1Makefile
2snprintftest
3strduptest
4strtonumtest
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
6actual
7authorized_keys_*
8batch
9copy.dd*
10data
11expect
12host.rsa*
13key.*
14known_hosts
15krl-*
16modpipe
17remote_pid
18revoked-*
19revoked-ca
20revoked-keyid
21revoked-serials
22rsa
23rsa1
24sftp-server.sh
25ssh-log-wrapper.sh
26ssh_config
27ssh_proxy*
28sshd_config
29sshd_proxy*
30t*.out
31t*.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 @@
1Makefile
2Ssh.bin
diff --git a/scp.0 b/scp.0
new file mode 100644
index 000000000..b9eeffc4e
--- /dev/null
+++ b/scp.0
@@ -0,0 +1,163 @@
1SCP(1) OpenBSD Reference Manual SCP(1)
2
3NAME
4 scp - secure copy (remote file copy program)
5
6SYNOPSIS
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
11DESCRIPTION
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
148EXIT STATUS
149 The scp utility exits 0 on success, and >0 if an error occurs.
150
151SEE ALSO
152 rcp(1), sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1),
153 ssh_config(5), sshd(8)
154
155HISTORY
156 scp is based on the rcp(1) program in BSD source code from the Regents of
157 the University of California.
158
159AUTHORS
160 Timo Rinne <tri@iki.fi>
161 Tatu Ylonen <ylo@cs.hut.fi>
162
163OpenBSD 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 @@
1SFTP-SERVER(8) OpenBSD System Manager's Manual SFTP-SERVER(8)
2
3NAME
4 sftp-server - SFTP server subsystem
5
6SYNOPSIS
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
12DESCRIPTION
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
83SEE 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
89HISTORY
90 sftp-server first appeared in OpenBSD 2.8.
91
92AUTHORS
93 Markus Friedl <markus@openbsd.org>
94
95OpenBSD 5.5 October 14, 2013 OpenBSD 5.5
diff --git a/sftp.0 b/sftp.0
new file mode 100644
index 000000000..7139aac43
--- /dev/null
+++ b/sftp.0
@@ -0,0 +1,370 @@
1SFTP(1) OpenBSD Reference Manual SFTP(1)
2
3NAME
4 sftp - secure file transfer program
5
6SYNOPSIS
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
15DESCRIPTION
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
190INTERACTIVE 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
363SEE 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
370OpenBSD 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 @@
1SSH-ADD(1) OpenBSD Reference Manual SSH-ADD(1)
2
3NAME
4 ssh-add - adds private key identities to the authentication agent
5
6SYNOPSIS
7 ssh-add [-cDdkLlXx] [-t life] [file ...]
8 ssh-add -s pkcs11
9 ssh-add -e pkcs11
10
11DESCRIPTION
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
70ENVIRONMENT
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
85FILES
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
109EXIT 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
113SEE ALSO
114 ssh(1), ssh-agent(1), ssh-keygen(1), sshd(8)
115
116AUTHORS
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
123OpenBSD 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 @@
1SSH-AGENT(1) OpenBSD Reference Manual SSH-AGENT(1)
2
3NAME
4 ssh-agent - authentication agent
5
6SYNOPSIS
7 ssh-agent [-c | -s] [-d] [-a bind_address] [-t life] [command [arg ...]]
8 ssh-agent [-c | -s] -k
9
10DESCRIPTION
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
91FILES
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
118SEE ALSO
119 ssh(1), ssh-add(1), ssh-keygen(1), sshd(8)
120
121AUTHORS
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
128OpenBSD 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 @@
1SSH-KEYGEN(1) OpenBSD Reference Manual SSH-KEYGEN(1)
2
3NAME
4 ssh-keygen - authentication key generation, management and conversion
5
6SYNOPSIS
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
32DESCRIPTION
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
365MODULI 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
398CERTIFICATES
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
455KEY 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
506FILES
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
550SEE 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
555AUTHORS
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
562OpenBSD 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 @@
1SSH-KEYSCAN(1) OpenBSD Reference Manual SSH-KEYSCAN(1)
2
3NAME
4 ssh-keyscan - gather ssh public keys
5
6SYNOPSIS
7 ssh-keyscan [-46Hv] [-f file] [-p port] [-T timeout] [-t type]
8 [host | addrlist namelist] ...
9
10DESCRIPTION
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
59SECURITY
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
67FILES
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
85EXAMPLES
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
96SEE ALSO
97 ssh(1), sshd(8)
98
99AUTHORS
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
104BUGS
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
110OpenBSD 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 @@
1SSH-KEYSIGN(8) OpenBSD System Manager's Manual SSH-KEYSIGN(8)
2
3NAME
4 ssh-keysign - ssh helper program for host-based authentication
5
6SYNOPSIS
7 ssh-keysign
8
9DESCRIPTION
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
22FILES
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
44SEE ALSO
45 ssh(1), ssh-keygen(1), ssh_config(5), sshd(8)
46
47HISTORY
48 ssh-keysign first appeared in OpenBSD 3.2.
49
50AUTHORS
51 Markus Friedl <markus@openbsd.org>
52
53OpenBSD 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 @@
1SSH-PKCS11-HELPER(8) OpenBSD System Manager's Manual SSH-PKCS11-HELPER(8)
2
3NAME
4 ssh-pkcs11-helper - ssh-agent helper program for PKCS#11 support
5
6SYNOPSIS
7 ssh-pkcs11-helper
8
9DESCRIPTION
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
16SEE ALSO
17 ssh(1), ssh-add(1), ssh-agent(1)
18
19HISTORY
20 ssh-pkcs11-helper first appeared in OpenBSD 4.7.
21
22AUTHORS
23 Markus Friedl <markus@openbsd.org>
24
25OpenBSD 5.5 July 16, 2013 OpenBSD 5.5
diff --git a/ssh.0 b/ssh.0
new file mode 100644
index 000000000..16868cfca
--- /dev/null
+++ b/ssh.0
@@ -0,0 +1,946 @@
1SSH(1) OpenBSD Reference Manual SSH(1)
2
3NAME
4 ssh - OpenSSH SSH client (remote login program)
5
6SYNOPSIS
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
16DESCRIPTION
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
410AUTHENTICATION
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
523ESCAPE 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
567TCP 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
599X11 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
627VERIFYING 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
677SSH-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
714ENVIRONMENT
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
779FILES
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
887EXIT STATUS
888 ssh exits with the exit status of the remote command or with 255 if an
889 error occurred.
890
891SEE 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
895STANDARDS
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
939AUTHORS
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
946OpenBSD 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 @@
1SSH_CONFIG(5) OpenBSD Programmer's Manual SSH_CONFIG(5)
2
3NAME
4 ssh_config - OpenSSH SSH client configuration files
5
6SYNOPSIS
7 ~/.ssh/config
8 /etc/ssh/ssh_config
9
10DESCRIPTION
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
843PATTERNS
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
865FILES
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
879SEE ALSO
880 ssh(1)
881
882AUTHORS
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
889OpenBSD 5.5 February 23, 2014 OpenBSD 5.5
diff --git a/sshd.0 b/sshd.0
new file mode 100644
index 000000000..c61d51535
--- /dev/null
+++ b/sshd.0
@@ -0,0 +1,643 @@
1SSHD(8) OpenBSD System Manager's Manual SSHD(8)
2
3NAME
4 sshd - OpenSSH SSH daemon
5
6SYNOPSIS
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
12DESCRIPTION
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
148AUTHENTICATION
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
209LOGIN 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
238SSHRC
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
268AUTHORIZED_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
406SSH_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
486FILES
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
626SEE 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
631AUTHORS
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
639CAVEATS
640 System security is not improved unless rshd, rlogind, and rexecd are
641 disabled (thus completely disabling rlogin and rsh into the machine).
642
643OpenBSD 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 @@
1SSHD_CONFIG(5) OpenBSD Programmer's Manual SSHD_CONFIG(5)
2
3NAME
4 sshd_config - OpenSSH SSH daemon configuration file
5
6SYNOPSIS
7 /etc/ssh/sshd_config
8
9DESCRIPTION
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
796TIME 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
818FILES
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
824SEE ALSO
825 sshd(8)
826
827AUTHORS
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
835OpenBSD 5.5 February 27, 2014 OpenBSD 5.5