summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9706
-rw-r--r--config.h.in1951
-rwxr-xr-xconfigure22926
-rw-r--r--moduli.074
-rw-r--r--scp.0163
-rw-r--r--sftp-server.096
-rw-r--r--sftp.0379
-rw-r--r--ssh-add.0123
-rw-r--r--ssh-agent.0120
-rw-r--r--ssh-keygen.0585
-rw-r--r--ssh-keyscan.096
-rw-r--r--ssh-keysign.052
-rw-r--r--ssh-pkcs11-helper.025
-rw-r--r--ssh.0982
-rw-r--r--ssh_config.01109
-rw-r--r--sshd.0653
-rw-r--r--sshd_config.01092
17 files changed, 40132 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 000000000..0307f62e0
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,9706 @@
1commit aede1c34243a6f7feae2fb2cb686ade5f9be6f3d
2Author: Damien Miller <djm@mindrot.org>
3Date: Wed Oct 17 11:01:20 2018 +1100
4
5 Require OpenSSL 1.1.x series 1.1.0g or greater
6
7 Previous versions have a bug with EVP_CipherInit() when passed a
8 NULL EVP_CIPHER, per https://github.com/openssl/openssl/pull/4613
9
10 ok dtucker@
11
12commit 08300c211409c212e010fe2e2f2883e573a04ce2
13Author: Damien Miller <djm@mindrot.org>
14Date: Wed Oct 17 08:12:02 2018 +1100
15
16 unbreak compilation with --with-ssl-engine
17
18 Missing last argument to OPENSSL_init_crypto()
19
20commit 1673274aee67ce0eb6f00578b6f3d2bcbd58f937
21Author: Darren Tucker <dtucker@dtucker.net>
22Date: Tue Oct 16 14:45:57 2018 +1100
23
24 Remove gcc spectre mitigation flags.
25
26 Current impementions of the gcc spectre mitigation flags cause
27 miscompilations when combined with other flags and do not provide much
28 protection. Found by fweimer at redhat.com, ok djm@
29
30commit 4e23deefd7959ef83c73ed9cce574423438f6133
31Author: Damien Miller <djm@mindrot.org>
32Date: Tue Oct 16 10:51:52 2018 +1100
33
34 Avoid deprecated OPENSSL_config when using 1.1.x
35
36 OpenSSL 1.1.x soft-deprecated OPENSSL_config in favour of
37 OPENSSL_init_crypto; pointed out by Jakub Jelen
38
39commit 797cdd9c8468ed1125ce60d590ae3f1397866af4
40Author: Darren Tucker <dtucker@dtucker.net>
41Date: Fri Oct 12 16:58:47 2018 +1100
42
43 Don't avoid our *sprintf replacements.
44
45 Don't let systems with broken printf(3) avoid our replacements
46 via asprintf(3)/vasprintf(3) calling libc internally. From djm@
47
48commit e526127cbd2f8ad88fb41229df0c9b850c722830
49Author: Darren Tucker <dtucker@dtucker.net>
50Date: Fri Oct 12 16:43:35 2018 +1100
51
52 Check if snprintf understands %zu.
53
54 If the platforms snprintf and friends don't understand %zu, use the
55 compat replacement. Prevents segfaults on those platforms.
56
57commit cf39f875191708c5f2f1a3c1c9019f106e74aea3
58Author: Damien Miller <djm@mindrot.org>
59Date: Fri Oct 12 09:48:05 2018 +1100
60
61 remove stale link, tweak
62
63commit a7205e68decf7de2005810853b4ce6b222b65e2a
64Author: Damien Miller <djm@mindrot.org>
65Date: Fri Oct 12 09:47:20 2018 +1100
66
67 update version numbers ahead of release
68
69commit 1a4a9cf80f5b92b9d1dadd0bfa8867c04d195391
70Author: djm@openbsd.org <djm@openbsd.org>
71Date: Thu Oct 11 03:48:04 2018 +0000
72
73 upstream: don't send new-style rsa-sha2-*-cert-v01@openssh.com names to
74
75 older OpenSSH that can't handle them. spotted by Adam Eijdenberg; ok dtucker
76
77 OpenBSD-Commit-ID: 662bbc402e3d7c9b6c322806269698106a6ae631
78
79commit dc8ddcdf1a95e011c263486c25869bb5bf4e30ec
80Author: Damien Miller <djm@mindrot.org>
81Date: Thu Oct 11 13:08:59 2018 +1100
82
83 update depends
84
85commit 26841ac265603fd2253e6832e03602823dbb4022
86Author: Damien Miller <djm@mindrot.org>
87Date: Thu Oct 11 13:02:11 2018 +1100
88
89 some more duplicated key algorithm lines
90
91 From Adam Eijdenberg
92
93commit 5d9d17603bfbb620195a4581025052832b4c4adc
94Author: Damien Miller <djm@mindrot.org>
95Date: Thu Oct 11 11:56:36 2018 +1100
96
97 fix duplicated algorithm specification lines
98
99 Spotted by Adam Eijdenberg
100
101commit ebfafd9c7a5b2a7fb515ee95dbe0e44e11d0a663
102Author: djm@openbsd.org <djm@openbsd.org>
103Date: Thu Oct 11 00:52:46 2018 +0000
104
105 upstream: typo in plain RSA algorithm counterpart names for
106
107 certificates; spotted by Adam Eijdenberg; ok dtucker@
108
109 OpenBSD-Commit-ID: bfcdeb6f4fc9e7607f5096574c8f118f2e709e00
110
111commit c29b111e7d87c2324ff71c80653dd8da168c13b9
112Author: Damien Miller <djm@mindrot.org>
113Date: Thu Oct 11 11:29:35 2018 +1100
114
115 check pw_passwd != NULL here too
116
117 Again, for systems with broken NIS implementations.
118
119 Prompted by coolbugcheckers AT gmail.com
120
121commit fe8e8f349a553ef4c567acd418aac769a82b7729
122Author: Damien Miller <djm@mindrot.org>
123Date: Thu Oct 11 11:03:15 2018 +1100
124
125 check for NULL return from shadow_pw()
126
127 probably unreachable on this platform; pointed out by
128 coolbugcheckers AT gmail.com
129
130commit acc59cbe7a1fb169e1c3caba65a39bd74d6e030d
131Author: deraadt@openbsd.org <deraadt@openbsd.org>
132Date: Wed Oct 10 16:43:49 2018 +0000
133
134 upstream: introducing openssh 7.9
135
136 OpenBSD-Commit-ID: 42d526a9fe01a40dd299ac58014d3349adf40e25
137
138commit 12731158c75c8760a8bea06350eeb3e763fe1a07
139Author: Damien Miller <djm@mindrot.org>
140Date: Thu Oct 11 10:29:29 2018 +1100
141
142 supply callback to PEM_read_bio_PrivateKey
143
144 OpenSSL 1.1.0i has changed the behaviour of their PEM APIs,
145 so that empty passphrases are interpreted differently. This
146 probabalistically breaks loading some keys, because the PEM format
147 is terrible and doesn't include a proper MAC.
148
149 Avoid this by providing a basic callback to avoid passing empty
150 passphrases to OpenSSL in cases where one is required.
151
152 Based on patch from Jakub Jelen in bz#2913; ok dtucker@
153
154commit d1d301a1dd5d6cc3a9ed93ab7ab09dda4cb456e0
155Author: Damien Miller <djm@mindrot.org>
156Date: Wed Oct 10 14:57:00 2018 +1100
157
158 in pick_salt() avoid dereference of NULL passwords
159
160 Apparently some NIS implementations can leave pw->pw_passwd (or the
161 shadow equivalent) NULL.
162
163 bz#2909; based on patch from Todd Eigenschink
164
165commit edbb6febccee084d212fdc0cb05b40cb1c646ab1
166Author: djm@openbsd.org <djm@openbsd.org>
167Date: Tue Oct 9 05:42:23 2018 +0000
168
169 upstream: Treat all PEM_read_bio_PrivateKey() errors when a passphrase
170
171 is specified as "incorrect passphrase" instead of trying to choose between
172 that and "invalid format".
173
174 libcrypto can return ASN1 parsing errors rather than the expected
175 decrypt error in certain infrequent cases when trying to decrypt/parse
176 PEM private keys when supplied with an invalid passphrase.
177
178 Report and repro recipe from Thomas Deutschmann in bz#2901
179
180 ok markus@
181
182 OpenBSD-Commit-ID: b1d4cd92395f9743f81c0d23aab2524109580870
183
184commit 2581333d564d8697837729b3d07d45738eaf5a54
185Author: naddy@openbsd.org <naddy@openbsd.org>
186Date: Fri Oct 5 14:26:09 2018 +0000
187
188 upstream: Support using service names for port numbers.
189
190 * Try to resolve a port specification with getservbyname(3) if a
191 numeric conversion fails.
192 * Make the "Port" option in ssh_config handle its argument as a
193 port rather than a plain integer.
194
195 ok dtucker@ deraadt@
196
197 OpenBSD-Commit-ID: e7f03633133205ab3dfbc67f9df7475fabae660d
198
199commit e0d6501e86734c48c8c503f81e1c0926e98c5c4c
200Author: djm@openbsd.org <djm@openbsd.org>
201Date: Thu Oct 4 07:47:35 2018 +0000
202
203 upstream: when the peer sends a channel-close message, make sure we
204
205 close the local extended read fd (stderr) along with the regular read fd
206 (stdout). Avoids weird stuck processed in multiplexing mode.
207
208 Report and analysis by Nelson Elhage and Geoffrey Thomas in bz#2863
209
210 ok dtucker@ markus@
211
212 OpenBSD-Commit-ID: a48a2467fe938de4de69d2e7193d5fa701f12ae9
213
214commit 6f1aabb128246f445e33b8844fad3de9cb1d18cb
215Author: djm@openbsd.org <djm@openbsd.org>
216Date: Thu Oct 4 01:04:52 2018 +0000
217
218 upstream: factor out channel status formatting from
219
220 channel_open_message() so we can use it in other debug messages
221
222 OpenBSD-Commit-ID: 9c3903ca28fcabad57f566c9d0045b41ab7d52ba
223
224commit f1dd179e122bdfdb7ca3072d9603607740efda05
225Author: djm@openbsd.org <djm@openbsd.org>
226Date: Thu Oct 4 00:10:11 2018 +0000
227
228 upstream: include a little more information about the status and
229
230 disposition of channel's extended (stderr) fd; makes debugging some things a
231 bit easier. No behaviour change.
232
233 OpenBSD-Commit-ID: 483eb6467dc7d5dbca8eb109c453e7a43075f7ce
234
235commit 2d1428b11c8b6f616f070f2ecedce12328526944
236Author: djm@openbsd.org <djm@openbsd.org>
237Date: Thu Oct 4 00:04:41 2018 +0000
238
239 upstream: explicit_bzero here to be consistent with other kex*.c;
240
241 report from coolbugcheckers AT gmail.com
242
243 OpenBSD-Commit-ID: a90f146c5b5f5b1408700395e394f70b440856cb
244
245commit 5eff5b858e717e901e6af6596306a114de9f79f2
246Author: djm@openbsd.org <djm@openbsd.org>
247Date: Wed Oct 3 06:38:35 2018 +0000
248
249 upstream: Allow ssh_config IdentityAgent directive to accept
250
251 environment variable names as well as explicit paths. ok dtucker@
252
253 OpenBSD-Commit-ID: 2f0996e103876c53d8c9dd51dcce9889d700767b
254
255commit a46ac4d86b25414d78b632e8173578b37e5f8a83
256Author: djm@openbsd.org <djm@openbsd.org>
257Date: Tue Oct 2 12:51:58 2018 +0000
258
259 upstream: mention INFO@openssh.com for sending SIGINFO
260
261 OpenBSD-Commit-ID: 132471eeb0df658210afd27852fe65131b26e900
262
263commit ff3a411cae0b484274b7900ef52ff4dad3e12876
264Author: Damien Miller <djm@mindrot.org>
265Date: Tue Oct 2 22:49:40 2018 +1000
266
267 only support SIGINFO on systems with SIGINFO
268
269commit cd98925c6405e972dc9f211afc7e75e838abe81c
270Author: djm@openbsd.org <djm@openbsd.org>
271Date: Tue Oct 2 12:40:07 2018 +0000
272
273 upstream: Add server support for signalling sessions via the SSH
274
275 channel/ session protocol. Signalling is only supported to sesssions that are
276 not subsystems and were not started with a forced command.
277
278 Long requested in bz#1424
279
280 Based on a patch from markus@ and reworked by dtucker@;
281 ok markus@ dtucker@
282
283 OpenBSD-Commit-ID: 4bea826f575862eaac569c4bedd1056a268be1c3
284
285commit dba50258333f2604a87848762af07ba2cc40407a
286Author: djm@openbsd.org <djm@openbsd.org>
287Date: Wed Sep 26 07:32:44 2018 +0000
288
289 upstream: remove big ugly TODO comment from start of file. Some of
290
291 the mentioned tasks are obsolete and, of the remainder, most are already
292 captured in PROTOCOL.mux where they better belong
293
294 OpenBSD-Commit-ID: 16d9d76dee42a5bb651c9d6740f7f0ef68aeb407
295
296commit 92b61a38ee9b765f5049f03cd1143e13f3878905
297Author: djm@openbsd.org <djm@openbsd.org>
298Date: Wed Sep 26 07:30:05 2018 +0000
299
300 upstream: Document mux proxy mode; added by Markus in openssh-7.4
301
302 Also add a little bit of information about the overall packet format
303
304 OpenBSD-Commit-ID: bdb6f6ea8580ef96792e270cae7857786ad84a95
305
306commit 9d883a1ce4f89b175fd77405ff32674620703fb2
307Author: djm@openbsd.org <djm@openbsd.org>
308Date: Wed Sep 26 01:48:57 2018 +0000
309
310 upstream: s/process_mux_master/mux_master_process/ in mux master
311
312 function names,
313
314 Gives better symmetry with the existing mux_client_*() names and makes
315 it more obvious when a message comes from the master vs client (they
316 are interleved in ControlMaster=auto mode).
317
318 no functional change beyond prefixing a could of log messages with
319 __func__ where they were previously lacking.
320
321 OpenBSD-Commit-ID: b01f7c3fdf92692e1713a822a89dc499333daf75
322
323commit c2fa53cd6462da82d3a851dc3a4a3f6b920337c8
324Author: Darren Tucker <dtucker@dtucker.net>
325Date: Sat Sep 22 14:41:24 2018 +1000
326
327 Remove unused variable in _ssh_compat_fflush.
328
329commit d1b3540c21212624af907488960d703c7d987b42
330Author: Darren Tucker <dtucker@dtucker.net>
331Date: Thu Sep 20 18:08:43 2018 +1000
332
333 Import updated moduli.
334
335commit b5e412a8993ad17b9e1141c78408df15d3d987e1
336Author: djm@openbsd.org <djm@openbsd.org>
337Date: Fri Sep 21 12:46:22 2018 +0000
338
339 upstream: Allow ssh_config ForwardX11Timeout=0 to disable the
340
341 timeout and allow X11 connections in untrusted mode indefinitely. ok dtucker@
342
343 OpenBSD-Commit-ID: ea1ceed3f540b48e5803f933e59a03b20db10c69
344
345commit cb24d9fcc901429d77211f274031653476864ec6
346Author: djm@openbsd.org <djm@openbsd.org>
347Date: Fri Sep 21 12:23:17 2018 +0000
348
349 upstream: when compiled with GSSAPI support, cache supported method
350
351 OIDs by calling ssh_gssapi_prepare_supported_oids() regardless of whether
352 GSSAPI authentication is enabled in the main config.
353
354 This avoids sandbox violations for configurations that enable GSSAPI
355 auth later, e.g.
356
357 Match user djm
358 GSSAPIAuthentication yes
359
360 bz#2107; ok dtucker@
361
362 OpenBSD-Commit-ID: a5dd42d87c74e27cfb712b15b0f97ab20e0afd1d
363
364commit bbc8af72ba68da014d4de6e21a85eb5123384226
365Author: djm@openbsd.org <djm@openbsd.org>
366Date: Fri Sep 21 12:20:12 2018 +0000
367
368 upstream: In sshkey_in_file(), ignore keys that are considered for
369
370 being too short (i.e. SSH_ERR_KEY_LENGTH). These keys will not be considered
371 to be "in the file". This allows key revocation lists to contain short keys
372 without the entire revocation list being considered invalid.
373
374 bz#2897; ok dtucker
375
376 OpenBSD-Commit-ID: d9f3d857d07194a42ad7e62889a74dc3f9d9924b
377
378commit 383a33d160cefbfd1b40fef81f72eadbf9303a66
379Author: djm@openbsd.org <djm@openbsd.org>
380Date: Fri Sep 21 03:11:36 2018 +0000
381
382 upstream: Treat connections with ProxyJump specified the same as ones
383
384 with a ProxyCommand set with regards to hostname canonicalisation (i.e. don't
385 try to canonicalise the hostname unless CanonicalizeHostname is set to
386 'always').
387
388 Patch from Sven Wegener via bz#2896
389
390 OpenBSD-Commit-ID: 527ff501cf98bf65fb4b29ed0cb847dda10f4d37
391
392commit 0cbed248ed81584129b67c348dbb801660f25a6a
393Author: djm@openbsd.org <djm@openbsd.org>
394Date: Thu Sep 20 23:40:16 2018 +0000
395
396 upstream: actually make CASignatureAlgorithms available as a config
397
398 option
399
400 OpenBSD-Commit-ID: 93fa7ff58314ed7b1ab7744090a6a91232e6ae52
401
402commit 62528870c0ec48cd86a37dd7320fb85886c3e6ee
403Author: dtucker@openbsd.org <dtucker@openbsd.org>
404Date: Thu Sep 20 08:07:03 2018 +0000
405
406 upstream: Import updated moduli.
407
408 OpenBSD-Commit-ID: 04431e8e7872f49a2129bf080a6b73c19d576d40
409
410commit e6933a2ffa0659d57f3c7b7c457b2c62b2a84613
411Author: jmc@openbsd.org <jmc@openbsd.org>
412Date: Thu Sep 20 06:58:48 2018 +0000
413
414 upstream: reorder CASignatureAlgorithms, and add them to the
415
416 various -o lists; ok djm
417
418 OpenBSD-Commit-ID: ecb88baecc3c54988b4d1654446ea033da359288
419
420commit aa083aa9624ea7b764d5a81c4c676719a1a3e42b
421Author: djm@openbsd.org <djm@openbsd.org>
422Date: Thu Sep 20 03:31:49 2018 +0000
423
424 upstream: fix "ssh -Q sig" to show correct signature algorithm list
425
426 (it was erroneously showing certificate algorithms); prompted by markus@
427
428 OpenBSD-Commit-ID: 1cdee002f2f0c21456979deeb887fc889afb154d
429
430commit ecac7e1f7add6b28874959a11f2238d149dc2c07
431Author: djm@openbsd.org <djm@openbsd.org>
432Date: Thu Sep 20 03:30:44 2018 +0000
433
434 upstream: add CASignatureAlgorithms option for the client, allowing
435
436 it to specify which signature algorithms may be used by CAs when signing
437 certificates. Useful if you want to ban RSA/SHA1; ok markus@
438
439 OpenBSD-Commit-ID: 9159e5e9f67504829bf53ff222057307a6e3230f
440
441commit 86e5737c39153af134158f24d0cab5827cbd5852
442Author: djm@openbsd.org <djm@openbsd.org>
443Date: Thu Sep 20 03:28:06 2018 +0000
444
445 upstream: Add sshd_config CASignatureAlgorithms option to allow
446
447 control over which signature algorithms a CA may use when signing
448 certificates. In particular, this allows a sshd to ban certificates signed
449 with RSA/SHA1.
450
451 ok markus@
452
453 OpenBSD-Commit-ID: b05c86ef8b52b913ed48d54a9b9c1a7714d96bac
454
455commit f80e68ea7d62e2dfafc12f1a60ab544ae4033a0f
456Author: djm@openbsd.org <djm@openbsd.org>
457Date: Wed Sep 19 02:03:02 2018 +0000
458
459 upstream: Make "ssh-add -q" do what it says on the tin: silence
460
461 output from successful operations.
462
463 Based on patch from Thijs van Dijk; ok dtucker@ deraadt@
464
465 OpenBSD-Commit-ID: c4f754ecc055c10af166116ce7515104aa8522e1
466
467commit 5e532320e9e51de720d5f3cc2596e95d29f6e98f
468Author: millert@openbsd.org <millert@openbsd.org>
469Date: Mon Sep 17 15:40:14 2018 +0000
470
471 upstream: When choosing a prime from the moduli file, avoid
472
473 re-using the linenum variable for something that is not a line number to
474 avoid the confusion that resulted in the bug in rev. 1.64. This also lets us
475 pass the actual linenum to parse_prime() so the error messages include the
476 correct line number. OK markus@ some time ago.
477
478 OpenBSD-Commit-ID: 4d8e5d3e924d6e8eb70053e3defa23c151a00084
479
480commit cce8cbe0ed7d1ba3a575310e0b63c193326ae616
481Author: Darren Tucker <dtucker@dtucker.net>
482Date: Sat Sep 15 19:44:06 2018 +1000
483
484 Fix openssl-1.1 fallout for --without-openssl.
485
486 ok djm@
487
488commit 149519b9f201dac755f3cba4789f4d76fecf0ee1
489Author: Damien Miller <djm@mindrot.org>
490Date: Sat Sep 15 19:37:48 2018 +1000
491
492 add futex(2) syscall to seccomp sandbox
493
494 Apparently needed for some glibc/openssl combinations.
495
496 Patch from Arkadiusz Miśkiewicz
497
498commit 4488ae1a6940af704c4dbf70f55bf2f756a16536
499Author: Damien Miller <djm@mindrot.org>
500Date: Sat Sep 15 19:36:55 2018 +1000
501
502 really add source for authopt_fuzz this time
503
504commit 9201784b4a257c8345fbd740bcbdd70054885707
505Author: Damien Miller <djm@mindrot.org>
506Date: Sat Sep 15 19:35:40 2018 +1000
507
508 remove accidentally checked-in authopt_fuzz binary
509
510commit beb9e522dc7717df08179f9e59f36b361bfa14ab
511Author: djm@openbsd.org <djm@openbsd.org>
512Date: Fri Sep 14 05:26:27 2018 +0000
513
514 upstream: second try, deals properly with missing and private-only
515
516 Use consistent format in debug log for keys readied, offered and
517 received during public key authentication.
518
519 This makes it a little easier to see what is going on, as each message
520 now contains (where available) the key filename, its type and fingerprint,
521 and whether the key is hosted in an agent or a token.
522
523 OpenBSD-Commit-ID: f1c6a8e9cfc4e108c359db77f24f9a40e1e25ea7
524
525commit 6bc5a24ac867bfdc3ed615589d69ac640f51674b
526Author: Damien Miller <djm@mindrot.org>
527Date: Fri Sep 14 15:16:34 2018 +1000
528
529 fuzzer harness for authorized_keys option parsing
530
531commit 6c8b82fc6929b6a9a3f645151b6ec26c5507d9ef
532Author: djm@openbsd.org <djm@openbsd.org>
533Date: Fri Sep 14 04:44:04 2018 +0000
534
535 upstream: revert following; deals badly with agent keys
536
537 revision 1.285
538 date: 2018/09/14 04:17:12; author: djm; state: Exp; lines: +47 -26; commitid: lflGFcNb2X2HebaK;
539 Use consistent format in debug log for keys readied, offered and
540 received during public key authentication.
541
542 This makes it a little easier to see what is going on, as each message
543 now contains the key filename, its type and fingerprint, and whether
544 the key is hosted in an agent or a token.
545
546 OpenBSD-Commit-ID: e496bd004e452d4b051f33ed9ae6a54ab918f56d
547
548commit 6da046f9c3374ce7e269ded15d8ff8bc45017301
549Author: djm@openbsd.org <djm@openbsd.org>
550Date: Fri Sep 14 04:17:44 2018 +0000
551
552 upstream: garbage-collect moribund ssh_new_private() API.
553
554 OpenBSD-Commit-ID: 7c05bf13b094093dfa01848a9306c82eb6e95f6c
555
556commit 1f24ac5fc05252ceb1c1d0e8cab6a283b883c780
557Author: djm@openbsd.org <djm@openbsd.org>
558Date: Fri Sep 14 04:17:12 2018 +0000
559
560 upstream: Use consistent format in debug log for keys readied,
561
562 offered and received during public key authentication.
563
564 This makes it a little easier to see what is going on, as each message
565 now contains the key filename, its type and fingerprint, and whether
566 the key is hosted in an agent or a token.
567
568 OpenBSD-Commit-ID: 2a01d59285a8a7e01185bb0a43316084b4f06a1f
569
570commit 488c9325bb7233e975dbfbf89fa055edc3d3eddc
571Author: millert@openbsd.org <millert@openbsd.org>
572Date: Thu Sep 13 15:23:32 2018 +0000
573
574 upstream: Fix warnings caused by user_from_uid() and group_from_gid()
575
576 now returning const char *.
577
578 OpenBSD-Commit-ID: b5fe571ea77cfa7b9035062829ab05eb87d7cc6f
579
580commit 0aa1f230846ebce698e52051a107f3127024a05a
581Author: Damien Miller <djm@mindrot.org>
582Date: Fri Sep 14 10:31:47 2018 +1000
583
584 allow SIGUSR1 as synonym for SIGINFO
585
586 Lets users on those unfortunate operating systems that lack SIGINFO
587 still be able to obtain progress information from unit tests :)
588
589commit d64e78526596f098096113fcf148216798c327ff
590Author: Damien Miller <djm@mindrot.org>
591Date: Thu Sep 13 19:05:48 2018 +1000
592
593 add compat header
594
595commit a3fd8074e2e2f06602e25618721f9556c731312c
596Author: djm@openbsd.org <djm@openbsd.org>
597Date: Thu Sep 13 09:03:20 2018 +0000
598
599 upstream: missed a bit of openssl-1.0.x API in this unittest
600
601 OpenBSD-Regress-ID: a73a54d7f7381856a3f3a2d25947bee7a9a5dbc9
602
603commit 86e0a9f3d249d5580390daf58e015e68b01cef10
604Author: djm@openbsd.org <djm@openbsd.org>
605Date: Thu Sep 13 05:06:51 2018 +0000
606
607 upstream: use only openssl-1.1.x API here too
608
609 OpenBSD-Regress-ID: ae877064597c349954b1b443769723563cecbc8f
610
611commit 48f54b9d12c1c79fba333bc86d455d8f4cda8cfc
612Author: Damien Miller <djm@mindrot.org>
613Date: Thu Sep 13 12:13:50 2018 +1000
614
615 adapt -portable to OpenSSL 1.1x API
616
617 Polyfill missing API with replacement functions extracted from LibreSSL
618
619commit 86112951d63d48839f035b5795be62635a463f99
620Author: Damien Miller <djm@mindrot.org>
621Date: Thu Sep 13 12:12:42 2018 +1000
622
623 forgot to stage these test files in commit d70d061
624
625commit 482d23bcacdd3664f21cc82a5135f66fc598275f
626Author: djm@openbsd.org <djm@openbsd.org>
627Date: Thu Sep 13 02:08:33 2018 +0000
628
629 upstream: hold our collective noses and use the openssl-1.1.x API in
630
631 OpenSSH; feedback and ok tb@ jsing@ markus@
632
633 OpenBSD-Commit-ID: cacbcac87ce5da0d3ca7ef1b38a6f7fb349e4417
634
635commit d70d061828730a56636ab6f1f24fe4a8ccefcfc1
636Author: djm@openbsd.org <djm@openbsd.org>
637Date: Wed Sep 12 01:36:45 2018 +0000
638
639 upstream: Include certs with multiple RSA signature variants in
640
641 test data Ensure that cert->signature_key is populated correctly
642
643 OpenBSD-Regress-ID: 56e68f70fe46cb3a193ca207385bdb301fd6603a
644
645commit f803b2682992cfededd40c91818b653b5d923ef5
646Author: djm@openbsd.org <djm@openbsd.org>
647Date: Wed Sep 12 01:23:48 2018 +0000
648
649 upstream: test revocation by explicit hash and by fingerprint
650
651 OpenBSD-Regress-ID: 079c18a9ab9663f4af419327c759fc1e2bc78fd8
652
653commit 2de78bc7da70e1338b32feeefcc6045cf49efcd4
654Author: djm@openbsd.org <djm@openbsd.org>
655Date: Wed Sep 12 01:22:43 2018 +0000
656
657 upstream: s/sshkey_demote/sshkey_from_private/g
658
659 OpenBSD-Regress-ID: 782bde7407d94a87aa8d1db7c23750e09d4443c4
660
661commit 41c115a5ea1cb79a6a3182773c58a23f760e8076
662Author: Damien Miller <djm@mindrot.org>
663Date: Wed Sep 12 16:50:01 2018 +1000
664
665 delete the correct thing; kexfuzz binary
666
667commit f0fcd7e65087db8c2496f13ed39d772f8e38b088
668Author: djm@openbsd.org <djm@openbsd.org>
669Date: Wed Sep 12 06:18:59 2018 +0000
670
671 upstream: fix edit mistake; spotted by jmc@
672
673 OpenBSD-Commit-ID: dd724e1c52c9d6084f4cd260ec7e1b2b138261c6
674
675commit 4cc259bac699f4d2a5c52b92230f9e488c88a223
676Author: djm@openbsd.org <djm@openbsd.org>
677Date: Wed Sep 12 01:34:02 2018 +0000
678
679 upstream: add SSH_ALLOWED_CA_SIGALGS - the default list of
680
681 signature algorithms that are allowed for CA signatures. Notably excludes
682 ssh-dsa.
683
684 ok markus@
685
686 OpenBSD-Commit-ID: 1628e4181dc8ab71909378eafe5d06159a22deb4
687
688commit ba9e788315b1f6a350f910cb2a9e95b2ce584e89
689Author: djm@openbsd.org <djm@openbsd.org>
690Date: Wed Sep 12 01:32:54 2018 +0000
691
692 upstream: add sshkey_check_cert_sigtype() that checks a
693
694 cert->signature_type against a supplied whitelist; ok markus
695
696 OpenBSD-Commit-ID: caadb8073292ed7a9535e5adc067d11d356d9302
697
698commit a70fd4ad7bd9f2ed223ff635a3d41e483057f23b
699Author: djm@openbsd.org <djm@openbsd.org>
700Date: Wed Sep 12 01:31:30 2018 +0000
701
702 upstream: add cert->signature_type field and keep it in sync with
703
704 certificate signature wrt loading and certification operations; ok markus@
705
706 OpenBSD-Commit-ID: e8b8b9f76b66707a0cd926109c4383db8f664df3
707
708commit 357128ac48630a9970e3af0e6ff820300a28da47
709Author: djm@openbsd.org <djm@openbsd.org>
710Date: Wed Sep 12 01:30:10 2018 +0000
711
712 upstream: Add "ssh -Q sig" to allow listing supported signature
713
714 algorithms ok markus@
715
716 OpenBSD-Commit-ID: 7a8c6eb6c249dc37823ba5081fce64876d10fe2b
717
718commit 9405c6214f667be604a820c6823b27d0ea77937d
719Author: djm@openbsd.org <djm@openbsd.org>
720Date: Wed Sep 12 01:21:34 2018 +0000
721
722 upstream: allow key revocation by SHA256 hash and allow ssh-keygen
723
724 to create KRLs using SHA256/base64 key fingerprints; ok markus@
725
726 OpenBSD-Commit-ID: a0590fd34e7f1141f2873ab3acc57442560e6a94
727
728commit 50e2687ee0941c0ea216d6ffea370ffd2c1f14b9
729Author: djm@openbsd.org <djm@openbsd.org>
730Date: Wed Sep 12 01:19:12 2018 +0000
731
732 upstream: log certificate fingerprint in authentication
733
734 success/failure message (previously we logged only key ID and CA key
735 fingerprint).
736
737 ok markus@
738
739 OpenBSD-Commit-ID: a8ef2d172b7f1ddbcce26d6434b2de6d94f6c05d
740
741commit de37ca909487d23e5844aca289b3f5e75d3f1e1f
742Author: dtucker@openbsd.org <dtucker@openbsd.org>
743Date: Fri Sep 7 04:26:56 2018 +0000
744
745 upstream: Add FALLTHROUGH comments where appropriate. Patch from
746
747 jjelen at redhat via bz#2687.
748
749 OpenBSD-Commit-ID: c48eb457be697a19d6d2950c6d0879f3ccc851d3
750
751commit 247766cd3111d5d8c6ea39833a3257ca8fb820f2
752Author: djm@openbsd.org <djm@openbsd.org>
753Date: Fri Sep 7 01:42:54 2018 +0000
754
755 upstream: ssh -MM requires confirmation for all operations that
756
757 change the multiplexing state, not just new sessions.
758
759 mention that confirmation is checked via ssh-askpass
760
761 OpenBSD-Commit-ID: 0f1b45551ebb9cc5c9a4fe54ad3b23ce90f1f5c2
762
763commit db8bb80e3ac1bcb3e1305d846cd98c6b869bf03f
764Author: mestre@openbsd.org <mestre@openbsd.org>
765Date: Tue Aug 28 12:25:53 2018 +0000
766
767 upstream: fix misplaced parenthesis inside if-clause. it's harmless
768
769 and the only issue is showing an unknown error (since it's not defined)
770 during fatal(), if it ever an error occurs inside that condition.
771
772 OK deraadt@ markus@ djm@
773
774 OpenBSD-Commit-ID: acb0a8e6936bfbe590504752d01d1d251a7101d8
775
776commit 086cc614f550b7d4f100c95e472a6b6b823938ab
777Author: mestre@openbsd.org <mestre@openbsd.org>
778Date: Tue Aug 28 12:17:45 2018 +0000
779
780 upstream: fix build with DEBUG_PK enabled
781
782 OK dtucker@
783
784 OpenBSD-Commit-ID: ec1568cf27726e9638a0415481c20c406e7b441c
785
786commit 2678833013e97f8b18f09779b7f70bcbf5eb2ab2
787Author: Darren Tucker <dtucker@dtucker.net>
788Date: Fri Sep 7 14:41:53 2018 +1000
789
790 Handle ngroups>_SC_NGROUPS_MAX.
791
792 Based on github pull request #99 from Darren Maffat at Oracle: Solaris'
793 getgrouplist considers _SC_NGROUPS_MAX more of a guideline and can return
794 a larger number of groups. In this case, retry getgrouplist with a
795 larger array and defer allocating groups_byname. ok djm@
796
797commit 039bf2a81797b8f3af6058d34005a4896a363221
798Author: Darren Tucker <dtucker@dtucker.net>
799Date: Fri Sep 7 14:06:57 2018 +1000
800
801 Initial len for the fmt=NULL case.
802
803 Patch from jjelen at redhat via bz#2687. (OpenSSH never calls
804 setproctitle with a null format so len is always initialized).
805
806commit ea9c06e11d2e8fb2f4d5e02f8a41e23d2bd31ca9
807Author: Darren Tucker <dtucker@dtucker.net>
808Date: Fri Sep 7 14:01:39 2018 +1000
809
810 Include stdlib.h.
811
812 Patch from jjelen at redhat via bz#2687.
813
814commit 9617816dbe73ec4d65075f4d897443f63a97c87f
815Author: Damien Miller <djm@mindrot.org>
816Date: Mon Aug 27 13:08:01 2018 +1000
817
818 document some more regress control env variables
819
820 Specifically SKIP_UNIT, USE_VALGRING and LTESTS. Sort the list of
821 environment variables.
822
823 Based on patch from Jakub Jelen
824
825commit 71508e06fab14bc415a79a08f5535ad7bffa93d9
826Author: Damien Miller <djm@mindrot.org>
827Date: Thu Aug 23 15:41:42 2018 +1000
828
829 shorten temporary SSH_REGRESS_TMP path
830
831 Previous path was exceeding max socket length on at least one platform (OSX)
832
833commit 26739cf5bdc9030a583b41ae5261dedd862060f0
834Author: Damien Miller <djm@mindrot.org>
835Date: Thu Aug 23 13:06:02 2018 +1000
836
837 rebuild dependencies
838
839commit ff729025c7463cf5d0a8d1ca1823306e48c6d4cf
840Author: Damien Miller <djm@mindrot.org>
841Date: Thu Aug 23 13:03:32 2018 +1000
842
843 fix path in distclean target
844
845 Patch from Jakub Jelen
846
847commit 7fef173c28f7462dcd8ee017fdf12b5073f54c02
848Author: djm@openbsd.org <djm@openbsd.org>
849Date: Thu Aug 23 03:01:08 2018 +0000
850
851 upstream: memleak introduced in r1.83; from Colin Watson
852
853 OpenBSD-Commit-ID: 5c019104c280cbd549a264a7217b67665e5732dc
854
855commit b8ae02a2896778b8984c7f51566c7f0f56fa8b56
856Author: schwarze@openbsd.org <schwarze@openbsd.org>
857Date: Tue Aug 21 13:56:27 2018 +0000
858
859 upstream: AIX reports the CODESET as "ISO8859-1" in the POSIX locale.
860
861 Treating that as a safe encoding is OK because even when other systems return
862 that string for real ISO8859-1, it is still safe in the sense that it is
863 ASCII-compatible and stateless.
864
865 Issue reported by Val dot Baranov at duke dot edu. Additional
866 information provided by Michael dot Felt at felt dot demon dot nl.
867 Tested by Michael Felt on AIX 6.1 and by Val Baranov on AIX 7.1.
868 Tweak and OK djm@.
869
870 OpenBSD-Commit-ID: 36f1210e0b229817d10eb490d6038f507b8256a7
871
872commit bc44ee088ad269d232e514f037c87ada4c2fd3f0
873Author: Tim Rice <tim@multitalents.net>
874Date: Tue Aug 21 08:57:24 2018 -0700
875
876 modified: openbsd-compat/port-uw.c
877 remove obsolete and un-needed include
878
879commit 829fc28a9c54e3f812ee7248c7a3e31eeb4f0b3a
880Author: Damien Miller <djm@mindrot.org>
881Date: Mon Aug 20 15:57:29 2018 +1000
882
883 Missing unistd.h for regress/mkdtemp.c
884
885commit c8313e492355a368a91799131520d92743d8d16c
886Author: Damien Miller <djm@mindrot.org>
887Date: Fri Aug 17 05:45:20 2018 +1000
888
889 update version numbers in anticipation of release
890
891commit 477b49a34b89f506f4794b35e3c70b3e2e83cd38
892Author: Corinna Vinschen <vinschen@redhat.com>
893Date: Mon Aug 13 17:08:51 2018 +0200
894
895 configure: work around GCC shortcoming on Cygwin
896
897 Cygwin's latest 7.x GCC allows to specify -mfunction-return=thunk
898 as well as -mindirect-branch=thunk on the command line, albeit
899 producing invalid code, leading to an error at link stage.
900
901 The check in configure.ac only checks if the option is present,
902 but not if it produces valid code.
903
904 This patch fixes it by special-casing Cygwin. Another solution
905 may be to change these to linker checks.
906
907 Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
908
909commit b0917945efa374be7648d67dbbaaff323ab39edc
910Author: Corinna Vinschen <vinschen@redhat.com>
911Date: Mon Aug 13 17:05:05 2018 +0200
912
913 cygwin: add missing stdarg.h include
914
915 Further header file standarization in Cygwin uncovered a lazy
916 indirect include in bsd-cygwin_util.c
917
918 Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
919
920commit c3903c38b0fd168ab3d925c2b129d1a599593426
921Author: djm@openbsd.org <djm@openbsd.org>
922Date: Mon Aug 13 02:41:05 2018 +0000
923
924 upstream: revert compat.[ch] section of the following change. It
925
926 causes double-free under some circumstances.
927
928 --
929
930 date: 2018/07/31 03:07:24; author: djm; state: Exp; lines: +33 -18; commitid: f7g4UI8eeOXReTPh;
931 fix some memory leaks spotted by Coverity via Jakub Jelen in bz#2366
932 feedback and ok dtucker@
933
934 OpenBSD-Commit-ID: 1e77547f60fdb5e2ffe23e2e4733c54d8d2d1137
935
936commit 1b9dd4aa15208100fbc3650f33ea052255578282
937Author: djm@openbsd.org <djm@openbsd.org>
938Date: Sun Aug 12 20:19:13 2018 +0000
939
940 upstream: better diagnosics on alg list assembly errors; ok
941
942 deraadt@ markus@
943
944 OpenBSD-Commit-ID: 5a557e74b839daf13cc105924d2af06a1560faee
945
946commit e36a5f61b0f5bebf6d49c215d228cd99dfe86e28
947Author: Damien Miller <djm@mindrot.org>
948Date: Sat Aug 11 18:08:45 2018 -0700
949
950 Some AIX fixes; report from Michael Felt
951
952commit 2f4766ceefe6657c5ad5fe92d13c411872acae0e
953Author: dtucker@openbsd.org <dtucker@openbsd.org>
954Date: Fri Aug 10 01:35:49 2018 +0000
955
956 upstream: The script that cooks up PuTTY format host keys does not
957
958 understand the new key format so convert back to old format to create the
959 PuTTY key and remove it once done.
960
961 OpenBSD-Regress-ID: 2a449a18846c3a144bc645135b551ba6177e38d3
962
963commit e1b26ce504662a5d5b991091228984ccfd25f280
964Author: djm@openbsd.org <djm@openbsd.org>
965Date: Fri Aug 10 00:44:01 2018 +0000
966
967 upstream: improve
968
969 OpenBSD-Commit-ID: 40d839db0977b4e7ac8b647b16d5411d4faf2f60
970
971commit 7c712966a3139622f7fb55045368d05de4e6782c
972Author: djm@openbsd.org <djm@openbsd.org>
973Date: Fri Aug 10 00:42:29 2018 +0000
974
975 upstream: Describe pubkey format, prompted by bz#2853
976
977 While I'm here, describe and link to the remaining local PROTOCOL.*
978 docs that weren't already mentioned (PROTOCOL.key, PROTOCOL.krl and
979 PROTOCOL.mux)
980
981 OpenBSD-Commit-ID: 2a900f9b994ba4d53e7aeb467d44d75829fd1231
982
983commit ef100a2c5a8ed83afac0b8f36520815803da227a
984Author: djm@openbsd.org <djm@openbsd.org>
985Date: Fri Aug 10 00:27:15 2018 +0000
986
987 upstream: fix numbering
988
989 OpenBSD-Commit-ID: bc7a1764dff23fa4c5ff0e3379c9c4d5b63c9596
990
991commit ed7bd5d93fe14c7bd90febd29b858ea985d14d45
992Author: djm@openbsd.org <djm@openbsd.org>
993Date: Wed Aug 8 01:16:01 2018 +0000
994
995 upstream: Use new private key format by default. This format is
996
997 suported by OpenSSH >= 6.5 (released January 2014), so it should be supported
998 by most OpenSSH versions in active use.
999
1000 It is possible to convert new-format private keys to the older
1001 format using "ssh-keygen -f /path/key -pm PEM".
1002
1003 ok deraadt dtucker
1004
1005 OpenBSD-Commit-ID: e3bd4f2509a2103bfa2f710733426af3ad6d8ab8
1006
1007commit 967226a1bdde59ea137e8f0df871854ff7b91366
1008Author: djm@openbsd.org <djm@openbsd.org>
1009Date: Sat Aug 4 00:55:06 2018 +0000
1010
1011 upstream: invalidate dh->priv_key after freeing it in error path;
1012
1013 avoids unlikely double-free later. Reported by Viktor Dukhovni via
1014 https://github.com/openssh/openssh-portable/pull/96 feedback jsing@ tb@
1015
1016 OpenBSD-Commit-ID: e317eb17c3e05500ae851f279ef6486f0457c805
1017
1018commit 74287f5df9966a0648b4a68417451dd18f079ab8
1019Author: djm@openbsd.org <djm@openbsd.org>
1020Date: Tue Jul 31 03:10:27 2018 +0000
1021
1022 upstream: delay bailout for invalid authentic
1023
1024 =?UTF-8?q?ating=20user=20until=20after=20the=20packet=20containing=20the?=
1025 =?UTF-8?q?=20request=20has=20been=20fully=20parsed.=20Reported=20by=20Dar?=
1026 =?UTF-8?q?iusz=20Tytko=20and=20Micha=C5=82=20Sajdak;=20ok=20deraadt?=
1027 MIME-Version: 1.0
1028 Content-Type: text/plain; charset=UTF-8
1029 Content-Transfer-Encoding: 8bit
1030
1031 OpenBSD-Commit-ID: b4891882fbe413f230fe8ac8a37349b03bd0b70d
1032
1033commit 1a66079c0669813306cc69e5776a4acd9fb49015
1034Author: djm@openbsd.org <djm@openbsd.org>
1035Date: Tue Jul 31 03:07:24 2018 +0000
1036
1037 upstream: fix some memory leaks spotted by Coverity via Jakub Jelen
1038
1039 in bz#2366 feedback and ok dtucker@
1040
1041 OpenBSD-Commit-ID: 8402bbae67d578bedbadb0ce68ff7c5a136ef563
1042
1043commit 87f08be054b7eeadbb9cdeb3fb4872be79ccf218
1044Author: Damien Miller <djm@mindrot.org>
1045Date: Fri Jul 20 13:18:28 2018 +1000
1046
1047 Remove support for S/Key
1048
1049 Most people will 1) be using modern multi-factor authentication methods
1050 like TOTP/OATH etc and 2) be getting support for multi-factor
1051 authentication via PAM or BSD Auth.
1052
1053commit 5d14019ba2ff54acbfd20a6b9b96bb860a8c7c31
1054Author: markus@openbsd.org <markus@openbsd.org>
1055Date: Fri Jul 27 12:03:17 2018 +0000
1056
1057 upstream: avoid expensive channel_open_message() calls; ok djm@
1058
1059 OpenBSD-Commit-ID: aea3b5512ad681cd8710367d743e8a753d4425d9
1060
1061commit e655ee04a3cb7999dbf9641b25192353e2b69418
1062Author: dtucker@openbsd.org <dtucker@openbsd.org>
1063Date: Fri Jul 27 05:34:42 2018 +0000
1064
1065 upstream: Now that ssh can't be setuid, remove the
1066
1067 original_real_uid and original_effective_uid globals and replace with calls
1068 to plain getuid(). ok djm@
1069
1070 OpenBSD-Commit-ID: 92561c0cd418d34e6841e20ba09160583e27b68c
1071
1072commit 73ddb25bae4c33a0db361ac13f2e3a60d7c6c4a5
1073Author: dtucker@openbsd.org <dtucker@openbsd.org>
1074Date: Fri Jul 27 05:13:02 2018 +0000
1075
1076 upstream: Remove uid checks from low port binds. Now that ssh
1077
1078 cannot be setuid and sshd always has privsep on, we can remove the uid checks
1079 for low port binds and just let the system do the check. We leave a sanity
1080 check for the !privsep case so long as the code is stil there. with & ok
1081 djm@
1082
1083 OpenBSD-Commit-ID: 9535cfdbd1cd54486fdbedfaee44ce4367ec7ca0
1084
1085commit c12033e102760d043bc5c98e6c8180e4d331b0df
1086Author: dtucker@openbsd.org <dtucker@openbsd.org>
1087Date: Fri Jul 27 03:55:22 2018 +0000
1088
1089 upstream: ssh(1) no longer supports being setuid root. Remove reference
1090
1091 to crc32 which went with protocol 1. Pointed out by deraadt@.
1092
1093 OpenBSD-Commit-ID: f8763c25fd96ed91dd1abdab5667fd2e27e377b6
1094
1095commit 4492e2ec4e1956a277ef507f51d66e5c2aafaaf8
1096Author: Damien Miller <djm@mindrot.org>
1097Date: Fri Jul 27 14:15:28 2018 +1000
1098
1099 correct snprintf truncation check in closefrom()
1100
1101 Truncation cannot happen unless the system has set PATH_MAX to some
1102 nonsensically low value.
1103
1104 bz#2862, patch from Daniel Le
1105
1106commit 149cab325a8599a003364ed833f878449c15f259
1107Author: Darren Tucker <dtucker@dtucker.net>
1108Date: Fri Jul 27 13:46:06 2018 +1000
1109
1110 Include stdarg.h in mkdtemp for va_list.
1111
1112commit 6728f31bdfdc864d192773c32465b1860e23f556
1113Author: deraadt@openbsd.org <deraadt@openbsd.org>
1114Date: Wed Jul 25 17:12:35 2018 +0000
1115
1116 upstream: Don't redefine Makefile choices which come correct from
1117
1118 bsd.*.mk ok markus
1119
1120 OpenBSD-Commit-ID: 814b2f670df75759e1581ecef530980b2b3d7e0f
1121
1122commit 21fd477a855753c1a8e450963669e28e39c3b5d2
1123Author: deraadt@openbsd.org <deraadt@openbsd.org>
1124Date: Wed Jul 25 13:56:23 2018 +0000
1125
1126 upstream: fix indent; Clemens Goessnitzer
1127
1128 OpenBSD-Commit-ID: b5149a6d92b264d35f879d24608087b254857a83
1129
1130commit 8e433c2083db8664c41499ee146448ea7ebe7dbf
1131Author: beck@openbsd.org <beck@openbsd.org>
1132Date: Wed Jul 25 13:10:56 2018 +0000
1133
1134 upstream: Use the caller provided (copied) pwent struct in
1135
1136 load_public_identity_files instead of calling getpwuid() again and discarding
1137 the argument. This prevents a client crash where tilde_expand_filename calls
1138 getpwuid() again before the pwent pointer is used. Issue noticed and reported
1139 by Pierre-Olivier Martel <pom@apple.com> ok djm@ deraadt@
1140
1141 OpenBSD-Commit-ID: a067d74b5b098763736c94cc1368de8ea3f0b157
1142
1143commit e2127abb105ae72b6fda64fff150e6b24b3f1317
1144Author: jmc@openbsd.org <jmc@openbsd.org>
1145Date: Mon Jul 23 19:53:55 2018 +0000
1146
1147 upstream: oops, failed to notice that SEE ALSO got messed up;
1148
1149 OpenBSD-Commit-ID: 61c1306542cefdc6e59ac331751afe961557427d
1150
1151commit ddf1b797c2d26bbbc9d410aa4f484cbe94673587
1152Author: kn@openbsd.org <kn@openbsd.org>
1153Date: Mon Jul 23 19:02:49 2018 +0000
1154
1155 upstream: Point to glob in section 7 for the actual list of special
1156
1157 characters instead the C API in section 3.
1158
1159 OK millert jmc nicm, "the right idea" deraadt
1160
1161 OpenBSD-Commit-ID: a74fd215488c382809e4d041613aeba4a4b1ffc6
1162
1163commit 01c98d9661d0ed6156e8602b650f72eed9fc4d12
1164Author: dtucker@openbsd.org <dtucker@openbsd.org>
1165Date: Sun Jul 22 12:16:59 2018 +0000
1166
1167 upstream: Switch authorized_keys example from ssh-dss to ssh-rsa
1168
1169 since the former is no longer enabled by default. Pointed out by Daniel A.
1170 Maierhofer, ok jmc
1171
1172 OpenBSD-Commit-ID: 6a196cef53d7524e0c9b58cdbc1b5609debaf8c7
1173
1174commit 472269f8fe19343971c2d08f504ab5cbb8234b33
1175Author: djm@openbsd.org <djm@openbsd.org>
1176Date: Fri Jul 20 05:01:10 2018 +0000
1177
1178 upstream: slightly-clearer description for AuthenticationMethods - the
1179
1180 lists have comma-separated elements; bz#2663 from Hans Meier
1181
1182 OpenBSD-Commit-ID: 931c983d0fde4764d0942fb2c2b5017635993b5a
1183
1184commit c59aca8adbdf7f5597084ad360a19bedb3f80970
1185Author: Damien Miller <djm@mindrot.org>
1186Date: Fri Jul 20 14:53:42 2018 +1000
1187
1188 Create control sockets in clean temp directories
1189
1190 Adds a regress/mkdtemp tool and uses it to create empty temp
1191 directories for tests needing control sockets.
1192
1193 Patch from Colin Watson via bz#2660; ok dtucker
1194
1195commit 6ad8648e83e4f4ace37b742a05c2a6b6b872514e
1196Author: djm@openbsd.org <djm@openbsd.org>
1197Date: Fri Jul 20 03:46:34 2018 +0000
1198
1199 upstream: remove unused zlib.h
1200
1201 OpenBSD-Commit-ID: 8d274a9b467c7958df12668b49144056819f79f1
1202
1203commit 3ba6e6883527fe517b6e4a824876e2fe62af22fc
1204Author: dtucker@openbsd.org <dtucker@openbsd.org>
1205Date: Thu Jul 19 23:03:16 2018 +0000
1206
1207 upstream: Fix typo in comment. From Alexandru Iacob via github.
1208
1209 OpenBSD-Commit-ID: eff4ec07c6c8c5483533da43a4dda37d72ef7f1d
1210
1211commit c77bc73c91bc656e343a1961756e09dd1b170820
1212Author: Darren Tucker <dtucker@dtucker.net>
1213Date: Fri Jul 20 13:48:51 2018 +1000
1214
1215 Explicitly include openssl before zlib.
1216
1217 Some versions of OpenSSL have "free_func" in their headers, which zlib
1218 typedefs. Including openssl after zlib (eg via sshkey.h) results in
1219 "syntax error before `free_func'", which this fixes.
1220
1221commit 95d41e90eafcd1286a901e8e361e4a37b98aeb52
1222Author: dtucker@openbsd.org <dtucker@openbsd.org>
1223Date: Thu Jul 19 10:28:47 2018 +0000
1224
1225 upstream: Deprecate UsePrivilegedPort now that support for running
1226
1227 ssh(1) setuid has been removed, remove supporting code and clean up
1228 references to it in the man pages
1229
1230 We have not shipped ssh(1) the setuid bit since 2002. If ayone
1231 really needs to make connections from a low port number this can
1232 be implemented via a small setuid ProxyCommand.
1233
1234 ok markus@ jmc@ djm@
1235
1236 OpenBSD-Commit-ID: d03364610b7123ae4c6792f5274bd147b6de717e
1237
1238commit 258dc8bb07dfb35a46e52b0822a2c5b7027df60a
1239Author: dtucker@openbsd.org <dtucker@openbsd.org>
1240Date: Wed Jul 18 11:34:04 2018 +0000
1241
1242 upstream: Remove support for running ssh(1) setuid and fatal if
1243
1244 attempted. Do not link uidwap.c into ssh any more. Neuters
1245 UsePrivilegedPort, which will be marked as deprecated shortly. ok markus@
1246 djm@
1247
1248 OpenBSD-Commit-ID: c4ba5bf9c096f57a6ed15b713a1d7e9e2e373c42
1249
1250commit ac590760b251506b0a152551abbf8e8d6dc2f527
1251Author: dtucker@openbsd.org <dtucker@openbsd.org>
1252Date: Mon Jul 16 22:25:01 2018 +0000
1253
1254 upstream: Slot 0 in the hostbased key array was previously RSA1,
1255
1256 but that is now gone and the slot is unused so remove it. Remove two
1257 now-unused macros, and add an array bounds check to the two remaining ones
1258 (array is statically sized, so mostly a safety check on future changes). ok
1259 markus@
1260
1261 OpenBSD-Commit-ID: 2e4c0ca6cc1d8daeccead2aa56192a3f9d5e1e7a
1262
1263commit 26efc2f5df0e3bcf6a6bbdd0506fd682d60c2145
1264Author: dtucker@openbsd.org <dtucker@openbsd.org>
1265Date: Mon Jul 16 11:05:41 2018 +0000
1266
1267 upstream: Remove support for loading HostBasedAuthentication keys
1268
1269 directly in ssh(1) and always use ssh-keysign. This removes one of the few
1270 remaining reasons why ssh(1) might be setuid. ok markus@
1271
1272 OpenBSD-Commit-ID: 97f01e1448707129a20d75f86bad5d27c3cf0b7d
1273
1274commit 3eb7f1038d17af7aea3c2c62d1e30cd545607640
1275Author: djm@openbsd.org <djm@openbsd.org>
1276Date: Mon Jul 16 07:06:50 2018 +0000
1277
1278 upstream: keep options.identity_file_userprovided array in sync when we
1279
1280 load keys, fixing some spurious error messages; ok markus
1281
1282 OpenBSD-Commit-ID: c63e3d5200ee2cf9e35bda98de847302566c6a00
1283
1284commit 2f131e1b34502aa19f345e89cabf6fa3fc097f09
1285Author: djm@openbsd.org <djm@openbsd.org>
1286Date: Mon Jul 16 03:09:59 2018 +0000
1287
1288 upstream: memleak in unittest; found by valgrind
1289
1290 OpenBSD-Regress-ID: 168c23b0fb09fc3d0b438628990d3fd9260a8a5e
1291
1292commit de2997a4cf22ca0a524f0e5b451693c583e2fd89
1293Author: djm@openbsd.org <djm@openbsd.org>
1294Date: Mon Jul 16 03:09:13 2018 +0000
1295
1296 upstream: memleaks; found by valgrind
1297
1298 OpenBSD-Commit-ID: 6c3ba22be53e753c899545f771e8399fc93cd844
1299
1300commit 61cc0003eb37fa07603c969c12b7c795caa498f3
1301Author: Darren Tucker <dtucker@dtucker.net>
1302Date: Sat Jul 14 16:49:01 2018 +1000
1303
1304 Undef a few new macros in sys-queue.h.
1305
1306 Prevents macro redefinition warnings on OSX.
1307
1308commit 30a2c213877a54a44dfdffb6ca8db70be5b457e0
1309Author: Darren Tucker <dtucker@dtucker.net>
1310Date: Fri Jul 13 13:40:20 2018 +1000
1311
1312 Include unistd.h for geteuid declaration.
1313
1314commit 1dd32c23f2a85714dfafe2a9cc516971d187caa4
1315Author: Darren Tucker <dtucker@dtucker.net>
1316Date: Fri Jul 13 13:38:10 2018 +1000
1317
1318 Fallout from buffer conversion in AUDIT_EVENTS.
1319
1320 Supply missing "int r" and fix error path for sshbuf_new().
1321
1322commit 7449c178e943e5c4f6c8416a4e41d93b70c11c9e
1323Author: djm@openbsd.org <djm@openbsd.org>
1324Date: Fri Jul 13 02:13:50 2018 +0000
1325
1326 upstream: make this use ssh_proxy rather than starting/stopping a
1327
1328 daemon for each testcase
1329
1330 OpenBSD-Regress-ID: 608b7655ea65b1ba8fff5a13ce9caa60ef0c8166
1331
1332commit dbab02f9208d9baa134cec1d007054ec82b96ca9
1333Author: djm@openbsd.org <djm@openbsd.org>
1334Date: Fri Jul 13 02:13:19 2018 +0000
1335
1336 upstream: fix leaks in unit test; with this, all unit tests are
1337
1338 leak free (as far as valgrind can spot anyway)
1339
1340 OpenBSD-Regress-ID: b824d8b27998365379963440e5d18b95ca03aa17
1341
1342commit 2f6accff5085eb79b0dbe262d8b85ed017d1a51c
1343Author: Damien Miller <djm@mindrot.org>
1344Date: Fri Jul 13 11:39:25 2018 +1000
1345
1346 Enable leak checks for unit tests with valgrind
1347
1348 Leave the leak checking on unconditionally when running with valgrind.
1349 The unit tests are leak-free and I want them to stay that way.
1350
1351commit e46cfbd9db5e907b821bf4fd0184d4dab99815ee
1352Author: Damien Miller <djm@mindrot.org>
1353Date: Fri Jul 13 11:38:59 2018 +1000
1354
1355 increase timeout to match cfgmatch.sh
1356
1357 lets test pass under valgrind (on my workstation at least)
1358
1359commit 6aa1bf475cf3e7a2149acc5a1e80e904749f064c
1360Author: Damien Miller <djm@mindrot.org>
1361Date: Thu Jul 12 14:54:18 2018 +1000
1362
1363 rm regress/misc/kexfuzz/*.o in distclean target
1364
1365commit eef1447ddb559c03725a23d4aa6d03f40e8b0049
1366Author: Damien Miller <djm@mindrot.org>
1367Date: Thu Jul 12 14:49:26 2018 +1000
1368
1369 repair !WITH_OPENSSL build
1370
1371commit 4d3b2f36fd831941d1627ac587faae37b6d3570f
1372Author: Damien Miller <djm@mindrot.org>
1373Date: Thu Jul 12 14:49:14 2018 +1000
1374
1375 missing headers
1376
1377commit 3f420a692b293921216549c1099c2e46ff284eae
1378Author: Darren Tucker <dtucker@dtucker.net>
1379Date: Thu Jul 12 14:57:46 2018 +1000
1380
1381 Remove key.h from portable files too.
1382
1383 Commit 5467fbcb removed key.h so stop including it in portable files
1384 too. Fixes builds on lots of platforms.
1385
1386commit e2c4af311543093f16005c10044f7e06af0426f0
1387Author: djm@openbsd.org <djm@openbsd.org>
1388Date: Thu Jul 12 04:35:25 2018 +0000
1389
1390 upstream: remove prototype to long-gone function
1391
1392 OpenBSD-Commit-ID: 0414642ac7ce01d176b9f359091a66a8bbb640bd
1393
1394commit 394a842e60674bf8ee5130b9f15b01452a0b0285
1395Author: markus@openbsd.org <markus@openbsd.org>
1396Date: Wed Jul 11 18:55:11 2018 +0000
1397
1398 upstream: treat ssh_packet_write_wait() errors as fatal; ok djm@
1399
1400 OpenBSD-Commit-ID: f88ba43c9d54ed2d911218aa8d3f6285430629c3
1401
1402commit 5467fbcb09528ecdcb914f4f2452216c24796790
1403Author: markus@openbsd.org <markus@openbsd.org>
1404Date: Wed Jul 11 18:53:29 2018 +0000
1405
1406 upstream: remove legacy key emulation layer; ok djm@
1407
1408 OpenBSD-Commit-ID: 2b1f9619259e222bbd4fe9a8d3a0973eafb9dd8d
1409
1410commit 5dc4c59d5441a19c99e7945779f7ec9051126c25
1411Author: martijn@openbsd.org <martijn@openbsd.org>
1412Date: Wed Jul 11 08:19:35 2018 +0000
1413
1414 upstream: s/wuth/with/ in comment
1415
1416 OpenBSD-Commit-ID: 9de41468afd75f54a7f47809d2ad664aa577902c
1417
1418commit 1c688801e9dd7f9889fb2a29bc2b6fbfbc35a11f
1419Author: Darren Tucker <dtucker@dtucker.net>
1420Date: Wed Jul 11 12:12:38 2018 +1000
1421
1422 Include stdlib.h for declaration of free.
1423
1424 Fixes build with -Werror on at least Fedora and probably others.
1425
1426commit fccfa239def497615f92ed28acc57cfe63da3666
1427Author: Damien Miller <djm@mindrot.org>
1428Date: Wed Jul 11 10:19:56 2018 +1000
1429
1430 VALGRIND_CHECK_LEAKS logic was backwards :(
1431
1432commit 416287d45fcde0a8e66eee8b99aa73bd58607588
1433Author: Darren Tucker <dtucker@dtucker.net>
1434Date: Wed Jul 11 10:10:26 2018 +1000
1435
1436 Fix sshbuf_new error path in skey.
1437
1438commit 7aab109b8b90a353c1af780524f1ac0d3af47bab
1439Author: Darren Tucker <dtucker@dtucker.net>
1440Date: Wed Jul 11 10:06:18 2018 +1000
1441
1442 Supply missing third arg in skey.
1443
1444 During the change to the new buffer api the third arg to
1445 sshbuf_get_cstring was ommitted. Fixes build when configured with skey.
1446
1447commit 380320bb72cc353a901790ab04b6287fd335dc4a
1448Author: Darren Tucker <dtucker@dtucker.net>
1449Date: Wed Jul 11 10:03:34 2018 +1000
1450
1451 Supply some more missing "int r" in skey
1452
1453commit d20720d373d8563ee737d1a45dc5e0804d622dbc
1454Author: Damien Miller <djm@mindrot.org>
1455Date: Wed Jul 11 09:56:36 2018 +1000
1456
1457 disable valgrind memleak checking by default
1458
1459 Add VALGRIND_CHECK_LEAKS knob to turn it back on.
1460
1461commit 79c9d35018f3a5e30ae437880b669aa8636cd3cd
1462Author: Darren Tucker <dtucker@dtucker.net>
1463Date: Wed Jul 11 09:54:00 2018 +1000
1464
1465 Supply missing "int r" in skey code.
1466
1467commit 984bacfaacbbe31c35191b828fb5b5b2f0362c36
1468Author: sf@openbsd.org <sf@openbsd.org>
1469Date: Tue Jul 10 09:36:58 2018 +0000
1470
1471 upstream: re-remove some pre-auth compression bits
1472
1473 This time, make sure to not remove things that are necessary for
1474 pre-auth compression on the client. Add a comment that pre-auth
1475 compression is still supported in the client.
1476
1477 ok markus@
1478
1479 OpenBSD-Commit-ID: 282c6fec7201f18a5c333bbb68d9339734d2f784
1480
1481commit 120a1ec74e8d9d29f4eb9a27972ddd22351ddef9
1482Author: Damien Miller <djm@mindrot.org>
1483Date: Tue Jul 10 19:39:52 2018 +1000
1484
1485 Adapt portable to legacy buffer API removal
1486
1487commit 0f3958c1e6ffb8ea4ba27e2a97a00326fce23246
1488Author: djm@openbsd.org <djm@openbsd.org>
1489Date: Tue Jul 10 09:13:30 2018 +0000
1490
1491 upstream: kerberos/gssapi fixes for buffer removal
1492
1493 OpenBSD-Commit-ID: 1cdf56fec95801e4563c47f21696f04cd8b60c4c
1494
1495commit c74ae8e7c45f325f3387abd48fa7dfef07a08069
1496Author: djm@openbsd.org <djm@openbsd.org>
1497Date: Tue Jul 10 06:45:29 2018 +0000
1498
1499 upstream: buffer.[ch] and bufaux.c are no more
1500
1501 OpenBSD-Commit-ID: d1a1852284e554f39525eb4d4891b207cfb3d3a0
1502
1503commit a881e5a133d661eca923fb0633a03152ab2b70b2
1504Author: djm@openbsd.org <djm@openbsd.org>
1505Date: Tue Jul 10 06:43:52 2018 +0000
1506
1507 upstream: one mention of Buffer that almost got away :)
1508
1509 OpenBSD-Commit-ID: 30d7c27a90b4544ad5dfacf654595710cd499f02
1510
1511commit 49f47e656b60bcd1d1db98d88105295f4b4e600d
1512Author: markus@openbsd.org <markus@openbsd.org>
1513Date: Mon Jul 9 21:59:10 2018 +0000
1514
1515 upstream: replace cast with call to sshbuf_mutable_ptr(); ok djm@
1516
1517 OpenBSD-Commit-ID: 4dfe9d29fa93d9231645c89084f7217304f7ba29
1518
1519commit cb30cd47041edb03476be1c8ef7bc1f4b69d1555
1520Author: markus@openbsd.org <markus@openbsd.org>
1521Date: Mon Jul 9 21:56:06 2018 +0000
1522
1523 upstream: remove legacy buffer API emulation layer; ok djm@
1524
1525 OpenBSD-Commit-ID: 2dd5dc17cbc23195be4299fa93be2707a0e08ad9
1526
1527commit 235c7c4e3bf046982c2d8242f30aacffa01073d1
1528Author: markus@openbsd.org <markus@openbsd.org>
1529Date: Mon Jul 9 21:53:45 2018 +0000
1530
1531 upstream: sshd: switch monitor to sshbuf API; lots of help & ok
1532
1533 djm@
1534
1535 OpenBSD-Commit-ID: d89bd02d33974fd35ca0b8940d88572227b34a48
1536
1537commit b8d9214d969775e409e1408ecdf0d58fad99b344
1538Author: markus@openbsd.org <markus@openbsd.org>
1539Date: Mon Jul 9 21:37:55 2018 +0000
1540
1541 upstream: sshd: switch GSSAPI to sshbuf API; ok djm@
1542
1543 OpenBSD-Commit-ID: e48449ab4be3f006f7ba33c66241b7d652973e30
1544
1545commit c7d39ac8dc3587c5f05bdd5bcd098eb5c201c0c8
1546Author: markus@openbsd.org <markus@openbsd.org>
1547Date: Mon Jul 9 21:35:50 2018 +0000
1548
1549 upstream: sshd: switch authentication to sshbuf API; ok djm@
1550
1551 OpenBSD-Commit-ID: 880aa06bce4b140781e836bb56bec34873290641
1552
1553commit c3cb7790e9efb14ba74b2d9f543ad593b3d55b31
1554Author: markus@openbsd.org <markus@openbsd.org>
1555Date: Mon Jul 9 21:29:36 2018 +0000
1556
1557 upstream: sshd: switch config to sshbuf API; ok djm@
1558
1559 OpenBSD-Commit-ID: 72b02017bac7feac48c9dceff8355056bea300bd
1560
1561commit 2808d18ca47ad3d251836c555f0e22aaca03d15c
1562Author: markus@openbsd.org <markus@openbsd.org>
1563Date: Mon Jul 9 21:26:02 2018 +0000
1564
1565 upstream: sshd: switch loginmsg to sshbuf API; ok djm@
1566
1567 OpenBSD-Commit-ID: f3cb4e54bff15c593602d95cc43e32ee1a4bac42
1568
1569commit 89dd615b8b531979be63f05f9d5624367c9b28e6
1570Author: markus@openbsd.org <markus@openbsd.org>
1571Date: Mon Jul 9 21:20:26 2018 +0000
1572
1573 upstream: ttymodes: switch to sshbuf API; ok djm@
1574
1575 OpenBSD-Commit-ID: 5df340c5965e822c9da21e19579d08dea3cbe429
1576
1577commit f4608a7065480516ab46214f554e5f853fb7870f
1578Author: markus@openbsd.org <markus@openbsd.org>
1579Date: Mon Jul 9 21:18:10 2018 +0000
1580
1581 upstream: client: switch mux to sshbuf API; with & ok djm@
1582
1583 OpenBSD-Commit-ID: 5948fb98d704f9c4e075b92edda64e0290b5feb2
1584
1585commit cecee2d607099a7bba0a84803e2325d15be4277b
1586Author: markus@openbsd.org <markus@openbsd.org>
1587Date: Mon Jul 9 21:03:30 2018 +0000
1588
1589 upstream: client: switch to sshbuf API; ok djm@
1590
1591 OpenBSD-Commit-ID: 60cb0356114acc7625ab85105f6f6a7cd44a8d05
1592
1593commit ff55f4ad898137d4703e7a2bcc81167dfe8e9324
1594Author: markus@openbsd.org <markus@openbsd.org>
1595Date: Mon Jul 9 20:39:28 2018 +0000
1596
1597 upstream: pkcs11: switch to sshbuf API; ok djm@
1598
1599 OpenBSD-Commit-ID: 98cc4e800f1617c51caf59a6cb3006f14492db79
1600
1601commit 168b46f405d6736960ba7930389eecb9b6710b7e
1602Author: sf@openbsd.org <sf@openbsd.org>
1603Date: Mon Jul 9 13:37:10 2018 +0000
1604
1605 upstream: Revert previous two commits
1606
1607 It turns out we still support pre-auth compression on the client.
1608 Therefore revert the previous two commits:
1609
1610 date: 2018/07/06 09:06:14; author: sf; commitid: yZVYKIRtUZWD9CmE;
1611 Rename COMP_DELAYED to COMP_ZLIB
1612
1613 Only delayed compression is supported nowadays.
1614
1615 ok markus@
1616
1617 date: 2018/07/06 09:05:01; author: sf; commitid: rEGuT5UgI9f6kddP;
1618 Remove leftovers from pre-authentication compression
1619
1620 Support for this has been removed in 2016.
1621 COMP_DELAYED will be renamed in a later commit.
1622
1623 ok markus@
1624
1625 OpenBSD-Commit-ID: cdfef526357e4e1483c86cf599491b2dafb77772
1626
1627commit ab39267fa1243d02b6c330615539fc4b21e17dc4
1628Author: sf@openbsd.org <sf@openbsd.org>
1629Date: Fri Jul 6 09:06:14 2018 +0000
1630
1631 upstream: Rename COMP_DELAYED to COMP_ZLIB
1632
1633 Only delayed compression is supported nowadays.
1634
1635 ok markus@
1636
1637 OpenBSD-Commit-ID: 5b1dbaf3d9a4085aaa10fec0b7a4364396561821
1638
1639commit 95db395d2e56a6f868193aead6cadb2493f036c6
1640Author: sf@openbsd.org <sf@openbsd.org>
1641Date: Fri Jul 6 09:05:01 2018 +0000
1642
1643 upstream: Remove leftovers from pre-authentication compression
1644
1645 Support for this has been removed in 2016.
1646 COMP_DELAYED will be renamed in a later commit.
1647
1648 ok markus@
1649
1650 OpenBSD-Commit-ID: 6a99616c832627157113fcb0cf5a752daf2e6b58
1651
1652commit f28a4d5cd24c4aa177e96b4f96957991e552cb70
1653Author: sf@openbsd.org <sf@openbsd.org>
1654Date: Fri Jul 6 09:03:02 2018 +0000
1655
1656 upstream: Remove unused ssh_packet_start_compression()
1657
1658 ok markus@
1659
1660 OpenBSD-Commit-ID: 9d34cf2f59aca5422021ae2857190578187dc2b4
1661
1662commit 872517ddbb72deaff31d4760f28f2b0a1c16358f
1663Author: Darren Tucker <dtucker@dtucker.net>
1664Date: Fri Jul 6 13:32:02 2018 +1000
1665
1666 Defer setting bufsiz in getdelim.
1667
1668 Do not write to bufsiz until we are sure the malloc has succeeded,
1669 in case any callers rely on it (which they shouldn't). ok djm@
1670
1671commit 3deb56f7190a414dc264e21e087a934fa1847283
1672Author: Darren Tucker <dtucker@dtucker.net>
1673Date: Thu Jul 5 13:32:01 2018 +1000
1674
1675 Fix other callers of read_environment_file.
1676
1677 read_environment_file recently gained an extra argument Some platform
1678 specific code also calls it so add the argument to those too. Fixes
1679 build on Solaris and AIX.
1680
1681commit 314908f451e6b2d4ccf6212ad246fa4619c721d3
1682Author: djm@openbsd.org <djm@openbsd.org>
1683Date: Wed Jul 4 13:51:45 2018 +0000
1684
1685 upstream: deal with API rename: match_filter_list() =>
1686
1687 match_filter_blacklist()
1688
1689 OpenBSD-Regress-ID: 2da342be913efeb51806351af906fab01ba4367f
1690
1691commit 89f54cdf6b9cf1cf5528fd33897f1443913ddfb4
1692Author: djm@openbsd.org <djm@openbsd.org>
1693Date: Wed Jul 4 13:51:12 2018 +0000
1694
1695 upstream: exercise new expansion behaviour of
1696
1697 PubkeyAcceptedKeyTypes and, by proxy, test kex_assemble_names()
1698
1699 ok markus@
1700
1701 OpenBSD-Regress-ID: 292978902e14d5729aa87e492dd166c842f72736
1702
1703commit 187633f24c71564e970681c8906df5a6017dcccf
1704Author: djm@openbsd.org <djm@openbsd.org>
1705Date: Tue Jul 3 13:53:26 2018 +0000
1706
1707 upstream: add a comment that could have saved me 45 minutes of wild
1708
1709 goose chasing
1710
1711 OpenBSD-Regress-ID: d469b29ffadd3402c090e21b792d627d46fa5297
1712
1713commit 312d2f2861a2598ed08587cb6c45c0e98a85408f
1714Author: djm@openbsd.org <djm@openbsd.org>
1715Date: Wed Jul 4 13:49:31 2018 +0000
1716
1717 upstream: repair PubkeyAcceptedKeyTypes (and friends) after RSA
1718
1719 signature work - returns ability to add/remove/specify algorithms by
1720 wildcard.
1721
1722 Algorithm lists are now fully expanded when the server/client configs
1723 are finalised, so errors are reported early and the config dumps
1724 (e.g. "ssh -G ...") now list the actual algorithms selected.
1725
1726 Clarify that, while wildcards are accepted in algorithm lists, they
1727 aren't full pattern-lists that support negation.
1728
1729 (lots of) feedback, ok markus@
1730
1731 OpenBSD-Commit-ID: a8894c5c81f399a002f02ff4fe6b4fa46b1f3207
1732
1733commit 303af5803bd74bf05d375c04e1a83b40c30b2be5
1734Author: djm@openbsd.org <djm@openbsd.org>
1735Date: Tue Jul 3 11:43:49 2018 +0000
1736
1737 upstream: some magic for RSA-SHA2 checks
1738
1739 OpenBSD-Regress-ID: e5a9b11368ff6d86e7b25ad10ebe43359b471cd4
1740
1741commit 7d68e262944c1fff1574600fe0e5e92ec8b398f5
1742Author: Damien Miller <djm@mindrot.org>
1743Date: Tue Jul 3 23:27:11 2018 +1000
1744
1745 depend
1746
1747commit b4d4eda633af433d20232cbf7e855ceac8b83fe5
1748Author: djm@openbsd.org <djm@openbsd.org>
1749Date: Tue Jul 3 13:20:25 2018 +0000
1750
1751 upstream: some finesse to fix RSA-SHA2 certificate authentication
1752
1753 for certs hosted in ssh-agent
1754
1755 OpenBSD-Commit-ID: e5fd5edd726137dda2d020e1cdebc464110a010f
1756
1757commit d78b75df4a57e0f92295f24298e5f2930e71c172
1758Author: djm@openbsd.org <djm@openbsd.org>
1759Date: Tue Jul 3 13:07:58 2018 +0000
1760
1761 upstream: check correct variable; unbreak agent keys
1762
1763 OpenBSD-Commit-ID: c36981fdf1f3ce04966d3310826a3e1e6233d93e
1764
1765commit 2f30300c5e15929d0e34013f38d73e857f445e12
1766Author: djm@openbsd.org <djm@openbsd.org>
1767Date: Tue Jul 3 11:42:12 2018 +0000
1768
1769 upstream: crank version number to 7.8; needed for new compat flag
1770
1771 for prior version; part of RSA-SHA2 strictification, ok markus@
1772
1773 OpenBSD-Commit-ID: 84a11fc0efd2674c050712336b5093f5d408e32b
1774
1775commit 4ba0d54794814ec0de1ec87987d0c3b89379b436
1776Author: djm@openbsd.org <djm@openbsd.org>
1777Date: Tue Jul 3 11:39:54 2018 +0000
1778
1779 upstream: Improve strictness and control over RSA-SHA2 signature
1780
1781 In ssh, when an agent fails to return a RSA-SHA2 signature when
1782 requested and falls back to RSA-SHA1 instead, retry the signature to
1783 ensure that the public key algorithm sent in the SSH_MSG_USERAUTH
1784 matches the one in the signature itself.
1785
1786 In sshd, strictly enforce that the public key algorithm sent in the
1787 SSH_MSG_USERAUTH message matches what appears in the signature.
1788
1789 Make the sshd_config PubkeyAcceptedKeyTypes and
1790 HostbasedAcceptedKeyTypes options control accepted signature algorithms
1791 (previously they selected supported key types). This allows these
1792 options to ban RSA-SHA1 in favour of RSA-SHA2.
1793
1794 Add new signature algorithms "rsa-sha2-256-cert-v01@openssh.com" and
1795 "rsa-sha2-512-cert-v01@openssh.com" to force use of RSA-SHA2 signatures
1796 with certificate keys.
1797
1798 feedback and ok markus@
1799
1800 OpenBSD-Commit-ID: c6e9f6d45eed8962ad502d315d7eaef32c419dde
1801
1802commit 95344c257412b51199ead18d54eaed5bafb75617
1803Author: djm@openbsd.org <djm@openbsd.org>
1804Date: Tue Jul 3 10:59:35 2018 +0000
1805
1806 upstream: allow sshd_config PermitUserEnvironment to accept a
1807
1808 pattern-list of whitelisted environment variable names in addition to yes|no.
1809
1810 bz#1800, feedback and ok markus@
1811
1812 OpenBSD-Commit-ID: 77dc2b468e0bf04b53f333434ba257008a1fdf24
1813
1814commit 6f56fe4b9578b0627667f8bce69d4d938a88324c
1815Author: millert@openbsd.org <millert@openbsd.org>
1816Date: Tue Jun 26 11:23:59 2018 +0000
1817
1818 upstream: Fix "WARNING: line 6 disappeared in /etc/moduli, giving up"
1819
1820 when choosing a prime. An extra increment of linenum snuck in as part of the
1821 conversion to getline(). OK djm@ markus@
1822
1823 OpenBSD-Commit-ID: 0019225cb52ed621b71cd9f19ee2e78e57e3dd38
1824
1825commit 1eee79a11c1b3594f055b01e387c49c9a6e80005
1826Author: dtucker@openbsd.org <dtucker@openbsd.org>
1827Date: Mon Jul 2 14:13:30 2018 +0000
1828
1829 upstream: One ampersand is enough to backgroud an process. OpenBSD
1830
1831 doesn't seem to mind, but some platforms in -portable object to the second.
1832
1833 OpenBSD-Regress-ID: d6c3e404871764343761dc25c3bbe29c2621ff74
1834
1835commit 6301e6c787d4e26bfae1119ab4f747bbcaa94e44
1836Author: Darren Tucker <dtucker@dtucker.net>
1837Date: Mon Jul 2 21:16:58 2018 +1000
1838
1839 Add implementation of getline.
1840
1841 Add getline for the benefit of platforms that don't have it. Sourced
1842 from NetBSD (OpenBSD's implementation is a little too chummy with the
1843 internals of FILE).
1844
1845commit 84623e0037628f9992839063151f7a9f5f13099a
1846Author: djm@openbsd.org <djm@openbsd.org>
1847Date: Tue Jun 26 02:02:36 2018 +0000
1848
1849 upstream: whitespace
1850
1851 OpenBSD-Commit-ID: 9276951caf4daf555f6d262e95720e7f79244572
1852
1853commit 90e51d672711c19a36573be1785caf35019ae7a8
1854Author: djm@openbsd.org <djm@openbsd.org>
1855Date: Mon Jun 25 22:28:33 2018 +0000
1856
1857 upstream: fix NULL dereference in open_listen_match_tcpip()
1858
1859 OpenBSD-Commit-ID: c968c1d29e392352383c0f9681fcc1e93620c4a9
1860
1861commit f535ff922a67d9fcc5ee69d060d1b21c8bb01d14
1862Author: jmc@openbsd.org <jmc@openbsd.org>
1863Date: Tue Jun 19 05:36:57 2018 +0000
1864
1865 upstream: spelling;
1866
1867 OpenBSD-Commit-ID: db542918185243bea17202383a581851736553cc
1868
1869commit 80e199d6175904152aafc5c297096c3e18297691
1870Author: djm@openbsd.org <djm@openbsd.org>
1871Date: Tue Jun 19 03:02:17 2018 +0000
1872
1873 upstream: test PermitListen with bare port numbers
1874
1875 OpenBSD-Regress-ID: 4b50a02dfb0ccaca08247f3877c444126ba901b3
1876
1877commit 87ddd676da0f3abd08b778b12b53b91b670dc93c
1878Author: djm@openbsd.org <djm@openbsd.org>
1879Date: Tue Jun 19 02:59:41 2018 +0000
1880
1881 upstream: allow bare port numbers to appear in PermitListen directives,
1882
1883 e.g.
1884
1885 PermitListen 2222 8080
1886
1887 is equivalent to:
1888
1889 PermitListen *:2222 *:8080
1890
1891 Some bonus manpage improvements, mostly from markus@
1892
1893 "looks fine" markus@
1894
1895 OpenBSD-Commit-ID: 6546b0cc5aab7f53d65ad0a348ca0ae591d6dd24
1896
1897commit 26f96ca10ad0ec5da9b05b99de1e1ccea15a11be
1898Author: djm@openbsd.org <djm@openbsd.org>
1899Date: Fri Jun 15 07:01:11 2018 +0000
1900
1901 upstream: invalidate supplemental group cache used by
1902
1903 temporarily_use_uid() when the target uid differs; could cause failure to
1904 read authorized_keys under some configurations. patch by Jakub Jelen via
1905 bz2873; ok dtucker, markus
1906
1907 OpenBSD-Commit-ID: 48a345f0ee90f6c465a078eb5e89566b23abd8a1
1908
1909commit 89a85d724765b6b82e0135ee5a1181fdcccea9c6
1910Author: djm@openbsd.org <djm@openbsd.org>
1911Date: Sun Jun 10 23:45:41 2018 +0000
1912
1913 upstream: unbreak SendEnv; patch from tb@
1914
1915 OpenBSD-Commit-ID: fc808daced813242563b80976e1478de95940056
1916
1917commit acf4260f0951f89c64e1ebbc4c92f451768871ad
1918Author: jmc@openbsd.org <jmc@openbsd.org>
1919Date: Sat Jun 9 06:36:31 2018 +0000
1920
1921 upstream: sort previous;
1922
1923 OpenBSD-Commit-ID: 27d80d8b8ca99bc33971dee905e8ffd0053ec411
1924
1925commit 1678d4236451060b735cb242d2e26e1ac99f0947
1926Author: djm@openbsd.org <djm@openbsd.org>
1927Date: Sat Jun 9 03:18:11 2018 +0000
1928
1929 upstream: slightly better wording re handing of $TERM, from Jakub
1930
1931 Jelen via bz2386
1932
1933 OpenBSD-Commit-ID: 14bea3f069a93c8be66a7b97794255a91fece964
1934
1935commit 28013759f09ed3ebf7e8335e83a62936bd7a7f47
1936Author: djm@openbsd.org <djm@openbsd.org>
1937Date: Sat Jun 9 03:03:10 2018 +0000
1938
1939 upstream: add a SetEnv directive for sshd_config to allow an
1940
1941 administrator to explicitly specify environment variables set in sessions
1942 started by sshd. These override the default environment and any variables set
1943 by user configuration (PermitUserEnvironment, etc), but not the SSH_*
1944 variables set by sshd itself.
1945
1946 ok markus@
1947
1948 OpenBSD-Commit-ID: b6a96c0001ccd7dd211df6cae9e961c20fd718c0
1949
1950commit 7082bb58a2eb878d23ec674587c742e5e9673c36
1951Author: djm@openbsd.org <djm@openbsd.org>
1952Date: Sat Jun 9 03:01:12 2018 +0000
1953
1954 upstream: add a SetEnv directive to ssh_config that allows setting
1955
1956 environment variables for the remote session (subject to the server accepting
1957 them)
1958
1959 refactor SendEnv to remove the arbitrary limit of variable names.
1960
1961 ok markus@
1962
1963 OpenBSD-Commit-ID: cfbb00d9b0e10c1ffff1d83424351fd961d1f2be
1964
1965commit 3b9798bda15bd3f598f5ef07595d64e23504da91
1966Author: djm@openbsd.org <djm@openbsd.org>
1967Date: Sat Jun 9 02:58:02 2018 +0000
1968
1969 upstream: reorder child environment preparation so that variables
1970
1971 read from ~/.ssh/environment (if enabled) do not override SSH_* variables set
1972 by the server.
1973
1974 OpenBSD-Commit-ID: 59f9d4c213cdcef2ef21f4b4ae006594dcf2aa7a
1975
1976commit 0368889f82f63c82ff8db9f8c944d89e7c657db4
1977Author: djm@openbsd.org <djm@openbsd.org>
1978Date: Fri Jun 8 03:35:36 2018 +0000
1979
1980 upstream: fix incorrect expansion of %i in
1981
1982 load_public_identity_files(); reported by Roumen Petrov
1983
1984 OpenBSD-Commit-ID: a827289e77149b5e0850d72a350c8b0300e7ef25
1985
1986commit 027607fc2db6a0475a3380f8d95c635482714cb0
1987Author: djm@openbsd.org <djm@openbsd.org>
1988Date: Fri Jun 8 01:55:40 2018 +0000
1989
1990 upstream: fix some over-long lines and __func__ up some debug
1991
1992 messages
1993
1994 OpenBSD-Commit-ID: c70a60b4c8207d9f242fc2351941ba50916bb267
1995
1996commit 6ff6fda705bc204456a5fa12518dde6e8790bb02
1997Author: jmc@openbsd.org <jmc@openbsd.org>
1998Date: Thu Jun 7 11:26:14 2018 +0000
1999
2000 upstream: tweak previous;
2001
2002 OpenBSD-Commit-ID: f98f16af10b28e24bcecb806cb71ea994b648fd6
2003
2004commit f2c06ab8dd90582030991f631a2715216bf45e5a
2005Author: Darren Tucker <dtucker@dtucker.net>
2006Date: Fri Jun 8 17:43:36 2018 +1000
2007
2008 Remove ability to override $LD.
2009
2010 Since autoconf always uses $CC to link C programs, allowing users to
2011 override LD caused mismatches between what LD_LINK_IFELSE thought worked
2012 and what ld thought worked. If you do need to do this kind of thing you
2013 need to set a compiler flag such as gcc's -fuse-ld in LDFLAGS.
2014
2015commit e1542a80797b4ea40a91d2896efdcc76a57056d2
2016Author: Darren Tucker <dtucker@dtucker.net>
2017Date: Fri Jun 8 13:55:59 2018 +1000
2018
2019 Better detection of unsupported compiler options.
2020
2021 Should prevent "unsupported -Wl,-z,retpoline" warnings during linking.
2022 ok djm@
2023
2024commit 57379dbd013ad32ee3f9989bf5f5741065428360
2025Author: djm@openbsd.org <djm@openbsd.org>
2026Date: Thu Jun 7 14:29:43 2018 +0000
2027
2028 upstream: test the correct configuration option name
2029
2030 OpenBSD-Regress-ID: 492279ea9f65657f97a970e0e7c7fd0b339fee23
2031
2032commit 6d41815e202fbd6182c79780b6cc90e1ec1c9981
2033Author: djm@openbsd.org <djm@openbsd.org>
2034Date: Thu Jun 7 09:26:42 2018 +0000
2035
2036 upstream: some permitlisten fixes from markus@ that I missed in my
2037
2038 insomnia-fueled commits last night
2039
2040 OpenBSD-Commit-ID: 26f23622e928996086e85b1419cc1c0f136e359c
2041
2042commit 4319f7a868d86d435fa07112fcb6153895d03a7f
2043Author: djm@openbsd.org <djm@openbsd.org>
2044Date: Thu Jun 7 04:46:34 2018 +0000
2045
2046 upstream: permitlisten/PermitListen unit test from Markus
2047
2048 OpenBSD-Regress-ID: ab12eb42f0e14926980441cf7c058a6d1d832ea5
2049
2050commit fa09076410ffc2d34d454145af23c790d728921e
2051Author: djm@openbsd.org <djm@openbsd.org>
2052Date: Thu Jun 7 04:31:51 2018 +0000
2053
2054 upstream: fix regression caused by recent permitlisten option commit:
2055
2056 authorized_keys lines that contained permitopen/permitlisten were being
2057 treated as invalid.
2058
2059 OpenBSD-Commit-ID: 7ef41d63a5a477b405d142dc925b67d9e7aaa31b
2060
2061commit 7f90635216851f6cb4bf3999e98b825f85d604f8
2062Author: markus@openbsd.org <markus@openbsd.org>
2063Date: Wed Jun 6 18:29:18 2018 +0000
2064
2065 upstream: switch config file parsing to getline(3) as this avoids
2066
2067 static limits noted by gerhard@; ok dtucker@, djm@
2068
2069 OpenBSD-Commit-ID: 6d702eabef0fa12e5a1d75c334a8c8b325298b5c
2070
2071commit 392db2bc83215986a91c0b65feb0e40e7619ce7e
2072Author: djm@openbsd.org <djm@openbsd.org>
2073Date: Wed Jun 6 18:25:33 2018 +0000
2074
2075 upstream: regress test for PermitOpen
2076
2077 OpenBSD-Regress-ID: ce8b5f28fc039f09bb297fc4a92319e65982ddaf
2078
2079commit 803d896ef30758135e2f438bdd1a0be27989e018
2080Author: djm@openbsd.org <djm@openbsd.org>
2081Date: Wed Jun 6 18:24:15 2018 +0000
2082
2083 upstream: man bits for permitlisten authorized_keys option
2084
2085 OpenBSD-Commit-ID: 86910af8f781a4ac5980fea125442eb25466dd78
2086
2087commit 04df43208b5b460d7360e1598f876b92a32f5922
2088Author: djm@openbsd.org <djm@openbsd.org>
2089Date: Wed Jun 6 18:24:00 2018 +0000
2090
2091 upstream: man bits for PermitListen
2092
2093 OpenBSD-Commit-ID: 35b200cba4e46a16a4db6a80ef11838ab0fad67c
2094
2095commit 93c06ab6b77514e0447fe4f1d822afcbb2a9be08
2096Author: djm@openbsd.org <djm@openbsd.org>
2097Date: Wed Jun 6 18:23:32 2018 +0000
2098
2099 upstream: permitlisten option for authorized_keys; ok markus@
2100
2101 OpenBSD-Commit-ID: 8650883018d7aa893173d703379e4456a222c672
2102
2103commit 115063a6647007286cc8ca70abfd2a7585f26ccc
2104Author: djm@openbsd.org <djm@openbsd.org>
2105Date: Wed Jun 6 18:22:41 2018 +0000
2106
2107 upstream: Add a PermitListen directive to control which server-side
2108
2109 addresses may be listened on when the client requests remote forwarding (ssh
2110 -R).
2111
2112 This is the converse of the existing PermitOpen directive and this
2113 includes some refactoring to share much of its implementation.
2114
2115 feedback and ok markus@
2116
2117 OpenBSD-Commit-ID: 15a931238c61a3f2ac74ea18a98c933e358e277f
2118
2119commit 7703ae5f5d42eb302ded51705166ff6e19c92892
2120Author: Darren Tucker <dtucker@dtucker.net>
2121Date: Wed Jun 6 16:04:29 2018 +1000
2122
2123 Use ssh-keygen -A to generate missing host keys.
2124
2125 Instead of testing for each specific key type, use ssh-keygen -A to
2126 generate any missing host key types.
2127
2128commit e8d59fef1098e24f408248dc64e5c8efa5d01f3c
2129Author: jmc@openbsd.org <jmc@openbsd.org>
2130Date: Fri Jun 1 06:23:10 2018 +0000
2131
2132 upstream: add missing punctuation after %i in ssh_config.5, and
2133
2134 make the grammatical format in sshd_config.5 match that in ssh_config.5;
2135
2136 OpenBSD-Commit-ID: e325663b9342f3d556e223e5306e0d5fa1a74fa0
2137
2138commit a1f737d6a99314e291a87856122cb4dbaf64c641
2139Author: jmc@openbsd.org <jmc@openbsd.org>
2140Date: Fri Jun 1 05:52:26 2018 +0000
2141
2142 upstream: oops - further adjustment to text neccessary;
2143
2144 OpenBSD-Commit-ID: 23585576c807743112ab956be0fb3c786bdef025
2145
2146commit 294028493471e0bd0c7ffe55dc0c0a67cba6ec41
2147Author: jmc@openbsd.org <jmc@openbsd.org>
2148Date: Fri Jun 1 05:50:18 2018 +0000
2149
2150 upstream: %U needs to be escaped; tweak text;
2151
2152 OpenBSD-Commit-ID: 30887b73ece257273fb619ab6f4e86dc92ddc15e
2153
2154commit e5019da3c5a31e6e729a565f2b886a80c4be96cc
2155Author: dtucker@openbsd.org <dtucker@openbsd.org>
2156Date: Fri Jun 1 04:31:48 2018 +0000
2157
2158 upstream: Apply umask to all incoming files and directories not
2159
2160 just files. This makes sure it gets applied to directories too, and prevents
2161 a race where files get chmodded after creation. bz#2839, ok djm@
2162
2163 OpenBSD-Commit-ID: 3168ee6c7c39093adac4fd71039600cfa296203b
2164
2165commit a1dcafc41c376332493b9385ee39f9754dc145ec
2166Author: djm@openbsd.org <djm@openbsd.org>
2167Date: Fri Jun 1 03:52:37 2018 +0000
2168
2169 upstream: Adapt to extra default verboisity from ssh-keygen when
2170
2171 searching for and hashing known_hosts entries in a single operation
2172 (ssh-keygen -HF ...) Patch from Anton Kremenetsky
2173
2174 OpenBSD-Regress-ID: 519585a4de35c4611285bd6a7272766c229b19dd
2175
2176commit 76f314c75dffd4a55839d50ee23622edad52c168
2177Author: djm@openbsd.org <djm@openbsd.org>
2178Date: Tue May 22 00:22:49 2018 +0000
2179
2180 upstream: Add TEST_SSH_FAIL_FATAL variable, to force all failures
2181
2182 to instantly abort the test. Useful in capturing clean logs for individual
2183 failure cases.
2184
2185 OpenBSD-Regress-ID: feba18cf338c2328b9601bd4093cabdd9baa3af1
2186
2187commit 065c8c055df8d83ae7c92e5e524a579d87668aab
2188Author: dtucker@openbsd.org <dtucker@openbsd.org>
2189Date: Fri May 11 03:51:06 2018 +0000
2190
2191 upstream: Clean up comment.
2192
2193 OpenBSD-Regress-ID: 6adb35f384d447e7dcb9f170d4f0d546d3973e10
2194
2195commit 01b048c8eba3b021701bd0ab26257fc82903cba8
2196Author: djm@openbsd.org <djm@openbsd.org>
2197Date: Fri Jun 1 04:21:29 2018 +0000
2198
2199 upstream: whitespace
2200
2201 OpenBSD-Commit-ID: e5edb5e843ddc9b73a8e46518899be41d5709add
2202
2203commit 854ae209f992465a276de0b5f10ef770510c2418
2204Author: djm@openbsd.org <djm@openbsd.org>
2205Date: Fri Jun 1 04:05:29 2018 +0000
2206
2207 upstream: make ssh_remote_ipaddr() capable of being called after
2208
2209 the ssh->state has been torn down; bz#2773
2210
2211 OpenBSD-Commit-ID: 167f12523613ca3d16d7716a690e7afa307dc7eb
2212
2213commit 3e088aaf236ef35beeef3c9be93fd53700df5861
2214Author: djm@openbsd.org <djm@openbsd.org>
2215Date: Fri Jun 1 03:51:34 2018 +0000
2216
2217 upstream: return correct exit code when searching for and hashing
2218
2219 known_hosts entries in a single operation (ssh-keygen -HF hostname); bz2772
2220 Report and fix from Anton Kremenetsky
2221
2222 OpenBSD-Commit-ID: ac10ca13eb9bb0bc50fcd42ad11c56c317437b58
2223
2224commit 9c935dd9bf05628826ad2495d3e8bdf3d3271c21
2225Author: djm@openbsd.org <djm@openbsd.org>
2226Date: Fri Jun 1 03:33:53 2018 +0000
2227
2228 upstream: make UID available as a %-expansion everywhere that the
2229
2230 username is available currently. In the client this is via %i, in the server
2231 %U (since %i was already used in the client in some places for this, but used
2232 for something different in the server); bz#2870, ok dtucker@
2233
2234 OpenBSD-Commit-ID: c7e912b0213713316cb55db194b3a6415b3d4b95
2235
2236commit d8748b91d1d6c108c0c260ed41fa55f37b9ef34b
2237Author: djm@openbsd.org <djm@openbsd.org>
2238Date: Fri Jun 1 03:11:49 2018 +0000
2239
2240 upstream: prefer argv0 to "ssh" when re-executing ssh for ProxyJump
2241
2242 directive; bz2831, feedback and ok dtucker@
2243
2244 OpenBSD-Commit-ID: 3cec709a131499fbb0c1ea8a0a9e0b0915ce769e
2245
2246commit fbb4b5fd4f8e0bb89732670a01954e18b69e15ba
2247Author: djm@openbsd.org <djm@openbsd.org>
2248Date: Fri May 25 07:11:01 2018 +0000
2249
2250 upstream: Do not ban PTY allocation when a sshd session is restricted
2251
2252 because the user password is expired as it breaks password change dialog.
2253
2254 regression in openssh-7.7 reported by Daniel Wagner
2255
2256 OpenBSD-Commit-ID: 9fc09c584c6f1964b00595e3abe7f83db4d90d73
2257
2258commit f6a59a22b0c157c4c4e5fd7232f868138223be64
2259Author: djm@openbsd.org <djm@openbsd.org>
2260Date: Fri May 25 04:25:46 2018 +0000
2261
2262 upstream: Fix return value confusion in several functions (readdir,
2263
2264 download and fsync). These should return -1 on error, not a sftp status code.
2265
2266 patch from Petr Cerny in bz#2871
2267
2268 OpenBSD-Commit-ID: 651aa0220ad23c9167d9297a436162d741f97a09
2269
2270commit 1da5934b860ac0378d52d3035b22b6670f6a967e
2271Author: dtucker@openbsd.org <dtucker@openbsd.org>
2272Date: Fri May 25 03:20:59 2018 +0000
2273
2274 upstream: If select() fails in ssh_packet_read_seqnr go directly to
2275
2276 the error path instead of trying to read from the socket on the way out,
2277 which resets errno and causes the true error to be misreported. ok djm@
2278
2279 OpenBSD-Commit-ID: 2614edaadbd05a957aa977728aa7a030af7c6f0a
2280
2281commit 4ef75926ef517d539f2c7aac3188b09f315c86a7
2282Author: Damien Miller <djm@mindrot.org>
2283Date: Fri May 25 13:36:58 2018 +1000
2284
2285 Permit getuid()/geteuid() syscalls.
2286
2287 Requested for Linux/s390; patch from Eduardo Barretto via bz#2752;
2288 ok dtucker
2289
2290commit 4b22fd8ecefd059a66140be67f352eb6145a9d88
2291Author: djm@openbsd.org <djm@openbsd.org>
2292Date: Tue May 22 00:13:26 2018 +0000
2293
2294 upstream: support ProxyJump=none to disable ProxyJump
2295
2296 functionality; bz#2869 ok dtucker@
2297
2298 OpenBSD-Commit-ID: 1c06ee08eb78451b5837fcfd8cbebc5ff3a67a01
2299
2300commit f41bcd70f55b4f0fc4d8e1039cb361ac922b23fb
2301Author: jmc@openbsd.org <jmc@openbsd.org>
2302Date: Tue May 15 05:40:11 2018 +0000
2303
2304 upstream: correct keyowrd name (permitemptypasswords); from brendan
2305
2306 macdonell
2307
2308 OpenBSD-Commit-ID: ef1bdbc936b2ea693ee37a4c20a94d4d43f5fda3
2309
2310commit f18bc97151340127859634d20d79fd39ec8a7f39
2311Author: djm@openbsd.org <djm@openbsd.org>
2312Date: Fri May 11 04:01:11 2018 +0000
2313
2314 upstream: Emphasise that -w implicitly sets Tunnel=point-to-point
2315
2316 and that users should specify an explicit Tunnel directive if they don't want
2317 this. bz#2365.
2318
2319 OpenBSD-Commit-ID: 1a8d9c67ae213ead180481900dbbb3e04864560d
2320
2321commit 32e4e94e1511fe0020fbfbb62399d31b2d22a801
2322Author: Damien Miller <djm@mindrot.org>
2323Date: Mon May 14 14:40:08 2018 +1000
2324
2325 sync fmt_scaled.c
2326
2327 revision 1.17
2328 date: 2018/05/14 04:39:04; author: djm; state: Exp; lines: +5 -2;
2329 commitid: 53zY8GjViUBnWo8Z;
2330 constrain fractional part to [0-9] (less confusing to static analysis); ok ian@
2331
2332commit 54268d589e85ecc43d3eba8d83f327bdada9d696
2333Author: Damien Miller <djm@mindrot.org>
2334Date: Fri May 11 14:04:40 2018 +1000
2335
2336 fix key-options.sh on platforms without openpty(3)
2337
2338 Skip the pty tests if the platform lacks openpty(3) and has to chown(2)
2339 the pty device explicitly. This typically requires root permissions that
2340 this test lacks.
2341
2342 bz#2856 ok dtucker@
2343
2344commit b2140a739be4c3b43cc1dc08322dca39a1e39d20
2345Author: djm@openbsd.org <djm@openbsd.org>
2346Date: Fri May 11 03:38:51 2018 +0000
2347
2348 upstream: implement EMFILE mitigation for ssh-agent: remember the
2349
2350 fd rlimit and stop accepting new connections when it is exceeded (with some
2351 grace). Accept is resumed when enough connections are closed.
2352
2353 bz#2576. feedback deraadt; ok dtucker@
2354
2355 OpenBSD-Commit-ID: 6a85d9cec7b85741961e7116a49f8dae777911ea
2356
2357commit fdba503fdfc647ee8a244002f1581e869c1f3d90
2358Author: dtucker@openbsd.org <dtucker@openbsd.org>
2359Date: Fri May 11 03:22:55 2018 +0000
2360
2361 upstream: Explicit cast when snprintf'ing an uint64. Prevents
2362
2363 warnings on platforms where int64 is long not long long. ok djm@
2364
2365 OpenBSD-Commit-ID: 9c5359e2fbfce11dea2d93f7bc257e84419bd001
2366
2367commit e7751aa4094d51a9bc00778aa8d07e22934c55ee
2368Author: bluhm@openbsd.org <bluhm@openbsd.org>
2369Date: Thu Apr 26 14:47:03 2018 +0000
2370
2371 upstream: Since the previous commit, ssh regress test sftp-chroot was
2372
2373 failing. The sftp program terminated with the wrong exit code as sftp called
2374 fatal() instad of exit(0). So when the sigchld handler waits for the child,
2375 remember that it was found. Then don't expect that main() can wait again. OK
2376 dtucker@
2377
2378 OpenBSD-Commit-ID: bfafd940c0de5297940c71ddf362053db0232266
2379
2380commit 7c15301841e2e9d37cae732400de63ae9c0961d6
2381Author: Darren Tucker <dtucker@dtucker.net>
2382Date: Sun Apr 29 17:54:12 2018 +1000
2383
2384 Use includes.h instead of config.h.
2385
2386 This ensures it picks up the definition of DEF_WEAK, the lack of which
2387 can cause compile errors in some cases (eg modern AIX). From
2388 michael at felt.demon.nl.
2389
2390commit cec338967a666b7c8ad8b88175f2faeddf268116
2391Author: Darren Tucker <dtucker@dtucker.net>
2392Date: Thu Apr 19 09:53:14 2018 +1000
2393
2394 Omit 3des-cbc if OpenSSL built without DES.
2395
2396 Patch from hongxu.jia at windriver.com, ok djm@
2397
2398commit a575ddd58835759393d2dddd16ebe5abdb56485e
2399Author: djm@openbsd.org <djm@openbsd.org>
2400Date: Mon Apr 16 22:50:44 2018 +0000
2401
2402 upstream: Disable SSH2_MSG_DEBUG messages for Twisted Conch clients
2403
2404 without version numbers since they choke on them under some circumstances.
2405 https://twistedmatrix.com/trac/ticket/9422 via Colin Watson
2406
2407 Newer Conch versions have a version number in their ident string and
2408 handle debug messages okay. https://twistedmatrix.com/trac/ticket/9424
2409
2410 OpenBSD-Commit-ID: 6cf7be262af0419c58ddae11324d9c0dc1577539
2411
2412commit 390c7000a8946db565b66eab9e52fb11948711fa
2413Author: djm@openbsd.org <djm@openbsd.org>
2414Date: Sat Apr 14 21:50:41 2018 +0000
2415
2416 upstream: don't free the %C expansion, it's used later for
2417
2418 LocalCommand
2419
2420 OpenBSD-Commit-ID: 857b5cb37b2d856bfdfce61289a415257a487fb1
2421
2422commit 3455f1e7c48e2e549192998d330214975b9b1dc7
2423Author: djm@openbsd.org <djm@openbsd.org>
2424Date: Fri Apr 13 05:04:12 2018 +0000
2425
2426 upstream: notify user immediately when underlying ssh process dies;
2427
2428 patch from Thomas Kuthan in bz2719; ok dtucker@
2429
2430 OpenBSD-Commit-ID: 78fac88c2f08054d1fc5162c43c24162b131cf78
2431
2432commit 1c5b4bc827f4abc3e65888cda061ad5edf1b8c7c
2433Author: Darren Tucker <dtucker@dtucker.net>
2434Date: Fri Apr 13 16:23:57 2018 +1000
2435
2436 Allow nanosleep in preauth privsep child.
2437
2438 The new timing attack mitigation code uses nanosleep in the preauth
2439 codepath, allow in systrace andbox too.
2440
2441commit 0e73428038d5ecfa5d2a28cff26661502a7aff4e
2442Author: Darren Tucker <dtucker@dtucker.net>
2443Date: Fri Apr 13 16:06:29 2018 +1000
2444
2445 Allow nanosleep in preauth privsep child.
2446
2447 The new timing attack mitigation code uses nanosleep in the preauth
2448 codepath, allow in sandbox.
2449
2450commit e9d910b0289c820852f7afa67f584cef1c05fe95
2451Author: dtucker@openbsd.org <dtucker@openbsd.org>
2452Date: Fri Apr 13 03:57:26 2018 +0000
2453
2454 upstream: Defend against user enumeration timing attacks. This
2455
2456 establishes a minimum time for each failed authentication attempt (5ms) and
2457 adds a per-user constant derived from a host secret (0-4ms). Based on work
2458 by joona.kannisto at tut.fi, ok markus@ djm@.
2459
2460 OpenBSD-Commit-ID: b7845b355bb7381703339c8fb0e57e81a20ae5ca
2461
2462commit d97874cbd909eb706886cd0cdd418f812c119ef9
2463Author: Darren Tucker <dtucker@dtucker.net>
2464Date: Fri Apr 13 13:43:55 2018 +1000
2465
2466 Using "==" in shell tests is not portable.
2467
2468 Patch from rsbecker at nexbridge.com.
2469
2470commit cfb1d9bc76734681e3dea532a1504fcd466fbe91
2471Author: Damien Miller <djm@mindrot.org>
2472Date: Fri Apr 13 13:38:06 2018 +1000
2473
2474 Fix tunnel forwarding broken in 7.7p1
2475
2476 bz2855, ok dtucker@
2477
2478commit afa6e79b76fb52a0c09a29688b5c0d125eb08302
2479Author: Damien Miller <djm@mindrot.org>
2480Date: Fri Apr 13 13:31:42 2018 +1000
2481
2482 prefer to use getrandom() for PRNG seeding
2483
2484 Only applies when built --without-openssl. Thanks Jann Horn for
2485 reminder.
2486
2487commit 575fac34a97f69bc217b235f81de9f8f433eceed
2488Author: Darren Tucker <dtucker@dtucker.net>
2489Date: Fri Apr 13 13:13:33 2018 +1000
2490
2491 Revert $REGRESSTMP changes.
2492
2493 Revert 3fd2d229 and subsequent changes as they turned out to be a
2494 portability hassle.
2495
2496commit 10479cc2a4acd6faaf643eb305233b49d70c31c1
2497Author: Damien Miller <djm@mindrot.org>
2498Date: Tue Apr 10 10:19:02 2018 +1000
2499
2500 Many typo fixes from Karsten Weiss
2501
2502 Spotted using https://github.com/lucasdemarchi/codespell
2503
2504commit 907da2f88519b34189fd03fac96de0c52d448233
2505Author: djm@openbsd.org <djm@openbsd.org>
2506Date: Tue Apr 10 00:14:10 2018 +0000
2507
2508 upstream: more typos spotted by Karsten Weiss using codespell
2509
2510 OpenBSD-Regress-ID: d906a2aea0663810a658b7d0bc61a1d2907d4d69
2511
2512commit 37e5f4a7ab9a8026e5fc2f47dafb0f1b123d39e9
2513Author: djm@openbsd.org <djm@openbsd.org>
2514Date: Tue Apr 10 00:13:27 2018 +0000
2515
2516 upstream: make this a bit more portable-friendly
2517
2518 OpenBSD-Regress-ID: 62f7b9e055e8dfaab92b3825f158beeb4ca3f963
2519
2520commit 001aa55484852370488786bd40e9fdad4b465811
2521Author: djm@openbsd.org <djm@openbsd.org>
2522Date: Tue Apr 10 00:10:49 2018 +0000
2523
2524 upstream: lots of typos in comments/docs. Patch from Karsten Weiss
2525
2526 after checking with codespell tool
2527 (https://github.com/lucasdemarchi/codespell)
2528
2529 OpenBSD-Commit-ID: 373222f12d7ab606598a2d36840c60be93568528
2530
2531commit 260ede2787fe80b18b8d5920455b4fb268519c7d
2532Author: djm@openbsd.org <djm@openbsd.org>
2533Date: Mon Apr 9 23:54:49 2018 +0000
2534
2535 upstream: don't kill ssh-agent's listening socket entriely if we
2536
2537 fail to accept a connection; bz#2837, patch from Lukas Kuster
2538
2539 OpenBSD-Commit-ID: 52413f5069179bebf30d38f524afe1a2133c738f
2540
2541commit ebc8b4656f9b0f834a642a9fb3c9fbca86a61838
2542Author: tj@openbsd.org <tj@openbsd.org>
2543Date: Mon Apr 9 20:41:22 2018 +0000
2544
2545 upstream: the UseLogin option was removed, so remove it here too.
2546
2547 ok dtucker
2548
2549 OpenBSD-Commit-ID: 7080be73a64d68e21f22f5408a67a0ba8b1b6b06
2550
2551commit 3e36f281851fc8e9c996b33f108b2ae167314fbe
2552Author: jmc@openbsd.org <jmc@openbsd.org>
2553Date: Sun Apr 8 07:36:02 2018 +0000
2554
2555 upstream: tweak previous;
2556
2557 OpenBSD-Commit-ID: 2b9c23022ea7b9dddb62864de4e906000f9d7474
2558
2559commit 8368571efd6693c5c57f850e23a2372acf3f865f
2560Author: jmc@openbsd.org <jmc@openbsd.org>
2561Date: Sat Apr 7 13:50:10 2018 +0000
2562
2563 upstream: tweak previous;
2564
2565 OpenBSD-Commit-ID: 38e347b6f8e888f5e0700d01abb1eba7caa154f9
2566
2567commit 555294a7279914ae6795b71bedf4e6011b7636df
2568Author: djm@openbsd.org <djm@openbsd.org>
2569Date: Fri Apr 6 13:02:39 2018 +0000
2570
2571 upstream: Allow "SendEnv -PATTERN" to clear environment variables
2572
2573 previously labeled for sendind. bz#1285 ok dtucker@
2574
2575 OpenBSD-Commit-ID: f6fec9e3d0f366f15903094fbe1754cb359a0df9
2576
2577commit 40f5f03544a07ebd2003b443d42e85cb51d94d59
2578Author: djm@openbsd.org <djm@openbsd.org>
2579Date: Fri Apr 6 04:15:45 2018 +0000
2580
2581 upstream: relax checking of authorized_keys environment="..."
2582
2583 options to allow underscores in variable names (regression introduced in
2584 7.7). bz2851, ok deraadt@
2585
2586 OpenBSD-Commit-ID: 69690ffe0c97ff393f2c76d25b4b3d2ed4e4ac9c
2587
2588commit 30fd7f9af0f553aaa2eeda5a1f53f26cfc222b5e
2589Author: djm@openbsd.org <djm@openbsd.org>
2590Date: Fri Apr 6 03:51:27 2018 +0000
2591
2592 upstream: add a couple of missed options to the config dump; patch
2593
2594 from Jakub Jelen via bz2835
2595
2596 OpenBSD-Commit-ID: 5970adadf6ef206bee0dddfc75d24c2019861446
2597
2598commit 8d6829be324452d2acd282d5f8ceb0adaa89a4de
2599Author: djm@openbsd.org <djm@openbsd.org>
2600Date: Fri Apr 6 03:34:27 2018 +0000
2601
2602 upstream: ssh does not accept -oInclude=... on the commandline, the
2603
2604 Include keyword is for configuration files only. bz#2840, patch from Jakub
2605 Jelen
2606
2607 OpenBSD-Commit-ID: 32d052b4a7a7f22df35fe3f71c368c02b02cacb0
2608
2609commit 00c5222ddc0c8edcaa4ea45ac03befdc8013d137
2610Author: djm@openbsd.org <djm@openbsd.org>
2611Date: Thu Apr 5 22:54:28 2018 +0000
2612
2613 upstream: We don't offer CBC cipher by default any more. Spotted by
2614
2615 Renaud Allard (via otto@)
2616
2617 OpenBSD-Commit-ID: a559b1eef741557dd959ae378b665a2977d92dca
2618
2619commit 5ee8448ad7c306f05a9f56769f95336a8269f379
2620Author: job@openbsd.org <job@openbsd.org>
2621Date: Wed Apr 4 15:12:17 2018 +0000
2622
2623 upstream: Update default IPQoS in ssh(1), sshd(8) to DSCP AF21 for
2624
2625 interactive and CS1 for bulk
2626
2627 AF21 was selected as this is the highest priority within the low-latency
2628 service class (and it is higher than what we have today). SSH is elastic
2629 and time-sensitive data, where a user is waiting for a response via the
2630 network in order to continue with a task at hand. As such, these flows
2631 should be considered foreground traffic, with delays or drops to such
2632 traffic directly impacting user-productivity.
2633
2634 For bulk SSH traffic, the CS1 "Lower Effort" marker was chosen to enable
2635 networks implementing a scavanger/lower-than-best effort class to
2636 discriminate scp(1) below normal activities, such as web surfing. In
2637 general this type of bulk SSH traffic is a background activity.
2638
2639 An advantage of using "AF21" for interactive SSH and "CS1" for bulk SSH
2640 is that they are recognisable values on all common platforms (IANA
2641 https://www.iana.org/assignments/dscp-registry/dscp-registry.xml), and
2642 for AF21 specifically a definition of the intended behavior exists
2643 https://tools.ietf.org/html/rfc4594#section-4.7 in addition to the definition
2644 of the Assured Forwarding PHB group https://tools.ietf.org/html/rfc2597, and
2645 for CS1 (Lower Effort) there is https://tools.ietf.org/html/rfc3662
2646
2647 The first three bits of "AF21" map to the equivalent IEEEE 802.1D PCP, IEEE
2648 802.11e, MPLS EXP/CoS and IP Precedence value of 2 (also known as "Immediate",
2649 or "AC_BE"), and CS1's first 3 bits map to IEEEE 802.1D PCP, IEEE 802.11e,
2650 MPLS/CoS and IP Precedence value 1 ("Background" or "AC_BK").
2651
2652 OK deraadt@, "no objection" djm@
2653
2654 OpenBSD-Commit-ID: d11d2a4484f461524ef0c20870523dfcdeb52181
2655
2656commit 424b544fbda963f973da80f884717c3e0a513288
2657Author: dtucker@openbsd.org <dtucker@openbsd.org>
2658Date: Tue Apr 3 02:14:08 2018 +0000
2659
2660 upstream: Import regenerated moduli file.
2661
2662 OpenBSD-Commit-ID: 1de0e85522051eb2ffa00437e1885e9d7b3e0c2e
2663
2664commit 323f66ce934df2da551f256f37d69822428e1ca1
2665Author: dtucker@openbsd.org <dtucker@openbsd.org>
2666Date: Fri Apr 6 04:18:35 2018 +0000
2667
2668 upstream: Add test for username options parsing order, prompted by
2669
2670 bz#2849.
2671
2672 OpenBSD-Regress-ID: 6985cd32f38596882a3ac172ff8c510693b65283
2673
2674commit e8f474554e3bda102a797a2fbab0594ccc66f097
2675Author: Damien Miller <djm@mindrot.org>
2676Date: Fri Apr 6 14:11:44 2018 +1000
2677
2678 Expose SSH_AUTH_INFO_0 to PAM auth modules
2679
2680 bz#2408, patch from Radoslaw Ejsmont; ok dtucker@
2681
2682commit 014ba209cf4c6a159baa30ecebbaddfa97da7100
2683Author: Darren Tucker <dtucker@dtucker.net>
2684Date: Tue Apr 3 12:18:00 2018 +1000
2685
2686 Import regenerated moduli file.
2687
2688commit a0349a1cc4a18967ad1dbff5389bcdf9da098814
2689Author: Damien Miller <djm@mindrot.org>
2690Date: Mon Apr 2 15:38:28 2018 +1000
2691
2692 update versions in .spec files
2693
2694commit 816ad38f79792f5617e3913be306ddb27e91091c
2695Author: Damien Miller <djm@mindrot.org>
2696Date: Mon Apr 2 15:38:20 2018 +1000
2697
2698 update version number
2699
2700commit 2c71ca1dd1efe458cb7dee3f8a1a566f913182c2
2701Author: Darren Tucker <dtucker@dtucker.net>
2702Date: Fri Mar 30 18:23:07 2018 +1100
2703
2704 Disable native strndup and strnlen on AIX.
2705
2706 On at least some revisions of AIX, strndup returns unterminated strings
2707 under some conditions, apparently because strnlen returns incorrect
2708 values in those cases. Disable both on AIX and use the replacements
2709 from openbsd-compat. Fixes problem with ECDSA keys there, ok djm.
2710
2711commit 6b5a17bc14e896e3904dc58d889b58934cfacd24
2712Author: Darren Tucker <dtucker@dtucker.net>
2713Date: Mon Mar 26 13:12:44 2018 +1100
2714
2715 Include ssh_api.h for struct ssh.
2716
2717 struct ssh is needed by implementations of sys_auth_passwd() that were
2718 converted in commit bba02a50. Needed to fix build on AIX, I assume for
2719 the other platforms too (although it should be harmless if not needed).
2720
2721commit bc3f80e4d191b8e48650045dfa8a682cd3aabd4d
2722Author: Darren Tucker <dtucker@dtucker.net>
2723Date: Mon Mar 26 12:58:09 2018 +1100
2724
2725 Remove UNICOS code missed during removal.
2726
2727 Fixes compile error on AIX.
2728
2729commit 9d57762c24882e2f000a21a0ffc8c5908a1fa738
2730Author: markus@openbsd.org <markus@openbsd.org>
2731Date: Sat Mar 24 19:29:03 2018 +0000
2732
2733 upstream: openssh-7.7
2734
2735 OpenBSD-Commit-ID: 274e614352460b9802c905f38fb5ea7ed5db3d41
2736
2737commit 4b7d8acdbbceef247dc035e611e577174ed8a87e
2738Author: Damien Miller <djm@mindrot.org>
2739Date: Mon Mar 26 09:37:02 2018 +1100
2740
2741 Remove authinfo.sh test dependency on printenv
2742
2743 Some platforms lack printenv in the default $PATH.
2744 Reported by Tom G. Christensen
2745
2746commit 4afeaf3dcb7dc70efd98fcfcb0ed28a6b40b820e
2747Author: Tim Rice <tim@multitalents.net>
2748Date: Sun Mar 25 10:00:21 2018 -0700
2749
2750 Use libiaf on all sysv5 systems
2751
2752commit bba02a5094b3db228ceac41cb4bfca165d0735f3
2753Author: Tim Rice <tim@multitalents.net>
2754Date: Sun Mar 25 09:17:33 2018 -0700
2755
2756 modified: auth-sia.c
2757 modified: openbsd-compat/port-aix.c
2758 modified: openbsd-compat/port-uw.c
2759
2760 propogate changes to auth-passwd.c in commit
2761 7c856857607112a3dfe6414696bf4c7ab7fb0cb3 to other providers
2762 of sys_auth_passwd()
2763
2764commit d7a7a39168bdfe273587bf85d779d60569100a3f
2765Author: markus@openbsd.org <markus@openbsd.org>
2766Date: Sat Mar 24 19:29:03 2018 +0000
2767
2768 upstream: openssh-7.7
2769
2770 OpenBSD-Commit-ID: 274e614352460b9802c905f38fb5ea7ed5db3d41
2771
2772commit 9efcaaac314c611c6c0326e8bac5b486c424bbd2
2773Author: markus@openbsd.org <markus@openbsd.org>
2774Date: Sat Mar 24 19:28:43 2018 +0000
2775
2776 upstream: fix bogus warning when signing cert keys using agent;
2777
2778 from djm; ok deraadt dtucker
2779
2780 OpenBSD-Commit-ID: 12e50836ba2040042383a8b71e12d7ea06e9633d
2781
2782commit 393436024d2e4b4c7a01f9cfa5854e7437896d11
2783Author: Darren Tucker <dtucker@dtucker.net>
2784Date: Sun Mar 25 09:40:46 2018 +1100
2785
2786 Replace /dev/stdin with "-".
2787
2788 For some reason sftp -b doesn't work with /dev/stdin on Cygwin, as noted
2789 and suggested by vinschen at redhat.com.
2790
2791commit b5974de1a1d419e316ffb6524b1b277dda2f3b49
2792Author: Darren Tucker <dtucker@dtucker.net>
2793Date: Fri Mar 23 13:21:14 2018 +1100
2794
2795 Provide $OBJ to paths in PuTTY interop tests.
2796
2797commit dc31e79454e9b9140b33ad380565fdb59b9c4f33
2798Author: dtucker@openbsd.org <dtucker@openbsd.org>
2799Date: Fri Mar 16 09:06:31 2018 +0000
2800
2801 upstream: Tell puttygen to use /dev/urandom instead of /dev/random. On
2802
2803 OpenBSD they are both non-blocking, but on many other -portable platforms it
2804 blocks, stalling tests.
2805
2806 OpenBSD-Regress-ID: 397d0d4c719c353f24d79f5b14775e0cfdf0e1cc
2807
2808commit cb1f94431ef319cd48618b8b771b58739a8210cf
2809Author: markus@openbsd.org <markus@openbsd.org>
2810Date: Thu Mar 22 07:06:11 2018 +0000
2811
2812 upstream: ssh/xmss: fix build; ok djm@
2813
2814 OpenBSD-Commit-ID: c9374ca41d4497f1c673ab681cc33f6e7c5dd186
2815
2816commit 27979da9e4074322611355598f69175b9ff10d39
2817Author: markus@openbsd.org <markus@openbsd.org>
2818Date: Thu Mar 22 07:05:48 2018 +0000
2819
2820 upstream: ssh/xmss: fix deserialize for certs; ok djm@
2821
2822 OpenBSD-Commit-ID: f44c41636c16ec83502039828beaf521c057dddc
2823
2824commit c6cb2565c9285eb54fa9dfbb3890f5464aff410f
2825Author: Darren Tucker <dtucker@dtucker.net>
2826Date: Thu Mar 22 17:00:28 2018 +1100
2827
2828 Save $? before case statement.
2829
2830 In some shells (FreeBSD 9, ash) the case statement resets $?, so save
2831 for later testing.
2832
2833commit 4c4e7f783b43b264c247233acb887ee10ed4ce4d
2834Author: djm@openbsd.org <djm@openbsd.org>
2835Date: Wed Mar 14 05:35:40 2018 +0000
2836
2837 upstream: rename recently-added "valid-before" key restriction to
2838
2839 "expiry-time" as the former is confusing wrt similar terminology in X.509;
2840 pointed out by jsing@
2841
2842 OpenBSD-Regress-ID: ac8b41dbfd90cffd525d58350c327195b0937793
2843
2844commit 500396b204c58e78ad9d081516a365a9f28dc3fd
2845Author: djm@openbsd.org <djm@openbsd.org>
2846Date: Mon Mar 12 00:56:03 2018 +0000
2847
2848 upstream: check valid-before option in authorized_keys
2849
2850 OpenBSD-Regress-ID: 7e1e4a84f7f099a290e5a4cbf4196f90ff2d7e11
2851
2852commit a76b5d26c2a51d7dd7a5164e683ab3f4419be215
2853Author: djm@openbsd.org <djm@openbsd.org>
2854Date: Mon Mar 12 00:54:04 2018 +0000
2855
2856 upstream: explicitly specify RSA/SHA-2 keytype here too
2857
2858 OpenBSD-Regress-ID: 74d7b24e8c72c27af6b481198344eb077e993a62
2859
2860commit 3a43297ce29d37c64e37c7e21282cb219e28d3d1
2861Author: djm@openbsd.org <djm@openbsd.org>
2862Date: Mon Mar 12 00:52:57 2018 +0000
2863
2864 upstream: exlicitly include RSA/SHA-2 keytypes in
2865
2866 PubkeyAcceptedKeyTypes here
2867
2868 OpenBSD-Regress-ID: 954d19e0032a74e31697fb1dc7e7d3d1b2d65fe9
2869
2870commit 037fdc1dc2d68e1d43f9c9e2586c02cabc8f7cc8
2871Author: jmc@openbsd.org <jmc@openbsd.org>
2872Date: Wed Mar 14 06:56:20 2018 +0000
2873
2874 upstream: sort expiry-time;
2875
2876 OpenBSD-Commit-ID: 8c7d82ee1e63e26ceb2b3d3a16514019f984f6bf
2877
2878commit abc0fa38c9bc136871f28e452c3465c3051fc785
2879Author: djm@openbsd.org <djm@openbsd.org>
2880Date: Wed Mar 14 05:35:40 2018 +0000
2881
2882 upstream: rename recently-added "valid-before" key restriction to
2883
2884 "expiry-time" as the former is confusing wrt similar terminology in X.509;
2885 pointed out by jsing@
2886
2887 OpenBSD-Commit-ID: 376939466a1f562f3950a22314bc6505733aaae6
2888
2889commit bf0fbf2b11a44f06a64b620af7d01ff171c28e13
2890Author: djm@openbsd.org <djm@openbsd.org>
2891Date: Mon Mar 12 00:52:01 2018 +0000
2892
2893 upstream: add valid-before="[time]" authorized_keys option. A
2894
2895 simple way of giving a key an expiry date. ok markus@
2896
2897 OpenBSD-Commit-ID: 1793b4dd5184fa87f42ed33c7b0f4f02bc877947
2898
2899commit fbd733ab7adc907118a6cf56c08ed90c7000043f
2900Author: Darren Tucker <dtucker@dtucker.net>
2901Date: Mon Mar 12 19:17:26 2018 +1100
2902
2903 Add AC_LANG_PROGRAM to AC_COMPILE_IFELSE.
2904
2905 The recently added MIPS ABI tests need AC_LANG_PROGRAM to prevent
2906 warnings from autoconf. Pointed out by klausz at haus-gisela.de.
2907
2908commit c7c458e8261b04d161763cd333d74e7a5842e917
2909Author: djm@openbsd.org <djm@openbsd.org>
2910Date: Wed Mar 7 23:53:08 2018 +0000
2911
2912 upstream: revert recent strdelim() change, it causes problems with
2913
2914 some configs.
2915
2916 revision 1.124
2917 date: 2018/03/02 03:02:11; author: djm; state: Exp; lines: +19 -8; commitid: nNRsCijZiGG6SUTT;
2918 Allow escaped quotes \" and \' in ssh_config and sshd_config quotes
2919 option strings. bz#1596 ok markus@
2920
2921 OpenBSD-Commit-ID: 59c40b1b81206d713c06b49d8477402c86babda5
2922
2923commit 0bcd871ccdf3baf2b642509ba4773d5be067cfa2
2924Author: jmc@openbsd.org <jmc@openbsd.org>
2925Date: Mon Mar 5 07:03:18 2018 +0000
2926
2927 upstream: move the input format details to -f; remove the output
2928
2929 format details and point to sshd(8), where it is documented;
2930
2931 ok dtucker
2932
2933 OpenBSD-Commit-ID: 95f17e47dae02a6ac7329708c8c893d4cad0004a
2934
2935commit 45011511a09e03493568506ce32f4891a174a3bd
2936Author: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
2937Date: Tue Jun 20 16:42:28 2017 +0100
2938
2939 configure.ac: properly set seccomp_audit_arch for MIPS64
2940
2941 Currently seccomp_audit_arch is set to AUDIT_ARCH_MIPS64 or
2942 AUDIT_ARCH_MIPSEL64 (depending on the endinness) when openssh is built
2943 for MIPS64. However, that's only valid for n64 ABI. The right macros for
2944 n32 ABI defined in seccomp.h are AUDIT_ARCH_MIPS64N32 and
2945 AUDIT_ARCH_MIPSEL64N32, for big and little endian respectively.
2946
2947 Because of that an sshd built for MIPS64 n32 rejects connection attempts
2948 and the output of strace reveals that the problem is related to seccomp
2949 audit:
2950
2951 [pid 194] prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, {len=57,
2952 filter=0x555d5da0}) = 0
2953 [pid 194] write(7, "\0\0\0]\0\0\0\5\0\0\0Ulist_hostkey_types: "..., 97) = ?
2954 [pid 193] <... poll resumed> ) = 2 ([{fd=5, revents=POLLIN|POLLHUP},
2955 {fd=6, revents=POLLHUP}])
2956 [pid 194] +++ killed by SIGSYS +++
2957
2958 This patch fixes that problem by setting the right value to
2959 seccomp_audit_arch taking into account the MIPS64 ABI.
2960
2961 Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
2962
2963commit 580086704c31de91dc7ba040a28e416bf1fefbca
2964Author: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
2965Date: Tue Jun 20 16:42:11 2017 +0100
2966
2967 configure.ac: detect MIPS ABI
2968
2969 Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
2970
2971commit cd4e937aa701f70366cd5b5969af525dff6fdf15
2972Author: Alan Yee <alyee@ucsd.edu>
2973Date: Wed Mar 7 15:12:14 2018 -0800
2974
2975 Use https URLs for links that support it.
2976
2977commit c0a0c3fc4a76b682db22146b28ddc46566db1ce9
2978Author: Darren Tucker <dtucker@dtucker.net>
2979Date: Mon Mar 5 20:03:07 2018 +1100
2980
2981 Disable UTMPX on SunOS4.
2982
2983commit 58fd4c5c0140f6636227ca7acbb149ab0c2509b9
2984Author: Darren Tucker <dtucker@dtucker.net>
2985Date: Mon Mar 5 19:28:08 2018 +1100
2986
2987 Check for and work around buggy fflush(NULL).
2988
2989 Some really old platforms (eg SunOS4) segfault on fflush(NULL) so check
2990 for and work around. With klausz at haus-gisela.de.
2991
2992commit 71e48bc7945f867029e50e06c665c66aed6d3c64
2993Author: Darren Tucker <dtucker@dtucker.net>
2994Date: Mon Mar 5 10:22:32 2018 +1100
2995
2996 Remove extra XMSS #endif
2997
2998 Extra #endif breaks compile with -DWITH_XMSS. Pointed out by Jack
2999 Schmidt via github.
3000
3001commit 055e09e2212ff52067786bf6d794ca9512ff7f0c
3002Author: dtucker@openbsd.org <dtucker@openbsd.org>
3003Date: Sat Mar 3 06:37:53 2018 +0000
3004
3005 upstream: Update RSA minimum modulus size to 1024. sshkey.h rev 1.18
3006
3007 bumped the minimum from 768 to 1024, update man page accordingly.
3008
3009 OpenBSD-Commit-ID: 27563ab4e866cd2aac40a5247876f6787c08a338
3010
3011commit 7e4fadd3248d6bb7d39d6688c76a613d35d2efc1
3012Author: djm@openbsd.org <djm@openbsd.org>
3013Date: Sun Mar 4 01:46:48 2018 +0000
3014
3015 upstream: for the pty control tests, just check that the PTY path
3016
3017 points to something in /dev (rather than checking the device node itself);
3018 makes life easier for portable, where systems with dynamic ptys can delete
3019 nodes before we get around to testing their existence.
3020
3021 OpenBSD-Regress-ID: b1e455b821e62572bccd98102f8dd9d09bb94994
3022
3023commit 13ef4cf53f24753fe920832b990b25c9c9cd0530
3024Author: Darren Tucker <dtucker@dtucker.net>
3025Date: Sat Mar 3 16:21:20 2018 +1100
3026
3027 Update PAM password change to new opts API.
3028
3029commit 33561e68e0b27366cb769295a077aabc6a49d2a1
3030Author: Darren Tucker <dtucker@dtucker.net>
3031Date: Sat Mar 3 14:56:09 2018 +1100
3032
3033 Add strndup for platforms that need it.
3034
3035 Some platforms don't have strndup, which includes Solaris 10, NetBSD 3
3036 and FreeBSD 6.
3037
3038commit e8a17feba95eef424303fb94441008f6c5347aaf
3039Author: Darren Tucker <dtucker@dtucker.net>
3040Date: Sat Mar 3 14:49:07 2018 +1100
3041
3042 Flatten and alphabetize object file lists.
3043
3044 This will make maintenance and changes easier. "no objection" tim@
3045
3046commit de1920d743d295f50e6905e5957c4172c038e8eb
3047Author: djm@openbsd.org <djm@openbsd.org>
3048Date: Sat Mar 3 03:16:17 2018 +0000
3049
3050 upstream: unit tests for new authorized_keys options API
3051
3052 OpenBSD-Regress-ID: 820f9ec9c6301f6ca330ad4052d85f0e67d0bdc1
3053
3054commit dc3e92df17556dc5b0ab19cee8dcb2a6ba348717
3055Author: djm@openbsd.org <djm@openbsd.org>
3056Date: Fri Mar 2 02:53:27 2018 +0000
3057
3058 upstream: fix testing of pty option, include positive test and
3059
3060 testing of restrict keyword
3061
3062 OpenBSD-Regress-ID: 4268f27c2706a0a95e725d9518c5bcbec9814c6d
3063
3064commit 3d1edd1ebbc0aabea8bbe61903060f37137f7c61
3065Author: djm@openbsd.org <djm@openbsd.org>
3066Date: Fri Mar 2 02:51:55 2018 +0000
3067
3068 upstream: better testing for port-forwarding and restrict flags in
3069
3070 authorized_keys
3071
3072 OpenBSD-Regress-ID: ee771df8955f2735df54746872c6228aff381daa
3073
3074commit 7c856857607112a3dfe6414696bf4c7ab7fb0cb3
3075Author: djm@openbsd.org <djm@openbsd.org>
3076Date: Sat Mar 3 03:15:51 2018 +0000
3077
3078 upstream: switch over to the new authorized_keys options API and
3079
3080 remove the legacy one.
3081
3082 Includes a fairly big refactor of auth2-pubkey.c to retain less state
3083 between key file lines.
3084
3085 feedback and ok markus@
3086
3087 OpenBSD-Commit-ID: dece6cae0f47751b9892080eb13d6625599573df
3088
3089commit 90c4bec8b5f9ec4c003ae4abdf13fc7766f00c8b
3090Author: djm@openbsd.org <djm@openbsd.org>
3091Date: Sat Mar 3 03:06:02 2018 +0000
3092
3093 upstream: Introduce a new API for handling authorized_keys options.
3094
3095 This API parses options to a dedicated structure rather than the old API's
3096 approach of setting global state. It also includes support for merging
3097 options, e.g. from authorized_keys, authorized_principals and/or
3098 certificates.
3099
3100 feedback and ok markus@
3101
3102 OpenBSD-Commit-ID: 98badda102cd575210d7802943e93a34232c80a2
3103
3104commit 26074380767e639ef89321610e146ae11016b385
3105Author: djm@openbsd.org <djm@openbsd.org>
3106Date: Sat Mar 3 03:01:50 2018 +0000
3107
3108 upstream: warn when the agent returns a signature type that was
3109
3110 different to what was requested. This might happen when an old/non-OpenSSH
3111 agent is asked to make a rsa-sha2-256/512 signature but only supports
3112 ssh-rsa. bz#2799 feedback and ok markus@
3113
3114 OpenBSD-Commit-ID: 760c0f9438c5c58abc16b5f98008ff2d95cb13ce
3115
3116commit f493d2b0b66fb003ed29f31dd66ff1aeb64be1fc
3117Author: jmc@openbsd.org <jmc@openbsd.org>
3118Date: Fri Mar 2 21:40:15 2018 +0000
3119
3120 upstream: apply a lick of paint; tweaks/ok dtucker
3121
3122 OpenBSD-Commit-ID: 518a6736338045e0037f503c21027d958d05e703
3123
3124commit 713d9cb510e0e7759398716cbe6dcf43e574be71
3125Author: djm@openbsd.org <djm@openbsd.org>
3126Date: Fri Mar 2 03:02:11 2018 +0000
3127
3128 upstream: Allow escaped quotes \" and \' in ssh_config and
3129
3130 sshd_config quotes option strings. bz#1596 ok markus@
3131
3132 OpenBSD-Commit-ID: dd3a29fc2dc905e8780198e5a6a30b096de1a1cb
3133
3134commit 94b4e2d29afaaaef89a95289b16c18bf5627f7cd
3135Author: djm@openbsd.org <djm@openbsd.org>
3136Date: Fri Mar 2 02:08:03 2018 +0000
3137
3138 upstream: refactor sshkey_read() to make it a little more, err,
3139
3140 readable. ok markus
3141
3142 OpenBSD-Commit-ID: 2e9247b5762fdac3b6335dc606d3822121714c28
3143
3144commit 5886b92968b360623491699247caddfb77a74d80
3145Author: markus@openbsd.org <markus@openbsd.org>
3146Date: Thu Mar 1 20:32:16 2018 +0000
3147
3148 upstream: missing #ifdef for _PATH_HOST_XMSS_KEY_FILE; report by
3149
3150 jmc@
3151
3152 OpenBSD-Commit-ID: 9039cb69a3f9886bfef096891a9e7fcbd620280b
3153
3154commit 3b36bed3d26f17f6a2b7e036e01777770fe1bcd4
3155Author: dtucker@openbsd.org <dtucker@openbsd.org>
3156Date: Mon Feb 26 12:14:53 2018 +0000
3157
3158 upstream: Remove unneeded (local) include. ok markus@
3159
3160 OpenBSD-Commit-ID: 132812dd2296b1caa8cb07d2408afc28e4e60f93
3161
3162commit 27b9f3950e0289e225b57b7b880a8f1859dcd70b
3163Author: dtucker@openbsd.org <dtucker@openbsd.org>
3164Date: Mon Feb 26 03:56:44 2018 +0000
3165
3166 upstream: Add $OpenBSD$ markers to xmss files to help keep synced
3167
3168 with portable. ok djm@.
3169
3170 OpenBSD-Commit-ID: 5233a27aafd1dfadad4b957225f95ae51eb365c1
3171
3172commit afd830847a82ebbd5aeab05bad6d2c8ce74df1cd
3173Author: dtucker@openbsd.org <dtucker@openbsd.org>
3174Date: Mon Feb 26 03:03:05 2018 +0000
3175
3176 upstream: Add newline at end of file to prevent compiler warnings.
3177
3178 OpenBSD-Commit-ID: 52f247d4eafe840c7c14c8befa71a760a8eeb063
3179
3180commit 941e0d3e9bb8d5e4eb70cc694441445faf037c84
3181Author: Darren Tucker <dtucker@dtucker.net>
3182Date: Wed Feb 28 19:59:35 2018 +1100
3183
3184 Add WITH_XMSS, move to prevent conflicts.
3185
3186 Add #ifdef WITH_XMSS to ssh-xmss.c, move it in the other files to after
3187 includes.h so it's less likely to conflict and will pick up WITH_XMSS if
3188 added to config.h.
3189
3190commit a10d8552d0d2438da4ed539275abcbf557d1e7a8
3191Author: Darren Tucker <dtucker@dtucker.net>
3192Date: Tue Feb 27 14:45:17 2018 +1100
3193
3194 Conditionally compile XMSS code.
3195
3196 The XMSS code is currently experimental and, unlike the rest of OpenSSH
3197 cannot currently be compiled with a c89 compiler.
3198
3199commit 146c3bd28c8dbee9c4b06465d9c9facab96b1e9b
3200Author: Darren Tucker <dtucker@dtucker.net>
3201Date: Mon Feb 26 12:51:29 2018 +1100
3202
3203 Check dlopen has RTLD_NOW before enabling pkcs11.
3204
3205commit 1323f120d06a26074c4d154fcbe7f49bcad3d741
3206Author: Darren Tucker <dtucker@dtucker.net>
3207Date: Tue Feb 27 08:41:25 2018 +1100
3208
3209 Check for attributes on prototype args.
3210
3211 Some compilers (gcc 2.9.53, 3.0 and probably others, see gcc bug #3481)
3212 do not accept __attribute__ on function pointer prototype args. Check for
3213 this and hide them if they're not accepted.
3214
3215commit f0b245b0439e600fab782d19e97980e9f2c2533c
3216Author: Darren Tucker <dtucker@dtucker.net>
3217Date: Mon Feb 26 11:43:48 2018 +1100
3218
3219 Check if HAVE_DECL_BZERO correctly.
3220
3221commit c7ef4a399155e1621a532cc5e08e6fa773658dd4
3222Author: Darren Tucker <dtucker@dtucker.net>
3223Date: Mon Feb 26 17:42:56 2018 +1100
3224
3225 Wrap <stdint.h> in #ifdef HAVE_STDINT_H.
3226
3227commit ac53ce46cf8165cbda7f57ee045f9f32e1e92b31
3228Author: Darren Tucker <dtucker@dtucker.net>
3229Date: Mon Feb 26 16:24:23 2018 +1100
3230
3231 Replace $(CURDIR) with $(PWD).
3232
3233 The former doesn't work on Solaris or BSDs.
3234
3235commit 534b2680a15d14e7e60274d5b29b812d44cc5a44
3236Author: Darren Tucker <dtucker@dtucker.net>
3237Date: Mon Feb 26 14:51:59 2018 +1100
3238
3239 Comment out hexdump().
3240
3241 Nothing currently uses them but they cause conflicts on at least
3242 FreeBSD, possibly others. ok djm@
3243
3244commit 5aea4aa522f61bb2f34c3055a7de203909dfae77
3245Author: Darren Tucker <dtucker@dtucker.net>
3246Date: Mon Feb 26 14:39:14 2018 +1100
3247
3248 typo: missing ;
3249
3250commit cd3ab57f9b388f8b1abf601dc4d78ff82d83b75e
3251Author: Darren Tucker <dtucker@dtucker.net>
3252Date: Mon Feb 26 14:37:06 2018 +1100
3253
3254 Hook up flock() compat code.
3255
3256 Also a couple of minor changes: fail if we can't lock instead of
3257 silently succeeding, and apply a couple of minor style fixes.
3258
3259commit b087998d1ba90dd1ddb6bfdb17873dc3e7392798
3260Author: Darren Tucker <dtucker@dtucker.net>
3261Date: Mon Feb 26 14:27:02 2018 +1100
3262
3263 Import flock() compat from NetBSD.
3264
3265 From NetBSD's src/trunk/tools/compat/flock.c, no OpenSSH changes yet.
3266
3267commit 89212533dde6798324e835b1499084658df4579e
3268Author: Darren Tucker <dtucker@dtucker.net>
3269Date: Mon Feb 26 12:32:14 2018 +1100
3270
3271 Fix breakage when REGRESSTMP not set.
3272
3273 BUILDDIR is not set where used for REGRESSTMP, use make's CURDIR
3274 instead. Pointed out by djm@.
3275
3276commit f885474137df4b89498c0b8834c2ac72c47aa4bd
3277Author: Damien Miller <djm@mindrot.org>
3278Date: Mon Feb 26 12:18:14 2018 +1100
3279
3280 XMSS-related files get includes.h
3281
3282commit 612faa34c72e421cdc9e63f624526bae62d557cc
3283Author: Damien Miller <djm@mindrot.org>
3284Date: Mon Feb 26 12:17:55 2018 +1100
3285
3286 object files end with .o - not .c
3287
3288commit bda709b8e13d3eef19e69c2d1684139e3af728f5
3289Author: Damien Miller <djm@mindrot.org>
3290Date: Mon Feb 26 12:17:22 2018 +1100
3291
3292 avoid inclusion of deprecated selinux/flask.h
3293
3294 Use string_to_security_class() instead.
3295
3296commit 2e396439365c4ca352cac222717d09b14f8a0dfd
3297Author: Damien Miller <djm@mindrot.org>
3298Date: Mon Feb 26 11:48:27 2018 +1100
3299
3300 updatedepend
3301
3302commit 1b11ea7c58cd5c59838b5fa574cd456d6047b2d4
3303Author: markus@openbsd.org <markus@openbsd.org>
3304Date: Fri Feb 23 15:58:37 2018 +0000
3305
3306 upstream: Add experimental support for PQC XMSS keys (Extended
3307
3308 Hash-Based Signatures) The code is not compiled in by default (see WITH_XMSS
3309 in Makefile.inc) Joint work with stefan-lukas_gazdag at genua.eu See
3310 https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12 ok
3311 djm@
3312
3313 OpenBSD-Commit-ID: ef3eccb96762a5d6f135d7daeef608df7776a7ac
3314
3315commit 7d330a1ac02076de98cfc8fda05353d57b603755
3316Author: jmc@openbsd.org <jmc@openbsd.org>
3317Date: Fri Feb 23 07:38:09 2018 +0000
3318
3319 upstream: some cleanup for BindInterface and ssh-keyscan;
3320
3321 OpenBSD-Commit-ID: 1a719ebeae22a166adf05bea5009add7075acc8c
3322
3323commit c7b5a47e3b9db9a0f0198f9c90c705f6307afc2b
3324Author: Darren Tucker <dtucker@dtucker.net>
3325Date: Sun Feb 25 23:55:41 2018 +1100
3326
3327 Invert sense of getpgrp test.
3328
3329 AC_FUNC_GETPGRP tests if getpgrp(0) works, which it does if it's not
3330 declared. Instead, test if the zero-arg version we want to use works.
3331
3332commit b39593a6de5290650a01adf8699c6460570403c2
3333Author: Darren Tucker <dtucker@dtucker.net>
3334Date: Sun Feb 25 13:25:15 2018 +1100
3335
3336 Add no-op getsid implmentation.
3337
3338commit 11057564eb6ab8fd987de50c3d7f394c6f6632b7
3339Author: Darren Tucker <dtucker@dtucker.net>
3340Date: Sun Feb 25 11:22:57 2018 +1100
3341
3342 bsd-statvfs: include sys/vfs.h, check for f_flags.
3343
3344commit e9dede06e5bc582a4aeb5b1cd5a7a640d7de3609
3345Author: Darren Tucker <dtucker@dtucker.net>
3346Date: Sun Feb 25 10:20:31 2018 +1100
3347
3348 Handle calloc(0,x) where different from malloc.
3349
3350 Configure assumes that if malloc(0) returns null then calloc(0,n)
3351 also does. On some old platforms (SunOS4) malloc behaves as expected
3352 (as determined by AC_FUNC_MALLOC) but calloc doesn't. Test for this
3353 at configure time and activate the replacement function if found, plus
3354 handle this case in rpl_calloc.
3355
3356commit 2eb4041493fd2635ffdc64a852d02b38c4955e0b
3357Author: Darren Tucker <dtucker@dtucker.net>
3358Date: Sat Feb 24 21:06:48 2018 +1100
3359
3360 Add prototype for readv if needed.
3361
3362commit 6c8c9a615b6d31db8a87bc25033f053d5b0a831e
3363Author: Darren Tucker <dtucker@dtucker.net>
3364Date: Sat Feb 24 20:46:37 2018 +1100
3365
3366 Check for raise and supply if needed.
3367
3368commit a9004425a032d7a7141a5437cfabfd02431e2a74
3369Author: Darren Tucker <dtucker@dtucker.net>
3370Date: Sat Feb 24 20:25:22 2018 +1100
3371
3372 Check for bzero and supply if needed.
3373
3374 Since explicit_bzero uses it via an indirect it needs to be a function
3375 not just a macro.
3376
3377commit 1a348359e4d2876203b5255941bae348557f4f54
3378Author: djm@openbsd.org <djm@openbsd.org>
3379Date: Fri Feb 23 05:14:05 2018 +0000
3380
3381 upstream: Add ssh-keyscan -D option to make it print its results in
3382
3383 SSHFP format bz#2821, ok dtucker@
3384
3385 OpenBSD-Commit-ID: 831446b582e0f298ca15c9d99c415c899e392221
3386
3387commit 3e19fb976a47b44b3d7c4f8355269f7f2c5dd82c
3388Author: dtucker@openbsd.org <dtucker@openbsd.org>
3389Date: Fri Feb 23 04:18:46 2018 +0000
3390
3391 upstream: Add missing braces.
3392
3393 Caught by the tinderbox's -Werror=misleading-indentation, ok djm@
3394
3395 OpenBSD-Commit-ID: d44656af594c3b2366eb87d6abcef83e1c88a6ca
3396
3397commit b59162da99399d89bd57f71c170c0003c55b1583
3398Author: Darren Tucker <dtucker@dtucker.net>
3399Date: Fri Feb 23 15:20:42 2018 +1100
3400
3401 Check for ifaddrs.h for BindInterface.
3402
3403 BindInterface required getifaddr and friends so disable if not available
3404 (eg Solaris 10). We should be able to add support for some systems with
3405 a bit more work but this gets the building again.
3406
3407commit a8dd6fe0aa10b6866830b4688a73ef966f0aed88
3408Author: Damien Miller <djm@mindrot.org>
3409Date: Fri Feb 23 14:19:11 2018 +1100
3410
3411 space before tab in previous
3412
3413commit b5e9263c7704247f9624c8f5c458e9181fcdbc09
3414Author: dtucker@openbsd.org <dtucker@openbsd.org>
3415Date: Fri Feb 9 03:40:22 2018 +0000
3416
3417 upstream: Replace fatal with exit in the case that we do not have
3418
3419 $SUDO set. Prevents test failures when neither sudo nor doas are configured.
3420
3421 OpenBSD-Regress-ID: 6a0464decc4f8ac7d6eded556a032b0fc521bc7b
3422
3423commit 3e9d3192ad43758ef761c5b0aa3ac5ccf8121ef2
3424Author: Darren Tucker <dtucker@dtucker.net>
3425Date: Fri Feb 23 14:10:53 2018 +1100
3426
3427 Use portable syntax for REGRESSTMP.
3428
3429commit 73282b61187883a2b2bb48e087fdda1d751d6059
3430Author: djm@openbsd.org <djm@openbsd.org>
3431Date: Fri Feb 23 03:03:00 2018 +0000
3432
3433 upstream: unbreak interop test after SSHv1 purge; patch from Colin
3434
3435 Watson via bz#2823
3436
3437 OpenBSD-Regress-ID: 807d30a597756ed6612bdf46dfebca74f49cb31a
3438
3439commit f8985dde5f46aedade0373365cbf86ed3f1aead2
3440Author: dtucker@openbsd.org <dtucker@openbsd.org>
3441Date: Fri Feb 9 03:42:57 2018 +0000
3442
3443 upstream: Skip sftp-chroot test when SUDO not set instead of
3444
3445 fatal().
3446
3447 OpenBSD-Regress-ID: cd4b5f1109b0dc09af4e5ea7d4968c43fbcbde88
3448
3449commit df88551c02d4e3445c44ff67ba8757cff718609a
3450Author: dtucker@openbsd.org <dtucker@openbsd.org>
3451Date: Fri Feb 9 03:40:22 2018 +0000
3452
3453 upstream: Replace fatal with exit in the case that we do not have
3454
3455 $SUDO set. Prevents test failures when neither sudo nor doas are configured.
3456
3457 OpenBSD-Regress-ID: 6a0464decc4f8ac7d6eded556a032b0fc521bc7b
3458
3459commit 3b252c20b19f093e87363de197f1100b79705dd3
3460Author: djm@openbsd.org <djm@openbsd.org>
3461Date: Thu Feb 8 08:46:20 2018 +0000
3462
3463 upstream: some helpers to check verbose/quiet mode
3464
3465 OpenBSD-Regress-ID: e736aac39e563f5360a0935080a71d5fdcb976de
3466
3467commit ac2e3026bbee1367e4cda34765d1106099be3287
3468Author: djm@openbsd.org <djm@openbsd.org>
3469Date: Fri Feb 23 02:34:33 2018 +0000
3470
3471 upstream: Add BindInterface ssh_config directive and -B
3472
3473 command-line argument to ssh(1) that directs it to bind its outgoing
3474 connection to the address of the specified network interface.
3475
3476 BindInterface prefers to use addresses that aren't loopback or link-
3477 local, but will fall back to those if no other addresses of the
3478 required family are available on that interface.
3479
3480 Based on patch by Mike Manning in bz#2820, ok dtucker@
3481
3482 OpenBSD-Commit-ID: c5064d285c2851f773dd736a2c342aa384fbf713
3483
3484commit fcdb9d777839a3fa034b3bc3067ba8c1f6886679
3485Author: djm@openbsd.org <djm@openbsd.org>
3486Date: Mon Feb 19 00:55:02 2018 +0000
3487
3488 upstream: emphasise that the hostkey rotation may send key types
3489
3490 that the client may not support, and that the client should simply disregard
3491 such keys (this is what ssh does already).
3492
3493 OpenBSD-Commit-ID: 65f8ffbc32ac8d12be8f913d7c0ea55bef8622bf
3494
3495commit ce066f688dc166506c082dac41ca686066e3de5f
3496Author: Darren Tucker <dtucker@dtucker.net>
3497Date: Thu Feb 22 20:45:09 2018 +1100
3498
3499 Add headers for sys/audit.h.
3500
3501 On some older platforms (at least sunos4, probably others) sys/audit.h
3502 requires some other headers. Patch from klausz at haus-gisela.de.
3503
3504commit 3fd2d2291a695c96a54269deae079bacce6e3fb9
3505Author: Darren Tucker <dtucker@dtucker.net>
3506Date: Mon Feb 19 18:37:40 2018 +1100
3507
3508 Add REGRESSTMP make var override.
3509
3510 Defaults to original location ($srcdir/regress) but allows overriding
3511 if desired, eg a directory in /tmp.
3512
3513commit f8338428588f3ecb5243c86336eccaa28809f97e
3514Author: Darren Tucker <dtucker@dtucker.net>
3515Date: Sun Feb 18 15:53:15 2018 +1100
3516
3517 Remove now-unused check for getrusage.
3518
3519 getrusage was used in ssh-rand-helper but that's now long gone.
3520 Patch from klauszh at haus-gisela.de.
3521
3522commit 8570177195f6a4b3173c0a25484a83641ee3faa6
3523Author: dtucker@openbsd.org <dtucker@openbsd.org>
3524Date: Fri Feb 16 04:43:11 2018 +0000
3525
3526 upstream: Don't send IUTF8 to servers that don't like them.
3527
3528 Some SSH servers eg "ConfD" drop the connection if the client sends the
3529 new IUTF8 (RFC8160) terminal mode even if it's not set. Add a bug bit
3530 for such servers and avoid sending IUTF8 to them. ok djm@
3531
3532 OpenBSD-Commit-ID: 26425855402d870c3c0a90491e72e2a8a342ceda
3533
3534commit f6dc2ba3c9d12be53057b9371f5109ec553a399f
3535Author: Darren Tucker <dtucker@dtucker.net>
3536Date: Fri Feb 16 17:32:28 2018 +1100
3537
3538 freezero should check for NULL.
3539
3540commit 680321f3eb46773883111e234b3c262142ff7c5b
3541Author: djm@openbsd.org <djm@openbsd.org>
3542Date: Fri Feb 16 02:40:45 2018 +0000
3543
3544 upstream: Mention recent DH KEX methods:
3545
3546 diffie-hellman-group14-sha256
3547 diffie-hellman-group16-sha512
3548 diffie-hellman-group18-sha512
3549
3550 From Jakub Jelen via bz#2826
3551
3552 OpenBSD-Commit-ID: 51bf769f06e55447f4bfa7306949e62d2401907a
3553
3554commit 88c50a5ae20902715f0fca306bb9c38514f71679
3555Author: djm@openbsd.org <djm@openbsd.org>
3556Date: Fri Feb 16 02:32:40 2018 +0000
3557
3558 upstream: stop loading DSA keys by default, remove sshd_config
3559
3560 stanza and manpage bits; from Colin Watson via bz#2662, ok dtucker@
3561
3562 OpenBSD-Commit-ID: d33a849f481684ff655c140f5eb1b4acda8c5c09
3563
3564commit d2b3db2860c962927def39a52f67f1c23f7b201a
3565Author: jsing@openbsd.org <jsing@openbsd.org>
3566Date: Wed Feb 14 16:27:24 2018 +0000
3567
3568 upstream: Ensure that D mod (P-1) and D mod (Q-1) are calculated in
3569
3570 constant time.
3571
3572 This avoids a potential side channel timing leak.
3573
3574 ok djm@ markus@
3575
3576 OpenBSD-Commit-ID: 71ff3c16be03290e63d8edab8fac053d8a82968c
3577
3578commit 4270efad7048535b4f250f493d70f9acfb201593
3579Author: jsing@openbsd.org <jsing@openbsd.org>
3580Date: Wed Feb 14 16:03:32 2018 +0000
3581
3582 upstream: Some obvious freezero() conversions.
3583
3584 This also zeros an ed25519_pk when it was not being zeroed previously.
3585
3586 ok djm@ dtucker@
3587
3588 OpenBSD-Commit-ID: 5c196a3c85c23ac0bd9b11bcadaedd90b7a2ce82
3589
3590commit affa6ba67ffccc30b85d6e98f36eb5afd9386882
3591Author: Darren Tucker <dtucker@dtucker.net>
3592Date: Thu Feb 15 22:32:04 2018 +1100
3593
3594 Remove execute bit from modpipe.c.
3595
3596commit 9879dca438526ae6dfd656fecb26b0558c29c731
3597Author: Darren Tucker <dtucker@dtucker.net>
3598Date: Thu Feb 15 22:26:16 2018 +1100
3599
3600 Update prngd link to point to sourceforge.
3601
3602commit b6973fa5152b1a0bafd2417b7c3ad96f6e87d014
3603Author: Darren Tucker <dtucker@dtucker.net>
3604Date: Thu Feb 15 22:22:38 2018 +1100
3605
3606 Remove references to UNICOS.
3607
3608commit f1ca487940449f0b64f38f1da575078257609966
3609Author: Darren Tucker <dtucker@dtucker.net>
3610Date: Thu Feb 15 22:18:37 2018 +1100
3611
3612 Remove extra newline.
3613
3614commit 6d4e980f3cf27f409489cf89cd46c21501b13731
3615Author: Darren Tucker <dtucker@dtucker.net>
3616Date: Thu Feb 15 22:16:54 2018 +1100
3617
3618 OpenSSH's builtin entropy gathering is long gone.
3619
3620commit 389125b25d1a1d7f22e907463b7e8eca74af79ea
3621Author: Darren Tucker <dtucker@dtucker.net>
3622Date: Thu Feb 15 21:43:01 2018 +1100
3623
3624 Replace remaining mysignal() with signal().
3625
3626 These seem to have been missed during the replacement of mysignal
3627 with #define signal in commit 5ade9ab. Both include the requisite
3628 headers to pick up the #define.
3629
3630commit 265d88d4e61e352de6791733c8b29fa3d7d0c26d
3631Author: Darren Tucker <dtucker@dtucker.net>
3632Date: Thu Feb 15 20:06:19 2018 +1100
3633
3634 Remove remaining now-obsolete cvs $Ids.
3635
3636commit 015749e9b1d2f6e14733466d19ba72f014d0845c
3637Author: Darren Tucker <dtucker@dtucker.net>
3638Date: Thu Feb 15 17:01:54 2018 +1100
3639
3640 Regenerate dependencies after UNICOS removal.
3641
3642commit ddc0f3814881ea279a6b6d4d98e03afc60ae1ed7
3643Author: Darren Tucker <dtucker@dtucker.net>
3644Date: Tue Feb 13 09:10:46 2018 +1100
3645
3646 Remove UNICOS support.
3647
3648 The code required to support it is quite invasive to the mainline
3649 code that is synced with upstream and is an ongoing maintenance burden.
3650 Both the hardware and software are literal museum pieces these days and
3651 we could not find anyone still running OpenSSH on one.
3652
3653commit 174bed686968494723e6db881208cc4dac0d020f
3654Author: Darren Tucker <dtucker@dtucker.net>
3655Date: Tue Feb 13 18:12:47 2018 +1100
3656
3657 Retpoline linker flag only needed for linking.
3658
3659commit 075e258c2cc41e1d7f3ea2d292c5342091728d40
3660Author: Darren Tucker <dtucker@dtucker.net>
3661Date: Tue Feb 13 17:36:43 2018 +1100
3662
3663 Default PidFile is sshd.pid not ssh.pid.
3664
3665commit 49f3c0ec47730ea264e2bd1e6ece11167d6384df
3666Author: Darren Tucker <dtucker@dtucker.net>
3667Date: Tue Feb 13 16:27:09 2018 +1100
3668
3669 Remove assigned-to-but-never-used variable.
3670
3671 'p' was removed in previous change but I neglected to remove the
3672 otherwise-unused assignment to it.
3673
3674commit b8bbff3b3fc823bf80c5ab226c94f13cb887d5b1
3675Author: djm@openbsd.org <djm@openbsd.org>
3676Date: Tue Feb 13 03:36:56 2018 +0000
3677
3678 upstream: remove space before tab
3679
3680 OpenBSD-Commit-ID: 674edd214d0a7332dd4623c9cf8117301b012890
3681
3682commit 05046d907c211cb9b4cd21b8eff9e7a46cd6c5ab
3683Author: dtucker@openbsd.org <dtucker@openbsd.org>
3684Date: Sun Feb 11 21:16:56 2018 +0000
3685
3686 upstream Don't reset signal handlers inside handlers.
3687
3688 The signal handlers from the original ssh1 code on which OpenSSH
3689 is based assume unreliable signals and reinstall their handlers.
3690 Since OpenBSD (and pretty much every current system) has reliable
3691 signals this is not needed. In the unlikely even that -portable
3692 is still being used on such systems we will deal with it in the
3693 compat layer. ok deraadt@
3694
3695 OpenBSD-Commit-ID: f53a1015cb6908431b92116130d285d71589612c
3696
3697commit 3c51143c639ac686687c7acf9b373b8c08195ffb
3698Author: Darren Tucker <dtucker@dtucker.net>
3699Date: Tue Feb 13 09:07:29 2018 +1100
3700
3701 Whitespace sync with upstream.
3702
3703commit 19edfd4af746bedf0df17f01953ba8c6d3186eb7
3704Author: Darren Tucker <dtucker@dtucker.net>
3705Date: Tue Feb 13 08:25:46 2018 +1100
3706
3707 Whitespace sync with upstream.
3708
3709commit fbfa6f980d7460b3e12b0ce88ed3b6018edf4711
3710Author: Darren Tucker <dtucker@dtucker.net>
3711Date: Sun Feb 11 21:25:11 2018 +1300
3712
3713 Move signal compat code into bsd-signal.{c,h}
3714
3715commit 24d2a33bd3bf5170700bfdd8675498aa09a79eab
3716Author: Darren Tucker <dtucker@dtucker.net>
3717Date: Sun Feb 11 21:20:39 2018 +1300
3718
3719 Include headers for linux/if.h.
3720
3721 Prevents configure-time "present but cannot be compiled" warning.
3722
3723commit bc02181c24fc551aab85eb2cff0f90380928ef43
3724Author: Darren Tucker <dtucker@dtucker.net>
3725Date: Sun Feb 11 19:45:47 2018 +1300
3726
3727 Fix test for -z,retpolineplt linker flag.
3728
3729commit 3377df00ea3fece5293db85fe63baef33bf5152e
3730Author: Darren Tucker <dtucker@dtucker.net>
3731Date: Sun Feb 11 09:32:37 2018 +1100
3732
3733 Add checks for Spectre v2 mitigation (retpoline)
3734
3735 This adds checks for gcc and clang flags for mitigations for Spectre
3736 variant 2, ie "retpoline". It'll automatically enabled if the compiler
3737 supports it as part of toolchain hardening flag. ok djm@
3738
3739commit d9e5cf078ea5380da6df767bb1773802ec557ef0
3740Author: djm@openbsd.org <djm@openbsd.org>
3741Date: Sat Feb 10 09:25:34 2018 +0000
3742
3743 upstream commit
3744
3745 constify some private key-related functions; based on
3746 https://github.com/openssh/openssh-portable/pull/56 by Vincent Brillault
3747
3748 OpenBSD-Commit-ID: dcb94a41834a15f4d00275cb5051616fdc4c988c
3749
3750commit a7c38215d564bf98e8e9eb40c1079e3adf686f15
3751Author: djm@openbsd.org <djm@openbsd.org>
3752Date: Sat Feb 10 09:03:54 2018 +0000
3753
3754 upstream commit
3755
3756 Mention ServerAliveTimeout in context of TCPKeepAlives;
3757 prompted by Christoph Anton Mitterer via github
3758
3759 OpenBSD-Commit-ID: f0cf1b5bd3f1fbf41d71c88d75d93afc1c880ca2
3760
3761commit 62562ceae61e4f7cf896566592bb840216e71061
3762Author: djm@openbsd.org <djm@openbsd.org>
3763Date: Sat Feb 10 06:54:38 2018 +0000
3764
3765 upstream commit
3766
3767 clarify IgnoreUserKnownHosts; based on github PR from
3768 Christoph Anton Mitterer.
3769
3770 OpenBSD-Commit-ID: 4fff2c17620c342fb2f1f9c2d2e679aab3e589c3
3771
3772commit 4f011daa4cada6450fa810f7563b8968639bb562
3773Author: djm@openbsd.org <djm@openbsd.org>
3774Date: Sat Feb 10 06:40:28 2018 +0000
3775
3776 upstream commit
3777
3778 Shorter, more accurate explanation of
3779 NoHostAuthenticationForLocalhost without the confusing example. Prompted by
3780 Christoph Anton Mitterer via github and bz#2293.
3781
3782 OpenBSD-Commit-ID: 19dc96bea25b80d78d416b581fb8506f1e7b76df
3783
3784commit 77e05394af21d3f5faa0c09ed3855e4505a5cf9f
3785Author: djm@openbsd.org <djm@openbsd.org>
3786Date: Sat Feb 10 06:15:12 2018 +0000
3787
3788 upstream commit
3789
3790 Disable RemoteCommand and RequestTTY in the ssh session
3791 started by scp. sftp is already doing this. From Camden Narzt via github; ok
3792 dtucker
3793
3794 OpenBSD-Commit-ID: 59e2611141c0b2ee579c6866e8eb9d7d8217bc6b
3795
3796commit ca613249a00b64b2eea9f52d3834b55c28cf2862
3797Author: djm@openbsd.org <djm@openbsd.org>
3798Date: Sat Feb 10 05:48:46 2018 +0000
3799
3800 upstream commit
3801
3802 Refuse to create a certificate with an unusable number of
3803 principals; Prompted by gdestuynder via github
3804
3805 OpenBSD-Commit-ID: 8cfae2451e8f07810e3e2546dfdcce66984cbd29
3806
3807commit b56ac069d46b6f800de34e1e935f98d050731d14
3808Author: djm@openbsd.org <djm@openbsd.org>
3809Date: Sat Feb 10 05:43:26 2018 +0000
3810
3811 upstream commit
3812
3813 fatal if we're unable to write all the public key; previously
3814 we would silently ignore errors writing the comment and terminating newline.
3815 Prompted by github PR from WillerZ; ok dtucker
3816
3817 OpenBSD-Commit-ID: 18fbfcfd4e8c6adbc84820039b64d70906e49831
3818
3819commit cdb10bd431f9f6833475c27e9a82ebb36fdb12db
3820Author: Darren Tucker <dtucker@dtucker.net>
3821Date: Sat Feb 10 11:18:38 2018 +1100
3822
3823 Add changelog entry for binary strip change.
3824
3825commit fbddd91897cfaf456bfc2081f39fb4a2208a0ebf
3826Author: Darren Tucker <dtucker@dtucker.net>
3827Date: Sat Feb 10 11:14:54 2018 +1100
3828
3829 Remove unused variables.
3830
3831commit 937d96587df99c16c611d828cded292fa474a32b
3832Author: Darren Tucker <dtucker@dtucker.net>
3833Date: Sat Feb 10 11:12:45 2018 +1100
3834
3835 Don't strip binaries so debuginfo gets built.
3836
3837 Tell install not to strip binaries during package creation so that the
3838 debuginfo package can be built.
3839
3840commit eb0865f330f59c889ec92696b97bd397090e720c
3841Author: Darren Tucker <dtucker@dtucker.net>
3842Date: Sat Feb 10 10:33:11 2018 +1100
3843
3844 Fix bogus dates in changelog.
3845
3846commit 7fbde1b34c1f6c9ca9e9d10805ba1e5e4538e165
3847Author: Darren Tucker <dtucker@dtucker.net>
3848Date: Sat Feb 10 10:25:15 2018 +1100
3849
3850 Remove SSH1 from description.
3851
3852commit 9c34a76f099c4e0634bf6ecc2f40ce93925402c4
3853Author: Darren Tucker <dtucker@dtucker.net>
3854Date: Sat Feb 10 10:19:16 2018 +1100
3855
3856 Add support for compat-openssl10 build dep.
3857
3858commit 04f4e8193cb5a5a751fcc356bd6656291fec539e
3859Author: Darren Tucker <dtucker@dtucker.net>
3860Date: Sat Feb 10 09:57:04 2018 +1100
3861
3862 Add leading zero so it'll work when rhel not set.
3863
3864 When rhel is not set it will error out with "bad if". Add leading zero
3865 as per https://fedoraproject.org/wiki/Packaging:DistTag so it'll work
3866 on non-RHEL.
3867
3868commit 12abd67a6af28476550807a443b38def2076bb92
3869Author: Darren Tucker <dtucker@dtucker.net>
3870Date: Sat Feb 10 09:56:34 2018 +1100
3871
3872 Update openssl-devel dependency.
3873
3874commit b33e7645f8813719d7f9173fef24463c8833ebb3
3875Author: nkadel <nkadel@gmail.com>
3876Date: Sun Nov 16 18:19:58 2014 -0500
3877
3878 Add mandir with-mandir' for RHEL 5 compatibility.
3879
3880 Activate '--mandir' and '--with-mandir' settings in setup for RHEL
3881 5 compatibility.
3882
3883commit 94f8bf360eb0162e39ddf39d69925c2e93511e40
3884Author: nkadel <nkadel@gmail.com>
3885Date: Sun Nov 16 18:18:51 2014 -0500
3886
3887 Discard 'K5DIR' reporting.
3888
3889 It does not work inside 'mock' build environment.
3890
3891commit bb7e54dbaf34b70b3e57acf7982f3a2136c94ee5
3892Author: nkadel <nkadel@gmail.com>
3893Date: Sun Nov 16 18:17:15 2014 -0500
3894
3895 Add 'dist' to 'rel' for OS specific RPM names.
3896
3897commit 87346f1f57f71150a9b8c7029d8c210e27027716
3898Author: nkadel <nkadel@gmail.com>
3899Date: Sun Nov 16 14:17:38 2014 -0500
3900
3901 Add openssh-devel >= 0.9.8f for redhat spec file.
3902
3903commit bec1478d710866d3c1b119343a35567a8fc71ec3
3904Author: nkadel <nkadel@gmail.com>
3905Date: Sun Nov 16 13:10:24 2014 -0500
3906
3907 Enhance BuildRequires for openssh-x11-askpass.
3908
3909commit 3104fcbdd3c70aefcb0cdc3ee24948907db8dc8f
3910Author: nkadel <nkadel@gmail.com>
3911Date: Sun Nov 16 13:04:14 2014 -0500
3912
3913 Always include x11-ssh-askpass SRPM.
3914
3915 Always include x11-ssh-askpass tarball in redhat SRPM, even if unused.
3916
3917commit c61d0d038d58eebc365f31830be6e04ce373ad1b
3918Author: Damien Miller <djm@mindrot.org>
3919Date: Sat Feb 10 09:43:12 2018 +1100
3920
3921 this is long unused; prompted by dtucker@
3922
3923commit 745771fb788e41bb7cdad34e5555bf82da3af7ed
3924Author: dtucker@openbsd.org <dtucker@openbsd.org>
3925Date: Fri Feb 9 02:37:36 2018 +0000
3926
3927 upstream commit
3928
3929 Remove unused sKerberosTgtPassing from enum. From
3930 calestyo via github pull req #11, ok djm@
3931
3932 OpenBSD-Commit-ID: 1008f8870865a7c4968b7aed402a0a9e3e5b9540
3933
3934commit 1f385f55332db830b0ae22a7663b98279ca2d657
3935Author: dtucker@openbsd.org <dtucker@openbsd.org>
3936Date: Thu Feb 8 04:12:32 2018 +0000
3937
3938 upstream commit
3939
3940 Rename struct umac_ctx to umac128_ctx too. In portable
3941 some linkers complain about two symbols with the same name having differing
3942 sizes. ok djm@
3943
3944 OpenBSD-Commit-ID: cbebf8bdd3310a9795b4939a1e112cfe24061ca3
3945
3946commit f1f047fb031c0081dbc8738f05bf5d4cc47acadf
3947Author: dtucker@openbsd.org <dtucker@openbsd.org>
3948Date: Wed Feb 7 22:52:45 2018 +0000
3949
3950 upstream commit
3951
3952 ssh_free checks for and handles NULL args, remove NULL
3953 checks from remaining callers. ok djm@
3954
3955 OpenBSD-Commit-ID: bb926825c53724c069df68a93a2597f9192f7e7b
3956
3957commit aee49b2a89b6b323c80dd3b431bd486e51f94c8c
3958Author: Darren Tucker <dtucker@dtucker.net>
3959Date: Thu Feb 8 12:36:22 2018 +1100
3960
3961 Set SO_REUSEADDR in regression test netcat.
3962
3963 Sometimes multiplex tests fail on Solaris with "netcat: local_listen:
3964 Address already in use" which is likely due to previous invocations
3965 leaving the port in TIME_WAIT. Set SO_REUSEADDR (in addition to
3966 SO_REUSEPORT which is alread set on platforms that support it). ok djm@
3967
3968commit 1749991c55bab716877b7c687cbfbf19189ac6f1
3969Author: jsing@openbsd.org <jsing@openbsd.org>
3970Date: Wed Feb 7 05:17:56 2018 +0000
3971
3972 upstream commit
3973
3974 Convert some explicit_bzero()/free() calls to freezero().
3975
3976 ok deraadt@ dtucker@
3977
3978 OpenBSD-Commit-ID: f566ab99149650ebe58b1d4b946ea726c3829609
3979
3980commit 94ec2b69d403f4318b7a0d9b17f8bc3efbf4d0d2
3981Author: jsing@openbsd.org <jsing@openbsd.org>
3982Date: Wed Feb 7 05:15:49 2018 +0000
3983
3984 upstream commit
3985
3986 Remove some #ifdef notyet code from OpenSSL 0.9.8 days.
3987
3988 These functions have never appeared in OpenSSL and are likely never to do
3989 so.
3990
3991 "kill it with fire" djm@
3992
3993 OpenBSD-Commit-ID: fee9560e283fd836efc2631ef381658cc673d23e
3994
3995commit 7cd31632e3a6607170ed0c9ed413a7ded5b9b377
3996Author: jsing@openbsd.org <jsing@openbsd.org>
3997Date: Wed Feb 7 02:06:50 2018 +0000
3998
3999 upstream commit
4000
4001 Remove all guards for calls to OpenSSL free functions -
4002 all of these functions handle NULL, from at least OpenSSL 1.0.1g onwards.
4003
4004 Prompted by dtucker@ asking about guards for RSA_free(), when looking at
4005 openssh-portable pr#84 on github.
4006
4007 ok deraadt@ dtucker@
4008
4009 OpenBSD-Commit-ID: 954f1c51b94297d0ae1f749271e184141e0cadae
4010
4011commit 3c000d57d46882eb736c6563edfc4995915c24a2
4012Author: Darren Tucker <dtucker@dtucker.net>
4013Date: Wed Feb 7 09:19:38 2018 +1100
4014
4015 Remove obsolete "Smartcard support" message
4016
4017 The configure checks that populated $SCARD_MSG were removed in commits
4018 7ea845e4 and d8f60022 when the smartcard support was replaced with
4019 PKCS#11.
4020
4021commit 3e615090de0ce36a833d811e01c28aec531247c4
4022Author: dtucker@openbsd.org <dtucker@openbsd.org>
4023Date: Tue Feb 6 06:01:54 2018 +0000
4024
4025 upstream commit
4026
4027 Replace "trojan horse" with the correct term (MITM).
4028 From maikel at predikkta.com via bz#2822, ok markus@
4029
4030 OpenBSD-Commit-ID: e86ac64c512057c89edfadb43302ac0aa81a6c53
4031
4032commit 3484380110d437c50e17f87d18544286328c75cb
4033Author: tb@openbsd.org <tb@openbsd.org>
4034Date: Mon Feb 5 05:37:46 2018 +0000
4035
4036 upstream commit
4037
4038 Add a couple of non-negativity checks to avoid close(-1).
4039
4040 ok djm
4041
4042 OpenBSD-Commit-ID: 4701ce0b37161c891c838d0931305f1d37a50880
4043
4044commit 5069320be93c8b2a6584b9f944c86f60c2b04e48
4045Author: tb@openbsd.org <tb@openbsd.org>
4046Date: Mon Feb 5 05:36:49 2018 +0000
4047
4048 upstream commit
4049
4050 The file descriptors for socket, stdin, stdout and stderr
4051 aren't necessarily distinct, so check if they are the same to avoid closing
4052 the same fd several times.
4053
4054 ok djm
4055
4056 OpenBSD-Commit-ID: 60d71fd22e9a32f5639d4ba6e25a2f417fc36ac1
4057
4058commit 2b428f90ea1b21d7a7c68ec1ee334253b3f9324d
4059Author: djm@openbsd.org <djm@openbsd.org>
4060Date: Mon Feb 5 04:02:53 2018 +0000
4061
4062 upstream commit
4063
4064 I accidentially a word
4065
4066 OpenBSD-Commit-ID: 4547ee713fa941da861e83ae7a3e6432f915e14a
4067
4068commit 130283d5c2545ff017c2162dc1258c5354e29399
4069Author: djm@openbsd.org <djm@openbsd.org>
4070Date: Thu Jan 25 03:34:43 2018 +0000
4071
4072 upstream commit
4073
4074 certificate options are case-sensitive; fix case on one
4075 that had it wrong.
4076
4077 move a badly-place sentence to a less bad place
4078
4079 OpenBSD-Commit-ID: 231e516bba860699a1eece6d48532d825f5f747b
4080
4081commit 89f09ee68730337015bf0c3f138504494a34e9a6
4082Author: Damien Miller <djm@mindrot.org>
4083Date: Wed Jan 24 12:20:44 2018 +1100
4084
4085 crypto_api.h needs includes.h
4086
4087commit c9c1bba06ad1c7cad8548549a68c071bd807af60
4088Author: stsp@openbsd.org <stsp@openbsd.org>
4089Date: Tue Jan 23 20:00:58 2018 +0000
4090
4091 upstream commit
4092
4093 Fix a logic bug in sshd_exchange_identification which
4094 prevented clients using major protocol version 2 from connecting to the
4095 server. ok millert@
4096
4097 OpenBSD-Commit-ID: 8668dec04586e27f1c0eb039ef1feb93d80a5ee9
4098
4099commit a60c5dcfa2538ffc94dc5b5adb3db5b6ed905bdb
4100Author: stsp@openbsd.org <stsp@openbsd.org>
4101Date: Tue Jan 23 18:33:49 2018 +0000
4102
4103 upstream commit
4104
4105 Add missing braces; fixes 'write: Socket is not
4106 connected' error in ssh. ok deraadt@
4107
4108 OpenBSD-Commit-ID: db73a3a9e147722d410866cac34d43ed52e1ad24
4109
4110commit 20d53ac283e1c60245ea464bdedd015ed9b38f4a
4111Author: Damien Miller <djm@mindrot.org>
4112Date: Tue Jan 23 16:49:43 2018 +1100
4113
4114 rebuild depends
4115
4116commit 552ea155be44f9c439c1f9f0c38f9e593428f838
4117Author: Damien Miller <djm@mindrot.org>
4118Date: Tue Jan 23 16:49:22 2018 +1100
4119
4120 one SSH_BUG_BANNER instance that got away
4121
4122commit 14b5c635d1190633b23ac3372379517fb645b0c2
4123Author: djm@openbsd.org <djm@openbsd.org>
4124Date: Tue Jan 23 05:27:21 2018 +0000
4125
4126 upstream commit
4127
4128 Drop compatibility hacks for some ancient SSH
4129 implementations, including ssh.com <=2.* and OpenSSH <= 3.*.
4130
4131 These versions were all released in or before 2001 and predate the
4132 final SSH RFCs. The hacks in question aren't necessary for RFC-
4133 compliant SSH implementations.
4134
4135 ok markus@
4136
4137 OpenBSD-Commit-ID: 4be81c67db57647f907f4e881fb9341448606138
4138
4139commit 7c77991f5de5d8475cbeb7cbb06d0c7d1611d7bb
4140Author: djm@openbsd.org <djm@openbsd.org>
4141Date: Tue Jan 23 05:17:04 2018 +0000
4142
4143 upstream commit
4144
4145 try harder to preserve errno during
4146 ssh_connect_direct() to make the final error message possibly accurate;
4147 bz#2814, ok dtucker@
4148
4149 OpenBSD-Commit-ID: 57de882cb47381c319b04499fef845dd0c2b46ca
4150
4151commit 9e9c4a7e57b96ab29fe6d7545ed09d2e5bddbdec
4152Author: djm@openbsd.org <djm@openbsd.org>
4153Date: Tue Jan 23 05:12:12 2018 +0000
4154
4155 upstream commit
4156
4157 unbreak support for clients that advertise a protocol
4158 version of "1.99" (indicating both v2 and v1 support). Busted by me during
4159 SSHv1 purge in r1.358; bz2810, ok dtucker
4160
4161 OpenBSD-Commit-ID: e8f9c2bee11afc16c872bb79d6abe9c555bd0e4b
4162
4163commit fc21ea97968264ad9bb86b13fedaaec8fd3bf97d
4164Author: djm@openbsd.org <djm@openbsd.org>
4165Date: Tue Jan 23 05:06:25 2018 +0000
4166
4167 upstream commit
4168
4169 don't attempt to force hostnames that are addresses to
4170 lowercase, but instead canonicalise them through getnameinfo/getaddrinfo to
4171 remove ambiguities (e.g. ::0001 => ::1) before they are matched against
4172 known_hosts; bz#2763, ok dtucker@
4173
4174 OpenBSD-Commit-ID: ba0863ff087e61e5c65efdbe53be3cb92c9aefa0
4175
4176commit d6364f6fb1a3d753d7ca9bf15b2adce961324513
4177Author: djm@openbsd.org <djm@openbsd.org>
4178Date: Tue Jan 23 05:01:15 2018 +0000
4179
4180 upstream commit
4181
4182 avoid modifying pw->pw_passwd; let endpwent() clean up
4183 for us, but keep a scrubbed copy; bz2777, ok dtucker@
4184
4185 OpenBSD-Commit-ID: 715afc0f59c6b82c4929a73279199ed241ce0752
4186
4187commit a69bbb07cd6fb4dfb9bdcacd370ab26d0a2b4215
4188Author: naddy@openbsd.org <naddy@openbsd.org>
4189Date: Sat Jan 13 00:24:09 2018 +0000
4190
4191 upstream commit
4192
4193 clarify authorship; prodded by and ok markus@
4194
4195 OpenBSD-Commit-ID: e1938eee58c89b064befdabe232835fa83bb378c
4196
4197commit 04214b30be3d3e73a01584db4e040d5ccbaaddd4
4198Author: markus@openbsd.org <markus@openbsd.org>
4199Date: Mon Jan 8 15:37:21 2018 +0000
4200
4201 upstream commit
4202
4203 group shared source files (e.g. SRCS_KEX) and allow
4204 compilation w/o OPENSSL ok djm@
4205
4206 OpenBSD-Commit-ID: fa728823ba21c4b45212750e1d3a4b2086fd1a62
4207
4208commit 25cf9105b849932fc3b141590c009e704f2eeba6
4209Author: markus@openbsd.org <markus@openbsd.org>
4210Date: Mon Jan 8 15:21:49 2018 +0000
4211
4212 upstream commit
4213
4214 move subprocess() so scp/sftp do not need uidswap.o; ok
4215 djm@
4216
4217 OpenBSD-Commit-ID: 6601b8360388542c2e5fef0f4085f8e54750bea8
4218
4219commit b0d34132b3ca26fe94013f01d7b92101e70b68bb
4220Author: markus@openbsd.org <markus@openbsd.org>
4221Date: Mon Jan 8 15:18:46 2018 +0000
4222
4223 upstream commit
4224
4225 switch ssh-pkcs11-helper to new API; ok djm@
4226
4227 OpenBSD-Commit-ID: e0c0ed2a568e25b1d2024f3e630f3fea837c2a42
4228
4229commit ec4a9831184c0c6ed5f7f0cfff01ede5455465a3
4230Author: markus@openbsd.org <markus@openbsd.org>
4231Date: Mon Jan 8 15:15:36 2018 +0000
4232
4233 upstream commit
4234
4235 split client/server kex; only ssh-keygen needs
4236 uuencode.o; only scp/sftp use progressmeter.o; ok djm@
4237
4238 OpenBSD-Commit-ID: f2c9feb26963615c4fece921906cf72e248b61ee
4239
4240commit ec77efeea06ac62ee1d76fe0b3225f3000775a9e
4241Author: markus@openbsd.org <markus@openbsd.org>
4242Date: Mon Jan 8 15:15:17 2018 +0000
4243
4244 upstream commit
4245
4246 only ssh-keygen needs uuencode.o; only scp/sftp use
4247 progressmeter.o
4248
4249 OpenBSD-Commit-ID: a337e886a49f96701ccbc4832bed086a68abfa85
4250
4251commit 25aae35d3d6ee86a8c4c0b1896acafc1eab30172
4252Author: markus@openbsd.org <markus@openbsd.org>
4253Date: Mon Jan 8 15:14:44 2018 +0000
4254
4255 upstream commit
4256
4257 uuencode.h is not used
4258
4259 OpenBSD-Commit-ID: 238eb4659f3c119904326b9e94a5e507a912796c
4260
4261commit 4f29309c4cb19bcb1774931db84cacc414f17d29
4262Author: Damien Miller <djm@mindrot.org>
4263Date: Wed Jan 3 19:50:43 2018 +1100
4264
4265 unbreak fuzz harness
4266
4267commit f6b50bf84dc0b61f22c887c00423e0ea7644e844
4268Author: djm@openbsd.org <djm@openbsd.org>
4269Date: Thu Dec 21 05:46:35 2017 +0000
4270
4271 upstream commit
4272
4273 another libssh casualty
4274
4275 OpenBSD-Regress-ID: 839b970560246de23e7c50215095fb527a5a83ec
4276
4277commit 5fb4fb5a0158318fb8ed7dbb32f3869bbf221f13
4278Author: djm@openbsd.org <djm@openbsd.org>
4279Date: Thu Dec 21 03:01:49 2017 +0000
4280
4281 upstream commit
4282
4283 missed one (unbreak after ssh/lib removal)
4284
4285 OpenBSD-Regress-ID: cfdd132143131769e2d2455e7892b5d55854c322
4286
4287commit e6c4134165d05447009437a96e7201276688807f
4288Author: djm@openbsd.org <djm@openbsd.org>
4289Date: Thu Dec 21 00:41:22 2017 +0000
4290
4291 upstream commit
4292
4293 unbreak unit tests after removal of src/usr.bin/ssh/lib
4294
4295 OpenBSD-Regress-ID: 3a79760494147b20761cbd2bd5c20e86c63dc8f9
4296
4297commit d45d69f2a937cea215c7f0424e5a4677b6d8c7fe
4298Author: djm@openbsd.org <djm@openbsd.org>
4299Date: Thu Dec 21 00:00:28 2017 +0000
4300
4301 upstream commit
4302
4303 revert stricter key type / signature type checking in
4304 userauth path; too much software generates inconsistent messages, so we need
4305 a better plan.
4306
4307 OpenBSD-Commit-ID: 4a44ddc991c803c4ecc8f1ad40e0ab4d22e1c519
4308
4309commit c5a6cbdb79752f7e761074abdb487953ea6db671
4310Author: djm@openbsd.org <djm@openbsd.org>
4311Date: Tue Dec 19 00:49:30 2017 +0000
4312
4313 upstream commit
4314
4315 explicitly test all key types and their certificate
4316 counterparts
4317
4318 refactor a little
4319
4320 OpenBSD-Regress-ID: e9ecd5580821b9ef8b7106919c6980d8e45ca8c4
4321
4322commit f689adb7a370b5572612d88be9837ca9aea75447
4323Author: dtucker@openbsd.org <dtucker@openbsd.org>
4324Date: Mon Dec 11 11:41:56 2017 +0000
4325
4326 upstream commit
4327
4328 use cmp in a loop instead of diff -N to compare
4329 directories. The former works on more platforms for Portable.
4330
4331 OpenBSD-Regress-ID: c3aa72807f9c488e8829a26ae50fe5bcc5b57099
4332
4333commit 748dd8e5de332b24c40f4b3bbedb902acb048c98
4334Author: Damien Miller <djm@mindrot.org>
4335Date: Tue Dec 19 16:17:59 2017 +1100
4336
4337 remove blocks.c from Makefile
4338
4339commit 278856320520e851063b06cef6ef1c60d4c5d652
4340Author: djm@openbsd.org <djm@openbsd.org>
4341Date: Tue Dec 19 00:24:34 2017 +0000
4342
4343 upstream commit
4344
4345 include signature type and CA key (if applicable) in some
4346 debug messages
4347
4348 OpenBSD-Commit-ID: b71615cc20e78cec7105bb6e940c03ce9ae414a5
4349
4350commit 7860731ef190b52119fa480f8064ab03c44a120a
4351Author: djm@openbsd.org <djm@openbsd.org>
4352Date: Mon Dec 18 23:16:23 2017 +0000
4353
4354 upstream commit
4355
4356 unbreak hostkey rotation; attempting to sign with a
4357 desired signature algorithm of kex->hostkey_alg is incorrect when the key
4358 type isn't capable of making those signatures. ok markus@
4359
4360 OpenBSD-Commit-ID: 35ae46864e1f5859831ec0d115ee5ea50953a906
4361
4362commit 966ef478339ad5e631fb684d2a8effe846ce3fd4
4363Author: djm@openbsd.org <djm@openbsd.org>
4364Date: Mon Dec 18 23:14:34 2017 +0000
4365
4366 upstream commit
4367
4368 log mismatched RSA signature types; ok markus@
4369
4370 OpenBSD-Commit-ID: 381bddfcc1e297a42292222f3bcb5ac2b7ea2418
4371
4372commit 349ecd4da3a985359694a74635748009be6baca6
4373Author: djm@openbsd.org <djm@openbsd.org>
4374Date: Mon Dec 18 23:13:42 2017 +0000
4375
4376 upstream commit
4377
4378 pass kex->hostkey_alg and kex->hostkey_nid from pre-auth
4379 to post-auth unpriviledged child processes; ok markus@
4380
4381 OpenBSD-Commit-ID: 4a35bc7af0a5f8a232d1361f79f4ebc376137302
4382
4383commit c9e37a8725c083441dd34a8a53768aa45c3c53fe
4384Author: millert@openbsd.org <millert@openbsd.org>
4385Date: Mon Dec 18 17:28:54 2017 +0000
4386
4387 upstream commit
4388
4389 Add helper function for uri handing in scp where a
4390 missing path simply means ".". Also fix exit code and add warnings when an
4391 invalid uri is encountered. OK otto@
4392
4393 OpenBSD-Commit-ID: 47dcf872380586dabf7fcc6e7baf5f8ad508ae1a
4394
4395commit 04c7e28f83062dc42f2380d1bb3a6bf0190852c0
4396Author: djm@openbsd.org <djm@openbsd.org>
4397Date: Mon Dec 18 02:25:15 2017 +0000
4398
4399 upstream commit
4400
4401 pass negotiated signing algorithm though to
4402 sshkey_verify() and check that the negotiated algorithm matches the type in
4403 the signature (only matters for RSA SHA1/SHA2 sigs). ok markus@
4404
4405 OpenBSD-Commit-ID: 735fb15bf4adc060d3bee9d047a4bcaaa81b1af9
4406
4407commit 931c78dfd7fe30669681a59e536bbe66535f3ee9
4408Author: djm@openbsd.org <djm@openbsd.org>
4409Date: Mon Dec 18 02:22:29 2017 +0000
4410
4411 upstream commit
4412
4413 sshkey_sigtype() function to return the type of a
4414 signature; ok markus@
4415
4416 OpenBSD-Commit-ID: d3772b065ad6eed97285589bfb544befed9032e8
4417
4418commit 4cdc5956f2fcc9e9078938db833142dc07d8f523
4419Author: naddy@openbsd.org <naddy@openbsd.org>
4420Date: Thu Dec 14 21:07:39 2017 +0000
4421
4422 upstream commit
4423
4424 Replace ED25519's private SHA-512 implementation with a
4425 call to the regular digest code. This speeds up compilation considerably. ok
4426 markus@
4427
4428 OpenBSD-Commit-ID: fcce8c3bcfe7389462a28228f63c823e80ade41c
4429
4430commit 012e5cb839faf76549e3b6101b192fe1a74d367e
4431Author: naddy@openbsd.org <naddy@openbsd.org>
4432Date: Tue Dec 12 15:06:12 2017 +0000
4433
4434 upstream commit
4435
4436 Create a persistent umac128.c source file: #define the
4437 output size and the name of the entry points for UMAC-128 before including
4438 umac.c. Idea from FreeBSD. ok dtucker@
4439
4440 OpenBSD-Commit-ID: 463cfacfa07cb8060a4d4961e63dca307bf3f4b1
4441
4442commit b35addfb4cd3b5cdb56a2a489d38e940ada926c7
4443Author: Darren Tucker <dtucker@zip.com.au>
4444Date: Mon Dec 11 16:23:28 2017 +1100
4445
4446 Update .depend with empty config.h
4447
4448commit 2d96f28246938e0ca474a939d8ac82ecd0de27e3
4449Author: Darren Tucker <dtucker@zip.com.au>
4450Date: Mon Dec 11 16:21:55 2017 +1100
4451
4452 Ensure config.h is always in dependencies.
4453
4454 Put an empty config.h into the dependency list to ensure that it's
4455 always listed and consistent.
4456
4457commit ac4987a55ee5d4dcc8e87f7ae7c1f87be7257d71
4458Author: deraadt@openbsd.org <deraadt@openbsd.org>
4459Date: Sun Dec 10 19:37:57 2017 +0000
4460
4461 upstream commit
4462
4463 ssh/lib hasn't worked towards our code-sharing goals for
4464 a quit while, perhaps it is too verbose? Change each */Makefile to
4465 specifying exactly what sources that program requires, compiling it seperate.
4466 Maybe we'll iterate by sorting those into seperatable chunks, splitting up
4467 files which contain common code + server/client specific code, or whatnot.
4468 But this isn't one step, or we'd have done it a long time ago.. ok dtucker
4469 markus djm
4470
4471 OpenBSD-Commit-ID: 5317f294d63a876bfc861e19773b1575f96f027d
4472
4473commit 48c23a39a8f1069a57264dd826f6c90aa12778d5
4474Author: dtucker@openbsd.org <dtucker@openbsd.org>
4475Date: Sun Dec 10 05:55:29 2017 +0000
4476
4477 upstream commit
4478
4479 Put remote client info back into the ClientAlive
4480 connection termination message. Based in part on diff from lars.nooden at
4481 gmail, ok djm
4482
4483 OpenBSD-Commit-ID: 80a0f619a29bbf2f32eb5297a69978a0e05d0ee0
4484
4485commit aabd75ec76575c1b17232e6526a644097cd798e5
4486Author: deraadt@openbsd.org <deraadt@openbsd.org>
4487Date: Fri Dec 8 03:45:52 2017 +0000
4488
4489 upstream commit
4490
4491 time_t printing needs %lld and (long long) casts ok djm
4492
4493 OpenBSD-Commit-ID: 4a93bc2b0d42a39b8f8de8bb74d07ad2e5e83ef7
4494
4495commit fd4eeeec16537870bd40d04836c7906ec141c17d
4496Author: djm@openbsd.org <djm@openbsd.org>
4497Date: Fri Dec 8 02:14:33 2017 +0000
4498
4499 upstream commit
4500
4501 fix ordering in previous to ensure errno isn't clobbered
4502 before logging.
4503
4504 OpenBSD-Commit-ID: e260bc1e145a9690dcb0d5aa9460c7b96a0c8ab2
4505
4506commit 155072fdb0d938015df828836beb2f18a294ab8a
4507Author: djm@openbsd.org <djm@openbsd.org>
4508Date: Fri Dec 8 02:13:02 2017 +0000
4509
4510 upstream commit
4511
4512 for some reason unix_listener() logged most errors twice
4513 with each message containing only some of the useful information; merge these
4514
4515 OpenBSD-Commit-ID: 1978a7594a9470c0dddcd719586066311b7c9a4a
4516
4517commit 79c0e1d29959304e5a49af1dbc58b144628c09f3
4518Author: Darren Tucker <dtucker@zip.com.au>
4519Date: Mon Dec 11 14:38:33 2017 +1100
4520
4521 Add autogenerated dependency info to Makefile.
4522
4523 Adds a .depend file containing dependency information generated by
4524 makedepend, which is appended to the generated Makefile by configure.
4525
4526 You can regen the file with "make -f Makefile.in depend" if necessary,
4527 but we'll be looking at some way to automatically keep this up to date.
4528
4529 "no objection" djm@
4530
4531commit f001de8fbf7f3faddddd8efd03df18e57601f7eb
4532Author: Darren Tucker <dtucker@zip.com.au>
4533Date: Mon Dec 11 13:42:51 2017 +1100
4534
4535 Fix pasto in ldns handling.
4536
4537 When ldns-config is not found, configure would check the wrong variable.
4538 ok djm@
4539
4540commit c5bfe83f67cb64e71cf2fe0d1500f6904b0099ee
4541Author: Darren Tucker <dtucker@zip.com.au>
4542Date: Sat Dec 9 10:12:23 2017 +1100
4543
4544 Portable switched to git so s/CVS/git/.
4545
4546commit bb82e61a40a4ee52e4eb904caaee2c27b763ab5b
4547Author: Darren Tucker <dtucker@zip.com.au>
4548Date: Sat Dec 9 08:06:00 2017 +1100
4549
4550 Remove now-used check for perl.
4551
4552commit e0ce54c0b9ca3a9388f9c50f4fa6cc25c28a3240
4553Author: djm@openbsd.org <djm@openbsd.org>
4554Date: Wed Dec 6 05:06:21 2017 +0000
4555
4556 upstream commit
4557
4558 don't accept junk after "yes" or "no" responses to
4559 hostkey prompts. bz#2803 reported by Maksim Derbasov; ok dtucker@
4560
4561 OpenBSD-Commit-ID: e1b159fb2253be973ce25eb7a7be26e6f967717c
4562
4563commit 609d96b3d58475a15b2eb6b3d463f2c5d8e510c0
4564Author: dtucker@openbsd.org <dtucker@openbsd.org>
4565Date: Tue Dec 5 23:59:47 2017 +0000
4566
4567 upstream commit
4568
4569 Replace atoi and strtol conversions for integer arguments
4570 to config keywords with a checking wrapper around strtonum. This will
4571 prevent and flag invalid and negative arguments to these keywords. ok djm@
4572
4573 OpenBSD-Commit-ID: 99ae3981f3d608a219ccb8d2fff635ae52c17998
4574
4575commit 168ecec13f9d7cb80c07df3bf7d414f4e4165e84
4576Author: dtucker@openbsd.org <dtucker@openbsd.org>
4577Date: Tue Dec 5 23:56:07 2017 +0000
4578
4579 upstream commit
4580
4581 Add missing break for rdomain. Prevents spurious
4582 "Deprecated option" warnings. ok djm@
4583
4584 OpenBSD-Commit-ID: ba28a675d39bb04a974586241c3cba71a9c6099a
4585
4586commit 927f8514ceffb1af380a5f63ab4d3f7709b1b198
4587Author: djm@openbsd.org <djm@openbsd.org>
4588Date: Tue Dec 5 01:30:19 2017 +0000
4589
4590 upstream commit
4591
4592 include the addr:port in bind/listen failure messages
4593
4594 OpenBSD-Commit-ID: fdadb69fe1b38692608809cf0376b71c2c28e58e
4595
4596commit a8c89499543e2d889629c4e5e8dcf47a655cf889
4597Author: dtucker@openbsd.org <dtucker@openbsd.org>
4598Date: Wed Nov 29 05:49:54 2017 +0000
4599
4600 upstream commit
4601
4602 Import updated moduli.
4603
4604 OpenBSD-Commit-ID: 524d210f982af6007aa936ca7f4c977f4d32f38a
4605
4606commit 3dde09ab38c8e1cfc28252be473541a81bc57097
4607Author: dtucker@openbsd.org <dtucker@openbsd.org>
4608Date: Tue Nov 28 21:10:22 2017 +0000
4609
4610 upstream commit
4611
4612 Have sftp print a warning about shell cleanliness when
4613 decoding the first packet fails, which is usually caused by shells polluting
4614 stdout of non-interactive starups. bz#2800, ok markus@ deraadt@.
4615
4616 OpenBSD-Commit-ID: 88d6a9bf3470f9324b76ba1cbd53e50120f685b5
4617
4618commit 6c8a246437f612ada8541076be2414846d767319
4619Author: Darren Tucker <dtucker@zip.com.au>
4620Date: Fri Dec 1 17:11:47 2017 +1100
4621
4622 Replace mkinstalldirs with mkdir -p.
4623
4624 Check for MIKDIR_P and use it instead of mkinstalldirs. Should fix "mkdir:
4625 cannot create directory:... File exists" during "make install".
4626 Patch from eb at emlix.com.
4627
4628commit 3058dd78d2e43ed0f82ad8eab8bb04b043a72023
4629Author: Darren Tucker <dtucker@zip.com.au>
4630Date: Fri Dec 1 17:07:08 2017 +1100
4631
4632 Pull in newer install-sh from autoconf-2.69.
4633
4634 Suggested by eb at emlix.com
4635
4636commit 79226e5413c5b0fda3511351a8511ff457e306d8
4637Author: Darren Tucker <dtucker@zip.com.au>
4638Date: Fri Dec 1 16:55:35 2017 +1100
4639
4640 Remove RSA1 host key generation.
4641
4642 SSH1 support is now gone, remove SSH1 key generation.
4643 Patch from eb at emlix.com.
4644
4645commit 2937dd02c572a12f33d5c334d518f6cbe0b645eb
4646Author: djm@openbsd.org <djm@openbsd.org>
4647Date: Tue Nov 28 06:09:38 2017 +0000
4648
4649 upstream commit
4650
4651 more whitespace errors
4652
4653 OpenBSD-Commit-ID: 5e11c125378327b648940b90145e0d98beb05abb
4654
4655commit 7f257bf3fd3a759f31098960cbbd1453fafc4164
4656Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4657Date: Tue Nov 28 06:04:51 2017 +0000
4658
4659 upstream commit
4660
4661 whitespace at EOL
4662
4663 OpenBSD-Commit-ID: 76d3965202b22d59c2784a8df3a8bfa5ee67b96a
4664
4665commit 5db6fbf1438b108e5df3e79a1b4de544373bc2d4
4666Author: dtucker@openbsd.org@openbsd.org <dtucker@openbsd.org@openbsd.org>
4667Date: Sat Nov 25 06:46:22 2017 +0000
4668
4669 upstream commit
4670
4671 Add monotime_ts and monotime_tv that return monotonic
4672 timespec and timeval respectively. Replace calls to gettimeofday() in packet
4673 timing with monotime_tv so that the callers will work over a clock step.
4674 Should prevent integer overflow during clock steps reported by wangle6 at
4675 huawei.com. "I like" markus@
4676
4677 OpenBSD-Commit-ID: 74d684264814ff806f197948b87aa732cb1b0b8a
4678
4679commit 2d638e986085bdf1a40310ed6e2307463db96ea0
4680Author: dtucker@openbsd.org@openbsd.org <dtucker@openbsd.org@openbsd.org>
4681Date: Sat Nov 25 05:58:47 2017 +0000
4682
4683 upstream commit
4684
4685 Remove get_current_time() and replace with calls to
4686 monotime_double() which uses CLOCK_MONOTONIC and works over clock steps. "I
4687 like" markus@
4688
4689 OpenBSD-Commit-ID: 3ad2f7d2414e2cfcaef99877a7a5b0baf2242952
4690
4691commit ba460acae48a36ef749cb23068f968f4d5d90a24
4692Author: Darren Tucker <dtucker@zip.com.au>
4693Date: Fri Nov 24 16:24:31 2017 +1100
4694
4695 Include string.h for explicit_bzero.
4696
4697commit a65655fb1a12b77fb22f9e71559b9d73030ec8ff
4698Author: Damien Miller <djm@mindrot.org>
4699Date: Fri Nov 24 10:23:47 2017 +1100
4700
4701 fix incorrect range of OpenSSL versions supported
4702
4703 Pointed out by Solar Designer
4704
4705commit 83a1e5dbec52d05775174f368e0c44b08619a308
4706Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4707Date: Wed Nov 15 02:10:16 2017 +0000
4708
4709 upstream commit
4710
4711 downgrade a couple more request parsing errors from
4712 process-fatal to just returning failure, making them consistent with the
4713 others that were already like that.
4714
4715 OpenBSD-Commit-ID: c111461f7a626690a2d53018ef26557b34652918
4716
4717commit 93c68a8f3da8e5e6acdc3396f54d73919165e242
4718Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4719Date: Wed Nov 15 00:13:40 2017 +0000
4720
4721 upstream commit
4722
4723 fix regression in 7.6: failure to parse a signature request
4724 message shouldn't be fatal to the process, just the request. Reported by Ron
4725 Frederick
4726
4727 OpenBSD-Commit-ID: e5d01b3819caa1a2ad51fc57d6ded43f48bbcc05
4728
4729commit 548d3a66feb64c405733932a6b1abeaf7198fa71
4730Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4731Date: Tue Nov 14 00:45:29 2017 +0000
4732
4733 upstream commit
4734
4735 fix problem in configuration parsing when in config dump mode
4736 (sshd -T) without providing a full connection specification (sshd -T -C ...)
4737
4738 spotted by bluhm@
4739
4740 OpenBSD-Commit-ID: 7125faf5740eaa9d3a2f25400a0bc85e94e28b8f
4741
4742commit 33edb6ebdc2f81ebed1bceadacdfb8910b64fb88
4743Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4744Date: Fri Nov 3 05:18:44 2017 +0000
4745
4746 upstream commit
4747
4748 reuse parse_multistate for parse_flag (yes/no arguments).
4749 Saves a few lines of code and makes the parser more consistent wrt case-
4750 sensitivity. bz#2664 ok dtucker@
4751
4752 OpenBSD-Commit-ID: b2ad1b6086858d5db71c7b11e5a74dba6d60efef
4753
4754commit d52131a98316e76c0caa348f09bf6f7b9b01a1b9
4755Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4756Date: Fri Nov 3 05:14:04 2017 +0000
4757
4758 upstream commit
4759
4760 allow certificate validity intervals that specify only a
4761 start or stop time (we already support specifying both or neither)
4762
4763 OpenBSD-Commit-ID: 9be486545603c003030bdb5c467d1318b46b4e42
4764
4765commit fbe8e7ac94c2fa380421a9205a8bc966549c2f91
4766Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4767Date: Fri Nov 3 03:46:52 2017 +0000
4768
4769 upstream commit
4770
4771 allow "cd" and "lcd" commands with no explicit path
4772 argument. lcd will change to the local user's home directory as usual. cd
4773 will change to the starting directory for session (because the protocol
4774 offers no way to obtain the remote user's home directory). bz#2760 ok
4775 dtucker@
4776
4777 OpenBSD-Commit-ID: 15333f5087cee8c1ed1330cac1bd0a3e6a767393
4778
4779commit 0208a48517b5e8e8b091f32fa4addcd67c31ca9e
4780Author: dtucker@openbsd.org@openbsd.org <dtucker@openbsd.org@openbsd.org>
4781Date: Fri Nov 3 03:18:53 2017 +0000
4782
4783 upstream commit
4784
4785 When doing a config test with sshd -T, only require the
4786 attributes that are actually used in Match criteria rather than (an
4787 incomplete list of) all criteria. ok djm@, man page help jmc@
4788
4789 OpenBSD-Commit-ID: b4e773c4212d3dea486d0259ae977551aab2c1fc
4790
4791commit c357eed5a52cd2f4ff358b17e30e3f9a800644da
4792Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4793Date: Fri Nov 3 02:32:19 2017 +0000
4794
4795 upstream commit
4796
4797 typos in ECDSA certificate names; bz#2787 reported by
4798 Mike Gerow
4799
4800 OpenBSD-Commit-ID: 824938b6aba1b31321324ba1f56c05f84834b163
4801
4802commit ecbf005b8fd80b81d0c61dfc1e96fe3da6099395
4803Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4804Date: Fri Nov 3 02:29:17 2017 +0000
4805
4806 upstream commit
4807
4808 Private keys in PEM format have been encrypted by AES-128 for
4809 a while (not 3DES). bz#2788 reported by Calum Mackay
4810
4811 OpenBSD-Commit-ID: bd33da7acbbb3c882f0a0ee56007a35ce0d8a11a
4812
4813commit 81c9ccdbf6ddbf9bfbd6f1f775a5a7c13e47e185
4814Author: Darren Tucker <dtucker@zip.com.au>
4815Date: Fri Nov 3 14:52:51 2017 +1100
4816
4817 Check for linux/if.h when enabling rdomain.
4818
4819 musl libc doesn't seem to have linux/if.h, so check for its presence
4820 before enabling rdomain support on Linux.
4821
4822commit fa1b834cce41a1ce3e6a8d57fb67ef18c9dd803f
4823Author: Darren Tucker <dtucker@zip.com.au>
4824Date: Fri Nov 3 14:09:45 2017 +1100
4825
4826 Add headers for sys/sysctl.h and net/route.h
4827
4828 On at least older OpenBSDs, sys/sysctl.h and net/route.h require
4829 sys/types and, in the case of sys/sysctl.h, sys/param.h for MAXLOGNAME.
4830
4831commit 41bff4da21fcd8a7c6a83a7e0f92b018f904f6fb
4832Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4833Date: Fri Nov 3 02:22:41 2017 +0000
4834
4835 upstream commit
4836
4837 avoid unused variable warnings for !WITH_OPENSSL; patch from
4838 Marcus Folkesson
4839
4840 OpenBSD-Commit-ID: c01d27a3f907acdc3dd4ea48170fac3ba236d229
4841
4842commit 6b373e4635a7470baa94253dd1dc8953663da9e8
4843Author: Marcus Folkesson <marcus.folkesson@gmail.com>
4844Date: Sat Oct 28 19:48:39 2017 +0200
4845
4846 only enable functions in dh.c when openssl is used
4847
4848 Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
4849
4850commit 939b30ba23848b572e15bf92f0f1a3d9cf3acc2b
4851Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4852Date: Wed Nov 1 00:04:15 2017 +0000
4853
4854 upstream commit
4855
4856 fix broken stdout in ControlPersist mode, introduced by me in
4857 r1.467 and reported by Alf Schlichting
4858
4859 OpenBSD-Commit-ID: 3750a16e02108fc25f747e4ebcedb7123c1ef509
4860
4861commit f21455a084f9cc3942cf1bde64055a4916849fed
4862Author: Darren Tucker <dtucker@zip.com.au>
4863Date: Tue Oct 31 10:09:33 2017 +1100
4864
4865 Include includes.h for HAVE_GETPAGESIZE.
4866
4867 The configure script checks for getpagesize() and sets HAVE_GETPAGESIZE in
4868 config.h, but bsd-getpagesize.c forgot to include includes.h (which
4869 indirectly includes config.h) so the checks always fails, causing linker
4870 issues when linking statically on systems with getpagesize().
4871
4872 Patch from Peter Korsgaard <peter at korsgaard.com>
4873
4874commit f2ad63c0718b93ac1d1e85f53fee33b06eef86b5
4875Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4876Date: Mon Oct 30 22:01:52 2017 +0000
4877
4878 upstream commit
4879
4880 whitespace at EOL
4881
4882 OpenBSD-Regress-ID: f4b5df99b28c6f63478deb916c6ed0e794685f07
4883
4884commit c6415b1f8f1d0c2735564371647fd6a177fb9a3e
4885Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4886Date: Mon Oct 30 21:59:43 2017 +0000
4887
4888 upstream commit
4889
4890 whitespace at EOL
4891
4892 OpenBSD-Regress-ID: 19b1394393deee4c8a2114a3b7d18189f27a15cd
4893
4894commit e4d4ddbbba0e585ca3ec3a455430750b4622a6d3
4895Author: millert@openbsd.org@openbsd.org <millert@openbsd.org@openbsd.org>
4896Date: Wed Oct 25 20:08:36 2017 +0000
4897
4898 upstream commit
4899
4900 Use printenv to test whether an SSH_USER_AUTH is set
4901 instead of using $SSH_USER_AUTH. The latter won't work with csh which treats
4902 unknown variables as an error when expanding them. OK markus@
4903
4904 OpenBSD-Regress-ID: f601e878dd8b71aa40381573dde3a8f567e6f2d1
4905
4906commit 116b1b439413a724ebb3320633a64dd0f3ee1fe7
4907Author: millert@openbsd.org@openbsd.org <millert@openbsd.org@openbsd.org>
4908Date: Tue Oct 24 19:33:32 2017 +0000
4909
4910 upstream commit
4911
4912 Add tests for URI parsing. OK markus@
4913
4914 OpenBSD-Regress-ID: 5d1df19874f3b916d1a2256a905526e17a98bd3b
4915
4916commit dbe0662e9cd482593a4a8bf58c6481bfe8a747a4
4917Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4918Date: Fri Oct 27 01:57:06 2017 +0000
4919
4920 upstream commit
4921
4922 whitespace at EOL
4923
4924 OpenBSD-Commit-ID: c95549cf5a07d56ea11aaff818415118720214f6
4925
4926commit d2135474344335a7c6ee643b6ade6db400fa76ee
4927Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4928Date: Fri Oct 27 01:01:17 2017 +0000
4929
4930 upstream commit
4931
4932 whitespace at EOL (lots)
4933
4934 OpenBSD-Commit-ID: 757257dd44116794ee1b5a45c6724973de181747
4935
4936commit b77c29a07f5a02c7c1998701c73d92bde7ae1608
4937Author: djm@openbsd.org@openbsd.org <djm@openbsd.org@openbsd.org>
4938Date: Fri Oct 27 00:18:41 2017 +0000
4939
4940 upstream commit
4941
4942 improve printing of rdomain on accept() a little
4943
4944 OpenBSD-Commit-ID: 5da58db2243606899cedaa646c70201b2d12247a
4945
4946commit 68d3bbb2e6dfbf117c46e942142795b2cdd0274b
4947Author: jmc@openbsd.org@openbsd.org <jmc@openbsd.org@openbsd.org>
4948Date: Thu Oct 26 06:44:01 2017 +0000
4949
4950 upstream commit
4951
4952 mark up the rdomain keyword;
4953
4954 OpenBSD-Commit-ID: 1b597d0ad0ad20e94dbd61ca066057e6f6313b8a
4955
4956commit 0b2e2896b9d0d6cfb59e9ec8271085296bd4e99b
4957Author: jmc@openbsd.org@openbsd.org <jmc@openbsd.org@openbsd.org>
4958Date: Wed Oct 25 06:19:46 2017 +0000
4959
4960 upstream commit
4961
4962 tweak the uri text, specifically removing some markup to
4963 make it a bit more readable;
4964
4965 issue reported by - and diff ok - millert
4966
4967 OpenBSD-Commit-ID: 8b56a20208040b2d0633536fd926e992de37ef3f
4968
4969commit 7530e77bdc9415386d2a8ea3d086e8b611b2ba40
4970Author: jmc@openbsd.org@openbsd.org <jmc@openbsd.org@openbsd.org>
4971Date: Wed Oct 25 06:18:06 2017 +0000
4972
4973 upstream commit
4974
4975 simplify macros in previous, and some minor tweaks;
4976
4977 OpenBSD-Commit-ID: 6efeca3d8b095b76e21b484607d9cc67ac9a11ca
4978
4979commit eb9c582b710dc48976b48eb2204218f6863bae9a
4980Author: Damien Miller <djm@mindrot.org>
4981Date: Tue Oct 31 00:46:29 2017 +1100
4982
4983 Switch upstream git repository.
4984
4985 Previously portable OpenSSH has synced against a conversion of OpenBSD's
4986 CVS repository made using the git cvsimport tool, but this has become
4987 increasingly unreliable.
4988
4989 As of this commit, portable OpenSSH now tracks a conversion of the
4990 OpenBSD CVS upstream made using the excellent cvs2gitdump tool from
4991 YASUOKA Masahiko: https://github.com/yasuoka/cvs2gitdump
4992
4993 cvs2gitdump is considerably more reliable than gitcvsimport and the old
4994 version of cvsps that it uses under the hood, and is the same tool used
4995 to export the entire OpenBSD repository to git (so we know it can cope
4996 with future growth).
4997
4998 These new conversions are mirrored at github, so interested parties can
4999 match portable OpenSSH commits to their upstream counterparts.
5000
5001 https://github.com/djmdjm/openbsd-openssh-src
5002 https://github.com/djmdjm/openbsd-openssh-regress
5003
5004 An unfortunate side effect of switching upstreams is that we must have
5005 a flag day, across which the upstream commit IDs will be inconsistent.
5006 The old commit IDs are recorded with the tags "Upstream-ID" for main
5007 directory commits and "Upstream-Regress-ID" for regress commits.
5008
5009 To make it clear that the commit IDs do not refer to the same
5010 things, the new repository will instead use "OpenBSD-ID" and
5011 "OpenBSD-Regress-ID" tags instead.
5012
5013 Apart from being a longwinded explanation of what is going on, this
5014 commit message also serves to synchronise our tools with the state of
5015 the tree, which happens to be:
5016
5017 OpenBSD-ID: 9c43a9968c7929613284ea18e9fb92e4e2a8e4c1
5018 OpenBSD-Regress-ID: b33b385719420bf3bc57d664feda6f699c147fef
5019
5020commit 2de5c6b53bf063ac698596ef4e23d8e3099656ea
5021Author: Damien Miller <djm@mindrot.org>
5022Date: Fri Oct 27 08:42:33 2017 +1100
5023
5024 fix rdomain compilation errors
5025
5026commit 6bd5b569fd6dfd5e8c8af20bbc41e45c2d6462ab
5027Author: Damien Miller <djm@mindrot.org>
5028Date: Wed Oct 25 14:15:42 2017 +1100
5029
5030 autoconf glue to enable Linux VRF
5031
5032commit 97c5aaf925d61641d599071abb56012cde265978
5033Author: Damien Miller <djm@mindrot.org>
5034Date: Wed Oct 25 14:09:56 2017 +1100
5035
5036 basic valid_rdomain() implementation for Linux
5037
5038commit ce1cca39d7935dd394080ce2df62f5ce5b51f485
5039Author: Damien Miller <djm@mindrot.org>
5040Date: Wed Oct 25 13:47:59 2017 +1100
5041
5042 implement get/set_rdomain() for Linux
5043
5044 Not enabled, pending implementation of valid_rdomain() and autoconf glue
5045
5046commit 6eee79f9b8d4a3b113b698383948a119acb82415
5047Author: Damien Miller <djm@mindrot.org>
5048Date: Wed Oct 25 13:22:29 2017 +1100
5049
5050 stubs for rdomain replacement functions
5051
5052commit f5594f939f844bbb688313697d6676238da355b3
5053Author: Damien Miller <djm@mindrot.org>
5054Date: Wed Oct 25 13:13:57 2017 +1100
5055
5056 rename port-tun.[ch] => port-net.[ch]
5057
5058 Ahead of adding rdomain support
5059
5060commit d685e5a31feea35fb99e1a31a70b3c60a7f2a0eb
5061Author: djm@openbsd.org <djm@openbsd.org>
5062Date: Wed Oct 25 02:10:39 2017 +0000
5063
5064 upstream commit
5065
5066 uninitialised variable in PermitTunnel printing code
5067
5068 Upstream-ID: f04dc33e42855704e116b8da61095ecc71bc9e9a
5069
5070commit 43c29bb7cfd46bbbc61e0ffa61a11e74d49a712f
5071Author: Damien Miller <djm@mindrot.org>
5072Date: Wed Oct 25 13:10:59 2017 +1100
5073
5074 provide hooks and fallbacks for rdomain support
5075
5076commit 3235473bc8e075fad7216b7cd62fcd2b0320ea04
5077Author: Damien Miller <djm@mindrot.org>
5078Date: Wed Oct 25 11:25:43 2017 +1100
5079
5080 check for net/route.h and sys/sysctl.h
5081
5082commit 4d5456c7de108e17603a0920c4d15bca87244921
5083Author: djm@openbsd.org <djm@openbsd.org>
5084Date: Wed Oct 25 00:21:37 2017 +0000
5085
5086 upstream commit
5087
5088 transfer ownership of stdout to the session channel by
5089 dup2'ing /dev/null to fd 1. This allows propagation of remote stdout close to
5090 the local side; reported by David Newall, ok markus@
5091
5092 Upstream-ID: 8d9ac18a11d89e6b0415f0cbf67b928ac67f0e79
5093
5094commit 68af80e6fdeaeb79432209db614386ff0f37e75f
5095Author: djm@openbsd.org <djm@openbsd.org>
5096Date: Wed Oct 25 00:19:47 2017 +0000
5097
5098 upstream commit
5099
5100 add a "rdomain" criteria for the sshd_config Match
5101 keyword to allow conditional configuration that depends on which rdomain(4) a
5102 connection was recevied on. ok markus@
5103
5104 Upstream-ID: 27d8fd5a3f1bae18c9c6e533afdf99bff887a4fb
5105
5106commit 35eb33fb957979e3fcbe6ea0eaee8bf4a217421a
5107Author: djm@openbsd.org <djm@openbsd.org>
5108Date: Wed Oct 25 00:17:08 2017 +0000
5109
5110 upstream commit
5111
5112 add sshd_config RDomain keyword to place sshd and the
5113 subsequent user session (including the shell and any TCP/IP forwardings) into
5114 the specified rdomain(4)
5115
5116 ok markus@
5117
5118 Upstream-ID: be2358e86346b5cacf20d90f59f980b87d1af0f5
5119
5120commit acf559e1cffbd1d6167cc1742729fc381069f06b
5121Author: djm@openbsd.org <djm@openbsd.org>
5122Date: Wed Oct 25 00:15:35 2017 +0000
5123
5124 upstream commit
5125
5126 Add optional rdomain qualifier to sshd_config's
5127 ListenAddress option to allow listening on a different rdomain(4), e.g.
5128
5129 ListenAddress 0.0.0.0 rdomain 4
5130
5131 Upstream-ID: 24b6622c376feeed9e9be8b9605e593695ac9091
5132
5133commit b9903ee8ee8671b447fc260c2bee3761e26c7227
5134Author: millert@openbsd.org <millert@openbsd.org>
5135Date: Tue Oct 24 19:41:45 2017 +0000
5136
5137 upstream commit
5138
5139 Kill dead store and some spaces vs. tabs indent in
5140 parse_user_host_path(). Noticed by markus@
5141
5142 Upstream-ID: 114fec91dadf9af46c7c94fd40fc630ea2de8200
5143
5144commit 0869627e00f4ee2a038cb62d7bd9ffad405e1800
5145Author: jmc@openbsd.org <jmc@openbsd.org>
5146Date: Tue Oct 24 06:27:42 2017 +0000
5147
5148 upstream commit
5149
5150 tweak previous; ok djm
5151
5152 Upstream-ID: 7d913981ab315296be1f759c67b6e17aea38fca9
5153
5154commit e3fa20e2e58fdc88a0e842358778f2de448b771b
5155Author: Damien Miller <djm@mindrot.org>
5156Date: Mon Oct 23 16:25:24 2017 +1100
5157
5158 avoid -Wsign-compare warning in argv copying
5159
5160commit b7548b12a6b2b4abf4d057192c353147e0abba08
5161Author: djm@openbsd.org <djm@openbsd.org>
5162Date: Mon Oct 23 05:08:00 2017 +0000
5163
5164 upstream commit
5165
5166 Expose devices allocated for tun/tap forwarding.
5167
5168 At the client, the device may be obtained from a new %T expansion
5169 for LocalCommand.
5170
5171 At the server, the allocated devices will be listed in a
5172 SSH_TUNNEL variable exposed to the environment of any user sessions
5173 started after the tunnel forwarding was established.
5174
5175 ok markus
5176
5177 Upstream-ID: e61e53f8ae80566e9ddc0d67a5df5bdf2f3c9f9e
5178
5179commit 887669ef032d63cf07f53cada216fa8a0c9a7d72
5180Author: millert@openbsd.org <millert@openbsd.org>
5181Date: Sat Oct 21 23:06:24 2017 +0000
5182
5183 upstream commit
5184
5185 Add URI support to ssh, sftp and scp. For example
5186 ssh://user@host or sftp://user@host/path. The connection parameters
5187 described in draft-ietf-secsh-scp-sftp-ssh-uri-04 are not implemented since
5188 the ssh fingerprint format in the draft uses md5 with no way to specify the
5189 hash function type. OK djm@
5190
5191 Upstream-ID: 4ba3768b662d6722de59e6ecb00abf2d4bf9cacc
5192
5193commit d27bff293cfeb2252f4c7a58babe5ad3262c6c98
5194Author: Damien Miller <djm@mindrot.org>
5195Date: Fri Oct 20 13:22:00 2017 +1100
5196
5197 Fix missed RCSID merges
5198
5199commit d3b6aeb546242c9e61721225ac4387d416dd3d5e
5200Author: djm@openbsd.org <djm@openbsd.org>
5201Date: Fri Oct 20 02:13:41 2017 +0000
5202
5203 upstream commit
5204
5205 more RCSIDs
5206
5207 Upstream-Regress-ID: 1aecbe3f8224793f0ec56741a86d619830eb33be
5208
5209commit b011edbb32e41aaab01386ce4c0efcc9ff681c4a
5210Author: djm@openbsd.org <djm@openbsd.org>
5211Date: Fri Oct 20 01:56:39 2017 +0000
5212
5213 upstream commit
5214
5215 add RCSIDs to these; they make syncing portable a bit
5216 easier
5217
5218 Upstream-ID: 56cb7021faea599736dd7e7f09c2e714425b1e68
5219
5220commit 6eb27597781dccaf0ec2b80107a9f0592a0cb464
5221Author: Damien Miller <djm@mindrot.org>
5222Date: Fri Oct 20 12:54:15 2017 +1100
5223
5224 upstream commit
5225
5226 Apply missing commit 1.11 to kexc25519s.c
5227
5228 Upstream-ID: 5f020e23a1ee6c3597af1f91511e68552cdf15e8
5229
5230commit 6f72280553cb6918859ebcacc717f2d2fafc1a27
5231Author: Damien Miller <djm@mindrot.org>
5232Date: Fri Oct 20 12:52:50 2017 +1100
5233
5234 upstream commit
5235
5236 Apply missing commit 1.127 to servconf.h
5237
5238 Upstream-ID: f14c4bac74a2b7cf1e3cff6bea5c447f192a7d15
5239
5240commit bb3e16ab25cb911238c2eb7455f9cf490cb143cc
5241Author: jmc@openbsd.org <jmc@openbsd.org>
5242Date: Wed Oct 18 05:36:59 2017 +0000
5243
5244 upstream commit
5245
5246 remove unused Pp;
5247
5248 Upstream-ID: 8ad26467f1f6a40be887234085a8e01a61a00550
5249
5250commit 05b69e99570553c8e1eafb895b1fbf1d098d2e14
5251Author: djm@openbsd.org <djm@openbsd.org>
5252Date: Wed Oct 18 02:49:44 2017 +0000
5253
5254 upstream commit
5255
5256 In the description of pattern-lists, clarify negated
5257 matches by explicitly stating that a negated match will never yield a
5258 positive result, and that at least one positive term in the pattern-list must
5259 match. bz#1918
5260
5261 Upstream-ID: 652d2f9d993f158fc5f83cef4a95cd9d95ae6a14
5262
5263commit eb80e26a15c10bc65fed8b8cdb476819a713c0fd
5264Author: djm@openbsd.org <djm@openbsd.org>
5265Date: Fri Oct 13 21:13:54 2017 +0000
5266
5267 upstream commit
5268
5269 log debug messages sent to peer; ok deraadt markus
5270
5271 Upstream-ID: 3b4fdc0a06ea5083f61d96e20043000f477103d9
5272
5273commit 071325f458d615d7740da5c1c1d5a8b68a0b4605
5274Author: jmc@openbsd.org <jmc@openbsd.org>
5275Date: Fri Oct 13 16:50:45 2017 +0000
5276
5277 upstream commit
5278
5279 trim permitrootlogin description somewhat, to avoid
5280 ambiguity; original diff from walter alejandro iglesias, tweaked by sthen and
5281 myself
5282
5283 ok sthen schwarze deraadt
5284
5285 Upstream-ID: 1749418b2bc073f3fdd25fe21f8263c3637fe5d2
5286
5287commit 10727487becb897a15f658e0cb2d05466236e622
5288Author: djm@openbsd.org <djm@openbsd.org>
5289Date: Fri Oct 13 06:45:18 2017 +0000
5290
5291 upstream commit
5292
5293 mention SSH_USER_AUTH in the list of environment
5294 variables
5295
5296 Upstream-ID: 1083397c3ee54b4933121ab058c70a0fc6383691
5297
5298commit 224f193d6a4b57e7a0cb2b9ecd3b6c54d721d8c2
5299Author: djm@openbsd.org <djm@openbsd.org>
5300Date: Fri Oct 13 06:24:51 2017 +0000
5301
5302 upstream commit
5303
5304 BIO_get_mem_data() is supposed to take a char* as pointer
5305 argument, so don't pass it a const char*
5306
5307 Upstream-ID: 1ccd91eb7f4dd4f0fa812d4f956987cd00b5f6ec
5308
5309commit cfa46825b5ef7097373ed8e31b01a4538a8db565
5310Author: benno@openbsd.org <benno@openbsd.org>
5311Date: Mon Oct 9 20:12:51 2017 +0000
5312
5313 upstream commit
5314
5315 clarify the order in which config statements are used. ok
5316 jmc@ djm@
5317
5318 Upstream-ID: e37e27bb6bbac71315e22cb9690fd8a556a501ed
5319
5320commit dceabc7ad7ebc7769c8214a1647af64c9a1d92e5
5321Author: djm@openbsd.org <djm@openbsd.org>
5322Date: Thu Oct 5 15:52:03 2017 +0000
5323
5324 upstream commit
5325
5326 replace statically-sized arrays in ServerOptions with
5327 dynamic ones managed by xrecallocarray, removing some arbitrary (though
5328 large) limits and saving a bit of memory; "much nicer" markus@
5329
5330 Upstream-ID: 1732720b2f478fe929d6687ac7b0a97ff2efe9d2
5331
5332commit 2b4f3ab050c2aaf6977604dd037041372615178d
5333Author: jmc@openbsd.org <jmc@openbsd.org>
5334Date: Thu Oct 5 12:56:50 2017 +0000
5335
5336 upstream commit
5337
5338 %C is hashed; from klemens nanni ok markus
5339
5340 Upstream-ID: 6ebed7b2e1b6ee5402a67875d74f5e2859d8f998
5341
5342commit a66714508b86d6814e9055fefe362d9fe4d49ab3
5343Author: djm@openbsd.org <djm@openbsd.org>
5344Date: Wed Oct 4 18:50:23 2017 +0000
5345
5346 upstream commit
5347
5348 exercise PermitOpen a little more thoroughly
5349
5350 Upstream-Regress-ID: f41592334e227a4c1f9a983044522de4502d5eac
5351
5352commit 609ecc8e57eb88e2eac976bd3cae7f7889aaeff6
5353Author: dtucker@openbsd.org <dtucker@openbsd.org>
5354Date: Tue Sep 26 22:39:25 2017 +0000
5355
5356 upstream commit
5357
5358 UsePrivilegeSeparation is gone, stop trying to test it.
5359
5360 Upstream-Regress-ID: 796a5057cfd79456a20ea935cc53f6eb80ace191
5361
5362commit 69bda0228861f3dacd4fb3d28b60ce9d103d254b
5363Author: djm@openbsd.org <djm@openbsd.org>
5364Date: Wed Oct 4 18:49:30 2017 +0000
5365
5366 upstream commit
5367
5368 fix (another) problem in PermitOpen introduced during the
5369 channels.c refactor: the third and subsequent arguments to PermitOpen were
5370 being silently ignored; ok markus@
5371
5372 Upstream-ID: 067c89f1f53cbc381628012ba776d6861e6782fd
5373
5374commit 66bf74a92131b7effe49fb0eefe5225151869dc5
5375Author: djm@openbsd.org <djm@openbsd.org>
5376Date: Mon Oct 2 19:33:20 2017 +0000
5377
5378 upstream commit
5379
5380 Fix PermitOpen crash; spotted by benno@, ok dtucker@ deraadt@
5381
5382 Upstream-ID: c2cc84ffac070d2e1ff76182c70ca230a387983c
5383
5384commit d63b38160a59039708fd952adc75a0b3da141560
5385Author: Damien Miller <djm@mindrot.org>
5386Date: Sun Oct 1 10:32:25 2017 +1100
5387
5388 update URL again
5389
5390 I spotted a typo in the draft so uploaded a new version...
5391
5392commit 6f64f596430cd3576c529f07acaaf2800aa17d58
5393Author: Damien Miller <djm@mindrot.org>
5394Date: Sun Oct 1 10:01:56 2017 +1100
5395
5396 sync release notes URL
5397
5398commit 35ff70a04dd71663a5ac1e73b90d16d270a06e0d
5399Author: Damien Miller <djm@mindrot.org>
5400Date: Sun Oct 1 10:01:25 2017 +1100
5401
5402 sync contrib/ssh-copy-id with upstream
5403
5404commit 290843b8ede85f8b30bf29cd7dceb805c3ea5b66
5405Author: Damien Miller <djm@mindrot.org>
5406Date: Sun Oct 1 09:59:19 2017 +1100
5407
5408 update version in RPM spec files
5409
5410commit 4e4e0bb223c5be88d87d5798c75cc6b0d4fef31d
5411Author: Damien Miller <djm@mindrot.org>
5412Date: Sun Oct 1 09:58:24 2017 +1100
5413
5414 update agent draft URL
5415
5416commit e4a798f001d2ecd8bf025c1d07658079f27cc604
5417Author: djm@openbsd.org <djm@openbsd.org>
5418Date: Sat Sep 30 22:26:33 2017 +0000
5419
5420 upstream commit
5421
5422 openssh-7.6; ok deraadt@
5423
5424 Upstream-ID: a39c3a5b63a1baae109ae1ae4c7c34c2a59acde0
5425
5426commit 5fa1407e16e7e5fda9769d53b626ce39d5588d4d
5427Author: jmc@openbsd.org <jmc@openbsd.org>
5428Date: Wed Sep 27 06:45:53 2017 +0000
5429
5430 upstream commit
5431
5432 tweak EposeAuthinfo; diff from lars nooden
5433
5434 tweaked by sthen; ok djm dtucker
5435
5436 Upstream-ID: 8f2ea5d2065184363e8be7a0ba24d98a3b259748
5437
5438commit bba69c246f0331f657fd6ec97724df99fc1ad174
5439Author: Damien Miller <djm@mindrot.org>
5440Date: Thu Sep 28 16:06:21 2017 -0700
5441
5442 don't fatal ./configure for LibreSSL
5443
5444commit 04dc070e8b4507d9d829f910b29be7e3b2414913
5445Author: Damien Miller <djm@mindrot.org>
5446Date: Thu Sep 28 14:54:34 2017 -0700
5447
5448 abort in configure when only openssl-1.1.x found
5449
5450 We don't support openssl-1.1.x yet (see multiple threads on the
5451 openssh-unix-dev@ mailing list for the reason), but previously
5452 ./configure would accept it and the compilation would subsequently
5453 fail. This makes ./configure display an explicit error message and
5454 abort.
5455
5456 ok dtucker@
5457
5458commit 74c1c3660acf996d9dc329e819179418dc115f2c
5459Author: Darren Tucker <dtucker@zip.com.au>
5460Date: Wed Sep 27 07:44:41 2017 +1000
5461
5462 Check for and handle calloc(p, 0) = NULL.
5463
5464 On some platforms (AIX, maybe others) allocating zero bytes of memory
5465 via the various *alloc functions returns NULL, which is permitted
5466 by the standards. Autoconf has some macros for detecting this (with
5467 the exception of calloc for some reason) so use these and if necessary
5468 activate shims for them. ok djm@
5469
5470commit 6a9481258a77b0b54b2a313d1761c87360c5f1f5
5471Author: markus@openbsd.org <markus@openbsd.org>
5472Date: Thu Sep 21 19:18:12 2017 +0000
5473
5474 upstream commit
5475
5476 test reverse dynamic forwarding with SOCKS
5477
5478 Upstream-Regress-ID: 95cf290470f7e5e2f691e4bc6ba19b91eced2f79
5479
5480commit 1b9f321605733754df60fac8c1d3283c89b74455
5481Author: Damien Miller <djm@mindrot.org>
5482Date: Tue Sep 26 16:55:55 2017 +1000
5483
5484 sync missing changes in dynamic-forward.sh
5485
5486commit 44fc334c7a9ebdd08addb6d5fa005369897fddeb
5487Author: Darren Tucker <dtucker@zip.com.au>
5488Date: Mon Sep 25 09:48:10 2017 +1000
5489
5490 Add minimal strsignal for platforms without it.
5491
5492commit 218e6f98df566fb9bd363f6aa47018cb65ede196
5493Author: djm@openbsd.org <djm@openbsd.org>
5494Date: Sun Sep 24 13:45:34 2017 +0000
5495
5496 upstream commit
5497
5498 fix inverted test on channel open failure path that
5499 "upgraded" a transient failure into a fatal error; reported by sthen and also
5500 seen by benno@; ok sthen@
5501
5502 Upstream-ID: b58b3fbb79ba224599c6cd6b60c934fc46c68472
5503
5504commit c704f641f7b8777497dc82e81f2ac89afec7e401
5505Author: djm@openbsd.org <djm@openbsd.org>
5506Date: Sun Sep 24 09:50:01 2017 +0000
5507
5508 upstream commit
5509
5510 write the correct buffer when tunnel forwarding; doesn't
5511 matter on OpenBSD (they are the same) but does matter on portable where we
5512 use an output filter to translate os-specific tun/tap headers
5513
5514 Upstream-ID: f1ca94eff48404827b12e1d12f6139ee99a72284
5515
5516commit 55486f5cef117354f0c64f991895835077b7c7f7
5517Author: djm@openbsd.org <djm@openbsd.org>
5518Date: Sat Sep 23 22:04:07 2017 +0000
5519
5520 upstream commit
5521
5522 fix tunnel forwarding problem introduced in refactor;
5523 reported by stsp@ ok markus@
5524
5525 Upstream-ID: 81a731cdae1122c8522134095d1a8b60fa9dcd04
5526
5527commit 609d7a66ce578abf259da2d5f6f68795c2bda731
5528Author: markus@openbsd.org <markus@openbsd.org>
5529Date: Thu Sep 21 19:16:53 2017 +0000
5530
5531 upstream commit
5532
5533 Add 'reverse' dynamic forwarding which combines dynamic
5534 forwarding (-D) with remote forwarding (-R) where the remote-forwarded port
5535 expects SOCKS-requests.
5536
5537 The SSH server code is unchanged and the parsing happens at the SSH
5538 clients side. Thus the full SOCKS-request is sent over the forwarded
5539 channel and the client parses c->output. Parsing happens in
5540 channel_before_prepare_select(), _before_ the select bitmask is
5541 computed in the pre[] handlers, but after network input processing
5542 in the post[] handlers.
5543
5544 help and ok djm@
5545
5546 Upstream-ID: aa25a6a3851064f34fe719e0bf15656ad5a64b89
5547
5548commit 36945fa103176c00b39731e1fc1919a0d0808b81
5549Author: dtucker@openbsd.org <dtucker@openbsd.org>
5550Date: Wed Sep 20 05:19:00 2017 +0000
5551
5552 upstream commit
5553
5554 Use strsignal in debug message instead of casting for the
5555 benefit of portable where sig_atomic_t might not be int. "much nicer"
5556 deraadt@
5557
5558 Upstream-ID: 2dac6c1e40511c700bd90664cd263ed2299dcf79
5559
5560commit 3e8d185af326bf183b6f78597d5e3d2eeb2dc40e
5561Author: millert@openbsd.org <millert@openbsd.org>
5562Date: Tue Sep 19 12:10:30 2017 +0000
5563
5564 upstream commit
5565
5566 Use explicit_bzero() instead of bzero() before free() to
5567 prevent the compiler from optimizing away the bzero() call. OK djm@
5568
5569 Upstream-ID: cdc6197e64c9684c7250e23d60863ee1b53cef1d
5570
5571commit 5b8da1f53854c0923ec6e927e86709e4d72737b6
5572Author: djm@openbsd.org <djm@openbsd.org>
5573Date: Tue Sep 19 04:24:22 2017 +0000
5574
5575 upstream commit
5576
5577 fix use-after-free in ~^Z escape handler path, introduced
5578 in channels.c refactor; spotted by millert@ "makes sense" deraadt@
5579
5580 Upstream-ID: 8fa2cdc65c23ad6420c1e59444b0c955b0589b22
5581
5582commit a3839d8d2b89ff1a80cadd4dd654336710de2c9e
5583Author: dtucker@openbsd.org <dtucker@openbsd.org>
5584Date: Mon Sep 18 12:03:24 2017 +0000
5585
5586 upstream commit
5587
5588 Prevent type mismatch warning in debug on platforms where
5589 sig_atomic_t != int. ok djm@
5590
5591 Upstream-ID: 306e2375eb0364a4c68e48f091739bea4f4892ed
5592
5593commit 30484e5e5f0b63d2c6ba32c6b85f06b6c6fa55fc
5594Author: dtucker@openbsd.org <dtucker@openbsd.org>
5595Date: Mon Sep 18 09:41:52 2017 +0000
5596
5597 upstream commit
5598
5599 Add braces missing after channels refactor. ok markus@
5600
5601 Upstream-ID: 72ab325c84e010680dbc88f226e2aa96b11a3980
5602
5603commit b79569190b9b76dfacc6d996faa482f16e8fc026
5604Author: Damien Miller <djm@mindrot.org>
5605Date: Tue Sep 19 12:29:23 2017 +1000
5606
5607 add freezero(3) replacement
5608
5609 ok dtucker@
5610
5611commit 161af8f5ec0961b10cc032efb5cc1b44ced5a92e
5612Author: Damien Miller <djm@mindrot.org>
5613Date: Tue Sep 19 10:18:56 2017 +1000
5614
5615 move FORTIFY_SOURCE into hardening options group
5616
5617 It's still on by default, but now it's possible to turn it off using
5618 --without-hardening. This is useful since it's known to cause problems
5619 with some -fsanitize options. ok dtucker@
5620
5621commit 09eacf856e0fe1a6e3fe597ec8032b7046292914
5622Author: bluhm@openbsd.org <bluhm@openbsd.org>
5623Date: Wed Sep 13 14:58:26 2017 +0000
5624
5625 upstream commit
5626
5627 Print SKIPPED if sudo and doas configuration is missing.
5628 Prevents that running the regression test with wrong environment is reported
5629 as failure. Keep the fatal there to avoid interfering with other setups for
5630 portable ssh. OK dtucker@
5631
5632 Upstream-Regress-ID: f0dc60023caef496ded341ac5aade2a606fa234e
5633
5634commit cdede10899892f25f1ccdccd7a3fe5e5ef0aa49a
5635Author: dtucker@openbsd.org <dtucker@openbsd.org>
5636Date: Mon Aug 7 03:52:55 2017 +0000
5637
5638 upstream commit
5639
5640 Remove obsolete privsep=no fallback test.
5641
5642 Upstream-Regress-ID: 7d6e1baa1678ac6be50c2a1555662eb1047638df
5643
5644commit ec218c105daa9f5b192f7aa890fdb2d4fdc4e9d8
5645Author: dtucker@openbsd.org <dtucker@openbsd.org>
5646Date: Mon Aug 7 00:53:51 2017 +0000
5647
5648 upstream commit
5649
5650 Remove non-privsep test since disabling privsep is now
5651 deprecated.
5652
5653 Upstream-Regress-ID: 77ad3f3d8d52e87f514a80f285c6c1229b108ce8
5654
5655commit 239c57d5bc2253e27e3e6ad7ac52ec8c377ee24e
5656Author: dtucker@openbsd.org <dtucker@openbsd.org>
5657Date: Fri Jul 28 10:32:08 2017 +0000
5658
5659 upstream commit
5660
5661 Don't call fatal from stop_sshd since it calls cleanup
5662 which calls stop_sshd which will probably fail in the same way. Instead,
5663 just bail. Differentiate between sshd dying without cleanup and not shutting
5664 down.
5665
5666 Upstream-Regress-ID: f97315f538618b349e2b0bea02d6b0c9196c6bc4
5667
5668commit aea59a0d9f120f2a87c7f494a0d9c51eaa79b8ba
5669Author: djm@openbsd.org <djm@openbsd.org>
5670Date: Thu Sep 14 04:32:21 2017 +0000
5671
5672 upstream commit
5673
5674 Revert commitid: gJtIN6rRTS3CHy9b.
5675
5676 -------------
5677 identify the case where SSHFP records are missing but other DNS RR
5678 types are present and display a more useful error message for this
5679 case; patch by Thordur Bjornsson; bz#2501; ok dtucker@
5680 -------------
5681
5682 This caused unexpected failures when VerifyHostKeyDNS=yes, SSHFP results
5683 are missing but the user already has the key in known_hosts
5684
5685 Spotted by dtucker@
5686
5687 Upstream-ID: 97e31742fddaf72046f6ffef091ec0d823299920
5688
5689commit 871f1e4374420b07550041b329627c474abc3010
5690Author: Damien Miller <djm@mindrot.org>
5691Date: Tue Sep 12 18:01:35 2017 +1000
5692
5693 adapt portable to channels API changes
5694
5695commit 4ec0bb9f9ad7b4eb0af110fa8eddf8fa199e46bb
5696Author: djm@openbsd.org <djm@openbsd.org>
5697Date: Tue Sep 12 07:55:48 2017 +0000
5698
5699 upstream commit
5700
5701 unused variable
5702
5703 Upstream-ID: 2f9ba09f2708993d35eac5aa71df910dcc52bac1
5704
5705commit 9145a73ce2ba30c82bbf91d7205bfd112529449f
5706Author: djm@openbsd.org <djm@openbsd.org>
5707Date: Tue Sep 12 07:32:04 2017 +0000
5708
5709 upstream commit
5710
5711 fix tun/tap forwarding case in previous
5712
5713 Upstream-ID: 43ebe37a930320e24bca6900dccc39857840bc53
5714
5715commit 9f53229c2ac97dbc6f5a03657de08a1150a9ac7e
5716Author: djm@openbsd.org <djm@openbsd.org>
5717Date: Tue Sep 12 06:35:31 2017 +0000
5718
5719 upstream commit
5720
5721 Make remote channel ID a u_int
5722
5723 Previously we tracked the remote channel IDs in an int, but this is
5724 strictly incorrect: the wire protocol uses uint32 and there is nothing
5725 in-principle stopping a SSH implementation from sending, say, 0xffff0000.
5726
5727 In practice everyone numbers their channels sequentially, so this has
5728 never been a problem.
5729
5730 ok markus@
5731
5732 Upstream-ID: b9f4cd3dc53155b4a5c995c0adba7da760d03e73
5733
5734commit dbee4119b502e3f8b6cd3282c69c537fd01d8e16
5735Author: djm@openbsd.org <djm@openbsd.org>
5736Date: Tue Sep 12 06:32:07 2017 +0000
5737
5738 upstream commit
5739
5740 refactor channels.c
5741
5742 Move static state to a "struct ssh_channels" that is allocated at
5743 runtime and tracked as a member of struct ssh.
5744
5745 Explicitly pass "struct ssh" to all channels functions.
5746
5747 Replace use of the legacy packet APIs in channels.c.
5748
5749 Rework sshd_config PermitOpen handling: previously the configuration
5750 parser would call directly into the channels layer. After the refactor
5751 this is not possible, as the channels structures are allocated at
5752 connection time and aren't available when the configuration is parsed.
5753 The server config parser now tracks PermitOpen itself and explicitly
5754 configures the channels code later.
5755
5756 ok markus@
5757
5758 Upstream-ID: 11828f161656b965cc306576422613614bea2d8f
5759
5760commit abd59663df37a42152e37980113ccaa405b9a282
5761Author: djm@openbsd.org <djm@openbsd.org>
5762Date: Thu Sep 7 23:48:09 2017 +0000
5763
5764 upstream commit
5765
5766 typo in comment
5767
5768 Upstream-ID: a93b1e6f30f1f9b854b5b964b9fd092d0c422c47
5769
5770commit 149a8cd24ce9dd47c36f571738681df5f31a326c
5771Author: jmc@openbsd.org <jmc@openbsd.org>
5772Date: Mon Sep 4 06:34:43 2017 +0000
5773
5774 upstream commit
5775
5776 tweak previous;
5777
5778 Upstream-ID: bb8cc40b61b15f6a13d81da465ac5bfc65cbfc4b
5779
5780commit ec9d22cc251cc5acfe7b2bcef9cc7a1fe0e949d8
5781Author: Damien Miller <djm@mindrot.org>
5782Date: Fri Sep 8 12:44:13 2017 +1000
5783
5784 Fuzzer harnesses for sig verify and pubkey parsing
5785
5786 These are some basic clang libfuzzer harnesses for signature
5787 verification and public key parsing. Some assembly (metaphorical)
5788 required.
5789
5790commit de35c382894964a896a63ecd5607d3a3b93af75d
5791Author: Damien Miller <djm@mindrot.org>
5792Date: Fri Sep 8 12:38:31 2017 +1000
5793
5794 Give configure ability to set CFLAGS/LDFLAGS later
5795
5796 Some CFLAGS/LDFLAGS may disrupt the configure script's operation,
5797 in particular santization and fuzzer options that break assumptions
5798 about memory and file descriptor dispositions.
5799
5800 This adds two flags to configure --with-cflags-after and
5801 --with-ldflags-after that allow specifying additional compiler and
5802 linker options that are added to the resultant Makefiles but not
5803 used in the configure run itself.
5804
5805 E.g.
5806
5807 env CC=clang-3.9 ./configure \
5808 --with-cflags-after=-fsantize=address \
5809 --with-ldflags-after="-g -fsanitize=address"
5810
5811commit 22376d27a349f62c502fec3396dfe0fdcb2a40b7
5812Author: djm@openbsd.org <djm@openbsd.org>
5813Date: Sun Sep 3 23:33:13 2017 +0000
5814
5815 upstream commit
5816
5817 Expand ssh_config's StrictModes option with two new
5818 settings:
5819
5820 StrictModes=accept-new will automatically accept hitherto-unseen keys
5821 but will refuse connections for changed or invalid hostkeys.
5822
5823 StrictModes=off is the same as StrictModes=no
5824
5825 Motivation:
5826
5827 StrictModes=no combines two behaviours for host key processing:
5828 automatically learning new hostkeys and continuing to connect to hosts
5829 with invalid/changed hostkeys. The latter behaviour is quite dangerous
5830 since it removes most of the protections the SSH protocol is supposed to
5831 provide.
5832
5833 Quite a few users want to automatically learn hostkeys however, so
5834 this makes that feature available with less danger.
5835
5836 At some point in the future, StrictModes=no will change to be a synonym
5837 for accept-new, with its current behaviour remaining available via
5838 StrictModes=off.
5839
5840 bz#2400, suggested by Michael Samuel; ok markus
5841
5842 Upstream-ID: 0f55502bf75fc93a74fb9853264a8276b9680b64
5843
5844commit ff3c42384033514e248ba5d7376aa033f4a2b99a
5845Author: jmc@openbsd.org <jmc@openbsd.org>
5846Date: Fri Sep 1 15:41:26 2017 +0000
5847
5848 upstream commit
5849
5850 remove blank line;
5851
5852 Upstream-ID: 2f46b51a0ddb3730020791719e94d3e418e9f423
5853
5854commit b828605d51f57851316d7ba402b4ae06cf37c55d
5855Author: djm@openbsd.org <djm@openbsd.org>
5856Date: Fri Sep 1 05:53:56 2017 +0000
5857
5858 upstream commit
5859
5860 identify the case where SSHFP records are missing but
5861 other DNS RR types are present and display a more useful error message for
5862 this case; patch by Thordur Bjornsson; bz#2501; ok dtucker@
5863
5864 Upstream-ID: 8f7a5a8344f684823d8317a9708b63e75be2c244
5865
5866commit 8042bad97e2789a50e8f742c3bcd665ebf0add32
5867Author: djm@openbsd.org <djm@openbsd.org>
5868Date: Fri Sep 1 05:50:48 2017 +0000
5869
5870 upstream commit
5871
5872 document available AuthenticationMethods; bz#2453 ok
5873 dtucker@
5874
5875 Upstream-ID: 2c70576f237bb699aff59889dbf2acba4276d3d0
5876
5877commit 71e5a536ec815d542b199f2ae6d646c0db9f1b58
5878Author: djm@openbsd.org <djm@openbsd.org>
5879Date: Wed Aug 30 03:59:08 2017 +0000
5880
5881 upstream commit
5882
5883 pass packet state down to some of the channels function
5884 (more to come...); ok markus@
5885
5886 Upstream-ID: d8ce7a94f4059d7ac1e01fb0eb01de0c4b36c81b
5887
5888commit 6227fe5b362239c872b91bbdee4bf63cf85aebc5
5889Author: jmc@openbsd.org <jmc@openbsd.org>
5890Date: Tue Aug 29 13:05:58 2017 +0000
5891
5892 upstream commit
5893
5894 sort options;
5895
5896 Upstream-ID: cf21d68cf54e81968bca629aaeddc87f0c684f3c
5897
5898commit 530591a5795a02d01c78877d58604723918aac87
5899Author: dlg@openbsd.org <dlg@openbsd.org>
5900Date: Tue Aug 29 09:42:29 2017 +0000
5901
5902 upstream commit
5903
5904 add a -q option to ssh-add to make it quiet on success.
5905
5906 if you want to silence ssh-add without this you generally redirect
5907 the output to /dev/null, but that can hide error output which you
5908 should see.
5909
5910 ok djm@
5911
5912 Upstream-ID: 2f31b9b13f99dcf587e9a8ba443458e6c0d8997c
5913
5914commit a54eb27dd64b5eca3ba94e15cec3535124bd5029
5915Author: dtucker@openbsd.org <dtucker@openbsd.org>
5916Date: Sun Aug 27 00:38:41 2017 +0000
5917
5918 upstream commit
5919
5920 Increase the buffer sizes for user prompts to ensure that
5921 they won't be truncated by snprintf. Based on patch from cjwatson at
5922 debian.org via bz#2768, ok djm@
5923
5924 Upstream-ID: 6ffacf1abec8f40b469de5b94bfb29997d96af3e
5925
5926commit dd9d9b3381a4597b840d480b043823112039327e
5927Author: Darren Tucker <dtucker@zip.com.au>
5928Date: Mon Aug 28 16:48:27 2017 +1000
5929
5930 Switch Capsicum header to sys/capsicum.h.
5931
5932 FreeBSD's <sys/capability.h> was renamed to <sys/capsicum.h> in 2014 to
5933 avoid future conflicts with POSIX capabilities (the last release that
5934 didn't have it was 9.3) so switch to that. Patch from des at des.no.
5935
5936commit f5e917ab105af5dd6429348d9bc463e52b263f92
5937Author: Darren Tucker <dtucker@zip.com.au>
5938Date: Sun Aug 27 08:55:40 2017 +1000
5939
5940 Add missing includes for bsd-err.c.
5941
5942 Patch from cjwatson at debian.org via bz#2767.
5943
5944commit 878e029797cfc9754771d6f6ea17f8c89e11d225
5945Author: Damien Miller <djm@mindrot.org>
5946Date: Fri Aug 25 13:25:01 2017 +1000
5947
5948 Split platform_sys_dir_uid into its own file
5949
5950 platform.o is too heavy for libssh.a use; it calls into the server on
5951 many platforms. Move just the function needed by misc.c into its own
5952 file.
5953
5954commit 07949bfe9133234eddd01715592aa0dde67745f0
5955Author: Damien Miller <djm@mindrot.org>
5956Date: Wed Aug 23 20:13:18 2017 +1000
5957
5958 misc.c needs functions from platform.c now
5959
5960commit b074c3c3f820000a21953441cea7699c4b17d72f
5961Author: djm@openbsd.org <djm@openbsd.org>
5962Date: Fri Aug 18 05:48:04 2017 +0000
5963
5964 upstream commit
5965
5966 add a "quiet" flag to exited_cleanly() that supresses
5967 errors about exit status (failure due to signal is still reported)
5968
5969 Upstream-ID: db85c39c3aa08e6ff67fc1fb4ffa89f807a9d2f0
5970
5971commit de4ae07f12dabf8815ecede54235fce5d22e3f63
5972Author: djm@openbsd.org <djm@openbsd.org>
5973Date: Fri Aug 18 05:36:45 2017 +0000
5974
5975 upstream commit
5976
5977 Move several subprocess-related functions from various
5978 locations to misc.c. Extend subprocess() to offer a little more control over
5979 stdio disposition.
5980
5981 feedback & ok dtucker@
5982
5983 Upstream-ID: 3573dd7109d13ef9bd3bed93a3deb170fbfce049
5984
5985commit 643c2ad82910691b2240551ea8b14472f60b5078
5986Author: djm@openbsd.org <djm@openbsd.org>
5987Date: Sat Aug 12 06:46:01 2017 +0000
5988
5989 upstream commit
5990
5991 make "--" before the hostname terminate command-line
5992 option processing completely; previous behaviour would not prevent further
5993 options appearing after the hostname (ssh has a supported options after the
5994 hostname for >20 years, so that's too late to change).
5995
5996 ok deraadt@
5997
5998 Upstream-ID: ef5ee50571b98ad94dcdf8282204e877ec88ad89
5999
6000commit 0f3455356bc284d7c6f4d3c1614d31161bd5dcc2
6001Author: djm@openbsd.org <djm@openbsd.org>
6002Date: Sat Aug 12 06:42:52 2017 +0000
6003
6004 upstream commit
6005
6006 Switch from aes256-cbc to aes256-ctr for encrypting
6007 new-style private keys. The latter having the advantage of being supported
6008 for no-OpenSSL builds; bz#2754 ok markus@
6009
6010 Upstream-ID: 54179a2afd28f93470471030567ac40431e56909
6011
6012commit c4972d0a9bd6f898462906b4827e09b7caea2d9b
6013Author: djm@openbsd.org <djm@openbsd.org>
6014Date: Fri Aug 11 04:47:12 2017 +0000
6015
6016 upstream commit
6017
6018 refuse to a private keys when its corresponding .pub key
6019 does not match. bz#2737 ok dtucker@
6020
6021 Upstream-ID: 54ff5e2db00037f9db8d61690f26ef8f16e0d913
6022
6023commit 4b3ecbb663c919132dddb3758e17a23089413519
6024Author: djm@openbsd.org <djm@openbsd.org>
6025Date: Fri Aug 11 04:41:08 2017 +0000
6026
6027 upstream commit
6028
6029 don't print verbose error message when ssh disconnects
6030 under sftp; bz#2750; ok dtucker@
6031
6032 Upstream-ID: 6d83708aed77b933c47cf155a87dc753ec01f370
6033
6034commit 42a8f8bc288ef8cac504c5c73f09ed610bc74a34
6035Author: dtucker@openbsd.org <dtucker@openbsd.org>
6036Date: Fri Aug 11 04:16:35 2017 +0000
6037
6038 upstream commit
6039
6040 Tweak previous keepalive commit: if last_time + keepalive
6041 <= now instead of just "<" so client_alive_check will fire if the select
6042 happens to return on exact second of the timeout. ok djm@
6043
6044 Upstream-ID: e02756bd6038d11bb8522bfd75a4761c3a684fcc
6045
6046commit b60ff20051ef96dfb207b6bfa45c0ad6c34a542a
6047Author: dtucker@openbsd.org <dtucker@openbsd.org>
6048Date: Fri Aug 11 03:58:36 2017 +0000
6049
6050 upstream commit
6051
6052 Keep track of the last time we actually heard from the
6053 client and use this to also schedule a client_alive_check(). Prevents
6054 activity on a forwarded port from indefinitely preventing the select timeout
6055 so that client_alive_check() will eventually (although not optimally) be
6056 called.
6057
6058 Analysis by willchan at google com via bz#2756, feedback & ok djm@
6059
6060 Upstream-ID: c08721e0bbda55c6d18e2760f3fe1b17fb71169e
6061
6062commit 94bc1e7ffba3cbdea8c7dcdab8376bf29283128f
6063Author: Damien Miller <djm@mindrot.org>
6064Date: Fri Jul 28 14:50:59 2017 +1000
6065
6066 Expose list of completed auth methods to PAM
6067
6068 bz#2408; ok dtucker@
6069
6070commit c78e6eec78c88acf8d51db90ae05a3e39458603d
6071Author: Damien Miller <djm@mindrot.org>
6072Date: Fri Jul 21 14:38:16 2017 +1000
6073
6074 fix problems in tunnel forwarding portability code
6075
6076 This fixes a few problems in the tun forwarding code, mostly to do
6077 with host/network byte order confusion.
6078
6079 Based on a report and patch by stepe AT centaurus.uberspace.de;
6080 bz#2735; ok dtucker@
6081
6082commit 2985d4062ebf4204bbd373456a810d558698f9f5
6083Author: dtucker@openbsd.org <dtucker@openbsd.org>
6084Date: Tue Jul 25 09:22:25 2017 +0000
6085
6086 upstream commit
6087
6088 Make WinSCP patterns for SSH_OLD_DHGEX more specific to
6089 exclude WinSCP 5.10.x and up. bz#2748, from martin at winscp.net, ok djm@
6090
6091 Upstream-ID: 6fd7c32e99af3952db007aa180e73142ddbc741a
6092
6093commit 9f0e44e1a0439ff4646495d5735baa61138930a9
6094Author: djm@openbsd.org <djm@openbsd.org>
6095Date: Mon Jul 24 04:34:28 2017 +0000
6096
6097 upstream commit
6098
6099 g/c unused variable; make a little more portable
6100
6101 Upstream-ID: 3f5980481551cb823c6fb2858900f93fa9217dea
6102
6103commit 51676ec61491ec6d7cbd06082034e29b377b3bf6
6104Author: djm@openbsd.org <djm@openbsd.org>
6105Date: Sun Jul 23 23:37:02 2017 +0000
6106
6107 upstream commit
6108
6109 Allow IPQoS=none in ssh/sshd to not set an explicit
6110 ToS/DSCP value and just use the operating system default; ok dtucker@
6111
6112 Upstream-ID: 77906ff8c7b660b02ba7cb1e47b17d66f54f1f7e
6113
6114commit 6c1fbd5a50d8d2415f06c920dd3b1279b741072d
6115Author: Damien Miller <djm@mindrot.org>
6116Date: Fri Jul 21 14:24:26 2017 +1000
6117
6118 mention libedit
6119
6120commit dc2bd308768386b02c7337120203ca477e67ba62
6121Author: markus@openbsd.org <markus@openbsd.org>
6122Date: Wed Jul 19 08:30:41 2017 +0000
6123
6124 upstream commit
6125
6126 fix support for unknown key types; ok djm@
6127
6128 Upstream-ID: 53fb29394ed04d616d65b3748dee5aa06b07ab48
6129
6130commit fd0e8fa5f89d21290b1fb5f9d110ca4f113d81d9
6131Author: djm@openbsd.org <djm@openbsd.org>
6132Date: Wed Jul 19 01:15:02 2017 +0000
6133
6134 upstream commit
6135
6136 switch from select() to poll() for the ssh-agent
6137 mainloop; ok markus
6138
6139 Upstream-ID: 4a94888ee67b3fd948fd10693973beb12f802448
6140
6141commit b1e72df2b813ecc15bd0152167bf4af5f91c36d3
6142Author: dtucker@openbsd.org <dtucker@openbsd.org>
6143Date: Fri Jul 14 03:18:21 2017 +0000
6144
6145 upstream commit
6146
6147 Make ""Killed by signal 1" LogLevel verbose so it's not
6148 shown at the default level. Prevents it from appearing during ssh -J and
6149 equivalent ProxyCommand configs. bz#1906, bz#2744, feedback&ok markus@
6150
6151 Upstream-ID: debfaa7e859b272246c2f2633335d288d2e2ae28
6152
6153commit 1f3d202770a08ee6752ed2a234b7ca6f180eb498
6154Author: jmc@openbsd.org <jmc@openbsd.org>
6155Date: Thu Jul 13 19:16:33 2017 +0000
6156
6157 upstream commit
6158
6159 man pages with pseudo synopses which list filenames end
6160 up creating very ugly output in man -k; after some discussion with ingo, we
6161 feel the simplest fix is to remove such SYNOPSIS sections: the info is hardly
6162 helpful at page top, is contained already in FILES, and there are
6163 sufficiently few that just zapping them is simple;
6164
6165 ok schwarze, who also helpfully ran things through a build to check
6166 output;
6167
6168 Upstream-ID: 3e211b99457e2f4c925c5927d608e6f97431336c
6169
6170commit 7f13a4827fb28957161de4249bd6d71954f1f2ed
6171Author: espie@openbsd.org <espie@openbsd.org>
6172Date: Mon Jul 10 14:09:59 2017 +0000
6173
6174 upstream commit
6175
6176 zap redundant Makefile variables. okay djm@
6177
6178 Upstream-ID: e39b3902fe1d6c4a7ba6a3c58e072219f3c1e604
6179
6180commit dc44dd3a9e2c9795394e6a7e1e71c929cbc70ce0
6181Author: jmc@openbsd.org <jmc@openbsd.org>
6182Date: Sat Jul 8 18:32:54 2017 +0000
6183
6184 upstream commit
6185
6186 slightly rework previous, to avoid an article issue;
6187
6188 Upstream-ID: 15a315f0460ddd3d4e2ade1f16d6c640a8c41b30
6189
6190commit 853edbe057a84ebd0024c8003e4da21bf2b469f7
6191Author: djm@openbsd.org <djm@openbsd.org>
6192Date: Fri Jul 7 03:53:12 2017 +0000
6193
6194 upstream commit
6195
6196 When generating all hostkeys (ssh-keygen -A), clobber
6197 existing keys if they exist but are zero length. zero-length keys could
6198 previously be made if ssh-keygen failed part way through generating them, so
6199 avoid that case too. bz#2561 reported by Krzysztof Cieplucha; ok dtucker@
6200
6201 Upstream-ID: f662201c28ab8e1f086b5d43c59cddab5ade4044
6202
6203commit 43616876ba68a2ffaece6a6c792def4b039f2d6e
6204Author: djm@openbsd.org <djm@openbsd.org>
6205Date: Sat Jul 1 22:55:44 2017 +0000
6206
6207 upstream commit
6208
6209 actually remove these files
6210
6211 Upstream-ID: 1bd41cba06a7752de4df304305a8153ebfb6b0ac
6212
6213commit 83fa3a044891887369ce8b487ce88d713a04df48
6214Author: djm@openbsd.org <djm@openbsd.org>
6215Date: Sat Jul 1 13:50:45 2017 +0000
6216
6217 upstream commit
6218
6219 remove post-SSHv1 removal dead code from rsa.c and merge
6220 the remaining bit that it still used into ssh-rsa.c; ok markus
6221
6222 Upstream-ID: ac8a048d24dcd89594b0052ea5e3404b473bfa2f
6223
6224commit 738c73dca2c99ee78c531b4cbeefc2008fe438f0
6225Author: Damien Miller <djm@mindrot.org>
6226Date: Fri Jul 14 14:26:36 2017 +1000
6227
6228 make explicit_bzero/memset safe for sz=0
6229
6230commit 8433d51e067e0829f5521c0c646b6fd3fe17e732
6231Author: Tim Rice <tim@multitalents.net>
6232Date: Tue Jul 11 18:47:56 2017 -0700
6233
6234 modified: configure.ac
6235 UnixWare needs BROKEN_TCGETATTR_ICANON like Solaris
6236 Analysis by Robbie Zhang
6237
6238commit ff3507aea9c7d30cd098e7801e156c68faff7cc7
6239Author: Damien Miller <djm@mindrot.org>
6240Date: Fri Jul 7 11:21:27 2017 +1000
6241
6242 typo
6243
6244commit d79bceb9311a9c137d268f5bc481705db4151810
6245Author: dtucker@openbsd.org <dtucker@openbsd.org>
6246Date: Fri Jun 30 04:17:23 2017 +0000
6247
6248 upstream commit
6249
6250 Only call close once in confree(). ssh_packet_close will
6251 close the FD so only explicitly close non-SSH channels. bz#2734, from
6252 bagajjal at microsoft.com, ok djm@
6253
6254 Upstream-ID: a81ce0c8b023527167739fccf1732b154718ab02
6255
6256commit 197dc9728f062e23ce374f44c95a2b5f9ffa4075
6257Author: Darren Tucker <dtucker@zip.com.au>
6258Date: Thu Jun 29 15:40:25 2017 +1000
6259
6260 Update link for my patches.
6261
6262commit a98339edbc1fc21342a390f345179a9c3031bef7
6263Author: djm@openbsd.org <djm@openbsd.org>
6264Date: Wed Jun 28 01:09:22 2017 +0000
6265
6266 upstream commit
6267
6268 Allow ssh-keygen to use a key held in ssh-agent as a CA when
6269 signing certificates. bz#2377 ok markus
6270
6271 Upstream-ID: fb42e920b592edcbb5b50465739a867c09329c8f
6272
6273commit c9cdef35524bd59007e17d5bd2502dade69e2dfb
6274Author: djm@openbsd.org <djm@openbsd.org>
6275Date: Sat Jun 24 06:35:24 2017 +0000
6276
6277 upstream commit
6278
6279 regress test for ExposeAuthInfo
6280
6281 Upstream-Regress-ID: 190e5b6866376f4061c411ab157ca4d4e7ae86fd
6282
6283commit f17ee61cad25d210edab69d04ed447ad55fe80c1
6284Author: djm@openbsd.org <djm@openbsd.org>
6285Date: Sat Jun 24 07:08:57 2017 +0000
6286
6287 upstream commit
6288
6289 correct env var name
6290
6291 Upstream-ID: 721e761c2b1d6a4dcf700179f16fd53a1dadb313
6292
6293commit 40962198e3b132cecdb32e9350acd4294e6a1082
6294Author: jmc@openbsd.org <jmc@openbsd.org>
6295Date: Sat Jun 24 06:57:04 2017 +0000
6296
6297 upstream commit
6298
6299 spelling;
6300
6301 Upstream-ID: 606f933c8e2d0be902ea663946bc15e3eee40b25
6302
6303commit 33f86265d7e8a0e88d3a81745d746efbdd397370
6304Author: djm@openbsd.org <djm@openbsd.org>
6305Date: Sat Jun 24 06:38:11 2017 +0000
6306
6307 upstream commit
6308
6309 don't pass pointer to struct sshcipher between privsep
6310 processes, just redo the lookup in each using the already-passed cipher name.
6311 bz#2704 based on patch from Brooks Davis; ok markus dtucker
6312
6313 Upstream-ID: 2eab434c09bdf549dafd7da3e32a0d2d540adbe0
6314
6315commit 8f574959272ac7fe9239c4f5d10fd913f8920ab0
6316Author: djm@openbsd.org <djm@openbsd.org>
6317Date: Sat Jun 24 06:34:38 2017 +0000
6318
6319 upstream commit
6320
6321 refactor authentication logging
6322
6323 optionally record successful auth methods and public credentials
6324 used in a file accessible to user sessions
6325
6326 feedback and ok markus@
6327
6328 Upstream-ID: 090b93036967015717b9a54fd0467875ae9d32fb
6329
6330commit e2004d4bb7eb01c663dd3a3e7eb224f1ccdc9bba
6331Author: jmc@openbsd.org <jmc@openbsd.org>
6332Date: Sat Jun 24 06:28:50 2017 +0000
6333
6334 upstream commit
6335
6336 word fix;
6337
6338 Upstream-ID: 8539bdaf2366603a34a9b2f034527ca13bb795c5
6339
6340commit 4540428cd0adf039bcf5a8a27f2d5cdf09191513
6341Author: djm@openbsd.org <djm@openbsd.org>
6342Date: Sat Jun 24 05:37:44 2017 +0000
6343
6344 upstream commit
6345
6346 switch sshconnect.c from (slightly abused) select() to
6347 poll(); ok deraadt@ a while back
6348
6349 Upstream-ID: efc1937fc591bbe70ac9e9542bb984f354c8c175
6350
6351commit 6f8ca3b92540fa1a9b91670edc98d15448e3d765
6352Author: djm@openbsd.org <djm@openbsd.org>
6353Date: Sat Jun 24 05:35:05 2017 +0000
6354
6355 upstream commit
6356
6357 use HostKeyAlias if specified instead of hostname for
6358 matching host certificate principal names; bz#2728; ok dtucker@
6359
6360 Upstream-ID: dc2e11c83ae9201bbe74872a0c895ae9725536dd
6361
6362commit 8904ffce057b80a7472955f1ec00d7d5c250076c
6363Author: djm@openbsd.org <djm@openbsd.org>
6364Date: Sat Jun 24 05:24:11 2017 +0000
6365
6366 upstream commit
6367
6368 no need to call log_init to reinitialise logged PID in
6369 child sessions, since we haven't called openlog() in log_init() since 1999;
6370 ok markus@
6371
6372 Upstream-ID: 0906e4002af5d83d3d544df75e1187c932a3cf2e
6373
6374commit e238645d789cd7eb47541b66aea2a887ea122c9b
6375Author: mestre@openbsd.org <mestre@openbsd.org>
6376Date: Fri Jun 23 07:24:48 2017 +0000
6377
6378 upstream commit
6379
6380 When using the escape sequence &~ the code path is
6381 client_loop() -> client_simple_escape_filter() -> process_escapes() -> fork()
6382 and the pledge for this path lacks the proc promise and therefore aborts the
6383 process. The solution is to just add proc the promise to this specific
6384 pledge.
6385
6386 Reported by Gregoire Jadi gjadi ! omecha.info
6387 Insight with tb@, OK jca@
6388
6389 Upstream-ID: 63c05e30c28209519f476023b65b0b1b0387a05b
6390
6391commit 5abbb31c4e7a6caa922cc1cbb14e87a77f9d19d3
6392Author: dtucker@openbsd.org <dtucker@openbsd.org>
6393Date: Fri Jun 23 03:30:42 2017 +0000
6394
6395 upstream commit
6396
6397 Import regenerated moduli.
6398
6399 Upstream-ID: b25bf747544265b39af74fe0716dc8d9f5b63b95
6400
6401commit 849c5468b6d9b4365784c5dd88e3f1fb568ba38f
6402Author: dtucker@openbsd.org <dtucker@openbsd.org>
6403Date: Fri Jun 23 03:25:53 2017 +0000
6404
6405 upstream commit
6406
6407 Run the screen twice so we end up with more candidate
6408 groups. ok djm@
6409
6410 Upstream-ID: b92c93266d8234d493857bb822260dacf4366157
6411
6412commit 4626e39c7053c6486c1c8b708ec757e464623f5f
6413Author: dtucker@openbsd.org <dtucker@openbsd.org>
6414Date: Wed Jun 14 00:31:38 2017 +0000
6415
6416 upstream commit
6417
6418 Add user@host prefix to client's "Permisison denied"
6419 messages, useful in particular when using "stacked" connections where it's
6420 not clear which host is denying. bz#2720, ok djm@ markus@
6421
6422 Upstream-ID: de88e1e9dcb050c98e85377482d1287a9fe0d2be
6423
6424commit c948030d54911b2d3cddb96a7a8e9269e15d11cd
6425Author: djm@openbsd.org <djm@openbsd.org>
6426Date: Tue Jun 13 12:13:59 2017 +0000
6427
6428 upstream commit
6429
6430 Do not require that unknown EXT_INFO extension values not
6431 contain \0 characters. This would cause fatal connection errors if an
6432 implementation sent e.g. string-encoded sub-values inside a value.
6433
6434 Reported by Denis Bider; ok markus@
6435
6436 Upstream-ID: 030e10fdc605563c040244c4b4f1d8ae75811a5c
6437
6438commit 6026f48dfca78b713e4a7f681ffa42a0afe0929e
6439Author: djm@openbsd.org <djm@openbsd.org>
6440Date: Tue Jun 13 11:22:15 2017 +0000
6441
6442 upstream commit
6443
6444 missing prototype.
6445
6446 Upstream-ID: f443d2be9910fd2165a0667956d03343c46f66c9
6447
6448commit bcd1485075aa72ba9418003f5cc27af2b049c51b
6449Author: Damien Miller <djm@mindrot.org>
6450Date: Sat Jun 10 23:41:25 2017 +1000
6451
6452 portability for sftp globbed ls sort by mtime
6453
6454 Include replacement timespeccmp() for systems that lack it.
6455 Support time_t struct stat->st_mtime in addition to
6456 timespec stat->st_mtim, as well as unsorted fallback.
6457
6458commit 072e172f1d302d2a2c6043ecbfb4004406717b96
6459Author: djm@openbsd.org <djm@openbsd.org>
6460Date: Sat Jun 10 06:36:46 2017 +0000
6461
6462 upstream commit
6463
6464 print '?' instead of incorrect link count (that the
6465 protocol doesn't provide) for remote listings. bz#2710 ok dtucker@
6466
6467 Upstream-ID: c611f98a66302cea452ef10f13fff8cf0385242e
6468
6469commit 72be5b2f8e7dc37235e8c4b8d0bc7b5ee1301505
6470Author: djm@openbsd.org <djm@openbsd.org>
6471Date: Sat Jun 10 06:33:34 2017 +0000
6472
6473 upstream commit
6474
6475 implement sorting for globbed ls; bz#2649 ok dtucker@
6476
6477 Upstream-ID: ed3110f351cc9703411bf847ba864041fb7216a8
6478
6479commit 5b2f34a74aa6a524cd57e856b23e1b7b25007721
6480Author: djm@openbsd.org <djm@openbsd.org>
6481Date: Fri Jun 9 06:47:13 2017 +0000
6482
6483 upstream commit
6484
6485 return failure rather than fatal() for more cases during
6486 mux negotiations. Causes the session to fall back to a non-mux connection if
6487 they occur. bz#2707 ok dtucker@
6488
6489 Upstream-ID: d2a7892f464d434e1f615334a1c9d0cdb83b29ab
6490
6491commit 7f5637c4a67a49ef256cb4eedf14e8590ac30976
6492Author: djm@openbsd.org <djm@openbsd.org>
6493Date: Fri Jun 9 06:43:01 2017 +0000
6494
6495 upstream commit
6496
6497 in description of public key authentication, mention that
6498 the server will send debug messages to the client for some error conditions
6499 after authentication has completed. bz#2709 ok dtucker
6500
6501 Upstream-ID: 750127dbd58c5a2672c2d28bc35fe221fcc8d1dd
6502
6503commit 2076e4adb986512ce8c415dd194fd4e52136c4b4
6504Author: djm@openbsd.org <djm@openbsd.org>
6505Date: Fri Jun 9 06:40:24 2017 +0000
6506
6507 upstream commit
6508
6509 better translate libcrypto errors by looking deeper in
6510 the accursed error stack for codes that indicate the wrong passphrase was
6511 supplied for a PEM key. bz#2699 ok dtucker@
6512
6513 Upstream-ID: 4da4286326d570f4f0489459bb71f6297e54b681
6514
6515commit ad0531614cbe8ec424af3c0fa90c34a8e1ebee4c
6516Author: dtucker@openbsd.org <dtucker@openbsd.org>
6517Date: Fri Jun 9 04:40:04 2017 +0000
6518
6519 upstream commit
6520
6521 Add comments referring to the relevant RFC sections for
6522 rekeying behaviour.
6523
6524 Upstream-ID: 6fc8e82485757a27633f9175ad00468f49a07d40
6525
6526commit ce9134260b9b1247e2385a1afed00c26112ba479
6527Author: Damien Miller <djm@mindrot.org>
6528Date: Fri Jun 9 14:43:47 2017 +1000
6529
6530 drop two more privileges in the Solaris sandbox
6531
6532 Drop PRIV_DAX_ACCESS and PRIV_SYS_IB_INFO.
6533 Patch from huieying.lee AT oracle.com via bz#2723
6534
6535commit e0f609c8a2ab940374689ab8c854199c3c285a76
6536Author: Darren Tucker <dtucker@zip.com.au>
6537Date: Fri Jun 9 13:36:29 2017 +1000
6538
6539 Wrap stdint.h include in #ifdef.
6540
6541commit 1de5e47a85850526a4fdaf77185134046c050f75
6542Author: djm@openbsd.org <djm@openbsd.org>
6543Date: Wed Jun 7 01:48:15 2017 +0000
6544
6545 upstream commit
6546
6547 unbreak after sshv1 purge
6548
6549 Upstream-Regress-ID: 8ea01a92d5f571b9fba88c1463a4254a7552d51b
6550
6551commit 550c053168123fcc0791f9952abad684704b5760
6552Author: dtucker@openbsd.org <dtucker@openbsd.org>
6553Date: Tue Jun 6 09:12:17 2017 +0000
6554
6555 upstream commit
6556
6557 Fix compression output stats broken in rev 1.201. Patch
6558 originally by Russell Coker via Debian bug #797964 and Christoph Biedl. ok
6559 djm@
6560
6561 Upstream-ID: 83a1903b95ec2e4ed100703debb4b4a313b01016
6562
6563commit 55d06c6e72a9abf1c06a7ac2749ba733134a1f39
6564Author: djm@openbsd.org <djm@openbsd.org>
6565Date: Fri Jun 2 06:06:10 2017 +0000
6566
6567 upstream commit
6568
6569 rationalise the long list of manual CDIAGFLAGS that we
6570 add; most of these were redundant to -Wall -Wextra
6571
6572 Upstream-ID: ea80f445e819719ccdcb237022cacfac990fdc5c
6573
6574commit 1527d9f61e6d50f6c2b4a3fa5b45829034b1b0b1
6575Author: djm@openbsd.org <djm@openbsd.org>
6576Date: Thu Jun 1 06:59:21 2017 +0000
6577
6578 upstream commit
6579
6580 no need to bzero allocated space now that we use use
6581 recallocarray; ok deraadt@
6582
6583 Upstream-ID: 53333c62ccf97de60b8cb570608c1ba5ca5803c8
6584
6585commit cc812baf39b93d5355565da98648d8c31f955990
6586Author: djm@openbsd.org <djm@openbsd.org>
6587Date: Thu Jun 1 06:58:25 2017 +0000
6588
6589 upstream commit
6590
6591 unconditionally zero init size of buffer; ok markus@
6592 deraadt@
6593
6594 Upstream-ID: 218963e846d8f26763ba25afe79294547b99da29
6595
6596commit 65eb8fae0d7ba45ef4483a3cf0ae7fd0dbc7c226
6597Author: Damien Miller <djm@mindrot.org>
6598Date: Thu Jun 1 16:25:09 2017 +1000
6599
6600 avoid compiler warning
6601
6602commit 2d75d74272dc2a0521fce13cfe6388800c9a2406
6603Author: djm@openbsd.org <djm@openbsd.org>
6604Date: Thu Jun 1 06:16:43 2017 +0000
6605
6606 upstream commit
6607
6608 some warnings spotted by clang; ok markus@
6609
6610 Upstream-ID: 24381d68ca249c5cee4388ceb0f383fa5b43991b
6611
6612commit 151c6e433a5f5af761c78de87d7b5d30a453cf5e
6613Author: Damien Miller <djm@mindrot.org>
6614Date: Thu Jun 1 15:25:13 2017 +1000
6615
6616 add recallocarray replacement and dependency
6617
6618 recallocarray() needs getpagesize() so add a tiny replacement for that.
6619
6620commit 01e6f78924da308447e71e9a32c8a6104ef4e888
6621Author: Damien Miller <djm@mindrot.org>
6622Date: Thu Jun 1 15:16:24 2017 +1000
6623
6624 add *.0 manpage droppings
6625
6626commit 4b2e2d3fd9dccff357e1e26ce9a5f2e103837a36
6627Author: djm@openbsd.org <djm@openbsd.org>
6628Date: Thu Jun 1 04:51:58 2017 +0000
6629
6630 upstream commit
6631
6632 fix casts re constness
6633
6634 Upstream-ID: e38f2bac162b37dbaf784d349c8327a6626fa266
6635
6636commit 75b8af8de805c0694b37fcf80ce82783b2acc86f
6637Author: markus@openbsd.org <markus@openbsd.org>
6638Date: Wed May 31 10:54:00 2017 +0000
6639
6640 upstream commit
6641
6642 make sure we don't pass a NULL string to vfprintf
6643 (triggered by the principals-command regress test); ok bluhm
6644
6645 Upstream-ID: eb49854f274ab37a0b57056a6af379a0b7111990
6646
6647commit 84008608c9ee944d9f72f5100f31ccff743b10f2
6648Author: markus@openbsd.org <markus@openbsd.org>
6649Date: Wed May 31 10:04:29 2017 +0000
6650
6651 upstream commit
6652
6653 use SO_ZEROIZE for privsep communication (if available)
6654
6655 Upstream-ID: abcbb6d2f8039fc4367a6a78096e5d5c39de4a62
6656
6657commit 9e509d4ec97cb3d71696f1a2f1fdad254cbbce11
6658Author: deraadt@openbsd.org <deraadt@openbsd.org>
6659Date: Wed May 31 09:15:42 2017 +0000
6660
6661 upstream commit
6662
6663 Switch to recallocarray() for a few operations. Both
6664 growth and shrinkage are handled safely, and there also is no need for
6665 preallocation dances. Future changes in this area will be less error prone.
6666 Review and one bug found by markus
6667
6668 Upstream-ID: 822d664d6a5a1d10eccb23acdd53578a679d5065
6669
6670commit dc5dc45662773c0f7745c29cf77ae2d52723e55e
6671Author: deraadt@openbsd.org <deraadt@openbsd.org>
6672Date: Wed May 31 08:58:52 2017 +0000
6673
6674 upstream commit
6675
6676 These shutdown() SHUT_RDWR are not needed before close()
6677 ok djm markus claudio
6678
6679 Upstream-ID: 36f13ae4ba10f5618cb9347933101eb4a98dbcb5
6680
6681commit 1e0cdf8efb745d0d1116e1aa22bdc99ee731695e
6682Author: markus@openbsd.org <markus@openbsd.org>
6683Date: Wed May 31 08:09:45 2017 +0000
6684
6685 upstream commit
6686
6687 clear session keys from memory; ok djm@
6688
6689 Upstream-ID: ecd178819868975affd5fd6637458b7c712b6a0f
6690
6691commit 92e9fe633130376a95dd533df6e5e6a578c1e6b8
6692Author: markus@openbsd.org <markus@openbsd.org>
6693Date: Wed May 31 07:00:13 2017 +0000
6694
6695 upstream commit
6696
6697 remove now obsolete ctx from ssh_dispatch_run; ok djm@
6698
6699 Upstream-ID: 9870aabf7f4d71660c31fda91b942b19a8e68d29
6700
6701commit 17ad5b346043c5bbc5befa864d0dbeb76be39390
6702Author: markus@openbsd.org <markus@openbsd.org>
6703Date: Wed May 31 05:34:14 2017 +0000
6704
6705 upstream commit
6706
6707 use the ssh_dispatch_run_fatal variant
6708
6709 Upstream-ID: 28c5b364e37c755d1b22652b8cd6735a05c625d8
6710
6711commit 39896b777320a6574dd06707aebac5fb98e666da
6712Author: djm@openbsd.org <djm@openbsd.org>
6713Date: Wed May 31 05:08:46 2017 +0000
6714
6715 upstream commit
6716
6717 another ctx => ssh conversion (in GSSAPI code)
6718
6719 Upstream-ID: 4d6574c3948075c60608d8e045af42fe5b5d8ae0
6720
6721commit 6116bd4ed354a71a733c8fd0f0467ce612f12911
6722Author: Damien Miller <djm@mindrot.org>
6723Date: Wed May 31 14:56:07 2017 +1000
6724
6725 fix conversion of kexc25519s.c to struct ssh too
6726
6727 git cvsimport missed this commit for some reason
6728
6729commit d40dbdc85b6fb2fd78485ba02225511b8cbf20d7
6730Author: djm@openbsd.org <djm@openbsd.org>
6731Date: Wed May 31 04:29:44 2017 +0000
6732
6733 upstream commit
6734
6735 spell out that custom options/extensions should follow the
6736 usual SSH naming rules, e.g. "extension@example.com"
6737
6738 Upstream-ID: ab326666d2fad40769ec96b5a6de4015ffd97b8d
6739
6740commit 2a108277f976e8d0955c8b29d1dfde04dcbb3d5b
6741Author: djm@openbsd.org <djm@openbsd.org>
6742Date: Wed May 31 04:17:12 2017 +0000
6743
6744 upstream commit
6745
6746 one more void *ctx => struct ssh *ssh conversion
6747
6748 Upstream-ID: d299d043471c10214cf52c03daa10f1c232759e2
6749
6750commit c04e979503e97f52b750d3b98caa6fe004ab2ab9
6751Author: djm@openbsd.org <djm@openbsd.org>
6752Date: Wed May 31 00:43:04 2017 +0000
6753
6754 upstream commit
6755
6756 fix possible OOB strlen() in SOCKS4A hostname parsing;
6757 ok markus@
6758
6759 Upstream-ID: c67297cbeb0e5a19d81752aa18ec44d31270cd11
6760
6761commit a3bb250c93bfe556838c46ed965066afce61cffa
6762Author: jmc@openbsd.org <jmc@openbsd.org>
6763Date: Tue May 30 19:38:17 2017 +0000
6764
6765 upstream commit
6766
6767 tweak previous;
6768
6769 Upstream-ID: 66987651046c42d142f7318c9695fb81a6d14031
6770
6771commit 1112b534a6a7a07190e497e6bf86b0d5c5fb02dc
6772Author: bluhm@openbsd.org <bluhm@openbsd.org>
6773Date: Tue May 30 18:58:37 2017 +0000
6774
6775 upstream commit
6776
6777 Add RemoteCommand option to specify a command in the
6778 ssh config file instead of giving it on the client's command line. This
6779 command will be executed on the remote host. The feature allows to automate
6780 tasks using ssh config. OK markus@
6781
6782 Upstream-ID: 5d982fc17adea373a9c68cae1021ce0a0904a5ee
6783
6784commit eb272ea4099fd6157846f15c129ac5727933aa69
6785Author: markus@openbsd.org <markus@openbsd.org>
6786Date: Tue May 30 14:29:59 2017 +0000
6787
6788 upstream commit
6789
6790 switch auth2 to ssh_dispatch API; ok djm@
6791
6792 Upstream-ID: a752ca19e2782900dd83060b5c6344008106215f
6793
6794commit 5a146bbd4fdf5c571f9fb438e5210d28cead76d9
6795Author: markus@openbsd.org <markus@openbsd.org>
6796Date: Tue May 30 14:27:22 2017 +0000
6797
6798 upstream commit
6799
6800 switch auth2-none.c to modern APIs; ok djm@
6801
6802 Upstream-ID: 07252b58e064d332214bcabbeae8e08c44b2001b
6803
6804commit 60306b2d2f029f91927c6aa7c8e08068519a0fa2
6805Author: markus@openbsd.org <markus@openbsd.org>
6806Date: Tue May 30 14:26:49 2017 +0000
6807
6808 upstream commit
6809
6810 switch auth2-passwd.c to modern APIs; ok djm@
6811
6812 Upstream-ID: cba0a8b72b4f97adfb7e3b3fd2f8ba3159981fc7
6813
6814commit eb76698b91338bd798c978d4db2d6af624d185e4
6815Author: markus@openbsd.org <markus@openbsd.org>
6816Date: Tue May 30 14:25:42 2017 +0000
6817
6818 upstream commit
6819
6820 switch auth2-hostbased.c to modern APIs; ok djm@
6821
6822 Upstream-ID: 146af25c36daeeb83d5dbbb8ca52b5d25de88f4e
6823
6824commit 2ae666a8fc20b3b871b2f1b90ad65cc027336ccd
6825Author: markus@openbsd.org <markus@openbsd.org>
6826Date: Tue May 30 14:23:52 2017 +0000
6827
6828 upstream commit
6829
6830 protocol handlers all get struct ssh passed; ok djm@
6831
6832 Upstream-ID: 0ca9ea2a5d01a6d2ded94c5024456a930c5bfb5d
6833
6834commit 94583beb24a6c5fd19cedb9104ab2d2d5cd052b6
6835Author: markus@openbsd.org <markus@openbsd.org>
6836Date: Tue May 30 14:19:15 2017 +0000
6837
6838 upstream commit
6839
6840 ssh: pass struct ssh to auth functions, too; ok djm@
6841
6842 Upstream-ID: d13c509cc782f8f19728fbea47ac7cf36f6e85dd
6843
6844commit 5f4082d886c6173b9e90b9768c9a38a3bfd92c2b
6845Author: markus@openbsd.org <markus@openbsd.org>
6846Date: Tue May 30 14:18:15 2017 +0000
6847
6848 upstream commit
6849
6850 sshd: pass struct ssh to auth functions; ok djm@
6851
6852 Upstream-ID: b00a80c3460884ebcdd14ef550154c761aebe488
6853
6854commit 7da5df11ac788bc1133d8d598d298e33500524cc
6855Author: markus@openbsd.org <markus@openbsd.org>
6856Date: Tue May 30 14:16:41 2017 +0000
6857
6858 upstream commit
6859
6860 remove unused wrapper functions from key.[ch]; ok djm@
6861
6862 Upstream-ID: ea0f4016666a6817fc11f439dd4be06bab69707e
6863
6864commit ff7371afd08ac0bbd957d90451d4dcd0da087ef5
6865Author: markus@openbsd.org <markus@openbsd.org>
6866Date: Tue May 30 14:15:17 2017 +0000
6867
6868 upstream commit
6869
6870 sshkey_new() might return NULL (pkcs#11 code only); ok
6871 djm@
6872
6873 Upstream-ID: de9f2ad4a42c0b430caaa7d08dea7bac943075dd
6874
6875commit beb965bbc5a984fa69fb1e2b45ebe766ae09d1ef
6876Author: markus@openbsd.org <markus@openbsd.org>
6877Date: Tue May 30 14:13:40 2017 +0000
6878
6879 upstream commit
6880
6881 switch sshconnect.c to modern APIs; ok djm@
6882
6883 Upstream-ID: 27be17f84b950d5e139b7a9b281aa487187945ad
6884
6885commit 00ed75c92d1f95fe50032835106c368fa22f0f02
6886Author: markus@openbsd.org <markus@openbsd.org>
6887Date: Tue May 30 14:10:53 2017 +0000
6888
6889 upstream commit
6890
6891 switch auth2-pubkey.c to modern APIs; with & ok djm@
6892
6893 Upstream-ID: 8f08d4316eb1b0c4ffe4a206c05cdd45ed1daf07
6894
6895commit 54d90ace1d3535b44d92a8611952dc109a74a031
6896Author: markus@openbsd.org <markus@openbsd.org>
6897Date: Tue May 30 08:52:19 2017 +0000
6898
6899 upstream commit
6900
6901 switch from Key typedef with struct sshkey; ok djm@
6902
6903 Upstream-ID: 3067d33e04efbe5131ce8f70668c47a58e5b7a1f
6904
6905commit c221219b1fbee47028dcaf66613f4f8d6b7640e9
6906Author: markus@openbsd.org <markus@openbsd.org>
6907Date: Tue May 30 08:49:58 2017 +0000
6908
6909 upstream commit
6910
6911 remove ssh1 references; ok djm@
6912
6913 Upstream-ID: fc23b7578e7b0a8daaec72946d7f5e58ffff5a3d
6914
6915commit afbfa68fa18081ef05a9cd294958509a5d3cda8b
6916Author: markus@openbsd.org <markus@openbsd.org>
6917Date: Tue May 30 08:49:32 2017 +0000
6918
6919 upstream commit
6920
6921 revise sshkey_load_public(): remove ssh1 related
6922 comments, remove extra open()/close() on keyfile, prevent leak of 'pub' if
6923 'keyp' is NULL, replace strlcpy+cat with asprintf; ok djm@
6924
6925 Upstream-ID: 6175e47cab5b4794dcd99c1175549a483ec673ca
6926
6927commit 813f55336a24fdfc45e7ed655fccc7d792e8f859
6928Author: markus@openbsd.org <markus@openbsd.org>
6929Date: Fri May 26 20:34:49 2017 +0000
6930
6931 upstream commit
6932
6933 sshbuf_consume: reset empty buffer; ok djm@
6934
6935 Upstream-ID: 0d4583ba57f69e369d38bbd7843d85cac37fa821
6936
6937commit 6cf711752cc2a7ffaad1fb4de18cae65715ed8bb
6938Author: markus@openbsd.org <markus@openbsd.org>
6939Date: Fri May 26 19:35:50 2017 +0000
6940
6941 upstream commit
6942
6943 remove SSH_CHANNEL_XXX_DRAINING (ssh1 only); ok djm@
6944
6945 Upstream-ID: e2e225b6ac67b84dd024f38819afff2554fafe42
6946
6947commit 364f0d5edea27767fb0f915ea7fc61aded88d3e8
6948Author: markus@openbsd.org <markus@openbsd.org>
6949Date: Fri May 26 19:34:12 2017 +0000
6950
6951 upstream commit
6952
6953 remove channel_input_close_confirmation (ssh1 only); ok
6954 djm@
6955
6956 Upstream-ID: 8e7c8c38f322d255bb0294a5c0ebef53fdf576f1
6957
6958commit 8ba0fd40082751dbbc23a830433488bbfb1abdca
6959Author: djm@openbsd.org <djm@openbsd.org>
6960Date: Fri May 26 01:40:07 2017 +0000
6961
6962 upstream commit
6963
6964 fix references to obsolete v00 cert format; spotted by
6965 Jakub Jelen
6966
6967 Upstream-ID: 7600ce193ab8fd19451acfe24fc2eb39d46b2c4f
6968
6969commit dcc714c65cfb81eb6903095b4590719e8690f3da
6970Author: Mike Frysinger <vapier@chromium.org>
6971Date: Wed May 24 23:21:19 2017 -0400
6972
6973 configure: actually set cache vars when cross-compiling
6974
6975 The cross-compiling fallback message says it's assuming the test
6976 passed, but it didn't actually set the cache var which causes
6977 later tests to fail.
6978
6979commit 947a3e829a5b8832a4768fd764283709a4ca7955
6980Author: djm@openbsd.org <djm@openbsd.org>
6981Date: Sat May 20 02:35:47 2017 +0000
6982
6983 upstream commit
6984
6985 there's no reason to artificially limit the key path
6986 here, just check that it fits PATH_MAX; spotted by Matthew Patton
6987
6988 Upstream-ID: 858addaf2009c9cf04d80164a41b2088edb30b58
6989
6990commit 773224802d7cb250bb8b461546fcce10567b4b2e
6991Author: djm@openbsd.org <djm@openbsd.org>
6992Date: Fri May 19 21:07:17 2017 +0000
6993
6994 upstream commit
6995
6996 Now that we no longer support SSHv1, replace the contents
6997 of this file with a pointer to
6998 https://tools.ietf.org/html/draft-miller-ssh-agent-00 It's better edited,
6999 doesn't need to document stuff we no longer implement and does document stuff
7000 that we do implement (RSA SHA256/512 signature flags)
7001
7002 Upstream-ID: da8cdc46bbcc266efabd565ddddd0d8e556f846e
7003
7004commit 54cd41a4663fad66406dd3c8fe0e4760ccd8a899
7005Author: djm@openbsd.org <djm@openbsd.org>
7006Date: Wed May 17 01:24:17 2017 +0000
7007
7008 upstream commit
7009
7010 allow LogLevel in sshd_config Match blocks; ok dtucker
7011 bz#2717
7012
7013 Upstream-ID: 662e303be63148f47db1aa78ab81c5c2e732baa8
7014
7015commit 277abcda3f1b08d2376686f0ef20320160d4c8ab
7016Author: djm@openbsd.org <djm@openbsd.org>
7017Date: Tue May 16 16:56:15 2017 +0000
7018
7019 upstream commit
7020
7021 remove duplicate check; spotted by Jakub Jelen
7022
7023 Upstream-ID: 30c2996c1767616a8fdc49d4cee088efac69c3b0
7024
7025commit adb47ce839c977fa197e770c1be8f852508d65aa
7026Author: djm@openbsd.org <djm@openbsd.org>
7027Date: Tue May 16 16:54:05 2017 +0000
7028
7029 upstream commit
7030
7031 mention that Ed25519 keys are valid as CA keys; spotted
7032 by Jakub Jelen
7033
7034 Upstream-ID: d3f6db58b30418cb1c3058211b893a1ffed3dfd4
7035
7036commit 6bdf70f01e700348bb4d8c064c31a0ab90896df6
7037Author: Damien Miller <djm@mindrot.org>
7038Date: Tue May 9 14:35:03 2017 +1000
7039
7040 clean up regress files and add a .gitignore
7041
7042commit 7bdb2eeb1d3c26acdc409bd94532eefa252e440b
7043Author: djm@openbsd.org <djm@openbsd.org>
7044Date: Mon May 8 22:57:38 2017 +0000
7045
7046 upstream commit
7047
7048 remove hmac-ripemd160; ok dtucker
7049
7050 Upstream-ID: 896e737ea0bad6e23327d1c127e02d5e9e9c654d
7051
7052commit 5f02bb1f99f70bb422be8a5c2b77ef853f1db554
7053Author: djm@openbsd.org <djm@openbsd.org>
7054Date: Mon May 8 06:11:06 2017 +0000
7055
7056 upstream commit
7057
7058 make requesting bad ECDSA bits yield the same error
7059 (SSH_ERR_KEY_LENGTH) as the same mistake for RSA/DSA
7060
7061 Upstream-ID: bf40d3fee567c271e33f05ef8e4e0fa0b6f0ece6
7062
7063commit d757a4b633e8874629a1442c7c2e7b1b55d28c19
7064Author: djm@openbsd.org <djm@openbsd.org>
7065Date: Mon May 8 06:08:42 2017 +0000
7066
7067 upstream commit
7068
7069 fix for new SSH_ERR_KEY_LENGTH error value
7070
7071 Upstream-Regress-ID: c38a6e6174d4c3feca3518df150d4fbae0dca8dc
7072
7073commit 2e58a69508ac49c02d1bb6057300fa6a76db1045
7074Author: djm@openbsd.org <djm@openbsd.org>
7075Date: Mon May 8 06:03:39 2017 +0000
7076
7077 upstream commit
7078
7079 helps if I commit the correct version of the file. fix
7080 missing return statement.
7081
7082 Upstream-ID: c86394a3beeb1ec6611e659bfa830254f325546c
7083
7084commit effaf526bfa57c0ac9056ca236becf52385ce8af
7085Author: djm@openbsd.org <djm@openbsd.org>
7086Date: Mon May 8 01:52:49 2017 +0000
7087
7088 upstream commit
7089
7090 remove arcfour, blowfish and CAST here too
7091
7092 Upstream-Regress-ID: c613b3bcbef75df1fe84ca4dc2d3ef253dc5e920
7093
7094commit 7461a5bc571696273252df28a1f1578968cae506
7095Author: djm@openbsd.org <djm@openbsd.org>
7096Date: Mon May 8 00:21:36 2017 +0000
7097
7098 upstream commit
7099
7100 I was too aggressive with the scalpel in the last commit;
7101 unbreak sshd, spotted quickly by naddy@
7102
7103 Upstream-ID: fb7e75d2b2c7e6ca57dee00ca645e322dd49adbf
7104
7105commit bd636f40911094a39c2920bf87d2ec340533c152
7106Author: djm@openbsd.org <djm@openbsd.org>
7107Date: Sun May 7 23:15:59 2017 +0000
7108
7109 upstream commit
7110
7111 Refuse RSA keys <1024 bits in length. Improve reporting
7112 for keys that do not meet this requirement. ok markus@
7113
7114 Upstream-ID: b385e2a7b13b1484792ee681daaf79e1e203df6c
7115
7116commit 70c1218fc45757a030285051eb4d209403f54785
7117Author: djm@openbsd.org <djm@openbsd.org>
7118Date: Sun May 7 23:13:42 2017 +0000
7119
7120 upstream commit
7121
7122 Don't offer CBC ciphers by default in the client. ok
7123 markus@
7124
7125 Upstream-ID: 94c9ce8d0d1a085052e11c7f3307950fdc0901ef
7126
7127commit acaf34fd823235d549c633c0146ee03ac5956e82
7128Author: djm@openbsd.org <djm@openbsd.org>
7129Date: Sun May 7 23:12:57 2017 +0000
7130
7131 upstream commit
7132
7133 As promised in last release announcement: remove
7134 support for Blowfish, RC4 and CAST ciphers. ok markus@ deraadt@
7135
7136 Upstream-ID: 21f8facdba3fd8da248df6417000867cec6ba222
7137
7138commit 3e371bd2124427403971db853fb2e36ce789b6fd
7139Author: naddy@openbsd.org <naddy@openbsd.org>
7140Date: Fri May 5 10:42:49 2017 +0000
7141
7142 upstream commit
7143
7144 more simplification and removal of SSHv1-related code;
7145 ok djm@
7146
7147 Upstream-ID: d2f041aa0b79c0ebd98c68a01e5a0bfab2cf3b55
7148
7149commit 2e9c324b3a7f15c092d118c2ac9490939f6228fd
7150Author: naddy@openbsd.org <naddy@openbsd.org>
7151Date: Fri May 5 10:41:58 2017 +0000
7152
7153 upstream commit
7154
7155 remove superfluous protocol 2 mentions; ok jmc@
7156
7157 Upstream-ID: 0aaf7567c9f2e50fac5906b6a500a39c33c4664d
7158
7159commit 744bde79c3361e2153cb395a2ecdcee6c713585d
7160Author: djm@openbsd.org <djm@openbsd.org>
7161Date: Thu May 4 06:10:57 2017 +0000
7162
7163 upstream commit
7164
7165 since a couple of people have asked, leave a comment
7166 explaining why we retain SSH v.1 support in the "delete all keys from agent"
7167 path.
7168
7169 Upstream-ID: 4b42dcfa339813c15fe9248a2c1b7ed41c21bbb4
7170
7171commit 0c378ff6d98d80bc465a4a6a787670fb9cc701ee
7172Author: djm@openbsd.org <djm@openbsd.org>
7173Date: Thu May 4 01:33:21 2017 +0000
7174
7175 upstream commit
7176
7177 another tentacle: cipher_set_key_string() was only ever
7178 used for SSHv1
7179
7180 Upstream-ID: 7fd31eb6c48946f7e7cc12af0699fe8eb637e94a
7181
7182commit 9a82e24b986e3e0dc70849dbb2c19aa6c707b37f
7183Author: naddy@openbsd.org <naddy@openbsd.org>
7184Date: Wed May 3 21:49:18 2017 +0000
7185
7186 upstream commit
7187
7188 restore mistakenly deleted description of the
7189 ConnectionAttempts option ok markus@
7190
7191 Upstream-ID: 943002b1b7c470caea3253ba7b7348c359de0348
7192
7193commit 768405fddf64ff83aa6ef701ebb3c1f82d98a2f3
7194Author: naddy@openbsd.org <naddy@openbsd.org>
7195Date: Wed May 3 21:08:09 2017 +0000
7196
7197 upstream commit
7198
7199 remove miscellaneous SSH1 leftovers; ok markus@
7200
7201 Upstream-ID: af23696022ae4d45a1abc2fb8b490d8d9dd63b7c
7202
7203commit 1a1b24f8229bf7a21f89df21987433283265527a
7204Author: jmc@openbsd.org <jmc@openbsd.org>
7205Date: Wed May 3 10:01:44 2017 +0000
7206
7207 upstream commit
7208
7209 more protocol 1 bits removed; ok djm
7210
7211 Upstream-ID: b5b977eaf756915acb56aef3604a650e27f7c2b9
7212
7213commit 2b6f799e9b230cf13a7eefc05ecead7d8569d6b5
7214Author: jmc@openbsd.org <jmc@openbsd.org>
7215Date: Wed May 3 06:32:02 2017 +0000
7216
7217 upstream commit
7218
7219 more protocol 1 stuff to go; ok djm
7220
7221 Upstream-ID: 307a30441d2edda480fd1661d998d36665671e47
7222
7223commit f10c0d32cde2084d2a0b19bc47d80cb93e85a093
7224Author: jmc@openbsd.org <jmc@openbsd.org>
7225Date: Tue May 2 17:04:09 2017 +0000
7226
7227 upstream commit
7228
7229 rsa1 is no longer valid;
7230
7231 Upstream-ID: 9953d09ed9841c44b7dcf7019fa874783a709d89
7232
7233commit 42b690b4fd0faef78c4d68225948b6e5c46c5163
7234Author: jmc@openbsd.org <jmc@openbsd.org>
7235Date: Tue May 2 14:06:37 2017 +0000
7236
7237 upstream commit
7238
7239 add PubKeyAcceptedKeyTypes to the -o list: scp(1) has
7240 it, so i guess this should too;
7241
7242 Upstream-ID: 7fab32e869ca5831d09ab0c40d210b461d527a2c
7243
7244commit d852603214defd93e054de2877b20cc79c19d0c6
7245Author: jmc@openbsd.org <jmc@openbsd.org>
7246Date: Tue May 2 13:44:51 2017 +0000
7247
7248 upstream commit
7249
7250 remove now obsolete protocol1 options from the -o
7251 lists;
7252
7253 Upstream-ID: 828e478a440bc5f9947672c392420510a362b3dd
7254
7255commit 8b60ce8d8111e604c711c4cdd9579ffe0edced74
7256Author: jmc@openbsd.org <jmc@openbsd.org>
7257Date: Tue May 2 09:05:58 2017 +0000
7258
7259 upstream commit
7260
7261 more -O shuffle; ok djm
7262
7263 Upstream-ID: c239991a3a025cdbb030b73e990188dd9bfbeceb
7264
7265commit 3575f0b12afe6b561681582fd3c34067d1196231
7266Author: djm@openbsd.org <djm@openbsd.org>
7267Date: Tue May 2 08:54:19 2017 +0000
7268
7269 upstream commit
7270
7271 remove -1 / -2 options; pointed out by jmc@
7272
7273 Upstream-ID: 65d2a816000741a95df1c7cfdb5fa8469fcc7daa
7274
7275commit 4f1ca823bad12e4f9614895eefe0d0073b84a28f
7276Author: jmc@openbsd.org <jmc@openbsd.org>
7277Date: Tue May 2 08:06:33 2017 +0000
7278
7279 upstream commit
7280
7281 remove options -12 from usage();
7282
7283 Upstream-ID: db7ceef25132e63b50ed05289bf447fece1d1270
7284
7285commit 6b84897f7fd39956b849eac7810319d8a9958568
7286Author: jmc@openbsd.org <jmc@openbsd.org>
7287Date: Tue May 2 07:13:31 2017 +0000
7288
7289 upstream commit
7290
7291 tidy up -O somewhat; ok djm
7292
7293 Upstream-ID: 804405f716bf7ef15c1f36ab48581ca16aeb4d52
7294
7295commit d1c6b7fdbdfe4a7a37ecd48a97f0796b061c2868
7296Author: djm@openbsd.org <djm@openbsd.org>
7297Date: Mon May 1 22:09:48 2017 +0000
7298
7299 upstream commit
7300
7301 when freeing a bitmap, zero all it bytes; spotted by Ilya
7302 Kaliman
7303
7304 Upstream-ID: 834ac024f2c82389d6ea6b1c7d6701b3836e28e4
7305
7306commit 0f163983016c2988a92e039d18a7569f9ea8e071
7307Author: djm@openbsd.org <djm@openbsd.org>
7308Date: Mon May 1 14:08:26 2017 +0000
7309
7310 upstream commit
7311
7312 this one I did forget to "cvs rm"
7313
7314 Upstream-ID: 5781670c0578fe89663c9085ed3ba477cf7e7913
7315
7316commit 21ed00a8e26fe8a772bcca782175fafc2b0890ed
7317Author: djm@openbsd.org <djm@openbsd.org>
7318Date: Mon May 1 09:27:45 2017 +0000
7319
7320 upstream commit
7321
7322 don't know why cvs didn't exterminate these the first
7323 time around, I use rm -f and everuthing...
7324
7325 pointed out by sobrado@
7326
7327 Upstream-ID: a6c44a0c2885330d322ee01fcfd7f6f209b1e15d
7328
7329commit d29ba6f45086703fdcb894532848ada3427dfde6
7330Author: Darren Tucker <dtucker@zip.com.au>
7331Date: Mon May 1 13:53:07 2017 +1000
7332
7333 Define INT32_MAX and INT64_MAX if needed.
7334
7335commit 329037e389f02ec95c8e16bf93ffede94d3d44ce
7336Author: Darren Tucker <dtucker@zip.com.au>
7337Date: Mon May 1 13:19:41 2017 +1000
7338
7339 Wrap stdint.h in HAVE_STDINT_H
7340
7341commit f382362e8dfb6b277f16779ab1936399d7f2af78
7342Author: djm@openbsd.org <djm@openbsd.org>
7343Date: Mon May 1 02:27:11 2017 +0000
7344
7345 upstream commit
7346
7347 remove unused variable
7348
7349 Upstream-ID: 66011f00819d0e71b14700449a98414033284516
7350
7351commit dd369320d2435b630a5974ab270d686dcd92d024
7352Author: djm@openbsd.org <djm@openbsd.org>
7353Date: Sun Apr 30 23:34:55 2017 +0000
7354
7355 upstream commit
7356
7357 eliminate explicit specification of protocol in tests and
7358 loops over protocol. We only support SSHv2 now.
7359
7360 Upstream-Regress-ID: 0082838a9b8a382b7ee9cbf0c1b9db727784fadd
7361
7362commit 557f921aad004be15805e09fd9572969eb3d9321
7363Author: djm@openbsd.org <djm@openbsd.org>
7364Date: Sun Apr 30 23:33:48 2017 +0000
7365
7366 upstream commit
7367
7368 remove SSHv1 support from unit tests
7369
7370 Upstream-Regress-ID: 395ca2aa48f1f7d23eefff6cb849ea733ca8bbfe
7371
7372commit e77e1562716fb3da413e4c2397811017b762f5e3
7373Author: djm@openbsd.org <djm@openbsd.org>
7374Date: Mon May 1 00:03:18 2017 +0000
7375
7376 upstream commit
7377
7378 fixup setting ciphercontext->plaintext (lost in SSHv1 purge),
7379 though it isn't really used for much anymore.
7380
7381 Upstream-ID: 859b8bce84ff4865b32097db5430349d04b9b747
7382
7383commit f7849e6c83a4e0f602dea6c834a24091c622d68e
7384Author: Damien Miller <djm@mindrot.org>
7385Date: Mon May 1 09:55:56 2017 +1000
7386
7387 remove configure --with-ssh1
7388
7389commit f4a6a88ddb6dba6d2f7bfb9e2c9879fcc9633043
7390Author: djm@openbsd.org <djm@openbsd.org>
7391Date: Sun Apr 30 23:29:10 2017 +0000
7392
7393 upstream commit
7394
7395 flense SSHv1 support from ssh-agent, considerably
7396 simplifying it
7397
7398 ok markus
7399
7400 Upstream-ID: 71d772cdcefcb29f76e01252e8361e6fc2dfc365
7401
7402commit 930e8d2827853bc2e196c20c3e000263cc87fb75
7403Author: djm@openbsd.org <djm@openbsd.org>
7404Date: Sun Apr 30 23:28:41 2017 +0000
7405
7406 upstream commit
7407
7408 obliterate ssh1.h and some dead code that used it
7409
7410 ok markus@
7411
7412 Upstream-ID: 1ca9159a9fb95618f9d51e069ac8e1131a087343
7413
7414commit a3710d5d529a34b8f56aa62db798c70e85d576a0
7415Author: djm@openbsd.org <djm@openbsd.org>
7416Date: Sun Apr 30 23:28:12 2017 +0000
7417
7418 upstream commit
7419
7420 exterminate the -1 flag from scp
7421
7422 ok markus@
7423
7424 Upstream-ID: 26d247f7065da15056b209cef5f594ff591b89db
7425
7426commit aebd0abfaa8a41e75d50f9f7934267b0a2d9acb4
7427Author: djm@openbsd.org <djm@openbsd.org>
7428Date: Sun Apr 30 23:26:54 2017 +0000
7429
7430 upstream commit
7431
7432 purge the last traces of SSHv1 from the TTY modes
7433 handling code
7434
7435 ok markus
7436
7437 Upstream-ID: 963a19f1e06577377c38a3b7ce468f121b966195
7438
7439commit dfa641f758d4b8b2608ab1b00abaf88df0a8e36a
7440Author: djm@openbsd.org <djm@openbsd.org>
7441Date: Sun Apr 30 23:26:16 2017 +0000
7442
7443 upstream commit
7444
7445 remove the (in)famous SSHv1 CRC compensation attack
7446 detector.
7447
7448 Despite your cameo in The Matrix movies, you will not be missed.
7449
7450 ok markus
7451
7452 Upstream-ID: 44261fce51a56d93cdb2af7b6e184be629f667e0
7453
7454commit e5d3bd36ef67d82092861f39b5bf422cb12b31a6
7455Author: djm@openbsd.org <djm@openbsd.org>
7456Date: Sun Apr 30 23:25:03 2017 +0000
7457
7458 upstream commit
7459
7460 undo some local debugging stuff that I committed by
7461 accident
7462
7463 Upstream-ID: fe5b31f69a60d47171836911f144acff77810217
7464
7465commit 3d6d09f2e90f4ad650ebda6520bf2da446f37f14
7466Author: djm@openbsd.org <djm@openbsd.org>
7467Date: Sun Apr 30 23:23:54 2017 +0000
7468
7469 upstream commit
7470
7471 remove SSHv1 support from packet and buffer APIs
7472
7473 ok markus@
7474
7475 Upstream-ID: bfc290053d40b806ecac46317d300677d80e1dc9
7476
7477commit 05164358577c82de18ed7373196bc7dbd8a3f79c
7478Author: djm@openbsd.org <djm@openbsd.org>
7479Date: Sun Apr 30 23:21:54 2017 +0000
7480
7481 upstream commit
7482
7483 remove SSHv1-related buffers from client code
7484
7485 Upstream-ID: dca5d01108f891861ceaf7ba1c0f2eb274e0c7dd
7486
7487commit 873d3e7d9a4707d0934fb4c4299354418f91b541
7488Author: djm@openbsd.org <djm@openbsd.org>
7489Date: Sun Apr 30 23:18:44 2017 +0000
7490
7491 upstream commit
7492
7493 remove KEY_RSA1
7494
7495 ok markus@
7496
7497 Upstream-ID: 7408517b077c892a86b581e19f82a163069bf133
7498
7499commit 788ac799a6efa40517f2ac0d895a610394298ffc
7500Author: djm@openbsd.org <djm@openbsd.org>
7501Date: Sun Apr 30 23:18:22 2017 +0000
7502
7503 upstream commit
7504
7505 remove SSHv1 configuration options and man pages bits
7506
7507 ok markus@
7508
7509 Upstream-ID: 84638c23546c056727b7a7d653c72574e0f19424
7510
7511commit e6882463a8ae0594aacb6d6575a6318a41973d84
7512Author: djm@openbsd.org <djm@openbsd.org>
7513Date: Sun Apr 30 23:17:37 2017 +0000
7514
7515 upstream commit
7516
7517 remove SSH1 make flag and associated files ok markus@
7518
7519 Upstream-ID: ba9feacc5787337c413db7cf26ea3d53f854cfef
7520
7521commit cdccebdf85204bf7542b7fcc1aa2ea3f36661833
7522Author: djm@openbsd.org <djm@openbsd.org>
7523Date: Sun Apr 30 23:15:04 2017 +0000
7524
7525 upstream commit
7526
7527 remove SSHv1 ciphers; ok markus@
7528
7529 Upstream-ID: e5ebc5e540d7f23a8c1266db1839794d4d177890
7530
7531commit 97f4d3083b036ce3e68d6346a6140a22123d5864
7532Author: djm@openbsd.org <djm@openbsd.org>
7533Date: Sun Apr 30 23:13:25 2017 +0000
7534
7535 upstream commit
7536
7537 remove compat20/compat13/compat15 variables
7538
7539 ok markus@
7540
7541 Upstream-ID: 43802c035ceb3fef6c50c400e4ecabf12354691c
7542
7543commit 99f95ba82673d33215dce17bfa1512b57f54ec09
7544Author: djm@openbsd.org <djm@openbsd.org>
7545Date: Sun Apr 30 23:11:45 2017 +0000
7546
7547 upstream commit
7548
7549 remove options.protocol and client Protocol
7550 configuration knob
7551
7552 ok markus@
7553
7554 Upstream-ID: 5a967f5d06e2d004b0235457b6de3a9a314e9366
7555
7556commit 56912dea6ef63dae4eb1194e5d88973a7c6c5740
7557Author: djm@openbsd.org <djm@openbsd.org>
7558Date: Sun Apr 30 23:10:43 2017 +0000
7559
7560 upstream commit
7561
7562 unifdef WITH_SSH1 ok markus@
7563
7564 Upstream-ID: 9716e62a883ef8826c57f4d33b4a81a9cc7755c7
7565
7566commit d4084cd230f7319056559b00db8b99296dad49d5
7567Author: jmc@openbsd.org <jmc@openbsd.org>
7568Date: Sat Apr 29 06:06:01 2017 +0000
7569
7570 upstream commit
7571
7572 tweak previous;
7573
7574 Upstream-ID: a3abc6857455299aa42a046d232b7984568bceb9
7575
7576commit 249516e428e8461b46340a5df5d5ed1fbad2ccce
7577Author: djm@openbsd.org <djm@openbsd.org>
7578Date: Sat Apr 29 04:12:25 2017 +0000
7579
7580 upstream commit
7581
7582 allow ssh-keygen to include arbitrary string or flag
7583 certificate extensions and critical options. ok markus@ dtucker@
7584
7585 Upstream-ID: 2cf28dd6c5489eb9fc136e0b667ac3ea10241646
7586
7587commit 47a287bb6ac936c26b4f3ae63279c02902ded3b9
7588Author: jmc@openbsd.org <jmc@openbsd.org>
7589Date: Fri Apr 28 06:15:03 2017 +0000
7590
7591 upstream commit
7592
7593 sort;
7594
7595 Upstream-ID: 7e6b56e52b039cf44d0418e9de9aca20a2d2d15a
7596
7597commit 36465a76a79ad5040800711b41cf5f32249d5120
7598Author: Darren Tucker <dtucker@zip.com.au>
7599Date: Fri Apr 28 14:44:28 2017 +1000
7600
7601 Typo.
7602
7603 Upstream-Regress-ID: 1e6b51ddf767cbad0a4e63eb08026c127e654308
7604
7605commit 9d18cb7bdeb00b20205fd13d412aae8c0e0457ed
7606Author: Darren Tucker <dtucker@zip.com.au>
7607Date: Fri Apr 28 14:41:17 2017 +1000
7608
7609 Add 2 regress commits I applied by hand.
7610
7611 Upstream-Regress-ID: 30c20180c87cbc99fa1020489fe7fd8245b6420c
7612 Upstream-Regress-ID: 1e6b51ddf767cbad0a4e63eb08026c127e654308
7613
7614commit 9504ea6b27f9f0ece64e88582ebb9235e664a100
7615Author: Darren Tucker <dtucker@zip.com.au>
7616Date: Fri Apr 28 14:33:43 2017 +1000
7617
7618 Merge integrity.sh rev 1.22.
7619
7620 Merge missing bits from Colin Watson's patch in bz#2658 which make integrity
7621 tests more robust against timeouts. ok djm@
7622
7623commit 06ec837a34542627e2183a412d6a9d2236f22140
7624Author: Darren Tucker <dtucker@zip.com.au>
7625Date: Fri Apr 28 14:30:03 2017 +1000
7626
7627 Id sync for integrity.sh rev 1.21 which pulls in some shell portability fixes
7628
7629commit e0194b471efe7d3daedc9cc66686cb1ab69d3be8
7630Author: jsg@openbsd.org <jsg@openbsd.org>
7631Date: Mon Apr 17 11:02:31 2017 +0000
7632
7633 upstream commit
7634
7635 Change COMPILER_VERSION tests which limited additional
7636 warnings to gcc4 to instead skip them on gcc3 as clang can handle
7637 -Wpointer-sign and -Wold-style-definition.
7638
7639 Upstream-Regress-ID: e48d7dc13e48d9334b8195ef884dfbc51316012f
7640
7641commit 6830be90e71f46bcd182a9202b151eaf2b299434
7642Author: djm@openbsd.org <djm@openbsd.org>
7643Date: Fri Apr 28 03:24:53 2017 +0000
7644
7645 upstream commit
7646
7647 include key fingerprint in "Offering public key" debug
7648 message
7649
7650 Upstream-ID: 964749f820c2ed4cf6a866268b1a05e907315c52
7651
7652commit 066437187e16dcafcbc19f9402ef0e6575899b1d
7653Author: millert@openbsd.org <millert@openbsd.org>
7654Date: Fri Apr 28 03:21:12 2017 +0000
7655
7656 upstream commit
7657
7658 Avoid relying on implementation-specific behavior when
7659 detecting whether the timestamp or file size overflowed. If time_t and off_t
7660 are not either 32-bit or 64-bit scp will exit with an error. OK djm@
7661
7662 Upstream-ID: f31caae73ddab6df496b7bbbf7da431e267ad135
7663
7664commit 68d3a2a059183ebd83b15e54984ffaced04d2742
7665Author: dtucker@openbsd.org <dtucker@openbsd.org>
7666Date: Fri Apr 28 03:20:27 2017 +0000
7667
7668 upstream commit
7669
7670 Add SyslogFacility option to ssh(1) matching the
7671 equivalent option in sshd(8). bz#2705, patch from erahn at arista.com, ok
7672 djm@
7673
7674 Upstream-ID: d5115c2c0193ceb056ed857813b2a7222abda9ed
7675
7676commit e13aad66e73a14b062d13aee4e98f1e21a3f6a14
7677Author: jsg@openbsd.org <jsg@openbsd.org>
7678Date: Thu Apr 27 13:40:05 2017 +0000
7679
7680 upstream commit
7681
7682 remove a static array unused since rev 1.306 spotted by
7683 clang ok djm@
7684
7685 Upstream-ID: 249b3eed2446f6074ba2219ccc46919dd235a7b8
7686
7687commit 91bd2181866659f00714903e78e1c3edd4c45f3d
7688Author: millert@openbsd.org <millert@openbsd.org>
7689Date: Thu Apr 27 11:53:12 2017 +0000
7690
7691 upstream commit
7692
7693 Avoid potential signed int overflow when parsing the file
7694 size. Use strtoul() instead of parsing manually. OK djm@
7695
7696 Upstream-ID: 1f82640861c7d905bbb05e7d935d46b0419ced02
7697
7698commit 17a54a03f5a1d35e33cc24e22cd7a9d0f6865dc4
7699Author: Darren Tucker <dtucker@zip.com.au>
7700Date: Tue Apr 25 08:32:27 2017 +1000
7701
7702 Fix typo in "socketcall".
7703
7704 Pointed out by jjelen at redhat.com.
7705
7706commit 8b0eee148f7cf8b248c30d1bae57300f2cc5aafd
7707Author: Darren Tucker <dtucker@zip.com.au>
7708Date: Mon Apr 24 19:40:31 2017 +1000
7709
7710 Deny socketcall in seccomp filter on ppc64le.
7711
7712 OpenSSL is using socket() calls (in FIPS mode) when handling ECDSA keys
7713 in privsep child. The socket() syscall is already denied in the seccomp
7714 filter, but in ppc64le kernel, it is implemented using socketcall()
7715 syscall, which is not denied yet (only SYS_SHUTDOWN is allowed) and
7716 therefore fails hard.
7717
7718 Patch from jjelen at redhat.com.
7719
7720commit f8500b2be599053daa05248a86a743232ec6a536
7721Author: schwarze@openbsd.org <schwarze@openbsd.org>
7722Date: Mon Apr 17 14:31:23 2017 +0000
7723
7724 upstream commit
7725
7726 Recognize nl_langinfo(CODESET) return values "646" and ""
7727 as aliases for "US-ASCII", useful for different versions of NetBSD and
7728 Solaris. Found by dtucker@ and by Tom G. Christensen <tgc at jupiterrise dot
7729 com>. OK dtucker@ deraadt@
7730
7731 Upstream-ID: 38c2133817cbcae75c88c63599ac54228f0fa384
7732
7733commit 7480dfedf8c5c93baaabef444b3def9331e86ad5
7734Author: jsg@openbsd.org <jsg@openbsd.org>
7735Date: Mon Apr 17 11:02:31 2017 +0000
7736
7737 upstream commit
7738
7739 Change COMPILER_VERSION tests which limited additional
7740 warnings to gcc4 to instead skip them on gcc3 as clang can handle
7741 -Wpointer-sign and -Wold-style-definition.
7742
7743 Upstream-ID: 5cbe348aa76dc1adf55be6c0e388fafaa945439a
7744
7745commit 4d827f0d75a53d3952288ab882efbddea7ffadfe
7746Author: djm@openbsd.org <djm@openbsd.org>
7747Date: Tue Apr 4 00:24:56 2017 +0000
7748
7749 upstream commit
7750
7751 disallow creation (of empty files) in read-only mode;
7752 reported by Michal Zalewski, feedback & ok deraadt@
7753
7754 Upstream-ID: 5d9c8f2fa8511d4ecf95322994ffe73e9283899b
7755
7756commit ef47843af0a904a21c920e619c5aec97b65dd9ac
7757Author: deraadt@openbsd.org <deraadt@openbsd.org>
7758Date: Sun Mar 26 00:18:52 2017 +0000
7759
7760 upstream commit
7761
7762 incorrect renditions of this quote bother me
7763
7764 Upstream-ID: 1662be3ebb7a71d543da088119c31d4d463a9e49
7765
7766commit d9048861bea842c4eba9c2dbbf97064cc2a5ef02
7767Author: Darren Tucker <dtucker@zip.com.au>
7768Date: Fri Mar 31 11:04:43 2017 +1100
7769
7770 Check for and use gcc's -pipe.
7771
7772 Speeds up configure and build by a couple of percent. ok djm@
7773
7774commit 282cad2240c4fbc104c2f2df86d688192cbbe4bb
7775Author: Darren Tucker <dtucker@zip.com.au>
7776Date: Wed Mar 29 16:34:44 2017 +1100
7777
7778 Import fmt_scaled.c rev 1.16 from OpenBSD.
7779
7780 Fix overly-conservative overflow checks on mulitplications and add checks
7781 on additions. This allows scan_scaled to work up to +/-LLONG_MAX (LLONG_MIN
7782 will still be flagged as a range error). ok millert@
7783
7784commit c73a229e4edf98920f395e19fd310684fc6bb951
7785Author: Darren Tucker <dtucker@zip.com.au>
7786Date: Wed Mar 29 16:34:02 2017 +1100
7787
7788 Import fmt_scaled.c rev 1.15 from OpenBSD.
7789
7790 Collapse underflow and overflow checks into a single block.
7791 ok djm@ millert@
7792
7793commit d427b73bf5a564f663d16546dbcbd84ba8b9d4af
7794Author: Darren Tucker <dtucker@zip.com.au>
7795Date: Wed Mar 29 16:32:57 2017 +1100
7796
7797 Import fmt_scaled.c rev 1.14 from OpenBSD.
7798
7799 Catch integer underflow in scan_scaled reported by Nicolas Iooss.
7800 ok deraadt@ djm@
7801
7802commit d13281f2964abc5f2e535e1613c77fc61b0c53e7
7803Author: Darren Tucker <dtucker@zip.com.au>
7804Date: Wed Mar 29 12:39:39 2017 +1100
7805
7806 Don't check privsep user or path when unprivileged
7807
7808 If running with privsep (mandatory now) as a non-privileged user, we
7809 don't chroot or change to an unprivileged user however we still checked
7810 the existence of the user and directory. Don't do those checks if we're
7811 not going to use them. Based in part on a patch from Lionel Fourquaux
7812 via Corinna Vinschen, ok djm@
7813
7814commit f2742a481fe151e493765a3fbdef200df2ea7037
7815Author: Darren Tucker <dtucker@zip.com.au>
7816Date: Wed Mar 29 10:50:31 2017 +1100
7817
7818 Remove SHA256 EVP wrapper implementation.
7819
7820 All supported versions of OpenSSL should now have SHA256 so remove our
7821 EVP wrapper implementaion. ok djm@
7822
7823commit 5346f271fc76549caf4a8e65b5fba319be422fe9
7824Author: Darren Tucker <dtucker@zip.com.au>
7825Date: Wed Mar 29 10:23:58 2017 +1100
7826
7827 Remove check for OpenSSL < 0.9.8g.
7828
7829 We no longer support OpenSSL < 1.0.1 so remove check for unreliable ECC
7830 in OpenSSL < 0.9.8g.
7831
7832commit 8fed0a5fe7b4e78a6810b133d8e91be9742ee0a1
7833Author: Darren Tucker <dtucker@zip.com.au>
7834Date: Wed Mar 29 10:16:15 2017 +1100
7835
7836 Remove compat code for OpenSSL < 0.9.7.
7837
7838 Resyncs that code with OpenBSD upstream.
7839
7840commit 608ec1f62ff22fdccc3952e51463d79c43cbd0d3
7841Author: Darren Tucker <dtucker@zip.com.au>
7842Date: Wed Mar 29 09:50:54 2017 +1100
7843
7844 Remove SSHv1 code path.
7845
7846 Server-side support for Protocol 1 has been removed so remove !compat20
7847 PAM code path.
7848
7849commit 7af27bf538cbc493d609753f9a6d43168d438f1b
7850Author: Darren Tucker <dtucker@zip.com.au>
7851Date: Fri Mar 24 09:44:56 2017 +1100
7852
7853 Enable ldns when using ldns-config.
7854
7855 Actually enable ldns when attempting to use ldns-config. bz#2697, patch
7856 from fredrik at fornwall.net.
7857
7858commit 58b8cfa2a062b72139d7229ae8de567f55776f24
7859Author: Damien Miller <djm@mindrot.org>
7860Date: Wed Mar 22 12:43:02 2017 +1100
7861
7862 Missing header on Linux/s390
7863
7864 Patch from Jakub Jelen
7865
7866commit 096fb65084593f9f3c1fc91b6d9052759a272a00
7867Author: djm@openbsd.org <djm@openbsd.org>
7868Date: Mon Mar 20 22:08:06 2017 +0000
7869
7870 upstream commit
7871
7872 remove /usr/bin/time calls around tests, makes diffing test
7873 runs harder. Based on patch from Mike Frysinger
7874
7875 Upstream-Regress-ID: 81c1083b14dcf473b23d2817882f40b346ebc95c
7876
7877commit 6b853c6f8ba5eecc50f3b57af8e63f8184eb0fa6
7878Author: Damien Miller <djm@mindrot.org>
7879Date: Tue Mar 21 08:47:55 2017 +1100
7880
7881 Fix syntax error on Linux/X32
7882
7883 Patch from Mike Frysinger
7884
7885commit d38f05dbdd291212bc95ea80648b72b7177e9f4e
7886Author: Darren Tucker <dtucker@zip.com.au>
7887Date: Mon Mar 20 13:38:27 2017 +1100
7888
7889 Add llabs() implementation.
7890
7891commit 72536316a219b7394996a74691a5d4ec197480f7
7892Author: Damien Miller <djm@mindrot.org>
7893Date: Mon Mar 20 12:23:04 2017 +1100
7894
7895 crank version numbers
7896
7897commit 3be52bc36bdfd24ded7e0f46999e7db520fb4e3f
7898Author: djm@openbsd.org <djm@openbsd.org>
7899Date: Mon Mar 20 01:18:59 2017 +0000
7900
7901 upstream commit
7902
7903 openssh-7.5
7904
7905 Upstream-ID: b8b9a4a949427c393cd868215e1724ceb3467ee5
7906
7907commit db84e52fe9cfad57f22e7e23c5fbf00092385129
7908Author: Damien Miller <djm@mindrot.org>
7909Date: Mon Mar 20 12:07:20 2017 +1100
7910
7911 I'm a doofus.
7912
7913 Unbreak obvious syntax error.
7914
7915commit 89f04852db27643717c9c3a2b0dde97ae50099ee
7916Author: Damien Miller <djm@mindrot.org>
7917Date: Mon Mar 20 11:53:34 2017 +1100
7918
7919 on Cygwin, check paths from server for backslashes
7920
7921 Pointed out by Jann Horn of Google Project Zero
7922
7923commit 7ef1f9bafc2cc8d97ff2fbd4f280002b6e8ea5d9
7924Author: Damien Miller <djm@mindrot.org>
7925Date: Mon Mar 20 11:48:34 2017 +1100
7926
7927 Yet another synonym for ASCII: "646"
7928
7929 Used by NetBSD; this unbreaks mprintf() and friends there for the C
7930 locale (caught by dtucker@ and his menagerie of test systems).
7931
7932commit 9165abfea3f68a0c684a6ed2e575e59bc31a3a6b
7933Author: Damien Miller <djm@mindrot.org>
7934Date: Mon Mar 20 09:58:34 2017 +1100
7935
7936 create test mux socket in /tmp
7937
7938 Creating the socket in $OBJ could blow past the (quite limited)
7939 path limit for Unix domain sockets. As a bandaid for bz#2660,
7940 reported by Colin Watson; ok dtucker@
7941
7942commit 2adbe1e63bc313d03e8e84e652cc623af8ebb163
7943Author: markus@openbsd.org <markus@openbsd.org>
7944Date: Wed Mar 15 07:07:39 2017 +0000
7945
7946 upstream commit
7947
7948 disallow KEXINIT before NEWKEYS; ok djm; report by
7949 vegard.nossum at oracle.com
7950
7951 Upstream-ID: 3668852d1f145050e62f1da08917de34cb0c5234
7952
7953commit 2fbf91684d76d38b9cf06550b69c9e41bca5a71c
7954Author: Darren Tucker <dtucker@zip.com.au>
7955Date: Thu Mar 16 14:05:46 2017 +1100
7956
7957 Include includes.h for compat bits.
7958
7959commit b55f634e96b9c5b0cd991e23a9ca181bec4bdbad
7960Author: Darren Tucker <dtucker@zip.com.au>
7961Date: Thu Mar 16 13:45:17 2017 +1100
7962
7963 Wrap stdint.h in #ifdef HAVE_STDINT_H
7964
7965commit 55a1117d7342a0bf8b793250cf314bab6b482b99
7966Author: Damien Miller <djm@mindrot.org>
7967Date: Thu Mar 16 11:22:42 2017 +1100
7968
7969 Adapt Cygwin config script to privsep knob removal
7970
7971 Patch from Corinna Vinschen.
7972
7973commit 1a321bfdb91defe3c4d9cca5651724ae167e5436
7974Author: deraadt@openbsd.org <deraadt@openbsd.org>
7975Date: Wed Mar 15 03:52:30 2017 +0000
7976
7977 upstream commit
7978
7979 accidents happen to the best of us; ok djm
7980
7981 Upstream-ID: b7a9dbd71011ffde95e06f6945fe7197dedd1604
7982
7983commit 25f837646be8c2017c914d34be71ca435dfc0e07
7984Author: djm@openbsd.org <djm@openbsd.org>
7985Date: Wed Mar 15 02:25:09 2017 +0000
7986
7987 upstream commit
7988
7989 fix regression in 7.4: deletion of PKCS#11-hosted keys
7990 would fail unless they were specified by full physical pathname. Report and
7991 fix from Jakub Jelen via bz#2682; ok dtucker@
7992
7993 Upstream-ID: 5b5bc20ca11cacb5d5eb29c3f93fd18425552268
7994
7995commit a8c5eeacf032a7d3408957e45dd7603cc1baf55f
7996Author: djm@openbsd.org <djm@openbsd.org>
7997Date: Wed Mar 15 02:19:09 2017 +0000
7998
7999 upstream commit
8000
8001 Fix segfault when sshd attempts to load RSA1 keys (can
8002 only happen when protocol v.1 support is enabled for the client). Reported by
8003 Jakub Jelen in bz#2686; ok dtucker
8004
8005 Upstream-ID: 8fdaec2ba4b5f65db1d094f6714ce64b25d871d7
8006
8007commit 66705948c0639a7061a0d0753266da7685badfec
8008Author: djm@openbsd.org <djm@openbsd.org>
8009Date: Tue Mar 14 07:19:07 2017 +0000
8010
8011 upstream commit
8012
8013 Mark the sshd_config UsePrivilegeSeparation option as
8014 deprecated, effectively making privsep mandatory in sandboxing mode. ok
8015 markus@ deraadt@
8016
8017 (note: this doesn't remove the !privsep code paths, though that will
8018 happen eventually).
8019
8020 Upstream-ID: b4c52666256c4dd865f8ce9431af5d6ce2d74a0a
8021
8022commit f86586b03fe6cd8f595289bde200a94bc2c191af
8023Author: Damien Miller <djm@mindrot.org>
8024Date: Tue Mar 14 18:26:29 2017 +1100
8025
8026 Make seccomp-bpf sandbox work on Linux/X32
8027
8028 Allow clock_gettime syscall with X32 bit masked off. Apparently
8029 this is required for at least some kernel versions. bz#2142
8030 Patch mostly by Colin Watson. ok dtucker@
8031
8032commit 2429cf78dd2a9741ce27ba25ac41c535274a0af6
8033Author: Damien Miller <djm@mindrot.org>
8034Date: Tue Mar 14 18:01:52 2017 +1100
8035
8036 require OpenSSL >=1.0.1
8037
8038commit e3ea335abeab731c68f2b2141bee85a4b0bf680f
8039Author: Damien Miller <djm@mindrot.org>
8040Date: Tue Mar 14 17:48:43 2017 +1100
8041
8042 Remove macro trickery; no binary change
8043
8044 This stops the SC_ALLOW(), SC_ALLOW_ARG() and SC_DENY() macros
8045 prepending __NR_ to the syscall number parameter and just makes
8046 them explicit in the macro invocations.
8047
8048 No binary change in stripped object file before/after.
8049
8050commit 5f1596e11d55539678c41f68aed358628d33d86f
8051Author: Damien Miller <djm@mindrot.org>
8052Date: Tue Mar 14 13:15:18 2017 +1100
8053
8054 support ioctls for ICA crypto card on Linux/s390
8055
8056 Based on patch from Eduardo Barretto; ok dtucker@
8057
8058commit b1b22dd0df2668b322dda174e501dccba2cf5c44
8059Author: Darren Tucker <dtucker@zip.com.au>
8060Date: Tue Mar 14 14:19:36 2017 +1100
8061
8062 Plumb conversion test into makefile.
8063
8064commit f57783f1ddfb4cdfbd612c6beb5ec01cb5b9a6b9
8065Author: dtucker@openbsd.org <dtucker@openbsd.org>
8066Date: Tue Mar 14 01:20:29 2017 +0000
8067
8068 upstream commit
8069
8070 Add unit test for convtime().
8071
8072 Upstream-Regress-ID: 8717bc0ca4c21120f6dd3a1d3b7a363f707c31e1
8073
8074commit 8884b7247d094cd11ff9e39c325ba928c5bdbc6c
8075Author: dtucker@openbsd.org <dtucker@openbsd.org>
8076Date: Tue Mar 14 01:10:07 2017 +0000
8077
8078 upstream commit
8079
8080 Add ASSERT_LONG_* helpers.
8081
8082 Upstream-Regress-ID: fe15beaea8f5063c7f21b0660c722648e3d76431
8083
8084commit c6774d21185220c0ba11e8fd204bf0ad1a432071
8085Author: dtucker@openbsd.org <dtucker@openbsd.org>
8086Date: Tue Mar 14 00:55:37 2017 +0000
8087
8088 upstream commit
8089
8090 Fix convtime() overflow test on boundary condition,
8091 spotted by & ok djm.
8092
8093 Upstream-ID: 51f14c507ea87a3022e63f574100613ab2ba5708
8094
8095commit f5746b40cfe6d767c8e128fe50c43274b31cd594
8096Author: dtucker@openbsd.org <dtucker@openbsd.org>
8097Date: Tue Mar 14 00:25:03 2017 +0000
8098
8099 upstream commit
8100
8101 Check for integer overflow when parsing times in
8102 convtime(). Reported by nicolas.iooss at m4x.org, ok djm@
8103
8104 Upstream-ID: 35e6a4e98f6fa24df50bfb8ba1307cf70e966f13
8105
8106commit f5907982f42a8d88a430b8a46752cbb7859ba979
8107Author: Darren Tucker <dtucker@zip.com.au>
8108Date: Tue Mar 14 13:38:15 2017 +1100
8109
8110 Add a "unit" target to run only unit tests.
8111
8112commit 9e96b41682aed793fadbea5ccd472f862179fb02
8113Author: Damien Miller <djm@mindrot.org>
8114Date: Tue Mar 14 12:24:47 2017 +1100
8115
8116 Fix weakness in seccomp-bpf sandbox arg inspection
8117
8118 Syscall arguments are passed via an array of 64-bit values in struct
8119 seccomp_data, but we were only inspecting the bottom 32 bits and not
8120 even those correctly for BE systems.
8121
8122 Fortunately, the only case argument inspection was used was in the
8123 socketcall filtering so using this for sandbox escape seems
8124 impossible.
8125
8126 ok dtucker
8127
8128commit 8ff3fc3f2f7c13e8968717bc2b895ee32c441275
8129Author: djm@openbsd.org <djm@openbsd.org>
8130Date: Sat Mar 11 23:44:16 2017 +0000
8131
8132 upstream commit
8133
8134 regress tests for loading certificates without public keys;
8135 bz#2617 based on patch from Adam Eijdenberg; ok markus@ dtucker@
8136
8137 Upstream-Regress-ID: 0145d19328ed995b73fe2d9da33596b17429d0d0
8138
8139commit 1e24552716194db8f2f620587b876158a9ef56ad
8140Author: djm@openbsd.org <djm@openbsd.org>
8141Date: Sat Mar 11 23:40:26 2017 +0000
8142
8143 upstream commit
8144
8145 allow ssh to use certificates accompanied by a private
8146 key file but no corresponding plain *.pub public key. bz#2617 based on patch
8147 from Adam Eijdenberg; ok dtucker@ markus@
8148
8149 Upstream-ID: 295668dca2c39505281577217583ddd2bd4b00b9
8150
8151commit 0fb1a617a07b8df5de188dd5a0c8bf293d4bfc0e
8152Author: markus@openbsd.org <markus@openbsd.org>
8153Date: Sat Mar 11 13:07:35 2017 +0000
8154
8155 upstream commit
8156
8157 Don't count the initial block twice when computing how
8158 many bytes to discard for the work around for the attacks against CBC-mode.
8159 ok djm@; report from Jean Paul, Kenny, Martin and Torben @ RHUL
8160
8161 Upstream-ID: f445f509a4e0a7ba3b9c0dae7311cb42458dc1e2
8162
8163commit ef653dd5bd5777132d9f9ee356225f9ee3379504
8164Author: dtucker@openbsd.org <dtucker@openbsd.org>
8165Date: Fri Mar 10 07:18:32 2017 +0000
8166
8167 upstream commit
8168
8169 krl.c
8170
8171 Upstream-ID: fc5e695d5d107d730182e2da7b23f00b489e0ee1
8172
8173commit d94c1dfef2ea30ca67b1204ada7c3b537c54f4d0
8174Author: Damien Miller <djm@mindrot.org>
8175Date: Sun Mar 12 10:48:14 2017 +1100
8176
8177 sync fmt_scaled.c with OpenBSD
8178
8179 revision 1.13
8180 date: 2017/03/11 23:37:23; author: djm; state: Exp; lines: +14 -1; commitid: jnFKyHkB3CEiEZ2R;
8181 fix signed integer overflow in scan_scaled. Found by Nicolas Iooss
8182 using AFL against ssh_config. ok deraadt@ millert@
8183 ----------------------------
8184 revision 1.12
8185 date: 2013/11/29 19:00:51; author: deraadt; state: Exp; lines: +6 -5;
8186 fairly simple unsigned char casts for ctype
8187 ok krw
8188 ----------------------------
8189 revision 1.11
8190 date: 2012/11/12 14:07:20; author: halex; state: Exp; lines: +4 -2;
8191 make scan_scaled set errno to EINVAL rather than ERANGE if it encounters
8192 an invalid multiplier, like the man page says it should
8193
8194 "looks sensible" deraadt@, ok ian@
8195 ----------------------------
8196 revision 1.10
8197 date: 2009/06/20 15:00:04; author: martynas; state: Exp; lines: +4 -4;
8198 use llabs instead of the home-grown version; and some comment changes
8199 ok ian@, millert@
8200 ----------------------------
8201
8202commit 894221a63fa061e52e414ca58d47edc5fe645968
8203Author: djm@openbsd.org <djm@openbsd.org>
8204Date: Fri Mar 10 05:01:13 2017 +0000
8205
8206 upstream commit
8207
8208 When updating hostkeys, accept RSA keys if
8209 HostkeyAlgorithms contains any RSA keytype. Previously, ssh could ignore RSA
8210 keys when any of the ssh-rsa-sha2-* methods was enabled in HostkeyAlgorithms
8211 nit ssh-rsa (SHA1 signatures) was not. bz#2650 reported by Luis Ressel; ok
8212 dtucker@
8213
8214 Upstream-ID: c5e8cfee15c42f4a05d126158a0766ea06da79d2
8215
8216commit dd3e2298663f4cc1a06bc69582d00dcfee27d73c
8217Author: djm@openbsd.org <djm@openbsd.org>
8218Date: Fri Mar 10 04:24:55 2017 +0000
8219
8220 upstream commit
8221
8222 make hostname matching really insensitive to case;
8223 bz#2685, reported by Petr Cerny; ok dtucker@
8224
8225 Upstream-ID: e467622ff154269e36ba8b6c9e3d105e1c4a9253
8226
8227commit 77a9be9446697fe8b5499fe651f4a82a71a4b51f
8228Author: djm@openbsd.org <djm@openbsd.org>
8229Date: Fri Mar 10 03:52:48 2017 +0000
8230
8231 upstream commit
8232
8233 reword a comment to make it fit 80 columns
8234
8235 Upstream-ID: 4ef509a66b96c7314bbcc87027c2af71fa9d0ba4
8236
8237commit 61b8ef6a66efaec07e023342cb94a10bdc2254dc
8238Author: djm@openbsd.org <djm@openbsd.org>
8239Date: Fri Mar 10 04:27:32 2017 +0000
8240
8241 upstream commit
8242
8243 better match sshd config parser behaviour: fatal() if
8244 line is overlong, increase line buffer to match sshd's; bz#2651 reported by
8245 Don Fong; ok dtucker@
8246
8247 Upstream-ID: b175ae7e0ba403833f1ee566edf10f67443ccd18
8248
8249commit db2597207e69912f2592cd86a1de8e948a9d7ffb
8250Author: djm@openbsd.org <djm@openbsd.org>
8251Date: Fri Mar 10 04:26:06 2017 +0000
8252
8253 upstream commit
8254
8255 ensure hostname is lower-case before hashing it;
8256 bz#2591 reported by Griff Miller II; ok dtucker@
8257
8258 Upstream-ID: c3b8b93804f376bd00d859b8bcd9fc0d86b4db17
8259
8260commit df9936936c695f85c1038bd706d62edf752aca4b
8261Author: djm@openbsd.org <djm@openbsd.org>
8262Date: Fri Mar 10 04:24:55 2017 +0000
8263
8264 upstream commit
8265
8266 make hostname matching really insensitive to case;
8267 bz#2685, reported by Petr Cerny; ok dtucker@
8268
8269 Upstream-ID: e632b7a9bf0d0558d5ff56dab98b7cca6c3db549
8270
8271commit 67eed24bfa7645d88fa0b883745fccb22a0e527e
8272Author: dtucker@openbsd.org <dtucker@openbsd.org>
8273Date: Fri Mar 10 04:11:00 2017 +0000
8274
8275 upstream commit
8276
8277 Remove old null check from config dumper. Patch from
8278 jjelen at redhat.com vi bz#2687, ok djm@
8279
8280 Upstream-ID: 824ab71467b78c4bab0dd1b3a38e8bc5f63dd528
8281
8282commit 183ba55aaaecca0206184b854ad6155df237adbe
8283Author: djm@openbsd.org <djm@openbsd.org>
8284Date: Fri Mar 10 04:07:20 2017 +0000
8285
8286 upstream commit
8287
8288 fix regression in 7.4 server-sig-algs, where we were
8289 accidentally excluding SHA2 RSA signature methods. bz#2680, patch from Nuno
8290 Goncalves; ok dtucker@
8291
8292 Upstream-ID: 81ac8bfb30960447740b9b8f6a214dcf322f12e8
8293
8294commit 66be4fe8c4435af5bbc82998501a142a831f1181
8295Author: dtucker@openbsd.org <dtucker@openbsd.org>
8296Date: Fri Mar 10 03:53:11 2017 +0000
8297
8298 upstream commit
8299
8300 Check for NULL return value from key_new. Patch from
8301 jjelen at redhat.com via bz#2687, ok djm@
8302
8303 Upstream-ID: 059e33cd43cba88dc8caf0b1936fd4dd88fd5b8e
8304
8305commit ec2892b5c7fea199914cb3a6afb3af38f84990bf
8306Author: djm@openbsd.org <djm@openbsd.org>
8307Date: Fri Mar 10 03:52:48 2017 +0000
8308
8309 upstream commit
8310
8311 reword a comment to make it fit 80 columns
8312
8313 Upstream-ID: b4b48b4487c0821d16e812c40c9b09f03b28e349
8314
8315commit 7fadbb6da3f4122de689165651eb39985e1cba85
8316Author: dtucker@openbsd.org <dtucker@openbsd.org>
8317Date: Fri Mar 10 03:48:57 2017 +0000
8318
8319 upstream commit
8320
8321 Check for NULL argument to sshkey_read. Patch from
8322 jjelen at redhat.com via bz#2687, ok djm@
8323
8324 Upstream-ID: c2d00c2ea50c4861d271d0a586f925cc64a87e0e
8325
8326commit 5a06b9e019e2b0b0f65a223422935b66f3749de3
8327Author: dtucker@openbsd.org <dtucker@openbsd.org>
8328Date: Fri Mar 10 03:45:40 2017 +0000
8329
8330 upstream commit
8331
8332 Plug some mem leaks mostly on error paths. From jjelen
8333 at redhat.com via bz#2687, ok djm@
8334
8335 Upstream-ID: 3fb030149598957a51b7c8beb32bf92cf30c96f2
8336
8337commit f6edbe9febff8121f26835996b1229b5064d31b7
8338Author: dtucker@openbsd.org <dtucker@openbsd.org>
8339Date: Fri Mar 10 03:24:48 2017 +0000
8340
8341 upstream commit
8342
8343 Plug mem leak on GLOB_NOMATCH case. From jjelen at
8344 redhat.com via bz#2687, ok djm@
8345
8346 Upstream-ID: 8016a7ae97719d3aa55fb723fc2ad3200058340d
8347
8348commit 566b3a46e89a2fda2db46f04f2639e92da64a120
8349Author: dtucker@openbsd.org <dtucker@openbsd.org>
8350Date: Fri Mar 10 03:22:40 2017 +0000
8351
8352 upstream commit
8353
8354 Plug descriptor leaks of auth_sock. From jjelen at
8355 redhat.com via bz#2687, ok djm@
8356
8357 Upstream-ID: 248acb99a5ed2fdca37d1aa33c0fcee7be286d88
8358
8359commit 8a2834454c73dfc1eb96453c0e97690595f3f4c2
8360Author: djm@openbsd.org <djm@openbsd.org>
8361Date: Fri Mar 10 03:18:24 2017 +0000
8362
8363 upstream commit
8364
8365 correctly hash hosts with a port number. Reported by Josh
8366 Powers in bz#2692; ok dtucker@
8367
8368 Upstream-ID: 468e357ff143e00acc05bdd2803a696b3d4b6442
8369
8370commit 9747b9c742de409633d4753bf1a752cbd211e2d3
8371Author: djm@openbsd.org <djm@openbsd.org>
8372Date: Fri Mar 10 03:15:58 2017 +0000
8373
8374 upstream commit
8375
8376 don't truncate off \r\n from long stderr lines; bz#2688,
8377 reported by Brian Dyson; ok dtucker@
8378
8379 Upstream-ID: cdfdc4ba90639af807397ce996153c88af046ca4
8380
8381commit 4a4b75adac862029a1064577eb5af299b1580cdd
8382Author: dtucker@openbsd.org <dtucker@openbsd.org>
8383Date: Fri Mar 10 02:59:51 2017 +0000
8384
8385 upstream commit
8386
8387 Validate digest arg in ssh_digest_final; from jjelen at
8388 redhat.com via bz#2687, ok djm@
8389
8390 Upstream-ID: dbe5494dfddfe523fab341a3dab5a79e7338f878
8391
8392commit bee0167be2340d8de4bdc1ab1064ec957c85a447
8393Author: Darren Tucker <dtucker@zip.com.au>
8394Date: Fri Mar 10 13:40:18 2017 +1100
8395
8396 Check for NULL from malloc.
8397
8398 Part of bz#2687, from jjelen at redhat.com.
8399
8400commit da39b09d43b137a5a3d071b51589e3efb3701238
8401Author: Darren Tucker <dtucker@zip.com.au>
8402Date: Fri Mar 10 13:22:32 2017 +1100
8403
8404 If OSX is using launchd, remove screen no.
8405
8406 Check for socket with and without screen number. From Apple and Jakob
8407 Schlyter via bz#2341, with contributions from Ron Frederick, ok djm@
8408
8409commit 8fb15311a011517eb2394bb95a467c209b8b336c
8410Author: djm@openbsd.org <djm@openbsd.org>
8411Date: Wed Mar 8 12:07:47 2017 +0000
8412
8413 upstream commit
8414
8415 quote [host]:port in generated ProxyJump commandline; the
8416 [ / ] characters can confuse some shells (e.g. zsh). Reported by Lauri
8417 Tirkkonen via bugs@
8418
8419 Upstream-ID: 65cdd161460e1351c3d778e974c1c2a4fa4bc182
8420
8421commit 18501151cf272a15b5f2c5e777f2e0933633c513
8422Author: dtucker@openbsd.org <dtucker@openbsd.org>
8423Date: Mon Mar 6 02:03:20 2017 +0000
8424
8425 upstream commit
8426
8427 Check l->hosts before dereferencing; fixes potential null
8428 pointer deref. ok djm@
8429
8430 Upstream-ID: 81c0327c6ec361da794b5c680601195cc23d1301
8431
8432commit d072370793f1a20f01ad827ba8fcd3b8f2c46165
8433Author: dtucker@openbsd.org <dtucker@openbsd.org>
8434Date: Mon Mar 6 00:44:51 2017 +0000
8435
8436 upstream commit
8437
8438 linenum is unsigned long so use %lu in log formats. ok
8439 deraadt@
8440
8441 Upstream-ID: 9dc582d9bb887ebe0164e030d619fc20b1a4ea08
8442
8443commit 12d3767ba4c84c32150cbe6ff6494498780f12c9
8444Author: djm@openbsd.org <djm@openbsd.org>
8445Date: Fri Mar 3 06:13:11 2017 +0000
8446
8447 upstream commit
8448
8449 fix ssh-keygen -H accidentally corrupting known_hosts that
8450 contained already-hashed entries. HKF_MATCH_HOST_HASHED is only set by
8451 hostkeys_foreach() when hostname matching is in use, so we need to look for
8452 the hash marker explicitly.
8453
8454 Upstream-ID: da82ad653b93e8a753580d3cf5cd448bc2520528
8455
8456commit d7abb771bd5a941b26144ba400a34563a1afa589
8457Author: djm@openbsd.org <djm@openbsd.org>
8458Date: Tue Feb 28 06:10:08 2017 +0000
8459
8460 upstream commit
8461
8462 small memleak: free fd_set on connection timeout (though
8463 we are heading to exit anyway). From Tom Rix in bz#2683
8464
8465 Upstream-ID: 10e3dadbb8199845b66581473711642d9e6741c4
8466
8467commit 78142e3ab3887e53a968d6e199bcb18daaf2436e
8468Author: jmc@openbsd.org <jmc@openbsd.org>
8469Date: Mon Feb 27 14:30:33 2017 +0000
8470
8471 upstream commit
8472
8473 errant dot; from klemens nanni
8474
8475 Upstream-ID: 83d93366a5acf47047298c5d3ebc5e7426f37921
8476
8477commit 8071a6924c12bb51406a9a64a4b2892675112c87
8478Author: djm@openbsd.org <djm@openbsd.org>
8479Date: Fri Feb 24 03:16:34 2017 +0000
8480
8481 upstream commit
8482
8483 might as well set the listener socket CLOEXEC
8484
8485 Upstream-ID: 9c538433d6a0ca79f5f21decc5620e46fb68ab57
8486
8487commit d5499190559ebe374bcdfa8805408646ceffad64
8488Author: djm@openbsd.org <djm@openbsd.org>
8489Date: Sun Feb 19 00:11:29 2017 +0000
8490
8491 upstream commit
8492
8493 add test cases for C locale; ok schwarze@
8494
8495 Upstream-Regress-ID: 783d75de35fbc923d46e2a5e6cee30f8f381ba87
8496
8497commit 011c8ffbb0275281a0cf330054cf21be10c43e37
8498Author: djm@openbsd.org <djm@openbsd.org>
8499Date: Sun Feb 19 00:10:57 2017 +0000
8500
8501 upstream commit
8502
8503 Add a common nl_langinfo(CODESET) alias for US-ASCII
8504 "ANSI_X3.4-1968" that is used by Linux. Fixes mprintf output truncation for
8505 non-UTF-8 locales on Linux spotted by dtucker@; ok deraadt@ schwarze@
8506
8507 Upstream-ID: c6808956ebffd64066f9075d839f74ff0dd60719
8508
8509commit 0c4430a19b73058a569573492f55e4c9eeaae67b
8510Author: dtucker@openbsd.org <dtucker@openbsd.org>
8511Date: Tue Feb 7 23:03:11 2017 +0000
8512
8513 upstream commit
8514
8515 Remove deprecated SSH1 options RSAAuthentication and
8516 RhostsRSAAuthentication from regression test sshd_config.
8517
8518 Upstream-Regress-ID: 8066b753d9dce7cf02ff87af5c727ff680d99491
8519
8520commit 3baa4cdd197c95d972ec3d07f1c0d08f2d7d9199
8521Author: dtucker@openbsd.org <dtucker@openbsd.org>
8522Date: Fri Feb 17 02:32:05 2017 +0000
8523
8524 upstream commit
8525
8526 Do not show rsa1 key type in usage when compiled without
8527 SSH1 support.
8528
8529 Upstream-ID: 068b5c41357a02f319957746fa4e84ea73960f57
8530
8531commit ecc35893715f969e98fee118481f404772de4132
8532Author: dtucker@openbsd.org <dtucker@openbsd.org>
8533Date: Fri Feb 17 02:31:14 2017 +0000
8534
8535 upstream commit
8536
8537 ifdef out "rsa1" from the list of supported keytypes when
8538 compiled without SSH1 support. Found by kdunlop at guralp.com, ok djm@
8539
8540 Upstream-ID: cea93a26433d235bb1d64b1d990f19a9c160a70f
8541
8542commit 10577c6d96a55b877a960b2d0b75edef1b9945af
8543Author: djm@openbsd.org <djm@openbsd.org>
8544Date: Fri Feb 17 02:04:15 2017 +0000
8545
8546 upstream commit
8547
8548 For ProxyJump/-J, surround host name with brackets to
8549 allow literal IPv6 addresses. From Dick Visser; ok dtucker@
8550
8551 Upstream-ID: 3a5d3b0171250daf6a5235e91bce09c1d5746bf1
8552
8553commit b2afdaf1b52231aa23d2153f4a8c5a60a694dda4
8554Author: jsg@openbsd.org <jsg@openbsd.org>
8555Date: Wed Feb 15 23:38:31 2017 +0000
8556
8557 upstream commit
8558
8559 Fix memory leaks in match_filter_list() error paths.
8560
8561 ok dtucker@ markus@
8562
8563 Upstream-ID: c7f96ac0877f6dc9188bbc908100a8d246cc7f0e
8564
8565commit 6d5a41b38b55258213ecfaae9df7a758caa752a1
8566Author: djm@openbsd.org <djm@openbsd.org>
8567Date: Wed Feb 15 01:46:47 2017 +0000
8568
8569 upstream commit
8570
8571 fix division by zero crash in "df" output when server
8572 returns zero total filesystem blocks/inodes. Spotted by Guido Vranken; ok
8573 dtucker@
8574
8575 Upstream-ID: 6fb6c2ae6b289aa07b6232dbc0be54682ef5419f
8576
8577commit bd5d7d239525d595ecea92765334af33a45d9d63
8578Author: Darren Tucker <dtucker@zip.com.au>
8579Date: Sun Feb 12 15:45:15 2017 +1100
8580
8581 ifdef out EVP_R_PRIVATE_KEY_DECODE_ERROR
8582
8583 EVP_R_PRIVATE_KEY_DECODE_ERROR was added in OpenSSL 1.0.0 so ifdef out
8584 for the benefit of OpenSSL versions prior to that.
8585
8586commit 155d540d00ff55f063421ec182ec8ff2b7ab6cbe
8587Author: djm@openbsd.org <djm@openbsd.org>
8588Date: Fri Feb 10 04:34:50 2017 +0000
8589
8590 upstream commit
8591
8592 bring back r1.34 that was backed out for problems loading
8593 public keys:
8594
8595 translate OpenSSL error codes to something more
8596 meaninful; bz#2522 reported by Jakub Jelen, ok dtucker@
8597
8598 with additional fix from Jakub Jelen to solve the backout.
8599 bz#2525 bz#2523 re-ok dtucker@
8600
8601 Upstream-ID: a9d5bc0306f4473d9b4f4484f880e95f3c1cc031
8602
8603commit a287c5ad1e0bf9811c7b9221979b969255076019
8604Author: djm@openbsd.org <djm@openbsd.org>
8605Date: Fri Feb 10 03:36:40 2017 +0000
8606
8607 upstream commit
8608
8609 Sanitise escape sequences in key comments sent to printf
8610 but preserve valid UTF-8 when the locale supports it; bz#2520 ok dtucker@
8611
8612 Upstream-ID: e8eed28712ba7b22d49be534237eed019875bd1e
8613
8614commit e40269be388972848aafcca7060111c70aab5b87
8615Author: millert@openbsd.org <millert@openbsd.org>
8616Date: Wed Feb 8 20:32:43 2017 +0000
8617
8618 upstream commit
8619
8620 Avoid printf %s NULL. From semarie@, OK djm@
8621
8622 Upstream-ID: 06beef7344da0208efa9275d504d60d2a5b9266c
8623
8624commit 5b90709ab8704dafdb31e5651073b259d98352bc
8625Author: djm@openbsd.org <djm@openbsd.org>
8626Date: Mon Feb 6 09:22:51 2017 +0000
8627
8628 upstream commit
8629
8630 Restore \r\n newline sequence for server ident string. The CR
8631 got lost in the flensing of SSHv1. Pointed out by Stef Bon
8632
8633 Upstream-ID: 5333fd43ce5396bf5999496096fac5536e678fac
8634
8635commit 97c31c46ee2e6b46dfffdfc4f90bbbf188064cbc
8636Author: djm@openbsd.org <djm@openbsd.org>
8637Date: Fri Feb 3 23:01:42 2017 +0000
8638
8639 upstream commit
8640
8641 unit test for match_filter_list() function; still want a
8642 better name for this...
8643
8644 Upstream-Regress-ID: 840ad6118552c35111f0a897af9c8d93ab8de92a
8645
8646commit f1a193464a7b77646f0d0cedc929068e4a413ab4
8647Author: djm@openbsd.org <djm@openbsd.org>
8648Date: Fri Feb 3 23:05:57 2017 +0000
8649
8650 upstream commit
8651
8652 use ssh_packet_set_log_preamble() to include connection
8653 username in packet log messages, e.g.
8654
8655 Connection closed by invalid user foo 10.1.1.1 port 44056 [preauth]
8656
8657 ok markus@ bz#113
8658
8659 Upstream-ID: 3591b88bdb5416d6066fb3d49d8fff2375bf1a15
8660
8661commit 07edd7e9537ab32aa52abb5fb2a915c350fcf441
8662Author: djm@openbsd.org <djm@openbsd.org>
8663Date: Fri Feb 3 23:03:33 2017 +0000
8664
8665 upstream commit
8666
8667 add ssh_packet_set_log_preamble() to allow inclusion of a
8668 preamble string in disconnect messages; ok markus@
8669
8670 Upstream-ID: 34cb41182cd76d414c214ccb01c01707849afead
8671
8672commit 68bc8cfa7642d3ccbf2cd64281c16b8b9205be59
8673Author: djm@openbsd.org <djm@openbsd.org>
8674Date: Fri Feb 3 23:01:19 2017 +0000
8675
8676 upstream commit
8677
8678 support =- for removing methods from algorithms lists,
8679 e.g. Ciphers=-*cbc; suggested by Cristian Ionescu-Idbohrn in bz#2671 "I like
8680 it" markus@
8681
8682 Upstream-ID: c78c38f9f81a963b33d0eade559f6048add24a6d
8683
8684commit c924b2ef941028a1f31e6e94f54dfeeeef462a4e
8685Author: djm@openbsd.org <djm@openbsd.org>
8686Date: Fri Feb 3 05:05:56 2017 +0000
8687
8688 upstream commit
8689
8690 allow form-feed characters at EOL; bz#2431 ok dtucker@
8691
8692 Upstream-ID: 1f453afaba6da2ae69d6afdf1ae79a917552f1a2
8693
8694commit 523db8540b720c4d21ab0ff6f928476c70c38aab
8695Author: Damien Miller <djm@mindrot.org>
8696Date: Fri Feb 3 16:01:22 2017 +1100
8697
8698 prefer to use ldns-config to find libldns
8699
8700 Should fix bz#2603 - "Build with ldns and without kerberos support
8701 fails if ldns compiled with kerberos support" by including correct
8702 cflags/libs
8703
8704 ok dtucker@
8705
8706commit c998bf0afa1a01257a53793eba57941182e9e0b7
8707Author: dtucker@openbsd.org <dtucker@openbsd.org>
8708Date: Fri Feb 3 02:56:00 2017 +0000
8709
8710 upstream commit
8711
8712 Make ssh_packet_set_rekey_limits take u32 for the number of
8713 seconds until rekeying (negative values are rejected at config parse time).
8714 This allows the removal of some casts and a signed vs unsigned comparison
8715 warning.
8716
8717 rekey_time is cast to int64 for the comparison which is a no-op
8718 on OpenBSD, but should also do the right thing in -portable on
8719 anything still using 32bit time_t (until the system time actually
8720 wraps, anyway).
8721
8722 some early guidance deraadt@, ok djm@
8723
8724 Upstream-ID: c9f18613afb994a07e7622eb326f49de3d123b6c
8725
8726commit 3ec5fa4ba97d4c4853620daea26a33b9f1fe3422
8727Author: jsg@openbsd.org <jsg@openbsd.org>
8728Date: Thu Feb 2 10:54:25 2017 +0000
8729
8730 upstream commit
8731
8732 In vasnmprintf() return an error if malloc fails and
8733 don't set a function argument to the address of free'd memory.
8734
8735 ok djm@
8736
8737 Upstream-ID: 1efffffff2f51d53c9141f245b90ac23d33b9779
8738
8739commit 858252fb1d451ebb0969cf9749116c8f0ee42753
8740Author: dtucker@openbsd.org <dtucker@openbsd.org>
8741Date: Wed Feb 1 02:59:09 2017 +0000
8742
8743 upstream commit
8744
8745 Return true reason for port forwarding failures where
8746 feasible rather than always "administratively prohibited". bz#2674, ok djm@
8747
8748 Upstream-ID: d901d9887951774e604ca970e1827afaaef9e419
8749
8750commit 6ba9f893838489add6ec4213c7a997b425e4a9e0
8751Author: dtucker@openbsd.org <dtucker@openbsd.org>
8752Date: Mon Jan 30 23:27:39 2017 +0000
8753
8754 upstream commit
8755
8756 Small correction to the known_hosts section on when it is
8757 updated. Patch from lkppo at free.fr some time ago, pointed out by smallm at
8758 sdf.org
8759
8760 Upstream-ID: 1834d7af179dea1a12ad2137f84566664af225d5
8761
8762commit c61d5ec3c11e7ff9779b6127421d9f166cf10915
8763Author: Darren Tucker <dtucker@zip.com.au>
8764Date: Fri Feb 3 14:10:34 2017 +1100
8765
8766 Remove _XOPEN_SOURCE from wide char detection.
8767
8768 Having _XOPEN_SOURCE unconditionally causes problems on some platforms
8769 and configurations, notably Solaris 64-bit binaries. It was there for
8770 the benefit of Linux put the required bits in the *-*linux* section.
8771
8772 Patch from yvoinov at gmail.com.
8773
8774commit f25ee13b3e81fd80efeb871dc150fe49d7fc8afd
8775Author: djm@openbsd.org <djm@openbsd.org>
8776Date: Mon Jan 30 05:22:14 2017 +0000
8777
8778 upstream commit
8779
8780 fully unbreak: some $SSH invocations did not have -F
8781 specified and could pick up the ~/.ssh/config of the user running the tests
8782
8783 Upstream-Regress-ID: f362d1892c0d3e66212d5d3fc02d915c58ef6b89
8784
8785commit 6956e21fb26652887475fe77ea40d2efcf25908b
8786Author: djm@openbsd.org <djm@openbsd.org>
8787Date: Mon Jan 30 04:54:07 2017 +0000
8788
8789 upstream commit
8790
8791 partially unbreak: was not specifying hostname on some
8792 $SSH invocations
8793
8794 Upstream-Regress-ID: bc8a5e98e57bad0a92ef4f34ed91c1d18294e2cc
8795
8796commit 52763dd3fe0a4678dafdf7aeb32286e514130afc
8797Author: djm@openbsd.org <djm@openbsd.org>
8798Date: Mon Jan 30 01:03:00 2017 +0000
8799
8800 upstream commit
8801
8802 revise keys/principals command hang fix (bz#2655) to
8803 consume entire output, avoiding sending SIGPIPE to subprocesses early; ok
8804 dtucker@
8805
8806 Upstream-ID: 7cb04b31a61f8c78c4e48ceededcd2fd5c4ee1bc
8807
8808commit 381a2615a154a82c4c53b787f4a564ef894fe9ac
8809Author: djm@openbsd.org <djm@openbsd.org>
8810Date: Mon Jan 30 00:38:50 2017 +0000
8811
8812 upstream commit
8813
8814 small cleanup post SSHv1 removal:
8815
8816 remove SSHv1-isms in commented examples
8817
8818 reorder token table to group deprecated and compile-time conditional tokens
8819 better
8820
8821 fix config dumping code for some compile-time conditional options that
8822 weren't being correctly skipped (SSHv1 and PKCS#11)
8823
8824 Upstream-ID: f2e96b3cb3158d857c5a91ad2e15925df3060105
8825
8826commit 4833d01591b7eb049489d9558b65f5553387ed43
8827Author: djm@openbsd.org <djm@openbsd.org>
8828Date: Mon Jan 30 00:34:01 2017 +0000
8829
8830 upstream commit
8831
8832 some explicit NULL tests when dumping configured
8833 forwardings; from Karsten Weiss
8834
8835 Upstream-ID: 40957b8dea69672b0e50df6b4a91a94e3e37f72d
8836
8837commit 326e2fae9f2e3e067b5651365eba86b35ee5a6b2
8838Author: djm@openbsd.org <djm@openbsd.org>
8839Date: Mon Jan 30 00:32:28 2017 +0000
8840
8841 upstream commit
8842
8843 misplaced braces in test; from Karsten Weiss
8844
8845 Upstream-ID: f7b794074d3aae8e35b69a91d211c599c94afaae
8846
8847commit 3e032a95e46bfaea9f9e857678ac8fa5f63997fb
8848Author: djm@openbsd.org <djm@openbsd.org>
8849Date: Mon Jan 30 00:32:03 2017 +0000
8850
8851 upstream commit
8852
8853 don't dereference authctxt before testing != NULL, it
8854 causes compilers to make assumptions; from Karsten Weiss
8855
8856 Upstream-ID: 794243aad1e976ebc717885b7a97a25e00c031b2
8857
8858commit 01cfaa2b1cfb84f3cdd32d1bf82b120a8d30e057
8859Author: djm@openbsd.org <djm@openbsd.org>
8860Date: Fri Jan 6 02:51:16 2017 +0000
8861
8862 upstream commit
8863
8864 use correct ssh-add program; bz#2654, from Colin Watson
8865
8866 Upstream-Regress-ID: 7042a36e1bdaec6562f6e57e9d047efe9c7a6030
8867
8868commit e5c7ec67cdc42ae2584085e0fc5cc5ee91133cf5
8869Author: dtucker@openbsd.org <dtucker@openbsd.org>
8870Date: Fri Jan 6 02:26:10 2017 +0000
8871
8872 upstream commit
8873
8874 Account for timeouts in the integrity tests as failures.
8875
8876 If the first test in a series for a given MAC happens to modify the low
8877 bytes of a packet length, then ssh will time out and this will be
8878 interpreted as a test failure. Patch from cjwatson at debian.org via
8879 bz#2658.
8880
8881 Upstream-Regress-ID: e7467613b0badedaa300bc6fc7495ec2f44e2fb9
8882
8883commit dbaf599b61bd6e0f8469363a8c8e7f633b334018
8884Author: dtucker@openbsd.org <dtucker@openbsd.org>
8885Date: Fri Jan 6 02:09:25 2017 +0000
8886
8887 upstream commit
8888
8889 Make forwarding test less racy by using unix domain
8890 sockets instead of TCP ports where possible. Patch from cjwatson at
8891 debian.org via bz#2659.
8892
8893 Upstream-Regress-ID: 4756375aac5916ef9d25452a1c1d5fa9e90299a9
8894
8895commit 9390b0031ebd6eb5488d3bc4d4333c528dffc0a6
8896Author: dtucker@openbsd.org <dtucker@openbsd.org>
8897Date: Sun Jan 29 21:35:23 2017 +0000
8898
8899 upstream commit
8900
8901 Fix typo in ~C error message for bad port forward
8902 cancellation. bz#2672, from Brad Marshall via Colin Watson and Ubuntu's
8903 bugtracker.
8904
8905 Upstream-ID: 0d4a7e5ead6cc59c9a44b4c1e5435ab3aada09af
8906
8907commit 4ba15462ca38883b8a61a1eccc093c79462d5414
8908Author: guenther@openbsd.org <guenther@openbsd.org>
8909Date: Sat Jan 21 11:32:04 2017 +0000
8910
8911 upstream commit
8912
8913 The POSIX APIs that that sockaddrs all ignore the s*_len
8914 field in the incoming socket, so userspace doesn't need to set it unless it
8915 has its own reasons for tracking the size along with the sockaddr.
8916
8917 ok phessler@ deraadt@ florian@
8918
8919 Upstream-ID: ca6e49e2f22f2b9e81d6d924b90ecd7e422e7437
8920
8921commit a1187bd3ef3e4940af849ca953a1b849dae78445
8922Author: jmc@openbsd.org <jmc@openbsd.org>
8923Date: Fri Jan 6 16:28:12 2017 +0000
8924
8925 upstream commit
8926
8927 keep the tokens list sorted;
8928
8929 Upstream-ID: b96239dae4fb3aa94146bb381afabcc7740a1638
8930
8931commit b64077f9767634715402014f509e58decf1e140d
8932Author: djm@openbsd.org <djm@openbsd.org>
8933Date: Fri Jan 6 09:27:52 2017 +0000
8934
8935 upstream commit
8936
8937 fix previous
8938
8939 Upstream-ID: c107d6a69bc22325d79fbf78a2a62e04bcac6895
8940
8941commit 5e820e9ea2e949aeb93071fe31c80b0c42f2b2de
8942Author: djm@openbsd.org <djm@openbsd.org>
8943Date: Fri Jan 6 03:53:58 2017 +0000
8944
8945 upstream commit
8946
8947 show a useful error message when included config files
8948 can't be opened; bz#2653, ok dtucker@
8949
8950 Upstream-ID: f598b73b5dfe497344cec9efc9386b4e5a3cb95b
8951
8952commit 13bd2e2d622d01dc85d22b94520a5b243d006049
8953Author: djm@openbsd.org <djm@openbsd.org>
8954Date: Fri Jan 6 03:45:41 2017 +0000
8955
8956 upstream commit
8957
8958 sshd_config is documented to set
8959 GSSAPIStrictAcceptorCheck=yes by default, so actually make it do this.
8960 bz#2637 ok dtucker
8961
8962 Upstream-ID: 99ef8ac51f17f0f7aec166cb2e34228d4d72a665
8963
8964commit f89b928534c9e77f608806a217d39a2960cc7fd0
8965Author: djm@openbsd.org <djm@openbsd.org>
8966Date: Fri Jan 6 03:41:58 2017 +0000
8967
8968 upstream commit
8969
8970 Avoid confusing error message when attempting to use
8971 ssh-keyscan built without SSH protocol v.1 to scan for v.1 keys; bz#2583
8972
8973 Upstream-ID: 5d214abd3a21337d67c6dcc5aa6f313298d0d165
8974
8975commit 0999533014784579aa6f01c2d3a06e3e8804b680
8976Author: dtucker@openbsd.org <dtucker@openbsd.org>
8977Date: Fri Jan 6 02:34:54 2017 +0000
8978
8979 upstream commit
8980
8981 Re-add '%k' token for AuthorizedKeysCommand which was
8982 lost during the re-org in rev 1.235. bz#2656, from jboning at gmail.com.
8983
8984 Upstream-ID: 2884e203c02764d7b3fe7472710d9c24bdc73e38
8985
8986commit 51045869fa084cdd016fdd721ea760417c0a3bf3
8987Author: djm@openbsd.org <djm@openbsd.org>
8988Date: Wed Jan 4 05:37:40 2017 +0000
8989
8990 upstream commit
8991
8992 unbreak Unix domain socket forwarding for root; ok
8993 markus@
8994
8995 Upstream-ID: 6649c76eb7a3fa15409373295ca71badf56920a2
8996
8997commit 58fca12ba967ea5c768653535604e1522d177e44
8998Author: Darren Tucker <dtucker@zip.com.au>
8999Date: Mon Jan 16 09:08:32 2017 +1100
9000
9001 Remove LOGIN_PROGRAM.
9002
9003 UseLogin is gone, remove leftover. bz#2665, from cjwatson at debian.org
9004
9005commit b108ce92aae0ca0376dce9513d953be60e449ae1
9006Author: djm@openbsd.org <djm@openbsd.org>
9007Date: Wed Jan 4 02:21:43 2017 +0000
9008
9009 upstream commit
9010
9011 relax PKCS#11 whitelist a bit to allow libexec as well as
9012 lib directories.
9013
9014 Upstream-ID: cf5617958e2e2d39f8285fd3bc63b557da484702
9015
9016commit c7995f296b9222df2846f56ecf61e5ae13d7a53d
9017Author: djm@openbsd.org <djm@openbsd.org>
9018Date: Tue Jan 3 05:46:51 2017 +0000
9019
9020 upstream commit
9021
9022 check number of entries in SSH2_FXP_NAME response; avoids
9023 unreachable overflow later. Reported by Jann Horn
9024
9025 Upstream-ID: b6b2b434a6d6035b1644ca44f24cd8104057420f
9026
9027commit ddd3d34e5c7979ca6f4a3a98a7d219a4ed3d98c2
9028Author: djm@openbsd.org <djm@openbsd.org>
9029Date: Fri Dec 30 22:08:02 2016 +0000
9030
9031 upstream commit
9032
9033 fix deadlock when keys/principals command produces a lot of
9034 output and a key is matched early; bz#2655, patch from jboning AT gmail.com
9035
9036 Upstream-ID: e19456429bf99087ea994432c16d00a642060afe
9037
9038commit 30eee7d1b2fec33c14870cc11910610be5d2aa6f
9039Author: Darren Tucker <dtucker@zip.com.au>
9040Date: Tue Dec 20 12:16:11 2016 +1100
9041
9042 Re-add missing "Prerequisites" header and fix typo
9043
9044 Patch from HARUYAMA Seigo <haruyama at unixuser org>.
9045
9046commit c8c60f3663165edd6a52632c6ddbfabfce1ca865
9047Author: djm@openbsd.org <djm@openbsd.org>
9048Date: Mon Dec 19 22:35:23 2016 +0000
9049
9050 upstream commit
9051
9052 use standard /bin/sh equality test; from Mike Frysinger
9053
9054 Upstream-Regress-ID: 7b6f0b63525f399844c8ac211003acb8e4b0bec2
9055
9056commit 4a354fc231174901f2629437c2a6e924a2dd6772
9057Author: Damien Miller <djm@mindrot.org>
9058Date: Mon Dec 19 15:59:26 2016 +1100
9059
9060 crank version numbers for release
9061
9062commit 5f8d0bb8413d4d909cc7aa3c616fb0538224c3c9
9063Author: djm@openbsd.org <djm@openbsd.org>
9064Date: Mon Dec 19 04:55:51 2016 +0000
9065
9066 upstream commit
9067
9068 openssh-7.4
9069
9070 Upstream-ID: 1ee404adba6bbe10ae9277cbae3a94abe2867b79
9071
9072commit 3a8213ea0ed843523e34e55ab9c852332bab4c7b
9073Author: djm@openbsd.org <djm@openbsd.org>
9074Date: Mon Dec 19 04:55:18 2016 +0000
9075
9076 upstream commit
9077
9078 remove testcase that depends on exact output and
9079 behaviour of snprintf(..., "%s", NULL)
9080
9081 Upstream-Regress-ID: cab4288531766bd9593cb556613b91a2eeefb56f
9082
9083commit eae735a82d759054f6ec7b4e887fb7a5692c66d7
9084Author: dtucker@openbsd.org <dtucker@openbsd.org>
9085Date: Mon Dec 19 03:32:57 2016 +0000
9086
9087 upstream commit
9088
9089 Use LOGNAME to get current user and fall back to whoami if
9090 not set. Mainly to benefit -portable since some platforms don't have whoami.
9091
9092 Upstream-Regress-ID: e3a16b7836a3ae24dc8f8a4e43fdf8127a60bdfa
9093
9094commit 0d2f88428487518eea60602bd593989013831dcf
9095Author: dtucker@openbsd.org <dtucker@openbsd.org>
9096Date: Fri Dec 16 03:51:19 2016 +0000
9097
9098 upstream commit
9099
9100 Add regression test for AllowUsers and DenyUsers. Patch from
9101 Zev Weiss <zev at bewilderbeest.net>
9102
9103 Upstream-Regress-ID: 8f1aac24d52728398871dac14ad26ea38b533fb9
9104
9105commit 3bc8180a008929f6fe98af4a56fb37d04444b417
9106Author: Darren Tucker <dtucker@zip.com.au>
9107Date: Fri Dec 16 15:02:24 2016 +1100
9108
9109 Add missing monitor.h include.
9110
9111 Fixes warning pointed out by Zev Weiss <zev at bewilderbeest.net>
9112
9113commit 410681f9015d76cc7b137dd90dac897f673244a0
9114Author: djm@openbsd.org <djm@openbsd.org>
9115Date: Fri Dec 16 02:48:55 2016 +0000
9116
9117 upstream commit
9118
9119 revert to rev1.2; the new bits in this test depend on changes
9120 to ssh that aren't yet committed
9121
9122 Upstream-Regress-ID: 828ffc2c7afcf65d50ff2cf3dfc47a073ad39123
9123
9124commit 2f2ffa4fbe4b671bbffa0611f15ba44cff64d58e
9125Author: dtucker@openbsd.org <dtucker@openbsd.org>
9126Date: Fri Dec 16 01:06:27 2016 +0000
9127
9128 upstream commit
9129
9130 Move the "stop sshd" code into its own helper function.
9131 Patch from Zev Weiss <zev at bewilderbeest.net>, ok djm@
9132
9133 Upstream-Regress-ID: a113dea77df5bd97fb4633ea31f3d72dbe356329
9134
9135commit e15e7152331e3976b35475fd4e9c72897ad0f074
9136Author: djm@openbsd.org <djm@openbsd.org>
9137Date: Fri Dec 16 01:01:07 2016 +0000
9138
9139 upstream commit
9140
9141 regression test for certificates along with private key
9142 with no public half. bz#2617, mostly from Adam Eijdenberg
9143
9144 Upstream-Regress-ID: 2e74dc2c726f4dc839609b3ce045466b69f01115
9145
9146commit 9a70ec085faf6e55db311cd1a329f1a35ad2a500
9147Author: dtucker@openbsd.org <dtucker@openbsd.org>
9148Date: Thu Dec 15 23:50:37 2016 +0000
9149
9150 upstream commit
9151
9152 Use $SUDO to read pidfile in case root's umask is
9153 restricted. From portable.
9154
9155 Upstream-Regress-ID: f6b1c7ffbc5a0dfb7d430adb2883344899174a98
9156
9157commit fe06b68f824f8f55670442fb31f2c03526dd326c
9158Author: dtucker@openbsd.org <dtucker@openbsd.org>
9159Date: Thu Dec 15 21:29:05 2016 +0000
9160
9161 upstream commit
9162
9163 Add missing braces in DenyUsers code. Patch from zev at
9164 bewilderbeest.net, ok deraadt@
9165
9166 Upstream-ID: d747ace338dcf943b077925f90f85f789714b54e
9167
9168commit dcc7d74242a574fd5c4afbb4224795b1644321e7
9169Author: dtucker@openbsd.org <dtucker@openbsd.org>
9170Date: Thu Dec 15 21:20:41 2016 +0000
9171
9172 upstream commit
9173
9174 Fix text in error message. Patch from zev at
9175 bewilderbeest.net.
9176
9177 Upstream-ID: deb0486e175e7282f98f9a15035d76c55c84f7f6
9178
9179commit b737e4d7433577403a31cff6614f6a1b0b5e22f4
9180Author: djm@openbsd.org <djm@openbsd.org>
9181Date: Wed Dec 14 00:36:34 2016 +0000
9182
9183 upstream commit
9184
9185 disable Unix-domain socket forwarding when privsep is
9186 disabled
9187
9188 Upstream-ID: ab61516ae0faadad407857808517efa900a0d6d0
9189
9190commit 08a1e7014d65c5b59416a0e138c1f73f417496eb
9191Author: djm@openbsd.org <djm@openbsd.org>
9192Date: Fri Dec 9 03:04:29 2016 +0000
9193
9194 upstream commit
9195
9196 log connections dropped in excess of MaxStartups at
9197 verbose LogLevel; bz#2613 based on diff from Tomas Kuthan; ok dtucker@
9198
9199 Upstream-ID: 703ae690dbf9b56620a6018f8a3b2389ce76d92b
9200
9201commit 10e290ec00964b2bf70faab15a10a5574bb80527
9202Author: Darren Tucker <dtucker@zip.com.au>
9203Date: Tue Dec 13 13:51:32 2016 +1100
9204
9205 Get default of TEST_SSH_UTF8 from environment.
9206
9207commit b9b8ba3f9ed92c6220b58d70d1e6d8aa3eea1104
9208Author: Darren Tucker <dtucker@zip.com.au>
9209Date: Tue Dec 13 12:56:40 2016 +1100
9210
9211 Remove commented-out includes.
9212
9213 These commented-out includes have "Still needed?" comments. Since
9214 they've been commented out for ~13 years I assert that they're not.
9215
9216commit 25275f1c9d5f01a0877d39444e8f90521a598ea0
9217Author: Darren Tucker <dtucker@zip.com.au>
9218Date: Tue Dec 13 12:54:23 2016 +1100
9219
9220 Add prototype for strcasestr in compat library.
9221
9222commit afec07732aa2985142f3e0b9a01eb6391f523dec
9223Author: Darren Tucker <dtucker@zip.com.au>
9224Date: Tue Dec 13 10:23:03 2016 +1100
9225
9226 Add strcasestr to compat library.
9227
9228 Fixes build on (at least) Solaris 10.
9229
9230commit dda78a03af32e7994f132d923c2046e98b7c56c8
9231Author: Damien Miller <djm@mindrot.org>
9232Date: Mon Dec 12 13:57:10 2016 +1100
9233
9234 Force Turkish locales back to C/POSIX; bz#2643
9235
9236 Turkish locales are unique in their handling of the letters 'i' and
9237 'I' (yes, they are different letters) and OpenSSH isn't remotely
9238 prepared to deal with that. For now, the best we can do is to force
9239 OpenSSH to use the C/POSIX locale and try to preserve the UTF-8
9240 encoding if possible.
9241
9242 ok dtucker@
9243
9244commit c35995048f41239fc8895aadc3374c5f75180554
9245Author: Darren Tucker <dtucker@zip.com.au>
9246Date: Fri Dec 9 12:52:02 2016 +1100
9247
9248 exit is in stdlib.h not unistd.h (that's _exit).
9249
9250commit d399a8b914aace62418c0cfa20341aa37a192f98
9251Author: Darren Tucker <dtucker@zip.com.au>
9252Date: Fri Dec 9 12:33:25 2016 +1100
9253
9254 Include <unistd.h> for exit in utf8 locale test.
9255
9256commit 47b8c99ab3221188ad3926108dd9d36da3b528ec
9257Author: Darren Tucker <dtucker@zip.com.au>
9258Date: Thu Dec 8 15:48:34 2016 +1100
9259
9260 Check for utf8 local support before testing it.
9261
9262 Check for utf8 local support and if not found, do not attempt to run the
9263 utf8 tests. Suggested by djm@
9264
9265commit 4089fc1885b3a2822204effbb02b74e3da58240d
9266Author: Darren Tucker <dtucker@zip.com.au>
9267Date: Thu Dec 8 12:57:24 2016 +1100
9268
9269 Use AC_PATH_TOOL for krb5-config.
9270
9271 This will use the host-prefixed version when cross compiling; patch from
9272 david.michael at coreos.com.
9273
9274commit b4867e0712c89b93be905220c82f0a15e6865d1e
9275Author: djm@openbsd.org <djm@openbsd.org>
9276Date: Tue Dec 6 07:48:01 2016 +0000
9277
9278 upstream commit
9279
9280 make IdentityFile successfully load and use certificates that
9281 have no corresponding bare public key. E.g. just a private id_rsa and
9282 certificate id_rsa-cert.pub (and no id_rsa.pub).
9283
9284 bz#2617 ok dtucker@
9285
9286 Upstream-ID: c1e9699b8c0e3b63cc4189e6972e3522b6292604
9287
9288commit c9792783a98881eb7ed295680013ca97a958f8ac
9289Author: Damien Miller <djm@mindrot.org>
9290Date: Fri Nov 25 14:04:21 2016 +1100
9291
9292 Add a gnome-ssh-askpass3 target for GTK+3 version
9293
9294 Based on patch from Colin Watson via bz#2640
9295
9296commit 7be85ae02b9de0993ce0a1d1e978e11329f6e763
9297Author: Damien Miller <djm@mindrot.org>
9298Date: Fri Nov 25 14:03:53 2016 +1100
9299
9300 Make gnome-ssh-askpass2.c GTK+3-friendly
9301
9302 Patch from Colin Watson via bz#2640
9303
9304commit b9844a45c7f0162fd1b5465683879793d4cc4aaa
9305Author: djm@openbsd.org <djm@openbsd.org>
9306Date: Sun Dec 4 23:54:02 2016 +0000
9307
9308 upstream commit
9309
9310 Fix public key authentication when multiple
9311 authentication is in use. Instead of deleting and re-preparing the entire
9312 keys list, just reset the 'used' flags; the keys list is already in a good
9313 order (with already- tried keys at the back)
9314
9315 Analysis and patch from Vincent Brillault on bz#2642; ok dtucker@
9316
9317 Upstream-ID: 7123f12dc2f3bcaae715853035a97923d7300176
9318
9319commit f2398eb774075c687b13af5bc22009eb08889abe
9320Author: dtucker@openbsd.org <dtucker@openbsd.org>
9321Date: Sun Dec 4 22:27:25 2016 +0000
9322
9323 upstream commit
9324
9325 Unlink PidFile on SIGHUP and always recreate it when the
9326 new sshd starts. Regression tests (and possibly other things) depend on the
9327 pidfile being recreated after SIGHUP, and unlinking it means it won't contain
9328 a stale pid if sshd fails to restart. ok djm@ markus@
9329
9330 Upstream-ID: 132dd6dda0c77dd49d2f15b2573b5794f6160870
9331
9332commit 85aa2efeba51a96bf6834f9accf2935d96150296
9333Author: djm@openbsd.org <djm@openbsd.org>
9334Date: Wed Nov 30 03:01:33 2016 +0000
9335
9336 upstream commit
9337
9338 test new behaviour of cert force-command restriction vs.
9339 authorized_key/ principals
9340
9341 Upstream-Regress-ID: 399efa7469d40c404c0b0a295064ce75d495387c
9342
9343commit 5d333131cd8519d022389cfd3236280818dae1bc
9344Author: jmc@openbsd.org <jmc@openbsd.org>
9345Date: Wed Nov 30 06:54:26 2016 +0000
9346
9347 upstream commit
9348
9349 tweak previous; while here fix up FILES and AUTHORS;
9350
9351 Upstream-ID: 93f6e54086145a75df8d8ec7d8689bdadbbac8fa
9352
9353commit 786d5994da79151180cb14a6cf157ebbba61c0cc
9354Author: djm@openbsd.org <djm@openbsd.org>
9355Date: Wed Nov 30 03:07:37 2016 +0000
9356
9357 upstream commit
9358
9359 add a whitelist of paths from which ssh-agent will load
9360 (via ssh-pkcs11-helper) a PKCS#11 module; ok markus@
9361
9362 Upstream-ID: fe79769469d9cd6d26fe0dc15751b83ef2a06e8f
9363
9364commit 7844f357cdd90530eec81340847783f1f1da010b
9365Author: djm@openbsd.org <djm@openbsd.org>
9366Date: Wed Nov 30 03:00:05 2016 +0000
9367
9368 upstream commit
9369
9370 Add a sshd_config DisableForwaring option that disables
9371 X11, agent, TCP, tunnel and Unix domain socket forwarding, as well as
9372 anything else we might implement in the future.
9373
9374 This, like the 'restrict' authorized_keys flag, is intended to be a
9375 simple and future-proof way of restricting an account. Suggested as
9376 a complement to 'restrict' by Jann Horn; ok markus@
9377
9378 Upstream-ID: 203803f66e533a474086b38a59ceb4cf2410fcf7
9379
9380commit fd6dcef2030d23c43f986d26979f84619c10589d
9381Author: djm@openbsd.org <djm@openbsd.org>
9382Date: Wed Nov 30 02:57:40 2016 +0000
9383
9384 upstream commit
9385
9386 When a forced-command appears in both a certificate and
9387 an authorized keys/principals command= restriction, refuse to accept the
9388 certificate unless they are identical.
9389
9390 The previous (documented) behaviour of having the certificate forced-
9391 command override the other could be a bit confused and more error-prone.
9392
9393 Pointed out by Jann Horn of Project Zero; ok dtucker@
9394
9395 Upstream-ID: 79d811b6eb6bbe1221bf146dde6928f92d2cd05f
9396
9397commit 7fc4766ac78abae81ee75b22b7550720bfa28a33
9398Author: dtucker@openbsd.org <dtucker@openbsd.org>
9399Date: Wed Nov 30 00:28:31 2016 +0000
9400
9401 upstream commit
9402
9403 On startup, check to see if sshd is already daemonized
9404 and if so, skip the call to daemon() and do not rewrite the PidFile. This
9405 means that when sshd re-execs itself on SIGHUP the process ID will no longer
9406 change. Should address bz#2641. ok djm@ markus@.
9407
9408 Upstream-ID: 5ea0355580056fb3b25c1fd6364307d9638a37b9
9409
9410commit c9f880c195c65f1dddcbc4ce9d6bfea7747debcc
9411Author: Damien Miller <djm@mindrot.org>
9412Date: Wed Nov 30 13:51:49 2016 +1100
9413
9414 factor out common PRNG reseed before privdrop
9415
9416 Add a call to RAND_poll() to ensure than more than pid+time gets
9417 stirred into child processes states. Prompted by analysis from Jann
9418 Horn at Project Zero. ok dtucker@
9419
9420commit 79e4829ec81dead1b30999e1626eca589319a47f
9421Author: dtucker@openbsd.org <dtucker@openbsd.org>
9422Date: Fri Nov 25 03:02:01 2016 +0000
9423
9424 upstream commit
9425
9426 Allow PuTTY interop tests to run unattended. bz#2639,
9427 patch from cjwatson at debian.org.
9428
9429 Upstream-Regress-ID: 4345253558ac23b2082aebabccd48377433b6fe0
9430
9431commit 504c3a9a1bf090f6b27260fc3e8ea7d984d163dc
9432Author: dtucker@openbsd.org <dtucker@openbsd.org>
9433Date: Fri Nov 25 02:56:49 2016 +0000
9434
9435 upstream commit
9436
9437 Reverse args to sshd-log-wrapper. Matches change in
9438 portable, where it allows sshd do be optionally run under Valgrind.
9439
9440 Upstream-Regress-ID: b438d1c6726dc5caa2a45153e6103a0393faa906
9441
9442commit bd13017736ec2f8f9ca498fe109fb0035f322733
9443Author: dtucker@openbsd.org <dtucker@openbsd.org>
9444Date: Fri Nov 25 02:49:18 2016 +0000
9445
9446 upstream commit
9447
9448 Fix typo in trace message; from portable.
9449
9450 Upstream-Regress-ID: 4c4a2ba0d37faf5fd230a91b4c7edb5699fbd73a
9451
9452commit 7da751d8b007c7f3e814fd5737c2351440d78b4c
9453Author: tb@openbsd.org <tb@openbsd.org>
9454Date: Tue Nov 1 13:43:27 2016 +0000
9455
9456 upstream commit
9457
9458 Clean up MALLOC_OPTIONS. For the unittests, move
9459 MALLOC_OPTIONS and TEST_ENV to unittets/Makefile.inc.
9460
9461 ok otto
9462
9463 Upstream-Regress-ID: 890d497e0a38eeddfebb11cc429098d76cf29f12
9464
9465commit 36f58e68221bced35e06d1cca8d97c48807a8b71
9466Author: tb@openbsd.org <tb@openbsd.org>
9467Date: Mon Oct 31 23:45:08 2016 +0000
9468
9469 upstream commit
9470
9471 Remove the obsolete A and P flags from MALLOC_OPTIONS.
9472
9473 ok dtucker
9474
9475 Upstream-Regress-ID: 6cc25024c8174a87e5734a0dc830194be216dd59
9476
9477commit b0899ee26a6630883c0f2350098b6a35e647f512
9478Author: dtucker@openbsd.org <dtucker@openbsd.org>
9479Date: Tue Nov 29 03:54:50 2016 +0000
9480
9481 upstream commit
9482
9483 Factor out code to disconnect from controlling terminal
9484 into its own function. ok djm@
9485
9486 Upstream-ID: 39fd9e8ebd7222615a837312face5cc7ae962885
9487
9488commit 54d022026aae4f53fa74cc636e4a032d9689b64d
9489Author: djm@openbsd.org <djm@openbsd.org>
9490Date: Fri Nov 25 23:24:45 2016 +0000
9491
9492 upstream commit
9493
9494 use sshbuf_allocate() to pre-allocate the buffer used for
9495 loading keys. This avoids implicit realloc inside the buffer code, which
9496 might theoretically leave fragments of the key on the heap. This doesn't
9497 appear to happen in practice for normal sized keys, but was observed for
9498 novelty oversize ones.
9499
9500 Pointed out by Jann Horn of Project Zero; ok markus@
9501
9502 Upstream-ID: d620e1d46a29fdea56aeadeda120879eddc60ab1
9503
9504commit a9c746088787549bb5b1ae3add7d06a1b6d93d5e
9505Author: djm@openbsd.org <djm@openbsd.org>
9506Date: Fri Nov 25 23:22:04 2016 +0000
9507
9508 upstream commit
9509
9510 split allocation out of sshbuf_reserve() into a separate
9511 sshbuf_allocate() function; ok markus@
9512
9513 Upstream-ID: 11b8a2795afeeb1418d508a2c8095b3355577ec2
9514
9515commit f0ddedee460486fa0e32fefb2950548009e5026e
9516Author: markus@openbsd.org <markus@openbsd.org>
9517Date: Wed Nov 23 23:14:15 2016 +0000
9518
9519 upstream commit
9520
9521 allow ClientAlive{Interval,CountMax} in Match; ok dtucker,
9522 djm
9523
9524 Upstream-ID: 8beb4c1eadd588f1080b58932281983864979f55
9525
9526commit 1a6f9d2e2493d445cd9ee496e6e3c2a2f283f66a
9527Author: djm@openbsd.org <djm@openbsd.org>
9528Date: Tue Nov 8 22:04:34 2016 +0000
9529
9530 upstream commit
9531
9532 unbreak DenyUsers; reported by henning@
9533
9534 Upstream-ID: 1c67d4148f5e953c35acdb62e7c08ae8e33f7cb2
9535
9536commit 010359b32659f455fddd2bd85fd7cc4d7a3b994a
9537Author: djm@openbsd.org <djm@openbsd.org>
9538Date: Sun Nov 6 05:46:37 2016 +0000
9539
9540 upstream commit
9541
9542 Validate address ranges for AllowUser/DenyUsers at
9543 configuration load time and refuse to accept bad ones. It was previously
9544 possible to specify invalid CIDR address ranges (e.g. djm@127.1.2.3/55) and
9545 these would always match.
9546
9547 Thanks to Laurence Parry for a detailed bug report. ok markus (for
9548 a previous diff version)
9549
9550 Upstream-ID: 9dfcdd9672b06e65233ea4434c38226680d40bfb
9551
9552commit efb494e81d1317209256b38b49f4280897c61e69
9553Author: djm@openbsd.org <djm@openbsd.org>
9554Date: Fri Oct 28 03:33:52 2016 +0000
9555
9556 upstream commit
9557
9558 Improve pkcs11_add_provider() logging: demote some
9559 excessively verbose error()s to debug()s, include PKCS#11 provider name and
9560 slot in log messages where possible. bz#2610, based on patch from Jakub Jelen
9561
9562 Upstream-ID: 3223ef693cfcbff9079edfc7e89f55bf63e1973d
9563
9564commit 5ee3fb5affd7646f141749483205ade5fc54adaf
9565Author: Darren Tucker <dtucker@zip.com.au>
9566Date: Tue Nov 1 08:12:33 2016 +1100
9567
9568 Use ptrace(PT_DENY_ATTACH, ..) on OS X.
9569
9570commit 315d2a4e674d0b7115574645cb51f968420ebb34
9571Author: Damien Miller <djm@mindrot.org>
9572Date: Fri Oct 28 14:34:07 2016 +1100
9573
9574 Unbreak AES-CTR ciphers on old (~0.9.8) OpenSSL
9575
9576 ok dtucker@
9577
9578commit a9ff3950b8e80ff971b4d44bbce96df27aed28af
9579Author: Darren Tucker <dtucker@zip.com.au>
9580Date: Fri Oct 28 14:26:58 2016 +1100
9581
9582 Move OPENSSL_NO_RIPEMD160 to compat.
9583
9584 Move OPENSSL_NO_RIPEMD160 to compat and add ifdefs to mac.c around the
9585 ripemd160 MACs.
9586
9587commit bce58885160e5db2adda3054c3b81fe770f7285a
9588Author: Darren Tucker <dtucker@zip.com.au>
9589Date: Fri Oct 28 13:52:31 2016 +1100
9590
9591 Check if RIPEMD160 is disabled in OpenSSL.
9592
9593commit d924640d4c355d1b5eca1f4cc60146a9975dbbff
9594Author: Darren Tucker <dtucker@zip.com.au>
9595Date: Fri Oct 28 13:38:19 2016 +1100
9596
9597 Skip ssh1 specfic ciphers.
9598
9599 cipher-3des1.c and cipher-bf1.c are specific to sshv1 so don't even try
9600 to compile them when Protocol 1 is not enabled.
9601
9602commit 79d078e7a49caef746516d9710ec369ba45feab6
9603Author: jsg@openbsd.org <jsg@openbsd.org>
9604Date: Tue Oct 25 04:08:13 2016 +0000
9605
9606 upstream commit
9607
9608 Fix logic in add_local_forward() that inverted a test
9609 when code was refactored out into bind_permitted(). This broke ssh port
9610 forwarding for non-priv ports as a non root user.
9611
9612 ok dtucker@ 'looks good' deraadt@
9613
9614 Upstream-ID: ddb8156ca03cc99997de284ce7777536ff9570c9
9615
9616commit a903e315dee483e555c8a3a02c2946937f9b4e5d
9617Author: dtucker@openbsd.org <dtucker@openbsd.org>
9618Date: Mon Oct 24 01:09:17 2016 +0000
9619
9620 upstream commit
9621
9622 Remove dead breaks, found via opencoverage.net. ok
9623 deraadt@
9624
9625 Upstream-ID: ad9cc655829d67fad219762810770787ba913069
9626
9627commit b4e96b4c9bea4182846e4942ba2048e6d708ee54
9628Author: Darren Tucker <dtucker@zip.com.au>
9629Date: Wed Oct 26 08:43:25 2016 +1100
9630
9631 Use !=NULL instead of >0 for getdefaultproj.
9632
9633 getdefaultproj() returns a pointer so test it for NULL inequality
9634 instead of >0. Fixes compiler warning and is more correct. Patch from
9635 David Binderman.
9636
9637commit 1c4ef0b808d3d38232aeeb1cebb7e9a43def42c5
9638Author: dtucker@openbsd.org <dtucker@openbsd.org>
9639Date: Sun Oct 23 22:04:05 2016 +0000
9640
9641 upstream commit
9642
9643 Factor out "can bind to low ports" check into its own function. This will
9644 make it easier for Portable to support platforms with permissions models
9645 other than uid==0 (eg bz#2625). ok djm@, "doesn't offend me too much"
9646 deraadt@.
9647
9648 Upstream-ID: 86213df4183e92b8f189a6d2dac858c994bfface
9649
9650commit 0b9ee623d57e5de7e83e66fd61a7ba9a5be98894
9651Author: dtucker@openbsd.org <dtucker@openbsd.org>
9652Date: Wed Oct 19 23:21:56 2016 +0000
9653
9654 upstream commit
9655
9656 When tearing down ControlMaster connecctions, don't
9657 pollute stderr when LogLevel=quiet. Patch from Tim Kuijsten via tech@.
9658
9659 Upstream-ID: d9b3a68b2a7c2f2fc7f74678e29a4618d55ceced
9660
9661commit 09e6a7d8354224933febc08ddcbc2010f542284e
9662Author: Darren Tucker <dtucker@zip.com.au>
9663Date: Mon Oct 24 09:06:18 2016 +1100
9664
9665 Wrap stdint.h include in ifdef.
9666
9667commit 08d9e9516e587b25127545c029e5464b2e7f2919
9668Author: Darren Tucker <dtucker@zip.com.au>
9669Date: Fri Oct 21 09:46:46 2016 +1100
9670
9671 Fix formatting.
9672
9673commit 461f50e7ab8751d3a55e9158c44c13031db7ba1d
9674Author: Darren Tucker <dtucker@zip.com.au>
9675Date: Fri Oct 21 06:55:58 2016 +1100
9676
9677 Update links to https.
9678
9679 www.openssh.com now supports https and ftp.openbsd.org no longer
9680 supports ftp. Make all links to these https.
9681
9682commit dd4e7212a6141f37742de97795e79db51e4427ad
9683Author: Darren Tucker <dtucker@zip.com.au>
9684Date: Fri Oct 21 06:48:46 2016 +1100
9685
9686 Update host key generation examples.
9687
9688 Remove ssh1 host key generation, add ssh-keygen -A
9689
9690commit 6d49ae82634c67e9a4d4af882bee20b40bb8c639
9691Author: Darren Tucker <dtucker@zip.com.au>
9692Date: Fri Oct 21 05:22:55 2016 +1100
9693
9694 Update links.
9695
9696 Make links to openssh.com HTTPS now that it's supported, point release
9697 notes link to the HTML release notes page, and update a couple of other
9698 links and bits of text.
9699
9700commit fe0d1ca6ace06376625084b004ee533f2c2ea9d6
9701Author: Darren Tucker <dtucker@zip.com.au>
9702Date: Thu Oct 20 03:42:09 2016 +1100
9703
9704 Remote channels .orig and .rej files.
9705
9706 These files were incorrectly added during an OpenBSD sync.
diff --git a/config.h.in b/config.h.in
new file mode 100644
index 000000000..91b65db8f
--- /dev/null
+++ b/config.h.in
@@ -0,0 +1,1951 @@
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/* Define if your struct dirent expects you to allocate extra space for d_name
38 */
39#undef BROKEN_ONE_BYTE_DIRENT_D_NAME
40
41/* Can't do comparisons on readv */
42#undef BROKEN_READV_COMPARISON
43
44/* NetBSD read function is sometimes redirected, breaking atomicio comparisons
45 against it */
46#undef BROKEN_READ_COMPARISON
47
48/* realpath does not work with nonexistent files */
49#undef BROKEN_REALPATH
50
51/* Needed for NeXT */
52#undef BROKEN_SAVED_UIDS
53
54/* Define if your setregid() is broken */
55#undef BROKEN_SETREGID
56
57/* Define if your setresgid() is broken */
58#undef BROKEN_SETRESGID
59
60/* Define if your setresuid() is broken */
61#undef BROKEN_SETRESUID
62
63/* Define if your setreuid() is broken */
64#undef BROKEN_SETREUID
65
66/* LynxOS has broken setvbuf() implementation */
67#undef BROKEN_SETVBUF
68
69/* QNX shadow support is broken */
70#undef BROKEN_SHADOW_EXPIRE
71
72/* Define if your snprintf is busted */
73#undef BROKEN_SNPRINTF
74
75/* strndup broken, see APAR IY61211 */
76#undef BROKEN_STRNDUP
77
78/* strnlen broken, see APAR IY62551 */
79#undef BROKEN_STRNLEN
80
81/* strnvis detected broken */
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/* define if fflush(NULL) does not work */
139#undef FFLUSH_NULL_BUG
140
141/* File names may not contain backslash characters */
142#undef FILESYSTEM_NO_BACKSLASH
143
144/* fsid_t has member val */
145#undef FSID_HAS_VAL
146
147/* fsid_t has member __val */
148#undef FSID_HAS___VAL
149
150/* getpgrp takes one arg */
151#undef GETPGRP_VOID
152
153/* Conflicting defs for getspnam */
154#undef GETSPNAM_CONFLICTING_DEFS
155
156/* Define if your system glob() function has the GLOB_ALTDIRFUNC extension */
157#undef GLOB_HAS_ALTDIRFUNC
158
159/* Define if your system glob() function has gl_matchc options in glob_t */
160#undef GLOB_HAS_GL_MATCHC
161
162/* Define if your system glob() function has gl_statv options in glob_t */
163#undef GLOB_HAS_GL_STATV
164
165/* Define this if you want GSSAPI support in the version 2 protocol */
166#undef GSSAPI
167
168/* Define if you want to use shadow password expire field */
169#undef HAS_SHADOW_EXPIRE
170
171/* Define if your system uses access rights style file descriptor passing */
172#undef HAVE_ACCRIGHTS_IN_MSGHDR
173
174/* Define if you have ut_addr in utmp.h */
175#undef HAVE_ADDR_IN_UTMP
176
177/* Define if you have ut_addr in utmpx.h */
178#undef HAVE_ADDR_IN_UTMPX
179
180/* Define if you have ut_addr_v6 in utmp.h */
181#undef HAVE_ADDR_V6_IN_UTMP
182
183/* Define if you have ut_addr_v6 in utmpx.h */
184#undef HAVE_ADDR_V6_IN_UTMPX
185
186/* Define to 1 if you have the `arc4random' function. */
187#undef HAVE_ARC4RANDOM
188
189/* Define to 1 if you have the `arc4random_buf' function. */
190#undef HAVE_ARC4RANDOM_BUF
191
192/* Define to 1 if you have the `arc4random_stir' function. */
193#undef HAVE_ARC4RANDOM_STIR
194
195/* Define to 1 if you have the `arc4random_uniform' function. */
196#undef HAVE_ARC4RANDOM_UNIFORM
197
198/* Define to 1 if you have the `asprintf' function. */
199#undef HAVE_ASPRINTF
200
201/* OpenBSD's gcc has bounded */
202#undef HAVE_ATTRIBUTE__BOUNDED__
203
204/* Have attribute nonnull */
205#undef HAVE_ATTRIBUTE__NONNULL__
206
207/* OpenBSD's gcc has sentinel */
208#undef HAVE_ATTRIBUTE__SENTINEL__
209
210/* Define to 1 if you have the `aug_get_machine' function. */
211#undef HAVE_AUG_GET_MACHINE
212
213/* Define to 1 if you have the `b64_ntop' function. */
214#undef HAVE_B64_NTOP
215
216/* Define to 1 if you have the `b64_pton' function. */
217#undef HAVE_B64_PTON
218
219/* Define if you have the basename function. */
220#undef HAVE_BASENAME
221
222/* Define to 1 if you have the `bcopy' function. */
223#undef HAVE_BCOPY
224
225/* Define to 1 if you have the `bcrypt_pbkdf' function. */
226#undef HAVE_BCRYPT_PBKDF
227
228/* Define to 1 if you have the `bindresvport_sa' function. */
229#undef HAVE_BINDRESVPORT_SA
230
231/* Define to 1 if you have the `blf_enc' function. */
232#undef HAVE_BLF_ENC
233
234/* Define to 1 if you have the <blf.h> header file. */
235#undef HAVE_BLF_H
236
237/* Define to 1 if you have the `Blowfish_expand0state' function. */
238#undef HAVE_BLOWFISH_EXPAND0STATE
239
240/* Define to 1 if you have the `Blowfish_expandstate' function. */
241#undef HAVE_BLOWFISH_EXPANDSTATE
242
243/* Define to 1 if you have the `Blowfish_initstate' function. */
244#undef HAVE_BLOWFISH_INITSTATE
245
246/* Define to 1 if you have the `Blowfish_stream2word' function. */
247#undef HAVE_BLOWFISH_STREAM2WORD
248
249/* Define to 1 if you have the `BN_is_prime_ex' function. */
250#undef HAVE_BN_IS_PRIME_EX
251
252/* Define to 1 if you have the <bsd/libutil.h> header file. */
253#undef HAVE_BSD_LIBUTIL_H
254
255/* Define to 1 if you have the <bsm/audit.h> header file. */
256#undef HAVE_BSM_AUDIT_H
257
258/* Define to 1 if you have the <bstring.h> header file. */
259#undef HAVE_BSTRING_H
260
261/* Define to 1 if you have the `bzero' function. */
262#undef HAVE_BZERO
263
264/* calloc(0, x) returns NULL */
265#undef HAVE_CALLOC
266
267/* Define to 1 if you have the `cap_rights_limit' function. */
268#undef HAVE_CAP_RIGHTS_LIMIT
269
270/* Define to 1 if you have the `clock' function. */
271#undef HAVE_CLOCK
272
273/* Have clock_gettime */
274#undef HAVE_CLOCK_GETTIME
275
276/* define if you have clock_t data type */
277#undef HAVE_CLOCK_T
278
279/* Define to 1 if you have the `closefrom' function. */
280#undef HAVE_CLOSEFROM
281
282/* Define if gai_strerror() returns const char * */
283#undef HAVE_CONST_GAI_STRERROR_PROTO
284
285/* Define if your system uses ancillary data style file descriptor passing */
286#undef HAVE_CONTROL_IN_MSGHDR
287
288/* Define to 1 if you have the `crypt' function. */
289#undef HAVE_CRYPT
290
291/* Define to 1 if you have the <crypto/sha2.h> header file. */
292#undef HAVE_CRYPTO_SHA2_H
293
294/* Define to 1 if you have the <crypt.h> header file. */
295#undef HAVE_CRYPT_H
296
297/* Define if you are on Cygwin */
298#undef HAVE_CYGWIN
299
300/* Define if your libraries define daemon() */
301#undef HAVE_DAEMON
302
303/* Define to 1 if you have the declaration of `AI_NUMERICSERV', and to 0 if
304 you don't. */
305#undef HAVE_DECL_AI_NUMERICSERV
306
307/* Define to 1 if you have the declaration of `authenticate', and to 0 if you
308 don't. */
309#undef HAVE_DECL_AUTHENTICATE
310
311/* Define to 1 if you have the declaration of `bzero', and to 0 if you don't.
312 */
313#undef HAVE_DECL_BZERO
314
315/* Define to 1 if you have the declaration of `GLOB_NOMATCH', and to 0 if you
316 don't. */
317#undef HAVE_DECL_GLOB_NOMATCH
318
319/* Define to 1 if you have the declaration of `GSS_C_NT_HOSTBASED_SERVICE',
320 and to 0 if you don't. */
321#undef HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE
322
323/* Define to 1 if you have the declaration of `howmany', and to 0 if you
324 don't. */
325#undef HAVE_DECL_HOWMANY
326
327/* Define to 1 if you have the declaration of `h_errno', and to 0 if you
328 don't. */
329#undef HAVE_DECL_H_ERRNO
330
331/* Define to 1 if you have the declaration of `loginfailed', and to 0 if you
332 don't. */
333#undef HAVE_DECL_LOGINFAILED
334
335/* Define to 1 if you have the declaration of `loginrestrictions', and to 0 if
336 you don't. */
337#undef HAVE_DECL_LOGINRESTRICTIONS
338
339/* Define to 1 if you have the declaration of `loginsuccess', and to 0 if you
340 don't. */
341#undef HAVE_DECL_LOGINSUCCESS
342
343/* Define to 1 if you have the declaration of `MAXSYMLINKS', and to 0 if you
344 don't. */
345#undef HAVE_DECL_MAXSYMLINKS
346
347/* Define to 1 if you have the declaration of `NFDBITS', and to 0 if you
348 don't. */
349#undef HAVE_DECL_NFDBITS
350
351/* Define to 1 if you have the declaration of `offsetof', and to 0 if you
352 don't. */
353#undef HAVE_DECL_OFFSETOF
354
355/* Define to 1 if you have the declaration of `O_NONBLOCK', and to 0 if you
356 don't. */
357#undef HAVE_DECL_O_NONBLOCK
358
359/* Define to 1 if you have the declaration of `passwdexpired', and to 0 if you
360 don't. */
361#undef HAVE_DECL_PASSWDEXPIRED
362
363/* Define to 1 if you have the declaration of `readv', and to 0 if you don't.
364 */
365#undef HAVE_DECL_READV
366
367/* Define to 1 if you have the declaration of `setauthdb', and to 0 if you
368 don't. */
369#undef HAVE_DECL_SETAUTHDB
370
371/* Define to 1 if you have the declaration of `SHUT_RD', and to 0 if you
372 don't. */
373#undef HAVE_DECL_SHUT_RD
374
375/* Define to 1 if you have the declaration of `writev', and to 0 if you don't.
376 */
377#undef HAVE_DECL_WRITEV
378
379/* Define to 1 if you have the declaration of `_getlong', and to 0 if you
380 don't. */
381#undef HAVE_DECL__GETLONG
382
383/* Define to 1 if you have the declaration of `_getshort', and to 0 if you
384 don't. */
385#undef HAVE_DECL__GETSHORT
386
387/* Define to 1 if you have the `DES_crypt' function. */
388#undef HAVE_DES_CRYPT
389
390/* Define if you have /dev/ptmx */
391#undef HAVE_DEV_PTMX
392
393/* Define if you have /dev/ptc */
394#undef HAVE_DEV_PTS_AND_PTC
395
396/* Define if libcrypto has DH_get0_key */
397#undef HAVE_DH_GET0_KEY
398
399/* Define if libcrypto has DH_get0_pqg */
400#undef HAVE_DH_GET0_PQG
401
402/* Define if libcrypto has DH_set0_key */
403#undef HAVE_DH_SET0_KEY
404
405/* Define if libcrypto has DH_set0_pqg */
406#undef HAVE_DH_SET0_PQG
407
408/* Define if libcrypto has DH_set_length */
409#undef HAVE_DH_SET_LENGTH
410
411/* Define to 1 if you have the <dirent.h> header file. */
412#undef HAVE_DIRENT_H
413
414/* Define to 1 if you have the `dirfd' function. */
415#undef HAVE_DIRFD
416
417/* Define to 1 if you have the `dirname' function. */
418#undef HAVE_DIRNAME
419
420/* Define to 1 if you have the `DSA_generate_parameters_ex' function. */
421#undef HAVE_DSA_GENERATE_PARAMETERS_EX
422
423/* Define if libcrypto has DSA_get0_key */
424#undef HAVE_DSA_GET0_KEY
425
426/* Define if libcrypto has DSA_get0_pqg */
427#undef HAVE_DSA_GET0_PQG
428
429/* Define if libcrypto has DSA_set0_key */
430#undef HAVE_DSA_SET0_KEY
431
432/* Define if libcrypto has DSA_set0_pqg */
433#undef HAVE_DSA_SET0_PQG
434
435/* Define if libcrypto has DSA_SIG_get0 */
436#undef HAVE_DSA_SIG_GET0
437
438/* Define if libcrypto has DSA_SIG_set0 */
439#undef HAVE_DSA_SIG_SET0
440
441/* Define if libcrypto has ECDSA_SIG_get0 */
442#undef HAVE_ECDSA_SIG_GET0
443
444/* Define if libcrypto has ECDSA_SIG_set0 */
445#undef HAVE_ECDSA_SIG_SET0
446
447/* Define to 1 if you have the <elf.h> header file. */
448#undef HAVE_ELF_H
449
450/* Define to 1 if you have the `endgrent' function. */
451#undef HAVE_ENDGRENT
452
453/* Define to 1 if you have the <endian.h> header file. */
454#undef HAVE_ENDIAN_H
455
456/* Define to 1 if you have the `endutent' function. */
457#undef HAVE_ENDUTENT
458
459/* Define to 1 if you have the `endutxent' function. */
460#undef HAVE_ENDUTXENT
461
462/* Define to 1 if you have the `err' function. */
463#undef HAVE_ERR
464
465/* Define to 1 if you have the `errx' function. */
466#undef HAVE_ERRX
467
468/* Define to 1 if you have the <err.h> header file. */
469#undef HAVE_ERR_H
470
471/* Define if your system has /etc/default/login */
472#undef HAVE_ETC_DEFAULT_LOGIN
473
474/* Define if libcrypto has EVP_CIPHER_CTX_ctrl */
475#undef HAVE_EVP_CIPHER_CTX_CTRL
476
477/* Define if libcrypto has EVP_CIPHER_CTX_set_iv */
478#undef HAVE_EVP_CIPHER_CTX_GET_IV
479
480/* Define if libcrypto has EVP_CIPHER_CTX_iv */
481#undef HAVE_EVP_CIPHER_CTX_IV
482
483/* Define if libcrypto has EVP_CIPHER_CTX_iv_noconst */
484#undef HAVE_EVP_CIPHER_CTX_IV_NOCONST
485
486/* Define to 1 if you have the `EVP_DigestFinal_ex' function. */
487#undef HAVE_EVP_DIGESTFINAL_EX
488
489/* Define to 1 if you have the `EVP_DigestInit_ex' function. */
490#undef HAVE_EVP_DIGESTINIT_EX
491
492/* Define to 1 if you have the `EVP_MD_CTX_cleanup' function. */
493#undef HAVE_EVP_MD_CTX_CLEANUP
494
495/* Define to 1 if you have the `EVP_MD_CTX_copy_ex' function. */
496#undef HAVE_EVP_MD_CTX_COPY_EX
497
498/* Define if libcrypto has EVP_MD_CTX_free */
499#undef HAVE_EVP_MD_CTX_FREE
500
501/* Define to 1 if you have the `EVP_MD_CTX_init' function. */
502#undef HAVE_EVP_MD_CTX_INIT
503
504/* Define if libcrypto has EVP_MD_CTX_new */
505#undef HAVE_EVP_MD_CTX_NEW
506
507/* Define if libcrypto has EVP_PKEY_get0_RSA */
508#undef HAVE_EVP_PKEY_GET0_RSA
509
510/* Define to 1 if you have the `EVP_ripemd160' function. */
511#undef HAVE_EVP_RIPEMD160
512
513/* Define to 1 if you have the `EVP_sha256' function. */
514#undef HAVE_EVP_SHA256
515
516/* Define if you have ut_exit in utmp.h */
517#undef HAVE_EXIT_IN_UTMP
518
519/* Define to 1 if you have the `explicit_bzero' function. */
520#undef HAVE_EXPLICIT_BZERO
521
522/* Define to 1 if you have the `fchmod' function. */
523#undef HAVE_FCHMOD
524
525/* Define to 1 if you have the `fchown' function. */
526#undef HAVE_FCHOWN
527
528/* Use F_CLOSEM fcntl for closefrom */
529#undef HAVE_FCNTL_CLOSEM
530
531/* Define to 1 if you have the <fcntl.h> header file. */
532#undef HAVE_FCNTL_H
533
534/* Define to 1 if the system has the type `fd_mask'. */
535#undef HAVE_FD_MASK
536
537/* Define to 1 if you have the <features.h> header file. */
538#undef HAVE_FEATURES_H
539
540/* Define to 1 if you have the <floatingpoint.h> header file. */
541#undef HAVE_FLOATINGPOINT_H
542
543/* Define to 1 if you have the `flock' function. */
544#undef HAVE_FLOCK
545
546/* Define to 1 if you have the `fmt_scaled' function. */
547#undef HAVE_FMT_SCALED
548
549/* Define to 1 if you have the `freeaddrinfo' function. */
550#undef HAVE_FREEADDRINFO
551
552/* Define to 1 if you have the `freezero' function. */
553#undef HAVE_FREEZERO
554
555/* Define to 1 if the system has the type `fsblkcnt_t'. */
556#undef HAVE_FSBLKCNT_T
557
558/* Define to 1 if the system has the type `fsfilcnt_t'. */
559#undef HAVE_FSFILCNT_T
560
561/* Define to 1 if you have the `fstatfs' function. */
562#undef HAVE_FSTATFS
563
564/* Define to 1 if you have the `fstatvfs' function. */
565#undef HAVE_FSTATVFS
566
567/* Define to 1 if you have the `futimes' function. */
568#undef HAVE_FUTIMES
569
570/* Define to 1 if you have the `gai_strerror' function. */
571#undef HAVE_GAI_STRERROR
572
573/* Define to 1 if you have the `getaddrinfo' function. */
574#undef HAVE_GETADDRINFO
575
576/* Define to 1 if you have the `getaudit' function. */
577#undef HAVE_GETAUDIT
578
579/* Define to 1 if you have the `getaudit_addr' function. */
580#undef HAVE_GETAUDIT_ADDR
581
582/* Define to 1 if you have the `getcwd' function. */
583#undef HAVE_GETCWD
584
585/* Define to 1 if you have the `getgrouplist' function. */
586#undef HAVE_GETGROUPLIST
587
588/* Define to 1 if you have the `getgrset' function. */
589#undef HAVE_GETGRSET
590
591/* Define to 1 if you have the `getlastlogxbyname' function. */
592#undef HAVE_GETLASTLOGXBYNAME
593
594/* Define to 1 if you have the `getline' function. */
595#undef HAVE_GETLINE
596
597/* Define to 1 if you have the `getluid' function. */
598#undef HAVE_GETLUID
599
600/* Define to 1 if you have the `getnameinfo' function. */
601#undef HAVE_GETNAMEINFO
602
603/* Define to 1 if you have the `getopt' function. */
604#undef HAVE_GETOPT
605
606/* Define to 1 if you have the <getopt.h> header file. */
607#undef HAVE_GETOPT_H
608
609/* Define if your getopt(3) defines and uses optreset */
610#undef HAVE_GETOPT_OPTRESET
611
612/* Define if your libraries define getpagesize() */
613#undef HAVE_GETPAGESIZE
614
615/* Define to 1 if you have the `getpeereid' function. */
616#undef HAVE_GETPEEREID
617
618/* Define to 1 if you have the `getpeerucred' function. */
619#undef HAVE_GETPEERUCRED
620
621/* Define to 1 if you have the `getpgid' function. */
622#undef HAVE_GETPGID
623
624/* Define to 1 if you have the `getpgrp' function. */
625#undef HAVE_GETPGRP
626
627/* Define to 1 if you have the `getpwanam' function. */
628#undef HAVE_GETPWANAM
629
630/* Define to 1 if you have the `getrandom' function. */
631#undef HAVE_GETRANDOM
632
633/* Define to 1 if you have the `getrlimit' function. */
634#undef HAVE_GETRLIMIT
635
636/* Define if getrrsetbyname() exists */
637#undef HAVE_GETRRSETBYNAME
638
639/* Define to 1 if you have the `getseuserbyname' function. */
640#undef HAVE_GETSEUSERBYNAME
641
642/* Define to 1 if you have the `getsid' function. */
643#undef HAVE_GETSID
644
645/* Define to 1 if you have the `gettimeofday' function. */
646#undef HAVE_GETTIMEOFDAY
647
648/* Define to 1 if you have the `getttyent' function. */
649#undef HAVE_GETTTYENT
650
651/* Define to 1 if you have the `getutent' function. */
652#undef HAVE_GETUTENT
653
654/* Define to 1 if you have the `getutid' function. */
655#undef HAVE_GETUTID
656
657/* Define to 1 if you have the `getutline' function. */
658#undef HAVE_GETUTLINE
659
660/* Define to 1 if you have the `getutxent' function. */
661#undef HAVE_GETUTXENT
662
663/* Define to 1 if you have the `getutxid' function. */
664#undef HAVE_GETUTXID
665
666/* Define to 1 if you have the `getutxline' function. */
667#undef HAVE_GETUTXLINE
668
669/* Define to 1 if you have the `getutxuser' function. */
670#undef HAVE_GETUTXUSER
671
672/* Define to 1 if you have the `get_default_context_with_level' function. */
673#undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL
674
675/* Define to 1 if you have the `glob' function. */
676#undef HAVE_GLOB
677
678/* Define to 1 if you have the <glob.h> header file. */
679#undef HAVE_GLOB_H
680
681/* Define to 1 if you have the `group_from_gid' function. */
682#undef HAVE_GROUP_FROM_GID
683
684/* Define to 1 if you have the <gssapi_generic.h> header file. */
685#undef HAVE_GSSAPI_GENERIC_H
686
687/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
688#undef HAVE_GSSAPI_GSSAPI_GENERIC_H
689
690/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
691#undef HAVE_GSSAPI_GSSAPI_H
692
693/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
694#undef HAVE_GSSAPI_GSSAPI_KRB5_H
695
696/* Define to 1 if you have the <gssapi.h> header file. */
697#undef HAVE_GSSAPI_H
698
699/* Define to 1 if you have the <gssapi_krb5.h> header file. */
700#undef HAVE_GSSAPI_KRB5_H
701
702/* Define if HEADER.ad exists in arpa/nameser.h */
703#undef HAVE_HEADER_AD
704
705/* Define to 1 if you have the `HMAC_CTX_init' function. */
706#undef HAVE_HMAC_CTX_INIT
707
708/* Define if you have ut_host in utmp.h */
709#undef HAVE_HOST_IN_UTMP
710
711/* Define if you have ut_host in utmpx.h */
712#undef HAVE_HOST_IN_UTMPX
713
714/* Define to 1 if you have the <iaf.h> header file. */
715#undef HAVE_IAF_H
716
717/* Define to 1 if you have the <ia.h> header file. */
718#undef HAVE_IA_H
719
720/* Define if you have ut_id in utmp.h */
721#undef HAVE_ID_IN_UTMP
722
723/* Define if you have ut_id in utmpx.h */
724#undef HAVE_ID_IN_UTMPX
725
726/* Define to 1 if you have the <ifaddrs.h> header file. */
727#undef HAVE_IFADDRS_H
728
729/* Define to 1 if you have the `inet_aton' function. */
730#undef HAVE_INET_ATON
731
732/* Define to 1 if you have the `inet_ntoa' function. */
733#undef HAVE_INET_NTOA
734
735/* Define to 1 if you have the `inet_ntop' function. */
736#undef HAVE_INET_NTOP
737
738/* Define to 1 if you have the `innetgr' function. */
739#undef HAVE_INNETGR
740
741/* define if you have int64_t data type */
742#undef HAVE_INT64_T
743
744/* Define to 1 if the system has the type `intmax_t'. */
745#undef HAVE_INTMAX_T
746
747/* Define to 1 if you have the <inttypes.h> header file. */
748#undef HAVE_INTTYPES_H
749
750/* define if you have intxx_t data type */
751#undef HAVE_INTXX_T
752
753/* Define to 1 if the system has the type `in_addr_t'. */
754#undef HAVE_IN_ADDR_T
755
756/* Define to 1 if the system has the type `in_port_t'. */
757#undef HAVE_IN_PORT_T
758
759/* Define if you have isblank(3C). */
760#undef HAVE_ISBLANK
761
762/* Define to 1 if you have the `krb5_cc_new_unique' function. */
763#undef HAVE_KRB5_CC_NEW_UNIQUE
764
765/* Define to 1 if you have the `krb5_free_error_message' function. */
766#undef HAVE_KRB5_FREE_ERROR_MESSAGE
767
768/* Define to 1 if you have the `krb5_get_error_message' function. */
769#undef HAVE_KRB5_GET_ERROR_MESSAGE
770
771/* Define to 1 if you have the <langinfo.h> header file. */
772#undef HAVE_LANGINFO_H
773
774/* Define to 1 if you have the <lastlog.h> header file. */
775#undef HAVE_LASTLOG_H
776
777/* Define if you want ldns support */
778#undef HAVE_LDNS
779
780/* Define to 1 if you have the <libaudit.h> header file. */
781#undef HAVE_LIBAUDIT_H
782
783/* Define to 1 if you have the `bsm' library (-lbsm). */
784#undef HAVE_LIBBSM
785
786/* Define to 1 if you have the `crypt' library (-lcrypt). */
787#undef HAVE_LIBCRYPT
788
789/* Define to 1 if you have the `dl' library (-ldl). */
790#undef HAVE_LIBDL
791
792/* Define to 1 if you have the <libgen.h> header file. */
793#undef HAVE_LIBGEN_H
794
795/* Define if system has libiaf that supports set_id */
796#undef HAVE_LIBIAF
797
798/* Define to 1 if you have the `network' library (-lnetwork). */
799#undef HAVE_LIBNETWORK
800
801/* Define to 1 if you have the `pam' library (-lpam). */
802#undef HAVE_LIBPAM
803
804/* Define to 1 if you have the `socket' library (-lsocket). */
805#undef HAVE_LIBSOCKET
806
807/* Define to 1 if you have the <libutil.h> header file. */
808#undef HAVE_LIBUTIL_H
809
810/* Define to 1 if you have the `xnet' library (-lxnet). */
811#undef HAVE_LIBXNET
812
813/* Define to 1 if you have the `z' library (-lz). */
814#undef HAVE_LIBZ
815
816/* Define to 1 if you have the <limits.h> header file. */
817#undef HAVE_LIMITS_H
818
819/* Define to 1 if you have the <linux/audit.h> header file. */
820#undef HAVE_LINUX_AUDIT_H
821
822/* Define to 1 if you have the <linux/filter.h> header file. */
823#undef HAVE_LINUX_FILTER_H
824
825/* Define to 1 if you have the <linux/if_tun.h> header file. */
826#undef HAVE_LINUX_IF_TUN_H
827
828/* Define to 1 if you have the <linux/seccomp.h> header file. */
829#undef HAVE_LINUX_SECCOMP_H
830
831/* Define to 1 if you have the `llabs' function. */
832#undef HAVE_LLABS
833
834/* Define to 1 if you have the <locale.h> header file. */
835#undef HAVE_LOCALE_H
836
837/* Define to 1 if you have the `login' function. */
838#undef HAVE_LOGIN
839
840/* Define to 1 if you have the <login_cap.h> header file. */
841#undef HAVE_LOGIN_CAP_H
842
843/* Define to 1 if you have the `login_getcapbool' function. */
844#undef HAVE_LOGIN_GETCAPBOOL
845
846/* Define to 1 if you have the <login.h> header file. */
847#undef HAVE_LOGIN_H
848
849/* Define to 1 if you have the `logout' function. */
850#undef HAVE_LOGOUT
851
852/* Define to 1 if you have the `logwtmp' function. */
853#undef HAVE_LOGWTMP
854
855/* Define to 1 if the system has the type `long double'. */
856#undef HAVE_LONG_DOUBLE
857
858/* Define to 1 if the system has the type `long long'. */
859#undef HAVE_LONG_LONG
860
861/* Define to 1 if you have the <maillock.h> header file. */
862#undef HAVE_MAILLOCK_H
863
864/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
865 to 0 otherwise. */
866#undef HAVE_MALLOC
867
868/* Define to 1 if you have the `mblen' function. */
869#undef HAVE_MBLEN
870
871/* Define to 1 if you have the `mbtowc' function. */
872#undef HAVE_MBTOWC
873
874/* Define to 1 if you have the `md5_crypt' function. */
875#undef HAVE_MD5_CRYPT
876
877/* Define if you want to allow MD5 passwords */
878#undef HAVE_MD5_PASSWORDS
879
880/* Define to 1 if you have the `memmove' function. */
881#undef HAVE_MEMMOVE
882
883/* Define to 1 if you have the <memory.h> header file. */
884#undef HAVE_MEMORY_H
885
886/* Define to 1 if you have the `memset_s' function. */
887#undef HAVE_MEMSET_S
888
889/* Define to 1 if you have the `mkdtemp' function. */
890#undef HAVE_MKDTEMP
891
892/* define if you have mode_t data type */
893#undef HAVE_MODE_T
894
895/* Some systems put nanosleep outside of libc */
896#undef HAVE_NANOSLEEP
897
898/* Define to 1 if you have the <ndir.h> header file. */
899#undef HAVE_NDIR_H
900
901/* Define to 1 if you have the <netdb.h> header file. */
902#undef HAVE_NETDB_H
903
904/* Define to 1 if you have the <netgroup.h> header file. */
905#undef HAVE_NETGROUP_H
906
907/* Define to 1 if you have the <net/if_tun.h> header file. */
908#undef HAVE_NET_IF_TUN_H
909
910/* Define to 1 if you have the <net/route.h> header file. */
911#undef HAVE_NET_ROUTE_H
912
913/* Define if you are on NeXT */
914#undef HAVE_NEXT
915
916/* Define to 1 if you have the `ngetaddrinfo' function. */
917#undef HAVE_NGETADDRINFO
918
919/* Define to 1 if you have the `nl_langinfo' function. */
920#undef HAVE_NL_LANGINFO
921
922/* Define to 1 if you have the `nsleep' function. */
923#undef HAVE_NSLEEP
924
925/* Define to 1 if you have the `ogetaddrinfo' function. */
926#undef HAVE_OGETADDRINFO
927
928/* Define if you have an old version of PAM which takes only one argument to
929 pam_strerror */
930#undef HAVE_OLD_PAM
931
932/* Define to 1 if you have the `openlog_r' function. */
933#undef HAVE_OPENLOG_R
934
935/* Define to 1 if you have the `openpty' function. */
936#undef HAVE_OPENPTY
937
938/* Define if your ssl headers are included with #include <openssl/header.h> */
939#undef HAVE_OPENSSL
940
941/* Define if you have Digital Unix Security Integration Architecture */
942#undef HAVE_OSF_SIA
943
944/* Define to 1 if you have the `pam_getenvlist' function. */
945#undef HAVE_PAM_GETENVLIST
946
947/* Define to 1 if you have the <pam/pam_appl.h> header file. */
948#undef HAVE_PAM_PAM_APPL_H
949
950/* Define to 1 if you have the `pam_putenv' function. */
951#undef HAVE_PAM_PUTENV
952
953/* Define to 1 if you have the <paths.h> header file. */
954#undef HAVE_PATHS_H
955
956/* Define if you have ut_pid in utmp.h */
957#undef HAVE_PID_IN_UTMP
958
959/* define if you have pid_t data type */
960#undef HAVE_PID_T
961
962/* Define to 1 if you have the `pledge' function. */
963#undef HAVE_PLEDGE
964
965/* Define to 1 if you have the `poll' function. */
966#undef HAVE_POLL
967
968/* Define to 1 if you have the <poll.h> header file. */
969#undef HAVE_POLL_H
970
971/* Define to 1 if you have the `prctl' function. */
972#undef HAVE_PRCTL
973
974/* Define to 1 if you have the `priv_basicset' function. */
975#undef HAVE_PRIV_BASICSET
976
977/* Define to 1 if you have the <priv.h> header file. */
978#undef HAVE_PRIV_H
979
980/* Define if you have /proc/$pid/fd */
981#undef HAVE_PROC_PID
982
983/* Define to 1 if you have the `pstat' function. */
984#undef HAVE_PSTAT
985
986/* Define to 1 if you have the <pty.h> header file. */
987#undef HAVE_PTY_H
988
989/* Define to 1 if you have the `pututline' function. */
990#undef HAVE_PUTUTLINE
991
992/* Define to 1 if you have the `pututxline' function. */
993#undef HAVE_PUTUTXLINE
994
995/* Define to 1 if you have the `raise' function. */
996#undef HAVE_RAISE
997
998/* Define to 1 if you have the `readpassphrase' function. */
999#undef HAVE_READPASSPHRASE
1000
1001/* Define to 1 if you have the <readpassphrase.h> header file. */
1002#undef HAVE_READPASSPHRASE_H
1003
1004/* Define to 1 if your system has a GNU libc compatible `realloc' function,
1005 and to 0 otherwise. */
1006#undef HAVE_REALLOC
1007
1008/* Define to 1 if you have the `reallocarray' function. */
1009#undef HAVE_REALLOCARRAY
1010
1011/* Define to 1 if you have the `realpath' function. */
1012#undef HAVE_REALPATH
1013
1014/* Define to 1 if you have the `recallocarray' function. */
1015#undef HAVE_RECALLOCARRAY
1016
1017/* Define to 1 if you have the `recvmsg' function. */
1018#undef HAVE_RECVMSG
1019
1020/* sys/resource.h has RLIMIT_NPROC */
1021#undef HAVE_RLIMIT_NPROC
1022
1023/* Define to 1 if you have the <rpc/types.h> header file. */
1024#undef HAVE_RPC_TYPES_H
1025
1026/* Define to 1 if you have the `rresvport_af' function. */
1027#undef HAVE_RRESVPORT_AF
1028
1029/* Define to 1 if you have the `RSA_generate_key_ex' function. */
1030#undef HAVE_RSA_GENERATE_KEY_EX
1031
1032/* Define if libcrypto has RSA_get0_crt_params */
1033#undef HAVE_RSA_GET0_CRT_PARAMS
1034
1035/* Define if libcrypto has RSA_get0_factors */
1036#undef HAVE_RSA_GET0_FACTORS
1037
1038/* Define if libcrypto has RSA_get0_key */
1039#undef HAVE_RSA_GET0_KEY
1040
1041/* Define to 1 if you have the `RSA_get_default_method' function. */
1042#undef HAVE_RSA_GET_DEFAULT_METHOD
1043
1044/* Define if libcrypto has RSA_meth_dup */
1045#undef HAVE_RSA_METH_DUP
1046
1047/* Define if libcrypto has RSA_meth_free */
1048#undef HAVE_RSA_METH_FREE
1049
1050/* Define if libcrypto has RSA_meth_get_finish */
1051#undef HAVE_RSA_METH_GET_FINISH
1052
1053/* Define if libcrypto has RSA_meth_set1_name */
1054#undef HAVE_RSA_METH_SET1_NAME
1055
1056/* Define if libcrypto has RSA_meth_set_finish */
1057#undef HAVE_RSA_METH_SET_FINISH
1058
1059/* Define if libcrypto has RSA_meth_set_priv_dec */
1060#undef HAVE_RSA_METH_SET_PRIV_DEC
1061
1062/* Define if libcrypto has RSA_meth_set_priv_enc */
1063#undef HAVE_RSA_METH_SET_PRIV_ENC
1064
1065/* Define if libcrypto has RSA_get0_srt_params */
1066#undef HAVE_RSA_SET0_CRT_PARAMS
1067
1068/* Define if libcrypto has RSA_set0_factors */
1069#undef HAVE_RSA_SET0_FACTORS
1070
1071/* Define if libcrypto has RSA_set0_key */
1072#undef HAVE_RSA_SET0_KEY
1073
1074/* Define to 1 if you have the <sandbox.h> header file. */
1075#undef HAVE_SANDBOX_H
1076
1077/* Define to 1 if you have the `sandbox_init' function. */
1078#undef HAVE_SANDBOX_INIT
1079
1080/* define if you have sa_family_t data type */
1081#undef HAVE_SA_FAMILY_T
1082
1083/* Define to 1 if you have the `scan_scaled' function. */
1084#undef HAVE_SCAN_SCALED
1085
1086/* Define if you have SecureWare-based protected password database */
1087#undef HAVE_SECUREWARE
1088
1089/* Define to 1 if you have the <security/pam_appl.h> header file. */
1090#undef HAVE_SECURITY_PAM_APPL_H
1091
1092/* Define to 1 if you have the `sendmsg' function. */
1093#undef HAVE_SENDMSG
1094
1095/* Define to 1 if you have the `setauthdb' function. */
1096#undef HAVE_SETAUTHDB
1097
1098/* Define to 1 if you have the `setdtablesize' function. */
1099#undef HAVE_SETDTABLESIZE
1100
1101/* Define to 1 if you have the `setegid' function. */
1102#undef HAVE_SETEGID
1103
1104/* Define to 1 if you have the `setenv' function. */
1105#undef HAVE_SETENV
1106
1107/* Define to 1 if you have the `seteuid' function. */
1108#undef HAVE_SETEUID
1109
1110/* Define to 1 if you have the `setgroupent' function. */
1111#undef HAVE_SETGROUPENT
1112
1113/* Define to 1 if you have the `setgroups' function. */
1114#undef HAVE_SETGROUPS
1115
1116/* Define to 1 if you have the `setlinebuf' function. */
1117#undef HAVE_SETLINEBUF
1118
1119/* Define to 1 if you have the `setlogin' function. */
1120#undef HAVE_SETLOGIN
1121
1122/* Define to 1 if you have the `setluid' function. */
1123#undef HAVE_SETLUID
1124
1125/* Define to 1 if you have the `setpassent' function. */
1126#undef HAVE_SETPASSENT
1127
1128/* Define to 1 if you have the `setpcred' function. */
1129#undef HAVE_SETPCRED
1130
1131/* Define to 1 if you have the `setpflags' function. */
1132#undef HAVE_SETPFLAGS
1133
1134/* Define to 1 if you have the `setppriv' function. */
1135#undef HAVE_SETPPRIV
1136
1137/* Define to 1 if you have the `setproctitle' function. */
1138#undef HAVE_SETPROCTITLE
1139
1140/* Define to 1 if you have the `setregid' function. */
1141#undef HAVE_SETREGID
1142
1143/* Define to 1 if you have the `setresgid' function. */
1144#undef HAVE_SETRESGID
1145
1146/* Define to 1 if you have the `setresuid' function. */
1147#undef HAVE_SETRESUID
1148
1149/* Define to 1 if you have the `setreuid' function. */
1150#undef HAVE_SETREUID
1151
1152/* Define to 1 if you have the `setrlimit' function. */
1153#undef HAVE_SETRLIMIT
1154
1155/* Define to 1 if you have the `setsid' function. */
1156#undef HAVE_SETSID
1157
1158/* Define to 1 if you have the `setutent' function. */
1159#undef HAVE_SETUTENT
1160
1161/* Define to 1 if you have the `setutxdb' function. */
1162#undef HAVE_SETUTXDB
1163
1164/* Define to 1 if you have the `setutxent' function. */
1165#undef HAVE_SETUTXENT
1166
1167/* Define to 1 if you have the `setvbuf' function. */
1168#undef HAVE_SETVBUF
1169
1170/* Define to 1 if you have the `set_id' function. */
1171#undef HAVE_SET_ID
1172
1173/* Define to 1 if you have the `SHA256_Update' function. */
1174#undef HAVE_SHA256_UPDATE
1175
1176/* Define to 1 if you have the <sha2.h> header file. */
1177#undef HAVE_SHA2_H
1178
1179/* Define to 1 if you have the <shadow.h> header file. */
1180#undef HAVE_SHADOW_H
1181
1182/* Define to 1 if you have the `sigaction' function. */
1183#undef HAVE_SIGACTION
1184
1185/* Define to 1 if you have the `sigvec' function. */
1186#undef HAVE_SIGVEC
1187
1188/* Define to 1 if the system has the type `sig_atomic_t'. */
1189#undef HAVE_SIG_ATOMIC_T
1190
1191/* define if you have size_t data type */
1192#undef HAVE_SIZE_T
1193
1194/* Define to 1 if you have the `snprintf' function. */
1195#undef HAVE_SNPRINTF
1196
1197/* Define to 1 if you have the `socketpair' function. */
1198#undef HAVE_SOCKETPAIR
1199
1200/* Have PEERCRED socket option */
1201#undef HAVE_SO_PEERCRED
1202
1203/* define if you have ssize_t data type */
1204#undef HAVE_SSIZE_T
1205
1206/* Fields in struct sockaddr_storage */
1207#undef HAVE_SS_FAMILY_IN_SS
1208
1209/* Define to 1 if you have the `statfs' function. */
1210#undef HAVE_STATFS
1211
1212/* Define to 1 if you have the `statvfs' function. */
1213#undef HAVE_STATVFS
1214
1215/* Define to 1 if you have the <stddef.h> header file. */
1216#undef HAVE_STDDEF_H
1217
1218/* Define to 1 if you have the <stdint.h> header file. */
1219#undef HAVE_STDINT_H
1220
1221/* Define to 1 if you have the <stdlib.h> header file. */
1222#undef HAVE_STDLIB_H
1223
1224/* Define to 1 if you have the `strcasestr' function. */
1225#undef HAVE_STRCASESTR
1226
1227/* Define to 1 if you have the `strdup' function. */
1228#undef HAVE_STRDUP
1229
1230/* Define to 1 if you have the `strerror' function. */
1231#undef HAVE_STRERROR
1232
1233/* Define to 1 if you have the `strftime' function. */
1234#undef HAVE_STRFTIME
1235
1236/* Silly mkstemp() */
1237#undef HAVE_STRICT_MKSTEMP
1238
1239/* Define to 1 if you have the <strings.h> header file. */
1240#undef HAVE_STRINGS_H
1241
1242/* Define to 1 if you have the <string.h> header file. */
1243#undef HAVE_STRING_H
1244
1245/* Define to 1 if you have the `strlcat' function. */
1246#undef HAVE_STRLCAT
1247
1248/* Define to 1 if you have the `strlcpy' function. */
1249#undef HAVE_STRLCPY
1250
1251/* Define to 1 if you have the `strmode' function. */
1252#undef HAVE_STRMODE
1253
1254/* Define to 1 if you have the `strndup' function. */
1255#undef HAVE_STRNDUP
1256
1257/* Define to 1 if you have the `strnlen' function. */
1258#undef HAVE_STRNLEN
1259
1260/* Define to 1 if you have the `strnvis' function. */
1261#undef HAVE_STRNVIS
1262
1263/* Define to 1 if you have the `strptime' function. */
1264#undef HAVE_STRPTIME
1265
1266/* Define to 1 if you have the `strsep' function. */
1267#undef HAVE_STRSEP
1268
1269/* Define to 1 if you have the `strsignal' function. */
1270#undef HAVE_STRSIGNAL
1271
1272/* Define to 1 if you have the `strtoll' function. */
1273#undef HAVE_STRTOLL
1274
1275/* Define to 1 if you have the `strtonum' function. */
1276#undef HAVE_STRTONUM
1277
1278/* Define to 1 if you have the `strtoul' function. */
1279#undef HAVE_STRTOUL
1280
1281/* Define to 1 if you have the `strtoull' function. */
1282#undef HAVE_STRTOULL
1283
1284/* define if you have struct addrinfo data type */
1285#undef HAVE_STRUCT_ADDRINFO
1286
1287/* define if you have struct in6_addr data type */
1288#undef HAVE_STRUCT_IN6_ADDR
1289
1290/* Define to 1 if `pw_change' is a member of `struct passwd'. */
1291#undef HAVE_STRUCT_PASSWD_PW_CHANGE
1292
1293/* Define to 1 if `pw_class' is a member of `struct passwd'. */
1294#undef HAVE_STRUCT_PASSWD_PW_CLASS
1295
1296/* Define to 1 if `pw_expire' is a member of `struct passwd'. */
1297#undef HAVE_STRUCT_PASSWD_PW_EXPIRE
1298
1299/* Define to 1 if `pw_gecos' is a member of `struct passwd'. */
1300#undef HAVE_STRUCT_PASSWD_PW_GECOS
1301
1302/* define if you have struct sockaddr_in6 data type */
1303#undef HAVE_STRUCT_SOCKADDR_IN6
1304
1305/* Define to 1 if `sin6_scope_id' is a member of `struct sockaddr_in6'. */
1306#undef HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID
1307
1308/* define if you have struct sockaddr_storage data type */
1309#undef HAVE_STRUCT_SOCKADDR_STORAGE
1310
1311/* Define to 1 if `f_flags' is a member of `struct statfs'. */
1312#undef HAVE_STRUCT_STATFS_F_FLAGS
1313
1314/* Define to 1 if `st_blksize' is a member of `struct stat'. */
1315#undef HAVE_STRUCT_STAT_ST_BLKSIZE
1316
1317/* Define to 1 if `st_mtim' is a member of `struct stat'. */
1318#undef HAVE_STRUCT_STAT_ST_MTIM
1319
1320/* Define to 1 if `st_mtime' is a member of `struct stat'. */
1321#undef HAVE_STRUCT_STAT_ST_MTIME
1322
1323/* Define to 1 if the system has the type `struct timespec'. */
1324#undef HAVE_STRUCT_TIMESPEC
1325
1326/* define if you have struct timeval */
1327#undef HAVE_STRUCT_TIMEVAL
1328
1329/* Define to 1 if you have the `swap32' function. */
1330#undef HAVE_SWAP32
1331
1332/* Define to 1 if you have the `sysconf' function. */
1333#undef HAVE_SYSCONF
1334
1335/* Define if you have syslen in utmpx.h */
1336#undef HAVE_SYSLEN_IN_UTMPX
1337
1338/* Define to 1 if you have the <sys/audit.h> header file. */
1339#undef HAVE_SYS_AUDIT_H
1340
1341/* Define to 1 if you have the <sys/bitypes.h> header file. */
1342#undef HAVE_SYS_BITYPES_H
1343
1344/* Define to 1 if you have the <sys/bsdtty.h> header file. */
1345#undef HAVE_SYS_BSDTTY_H
1346
1347/* Define to 1 if you have the <sys/capsicum.h> header file. */
1348#undef HAVE_SYS_CAPSICUM_H
1349
1350/* Define to 1 if you have the <sys/cdefs.h> header file. */
1351#undef HAVE_SYS_CDEFS_H
1352
1353/* Define to 1 if you have the <sys/dir.h> header file. */
1354#undef HAVE_SYS_DIR_H
1355
1356/* Define if your system defines sys_errlist[] */
1357#undef HAVE_SYS_ERRLIST
1358
1359/* Define to 1 if you have the <sys/file.h> header file. */
1360#undef HAVE_SYS_FILE_H
1361
1362/* Define to 1 if you have the <sys/label.h> header file. */
1363#undef HAVE_SYS_LABEL_H
1364
1365/* Define to 1 if you have the <sys/mman.h> header file. */
1366#undef HAVE_SYS_MMAN_H
1367
1368/* Define to 1 if you have the <sys/mount.h> header file. */
1369#undef HAVE_SYS_MOUNT_H
1370
1371/* Define to 1 if you have the <sys/ndir.h> header file. */
1372#undef HAVE_SYS_NDIR_H
1373
1374/* Define if your system defines sys_nerr */
1375#undef HAVE_SYS_NERR
1376
1377/* Define to 1 if you have the <sys/poll.h> header file. */
1378#undef HAVE_SYS_POLL_H
1379
1380/* Define to 1 if you have the <sys/prctl.h> header file. */
1381#undef HAVE_SYS_PRCTL_H
1382
1383/* Define to 1 if you have the <sys/pstat.h> header file. */
1384#undef HAVE_SYS_PSTAT_H
1385
1386/* Define to 1 if you have the <sys/ptms.h> header file. */
1387#undef HAVE_SYS_PTMS_H
1388
1389/* Define to 1 if you have the <sys/ptrace.h> header file. */
1390#undef HAVE_SYS_PTRACE_H
1391
1392/* Define to 1 if you have the <sys/random.h> header file. */
1393#undef HAVE_SYS_RANDOM_H
1394
1395/* Define to 1 if you have the <sys/select.h> header file. */
1396#undef HAVE_SYS_SELECT_H
1397
1398/* Define to 1 if you have the <sys/statvfs.h> header file. */
1399#undef HAVE_SYS_STATVFS_H
1400
1401/* Define to 1 if you have the <sys/stat.h> header file. */
1402#undef HAVE_SYS_STAT_H
1403
1404/* Define to 1 if you have the <sys/stream.h> header file. */
1405#undef HAVE_SYS_STREAM_H
1406
1407/* Define to 1 if you have the <sys/stropts.h> header file. */
1408#undef HAVE_SYS_STROPTS_H
1409
1410/* Define to 1 if you have the <sys/strtio.h> header file. */
1411#undef HAVE_SYS_STRTIO_H
1412
1413/* Define to 1 if you have the <sys/sysctl.h> header file. */
1414#undef HAVE_SYS_SYSCTL_H
1415
1416/* Force use of sys/syslog.h on Ultrix */
1417#undef HAVE_SYS_SYSLOG_H
1418
1419/* Define to 1 if you have the <sys/sysmacros.h> header file. */
1420#undef HAVE_SYS_SYSMACROS_H
1421
1422/* Define to 1 if you have the <sys/timers.h> header file. */
1423#undef HAVE_SYS_TIMERS_H
1424
1425/* Define to 1 if you have the <sys/time.h> header file. */
1426#undef HAVE_SYS_TIME_H
1427
1428/* Define to 1 if you have the <sys/types.h> header file. */
1429#undef HAVE_SYS_TYPES_H
1430
1431/* Define to 1 if you have the <sys/un.h> header file. */
1432#undef HAVE_SYS_UN_H
1433
1434/* Define to 1 if you have the <sys/vfs.h> header file. */
1435#undef HAVE_SYS_VFS_H
1436
1437/* Define to 1 if you have the `tcgetpgrp' function. */
1438#undef HAVE_TCGETPGRP
1439
1440/* Define to 1 if you have the `tcsendbreak' function. */
1441#undef HAVE_TCSENDBREAK
1442
1443/* Define to 1 if you have the `time' function. */
1444#undef HAVE_TIME
1445
1446/* Define to 1 if you have the <time.h> header file. */
1447#undef HAVE_TIME_H
1448
1449/* Define if you have ut_time in utmp.h */
1450#undef HAVE_TIME_IN_UTMP
1451
1452/* Define if you have ut_time in utmpx.h */
1453#undef HAVE_TIME_IN_UTMPX
1454
1455/* Define to 1 if you have the `timingsafe_bcmp' function. */
1456#undef HAVE_TIMINGSAFE_BCMP
1457
1458/* Define to 1 if you have the <tmpdir.h> header file. */
1459#undef HAVE_TMPDIR_H
1460
1461/* Define to 1 if you have the `truncate' function. */
1462#undef HAVE_TRUNCATE
1463
1464/* Define to 1 if you have the <ttyent.h> header file. */
1465#undef HAVE_TTYENT_H
1466
1467/* Define if you have ut_tv in utmp.h */
1468#undef HAVE_TV_IN_UTMP
1469
1470/* Define if you have ut_tv in utmpx.h */
1471#undef HAVE_TV_IN_UTMPX
1472
1473/* Define if you have ut_type in utmp.h */
1474#undef HAVE_TYPE_IN_UTMP
1475
1476/* Define if you have ut_type in utmpx.h */
1477#undef HAVE_TYPE_IN_UTMPX
1478
1479/* Define to 1 if you have the <ucred.h> header file. */
1480#undef HAVE_UCRED_H
1481
1482/* Define to 1 if the system has the type `uintmax_t'. */
1483#undef HAVE_UINTMAX_T
1484
1485/* define if you have uintxx_t data type */
1486#undef HAVE_UINTXX_T
1487
1488/* Define to 1 if you have the <unistd.h> header file. */
1489#undef HAVE_UNISTD_H
1490
1491/* Define to 1 if you have the `unsetenv' function. */
1492#undef HAVE_UNSETENV
1493
1494/* Define to 1 if the system has the type `unsigned long long'. */
1495#undef HAVE_UNSIGNED_LONG_LONG
1496
1497/* Define to 1 if you have the `updwtmp' function. */
1498#undef HAVE_UPDWTMP
1499
1500/* Define to 1 if you have the `updwtmpx' function. */
1501#undef HAVE_UPDWTMPX
1502
1503/* Define to 1 if you have the <usersec.h> header file. */
1504#undef HAVE_USERSEC_H
1505
1506/* Define to 1 if you have the `user_from_uid' function. */
1507#undef HAVE_USER_FROM_UID
1508
1509/* Define to 1 if you have the `usleep' function. */
1510#undef HAVE_USLEEP
1511
1512/* Define to 1 if you have the <util.h> header file. */
1513#undef HAVE_UTIL_H
1514
1515/* Define to 1 if you have the `utimes' function. */
1516#undef HAVE_UTIMES
1517
1518/* Define to 1 if you have the <utime.h> header file. */
1519#undef HAVE_UTIME_H
1520
1521/* Define to 1 if you have the `utmpname' function. */
1522#undef HAVE_UTMPNAME
1523
1524/* Define to 1 if you have the `utmpxname' function. */
1525#undef HAVE_UTMPXNAME
1526
1527/* Define to 1 if you have the <utmpx.h> header file. */
1528#undef HAVE_UTMPX_H
1529
1530/* Define to 1 if you have the <utmp.h> header file. */
1531#undef HAVE_UTMP_H
1532
1533/* define if you have u_char data type */
1534#undef HAVE_U_CHAR
1535
1536/* define if you have u_int data type */
1537#undef HAVE_U_INT
1538
1539/* define if you have u_int64_t data type */
1540#undef HAVE_U_INT64_T
1541
1542/* define if you have u_intxx_t data type */
1543#undef HAVE_U_INTXX_T
1544
1545/* Define to 1 if you have the `vasprintf' function. */
1546#undef HAVE_VASPRINTF
1547
1548/* Define if va_copy exists */
1549#undef HAVE_VA_COPY
1550
1551/* Define to 1 if you have the <vis.h> header file. */
1552#undef HAVE_VIS_H
1553
1554/* Define to 1 if you have the `vsnprintf' function. */
1555#undef HAVE_VSNPRINTF
1556
1557/* Define to 1 if you have the `waitpid' function. */
1558#undef HAVE_WAITPID
1559
1560/* Define to 1 if you have the `warn' function. */
1561#undef HAVE_WARN
1562
1563/* Define to 1 if you have the <wchar.h> header file. */
1564#undef HAVE_WCHAR_H
1565
1566/* Define to 1 if you have the `wcwidth' function. */
1567#undef HAVE_WCWIDTH
1568
1569/* Define to 1 if you have the `_getlong' function. */
1570#undef HAVE__GETLONG
1571
1572/* Define to 1 if you have the `_getpty' function. */
1573#undef HAVE__GETPTY
1574
1575/* Define to 1 if you have the `_getshort' function. */
1576#undef HAVE__GETSHORT
1577
1578/* Define if you have struct __res_state _res as an extern */
1579#undef HAVE__RES_EXTERN
1580
1581/* Define to 1 if you have the `__b64_ntop' function. */
1582#undef HAVE___B64_NTOP
1583
1584/* Define to 1 if you have the `__b64_pton' function. */
1585#undef HAVE___B64_PTON
1586
1587/* Define if compiler implements __FUNCTION__ */
1588#undef HAVE___FUNCTION__
1589
1590/* Define if libc defines __progname */
1591#undef HAVE___PROGNAME
1592
1593/* Fields in struct sockaddr_storage */
1594#undef HAVE___SS_FAMILY_IN_SS
1595
1596/* Define if __va_copy exists */
1597#undef HAVE___VA_COPY
1598
1599/* Define if compiler implements __func__ */
1600#undef HAVE___func__
1601
1602/* Define this if you are using the Heimdal version of Kerberos V5 */
1603#undef HEIMDAL
1604
1605/* Define if you need to use IP address instead of hostname in $DISPLAY */
1606#undef IPADDR_IN_DISPLAY
1607
1608/* Detect IPv4 in IPv6 mapped addresses and treat as IPv4 */
1609#undef IPV4_IN_IPV6
1610
1611/* Define if your system choked on IP TOS setting */
1612#undef IP_TOS_IS_BROKEN
1613
1614/* Define if you want Kerberos 5 support */
1615#undef KRB5
1616
1617/* Define if pututxline updates lastlog too */
1618#undef LASTLOG_WRITE_PUTUTXLINE
1619
1620/* Define to whatever link() returns for "not supported" if it doesn't return
1621 EOPNOTSUPP. */
1622#undef LINK_OPNOTSUPP_ERRNO
1623
1624/* Adjust Linux out-of-memory killer */
1625#undef LINUX_OOM_ADJUST
1626
1627/* max value of long long calculated by configure */
1628#undef LLONG_MAX
1629
1630/* min value of long long calculated by configure */
1631#undef LLONG_MIN
1632
1633/* Account locked with pw(1) */
1634#undef LOCKED_PASSWD_PREFIX
1635
1636/* String used in /etc/passwd to denote locked account */
1637#undef LOCKED_PASSWD_STRING
1638
1639/* String used in /etc/passwd to denote locked account */
1640#undef LOCKED_PASSWD_SUBSTR
1641
1642/* Some systems need a utmpx entry for /bin/login to work */
1643#undef LOGIN_NEEDS_UTMPX
1644
1645/* Set this to your mail directory if you do not have _PATH_MAILDIR */
1646#undef MAIL_DIRECTORY
1647
1648/* Need setpgrp to acquire controlling tty */
1649#undef NEED_SETPGRP
1650
1651/* compiler does not accept __attribute__ on prototype args */
1652#undef NO_ATTRIBUTE_ON_PROTOTYPE_ARGS
1653
1654/* compiler does not accept __attribute__ on return types */
1655#undef NO_ATTRIBUTE_ON_RETURN_TYPE
1656
1657/* Define to disable UID restoration test */
1658#undef NO_UID_RESTORATION_TEST
1659
1660/* Define if X11 doesn't support AF_UNIX sockets on that system */
1661#undef NO_X11_UNIX_SOCKETS
1662
1663/* Define if EVP_DigestUpdate returns void */
1664#undef OPENSSL_EVP_DIGESTUPDATE_VOID
1665
1666/* OpenSSL has ECC */
1667#undef OPENSSL_HAS_ECC
1668
1669/* libcrypto has NID_X9_62_prime256v1 */
1670#undef OPENSSL_HAS_NISTP256
1671
1672/* libcrypto has NID_secp384r1 */
1673#undef OPENSSL_HAS_NISTP384
1674
1675/* libcrypto has NID_secp521r1 */
1676#undef OPENSSL_HAS_NISTP521
1677
1678/* libcrypto has EVP AES CTR */
1679#undef OPENSSL_HAVE_EVPCTR
1680
1681/* libcrypto has EVP AES GCM */
1682#undef OPENSSL_HAVE_EVPGCM
1683
1684/* libcrypto is missing AES 192 and 256 bit functions */
1685#undef OPENSSL_LOBOTOMISED_AES
1686
1687/* Define if you want the OpenSSL internally seeded PRNG only */
1688#undef OPENSSL_PRNG_ONLY
1689
1690/* Define to the address where bug reports for this package should be sent. */
1691#undef PACKAGE_BUGREPORT
1692
1693/* Define to the full name of this package. */
1694#undef PACKAGE_NAME
1695
1696/* Define to the full name and version of this package. */
1697#undef PACKAGE_STRING
1698
1699/* Define to the one symbol short name of this package. */
1700#undef PACKAGE_TARNAME
1701
1702/* Define to the home page for this package. */
1703#undef PACKAGE_URL
1704
1705/* Define to the version of this package. */
1706#undef PACKAGE_VERSION
1707
1708/* Define if you are using Solaris-derived PAM which passes pam_messages to
1709 the conversation function with an extra level of indirection */
1710#undef PAM_SUN_CODEBASE
1711
1712/* Work around problematic Linux PAM modules handling of PAM_TTY */
1713#undef PAM_TTY_KLUDGE
1714
1715/* must supply username to passwd */
1716#undef PASSWD_NEEDS_USERNAME
1717
1718/* System dirs owned by bin (uid 2) */
1719#undef PLATFORM_SYS_DIR_UID
1720
1721/* Port number of PRNGD/EGD random number socket */
1722#undef PRNGD_PORT
1723
1724/* Location of PRNGD/EGD random number socket */
1725#undef PRNGD_SOCKET
1726
1727/* read(1) can return 0 for a non-closed fd */
1728#undef PTY_ZEROREAD
1729
1730/* Sandbox using capsicum */
1731#undef SANDBOX_CAPSICUM
1732
1733/* Sandbox using Darwin sandbox_init(3) */
1734#undef SANDBOX_DARWIN
1735
1736/* no privsep sandboxing */
1737#undef SANDBOX_NULL
1738
1739/* Sandbox using pledge(2) */
1740#undef SANDBOX_PLEDGE
1741
1742/* Sandbox using setrlimit(2) */
1743#undef SANDBOX_RLIMIT
1744
1745/* Sandbox using seccomp filter */
1746#undef SANDBOX_SECCOMP_FILTER
1747
1748/* setrlimit RLIMIT_FSIZE works */
1749#undef SANDBOX_SKIP_RLIMIT_FSIZE
1750
1751/* define if setrlimit RLIMIT_NOFILE breaks things */
1752#undef SANDBOX_SKIP_RLIMIT_NOFILE
1753
1754/* Sandbox using Solaris/Illumos privileges */
1755#undef SANDBOX_SOLARIS
1756
1757/* Sandbox using systrace(4) */
1758#undef SANDBOX_SYSTRACE
1759
1760/* Specify the system call convention in use */
1761#undef SECCOMP_AUDIT_ARCH
1762
1763/* Define if your platform breaks doing a seteuid before a setuid */
1764#undef SETEUID_BREAKS_SETUID
1765
1766/* The size of `int', as computed by sizeof. */
1767#undef SIZEOF_INT
1768
1769/* The size of `long int', as computed by sizeof. */
1770#undef SIZEOF_LONG_INT
1771
1772/* The size of `long long int', as computed by sizeof. */
1773#undef SIZEOF_LONG_LONG_INT
1774
1775/* The size of `short int', as computed by sizeof. */
1776#undef SIZEOF_SHORT_INT
1777
1778/* Define as const if snprintf() can declare const char *fmt */
1779#undef SNPRINTF_CONST
1780
1781/* Define to a Set Process Title type if your system is supported by
1782 bsd-setproctitle.c */
1783#undef SPT_TYPE
1784
1785/* Define if sshd somehow reacquires a controlling TTY after setsid() */
1786#undef SSHD_ACQUIRES_CTTY
1787
1788/* sshd PAM service name */
1789#undef SSHD_PAM_SERVICE
1790
1791/* Define if pam_chauthtok wants real uid set to the unpriv'ed user */
1792#undef SSHPAM_CHAUTHTOK_NEEDS_RUID
1793
1794/* Use audit debugging module */
1795#undef SSH_AUDIT_EVENTS
1796
1797/* Windows is sensitive to read buffer size */
1798#undef SSH_IOBUFSZ
1799
1800/* non-privileged user for privilege separation */
1801#undef SSH_PRIVSEP_USER
1802
1803/* Use tunnel device compatibility to OpenBSD */
1804#undef SSH_TUN_COMPAT_AF
1805
1806/* Open tunnel devices the FreeBSD way */
1807#undef SSH_TUN_FREEBSD
1808
1809/* Open tunnel devices the Linux tun/tap way */
1810#undef SSH_TUN_LINUX
1811
1812/* No layer 2 tunnel support */
1813#undef SSH_TUN_NO_L2
1814
1815/* Open tunnel devices the OpenBSD way */
1816#undef SSH_TUN_OPENBSD
1817
1818/* Prepend the address family to IP tunnel traffic */
1819#undef SSH_TUN_PREPEND_AF
1820
1821/* Define to 1 if you have the ANSI C header files. */
1822#undef STDC_HEADERS
1823
1824/* Define if you want a different $PATH for the superuser */
1825#undef SUPERUSER_PATH
1826
1827/* syslog_r function is safe to use in in a signal handler */
1828#undef SYSLOG_R_SAFE_IN_SIGHAND
1829
1830/* Support routing domains using Linux VRF */
1831#undef SYS_RDOMAIN_LINUX
1832
1833/* Support passwords > 8 chars */
1834#undef UNIXWARE_LONG_PASSWORDS
1835
1836/* Specify default $PATH */
1837#undef USER_PATH
1838
1839/* Define this if you want to use libkafs' AFS support */
1840#undef USE_AFS
1841
1842/* Use BSM audit module */
1843#undef USE_BSM_AUDIT
1844
1845/* Use btmp to log bad logins */
1846#undef USE_BTMP
1847
1848/* Use libedit for sftp */
1849#undef USE_LIBEDIT
1850
1851/* Use Linux audit module */
1852#undef USE_LINUX_AUDIT
1853
1854/* Enable OpenSSL engine support */
1855#undef USE_OPENSSL_ENGINE
1856
1857/* Define if you want to enable PAM support */
1858#undef USE_PAM
1859
1860/* Use PIPES instead of a socketpair() */
1861#undef USE_PIPES
1862
1863/* Define if you have Solaris privileges */
1864#undef USE_SOLARIS_PRIVS
1865
1866/* Define if you have Solaris process contracts */
1867#undef USE_SOLARIS_PROCESS_CONTRACTS
1868
1869/* Define if you have Solaris projects */
1870#undef USE_SOLARIS_PROJECTS
1871
1872/* Define if you shouldn't strip 'tty' from your ttyname in [uw]tmp */
1873#undef WITH_ABBREV_NO_TTY
1874
1875/* Define if you want to enable AIX4's authenticate function */
1876#undef WITH_AIXAUTHENTICATE
1877
1878/* Define if you have/want arrays (cluster-wide session management, not C
1879 arrays) */
1880#undef WITH_IRIX_ARRAY
1881
1882/* Define if you want IRIX audit trails */
1883#undef WITH_IRIX_AUDIT
1884
1885/* Define if you want IRIX kernel jobs */
1886#undef WITH_IRIX_JOBS
1887
1888/* Define if you want IRIX project management */
1889#undef WITH_IRIX_PROJECT
1890
1891/* use libcrypto for cryptography */
1892#undef WITH_OPENSSL
1893
1894/* Define if you want SELinux support. */
1895#undef WITH_SELINUX
1896
1897/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
1898 significant byte first (like Motorola and SPARC, unlike Intel). */
1899#if defined AC_APPLE_UNIVERSAL_BUILD
1900# if defined __BIG_ENDIAN__
1901# define WORDS_BIGENDIAN 1
1902# endif
1903#else
1904# ifndef WORDS_BIGENDIAN
1905# undef WORDS_BIGENDIAN
1906# endif
1907#endif
1908
1909/* Define if xauth is found in your path */
1910#undef XAUTH_PATH
1911
1912/* Enable large inode numbers on Mac OS X 10.5. */
1913#ifndef _DARWIN_USE_64_BIT_INODE
1914# define _DARWIN_USE_64_BIT_INODE 1
1915#endif
1916
1917/* Number of bits in a file offset, on hosts where this is settable. */
1918#undef _FILE_OFFSET_BITS
1919
1920/* Define for large files, on AIX-style hosts. */
1921#undef _LARGE_FILES
1922
1923/* log for bad login attempts */
1924#undef _PATH_BTMP
1925
1926/* Full path of your "passwd" program */
1927#undef _PATH_PASSWD_PROG
1928
1929/* Specify location of ssh.pid */
1930#undef _PATH_SSH_PIDDIR
1931
1932/* Define if we don't have struct __res_state in resolv.h */
1933#undef __res_state
1934
1935/* Define to rpl_calloc if the replacement function should be used. */
1936#undef calloc
1937
1938/* Define to `__inline__' or `__inline' if that's what the C compiler
1939 calls it, or to nothing if 'inline' is not supported under any name. */
1940#ifndef __cplusplus
1941#undef inline
1942#endif
1943
1944/* Define to rpl_malloc if the replacement function should be used. */
1945#undef malloc
1946
1947/* Define to rpl_realloc if the replacement function should be used. */
1948#undef realloc
1949
1950/* type to use in place of socklen_t if not defined */
1951#undef socklen_t
diff --git a/configure b/configure
new file mode 100755
index 000000000..21a41103f
--- /dev/null
+++ b/configure
@@ -0,0 +1,22926 @@
1#! /bin/sh
2# From configure.ac Revision: 1.583 .
3# Guess values for system-dependent variables and create Makefiles.
4# Generated by GNU Autoconf 2.69 for OpenSSH Portable.
5#
6# Report bugs to <openssh-unix-dev@mindrot.org>.
7#
8#
9# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
10#
11#
12# This configure script is free software; the Free Software Foundation
13# gives unlimited permission to copy, distribute and modify it.
14## -------------------- ##
15## M4sh Initialization. ##
16## -------------------- ##
17
18# Be more Bourne compatible
19DUALCASE=1; export DUALCASE # for MKS sh
20if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
21 emulate sh
22 NULLCMD=:
23 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
24 # is contrary to our usage. Disable this feature.
25 alias -g '${1+"$@"}'='"$@"'
26 setopt NO_GLOB_SUBST
27else
28 case `(set -o) 2>/dev/null` in #(
29 *posix*) :
30 set -o posix ;; #(
31 *) :
32 ;;
33esac
34fi
35
36
37as_nl='
38'
39export as_nl
40# Printing a long string crashes Solaris 7 /usr/bin/printf.
41as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
42as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
43as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
44# Prefer a ksh shell builtin over an external printf program on Solaris,
45# but without wasting forks for bash or zsh.
46if test -z "$BASH_VERSION$ZSH_VERSION" \
47 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
48 as_echo='print -r --'
49 as_echo_n='print -rn --'
50elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
51 as_echo='printf %s\n'
52 as_echo_n='printf %s'
53else
54 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
55 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
56 as_echo_n='/usr/ucb/echo -n'
57 else
58 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
59 as_echo_n_body='eval
60 arg=$1;
61 case $arg in #(
62 *"$as_nl"*)
63 expr "X$arg" : "X\\(.*\\)$as_nl";
64 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
65 esac;
66 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
67 '
68 export as_echo_n_body
69 as_echo_n='sh -c $as_echo_n_body as_echo'
70 fi
71 export as_echo_body
72 as_echo='sh -c $as_echo_body as_echo'
73fi
74
75# The user is always right.
76if test "${PATH_SEPARATOR+set}" != set; then
77 PATH_SEPARATOR=:
78 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
79 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
80 PATH_SEPARATOR=';'
81 }
82fi
83
84
85# IFS
86# We need space, tab and new line, in precisely that order. Quoting is
87# there to prevent editors from complaining about space-tab.
88# (If _AS_PATH_WALK were called with IFS unset, it would disable word
89# splitting by setting IFS to empty value.)
90IFS=" "" $as_nl"
91
92# Find who we are. Look in the path if we contain no directory separator.
93as_myself=
94case $0 in #((
95 *[\\/]* ) as_myself=$0 ;;
96 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
97for as_dir in $PATH
98do
99 IFS=$as_save_IFS
100 test -z "$as_dir" && as_dir=.
101 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
102 done
103IFS=$as_save_IFS
104
105 ;;
106esac
107# We did not find ourselves, most probably we were run as `sh COMMAND'
108# in which case we are not to be found in the path.
109if test "x$as_myself" = x; then
110 as_myself=$0
111fi
112if test ! -f "$as_myself"; then
113 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
114 exit 1
115fi
116
117# Unset variables that we do not need and which cause bugs (e.g. in
118# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
119# suppresses any "Segmentation fault" message there. '((' could
120# trigger a bug in pdksh 5.2.14.
121for as_var in BASH_ENV ENV MAIL MAILPATH
122do eval test x\${$as_var+set} = xset \
123 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
124done
125PS1='$ '
126PS2='> '
127PS4='+ '
128
129# NLS nuisances.
130LC_ALL=C
131export LC_ALL
132LANGUAGE=C
133export LANGUAGE
134
135# CDPATH.
136(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
137
138# Use a proper internal environment variable to ensure we don't fall
139 # into an infinite loop, continuously re-executing ourselves.
140 if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
141 _as_can_reexec=no; export _as_can_reexec;
142 # We cannot yet assume a decent shell, so we have to provide a
143# neutralization value for shells without unset; and this also
144# works around shells that cannot unset nonexistent variables.
145# Preserve -v and -x to the replacement shell.
146BASH_ENV=/dev/null
147ENV=/dev/null
148(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
149case $- in # ((((
150 *v*x* | *x*v* ) as_opts=-vx ;;
151 *v* ) as_opts=-v ;;
152 *x* ) as_opts=-x ;;
153 * ) as_opts= ;;
154esac
155exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
156# Admittedly, this is quite paranoid, since all the known shells bail
157# out after a failed `exec'.
158$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
159as_fn_exit 255
160 fi
161 # We don't want this to propagate to other subprocesses.
162 { _as_can_reexec=; unset _as_can_reexec;}
163if test "x$CONFIG_SHELL" = x; then
164 as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
165 emulate sh
166 NULLCMD=:
167 # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
168 # is contrary to our usage. Disable this feature.
169 alias -g '\${1+\"\$@\"}'='\"\$@\"'
170 setopt NO_GLOB_SUBST
171else
172 case \`(set -o) 2>/dev/null\` in #(
173 *posix*) :
174 set -o posix ;; #(
175 *) :
176 ;;
177esac
178fi
179"
180 as_required="as_fn_return () { (exit \$1); }
181as_fn_success () { as_fn_return 0; }
182as_fn_failure () { as_fn_return 1; }
183as_fn_ret_success () { return 0; }
184as_fn_ret_failure () { return 1; }
185
186exitcode=0
187as_fn_success || { exitcode=1; echo as_fn_success failed.; }
188as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
189as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
190as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
191if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
192
193else
194 exitcode=1; echo positional parameters were not saved.
195fi
196test x\$exitcode = x0 || exit 1
197test -x / || exit 1"
198 as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
199 as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
200 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
201 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
202test \$(( 1 + 1 )) = 2 || exit 1"
203 if (eval "$as_required") 2>/dev/null; then :
204 as_have_required=yes
205else
206 as_have_required=no
207fi
208 if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
209
210else
211 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
212as_found=false
213for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
214do
215 IFS=$as_save_IFS
216 test -z "$as_dir" && as_dir=.
217 as_found=:
218 case $as_dir in #(
219 /*)
220 for as_base in sh bash ksh sh5; do
221 # Try only shells that exist, to save several forks.
222 as_shell=$as_dir/$as_base
223 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
224 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
225 CONFIG_SHELL=$as_shell as_have_required=yes
226 if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
227 break 2
228fi
229fi
230 done;;
231 esac
232 as_found=false
233done
234$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
235 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
236 CONFIG_SHELL=$SHELL as_have_required=yes
237fi; }
238IFS=$as_save_IFS
239
240
241 if test "x$CONFIG_SHELL" != x; then :
242 export CONFIG_SHELL
243 # We cannot yet assume a decent shell, so we have to provide a
244# neutralization value for shells without unset; and this also
245# works around shells that cannot unset nonexistent variables.
246# Preserve -v and -x to the replacement shell.
247BASH_ENV=/dev/null
248ENV=/dev/null
249(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
250case $- in # ((((
251 *v*x* | *x*v* ) as_opts=-vx ;;
252 *v* ) as_opts=-v ;;
253 *x* ) as_opts=-x ;;
254 * ) as_opts= ;;
255esac
256exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
257# Admittedly, this is quite paranoid, since all the known shells bail
258# out after a failed `exec'.
259$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
260exit 255
261fi
262
263 if test x$as_have_required = xno; then :
264 $as_echo "$0: This script requires a shell more modern than all"
265 $as_echo "$0: the shells that I found on your system."
266 if test x${ZSH_VERSION+set} = xset ; then
267 $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
268 $as_echo "$0: be upgraded to zsh 4.3.4 or later."
269 else
270 $as_echo "$0: Please tell bug-autoconf@gnu.org and
271$0: openssh-unix-dev@mindrot.org about your system,
272$0: including any error possibly output before this
273$0: message. Then install a modern shell, or manually run
274$0: the script under such a shell if you do have one."
275 fi
276 exit 1
277fi
278fi
279fi
280SHELL=${CONFIG_SHELL-/bin/sh}
281export SHELL
282# Unset more variables known to interfere with behavior of common tools.
283CLICOLOR_FORCE= GREP_OPTIONS=
284unset CLICOLOR_FORCE GREP_OPTIONS
285
286## --------------------- ##
287## M4sh Shell Functions. ##
288## --------------------- ##
289# as_fn_unset VAR
290# ---------------
291# Portably unset VAR.
292as_fn_unset ()
293{
294 { eval $1=; unset $1;}
295}
296as_unset=as_fn_unset
297
298# as_fn_set_status STATUS
299# -----------------------
300# Set $? to STATUS, without forking.
301as_fn_set_status ()
302{
303 return $1
304} # as_fn_set_status
305
306# as_fn_exit STATUS
307# -----------------
308# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
309as_fn_exit ()
310{
311 set +e
312 as_fn_set_status $1
313 exit $1
314} # as_fn_exit
315
316# as_fn_mkdir_p
317# -------------
318# Create "$as_dir" as a directory, including parents if necessary.
319as_fn_mkdir_p ()
320{
321
322 case $as_dir in #(
323 -*) as_dir=./$as_dir;;
324 esac
325 test -d "$as_dir" || eval $as_mkdir_p || {
326 as_dirs=
327 while :; do
328 case $as_dir in #(
329 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
330 *) as_qdir=$as_dir;;
331 esac
332 as_dirs="'$as_qdir' $as_dirs"
333 as_dir=`$as_dirname -- "$as_dir" ||
334$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
335 X"$as_dir" : 'X\(//\)[^/]' \| \
336 X"$as_dir" : 'X\(//\)$' \| \
337 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
338$as_echo X"$as_dir" |
339 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
340 s//\1/
341 q
342 }
343 /^X\(\/\/\)[^/].*/{
344 s//\1/
345 q
346 }
347 /^X\(\/\/\)$/{
348 s//\1/
349 q
350 }
351 /^X\(\/\).*/{
352 s//\1/
353 q
354 }
355 s/.*/./; q'`
356 test -d "$as_dir" && break
357 done
358 test -z "$as_dirs" || eval "mkdir $as_dirs"
359 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
360
361
362} # as_fn_mkdir_p
363
364# as_fn_executable_p FILE
365# -----------------------
366# Test if FILE is an executable regular file.
367as_fn_executable_p ()
368{
369 test -f "$1" && test -x "$1"
370} # as_fn_executable_p
371# as_fn_append VAR VALUE
372# ----------------------
373# Append the text in VALUE to the end of the definition contained in VAR. Take
374# advantage of any shell optimizations that allow amortized linear growth over
375# repeated appends, instead of the typical quadratic growth present in naive
376# implementations.
377if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
378 eval 'as_fn_append ()
379 {
380 eval $1+=\$2
381 }'
382else
383 as_fn_append ()
384 {
385 eval $1=\$$1\$2
386 }
387fi # as_fn_append
388
389# as_fn_arith ARG...
390# ------------------
391# Perform arithmetic evaluation on the ARGs, and store the result in the
392# global $as_val. Take advantage of shells that can avoid forks. The arguments
393# must be portable across $(()) and expr.
394if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
395 eval 'as_fn_arith ()
396 {
397 as_val=$(( $* ))
398 }'
399else
400 as_fn_arith ()
401 {
402 as_val=`expr "$@" || test $? -eq 1`
403 }
404fi # as_fn_arith
405
406
407# as_fn_error STATUS ERROR [LINENO LOG_FD]
408# ----------------------------------------
409# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
410# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
411# script with STATUS, using 1 if that was 0.
412as_fn_error ()
413{
414 as_status=$1; test $as_status -eq 0 && as_status=1
415 if test "$4"; then
416 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
417 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
418 fi
419 $as_echo "$as_me: error: $2" >&2
420 as_fn_exit $as_status
421} # as_fn_error
422
423if expr a : '\(a\)' >/dev/null 2>&1 &&
424 test "X`expr 00001 : '.*\(...\)'`" = X001; then
425 as_expr=expr
426else
427 as_expr=false
428fi
429
430if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
431 as_basename=basename
432else
433 as_basename=false
434fi
435
436if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
437 as_dirname=dirname
438else
439 as_dirname=false
440fi
441
442as_me=`$as_basename -- "$0" ||
443$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
444 X"$0" : 'X\(//\)$' \| \
445 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
446$as_echo X/"$0" |
447 sed '/^.*\/\([^/][^/]*\)\/*$/{
448 s//\1/
449 q
450 }
451 /^X\/\(\/\/\)$/{
452 s//\1/
453 q
454 }
455 /^X\/\(\/\).*/{
456 s//\1/
457 q
458 }
459 s/.*/./; q'`
460
461# Avoid depending upon Character Ranges.
462as_cr_letters='abcdefghijklmnopqrstuvwxyz'
463as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
464as_cr_Letters=$as_cr_letters$as_cr_LETTERS
465as_cr_digits='0123456789'
466as_cr_alnum=$as_cr_Letters$as_cr_digits
467
468
469 as_lineno_1=$LINENO as_lineno_1a=$LINENO
470 as_lineno_2=$LINENO as_lineno_2a=$LINENO
471 eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
472 test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
473 # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
474 sed -n '
475 p
476 /[$]LINENO/=
477 ' <$as_myself |
478 sed '
479 s/[$]LINENO.*/&-/
480 t lineno
481 b
482 :lineno
483 N
484 :loop
485 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
486 t loop
487 s/-\n.*//
488 ' >$as_me.lineno &&
489 chmod +x "$as_me.lineno" ||
490 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
491
492 # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
493 # already done that, so ensure we don't try to do so again and fall
494 # in an infinite loop. This has already happened in practice.
495 _as_can_reexec=no; export _as_can_reexec
496 # Don't try to exec as it changes $[0], causing all sort of problems
497 # (the dirname of $[0] is not the place where we might find the
498 # original and so on. Autoconf is especially sensitive to this).
499 . "./$as_me.lineno"
500 # Exit status is that of the last command.
501 exit
502}
503
504ECHO_C= ECHO_N= ECHO_T=
505case `echo -n x` in #(((((
506-n*)
507 case `echo 'xy\c'` in
508 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
509 xy) ECHO_C='\c';;
510 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
511 ECHO_T=' ';;
512 esac;;
513*)
514 ECHO_N='-n';;
515esac
516
517rm -f conf$$ conf$$.exe conf$$.file
518if test -d conf$$.dir; then
519 rm -f conf$$.dir/conf$$.file
520else
521 rm -f conf$$.dir
522 mkdir conf$$.dir 2>/dev/null
523fi
524if (echo >conf$$.file) 2>/dev/null; then
525 if ln -s conf$$.file conf$$ 2>/dev/null; then
526 as_ln_s='ln -s'
527 # ... but there are two gotchas:
528 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
529 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
530 # In both cases, we have to default to `cp -pR'.
531 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
532 as_ln_s='cp -pR'
533 elif ln conf$$.file conf$$ 2>/dev/null; then
534 as_ln_s=ln
535 else
536 as_ln_s='cp -pR'
537 fi
538else
539 as_ln_s='cp -pR'
540fi
541rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
542rmdir conf$$.dir 2>/dev/null
543
544if mkdir -p . 2>/dev/null; then
545 as_mkdir_p='mkdir -p "$as_dir"'
546else
547 test -d ./-p && rmdir ./-p
548 as_mkdir_p=false
549fi
550
551as_test_x='test -x'
552as_executable_p=as_fn_executable_p
553
554# Sed expression to map a string onto a valid CPP name.
555as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
556
557# Sed expression to map a string onto a valid variable name.
558as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
559
560
561test -n "$DJDIR" || exec 7<&0 </dev/null
562exec 6>&1
563
564# Name of the host.
565# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
566# so uname gets run too.
567ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
568
569#
570# Initializations.
571#
572ac_default_prefix=/usr/local
573ac_clean_files=
574ac_config_libobj_dir=.
575LIBOBJS=
576cross_compiling=no
577subdirs=
578MFLAGS=
579MAKEFLAGS=
580
581# Identity of this package.
582PACKAGE_NAME='OpenSSH'
583PACKAGE_TARNAME='openssh'
584PACKAGE_VERSION='Portable'
585PACKAGE_STRING='OpenSSH Portable'
586PACKAGE_BUGREPORT='openssh-unix-dev@mindrot.org'
587PACKAGE_URL=''
588
589ac_unique_file="ssh.c"
590# Factoring default headers for most tests.
591ac_includes_default="\
592#include <stdio.h>
593#ifdef HAVE_SYS_TYPES_H
594# include <sys/types.h>
595#endif
596#ifdef HAVE_SYS_STAT_H
597# include <sys/stat.h>
598#endif
599#ifdef STDC_HEADERS
600# include <stdlib.h>
601# include <stddef.h>
602#else
603# ifdef HAVE_STDLIB_H
604# include <stdlib.h>
605# endif
606#endif
607#ifdef HAVE_STRING_H
608# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
609# include <memory.h>
610# endif
611# include <string.h>
612#endif
613#ifdef HAVE_STRINGS_H
614# include <strings.h>
615#endif
616#ifdef HAVE_INTTYPES_H
617# include <inttypes.h>
618#endif
619#ifdef HAVE_STDINT_H
620# include <stdint.h>
621#endif
622#ifdef HAVE_UNISTD_H
623# include <unistd.h>
624#endif"
625
626ac_subst_vars='LTLIBOBJS
627DEPEND
628UNSUPPORTED_ALGORITHMS
629TEST_MALLOC_OPTIONS
630TEST_SSH_UTF8
631TEST_SSH_IPV6
632piddir
633user_path
634mansubdir
635MANTYPE
636XAUTH_PATH
637STRIP_OPT
638xauth_path
639PRIVSEP_PATH
640K5LIBS
641GSSLIBS
642KRB5CONF
643SSHDLIBS
644SSHLIBS
645SSH_PRIVSEP_USER
646COMMENT_OUT_ECC
647TEST_SSH_ECC
648LIBEDIT
649PKGCONFIG
650LDNSCONFIG
651LIBOBJS
652LD
653PATH_PASSWD_PROG
654STARTUP_SCRIPT_SHELL
655MAKE_PACKAGE_SUPPORTED
656PATH_USERADD_PROG
657PATH_GROUPADD_PROG
658MANFMT
659TEST_SHELL
660MANDOC
661NROFF
662GROFF
663SH
664TEST_MINUS_S_SH
665ENT
666SED
667KILL
668CAT
669ac_ct_AR
670AR
671MKDIR_P
672INSTALL_DATA
673INSTALL_SCRIPT
674INSTALL_PROGRAM
675RANLIB
676AWK
677EGREP
678GREP
679CPP
680host_os
681host_vendor
682host_cpu
683host
684build_os
685build_vendor
686build_cpu
687build
688OBJEXT
689EXEEXT
690ac_ct_CC
691CPPFLAGS
692LDFLAGS
693CFLAGS
694CC
695target_alias
696host_alias
697build_alias
698LIBS
699ECHO_T
700ECHO_N
701ECHO_C
702DEFS
703mandir
704localedir
705libdir
706psdir
707pdfdir
708dvidir
709htmldir
710infodir
711docdir
712oldincludedir
713includedir
714localstatedir
715sharedstatedir
716sysconfdir
717datadir
718datarootdir
719libexecdir
720sbindir
721bindir
722program_transform_name
723prefix
724exec_prefix
725PACKAGE_URL
726PACKAGE_BUGREPORT
727PACKAGE_STRING
728PACKAGE_VERSION
729PACKAGE_TARNAME
730PACKAGE_NAME
731PATH_SEPARATOR
732SHELL'
733ac_subst_files=''
734ac_user_opts='
735enable_option_checking
736enable_largefile
737with_openssl
738with_stackprotect
739with_hardening
740with_rpath
741with_cflags
742with_cflags_after
743with_cppflags
744with_ldflags
745with_ldflags_after
746with_libs
747with_Werror
748with_solaris_contracts
749with_solaris_projects
750with_solaris_privs
751with_osfsia
752with_zlib
753with_zlib_version_check
754with_ldns
755with_libedit
756with_audit
757with_pie
758enable_pkcs11
759with_ssl_dir
760with_openssl_header_check
761with_ssl_engine
762with_prngd_port
763with_prngd_socket
764with_pam
765with_pam_service
766with_privsep_user
767with_sandbox
768with_selinux
769with_kerberos5
770with_privsep_path
771with_xauth
772enable_strip
773with_maildir
774with_mantype
775with_md5_passwords
776with_shadow
777with_ipaddr_display
778enable_etc_default_login
779with_default_path
780with_superuser_path
781with_4in6
782with_bsd_auth
783with_pid_dir
784enable_lastlog
785enable_utmp
786enable_utmpx
787enable_wtmp
788enable_wtmpx
789enable_libutil
790enable_pututline
791enable_pututxline
792with_lastlog
793'
794 ac_precious_vars='build_alias
795host_alias
796target_alias
797CC
798CFLAGS
799LDFLAGS
800LIBS
801CPPFLAGS
802CPP'
803
804
805# Initialize some variables set by options.
806ac_init_help=
807ac_init_version=false
808ac_unrecognized_opts=
809ac_unrecognized_sep=
810# The variables have the same names as the options, with
811# dashes changed to underlines.
812cache_file=/dev/null
813exec_prefix=NONE
814no_create=
815no_recursion=
816prefix=NONE
817program_prefix=NONE
818program_suffix=NONE
819program_transform_name=s,x,x,
820silent=
821site=
822srcdir=
823verbose=
824x_includes=NONE
825x_libraries=NONE
826
827# Installation directory options.
828# These are left unexpanded so users can "make install exec_prefix=/foo"
829# and all the variables that are supposed to be based on exec_prefix
830# by default will actually change.
831# Use braces instead of parens because sh, perl, etc. also accept them.
832# (The list follows the same order as the GNU Coding Standards.)
833bindir='${exec_prefix}/bin'
834sbindir='${exec_prefix}/sbin'
835libexecdir='${exec_prefix}/libexec'
836datarootdir='${prefix}/share'
837datadir='${datarootdir}'
838sysconfdir='${prefix}/etc'
839sharedstatedir='${prefix}/com'
840localstatedir='${prefix}/var'
841includedir='${prefix}/include'
842oldincludedir='/usr/include'
843docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
844infodir='${datarootdir}/info'
845htmldir='${docdir}'
846dvidir='${docdir}'
847pdfdir='${docdir}'
848psdir='${docdir}'
849libdir='${exec_prefix}/lib'
850localedir='${datarootdir}/locale'
851mandir='${datarootdir}/man'
852
853ac_prev=
854ac_dashdash=
855for ac_option
856do
857 # If the previous option needs an argument, assign it.
858 if test -n "$ac_prev"; then
859 eval $ac_prev=\$ac_option
860 ac_prev=
861 continue
862 fi
863
864 case $ac_option in
865 *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
866 *=) ac_optarg= ;;
867 *) ac_optarg=yes ;;
868 esac
869
870 # Accept the important Cygnus configure options, so we can diagnose typos.
871
872 case $ac_dashdash$ac_option in
873 --)
874 ac_dashdash=yes ;;
875
876 -bindir | --bindir | --bindi | --bind | --bin | --bi)
877 ac_prev=bindir ;;
878 -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
879 bindir=$ac_optarg ;;
880
881 -build | --build | --buil | --bui | --bu)
882 ac_prev=build_alias ;;
883 -build=* | --build=* | --buil=* | --bui=* | --bu=*)
884 build_alias=$ac_optarg ;;
885
886 -cache-file | --cache-file | --cache-fil | --cache-fi \
887 | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
888 ac_prev=cache_file ;;
889 -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
890 | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
891 cache_file=$ac_optarg ;;
892
893 --config-cache | -C)
894 cache_file=config.cache ;;
895
896 -datadir | --datadir | --datadi | --datad)
897 ac_prev=datadir ;;
898 -datadir=* | --datadir=* | --datadi=* | --datad=*)
899 datadir=$ac_optarg ;;
900
901 -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
902 | --dataroo | --dataro | --datar)
903 ac_prev=datarootdir ;;
904 -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
905 | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
906 datarootdir=$ac_optarg ;;
907
908 -disable-* | --disable-*)
909 ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
910 # Reject names that are not valid shell variable names.
911 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
912 as_fn_error $? "invalid feature name: $ac_useropt"
913 ac_useropt_orig=$ac_useropt
914 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
915 case $ac_user_opts in
916 *"
917"enable_$ac_useropt"
918"*) ;;
919 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
920 ac_unrecognized_sep=', ';;
921 esac
922 eval enable_$ac_useropt=no ;;
923
924 -docdir | --docdir | --docdi | --doc | --do)
925 ac_prev=docdir ;;
926 -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
927 docdir=$ac_optarg ;;
928
929 -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
930 ac_prev=dvidir ;;
931 -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
932 dvidir=$ac_optarg ;;
933
934 -enable-* | --enable-*)
935 ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
936 # Reject names that are not valid shell variable names.
937 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
938 as_fn_error $? "invalid feature name: $ac_useropt"
939 ac_useropt_orig=$ac_useropt
940 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
941 case $ac_user_opts in
942 *"
943"enable_$ac_useropt"
944"*) ;;
945 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
946 ac_unrecognized_sep=', ';;
947 esac
948 eval enable_$ac_useropt=\$ac_optarg ;;
949
950 -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
951 | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
952 | --exec | --exe | --ex)
953 ac_prev=exec_prefix ;;
954 -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
955 | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
956 | --exec=* | --exe=* | --ex=*)
957 exec_prefix=$ac_optarg ;;
958
959 -gas | --gas | --ga | --g)
960 # Obsolete; use --with-gas.
961 with_gas=yes ;;
962
963 -help | --help | --hel | --he | -h)
964 ac_init_help=long ;;
965 -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
966 ac_init_help=recursive ;;
967 -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
968 ac_init_help=short ;;
969
970 -host | --host | --hos | --ho)
971 ac_prev=host_alias ;;
972 -host=* | --host=* | --hos=* | --ho=*)
973 host_alias=$ac_optarg ;;
974
975 -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
976 ac_prev=htmldir ;;
977 -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
978 | --ht=*)
979 htmldir=$ac_optarg ;;
980
981 -includedir | --includedir | --includedi | --included | --include \
982 | --includ | --inclu | --incl | --inc)
983 ac_prev=includedir ;;
984 -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
985 | --includ=* | --inclu=* | --incl=* | --inc=*)
986 includedir=$ac_optarg ;;
987
988 -infodir | --infodir | --infodi | --infod | --info | --inf)
989 ac_prev=infodir ;;
990 -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
991 infodir=$ac_optarg ;;
992
993 -libdir | --libdir | --libdi | --libd)
994 ac_prev=libdir ;;
995 -libdir=* | --libdir=* | --libdi=* | --libd=*)
996 libdir=$ac_optarg ;;
997
998 -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
999 | --libexe | --libex | --libe)
1000 ac_prev=libexecdir ;;
1001 -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
1002 | --libexe=* | --libex=* | --libe=*)
1003 libexecdir=$ac_optarg ;;
1004
1005 -localedir | --localedir | --localedi | --localed | --locale)
1006 ac_prev=localedir ;;
1007 -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
1008 localedir=$ac_optarg ;;
1009
1010 -localstatedir | --localstatedir | --localstatedi | --localstated \
1011 | --localstate | --localstat | --localsta | --localst | --locals)
1012 ac_prev=localstatedir ;;
1013 -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
1014 | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
1015 localstatedir=$ac_optarg ;;
1016
1017 -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
1018 ac_prev=mandir ;;
1019 -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
1020 mandir=$ac_optarg ;;
1021
1022 -nfp | --nfp | --nf)
1023 # Obsolete; use --without-fp.
1024 with_fp=no ;;
1025
1026 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
1027 | --no-cr | --no-c | -n)
1028 no_create=yes ;;
1029
1030 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
1031 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
1032 no_recursion=yes ;;
1033
1034 -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
1035 | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
1036 | --oldin | --oldi | --old | --ol | --o)
1037 ac_prev=oldincludedir ;;
1038 -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
1039 | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
1040 | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
1041 oldincludedir=$ac_optarg ;;
1042
1043 -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
1044 ac_prev=prefix ;;
1045 -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
1046 prefix=$ac_optarg ;;
1047
1048 -program-prefix | --program-prefix | --program-prefi | --program-pref \
1049 | --program-pre | --program-pr | --program-p)
1050 ac_prev=program_prefix ;;
1051 -program-prefix=* | --program-prefix=* | --program-prefi=* \
1052 | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
1053 program_prefix=$ac_optarg ;;
1054
1055 -program-suffix | --program-suffix | --program-suffi | --program-suff \
1056 | --program-suf | --program-su | --program-s)
1057 ac_prev=program_suffix ;;
1058 -program-suffix=* | --program-suffix=* | --program-suffi=* \
1059 | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
1060 program_suffix=$ac_optarg ;;
1061
1062 -program-transform-name | --program-transform-name \
1063 | --program-transform-nam | --program-transform-na \
1064 | --program-transform-n | --program-transform- \
1065 | --program-transform | --program-transfor \
1066 | --program-transfo | --program-transf \
1067 | --program-trans | --program-tran \
1068 | --progr-tra | --program-tr | --program-t)
1069 ac_prev=program_transform_name ;;
1070 -program-transform-name=* | --program-transform-name=* \
1071 | --program-transform-nam=* | --program-transform-na=* \
1072 | --program-transform-n=* | --program-transform-=* \
1073 | --program-transform=* | --program-transfor=* \
1074 | --program-transfo=* | --program-transf=* \
1075 | --program-trans=* | --program-tran=* \
1076 | --progr-tra=* | --program-tr=* | --program-t=*)
1077 program_transform_name=$ac_optarg ;;
1078
1079 -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
1080 ac_prev=pdfdir ;;
1081 -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
1082 pdfdir=$ac_optarg ;;
1083
1084 -psdir | --psdir | --psdi | --psd | --ps)
1085 ac_prev=psdir ;;
1086 -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
1087 psdir=$ac_optarg ;;
1088
1089 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1090 | -silent | --silent | --silen | --sile | --sil)
1091 silent=yes ;;
1092
1093 -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
1094 ac_prev=sbindir ;;
1095 -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
1096 | --sbi=* | --sb=*)
1097 sbindir=$ac_optarg ;;
1098
1099 -sharedstatedir | --sharedstatedir | --sharedstatedi \
1100 | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
1101 | --sharedst | --shareds | --shared | --share | --shar \
1102 | --sha | --sh)
1103 ac_prev=sharedstatedir ;;
1104 -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
1105 | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
1106 | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
1107 | --sha=* | --sh=*)
1108 sharedstatedir=$ac_optarg ;;
1109
1110 -site | --site | --sit)
1111 ac_prev=site ;;
1112 -site=* | --site=* | --sit=*)
1113 site=$ac_optarg ;;
1114
1115 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
1116 ac_prev=srcdir ;;
1117 -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
1118 srcdir=$ac_optarg ;;
1119
1120 -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
1121 | --syscon | --sysco | --sysc | --sys | --sy)
1122 ac_prev=sysconfdir ;;
1123 -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
1124 | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
1125 sysconfdir=$ac_optarg ;;
1126
1127 -target | --target | --targe | --targ | --tar | --ta | --t)
1128 ac_prev=target_alias ;;
1129 -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
1130 target_alias=$ac_optarg ;;
1131
1132 -v | -verbose | --verbose | --verbos | --verbo | --verb)
1133 verbose=yes ;;
1134
1135 -version | --version | --versio | --versi | --vers | -V)
1136 ac_init_version=: ;;
1137
1138 -with-* | --with-*)
1139 ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
1140 # Reject names that are not valid shell variable names.
1141 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1142 as_fn_error $? "invalid package name: $ac_useropt"
1143 ac_useropt_orig=$ac_useropt
1144 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1145 case $ac_user_opts in
1146 *"
1147"with_$ac_useropt"
1148"*) ;;
1149 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
1150 ac_unrecognized_sep=', ';;
1151 esac
1152 eval with_$ac_useropt=\$ac_optarg ;;
1153
1154 -without-* | --without-*)
1155 ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
1156 # Reject names that are not valid shell variable names.
1157 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1158 as_fn_error $? "invalid package name: $ac_useropt"
1159 ac_useropt_orig=$ac_useropt
1160 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1161 case $ac_user_opts in
1162 *"
1163"with_$ac_useropt"
1164"*) ;;
1165 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
1166 ac_unrecognized_sep=', ';;
1167 esac
1168 eval with_$ac_useropt=no ;;
1169
1170 --x)
1171 # Obsolete; use --with-x.
1172 with_x=yes ;;
1173
1174 -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
1175 | --x-incl | --x-inc | --x-in | --x-i)
1176 ac_prev=x_includes ;;
1177 -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
1178 | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
1179 x_includes=$ac_optarg ;;
1180
1181 -x-libraries | --x-libraries | --x-librarie | --x-librari \
1182 | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
1183 ac_prev=x_libraries ;;
1184 -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
1185 | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
1186 x_libraries=$ac_optarg ;;
1187
1188 -*) as_fn_error $? "unrecognized option: \`$ac_option'
1189Try \`$0 --help' for more information"
1190 ;;
1191
1192 *=*)
1193 ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
1194 # Reject names that are not valid shell variable names.
1195 case $ac_envvar in #(
1196 '' | [0-9]* | *[!_$as_cr_alnum]* )
1197 as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
1198 esac
1199 eval $ac_envvar=\$ac_optarg
1200 export $ac_envvar ;;
1201
1202 *)
1203 # FIXME: should be removed in autoconf 3.0.
1204 $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
1205 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
1206 $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
1207 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
1208 ;;
1209
1210 esac
1211done
1212
1213if test -n "$ac_prev"; then
1214 ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1215 as_fn_error $? "missing argument to $ac_option"
1216fi
1217
1218if test -n "$ac_unrecognized_opts"; then
1219 case $enable_option_checking in
1220 no) ;;
1221 fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
1222 *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
1223 esac
1224fi
1225
1226# Check all directory arguments for consistency.
1227for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
1228 datadir sysconfdir sharedstatedir localstatedir includedir \
1229 oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
1230 libdir localedir mandir
1231do
1232 eval ac_val=\$$ac_var
1233 # Remove trailing slashes.
1234 case $ac_val in
1235 */ )
1236 ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
1237 eval $ac_var=\$ac_val;;
1238 esac
1239 # Be sure to have absolute directory names.
1240 case $ac_val in
1241 [\\/$]* | ?:[\\/]* ) continue;;
1242 NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
1243 esac
1244 as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
1245done
1246
1247# There might be people who depend on the old broken behavior: `$host'
1248# used to hold the argument of --host etc.
1249# FIXME: To remove some day.
1250build=$build_alias
1251host=$host_alias
1252target=$target_alias
1253
1254# FIXME: To remove some day.
1255if test "x$host_alias" != x; then
1256 if test "x$build_alias" = x; then
1257 cross_compiling=maybe
1258 elif test "x$build_alias" != "x$host_alias"; then
1259 cross_compiling=yes
1260 fi
1261fi
1262
1263ac_tool_prefix=
1264test -n "$host_alias" && ac_tool_prefix=$host_alias-
1265
1266test "$silent" = yes && exec 6>/dev/null
1267
1268
1269ac_pwd=`pwd` && test -n "$ac_pwd" &&
1270ac_ls_di=`ls -di .` &&
1271ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1272 as_fn_error $? "working directory cannot be determined"
1273test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
1274 as_fn_error $? "pwd does not report name of working directory"
1275
1276
1277# Find the source files, if location was not specified.
1278if test -z "$srcdir"; then
1279 ac_srcdir_defaulted=yes
1280 # Try the directory containing this script, then the parent directory.
1281 ac_confdir=`$as_dirname -- "$as_myself" ||
1282$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1283 X"$as_myself" : 'X\(//\)[^/]' \| \
1284 X"$as_myself" : 'X\(//\)$' \| \
1285 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
1286$as_echo X"$as_myself" |
1287 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1288 s//\1/
1289 q
1290 }
1291 /^X\(\/\/\)[^/].*/{
1292 s//\1/
1293 q
1294 }
1295 /^X\(\/\/\)$/{
1296 s//\1/
1297 q
1298 }
1299 /^X\(\/\).*/{
1300 s//\1/
1301 q
1302 }
1303 s/.*/./; q'`
1304 srcdir=$ac_confdir
1305 if test ! -r "$srcdir/$ac_unique_file"; then
1306 srcdir=..
1307 fi
1308else
1309 ac_srcdir_defaulted=no
1310fi
1311if test ! -r "$srcdir/$ac_unique_file"; then
1312 test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
1313 as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
1314fi
1315ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1316ac_abs_confdir=`(
1317 cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
1318 pwd)`
1319# When building in place, set srcdir=.
1320if test "$ac_abs_confdir" = "$ac_pwd"; then
1321 srcdir=.
1322fi
1323# Remove unnecessary trailing slashes from srcdir.
1324# Double slashes in file names in object file debugging info
1325# mess up M-x gdb in Emacs.
1326case $srcdir in
1327*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1328esac
1329for ac_var in $ac_precious_vars; do
1330 eval ac_env_${ac_var}_set=\${${ac_var}+set}
1331 eval ac_env_${ac_var}_value=\$${ac_var}
1332 eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
1333 eval ac_cv_env_${ac_var}_value=\$${ac_var}
1334done
1335
1336#
1337# Report the --help message.
1338#
1339if test "$ac_init_help" = "long"; then
1340 # Omit some internal or obsolete options to make the list less imposing.
1341 # This message is too long to be a string in the A/UX 3.1 sh.
1342 cat <<_ACEOF
1343\`configure' configures OpenSSH Portable to adapt to many kinds of systems.
1344
1345Usage: $0 [OPTION]... [VAR=VALUE]...
1346
1347To assign environment variables (e.g., CC, CFLAGS...), specify them as
1348VAR=VALUE. See below for descriptions of some of the useful variables.
1349
1350Defaults for the options are specified in brackets.
1351
1352Configuration:
1353 -h, --help display this help and exit
1354 --help=short display options specific to this package
1355 --help=recursive display the short help of all the included packages
1356 -V, --version display version information and exit
1357 -q, --quiet, --silent do not print \`checking ...' messages
1358 --cache-file=FILE cache test results in FILE [disabled]
1359 -C, --config-cache alias for \`--cache-file=config.cache'
1360 -n, --no-create do not create output files
1361 --srcdir=DIR find the sources in DIR [configure dir or \`..']
1362
1363Installation directories:
1364 --prefix=PREFIX install architecture-independent files in PREFIX
1365 [$ac_default_prefix]
1366 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
1367 [PREFIX]
1368
1369By default, \`make install' will install all the files in
1370\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
1371an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1372for instance \`--prefix=\$HOME'.
1373
1374For better control, use the options below.
1375
1376Fine tuning of the installation directories:
1377 --bindir=DIR user executables [EPREFIX/bin]
1378 --sbindir=DIR system admin executables [EPREFIX/sbin]
1379 --libexecdir=DIR program executables [EPREFIX/libexec]
1380 --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
1381 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
1382 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
1383 --libdir=DIR object code libraries [EPREFIX/lib]
1384 --includedir=DIR C header files [PREFIX/include]
1385 --oldincludedir=DIR C header files for non-gcc [/usr/include]
1386 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
1387 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
1388 --infodir=DIR info documentation [DATAROOTDIR/info]
1389 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
1390 --mandir=DIR man documentation [DATAROOTDIR/man]
1391 --docdir=DIR documentation root [DATAROOTDIR/doc/openssh]
1392 --htmldir=DIR html documentation [DOCDIR]
1393 --dvidir=DIR dvi documentation [DOCDIR]
1394 --pdfdir=DIR pdf documentation [DOCDIR]
1395 --psdir=DIR ps documentation [DOCDIR]
1396_ACEOF
1397
1398 cat <<\_ACEOF
1399
1400System types:
1401 --build=BUILD configure for building on BUILD [guessed]
1402 --host=HOST cross-compile to build programs to run on HOST [BUILD]
1403_ACEOF
1404fi
1405
1406if test -n "$ac_init_help"; then
1407 case $ac_init_help in
1408 short | recursive ) echo "Configuration of OpenSSH Portable:";;
1409 esac
1410 cat <<\_ACEOF
1411
1412Optional Features:
1413 --disable-option-checking ignore unrecognized --enable/--with options
1414 --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
1415 --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
1416 --disable-largefile omit support for large files
1417 --disable-pkcs11 disable PKCS#11 support code [no]
1418 --disable-strip Disable calling strip(1) on install
1419 --disable-etc-default-login Disable using PATH from /etc/default/login no
1420 --disable-lastlog disable use of lastlog even if detected no
1421 --disable-utmp disable use of utmp even if detected no
1422 --disable-utmpx disable use of utmpx even if detected no
1423 --disable-wtmp disable use of wtmp even if detected no
1424 --disable-wtmpx disable use of wtmpx even if detected no
1425 --disable-libutil disable use of libutil (login() etc.) no
1426 --disable-pututline disable use of pututline() etc. (uwtmp) no
1427 --disable-pututxline disable use of pututxline() etc. (uwtmpx) no
1428
1429Optional Packages:
1430 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
1431 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
1432 --without-openssl Disable use of OpenSSL; use only limited internal crypto **EXPERIMENTAL**
1433 --without-stackprotect Don't use compiler's stack protection
1434 --without-hardening Don't use toolchain hardening flags
1435 --without-rpath Disable auto-added -R linker paths
1436 --with-cflags Specify additional flags to pass to compiler
1437 --with-cflags-after Specify additional flags to pass to compiler after configure
1438 --with-cppflags Specify additional flags to pass to preprocessor
1439 --with-ldflags Specify additional flags to pass to linker
1440 --with-ldflags-after Specify additional flags to pass to linker after configure
1441 --with-libs Specify additional libraries to link with
1442 --with-Werror Build main code with -Werror
1443 --with-solaris-contracts Enable Solaris process contracts (experimental)
1444 --with-solaris-projects Enable Solaris projects (experimental)
1445 --with-solaris-privs Enable Solaris/Illumos privileges (experimental)
1446 --with-osfsia Enable Digital Unix SIA
1447 --with-zlib=PATH Use zlib in PATH
1448 --without-zlib-version-check Disable zlib version check
1449 --with-ldns[=PATH] Use ldns for DNSSEC support (optionally in PATH)
1450 --with-libedit[=PATH] Enable libedit support for sftp
1451 --with-audit=module Enable audit support (modules=debug,bsm,linux)
1452 --with-pie Build Position Independent Executables if possible
1453 --with-ssl-dir=PATH Specify path to OpenSSL installation
1454 --without-openssl-header-check Disable OpenSSL version consistency check
1455 --with-ssl-engine Enable OpenSSL (hardware) ENGINE support
1456 --with-prngd-port=PORT read entropy from PRNGD/EGD TCP localhost:PORT
1457 --with-prngd-socket=FILE read entropy from PRNGD/EGD socket FILE (default=/var/run/egd-pool)
1458 --with-pam Enable PAM support
1459 --with-pam-service=name Specify PAM service name
1460 --with-privsep-user=user Specify non-privileged user for privilege separation
1461 --with-sandbox=style Specify privilege separation sandbox (no, capsicum, darwin, rlimit, seccomp_filter, systrace, pledge)
1462 --with-selinux Enable SELinux support
1463 --with-kerberos5=PATH Enable Kerberos 5 support
1464 --with-privsep-path=xxx Path for privilege separation chroot (default=/var/empty)
1465 --with-xauth=PATH Specify path to xauth program
1466 --with-maildir=/path/to/mail Specify your system mail directory
1467 --with-mantype=man|cat|doc Set man page type
1468 --with-md5-passwords Enable use of MD5 passwords
1469 --without-shadow Disable shadow password support
1470 --with-ipaddr-display Use ip address instead of hostname in $DISPLAY
1471 --with-default-path= Specify default $PATH environment for server
1472 --with-superuser-path= Specify different path for super-user
1473 --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses
1474 --with-bsd-auth Enable BSD auth support
1475 --with-pid-dir=PATH Specify location of sshd.pid file
1476 --with-lastlog=FILE|DIR specify lastlog location common locations
1477
1478Some influential environment variables:
1479 CC C compiler command
1480 CFLAGS C compiler flags
1481 LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
1482 nonstandard directory <lib dir>
1483 LIBS libraries to pass to the linker, e.g. -l<library>
1484 CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
1485 you have headers in a nonstandard directory <include dir>
1486 CPP C preprocessor
1487
1488Use these variables to override the choices made by `configure' or to help
1489it to find libraries and programs with nonstandard names/locations.
1490
1491Report bugs to <openssh-unix-dev@mindrot.org>.
1492_ACEOF
1493ac_status=$?
1494fi
1495
1496if test "$ac_init_help" = "recursive"; then
1497 # If there are subdirs, report their specific --help.
1498 for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
1499 test -d "$ac_dir" ||
1500 { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
1501 continue
1502 ac_builddir=.
1503
1504case "$ac_dir" in
1505.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
1506*)
1507 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
1508 # A ".." for each directory in $ac_dir_suffix.
1509 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
1510 case $ac_top_builddir_sub in
1511 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
1512 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
1513 esac ;;
1514esac
1515ac_abs_top_builddir=$ac_pwd
1516ac_abs_builddir=$ac_pwd$ac_dir_suffix
1517# for backward compatibility:
1518ac_top_builddir=$ac_top_build_prefix
1519
1520case $srcdir in
1521 .) # We are building in place.
1522 ac_srcdir=.
1523 ac_top_srcdir=$ac_top_builddir_sub
1524 ac_abs_top_srcdir=$ac_pwd ;;
1525 [\\/]* | ?:[\\/]* ) # Absolute name.
1526 ac_srcdir=$srcdir$ac_dir_suffix;
1527 ac_top_srcdir=$srcdir
1528 ac_abs_top_srcdir=$srcdir ;;
1529 *) # Relative name.
1530 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
1531 ac_top_srcdir=$ac_top_build_prefix$srcdir
1532 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
1533esac
1534ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
1535
1536 cd "$ac_dir" || { ac_status=$?; continue; }
1537 # Check for guested configure.
1538 if test -f "$ac_srcdir/configure.gnu"; then
1539 echo &&
1540 $SHELL "$ac_srcdir/configure.gnu" --help=recursive
1541 elif test -f "$ac_srcdir/configure"; then
1542 echo &&
1543 $SHELL "$ac_srcdir/configure" --help=recursive
1544 else
1545 $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
1546 fi || ac_status=$?
1547 cd "$ac_pwd" || { ac_status=$?; break; }
1548 done
1549fi
1550
1551test -n "$ac_init_help" && exit $ac_status
1552if $ac_init_version; then
1553 cat <<\_ACEOF
1554OpenSSH configure Portable
1555generated by GNU Autoconf 2.69
1556
1557Copyright (C) 2012 Free Software Foundation, Inc.
1558This configure script is free software; the Free Software Foundation
1559gives unlimited permission to copy, distribute and modify it.
1560_ACEOF
1561 exit
1562fi
1563
1564## ------------------------ ##
1565## Autoconf initialization. ##
1566## ------------------------ ##
1567
1568# ac_fn_c_try_compile LINENO
1569# --------------------------
1570# Try to compile conftest.$ac_ext, and return whether this succeeded.
1571ac_fn_c_try_compile ()
1572{
1573 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1574 rm -f conftest.$ac_objext
1575 if { { ac_try="$ac_compile"
1576case "(($ac_try" in
1577 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1578 *) ac_try_echo=$ac_try;;
1579esac
1580eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1581$as_echo "$ac_try_echo"; } >&5
1582 (eval "$ac_compile") 2>conftest.err
1583 ac_status=$?
1584 if test -s conftest.err; then
1585 grep -v '^ *+' conftest.err >conftest.er1
1586 cat conftest.er1 >&5
1587 mv -f conftest.er1 conftest.err
1588 fi
1589 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1590 test $ac_status = 0; } && {
1591 test -z "$ac_c_werror_flag" ||
1592 test ! -s conftest.err
1593 } && test -s conftest.$ac_objext; then :
1594 ac_retval=0
1595else
1596 $as_echo "$as_me: failed program was:" >&5
1597sed 's/^/| /' conftest.$ac_ext >&5
1598
1599 ac_retval=1
1600fi
1601 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1602 as_fn_set_status $ac_retval
1603
1604} # ac_fn_c_try_compile
1605
1606# ac_fn_c_try_run LINENO
1607# ----------------------
1608# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
1609# that executables *can* be run.
1610ac_fn_c_try_run ()
1611{
1612 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1613 if { { ac_try="$ac_link"
1614case "(($ac_try" in
1615 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1616 *) ac_try_echo=$ac_try;;
1617esac
1618eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1619$as_echo "$ac_try_echo"; } >&5
1620 (eval "$ac_link") 2>&5
1621 ac_status=$?
1622 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1623 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
1624 { { case "(($ac_try" in
1625 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1626 *) ac_try_echo=$ac_try;;
1627esac
1628eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1629$as_echo "$ac_try_echo"; } >&5
1630 (eval "$ac_try") 2>&5
1631 ac_status=$?
1632 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1633 test $ac_status = 0; }; }; then :
1634 ac_retval=0
1635else
1636 $as_echo "$as_me: program exited with status $ac_status" >&5
1637 $as_echo "$as_me: failed program was:" >&5
1638sed 's/^/| /' conftest.$ac_ext >&5
1639
1640 ac_retval=$ac_status
1641fi
1642 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1643 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1644 as_fn_set_status $ac_retval
1645
1646} # ac_fn_c_try_run
1647
1648# ac_fn_c_try_cpp LINENO
1649# ----------------------
1650# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
1651ac_fn_c_try_cpp ()
1652{
1653 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1654 if { { ac_try="$ac_cpp conftest.$ac_ext"
1655case "(($ac_try" in
1656 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1657 *) ac_try_echo=$ac_try;;
1658esac
1659eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1660$as_echo "$ac_try_echo"; } >&5
1661 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
1662 ac_status=$?
1663 if test -s conftest.err; then
1664 grep -v '^ *+' conftest.err >conftest.er1
1665 cat conftest.er1 >&5
1666 mv -f conftest.er1 conftest.err
1667 fi
1668 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1669 test $ac_status = 0; } > conftest.i && {
1670 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
1671 test ! -s conftest.err
1672 }; then :
1673 ac_retval=0
1674else
1675 $as_echo "$as_me: failed program was:" >&5
1676sed 's/^/| /' conftest.$ac_ext >&5
1677
1678 ac_retval=1
1679fi
1680 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1681 as_fn_set_status $ac_retval
1682
1683} # ac_fn_c_try_cpp
1684
1685# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
1686# -------------------------------------------------------
1687# Tests whether HEADER exists and can be compiled using the include files in
1688# INCLUDES, setting the cache variable VAR accordingly.
1689ac_fn_c_check_header_compile ()
1690{
1691 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1692 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1693$as_echo_n "checking for $2... " >&6; }
1694if eval \${$3+:} false; then :
1695 $as_echo_n "(cached) " >&6
1696else
1697 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1698/* end confdefs.h. */
1699$4
1700#include <$2>
1701_ACEOF
1702if ac_fn_c_try_compile "$LINENO"; then :
1703 eval "$3=yes"
1704else
1705 eval "$3=no"
1706fi
1707rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1708fi
1709eval ac_res=\$$3
1710 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1711$as_echo "$ac_res" >&6; }
1712 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1713
1714} # ac_fn_c_check_header_compile
1715
1716# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
1717# ---------------------------------------------
1718# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
1719# accordingly.
1720ac_fn_c_check_decl ()
1721{
1722 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1723 as_decl_name=`echo $2|sed 's/ *(.*//'`
1724 as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
1725 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
1726$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
1727if eval \${$3+:} false; then :
1728 $as_echo_n "(cached) " >&6
1729else
1730 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1731/* end confdefs.h. */
1732$4
1733int
1734main ()
1735{
1736#ifndef $as_decl_name
1737#ifdef __cplusplus
1738 (void) $as_decl_use;
1739#else
1740 (void) $as_decl_name;
1741#endif
1742#endif
1743
1744 ;
1745 return 0;
1746}
1747_ACEOF
1748if ac_fn_c_try_compile "$LINENO"; then :
1749 eval "$3=yes"
1750else
1751 eval "$3=no"
1752fi
1753rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1754fi
1755eval ac_res=\$$3
1756 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1757$as_echo "$ac_res" >&6; }
1758 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1759
1760} # ac_fn_c_check_decl
1761
1762# ac_fn_c_try_link LINENO
1763# -----------------------
1764# Try to link conftest.$ac_ext, and return whether this succeeded.
1765ac_fn_c_try_link ()
1766{
1767 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1768 rm -f conftest.$ac_objext conftest$ac_exeext
1769 if { { ac_try="$ac_link"
1770case "(($ac_try" in
1771 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1772 *) ac_try_echo=$ac_try;;
1773esac
1774eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1775$as_echo "$ac_try_echo"; } >&5
1776 (eval "$ac_link") 2>conftest.err
1777 ac_status=$?
1778 if test -s conftest.err; then
1779 grep -v '^ *+' conftest.err >conftest.er1
1780 cat conftest.er1 >&5
1781 mv -f conftest.er1 conftest.err
1782 fi
1783 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1784 test $ac_status = 0; } && {
1785 test -z "$ac_c_werror_flag" ||
1786 test ! -s conftest.err
1787 } && test -s conftest$ac_exeext && {
1788 test "$cross_compiling" = yes ||
1789 test -x conftest$ac_exeext
1790 }; then :
1791 ac_retval=0
1792else
1793 $as_echo "$as_me: failed program was:" >&5
1794sed 's/^/| /' conftest.$ac_ext >&5
1795
1796 ac_retval=1
1797fi
1798 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
1799 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
1800 # interfere with the next link command; also delete a directory that is
1801 # left behind by Apple's compiler. We do this before executing the actions.
1802 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1803 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1804 as_fn_set_status $ac_retval
1805
1806} # ac_fn_c_try_link
1807
1808# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
1809# -------------------------------------------------------
1810# Tests whether HEADER exists, giving a warning if it cannot be compiled using
1811# the include files in INCLUDES and setting the cache variable VAR
1812# accordingly.
1813ac_fn_c_check_header_mongrel ()
1814{
1815 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1816 if eval \${$3+:} false; then :
1817 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1818$as_echo_n "checking for $2... " >&6; }
1819if eval \${$3+:} false; then :
1820 $as_echo_n "(cached) " >&6
1821fi
1822eval ac_res=\$$3
1823 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1824$as_echo "$ac_res" >&6; }
1825else
1826 # Is the header compilable?
1827{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
1828$as_echo_n "checking $2 usability... " >&6; }
1829cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1830/* end confdefs.h. */
1831$4
1832#include <$2>
1833_ACEOF
1834if ac_fn_c_try_compile "$LINENO"; then :
1835 ac_header_compiler=yes
1836else
1837 ac_header_compiler=no
1838fi
1839rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1840{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
1841$as_echo "$ac_header_compiler" >&6; }
1842
1843# Is the header present?
1844{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
1845$as_echo_n "checking $2 presence... " >&6; }
1846cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1847/* end confdefs.h. */
1848#include <$2>
1849_ACEOF
1850if ac_fn_c_try_cpp "$LINENO"; then :
1851 ac_header_preproc=yes
1852else
1853 ac_header_preproc=no
1854fi
1855rm -f conftest.err conftest.i conftest.$ac_ext
1856{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
1857$as_echo "$ac_header_preproc" >&6; }
1858
1859# So? What about this header?
1860case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
1861 yes:no: )
1862 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
1863$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
1864 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1865$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1866 ;;
1867 no:yes:* )
1868 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
1869$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
1870 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
1871$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
1872 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
1873$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
1874 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
1875$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
1876 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1877$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1878( $as_echo "## ------------------------------------------- ##
1879## Report this to openssh-unix-dev@mindrot.org ##
1880## ------------------------------------------- ##"
1881 ) | sed "s/^/$as_me: WARNING: /" >&2
1882 ;;
1883esac
1884 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1885$as_echo_n "checking for $2... " >&6; }
1886if eval \${$3+:} false; then :
1887 $as_echo_n "(cached) " >&6
1888else
1889 eval "$3=\$ac_header_compiler"
1890fi
1891eval ac_res=\$$3
1892 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1893$as_echo "$ac_res" >&6; }
1894fi
1895 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1896
1897} # ac_fn_c_check_header_mongrel
1898
1899# ac_fn_c_check_func LINENO FUNC VAR
1900# ----------------------------------
1901# Tests whether FUNC exists, setting the cache variable VAR accordingly
1902ac_fn_c_check_func ()
1903{
1904 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1905 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1906$as_echo_n "checking for $2... " >&6; }
1907if eval \${$3+:} false; then :
1908 $as_echo_n "(cached) " >&6
1909else
1910 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1911/* end confdefs.h. */
1912/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
1913 For example, HP-UX 11i <limits.h> declares gettimeofday. */
1914#define $2 innocuous_$2
1915
1916/* System header to define __stub macros and hopefully few prototypes,
1917 which can conflict with char $2 (); below.
1918 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
1919 <limits.h> exists even on freestanding compilers. */
1920
1921#ifdef __STDC__
1922# include <limits.h>
1923#else
1924# include <assert.h>
1925#endif
1926
1927#undef $2
1928
1929/* Override any GCC internal prototype to avoid an error.
1930 Use char because int might match the return type of a GCC
1931 builtin and then its argument prototype would still apply. */
1932#ifdef __cplusplus
1933extern "C"
1934#endif
1935char $2 ();
1936/* The GNU C library defines this for functions which it implements
1937 to always fail with ENOSYS. Some functions are actually named
1938 something starting with __ and the normal name is an alias. */
1939#if defined __stub_$2 || defined __stub___$2
1940choke me
1941#endif
1942
1943int
1944main ()
1945{
1946return $2 ();
1947 ;
1948 return 0;
1949}
1950_ACEOF
1951if ac_fn_c_try_link "$LINENO"; then :
1952 eval "$3=yes"
1953else
1954 eval "$3=no"
1955fi
1956rm -f core conftest.err conftest.$ac_objext \
1957 conftest$ac_exeext conftest.$ac_ext
1958fi
1959eval ac_res=\$$3
1960 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1961$as_echo "$ac_res" >&6; }
1962 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1963
1964} # ac_fn_c_check_func
1965
1966# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
1967# -------------------------------------------
1968# Tests whether TYPE exists after having included INCLUDES, setting cache
1969# variable VAR accordingly.
1970ac_fn_c_check_type ()
1971{
1972 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1973 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1974$as_echo_n "checking for $2... " >&6; }
1975if eval \${$3+:} false; then :
1976 $as_echo_n "(cached) " >&6
1977else
1978 eval "$3=no"
1979 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1980/* end confdefs.h. */
1981$4
1982int
1983main ()
1984{
1985if (sizeof ($2))
1986 return 0;
1987 ;
1988 return 0;
1989}
1990_ACEOF
1991if ac_fn_c_try_compile "$LINENO"; then :
1992 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1993/* end confdefs.h. */
1994$4
1995int
1996main ()
1997{
1998if (sizeof (($2)))
1999 return 0;
2000 ;
2001 return 0;
2002}
2003_ACEOF
2004if ac_fn_c_try_compile "$LINENO"; then :
2005
2006else
2007 eval "$3=yes"
2008fi
2009rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2010fi
2011rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2012fi
2013eval ac_res=\$$3
2014 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
2015$as_echo "$ac_res" >&6; }
2016 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
2017
2018} # ac_fn_c_check_type
2019
2020# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
2021# --------------------------------------------
2022# Tries to find the compile-time value of EXPR in a program that includes
2023# INCLUDES, setting VAR accordingly. Returns whether the value could be
2024# computed
2025ac_fn_c_compute_int ()
2026{
2027 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
2028 if test "$cross_compiling" = yes; then
2029 # Depending upon the size, compute the lo and hi bounds.
2030cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2031/* end confdefs.h. */
2032$4
2033int
2034main ()
2035{
2036static int test_array [1 - 2 * !(($2) >= 0)];
2037test_array [0] = 0;
2038return test_array [0];
2039
2040 ;
2041 return 0;
2042}
2043_ACEOF
2044if ac_fn_c_try_compile "$LINENO"; then :
2045 ac_lo=0 ac_mid=0
2046 while :; do
2047 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2048/* end confdefs.h. */
2049$4
2050int
2051main ()
2052{
2053static int test_array [1 - 2 * !(($2) <= $ac_mid)];
2054test_array [0] = 0;
2055return test_array [0];
2056
2057 ;
2058 return 0;
2059}
2060_ACEOF
2061if ac_fn_c_try_compile "$LINENO"; then :
2062 ac_hi=$ac_mid; break
2063else
2064 as_fn_arith $ac_mid + 1 && ac_lo=$as_val
2065 if test $ac_lo -le $ac_mid; then
2066 ac_lo= ac_hi=
2067 break
2068 fi
2069 as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
2070fi
2071rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2072 done
2073else
2074 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2075/* end confdefs.h. */
2076$4
2077int
2078main ()
2079{
2080static int test_array [1 - 2 * !(($2) < 0)];
2081test_array [0] = 0;
2082return test_array [0];
2083
2084 ;
2085 return 0;
2086}
2087_ACEOF
2088if ac_fn_c_try_compile "$LINENO"; then :
2089 ac_hi=-1 ac_mid=-1
2090 while :; do
2091 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2092/* end confdefs.h. */
2093$4
2094int
2095main ()
2096{
2097static int test_array [1 - 2 * !(($2) >= $ac_mid)];
2098test_array [0] = 0;
2099return test_array [0];
2100
2101 ;
2102 return 0;
2103}
2104_ACEOF
2105if ac_fn_c_try_compile "$LINENO"; then :
2106 ac_lo=$ac_mid; break
2107else
2108 as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
2109 if test $ac_mid -le $ac_hi; then
2110 ac_lo= ac_hi=
2111 break
2112 fi
2113 as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
2114fi
2115rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2116 done
2117else
2118 ac_lo= ac_hi=
2119fi
2120rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2121fi
2122rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2123# Binary search between lo and hi bounds.
2124while test "x$ac_lo" != "x$ac_hi"; do
2125 as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
2126 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2127/* end confdefs.h. */
2128$4
2129int
2130main ()
2131{
2132static int test_array [1 - 2 * !(($2) <= $ac_mid)];
2133test_array [0] = 0;
2134return test_array [0];
2135
2136 ;
2137 return 0;
2138}
2139_ACEOF
2140if ac_fn_c_try_compile "$LINENO"; then :
2141 ac_hi=$ac_mid
2142else
2143 as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
2144fi
2145rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2146done
2147case $ac_lo in #((
2148?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
2149'') ac_retval=1 ;;
2150esac
2151 else
2152 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2153/* end confdefs.h. */
2154$4
2155static long int longval () { return $2; }
2156static unsigned long int ulongval () { return $2; }
2157#include <stdio.h>
2158#include <stdlib.h>
2159int
2160main ()
2161{
2162
2163 FILE *f = fopen ("conftest.val", "w");
2164 if (! f)
2165 return 1;
2166 if (($2) < 0)
2167 {
2168 long int i = longval ();
2169 if (i != ($2))
2170 return 1;
2171 fprintf (f, "%ld", i);
2172 }
2173 else
2174 {
2175 unsigned long int i = ulongval ();
2176 if (i != ($2))
2177 return 1;
2178 fprintf (f, "%lu", i);
2179 }
2180 /* Do not output a trailing newline, as this causes \r\n confusion
2181 on some platforms. */
2182 return ferror (f) || fclose (f) != 0;
2183
2184 ;
2185 return 0;
2186}
2187_ACEOF
2188if ac_fn_c_try_run "$LINENO"; then :
2189 echo >>conftest.val; read $3 <conftest.val; ac_retval=0
2190else
2191 ac_retval=1
2192fi
2193rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
2194 conftest.$ac_objext conftest.beam conftest.$ac_ext
2195rm -f conftest.val
2196
2197 fi
2198 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
2199 as_fn_set_status $ac_retval
2200
2201} # ac_fn_c_compute_int
2202
2203# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
2204# ----------------------------------------------------
2205# Tries to find if the field MEMBER exists in type AGGR, after including
2206# INCLUDES, setting cache variable VAR accordingly.
2207ac_fn_c_check_member ()
2208{
2209 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
2210 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
2211$as_echo_n "checking for $2.$3... " >&6; }
2212if eval \${$4+:} false; then :
2213 $as_echo_n "(cached) " >&6
2214else
2215 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2216/* end confdefs.h. */
2217$5
2218int
2219main ()
2220{
2221static $2 ac_aggr;
2222if (ac_aggr.$3)
2223return 0;
2224 ;
2225 return 0;
2226}
2227_ACEOF
2228if ac_fn_c_try_compile "$LINENO"; then :
2229 eval "$4=yes"
2230else
2231 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2232/* end confdefs.h. */
2233$5
2234int
2235main ()
2236{
2237static $2 ac_aggr;
2238if (sizeof ac_aggr.$3)
2239return 0;
2240 ;
2241 return 0;
2242}
2243_ACEOF
2244if ac_fn_c_try_compile "$LINENO"; then :
2245 eval "$4=yes"
2246else
2247 eval "$4=no"
2248fi
2249rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2250fi
2251rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2252fi
2253eval ac_res=\$$4
2254 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
2255$as_echo "$ac_res" >&6; }
2256 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
2257
2258} # ac_fn_c_check_member
2259cat >config.log <<_ACEOF
2260This file contains any messages produced by compilers while
2261running configure, to aid debugging if configure makes a mistake.
2262
2263It was created by OpenSSH $as_me Portable, which was
2264generated by GNU Autoconf 2.69. Invocation command line was
2265
2266 $ $0 $@
2267
2268_ACEOF
2269exec 5>>config.log
2270{
2271cat <<_ASUNAME
2272## --------- ##
2273## Platform. ##
2274## --------- ##
2275
2276hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
2277uname -m = `(uname -m) 2>/dev/null || echo unknown`
2278uname -r = `(uname -r) 2>/dev/null || echo unknown`
2279uname -s = `(uname -s) 2>/dev/null || echo unknown`
2280uname -v = `(uname -v) 2>/dev/null || echo unknown`
2281
2282/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
2283/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
2284
2285/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
2286/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
2287/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
2288/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
2289/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
2290/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
2291/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
2292
2293_ASUNAME
2294
2295as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2296for as_dir in $PATH
2297do
2298 IFS=$as_save_IFS
2299 test -z "$as_dir" && as_dir=.
2300 $as_echo "PATH: $as_dir"
2301 done
2302IFS=$as_save_IFS
2303
2304} >&5
2305
2306cat >&5 <<_ACEOF
2307
2308
2309## ----------- ##
2310## Core tests. ##
2311## ----------- ##
2312
2313_ACEOF
2314
2315
2316# Keep a trace of the command line.
2317# Strip out --no-create and --no-recursion so they do not pile up.
2318# Strip out --silent because we don't want to record it for future runs.
2319# Also quote any args containing shell meta-characters.
2320# Make two passes to allow for proper duplicate-argument suppression.
2321ac_configure_args=
2322ac_configure_args0=
2323ac_configure_args1=
2324ac_must_keep_next=false
2325for ac_pass in 1 2
2326do
2327 for ac_arg
2328 do
2329 case $ac_arg in
2330 -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
2331 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
2332 | -silent | --silent | --silen | --sile | --sil)
2333 continue ;;
2334 *\'*)
2335 ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
2336 esac
2337 case $ac_pass in
2338 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2339 2)
2340 as_fn_append ac_configure_args1 " '$ac_arg'"
2341 if test $ac_must_keep_next = true; then
2342 ac_must_keep_next=false # Got value, back to normal.
2343 else
2344 case $ac_arg in
2345 *=* | --config-cache | -C | -disable-* | --disable-* \
2346 | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
2347 | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
2348 | -with-* | --with-* | -without-* | --without-* | --x)
2349 case "$ac_configure_args0 " in
2350 "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
2351 esac
2352 ;;
2353 -* ) ac_must_keep_next=true ;;
2354 esac
2355 fi
2356 as_fn_append ac_configure_args " '$ac_arg'"
2357 ;;
2358 esac
2359 done
2360done
2361{ ac_configure_args0=; unset ac_configure_args0;}
2362{ ac_configure_args1=; unset ac_configure_args1;}
2363
2364# When interrupted or exit'd, cleanup temporary files, and complete
2365# config.log. We remove comments because anyway the quotes in there
2366# would cause problems or look ugly.
2367# WARNING: Use '\'' to represent an apostrophe within the trap.
2368# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
2369trap 'exit_status=$?
2370 # Save into config.log some information that might help in debugging.
2371 {
2372 echo
2373
2374 $as_echo "## ---------------- ##
2375## Cache variables. ##
2376## ---------------- ##"
2377 echo
2378 # The following way of writing the cache mishandles newlines in values,
2379(
2380 for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
2381 eval ac_val=\$$ac_var
2382 case $ac_val in #(
2383 *${as_nl}*)
2384 case $ac_var in #(
2385 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
2386$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
2387 esac
2388 case $ac_var in #(
2389 _ | IFS | as_nl) ;; #(
2390 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
2391 *) { eval $ac_var=; unset $ac_var;} ;;
2392 esac ;;
2393 esac
2394 done
2395 (set) 2>&1 |
2396 case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
2397 *${as_nl}ac_space=\ *)
2398 sed -n \
2399 "s/'\''/'\''\\\\'\'''\''/g;
2400 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
2401 ;; #(
2402 *)
2403 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
2404 ;;
2405 esac |
2406 sort
2407)
2408 echo
2409
2410 $as_echo "## ----------------- ##
2411## Output variables. ##
2412## ----------------- ##"
2413 echo
2414 for ac_var in $ac_subst_vars
2415 do
2416 eval ac_val=\$$ac_var
2417 case $ac_val in
2418 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2419 esac
2420 $as_echo "$ac_var='\''$ac_val'\''"
2421 done | sort
2422 echo
2423
2424 if test -n "$ac_subst_files"; then
2425 $as_echo "## ------------------- ##
2426## File substitutions. ##
2427## ------------------- ##"
2428 echo
2429 for ac_var in $ac_subst_files
2430 do
2431 eval ac_val=\$$ac_var
2432 case $ac_val in
2433 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2434 esac
2435 $as_echo "$ac_var='\''$ac_val'\''"
2436 done | sort
2437 echo
2438 fi
2439
2440 if test -s confdefs.h; then
2441 $as_echo "## ----------- ##
2442## confdefs.h. ##
2443## ----------- ##"
2444 echo
2445 cat confdefs.h
2446 echo
2447 fi
2448 test "$ac_signal" != 0 &&
2449 $as_echo "$as_me: caught signal $ac_signal"
2450 $as_echo "$as_me: exit $exit_status"
2451 } >&5
2452 rm -f core *.core core.conftest.* &&
2453 rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
2454 exit $exit_status
2455' 0
2456for ac_signal in 1 2 13 15; do
2457 trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
2458done
2459ac_signal=0
2460
2461# confdefs.h avoids OS command line length limits that DEFS can exceed.
2462rm -f -r conftest* confdefs.h
2463
2464$as_echo "/* confdefs.h */" > confdefs.h
2465
2466# Predefined preprocessor variables.
2467
2468cat >>confdefs.h <<_ACEOF
2469#define PACKAGE_NAME "$PACKAGE_NAME"
2470_ACEOF
2471
2472cat >>confdefs.h <<_ACEOF
2473#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
2474_ACEOF
2475
2476cat >>confdefs.h <<_ACEOF
2477#define PACKAGE_VERSION "$PACKAGE_VERSION"
2478_ACEOF
2479
2480cat >>confdefs.h <<_ACEOF
2481#define PACKAGE_STRING "$PACKAGE_STRING"
2482_ACEOF
2483
2484cat >>confdefs.h <<_ACEOF
2485#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
2486_ACEOF
2487
2488cat >>confdefs.h <<_ACEOF
2489#define PACKAGE_URL "$PACKAGE_URL"
2490_ACEOF
2491
2492
2493# Let the site file select an alternate cache file if it wants to.
2494# Prefer an explicitly selected file to automatically selected ones.
2495ac_site_file1=NONE
2496ac_site_file2=NONE
2497if test -n "$CONFIG_SITE"; then
2498 # We do not want a PATH search for config.site.
2499 case $CONFIG_SITE in #((
2500 -*) ac_site_file1=./$CONFIG_SITE;;
2501 */*) ac_site_file1=$CONFIG_SITE;;
2502 *) ac_site_file1=./$CONFIG_SITE;;
2503 esac
2504elif test "x$prefix" != xNONE; then
2505 ac_site_file1=$prefix/share/config.site
2506 ac_site_file2=$prefix/etc/config.site
2507else
2508 ac_site_file1=$ac_default_prefix/share/config.site
2509 ac_site_file2=$ac_default_prefix/etc/config.site
2510fi
2511for ac_site_file in "$ac_site_file1" "$ac_site_file2"
2512do
2513 test "x$ac_site_file" = xNONE && continue
2514 if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
2515 { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
2516$as_echo "$as_me: loading site script $ac_site_file" >&6;}
2517 sed 's/^/| /' "$ac_site_file" >&5
2518 . "$ac_site_file" \
2519 || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2520$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2521as_fn_error $? "failed to load site script $ac_site_file
2522See \`config.log' for more details" "$LINENO" 5; }
2523 fi
2524done
2525
2526if test -r "$cache_file"; then
2527 # Some versions of bash will fail to source /dev/null (special files
2528 # actually), so we avoid doing that. DJGPP emulates it as a regular file.
2529 if test /dev/null != "$cache_file" && test -f "$cache_file"; then
2530 { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
2531$as_echo "$as_me: loading cache $cache_file" >&6;}
2532 case $cache_file in
2533 [\\/]* | ?:[\\/]* ) . "$cache_file";;
2534 *) . "./$cache_file";;
2535 esac
2536 fi
2537else
2538 { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
2539$as_echo "$as_me: creating cache $cache_file" >&6;}
2540 >$cache_file
2541fi
2542
2543# Check that the precious variables saved in the cache have kept the same
2544# value.
2545ac_cache_corrupted=false
2546for ac_var in $ac_precious_vars; do
2547 eval ac_old_set=\$ac_cv_env_${ac_var}_set
2548 eval ac_new_set=\$ac_env_${ac_var}_set
2549 eval ac_old_val=\$ac_cv_env_${ac_var}_value
2550 eval ac_new_val=\$ac_env_${ac_var}_value
2551 case $ac_old_set,$ac_new_set in
2552 set,)
2553 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
2554$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
2555 ac_cache_corrupted=: ;;
2556 ,set)
2557 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
2558$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
2559 ac_cache_corrupted=: ;;
2560 ,);;
2561 *)
2562 if test "x$ac_old_val" != "x$ac_new_val"; then
2563 # differences in whitespace do not lead to failure.
2564 ac_old_val_w=`echo x $ac_old_val`
2565 ac_new_val_w=`echo x $ac_new_val`
2566 if test "$ac_old_val_w" != "$ac_new_val_w"; then
2567 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
2568$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
2569 ac_cache_corrupted=:
2570 else
2571 { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
2572$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
2573 eval $ac_var=\$ac_old_val
2574 fi
2575 { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
2576$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
2577 { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
2578$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
2579 fi;;
2580 esac
2581 # Pass precious variables to config.status.
2582 if test "$ac_new_set" = set; then
2583 case $ac_new_val in
2584 *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
2585 *) ac_arg=$ac_var=$ac_new_val ;;
2586 esac
2587 case " $ac_configure_args " in
2588 *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
2589 *) as_fn_append ac_configure_args " '$ac_arg'" ;;
2590 esac
2591 fi
2592done
2593if $ac_cache_corrupted; then
2594 { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2595$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2596 { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
2597$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
2598 as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
2599fi
2600## -------------------- ##
2601## Main body of script. ##
2602## -------------------- ##
2603
2604ac_ext=c
2605ac_cpp='$CPP $CPPFLAGS'
2606ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2607ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2608ac_compiler_gnu=$ac_cv_c_compiler_gnu
2609
2610
2611
2612
2613ac_ext=c
2614ac_cpp='$CPP $CPPFLAGS'
2615ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2616ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2617ac_compiler_gnu=$ac_cv_c_compiler_gnu
2618
2619
2620ac_config_headers="$ac_config_headers config.h"
2621
2622ac_ext=c
2623ac_cpp='$CPP $CPPFLAGS'
2624ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2625ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2626ac_compiler_gnu=$ac_cv_c_compiler_gnu
2627if test -n "$ac_tool_prefix"; then
2628 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
2629set dummy ${ac_tool_prefix}gcc; ac_word=$2
2630{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2631$as_echo_n "checking for $ac_word... " >&6; }
2632if ${ac_cv_prog_CC+:} false; then :
2633 $as_echo_n "(cached) " >&6
2634else
2635 if test -n "$CC"; then
2636 ac_cv_prog_CC="$CC" # Let the user override the test.
2637else
2638as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2639for as_dir in $PATH
2640do
2641 IFS=$as_save_IFS
2642 test -z "$as_dir" && as_dir=.
2643 for ac_exec_ext in '' $ac_executable_extensions; do
2644 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2645 ac_cv_prog_CC="${ac_tool_prefix}gcc"
2646 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2647 break 2
2648 fi
2649done
2650 done
2651IFS=$as_save_IFS
2652
2653fi
2654fi
2655CC=$ac_cv_prog_CC
2656if test -n "$CC"; then
2657 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2658$as_echo "$CC" >&6; }
2659else
2660 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2661$as_echo "no" >&6; }
2662fi
2663
2664
2665fi
2666if test -z "$ac_cv_prog_CC"; then
2667 ac_ct_CC=$CC
2668 # Extract the first word of "gcc", so it can be a program name with args.
2669set dummy gcc; ac_word=$2
2670{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2671$as_echo_n "checking for $ac_word... " >&6; }
2672if ${ac_cv_prog_ac_ct_CC+:} false; then :
2673 $as_echo_n "(cached) " >&6
2674else
2675 if test -n "$ac_ct_CC"; then
2676 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2677else
2678as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2679for as_dir in $PATH
2680do
2681 IFS=$as_save_IFS
2682 test -z "$as_dir" && as_dir=.
2683 for ac_exec_ext in '' $ac_executable_extensions; do
2684 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2685 ac_cv_prog_ac_ct_CC="gcc"
2686 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2687 break 2
2688 fi
2689done
2690 done
2691IFS=$as_save_IFS
2692
2693fi
2694fi
2695ac_ct_CC=$ac_cv_prog_ac_ct_CC
2696if test -n "$ac_ct_CC"; then
2697 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
2698$as_echo "$ac_ct_CC" >&6; }
2699else
2700 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2701$as_echo "no" >&6; }
2702fi
2703
2704 if test "x$ac_ct_CC" = x; then
2705 CC=""
2706 else
2707 case $cross_compiling:$ac_tool_warned in
2708yes:)
2709{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
2710$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2711ac_tool_warned=yes ;;
2712esac
2713 CC=$ac_ct_CC
2714 fi
2715else
2716 CC="$ac_cv_prog_CC"
2717fi
2718
2719if test -z "$CC"; then
2720 if test -n "$ac_tool_prefix"; then
2721 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
2722set dummy ${ac_tool_prefix}cc; ac_word=$2
2723{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2724$as_echo_n "checking for $ac_word... " >&6; }
2725if ${ac_cv_prog_CC+:} false; then :
2726 $as_echo_n "(cached) " >&6
2727else
2728 if test -n "$CC"; then
2729 ac_cv_prog_CC="$CC" # Let the user override the test.
2730else
2731as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2732for as_dir in $PATH
2733do
2734 IFS=$as_save_IFS
2735 test -z "$as_dir" && as_dir=.
2736 for ac_exec_ext in '' $ac_executable_extensions; do
2737 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2738 ac_cv_prog_CC="${ac_tool_prefix}cc"
2739 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2740 break 2
2741 fi
2742done
2743 done
2744IFS=$as_save_IFS
2745
2746fi
2747fi
2748CC=$ac_cv_prog_CC
2749if test -n "$CC"; then
2750 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2751$as_echo "$CC" >&6; }
2752else
2753 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2754$as_echo "no" >&6; }
2755fi
2756
2757
2758 fi
2759fi
2760if test -z "$CC"; then
2761 # Extract the first word of "cc", so it can be a program name with args.
2762set dummy cc; ac_word=$2
2763{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2764$as_echo_n "checking for $ac_word... " >&6; }
2765if ${ac_cv_prog_CC+:} false; then :
2766 $as_echo_n "(cached) " >&6
2767else
2768 if test -n "$CC"; then
2769 ac_cv_prog_CC="$CC" # Let the user override the test.
2770else
2771 ac_prog_rejected=no
2772as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2773for as_dir in $PATH
2774do
2775 IFS=$as_save_IFS
2776 test -z "$as_dir" && as_dir=.
2777 for ac_exec_ext in '' $ac_executable_extensions; do
2778 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2779 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
2780 ac_prog_rejected=yes
2781 continue
2782 fi
2783 ac_cv_prog_CC="cc"
2784 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2785 break 2
2786 fi
2787done
2788 done
2789IFS=$as_save_IFS
2790
2791if test $ac_prog_rejected = yes; then
2792 # We found a bogon in the path, so make sure we never use it.
2793 set dummy $ac_cv_prog_CC
2794 shift
2795 if test $# != 0; then
2796 # We chose a different compiler from the bogus one.
2797 # However, it has the same basename, so the bogon will be chosen
2798 # first if we set CC to just the basename; use the full file name.
2799 shift
2800 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
2801 fi
2802fi
2803fi
2804fi
2805CC=$ac_cv_prog_CC
2806if test -n "$CC"; then
2807 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2808$as_echo "$CC" >&6; }
2809else
2810 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2811$as_echo "no" >&6; }
2812fi
2813
2814
2815fi
2816if test -z "$CC"; then
2817 if test -n "$ac_tool_prefix"; then
2818 for ac_prog in cl.exe
2819 do
2820 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
2821set dummy $ac_tool_prefix$ac_prog; ac_word=$2
2822{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2823$as_echo_n "checking for $ac_word... " >&6; }
2824if ${ac_cv_prog_CC+:} false; then :
2825 $as_echo_n "(cached) " >&6
2826else
2827 if test -n "$CC"; then
2828 ac_cv_prog_CC="$CC" # Let the user override the test.
2829else
2830as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2831for as_dir in $PATH
2832do
2833 IFS=$as_save_IFS
2834 test -z "$as_dir" && as_dir=.
2835 for ac_exec_ext in '' $ac_executable_extensions; do
2836 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2837 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
2838 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2839 break 2
2840 fi
2841done
2842 done
2843IFS=$as_save_IFS
2844
2845fi
2846fi
2847CC=$ac_cv_prog_CC
2848if test -n "$CC"; then
2849 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
2850$as_echo "$CC" >&6; }
2851else
2852 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2853$as_echo "no" >&6; }
2854fi
2855
2856
2857 test -n "$CC" && break
2858 done
2859fi
2860if test -z "$CC"; then
2861 ac_ct_CC=$CC
2862 for ac_prog in cl.exe
2863do
2864 # Extract the first word of "$ac_prog", so it can be a program name with args.
2865set dummy $ac_prog; ac_word=$2
2866{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2867$as_echo_n "checking for $ac_word... " >&6; }
2868if ${ac_cv_prog_ac_ct_CC+:} false; then :
2869 $as_echo_n "(cached) " >&6
2870else
2871 if test -n "$ac_ct_CC"; then
2872 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2873else
2874as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2875for as_dir in $PATH
2876do
2877 IFS=$as_save_IFS
2878 test -z "$as_dir" && as_dir=.
2879 for ac_exec_ext in '' $ac_executable_extensions; do
2880 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2881 ac_cv_prog_ac_ct_CC="$ac_prog"
2882 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2883 break 2
2884 fi
2885done
2886 done
2887IFS=$as_save_IFS
2888
2889fi
2890fi
2891ac_ct_CC=$ac_cv_prog_ac_ct_CC
2892if test -n "$ac_ct_CC"; then
2893 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
2894$as_echo "$ac_ct_CC" >&6; }
2895else
2896 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2897$as_echo "no" >&6; }
2898fi
2899
2900
2901 test -n "$ac_ct_CC" && break
2902done
2903
2904 if test "x$ac_ct_CC" = x; then
2905 CC=""
2906 else
2907 case $cross_compiling:$ac_tool_warned in
2908yes:)
2909{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
2910$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2911ac_tool_warned=yes ;;
2912esac
2913 CC=$ac_ct_CC
2914 fi
2915fi
2916
2917fi
2918
2919
2920test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2921$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2922as_fn_error $? "no acceptable C compiler found in \$PATH
2923See \`config.log' for more details" "$LINENO" 5; }
2924
2925# Provide some information about the compiler.
2926$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
2927set X $ac_compile
2928ac_compiler=$2
2929for ac_option in --version -v -V -qversion; do
2930 { { ac_try="$ac_compiler $ac_option >&5"
2931case "(($ac_try" in
2932 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2933 *) ac_try_echo=$ac_try;;
2934esac
2935eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
2936$as_echo "$ac_try_echo"; } >&5
2937 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
2938 ac_status=$?
2939 if test -s conftest.err; then
2940 sed '10a\
2941... rest of stderr output deleted ...
2942 10q' conftest.err >conftest.er1
2943 cat conftest.er1 >&5
2944 fi
2945 rm -f conftest.er1 conftest.err
2946 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
2947 test $ac_status = 0; }
2948done
2949
2950cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2951/* end confdefs.h. */
2952
2953int
2954main ()
2955{
2956
2957 ;
2958 return 0;
2959}
2960_ACEOF
2961ac_clean_files_save=$ac_clean_files
2962ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
2963# Try to create an executable without -o first, disregard a.out.
2964# It will help us diagnose broken compilers, and finding out an intuition
2965# of exeext.
2966{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
2967$as_echo_n "checking whether the C compiler works... " >&6; }
2968ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
2969
2970# The possible output files:
2971ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
2972
2973ac_rmfiles=
2974for ac_file in $ac_files
2975do
2976 case $ac_file in
2977 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
2978 * ) ac_rmfiles="$ac_rmfiles $ac_file";;
2979 esac
2980done
2981rm -f $ac_rmfiles
2982
2983if { { ac_try="$ac_link_default"
2984case "(($ac_try" in
2985 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2986 *) ac_try_echo=$ac_try;;
2987esac
2988eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
2989$as_echo "$ac_try_echo"; } >&5
2990 (eval "$ac_link_default") 2>&5
2991 ac_status=$?
2992 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
2993 test $ac_status = 0; }; then :
2994 # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
2995# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
2996# in a Makefile. We should not override ac_cv_exeext if it was cached,
2997# so that the user can short-circuit this test for compilers unknown to
2998# Autoconf.
2999for ac_file in $ac_files ''
3000do
3001 test -f "$ac_file" || continue
3002 case $ac_file in
3003 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
3004 ;;
3005 [ab].out )
3006 # We found the default executable, but exeext='' is most
3007 # certainly right.
3008 break;;
3009 *.* )
3010 if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
3011 then :; else
3012 ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3013 fi
3014 # We set ac_cv_exeext here because the later test for it is not
3015 # safe: cross compilers may not add the suffix if given an `-o'
3016 # argument, so we may need to know it at that point already.
3017 # Even if this section looks crufty: it has the advantage of
3018 # actually working.
3019 break;;
3020 * )
3021 break;;
3022 esac
3023done
3024test "$ac_cv_exeext" = no && ac_cv_exeext=
3025
3026else
3027 ac_file=''
3028fi
3029if test -z "$ac_file"; then :
3030 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3031$as_echo "no" >&6; }
3032$as_echo "$as_me: failed program was:" >&5
3033sed 's/^/| /' conftest.$ac_ext >&5
3034
3035{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3036$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3037as_fn_error 77 "C compiler cannot create executables
3038See \`config.log' for more details" "$LINENO" 5; }
3039else
3040 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
3041$as_echo "yes" >&6; }
3042fi
3043{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
3044$as_echo_n "checking for C compiler default output file name... " >&6; }
3045{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
3046$as_echo "$ac_file" >&6; }
3047ac_exeext=$ac_cv_exeext
3048
3049rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
3050ac_clean_files=$ac_clean_files_save
3051{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
3052$as_echo_n "checking for suffix of executables... " >&6; }
3053if { { ac_try="$ac_link"
3054case "(($ac_try" in
3055 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3056 *) ac_try_echo=$ac_try;;
3057esac
3058eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3059$as_echo "$ac_try_echo"; } >&5
3060 (eval "$ac_link") 2>&5
3061 ac_status=$?
3062 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3063 test $ac_status = 0; }; then :
3064 # If both `conftest.exe' and `conftest' are `present' (well, observable)
3065# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
3066# work properly (i.e., refer to `conftest.exe'), while it won't with
3067# `rm'.
3068for ac_file in conftest.exe conftest conftest.*; do
3069 test -f "$ac_file" || continue
3070 case $ac_file in
3071 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
3072 *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3073 break;;
3074 * ) break;;
3075 esac
3076done
3077else
3078 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3079$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3080as_fn_error $? "cannot compute suffix of executables: cannot compile and link
3081See \`config.log' for more details" "$LINENO" 5; }
3082fi
3083rm -f conftest conftest$ac_cv_exeext
3084{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
3085$as_echo "$ac_cv_exeext" >&6; }
3086
3087rm -f conftest.$ac_ext
3088EXEEXT=$ac_cv_exeext
3089ac_exeext=$EXEEXT
3090cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3091/* end confdefs.h. */
3092#include <stdio.h>
3093int
3094main ()
3095{
3096FILE *f = fopen ("conftest.out", "w");
3097 return ferror (f) || fclose (f) != 0;
3098
3099 ;
3100 return 0;
3101}
3102_ACEOF
3103ac_clean_files="$ac_clean_files conftest.out"
3104# Check that the compiler produces executables we can run. If not, either
3105# the compiler is broken, or we cross compile.
3106{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
3107$as_echo_n "checking whether we are cross compiling... " >&6; }
3108if test "$cross_compiling" != yes; then
3109 { { ac_try="$ac_link"
3110case "(($ac_try" in
3111 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3112 *) ac_try_echo=$ac_try;;
3113esac
3114eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3115$as_echo "$ac_try_echo"; } >&5
3116 (eval "$ac_link") 2>&5
3117 ac_status=$?
3118 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3119 test $ac_status = 0; }
3120 if { ac_try='./conftest$ac_cv_exeext'
3121 { { case "(($ac_try" in
3122 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3123 *) ac_try_echo=$ac_try;;
3124esac
3125eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3126$as_echo "$ac_try_echo"; } >&5
3127 (eval "$ac_try") 2>&5
3128 ac_status=$?
3129 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3130 test $ac_status = 0; }; }; then
3131 cross_compiling=no
3132 else
3133 if test "$cross_compiling" = maybe; then
3134 cross_compiling=yes
3135 else
3136 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3137$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3138as_fn_error $? "cannot run C compiled programs.
3139If you meant to cross compile, use \`--host'.
3140See \`config.log' for more details" "$LINENO" 5; }
3141 fi
3142 fi
3143fi
3144{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
3145$as_echo "$cross_compiling" >&6; }
3146
3147rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
3148ac_clean_files=$ac_clean_files_save
3149{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
3150$as_echo_n "checking for suffix of object files... " >&6; }
3151if ${ac_cv_objext+:} false; then :
3152 $as_echo_n "(cached) " >&6
3153else
3154 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3155/* end confdefs.h. */
3156
3157int
3158main ()
3159{
3160
3161 ;
3162 return 0;
3163}
3164_ACEOF
3165rm -f conftest.o conftest.obj
3166if { { ac_try="$ac_compile"
3167case "(($ac_try" in
3168 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3169 *) ac_try_echo=$ac_try;;
3170esac
3171eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3172$as_echo "$ac_try_echo"; } >&5
3173 (eval "$ac_compile") 2>&5
3174 ac_status=$?
3175 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3176 test $ac_status = 0; }; then :
3177 for ac_file in conftest.o conftest.obj conftest.*; do
3178 test -f "$ac_file" || continue;
3179 case $ac_file in
3180 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
3181 *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
3182 break;;
3183 esac
3184done
3185else
3186 $as_echo "$as_me: failed program was:" >&5
3187sed 's/^/| /' conftest.$ac_ext >&5
3188
3189{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3190$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3191as_fn_error $? "cannot compute suffix of object files: cannot compile
3192See \`config.log' for more details" "$LINENO" 5; }
3193fi
3194rm -f conftest.$ac_cv_objext conftest.$ac_ext
3195fi
3196{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
3197$as_echo "$ac_cv_objext" >&6; }
3198OBJEXT=$ac_cv_objext
3199ac_objext=$OBJEXT
3200{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
3201$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
3202if ${ac_cv_c_compiler_gnu+:} false; then :
3203 $as_echo_n "(cached) " >&6
3204else
3205 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3206/* end confdefs.h. */
3207
3208int
3209main ()
3210{
3211#ifndef __GNUC__
3212 choke me
3213#endif
3214
3215 ;
3216 return 0;
3217}
3218_ACEOF
3219if ac_fn_c_try_compile "$LINENO"; then :
3220 ac_compiler_gnu=yes
3221else
3222 ac_compiler_gnu=no
3223fi
3224rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3225ac_cv_c_compiler_gnu=$ac_compiler_gnu
3226
3227fi
3228{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
3229$as_echo "$ac_cv_c_compiler_gnu" >&6; }
3230if test $ac_compiler_gnu = yes; then
3231 GCC=yes
3232else
3233 GCC=
3234fi
3235ac_test_CFLAGS=${CFLAGS+set}
3236ac_save_CFLAGS=$CFLAGS
3237{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
3238$as_echo_n "checking whether $CC accepts -g... " >&6; }
3239if ${ac_cv_prog_cc_g+:} false; then :
3240 $as_echo_n "(cached) " >&6
3241else
3242 ac_save_c_werror_flag=$ac_c_werror_flag
3243 ac_c_werror_flag=yes
3244 ac_cv_prog_cc_g=no
3245 CFLAGS="-g"
3246 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3247/* end confdefs.h. */
3248
3249int
3250main ()
3251{
3252
3253 ;
3254 return 0;
3255}
3256_ACEOF
3257if ac_fn_c_try_compile "$LINENO"; then :
3258 ac_cv_prog_cc_g=yes
3259else
3260 CFLAGS=""
3261 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3262/* end confdefs.h. */
3263
3264int
3265main ()
3266{
3267
3268 ;
3269 return 0;
3270}
3271_ACEOF
3272if ac_fn_c_try_compile "$LINENO"; then :
3273
3274else
3275 ac_c_werror_flag=$ac_save_c_werror_flag
3276 CFLAGS="-g"
3277 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3278/* end confdefs.h. */
3279
3280int
3281main ()
3282{
3283
3284 ;
3285 return 0;
3286}
3287_ACEOF
3288if ac_fn_c_try_compile "$LINENO"; then :
3289 ac_cv_prog_cc_g=yes
3290fi
3291rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3292fi
3293rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3294fi
3295rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3296 ac_c_werror_flag=$ac_save_c_werror_flag
3297fi
3298{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
3299$as_echo "$ac_cv_prog_cc_g" >&6; }
3300if test "$ac_test_CFLAGS" = set; then
3301 CFLAGS=$ac_save_CFLAGS
3302elif test $ac_cv_prog_cc_g = yes; then
3303 if test "$GCC" = yes; then
3304 CFLAGS="-g -O2"
3305 else
3306 CFLAGS="-g"
3307 fi
3308else
3309 if test "$GCC" = yes; then
3310 CFLAGS="-O2"
3311 else
3312 CFLAGS=
3313 fi
3314fi
3315{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
3316$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
3317if ${ac_cv_prog_cc_c89+:} false; then :
3318 $as_echo_n "(cached) " >&6
3319else
3320 ac_cv_prog_cc_c89=no
3321ac_save_CC=$CC
3322cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3323/* end confdefs.h. */
3324#include <stdarg.h>
3325#include <stdio.h>
3326struct stat;
3327/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
3328struct buf { int x; };
3329FILE * (*rcsopen) (struct buf *, struct stat *, int);
3330static char *e (p, i)
3331 char **p;
3332 int i;
3333{
3334 return p[i];
3335}
3336static char *f (char * (*g) (char **, int), char **p, ...)
3337{
3338 char *s;
3339 va_list v;
3340 va_start (v,p);
3341 s = g (p, va_arg (v,int));
3342 va_end (v);
3343 return s;
3344}
3345
3346/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
3347 function prototypes and stuff, but not '\xHH' hex character constants.
3348 These don't provoke an error unfortunately, instead are silently treated
3349 as 'x'. The following induces an error, until -std is added to get
3350 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
3351 array size at least. It's necessary to write '\x00'==0 to get something
3352 that's true only with -std. */
3353int osf4_cc_array ['\x00' == 0 ? 1 : -1];
3354
3355/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
3356 inside strings and character constants. */
3357#define FOO(x) 'x'
3358int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
3359
3360int test (int i, double x);
3361struct s1 {int (*f) (int a);};
3362struct s2 {int (*f) (double a);};
3363int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
3364int argc;
3365char **argv;
3366int
3367main ()
3368{
3369return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
3370 ;
3371 return 0;
3372}
3373_ACEOF
3374for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
3375 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
3376do
3377 CC="$ac_save_CC $ac_arg"
3378 if ac_fn_c_try_compile "$LINENO"; then :
3379 ac_cv_prog_cc_c89=$ac_arg
3380fi
3381rm -f core conftest.err conftest.$ac_objext
3382 test "x$ac_cv_prog_cc_c89" != "xno" && break
3383done
3384rm -f conftest.$ac_ext
3385CC=$ac_save_CC
3386
3387fi
3388# AC_CACHE_VAL
3389case "x$ac_cv_prog_cc_c89" in
3390 x)
3391 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
3392$as_echo "none needed" >&6; } ;;
3393 xno)
3394 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
3395$as_echo "unsupported" >&6; } ;;
3396 *)
3397 CC="$CC $ac_cv_prog_cc_c89"
3398 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
3399$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
3400esac
3401if test "x$ac_cv_prog_cc_c89" != xno; then :
3402
3403fi
3404
3405ac_ext=c
3406ac_cpp='$CPP $CPPFLAGS'
3407ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3408ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3409ac_compiler_gnu=$ac_cv_c_compiler_gnu
3410
3411ac_aux_dir=
3412for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
3413 if test -f "$ac_dir/install-sh"; then
3414 ac_aux_dir=$ac_dir
3415 ac_install_sh="$ac_aux_dir/install-sh -c"
3416 break
3417 elif test -f "$ac_dir/install.sh"; then
3418 ac_aux_dir=$ac_dir
3419 ac_install_sh="$ac_aux_dir/install.sh -c"
3420 break
3421 elif test -f "$ac_dir/shtool"; then
3422 ac_aux_dir=$ac_dir
3423 ac_install_sh="$ac_aux_dir/shtool install -c"
3424 break
3425 fi
3426done
3427if test -z "$ac_aux_dir"; then
3428 as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
3429fi
3430
3431# These three variables are undocumented and unsupported,
3432# and are intended to be withdrawn in a future Autoconf release.
3433# They can cause serious problems if a builder's source tree is in a directory
3434# whose full name contains unusual characters.
3435ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
3436ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
3437ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
3438
3439
3440# Make sure we can run config.sub.
3441$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
3442 as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
3443
3444{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
3445$as_echo_n "checking build system type... " >&6; }
3446if ${ac_cv_build+:} false; then :
3447 $as_echo_n "(cached) " >&6
3448else
3449 ac_build_alias=$build_alias
3450test "x$ac_build_alias" = x &&
3451 ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
3452test "x$ac_build_alias" = x &&
3453 as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
3454ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
3455 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
3456
3457fi
3458{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
3459$as_echo "$ac_cv_build" >&6; }
3460case $ac_cv_build in
3461*-*-*) ;;
3462*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
3463esac
3464build=$ac_cv_build
3465ac_save_IFS=$IFS; IFS='-'
3466set x $ac_cv_build
3467shift
3468build_cpu=$1
3469build_vendor=$2
3470shift; shift
3471# Remember, the first character of IFS is used to create $*,
3472# except with old shells:
3473build_os=$*
3474IFS=$ac_save_IFS
3475case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
3476
3477
3478{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
3479$as_echo_n "checking host system type... " >&6; }
3480if ${ac_cv_host+:} false; then :
3481 $as_echo_n "(cached) " >&6
3482else
3483 if test "x$host_alias" = x; then
3484 ac_cv_host=$ac_cv_build
3485else
3486 ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
3487 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
3488fi
3489
3490fi
3491{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
3492$as_echo "$ac_cv_host" >&6; }
3493case $ac_cv_host in
3494*-*-*) ;;
3495*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
3496esac
3497host=$ac_cv_host
3498ac_save_IFS=$IFS; IFS='-'
3499set x $ac_cv_host
3500shift
3501host_cpu=$1
3502host_vendor=$2
3503shift; shift
3504# Remember, the first character of IFS is used to create $*,
3505# except with old shells:
3506host_os=$*
3507IFS=$ac_save_IFS
3508case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
3509
3510
3511
3512ac_ext=c
3513ac_cpp='$CPP $CPPFLAGS'
3514ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3515ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3516ac_compiler_gnu=$ac_cv_c_compiler_gnu
3517{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
3518$as_echo_n "checking how to run the C preprocessor... " >&6; }
3519# On Suns, sometimes $CPP names a directory.
3520if test -n "$CPP" && test -d "$CPP"; then
3521 CPP=
3522fi
3523if test -z "$CPP"; then
3524 if ${ac_cv_prog_CPP+:} false; then :
3525 $as_echo_n "(cached) " >&6
3526else
3527 # Double quotes because CPP needs to be expanded
3528 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
3529 do
3530 ac_preproc_ok=false
3531for ac_c_preproc_warn_flag in '' yes
3532do
3533 # Use a header file that comes with gcc, so configuring glibc
3534 # with a fresh cross-compiler works.
3535 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
3536 # <limits.h> exists even on freestanding compilers.
3537 # On the NeXT, cc -E runs the code through the compiler's parser,
3538 # not just through cpp. "Syntax error" is here to catch this case.
3539 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3540/* end confdefs.h. */
3541#ifdef __STDC__
3542# include <limits.h>
3543#else
3544# include <assert.h>
3545#endif
3546 Syntax error
3547_ACEOF
3548if ac_fn_c_try_cpp "$LINENO"; then :
3549
3550else
3551 # Broken: fails on valid input.
3552continue
3553fi
3554rm -f conftest.err conftest.i conftest.$ac_ext
3555
3556 # OK, works on sane cases. Now check whether nonexistent headers
3557 # can be detected and how.
3558 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3559/* end confdefs.h. */
3560#include <ac_nonexistent.h>
3561_ACEOF
3562if ac_fn_c_try_cpp "$LINENO"; then :
3563 # Broken: success on invalid input.
3564continue
3565else
3566 # Passes both tests.
3567ac_preproc_ok=:
3568break
3569fi
3570rm -f conftest.err conftest.i conftest.$ac_ext
3571
3572done
3573# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
3574rm -f conftest.i conftest.err conftest.$ac_ext
3575if $ac_preproc_ok; then :
3576 break
3577fi
3578
3579 done
3580 ac_cv_prog_CPP=$CPP
3581
3582fi
3583 CPP=$ac_cv_prog_CPP
3584else
3585 ac_cv_prog_CPP=$CPP
3586fi
3587{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
3588$as_echo "$CPP" >&6; }
3589ac_preproc_ok=false
3590for ac_c_preproc_warn_flag in '' yes
3591do
3592 # Use a header file that comes with gcc, so configuring glibc
3593 # with a fresh cross-compiler works.
3594 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
3595 # <limits.h> exists even on freestanding compilers.
3596 # On the NeXT, cc -E runs the code through the compiler's parser,
3597 # not just through cpp. "Syntax error" is here to catch this case.
3598 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3599/* end confdefs.h. */
3600#ifdef __STDC__
3601# include <limits.h>
3602#else
3603# include <assert.h>
3604#endif
3605 Syntax error
3606_ACEOF
3607if ac_fn_c_try_cpp "$LINENO"; then :
3608
3609else
3610 # Broken: fails on valid input.
3611continue
3612fi
3613rm -f conftest.err conftest.i conftest.$ac_ext
3614
3615 # OK, works on sane cases. Now check whether nonexistent headers
3616 # can be detected and how.
3617 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3618/* end confdefs.h. */
3619#include <ac_nonexistent.h>
3620_ACEOF
3621if ac_fn_c_try_cpp "$LINENO"; then :
3622 # Broken: success on invalid input.
3623continue
3624else
3625 # Passes both tests.
3626ac_preproc_ok=:
3627break
3628fi
3629rm -f conftest.err conftest.i conftest.$ac_ext
3630
3631done
3632# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
3633rm -f conftest.i conftest.err conftest.$ac_ext
3634if $ac_preproc_ok; then :
3635
3636else
3637 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3638$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3639as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
3640See \`config.log' for more details" "$LINENO" 5; }
3641fi
3642
3643ac_ext=c
3644ac_cpp='$CPP $CPPFLAGS'
3645ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3646ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3647ac_compiler_gnu=$ac_cv_c_compiler_gnu
3648
3649
3650{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
3651$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
3652if ${ac_cv_path_GREP+:} false; then :
3653 $as_echo_n "(cached) " >&6
3654else
3655 if test -z "$GREP"; then
3656 ac_path_GREP_found=false
3657 # Loop through the user's path and test for each of PROGNAME-LIST
3658 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3659for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
3660do
3661 IFS=$as_save_IFS
3662 test -z "$as_dir" && as_dir=.
3663 for ac_prog in grep ggrep; do
3664 for ac_exec_ext in '' $ac_executable_extensions; do
3665 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
3666 as_fn_executable_p "$ac_path_GREP" || continue
3667# Check for GNU ac_path_GREP and select it if it is found.
3668 # Check for GNU $ac_path_GREP
3669case `"$ac_path_GREP" --version 2>&1` in
3670*GNU*)
3671 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
3672*)
3673 ac_count=0
3674 $as_echo_n 0123456789 >"conftest.in"
3675 while :
3676 do
3677 cat "conftest.in" "conftest.in" >"conftest.tmp"
3678 mv "conftest.tmp" "conftest.in"
3679 cp "conftest.in" "conftest.nl"
3680 $as_echo 'GREP' >> "conftest.nl"
3681 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
3682 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
3683 as_fn_arith $ac_count + 1 && ac_count=$as_val
3684 if test $ac_count -gt ${ac_path_GREP_max-0}; then
3685 # Best one so far, save it but keep looking for a better one
3686 ac_cv_path_GREP="$ac_path_GREP"
3687 ac_path_GREP_max=$ac_count
3688 fi
3689 # 10*(2^10) chars as input seems more than enough
3690 test $ac_count -gt 10 && break
3691 done
3692 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
3693esac
3694
3695 $ac_path_GREP_found && break 3
3696 done
3697 done
3698 done
3699IFS=$as_save_IFS
3700 if test -z "$ac_cv_path_GREP"; then
3701 as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
3702 fi
3703else
3704 ac_cv_path_GREP=$GREP
3705fi
3706
3707fi
3708{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
3709$as_echo "$ac_cv_path_GREP" >&6; }
3710 GREP="$ac_cv_path_GREP"
3711
3712
3713{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
3714$as_echo_n "checking for egrep... " >&6; }
3715if ${ac_cv_path_EGREP+:} false; then :
3716 $as_echo_n "(cached) " >&6
3717else
3718 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
3719 then ac_cv_path_EGREP="$GREP -E"
3720 else
3721 if test -z "$EGREP"; then
3722 ac_path_EGREP_found=false
3723 # Loop through the user's path and test for each of PROGNAME-LIST
3724 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3725for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
3726do
3727 IFS=$as_save_IFS
3728 test -z "$as_dir" && as_dir=.
3729 for ac_prog in egrep; do
3730 for ac_exec_ext in '' $ac_executable_extensions; do
3731 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
3732 as_fn_executable_p "$ac_path_EGREP" || continue
3733# Check for GNU ac_path_EGREP and select it if it is found.
3734 # Check for GNU $ac_path_EGREP
3735case `"$ac_path_EGREP" --version 2>&1` in
3736*GNU*)
3737 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
3738*)
3739 ac_count=0
3740 $as_echo_n 0123456789 >"conftest.in"
3741 while :
3742 do
3743 cat "conftest.in" "conftest.in" >"conftest.tmp"
3744 mv "conftest.tmp" "conftest.in"
3745 cp "conftest.in" "conftest.nl"
3746 $as_echo 'EGREP' >> "conftest.nl"
3747 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
3748 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
3749 as_fn_arith $ac_count + 1 && ac_count=$as_val
3750 if test $ac_count -gt ${ac_path_EGREP_max-0}; then
3751 # Best one so far, save it but keep looking for a better one
3752 ac_cv_path_EGREP="$ac_path_EGREP"
3753 ac_path_EGREP_max=$ac_count
3754 fi
3755 # 10*(2^10) chars as input seems more than enough
3756 test $ac_count -gt 10 && break
3757 done
3758 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
3759esac
3760
3761 $ac_path_EGREP_found && break 3
3762 done
3763 done
3764 done
3765IFS=$as_save_IFS
3766 if test -z "$ac_cv_path_EGREP"; then
3767 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
3768 fi
3769else
3770 ac_cv_path_EGREP=$EGREP
3771fi
3772
3773 fi
3774fi
3775{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
3776$as_echo "$ac_cv_path_EGREP" >&6; }
3777 EGREP="$ac_cv_path_EGREP"
3778
3779
3780{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
3781$as_echo_n "checking for ANSI C header files... " >&6; }
3782if ${ac_cv_header_stdc+:} false; then :
3783 $as_echo_n "(cached) " >&6
3784else
3785 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3786/* end confdefs.h. */
3787#include <stdlib.h>
3788#include <stdarg.h>
3789#include <string.h>
3790#include <float.h>
3791
3792int
3793main ()
3794{
3795
3796 ;
3797 return 0;
3798}
3799_ACEOF
3800if ac_fn_c_try_compile "$LINENO"; then :
3801 ac_cv_header_stdc=yes
3802else
3803 ac_cv_header_stdc=no
3804fi
3805rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3806
3807if test $ac_cv_header_stdc = yes; then
3808 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
3809 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3810/* end confdefs.h. */
3811#include <string.h>
3812
3813_ACEOF
3814if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
3815 $EGREP "memchr" >/dev/null 2>&1; then :
3816
3817else
3818 ac_cv_header_stdc=no
3819fi
3820rm -f conftest*
3821
3822fi
3823
3824if test $ac_cv_header_stdc = yes; then
3825 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
3826 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3827/* end confdefs.h. */
3828#include <stdlib.h>
3829
3830_ACEOF
3831if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
3832 $EGREP "free" >/dev/null 2>&1; then :
3833
3834else
3835 ac_cv_header_stdc=no
3836fi
3837rm -f conftest*
3838
3839fi
3840
3841if test $ac_cv_header_stdc = yes; then
3842 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
3843 if test "$cross_compiling" = yes; then :
3844 :
3845else
3846 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3847/* end confdefs.h. */
3848#include <ctype.h>
3849#include <stdlib.h>
3850#if ((' ' & 0x0FF) == 0x020)
3851# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
3852# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
3853#else
3854# define ISLOWER(c) \
3855 (('a' <= (c) && (c) <= 'i') \
3856 || ('j' <= (c) && (c) <= 'r') \
3857 || ('s' <= (c) && (c) <= 'z'))
3858# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
3859#endif
3860
3861#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
3862int
3863main ()
3864{
3865 int i;
3866 for (i = 0; i < 256; i++)
3867 if (XOR (islower (i), ISLOWER (i))
3868 || toupper (i) != TOUPPER (i))
3869 return 2;
3870 return 0;
3871}
3872_ACEOF
3873if ac_fn_c_try_run "$LINENO"; then :
3874
3875else
3876 ac_cv_header_stdc=no
3877fi
3878rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
3879 conftest.$ac_objext conftest.beam conftest.$ac_ext
3880fi
3881
3882fi
3883fi
3884{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
3885$as_echo "$ac_cv_header_stdc" >&6; }
3886if test $ac_cv_header_stdc = yes; then
3887
3888$as_echo "#define STDC_HEADERS 1" >>confdefs.h
3889
3890fi
3891
3892# On IRIX 5.3, sys/types and inttypes.h are conflicting.
3893for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
3894 inttypes.h stdint.h unistd.h
3895do :
3896 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
3897ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
3898"
3899if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
3900 cat >>confdefs.h <<_ACEOF
3901#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
3902_ACEOF
3903
3904fi
3905
3906done
3907
3908
3909 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
3910$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
3911if ${ac_cv_c_bigendian+:} false; then :
3912 $as_echo_n "(cached) " >&6
3913else
3914 ac_cv_c_bigendian=unknown
3915 # See if we're dealing with a universal compiler.
3916 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3917/* end confdefs.h. */
3918#ifndef __APPLE_CC__
3919 not a universal capable compiler
3920 #endif
3921 typedef int dummy;
3922
3923_ACEOF
3924if ac_fn_c_try_compile "$LINENO"; then :
3925
3926 # Check for potential -arch flags. It is not universal unless
3927 # there are at least two -arch flags with different values.
3928 ac_arch=
3929 ac_prev=
3930 for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
3931 if test -n "$ac_prev"; then
3932 case $ac_word in
3933 i?86 | x86_64 | ppc | ppc64)
3934 if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
3935 ac_arch=$ac_word
3936 else
3937 ac_cv_c_bigendian=universal
3938 break
3939 fi
3940 ;;
3941 esac
3942 ac_prev=
3943 elif test "x$ac_word" = "x-arch"; then
3944 ac_prev=arch
3945 fi
3946 done
3947fi
3948rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3949 if test $ac_cv_c_bigendian = unknown; then
3950 # See if sys/param.h defines the BYTE_ORDER macro.
3951 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3952/* end confdefs.h. */
3953#include <sys/types.h>
3954 #include <sys/param.h>
3955
3956int
3957main ()
3958{
3959#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
3960 && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
3961 && LITTLE_ENDIAN)
3962 bogus endian macros
3963 #endif
3964
3965 ;
3966 return 0;
3967}
3968_ACEOF
3969if ac_fn_c_try_compile "$LINENO"; then :
3970 # It does; now see whether it defined to BIG_ENDIAN or not.
3971 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3972/* end confdefs.h. */
3973#include <sys/types.h>
3974 #include <sys/param.h>
3975
3976int
3977main ()
3978{
3979#if BYTE_ORDER != BIG_ENDIAN
3980 not big endian
3981 #endif
3982
3983 ;
3984 return 0;
3985}
3986_ACEOF
3987if ac_fn_c_try_compile "$LINENO"; then :
3988 ac_cv_c_bigendian=yes
3989else
3990 ac_cv_c_bigendian=no
3991fi
3992rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3993fi
3994rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3995 fi
3996 if test $ac_cv_c_bigendian = unknown; then
3997 # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
3998 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3999/* end confdefs.h. */
4000#include <limits.h>
4001
4002int
4003main ()
4004{
4005#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
4006 bogus endian macros
4007 #endif
4008
4009 ;
4010 return 0;
4011}
4012_ACEOF
4013if ac_fn_c_try_compile "$LINENO"; then :
4014 # It does; now see whether it defined to _BIG_ENDIAN or not.
4015 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4016/* end confdefs.h. */
4017#include <limits.h>
4018
4019int
4020main ()
4021{
4022#ifndef _BIG_ENDIAN
4023 not big endian
4024 #endif
4025
4026 ;
4027 return 0;
4028}
4029_ACEOF
4030if ac_fn_c_try_compile "$LINENO"; then :
4031 ac_cv_c_bigendian=yes
4032else
4033 ac_cv_c_bigendian=no
4034fi
4035rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4036fi
4037rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4038 fi
4039 if test $ac_cv_c_bigendian = unknown; then
4040 # Compile a test program.
4041 if test "$cross_compiling" = yes; then :
4042 # Try to guess by grepping values from an object file.
4043 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4044/* end confdefs.h. */
4045short int ascii_mm[] =
4046 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
4047 short int ascii_ii[] =
4048 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
4049 int use_ascii (int i) {
4050 return ascii_mm[i] + ascii_ii[i];
4051 }
4052 short int ebcdic_ii[] =
4053 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
4054 short int ebcdic_mm[] =
4055 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
4056 int use_ebcdic (int i) {
4057 return ebcdic_mm[i] + ebcdic_ii[i];
4058 }
4059 extern int foo;
4060
4061int
4062main ()
4063{
4064return use_ascii (foo) == use_ebcdic (foo);
4065 ;
4066 return 0;
4067}
4068_ACEOF
4069if ac_fn_c_try_compile "$LINENO"; then :
4070 if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
4071 ac_cv_c_bigendian=yes
4072 fi
4073 if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
4074 if test "$ac_cv_c_bigendian" = unknown; then
4075 ac_cv_c_bigendian=no
4076 else
4077 # finding both strings is unlikely to happen, but who knows?
4078 ac_cv_c_bigendian=unknown
4079 fi
4080 fi
4081fi
4082rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4083else
4084 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4085/* end confdefs.h. */
4086$ac_includes_default
4087int
4088main ()
4089{
4090
4091 /* Are we little or big endian? From Harbison&Steele. */
4092 union
4093 {
4094 long int l;
4095 char c[sizeof (long int)];
4096 } u;
4097 u.l = 1;
4098 return u.c[sizeof (long int) - 1] == 1;
4099
4100 ;
4101 return 0;
4102}
4103_ACEOF
4104if ac_fn_c_try_run "$LINENO"; then :
4105 ac_cv_c_bigendian=no
4106else
4107 ac_cv_c_bigendian=yes
4108fi
4109rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
4110 conftest.$ac_objext conftest.beam conftest.$ac_ext
4111fi
4112
4113 fi
4114fi
4115{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
4116$as_echo "$ac_cv_c_bigendian" >&6; }
4117 case $ac_cv_c_bigendian in #(
4118 yes)
4119 $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
4120;; #(
4121 no)
4122 ;; #(
4123 universal)
4124
4125$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
4126
4127 ;; #(
4128 *)
4129 as_fn_error $? "unknown endianness
4130 presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
4131 esac
4132
4133
4134# Checks for programs.
4135for ac_prog in gawk mawk nawk awk
4136do
4137 # Extract the first word of "$ac_prog", so it can be a program name with args.
4138set dummy $ac_prog; ac_word=$2
4139{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4140$as_echo_n "checking for $ac_word... " >&6; }
4141if ${ac_cv_prog_AWK+:} false; then :
4142 $as_echo_n "(cached) " >&6
4143else
4144 if test -n "$AWK"; then
4145 ac_cv_prog_AWK="$AWK" # Let the user override the test.
4146else
4147as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4148for as_dir in $PATH
4149do
4150 IFS=$as_save_IFS
4151 test -z "$as_dir" && as_dir=.
4152 for ac_exec_ext in '' $ac_executable_extensions; do
4153 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4154 ac_cv_prog_AWK="$ac_prog"
4155 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4156 break 2
4157 fi
4158done
4159 done
4160IFS=$as_save_IFS
4161
4162fi
4163fi
4164AWK=$ac_cv_prog_AWK
4165if test -n "$AWK"; then
4166 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
4167$as_echo "$AWK" >&6; }
4168else
4169 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4170$as_echo "no" >&6; }
4171fi
4172
4173
4174 test -n "$AWK" && break
4175done
4176
4177ac_ext=c
4178ac_cpp='$CPP $CPPFLAGS'
4179ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4180ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4181ac_compiler_gnu=$ac_cv_c_compiler_gnu
4182{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
4183$as_echo_n "checking how to run the C preprocessor... " >&6; }
4184# On Suns, sometimes $CPP names a directory.
4185if test -n "$CPP" && test -d "$CPP"; then
4186 CPP=
4187fi
4188if test -z "$CPP"; then
4189 if ${ac_cv_prog_CPP+:} false; then :
4190 $as_echo_n "(cached) " >&6
4191else
4192 # Double quotes because CPP needs to be expanded
4193 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
4194 do
4195 ac_preproc_ok=false
4196for ac_c_preproc_warn_flag in '' yes
4197do
4198 # Use a header file that comes with gcc, so configuring glibc
4199 # with a fresh cross-compiler works.
4200 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4201 # <limits.h> exists even on freestanding compilers.
4202 # On the NeXT, cc -E runs the code through the compiler's parser,
4203 # not just through cpp. "Syntax error" is here to catch this case.
4204 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4205/* end confdefs.h. */
4206#ifdef __STDC__
4207# include <limits.h>
4208#else
4209# include <assert.h>
4210#endif
4211 Syntax error
4212_ACEOF
4213if ac_fn_c_try_cpp "$LINENO"; then :
4214
4215else
4216 # Broken: fails on valid input.
4217continue
4218fi
4219rm -f conftest.err conftest.i conftest.$ac_ext
4220
4221 # OK, works on sane cases. Now check whether nonexistent headers
4222 # can be detected and how.
4223 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4224/* end confdefs.h. */
4225#include <ac_nonexistent.h>
4226_ACEOF
4227if ac_fn_c_try_cpp "$LINENO"; then :
4228 # Broken: success on invalid input.
4229continue
4230else
4231 # Passes both tests.
4232ac_preproc_ok=:
4233break
4234fi
4235rm -f conftest.err conftest.i conftest.$ac_ext
4236
4237done
4238# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4239rm -f conftest.i conftest.err conftest.$ac_ext
4240if $ac_preproc_ok; then :
4241 break
4242fi
4243
4244 done
4245 ac_cv_prog_CPP=$CPP
4246
4247fi
4248 CPP=$ac_cv_prog_CPP
4249else
4250 ac_cv_prog_CPP=$CPP
4251fi
4252{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
4253$as_echo "$CPP" >&6; }
4254ac_preproc_ok=false
4255for ac_c_preproc_warn_flag in '' yes
4256do
4257 # Use a header file that comes with gcc, so configuring glibc
4258 # with a fresh cross-compiler works.
4259 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4260 # <limits.h> exists even on freestanding compilers.
4261 # On the NeXT, cc -E runs the code through the compiler's parser,
4262 # not just through cpp. "Syntax error" is here to catch this case.
4263 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4264/* end confdefs.h. */
4265#ifdef __STDC__
4266# include <limits.h>
4267#else
4268# include <assert.h>
4269#endif
4270 Syntax error
4271_ACEOF
4272if ac_fn_c_try_cpp "$LINENO"; then :
4273
4274else
4275 # Broken: fails on valid input.
4276continue
4277fi
4278rm -f conftest.err conftest.i conftest.$ac_ext
4279
4280 # OK, works on sane cases. Now check whether nonexistent headers
4281 # can be detected and how.
4282 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4283/* end confdefs.h. */
4284#include <ac_nonexistent.h>
4285_ACEOF
4286if ac_fn_c_try_cpp "$LINENO"; then :
4287 # Broken: success on invalid input.
4288continue
4289else
4290 # Passes both tests.
4291ac_preproc_ok=:
4292break
4293fi
4294rm -f conftest.err conftest.i conftest.$ac_ext
4295
4296done
4297# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4298rm -f conftest.i conftest.err conftest.$ac_ext
4299if $ac_preproc_ok; then :
4300
4301else
4302 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
4303$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
4304as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
4305See \`config.log' for more details" "$LINENO" 5; }
4306fi
4307
4308ac_ext=c
4309ac_cpp='$CPP $CPPFLAGS'
4310ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4311ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4312ac_compiler_gnu=$ac_cv_c_compiler_gnu
4313
4314if test -n "$ac_tool_prefix"; then
4315 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
4316set dummy ${ac_tool_prefix}ranlib; ac_word=$2
4317{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4318$as_echo_n "checking for $ac_word... " >&6; }
4319if ${ac_cv_prog_RANLIB+:} false; then :
4320 $as_echo_n "(cached) " >&6
4321else
4322 if test -n "$RANLIB"; then
4323 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
4324else
4325as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4326for as_dir in $PATH
4327do
4328 IFS=$as_save_IFS
4329 test -z "$as_dir" && as_dir=.
4330 for ac_exec_ext in '' $ac_executable_extensions; do
4331 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4332 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
4333 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4334 break 2
4335 fi
4336done
4337 done
4338IFS=$as_save_IFS
4339
4340fi
4341fi
4342RANLIB=$ac_cv_prog_RANLIB
4343if test -n "$RANLIB"; then
4344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
4345$as_echo "$RANLIB" >&6; }
4346else
4347 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4348$as_echo "no" >&6; }
4349fi
4350
4351
4352fi
4353if test -z "$ac_cv_prog_RANLIB"; then
4354 ac_ct_RANLIB=$RANLIB
4355 # Extract the first word of "ranlib", so it can be a program name with args.
4356set dummy ranlib; ac_word=$2
4357{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4358$as_echo_n "checking for $ac_word... " >&6; }
4359if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
4360 $as_echo_n "(cached) " >&6
4361else
4362 if test -n "$ac_ct_RANLIB"; then
4363 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
4364else
4365as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4366for as_dir in $PATH
4367do
4368 IFS=$as_save_IFS
4369 test -z "$as_dir" && as_dir=.
4370 for ac_exec_ext in '' $ac_executable_extensions; do
4371 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4372 ac_cv_prog_ac_ct_RANLIB="ranlib"
4373 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4374 break 2
4375 fi
4376done
4377 done
4378IFS=$as_save_IFS
4379
4380fi
4381fi
4382ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
4383if test -n "$ac_ct_RANLIB"; then
4384 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
4385$as_echo "$ac_ct_RANLIB" >&6; }
4386else
4387 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4388$as_echo "no" >&6; }
4389fi
4390
4391 if test "x$ac_ct_RANLIB" = x; then
4392 RANLIB=":"
4393 else
4394 case $cross_compiling:$ac_tool_warned in
4395yes:)
4396{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
4397$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
4398ac_tool_warned=yes ;;
4399esac
4400 RANLIB=$ac_ct_RANLIB
4401 fi
4402else
4403 RANLIB="$ac_cv_prog_RANLIB"
4404fi
4405
4406# Find a good install program. We prefer a C program (faster),
4407# so one script is as good as another. But avoid the broken or
4408# incompatible versions:
4409# SysV /etc/install, /usr/sbin/install
4410# SunOS /usr/etc/install
4411# IRIX /sbin/install
4412# AIX /bin/install
4413# AmigaOS /C/install, which installs bootblocks on floppy discs
4414# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
4415# AFS /usr/afsws/bin/install, which mishandles nonexistent args
4416# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
4417# OS/2's system install, which has a completely different semantic
4418# ./install, which can be erroneously created by make from ./install.sh.
4419# Reject install programs that cannot install multiple files.
4420{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
4421$as_echo_n "checking for a BSD-compatible install... " >&6; }
4422if test -z "$INSTALL"; then
4423if ${ac_cv_path_install+:} false; then :
4424 $as_echo_n "(cached) " >&6
4425else
4426 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4427for as_dir in $PATH
4428do
4429 IFS=$as_save_IFS
4430 test -z "$as_dir" && as_dir=.
4431 # Account for people who put trailing slashes in PATH elements.
4432case $as_dir/ in #((
4433 ./ | .// | /[cC]/* | \
4434 /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
4435 ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
4436 /usr/ucb/* ) ;;
4437 *)
4438 # OSF1 and SCO ODT 3.0 have their own names for install.
4439 # Don't use installbsd from OSF since it installs stuff as root
4440 # by default.
4441 for ac_prog in ginstall scoinst install; do
4442 for ac_exec_ext in '' $ac_executable_extensions; do
4443 if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
4444 if test $ac_prog = install &&
4445 grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
4446 # AIX install. It has an incompatible calling convention.
4447 :
4448 elif test $ac_prog = install &&
4449 grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
4450 # program-specific install script used by HP pwplus--don't use.
4451 :
4452 else
4453 rm -rf conftest.one conftest.two conftest.dir
4454 echo one > conftest.one
4455 echo two > conftest.two
4456 mkdir conftest.dir
4457 if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
4458 test -s conftest.one && test -s conftest.two &&
4459 test -s conftest.dir/conftest.one &&
4460 test -s conftest.dir/conftest.two
4461 then
4462 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
4463 break 3
4464 fi
4465 fi
4466 fi
4467 done
4468 done
4469 ;;
4470esac
4471
4472 done
4473IFS=$as_save_IFS
4474
4475rm -rf conftest.one conftest.two conftest.dir
4476
4477fi
4478 if test "${ac_cv_path_install+set}" = set; then
4479 INSTALL=$ac_cv_path_install
4480 else
4481 # As a last resort, use the slow shell script. Don't cache a
4482 # value for INSTALL within a source directory, because that will
4483 # break other packages using the cache if that directory is
4484 # removed, or if the value is a relative name.
4485 INSTALL=$ac_install_sh
4486 fi
4487fi
4488{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
4489$as_echo "$INSTALL" >&6; }
4490
4491# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
4492# It thinks the first close brace ends the variable substitution.
4493test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
4494
4495test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
4496
4497test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
4498
4499{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
4500$as_echo_n "checking for egrep... " >&6; }
4501if ${ac_cv_path_EGREP+:} false; then :
4502 $as_echo_n "(cached) " >&6
4503else
4504 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
4505 then ac_cv_path_EGREP="$GREP -E"
4506 else
4507 if test -z "$EGREP"; then
4508 ac_path_EGREP_found=false
4509 # Loop through the user's path and test for each of PROGNAME-LIST
4510 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4511for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4512do
4513 IFS=$as_save_IFS
4514 test -z "$as_dir" && as_dir=.
4515 for ac_prog in egrep; do
4516 for ac_exec_ext in '' $ac_executable_extensions; do
4517 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
4518 as_fn_executable_p "$ac_path_EGREP" || continue
4519# Check for GNU ac_path_EGREP and select it if it is found.
4520 # Check for GNU $ac_path_EGREP
4521case `"$ac_path_EGREP" --version 2>&1` in
4522*GNU*)
4523 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
4524*)
4525 ac_count=0
4526 $as_echo_n 0123456789 >"conftest.in"
4527 while :
4528 do
4529 cat "conftest.in" "conftest.in" >"conftest.tmp"
4530 mv "conftest.tmp" "conftest.in"
4531 cp "conftest.in" "conftest.nl"
4532 $as_echo 'EGREP' >> "conftest.nl"
4533 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4534 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4535 as_fn_arith $ac_count + 1 && ac_count=$as_val
4536 if test $ac_count -gt ${ac_path_EGREP_max-0}; then
4537 # Best one so far, save it but keep looking for a better one
4538 ac_cv_path_EGREP="$ac_path_EGREP"
4539 ac_path_EGREP_max=$ac_count
4540 fi
4541 # 10*(2^10) chars as input seems more than enough
4542 test $ac_count -gt 10 && break
4543 done
4544 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4545esac
4546
4547 $ac_path_EGREP_found && break 3
4548 done
4549 done
4550 done
4551IFS=$as_save_IFS
4552 if test -z "$ac_cv_path_EGREP"; then
4553 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4554 fi
4555else
4556 ac_cv_path_EGREP=$EGREP
4557fi
4558
4559 fi
4560fi
4561{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
4562$as_echo "$ac_cv_path_EGREP" >&6; }
4563 EGREP="$ac_cv_path_EGREP"
4564
4565
4566{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
4567$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
4568if test -z "$MKDIR_P"; then
4569 if ${ac_cv_path_mkdir+:} false; then :
4570 $as_echo_n "(cached) " >&6
4571else
4572 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4573for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
4574do
4575 IFS=$as_save_IFS
4576 test -z "$as_dir" && as_dir=.
4577 for ac_prog in mkdir gmkdir; do
4578 for ac_exec_ext in '' $ac_executable_extensions; do
4579 as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
4580 case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
4581 'mkdir (GNU coreutils) '* | \
4582 'mkdir (coreutils) '* | \
4583 'mkdir (fileutils) '4.1*)
4584 ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
4585 break 3;;
4586 esac
4587 done
4588 done
4589 done
4590IFS=$as_save_IFS
4591
4592fi
4593
4594 test -d ./--version && rmdir ./--version
4595 if test "${ac_cv_path_mkdir+set}" = set; then
4596 MKDIR_P="$ac_cv_path_mkdir -p"
4597 else
4598 # As a last resort, use the slow shell script. Don't cache a
4599 # value for MKDIR_P within a source directory, because that will
4600 # break other packages using the cache if that directory is
4601 # removed, or if the value is a relative name.
4602 MKDIR_P="$ac_install_sh -d"
4603 fi
4604fi
4605{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
4606$as_echo "$MKDIR_P" >&6; }
4607
4608if test -n "$ac_tool_prefix"; then
4609 for ac_prog in ar
4610 do
4611 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
4612set dummy $ac_tool_prefix$ac_prog; ac_word=$2
4613{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4614$as_echo_n "checking for $ac_word... " >&6; }
4615if ${ac_cv_prog_AR+:} false; then :
4616 $as_echo_n "(cached) " >&6
4617else
4618 if test -n "$AR"; then
4619 ac_cv_prog_AR="$AR" # Let the user override the test.
4620else
4621as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4622for as_dir in $PATH
4623do
4624 IFS=$as_save_IFS
4625 test -z "$as_dir" && as_dir=.
4626 for ac_exec_ext in '' $ac_executable_extensions; do
4627 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4628 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
4629 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4630 break 2
4631 fi
4632done
4633 done
4634IFS=$as_save_IFS
4635
4636fi
4637fi
4638AR=$ac_cv_prog_AR
4639if test -n "$AR"; then
4640 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
4641$as_echo "$AR" >&6; }
4642else
4643 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4644$as_echo "no" >&6; }
4645fi
4646
4647
4648 test -n "$AR" && break
4649 done
4650fi
4651if test -z "$AR"; then
4652 ac_ct_AR=$AR
4653 for ac_prog in ar
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_prog_ac_ct_AR+:} false; then :
4660 $as_echo_n "(cached) " >&6
4661else
4662 if test -n "$ac_ct_AR"; then
4663 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
4664else
4665as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4666for as_dir in $PATH
4667do
4668 IFS=$as_save_IFS
4669 test -z "$as_dir" && as_dir=.
4670 for ac_exec_ext in '' $ac_executable_extensions; do
4671 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4672 ac_cv_prog_ac_ct_AR="$ac_prog"
4673 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4674 break 2
4675 fi
4676done
4677 done
4678IFS=$as_save_IFS
4679
4680fi
4681fi
4682ac_ct_AR=$ac_cv_prog_ac_ct_AR
4683if test -n "$ac_ct_AR"; then
4684 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
4685$as_echo "$ac_ct_AR" >&6; }
4686else
4687 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4688$as_echo "no" >&6; }
4689fi
4690
4691
4692 test -n "$ac_ct_AR" && break
4693done
4694
4695 if test "x$ac_ct_AR" = x; then
4696 AR=""
4697 else
4698 case $cross_compiling:$ac_tool_warned in
4699yes:)
4700{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
4701$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
4702ac_tool_warned=yes ;;
4703esac
4704 AR=$ac_ct_AR
4705 fi
4706fi
4707
4708# Extract the first word of "cat", so it can be a program name with args.
4709set dummy cat; ac_word=$2
4710{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4711$as_echo_n "checking for $ac_word... " >&6; }
4712if ${ac_cv_path_CAT+:} false; then :
4713 $as_echo_n "(cached) " >&6
4714else
4715 case $CAT in
4716 [\\/]* | ?:[\\/]*)
4717 ac_cv_path_CAT="$CAT" # Let the user override the test with a path.
4718 ;;
4719 *)
4720 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4721for as_dir in $PATH
4722do
4723 IFS=$as_save_IFS
4724 test -z "$as_dir" && as_dir=.
4725 for ac_exec_ext in '' $ac_executable_extensions; do
4726 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4727 ac_cv_path_CAT="$as_dir/$ac_word$ac_exec_ext"
4728 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4729 break 2
4730 fi
4731done
4732 done
4733IFS=$as_save_IFS
4734
4735 ;;
4736esac
4737fi
4738CAT=$ac_cv_path_CAT
4739if test -n "$CAT"; then
4740 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5
4741$as_echo "$CAT" >&6; }
4742else
4743 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4744$as_echo "no" >&6; }
4745fi
4746
4747
4748# Extract the first word of "kill", so it can be a program name with args.
4749set dummy kill; ac_word=$2
4750{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4751$as_echo_n "checking for $ac_word... " >&6; }
4752if ${ac_cv_path_KILL+:} false; then :
4753 $as_echo_n "(cached) " >&6
4754else
4755 case $KILL in
4756 [\\/]* | ?:[\\/]*)
4757 ac_cv_path_KILL="$KILL" # Let the user override the test with a path.
4758 ;;
4759 *)
4760 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4761for as_dir in $PATH
4762do
4763 IFS=$as_save_IFS
4764 test -z "$as_dir" && as_dir=.
4765 for ac_exec_ext in '' $ac_executable_extensions; do
4766 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4767 ac_cv_path_KILL="$as_dir/$ac_word$ac_exec_ext"
4768 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4769 break 2
4770 fi
4771done
4772 done
4773IFS=$as_save_IFS
4774
4775 ;;
4776esac
4777fi
4778KILL=$ac_cv_path_KILL
4779if test -n "$KILL"; then
4780 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KILL" >&5
4781$as_echo "$KILL" >&6; }
4782else
4783 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4784$as_echo "no" >&6; }
4785fi
4786
4787
4788# Extract the first word of "sed", so it can be a program name with args.
4789set dummy sed; ac_word=$2
4790{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4791$as_echo_n "checking for $ac_word... " >&6; }
4792if ${ac_cv_path_SED+:} false; then :
4793 $as_echo_n "(cached) " >&6
4794else
4795 case $SED in
4796 [\\/]* | ?:[\\/]*)
4797 ac_cv_path_SED="$SED" # Let the user override the test with a path.
4798 ;;
4799 *)
4800 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4801for as_dir in $PATH
4802do
4803 IFS=$as_save_IFS
4804 test -z "$as_dir" && as_dir=.
4805 for ac_exec_ext in '' $ac_executable_extensions; do
4806 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4807 ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
4808 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4809 break 2
4810 fi
4811done
4812 done
4813IFS=$as_save_IFS
4814
4815 ;;
4816esac
4817fi
4818SED=$ac_cv_path_SED
4819if test -n "$SED"; then
4820 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
4821$as_echo "$SED" >&6; }
4822else
4823 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4824$as_echo "no" >&6; }
4825fi
4826
4827
4828# Extract the first word of "ent", so it can be a program name with args.
4829set dummy ent; ac_word=$2
4830{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4831$as_echo_n "checking for $ac_word... " >&6; }
4832if ${ac_cv_path_ENT+:} false; then :
4833 $as_echo_n "(cached) " >&6
4834else
4835 case $ENT in
4836 [\\/]* | ?:[\\/]*)
4837 ac_cv_path_ENT="$ENT" # Let the user override the test with a path.
4838 ;;
4839 *)
4840 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4841for as_dir in $PATH
4842do
4843 IFS=$as_save_IFS
4844 test -z "$as_dir" && as_dir=.
4845 for ac_exec_ext in '' $ac_executable_extensions; do
4846 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4847 ac_cv_path_ENT="$as_dir/$ac_word$ac_exec_ext"
4848 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4849 break 2
4850 fi
4851done
4852 done
4853IFS=$as_save_IFS
4854
4855 ;;
4856esac
4857fi
4858ENT=$ac_cv_path_ENT
4859if test -n "$ENT"; then
4860 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENT" >&5
4861$as_echo "$ENT" >&6; }
4862else
4863 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4864$as_echo "no" >&6; }
4865fi
4866
4867
4868
4869# Extract the first word of "bash", so it can be a program name with args.
4870set dummy bash; ac_word=$2
4871{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4872$as_echo_n "checking for $ac_word... " >&6; }
4873if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4874 $as_echo_n "(cached) " >&6
4875else
4876 case $TEST_MINUS_S_SH in
4877 [\\/]* | ?:[\\/]*)
4878 ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path.
4879 ;;
4880 *)
4881 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4882for as_dir in $PATH
4883do
4884 IFS=$as_save_IFS
4885 test -z "$as_dir" && as_dir=.
4886 for ac_exec_ext in '' $ac_executable_extensions; do
4887 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4888 ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext"
4889 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4890 break 2
4891 fi
4892done
4893 done
4894IFS=$as_save_IFS
4895
4896 ;;
4897esac
4898fi
4899TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4900if test -n "$TEST_MINUS_S_SH"; then
4901 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5
4902$as_echo "$TEST_MINUS_S_SH" >&6; }
4903else
4904 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4905$as_echo "no" >&6; }
4906fi
4907
4908
4909# Extract the first word of "ksh", so it can be a program name with args.
4910set dummy ksh; ac_word=$2
4911{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4912$as_echo_n "checking for $ac_word... " >&6; }
4913if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4914 $as_echo_n "(cached) " >&6
4915else
4916 case $TEST_MINUS_S_SH in
4917 [\\/]* | ?:[\\/]*)
4918 ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path.
4919 ;;
4920 *)
4921 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4922for as_dir in $PATH
4923do
4924 IFS=$as_save_IFS
4925 test -z "$as_dir" && as_dir=.
4926 for ac_exec_ext in '' $ac_executable_extensions; do
4927 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4928 ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext"
4929 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4930 break 2
4931 fi
4932done
4933 done
4934IFS=$as_save_IFS
4935
4936 ;;
4937esac
4938fi
4939TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4940if test -n "$TEST_MINUS_S_SH"; then
4941 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5
4942$as_echo "$TEST_MINUS_S_SH" >&6; }
4943else
4944 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4945$as_echo "no" >&6; }
4946fi
4947
4948
4949# Extract the first word of "sh", so it can be a program name with args.
4950set dummy sh; ac_word=$2
4951{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4952$as_echo_n "checking for $ac_word... " >&6; }
4953if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then :
4954 $as_echo_n "(cached) " >&6
4955else
4956 case $TEST_MINUS_S_SH in
4957 [\\/]* | ?:[\\/]*)
4958 ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path.
4959 ;;
4960 *)
4961 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4962for as_dir in $PATH
4963do
4964 IFS=$as_save_IFS
4965 test -z "$as_dir" && as_dir=.
4966 for ac_exec_ext in '' $ac_executable_extensions; do
4967 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4968 ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext"
4969 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4970 break 2
4971 fi
4972done
4973 done
4974IFS=$as_save_IFS
4975
4976 ;;
4977esac
4978fi
4979TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH
4980if test -n "$TEST_MINUS_S_SH"; then
4981 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5
4982$as_echo "$TEST_MINUS_S_SH" >&6; }
4983else
4984 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4985$as_echo "no" >&6; }
4986fi
4987
4988
4989# Extract the first word of "sh", so it can be a program name with args.
4990set dummy sh; ac_word=$2
4991{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4992$as_echo_n "checking for $ac_word... " >&6; }
4993if ${ac_cv_path_SH+:} false; then :
4994 $as_echo_n "(cached) " >&6
4995else
4996 case $SH in
4997 [\\/]* | ?:[\\/]*)
4998 ac_cv_path_SH="$SH" # Let the user override the test with a path.
4999 ;;
5000 *)
5001 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5002for as_dir in $PATH
5003do
5004 IFS=$as_save_IFS
5005 test -z "$as_dir" && as_dir=.
5006 for ac_exec_ext in '' $ac_executable_extensions; do
5007 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5008 ac_cv_path_SH="$as_dir/$ac_word$ac_exec_ext"
5009 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5010 break 2
5011 fi
5012done
5013 done
5014IFS=$as_save_IFS
5015
5016 ;;
5017esac
5018fi
5019SH=$ac_cv_path_SH
5020if test -n "$SH"; then
5021 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SH" >&5
5022$as_echo "$SH" >&6; }
5023else
5024 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5025$as_echo "no" >&6; }
5026fi
5027
5028
5029# Extract the first word of "groff", so it can be a program name with args.
5030set dummy groff; ac_word=$2
5031{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5032$as_echo_n "checking for $ac_word... " >&6; }
5033if ${ac_cv_path_GROFF+:} false; then :
5034 $as_echo_n "(cached) " >&6
5035else
5036 case $GROFF in
5037 [\\/]* | ?:[\\/]*)
5038 ac_cv_path_GROFF="$GROFF" # Let the user override the test with a path.
5039 ;;
5040 *)
5041 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5042for as_dir in $PATH
5043do
5044 IFS=$as_save_IFS
5045 test -z "$as_dir" && as_dir=.
5046 for ac_exec_ext in '' $ac_executable_extensions; do
5047 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5048 ac_cv_path_GROFF="$as_dir/$ac_word$ac_exec_ext"
5049 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5050 break 2
5051 fi
5052done
5053 done
5054IFS=$as_save_IFS
5055
5056 ;;
5057esac
5058fi
5059GROFF=$ac_cv_path_GROFF
5060if test -n "$GROFF"; then
5061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GROFF" >&5
5062$as_echo "$GROFF" >&6; }
5063else
5064 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5065$as_echo "no" >&6; }
5066fi
5067
5068
5069# Extract the first word of "nroff", so it can be a program name with args.
5070set dummy nroff; ac_word=$2
5071{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5072$as_echo_n "checking for $ac_word... " >&6; }
5073if ${ac_cv_path_NROFF+:} false; then :
5074 $as_echo_n "(cached) " >&6
5075else
5076 case $NROFF in
5077 [\\/]* | ?:[\\/]*)
5078 ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path.
5079 ;;
5080 *)
5081 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5082for as_dir in $PATH
5083do
5084 IFS=$as_save_IFS
5085 test -z "$as_dir" && as_dir=.
5086 for ac_exec_ext in '' $ac_executable_extensions; do
5087 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5088 ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext"
5089 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5090 break 2
5091 fi
5092done
5093 done
5094IFS=$as_save_IFS
5095
5096 ;;
5097esac
5098fi
5099NROFF=$ac_cv_path_NROFF
5100if test -n "$NROFF"; then
5101 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
5102$as_echo "$NROFF" >&6; }
5103else
5104 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5105$as_echo "no" >&6; }
5106fi
5107
5108
5109# Extract the first word of "mandoc", so it can be a program name with args.
5110set dummy mandoc; ac_word=$2
5111{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5112$as_echo_n "checking for $ac_word... " >&6; }
5113if ${ac_cv_path_MANDOC+:} false; then :
5114 $as_echo_n "(cached) " >&6
5115else
5116 case $MANDOC in
5117 [\\/]* | ?:[\\/]*)
5118 ac_cv_path_MANDOC="$MANDOC" # Let the user override the test with a path.
5119 ;;
5120 *)
5121 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5122for as_dir in $PATH
5123do
5124 IFS=$as_save_IFS
5125 test -z "$as_dir" && as_dir=.
5126 for ac_exec_ext in '' $ac_executable_extensions; do
5127 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5128 ac_cv_path_MANDOC="$as_dir/$ac_word$ac_exec_ext"
5129 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5130 break 2
5131 fi
5132done
5133 done
5134IFS=$as_save_IFS
5135
5136 ;;
5137esac
5138fi
5139MANDOC=$ac_cv_path_MANDOC
5140if test -n "$MANDOC"; then
5141 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANDOC" >&5
5142$as_echo "$MANDOC" >&6; }
5143else
5144 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5145$as_echo "no" >&6; }
5146fi
5147
5148
5149TEST_SHELL=sh
5150
5151
5152if test "x$MANDOC" != "x" ; then
5153 MANFMT="$MANDOC"
5154elif test "x$NROFF" != "x" ; then
5155 MANFMT="$NROFF -mandoc"
5156elif test "x$GROFF" != "x" ; then
5157 MANFMT="$GROFF -mandoc -Tascii"
5158else
5159 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no manpage formatted found" >&5
5160$as_echo "$as_me: WARNING: no manpage formatted found" >&2;}
5161 MANFMT="false"
5162fi
5163
5164
5165# Extract the first word of "groupadd", so it can be a program name with args.
5166set dummy groupadd; ac_word=$2
5167{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5168$as_echo_n "checking for $ac_word... " >&6; }
5169if ${ac_cv_path_PATH_GROUPADD_PROG+:} false; then :
5170 $as_echo_n "(cached) " >&6
5171else
5172 case $PATH_GROUPADD_PROG in
5173 [\\/]* | ?:[\\/]*)
5174 ac_cv_path_PATH_GROUPADD_PROG="$PATH_GROUPADD_PROG" # Let the user override the test with a path.
5175 ;;
5176 *)
5177 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5178for as_dir in /usr/sbin${PATH_SEPARATOR}/etc
5179do
5180 IFS=$as_save_IFS
5181 test -z "$as_dir" && as_dir=.
5182 for ac_exec_ext in '' $ac_executable_extensions; do
5183 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5184 ac_cv_path_PATH_GROUPADD_PROG="$as_dir/$ac_word$ac_exec_ext"
5185 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5186 break 2
5187 fi
5188done
5189 done
5190IFS=$as_save_IFS
5191
5192 test -z "$ac_cv_path_PATH_GROUPADD_PROG" && ac_cv_path_PATH_GROUPADD_PROG="groupadd"
5193 ;;
5194esac
5195fi
5196PATH_GROUPADD_PROG=$ac_cv_path_PATH_GROUPADD_PROG
5197if test -n "$PATH_GROUPADD_PROG"; then
5198 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_GROUPADD_PROG" >&5
5199$as_echo "$PATH_GROUPADD_PROG" >&6; }
5200else
5201 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5202$as_echo "no" >&6; }
5203fi
5204
5205
5206# Extract the first word of "useradd", so it can be a program name with args.
5207set dummy useradd; ac_word=$2
5208{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5209$as_echo_n "checking for $ac_word... " >&6; }
5210if ${ac_cv_path_PATH_USERADD_PROG+:} false; then :
5211 $as_echo_n "(cached) " >&6
5212else
5213 case $PATH_USERADD_PROG in
5214 [\\/]* | ?:[\\/]*)
5215 ac_cv_path_PATH_USERADD_PROG="$PATH_USERADD_PROG" # Let the user override the test with a path.
5216 ;;
5217 *)
5218 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5219for as_dir in /usr/sbin${PATH_SEPARATOR}/etc
5220do
5221 IFS=$as_save_IFS
5222 test -z "$as_dir" && as_dir=.
5223 for ac_exec_ext in '' $ac_executable_extensions; do
5224 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5225 ac_cv_path_PATH_USERADD_PROG="$as_dir/$ac_word$ac_exec_ext"
5226 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5227 break 2
5228 fi
5229done
5230 done
5231IFS=$as_save_IFS
5232
5233 test -z "$ac_cv_path_PATH_USERADD_PROG" && ac_cv_path_PATH_USERADD_PROG="useradd"
5234 ;;
5235esac
5236fi
5237PATH_USERADD_PROG=$ac_cv_path_PATH_USERADD_PROG
5238if test -n "$PATH_USERADD_PROG"; then
5239 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_USERADD_PROG" >&5
5240$as_echo "$PATH_USERADD_PROG" >&6; }
5241else
5242 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5243$as_echo "no" >&6; }
5244fi
5245
5246
5247# Extract the first word of "pkgmk", so it can be a program name with args.
5248set dummy pkgmk; ac_word=$2
5249{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5250$as_echo_n "checking for $ac_word... " >&6; }
5251if ${ac_cv_prog_MAKE_PACKAGE_SUPPORTED+:} false; then :
5252 $as_echo_n "(cached) " >&6
5253else
5254 if test -n "$MAKE_PACKAGE_SUPPORTED"; then
5255 ac_cv_prog_MAKE_PACKAGE_SUPPORTED="$MAKE_PACKAGE_SUPPORTED" # Let the user override the test.
5256else
5257as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5258for as_dir in $PATH
5259do
5260 IFS=$as_save_IFS
5261 test -z "$as_dir" && as_dir=.
5262 for ac_exec_ext in '' $ac_executable_extensions; do
5263 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5264 ac_cv_prog_MAKE_PACKAGE_SUPPORTED="yes"
5265 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5266 break 2
5267 fi
5268done
5269 done
5270IFS=$as_save_IFS
5271
5272 test -z "$ac_cv_prog_MAKE_PACKAGE_SUPPORTED" && ac_cv_prog_MAKE_PACKAGE_SUPPORTED="no"
5273fi
5274fi
5275MAKE_PACKAGE_SUPPORTED=$ac_cv_prog_MAKE_PACKAGE_SUPPORTED
5276if test -n "$MAKE_PACKAGE_SUPPORTED"; then
5277 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKE_PACKAGE_SUPPORTED" >&5
5278$as_echo "$MAKE_PACKAGE_SUPPORTED" >&6; }
5279else
5280 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5281$as_echo "no" >&6; }
5282fi
5283
5284
5285if test -x /sbin/sh; then
5286 STARTUP_SCRIPT_SHELL=/sbin/sh
5287
5288else
5289 STARTUP_SCRIPT_SHELL=/bin/sh
5290
5291fi
5292
5293# System features
5294# Check whether --enable-largefile was given.
5295if test "${enable_largefile+set}" = set; then :
5296 enableval=$enable_largefile;
5297fi
5298
5299if test "$enable_largefile" != no; then
5300
5301 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
5302$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
5303if ${ac_cv_sys_largefile_CC+:} false; then :
5304 $as_echo_n "(cached) " >&6
5305else
5306 ac_cv_sys_largefile_CC=no
5307 if test "$GCC" != yes; then
5308 ac_save_CC=$CC
5309 while :; do
5310 # IRIX 6.2 and later do not support large files by default,
5311 # so use the C compiler's -n32 option if that helps.
5312 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5313/* end confdefs.h. */
5314#include <sys/types.h>
5315 /* Check that off_t can represent 2**63 - 1 correctly.
5316 We can't simply define LARGE_OFF_T to be 9223372036854775807,
5317 since some C++ compilers masquerading as C compilers
5318 incorrectly reject 9223372036854775807. */
5319#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
5320 int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
5321 && LARGE_OFF_T % 2147483647 == 1)
5322 ? 1 : -1];
5323int
5324main ()
5325{
5326
5327 ;
5328 return 0;
5329}
5330_ACEOF
5331 if ac_fn_c_try_compile "$LINENO"; then :
5332 break
5333fi
5334rm -f core conftest.err conftest.$ac_objext
5335 CC="$CC -n32"
5336 if ac_fn_c_try_compile "$LINENO"; then :
5337 ac_cv_sys_largefile_CC=' -n32'; break
5338fi
5339rm -f core conftest.err conftest.$ac_objext
5340 break
5341 done
5342 CC=$ac_save_CC
5343 rm -f conftest.$ac_ext
5344 fi
5345fi
5346{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
5347$as_echo "$ac_cv_sys_largefile_CC" >&6; }
5348 if test "$ac_cv_sys_largefile_CC" != no; then
5349 CC=$CC$ac_cv_sys_largefile_CC
5350 fi
5351
5352 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
5353$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
5354if ${ac_cv_sys_file_offset_bits+:} false; then :
5355 $as_echo_n "(cached) " >&6
5356else
5357 while :; do
5358 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5359/* end confdefs.h. */
5360#include <sys/types.h>
5361 /* Check that off_t can represent 2**63 - 1 correctly.
5362 We can't simply define LARGE_OFF_T to be 9223372036854775807,
5363 since some C++ compilers masquerading as C compilers
5364 incorrectly reject 9223372036854775807. */
5365#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
5366 int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
5367 && LARGE_OFF_T % 2147483647 == 1)
5368 ? 1 : -1];
5369int
5370main ()
5371{
5372
5373 ;
5374 return 0;
5375}
5376_ACEOF
5377if ac_fn_c_try_compile "$LINENO"; then :
5378 ac_cv_sys_file_offset_bits=no; break
5379fi
5380rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5381 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5382/* end confdefs.h. */
5383#define _FILE_OFFSET_BITS 64
5384#include <sys/types.h>
5385 /* Check that off_t can represent 2**63 - 1 correctly.
5386 We can't simply define LARGE_OFF_T to be 9223372036854775807,
5387 since some C++ compilers masquerading as C compilers
5388 incorrectly reject 9223372036854775807. */
5389#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
5390 int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
5391 && LARGE_OFF_T % 2147483647 == 1)
5392 ? 1 : -1];
5393int
5394main ()
5395{
5396
5397 ;
5398 return 0;
5399}
5400_ACEOF
5401if ac_fn_c_try_compile "$LINENO"; then :
5402 ac_cv_sys_file_offset_bits=64; break
5403fi
5404rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5405 ac_cv_sys_file_offset_bits=unknown
5406 break
5407done
5408fi
5409{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
5410$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
5411case $ac_cv_sys_file_offset_bits in #(
5412 no | unknown) ;;
5413 *)
5414cat >>confdefs.h <<_ACEOF
5415#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
5416_ACEOF
5417;;
5418esac
5419rm -rf conftest*
5420 if test $ac_cv_sys_file_offset_bits = unknown; then
5421 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
5422$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
5423if ${ac_cv_sys_large_files+:} false; then :
5424 $as_echo_n "(cached) " >&6
5425else
5426 while :; do
5427 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5428/* end confdefs.h. */
5429#include <sys/types.h>
5430 /* Check that off_t can represent 2**63 - 1 correctly.
5431 We can't simply define LARGE_OFF_T to be 9223372036854775807,
5432 since some C++ compilers masquerading as C compilers
5433 incorrectly reject 9223372036854775807. */
5434#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
5435 int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
5436 && LARGE_OFF_T % 2147483647 == 1)
5437 ? 1 : -1];
5438int
5439main ()
5440{
5441
5442 ;
5443 return 0;
5444}
5445_ACEOF
5446if ac_fn_c_try_compile "$LINENO"; then :
5447 ac_cv_sys_large_files=no; break
5448fi
5449rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5450 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5451/* end confdefs.h. */
5452#define _LARGE_FILES 1
5453#include <sys/types.h>
5454 /* Check that off_t can represent 2**63 - 1 correctly.
5455 We can't simply define LARGE_OFF_T to be 9223372036854775807,
5456 since some C++ compilers masquerading as C compilers
5457 incorrectly reject 9223372036854775807. */
5458#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
5459 int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
5460 && LARGE_OFF_T % 2147483647 == 1)
5461 ? 1 : -1];
5462int
5463main ()
5464{
5465
5466 ;
5467 return 0;
5468}
5469_ACEOF
5470if ac_fn_c_try_compile "$LINENO"; then :
5471 ac_cv_sys_large_files=1; break
5472fi
5473rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5474 ac_cv_sys_large_files=unknown
5475 break
5476done
5477fi
5478{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
5479$as_echo "$ac_cv_sys_large_files" >&6; }
5480case $ac_cv_sys_large_files in #(
5481 no | unknown) ;;
5482 *)
5483cat >>confdefs.h <<_ACEOF
5484#define _LARGE_FILES $ac_cv_sys_large_files
5485_ACEOF
5486;;
5487esac
5488rm -rf conftest*
5489 fi
5490
5491
5492fi
5493
5494
5495if test -z "$AR" ; then
5496 as_fn_error $? "*** 'ar' missing, please install or fix your \$PATH ***" "$LINENO" 5
5497fi
5498
5499# Extract the first word of "passwd", so it can be a program name with args.
5500set dummy passwd; ac_word=$2
5501{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5502$as_echo_n "checking for $ac_word... " >&6; }
5503if ${ac_cv_path_PATH_PASSWD_PROG+:} false; then :
5504 $as_echo_n "(cached) " >&6
5505else
5506 case $PATH_PASSWD_PROG in
5507 [\\/]* | ?:[\\/]*)
5508 ac_cv_path_PATH_PASSWD_PROG="$PATH_PASSWD_PROG" # Let the user override the test with a path.
5509 ;;
5510 *)
5511 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5512for as_dir in $PATH
5513do
5514 IFS=$as_save_IFS
5515 test -z "$as_dir" && as_dir=.
5516 for ac_exec_ext in '' $ac_executable_extensions; do
5517 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5518 ac_cv_path_PATH_PASSWD_PROG="$as_dir/$ac_word$ac_exec_ext"
5519 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5520 break 2
5521 fi
5522done
5523 done
5524IFS=$as_save_IFS
5525
5526 ;;
5527esac
5528fi
5529PATH_PASSWD_PROG=$ac_cv_path_PATH_PASSWD_PROG
5530if test -n "$PATH_PASSWD_PROG"; then
5531 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_PASSWD_PROG" >&5
5532$as_echo "$PATH_PASSWD_PROG" >&6; }
5533else
5534 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5535$as_echo "no" >&6; }
5536fi
5537
5538
5539if test ! -z "$PATH_PASSWD_PROG" ; then
5540
5541cat >>confdefs.h <<_ACEOF
5542#define _PATH_PASSWD_PROG "$PATH_PASSWD_PROG"
5543_ACEOF
5544
5545fi
5546
5547LD="$CC"
5548
5549
5550{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
5551$as_echo_n "checking for inline... " >&6; }
5552if ${ac_cv_c_inline+:} false; then :
5553 $as_echo_n "(cached) " >&6
5554else
5555 ac_cv_c_inline=no
5556for ac_kw in inline __inline__ __inline; do
5557 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5558/* end confdefs.h. */
5559#ifndef __cplusplus
5560typedef int foo_t;
5561static $ac_kw foo_t static_foo () {return 0; }
5562$ac_kw foo_t foo () {return 0; }
5563#endif
5564
5565_ACEOF
5566if ac_fn_c_try_compile "$LINENO"; then :
5567 ac_cv_c_inline=$ac_kw
5568fi
5569rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5570 test "$ac_cv_c_inline" != no && break
5571done
5572
5573fi
5574{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
5575$as_echo "$ac_cv_c_inline" >&6; }
5576
5577case $ac_cv_c_inline in
5578 inline | yes) ;;
5579 *)
5580 case $ac_cv_c_inline in
5581 no) ac_val=;;
5582 *) ac_val=$ac_cv_c_inline;;
5583 esac
5584 cat >>confdefs.h <<_ACEOF
5585#ifndef __cplusplus
5586#define inline $ac_val
5587#endif
5588_ACEOF
5589 ;;
5590esac
5591
5592
5593ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h>
5594"
5595if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then :
5596 have_llong_max=1
5597fi
5598
5599ac_fn_c_check_decl "$LINENO" "SYSTR_POLICY_KILL" "ac_cv_have_decl_SYSTR_POLICY_KILL" "
5600 #include <sys/types.h>
5601 #include <sys/param.h>
5602 #include <dev/systrace.h>
5603
5604"
5605if test "x$ac_cv_have_decl_SYSTR_POLICY_KILL" = xyes; then :
5606 have_systr_policy_kill=1
5607fi
5608
5609ac_fn_c_check_decl "$LINENO" "RLIMIT_NPROC" "ac_cv_have_decl_RLIMIT_NPROC" "
5610 #include <sys/types.h>
5611 #include <sys/resource.h>
5612
5613"
5614if test "x$ac_cv_have_decl_RLIMIT_NPROC" = xyes; then :
5615
5616$as_echo "#define HAVE_RLIMIT_NPROC /**/" >>confdefs.h
5617
5618fi
5619
5620ac_fn_c_check_decl "$LINENO" "PR_SET_NO_NEW_PRIVS" "ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" "
5621 #include <sys/types.h>
5622 #include <linux/prctl.h>
5623
5624"
5625if test "x$ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" = xyes; then :
5626 have_linux_no_new_privs=1
5627fi
5628
5629
5630openssl=yes
5631
5632# Check whether --with-openssl was given.
5633if test "${with_openssl+set}" = set; then :
5634 withval=$with_openssl; if test "x$withval" = "xno" ; then
5635 openssl=no
5636 fi
5637
5638
5639fi
5640
5641{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL will be used for cryptography" >&5
5642$as_echo_n "checking whether OpenSSL will be used for cryptography... " >&6; }
5643if test "x$openssl" = "xyes" ; then
5644 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5645$as_echo "yes" >&6; }
5646
5647cat >>confdefs.h <<_ACEOF
5648#define WITH_OPENSSL 1
5649_ACEOF
5650
5651else
5652 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5653$as_echo "no" >&6; }
5654fi
5655
5656use_stack_protector=1
5657use_toolchain_hardening=1
5658
5659# Check whether --with-stackprotect was given.
5660if test "${with_stackprotect+set}" = set; then :
5661 withval=$with_stackprotect;
5662 if test "x$withval" = "xno"; then
5663 use_stack_protector=0
5664 fi
5665fi
5666
5667
5668# Check whether --with-hardening was given.
5669if test "${with_hardening+set}" = set; then :
5670 withval=$with_hardening;
5671 if test "x$withval" = "xno"; then
5672 use_toolchain_hardening=0
5673 fi
5674fi
5675
5676
5677# We use -Werror for the tests only so that we catch warnings like "this is
5678# on by default" for things like -fPIE.
5679{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror" >&5
5680$as_echo_n "checking if $CC supports -Werror... " >&6; }
5681saved_CFLAGS="$CFLAGS"
5682CFLAGS="$CFLAGS -Werror"
5683cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5684/* end confdefs.h. */
5685int main(void) { return 0; }
5686_ACEOF
5687if ac_fn_c_try_compile "$LINENO"; then :
5688 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5689$as_echo "yes" >&6; }
5690 WERROR="-Werror"
5691else
5692 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5693$as_echo "no" >&6; }
5694 WERROR=""
5695
5696fi
5697rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5698CFLAGS="$saved_CFLAGS"
5699
5700if test "$GCC" = "yes" || test "$GCC" = "egcs"; then
5701 {
5702 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -pipe" >&5
5703$as_echo_n "checking if $CC supports compile flag -pipe... " >&6; }
5704 saved_CFLAGS="$CFLAGS"
5705 CFLAGS="$CFLAGS $WERROR -pipe"
5706 _define_flag=""
5707 test "x$_define_flag" = "x" && _define_flag="-pipe"
5708 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5709/* end confdefs.h. */
5710
5711#include <stdlib.h>
5712#include <stdio.h>
5713int main(int argc, char **argv) {
5714 /* Some math to catch -ftrapv problems in the toolchain */
5715 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5716 float l = i * 2.1;
5717 double m = l / 0.5;
5718 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5719 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5720 exit(0);
5721}
5722
5723_ACEOF
5724if ac_fn_c_try_compile "$LINENO"; then :
5725
5726if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5727then
5728 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5729$as_echo "no" >&6; }
5730 CFLAGS="$saved_CFLAGS"
5731else
5732 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5733$as_echo "yes" >&6; }
5734 CFLAGS="$saved_CFLAGS $_define_flag"
5735fi
5736else
5737 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5738$as_echo "no" >&6; }
5739 CFLAGS="$saved_CFLAGS"
5740
5741fi
5742rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5743}
5744 {
5745 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Qunused-arguments" >&5
5746$as_echo_n "checking if $CC supports compile flag -Qunused-arguments... " >&6; }
5747 saved_CFLAGS="$CFLAGS"
5748 CFLAGS="$CFLAGS $WERROR -Qunused-arguments"
5749 _define_flag=""
5750 test "x$_define_flag" = "x" && _define_flag="-Qunused-arguments"
5751 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5752/* end confdefs.h. */
5753
5754#include <stdlib.h>
5755#include <stdio.h>
5756int main(int argc, char **argv) {
5757 /* Some math to catch -ftrapv problems in the toolchain */
5758 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5759 float l = i * 2.1;
5760 double m = l / 0.5;
5761 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5762 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5763 exit(0);
5764}
5765
5766_ACEOF
5767if ac_fn_c_try_compile "$LINENO"; then :
5768
5769if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5770then
5771 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5772$as_echo "no" >&6; }
5773 CFLAGS="$saved_CFLAGS"
5774else
5775 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5776$as_echo "yes" >&6; }
5777 CFLAGS="$saved_CFLAGS $_define_flag"
5778fi
5779else
5780 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5781$as_echo "no" >&6; }
5782 CFLAGS="$saved_CFLAGS"
5783
5784fi
5785rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5786}
5787 {
5788 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunknown-warning-option" >&5
5789$as_echo_n "checking if $CC supports compile flag -Wunknown-warning-option... " >&6; }
5790 saved_CFLAGS="$CFLAGS"
5791 CFLAGS="$CFLAGS $WERROR -Wunknown-warning-option"
5792 _define_flag=""
5793 test "x$_define_flag" = "x" && _define_flag="-Wunknown-warning-option"
5794 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5795/* end confdefs.h. */
5796
5797#include <stdlib.h>
5798#include <stdio.h>
5799int main(int argc, char **argv) {
5800 /* Some math to catch -ftrapv problems in the toolchain */
5801 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5802 float l = i * 2.1;
5803 double m = l / 0.5;
5804 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5805 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5806 exit(0);
5807}
5808
5809_ACEOF
5810if ac_fn_c_try_compile "$LINENO"; then :
5811
5812if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5813then
5814 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5815$as_echo "no" >&6; }
5816 CFLAGS="$saved_CFLAGS"
5817else
5818 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5819$as_echo "yes" >&6; }
5820 CFLAGS="$saved_CFLAGS $_define_flag"
5821fi
5822else
5823 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5824$as_echo "no" >&6; }
5825 CFLAGS="$saved_CFLAGS"
5826
5827fi
5828rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5829}
5830 {
5831 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wall" >&5
5832$as_echo_n "checking if $CC supports compile flag -Wall... " >&6; }
5833 saved_CFLAGS="$CFLAGS"
5834 CFLAGS="$CFLAGS $WERROR -Wall"
5835 _define_flag=""
5836 test "x$_define_flag" = "x" && _define_flag="-Wall"
5837 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5838/* end confdefs.h. */
5839
5840#include <stdlib.h>
5841#include <stdio.h>
5842int main(int argc, char **argv) {
5843 /* Some math to catch -ftrapv problems in the toolchain */
5844 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5845 float l = i * 2.1;
5846 double m = l / 0.5;
5847 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5848 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5849 exit(0);
5850}
5851
5852_ACEOF
5853if ac_fn_c_try_compile "$LINENO"; then :
5854
5855if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5856then
5857 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5858$as_echo "no" >&6; }
5859 CFLAGS="$saved_CFLAGS"
5860else
5861 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5862$as_echo "yes" >&6; }
5863 CFLAGS="$saved_CFLAGS $_define_flag"
5864fi
5865else
5866 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5867$as_echo "no" >&6; }
5868 CFLAGS="$saved_CFLAGS"
5869
5870fi
5871rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5872}
5873 {
5874 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-arith" >&5
5875$as_echo_n "checking if $CC supports compile flag -Wpointer-arith... " >&6; }
5876 saved_CFLAGS="$CFLAGS"
5877 CFLAGS="$CFLAGS $WERROR -Wpointer-arith"
5878 _define_flag=""
5879 test "x$_define_flag" = "x" && _define_flag="-Wpointer-arith"
5880 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5881/* end confdefs.h. */
5882
5883#include <stdlib.h>
5884#include <stdio.h>
5885int main(int argc, char **argv) {
5886 /* Some math to catch -ftrapv problems in the toolchain */
5887 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5888 float l = i * 2.1;
5889 double m = l / 0.5;
5890 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5891 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5892 exit(0);
5893}
5894
5895_ACEOF
5896if ac_fn_c_try_compile "$LINENO"; then :
5897
5898if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5899then
5900 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5901$as_echo "no" >&6; }
5902 CFLAGS="$saved_CFLAGS"
5903else
5904 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5905$as_echo "yes" >&6; }
5906 CFLAGS="$saved_CFLAGS $_define_flag"
5907fi
5908else
5909 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5910$as_echo "no" >&6; }
5911 CFLAGS="$saved_CFLAGS"
5912
5913fi
5914rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5915}
5916 {
5917 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wuninitialized" >&5
5918$as_echo_n "checking if $CC supports compile flag -Wuninitialized... " >&6; }
5919 saved_CFLAGS="$CFLAGS"
5920 CFLAGS="$CFLAGS $WERROR -Wuninitialized"
5921 _define_flag=""
5922 test "x$_define_flag" = "x" && _define_flag="-Wuninitialized"
5923 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5924/* end confdefs.h. */
5925
5926#include <stdlib.h>
5927#include <stdio.h>
5928int main(int argc, char **argv) {
5929 /* Some math to catch -ftrapv problems in the toolchain */
5930 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5931 float l = i * 2.1;
5932 double m = l / 0.5;
5933 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5934 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5935 exit(0);
5936}
5937
5938_ACEOF
5939if ac_fn_c_try_compile "$LINENO"; then :
5940
5941if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5942then
5943 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5944$as_echo "no" >&6; }
5945 CFLAGS="$saved_CFLAGS"
5946else
5947 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5948$as_echo "yes" >&6; }
5949 CFLAGS="$saved_CFLAGS $_define_flag"
5950fi
5951else
5952 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5953$as_echo "no" >&6; }
5954 CFLAGS="$saved_CFLAGS"
5955
5956fi
5957rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5958}
5959 {
5960 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsign-compare" >&5
5961$as_echo_n "checking if $CC supports compile flag -Wsign-compare... " >&6; }
5962 saved_CFLAGS="$CFLAGS"
5963 CFLAGS="$CFLAGS $WERROR -Wsign-compare"
5964 _define_flag=""
5965 test "x$_define_flag" = "x" && _define_flag="-Wsign-compare"
5966 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5967/* end confdefs.h. */
5968
5969#include <stdlib.h>
5970#include <stdio.h>
5971int main(int argc, char **argv) {
5972 /* Some math to catch -ftrapv problems in the toolchain */
5973 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
5974 float l = i * 2.1;
5975 double m = l / 0.5;
5976 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
5977 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
5978 exit(0);
5979}
5980
5981_ACEOF
5982if ac_fn_c_try_compile "$LINENO"; then :
5983
5984if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
5985then
5986 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5987$as_echo "no" >&6; }
5988 CFLAGS="$saved_CFLAGS"
5989else
5990 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5991$as_echo "yes" >&6; }
5992 CFLAGS="$saved_CFLAGS $_define_flag"
5993fi
5994else
5995 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5996$as_echo "no" >&6; }
5997 CFLAGS="$saved_CFLAGS"
5998
5999fi
6000rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6001}
6002 {
6003 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wformat-security" >&5
6004$as_echo_n "checking if $CC supports compile flag -Wformat-security... " >&6; }
6005 saved_CFLAGS="$CFLAGS"
6006 CFLAGS="$CFLAGS $WERROR -Wformat-security"
6007 _define_flag=""
6008 test "x$_define_flag" = "x" && _define_flag="-Wformat-security"
6009 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6010/* end confdefs.h. */
6011
6012#include <stdlib.h>
6013#include <stdio.h>
6014int main(int argc, char **argv) {
6015 /* Some math to catch -ftrapv problems in the toolchain */
6016 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6017 float l = i * 2.1;
6018 double m = l / 0.5;
6019 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6020 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6021 exit(0);
6022}
6023
6024_ACEOF
6025if ac_fn_c_try_compile "$LINENO"; then :
6026
6027if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6028then
6029 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6030$as_echo "no" >&6; }
6031 CFLAGS="$saved_CFLAGS"
6032else
6033 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6034$as_echo "yes" >&6; }
6035 CFLAGS="$saved_CFLAGS $_define_flag"
6036fi
6037else
6038 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6039$as_echo "no" >&6; }
6040 CFLAGS="$saved_CFLAGS"
6041
6042fi
6043rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6044}
6045 {
6046 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsizeof-pointer-memaccess" >&5
6047$as_echo_n "checking if $CC supports compile flag -Wsizeof-pointer-memaccess... " >&6; }
6048 saved_CFLAGS="$CFLAGS"
6049 CFLAGS="$CFLAGS $WERROR -Wsizeof-pointer-memaccess"
6050 _define_flag=""
6051 test "x$_define_flag" = "x" && _define_flag="-Wsizeof-pointer-memaccess"
6052 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6053/* end confdefs.h. */
6054
6055#include <stdlib.h>
6056#include <stdio.h>
6057int main(int argc, char **argv) {
6058 /* Some math to catch -ftrapv problems in the toolchain */
6059 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6060 float l = i * 2.1;
6061 double m = l / 0.5;
6062 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6063 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6064 exit(0);
6065}
6066
6067_ACEOF
6068if ac_fn_c_try_compile "$LINENO"; then :
6069
6070if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6071then
6072 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6073$as_echo "no" >&6; }
6074 CFLAGS="$saved_CFLAGS"
6075else
6076 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6077$as_echo "yes" >&6; }
6078 CFLAGS="$saved_CFLAGS $_define_flag"
6079fi
6080else
6081 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6082$as_echo "no" >&6; }
6083 CFLAGS="$saved_CFLAGS"
6084
6085fi
6086rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6087}
6088 {
6089 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-sign" >&5
6090$as_echo_n "checking if $CC supports compile flag -Wpointer-sign... " >&6; }
6091 saved_CFLAGS="$CFLAGS"
6092 CFLAGS="$CFLAGS $WERROR -Wpointer-sign"
6093 _define_flag="-Wno-pointer-sign"
6094 test "x$_define_flag" = "x" && _define_flag="-Wpointer-sign"
6095 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6096/* end confdefs.h. */
6097
6098#include <stdlib.h>
6099#include <stdio.h>
6100int main(int argc, char **argv) {
6101 /* Some math to catch -ftrapv problems in the toolchain */
6102 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6103 float l = i * 2.1;
6104 double m = l / 0.5;
6105 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6106 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6107 exit(0);
6108}
6109
6110_ACEOF
6111if ac_fn_c_try_compile "$LINENO"; then :
6112
6113if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6114then
6115 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6116$as_echo "no" >&6; }
6117 CFLAGS="$saved_CFLAGS"
6118else
6119 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6120$as_echo "yes" >&6; }
6121 CFLAGS="$saved_CFLAGS $_define_flag"
6122fi
6123else
6124 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6125$as_echo "no" >&6; }
6126 CFLAGS="$saved_CFLAGS"
6127
6128fi
6129rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6130}
6131 {
6132 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunused-result" >&5
6133$as_echo_n "checking if $CC supports compile flag -Wunused-result... " >&6; }
6134 saved_CFLAGS="$CFLAGS"
6135 CFLAGS="$CFLAGS $WERROR -Wunused-result"
6136 _define_flag="-Wno-unused-result"
6137 test "x$_define_flag" = "x" && _define_flag="-Wunused-result"
6138 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6139/* end confdefs.h. */
6140
6141#include <stdlib.h>
6142#include <stdio.h>
6143int main(int argc, char **argv) {
6144 /* Some math to catch -ftrapv problems in the toolchain */
6145 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6146 float l = i * 2.1;
6147 double m = l / 0.5;
6148 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6149 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6150 exit(0);
6151}
6152
6153_ACEOF
6154if ac_fn_c_try_compile "$LINENO"; then :
6155
6156if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6157then
6158 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6159$as_echo "no" >&6; }
6160 CFLAGS="$saved_CFLAGS"
6161else
6162 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6163$as_echo "yes" >&6; }
6164 CFLAGS="$saved_CFLAGS $_define_flag"
6165fi
6166else
6167 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6168$as_echo "no" >&6; }
6169 CFLAGS="$saved_CFLAGS"
6170
6171fi
6172rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6173}
6174 {
6175 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fno-strict-aliasing" >&5
6176$as_echo_n "checking if $CC supports compile flag -fno-strict-aliasing... " >&6; }
6177 saved_CFLAGS="$CFLAGS"
6178 CFLAGS="$CFLAGS $WERROR -fno-strict-aliasing"
6179 _define_flag=""
6180 test "x$_define_flag" = "x" && _define_flag="-fno-strict-aliasing"
6181 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6182/* end confdefs.h. */
6183
6184#include <stdlib.h>
6185#include <stdio.h>
6186int main(int argc, char **argv) {
6187 /* Some math to catch -ftrapv problems in the toolchain */
6188 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6189 float l = i * 2.1;
6190 double m = l / 0.5;
6191 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6192 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6193 exit(0);
6194}
6195
6196_ACEOF
6197if ac_fn_c_try_compile "$LINENO"; then :
6198
6199if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6200then
6201 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6202$as_echo "no" >&6; }
6203 CFLAGS="$saved_CFLAGS"
6204else
6205 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6206$as_echo "yes" >&6; }
6207 CFLAGS="$saved_CFLAGS $_define_flag"
6208fi
6209else
6210 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6211$as_echo "no" >&6; }
6212 CFLAGS="$saved_CFLAGS"
6213
6214fi
6215rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6216}
6217 if test "x$use_toolchain_hardening" = "x1"; then
6218 {
6219 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -mretpoline" >&5
6220$as_echo_n "checking if $CC supports compile flag -mretpoline... " >&6; }
6221 saved_CFLAGS="$CFLAGS"
6222 CFLAGS="$CFLAGS $WERROR -mretpoline"
6223 _define_flag=""
6224 test "x$_define_flag" = "x" && _define_flag="-mretpoline"
6225 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6226/* end confdefs.h. */
6227
6228#include <stdlib.h>
6229#include <stdio.h>
6230int main(int argc, char **argv) {
6231 /* Some math to catch -ftrapv problems in the toolchain */
6232 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6233 float l = i * 2.1;
6234 double m = l / 0.5;
6235 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6236 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6237 exit(0);
6238}
6239
6240_ACEOF
6241if ac_fn_c_try_compile "$LINENO"; then :
6242
6243if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6244then
6245 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6246$as_echo "no" >&6; }
6247 CFLAGS="$saved_CFLAGS"
6248else
6249 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6250$as_echo "yes" >&6; }
6251 CFLAGS="$saved_CFLAGS $_define_flag"
6252fi
6253else
6254 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6255$as_echo "no" >&6; }
6256 CFLAGS="$saved_CFLAGS"
6257
6258fi
6259rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6260} # clang
6261 {
6262 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,retpolineplt" >&5
6263$as_echo_n "checking if $LD supports link flag -Wl,-z,retpolineplt... " >&6; }
6264 saved_LDFLAGS="$LDFLAGS"
6265 LDFLAGS="$LDFLAGS $WERROR -Wl,-z,retpolineplt"
6266 _define_flag=""
6267 test "x$_define_flag" = "x" && _define_flag="-Wl,-z,retpolineplt"
6268 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6269/* end confdefs.h. */
6270
6271#include <stdlib.h>
6272#include <stdio.h>
6273int main(int argc, char **argv) {
6274 /* Some math to catch -ftrapv problems in the toolchain */
6275 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6276 float l = i * 2.1;
6277 double m = l / 0.5;
6278 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6279 long long p = n * o;
6280 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
6281 exit(0);
6282}
6283
6284_ACEOF
6285if ac_fn_c_try_link "$LINENO"; then :
6286
6287if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6288then
6289 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6290$as_echo "no" >&6; }
6291 LDFLAGS="$saved_LDFLAGS"
6292else
6293 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6294$as_echo "yes" >&6; }
6295 LDFLAGS="$saved_LDFLAGS $_define_flag"
6296fi
6297else
6298 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6299$as_echo "no" >&6; }
6300 LDFLAGS="$saved_LDFLAGS"
6301
6302fi
6303rm -f core conftest.err conftest.$ac_objext \
6304 conftest$ac_exeext conftest.$ac_ext
6305}
6306 {
6307 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -D_FORTIFY_SOURCE=2" >&5
6308$as_echo_n "checking if $CC supports compile flag -D_FORTIFY_SOURCE=2... " >&6; }
6309 saved_CFLAGS="$CFLAGS"
6310 CFLAGS="$CFLAGS $WERROR -D_FORTIFY_SOURCE=2"
6311 _define_flag=""
6312 test "x$_define_flag" = "x" && _define_flag="-D_FORTIFY_SOURCE=2"
6313 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6314/* end confdefs.h. */
6315
6316#include <stdlib.h>
6317#include <stdio.h>
6318int main(int argc, char **argv) {
6319 /* Some math to catch -ftrapv problems in the toolchain */
6320 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6321 float l = i * 2.1;
6322 double m = l / 0.5;
6323 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6324 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
6325 exit(0);
6326}
6327
6328_ACEOF
6329if ac_fn_c_try_compile "$LINENO"; then :
6330
6331if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6332then
6333 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6334$as_echo "no" >&6; }
6335 CFLAGS="$saved_CFLAGS"
6336else
6337 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6338$as_echo "yes" >&6; }
6339 CFLAGS="$saved_CFLAGS $_define_flag"
6340fi
6341else
6342 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6343$as_echo "no" >&6; }
6344 CFLAGS="$saved_CFLAGS"
6345
6346fi
6347rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6348}
6349 {
6350 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,relro" >&5
6351$as_echo_n "checking if $LD supports link flag -Wl,-z,relro... " >&6; }
6352 saved_LDFLAGS="$LDFLAGS"
6353 LDFLAGS="$LDFLAGS $WERROR -Wl,-z,relro"
6354 _define_flag=""
6355 test "x$_define_flag" = "x" && _define_flag="-Wl,-z,relro"
6356 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6357/* end confdefs.h. */
6358
6359#include <stdlib.h>
6360#include <stdio.h>
6361int main(int argc, char **argv) {
6362 /* Some math to catch -ftrapv problems in the toolchain */
6363 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6364 float l = i * 2.1;
6365 double m = l / 0.5;
6366 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6367 long long p = n * o;
6368 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
6369 exit(0);
6370}
6371
6372_ACEOF
6373if ac_fn_c_try_link "$LINENO"; then :
6374
6375if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6376then
6377 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6378$as_echo "no" >&6; }
6379 LDFLAGS="$saved_LDFLAGS"
6380else
6381 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6382$as_echo "yes" >&6; }
6383 LDFLAGS="$saved_LDFLAGS $_define_flag"
6384fi
6385else
6386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6387$as_echo "no" >&6; }
6388 LDFLAGS="$saved_LDFLAGS"
6389
6390fi
6391rm -f core conftest.err conftest.$ac_objext \
6392 conftest$ac_exeext conftest.$ac_ext
6393}
6394 {
6395 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,now" >&5
6396$as_echo_n "checking if $LD supports link flag -Wl,-z,now... " >&6; }
6397 saved_LDFLAGS="$LDFLAGS"
6398 LDFLAGS="$LDFLAGS $WERROR -Wl,-z,now"
6399 _define_flag=""
6400 test "x$_define_flag" = "x" && _define_flag="-Wl,-z,now"
6401 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6402/* end confdefs.h. */
6403
6404#include <stdlib.h>
6405#include <stdio.h>
6406int main(int argc, char **argv) {
6407 /* Some math to catch -ftrapv problems in the toolchain */
6408 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6409 float l = i * 2.1;
6410 double m = l / 0.5;
6411 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6412 long long p = n * o;
6413 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
6414 exit(0);
6415}
6416
6417_ACEOF
6418if ac_fn_c_try_link "$LINENO"; then :
6419
6420if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6421then
6422 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6423$as_echo "no" >&6; }
6424 LDFLAGS="$saved_LDFLAGS"
6425else
6426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6427$as_echo "yes" >&6; }
6428 LDFLAGS="$saved_LDFLAGS $_define_flag"
6429fi
6430else
6431 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6432$as_echo "no" >&6; }
6433 LDFLAGS="$saved_LDFLAGS"
6434
6435fi
6436rm -f core conftest.err conftest.$ac_objext \
6437 conftest$ac_exeext conftest.$ac_ext
6438}
6439 {
6440 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,noexecstack" >&5
6441$as_echo_n "checking if $LD supports link flag -Wl,-z,noexecstack... " >&6; }
6442 saved_LDFLAGS="$LDFLAGS"
6443 LDFLAGS="$LDFLAGS $WERROR -Wl,-z,noexecstack"
6444 _define_flag=""
6445 test "x$_define_flag" = "x" && _define_flag="-Wl,-z,noexecstack"
6446 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6447/* end confdefs.h. */
6448
6449#include <stdlib.h>
6450#include <stdio.h>
6451int main(int argc, char **argv) {
6452 /* Some math to catch -ftrapv problems in the toolchain */
6453 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6454 float l = i * 2.1;
6455 double m = l / 0.5;
6456 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6457 long long p = n * o;
6458 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
6459 exit(0);
6460}
6461
6462_ACEOF
6463if ac_fn_c_try_link "$LINENO"; then :
6464
6465if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6466then
6467 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6468$as_echo "no" >&6; }
6469 LDFLAGS="$saved_LDFLAGS"
6470else
6471 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6472$as_echo "yes" >&6; }
6473 LDFLAGS="$saved_LDFLAGS $_define_flag"
6474fi
6475else
6476 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6477$as_echo "no" >&6; }
6478 LDFLAGS="$saved_LDFLAGS"
6479
6480fi
6481rm -f core conftest.err conftest.$ac_objext \
6482 conftest$ac_exeext conftest.$ac_ext
6483}
6484 # NB. -ftrapv expects certain support functions to be present in
6485 # the compiler library (libgcc or similar) to detect integer operations
6486 # that can overflow. We must check that the result of enabling it
6487 # actually links. The test program compiled/linked includes a number
6488 # of integer operations that should exercise this.
6489 {
6490 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -ftrapv and linking succeeds" >&5
6491$as_echo_n "checking if $CC supports compile flag -ftrapv and linking succeeds... " >&6; }
6492 saved_CFLAGS="$CFLAGS"
6493 CFLAGS="$CFLAGS $WERROR -ftrapv"
6494 _define_flag=""
6495 test "x$_define_flag" = "x" && _define_flag="-ftrapv"
6496 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6497/* end confdefs.h. */
6498
6499#include <stdlib.h>
6500#include <stdio.h>
6501int main(int argc, char **argv) {
6502 /* Some math to catch -ftrapv problems in the toolchain */
6503 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
6504 float l = i * 2.1;
6505 double m = l / 0.5;
6506 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
6507 long long int p = n * o;
6508 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
6509 exit(0);
6510}
6511
6512_ACEOF
6513if ac_fn_c_try_link "$LINENO"; then :
6514
6515if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
6516then
6517 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6518$as_echo "no" >&6; }
6519 CFLAGS="$saved_CFLAGS"
6520else
6521 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6522$as_echo "yes" >&6; }
6523 CFLAGS="$saved_CFLAGS $_define_flag"
6524fi
6525else
6526 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6527$as_echo "no" >&6; }
6528 CFLAGS="$saved_CFLAGS"
6529
6530fi
6531rm -f core conftest.err conftest.$ac_objext \
6532 conftest$ac_exeext conftest.$ac_ext
6533}
6534 fi
6535 { $as_echo "$as_me:${as_lineno-$LINENO}: checking gcc version" >&5
6536$as_echo_n "checking gcc version... " >&6; }
6537 GCC_VER=`$CC -v 2>&1 | $AWK '/gcc version /{print $3}'`
6538 case $GCC_VER in
6539 1.*) no_attrib_nonnull=1 ;;
6540 2.8* | 2.9*)
6541 no_attrib_nonnull=1
6542 ;;
6543 2.*) no_attrib_nonnull=1 ;;
6544 *) ;;
6545 esac
6546 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCC_VER" >&5
6547$as_echo "$GCC_VER" >&6; }
6548
6549 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC accepts -fno-builtin-memset" >&5
6550$as_echo_n "checking if $CC accepts -fno-builtin-memset... " >&6; }
6551 saved_CFLAGS="$CFLAGS"
6552 CFLAGS="$CFLAGS -fno-builtin-memset"
6553 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6554/* end confdefs.h. */
6555 #include <string.h>
6556int
6557main ()
6558{
6559 char b[10]; memset(b, 0, sizeof(b));
6560 ;
6561 return 0;
6562}
6563_ACEOF
6564if ac_fn_c_try_link "$LINENO"; then :
6565 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6566$as_echo "yes" >&6; }
6567else
6568 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6569$as_echo "no" >&6; }
6570 CFLAGS="$saved_CFLAGS"
6571
6572fi
6573rm -f core conftest.err conftest.$ac_objext \
6574 conftest$ac_exeext conftest.$ac_ext
6575
6576 # -fstack-protector-all doesn't always work for some GCC versions
6577 # and/or platforms, so we test if we can. If it's not supported
6578 # on a given platform gcc will emit a warning so we use -Werror.
6579 if test "x$use_stack_protector" = "x1"; then
6580 for t in -fstack-protector-strong -fstack-protector-all \
6581 -fstack-protector; do
6582 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports $t" >&5
6583$as_echo_n "checking if $CC supports $t... " >&6; }
6584 saved_CFLAGS="$CFLAGS"
6585 saved_LDFLAGS="$LDFLAGS"
6586 CFLAGS="$CFLAGS $t -Werror"
6587 LDFLAGS="$LDFLAGS $t -Werror"
6588 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6589/* end confdefs.h. */
6590 #include <stdio.h>
6591int
6592main ()
6593{
6594
6595 char x[256];
6596 snprintf(x, sizeof(x), "XXX");
6597
6598 ;
6599 return 0;
6600}
6601_ACEOF
6602if ac_fn_c_try_link "$LINENO"; then :
6603 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6604$as_echo "yes" >&6; }
6605 CFLAGS="$saved_CFLAGS $t"
6606 LDFLAGS="$saved_LDFLAGS $t"
6607 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $t works" >&5
6608$as_echo_n "checking if $t works... " >&6; }
6609 if test "$cross_compiling" = yes; then :
6610 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: cannot test" >&5
6611$as_echo "$as_me: WARNING: cross compiling: cannot test" >&2;}
6612 break
6613
6614else
6615 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6616/* end confdefs.h. */
6617 #include <stdio.h>
6618int
6619main ()
6620{
6621
6622 char x[256];
6623 snprintf(x, sizeof(x), "XXX");
6624
6625 ;
6626 return 0;
6627}
6628_ACEOF
6629if ac_fn_c_try_run "$LINENO"; then :
6630 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6631$as_echo "yes" >&6; }
6632 break
6633else
6634 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6635$as_echo "no" >&6; }
6636fi
6637rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
6638 conftest.$ac_objext conftest.beam conftest.$ac_ext
6639fi
6640
6641
6642else
6643 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6644$as_echo "no" >&6; }
6645
6646fi
6647rm -f core conftest.err conftest.$ac_objext \
6648 conftest$ac_exeext conftest.$ac_ext
6649 CFLAGS="$saved_CFLAGS"
6650 LDFLAGS="$saved_LDFLAGS"
6651 done
6652 fi
6653
6654 if test -z "$have_llong_max"; then
6655 # retry LLONG_MAX with -std=gnu99, needed on some Linuxes
6656 unset ac_cv_have_decl_LLONG_MAX
6657 saved_CFLAGS="$CFLAGS"
6658 CFLAGS="$CFLAGS -std=gnu99"
6659 ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h>
6660
6661"
6662if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then :
6663 have_llong_max=1
6664else
6665 CFLAGS="$saved_CFLAGS"
6666fi
6667
6668 fi
6669fi
6670
6671{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows __attribute__ on return types" >&5
6672$as_echo_n "checking if compiler allows __attribute__ on return types... " >&6; }
6673cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6674/* end confdefs.h. */
6675
6676#include <stdlib.h>
6677__attribute__((__unused__)) static void foo(void){return;}
6678int
6679main ()
6680{
6681 exit(0);
6682 ;
6683 return 0;
6684}
6685_ACEOF
6686if ac_fn_c_try_compile "$LINENO"; then :
6687 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6688$as_echo "yes" >&6; }
6689else
6690 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6691$as_echo "no" >&6; }
6692
6693$as_echo "#define NO_ATTRIBUTE_ON_RETURN_TYPE 1" >>confdefs.h
6694
6695
6696fi
6697rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6698
6699{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows __attribute__ prototype args" >&5
6700$as_echo_n "checking if compiler allows __attribute__ prototype args... " >&6; }
6701cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6702/* end confdefs.h. */
6703
6704#include <stdlib.h>
6705typedef void foo(const char *, ...) __attribute__((format(printf, 1, 2)));
6706int
6707main ()
6708{
6709 exit(0);
6710 ;
6711 return 0;
6712}
6713_ACEOF
6714if ac_fn_c_try_compile "$LINENO"; then :
6715 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
6716$as_echo "yes" >&6; }
6717else
6718 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6719$as_echo "no" >&6; }
6720
6721$as_echo "#define NO_ATTRIBUTE_ON_PROTOTYPE_ARGS 1" >>confdefs.h
6722
6723
6724fi
6725rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6726
6727if test "x$no_attrib_nonnull" != "x1" ; then
6728
6729$as_echo "#define HAVE_ATTRIBUTE__NONNULL__ 1" >>confdefs.h
6730
6731fi
6732
6733
6734# Check whether --with-rpath was given.
6735if test "${with_rpath+set}" = set; then :
6736 withval=$with_rpath;
6737 if test "x$withval" = "xno" ; then
6738 need_dash_r=""
6739 fi
6740 if test "x$withval" = "xyes" ; then
6741 need_dash_r=1
6742 fi
6743
6744
6745fi
6746
6747
6748# Allow user to specify flags
6749
6750# Check whether --with-cflags was given.
6751if test "${with_cflags+set}" = set; then :
6752 withval=$with_cflags;
6753 if test -n "$withval" && test "x$withval" != "xno" && \
6754 test "x${withval}" != "xyes"; then
6755 CFLAGS="$CFLAGS $withval"
6756 fi
6757
6758
6759fi
6760
6761
6762
6763# Check whether --with-cflags-after was given.
6764if test "${with_cflags_after+set}" = set; then :
6765 withval=$with_cflags_after;
6766 if test -n "$withval" && test "x$withval" != "xno" && \
6767 test "x${withval}" != "xyes"; then
6768 CFLAGS_AFTER="$withval"
6769 fi
6770
6771
6772fi
6773
6774
6775# Check whether --with-cppflags was given.
6776if test "${with_cppflags+set}" = set; then :
6777 withval=$with_cppflags;
6778 if test -n "$withval" && test "x$withval" != "xno" && \
6779 test "x${withval}" != "xyes"; then
6780 CPPFLAGS="$CPPFLAGS $withval"
6781 fi
6782
6783
6784fi
6785
6786
6787# Check whether --with-ldflags was given.
6788if test "${with_ldflags+set}" = set; then :
6789 withval=$with_ldflags;
6790 if test -n "$withval" && test "x$withval" != "xno" && \
6791 test "x${withval}" != "xyes"; then
6792 LDFLAGS="$LDFLAGS $withval"
6793 fi
6794
6795
6796fi
6797
6798
6799# Check whether --with-ldflags-after was given.
6800if test "${with_ldflags_after+set}" = set; then :
6801 withval=$with_ldflags_after;
6802 if test -n "$withval" && test "x$withval" != "xno" && \
6803 test "x${withval}" != "xyes"; then
6804 LDFLAGS_AFTER="$withval"
6805 fi
6806
6807
6808fi
6809
6810
6811# Check whether --with-libs was given.
6812if test "${with_libs+set}" = set; then :
6813 withval=$with_libs;
6814 if test -n "$withval" && test "x$withval" != "xno" && \
6815 test "x${withval}" != "xyes"; then
6816 LIBS="$LIBS $withval"
6817 fi
6818
6819
6820fi
6821
6822
6823# Check whether --with-Werror was given.
6824if test "${with_Werror+set}" = set; then :
6825 withval=$with_Werror;
6826 if test -n "$withval" && test "x$withval" != "xno"; then
6827 werror_flags="-Werror"
6828 if test "x${withval}" != "xyes"; then
6829 werror_flags="$withval"
6830 fi
6831 fi
6832
6833
6834fi
6835
6836
6837for ac_header in \
6838 blf.h \
6839 bstring.h \
6840 crypt.h \
6841 crypto/sha2.h \
6842 dirent.h \
6843 endian.h \
6844 elf.h \
6845 err.h \
6846 features.h \
6847 fcntl.h \
6848 floatingpoint.h \
6849 getopt.h \
6850 glob.h \
6851 ia.h \
6852 iaf.h \
6853 ifaddrs.h \
6854 inttypes.h \
6855 langinfo.h \
6856 limits.h \
6857 locale.h \
6858 login.h \
6859 maillock.h \
6860 ndir.h \
6861 net/if_tun.h \
6862 netdb.h \
6863 netgroup.h \
6864 pam/pam_appl.h \
6865 paths.h \
6866 poll.h \
6867 pty.h \
6868 readpassphrase.h \
6869 rpc/types.h \
6870 security/pam_appl.h \
6871 sha2.h \
6872 shadow.h \
6873 stddef.h \
6874 stdint.h \
6875 string.h \
6876 strings.h \
6877 sys/bitypes.h \
6878 sys/bsdtty.h \
6879 sys/cdefs.h \
6880 sys/dir.h \
6881 sys/file.h \
6882 sys/mman.h \
6883 sys/label.h \
6884 sys/ndir.h \
6885 sys/poll.h \
6886 sys/prctl.h \
6887 sys/pstat.h \
6888 sys/ptrace.h \
6889 sys/random.h \
6890 sys/select.h \
6891 sys/stat.h \
6892 sys/stream.h \
6893 sys/stropts.h \
6894 sys/strtio.h \
6895 sys/statvfs.h \
6896 sys/sysmacros.h \
6897 sys/time.h \
6898 sys/timers.h \
6899 sys/vfs.h \
6900 time.h \
6901 tmpdir.h \
6902 ttyent.h \
6903 ucred.h \
6904 unistd.h \
6905 usersec.h \
6906 util.h \
6907 utime.h \
6908 utmp.h \
6909 utmpx.h \
6910 vis.h \
6911 wchar.h \
6912
6913do :
6914 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
6915ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
6916if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
6917 cat >>confdefs.h <<_ACEOF
6918#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
6919_ACEOF
6920
6921fi
6922
6923done
6924
6925
6926# On some platforms (eg SunOS4) sys/audit.h requires sys/[time|types|label.h]
6927# to be included first.
6928for ac_header in sys/audit.h
6929do :
6930 ac_fn_c_check_header_compile "$LINENO" "sys/audit.h" "ac_cv_header_sys_audit_h" "
6931#ifdef HAVE_SYS_TIME_H
6932# include <sys/time.h>
6933#endif
6934#ifdef HAVE_SYS_TYPES_H
6935# include <sys/types.h>
6936#endif
6937#ifdef HAVE_SYS_LABEL_H
6938# include <sys/label.h>
6939#endif
6940
6941"
6942if test "x$ac_cv_header_sys_audit_h" = xyes; then :
6943 cat >>confdefs.h <<_ACEOF
6944#define HAVE_SYS_AUDIT_H 1
6945_ACEOF
6946
6947fi
6948
6949done
6950
6951
6952# sys/capsicum.h requires sys/types.h
6953for ac_header in sys/capsicum.h
6954do :
6955 ac_fn_c_check_header_compile "$LINENO" "sys/capsicum.h" "ac_cv_header_sys_capsicum_h" "
6956#ifdef HAVE_SYS_TYPES_H
6957# include <sys/types.h>
6958#endif
6959
6960"
6961if test "x$ac_cv_header_sys_capsicum_h" = xyes; then :
6962 cat >>confdefs.h <<_ACEOF
6963#define HAVE_SYS_CAPSICUM_H 1
6964_ACEOF
6965
6966fi
6967
6968done
6969
6970
6971# net/route.h requires sys/socket.h and sys/types.h.
6972# sys/sysctl.h also requires sys/param.h
6973for ac_header in net/route.h sys/sysctl.h
6974do :
6975 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
6976ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
6977#ifdef HAVE_SYS_TYPES_H
6978# include <sys/types.h>
6979#endif
6980#include <sys/param.h>
6981#include <sys/socket.h>
6982
6983"
6984if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
6985 cat >>confdefs.h <<_ACEOF
6986#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
6987_ACEOF
6988
6989fi
6990
6991done
6992
6993
6994# lastlog.h requires sys/time.h to be included first on Solaris
6995for ac_header in lastlog.h
6996do :
6997 ac_fn_c_check_header_compile "$LINENO" "lastlog.h" "ac_cv_header_lastlog_h" "
6998#ifdef HAVE_SYS_TIME_H
6999# include <sys/time.h>
7000#endif
7001
7002"
7003if test "x$ac_cv_header_lastlog_h" = xyes; then :
7004 cat >>confdefs.h <<_ACEOF
7005#define HAVE_LASTLOG_H 1
7006_ACEOF
7007
7008fi
7009
7010done
7011
7012
7013# sys/ptms.h requires sys/stream.h to be included first on Solaris
7014for ac_header in sys/ptms.h
7015do :
7016 ac_fn_c_check_header_compile "$LINENO" "sys/ptms.h" "ac_cv_header_sys_ptms_h" "
7017#ifdef HAVE_SYS_STREAM_H
7018# include <sys/stream.h>
7019#endif
7020
7021"
7022if test "x$ac_cv_header_sys_ptms_h" = xyes; then :
7023 cat >>confdefs.h <<_ACEOF
7024#define HAVE_SYS_PTMS_H 1
7025_ACEOF
7026
7027fi
7028
7029done
7030
7031
7032# login_cap.h requires sys/types.h on NetBSD
7033for ac_header in login_cap.h
7034do :
7035 ac_fn_c_check_header_compile "$LINENO" "login_cap.h" "ac_cv_header_login_cap_h" "
7036#include <sys/types.h>
7037
7038"
7039if test "x$ac_cv_header_login_cap_h" = xyes; then :
7040 cat >>confdefs.h <<_ACEOF
7041#define HAVE_LOGIN_CAP_H 1
7042_ACEOF
7043
7044fi
7045
7046done
7047
7048
7049# older BSDs need sys/param.h before sys/mount.h
7050for ac_header in sys/mount.h
7051do :
7052 ac_fn_c_check_header_compile "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" "
7053#include <sys/param.h>
7054
7055"
7056if test "x$ac_cv_header_sys_mount_h" = xyes; then :
7057 cat >>confdefs.h <<_ACEOF
7058#define HAVE_SYS_MOUNT_H 1
7059_ACEOF
7060
7061fi
7062
7063done
7064
7065
7066# Android requires sys/socket.h to be included before sys/un.h
7067for ac_header in sys/un.h
7068do :
7069 ac_fn_c_check_header_compile "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" "
7070#include <sys/types.h>
7071#include <sys/socket.h>
7072
7073"
7074if test "x$ac_cv_header_sys_un_h" = xyes; then :
7075 cat >>confdefs.h <<_ACEOF
7076#define HAVE_SYS_UN_H 1
7077_ACEOF
7078
7079fi
7080
7081done
7082
7083
7084# Messages for features tested for in target-specific section
7085SIA_MSG="no"
7086SPC_MSG="no"
7087SP_MSG="no"
7088SPP_MSG="no"
7089
7090# Support for Solaris/Illumos privileges (this test is used by both
7091# the --with-solaris-privs option and --with-sandbox=solaris).
7092SOLARIS_PRIVS="no"
7093
7094# Check for some target-specific stuff
7095case "$host" in
7096*-*-aix*)
7097 # Some versions of VAC won't allow macro redefinitions at
7098 # -qlanglevel=ansi, and autoconf 2.60 sometimes insists on using that
7099 # particularly with older versions of vac or xlc.
7100 # It also throws errors about null macro arguments, but these are
7101 # not fatal.
7102 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows macro redefinitions" >&5
7103$as_echo_n "checking if compiler allows macro redefinitions... " >&6; }
7104 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7105/* end confdefs.h. */
7106
7107#define testmacro foo
7108#define testmacro bar
7109int
7110main ()
7111{
7112 exit(0);
7113 ;
7114 return 0;
7115}
7116_ACEOF
7117if ac_fn_c_try_compile "$LINENO"; then :
7118 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
7119$as_echo "yes" >&6; }
7120else
7121 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7122$as_echo "no" >&6; }
7123 CC="`echo $CC | sed 's/-qlanglvl\=ansi//g'`"
7124 CFLAGS="`echo $CFLAGS | sed 's/-qlanglvl\=ansi//g'`"
7125 CPPFLAGS="`echo $CPPFLAGS | sed 's/-qlanglvl\=ansi//g'`"
7126
7127
7128fi
7129rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7130
7131 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to specify blibpath for linker ($LD)" >&5
7132$as_echo_n "checking how to specify blibpath for linker ($LD)... " >&6; }
7133 if (test -z "$blibpath"); then
7134 blibpath="/usr/lib:/lib"
7135 fi
7136 saved_LDFLAGS="$LDFLAGS"
7137 if test "$GCC" = "yes"; then
7138 flags="-Wl,-blibpath: -Wl,-rpath, -blibpath:"
7139 else
7140 flags="-blibpath: -Wl,-blibpath: -Wl,-rpath,"
7141 fi
7142 for tryflags in $flags ;do
7143 if (test -z "$blibflags"); then
7144 LDFLAGS="$saved_LDFLAGS $tryflags$blibpath"
7145 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7146/* end confdefs.h. */
7147
7148int
7149main ()
7150{
7151
7152 ;
7153 return 0;
7154}
7155_ACEOF
7156if ac_fn_c_try_link "$LINENO"; then :
7157 blibflags=$tryflags
7158fi
7159rm -f core conftest.err conftest.$ac_objext \
7160 conftest$ac_exeext conftest.$ac_ext
7161 fi
7162 done
7163 if (test -z "$blibflags"); then
7164 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
7165$as_echo "not found" >&6; }
7166 as_fn_error $? "*** must be able to specify blibpath on AIX - check config.log" "$LINENO" 5
7167 else
7168 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $blibflags" >&5
7169$as_echo "$blibflags" >&6; }
7170 fi
7171 LDFLAGS="$saved_LDFLAGS"
7172 ac_fn_c_check_func "$LINENO" "authenticate" "ac_cv_func_authenticate"
7173if test "x$ac_cv_func_authenticate" = xyes; then :
7174
7175$as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h
7176
7177else
7178 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for authenticate in -ls" >&5
7179$as_echo_n "checking for authenticate in -ls... " >&6; }
7180if ${ac_cv_lib_s_authenticate+:} false; then :
7181 $as_echo_n "(cached) " >&6
7182else
7183 ac_check_lib_save_LIBS=$LIBS
7184LIBS="-ls $LIBS"
7185cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7186/* end confdefs.h. */
7187
7188/* Override any GCC internal prototype to avoid an error.
7189 Use char because int might match the return type of a GCC
7190 builtin and then its argument prototype would still apply. */
7191#ifdef __cplusplus
7192extern "C"
7193#endif
7194char authenticate ();
7195int
7196main ()
7197{
7198return authenticate ();
7199 ;
7200 return 0;
7201}
7202_ACEOF
7203if ac_fn_c_try_link "$LINENO"; then :
7204 ac_cv_lib_s_authenticate=yes
7205else
7206 ac_cv_lib_s_authenticate=no
7207fi
7208rm -f core conftest.err conftest.$ac_objext \
7209 conftest$ac_exeext conftest.$ac_ext
7210LIBS=$ac_check_lib_save_LIBS
7211fi
7212{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_s_authenticate" >&5
7213$as_echo "$ac_cv_lib_s_authenticate" >&6; }
7214if test "x$ac_cv_lib_s_authenticate" = xyes; then :
7215 $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h
7216
7217 LIBS="$LIBS -ls"
7218
7219fi
7220
7221
7222fi
7223
7224 ac_fn_c_check_decl "$LINENO" "authenticate" "ac_cv_have_decl_authenticate" "#include <usersec.h>
7225"
7226if test "x$ac_cv_have_decl_authenticate" = xyes; then :
7227 ac_have_decl=1
7228else
7229 ac_have_decl=0
7230fi
7231
7232cat >>confdefs.h <<_ACEOF
7233#define HAVE_DECL_AUTHENTICATE $ac_have_decl
7234_ACEOF
7235ac_fn_c_check_decl "$LINENO" "loginrestrictions" "ac_cv_have_decl_loginrestrictions" "#include <usersec.h>
7236"
7237if test "x$ac_cv_have_decl_loginrestrictions" = xyes; then :
7238 ac_have_decl=1
7239else
7240 ac_have_decl=0
7241fi
7242
7243cat >>confdefs.h <<_ACEOF
7244#define HAVE_DECL_LOGINRESTRICTIONS $ac_have_decl
7245_ACEOF
7246ac_fn_c_check_decl "$LINENO" "loginsuccess" "ac_cv_have_decl_loginsuccess" "#include <usersec.h>
7247"
7248if test "x$ac_cv_have_decl_loginsuccess" = xyes; then :
7249 ac_have_decl=1
7250else
7251 ac_have_decl=0
7252fi
7253
7254cat >>confdefs.h <<_ACEOF
7255#define HAVE_DECL_LOGINSUCCESS $ac_have_decl
7256_ACEOF
7257ac_fn_c_check_decl "$LINENO" "passwdexpired" "ac_cv_have_decl_passwdexpired" "#include <usersec.h>
7258"
7259if test "x$ac_cv_have_decl_passwdexpired" = xyes; then :
7260 ac_have_decl=1
7261else
7262 ac_have_decl=0
7263fi
7264
7265cat >>confdefs.h <<_ACEOF
7266#define HAVE_DECL_PASSWDEXPIRED $ac_have_decl
7267_ACEOF
7268ac_fn_c_check_decl "$LINENO" "setauthdb" "ac_cv_have_decl_setauthdb" "#include <usersec.h>
7269"
7270if test "x$ac_cv_have_decl_setauthdb" = xyes; then :
7271 ac_have_decl=1
7272else
7273 ac_have_decl=0
7274fi
7275
7276cat >>confdefs.h <<_ACEOF
7277#define HAVE_DECL_SETAUTHDB $ac_have_decl
7278_ACEOF
7279
7280 ac_fn_c_check_decl "$LINENO" "loginfailed" "ac_cv_have_decl_loginfailed" "#include <usersec.h>
7281
7282"
7283if test "x$ac_cv_have_decl_loginfailed" = xyes; then :
7284 ac_have_decl=1
7285else
7286 ac_have_decl=0
7287fi
7288
7289cat >>confdefs.h <<_ACEOF
7290#define HAVE_DECL_LOGINFAILED $ac_have_decl
7291_ACEOF
7292if test $ac_have_decl = 1; then :
7293 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if loginfailed takes 4 arguments" >&5
7294$as_echo_n "checking if loginfailed takes 4 arguments... " >&6; }
7295 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7296/* end confdefs.h. */
7297 #include <usersec.h>
7298int
7299main ()
7300{
7301 (void)loginfailed("user","host","tty",0);
7302 ;
7303 return 0;
7304}
7305_ACEOF
7306if ac_fn_c_try_compile "$LINENO"; then :
7307 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
7308$as_echo "yes" >&6; }
7309
7310$as_echo "#define AIX_LOGINFAILED_4ARG 1" >>confdefs.h
7311
7312else
7313 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7314$as_echo "no" >&6; }
7315
7316fi
7317rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7318fi
7319
7320 for ac_func in getgrset setauthdb
7321do :
7322 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
7323ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
7324if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
7325 cat >>confdefs.h <<_ACEOF
7326#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
7327_ACEOF
7328
7329fi
7330done
7331
7332 ac_fn_c_check_decl "$LINENO" "F_CLOSEM" "ac_cv_have_decl_F_CLOSEM" " #include <limits.h>
7333 #include <fcntl.h>
7334
7335"
7336if test "x$ac_cv_have_decl_F_CLOSEM" = xyes; then :
7337
7338$as_echo "#define HAVE_FCNTL_CLOSEM 1" >>confdefs.h
7339
7340fi
7341
7342 check_for_aix_broken_getaddrinfo=1
7343
7344$as_echo "#define BROKEN_REALPATH 1" >>confdefs.h
7345
7346
7347$as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
7348
7349
7350$as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
7351
7352
7353$as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
7354
7355
7356$as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
7357
7358
7359$as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h
7360
7361
7362$as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h
7363
7364
7365$as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h
7366
7367
7368$as_echo "#define PTY_ZEROREAD 1" >>confdefs.h
7369
7370
7371$as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h
7372
7373
7374$as_echo "#define BROKEN_STRNDUP 1" >>confdefs.h
7375
7376
7377$as_echo "#define BROKEN_STRNLEN 1" >>confdefs.h
7378
7379 ;;
7380*-*-android*)
7381
7382$as_echo "#define DISABLE_UTMP 1" >>confdefs.h
7383
7384
7385$as_echo "#define DISABLE_WTMP 1" >>confdefs.h
7386
7387 ;;
7388*-*-cygwin*)
7389 check_for_libcrypt_later=1
7390 LIBS="$LIBS /usr/lib/textreadmode.o"
7391
7392$as_echo "#define HAVE_CYGWIN 1" >>confdefs.h
7393
7394
7395$as_echo "#define USE_PIPES 1" >>confdefs.h
7396
7397
7398$as_echo "#define NO_UID_RESTORATION_TEST 1" >>confdefs.h
7399
7400
7401$as_echo "#define DISABLE_SHADOW 1" >>confdefs.h
7402
7403
7404$as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h
7405
7406
7407$as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h
7408
7409
7410$as_echo "#define SSH_IOBUFSZ 65535" >>confdefs.h
7411
7412
7413$as_echo "#define FILESYSTEM_NO_BACKSLASH 1" >>confdefs.h
7414
7415 # Cygwin defines optargs, optargs as declspec(dllimport) for historical
7416 # reasons which cause compile warnings, so we disable those warnings.
7417 {
7418 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wno-attributes" >&5
7419$as_echo_n "checking if $CC supports compile flag -Wno-attributes... " >&6; }
7420 saved_CFLAGS="$CFLAGS"
7421 CFLAGS="$CFLAGS $WERROR -Wno-attributes"
7422 _define_flag=""
7423 test "x$_define_flag" = "x" && _define_flag="-Wno-attributes"
7424 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7425/* end confdefs.h. */
7426
7427#include <stdlib.h>
7428#include <stdio.h>
7429int main(int argc, char **argv) {
7430 /* Some math to catch -ftrapv problems in the toolchain */
7431 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
7432 float l = i * 2.1;
7433 double m = l / 0.5;
7434 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
7435 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
7436 exit(0);
7437}
7438
7439_ACEOF
7440if ac_fn_c_try_compile "$LINENO"; then :
7441
7442if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
7443then
7444 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7445$as_echo "no" >&6; }
7446 CFLAGS="$saved_CFLAGS"
7447else
7448 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
7449$as_echo "yes" >&6; }
7450 CFLAGS="$saved_CFLAGS $_define_flag"
7451fi
7452else
7453 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7454$as_echo "no" >&6; }
7455 CFLAGS="$saved_CFLAGS"
7456
7457fi
7458rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7459}
7460 ;;
7461*-*-dgux*)
7462
7463$as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h
7464
7465 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
7466
7467 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
7468
7469 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
7470
7471 ;;
7472*-*-darwin*)
7473 use_pie=auto
7474 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we have working getaddrinfo" >&5
7475$as_echo_n "checking if we have working getaddrinfo... " >&6; }
7476 if test "$cross_compiling" = yes; then :
7477 { $as_echo "$as_me:${as_lineno-$LINENO}: result: assume it is working" >&5
7478$as_echo "assume it is working" >&6; }
7479else
7480 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7481/* end confdefs.h. */
7482 #include <mach-o/dyld.h>
7483main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16))
7484 exit(0);
7485 else
7486 exit(1);
7487}
7488
7489_ACEOF
7490if ac_fn_c_try_run "$LINENO"; then :
7491 { $as_echo "$as_me:${as_lineno-$LINENO}: result: working" >&5
7492$as_echo "working" >&6; }
7493else
7494 { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy" >&5
7495$as_echo "buggy" >&6; }
7496
7497$as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
7498
7499
7500fi
7501rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
7502 conftest.$ac_objext conftest.beam conftest.$ac_ext
7503fi
7504
7505 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
7506
7507 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
7508
7509 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
7510
7511
7512$as_echo "#define BROKEN_GLOB 1" >>confdefs.h
7513
7514
7515cat >>confdefs.h <<_ACEOF
7516#define BIND_8_COMPAT 1
7517_ACEOF
7518
7519
7520$as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h
7521
7522
7523$as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h
7524
7525
7526$as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h
7527
7528
7529 ac_fn_c_check_decl "$LINENO" "AU_IPv4" "ac_cv_have_decl_AU_IPv4" "$ac_includes_default"
7530if test "x$ac_cv_have_decl_AU_IPv4" = xyes; then :
7531
7532else
7533
7534$as_echo "#define AU_IPv4 0" >>confdefs.h
7535
7536 #include <bsm/audit.h>
7537
7538$as_echo "#define LASTLOG_WRITE_PUTUTXLINE 1" >>confdefs.h
7539
7540
7541fi
7542
7543
7544$as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h
7545
7546 for ac_func in sandbox_init
7547do :
7548 ac_fn_c_check_func "$LINENO" "sandbox_init" "ac_cv_func_sandbox_init"
7549if test "x$ac_cv_func_sandbox_init" = xyes; then :
7550 cat >>confdefs.h <<_ACEOF
7551#define HAVE_SANDBOX_INIT 1
7552_ACEOF
7553
7554fi
7555done
7556
7557 for ac_header in sandbox.h
7558do :
7559 ac_fn_c_check_header_mongrel "$LINENO" "sandbox.h" "ac_cv_header_sandbox_h" "$ac_includes_default"
7560if test "x$ac_cv_header_sandbox_h" = xyes; then :
7561 cat >>confdefs.h <<_ACEOF
7562#define HAVE_SANDBOX_H 1
7563_ACEOF
7564
7565fi
7566
7567done
7568
7569 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sandbox_apply in -lsandbox" >&5
7570$as_echo_n "checking for sandbox_apply in -lsandbox... " >&6; }
7571if ${ac_cv_lib_sandbox_sandbox_apply+:} false; then :
7572 $as_echo_n "(cached) " >&6
7573else
7574 ac_check_lib_save_LIBS=$LIBS
7575LIBS="-lsandbox $LIBS"
7576cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7577/* end confdefs.h. */
7578
7579/* Override any GCC internal prototype to avoid an error.
7580 Use char because int might match the return type of a GCC
7581 builtin and then its argument prototype would still apply. */
7582#ifdef __cplusplus
7583extern "C"
7584#endif
7585char sandbox_apply ();
7586int
7587main ()
7588{
7589return sandbox_apply ();
7590 ;
7591 return 0;
7592}
7593_ACEOF
7594if ac_fn_c_try_link "$LINENO"; then :
7595 ac_cv_lib_sandbox_sandbox_apply=yes
7596else
7597 ac_cv_lib_sandbox_sandbox_apply=no
7598fi
7599rm -f core conftest.err conftest.$ac_objext \
7600 conftest$ac_exeext conftest.$ac_ext
7601LIBS=$ac_check_lib_save_LIBS
7602fi
7603{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sandbox_sandbox_apply" >&5
7604$as_echo "$ac_cv_lib_sandbox_sandbox_apply" >&6; }
7605if test "x$ac_cv_lib_sandbox_sandbox_apply" = xyes; then :
7606
7607 SSHDLIBS="$SSHDLIBS -lsandbox"
7608
7609fi
7610
7611 ;;
7612*-*-dragonfly*)
7613 SSHDLIBS="$SSHDLIBS -lcrypt"
7614 TEST_MALLOC_OPTIONS="AFGJPRX"
7615 ;;
7616*-*-haiku*)
7617 LIBS="$LIBS -lbsd "
7618 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket in -lnetwork" >&5
7619$as_echo_n "checking for socket in -lnetwork... " >&6; }
7620if ${ac_cv_lib_network_socket+:} false; then :
7621 $as_echo_n "(cached) " >&6
7622else
7623 ac_check_lib_save_LIBS=$LIBS
7624LIBS="-lnetwork $LIBS"
7625cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7626/* end confdefs.h. */
7627
7628/* Override any GCC internal prototype to avoid an error.
7629 Use char because int might match the return type of a GCC
7630 builtin and then its argument prototype would still apply. */
7631#ifdef __cplusplus
7632extern "C"
7633#endif
7634char socket ();
7635int
7636main ()
7637{
7638return socket ();
7639 ;
7640 return 0;
7641}
7642_ACEOF
7643if ac_fn_c_try_link "$LINENO"; then :
7644 ac_cv_lib_network_socket=yes
7645else
7646 ac_cv_lib_network_socket=no
7647fi
7648rm -f core conftest.err conftest.$ac_objext \
7649 conftest$ac_exeext conftest.$ac_ext
7650LIBS=$ac_check_lib_save_LIBS
7651fi
7652{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_socket" >&5
7653$as_echo "$ac_cv_lib_network_socket" >&6; }
7654if test "x$ac_cv_lib_network_socket" = xyes; then :
7655 cat >>confdefs.h <<_ACEOF
7656#define HAVE_LIBNETWORK 1
7657_ACEOF
7658
7659 LIBS="-lnetwork $LIBS"
7660
7661fi
7662
7663 $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h
7664
7665 MANTYPE=man
7666 ;;
7667*-*-hpux*)
7668 # first we define all of the options common to all HP-UX releases
7669 CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"
7670 IPADDR_IN_DISPLAY=yes
7671 $as_echo "#define USE_PIPES 1" >>confdefs.h
7672
7673 $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h
7674
7675
7676$as_echo "#define LOCKED_PASSWD_STRING \"*\"" >>confdefs.h
7677
7678 $as_echo "#define SPT_TYPE SPT_PSTAT" >>confdefs.h
7679
7680
7681$as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h
7682
7683 maildir="/var/mail"
7684 LIBS="$LIBS -lsec"
7685 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_error in -lxnet" >&5
7686$as_echo_n "checking for t_error in -lxnet... " >&6; }
7687if ${ac_cv_lib_xnet_t_error+:} false; then :
7688 $as_echo_n "(cached) " >&6
7689else
7690 ac_check_lib_save_LIBS=$LIBS
7691LIBS="-lxnet $LIBS"
7692cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7693/* end confdefs.h. */
7694
7695/* Override any GCC internal prototype to avoid an error.
7696 Use char because int might match the return type of a GCC
7697 builtin and then its argument prototype would still apply. */
7698#ifdef __cplusplus
7699extern "C"
7700#endif
7701char t_error ();
7702int
7703main ()
7704{
7705return t_error ();
7706 ;
7707 return 0;
7708}
7709_ACEOF
7710if ac_fn_c_try_link "$LINENO"; then :
7711 ac_cv_lib_xnet_t_error=yes
7712else
7713 ac_cv_lib_xnet_t_error=no
7714fi
7715rm -f core conftest.err conftest.$ac_objext \
7716 conftest$ac_exeext conftest.$ac_ext
7717LIBS=$ac_check_lib_save_LIBS
7718fi
7719{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_xnet_t_error" >&5
7720$as_echo "$ac_cv_lib_xnet_t_error" >&6; }
7721if test "x$ac_cv_lib_xnet_t_error" = xyes; then :
7722 cat >>confdefs.h <<_ACEOF
7723#define HAVE_LIBXNET 1
7724_ACEOF
7725
7726 LIBS="-lxnet $LIBS"
7727
7728else
7729 as_fn_error $? "*** -lxnet needed on HP-UX - check config.log ***" "$LINENO" 5
7730fi
7731
7732
7733 # next, we define all of the options specific to major releases
7734 case "$host" in
7735 *-*-hpux10*)
7736 if test -z "$GCC"; then
7737 CFLAGS="$CFLAGS -Ae"
7738 fi
7739 ;;
7740 *-*-hpux11*)
7741
7742$as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h
7743
7744
7745$as_echo "#define DISABLE_UTMP 1" >>confdefs.h
7746
7747
7748$as_echo "#define USE_BTMP 1" >>confdefs.h
7749
7750 check_for_hpux_broken_getaddrinfo=1
7751 check_for_conflicting_getspnam=1
7752 ;;
7753 esac
7754
7755 # lastly, we define options specific to minor releases
7756 case "$host" in
7757 *-*-hpux10.26)
7758
7759$as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h
7760
7761 disable_ptmx_check=yes
7762 LIBS="$LIBS -lsecpw"
7763 ;;
7764 esac
7765 ;;
7766*-*-irix5*)
7767 PATH="$PATH:/usr/etc"
7768
7769$as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h
7770
7771 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
7772
7773 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
7774
7775 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
7776
7777
7778$as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h
7779
7780 $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h
7781
7782 ;;
7783*-*-irix6*)
7784 PATH="$PATH:/usr/etc"
7785
7786$as_echo "#define WITH_IRIX_ARRAY 1" >>confdefs.h
7787
7788
7789$as_echo "#define WITH_IRIX_PROJECT 1" >>confdefs.h
7790
7791
7792$as_echo "#define WITH_IRIX_AUDIT 1" >>confdefs.h
7793
7794 ac_fn_c_check_func "$LINENO" "jlimit_startjob" "ac_cv_func_jlimit_startjob"
7795if test "x$ac_cv_func_jlimit_startjob" = xyes; then :
7796
7797$as_echo "#define WITH_IRIX_JOBS 1" >>confdefs.h
7798
7799fi
7800
7801 $as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h
7802
7803 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
7804
7805 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
7806
7807 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
7808
7809
7810$as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h
7811
7812 $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h
7813
7814 $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h
7815
7816 ;;
7817*-*-k*bsd*-gnu | *-*-kopensolaris*-gnu)
7818 check_for_libcrypt_later=1
7819 $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h
7820
7821 $as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h
7822
7823 $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h
7824
7825
7826$as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h
7827
7828
7829$as_echo "#define USE_BTMP 1" >>confdefs.h
7830
7831 ;;
7832*-*-linux*)
7833 no_dev_ptmx=1
7834 use_pie=auto
7835 check_for_libcrypt_later=1
7836 check_for_openpty_ctty_bug=1
7837 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE"
7838
7839$as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h
7840
7841
7842$as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h
7843
7844 $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h
7845
7846
7847$as_echo "#define LINK_OPNOTSUPP_ERRNO EPERM" >>confdefs.h
7848
7849
7850$as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h
7851
7852 $as_echo "#define USE_BTMP 1" >>confdefs.h
7853
7854
7855$as_echo "#define LINUX_OOM_ADJUST 1" >>confdefs.h
7856
7857 inet6_default_4in6=yes
7858 case `uname -r` in
7859 1.*|2.0.*)
7860
7861$as_echo "#define BROKEN_CMSG_TYPE 1" >>confdefs.h
7862
7863 ;;
7864 esac
7865 # tun(4) forwarding compat code
7866 for ac_header in linux/if_tun.h
7867do :
7868 ac_fn_c_check_header_mongrel "$LINENO" "linux/if_tun.h" "ac_cv_header_linux_if_tun_h" "$ac_includes_default"
7869if test "x$ac_cv_header_linux_if_tun_h" = xyes; then :
7870 cat >>confdefs.h <<_ACEOF
7871#define HAVE_LINUX_IF_TUN_H 1
7872_ACEOF
7873
7874fi
7875
7876done
7877
7878 if test "x$ac_cv_header_linux_if_tun_h" = "xyes" ; then
7879
7880$as_echo "#define SSH_TUN_LINUX 1" >>confdefs.h
7881
7882
7883$as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h
7884
7885
7886$as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h
7887
7888 fi
7889 ac_fn_c_check_header_compile "$LINENO" "linux/if.h" "ac_cv_header_linux_if_h" "
7890#ifdef HAVE_SYS_TYPES_H
7891# include <sys/types.H>
7892#endif
7893
7894"
7895if test "x$ac_cv_header_linux_if_h" = xyes; then :
7896
7897$as_echo "#define SYS_RDOMAIN_LINUX 1" >>confdefs.h
7898
7899fi
7900
7901
7902 for ac_header in linux/seccomp.h linux/filter.h linux/audit.h
7903do :
7904 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
7905ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#include <linux/types.h>
7906"
7907if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
7908 cat >>confdefs.h <<_ACEOF
7909#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
7910_ACEOF
7911
7912fi
7913
7914done
7915
7916 # Obtain MIPS ABI
7917 case "$host" in
7918 mips*)
7919 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7920/* end confdefs.h. */
7921
7922#if _MIPS_SIM != _ABIO32
7923#error
7924#endif
7925
7926int
7927main ()
7928{
7929
7930 ;
7931 return 0;
7932}
7933_ACEOF
7934if ac_fn_c_try_compile "$LINENO"; then :
7935 mips_abi="o32"
7936else
7937 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7938/* end confdefs.h. */
7939
7940#if _MIPS_SIM != _ABIN32
7941#error
7942#endif
7943
7944int
7945main ()
7946{
7947
7948 ;
7949 return 0;
7950}
7951_ACEOF
7952if ac_fn_c_try_compile "$LINENO"; then :
7953 mips_abi="n32"
7954else
7955 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7956/* end confdefs.h. */
7957
7958#if _MIPS_SIM != _ABI64
7959#error
7960#endif
7961
7962int
7963main ()
7964{
7965
7966 ;
7967 return 0;
7968}
7969_ACEOF
7970if ac_fn_c_try_compile "$LINENO"; then :
7971 mips_abi="n64"
7972else
7973 as_fn_error $? "unknown MIPS ABI" "$LINENO" 5
7974
7975fi
7976rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7977
7978fi
7979rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7980
7981fi
7982rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7983 ;;
7984 esac
7985 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for seccomp architecture" >&5
7986$as_echo_n "checking for seccomp architecture... " >&6; }
7987 seccomp_audit_arch=
7988 case "$host" in
7989 x86_64-*)
7990 seccomp_audit_arch=AUDIT_ARCH_X86_64
7991 ;;
7992 i*86-*)
7993 seccomp_audit_arch=AUDIT_ARCH_I386
7994 ;;
7995 arm*-*)
7996 seccomp_audit_arch=AUDIT_ARCH_ARM
7997 ;;
7998 aarch64*-*)
7999 seccomp_audit_arch=AUDIT_ARCH_AARCH64
8000 ;;
8001 s390x-*)
8002 seccomp_audit_arch=AUDIT_ARCH_S390X
8003 ;;
8004 s390-*)
8005 seccomp_audit_arch=AUDIT_ARCH_S390
8006 ;;
8007 powerpc64-*)
8008 seccomp_audit_arch=AUDIT_ARCH_PPC64
8009 ;;
8010 powerpc64le-*)
8011 seccomp_audit_arch=AUDIT_ARCH_PPC64LE
8012 ;;
8013 mips-*)
8014 seccomp_audit_arch=AUDIT_ARCH_MIPS
8015 ;;
8016 mipsel-*)
8017 seccomp_audit_arch=AUDIT_ARCH_MIPSEL
8018 ;;
8019 mips64-*)
8020 case "$mips_abi" in
8021 "n32")
8022 seccomp_audit_arch=AUDIT_ARCH_MIPS64N32
8023 ;;
8024 "n64")
8025 seccomp_audit_arch=AUDIT_ARCH_MIPS64
8026 ;;
8027 esac
8028 ;;
8029 mips64el-*)
8030 case "$mips_abi" in
8031 "n32")
8032 seccomp_audit_arch=AUDIT_ARCH_MIPSEL64N32
8033 ;;
8034 "n64")
8035 seccomp_audit_arch=AUDIT_ARCH_MIPSEL64
8036 ;;
8037 esac
8038 ;;
8039 esac
8040 if test "x$seccomp_audit_arch" != "x" ; then
8041 { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$seccomp_audit_arch\"" >&5
8042$as_echo "\"$seccomp_audit_arch\"" >&6; }
8043
8044cat >>confdefs.h <<_ACEOF
8045#define SECCOMP_AUDIT_ARCH $seccomp_audit_arch
8046_ACEOF
8047
8048 else
8049 { $as_echo "$as_me:${as_lineno-$LINENO}: result: architecture not supported" >&5
8050$as_echo "architecture not supported" >&6; }
8051 fi
8052 ;;
8053mips-sony-bsd|mips-sony-newsos4)
8054
8055$as_echo "#define NEED_SETPGRP 1" >>confdefs.h
8056
8057 SONY=1
8058 ;;
8059*-*-netbsd*)
8060 check_for_libcrypt_before=1
8061 if test "x$withval" != "xno" ; then
8062 need_dash_r=1
8063 fi
8064 CPPFLAGS="$CPPFLAGS -D_OPENBSD_SOURCE"
8065
8066$as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h
8067
8068 ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default"
8069if test "x$ac_cv_header_net_if_tap_h" = xyes; then :
8070
8071else
8072
8073$as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h
8074
8075fi
8076
8077
8078
8079$as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h
8080
8081 TEST_MALLOC_OPTIONS="AJRX"
8082
8083$as_echo "#define BROKEN_READ_COMPARISON 1" >>confdefs.h
8084
8085 ;;
8086*-*-freebsd*)
8087 check_for_libcrypt_later=1
8088
8089$as_echo "#define LOCKED_PASSWD_PREFIX \"*LOCKED*\"" >>confdefs.h
8090
8091
8092$as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h
8093
8094 ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default"
8095if test "x$ac_cv_header_net_if_tap_h" = xyes; then :
8096
8097else
8098
8099$as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h
8100
8101fi
8102
8103
8104
8105$as_echo "#define BROKEN_GLOB 1" >>confdefs.h
8106
8107 TEST_MALLOC_OPTIONS="AJRX"
8108 # Preauth crypto occasionally uses file descriptors for crypto offload
8109 # and will crash if they cannot be opened.
8110
8111$as_echo "#define SANDBOX_SKIP_RLIMIT_NOFILE 1" >>confdefs.h
8112
8113 ;;
8114*-*-bsdi*)
8115 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8116
8117 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8118
8119 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8120
8121 ;;
8122*-next-*)
8123 conf_lastlog_location="/usr/adm/lastlog"
8124 conf_utmp_location=/etc/utmp
8125 conf_wtmp_location=/usr/adm/wtmp
8126 maildir=/usr/spool/mail
8127
8128$as_echo "#define HAVE_NEXT 1" >>confdefs.h
8129
8130 $as_echo "#define BROKEN_REALPATH 1" >>confdefs.h
8131
8132 $as_echo "#define USE_PIPES 1" >>confdefs.h
8133
8134
8135$as_echo "#define BROKEN_SAVED_UIDS 1" >>confdefs.h
8136
8137 ;;
8138*-*-openbsd*)
8139 use_pie=auto
8140
8141$as_echo "#define HAVE_ATTRIBUTE__SENTINEL__ 1" >>confdefs.h
8142
8143
8144$as_echo "#define HAVE_ATTRIBUTE__BOUNDED__ 1" >>confdefs.h
8145
8146
8147$as_echo "#define SSH_TUN_OPENBSD 1" >>confdefs.h
8148
8149
8150$as_echo "#define SYSLOG_R_SAFE_IN_SIGHAND 1" >>confdefs.h
8151
8152 TEST_MALLOC_OPTIONS="AFGJPRX"
8153 ;;
8154*-*-solaris*)
8155 if test "x$withval" != "xno" ; then
8156 need_dash_r=1
8157 fi
8158 $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h
8159
8160 $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h
8161
8162 $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h
8163
8164
8165$as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h
8166
8167 $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h
8168
8169 # Pushing STREAMS modules will cause sshd to acquire a controlling tty.
8170
8171$as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h
8172
8173
8174$as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h
8175
8176
8177$as_echo "#define BROKEN_TCGETATTR_ICANON 1" >>confdefs.h
8178
8179 external_path_file=/etc/default/login
8180 # hardwire lastlog location (can't detect it on some versions)
8181 conf_lastlog_location="/var/adm/lastlog"
8182 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for obsolete utmp and wtmp in solaris2.x" >&5
8183$as_echo_n "checking for obsolete utmp and wtmp in solaris2.x... " >&6; }
8184 sol2ver=`echo "$host"| sed -e 's/.*[0-9]\.//'`
8185 if test "$sol2ver" -ge 8; then
8186 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
8187$as_echo "yes" >&6; }
8188 $as_echo "#define DISABLE_UTMP 1" >>confdefs.h
8189
8190
8191$as_echo "#define DISABLE_WTMP 1" >>confdefs.h
8192
8193 else
8194 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8195$as_echo "no" >&6; }
8196 fi
8197 for ac_func in setpflags
8198do :
8199 ac_fn_c_check_func "$LINENO" "setpflags" "ac_cv_func_setpflags"
8200if test "x$ac_cv_func_setpflags" = xyes; then :
8201 cat >>confdefs.h <<_ACEOF
8202#define HAVE_SETPFLAGS 1
8203_ACEOF
8204
8205fi
8206done
8207
8208 for ac_func in setppriv
8209do :
8210 ac_fn_c_check_func "$LINENO" "setppriv" "ac_cv_func_setppriv"
8211if test "x$ac_cv_func_setppriv" = xyes; then :
8212 cat >>confdefs.h <<_ACEOF
8213#define HAVE_SETPPRIV 1
8214_ACEOF
8215
8216fi
8217done
8218
8219 for ac_func in priv_basicset
8220do :
8221 ac_fn_c_check_func "$LINENO" "priv_basicset" "ac_cv_func_priv_basicset"
8222if test "x$ac_cv_func_priv_basicset" = xyes; then :
8223 cat >>confdefs.h <<_ACEOF
8224#define HAVE_PRIV_BASICSET 1
8225_ACEOF
8226
8227fi
8228done
8229
8230 for ac_header in priv.h
8231do :
8232 ac_fn_c_check_header_mongrel "$LINENO" "priv.h" "ac_cv_header_priv_h" "$ac_includes_default"
8233if test "x$ac_cv_header_priv_h" = xyes; then :
8234 cat >>confdefs.h <<_ACEOF
8235#define HAVE_PRIV_H 1
8236_ACEOF
8237
8238fi
8239
8240done
8241
8242
8243# Check whether --with-solaris-contracts was given.
8244if test "${with_solaris_contracts+set}" = set; then :
8245 withval=$with_solaris_contracts;
8246 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ct_tmpl_activate in -lcontract" >&5
8247$as_echo_n "checking for ct_tmpl_activate in -lcontract... " >&6; }
8248if ${ac_cv_lib_contract_ct_tmpl_activate+:} false; then :
8249 $as_echo_n "(cached) " >&6
8250else
8251 ac_check_lib_save_LIBS=$LIBS
8252LIBS="-lcontract $LIBS"
8253cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8254/* end confdefs.h. */
8255
8256/* Override any GCC internal prototype to avoid an error.
8257 Use char because int might match the return type of a GCC
8258 builtin and then its argument prototype would still apply. */
8259#ifdef __cplusplus
8260extern "C"
8261#endif
8262char ct_tmpl_activate ();
8263int
8264main ()
8265{
8266return ct_tmpl_activate ();
8267 ;
8268 return 0;
8269}
8270_ACEOF
8271if ac_fn_c_try_link "$LINENO"; then :
8272 ac_cv_lib_contract_ct_tmpl_activate=yes
8273else
8274 ac_cv_lib_contract_ct_tmpl_activate=no
8275fi
8276rm -f core conftest.err conftest.$ac_objext \
8277 conftest$ac_exeext conftest.$ac_ext
8278LIBS=$ac_check_lib_save_LIBS
8279fi
8280{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_contract_ct_tmpl_activate" >&5
8281$as_echo "$ac_cv_lib_contract_ct_tmpl_activate" >&6; }
8282if test "x$ac_cv_lib_contract_ct_tmpl_activate" = xyes; then :
8283
8284$as_echo "#define USE_SOLARIS_PROCESS_CONTRACTS 1" >>confdefs.h
8285
8286 LIBS="$LIBS -lcontract"
8287 SPC_MSG="yes"
8288fi
8289
8290
8291fi
8292
8293
8294# Check whether --with-solaris-projects was given.
8295if test "${with_solaris_projects+set}" = set; then :
8296 withval=$with_solaris_projects;
8297 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setproject in -lproject" >&5
8298$as_echo_n "checking for setproject in -lproject... " >&6; }
8299if ${ac_cv_lib_project_setproject+:} false; then :
8300 $as_echo_n "(cached) " >&6
8301else
8302 ac_check_lib_save_LIBS=$LIBS
8303LIBS="-lproject $LIBS"
8304cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8305/* end confdefs.h. */
8306
8307/* Override any GCC internal prototype to avoid an error.
8308 Use char because int might match the return type of a GCC
8309 builtin and then its argument prototype would still apply. */
8310#ifdef __cplusplus
8311extern "C"
8312#endif
8313char setproject ();
8314int
8315main ()
8316{
8317return setproject ();
8318 ;
8319 return 0;
8320}
8321_ACEOF
8322if ac_fn_c_try_link "$LINENO"; then :
8323 ac_cv_lib_project_setproject=yes
8324else
8325 ac_cv_lib_project_setproject=no
8326fi
8327rm -f core conftest.err conftest.$ac_objext \
8328 conftest$ac_exeext conftest.$ac_ext
8329LIBS=$ac_check_lib_save_LIBS
8330fi
8331{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_project_setproject" >&5
8332$as_echo "$ac_cv_lib_project_setproject" >&6; }
8333if test "x$ac_cv_lib_project_setproject" = xyes; then :
8334
8335$as_echo "#define USE_SOLARIS_PROJECTS 1" >>confdefs.h
8336
8337 LIBS="$LIBS -lproject"
8338 SP_MSG="yes"
8339fi
8340
8341
8342fi
8343
8344
8345# Check whether --with-solaris-privs was given.
8346if test "${with_solaris_privs+set}" = set; then :
8347 withval=$with_solaris_privs;
8348 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Solaris/Illumos privilege support" >&5
8349$as_echo_n "checking for Solaris/Illumos privilege support... " >&6; }
8350 if test "x$ac_cv_func_setppriv" = "xyes" -a \
8351 "x$ac_cv_header_priv_h" = "xyes" ; then
8352 SOLARIS_PRIVS=yes
8353 { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
8354$as_echo "found" >&6; }
8355
8356$as_echo "#define NO_UID_RESTORATION_TEST 1" >>confdefs.h
8357
8358
8359$as_echo "#define USE_SOLARIS_PRIVS 1" >>confdefs.h
8360
8361 SPP_MSG="yes"
8362 else
8363 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
8364$as_echo "not found" >&6; }
8365 as_fn_error $? "*** must have support for Solaris privileges to use --with-solaris-privs" "$LINENO" 5
8366 fi
8367
8368fi
8369
8370 TEST_SHELL=$SHELL # let configure find us a capable shell
8371 ;;
8372*-*-sunos4*)
8373 CPPFLAGS="$CPPFLAGS -DSUNOS4"
8374 for ac_func in getpwanam
8375do :
8376 ac_fn_c_check_func "$LINENO" "getpwanam" "ac_cv_func_getpwanam"
8377if test "x$ac_cv_func_getpwanam" = xyes; then :
8378 cat >>confdefs.h <<_ACEOF
8379#define HAVE_GETPWANAM 1
8380_ACEOF
8381
8382fi
8383done
8384
8385 $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h
8386
8387 conf_utmp_location=/etc/utmp
8388 conf_wtmp_location=/var/adm/wtmp
8389 conf_lastlog_location=/var/adm/lastlog
8390 $as_echo "#define USE_PIPES 1" >>confdefs.h
8391
8392
8393$as_echo "#define DISABLE_UTMPX 1" >>confdefs.h
8394
8395 ;;
8396*-ncr-sysv*)
8397 LIBS="$LIBS -lc89"
8398 $as_echo "#define USE_PIPES 1" >>confdefs.h
8399
8400 $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h
8401
8402 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8403
8404 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8405
8406 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8407
8408 ;;
8409*-sni-sysv*)
8410 # /usr/ucblib MUST NOT be searched on ReliantUNIX
8411 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlsym in -ldl" >&5
8412$as_echo_n "checking for dlsym in -ldl... " >&6; }
8413if ${ac_cv_lib_dl_dlsym+:} false; then :
8414 $as_echo_n "(cached) " >&6
8415else
8416 ac_check_lib_save_LIBS=$LIBS
8417LIBS="-ldl $LIBS"
8418cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8419/* end confdefs.h. */
8420
8421/* Override any GCC internal prototype to avoid an error.
8422 Use char because int might match the return type of a GCC
8423 builtin and then its argument prototype would still apply. */
8424#ifdef __cplusplus
8425extern "C"
8426#endif
8427char dlsym ();
8428int
8429main ()
8430{
8431return dlsym ();
8432 ;
8433 return 0;
8434}
8435_ACEOF
8436if ac_fn_c_try_link "$LINENO"; then :
8437 ac_cv_lib_dl_dlsym=yes
8438else
8439 ac_cv_lib_dl_dlsym=no
8440fi
8441rm -f core conftest.err conftest.$ac_objext \
8442 conftest$ac_exeext conftest.$ac_ext
8443LIBS=$ac_check_lib_save_LIBS
8444fi
8445{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlsym" >&5
8446$as_echo "$ac_cv_lib_dl_dlsym" >&6; }
8447if test "x$ac_cv_lib_dl_dlsym" = xyes; then :
8448 cat >>confdefs.h <<_ACEOF
8449#define HAVE_LIBDL 1
8450_ACEOF
8451
8452 LIBS="-ldl $LIBS"
8453
8454fi
8455
8456 # -lresolv needs to be at the end of LIBS or DNS lookups break
8457 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5
8458$as_echo_n "checking for res_query in -lresolv... " >&6; }
8459if ${ac_cv_lib_resolv_res_query+:} false; then :
8460 $as_echo_n "(cached) " >&6
8461else
8462 ac_check_lib_save_LIBS=$LIBS
8463LIBS="-lresolv $LIBS"
8464cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8465/* end confdefs.h. */
8466
8467/* Override any GCC internal prototype to avoid an error.
8468 Use char because int might match the return type of a GCC
8469 builtin and then its argument prototype would still apply. */
8470#ifdef __cplusplus
8471extern "C"
8472#endif
8473char res_query ();
8474int
8475main ()
8476{
8477return res_query ();
8478 ;
8479 return 0;
8480}
8481_ACEOF
8482if ac_fn_c_try_link "$LINENO"; then :
8483 ac_cv_lib_resolv_res_query=yes
8484else
8485 ac_cv_lib_resolv_res_query=no
8486fi
8487rm -f core conftest.err conftest.$ac_objext \
8488 conftest$ac_exeext conftest.$ac_ext
8489LIBS=$ac_check_lib_save_LIBS
8490fi
8491{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_res_query" >&5
8492$as_echo "$ac_cv_lib_resolv_res_query" >&6; }
8493if test "x$ac_cv_lib_resolv_res_query" = xyes; then :
8494 LIBS="$LIBS -lresolv"
8495fi
8496
8497 IPADDR_IN_DISPLAY=yes
8498 $as_echo "#define USE_PIPES 1" >>confdefs.h
8499
8500 $as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h
8501
8502 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8503
8504 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8505
8506 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8507
8508 $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h
8509
8510 external_path_file=/etc/default/login
8511 # /usr/ucblib/libucb.a no longer needed on ReliantUNIX
8512 # Attention: always take care to bind libsocket and libnsl before libc,
8513 # otherwise you will find lots of "SIOCGPGRP errno 22" on syslog
8514 ;;
8515# UnixWare 1.x, UnixWare 2.x, and others based on code from Univel.
8516*-*-sysv4.2*)
8517 $as_echo "#define USE_PIPES 1" >>confdefs.h
8518
8519 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8520
8521 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8522
8523 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8524
8525
8526$as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h
8527
8528 $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h
8529
8530 TEST_SHELL=$SHELL # let configure find us a capable shell
8531 ;;
8532# UnixWare 7.x, OpenUNIX 8
8533*-*-sysv5*)
8534 CPPFLAGS="$CPPFLAGS -Dvsnprintf=_xvsnprintf -Dsnprintf=_xsnprintf"
8535
8536$as_echo "#define UNIXWARE_LONG_PASSWORDS 1" >>confdefs.h
8537
8538 $as_echo "#define USE_PIPES 1" >>confdefs.h
8539
8540 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8541
8542 $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
8543
8544 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8545
8546 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8547
8548 $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h
8549
8550 $as_echo "#define BROKEN_TCGETATTR_ICANON 1" >>confdefs.h
8551
8552 TEST_SHELL=$SHELL # let configure find us a capable shell
8553 check_for_libcrypt_later=1
8554 case "$host" in
8555 *-*-sysv5SCO_SV*) # SCO OpenServer 6.x
8556 maildir=/var/spool/mail
8557 $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h
8558
8559 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getluid in -lprot" >&5
8560$as_echo_n "checking for getluid in -lprot... " >&6; }
8561if ${ac_cv_lib_prot_getluid+:} false; then :
8562 $as_echo_n "(cached) " >&6
8563else
8564 ac_check_lib_save_LIBS=$LIBS
8565LIBS="-lprot $LIBS"
8566cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8567/* end confdefs.h. */
8568
8569/* Override any GCC internal prototype to avoid an error.
8570 Use char because int might match the return type of a GCC
8571 builtin and then its argument prototype would still apply. */
8572#ifdef __cplusplus
8573extern "C"
8574#endif
8575char getluid ();
8576int
8577main ()
8578{
8579return getluid ();
8580 ;
8581 return 0;
8582}
8583_ACEOF
8584if ac_fn_c_try_link "$LINENO"; then :
8585 ac_cv_lib_prot_getluid=yes
8586else
8587 ac_cv_lib_prot_getluid=no
8588fi
8589rm -f core conftest.err conftest.$ac_objext \
8590 conftest$ac_exeext conftest.$ac_ext
8591LIBS=$ac_check_lib_save_LIBS
8592fi
8593{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_prot_getluid" >&5
8594$as_echo "$ac_cv_lib_prot_getluid" >&6; }
8595if test "x$ac_cv_lib_prot_getluid" = xyes; then :
8596 LIBS="$LIBS -lprot"
8597 for ac_func in getluid setluid
8598do :
8599 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
8600ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
8601if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
8602 cat >>confdefs.h <<_ACEOF
8603#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
8604_ACEOF
8605
8606fi
8607done
8608
8609
8610fi
8611
8612 ;;
8613 *) $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h
8614
8615 ;;
8616 esac
8617 ;;
8618*-*-sysv*)
8619 ;;
8620# SCO UNIX and OEM versions of SCO UNIX
8621*-*-sco3.2v4*)
8622 as_fn_error $? "\"This Platform is no longer supported.\"" "$LINENO" 5
8623 ;;
8624# SCO OpenServer 5.x
8625*-*-sco3.2v5*)
8626 if test -z "$GCC"; then
8627 CFLAGS="$CFLAGS -belf"
8628 fi
8629 LIBS="$LIBS -lprot -lx -ltinfo -lm"
8630 no_dev_ptmx=1
8631 $as_echo "#define USE_PIPES 1" >>confdefs.h
8632
8633 $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h
8634
8635 $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h
8636
8637 $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h
8638
8639 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8640
8641 $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
8642
8643 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8644
8645 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8646
8647 $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h
8648
8649 $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h
8650
8651 $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h
8652
8653 for ac_func in getluid setluid
8654do :
8655 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
8656ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
8657if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
8658 cat >>confdefs.h <<_ACEOF
8659#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
8660_ACEOF
8661
8662fi
8663done
8664
8665 MANTYPE=man
8666 TEST_SHELL=$SHELL # let configure find us a capable shell
8667 SKIP_DISABLE_LASTLOG_DEFINE=yes
8668 ;;
8669*-dec-osf*)
8670 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Digital Unix SIA" >&5
8671$as_echo_n "checking for Digital Unix SIA... " >&6; }
8672 no_osfsia=""
8673
8674# Check whether --with-osfsia was given.
8675if test "${with_osfsia+set}" = set; then :
8676 withval=$with_osfsia;
8677 if test "x$withval" = "xno" ; then
8678 { $as_echo "$as_me:${as_lineno-$LINENO}: result: disabled" >&5
8679$as_echo "disabled" >&6; }
8680 no_osfsia=1
8681 fi
8682
8683fi
8684
8685 if test -z "$no_osfsia" ; then
8686 if test -f /etc/sia/matrix.conf; then
8687 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
8688$as_echo "yes" >&6; }
8689
8690$as_echo "#define HAVE_OSF_SIA 1" >>confdefs.h
8691
8692
8693$as_echo "#define DISABLE_LOGIN 1" >>confdefs.h
8694
8695 $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h
8696
8697 LIBS="$LIBS -lsecurity -ldb -lm -laud"
8698 SIA_MSG="yes"
8699 else
8700 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8701$as_echo "no" >&6; }
8702
8703$as_echo "#define LOCKED_PASSWD_SUBSTR \"Nologin\"" >>confdefs.h
8704
8705 fi
8706 fi
8707 $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
8708
8709 $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h
8710
8711 $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h
8712
8713 $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
8714
8715
8716$as_echo "#define BROKEN_READV_COMPARISON 1" >>confdefs.h
8717
8718 ;;
8719
8720*-*-nto-qnx*)
8721 $as_echo "#define USE_PIPES 1" >>confdefs.h
8722
8723 $as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h
8724
8725 $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
8726
8727 $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h
8728
8729
8730$as_echo "#define BROKEN_SHADOW_EXPIRE 1" >>confdefs.h
8731
8732 enable_etc_default_login=no # has incompatible /etc/default/login
8733 case "$host" in
8734 *-*-nto-qnx6*)
8735 $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h
8736
8737 ;;
8738 esac
8739 ;;
8740
8741*-*-ultrix*)
8742
8743$as_echo "#define BROKEN_GETGROUPS 1" >>confdefs.h
8744
8745 $as_echo "#define NEED_SETPGRP 1" >>confdefs.h
8746
8747
8748$as_echo "#define HAVE_SYS_SYSLOG_H 1" >>confdefs.h
8749
8750 ;;
8751
8752*-*-lynxos)
8753 CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"
8754
8755$as_echo "#define BROKEN_SETVBUF 1" >>confdefs.h
8756
8757 ;;
8758esac
8759
8760{ $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler and flags for sanity" >&5
8761$as_echo_n "checking compiler and flags for sanity... " >&6; }
8762if test "$cross_compiling" = yes; then :
8763 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking compiler sanity" >&5
8764$as_echo "$as_me: WARNING: cross compiling: not checking compiler sanity" >&2;}
8765
8766else
8767 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8768/* end confdefs.h. */
8769 #include <stdio.h>
8770int
8771main ()
8772{
8773 exit(0);
8774 ;
8775 return 0;
8776}
8777_ACEOF
8778if ac_fn_c_try_run "$LINENO"; then :
8779 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
8780$as_echo "yes" >&6; }
8781else
8782
8783 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8784$as_echo "no" >&6; }
8785 as_fn_error $? "*** compiler cannot create working executables, check config.log ***" "$LINENO" 5
8786
8787fi
8788rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
8789 conftest.$ac_objext conftest.beam conftest.$ac_ext
8790fi
8791
8792
8793# Checks for libraries.
8794ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt"
8795if test "x$ac_cv_func_setsockopt" = xyes; then :
8796
8797else
8798 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5
8799$as_echo_n "checking for setsockopt in -lsocket... " >&6; }
8800if ${ac_cv_lib_socket_setsockopt+:} false; then :
8801 $as_echo_n "(cached) " >&6
8802else
8803 ac_check_lib_save_LIBS=$LIBS
8804LIBS="-lsocket $LIBS"
8805cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8806/* end confdefs.h. */
8807
8808/* Override any GCC internal prototype to avoid an error.
8809 Use char because int might match the return type of a GCC
8810 builtin and then its argument prototype would still apply. */
8811#ifdef __cplusplus
8812extern "C"
8813#endif
8814char setsockopt ();
8815int
8816main ()
8817{
8818return setsockopt ();
8819 ;
8820 return 0;
8821}
8822_ACEOF
8823if ac_fn_c_try_link "$LINENO"; then :
8824 ac_cv_lib_socket_setsockopt=yes
8825else
8826 ac_cv_lib_socket_setsockopt=no
8827fi
8828rm -f core conftest.err conftest.$ac_objext \
8829 conftest$ac_exeext conftest.$ac_ext
8830LIBS=$ac_check_lib_save_LIBS
8831fi
8832{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5
8833$as_echo "$ac_cv_lib_socket_setsockopt" >&6; }
8834if test "x$ac_cv_lib_socket_setsockopt" = xyes; then :
8835 cat >>confdefs.h <<_ACEOF
8836#define HAVE_LIBSOCKET 1
8837_ACEOF
8838
8839 LIBS="-lsocket $LIBS"
8840
8841fi
8842
8843fi
8844
8845
8846for ac_func in dirname
8847do :
8848 ac_fn_c_check_func "$LINENO" "dirname" "ac_cv_func_dirname"
8849if test "x$ac_cv_func_dirname" = xyes; then :
8850 cat >>confdefs.h <<_ACEOF
8851#define HAVE_DIRNAME 1
8852_ACEOF
8853 for ac_header in libgen.h
8854do :
8855 ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default"
8856if test "x$ac_cv_header_libgen_h" = xyes; then :
8857 cat >>confdefs.h <<_ACEOF
8858#define HAVE_LIBGEN_H 1
8859_ACEOF
8860
8861fi
8862
8863done
8864
8865else
8866
8867 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dirname in -lgen" >&5
8868$as_echo_n "checking for dirname in -lgen... " >&6; }
8869if ${ac_cv_lib_gen_dirname+:} false; then :
8870 $as_echo_n "(cached) " >&6
8871else
8872 ac_check_lib_save_LIBS=$LIBS
8873LIBS="-lgen $LIBS"
8874cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8875/* end confdefs.h. */
8876
8877/* Override any GCC internal prototype to avoid an error.
8878 Use char because int might match the return type of a GCC
8879 builtin and then its argument prototype would still apply. */
8880#ifdef __cplusplus
8881extern "C"
8882#endif
8883char dirname ();
8884int
8885main ()
8886{
8887return dirname ();
8888 ;
8889 return 0;
8890}
8891_ACEOF
8892if ac_fn_c_try_link "$LINENO"; then :
8893 ac_cv_lib_gen_dirname=yes
8894else
8895 ac_cv_lib_gen_dirname=no
8896fi
8897rm -f core conftest.err conftest.$ac_objext \
8898 conftest$ac_exeext conftest.$ac_ext
8899LIBS=$ac_check_lib_save_LIBS
8900fi
8901{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_dirname" >&5
8902$as_echo "$ac_cv_lib_gen_dirname" >&6; }
8903if test "x$ac_cv_lib_gen_dirname" = xyes; then :
8904
8905 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken dirname" >&5
8906$as_echo_n "checking for broken dirname... " >&6; }
8907if ${ac_cv_have_broken_dirname+:} false; then :
8908 $as_echo_n "(cached) " >&6
8909else
8910
8911 save_LIBS="$LIBS"
8912 LIBS="$LIBS -lgen"
8913 if test "$cross_compiling" = yes; then :
8914 ac_cv_have_broken_dirname="no"
8915else
8916 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8917/* end confdefs.h. */
8918
8919#include <libgen.h>
8920#include <string.h>
8921
8922int main(int argc, char **argv) {
8923 char *s, buf[32];
8924
8925 strncpy(buf,"/etc", 32);
8926 s = dirname(buf);
8927 if (!s || strncmp(s, "/", 32) != 0) {
8928 exit(1);
8929 } else {
8930 exit(0);
8931 }
8932}
8933
8934_ACEOF
8935if ac_fn_c_try_run "$LINENO"; then :
8936 ac_cv_have_broken_dirname="no"
8937else
8938 ac_cv_have_broken_dirname="yes"
8939fi
8940rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
8941 conftest.$ac_objext conftest.beam conftest.$ac_ext
8942fi
8943
8944 LIBS="$save_LIBS"
8945
8946fi
8947{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_broken_dirname" >&5
8948$as_echo "$ac_cv_have_broken_dirname" >&6; }
8949 if test "x$ac_cv_have_broken_dirname" = "xno" ; then
8950 LIBS="$LIBS -lgen"
8951 $as_echo "#define HAVE_DIRNAME 1" >>confdefs.h
8952
8953 for ac_header in libgen.h
8954do :
8955 ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default"
8956if test "x$ac_cv_header_libgen_h" = xyes; then :
8957 cat >>confdefs.h <<_ACEOF
8958#define HAVE_LIBGEN_H 1
8959_ACEOF
8960
8961fi
8962
8963done
8964
8965 fi
8966
8967fi
8968
8969
8970fi
8971done
8972
8973
8974ac_fn_c_check_func "$LINENO" "getspnam" "ac_cv_func_getspnam"
8975if test "x$ac_cv_func_getspnam" = xyes; then :
8976
8977else
8978 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getspnam in -lgen" >&5
8979$as_echo_n "checking for getspnam in -lgen... " >&6; }
8980if ${ac_cv_lib_gen_getspnam+:} false; then :
8981 $as_echo_n "(cached) " >&6
8982else
8983 ac_check_lib_save_LIBS=$LIBS
8984LIBS="-lgen $LIBS"
8985cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8986/* end confdefs.h. */
8987
8988/* Override any GCC internal prototype to avoid an error.
8989 Use char because int might match the return type of a GCC
8990 builtin and then its argument prototype would still apply. */
8991#ifdef __cplusplus
8992extern "C"
8993#endif
8994char getspnam ();
8995int
8996main ()
8997{
8998return getspnam ();
8999 ;
9000 return 0;
9001}
9002_ACEOF
9003if ac_fn_c_try_link "$LINENO"; then :
9004 ac_cv_lib_gen_getspnam=yes
9005else
9006 ac_cv_lib_gen_getspnam=no
9007fi
9008rm -f core conftest.err conftest.$ac_objext \
9009 conftest$ac_exeext conftest.$ac_ext
9010LIBS=$ac_check_lib_save_LIBS
9011fi
9012{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_getspnam" >&5
9013$as_echo "$ac_cv_lib_gen_getspnam" >&6; }
9014if test "x$ac_cv_lib_gen_getspnam" = xyes; then :
9015 LIBS="$LIBS -lgen"
9016fi
9017
9018fi
9019
9020{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing basename" >&5
9021$as_echo_n "checking for library containing basename... " >&6; }
9022if ${ac_cv_search_basename+:} false; then :
9023 $as_echo_n "(cached) " >&6
9024else
9025 ac_func_search_save_LIBS=$LIBS
9026cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9027/* end confdefs.h. */
9028
9029/* Override any GCC internal prototype to avoid an error.
9030 Use char because int might match the return type of a GCC
9031 builtin and then its argument prototype would still apply. */
9032#ifdef __cplusplus
9033extern "C"
9034#endif
9035char basename ();
9036int
9037main ()
9038{
9039return basename ();
9040 ;
9041 return 0;
9042}
9043_ACEOF
9044for ac_lib in '' gen; do
9045 if test -z "$ac_lib"; then
9046 ac_res="none required"
9047 else
9048 ac_res=-l$ac_lib
9049 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9050 fi
9051 if ac_fn_c_try_link "$LINENO"; then :
9052 ac_cv_search_basename=$ac_res
9053fi
9054rm -f core conftest.err conftest.$ac_objext \
9055 conftest$ac_exeext
9056 if ${ac_cv_search_basename+:} false; then :
9057 break
9058fi
9059done
9060if ${ac_cv_search_basename+:} false; then :
9061
9062else
9063 ac_cv_search_basename=no
9064fi
9065rm conftest.$ac_ext
9066LIBS=$ac_func_search_save_LIBS
9067fi
9068{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_basename" >&5
9069$as_echo "$ac_cv_search_basename" >&6; }
9070ac_res=$ac_cv_search_basename
9071if test "$ac_res" != no; then :
9072 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9073
9074$as_echo "#define HAVE_BASENAME 1" >>confdefs.h
9075
9076fi
9077
9078
9079
9080# Check whether --with-zlib was given.
9081if test "${with_zlib+set}" = set; then :
9082 withval=$with_zlib; if test "x$withval" = "xno" ; then
9083 as_fn_error $? "*** zlib is required ***" "$LINENO" 5
9084 elif test "x$withval" != "xyes"; then
9085 if test -d "$withval/lib"; then
9086 if test -n "${need_dash_r}"; then
9087 LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}"
9088 else
9089 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
9090 fi
9091 else
9092 if test -n "${need_dash_r}"; then
9093 LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}"
9094 else
9095 LDFLAGS="-L${withval} ${LDFLAGS}"
9096 fi
9097 fi
9098 if test -d "$withval/include"; then
9099 CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
9100 else
9101 CPPFLAGS="-I${withval} ${CPPFLAGS}"
9102 fi
9103 fi
9104
9105fi
9106
9107
9108ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
9109if test "x$ac_cv_header_zlib_h" = xyes; then :
9110
9111else
9112 as_fn_error $? "*** zlib.h missing - please install first or check config.log ***" "$LINENO" 5
9113fi
9114
9115
9116{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for deflate in -lz" >&5
9117$as_echo_n "checking for deflate in -lz... " >&6; }
9118if ${ac_cv_lib_z_deflate+:} false; then :
9119 $as_echo_n "(cached) " >&6
9120else
9121 ac_check_lib_save_LIBS=$LIBS
9122LIBS="-lz $LIBS"
9123cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9124/* end confdefs.h. */
9125
9126/* Override any GCC internal prototype to avoid an error.
9127 Use char because int might match the return type of a GCC
9128 builtin and then its argument prototype would still apply. */
9129#ifdef __cplusplus
9130extern "C"
9131#endif
9132char deflate ();
9133int
9134main ()
9135{
9136return deflate ();
9137 ;
9138 return 0;
9139}
9140_ACEOF
9141if ac_fn_c_try_link "$LINENO"; then :
9142 ac_cv_lib_z_deflate=yes
9143else
9144 ac_cv_lib_z_deflate=no
9145fi
9146rm -f core conftest.err conftest.$ac_objext \
9147 conftest$ac_exeext conftest.$ac_ext
9148LIBS=$ac_check_lib_save_LIBS
9149fi
9150{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflate" >&5
9151$as_echo "$ac_cv_lib_z_deflate" >&6; }
9152if test "x$ac_cv_lib_z_deflate" = xyes; then :
9153 cat >>confdefs.h <<_ACEOF
9154#define HAVE_LIBZ 1
9155_ACEOF
9156
9157 LIBS="-lz $LIBS"
9158
9159else
9160
9161 saved_CPPFLAGS="$CPPFLAGS"
9162 saved_LDFLAGS="$LDFLAGS"
9163 save_LIBS="$LIBS"
9164 if test -n "${need_dash_r}"; then
9165 LDFLAGS="-L/usr/local/lib -R/usr/local/lib ${saved_LDFLAGS}"
9166 else
9167 LDFLAGS="-L/usr/local/lib ${saved_LDFLAGS}"
9168 fi
9169 CPPFLAGS="-I/usr/local/include ${saved_CPPFLAGS}"
9170 LIBS="$LIBS -lz"
9171 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9172/* end confdefs.h. */
9173
9174/* Override any GCC internal prototype to avoid an error.
9175 Use char because int might match the return type of a GCC
9176 builtin and then its argument prototype would still apply. */
9177#ifdef __cplusplus
9178extern "C"
9179#endif
9180char deflate ();
9181int
9182main ()
9183{
9184return deflate ();
9185 ;
9186 return 0;
9187}
9188_ACEOF
9189if ac_fn_c_try_link "$LINENO"; then :
9190 $as_echo "#define HAVE_LIBZ 1" >>confdefs.h
9191
9192else
9193
9194 as_fn_error $? "*** zlib missing - please install first or check config.log ***" "$LINENO" 5
9195
9196
9197fi
9198rm -f core conftest.err conftest.$ac_objext \
9199 conftest$ac_exeext conftest.$ac_ext
9200
9201
9202fi
9203
9204
9205
9206# Check whether --with-zlib-version-check was given.
9207if test "${with_zlib_version_check+set}" = set; then :
9208 withval=$with_zlib_version_check; if test "x$withval" = "xno" ; then
9209 zlib_check_nonfatal=1
9210 fi
9211
9212
9213fi
9214
9215
9216{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for possibly buggy zlib" >&5
9217$as_echo_n "checking for possibly buggy zlib... " >&6; }
9218if test "$cross_compiling" = yes; then :
9219 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking zlib version" >&5
9220$as_echo "$as_me: WARNING: cross compiling: not checking zlib version" >&2;}
9221
9222else
9223 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9224/* end confdefs.h. */
9225
9226#include <stdio.h>
9227#include <stdlib.h>
9228#include <zlib.h>
9229
9230int
9231main ()
9232{
9233
9234 int a=0, b=0, c=0, d=0, n, v;
9235 n = sscanf(ZLIB_VERSION, "%d.%d.%d.%d", &a, &b, &c, &d);
9236 if (n != 3 && n != 4)
9237 exit(1);
9238 v = a*1000000 + b*10000 + c*100 + d;
9239 fprintf(stderr, "found zlib version %s (%d)\n", ZLIB_VERSION, v);
9240
9241 /* 1.1.4 is OK */
9242 if (a == 1 && b == 1 && c >= 4)
9243 exit(0);
9244
9245 /* 1.2.3 and up are OK */
9246 if (v >= 1020300)
9247 exit(0);
9248
9249 exit(2);
9250
9251 ;
9252 return 0;
9253}
9254_ACEOF
9255if ac_fn_c_try_run "$LINENO"; then :
9256 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9257$as_echo "no" >&6; }
9258else
9259 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
9260$as_echo "yes" >&6; }
9261 if test -z "$zlib_check_nonfatal" ; then
9262 as_fn_error $? "*** zlib too old - check config.log ***
9263Your reported zlib version has known security problems. It's possible your
9264vendor has fixed these problems without changing the version number. If you
9265are sure this is the case, you can disable the check by running
9266\"./configure --without-zlib-version-check\".
9267If you are in doubt, upgrade zlib to version 1.2.3 or greater.
9268See http://www.gzip.org/zlib/ for details." "$LINENO" 5
9269 else
9270 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib version may have security problems" >&5
9271$as_echo "$as_me: WARNING: zlib version may have security problems" >&2;}
9272 fi
9273
9274fi
9275rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
9276 conftest.$ac_objext conftest.beam conftest.$ac_ext
9277fi
9278
9279
9280ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
9281if test "x$ac_cv_func_strcasecmp" = xyes; then :
9282
9283else
9284 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolv" >&5
9285$as_echo_n "checking for strcasecmp in -lresolv... " >&6; }
9286if ${ac_cv_lib_resolv_strcasecmp+:} false; then :
9287 $as_echo_n "(cached) " >&6
9288else
9289 ac_check_lib_save_LIBS=$LIBS
9290LIBS="-lresolv $LIBS"
9291cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9292/* end confdefs.h. */
9293
9294/* Override any GCC internal prototype to avoid an error.
9295 Use char because int might match the return type of a GCC
9296 builtin and then its argument prototype would still apply. */
9297#ifdef __cplusplus
9298extern "C"
9299#endif
9300char strcasecmp ();
9301int
9302main ()
9303{
9304return strcasecmp ();
9305 ;
9306 return 0;
9307}
9308_ACEOF
9309if ac_fn_c_try_link "$LINENO"; then :
9310 ac_cv_lib_resolv_strcasecmp=yes
9311else
9312 ac_cv_lib_resolv_strcasecmp=no
9313fi
9314rm -f core conftest.err conftest.$ac_objext \
9315 conftest$ac_exeext conftest.$ac_ext
9316LIBS=$ac_check_lib_save_LIBS
9317fi
9318{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_strcasecmp" >&5
9319$as_echo "$ac_cv_lib_resolv_strcasecmp" >&6; }
9320if test "x$ac_cv_lib_resolv_strcasecmp" = xyes; then :
9321 LIBS="$LIBS -lresolv"
9322fi
9323
9324
9325fi
9326
9327for ac_func in utimes
9328do :
9329 ac_fn_c_check_func "$LINENO" "utimes" "ac_cv_func_utimes"
9330if test "x$ac_cv_func_utimes" = xyes; then :
9331 cat >>confdefs.h <<_ACEOF
9332#define HAVE_UTIMES 1
9333_ACEOF
9334
9335else
9336 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for utimes in -lc89" >&5
9337$as_echo_n "checking for utimes in -lc89... " >&6; }
9338if ${ac_cv_lib_c89_utimes+:} false; then :
9339 $as_echo_n "(cached) " >&6
9340else
9341 ac_check_lib_save_LIBS=$LIBS
9342LIBS="-lc89 $LIBS"
9343cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9344/* end confdefs.h. */
9345
9346/* Override any GCC internal prototype to avoid an error.
9347 Use char because int might match the return type of a GCC
9348 builtin and then its argument prototype would still apply. */
9349#ifdef __cplusplus
9350extern "C"
9351#endif
9352char utimes ();
9353int
9354main ()
9355{
9356return utimes ();
9357 ;
9358 return 0;
9359}
9360_ACEOF
9361if ac_fn_c_try_link "$LINENO"; then :
9362 ac_cv_lib_c89_utimes=yes
9363else
9364 ac_cv_lib_c89_utimes=no
9365fi
9366rm -f core conftest.err conftest.$ac_objext \
9367 conftest$ac_exeext conftest.$ac_ext
9368LIBS=$ac_check_lib_save_LIBS
9369fi
9370{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c89_utimes" >&5
9371$as_echo "$ac_cv_lib_c89_utimes" >&6; }
9372if test "x$ac_cv_lib_c89_utimes" = xyes; then :
9373 $as_echo "#define HAVE_UTIMES 1" >>confdefs.h
9374
9375 LIBS="$LIBS -lc89"
9376fi
9377
9378
9379fi
9380done
9381
9382
9383for ac_header in bsd/libutil.h libutil.h
9384do :
9385 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
9386ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
9387if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
9388 cat >>confdefs.h <<_ACEOF
9389#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
9390_ACEOF
9391
9392fi
9393
9394done
9395
9396{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fmt_scaled" >&5
9397$as_echo_n "checking for library containing fmt_scaled... " >&6; }
9398if ${ac_cv_search_fmt_scaled+:} false; then :
9399 $as_echo_n "(cached) " >&6
9400else
9401 ac_func_search_save_LIBS=$LIBS
9402cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9403/* end confdefs.h. */
9404
9405/* Override any GCC internal prototype to avoid an error.
9406 Use char because int might match the return type of a GCC
9407 builtin and then its argument prototype would still apply. */
9408#ifdef __cplusplus
9409extern "C"
9410#endif
9411char fmt_scaled ();
9412int
9413main ()
9414{
9415return fmt_scaled ();
9416 ;
9417 return 0;
9418}
9419_ACEOF
9420for ac_lib in '' util bsd; do
9421 if test -z "$ac_lib"; then
9422 ac_res="none required"
9423 else
9424 ac_res=-l$ac_lib
9425 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9426 fi
9427 if ac_fn_c_try_link "$LINENO"; then :
9428 ac_cv_search_fmt_scaled=$ac_res
9429fi
9430rm -f core conftest.err conftest.$ac_objext \
9431 conftest$ac_exeext
9432 if ${ac_cv_search_fmt_scaled+:} false; then :
9433 break
9434fi
9435done
9436if ${ac_cv_search_fmt_scaled+:} false; then :
9437
9438else
9439 ac_cv_search_fmt_scaled=no
9440fi
9441rm conftest.$ac_ext
9442LIBS=$ac_func_search_save_LIBS
9443fi
9444{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmt_scaled" >&5
9445$as_echo "$ac_cv_search_fmt_scaled" >&6; }
9446ac_res=$ac_cv_search_fmt_scaled
9447if test "$ac_res" != no; then :
9448 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9449
9450fi
9451
9452{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing scan_scaled" >&5
9453$as_echo_n "checking for library containing scan_scaled... " >&6; }
9454if ${ac_cv_search_scan_scaled+:} false; then :
9455 $as_echo_n "(cached) " >&6
9456else
9457 ac_func_search_save_LIBS=$LIBS
9458cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9459/* end confdefs.h. */
9460
9461/* Override any GCC internal prototype to avoid an error.
9462 Use char because int might match the return type of a GCC
9463 builtin and then its argument prototype would still apply. */
9464#ifdef __cplusplus
9465extern "C"
9466#endif
9467char scan_scaled ();
9468int
9469main ()
9470{
9471return scan_scaled ();
9472 ;
9473 return 0;
9474}
9475_ACEOF
9476for ac_lib in '' util bsd; do
9477 if test -z "$ac_lib"; then
9478 ac_res="none required"
9479 else
9480 ac_res=-l$ac_lib
9481 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9482 fi
9483 if ac_fn_c_try_link "$LINENO"; then :
9484 ac_cv_search_scan_scaled=$ac_res
9485fi
9486rm -f core conftest.err conftest.$ac_objext \
9487 conftest$ac_exeext
9488 if ${ac_cv_search_scan_scaled+:} false; then :
9489 break
9490fi
9491done
9492if ${ac_cv_search_scan_scaled+:} false; then :
9493
9494else
9495 ac_cv_search_scan_scaled=no
9496fi
9497rm conftest.$ac_ext
9498LIBS=$ac_func_search_save_LIBS
9499fi
9500{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_scan_scaled" >&5
9501$as_echo "$ac_cv_search_scan_scaled" >&6; }
9502ac_res=$ac_cv_search_scan_scaled
9503if test "$ac_res" != no; then :
9504 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9505
9506fi
9507
9508{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing login" >&5
9509$as_echo_n "checking for library containing login... " >&6; }
9510if ${ac_cv_search_login+:} false; then :
9511 $as_echo_n "(cached) " >&6
9512else
9513 ac_func_search_save_LIBS=$LIBS
9514cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9515/* end confdefs.h. */
9516
9517/* Override any GCC internal prototype to avoid an error.
9518 Use char because int might match the return type of a GCC
9519 builtin and then its argument prototype would still apply. */
9520#ifdef __cplusplus
9521extern "C"
9522#endif
9523char login ();
9524int
9525main ()
9526{
9527return login ();
9528 ;
9529 return 0;
9530}
9531_ACEOF
9532for ac_lib in '' util bsd; do
9533 if test -z "$ac_lib"; then
9534 ac_res="none required"
9535 else
9536 ac_res=-l$ac_lib
9537 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9538 fi
9539 if ac_fn_c_try_link "$LINENO"; then :
9540 ac_cv_search_login=$ac_res
9541fi
9542rm -f core conftest.err conftest.$ac_objext \
9543 conftest$ac_exeext
9544 if ${ac_cv_search_login+:} false; then :
9545 break
9546fi
9547done
9548if ${ac_cv_search_login+:} false; then :
9549
9550else
9551 ac_cv_search_login=no
9552fi
9553rm conftest.$ac_ext
9554LIBS=$ac_func_search_save_LIBS
9555fi
9556{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_login" >&5
9557$as_echo "$ac_cv_search_login" >&6; }
9558ac_res=$ac_cv_search_login
9559if test "$ac_res" != no; then :
9560 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9561
9562fi
9563
9564{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logout" >&5
9565$as_echo_n "checking for library containing logout... " >&6; }
9566if ${ac_cv_search_logout+:} false; then :
9567 $as_echo_n "(cached) " >&6
9568else
9569 ac_func_search_save_LIBS=$LIBS
9570cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9571/* end confdefs.h. */
9572
9573/* Override any GCC internal prototype to avoid an error.
9574 Use char because int might match the return type of a GCC
9575 builtin and then its argument prototype would still apply. */
9576#ifdef __cplusplus
9577extern "C"
9578#endif
9579char logout ();
9580int
9581main ()
9582{
9583return logout ();
9584 ;
9585 return 0;
9586}
9587_ACEOF
9588for ac_lib in '' util bsd; do
9589 if test -z "$ac_lib"; then
9590 ac_res="none required"
9591 else
9592 ac_res=-l$ac_lib
9593 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9594 fi
9595 if ac_fn_c_try_link "$LINENO"; then :
9596 ac_cv_search_logout=$ac_res
9597fi
9598rm -f core conftest.err conftest.$ac_objext \
9599 conftest$ac_exeext
9600 if ${ac_cv_search_logout+:} false; then :
9601 break
9602fi
9603done
9604if ${ac_cv_search_logout+:} false; then :
9605
9606else
9607 ac_cv_search_logout=no
9608fi
9609rm conftest.$ac_ext
9610LIBS=$ac_func_search_save_LIBS
9611fi
9612{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logout" >&5
9613$as_echo "$ac_cv_search_logout" >&6; }
9614ac_res=$ac_cv_search_logout
9615if test "$ac_res" != no; then :
9616 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9617
9618fi
9619
9620{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logwtmp" >&5
9621$as_echo_n "checking for library containing logwtmp... " >&6; }
9622if ${ac_cv_search_logwtmp+:} false; then :
9623 $as_echo_n "(cached) " >&6
9624else
9625 ac_func_search_save_LIBS=$LIBS
9626cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9627/* end confdefs.h. */
9628
9629/* Override any GCC internal prototype to avoid an error.
9630 Use char because int might match the return type of a GCC
9631 builtin and then its argument prototype would still apply. */
9632#ifdef __cplusplus
9633extern "C"
9634#endif
9635char logwtmp ();
9636int
9637main ()
9638{
9639return logwtmp ();
9640 ;
9641 return 0;
9642}
9643_ACEOF
9644for ac_lib in '' util bsd; do
9645 if test -z "$ac_lib"; then
9646 ac_res="none required"
9647 else
9648 ac_res=-l$ac_lib
9649 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9650 fi
9651 if ac_fn_c_try_link "$LINENO"; then :
9652 ac_cv_search_logwtmp=$ac_res
9653fi
9654rm -f core conftest.err conftest.$ac_objext \
9655 conftest$ac_exeext
9656 if ${ac_cv_search_logwtmp+:} false; then :
9657 break
9658fi
9659done
9660if ${ac_cv_search_logwtmp+:} false; then :
9661
9662else
9663 ac_cv_search_logwtmp=no
9664fi
9665rm conftest.$ac_ext
9666LIBS=$ac_func_search_save_LIBS
9667fi
9668{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logwtmp" >&5
9669$as_echo "$ac_cv_search_logwtmp" >&6; }
9670ac_res=$ac_cv_search_logwtmp
9671if test "$ac_res" != no; then :
9672 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9673
9674fi
9675
9676{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing openpty" >&5
9677$as_echo_n "checking for library containing openpty... " >&6; }
9678if ${ac_cv_search_openpty+:} false; then :
9679 $as_echo_n "(cached) " >&6
9680else
9681 ac_func_search_save_LIBS=$LIBS
9682cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9683/* end confdefs.h. */
9684
9685/* Override any GCC internal prototype to avoid an error.
9686 Use char because int might match the return type of a GCC
9687 builtin and then its argument prototype would still apply. */
9688#ifdef __cplusplus
9689extern "C"
9690#endif
9691char openpty ();
9692int
9693main ()
9694{
9695return openpty ();
9696 ;
9697 return 0;
9698}
9699_ACEOF
9700for ac_lib in '' util bsd; do
9701 if test -z "$ac_lib"; then
9702 ac_res="none required"
9703 else
9704 ac_res=-l$ac_lib
9705 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9706 fi
9707 if ac_fn_c_try_link "$LINENO"; then :
9708 ac_cv_search_openpty=$ac_res
9709fi
9710rm -f core conftest.err conftest.$ac_objext \
9711 conftest$ac_exeext
9712 if ${ac_cv_search_openpty+:} false; then :
9713 break
9714fi
9715done
9716if ${ac_cv_search_openpty+:} false; then :
9717
9718else
9719 ac_cv_search_openpty=no
9720fi
9721rm conftest.$ac_ext
9722LIBS=$ac_func_search_save_LIBS
9723fi
9724{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_openpty" >&5
9725$as_echo "$ac_cv_search_openpty" >&6; }
9726ac_res=$ac_cv_search_openpty
9727if test "$ac_res" != no; then :
9728 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9729
9730fi
9731
9732{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing updwtmp" >&5
9733$as_echo_n "checking for library containing updwtmp... " >&6; }
9734if ${ac_cv_search_updwtmp+:} false; then :
9735 $as_echo_n "(cached) " >&6
9736else
9737 ac_func_search_save_LIBS=$LIBS
9738cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9739/* end confdefs.h. */
9740
9741/* Override any GCC internal prototype to avoid an error.
9742 Use char because int might match the return type of a GCC
9743 builtin and then its argument prototype would still apply. */
9744#ifdef __cplusplus
9745extern "C"
9746#endif
9747char updwtmp ();
9748int
9749main ()
9750{
9751return updwtmp ();
9752 ;
9753 return 0;
9754}
9755_ACEOF
9756for ac_lib in '' util bsd; do
9757 if test -z "$ac_lib"; then
9758 ac_res="none required"
9759 else
9760 ac_res=-l$ac_lib
9761 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9762 fi
9763 if ac_fn_c_try_link "$LINENO"; then :
9764 ac_cv_search_updwtmp=$ac_res
9765fi
9766rm -f core conftest.err conftest.$ac_objext \
9767 conftest$ac_exeext
9768 if ${ac_cv_search_updwtmp+:} false; then :
9769 break
9770fi
9771done
9772if ${ac_cv_search_updwtmp+:} false; then :
9773
9774else
9775 ac_cv_search_updwtmp=no
9776fi
9777rm conftest.$ac_ext
9778LIBS=$ac_func_search_save_LIBS
9779fi
9780{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_updwtmp" >&5
9781$as_echo "$ac_cv_search_updwtmp" >&6; }
9782ac_res=$ac_cv_search_updwtmp
9783if test "$ac_res" != no; then :
9784 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9785
9786fi
9787
9788for ac_func in fmt_scaled scan_scaled login logout openpty updwtmp logwtmp
9789do :
9790 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
9791ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
9792if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
9793 cat >>confdefs.h <<_ACEOF
9794#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
9795_ACEOF
9796
9797fi
9798done
9799
9800
9801# On some platforms, inet_ntop and gethostbyname may be found in libresolv
9802# or libnsl.
9803{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inet_ntop" >&5
9804$as_echo_n "checking for library containing inet_ntop... " >&6; }
9805if ${ac_cv_search_inet_ntop+:} false; then :
9806 $as_echo_n "(cached) " >&6
9807else
9808 ac_func_search_save_LIBS=$LIBS
9809cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9810/* end confdefs.h. */
9811
9812/* Override any GCC internal prototype to avoid an error.
9813 Use char because int might match the return type of a GCC
9814 builtin and then its argument prototype would still apply. */
9815#ifdef __cplusplus
9816extern "C"
9817#endif
9818char inet_ntop ();
9819int
9820main ()
9821{
9822return inet_ntop ();
9823 ;
9824 return 0;
9825}
9826_ACEOF
9827for ac_lib in '' resolv nsl; do
9828 if test -z "$ac_lib"; then
9829 ac_res="none required"
9830 else
9831 ac_res=-l$ac_lib
9832 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9833 fi
9834 if ac_fn_c_try_link "$LINENO"; then :
9835 ac_cv_search_inet_ntop=$ac_res
9836fi
9837rm -f core conftest.err conftest.$ac_objext \
9838 conftest$ac_exeext
9839 if ${ac_cv_search_inet_ntop+:} false; then :
9840 break
9841fi
9842done
9843if ${ac_cv_search_inet_ntop+:} false; then :
9844
9845else
9846 ac_cv_search_inet_ntop=no
9847fi
9848rm conftest.$ac_ext
9849LIBS=$ac_func_search_save_LIBS
9850fi
9851{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_ntop" >&5
9852$as_echo "$ac_cv_search_inet_ntop" >&6; }
9853ac_res=$ac_cv_search_inet_ntop
9854if test "$ac_res" != no; then :
9855 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9856
9857fi
9858
9859{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gethostbyname" >&5
9860$as_echo_n "checking for library containing gethostbyname... " >&6; }
9861if ${ac_cv_search_gethostbyname+:} false; then :
9862 $as_echo_n "(cached) " >&6
9863else
9864 ac_func_search_save_LIBS=$LIBS
9865cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9866/* end confdefs.h. */
9867
9868/* Override any GCC internal prototype to avoid an error.
9869 Use char because int might match the return type of a GCC
9870 builtin and then its argument prototype would still apply. */
9871#ifdef __cplusplus
9872extern "C"
9873#endif
9874char gethostbyname ();
9875int
9876main ()
9877{
9878return gethostbyname ();
9879 ;
9880 return 0;
9881}
9882_ACEOF
9883for ac_lib in '' resolv nsl; do
9884 if test -z "$ac_lib"; then
9885 ac_res="none required"
9886 else
9887 ac_res=-l$ac_lib
9888 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
9889 fi
9890 if ac_fn_c_try_link "$LINENO"; then :
9891 ac_cv_search_gethostbyname=$ac_res
9892fi
9893rm -f core conftest.err conftest.$ac_objext \
9894 conftest$ac_exeext
9895 if ${ac_cv_search_gethostbyname+:} false; then :
9896 break
9897fi
9898done
9899if ${ac_cv_search_gethostbyname+:} false; then :
9900
9901else
9902 ac_cv_search_gethostbyname=no
9903fi
9904rm conftest.$ac_ext
9905LIBS=$ac_func_search_save_LIBS
9906fi
9907{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gethostbyname" >&5
9908$as_echo "$ac_cv_search_gethostbyname" >&6; }
9909ac_res=$ac_cv_search_gethostbyname
9910if test "$ac_res" != no; then :
9911 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
9912
9913fi
9914
9915
9916# "Particular Function Checks"
9917# see https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Particular-Functions.html
9918for ac_func in strftime
9919do :
9920 ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
9921if test "x$ac_cv_func_strftime" = xyes; then :
9922 cat >>confdefs.h <<_ACEOF
9923#define HAVE_STRFTIME 1
9924_ACEOF
9925
9926else
9927 # strftime is in -lintl on SCO UNIX.
9928{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for strftime in -lintl" >&5
9929$as_echo_n "checking for strftime in -lintl... " >&6; }
9930if ${ac_cv_lib_intl_strftime+:} false; then :
9931 $as_echo_n "(cached) " >&6
9932else
9933 ac_check_lib_save_LIBS=$LIBS
9934LIBS="-lintl $LIBS"
9935cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9936/* end confdefs.h. */
9937
9938/* Override any GCC internal prototype to avoid an error.
9939 Use char because int might match the return type of a GCC
9940 builtin and then its argument prototype would still apply. */
9941#ifdef __cplusplus
9942extern "C"
9943#endif
9944char strftime ();
9945int
9946main ()
9947{
9948return strftime ();
9949 ;
9950 return 0;
9951}
9952_ACEOF
9953if ac_fn_c_try_link "$LINENO"; then :
9954 ac_cv_lib_intl_strftime=yes
9955else
9956 ac_cv_lib_intl_strftime=no
9957fi
9958rm -f core conftest.err conftest.$ac_objext \
9959 conftest$ac_exeext conftest.$ac_ext
9960LIBS=$ac_check_lib_save_LIBS
9961fi
9962{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5
9963$as_echo "$ac_cv_lib_intl_strftime" >&6; }
9964if test "x$ac_cv_lib_intl_strftime" = xyes; then :
9965 $as_echo "#define HAVE_STRFTIME 1" >>confdefs.h
9966
9967LIBS="-lintl $LIBS"
9968fi
9969
9970fi
9971done
9972
9973for ac_header in stdlib.h
9974do :
9975 ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
9976if test "x$ac_cv_header_stdlib_h" = xyes; then :
9977 cat >>confdefs.h <<_ACEOF
9978#define HAVE_STDLIB_H 1
9979_ACEOF
9980
9981fi
9982
9983done
9984
9985{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
9986$as_echo_n "checking for GNU libc compatible malloc... " >&6; }
9987if ${ac_cv_func_malloc_0_nonnull+:} false; then :
9988 $as_echo_n "(cached) " >&6
9989else
9990 if test "$cross_compiling" = yes; then :
9991 ac_cv_func_malloc_0_nonnull=no
9992else
9993 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9994/* end confdefs.h. */
9995#if defined STDC_HEADERS || defined HAVE_STDLIB_H
9996# include <stdlib.h>
9997#else
9998char *malloc ();
9999#endif
10000
10001int
10002main ()
10003{
10004return ! malloc (0);
10005 ;
10006 return 0;
10007}
10008_ACEOF
10009if ac_fn_c_try_run "$LINENO"; then :
10010 ac_cv_func_malloc_0_nonnull=yes
10011else
10012 ac_cv_func_malloc_0_nonnull=no
10013fi
10014rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
10015 conftest.$ac_objext conftest.beam conftest.$ac_ext
10016fi
10017
10018fi
10019{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
10020$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
10021if test $ac_cv_func_malloc_0_nonnull = yes; then :
10022
10023$as_echo "#define HAVE_MALLOC 1" >>confdefs.h
10024
10025else
10026 $as_echo "#define HAVE_MALLOC 0" >>confdefs.h
10027
10028 case " $LIBOBJS " in
10029 *" malloc.$ac_objext "* ) ;;
10030 *) LIBOBJS="$LIBOBJS malloc.$ac_objext"
10031 ;;
10032esac
10033
10034
10035$as_echo "#define malloc rpl_malloc" >>confdefs.h
10036
10037fi
10038
10039
10040for ac_header in stdlib.h
10041do :
10042 ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
10043if test "x$ac_cv_header_stdlib_h" = xyes; then :
10044 cat >>confdefs.h <<_ACEOF
10045#define HAVE_STDLIB_H 1
10046_ACEOF
10047
10048fi
10049
10050done
10051
10052{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
10053$as_echo_n "checking for GNU libc compatible realloc... " >&6; }
10054if ${ac_cv_func_realloc_0_nonnull+:} false; then :
10055 $as_echo_n "(cached) " >&6
10056else
10057 if test "$cross_compiling" = yes; then :
10058 ac_cv_func_realloc_0_nonnull=no
10059else
10060 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10061/* end confdefs.h. */
10062#if defined STDC_HEADERS || defined HAVE_STDLIB_H
10063# include <stdlib.h>
10064#else
10065char *realloc ();
10066#endif
10067
10068int
10069main ()
10070{
10071return ! realloc (0, 0);
10072 ;
10073 return 0;
10074}
10075_ACEOF
10076if ac_fn_c_try_run "$LINENO"; then :
10077 ac_cv_func_realloc_0_nonnull=yes
10078else
10079 ac_cv_func_realloc_0_nonnull=no
10080fi
10081rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
10082 conftest.$ac_objext conftest.beam conftest.$ac_ext
10083fi
10084
10085fi
10086{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5
10087$as_echo "$ac_cv_func_realloc_0_nonnull" >&6; }
10088if test $ac_cv_func_realloc_0_nonnull = yes; then :
10089
10090$as_echo "#define HAVE_REALLOC 1" >>confdefs.h
10091
10092else
10093 $as_echo "#define HAVE_REALLOC 0" >>confdefs.h
10094
10095 case " $LIBOBJS " in
10096 *" realloc.$ac_objext "* ) ;;
10097 *) LIBOBJS="$LIBOBJS realloc.$ac_objext"
10098 ;;
10099esac
10100
10101
10102$as_echo "#define realloc rpl_realloc" >>confdefs.h
10103
10104fi
10105
10106
10107# autoconf doesn't have AC_FUNC_CALLOC so fake it if malloc returns NULL;
10108{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if calloc(0, N) returns non-null" >&5
10109$as_echo_n "checking if calloc(0, N) returns non-null... " >&6; }
10110if test "$cross_compiling" = yes; then :
10111 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming same as malloc" >&5
10112$as_echo "$as_me: WARNING: cross compiling: assuming same as malloc" >&2;}
10113 func_calloc_0_nonnull="$ac_cv_func_malloc_0_nonnull"
10114
10115else
10116 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10117/* end confdefs.h. */
10118 #include <stdlib.h>
10119int
10120main ()
10121{
10122 void *p = calloc(0, 1); exit(p == NULL);
10123
10124 ;
10125 return 0;
10126}
10127_ACEOF
10128if ac_fn_c_try_run "$LINENO"; then :
10129 func_calloc_0_nonnull=yes
10130else
10131 func_calloc_0_nonnull=no
10132fi
10133rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
10134 conftest.$ac_objext conftest.beam conftest.$ac_ext
10135fi
10136
10137{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $func_calloc_0_nonnull" >&5
10138$as_echo "$func_calloc_0_nonnull" >&6; }
10139
10140if test "x$func_calloc_0_nonnull" = "xyes"; then
10141
10142$as_echo "#define HAVE_CALLOC 1" >>confdefs.h
10143
10144else
10145
10146$as_echo "#define HAVE_CALLOC 0" >>confdefs.h
10147
10148
10149$as_echo "#define calloc rpl_calloc" >>confdefs.h
10150
10151fi
10152
10153# Check for ALTDIRFUNC glob() extension
10154{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_ALTDIRFUNC support" >&5
10155$as_echo_n "checking for GLOB_ALTDIRFUNC support... " >&6; }
10156cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10157/* end confdefs.h. */
10158
10159 #include <glob.h>
10160 #ifdef GLOB_ALTDIRFUNC
10161 FOUNDIT
10162 #endif
10163
10164_ACEOF
10165if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
10166 $EGREP "FOUNDIT" >/dev/null 2>&1; then :
10167
10168
10169$as_echo "#define GLOB_HAS_ALTDIRFUNC 1" >>confdefs.h
10170
10171 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10172$as_echo "yes" >&6; }
10173
10174else
10175
10176 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10177$as_echo "no" >&6; }
10178
10179
10180fi
10181rm -f conftest*
10182
10183
10184# Check for g.gl_matchc glob() extension
10185{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_matchc field in glob_t" >&5
10186$as_echo_n "checking for gl_matchc field in glob_t... " >&6; }
10187cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10188/* end confdefs.h. */
10189 #include <glob.h>
10190int
10191main ()
10192{
10193 glob_t g; g.gl_matchc = 1;
10194 ;
10195 return 0;
10196}
10197_ACEOF
10198if ac_fn_c_try_compile "$LINENO"; then :
10199
10200
10201$as_echo "#define GLOB_HAS_GL_MATCHC 1" >>confdefs.h
10202
10203 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10204$as_echo "yes" >&6; }
10205
10206else
10207
10208 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10209$as_echo "no" >&6; }
10210
10211fi
10212rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10213
10214# Check for g.gl_statv glob() extension
10215{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_statv and GLOB_KEEPSTAT extensions for glob" >&5
10216$as_echo_n "checking for gl_statv and GLOB_KEEPSTAT extensions for glob... " >&6; }
10217cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10218/* end confdefs.h. */
10219 #include <glob.h>
10220int
10221main ()
10222{
10223
10224#ifndef GLOB_KEEPSTAT
10225#error "glob does not support GLOB_KEEPSTAT extension"
10226#endif
10227glob_t g;
10228g.gl_statv = NULL;
10229
10230 ;
10231 return 0;
10232}
10233_ACEOF
10234if ac_fn_c_try_compile "$LINENO"; then :
10235
10236
10237$as_echo "#define GLOB_HAS_GL_STATV 1" >>confdefs.h
10238
10239 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10240$as_echo "yes" >&6; }
10241
10242else
10243
10244 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10245$as_echo "no" >&6; }
10246
10247
10248fi
10249rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10250
10251ac_fn_c_check_decl "$LINENO" "GLOB_NOMATCH" "ac_cv_have_decl_GLOB_NOMATCH" "#include <glob.h>
10252"
10253if test "x$ac_cv_have_decl_GLOB_NOMATCH" = xyes; then :
10254 ac_have_decl=1
10255else
10256 ac_have_decl=0
10257fi
10258
10259cat >>confdefs.h <<_ACEOF
10260#define HAVE_DECL_GLOB_NOMATCH $ac_have_decl
10261_ACEOF
10262
10263
10264ac_fn_c_check_decl "$LINENO" "VIS_ALL" "ac_cv_have_decl_VIS_ALL" "#include <vis.h>
10265"
10266if test "x$ac_cv_have_decl_VIS_ALL" = xyes; then :
10267
10268else
10269
10270$as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h
10271
10272fi
10273
10274
10275{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct dirent allocates space for d_name" >&5
10276$as_echo_n "checking whether struct dirent allocates space for d_name... " >&6; }
10277if test "$cross_compiling" = yes; then :
10278
10279 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&5
10280$as_echo "$as_me: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&2;}
10281 $as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h
10282
10283
10284
10285else
10286 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10287/* end confdefs.h. */
10288
10289#include <sys/types.h>
10290#include <dirent.h>
10291int
10292main ()
10293{
10294
10295 struct dirent d;
10296 exit(sizeof(d.d_name)<=sizeof(char));
10297
10298 ;
10299 return 0;
10300}
10301_ACEOF
10302if ac_fn_c_try_run "$LINENO"; then :
10303 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10304$as_echo "yes" >&6; }
10305else
10306
10307 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10308$as_echo "no" >&6; }
10309
10310$as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h
10311
10312
10313fi
10314rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
10315 conftest.$ac_objext conftest.beam conftest.$ac_ext
10316fi
10317
10318
10319{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for /proc/pid/fd directory" >&5
10320$as_echo_n "checking for /proc/pid/fd directory... " >&6; }
10321if test -d "/proc/$$/fd" ; then
10322
10323$as_echo "#define HAVE_PROC_PID 1" >>confdefs.h
10324
10325 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10326$as_echo "yes" >&6; }
10327else
10328 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10329$as_echo "no" >&6; }
10330fi
10331
10332# Check whether user wants to use ldns
10333LDNS_MSG="no"
10334
10335# Check whether --with-ldns was given.
10336if test "${with_ldns+set}" = set; then :
10337 withval=$with_ldns;
10338 ldns=""
10339 if test "x$withval" = "xyes" ; then
10340 if test -n "$ac_tool_prefix"; then
10341 # Extract the first word of "${ac_tool_prefix}ldns-config", so it can be a program name with args.
10342set dummy ${ac_tool_prefix}ldns-config; ac_word=$2
10343{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
10344$as_echo_n "checking for $ac_word... " >&6; }
10345if ${ac_cv_path_LDNSCONFIG+:} false; then :
10346 $as_echo_n "(cached) " >&6
10347else
10348 case $LDNSCONFIG in
10349 [\\/]* | ?:[\\/]*)
10350 ac_cv_path_LDNSCONFIG="$LDNSCONFIG" # Let the user override the test with a path.
10351 ;;
10352 *)
10353 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
10354for as_dir in $PATH
10355do
10356 IFS=$as_save_IFS
10357 test -z "$as_dir" && as_dir=.
10358 for ac_exec_ext in '' $ac_executable_extensions; do
10359 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
10360 ac_cv_path_LDNSCONFIG="$as_dir/$ac_word$ac_exec_ext"
10361 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
10362 break 2
10363 fi
10364done
10365 done
10366IFS=$as_save_IFS
10367
10368 ;;
10369esac
10370fi
10371LDNSCONFIG=$ac_cv_path_LDNSCONFIG
10372if test -n "$LDNSCONFIG"; then
10373 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LDNSCONFIG" >&5
10374$as_echo "$LDNSCONFIG" >&6; }
10375else
10376 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10377$as_echo "no" >&6; }
10378fi
10379
10380
10381fi
10382if test -z "$ac_cv_path_LDNSCONFIG"; then
10383 ac_pt_LDNSCONFIG=$LDNSCONFIG
10384 # Extract the first word of "ldns-config", so it can be a program name with args.
10385set dummy ldns-config; ac_word=$2
10386{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
10387$as_echo_n "checking for $ac_word... " >&6; }
10388if ${ac_cv_path_ac_pt_LDNSCONFIG+:} false; then :
10389 $as_echo_n "(cached) " >&6
10390else
10391 case $ac_pt_LDNSCONFIG in
10392 [\\/]* | ?:[\\/]*)
10393 ac_cv_path_ac_pt_LDNSCONFIG="$ac_pt_LDNSCONFIG" # Let the user override the test with a path.
10394 ;;
10395 *)
10396 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
10397for as_dir in $PATH
10398do
10399 IFS=$as_save_IFS
10400 test -z "$as_dir" && as_dir=.
10401 for ac_exec_ext in '' $ac_executable_extensions; do
10402 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
10403 ac_cv_path_ac_pt_LDNSCONFIG="$as_dir/$ac_word$ac_exec_ext"
10404 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
10405 break 2
10406 fi
10407done
10408 done
10409IFS=$as_save_IFS
10410
10411 ;;
10412esac
10413fi
10414ac_pt_LDNSCONFIG=$ac_cv_path_ac_pt_LDNSCONFIG
10415if test -n "$ac_pt_LDNSCONFIG"; then
10416 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_LDNSCONFIG" >&5
10417$as_echo "$ac_pt_LDNSCONFIG" >&6; }
10418else
10419 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10420$as_echo "no" >&6; }
10421fi
10422
10423 if test "x$ac_pt_LDNSCONFIG" = x; then
10424 LDNSCONFIG="no"
10425 else
10426 case $cross_compiling:$ac_tool_warned in
10427yes:)
10428{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
10429$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
10430ac_tool_warned=yes ;;
10431esac
10432 LDNSCONFIG=$ac_pt_LDNSCONFIG
10433 fi
10434else
10435 LDNSCONFIG="$ac_cv_path_LDNSCONFIG"
10436fi
10437
10438 if test "x$LDNSCONFIG" = "xno"; then
10439 CPPFLAGS="$CPPFLAGS -I${withval}/include"
10440 LDFLAGS="$LDFLAGS -L${withval}/lib"
10441 LIBS="-lldns $LIBS"
10442 ldns=yes
10443 else
10444 LIBS="$LIBS `$LDNSCONFIG --libs`"
10445 CPPFLAGS="$CPPFLAGS `$LDNSCONFIG --cflags`"
10446 ldns=yes
10447 fi
10448 elif test "x$withval" != "xno" ; then
10449 CPPFLAGS="$CPPFLAGS -I${withval}/include"
10450 LDFLAGS="$LDFLAGS -L${withval}/lib"
10451 LIBS="-lldns $LIBS"
10452 ldns=yes
10453 fi
10454
10455 # Verify that it works.
10456 if test "x$ldns" = "xyes" ; then
10457
10458$as_echo "#define HAVE_LDNS 1" >>confdefs.h
10459
10460 LDNS_MSG="yes"
10461 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldns support" >&5
10462$as_echo_n "checking for ldns support... " >&6; }
10463 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10464/* end confdefs.h. */
10465
10466#include <stdio.h>
10467#include <stdlib.h>
10468#include <stdint.h>
10469#include <ldns/ldns.h>
10470int main() { ldns_status status = ldns_verify_trusted(NULL, NULL, NULL, NULL); status=LDNS_STATUS_OK; exit(0); }
10471
10472
10473_ACEOF
10474if ac_fn_c_try_link "$LINENO"; then :
10475 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10476$as_echo "yes" >&6; }
10477else
10478
10479 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10480$as_echo "no" >&6; }
10481 as_fn_error $? "** Incomplete or missing ldns libraries." "$LINENO" 5
10482
10483fi
10484rm -f core conftest.err conftest.$ac_objext \
10485 conftest$ac_exeext conftest.$ac_ext
10486 fi
10487
10488fi
10489
10490
10491# Check whether user wants libedit support
10492LIBEDIT_MSG="no"
10493
10494# Check whether --with-libedit was given.
10495if test "${with_libedit+set}" = set; then :
10496 withval=$with_libedit; if test "x$withval" != "xno" ; then
10497 if test "x$withval" = "xyes" ; then
10498 if test -n "$ac_tool_prefix"; then
10499 # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
10500set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
10501{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
10502$as_echo_n "checking for $ac_word... " >&6; }
10503if ${ac_cv_path_PKGCONFIG+:} false; then :
10504 $as_echo_n "(cached) " >&6
10505else
10506 case $PKGCONFIG in
10507 [\\/]* | ?:[\\/]*)
10508 ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
10509 ;;
10510 *)
10511 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
10512for as_dir in $PATH
10513do
10514 IFS=$as_save_IFS
10515 test -z "$as_dir" && as_dir=.
10516 for ac_exec_ext in '' $ac_executable_extensions; do
10517 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
10518 ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
10519 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
10520 break 2
10521 fi
10522done
10523 done
10524IFS=$as_save_IFS
10525
10526 ;;
10527esac
10528fi
10529PKGCONFIG=$ac_cv_path_PKGCONFIG
10530if test -n "$PKGCONFIG"; then
10531 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
10532$as_echo "$PKGCONFIG" >&6; }
10533else
10534 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10535$as_echo "no" >&6; }
10536fi
10537
10538
10539fi
10540if test -z "$ac_cv_path_PKGCONFIG"; then
10541 ac_pt_PKGCONFIG=$PKGCONFIG
10542 # Extract the first word of "pkg-config", so it can be a program name with args.
10543set dummy pkg-config; ac_word=$2
10544{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
10545$as_echo_n "checking for $ac_word... " >&6; }
10546if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
10547 $as_echo_n "(cached) " >&6
10548else
10549 case $ac_pt_PKGCONFIG in
10550 [\\/]* | ?:[\\/]*)
10551 ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
10552 ;;
10553 *)
10554 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
10555for as_dir in $PATH
10556do
10557 IFS=$as_save_IFS
10558 test -z "$as_dir" && as_dir=.
10559 for ac_exec_ext in '' $ac_executable_extensions; do
10560 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
10561 ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
10562 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
10563 break 2
10564 fi
10565done
10566 done
10567IFS=$as_save_IFS
10568
10569 ;;
10570esac
10571fi
10572ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
10573if test -n "$ac_pt_PKGCONFIG"; then
10574 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
10575$as_echo "$ac_pt_PKGCONFIG" >&6; }
10576else
10577 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10578$as_echo "no" >&6; }
10579fi
10580
10581 if test "x$ac_pt_PKGCONFIG" = x; then
10582 PKGCONFIG="no"
10583 else
10584 case $cross_compiling:$ac_tool_warned in
10585yes:)
10586{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
10587$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
10588ac_tool_warned=yes ;;
10589esac
10590 PKGCONFIG=$ac_pt_PKGCONFIG
10591 fi
10592else
10593 PKGCONFIG="$ac_cv_path_PKGCONFIG"
10594fi
10595
10596 if test "x$PKGCONFIG" != "xno"; then
10597 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $PKGCONFIG knows about libedit" >&5
10598$as_echo_n "checking if $PKGCONFIG knows about libedit... " >&6; }
10599 if "$PKGCONFIG" libedit; then
10600 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10601$as_echo "yes" >&6; }
10602 use_pkgconfig_for_libedit=yes
10603 else
10604 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10605$as_echo "no" >&6; }
10606 fi
10607 fi
10608 else
10609 CPPFLAGS="$CPPFLAGS -I${withval}/include"
10610 if test -n "${need_dash_r}"; then
10611 LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}"
10612 else
10613 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
10614 fi
10615 fi
10616 if test "x$use_pkgconfig_for_libedit" = "xyes"; then
10617 LIBEDIT=`$PKGCONFIG --libs libedit`
10618 CPPFLAGS="$CPPFLAGS `$PKGCONFIG --cflags libedit`"
10619 else
10620 LIBEDIT="-ledit -lcurses"
10621 fi
10622 OTHERLIBS=`echo $LIBEDIT | sed 's/-ledit//'`
10623 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for el_init in -ledit" >&5
10624$as_echo_n "checking for el_init in -ledit... " >&6; }
10625if ${ac_cv_lib_edit_el_init+:} false; then :
10626 $as_echo_n "(cached) " >&6
10627else
10628 ac_check_lib_save_LIBS=$LIBS
10629LIBS="-ledit $OTHERLIBS
10630 $LIBS"
10631cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10632/* end confdefs.h. */
10633
10634/* Override any GCC internal prototype to avoid an error.
10635 Use char because int might match the return type of a GCC
10636 builtin and then its argument prototype would still apply. */
10637#ifdef __cplusplus
10638extern "C"
10639#endif
10640char el_init ();
10641int
10642main ()
10643{
10644return el_init ();
10645 ;
10646 return 0;
10647}
10648_ACEOF
10649if ac_fn_c_try_link "$LINENO"; then :
10650 ac_cv_lib_edit_el_init=yes
10651else
10652 ac_cv_lib_edit_el_init=no
10653fi
10654rm -f core conftest.err conftest.$ac_objext \
10655 conftest$ac_exeext conftest.$ac_ext
10656LIBS=$ac_check_lib_save_LIBS
10657fi
10658{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_edit_el_init" >&5
10659$as_echo "$ac_cv_lib_edit_el_init" >&6; }
10660if test "x$ac_cv_lib_edit_el_init" = xyes; then :
10661
10662$as_echo "#define USE_LIBEDIT 1" >>confdefs.h
10663
10664 LIBEDIT_MSG="yes"
10665
10666
10667else
10668 as_fn_error $? "libedit not found" "$LINENO" 5
10669fi
10670
10671 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libedit version is compatible" >&5
10672$as_echo_n "checking if libedit version is compatible... " >&6; }
10673 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10674/* end confdefs.h. */
10675 #include <histedit.h>
10676int
10677main ()
10678{
10679
10680 int i = H_SETSIZE;
10681 el_init("", NULL, NULL, NULL);
10682 exit(0);
10683
10684 ;
10685 return 0;
10686}
10687_ACEOF
10688if ac_fn_c_try_compile "$LINENO"; then :
10689 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10690$as_echo "yes" >&6; }
10691else
10692 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10693$as_echo "no" >&6; }
10694 as_fn_error $? "libedit version is not compatible" "$LINENO" 5
10695
10696fi
10697rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10698 fi
10699
10700fi
10701
10702
10703AUDIT_MODULE=none
10704
10705# Check whether --with-audit was given.
10706if test "${with_audit+set}" = set; then :
10707 withval=$with_audit;
10708 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for supported audit module" >&5
10709$as_echo_n "checking for supported audit module... " >&6; }
10710 case "$withval" in
10711 bsm)
10712 { $as_echo "$as_me:${as_lineno-$LINENO}: result: bsm" >&5
10713$as_echo "bsm" >&6; }
10714 AUDIT_MODULE=bsm
10715 for ac_header in bsm/audit.h
10716do :
10717 ac_fn_c_check_header_compile "$LINENO" "bsm/audit.h" "ac_cv_header_bsm_audit_h" "
10718#ifdef HAVE_TIME_H
10719# include <time.h>
10720#endif
10721
10722
10723"
10724if test "x$ac_cv_header_bsm_audit_h" = xyes; then :
10725 cat >>confdefs.h <<_ACEOF
10726#define HAVE_BSM_AUDIT_H 1
10727_ACEOF
10728
10729else
10730 as_fn_error $? "BSM enabled and bsm/audit.h not found" "$LINENO" 5
10731fi
10732
10733done
10734
10735 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaudit in -lbsm" >&5
10736$as_echo_n "checking for getaudit in -lbsm... " >&6; }
10737if ${ac_cv_lib_bsm_getaudit+:} false; then :
10738 $as_echo_n "(cached) " >&6
10739else
10740 ac_check_lib_save_LIBS=$LIBS
10741LIBS="-lbsm $LIBS"
10742cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10743/* end confdefs.h. */
10744
10745/* Override any GCC internal prototype to avoid an error.
10746 Use char because int might match the return type of a GCC
10747 builtin and then its argument prototype would still apply. */
10748#ifdef __cplusplus
10749extern "C"
10750#endif
10751char getaudit ();
10752int
10753main ()
10754{
10755return getaudit ();
10756 ;
10757 return 0;
10758}
10759_ACEOF
10760if ac_fn_c_try_link "$LINENO"; then :
10761 ac_cv_lib_bsm_getaudit=yes
10762else
10763 ac_cv_lib_bsm_getaudit=no
10764fi
10765rm -f core conftest.err conftest.$ac_objext \
10766 conftest$ac_exeext conftest.$ac_ext
10767LIBS=$ac_check_lib_save_LIBS
10768fi
10769{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsm_getaudit" >&5
10770$as_echo "$ac_cv_lib_bsm_getaudit" >&6; }
10771if test "x$ac_cv_lib_bsm_getaudit" = xyes; then :
10772 cat >>confdefs.h <<_ACEOF
10773#define HAVE_LIBBSM 1
10774_ACEOF
10775
10776 LIBS="-lbsm $LIBS"
10777
10778else
10779 as_fn_error $? "BSM enabled and required library not found" "$LINENO" 5
10780fi
10781
10782 for ac_func in getaudit
10783do :
10784 ac_fn_c_check_func "$LINENO" "getaudit" "ac_cv_func_getaudit"
10785if test "x$ac_cv_func_getaudit" = xyes; then :
10786 cat >>confdefs.h <<_ACEOF
10787#define HAVE_GETAUDIT 1
10788_ACEOF
10789
10790else
10791 as_fn_error $? "BSM enabled and required function not found" "$LINENO" 5
10792fi
10793done
10794
10795 # These are optional
10796 for ac_func in getaudit_addr aug_get_machine
10797do :
10798 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
10799ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
10800if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
10801 cat >>confdefs.h <<_ACEOF
10802#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
10803_ACEOF
10804
10805fi
10806done
10807
10808
10809$as_echo "#define USE_BSM_AUDIT 1" >>confdefs.h
10810
10811 if test "$sol2ver" -ge 11; then
10812 SSHDLIBS="$SSHDLIBS -lscf"
10813
10814$as_echo "#define BROKEN_BSM_API 1" >>confdefs.h
10815
10816 fi
10817 ;;
10818 linux)
10819 { $as_echo "$as_me:${as_lineno-$LINENO}: result: linux" >&5
10820$as_echo "linux" >&6; }
10821 AUDIT_MODULE=linux
10822 for ac_header in libaudit.h
10823do :
10824 ac_fn_c_check_header_mongrel "$LINENO" "libaudit.h" "ac_cv_header_libaudit_h" "$ac_includes_default"
10825if test "x$ac_cv_header_libaudit_h" = xyes; then :
10826 cat >>confdefs.h <<_ACEOF
10827#define HAVE_LIBAUDIT_H 1
10828_ACEOF
10829
10830fi
10831
10832done
10833
10834 SSHDLIBS="$SSHDLIBS -laudit"
10835
10836$as_echo "#define USE_LINUX_AUDIT 1" >>confdefs.h
10837
10838 ;;
10839 debug)
10840 AUDIT_MODULE=debug
10841 { $as_echo "$as_me:${as_lineno-$LINENO}: result: debug" >&5
10842$as_echo "debug" >&6; }
10843
10844$as_echo "#define SSH_AUDIT_EVENTS 1" >>confdefs.h
10845
10846 ;;
10847 no)
10848 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10849$as_echo "no" >&6; }
10850 ;;
10851 *)
10852 as_fn_error $? "Unknown audit module $withval" "$LINENO" 5
10853 ;;
10854 esac
10855
10856fi
10857
10858
10859
10860# Check whether --with-pie was given.
10861if test "${with_pie+set}" = set; then :
10862 withval=$with_pie;
10863 if test "x$withval" = "xno"; then
10864 use_pie=no
10865 fi
10866 if test "x$withval" = "xyes"; then
10867 use_pie=yes
10868 fi
10869
10870
10871fi
10872
10873if test "x$use_pie" = "x"; then
10874 use_pie=no
10875fi
10876if test "x$use_toolchain_hardening" != "x1" && test "x$use_pie" = "xauto"; then
10877 # Turn off automatic PIE when toolchain hardening is off.
10878 use_pie=no
10879fi
10880if test "x$use_pie" = "xauto"; then
10881 # Automatic PIE requires gcc >= 4.x
10882 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc >= 4.x" >&5
10883$as_echo_n "checking for gcc >= 4.x... " >&6; }
10884 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10885/* end confdefs.h. */
10886
10887#if !defined(__GNUC__) || __GNUC__ < 4
10888#error gcc is too old
10889#endif
10890
10891_ACEOF
10892if ac_fn_c_try_compile "$LINENO"; then :
10893 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10894$as_echo "yes" >&6; }
10895else
10896 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10897$as_echo "no" >&6; }
10898 use_pie=no
10899
10900fi
10901rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10902fi
10903if test "x$use_pie" != "xno"; then
10904 SAVED_CFLAGS="$CFLAGS"
10905 SAVED_LDFLAGS="$LDFLAGS"
10906 {
10907 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fPIE" >&5
10908$as_echo_n "checking if $CC supports compile flag -fPIE... " >&6; }
10909 saved_CFLAGS="$CFLAGS"
10910 CFLAGS="$CFLAGS $WERROR -fPIE"
10911 _define_flag=""
10912 test "x$_define_flag" = "x" && _define_flag="-fPIE"
10913 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10914/* end confdefs.h. */
10915
10916#include <stdlib.h>
10917#include <stdio.h>
10918int main(int argc, char **argv) {
10919 /* Some math to catch -ftrapv problems in the toolchain */
10920 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
10921 float l = i * 2.1;
10922 double m = l / 0.5;
10923 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
10924 printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
10925 exit(0);
10926}
10927
10928_ACEOF
10929if ac_fn_c_try_compile "$LINENO"; then :
10930
10931if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
10932then
10933 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10934$as_echo "no" >&6; }
10935 CFLAGS="$saved_CFLAGS"
10936else
10937 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10938$as_echo "yes" >&6; }
10939 CFLAGS="$saved_CFLAGS $_define_flag"
10940fi
10941else
10942 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10943$as_echo "no" >&6; }
10944 CFLAGS="$saved_CFLAGS"
10945
10946fi
10947rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
10948}
10949 {
10950 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -pie" >&5
10951$as_echo_n "checking if $LD supports link flag -pie... " >&6; }
10952 saved_LDFLAGS="$LDFLAGS"
10953 LDFLAGS="$LDFLAGS $WERROR -pie"
10954 _define_flag=""
10955 test "x$_define_flag" = "x" && _define_flag="-pie"
10956 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10957/* end confdefs.h. */
10958
10959#include <stdlib.h>
10960#include <stdio.h>
10961int main(int argc, char **argv) {
10962 /* Some math to catch -ftrapv problems in the toolchain */
10963 int i = 123 * argc, j = 456 + argc, k = 789 - argc;
10964 float l = i * 2.1;
10965 double m = l / 0.5;
10966 long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
10967 long long p = n * o;
10968 printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
10969 exit(0);
10970}
10971
10972_ACEOF
10973if ac_fn_c_try_link "$LINENO"; then :
10974
10975if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null
10976then
10977 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10978$as_echo "no" >&6; }
10979 LDFLAGS="$saved_LDFLAGS"
10980else
10981 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
10982$as_echo "yes" >&6; }
10983 LDFLAGS="$saved_LDFLAGS $_define_flag"
10984fi
10985else
10986 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
10987$as_echo "no" >&6; }
10988 LDFLAGS="$saved_LDFLAGS"
10989
10990fi
10991rm -f core conftest.err conftest.$ac_objext \
10992 conftest$ac_exeext conftest.$ac_ext
10993}
10994 # We use both -fPIE and -pie or neither.
10995 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether both -fPIE and -pie are supported" >&5
10996$as_echo_n "checking whether both -fPIE and -pie are supported... " >&6; }
10997 if echo "x $CFLAGS" | grep ' -fPIE' >/dev/null 2>&1 && \
10998 echo "x $LDFLAGS" | grep ' -pie' >/dev/null 2>&1 ; then
10999 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11000$as_echo "yes" >&6; }
11001 else
11002 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
11003$as_echo "no" >&6; }
11004 CFLAGS="$SAVED_CFLAGS"
11005 LDFLAGS="$SAVED_LDFLAGS"
11006 fi
11007fi
11008
11009for ac_func in \
11010 Blowfish_initstate \
11011 Blowfish_expandstate \
11012 Blowfish_expand0state \
11013 Blowfish_stream2word \
11014 asprintf \
11015 b64_ntop \
11016 __b64_ntop \
11017 b64_pton \
11018 __b64_pton \
11019 bcopy \
11020 bcrypt_pbkdf \
11021 bindresvport_sa \
11022 blf_enc \
11023 bzero \
11024 cap_rights_limit \
11025 clock \
11026 closefrom \
11027 dirfd \
11028 endgrent \
11029 err \
11030 errx \
11031 explicit_bzero \
11032 fchmod \
11033 fchown \
11034 flock \
11035 freeaddrinfo \
11036 freezero \
11037 fstatfs \
11038 fstatvfs \
11039 futimes \
11040 getaddrinfo \
11041 getcwd \
11042 getgrouplist \
11043 getline \
11044 getnameinfo \
11045 getopt \
11046 getpagesize \
11047 getpeereid \
11048 getpeerucred \
11049 getpgid \
11050 _getpty \
11051 getrlimit \
11052 getrandom \
11053 getsid \
11054 getttyent \
11055 glob \
11056 group_from_gid \
11057 inet_aton \
11058 inet_ntoa \
11059 inet_ntop \
11060 innetgr \
11061 llabs \
11062 login_getcapbool \
11063 md5_crypt \
11064 memmove \
11065 memset_s \
11066 mkdtemp \
11067 ngetaddrinfo \
11068 nsleep \
11069 ogetaddrinfo \
11070 openlog_r \
11071 pledge \
11072 poll \
11073 prctl \
11074 pstat \
11075 raise \
11076 readpassphrase \
11077 reallocarray \
11078 recvmsg \
11079 recallocarray \
11080 rresvport_af \
11081 sendmsg \
11082 setdtablesize \
11083 setegid \
11084 setenv \
11085 seteuid \
11086 setgroupent \
11087 setgroups \
11088 setlinebuf \
11089 setlogin \
11090 setpassent\
11091 setpcred \
11092 setproctitle \
11093 setregid \
11094 setreuid \
11095 setrlimit \
11096 setsid \
11097 setvbuf \
11098 sigaction \
11099 sigvec \
11100 snprintf \
11101 socketpair \
11102 statfs \
11103 statvfs \
11104 strcasestr \
11105 strdup \
11106 strerror \
11107 strlcat \
11108 strlcpy \
11109 strmode \
11110 strndup \
11111 strnlen \
11112 strnvis \
11113 strptime \
11114 strsignal \
11115 strtonum \
11116 strtoll \
11117 strtoul \
11118 strtoull \
11119 swap32 \
11120 sysconf \
11121 tcgetpgrp \
11122 timingsafe_bcmp \
11123 truncate \
11124 unsetenv \
11125 updwtmpx \
11126 user_from_uid \
11127 usleep \
11128 vasprintf \
11129 vsnprintf \
11130 waitpid \
11131 warn \
11132
11133do :
11134 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11135ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11136if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11137 cat >>confdefs.h <<_ACEOF
11138#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11139_ACEOF
11140
11141fi
11142done
11143
11144
11145ac_fn_c_check_decl "$LINENO" "bzero" "ac_cv_have_decl_bzero" "$ac_includes_default"
11146if test "x$ac_cv_have_decl_bzero" = xyes; then :
11147 ac_have_decl=1
11148else
11149 ac_have_decl=0
11150fi
11151
11152cat >>confdefs.h <<_ACEOF
11153#define HAVE_DECL_BZERO $ac_have_decl
11154_ACEOF
11155
11156
11157for ac_func in mblen mbtowc nl_langinfo wcwidth
11158do :
11159 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11160ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11161if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11162 cat >>confdefs.h <<_ACEOF
11163#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11164_ACEOF
11165
11166fi
11167done
11168
11169
11170TEST_SSH_UTF8=${TEST_SSH_UTF8:=yes}
11171{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for utf8 locale support" >&5
11172$as_echo_n "checking for utf8 locale support... " >&6; }
11173if test "$cross_compiling" = yes; then :
11174 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5
11175$as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;}
11176
11177else
11178 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11179/* end confdefs.h. */
11180
11181#include <locale.h>
11182#include <stdlib.h>
11183
11184int
11185main ()
11186{
11187
11188 char *loc = setlocale(LC_CTYPE, "en_US.UTF-8");
11189 if (loc != NULL)
11190 exit(0);
11191 exit(1);
11192
11193 ;
11194 return 0;
11195}
11196_ACEOF
11197if ac_fn_c_try_run "$LINENO"; then :
11198 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11199$as_echo "yes" >&6; }
11200else
11201 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
11202$as_echo "no" >&6; }
11203 TEST_SSH_UTF8=no
11204fi
11205rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11206 conftest.$ac_objext conftest.beam conftest.$ac_ext
11207fi
11208
11209
11210cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11211/* end confdefs.h. */
11212 #include <ctype.h>
11213int
11214main ()
11215{
11216 return (isblank('a'));
11217 ;
11218 return 0;
11219}
11220_ACEOF
11221if ac_fn_c_try_link "$LINENO"; then :
11222
11223$as_echo "#define HAVE_ISBLANK 1" >>confdefs.h
11224
11225
11226fi
11227rm -f core conftest.err conftest.$ac_objext \
11228 conftest$ac_exeext conftest.$ac_ext
11229
11230disable_pkcs11=
11231# Check whether --enable-pkcs11 was given.
11232if test "${enable_pkcs11+set}" = set; then :
11233 enableval=$enable_pkcs11;
11234 if test "x$enableval" = "xno" ; then
11235 disable_pkcs11=1
11236 fi
11237
11238
11239fi
11240
11241
11242# PKCS11 depends on OpenSSL.
11243if test "x$openssl" = "xyes" && test "x$disable_pkcs11" = "x"; then
11244 # PKCS#11 support requires dlopen() and co
11245 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5
11246$as_echo_n "checking for library containing dlopen... " >&6; }
11247if ${ac_cv_search_dlopen+:} false; then :
11248 $as_echo_n "(cached) " >&6
11249else
11250 ac_func_search_save_LIBS=$LIBS
11251cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11252/* end confdefs.h. */
11253
11254/* Override any GCC internal prototype to avoid an error.
11255 Use char because int might match the return type of a GCC
11256 builtin and then its argument prototype would still apply. */
11257#ifdef __cplusplus
11258extern "C"
11259#endif
11260char dlopen ();
11261int
11262main ()
11263{
11264return dlopen ();
11265 ;
11266 return 0;
11267}
11268_ACEOF
11269for ac_lib in '' dl; do
11270 if test -z "$ac_lib"; then
11271 ac_res="none required"
11272 else
11273 ac_res=-l$ac_lib
11274 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
11275 fi
11276 if ac_fn_c_try_link "$LINENO"; then :
11277 ac_cv_search_dlopen=$ac_res
11278fi
11279rm -f core conftest.err conftest.$ac_objext \
11280 conftest$ac_exeext
11281 if ${ac_cv_search_dlopen+:} false; then :
11282 break
11283fi
11284done
11285if ${ac_cv_search_dlopen+:} false; then :
11286
11287else
11288 ac_cv_search_dlopen=no
11289fi
11290rm conftest.$ac_ext
11291LIBS=$ac_func_search_save_LIBS
11292fi
11293{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5
11294$as_echo "$ac_cv_search_dlopen" >&6; }
11295ac_res=$ac_cv_search_dlopen
11296if test "$ac_res" != no; then :
11297 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
11298 ac_fn_c_check_decl "$LINENO" "RTLD_NOW" "ac_cv_have_decl_RTLD_NOW" "#include <dlfcn.h>
11299
11300"
11301if test "x$ac_cv_have_decl_RTLD_NOW" = xyes; then :
11302
11303$as_echo "#define ENABLE_PKCS11 /**/" >>confdefs.h
11304
11305fi
11306
11307
11308fi
11309
11310fi
11311
11312# IRIX has a const char return value for gai_strerror()
11313for ac_func in gai_strerror
11314do :
11315 ac_fn_c_check_func "$LINENO" "gai_strerror" "ac_cv_func_gai_strerror"
11316if test "x$ac_cv_func_gai_strerror" = xyes; then :
11317 cat >>confdefs.h <<_ACEOF
11318#define HAVE_GAI_STRERROR 1
11319_ACEOF
11320
11321 $as_echo "#define HAVE_GAI_STRERROR 1" >>confdefs.h
11322
11323 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11324/* end confdefs.h. */
11325
11326#include <sys/types.h>
11327#include <sys/socket.h>
11328#include <netdb.h>
11329
11330const char *gai_strerror(int);
11331
11332int
11333main ()
11334{
11335
11336 char *str;
11337 str = gai_strerror(0);
11338
11339 ;
11340 return 0;
11341}
11342_ACEOF
11343if ac_fn_c_try_compile "$LINENO"; then :
11344
11345
11346$as_echo "#define HAVE_CONST_GAI_STRERROR_PROTO 1" >>confdefs.h
11347
11348fi
11349rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
11350fi
11351done
11352
11353
11354{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing nanosleep" >&5
11355$as_echo_n "checking for library containing nanosleep... " >&6; }
11356if ${ac_cv_search_nanosleep+:} false; then :
11357 $as_echo_n "(cached) " >&6
11358else
11359 ac_func_search_save_LIBS=$LIBS
11360cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11361/* end confdefs.h. */
11362
11363/* Override any GCC internal prototype to avoid an error.
11364 Use char because int might match the return type of a GCC
11365 builtin and then its argument prototype would still apply. */
11366#ifdef __cplusplus
11367extern "C"
11368#endif
11369char nanosleep ();
11370int
11371main ()
11372{
11373return nanosleep ();
11374 ;
11375 return 0;
11376}
11377_ACEOF
11378for ac_lib in '' rt posix4; do
11379 if test -z "$ac_lib"; then
11380 ac_res="none required"
11381 else
11382 ac_res=-l$ac_lib
11383 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
11384 fi
11385 if ac_fn_c_try_link "$LINENO"; then :
11386 ac_cv_search_nanosleep=$ac_res
11387fi
11388rm -f core conftest.err conftest.$ac_objext \
11389 conftest$ac_exeext
11390 if ${ac_cv_search_nanosleep+:} false; then :
11391 break
11392fi
11393done
11394if ${ac_cv_search_nanosleep+:} false; then :
11395
11396else
11397 ac_cv_search_nanosleep=no
11398fi
11399rm conftest.$ac_ext
11400LIBS=$ac_func_search_save_LIBS
11401fi
11402{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5
11403$as_echo "$ac_cv_search_nanosleep" >&6; }
11404ac_res=$ac_cv_search_nanosleep
11405if test "$ac_res" != no; then :
11406 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
11407
11408$as_echo "#define HAVE_NANOSLEEP 1" >>confdefs.h
11409
11410fi
11411
11412
11413{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
11414$as_echo_n "checking for library containing clock_gettime... " >&6; }
11415if ${ac_cv_search_clock_gettime+:} false; then :
11416 $as_echo_n "(cached) " >&6
11417else
11418 ac_func_search_save_LIBS=$LIBS
11419cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11420/* end confdefs.h. */
11421
11422/* Override any GCC internal prototype to avoid an error.
11423 Use char because int might match the return type of a GCC
11424 builtin and then its argument prototype would still apply. */
11425#ifdef __cplusplus
11426extern "C"
11427#endif
11428char clock_gettime ();
11429int
11430main ()
11431{
11432return clock_gettime ();
11433 ;
11434 return 0;
11435}
11436_ACEOF
11437for ac_lib in '' rt; do
11438 if test -z "$ac_lib"; then
11439 ac_res="none required"
11440 else
11441 ac_res=-l$ac_lib
11442 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
11443 fi
11444 if ac_fn_c_try_link "$LINENO"; then :
11445 ac_cv_search_clock_gettime=$ac_res
11446fi
11447rm -f core conftest.err conftest.$ac_objext \
11448 conftest$ac_exeext
11449 if ${ac_cv_search_clock_gettime+:} false; then :
11450 break
11451fi
11452done
11453if ${ac_cv_search_clock_gettime+:} false; then :
11454
11455else
11456 ac_cv_search_clock_gettime=no
11457fi
11458rm conftest.$ac_ext
11459LIBS=$ac_func_search_save_LIBS
11460fi
11461{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
11462$as_echo "$ac_cv_search_clock_gettime" >&6; }
11463ac_res=$ac_cv_search_clock_gettime
11464if test "$ac_res" != no; then :
11465 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
11466
11467$as_echo "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h
11468
11469fi
11470
11471
11472ac_fn_c_check_decl "$LINENO" "strsep" "ac_cv_have_decl_strsep" "
11473#ifdef HAVE_STRING_H
11474# include <string.h>
11475#endif
11476
11477"
11478if test "x$ac_cv_have_decl_strsep" = xyes; then :
11479 for ac_func in strsep
11480do :
11481 ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep"
11482if test "x$ac_cv_func_strsep" = xyes; then :
11483 cat >>confdefs.h <<_ACEOF
11484#define HAVE_STRSEP 1
11485_ACEOF
11486
11487fi
11488done
11489
11490fi
11491
11492
11493ac_fn_c_check_decl "$LINENO" "tcsendbreak" "ac_cv_have_decl_tcsendbreak" "#include <termios.h>
11494
11495"
11496if test "x$ac_cv_have_decl_tcsendbreak" = xyes; then :
11497 $as_echo "#define HAVE_TCSENDBREAK 1" >>confdefs.h
11498
11499else
11500 for ac_func in tcsendbreak
11501do :
11502 ac_fn_c_check_func "$LINENO" "tcsendbreak" "ac_cv_func_tcsendbreak"
11503if test "x$ac_cv_func_tcsendbreak" = xyes; then :
11504 cat >>confdefs.h <<_ACEOF
11505#define HAVE_TCSENDBREAK 1
11506_ACEOF
11507
11508fi
11509done
11510
11511fi
11512
11513
11514ac_fn_c_check_decl "$LINENO" "h_errno" "ac_cv_have_decl_h_errno" "#include <netdb.h>
11515"
11516if test "x$ac_cv_have_decl_h_errno" = xyes; then :
11517 ac_have_decl=1
11518else
11519 ac_have_decl=0
11520fi
11521
11522cat >>confdefs.h <<_ACEOF
11523#define HAVE_DECL_H_ERRNO $ac_have_decl
11524_ACEOF
11525
11526
11527ac_fn_c_check_decl "$LINENO" "SHUT_RD" "ac_cv_have_decl_SHUT_RD" "
11528#include <sys/types.h>
11529#include <sys/socket.h>
11530
11531"
11532if test "x$ac_cv_have_decl_SHUT_RD" = xyes; then :
11533 ac_have_decl=1
11534else
11535 ac_have_decl=0
11536fi
11537
11538cat >>confdefs.h <<_ACEOF
11539#define HAVE_DECL_SHUT_RD $ac_have_decl
11540_ACEOF
11541
11542
11543ac_fn_c_check_decl "$LINENO" "O_NONBLOCK" "ac_cv_have_decl_O_NONBLOCK" "
11544#include <sys/types.h>
11545#ifdef HAVE_SYS_STAT_H
11546# include <sys/stat.h>
11547#endif
11548#ifdef HAVE_FCNTL_H
11549# include <fcntl.h>
11550#endif
11551
11552"
11553if test "x$ac_cv_have_decl_O_NONBLOCK" = xyes; then :
11554 ac_have_decl=1
11555else
11556 ac_have_decl=0
11557fi
11558
11559cat >>confdefs.h <<_ACEOF
11560#define HAVE_DECL_O_NONBLOCK $ac_have_decl
11561_ACEOF
11562
11563
11564ac_fn_c_check_decl "$LINENO" "readv" "ac_cv_have_decl_readv" "
11565#include <sys/types.h>
11566#include <sys/uio.h>
11567#include <unistd.h>
11568
11569"
11570if test "x$ac_cv_have_decl_readv" = xyes; then :
11571 ac_have_decl=1
11572else
11573 ac_have_decl=0
11574fi
11575
11576cat >>confdefs.h <<_ACEOF
11577#define HAVE_DECL_READV $ac_have_decl
11578_ACEOF
11579ac_fn_c_check_decl "$LINENO" "writev" "ac_cv_have_decl_writev" "
11580#include <sys/types.h>
11581#include <sys/uio.h>
11582#include <unistd.h>
11583
11584"
11585if test "x$ac_cv_have_decl_writev" = xyes; then :
11586 ac_have_decl=1
11587else
11588 ac_have_decl=0
11589fi
11590
11591cat >>confdefs.h <<_ACEOF
11592#define HAVE_DECL_WRITEV $ac_have_decl
11593_ACEOF
11594
11595
11596ac_fn_c_check_decl "$LINENO" "MAXSYMLINKS" "ac_cv_have_decl_MAXSYMLINKS" "
11597#include <sys/param.h>
11598
11599"
11600if test "x$ac_cv_have_decl_MAXSYMLINKS" = xyes; then :
11601 ac_have_decl=1
11602else
11603 ac_have_decl=0
11604fi
11605
11606cat >>confdefs.h <<_ACEOF
11607#define HAVE_DECL_MAXSYMLINKS $ac_have_decl
11608_ACEOF
11609
11610
11611ac_fn_c_check_decl "$LINENO" "offsetof" "ac_cv_have_decl_offsetof" "
11612#include <stddef.h>
11613
11614"
11615if test "x$ac_cv_have_decl_offsetof" = xyes; then :
11616 ac_have_decl=1
11617else
11618 ac_have_decl=0
11619fi
11620
11621cat >>confdefs.h <<_ACEOF
11622#define HAVE_DECL_OFFSETOF $ac_have_decl
11623_ACEOF
11624
11625
11626# extra bits for select(2)
11627ac_fn_c_check_decl "$LINENO" "howmany" "ac_cv_have_decl_howmany" "
11628#include <sys/param.h>
11629#include <sys/types.h>
11630#ifdef HAVE_SYS_SYSMACROS_H
11631#include <sys/sysmacros.h>
11632#endif
11633#ifdef HAVE_SYS_SELECT_H
11634#include <sys/select.h>
11635#endif
11636#ifdef HAVE_SYS_TIME_H
11637#include <sys/time.h>
11638#endif
11639#ifdef HAVE_UNISTD_H
11640#include <unistd.h>
11641#endif
11642
11643"
11644if test "x$ac_cv_have_decl_howmany" = xyes; then :
11645 ac_have_decl=1
11646else
11647 ac_have_decl=0
11648fi
11649
11650cat >>confdefs.h <<_ACEOF
11651#define HAVE_DECL_HOWMANY $ac_have_decl
11652_ACEOF
11653ac_fn_c_check_decl "$LINENO" "NFDBITS" "ac_cv_have_decl_NFDBITS" "
11654#include <sys/param.h>
11655#include <sys/types.h>
11656#ifdef HAVE_SYS_SYSMACROS_H
11657#include <sys/sysmacros.h>
11658#endif
11659#ifdef HAVE_SYS_SELECT_H
11660#include <sys/select.h>
11661#endif
11662#ifdef HAVE_SYS_TIME_H
11663#include <sys/time.h>
11664#endif
11665#ifdef HAVE_UNISTD_H
11666#include <unistd.h>
11667#endif
11668
11669"
11670if test "x$ac_cv_have_decl_NFDBITS" = xyes; then :
11671 ac_have_decl=1
11672else
11673 ac_have_decl=0
11674fi
11675
11676cat >>confdefs.h <<_ACEOF
11677#define HAVE_DECL_NFDBITS $ac_have_decl
11678_ACEOF
11679
11680ac_fn_c_check_type "$LINENO" "fd_mask" "ac_cv_type_fd_mask" "
11681#include <sys/param.h>
11682#include <sys/types.h>
11683#ifdef HAVE_SYS_SELECT_H
11684#include <sys/select.h>
11685#endif
11686#ifdef HAVE_SYS_TIME_H
11687#include <sys/time.h>
11688#endif
11689#ifdef HAVE_UNISTD_H
11690#include <unistd.h>
11691#endif
11692
11693"
11694if test "x$ac_cv_type_fd_mask" = xyes; then :
11695
11696cat >>confdefs.h <<_ACEOF
11697#define HAVE_FD_MASK 1
11698_ACEOF
11699
11700
11701fi
11702
11703
11704for ac_func in setresuid
11705do :
11706 ac_fn_c_check_func "$LINENO" "setresuid" "ac_cv_func_setresuid"
11707if test "x$ac_cv_func_setresuid" = xyes; then :
11708 cat >>confdefs.h <<_ACEOF
11709#define HAVE_SETRESUID 1
11710_ACEOF
11711
11712 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresuid seems to work" >&5
11713$as_echo_n "checking if setresuid seems to work... " >&6; }
11714 if test "$cross_compiling" = yes; then :
11715 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5
11716$as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;}
11717
11718else
11719 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11720/* end confdefs.h. */
11721
11722#include <stdlib.h>
11723#include <errno.h>
11724
11725int
11726main ()
11727{
11728
11729 errno=0;
11730 setresuid(0,0,0);
11731 if (errno==ENOSYS)
11732 exit(1);
11733 else
11734 exit(0);
11735
11736 ;
11737 return 0;
11738}
11739_ACEOF
11740if ac_fn_c_try_run "$LINENO"; then :
11741 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11742$as_echo "yes" >&6; }
11743else
11744
11745$as_echo "#define BROKEN_SETRESUID 1" >>confdefs.h
11746
11747 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5
11748$as_echo "not implemented" >&6; }
11749fi
11750rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11751 conftest.$ac_objext conftest.beam conftest.$ac_ext
11752fi
11753
11754
11755fi
11756done
11757
11758
11759for ac_func in setresgid
11760do :
11761 ac_fn_c_check_func "$LINENO" "setresgid" "ac_cv_func_setresgid"
11762if test "x$ac_cv_func_setresgid" = xyes; then :
11763 cat >>confdefs.h <<_ACEOF
11764#define HAVE_SETRESGID 1
11765_ACEOF
11766
11767 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresgid seems to work" >&5
11768$as_echo_n "checking if setresgid seems to work... " >&6; }
11769 if test "$cross_compiling" = yes; then :
11770 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5
11771$as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;}
11772
11773else
11774 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11775/* end confdefs.h. */
11776
11777#include <stdlib.h>
11778#include <errno.h>
11779
11780int
11781main ()
11782{
11783
11784 errno=0;
11785 setresgid(0,0,0);
11786 if (errno==ENOSYS)
11787 exit(1);
11788 else
11789 exit(0);
11790
11791 ;
11792 return 0;
11793}
11794_ACEOF
11795if ac_fn_c_try_run "$LINENO"; then :
11796 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11797$as_echo "yes" >&6; }
11798else
11799
11800$as_echo "#define BROKEN_SETRESGID 1" >>confdefs.h
11801
11802 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5
11803$as_echo "not implemented" >&6; }
11804fi
11805rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11806 conftest.$ac_objext conftest.beam conftest.$ac_ext
11807fi
11808
11809
11810fi
11811done
11812
11813
11814for ac_func in realpath
11815do :
11816 ac_fn_c_check_func "$LINENO" "realpath" "ac_cv_func_realpath"
11817if test "x$ac_cv_func_realpath" = xyes; then :
11818 cat >>confdefs.h <<_ACEOF
11819#define HAVE_REALPATH 1
11820_ACEOF
11821
11822 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if realpath works with non-existent files" >&5
11823$as_echo_n "checking if realpath works with non-existent files... " >&6; }
11824 if test "$cross_compiling" = yes; then :
11825 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming working" >&5
11826$as_echo "$as_me: WARNING: cross compiling: assuming working" >&2;}
11827
11828else
11829 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11830/* end confdefs.h. */
11831
11832#include <limits.h>
11833#include <stdlib.h>
11834#include <errno.h>
11835
11836int
11837main ()
11838{
11839
11840 char buf[PATH_MAX];
11841 if (realpath("/opensshnonexistentfilename1234", buf) == NULL)
11842 if (errno == ENOENT)
11843 exit(1);
11844 exit(0);
11845
11846 ;
11847 return 0;
11848}
11849_ACEOF
11850if ac_fn_c_try_run "$LINENO"; then :
11851 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11852$as_echo "yes" >&6; }
11853else
11854
11855$as_echo "#define BROKEN_REALPATH 1" >>confdefs.h
11856
11857 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
11858$as_echo "no" >&6; }
11859fi
11860rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11861 conftest.$ac_objext conftest.beam conftest.$ac_ext
11862fi
11863
11864
11865fi
11866done
11867
11868
11869{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fflush(NULL)" >&5
11870$as_echo_n "checking for working fflush(NULL)... " >&6; }
11871if test "$cross_compiling" = yes; then :
11872 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming working" >&5
11873$as_echo "$as_me: WARNING: cross compiling: assuming working" >&2;}
11874
11875else
11876 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11877/* end confdefs.h. */
11878#include <stdio.h>
11879int
11880main ()
11881{
11882fflush(NULL); exit(0);
11883 ;
11884 return 0;
11885}
11886_ACEOF
11887if ac_fn_c_try_run "$LINENO"; then :
11888 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
11889$as_echo "yes" >&6; }
11890else
11891 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
11892$as_echo "no" >&6; }
11893
11894$as_echo "#define FFLUSH_NULL_BUG 1" >>confdefs.h
11895
11896fi
11897rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
11898 conftest.$ac_objext conftest.beam conftest.$ac_ext
11899fi
11900
11901
11902for ac_func in gettimeofday time
11903do :
11904 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11905ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11906if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11907 cat >>confdefs.h <<_ACEOF
11908#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11909_ACEOF
11910
11911fi
11912done
11913
11914for ac_func in endutent getutent getutid getutline pututline setutent
11915do :
11916 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11917ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11918if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11919 cat >>confdefs.h <<_ACEOF
11920#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11921_ACEOF
11922
11923fi
11924done
11925
11926for ac_func in utmpname
11927do :
11928 ac_fn_c_check_func "$LINENO" "utmpname" "ac_cv_func_utmpname"
11929if test "x$ac_cv_func_utmpname" = xyes; then :
11930 cat >>confdefs.h <<_ACEOF
11931#define HAVE_UTMPNAME 1
11932_ACEOF
11933
11934fi
11935done
11936
11937for ac_func in endutxent getutxent getutxid getutxline getutxuser pututxline
11938do :
11939 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11940ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11941if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11942 cat >>confdefs.h <<_ACEOF
11943#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11944_ACEOF
11945
11946fi
11947done
11948
11949for ac_func in setutxdb setutxent utmpxname
11950do :
11951 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
11952ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
11953if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
11954 cat >>confdefs.h <<_ACEOF
11955#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
11956_ACEOF
11957
11958fi
11959done
11960
11961for ac_func in getlastlogxbyname
11962do :
11963 ac_fn_c_check_func "$LINENO" "getlastlogxbyname" "ac_cv_func_getlastlogxbyname"
11964if test "x$ac_cv_func_getlastlogxbyname" = xyes; then :
11965 cat >>confdefs.h <<_ACEOF
11966#define HAVE_GETLASTLOGXBYNAME 1
11967_ACEOF
11968
11969fi
11970done
11971
11972
11973ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon"
11974if test "x$ac_cv_func_daemon" = xyes; then :
11975
11976$as_echo "#define HAVE_DAEMON 1" >>confdefs.h
11977
11978else
11979 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5
11980$as_echo_n "checking for daemon in -lbsd... " >&6; }
11981if ${ac_cv_lib_bsd_daemon+:} false; then :
11982 $as_echo_n "(cached) " >&6
11983else
11984 ac_check_lib_save_LIBS=$LIBS
11985LIBS="-lbsd $LIBS"
11986cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11987/* end confdefs.h. */
11988
11989/* Override any GCC internal prototype to avoid an error.
11990 Use char because int might match the return type of a GCC
11991 builtin and then its argument prototype would still apply. */
11992#ifdef __cplusplus
11993extern "C"
11994#endif
11995char daemon ();
11996int
11997main ()
11998{
11999return daemon ();
12000 ;
12001 return 0;
12002}
12003_ACEOF
12004if ac_fn_c_try_link "$LINENO"; then :
12005 ac_cv_lib_bsd_daemon=yes
12006else
12007 ac_cv_lib_bsd_daemon=no
12008fi
12009rm -f core conftest.err conftest.$ac_objext \
12010 conftest$ac_exeext conftest.$ac_ext
12011LIBS=$ac_check_lib_save_LIBS
12012fi
12013{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5
12014$as_echo "$ac_cv_lib_bsd_daemon" >&6; }
12015if test "x$ac_cv_lib_bsd_daemon" = xyes; then :
12016 LIBS="$LIBS -lbsd"; $as_echo "#define HAVE_DAEMON 1" >>confdefs.h
12017
12018fi
12019
12020
12021fi
12022
12023
12024ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
12025if test "x$ac_cv_func_getpagesize" = xyes; then :
12026
12027$as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h
12028
12029else
12030 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpagesize in -lucb" >&5
12031$as_echo_n "checking for getpagesize in -lucb... " >&6; }
12032if ${ac_cv_lib_ucb_getpagesize+:} false; then :
12033 $as_echo_n "(cached) " >&6
12034else
12035 ac_check_lib_save_LIBS=$LIBS
12036LIBS="-lucb $LIBS"
12037cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12038/* end confdefs.h. */
12039
12040/* Override any GCC internal prototype to avoid an error.
12041 Use char because int might match the return type of a GCC
12042 builtin and then its argument prototype would still apply. */
12043#ifdef __cplusplus
12044extern "C"
12045#endif
12046char getpagesize ();
12047int
12048main ()
12049{
12050return getpagesize ();
12051 ;
12052 return 0;
12053}
12054_ACEOF
12055if ac_fn_c_try_link "$LINENO"; then :
12056 ac_cv_lib_ucb_getpagesize=yes
12057else
12058 ac_cv_lib_ucb_getpagesize=no
12059fi
12060rm -f core conftest.err conftest.$ac_objext \
12061 conftest$ac_exeext conftest.$ac_ext
12062LIBS=$ac_check_lib_save_LIBS
12063fi
12064{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ucb_getpagesize" >&5
12065$as_echo "$ac_cv_lib_ucb_getpagesize" >&6; }
12066if test "x$ac_cv_lib_ucb_getpagesize" = xyes; then :
12067 LIBS="$LIBS -lucb"; $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h
12068
12069fi
12070
12071
12072fi
12073
12074
12075# Check for broken snprintf
12076if test "x$ac_cv_func_snprintf" = "xyes" ; then
12077 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf correctly terminates long strings" >&5
12078$as_echo_n "checking whether snprintf correctly terminates long strings... " >&6; }
12079 if test "$cross_compiling" = yes; then :
12080 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5
12081$as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;}
12082
12083else
12084 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12085/* end confdefs.h. */
12086 #include <stdio.h>
12087int
12088main ()
12089{
12090
12091 char b[5];
12092 snprintf(b,5,"123456789");
12093 exit(b[4]!='\0');
12094
12095 ;
12096 return 0;
12097}
12098_ACEOF
12099if ac_fn_c_try_run "$LINENO"; then :
12100 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12101$as_echo "yes" >&6; }
12102else
12103
12104 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12105$as_echo "no" >&6; }
12106
12107$as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h
12108
12109 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&5
12110$as_echo "$as_me: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&2;}
12111
12112fi
12113rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12114 conftest.$ac_objext conftest.beam conftest.$ac_ext
12115fi
12116
12117fi
12118
12119if test "x$ac_cv_func_snprintf" = "xyes" ; then
12120 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf understands %zu" >&5
12121$as_echo_n "checking whether snprintf understands %zu... " >&6; }
12122 if test "$cross_compiling" = yes; then :
12123 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5
12124$as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;}
12125
12126else
12127 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12128/* end confdefs.h. */
12129
12130#include <sys/types.h>
12131#include <stdio.h>
12132
12133int
12134main ()
12135{
12136
12137 size_t a = 1, b = 2;
12138 char z[128];
12139 snprintf(z, sizeof z, "%zu%zu", a, b);
12140 exit(strcmp(z, "12"));
12141
12142 ;
12143 return 0;
12144}
12145_ACEOF
12146if ac_fn_c_try_run "$LINENO"; then :
12147 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12148$as_echo "yes" >&6; }
12149else
12150
12151 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12152$as_echo "no" >&6; }
12153
12154$as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h
12155
12156
12157fi
12158rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12159 conftest.$ac_objext conftest.beam conftest.$ac_ext
12160fi
12161
12162fi
12163
12164# We depend on vsnprintf returning the right thing on overflow: the
12165# number of characters it tried to create (as per SUSv3)
12166if test "x$ac_cv_func_vsnprintf" = "xyes" ; then
12167 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether vsnprintf returns correct values on overflow" >&5
12168$as_echo_n "checking whether vsnprintf returns correct values on overflow... " >&6; }
12169 if test "$cross_compiling" = yes; then :
12170 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working vsnprintf()" >&5
12171$as_echo "$as_me: WARNING: cross compiling: Assuming working vsnprintf()" >&2;}
12172
12173else
12174 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12175/* end confdefs.h. */
12176
12177#include <sys/types.h>
12178#include <stdio.h>
12179#include <stdarg.h>
12180
12181int x_snprintf(char *str, size_t count, const char *fmt, ...)
12182{
12183 size_t ret;
12184 va_list ap;
12185
12186 va_start(ap, fmt);
12187 ret = vsnprintf(str, count, fmt, ap);
12188 va_end(ap);
12189 return ret;
12190}
12191
12192int
12193main ()
12194{
12195
12196char x[1];
12197if (x_snprintf(x, 1, "%s %d", "hello", 12345) != 11)
12198 return 1;
12199if (x_snprintf(NULL, 0, "%s %d", "hello", 12345) != 11)
12200 return 1;
12201return 0;
12202
12203 ;
12204 return 0;
12205}
12206_ACEOF
12207if ac_fn_c_try_run "$LINENO"; then :
12208 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12209$as_echo "yes" >&6; }
12210else
12211
12212 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12213$as_echo "no" >&6; }
12214
12215$as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h
12216
12217 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&5
12218$as_echo "$as_me: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&2;}
12219
12220fi
12221rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12222 conftest.$ac_objext conftest.beam conftest.$ac_ext
12223fi
12224
12225fi
12226
12227# On systems where [v]snprintf is broken, but is declared in stdio,
12228# check that the fmt argument is const char * or just char *.
12229# This is only useful for when BROKEN_SNPRINTF
12230{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf can declare const char *fmt" >&5
12231$as_echo_n "checking whether snprintf can declare const char *fmt... " >&6; }
12232cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12233/* end confdefs.h. */
12234
12235#include <stdio.h>
12236int snprintf(char *a, size_t b, const char *c, ...) { return 0; }
12237
12238int
12239main ()
12240{
12241
12242 snprintf(0, 0, 0);
12243
12244 ;
12245 return 0;
12246}
12247_ACEOF
12248if ac_fn_c_try_compile "$LINENO"; then :
12249 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12250$as_echo "yes" >&6; }
12251
12252$as_echo "#define SNPRINTF_CONST const" >>confdefs.h
12253
12254else
12255 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12256$as_echo "no" >&6; }
12257 $as_echo "#define SNPRINTF_CONST /* not const */" >>confdefs.h
12258
12259fi
12260rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12261
12262# Check for missing getpeereid (or equiv) support
12263NO_PEERCHECK=""
12264if test "x$ac_cv_func_getpeereid" != "xyes" -a "x$ac_cv_func_getpeerucred" != "xyes"; then
12265 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system supports SO_PEERCRED getsockopt" >&5
12266$as_echo_n "checking whether system supports SO_PEERCRED getsockopt... " >&6; }
12267 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12268/* end confdefs.h. */
12269
12270#include <sys/types.h>
12271#include <sys/socket.h>
12272int
12273main ()
12274{
12275int i = SO_PEERCRED;
12276 ;
12277 return 0;
12278}
12279_ACEOF
12280if ac_fn_c_try_compile "$LINENO"; then :
12281 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12282$as_echo "yes" >&6; }
12283
12284$as_echo "#define HAVE_SO_PEERCRED 1" >>confdefs.h
12285
12286
12287else
12288 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12289$as_echo "no" >&6; }
12290 NO_PEERCHECK=1
12291
12292fi
12293rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12294fi
12295
12296if test "x$ac_cv_func_mkdtemp" = "xyes" ; then
12297{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for (overly) strict mkstemp" >&5
12298$as_echo_n "checking for (overly) strict mkstemp... " >&6; }
12299if test "$cross_compiling" = yes; then :
12300
12301 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12302$as_echo "yes" >&6; }
12303 $as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h
12304
12305
12306
12307else
12308 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12309/* end confdefs.h. */
12310
12311#include <stdlib.h>
12312
12313int
12314main ()
12315{
12316
12317 char template[]="conftest.mkstemp-test";
12318 if (mkstemp(template) == -1)
12319 exit(1);
12320 unlink(template);
12321 exit(0);
12322
12323 ;
12324 return 0;
12325}
12326_ACEOF
12327if ac_fn_c_try_run "$LINENO"; then :
12328
12329 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12330$as_echo "no" >&6; }
12331
12332else
12333
12334 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12335$as_echo "yes" >&6; }
12336
12337$as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h
12338
12339
12340fi
12341rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12342 conftest.$ac_objext conftest.beam conftest.$ac_ext
12343fi
12344
12345fi
12346
12347if test ! -z "$check_for_openpty_ctty_bug"; then
12348 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if openpty correctly handles controlling tty" >&5
12349$as_echo_n "checking if openpty correctly handles controlling tty... " >&6; }
12350 if test "$cross_compiling" = yes; then :
12351
12352 { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5
12353$as_echo "cross-compiling, assuming yes" >&6; }
12354
12355
12356else
12357 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12358/* end confdefs.h. */
12359
12360#include <stdio.h>
12361#include <sys/fcntl.h>
12362#include <sys/types.h>
12363#include <sys/wait.h>
12364
12365int
12366main ()
12367{
12368
12369 pid_t pid;
12370 int fd, ptyfd, ttyfd, status;
12371
12372 pid = fork();
12373 if (pid < 0) { /* failed */
12374 exit(1);
12375 } else if (pid > 0) { /* parent */
12376 waitpid(pid, &status, 0);
12377 if (WIFEXITED(status))
12378 exit(WEXITSTATUS(status));
12379 else
12380 exit(2);
12381 } else { /* child */
12382 close(0); close(1); close(2);
12383 setsid();
12384 openpty(&ptyfd, &ttyfd, NULL, NULL, NULL);
12385 fd = open("/dev/tty", O_RDWR | O_NOCTTY);
12386 if (fd >= 0)
12387 exit(3); /* Acquired ctty: broken */
12388 else
12389 exit(0); /* Did not acquire ctty: OK */
12390 }
12391
12392 ;
12393 return 0;
12394}
12395_ACEOF
12396if ac_fn_c_try_run "$LINENO"; then :
12397
12398 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12399$as_echo "yes" >&6; }
12400
12401else
12402
12403 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12404$as_echo "no" >&6; }
12405 $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h
12406
12407
12408fi
12409rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12410 conftest.$ac_objext conftest.beam conftest.$ac_ext
12411fi
12412
12413fi
12414
12415if test "x$ac_cv_func_getaddrinfo" = "xyes" && \
12416 test "x$check_for_hpux_broken_getaddrinfo" = "x1"; then
12417 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
12418$as_echo_n "checking if getaddrinfo seems to work... " >&6; }
12419 if test "$cross_compiling" = yes; then :
12420
12421 { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5
12422$as_echo "cross-compiling, assuming yes" >&6; }
12423
12424
12425else
12426 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12427/* end confdefs.h. */
12428
12429#include <stdio.h>
12430#include <sys/socket.h>
12431#include <netdb.h>
12432#include <errno.h>
12433#include <netinet/in.h>
12434
12435#define TEST_PORT "2222"
12436
12437int
12438main ()
12439{
12440
12441 int err, sock;
12442 struct addrinfo *gai_ai, *ai, hints;
12443 char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL;
12444
12445 memset(&hints, 0, sizeof(hints));
12446 hints.ai_family = PF_UNSPEC;
12447 hints.ai_socktype = SOCK_STREAM;
12448 hints.ai_flags = AI_PASSIVE;
12449
12450 err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai);
12451 if (err != 0) {
12452 fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err));
12453 exit(1);
12454 }
12455
12456 for (ai = gai_ai; ai != NULL; ai = ai->ai_next) {
12457 if (ai->ai_family != AF_INET6)
12458 continue;
12459
12460 err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop,
12461 sizeof(ntop), strport, sizeof(strport),
12462 NI_NUMERICHOST|NI_NUMERICSERV);
12463
12464 if (err != 0) {
12465 if (err == EAI_SYSTEM)
12466 perror("getnameinfo EAI_SYSTEM");
12467 else
12468 fprintf(stderr, "getnameinfo failed: %s\n",
12469 gai_strerror(err));
12470 exit(2);
12471 }
12472
12473 sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
12474 if (sock < 0)
12475 perror("socket");
12476 if (bind(sock, ai->ai_addr, ai->ai_addrlen) < 0) {
12477 if (errno == EBADF)
12478 exit(3);
12479 }
12480 }
12481 exit(0);
12482
12483 ;
12484 return 0;
12485}
12486_ACEOF
12487if ac_fn_c_try_run "$LINENO"; then :
12488
12489 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12490$as_echo "yes" >&6; }
12491
12492else
12493
12494 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12495$as_echo "no" >&6; }
12496 $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
12497
12498
12499fi
12500rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12501 conftest.$ac_objext conftest.beam conftest.$ac_ext
12502fi
12503
12504fi
12505
12506if test "x$ac_cv_func_getaddrinfo" = "xyes" && \
12507 test "x$check_for_aix_broken_getaddrinfo" = "x1"; then
12508 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
12509$as_echo_n "checking if getaddrinfo seems to work... " >&6; }
12510 if test "$cross_compiling" = yes; then :
12511
12512 { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming no" >&5
12513$as_echo "cross-compiling, assuming no" >&6; }
12514
12515
12516else
12517 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12518/* end confdefs.h. */
12519
12520#include <stdio.h>
12521#include <sys/socket.h>
12522#include <netdb.h>
12523#include <errno.h>
12524#include <netinet/in.h>
12525
12526#define TEST_PORT "2222"
12527
12528int
12529main ()
12530{
12531
12532 int err, sock;
12533 struct addrinfo *gai_ai, *ai, hints;
12534 char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL;
12535
12536 memset(&hints, 0, sizeof(hints));
12537 hints.ai_family = PF_UNSPEC;
12538 hints.ai_socktype = SOCK_STREAM;
12539 hints.ai_flags = AI_PASSIVE;
12540
12541 err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai);
12542 if (err != 0) {
12543 fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err));
12544 exit(1);
12545 }
12546
12547 for (ai = gai_ai; ai != NULL; ai = ai->ai_next) {
12548 if (ai->ai_family != AF_INET && ai->ai_family != AF_INET6)
12549 continue;
12550
12551 err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop,
12552 sizeof(ntop), strport, sizeof(strport),
12553 NI_NUMERICHOST|NI_NUMERICSERV);
12554
12555 if (ai->ai_family == AF_INET && err != 0) {
12556 perror("getnameinfo");
12557 exit(2);
12558 }
12559 }
12560 exit(0);
12561
12562 ;
12563 return 0;
12564}
12565_ACEOF
12566if ac_fn_c_try_run "$LINENO"; then :
12567
12568 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12569$as_echo "yes" >&6; }
12570
12571$as_echo "#define AIX_GETNAMEINFO_HACK 1" >>confdefs.h
12572
12573
12574else
12575
12576 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12577$as_echo "no" >&6; }
12578 $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h
12579
12580
12581fi
12582rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12583 conftest.$ac_objext conftest.beam conftest.$ac_ext
12584fi
12585
12586fi
12587
12588if test "x$ac_cv_func_getaddrinfo" = "xyes"; then
12589 ac_fn_c_check_decl "$LINENO" "AI_NUMERICSERV" "ac_cv_have_decl_AI_NUMERICSERV" "#include <sys/types.h>
12590 #include <sys/socket.h>
12591 #include <netdb.h>
12592"
12593if test "x$ac_cv_have_decl_AI_NUMERICSERV" = xyes; then :
12594 ac_have_decl=1
12595else
12596 ac_have_decl=0
12597fi
12598
12599cat >>confdefs.h <<_ACEOF
12600#define HAVE_DECL_AI_NUMERICSERV $ac_have_decl
12601_ACEOF
12602
12603fi
12604
12605if test "x$check_for_conflicting_getspnam" = "x1"; then
12606 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for conflicting getspnam in shadow.h" >&5
12607$as_echo_n "checking for conflicting getspnam in shadow.h... " >&6; }
12608 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12609/* end confdefs.h. */
12610 #include <shadow.h>
12611int
12612main ()
12613{
12614 exit(0);
12615 ;
12616 return 0;
12617}
12618_ACEOF
12619if ac_fn_c_try_compile "$LINENO"; then :
12620
12621 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12622$as_echo "no" >&6; }
12623
12624else
12625
12626 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12627$as_echo "yes" >&6; }
12628
12629$as_echo "#define GETSPNAM_CONFLICTING_DEFS 1" >>confdefs.h
12630
12631
12632
12633fi
12634rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12635fi
12636
12637if test "x$ac_cv_func_strnvis" = "xyes"; then
12638 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strnvis" >&5
12639$as_echo_n "checking for working strnvis... " >&6; }
12640 if test "$cross_compiling" = yes; then :
12641 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming broken" >&5
12642$as_echo "$as_me: WARNING: cross compiling: assuming broken" >&2;}
12643
12644$as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h
12645
12646
12647else
12648 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12649/* end confdefs.h. */
12650
12651#include <signal.h>
12652#include <stdlib.h>
12653#include <string.h>
12654#include <vis.h>
12655static void sighandler(int sig) { _exit(1); }
12656
12657int
12658main ()
12659{
12660
12661 char dst[16];
12662
12663 signal(SIGSEGV, sighandler);
12664 if (strnvis(dst, "src", 4, 0) && strcmp(dst, "src") == 0)
12665 exit(0);
12666 exit(1)
12667
12668 ;
12669 return 0;
12670}
12671_ACEOF
12672if ac_fn_c_try_run "$LINENO"; then :
12673 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12674$as_echo "yes" >&6; }
12675else
12676 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12677$as_echo "no" >&6; }
12678
12679$as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h
12680
12681fi
12682rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12683 conftest.$ac_objext conftest.beam conftest.$ac_ext
12684fi
12685
12686fi
12687
12688for ac_func in getpgrp
12689do :
12690 ac_fn_c_check_func "$LINENO" "getpgrp" "ac_cv_func_getpgrp"
12691if test "x$ac_cv_func_getpgrp" = xyes; then :
12692 cat >>confdefs.h <<_ACEOF
12693#define HAVE_GETPGRP 1
12694_ACEOF
12695
12696 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpgrp accepts zero args" >&5
12697$as_echo_n "checking if getpgrp accepts zero args... " >&6; }
12698 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12699/* end confdefs.h. */
12700$ac_includes_default
12701int
12702main ()
12703{
12704 getpgrp();
12705 ;
12706 return 0;
12707}
12708_ACEOF
12709if ac_fn_c_try_compile "$LINENO"; then :
12710 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12711$as_echo "yes" >&6; }
12712
12713$as_echo "#define GETPGRP_VOID 1" >>confdefs.h
12714
12715else
12716 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12717$as_echo "no" >&6; }
12718
12719$as_echo "#define GETPGRP_VOID 0" >>confdefs.h
12720
12721
12722fi
12723rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12724
12725fi
12726done
12727
12728
12729# Search for OpenSSL
12730saved_CPPFLAGS="$CPPFLAGS"
12731saved_LDFLAGS="$LDFLAGS"
12732
12733# Check whether --with-ssl-dir was given.
12734if test "${with_ssl_dir+set}" = set; then :
12735 withval=$with_ssl_dir;
12736 if test "x$openssl" = "xno" ; then
12737 as_fn_error $? "cannot use --with-ssl-dir when OpenSSL disabled" "$LINENO" 5
12738 fi
12739 if test "x$withval" != "xno" ; then
12740 case "$withval" in
12741 # Relative paths
12742 ./*|../*) withval="`pwd`/$withval"
12743 esac
12744 if test -d "$withval/lib"; then
12745 if test -n "${need_dash_r}"; then
12746 LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}"
12747 else
12748 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
12749 fi
12750 elif test -d "$withval/lib64"; then
12751 if test -n "${need_dash_r}"; then
12752 LDFLAGS="-L${withval}/lib64 -R${withval}/lib64 ${LDFLAGS}"
12753 else
12754 LDFLAGS="-L${withval}/lib64 ${LDFLAGS}"
12755 fi
12756 else
12757 if test -n "${need_dash_r}"; then
12758 LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}"
12759 else
12760 LDFLAGS="-L${withval} ${LDFLAGS}"
12761 fi
12762 fi
12763 if test -d "$withval/include"; then
12764 CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
12765 else
12766 CPPFLAGS="-I${withval} ${CPPFLAGS}"
12767 fi
12768 fi
12769
12770
12771fi
12772
12773
12774
12775# Check whether --with-openssl-header-check was given.
12776if test "${with_openssl_header_check+set}" = set; then :
12777 withval=$with_openssl_header_check;
12778 if test "x$withval" = "xno" ; then
12779 openssl_check_nonfatal=1
12780 fi
12781
12782
12783fi
12784
12785
12786openssl_engine=no
12787
12788# Check whether --with-ssl-engine was given.
12789if test "${with_ssl_engine+set}" = set; then :
12790 withval=$with_ssl_engine;
12791 if test "x$withval" != "xno" ; then
12792 if test "x$openssl" = "xno" ; then
12793 as_fn_error $? "cannot use --with-ssl-engine when OpenSSL disabled" "$LINENO" 5
12794 fi
12795 openssl_engine=yes
12796 fi
12797
12798
12799fi
12800
12801
12802if test "x$openssl" = "xyes" ; then
12803 LIBS="-lcrypto $LIBS"
12804 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12805/* end confdefs.h. */
12806
12807/* Override any GCC internal prototype to avoid an error.
12808 Use char because int might match the return type of a GCC
12809 builtin and then its argument prototype would still apply. */
12810#ifdef __cplusplus
12811extern "C"
12812#endif
12813char RAND_add ();
12814int
12815main ()
12816{
12817return RAND_add ();
12818 ;
12819 return 0;
12820}
12821_ACEOF
12822if ac_fn_c_try_link "$LINENO"; then :
12823
12824$as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
12825
12826else
12827
12828 if test -n "${need_dash_r}"; then
12829 LDFLAGS="-L/usr/local/ssl/lib -R/usr/local/ssl/lib ${saved_LDFLAGS}"
12830 else
12831 LDFLAGS="-L/usr/local/ssl/lib ${saved_LDFLAGS}"
12832 fi
12833 CPPFLAGS="-I/usr/local/ssl/include ${saved_CPPFLAGS}"
12834 ac_fn_c_check_header_mongrel "$LINENO" "openssl/opensslv.h" "ac_cv_header_openssl_opensslv_h" "$ac_includes_default"
12835if test "x$ac_cv_header_openssl_opensslv_h" = xyes; then :
12836
12837else
12838 as_fn_error $? "*** OpenSSL headers missing - please install first or check config.log ***" "$LINENO" 5
12839fi
12840
12841
12842 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12843/* end confdefs.h. */
12844
12845/* Override any GCC internal prototype to avoid an error.
12846 Use char because int might match the return type of a GCC
12847 builtin and then its argument prototype would still apply. */
12848#ifdef __cplusplus
12849extern "C"
12850#endif
12851char RAND_add ();
12852int
12853main ()
12854{
12855return RAND_add ();
12856 ;
12857 return 0;
12858}
12859_ACEOF
12860if ac_fn_c_try_link "$LINENO"; then :
12861 $as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
12862
12863else
12864
12865 as_fn_error $? "*** Can't find recent OpenSSL libcrypto (see config.log for details) ***" "$LINENO" 5
12866
12867
12868fi
12869rm -f core conftest.err conftest.$ac_objext \
12870 conftest$ac_exeext conftest.$ac_ext
12871
12872
12873fi
12874rm -f core conftest.err conftest.$ac_objext \
12875 conftest$ac_exeext conftest.$ac_ext
12876
12877 # Determine OpenSSL header version
12878 { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL header version" >&5
12879$as_echo_n "checking OpenSSL header version... " >&6; }
12880 if test "$cross_compiling" = yes; then :
12881
12882 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5
12883$as_echo "$as_me: WARNING: cross compiling: not checking" >&2;}
12884
12885
12886else
12887 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12888/* end confdefs.h. */
12889
12890 #include <stdlib.h>
12891 #include <stdio.h>
12892 #include <string.h>
12893 #include <openssl/opensslv.h>
12894 #define DATA "conftest.sslincver"
12895
12896int
12897main ()
12898{
12899
12900 FILE *fd;
12901 int rc;
12902
12903 fd = fopen(DATA,"w");
12904 if(fd == NULL)
12905 exit(1);
12906
12907 if ((rc = fprintf(fd, "%08lx (%s)\n",
12908 (unsigned long)OPENSSL_VERSION_NUMBER,
12909 OPENSSL_VERSION_TEXT)) < 0)
12910 exit(1);
12911
12912 exit(0);
12913
12914 ;
12915 return 0;
12916}
12917_ACEOF
12918if ac_fn_c_try_run "$LINENO"; then :
12919
12920 ssl_header_ver=`cat conftest.sslincver`
12921 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_header_ver" >&5
12922$as_echo "$ssl_header_ver" >&6; }
12923
12924else
12925
12926 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
12927$as_echo "not found" >&6; }
12928 as_fn_error $? "OpenSSL version header not found." "$LINENO" 5
12929
12930fi
12931rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
12932 conftest.$ac_objext conftest.beam conftest.$ac_ext
12933fi
12934
12935
12936 # Determine OpenSSL library version
12937 { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL library version" >&5
12938$as_echo_n "checking OpenSSL library version... " >&6; }
12939 if test "$cross_compiling" = yes; then :
12940
12941 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5
12942$as_echo "$as_me: WARNING: cross compiling: not checking" >&2;}
12943
12944
12945else
12946 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12947/* end confdefs.h. */
12948
12949 #include <stdio.h>
12950 #include <string.h>
12951 #include <openssl/opensslv.h>
12952 #include <openssl/crypto.h>
12953 #define DATA "conftest.ssllibver"
12954
12955int
12956main ()
12957{
12958
12959 FILE *fd;
12960 int rc;
12961
12962 fd = fopen(DATA,"w");
12963 if(fd == NULL)
12964 exit(1);
12965
12966 if ((rc = fprintf(fd, "%08lx (%s)\n", (unsigned long)SSLeay(),
12967 SSLeay_version(SSLEAY_VERSION))) < 0)
12968 exit(1);
12969
12970 exit(0);
12971
12972 ;
12973 return 0;
12974}
12975_ACEOF
12976if ac_fn_c_try_run "$LINENO"; then :
12977
12978 ssl_library_ver=`cat conftest.ssllibver`
12979 # Check version is supported.
12980 case "$ssl_library_ver" in
12981 10000*|0*)
12982 as_fn_error $? "OpenSSL >= 1.0.1 required (have \"$ssl_library_ver\")" "$LINENO" 5
12983 ;;
12984 100*) ;; # 1.0.x
12985 1010000123456*)
12986 # https://github.com/openssl/openssl/pull/4613
12987 as_fn_error $? "OpenSSL 1.1.x versions prior to 1.1.0g have a bug that breaks their use with OpenSSH (have \"$ssl_library_ver\")" "$LINENO" 5
12988 ;;
12989 101*) ;; # 1.1.x
12990 200*) ;; # LibreSSL
12991 *)
12992 as_fn_error $? "OpenSSL > 1.1.x is not yet supported (have \"$ssl_library_ver\")" "$LINENO" 5
12993 ;;
12994 esac
12995 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_library_ver" >&5
12996$as_echo "$ssl_library_ver" >&6; }
12997
12998else
12999
13000 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
13001$as_echo "not found" >&6; }
13002 as_fn_error $? "OpenSSL library not found." "$LINENO" 5
13003
13004fi
13005rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13006 conftest.$ac_objext conftest.beam conftest.$ac_ext
13007fi
13008
13009
13010 # Sanity check OpenSSL headers
13011 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's headers match the library" >&5
13012$as_echo_n "checking whether OpenSSL's headers match the library... " >&6; }
13013 if test "$cross_compiling" = yes; then :
13014
13015 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5
13016$as_echo "$as_me: WARNING: cross compiling: not checking" >&2;}
13017
13018
13019else
13020 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13021/* end confdefs.h. */
13022
13023 #include <string.h>
13024 #include <openssl/opensslv.h>
13025 #include <openssl/crypto.h>
13026
13027int
13028main ()
13029{
13030
13031 exit(SSLeay() == OPENSSL_VERSION_NUMBER ? 0 : 1);
13032
13033 ;
13034 return 0;
13035}
13036_ACEOF
13037if ac_fn_c_try_run "$LINENO"; then :
13038
13039 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13040$as_echo "yes" >&6; }
13041
13042else
13043
13044 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13045$as_echo "no" >&6; }
13046 if test "x$openssl_check_nonfatal" = "x"; then
13047 as_fn_error $? "Your OpenSSL headers do not match your
13048 library. Check config.log for details.
13049 If you are sure your installation is consistent, you can disable the check
13050 by running \"./configure --without-openssl-header-check\".
13051 Also see contrib/findssl.sh for help identifying header/library mismatches.
13052 " "$LINENO" 5
13053 else
13054 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Your OpenSSL headers do not match your
13055 library. Check config.log for details.
13056 Also see contrib/findssl.sh for help identifying header/library mismatches." >&5
13057$as_echo "$as_me: WARNING: Your OpenSSL headers do not match your
13058 library. Check config.log for details.
13059 Also see contrib/findssl.sh for help identifying header/library mismatches." >&2;}
13060 fi
13061
13062fi
13063rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
13064 conftest.$ac_objext conftest.beam conftest.$ac_ext
13065fi
13066
13067
13068 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL functions will link" >&5
13069$as_echo_n "checking if programs using OpenSSL functions will link... " >&6; }
13070 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13071/* end confdefs.h. */
13072 #include <openssl/evp.h>
13073int
13074main ()
13075{
13076 SSLeay_add_all_algorithms();
13077 ;
13078 return 0;
13079}
13080_ACEOF
13081if ac_fn_c_try_link "$LINENO"; then :
13082
13083 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13084$as_echo "yes" >&6; }
13085
13086else
13087
13088 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13089$as_echo "no" >&6; }
13090 saved_LIBS="$LIBS"
13091 LIBS="$LIBS -ldl"
13092 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL need -ldl" >&5
13093$as_echo_n "checking if programs using OpenSSL need -ldl... " >&6; }
13094 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13095/* end confdefs.h. */
13096 #include <openssl/evp.h>
13097int
13098main ()
13099{
13100 SSLeay_add_all_algorithms();
13101 ;
13102 return 0;
13103}
13104_ACEOF
13105if ac_fn_c_try_link "$LINENO"; then :
13106
13107 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13108$as_echo "yes" >&6; }
13109
13110else
13111
13112 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13113$as_echo "no" >&6; }
13114 LIBS="$saved_LIBS"
13115
13116
13117fi
13118rm -f core conftest.err conftest.$ac_objext \
13119 conftest$ac_exeext conftest.$ac_ext
13120
13121
13122fi
13123rm -f core conftest.err conftest.$ac_objext \
13124 conftest$ac_exeext conftest.$ac_ext
13125
13126 for ac_func in \
13127 BN_is_prime_ex \
13128 DSA_generate_parameters_ex \
13129 EVP_DigestInit_ex \
13130 EVP_DigestFinal_ex \
13131 EVP_MD_CTX_init \
13132 EVP_MD_CTX_cleanup \
13133 EVP_MD_CTX_copy_ex \
13134 HMAC_CTX_init \
13135 RSA_generate_key_ex \
13136 RSA_get_default_method \
13137
13138do :
13139 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
13140ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
13141if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
13142 cat >>confdefs.h <<_ACEOF
13143#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
13144_ACEOF
13145
13146fi
13147done
13148
13149
13150 if test "x$openssl_engine" = "xyes" ; then
13151 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL ENGINE support" >&5
13152$as_echo_n "checking for OpenSSL ENGINE support... " >&6; }
13153 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13154/* end confdefs.h. */
13155
13156 #include <openssl/engine.h>
13157
13158int
13159main ()
13160{
13161
13162 ENGINE_load_builtin_engines();
13163 ENGINE_register_all_complete();
13164
13165 ;
13166 return 0;
13167}
13168_ACEOF
13169if ac_fn_c_try_compile "$LINENO"; then :
13170 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13171$as_echo "yes" >&6; }
13172
13173$as_echo "#define USE_OPENSSL_ENGINE 1" >>confdefs.h
13174
13175
13176else
13177 as_fn_error $? "OpenSSL ENGINE support not found" "$LINENO" 5
13178
13179fi
13180rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13181 fi
13182
13183 # Check for OpenSSL without EVP_aes_{192,256}_cbc
13184 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has crippled AES support" >&5
13185$as_echo_n "checking whether OpenSSL has crippled AES support... " >&6; }
13186 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13187/* end confdefs.h. */
13188
13189 #include <string.h>
13190 #include <openssl/evp.h>
13191
13192int
13193main ()
13194{
13195
13196 exit(EVP_aes_192_cbc() == NULL || EVP_aes_256_cbc() == NULL);
13197
13198 ;
13199 return 0;
13200}
13201_ACEOF
13202if ac_fn_c_try_link "$LINENO"; then :
13203
13204 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13205$as_echo "no" >&6; }
13206
13207else
13208
13209 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13210$as_echo "yes" >&6; }
13211
13212$as_echo "#define OPENSSL_LOBOTOMISED_AES 1" >>confdefs.h
13213
13214
13215
13216fi
13217rm -f core conftest.err conftest.$ac_objext \
13218 conftest$ac_exeext conftest.$ac_ext
13219
13220 # Check for OpenSSL with EVP_aes_*ctr
13221 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES CTR via EVP" >&5
13222$as_echo_n "checking whether OpenSSL has AES CTR via EVP... " >&6; }
13223 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13224/* end confdefs.h. */
13225
13226 #include <string.h>
13227 #include <openssl/evp.h>
13228
13229int
13230main ()
13231{
13232
13233 exit(EVP_aes_128_ctr() == NULL ||
13234 EVP_aes_192_cbc() == NULL ||
13235 EVP_aes_256_cbc() == NULL);
13236
13237 ;
13238 return 0;
13239}
13240_ACEOF
13241if ac_fn_c_try_link "$LINENO"; then :
13242
13243 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13244$as_echo "yes" >&6; }
13245
13246$as_echo "#define OPENSSL_HAVE_EVPCTR 1" >>confdefs.h
13247
13248
13249else
13250
13251 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13252$as_echo "no" >&6; }
13253
13254
13255fi
13256rm -f core conftest.err conftest.$ac_objext \
13257 conftest$ac_exeext conftest.$ac_ext
13258
13259 # Check for OpenSSL with EVP_aes_*gcm
13260 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES GCM via EVP" >&5
13261$as_echo_n "checking whether OpenSSL has AES GCM via EVP... " >&6; }
13262 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13263/* end confdefs.h. */
13264
13265 #include <string.h>
13266 #include <openssl/evp.h>
13267
13268int
13269main ()
13270{
13271
13272 exit(EVP_aes_128_gcm() == NULL ||
13273 EVP_aes_256_gcm() == NULL ||
13274 EVP_CTRL_GCM_SET_IV_FIXED == 0 ||
13275 EVP_CTRL_GCM_IV_GEN == 0 ||
13276 EVP_CTRL_GCM_SET_TAG == 0 ||
13277 EVP_CTRL_GCM_GET_TAG == 0 ||
13278 EVP_CIPHER_CTX_ctrl(NULL, 0, 0, NULL) == 0);
13279
13280 ;
13281 return 0;
13282}
13283_ACEOF
13284if ac_fn_c_try_link "$LINENO"; then :
13285
13286 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13287$as_echo "yes" >&6; }
13288
13289$as_echo "#define OPENSSL_HAVE_EVPGCM 1" >>confdefs.h
13290
13291
13292else
13293
13294 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13295$as_echo "no" >&6; }
13296 unsupported_algorithms="$unsupported_cipers \
13297 aes128-gcm@openssh.com \
13298 aes256-gcm@openssh.com"
13299
13300
13301fi
13302rm -f core conftest.err conftest.$ac_objext \
13303 conftest$ac_exeext conftest.$ac_ext
13304
13305 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_ctrl" >&5
13306$as_echo_n "checking for library containing EVP_CIPHER_CTX_ctrl... " >&6; }
13307if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
13308 $as_echo_n "(cached) " >&6
13309else
13310 ac_func_search_save_LIBS=$LIBS
13311cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13312/* end confdefs.h. */
13313
13314/* Override any GCC internal prototype to avoid an error.
13315 Use char because int might match the return type of a GCC
13316 builtin and then its argument prototype would still apply. */
13317#ifdef __cplusplus
13318extern "C"
13319#endif
13320char EVP_CIPHER_CTX_ctrl ();
13321int
13322main ()
13323{
13324return EVP_CIPHER_CTX_ctrl ();
13325 ;
13326 return 0;
13327}
13328_ACEOF
13329for ac_lib in '' crypto; do
13330 if test -z "$ac_lib"; then
13331 ac_res="none required"
13332 else
13333 ac_res=-l$ac_lib
13334 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13335 fi
13336 if ac_fn_c_try_link "$LINENO"; then :
13337 ac_cv_search_EVP_CIPHER_CTX_ctrl=$ac_res
13338fi
13339rm -f core conftest.err conftest.$ac_objext \
13340 conftest$ac_exeext
13341 if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
13342 break
13343fi
13344done
13345if ${ac_cv_search_EVP_CIPHER_CTX_ctrl+:} false; then :
13346
13347else
13348 ac_cv_search_EVP_CIPHER_CTX_ctrl=no
13349fi
13350rm conftest.$ac_ext
13351LIBS=$ac_func_search_save_LIBS
13352fi
13353{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_ctrl" >&5
13354$as_echo "$ac_cv_search_EVP_CIPHER_CTX_ctrl" >&6; }
13355ac_res=$ac_cv_search_EVP_CIPHER_CTX_ctrl
13356if test "$ac_res" != no; then :
13357 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13358
13359$as_echo "#define HAVE_EVP_CIPHER_CTX_CTRL 1" >>confdefs.h
13360
13361fi
13362
13363
13364 # LibreSSL/OpenSSL 1.1x API
13365 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DH_get0_key" >&5
13366$as_echo_n "checking for library containing DH_get0_key... " >&6; }
13367if ${ac_cv_search_DH_get0_key+:} false; then :
13368 $as_echo_n "(cached) " >&6
13369else
13370 ac_func_search_save_LIBS=$LIBS
13371cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13372/* end confdefs.h. */
13373
13374/* Override any GCC internal prototype to avoid an error.
13375 Use char because int might match the return type of a GCC
13376 builtin and then its argument prototype would still apply. */
13377#ifdef __cplusplus
13378extern "C"
13379#endif
13380char DH_get0_key ();
13381int
13382main ()
13383{
13384return DH_get0_key ();
13385 ;
13386 return 0;
13387}
13388_ACEOF
13389for ac_lib in '' crypto; do
13390 if test -z "$ac_lib"; then
13391 ac_res="none required"
13392 else
13393 ac_res=-l$ac_lib
13394 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13395 fi
13396 if ac_fn_c_try_link "$LINENO"; then :
13397 ac_cv_search_DH_get0_key=$ac_res
13398fi
13399rm -f core conftest.err conftest.$ac_objext \
13400 conftest$ac_exeext
13401 if ${ac_cv_search_DH_get0_key+:} false; then :
13402 break
13403fi
13404done
13405if ${ac_cv_search_DH_get0_key+:} false; then :
13406
13407else
13408 ac_cv_search_DH_get0_key=no
13409fi
13410rm conftest.$ac_ext
13411LIBS=$ac_func_search_save_LIBS
13412fi
13413{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DH_get0_key" >&5
13414$as_echo "$ac_cv_search_DH_get0_key" >&6; }
13415ac_res=$ac_cv_search_DH_get0_key
13416if test "$ac_res" != no; then :
13417 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13418
13419$as_echo "#define HAVE_DH_GET0_KEY 1" >>confdefs.h
13420
13421fi
13422
13423 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DH_get0_pqg" >&5
13424$as_echo_n "checking for library containing DH_get0_pqg... " >&6; }
13425if ${ac_cv_search_DH_get0_pqg+:} false; then :
13426 $as_echo_n "(cached) " >&6
13427else
13428 ac_func_search_save_LIBS=$LIBS
13429cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13430/* end confdefs.h. */
13431
13432/* Override any GCC internal prototype to avoid an error.
13433 Use char because int might match the return type of a GCC
13434 builtin and then its argument prototype would still apply. */
13435#ifdef __cplusplus
13436extern "C"
13437#endif
13438char DH_get0_pqg ();
13439int
13440main ()
13441{
13442return DH_get0_pqg ();
13443 ;
13444 return 0;
13445}
13446_ACEOF
13447for ac_lib in '' crypto; do
13448 if test -z "$ac_lib"; then
13449 ac_res="none required"
13450 else
13451 ac_res=-l$ac_lib
13452 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13453 fi
13454 if ac_fn_c_try_link "$LINENO"; then :
13455 ac_cv_search_DH_get0_pqg=$ac_res
13456fi
13457rm -f core conftest.err conftest.$ac_objext \
13458 conftest$ac_exeext
13459 if ${ac_cv_search_DH_get0_pqg+:} false; then :
13460 break
13461fi
13462done
13463if ${ac_cv_search_DH_get0_pqg+:} false; then :
13464
13465else
13466 ac_cv_search_DH_get0_pqg=no
13467fi
13468rm conftest.$ac_ext
13469LIBS=$ac_func_search_save_LIBS
13470fi
13471{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DH_get0_pqg" >&5
13472$as_echo "$ac_cv_search_DH_get0_pqg" >&6; }
13473ac_res=$ac_cv_search_DH_get0_pqg
13474if test "$ac_res" != no; then :
13475 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13476
13477$as_echo "#define HAVE_DH_GET0_PQG 1" >>confdefs.h
13478
13479fi
13480
13481 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DH_set0_key" >&5
13482$as_echo_n "checking for library containing DH_set0_key... " >&6; }
13483if ${ac_cv_search_DH_set0_key+:} false; then :
13484 $as_echo_n "(cached) " >&6
13485else
13486 ac_func_search_save_LIBS=$LIBS
13487cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13488/* end confdefs.h. */
13489
13490/* Override any GCC internal prototype to avoid an error.
13491 Use char because int might match the return type of a GCC
13492 builtin and then its argument prototype would still apply. */
13493#ifdef __cplusplus
13494extern "C"
13495#endif
13496char DH_set0_key ();
13497int
13498main ()
13499{
13500return DH_set0_key ();
13501 ;
13502 return 0;
13503}
13504_ACEOF
13505for ac_lib in '' crypto; do
13506 if test -z "$ac_lib"; then
13507 ac_res="none required"
13508 else
13509 ac_res=-l$ac_lib
13510 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13511 fi
13512 if ac_fn_c_try_link "$LINENO"; then :
13513 ac_cv_search_DH_set0_key=$ac_res
13514fi
13515rm -f core conftest.err conftest.$ac_objext \
13516 conftest$ac_exeext
13517 if ${ac_cv_search_DH_set0_key+:} false; then :
13518 break
13519fi
13520done
13521if ${ac_cv_search_DH_set0_key+:} false; then :
13522
13523else
13524 ac_cv_search_DH_set0_key=no
13525fi
13526rm conftest.$ac_ext
13527LIBS=$ac_func_search_save_LIBS
13528fi
13529{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DH_set0_key" >&5
13530$as_echo "$ac_cv_search_DH_set0_key" >&6; }
13531ac_res=$ac_cv_search_DH_set0_key
13532if test "$ac_res" != no; then :
13533 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13534
13535$as_echo "#define HAVE_DH_SET0_KEY 1" >>confdefs.h
13536
13537fi
13538
13539 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DH_set_length" >&5
13540$as_echo_n "checking for library containing DH_set_length... " >&6; }
13541if ${ac_cv_search_DH_set_length+:} false; then :
13542 $as_echo_n "(cached) " >&6
13543else
13544 ac_func_search_save_LIBS=$LIBS
13545cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13546/* end confdefs.h. */
13547
13548/* Override any GCC internal prototype to avoid an error.
13549 Use char because int might match the return type of a GCC
13550 builtin and then its argument prototype would still apply. */
13551#ifdef __cplusplus
13552extern "C"
13553#endif
13554char DH_set_length ();
13555int
13556main ()
13557{
13558return DH_set_length ();
13559 ;
13560 return 0;
13561}
13562_ACEOF
13563for ac_lib in '' crypto; do
13564 if test -z "$ac_lib"; then
13565 ac_res="none required"
13566 else
13567 ac_res=-l$ac_lib
13568 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13569 fi
13570 if ac_fn_c_try_link "$LINENO"; then :
13571 ac_cv_search_DH_set_length=$ac_res
13572fi
13573rm -f core conftest.err conftest.$ac_objext \
13574 conftest$ac_exeext
13575 if ${ac_cv_search_DH_set_length+:} false; then :
13576 break
13577fi
13578done
13579if ${ac_cv_search_DH_set_length+:} false; then :
13580
13581else
13582 ac_cv_search_DH_set_length=no
13583fi
13584rm conftest.$ac_ext
13585LIBS=$ac_func_search_save_LIBS
13586fi
13587{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DH_set_length" >&5
13588$as_echo "$ac_cv_search_DH_set_length" >&6; }
13589ac_res=$ac_cv_search_DH_set_length
13590if test "$ac_res" != no; then :
13591 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13592
13593$as_echo "#define HAVE_DH_SET_LENGTH 1" >>confdefs.h
13594
13595fi
13596
13597 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DH_set0_pqg" >&5
13598$as_echo_n "checking for library containing DH_set0_pqg... " >&6; }
13599if ${ac_cv_search_DH_set0_pqg+:} false; then :
13600 $as_echo_n "(cached) " >&6
13601else
13602 ac_func_search_save_LIBS=$LIBS
13603cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13604/* end confdefs.h. */
13605
13606/* Override any GCC internal prototype to avoid an error.
13607 Use char because int might match the return type of a GCC
13608 builtin and then its argument prototype would still apply. */
13609#ifdef __cplusplus
13610extern "C"
13611#endif
13612char DH_set0_pqg ();
13613int
13614main ()
13615{
13616return DH_set0_pqg ();
13617 ;
13618 return 0;
13619}
13620_ACEOF
13621for ac_lib in '' crypto; do
13622 if test -z "$ac_lib"; then
13623 ac_res="none required"
13624 else
13625 ac_res=-l$ac_lib
13626 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13627 fi
13628 if ac_fn_c_try_link "$LINENO"; then :
13629 ac_cv_search_DH_set0_pqg=$ac_res
13630fi
13631rm -f core conftest.err conftest.$ac_objext \
13632 conftest$ac_exeext
13633 if ${ac_cv_search_DH_set0_pqg+:} false; then :
13634 break
13635fi
13636done
13637if ${ac_cv_search_DH_set0_pqg+:} false; then :
13638
13639else
13640 ac_cv_search_DH_set0_pqg=no
13641fi
13642rm conftest.$ac_ext
13643LIBS=$ac_func_search_save_LIBS
13644fi
13645{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DH_set0_pqg" >&5
13646$as_echo "$ac_cv_search_DH_set0_pqg" >&6; }
13647ac_res=$ac_cv_search_DH_set0_pqg
13648if test "$ac_res" != no; then :
13649 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13650
13651$as_echo "#define HAVE_DH_SET0_PQG 1" >>confdefs.h
13652
13653fi
13654
13655
13656 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_get0_key" >&5
13657$as_echo_n "checking for library containing DSA_get0_key... " >&6; }
13658if ${ac_cv_search_DSA_get0_key+:} false; then :
13659 $as_echo_n "(cached) " >&6
13660else
13661 ac_func_search_save_LIBS=$LIBS
13662cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13663/* end confdefs.h. */
13664
13665/* Override any GCC internal prototype to avoid an error.
13666 Use char because int might match the return type of a GCC
13667 builtin and then its argument prototype would still apply. */
13668#ifdef __cplusplus
13669extern "C"
13670#endif
13671char DSA_get0_key ();
13672int
13673main ()
13674{
13675return DSA_get0_key ();
13676 ;
13677 return 0;
13678}
13679_ACEOF
13680for ac_lib in '' crypto; do
13681 if test -z "$ac_lib"; then
13682 ac_res="none required"
13683 else
13684 ac_res=-l$ac_lib
13685 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13686 fi
13687 if ac_fn_c_try_link "$LINENO"; then :
13688 ac_cv_search_DSA_get0_key=$ac_res
13689fi
13690rm -f core conftest.err conftest.$ac_objext \
13691 conftest$ac_exeext
13692 if ${ac_cv_search_DSA_get0_key+:} false; then :
13693 break
13694fi
13695done
13696if ${ac_cv_search_DSA_get0_key+:} false; then :
13697
13698else
13699 ac_cv_search_DSA_get0_key=no
13700fi
13701rm conftest.$ac_ext
13702LIBS=$ac_func_search_save_LIBS
13703fi
13704{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_get0_key" >&5
13705$as_echo "$ac_cv_search_DSA_get0_key" >&6; }
13706ac_res=$ac_cv_search_DSA_get0_key
13707if test "$ac_res" != no; then :
13708 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13709
13710$as_echo "#define HAVE_DSA_GET0_KEY 1" >>confdefs.h
13711
13712fi
13713
13714 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_get0_pqg" >&5
13715$as_echo_n "checking for library containing DSA_get0_pqg... " >&6; }
13716if ${ac_cv_search_DSA_get0_pqg+:} false; then :
13717 $as_echo_n "(cached) " >&6
13718else
13719 ac_func_search_save_LIBS=$LIBS
13720cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13721/* end confdefs.h. */
13722
13723/* Override any GCC internal prototype to avoid an error.
13724 Use char because int might match the return type of a GCC
13725 builtin and then its argument prototype would still apply. */
13726#ifdef __cplusplus
13727extern "C"
13728#endif
13729char DSA_get0_pqg ();
13730int
13731main ()
13732{
13733return DSA_get0_pqg ();
13734 ;
13735 return 0;
13736}
13737_ACEOF
13738for ac_lib in '' crypto; do
13739 if test -z "$ac_lib"; then
13740 ac_res="none required"
13741 else
13742 ac_res=-l$ac_lib
13743 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13744 fi
13745 if ac_fn_c_try_link "$LINENO"; then :
13746 ac_cv_search_DSA_get0_pqg=$ac_res
13747fi
13748rm -f core conftest.err conftest.$ac_objext \
13749 conftest$ac_exeext
13750 if ${ac_cv_search_DSA_get0_pqg+:} false; then :
13751 break
13752fi
13753done
13754if ${ac_cv_search_DSA_get0_pqg+:} false; then :
13755
13756else
13757 ac_cv_search_DSA_get0_pqg=no
13758fi
13759rm conftest.$ac_ext
13760LIBS=$ac_func_search_save_LIBS
13761fi
13762{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_get0_pqg" >&5
13763$as_echo "$ac_cv_search_DSA_get0_pqg" >&6; }
13764ac_res=$ac_cv_search_DSA_get0_pqg
13765if test "$ac_res" != no; then :
13766 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13767
13768$as_echo "#define HAVE_DSA_GET0_PQG 1" >>confdefs.h
13769
13770fi
13771
13772 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_set0_key" >&5
13773$as_echo_n "checking for library containing DSA_set0_key... " >&6; }
13774if ${ac_cv_search_DSA_set0_key+:} false; then :
13775 $as_echo_n "(cached) " >&6
13776else
13777 ac_func_search_save_LIBS=$LIBS
13778cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13779/* end confdefs.h. */
13780
13781/* Override any GCC internal prototype to avoid an error.
13782 Use char because int might match the return type of a GCC
13783 builtin and then its argument prototype would still apply. */
13784#ifdef __cplusplus
13785extern "C"
13786#endif
13787char DSA_set0_key ();
13788int
13789main ()
13790{
13791return DSA_set0_key ();
13792 ;
13793 return 0;
13794}
13795_ACEOF
13796for ac_lib in '' crypto; do
13797 if test -z "$ac_lib"; then
13798 ac_res="none required"
13799 else
13800 ac_res=-l$ac_lib
13801 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13802 fi
13803 if ac_fn_c_try_link "$LINENO"; then :
13804 ac_cv_search_DSA_set0_key=$ac_res
13805fi
13806rm -f core conftest.err conftest.$ac_objext \
13807 conftest$ac_exeext
13808 if ${ac_cv_search_DSA_set0_key+:} false; then :
13809 break
13810fi
13811done
13812if ${ac_cv_search_DSA_set0_key+:} false; then :
13813
13814else
13815 ac_cv_search_DSA_set0_key=no
13816fi
13817rm conftest.$ac_ext
13818LIBS=$ac_func_search_save_LIBS
13819fi
13820{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_set0_key" >&5
13821$as_echo "$ac_cv_search_DSA_set0_key" >&6; }
13822ac_res=$ac_cv_search_DSA_set0_key
13823if test "$ac_res" != no; then :
13824 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13825
13826$as_echo "#define HAVE_DSA_SET0_KEY 1" >>confdefs.h
13827
13828fi
13829
13830 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_set0_pqg" >&5
13831$as_echo_n "checking for library containing DSA_set0_pqg... " >&6; }
13832if ${ac_cv_search_DSA_set0_pqg+:} false; then :
13833 $as_echo_n "(cached) " >&6
13834else
13835 ac_func_search_save_LIBS=$LIBS
13836cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13837/* end confdefs.h. */
13838
13839/* Override any GCC internal prototype to avoid an error.
13840 Use char because int might match the return type of a GCC
13841 builtin and then its argument prototype would still apply. */
13842#ifdef __cplusplus
13843extern "C"
13844#endif
13845char DSA_set0_pqg ();
13846int
13847main ()
13848{
13849return DSA_set0_pqg ();
13850 ;
13851 return 0;
13852}
13853_ACEOF
13854for ac_lib in '' crypto; do
13855 if test -z "$ac_lib"; then
13856 ac_res="none required"
13857 else
13858 ac_res=-l$ac_lib
13859 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13860 fi
13861 if ac_fn_c_try_link "$LINENO"; then :
13862 ac_cv_search_DSA_set0_pqg=$ac_res
13863fi
13864rm -f core conftest.err conftest.$ac_objext \
13865 conftest$ac_exeext
13866 if ${ac_cv_search_DSA_set0_pqg+:} false; then :
13867 break
13868fi
13869done
13870if ${ac_cv_search_DSA_set0_pqg+:} false; then :
13871
13872else
13873 ac_cv_search_DSA_set0_pqg=no
13874fi
13875rm conftest.$ac_ext
13876LIBS=$ac_func_search_save_LIBS
13877fi
13878{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_set0_pqg" >&5
13879$as_echo "$ac_cv_search_DSA_set0_pqg" >&6; }
13880ac_res=$ac_cv_search_DSA_set0_pqg
13881if test "$ac_res" != no; then :
13882 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13883
13884$as_echo "#define HAVE_DSA_SET0_PQG 1" >>confdefs.h
13885
13886fi
13887
13888
13889 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_SIG_get0" >&5
13890$as_echo_n "checking for library containing DSA_SIG_get0... " >&6; }
13891if ${ac_cv_search_DSA_SIG_get0+:} false; then :
13892 $as_echo_n "(cached) " >&6
13893else
13894 ac_func_search_save_LIBS=$LIBS
13895cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13896/* end confdefs.h. */
13897
13898/* Override any GCC internal prototype to avoid an error.
13899 Use char because int might match the return type of a GCC
13900 builtin and then its argument prototype would still apply. */
13901#ifdef __cplusplus
13902extern "C"
13903#endif
13904char DSA_SIG_get0 ();
13905int
13906main ()
13907{
13908return DSA_SIG_get0 ();
13909 ;
13910 return 0;
13911}
13912_ACEOF
13913for ac_lib in '' crypto; do
13914 if test -z "$ac_lib"; then
13915 ac_res="none required"
13916 else
13917 ac_res=-l$ac_lib
13918 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13919 fi
13920 if ac_fn_c_try_link "$LINENO"; then :
13921 ac_cv_search_DSA_SIG_get0=$ac_res
13922fi
13923rm -f core conftest.err conftest.$ac_objext \
13924 conftest$ac_exeext
13925 if ${ac_cv_search_DSA_SIG_get0+:} false; then :
13926 break
13927fi
13928done
13929if ${ac_cv_search_DSA_SIG_get0+:} false; then :
13930
13931else
13932 ac_cv_search_DSA_SIG_get0=no
13933fi
13934rm conftest.$ac_ext
13935LIBS=$ac_func_search_save_LIBS
13936fi
13937{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_SIG_get0" >&5
13938$as_echo "$ac_cv_search_DSA_SIG_get0" >&6; }
13939ac_res=$ac_cv_search_DSA_SIG_get0
13940if test "$ac_res" != no; then :
13941 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
13942
13943$as_echo "#define HAVE_DSA_SIG_GET0 1" >>confdefs.h
13944
13945fi
13946
13947 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DSA_SIG_set0" >&5
13948$as_echo_n "checking for library containing DSA_SIG_set0... " >&6; }
13949if ${ac_cv_search_DSA_SIG_set0+:} false; then :
13950 $as_echo_n "(cached) " >&6
13951else
13952 ac_func_search_save_LIBS=$LIBS
13953cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13954/* end confdefs.h. */
13955
13956/* Override any GCC internal prototype to avoid an error.
13957 Use char because int might match the return type of a GCC
13958 builtin and then its argument prototype would still apply. */
13959#ifdef __cplusplus
13960extern "C"
13961#endif
13962char DSA_SIG_set0 ();
13963int
13964main ()
13965{
13966return DSA_SIG_set0 ();
13967 ;
13968 return 0;
13969}
13970_ACEOF
13971for ac_lib in '' crypto; do
13972 if test -z "$ac_lib"; then
13973 ac_res="none required"
13974 else
13975 ac_res=-l$ac_lib
13976 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
13977 fi
13978 if ac_fn_c_try_link "$LINENO"; then :
13979 ac_cv_search_DSA_SIG_set0=$ac_res
13980fi
13981rm -f core conftest.err conftest.$ac_objext \
13982 conftest$ac_exeext
13983 if ${ac_cv_search_DSA_SIG_set0+:} false; then :
13984 break
13985fi
13986done
13987if ${ac_cv_search_DSA_SIG_set0+:} false; then :
13988
13989else
13990 ac_cv_search_DSA_SIG_set0=no
13991fi
13992rm conftest.$ac_ext
13993LIBS=$ac_func_search_save_LIBS
13994fi
13995{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DSA_SIG_set0" >&5
13996$as_echo "$ac_cv_search_DSA_SIG_set0" >&6; }
13997ac_res=$ac_cv_search_DSA_SIG_set0
13998if test "$ac_res" != no; then :
13999 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14000
14001$as_echo "#define HAVE_DSA_SIG_SET0 1" >>confdefs.h
14002
14003fi
14004
14005
14006 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ECDSA_SIG_get0" >&5
14007$as_echo_n "checking for library containing ECDSA_SIG_get0... " >&6; }
14008if ${ac_cv_search_ECDSA_SIG_get0+:} false; then :
14009 $as_echo_n "(cached) " >&6
14010else
14011 ac_func_search_save_LIBS=$LIBS
14012cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14013/* end confdefs.h. */
14014
14015/* Override any GCC internal prototype to avoid an error.
14016 Use char because int might match the return type of a GCC
14017 builtin and then its argument prototype would still apply. */
14018#ifdef __cplusplus
14019extern "C"
14020#endif
14021char ECDSA_SIG_get0 ();
14022int
14023main ()
14024{
14025return ECDSA_SIG_get0 ();
14026 ;
14027 return 0;
14028}
14029_ACEOF
14030for ac_lib in '' crypto; do
14031 if test -z "$ac_lib"; then
14032 ac_res="none required"
14033 else
14034 ac_res=-l$ac_lib
14035 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14036 fi
14037 if ac_fn_c_try_link "$LINENO"; then :
14038 ac_cv_search_ECDSA_SIG_get0=$ac_res
14039fi
14040rm -f core conftest.err conftest.$ac_objext \
14041 conftest$ac_exeext
14042 if ${ac_cv_search_ECDSA_SIG_get0+:} false; then :
14043 break
14044fi
14045done
14046if ${ac_cv_search_ECDSA_SIG_get0+:} false; then :
14047
14048else
14049 ac_cv_search_ECDSA_SIG_get0=no
14050fi
14051rm conftest.$ac_ext
14052LIBS=$ac_func_search_save_LIBS
14053fi
14054{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ECDSA_SIG_get0" >&5
14055$as_echo "$ac_cv_search_ECDSA_SIG_get0" >&6; }
14056ac_res=$ac_cv_search_ECDSA_SIG_get0
14057if test "$ac_res" != no; then :
14058 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14059
14060$as_echo "#define HAVE_ECDSA_SIG_GET0 1" >>confdefs.h
14061
14062fi
14063
14064 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ECDSA_SIG_set0" >&5
14065$as_echo_n "checking for library containing ECDSA_SIG_set0... " >&6; }
14066if ${ac_cv_search_ECDSA_SIG_set0+:} false; then :
14067 $as_echo_n "(cached) " >&6
14068else
14069 ac_func_search_save_LIBS=$LIBS
14070cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14071/* end confdefs.h. */
14072
14073/* Override any GCC internal prototype to avoid an error.
14074 Use char because int might match the return type of a GCC
14075 builtin and then its argument prototype would still apply. */
14076#ifdef __cplusplus
14077extern "C"
14078#endif
14079char ECDSA_SIG_set0 ();
14080int
14081main ()
14082{
14083return ECDSA_SIG_set0 ();
14084 ;
14085 return 0;
14086}
14087_ACEOF
14088for ac_lib in '' crypto; do
14089 if test -z "$ac_lib"; then
14090 ac_res="none required"
14091 else
14092 ac_res=-l$ac_lib
14093 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14094 fi
14095 if ac_fn_c_try_link "$LINENO"; then :
14096 ac_cv_search_ECDSA_SIG_set0=$ac_res
14097fi
14098rm -f core conftest.err conftest.$ac_objext \
14099 conftest$ac_exeext
14100 if ${ac_cv_search_ECDSA_SIG_set0+:} false; then :
14101 break
14102fi
14103done
14104if ${ac_cv_search_ECDSA_SIG_set0+:} false; then :
14105
14106else
14107 ac_cv_search_ECDSA_SIG_set0=no
14108fi
14109rm conftest.$ac_ext
14110LIBS=$ac_func_search_save_LIBS
14111fi
14112{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ECDSA_SIG_set0" >&5
14113$as_echo "$ac_cv_search_ECDSA_SIG_set0" >&6; }
14114ac_res=$ac_cv_search_ECDSA_SIG_set0
14115if test "$ac_res" != no; then :
14116 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14117
14118$as_echo "#define HAVE_ECDSA_SIG_SET0 1" >>confdefs.h
14119
14120fi
14121
14122
14123 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_iv" >&5
14124$as_echo_n "checking for library containing EVP_CIPHER_CTX_iv... " >&6; }
14125if ${ac_cv_search_EVP_CIPHER_CTX_iv+:} false; then :
14126 $as_echo_n "(cached) " >&6
14127else
14128 ac_func_search_save_LIBS=$LIBS
14129cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14130/* end confdefs.h. */
14131
14132/* Override any GCC internal prototype to avoid an error.
14133 Use char because int might match the return type of a GCC
14134 builtin and then its argument prototype would still apply. */
14135#ifdef __cplusplus
14136extern "C"
14137#endif
14138char EVP_CIPHER_CTX_iv ();
14139int
14140main ()
14141{
14142return EVP_CIPHER_CTX_iv ();
14143 ;
14144 return 0;
14145}
14146_ACEOF
14147for ac_lib in '' crypto; do
14148 if test -z "$ac_lib"; then
14149 ac_res="none required"
14150 else
14151 ac_res=-l$ac_lib
14152 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14153 fi
14154 if ac_fn_c_try_link "$LINENO"; then :
14155 ac_cv_search_EVP_CIPHER_CTX_iv=$ac_res
14156fi
14157rm -f core conftest.err conftest.$ac_objext \
14158 conftest$ac_exeext
14159 if ${ac_cv_search_EVP_CIPHER_CTX_iv+:} false; then :
14160 break
14161fi
14162done
14163if ${ac_cv_search_EVP_CIPHER_CTX_iv+:} false; then :
14164
14165else
14166 ac_cv_search_EVP_CIPHER_CTX_iv=no
14167fi
14168rm conftest.$ac_ext
14169LIBS=$ac_func_search_save_LIBS
14170fi
14171{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_iv" >&5
14172$as_echo "$ac_cv_search_EVP_CIPHER_CTX_iv" >&6; }
14173ac_res=$ac_cv_search_EVP_CIPHER_CTX_iv
14174if test "$ac_res" != no; then :
14175 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14176
14177$as_echo "#define HAVE_EVP_CIPHER_CTX_IV 1" >>confdefs.h
14178
14179fi
14180
14181 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_iv_noconst" >&5
14182$as_echo_n "checking for library containing EVP_CIPHER_CTX_iv_noconst... " >&6; }
14183if ${ac_cv_search_EVP_CIPHER_CTX_iv_noconst+:} false; then :
14184 $as_echo_n "(cached) " >&6
14185else
14186 ac_func_search_save_LIBS=$LIBS
14187cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14188/* end confdefs.h. */
14189
14190/* Override any GCC internal prototype to avoid an error.
14191 Use char because int might match the return type of a GCC
14192 builtin and then its argument prototype would still apply. */
14193#ifdef __cplusplus
14194extern "C"
14195#endif
14196char EVP_CIPHER_CTX_iv_noconst ();
14197int
14198main ()
14199{
14200return EVP_CIPHER_CTX_iv_noconst ();
14201 ;
14202 return 0;
14203}
14204_ACEOF
14205for ac_lib in '' crypto; do
14206 if test -z "$ac_lib"; then
14207 ac_res="none required"
14208 else
14209 ac_res=-l$ac_lib
14210 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14211 fi
14212 if ac_fn_c_try_link "$LINENO"; then :
14213 ac_cv_search_EVP_CIPHER_CTX_iv_noconst=$ac_res
14214fi
14215rm -f core conftest.err conftest.$ac_objext \
14216 conftest$ac_exeext
14217 if ${ac_cv_search_EVP_CIPHER_CTX_iv_noconst+:} false; then :
14218 break
14219fi
14220done
14221if ${ac_cv_search_EVP_CIPHER_CTX_iv_noconst+:} false; then :
14222
14223else
14224 ac_cv_search_EVP_CIPHER_CTX_iv_noconst=no
14225fi
14226rm conftest.$ac_ext
14227LIBS=$ac_func_search_save_LIBS
14228fi
14229{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_iv_noconst" >&5
14230$as_echo "$ac_cv_search_EVP_CIPHER_CTX_iv_noconst" >&6; }
14231ac_res=$ac_cv_search_EVP_CIPHER_CTX_iv_noconst
14232if test "$ac_res" != no; then :
14233 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14234
14235$as_echo "#define HAVE_EVP_CIPHER_CTX_IV_NOCONST 1" >>confdefs.h
14236
14237fi
14238
14239 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_get_iv" >&5
14240$as_echo_n "checking for library containing EVP_CIPHER_CTX_get_iv... " >&6; }
14241if ${ac_cv_search_EVP_CIPHER_CTX_get_iv+:} false; then :
14242 $as_echo_n "(cached) " >&6
14243else
14244 ac_func_search_save_LIBS=$LIBS
14245cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14246/* end confdefs.h. */
14247
14248/* Override any GCC internal prototype to avoid an error.
14249 Use char because int might match the return type of a GCC
14250 builtin and then its argument prototype would still apply. */
14251#ifdef __cplusplus
14252extern "C"
14253#endif
14254char EVP_CIPHER_CTX_get_iv ();
14255int
14256main ()
14257{
14258return EVP_CIPHER_CTX_get_iv ();
14259 ;
14260 return 0;
14261}
14262_ACEOF
14263for ac_lib in '' crypto; do
14264 if test -z "$ac_lib"; then
14265 ac_res="none required"
14266 else
14267 ac_res=-l$ac_lib
14268 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14269 fi
14270 if ac_fn_c_try_link "$LINENO"; then :
14271 ac_cv_search_EVP_CIPHER_CTX_get_iv=$ac_res
14272fi
14273rm -f core conftest.err conftest.$ac_objext \
14274 conftest$ac_exeext
14275 if ${ac_cv_search_EVP_CIPHER_CTX_get_iv+:} false; then :
14276 break
14277fi
14278done
14279if ${ac_cv_search_EVP_CIPHER_CTX_get_iv+:} false; then :
14280
14281else
14282 ac_cv_search_EVP_CIPHER_CTX_get_iv=no
14283fi
14284rm conftest.$ac_ext
14285LIBS=$ac_func_search_save_LIBS
14286fi
14287{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_get_iv" >&5
14288$as_echo "$ac_cv_search_EVP_CIPHER_CTX_get_iv" >&6; }
14289ac_res=$ac_cv_search_EVP_CIPHER_CTX_get_iv
14290if test "$ac_res" != no; then :
14291 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14292
14293$as_echo "#define HAVE_EVP_CIPHER_CTX_GET_IV 1" >>confdefs.h
14294
14295fi
14296
14297 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_CIPHER_CTX_set_iv" >&5
14298$as_echo_n "checking for library containing EVP_CIPHER_CTX_set_iv... " >&6; }
14299if ${ac_cv_search_EVP_CIPHER_CTX_set_iv+:} false; then :
14300 $as_echo_n "(cached) " >&6
14301else
14302 ac_func_search_save_LIBS=$LIBS
14303cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14304/* end confdefs.h. */
14305
14306/* Override any GCC internal prototype to avoid an error.
14307 Use char because int might match the return type of a GCC
14308 builtin and then its argument prototype would still apply. */
14309#ifdef __cplusplus
14310extern "C"
14311#endif
14312char EVP_CIPHER_CTX_set_iv ();
14313int
14314main ()
14315{
14316return EVP_CIPHER_CTX_set_iv ();
14317 ;
14318 return 0;
14319}
14320_ACEOF
14321for ac_lib in '' crypto; do
14322 if test -z "$ac_lib"; then
14323 ac_res="none required"
14324 else
14325 ac_res=-l$ac_lib
14326 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14327 fi
14328 if ac_fn_c_try_link "$LINENO"; then :
14329 ac_cv_search_EVP_CIPHER_CTX_set_iv=$ac_res
14330fi
14331rm -f core conftest.err conftest.$ac_objext \
14332 conftest$ac_exeext
14333 if ${ac_cv_search_EVP_CIPHER_CTX_set_iv+:} false; then :
14334 break
14335fi
14336done
14337if ${ac_cv_search_EVP_CIPHER_CTX_set_iv+:} false; then :
14338
14339else
14340 ac_cv_search_EVP_CIPHER_CTX_set_iv=no
14341fi
14342rm conftest.$ac_ext
14343LIBS=$ac_func_search_save_LIBS
14344fi
14345{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_CIPHER_CTX_set_iv" >&5
14346$as_echo "$ac_cv_search_EVP_CIPHER_CTX_set_iv" >&6; }
14347ac_res=$ac_cv_search_EVP_CIPHER_CTX_set_iv
14348if test "$ac_res" != no; then :
14349 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14350
14351$as_echo "#define HAVE_EVP_CIPHER_CTX_GET_IV 1" >>confdefs.h
14352
14353fi
14354
14355
14356 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_get0_crt_params" >&5
14357$as_echo_n "checking for library containing RSA_get0_crt_params... " >&6; }
14358if ${ac_cv_search_RSA_get0_crt_params+:} false; then :
14359 $as_echo_n "(cached) " >&6
14360else
14361 ac_func_search_save_LIBS=$LIBS
14362cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14363/* end confdefs.h. */
14364
14365/* Override any GCC internal prototype to avoid an error.
14366 Use char because int might match the return type of a GCC
14367 builtin and then its argument prototype would still apply. */
14368#ifdef __cplusplus
14369extern "C"
14370#endif
14371char RSA_get0_crt_params ();
14372int
14373main ()
14374{
14375return RSA_get0_crt_params ();
14376 ;
14377 return 0;
14378}
14379_ACEOF
14380for ac_lib in '' crypto; do
14381 if test -z "$ac_lib"; then
14382 ac_res="none required"
14383 else
14384 ac_res=-l$ac_lib
14385 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14386 fi
14387 if ac_fn_c_try_link "$LINENO"; then :
14388 ac_cv_search_RSA_get0_crt_params=$ac_res
14389fi
14390rm -f core conftest.err conftest.$ac_objext \
14391 conftest$ac_exeext
14392 if ${ac_cv_search_RSA_get0_crt_params+:} false; then :
14393 break
14394fi
14395done
14396if ${ac_cv_search_RSA_get0_crt_params+:} false; then :
14397
14398else
14399 ac_cv_search_RSA_get0_crt_params=no
14400fi
14401rm conftest.$ac_ext
14402LIBS=$ac_func_search_save_LIBS
14403fi
14404{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_get0_crt_params" >&5
14405$as_echo "$ac_cv_search_RSA_get0_crt_params" >&6; }
14406ac_res=$ac_cv_search_RSA_get0_crt_params
14407if test "$ac_res" != no; then :
14408 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14409
14410$as_echo "#define HAVE_RSA_GET0_CRT_PARAMS 1" >>confdefs.h
14411
14412fi
14413
14414 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_get0_factors" >&5
14415$as_echo_n "checking for library containing RSA_get0_factors... " >&6; }
14416if ${ac_cv_search_RSA_get0_factors+:} false; then :
14417 $as_echo_n "(cached) " >&6
14418else
14419 ac_func_search_save_LIBS=$LIBS
14420cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14421/* end confdefs.h. */
14422
14423/* Override any GCC internal prototype to avoid an error.
14424 Use char because int might match the return type of a GCC
14425 builtin and then its argument prototype would still apply. */
14426#ifdef __cplusplus
14427extern "C"
14428#endif
14429char RSA_get0_factors ();
14430int
14431main ()
14432{
14433return RSA_get0_factors ();
14434 ;
14435 return 0;
14436}
14437_ACEOF
14438for ac_lib in '' crypto; do
14439 if test -z "$ac_lib"; then
14440 ac_res="none required"
14441 else
14442 ac_res=-l$ac_lib
14443 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14444 fi
14445 if ac_fn_c_try_link "$LINENO"; then :
14446 ac_cv_search_RSA_get0_factors=$ac_res
14447fi
14448rm -f core conftest.err conftest.$ac_objext \
14449 conftest$ac_exeext
14450 if ${ac_cv_search_RSA_get0_factors+:} false; then :
14451 break
14452fi
14453done
14454if ${ac_cv_search_RSA_get0_factors+:} false; then :
14455
14456else
14457 ac_cv_search_RSA_get0_factors=no
14458fi
14459rm conftest.$ac_ext
14460LIBS=$ac_func_search_save_LIBS
14461fi
14462{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_get0_factors" >&5
14463$as_echo "$ac_cv_search_RSA_get0_factors" >&6; }
14464ac_res=$ac_cv_search_RSA_get0_factors
14465if test "$ac_res" != no; then :
14466 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14467
14468$as_echo "#define HAVE_RSA_GET0_FACTORS 1" >>confdefs.h
14469
14470fi
14471
14472 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_get0_key" >&5
14473$as_echo_n "checking for library containing RSA_get0_key... " >&6; }
14474if ${ac_cv_search_RSA_get0_key+:} false; then :
14475 $as_echo_n "(cached) " >&6
14476else
14477 ac_func_search_save_LIBS=$LIBS
14478cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14479/* end confdefs.h. */
14480
14481/* Override any GCC internal prototype to avoid an error.
14482 Use char because int might match the return type of a GCC
14483 builtin and then its argument prototype would still apply. */
14484#ifdef __cplusplus
14485extern "C"
14486#endif
14487char RSA_get0_key ();
14488int
14489main ()
14490{
14491return RSA_get0_key ();
14492 ;
14493 return 0;
14494}
14495_ACEOF
14496for ac_lib in '' crypto; do
14497 if test -z "$ac_lib"; then
14498 ac_res="none required"
14499 else
14500 ac_res=-l$ac_lib
14501 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14502 fi
14503 if ac_fn_c_try_link "$LINENO"; then :
14504 ac_cv_search_RSA_get0_key=$ac_res
14505fi
14506rm -f core conftest.err conftest.$ac_objext \
14507 conftest$ac_exeext
14508 if ${ac_cv_search_RSA_get0_key+:} false; then :
14509 break
14510fi
14511done
14512if ${ac_cv_search_RSA_get0_key+:} false; then :
14513
14514else
14515 ac_cv_search_RSA_get0_key=no
14516fi
14517rm conftest.$ac_ext
14518LIBS=$ac_func_search_save_LIBS
14519fi
14520{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_get0_key" >&5
14521$as_echo "$ac_cv_search_RSA_get0_key" >&6; }
14522ac_res=$ac_cv_search_RSA_get0_key
14523if test "$ac_res" != no; then :
14524 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14525
14526$as_echo "#define HAVE_RSA_GET0_KEY 1" >>confdefs.h
14527
14528fi
14529
14530 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_set0_crt_params" >&5
14531$as_echo_n "checking for library containing RSA_set0_crt_params... " >&6; }
14532if ${ac_cv_search_RSA_set0_crt_params+:} false; then :
14533 $as_echo_n "(cached) " >&6
14534else
14535 ac_func_search_save_LIBS=$LIBS
14536cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14537/* end confdefs.h. */
14538
14539/* Override any GCC internal prototype to avoid an error.
14540 Use char because int might match the return type of a GCC
14541 builtin and then its argument prototype would still apply. */
14542#ifdef __cplusplus
14543extern "C"
14544#endif
14545char RSA_set0_crt_params ();
14546int
14547main ()
14548{
14549return RSA_set0_crt_params ();
14550 ;
14551 return 0;
14552}
14553_ACEOF
14554for ac_lib in '' crypto; do
14555 if test -z "$ac_lib"; then
14556 ac_res="none required"
14557 else
14558 ac_res=-l$ac_lib
14559 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14560 fi
14561 if ac_fn_c_try_link "$LINENO"; then :
14562 ac_cv_search_RSA_set0_crt_params=$ac_res
14563fi
14564rm -f core conftest.err conftest.$ac_objext \
14565 conftest$ac_exeext
14566 if ${ac_cv_search_RSA_set0_crt_params+:} false; then :
14567 break
14568fi
14569done
14570if ${ac_cv_search_RSA_set0_crt_params+:} false; then :
14571
14572else
14573 ac_cv_search_RSA_set0_crt_params=no
14574fi
14575rm conftest.$ac_ext
14576LIBS=$ac_func_search_save_LIBS
14577fi
14578{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_set0_crt_params" >&5
14579$as_echo "$ac_cv_search_RSA_set0_crt_params" >&6; }
14580ac_res=$ac_cv_search_RSA_set0_crt_params
14581if test "$ac_res" != no; then :
14582 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14583
14584$as_echo "#define HAVE_RSA_SET0_CRT_PARAMS 1" >>confdefs.h
14585
14586fi
14587
14588 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_set0_factors" >&5
14589$as_echo_n "checking for library containing RSA_set0_factors... " >&6; }
14590if ${ac_cv_search_RSA_set0_factors+:} false; then :
14591 $as_echo_n "(cached) " >&6
14592else
14593 ac_func_search_save_LIBS=$LIBS
14594cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14595/* end confdefs.h. */
14596
14597/* Override any GCC internal prototype to avoid an error.
14598 Use char because int might match the return type of a GCC
14599 builtin and then its argument prototype would still apply. */
14600#ifdef __cplusplus
14601extern "C"
14602#endif
14603char RSA_set0_factors ();
14604int
14605main ()
14606{
14607return RSA_set0_factors ();
14608 ;
14609 return 0;
14610}
14611_ACEOF
14612for ac_lib in '' crypto; do
14613 if test -z "$ac_lib"; then
14614 ac_res="none required"
14615 else
14616 ac_res=-l$ac_lib
14617 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14618 fi
14619 if ac_fn_c_try_link "$LINENO"; then :
14620 ac_cv_search_RSA_set0_factors=$ac_res
14621fi
14622rm -f core conftest.err conftest.$ac_objext \
14623 conftest$ac_exeext
14624 if ${ac_cv_search_RSA_set0_factors+:} false; then :
14625 break
14626fi
14627done
14628if ${ac_cv_search_RSA_set0_factors+:} false; then :
14629
14630else
14631 ac_cv_search_RSA_set0_factors=no
14632fi
14633rm conftest.$ac_ext
14634LIBS=$ac_func_search_save_LIBS
14635fi
14636{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_set0_factors" >&5
14637$as_echo "$ac_cv_search_RSA_set0_factors" >&6; }
14638ac_res=$ac_cv_search_RSA_set0_factors
14639if test "$ac_res" != no; then :
14640 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14641
14642$as_echo "#define HAVE_RSA_SET0_FACTORS 1" >>confdefs.h
14643
14644fi
14645
14646 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_set0_key" >&5
14647$as_echo_n "checking for library containing RSA_set0_key... " >&6; }
14648if ${ac_cv_search_RSA_set0_key+:} false; then :
14649 $as_echo_n "(cached) " >&6
14650else
14651 ac_func_search_save_LIBS=$LIBS
14652cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14653/* end confdefs.h. */
14654
14655/* Override any GCC internal prototype to avoid an error.
14656 Use char because int might match the return type of a GCC
14657 builtin and then its argument prototype would still apply. */
14658#ifdef __cplusplus
14659extern "C"
14660#endif
14661char RSA_set0_key ();
14662int
14663main ()
14664{
14665return RSA_set0_key ();
14666 ;
14667 return 0;
14668}
14669_ACEOF
14670for ac_lib in '' crypto; do
14671 if test -z "$ac_lib"; then
14672 ac_res="none required"
14673 else
14674 ac_res=-l$ac_lib
14675 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14676 fi
14677 if ac_fn_c_try_link "$LINENO"; then :
14678 ac_cv_search_RSA_set0_key=$ac_res
14679fi
14680rm -f core conftest.err conftest.$ac_objext \
14681 conftest$ac_exeext
14682 if ${ac_cv_search_RSA_set0_key+:} false; then :
14683 break
14684fi
14685done
14686if ${ac_cv_search_RSA_set0_key+:} false; then :
14687
14688else
14689 ac_cv_search_RSA_set0_key=no
14690fi
14691rm conftest.$ac_ext
14692LIBS=$ac_func_search_save_LIBS
14693fi
14694{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_set0_key" >&5
14695$as_echo "$ac_cv_search_RSA_set0_key" >&6; }
14696ac_res=$ac_cv_search_RSA_set0_key
14697if test "$ac_res" != no; then :
14698 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14699
14700$as_echo "#define HAVE_RSA_SET0_KEY 1" >>confdefs.h
14701
14702fi
14703
14704
14705 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_free" >&5
14706$as_echo_n "checking for library containing RSA_meth_free... " >&6; }
14707if ${ac_cv_search_RSA_meth_free+:} false; then :
14708 $as_echo_n "(cached) " >&6
14709else
14710 ac_func_search_save_LIBS=$LIBS
14711cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14712/* end confdefs.h. */
14713
14714/* Override any GCC internal prototype to avoid an error.
14715 Use char because int might match the return type of a GCC
14716 builtin and then its argument prototype would still apply. */
14717#ifdef __cplusplus
14718extern "C"
14719#endif
14720char RSA_meth_free ();
14721int
14722main ()
14723{
14724return RSA_meth_free ();
14725 ;
14726 return 0;
14727}
14728_ACEOF
14729for ac_lib in '' crypto; do
14730 if test -z "$ac_lib"; then
14731 ac_res="none required"
14732 else
14733 ac_res=-l$ac_lib
14734 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14735 fi
14736 if ac_fn_c_try_link "$LINENO"; then :
14737 ac_cv_search_RSA_meth_free=$ac_res
14738fi
14739rm -f core conftest.err conftest.$ac_objext \
14740 conftest$ac_exeext
14741 if ${ac_cv_search_RSA_meth_free+:} false; then :
14742 break
14743fi
14744done
14745if ${ac_cv_search_RSA_meth_free+:} false; then :
14746
14747else
14748 ac_cv_search_RSA_meth_free=no
14749fi
14750rm conftest.$ac_ext
14751LIBS=$ac_func_search_save_LIBS
14752fi
14753{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_free" >&5
14754$as_echo "$ac_cv_search_RSA_meth_free" >&6; }
14755ac_res=$ac_cv_search_RSA_meth_free
14756if test "$ac_res" != no; then :
14757 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14758
14759$as_echo "#define HAVE_RSA_METH_FREE 1" >>confdefs.h
14760
14761fi
14762
14763 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_dup" >&5
14764$as_echo_n "checking for library containing RSA_meth_dup... " >&6; }
14765if ${ac_cv_search_RSA_meth_dup+:} false; then :
14766 $as_echo_n "(cached) " >&6
14767else
14768 ac_func_search_save_LIBS=$LIBS
14769cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14770/* end confdefs.h. */
14771
14772/* Override any GCC internal prototype to avoid an error.
14773 Use char because int might match the return type of a GCC
14774 builtin and then its argument prototype would still apply. */
14775#ifdef __cplusplus
14776extern "C"
14777#endif
14778char RSA_meth_dup ();
14779int
14780main ()
14781{
14782return RSA_meth_dup ();
14783 ;
14784 return 0;
14785}
14786_ACEOF
14787for ac_lib in '' crypto; do
14788 if test -z "$ac_lib"; then
14789 ac_res="none required"
14790 else
14791 ac_res=-l$ac_lib
14792 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14793 fi
14794 if ac_fn_c_try_link "$LINENO"; then :
14795 ac_cv_search_RSA_meth_dup=$ac_res
14796fi
14797rm -f core conftest.err conftest.$ac_objext \
14798 conftest$ac_exeext
14799 if ${ac_cv_search_RSA_meth_dup+:} false; then :
14800 break
14801fi
14802done
14803if ${ac_cv_search_RSA_meth_dup+:} false; then :
14804
14805else
14806 ac_cv_search_RSA_meth_dup=no
14807fi
14808rm conftest.$ac_ext
14809LIBS=$ac_func_search_save_LIBS
14810fi
14811{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_dup" >&5
14812$as_echo "$ac_cv_search_RSA_meth_dup" >&6; }
14813ac_res=$ac_cv_search_RSA_meth_dup
14814if test "$ac_res" != no; then :
14815 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14816
14817$as_echo "#define HAVE_RSA_METH_DUP 1" >>confdefs.h
14818
14819fi
14820
14821 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_set1_name" >&5
14822$as_echo_n "checking for library containing RSA_meth_set1_name... " >&6; }
14823if ${ac_cv_search_RSA_meth_set1_name+:} false; then :
14824 $as_echo_n "(cached) " >&6
14825else
14826 ac_func_search_save_LIBS=$LIBS
14827cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14828/* end confdefs.h. */
14829
14830/* Override any GCC internal prototype to avoid an error.
14831 Use char because int might match the return type of a GCC
14832 builtin and then its argument prototype would still apply. */
14833#ifdef __cplusplus
14834extern "C"
14835#endif
14836char RSA_meth_set1_name ();
14837int
14838main ()
14839{
14840return RSA_meth_set1_name ();
14841 ;
14842 return 0;
14843}
14844_ACEOF
14845for ac_lib in '' crypto; do
14846 if test -z "$ac_lib"; then
14847 ac_res="none required"
14848 else
14849 ac_res=-l$ac_lib
14850 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14851 fi
14852 if ac_fn_c_try_link "$LINENO"; then :
14853 ac_cv_search_RSA_meth_set1_name=$ac_res
14854fi
14855rm -f core conftest.err conftest.$ac_objext \
14856 conftest$ac_exeext
14857 if ${ac_cv_search_RSA_meth_set1_name+:} false; then :
14858 break
14859fi
14860done
14861if ${ac_cv_search_RSA_meth_set1_name+:} false; then :
14862
14863else
14864 ac_cv_search_RSA_meth_set1_name=no
14865fi
14866rm conftest.$ac_ext
14867LIBS=$ac_func_search_save_LIBS
14868fi
14869{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_set1_name" >&5
14870$as_echo "$ac_cv_search_RSA_meth_set1_name" >&6; }
14871ac_res=$ac_cv_search_RSA_meth_set1_name
14872if test "$ac_res" != no; then :
14873 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14874
14875$as_echo "#define HAVE_RSA_METH_SET1_NAME 1" >>confdefs.h
14876
14877fi
14878
14879 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_get_finish" >&5
14880$as_echo_n "checking for library containing RSA_meth_get_finish... " >&6; }
14881if ${ac_cv_search_RSA_meth_get_finish+:} false; then :
14882 $as_echo_n "(cached) " >&6
14883else
14884 ac_func_search_save_LIBS=$LIBS
14885cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14886/* end confdefs.h. */
14887
14888/* Override any GCC internal prototype to avoid an error.
14889 Use char because int might match the return type of a GCC
14890 builtin and then its argument prototype would still apply. */
14891#ifdef __cplusplus
14892extern "C"
14893#endif
14894char RSA_meth_get_finish ();
14895int
14896main ()
14897{
14898return RSA_meth_get_finish ();
14899 ;
14900 return 0;
14901}
14902_ACEOF
14903for ac_lib in '' crypto; do
14904 if test -z "$ac_lib"; then
14905 ac_res="none required"
14906 else
14907 ac_res=-l$ac_lib
14908 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14909 fi
14910 if ac_fn_c_try_link "$LINENO"; then :
14911 ac_cv_search_RSA_meth_get_finish=$ac_res
14912fi
14913rm -f core conftest.err conftest.$ac_objext \
14914 conftest$ac_exeext
14915 if ${ac_cv_search_RSA_meth_get_finish+:} false; then :
14916 break
14917fi
14918done
14919if ${ac_cv_search_RSA_meth_get_finish+:} false; then :
14920
14921else
14922 ac_cv_search_RSA_meth_get_finish=no
14923fi
14924rm conftest.$ac_ext
14925LIBS=$ac_func_search_save_LIBS
14926fi
14927{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_get_finish" >&5
14928$as_echo "$ac_cv_search_RSA_meth_get_finish" >&6; }
14929ac_res=$ac_cv_search_RSA_meth_get_finish
14930if test "$ac_res" != no; then :
14931 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14932
14933$as_echo "#define HAVE_RSA_METH_GET_FINISH 1" >>confdefs.h
14934
14935fi
14936
14937 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_set_priv_enc" >&5
14938$as_echo_n "checking for library containing RSA_meth_set_priv_enc... " >&6; }
14939if ${ac_cv_search_RSA_meth_set_priv_enc+:} false; then :
14940 $as_echo_n "(cached) " >&6
14941else
14942 ac_func_search_save_LIBS=$LIBS
14943cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14944/* end confdefs.h. */
14945
14946/* Override any GCC internal prototype to avoid an error.
14947 Use char because int might match the return type of a GCC
14948 builtin and then its argument prototype would still apply. */
14949#ifdef __cplusplus
14950extern "C"
14951#endif
14952char RSA_meth_set_priv_enc ();
14953int
14954main ()
14955{
14956return RSA_meth_set_priv_enc ();
14957 ;
14958 return 0;
14959}
14960_ACEOF
14961for ac_lib in '' crypto; do
14962 if test -z "$ac_lib"; then
14963 ac_res="none required"
14964 else
14965 ac_res=-l$ac_lib
14966 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
14967 fi
14968 if ac_fn_c_try_link "$LINENO"; then :
14969 ac_cv_search_RSA_meth_set_priv_enc=$ac_res
14970fi
14971rm -f core conftest.err conftest.$ac_objext \
14972 conftest$ac_exeext
14973 if ${ac_cv_search_RSA_meth_set_priv_enc+:} false; then :
14974 break
14975fi
14976done
14977if ${ac_cv_search_RSA_meth_set_priv_enc+:} false; then :
14978
14979else
14980 ac_cv_search_RSA_meth_set_priv_enc=no
14981fi
14982rm conftest.$ac_ext
14983LIBS=$ac_func_search_save_LIBS
14984fi
14985{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_set_priv_enc" >&5
14986$as_echo "$ac_cv_search_RSA_meth_set_priv_enc" >&6; }
14987ac_res=$ac_cv_search_RSA_meth_set_priv_enc
14988if test "$ac_res" != no; then :
14989 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
14990
14991$as_echo "#define HAVE_RSA_METH_SET_PRIV_ENC 1" >>confdefs.h
14992
14993fi
14994
14995 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_set_priv_dec" >&5
14996$as_echo_n "checking for library containing RSA_meth_set_priv_dec... " >&6; }
14997if ${ac_cv_search_RSA_meth_set_priv_dec+:} false; then :
14998 $as_echo_n "(cached) " >&6
14999else
15000 ac_func_search_save_LIBS=$LIBS
15001cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15002/* end confdefs.h. */
15003
15004/* Override any GCC internal prototype to avoid an error.
15005 Use char because int might match the return type of a GCC
15006 builtin and then its argument prototype would still apply. */
15007#ifdef __cplusplus
15008extern "C"
15009#endif
15010char RSA_meth_set_priv_dec ();
15011int
15012main ()
15013{
15014return RSA_meth_set_priv_dec ();
15015 ;
15016 return 0;
15017}
15018_ACEOF
15019for ac_lib in '' crypto; do
15020 if test -z "$ac_lib"; then
15021 ac_res="none required"
15022 else
15023 ac_res=-l$ac_lib
15024 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
15025 fi
15026 if ac_fn_c_try_link "$LINENO"; then :
15027 ac_cv_search_RSA_meth_set_priv_dec=$ac_res
15028fi
15029rm -f core conftest.err conftest.$ac_objext \
15030 conftest$ac_exeext
15031 if ${ac_cv_search_RSA_meth_set_priv_dec+:} false; then :
15032 break
15033fi
15034done
15035if ${ac_cv_search_RSA_meth_set_priv_dec+:} false; then :
15036
15037else
15038 ac_cv_search_RSA_meth_set_priv_dec=no
15039fi
15040rm conftest.$ac_ext
15041LIBS=$ac_func_search_save_LIBS
15042fi
15043{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_set_priv_dec" >&5
15044$as_echo "$ac_cv_search_RSA_meth_set_priv_dec" >&6; }
15045ac_res=$ac_cv_search_RSA_meth_set_priv_dec
15046if test "$ac_res" != no; then :
15047 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
15048
15049$as_echo "#define HAVE_RSA_METH_SET_PRIV_DEC 1" >>confdefs.h
15050
15051fi
15052
15053 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing RSA_meth_set_finish" >&5
15054$as_echo_n "checking for library containing RSA_meth_set_finish... " >&6; }
15055if ${ac_cv_search_RSA_meth_set_finish+:} false; then :
15056 $as_echo_n "(cached) " >&6
15057else
15058 ac_func_search_save_LIBS=$LIBS
15059cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15060/* end confdefs.h. */
15061
15062/* Override any GCC internal prototype to avoid an error.
15063 Use char because int might match the return type of a GCC
15064 builtin and then its argument prototype would still apply. */
15065#ifdef __cplusplus
15066extern "C"
15067#endif
15068char RSA_meth_set_finish ();
15069int
15070main ()
15071{
15072return RSA_meth_set_finish ();
15073 ;
15074 return 0;
15075}
15076_ACEOF
15077for ac_lib in '' crypto; do
15078 if test -z "$ac_lib"; then
15079 ac_res="none required"
15080 else
15081 ac_res=-l$ac_lib
15082 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
15083 fi
15084 if ac_fn_c_try_link "$LINENO"; then :
15085 ac_cv_search_RSA_meth_set_finish=$ac_res
15086fi
15087rm -f core conftest.err conftest.$ac_objext \
15088 conftest$ac_exeext
15089 if ${ac_cv_search_RSA_meth_set_finish+:} false; then :
15090 break
15091fi
15092done
15093if ${ac_cv_search_RSA_meth_set_finish+:} false; then :
15094
15095else
15096 ac_cv_search_RSA_meth_set_finish=no
15097fi
15098rm conftest.$ac_ext
15099LIBS=$ac_func_search_save_LIBS
15100fi
15101{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_RSA_meth_set_finish" >&5
15102$as_echo "$ac_cv_search_RSA_meth_set_finish" >&6; }
15103ac_res=$ac_cv_search_RSA_meth_set_finish
15104if test "$ac_res" != no; then :
15105 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
15106
15107$as_echo "#define HAVE_RSA_METH_SET_FINISH 1" >>confdefs.h
15108
15109fi
15110
15111
15112 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_PKEY_get0_RSA" >&5
15113$as_echo_n "checking for library containing EVP_PKEY_get0_RSA... " >&6; }
15114if ${ac_cv_search_EVP_PKEY_get0_RSA+:} false; then :
15115 $as_echo_n "(cached) " >&6
15116else
15117 ac_func_search_save_LIBS=$LIBS
15118cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15119/* end confdefs.h. */
15120
15121/* Override any GCC internal prototype to avoid an error.
15122 Use char because int might match the return type of a GCC
15123 builtin and then its argument prototype would still apply. */
15124#ifdef __cplusplus
15125extern "C"
15126#endif
15127char EVP_PKEY_get0_RSA ();
15128int
15129main ()
15130{
15131return EVP_PKEY_get0_RSA ();
15132 ;
15133 return 0;
15134}
15135_ACEOF
15136for ac_lib in '' crypto; do
15137 if test -z "$ac_lib"; then
15138 ac_res="none required"
15139 else
15140 ac_res=-l$ac_lib
15141 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
15142 fi
15143 if ac_fn_c_try_link "$LINENO"; then :
15144 ac_cv_search_EVP_PKEY_get0_RSA=$ac_res
15145fi
15146rm -f core conftest.err conftest.$ac_objext \
15147 conftest$ac_exeext
15148 if ${ac_cv_search_EVP_PKEY_get0_RSA+:} false; then :
15149 break
15150fi
15151done
15152if ${ac_cv_search_EVP_PKEY_get0_RSA+:} false; then :
15153
15154else
15155 ac_cv_search_EVP_PKEY_get0_RSA=no
15156fi
15157rm conftest.$ac_ext
15158LIBS=$ac_func_search_save_LIBS
15159fi
15160{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_PKEY_get0_RSA" >&5
15161$as_echo "$ac_cv_search_EVP_PKEY_get0_RSA" >&6; }
15162ac_res=$ac_cv_search_EVP_PKEY_get0_RSA
15163if test "$ac_res" != no; then :
15164 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
15165
15166$as_echo "#define HAVE_EVP_PKEY_GET0_RSA 1" >>confdefs.h
15167
15168fi
15169
15170
15171 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_MD_CTX_new" >&5
15172$as_echo_n "checking for library containing EVP_MD_CTX_new... " >&6; }
15173if ${ac_cv_search_EVP_MD_CTX_new+:} false; then :
15174 $as_echo_n "(cached) " >&6
15175else
15176 ac_func_search_save_LIBS=$LIBS
15177cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15178/* end confdefs.h. */
15179
15180/* Override any GCC internal prototype to avoid an error.
15181 Use char because int might match the return type of a GCC
15182 builtin and then its argument prototype would still apply. */
15183#ifdef __cplusplus
15184extern "C"
15185#endif
15186char EVP_MD_CTX_new ();
15187int
15188main ()
15189{
15190return EVP_MD_CTX_new ();
15191 ;
15192 return 0;
15193}
15194_ACEOF
15195for ac_lib in '' crypto; do
15196 if test -z "$ac_lib"; then
15197 ac_res="none required"
15198 else
15199 ac_res=-l$ac_lib
15200 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
15201 fi
15202 if ac_fn_c_try_link "$LINENO"; then :
15203 ac_cv_search_EVP_MD_CTX_new=$ac_res
15204fi
15205rm -f core conftest.err conftest.$ac_objext \
15206 conftest$ac_exeext
15207 if ${ac_cv_search_EVP_MD_CTX_new+:} false; then :
15208 break
15209fi
15210done
15211if ${ac_cv_search_EVP_MD_CTX_new+:} false; then :
15212
15213else
15214 ac_cv_search_EVP_MD_CTX_new=no
15215fi
15216rm conftest.$ac_ext
15217LIBS=$ac_func_search_save_LIBS
15218fi
15219{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_MD_CTX_new" >&5
15220$as_echo "$ac_cv_search_EVP_MD_CTX_new" >&6; }
15221ac_res=$ac_cv_search_EVP_MD_CTX_new
15222if test "$ac_res" != no; then :
15223 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
15224
15225$as_echo "#define HAVE_EVP_MD_CTX_NEW 1" >>confdefs.h
15226
15227fi
15228
15229 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing EVP_MD_CTX_free" >&5
15230$as_echo_n "checking for library containing EVP_MD_CTX_free... " >&6; }
15231if ${ac_cv_search_EVP_MD_CTX_free+:} false; then :
15232 $as_echo_n "(cached) " >&6
15233else
15234 ac_func_search_save_LIBS=$LIBS
15235cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15236/* end confdefs.h. */
15237
15238/* Override any GCC internal prototype to avoid an error.
15239 Use char because int might match the return type of a GCC
15240 builtin and then its argument prototype would still apply. */
15241#ifdef __cplusplus
15242extern "C"
15243#endif
15244char EVP_MD_CTX_free ();
15245int
15246main ()
15247{
15248return EVP_MD_CTX_free ();
15249 ;
15250 return 0;
15251}
15252_ACEOF
15253for ac_lib in '' crypto; do
15254 if test -z "$ac_lib"; then
15255 ac_res="none required"
15256 else
15257 ac_res=-l$ac_lib
15258 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
15259 fi
15260 if ac_fn_c_try_link "$LINENO"; then :
15261 ac_cv_search_EVP_MD_CTX_free=$ac_res
15262fi
15263rm -f core conftest.err conftest.$ac_objext \
15264 conftest$ac_exeext
15265 if ${ac_cv_search_EVP_MD_CTX_free+:} false; then :
15266 break
15267fi
15268done
15269if ${ac_cv_search_EVP_MD_CTX_free+:} false; then :
15270
15271else
15272 ac_cv_search_EVP_MD_CTX_free=no
15273fi
15274rm conftest.$ac_ext
15275LIBS=$ac_func_search_save_LIBS
15276fi
15277{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_EVP_MD_CTX_free" >&5
15278$as_echo "$ac_cv_search_EVP_MD_CTX_free" >&6; }
15279ac_res=$ac_cv_search_EVP_MD_CTX_free
15280if test "$ac_res" != no; then :
15281 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
15282
15283$as_echo "#define HAVE_EVP_MD_CTX_FREE 1" >>confdefs.h
15284
15285fi
15286
15287
15288 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if EVP_DigestUpdate returns an int" >&5
15289$as_echo_n "checking if EVP_DigestUpdate returns an int... " >&6; }
15290 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15291/* end confdefs.h. */
15292
15293 #include <string.h>
15294 #include <openssl/evp.h>
15295
15296int
15297main ()
15298{
15299
15300 if(EVP_DigestUpdate(NULL, NULL,0))
15301 exit(0);
15302
15303 ;
15304 return 0;
15305}
15306_ACEOF
15307if ac_fn_c_try_link "$LINENO"; then :
15308
15309 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15310$as_echo "yes" >&6; }
15311
15312else
15313
15314 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15315$as_echo "no" >&6; }
15316
15317$as_echo "#define OPENSSL_EVP_DIGESTUPDATE_VOID 1" >>confdefs.h
15318
15319
15320
15321fi
15322rm -f core conftest.err conftest.$ac_objext \
15323 conftest$ac_exeext conftest.$ac_ext
15324
15325 # Some systems want crypt() from libcrypt, *not* the version in OpenSSL,
15326 # because the system crypt() is more featureful.
15327 if test "x$check_for_libcrypt_before" = "x1"; then
15328 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5
15329$as_echo_n "checking for crypt in -lcrypt... " >&6; }
15330if ${ac_cv_lib_crypt_crypt+:} false; then :
15331 $as_echo_n "(cached) " >&6
15332else
15333 ac_check_lib_save_LIBS=$LIBS
15334LIBS="-lcrypt $LIBS"
15335cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15336/* end confdefs.h. */
15337
15338/* Override any GCC internal prototype to avoid an error.
15339 Use char because int might match the return type of a GCC
15340 builtin and then its argument prototype would still apply. */
15341#ifdef __cplusplus
15342extern "C"
15343#endif
15344char crypt ();
15345int
15346main ()
15347{
15348return crypt ();
15349 ;
15350 return 0;
15351}
15352_ACEOF
15353if ac_fn_c_try_link "$LINENO"; then :
15354 ac_cv_lib_crypt_crypt=yes
15355else
15356 ac_cv_lib_crypt_crypt=no
15357fi
15358rm -f core conftest.err conftest.$ac_objext \
15359 conftest$ac_exeext conftest.$ac_ext
15360LIBS=$ac_check_lib_save_LIBS
15361fi
15362{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5
15363$as_echo "$ac_cv_lib_crypt_crypt" >&6; }
15364if test "x$ac_cv_lib_crypt_crypt" = xyes; then :
15365 cat >>confdefs.h <<_ACEOF
15366#define HAVE_LIBCRYPT 1
15367_ACEOF
15368
15369 LIBS="-lcrypt $LIBS"
15370
15371fi
15372
15373 fi
15374
15375 # Some Linux systems (Slackware) need crypt() from libcrypt, *not* the
15376 # version in OpenSSL.
15377 if test "x$check_for_libcrypt_later" = "x1"; then
15378 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5
15379$as_echo_n "checking for crypt in -lcrypt... " >&6; }
15380if ${ac_cv_lib_crypt_crypt+:} false; then :
15381 $as_echo_n "(cached) " >&6
15382else
15383 ac_check_lib_save_LIBS=$LIBS
15384LIBS="-lcrypt $LIBS"
15385cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15386/* end confdefs.h. */
15387
15388/* Override any GCC internal prototype to avoid an error.
15389 Use char because int might match the return type of a GCC
15390 builtin and then its argument prototype would still apply. */
15391#ifdef __cplusplus
15392extern "C"
15393#endif
15394char crypt ();
15395int
15396main ()
15397{
15398return crypt ();
15399 ;
15400 return 0;
15401}
15402_ACEOF
15403if ac_fn_c_try_link "$LINENO"; then :
15404 ac_cv_lib_crypt_crypt=yes
15405else
15406 ac_cv_lib_crypt_crypt=no
15407fi
15408rm -f core conftest.err conftest.$ac_objext \
15409 conftest$ac_exeext conftest.$ac_ext
15410LIBS=$ac_check_lib_save_LIBS
15411fi
15412{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5
15413$as_echo "$ac_cv_lib_crypt_crypt" >&6; }
15414if test "x$ac_cv_lib_crypt_crypt" = xyes; then :
15415 LIBS="$LIBS -lcrypt"
15416fi
15417
15418 fi
15419 for ac_func in crypt DES_crypt
15420do :
15421 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
15422ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
15423if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
15424 cat >>confdefs.h <<_ACEOF
15425#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
15426_ACEOF
15427
15428fi
15429done
15430
15431
15432 # Search for SHA256 support in libc and/or OpenSSL
15433 for ac_func in SHA256_Update EVP_sha256
15434do :
15435 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
15436ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
15437if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
15438 cat >>confdefs.h <<_ACEOF
15439#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
15440_ACEOF
15441
15442else
15443 unsupported_algorithms="$unsupported_algorithms \
15444 hmac-sha2-256 \
15445 hmac-sha2-512 \
15446 diffie-hellman-group-exchange-sha256 \
15447 hmac-sha2-256-etm@openssh.com \
15448 hmac-sha2-512-etm@openssh.com"
15449
15450
15451fi
15452done
15453
15454 # Search for RIPE-MD support in OpenSSL
15455 for ac_func in EVP_ripemd160
15456do :
15457 ac_fn_c_check_func "$LINENO" "EVP_ripemd160" "ac_cv_func_EVP_ripemd160"
15458if test "x$ac_cv_func_EVP_ripemd160" = xyes; then :
15459 cat >>confdefs.h <<_ACEOF
15460#define HAVE_EVP_RIPEMD160 1
15461_ACEOF
15462
15463else
15464 unsupported_algorithms="$unsupported_algorithms \
15465 hmac-ripemd160 \
15466 hmac-ripemd160@openssh.com \
15467 hmac-ripemd160-etm@openssh.com"
15468
15469
15470fi
15471done
15472
15473
15474 # Check complete ECC support in OpenSSL
15475 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_X9_62_prime256v1" >&5
15476$as_echo_n "checking whether OpenSSL has NID_X9_62_prime256v1... " >&6; }
15477 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15478/* end confdefs.h. */
15479
15480 #include <openssl/ec.h>
15481 #include <openssl/ecdh.h>
15482 #include <openssl/ecdsa.h>
15483 #include <openssl/evp.h>
15484 #include <openssl/objects.h>
15485 #include <openssl/opensslv.h>
15486
15487int
15488main ()
15489{
15490
15491 EC_KEY *e = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
15492 const EVP_MD *m = EVP_sha256(); /* We need this too */
15493
15494 ;
15495 return 0;
15496}
15497_ACEOF
15498if ac_fn_c_try_link "$LINENO"; then :
15499 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15500$as_echo "yes" >&6; }
15501 enable_nistp256=1
15502else
15503 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15504$as_echo "no" >&6; }
15505
15506fi
15507rm -f core conftest.err conftest.$ac_objext \
15508 conftest$ac_exeext conftest.$ac_ext
15509
15510 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp384r1" >&5
15511$as_echo_n "checking whether OpenSSL has NID_secp384r1... " >&6; }
15512 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15513/* end confdefs.h. */
15514
15515 #include <openssl/ec.h>
15516 #include <openssl/ecdh.h>
15517 #include <openssl/ecdsa.h>
15518 #include <openssl/evp.h>
15519 #include <openssl/objects.h>
15520 #include <openssl/opensslv.h>
15521
15522int
15523main ()
15524{
15525
15526 EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp384r1);
15527 const EVP_MD *m = EVP_sha384(); /* We need this too */
15528
15529 ;
15530 return 0;
15531}
15532_ACEOF
15533if ac_fn_c_try_link "$LINENO"; then :
15534 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15535$as_echo "yes" >&6; }
15536 enable_nistp384=1
15537else
15538 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15539$as_echo "no" >&6; }
15540
15541fi
15542rm -f core conftest.err conftest.$ac_objext \
15543 conftest$ac_exeext conftest.$ac_ext
15544
15545 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp521r1" >&5
15546$as_echo_n "checking whether OpenSSL has NID_secp521r1... " >&6; }
15547 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15548/* end confdefs.h. */
15549
15550 #include <openssl/ec.h>
15551 #include <openssl/ecdh.h>
15552 #include <openssl/ecdsa.h>
15553 #include <openssl/evp.h>
15554 #include <openssl/objects.h>
15555 #include <openssl/opensslv.h>
15556
15557int
15558main ()
15559{
15560
15561 EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1);
15562 const EVP_MD *m = EVP_sha512(); /* We need this too */
15563
15564 ;
15565 return 0;
15566}
15567_ACEOF
15568if ac_fn_c_try_link "$LINENO"; then :
15569 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15570$as_echo "yes" >&6; }
15571 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OpenSSL's NID_secp521r1 is functional" >&5
15572$as_echo_n "checking if OpenSSL's NID_secp521r1 is functional... " >&6; }
15573 if test "$cross_compiling" = yes; then :
15574 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross-compiling: assuming yes" >&5
15575$as_echo "$as_me: WARNING: cross-compiling: assuming yes" >&2;}
15576 enable_nistp521=1
15577
15578else
15579 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15580/* end confdefs.h. */
15581
15582 #include <openssl/ec.h>
15583 #include <openssl/ecdh.h>
15584 #include <openssl/ecdsa.h>
15585 #include <openssl/evp.h>
15586 #include <openssl/objects.h>
15587 #include <openssl/opensslv.h>
15588
15589int
15590main ()
15591{
15592
15593 EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1);
15594 const EVP_MD *m = EVP_sha512(); /* We need this too */
15595 exit(e == NULL || m == NULL);
15596
15597 ;
15598 return 0;
15599}
15600_ACEOF
15601if ac_fn_c_try_run "$LINENO"; then :
15602 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15603$as_echo "yes" >&6; }
15604 enable_nistp521=1
15605else
15606 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15607$as_echo "no" >&6; }
15608fi
15609rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
15610 conftest.$ac_objext conftest.beam conftest.$ac_ext
15611fi
15612
15613else
15614 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15615$as_echo "no" >&6; }
15616
15617fi
15618rm -f core conftest.err conftest.$ac_objext \
15619 conftest$ac_exeext conftest.$ac_ext
15620
15621 COMMENT_OUT_ECC="#no ecc#"
15622 TEST_SSH_ECC=no
15623
15624 if test x$enable_nistp256 = x1 || test x$enable_nistp384 = x1 || \
15625 test x$enable_nistp521 = x1; then
15626
15627$as_echo "#define OPENSSL_HAS_ECC 1" >>confdefs.h
15628
15629 fi
15630 if test x$enable_nistp256 = x1; then
15631
15632$as_echo "#define OPENSSL_HAS_NISTP256 1" >>confdefs.h
15633
15634 TEST_SSH_ECC=yes
15635 COMMENT_OUT_ECC=""
15636 else
15637 unsupported_algorithms="$unsupported_algorithms \
15638 ecdsa-sha2-nistp256 \
15639 ecdh-sha2-nistp256 \
15640 ecdsa-sha2-nistp256-cert-v01@openssh.com"
15641 fi
15642 if test x$enable_nistp384 = x1; then
15643
15644$as_echo "#define OPENSSL_HAS_NISTP384 1" >>confdefs.h
15645
15646 TEST_SSH_ECC=yes
15647 COMMENT_OUT_ECC=""
15648 else
15649 unsupported_algorithms="$unsupported_algorithms \
15650 ecdsa-sha2-nistp384 \
15651 ecdh-sha2-nistp384 \
15652 ecdsa-sha2-nistp384-cert-v01@openssh.com"
15653 fi
15654 if test x$enable_nistp521 = x1; then
15655
15656$as_echo "#define OPENSSL_HAS_NISTP521 1" >>confdefs.h
15657
15658 TEST_SSH_ECC=yes
15659 COMMENT_OUT_ECC=""
15660 else
15661 unsupported_algorithms="$unsupported_algorithms \
15662 ecdh-sha2-nistp521 \
15663 ecdsa-sha2-nistp521 \
15664 ecdsa-sha2-nistp521-cert-v01@openssh.com"
15665 fi
15666
15667
15668
15669else
15670 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5
15671$as_echo_n "checking for crypt in -lcrypt... " >&6; }
15672if ${ac_cv_lib_crypt_crypt+:} false; then :
15673 $as_echo_n "(cached) " >&6
15674else
15675 ac_check_lib_save_LIBS=$LIBS
15676LIBS="-lcrypt $LIBS"
15677cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15678/* end confdefs.h. */
15679
15680/* Override any GCC internal prototype to avoid an error.
15681 Use char because int might match the return type of a GCC
15682 builtin and then its argument prototype would still apply. */
15683#ifdef __cplusplus
15684extern "C"
15685#endif
15686char crypt ();
15687int
15688main ()
15689{
15690return crypt ();
15691 ;
15692 return 0;
15693}
15694_ACEOF
15695if ac_fn_c_try_link "$LINENO"; then :
15696 ac_cv_lib_crypt_crypt=yes
15697else
15698 ac_cv_lib_crypt_crypt=no
15699fi
15700rm -f core conftest.err conftest.$ac_objext \
15701 conftest$ac_exeext conftest.$ac_ext
15702LIBS=$ac_check_lib_save_LIBS
15703fi
15704{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5
15705$as_echo "$ac_cv_lib_crypt_crypt" >&6; }
15706if test "x$ac_cv_lib_crypt_crypt" = xyes; then :
15707 LIBS="$LIBS -lcrypt"
15708fi
15709
15710 for ac_func in crypt
15711do :
15712 ac_fn_c_check_func "$LINENO" "crypt" "ac_cv_func_crypt"
15713if test "x$ac_cv_func_crypt" = xyes; then :
15714 cat >>confdefs.h <<_ACEOF
15715#define HAVE_CRYPT 1
15716_ACEOF
15717
15718fi
15719done
15720
15721fi
15722
15723for ac_func in \
15724 arc4random \
15725 arc4random_buf \
15726 arc4random_stir \
15727 arc4random_uniform \
15728
15729do :
15730 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
15731ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
15732if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
15733 cat >>confdefs.h <<_ACEOF
15734#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
15735_ACEOF
15736
15737fi
15738done
15739
15740
15741saved_LIBS="$LIBS"
15742{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ia_openinfo in -liaf" >&5
15743$as_echo_n "checking for ia_openinfo in -liaf... " >&6; }
15744if ${ac_cv_lib_iaf_ia_openinfo+:} false; then :
15745 $as_echo_n "(cached) " >&6
15746else
15747 ac_check_lib_save_LIBS=$LIBS
15748LIBS="-liaf $LIBS"
15749cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15750/* end confdefs.h. */
15751
15752/* Override any GCC internal prototype to avoid an error.
15753 Use char because int might match the return type of a GCC
15754 builtin and then its argument prototype would still apply. */
15755#ifdef __cplusplus
15756extern "C"
15757#endif
15758char ia_openinfo ();
15759int
15760main ()
15761{
15762return ia_openinfo ();
15763 ;
15764 return 0;
15765}
15766_ACEOF
15767if ac_fn_c_try_link "$LINENO"; then :
15768 ac_cv_lib_iaf_ia_openinfo=yes
15769else
15770 ac_cv_lib_iaf_ia_openinfo=no
15771fi
15772rm -f core conftest.err conftest.$ac_objext \
15773 conftest$ac_exeext conftest.$ac_ext
15774LIBS=$ac_check_lib_save_LIBS
15775fi
15776{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iaf_ia_openinfo" >&5
15777$as_echo "$ac_cv_lib_iaf_ia_openinfo" >&6; }
15778if test "x$ac_cv_lib_iaf_ia_openinfo" = xyes; then :
15779
15780 LIBS="$LIBS -liaf"
15781 for ac_func in set_id
15782do :
15783 ac_fn_c_check_func "$LINENO" "set_id" "ac_cv_func_set_id"
15784if test "x$ac_cv_func_set_id" = xyes; then :
15785 cat >>confdefs.h <<_ACEOF
15786#define HAVE_SET_ID 1
15787_ACEOF
15788 SSHDLIBS="$SSHDLIBS -liaf"
15789
15790$as_echo "#define HAVE_LIBIAF 1" >>confdefs.h
15791
15792
15793fi
15794done
15795
15796
15797fi
15798
15799LIBS="$saved_LIBS"
15800
15801### Configure cryptographic random number support
15802
15803# Check whether OpenSSL seeds itself
15804if test "x$openssl" = "xyes" ; then
15805 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's PRNG is internally seeded" >&5
15806$as_echo_n "checking whether OpenSSL's PRNG is internally seeded... " >&6; }
15807 if test "$cross_compiling" = yes; then :
15808
15809 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5
15810$as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;}
15811 # This is safe, since we will fatal() at runtime if
15812 # OpenSSL is not seeded correctly.
15813 OPENSSL_SEEDS_ITSELF=yes
15814
15815
15816else
15817 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15818/* end confdefs.h. */
15819
15820 #include <string.h>
15821 #include <openssl/rand.h>
15822
15823int
15824main ()
15825{
15826
15827 exit(RAND_status() == 1 ? 0 : 1);
15828
15829 ;
15830 return 0;
15831}
15832_ACEOF
15833if ac_fn_c_try_run "$LINENO"; then :
15834
15835 OPENSSL_SEEDS_ITSELF=yes
15836 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15837$as_echo "yes" >&6; }
15838
15839else
15840
15841 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15842$as_echo "no" >&6; }
15843
15844fi
15845rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
15846 conftest.$ac_objext conftest.beam conftest.$ac_ext
15847fi
15848
15849fi
15850
15851# PRNGD TCP socket
15852
15853# Check whether --with-prngd-port was given.
15854if test "${with_prngd_port+set}" = set; then :
15855 withval=$with_prngd_port;
15856 case "$withval" in
15857 no)
15858 withval=""
15859 ;;
15860 [0-9]*)
15861 ;;
15862 *)
15863 as_fn_error $? "You must specify a numeric port number for --with-prngd-port" "$LINENO" 5
15864 ;;
15865 esac
15866 if test ! -z "$withval" ; then
15867 PRNGD_PORT="$withval"
15868
15869cat >>confdefs.h <<_ACEOF
15870#define PRNGD_PORT $PRNGD_PORT
15871_ACEOF
15872
15873 fi
15874
15875
15876fi
15877
15878
15879# PRNGD Unix domain socket
15880
15881# Check whether --with-prngd-socket was given.
15882if test "${with_prngd_socket+set}" = set; then :
15883 withval=$with_prngd_socket;
15884 case "$withval" in
15885 yes)
15886 withval="/var/run/egd-pool"
15887 ;;
15888 no)
15889 withval=""
15890 ;;
15891 /*)
15892 ;;
15893 *)
15894 as_fn_error $? "You must specify an absolute path to the entropy socket" "$LINENO" 5
15895 ;;
15896 esac
15897
15898 if test ! -z "$withval" ; then
15899 if test ! -z "$PRNGD_PORT" ; then
15900 as_fn_error $? "You may not specify both a PRNGD/EGD port and socket" "$LINENO" 5
15901 fi
15902 if test ! -r "$withval" ; then
15903 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Entropy socket is not readable" >&5
15904$as_echo "$as_me: WARNING: Entropy socket is not readable" >&2;}
15905 fi
15906 PRNGD_SOCKET="$withval"
15907
15908cat >>confdefs.h <<_ACEOF
15909#define PRNGD_SOCKET "$PRNGD_SOCKET"
15910_ACEOF
15911
15912 fi
15913
15914else
15915
15916 # Check for existing socket only if we don't have a random device already
15917 if test "x$OPENSSL_SEEDS_ITSELF" != "xyes" ; then
15918 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PRNGD/EGD socket" >&5
15919$as_echo_n "checking for PRNGD/EGD socket... " >&6; }
15920 # Insert other locations here
15921 for sock in /var/run/egd-pool /dev/egd-pool /etc/entropy; do
15922 if test -r $sock && $TEST_MINUS_S_SH -c "test -S $sock -o -p $sock" ; then
15923 PRNGD_SOCKET="$sock"
15924 cat >>confdefs.h <<_ACEOF
15925#define PRNGD_SOCKET "$PRNGD_SOCKET"
15926_ACEOF
15927
15928 break;
15929 fi
15930 done
15931 if test ! -z "$PRNGD_SOCKET" ; then
15932 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PRNGD_SOCKET" >&5
15933$as_echo "$PRNGD_SOCKET" >&6; }
15934 else
15935 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
15936$as_echo "not found" >&6; }
15937 fi
15938 fi
15939
15940
15941fi
15942
15943
15944# Which randomness source do we use?
15945if test ! -z "$PRNGD_PORT" ; then
15946 RAND_MSG="PRNGd port $PRNGD_PORT"
15947elif test ! -z "$PRNGD_SOCKET" ; then
15948 RAND_MSG="PRNGd socket $PRNGD_SOCKET"
15949elif test ! -z "$OPENSSL_SEEDS_ITSELF" ; then
15950
15951$as_echo "#define OPENSSL_PRNG_ONLY 1" >>confdefs.h
15952
15953 RAND_MSG="OpenSSL internal ONLY"
15954elif test "x$openssl" = "xno" ; then
15955 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OpenSSH will use /dev/urandom as a source of random numbers. It will fail if this device is not supported or accessible" >&5
15956$as_echo "$as_me: WARNING: OpenSSH will use /dev/urandom as a source of random numbers. It will fail if this device is not supported or accessible" >&2;}
15957else
15958 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
15959fi
15960
15961# Check for PAM libs
15962PAM_MSG="no"
15963
15964# Check whether --with-pam was given.
15965if test "${with_pam+set}" = set; then :
15966 withval=$with_pam;
15967 if test "x$withval" != "xno" ; then
15968 if test "x$ac_cv_header_security_pam_appl_h" != "xyes" && \
15969 test "x$ac_cv_header_pam_pam_appl_h" != "xyes" ; then
15970 as_fn_error $? "PAM headers not found" "$LINENO" 5
15971 fi
15972
15973 saved_LIBS="$LIBS"
15974 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
15975$as_echo_n "checking for dlopen in -ldl... " >&6; }
15976if ${ac_cv_lib_dl_dlopen+:} false; then :
15977 $as_echo_n "(cached) " >&6
15978else
15979 ac_check_lib_save_LIBS=$LIBS
15980LIBS="-ldl $LIBS"
15981cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15982/* end confdefs.h. */
15983
15984/* Override any GCC internal prototype to avoid an error.
15985 Use char because int might match the return type of a GCC
15986 builtin and then its argument prototype would still apply. */
15987#ifdef __cplusplus
15988extern "C"
15989#endif
15990char dlopen ();
15991int
15992main ()
15993{
15994return dlopen ();
15995 ;
15996 return 0;
15997}
15998_ACEOF
15999if ac_fn_c_try_link "$LINENO"; then :
16000 ac_cv_lib_dl_dlopen=yes
16001else
16002 ac_cv_lib_dl_dlopen=no
16003fi
16004rm -f core conftest.err conftest.$ac_objext \
16005 conftest$ac_exeext conftest.$ac_ext
16006LIBS=$ac_check_lib_save_LIBS
16007fi
16008{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
16009$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
16010if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
16011 cat >>confdefs.h <<_ACEOF
16012#define HAVE_LIBDL 1
16013_ACEOF
16014
16015 LIBS="-ldl $LIBS"
16016
16017fi
16018
16019 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pam_set_item in -lpam" >&5
16020$as_echo_n "checking for pam_set_item in -lpam... " >&6; }
16021if ${ac_cv_lib_pam_pam_set_item+:} false; then :
16022 $as_echo_n "(cached) " >&6
16023else
16024 ac_check_lib_save_LIBS=$LIBS
16025LIBS="-lpam $LIBS"
16026cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16027/* end confdefs.h. */
16028
16029/* Override any GCC internal prototype to avoid an error.
16030 Use char because int might match the return type of a GCC
16031 builtin and then its argument prototype would still apply. */
16032#ifdef __cplusplus
16033extern "C"
16034#endif
16035char pam_set_item ();
16036int
16037main ()
16038{
16039return pam_set_item ();
16040 ;
16041 return 0;
16042}
16043_ACEOF
16044if ac_fn_c_try_link "$LINENO"; then :
16045 ac_cv_lib_pam_pam_set_item=yes
16046else
16047 ac_cv_lib_pam_pam_set_item=no
16048fi
16049rm -f core conftest.err conftest.$ac_objext \
16050 conftest$ac_exeext conftest.$ac_ext
16051LIBS=$ac_check_lib_save_LIBS
16052fi
16053{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pam_pam_set_item" >&5
16054$as_echo "$ac_cv_lib_pam_pam_set_item" >&6; }
16055if test "x$ac_cv_lib_pam_pam_set_item" = xyes; then :
16056 cat >>confdefs.h <<_ACEOF
16057#define HAVE_LIBPAM 1
16058_ACEOF
16059
16060 LIBS="-lpam $LIBS"
16061
16062else
16063 as_fn_error $? "*** libpam missing" "$LINENO" 5
16064fi
16065
16066 for ac_func in pam_getenvlist
16067do :
16068 ac_fn_c_check_func "$LINENO" "pam_getenvlist" "ac_cv_func_pam_getenvlist"
16069if test "x$ac_cv_func_pam_getenvlist" = xyes; then :
16070 cat >>confdefs.h <<_ACEOF
16071#define HAVE_PAM_GETENVLIST 1
16072_ACEOF
16073
16074fi
16075done
16076
16077 for ac_func in pam_putenv
16078do :
16079 ac_fn_c_check_func "$LINENO" "pam_putenv" "ac_cv_func_pam_putenv"
16080if test "x$ac_cv_func_pam_putenv" = xyes; then :
16081 cat >>confdefs.h <<_ACEOF
16082#define HAVE_PAM_PUTENV 1
16083_ACEOF
16084
16085fi
16086done
16087
16088 LIBS="$saved_LIBS"
16089
16090 PAM_MSG="yes"
16091
16092 SSHDLIBS="$SSHDLIBS -lpam"
16093
16094$as_echo "#define USE_PAM 1" >>confdefs.h
16095
16096
16097 if test $ac_cv_lib_dl_dlopen = yes; then
16098 case "$LIBS" in
16099 *-ldl*)
16100 # libdl already in LIBS
16101 ;;
16102 *)
16103 SSHDLIBS="$SSHDLIBS -ldl"
16104 ;;
16105 esac
16106 fi
16107 fi
16108
16109
16110fi
16111
16112
16113
16114# Check whether --with-pam-service was given.
16115if test "${with_pam_service+set}" = set; then :
16116 withval=$with_pam_service;
16117 if test "x$withval" != "xno" && \
16118 test "x$withval" != "xyes" ; then
16119
16120cat >>confdefs.h <<_ACEOF
16121#define SSHD_PAM_SERVICE "$withval"
16122_ACEOF
16123
16124 fi
16125
16126
16127fi
16128
16129
16130# Check for older PAM
16131if test "x$PAM_MSG" = "xyes" ; then
16132 # Check PAM strerror arguments (old PAM)
16133 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pam_strerror takes only one argument" >&5
16134$as_echo_n "checking whether pam_strerror takes only one argument... " >&6; }
16135 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16136/* end confdefs.h. */
16137
16138#include <stdlib.h>
16139#if defined(HAVE_SECURITY_PAM_APPL_H)
16140#include <security/pam_appl.h>
16141#elif defined (HAVE_PAM_PAM_APPL_H)
16142#include <pam/pam_appl.h>
16143#endif
16144
16145int
16146main ()
16147{
16148
16149(void)pam_strerror((pam_handle_t *)NULL, -1);
16150
16151 ;
16152 return 0;
16153}
16154_ACEOF
16155if ac_fn_c_try_compile "$LINENO"; then :
16156 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16157$as_echo "no" >&6; }
16158else
16159
16160
16161$as_echo "#define HAVE_OLD_PAM 1" >>confdefs.h
16162
16163 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16164$as_echo "yes" >&6; }
16165 PAM_MSG="yes (old library)"
16166
16167
16168fi
16169rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16170fi
16171
16172case "$host" in
16173*-*-cygwin*)
16174 SSH_PRIVSEP_USER=CYGWIN_SSH_PRIVSEP_USER
16175 ;;
16176*)
16177 SSH_PRIVSEP_USER=sshd
16178 ;;
16179esac
16180
16181# Check whether --with-privsep-user was given.
16182if test "${with_privsep_user+set}" = set; then :
16183 withval=$with_privsep_user;
16184 if test -n "$withval" && test "x$withval" != "xno" && \
16185 test "x${withval}" != "xyes"; then
16186 SSH_PRIVSEP_USER=$withval
16187 fi
16188
16189
16190fi
16191
16192if test "x$SSH_PRIVSEP_USER" = "xCYGWIN_SSH_PRIVSEP_USER" ; then
16193
16194cat >>confdefs.h <<_ACEOF
16195#define SSH_PRIVSEP_USER CYGWIN_SSH_PRIVSEP_USER
16196_ACEOF
16197
16198else
16199
16200cat >>confdefs.h <<_ACEOF
16201#define SSH_PRIVSEP_USER "$SSH_PRIVSEP_USER"
16202_ACEOF
16203
16204fi
16205
16206
16207if test "x$have_linux_no_new_privs" = "x1" ; then
16208ac_fn_c_check_decl "$LINENO" "SECCOMP_MODE_FILTER" "ac_cv_have_decl_SECCOMP_MODE_FILTER" "
16209 #include <sys/types.h>
16210 #include <linux/seccomp.h>
16211
16212"
16213if test "x$ac_cv_have_decl_SECCOMP_MODE_FILTER" = xyes; then :
16214 have_seccomp_filter=1
16215fi
16216
16217fi
16218if test "x$have_seccomp_filter" = "x1" ; then
16219{ $as_echo "$as_me:${as_lineno-$LINENO}: checking kernel for seccomp_filter support" >&5
16220$as_echo_n "checking kernel for seccomp_filter support... " >&6; }
16221cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16222/* end confdefs.h. */
16223
16224 #include <errno.h>
16225 #include <elf.h>
16226 #include <linux/audit.h>
16227 #include <linux/seccomp.h>
16228 #include <stdlib.h>
16229 #include <sys/prctl.h>
16230
16231int
16232main ()
16233{
16234 int i = $seccomp_audit_arch;
16235 errno = 0;
16236 prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0);
16237 exit(errno == EFAULT ? 0 : 1);
16238 ;
16239 return 0;
16240}
16241_ACEOF
16242if ac_fn_c_try_link "$LINENO"; then :
16243 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16244$as_echo "yes" >&6; }
16245else
16246
16247 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16248$as_echo "no" >&6; }
16249 # Disable seccomp filter as a target
16250 have_seccomp_filter=0
16251
16252
16253fi
16254rm -f core conftest.err conftest.$ac_objext \
16255 conftest$ac_exeext conftest.$ac_ext
16256fi
16257
16258# Decide which sandbox style to use
16259sandbox_arg=""
16260
16261# Check whether --with-sandbox was given.
16262if test "${with_sandbox+set}" = set; then :
16263 withval=$with_sandbox;
16264 if test "x$withval" = "xyes" ; then
16265 sandbox_arg=""
16266 else
16267 sandbox_arg="$withval"
16268 fi
16269
16270
16271fi
16272
16273
16274# Some platforms (seems to be the ones that have a kernel poll(2)-type
16275# function with which they implement select(2)) use an extra file descriptor
16276# when calling select(2), which means we can't use the rlimit sandbox.
16277{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if select works with descriptor rlimit" >&5
16278$as_echo_n "checking if select works with descriptor rlimit... " >&6; }
16279if test "$cross_compiling" = yes; then :
16280 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5
16281$as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;}
16282 select_works_with_rlimit=yes
16283
16284else
16285 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16286/* end confdefs.h. */
16287
16288#include <sys/types.h>
16289#ifdef HAVE_SYS_TIME_H
16290# include <sys/time.h>
16291#endif
16292#include <sys/resource.h>
16293#ifdef HAVE_SYS_SELECT_H
16294# include <sys/select.h>
16295#endif
16296#include <errno.h>
16297#include <fcntl.h>
16298#include <stdlib.h>
16299
16300int
16301main ()
16302{
16303
16304 struct rlimit rl_zero;
16305 int fd, r;
16306 fd_set fds;
16307 struct timeval tv;
16308
16309 fd = open("/dev/null", O_RDONLY);
16310 FD_ZERO(&fds);
16311 FD_SET(fd, &fds);
16312 rl_zero.rlim_cur = rl_zero.rlim_max = 0;
16313 setrlimit(RLIMIT_FSIZE, &rl_zero);
16314 setrlimit(RLIMIT_NOFILE, &rl_zero);
16315 tv.tv_sec = 1;
16316 tv.tv_usec = 0;
16317 r = select(fd+1, &fds, NULL, NULL, &tv);
16318 exit (r == -1 ? 1 : 0);
16319
16320 ;
16321 return 0;
16322}
16323_ACEOF
16324if ac_fn_c_try_run "$LINENO"; then :
16325 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16326$as_echo "yes" >&6; }
16327 select_works_with_rlimit=yes
16328else
16329 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16330$as_echo "no" >&6; }
16331 select_works_with_rlimit=no
16332fi
16333rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16334 conftest.$ac_objext conftest.beam conftest.$ac_ext
16335fi
16336
16337
16338{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit(RLIMIT_NOFILE,{0,0}) works" >&5
16339$as_echo_n "checking if setrlimit(RLIMIT_NOFILE,{0,0}) works... " >&6; }
16340if test "$cross_compiling" = yes; then :
16341 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5
16342$as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;}
16343 rlimit_nofile_zero_works=yes
16344
16345else
16346 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16347/* end confdefs.h. */
16348
16349#include <sys/types.h>
16350#ifdef HAVE_SYS_TIME_H
16351# include <sys/time.h>
16352#endif
16353#include <sys/resource.h>
16354#include <errno.h>
16355#include <stdlib.h>
16356
16357int
16358main ()
16359{
16360
16361 struct rlimit rl_zero;
16362 int fd, r;
16363 fd_set fds;
16364
16365 rl_zero.rlim_cur = rl_zero.rlim_max = 0;
16366 r = setrlimit(RLIMIT_NOFILE, &rl_zero);
16367 exit (r == -1 ? 1 : 0);
16368
16369 ;
16370 return 0;
16371}
16372_ACEOF
16373if ac_fn_c_try_run "$LINENO"; then :
16374 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16375$as_echo "yes" >&6; }
16376 rlimit_nofile_zero_works=yes
16377else
16378 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16379$as_echo "no" >&6; }
16380 rlimit_nofile_zero_works=no
16381fi
16382rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16383 conftest.$ac_objext conftest.beam conftest.$ac_ext
16384fi
16385
16386
16387{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit RLIMIT_FSIZE works" >&5
16388$as_echo_n "checking if setrlimit RLIMIT_FSIZE works... " >&6; }
16389if test "$cross_compiling" = yes; then :
16390 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5
16391$as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;}
16392
16393else
16394 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16395/* end confdefs.h. */
16396
16397#include <sys/types.h>
16398#include <sys/resource.h>
16399#include <stdlib.h>
16400
16401int
16402main ()
16403{
16404
16405 struct rlimit rl_zero;
16406
16407 rl_zero.rlim_cur = rl_zero.rlim_max = 0;
16408 exit(setrlimit(RLIMIT_FSIZE, &rl_zero) != 0);
16409
16410 ;
16411 return 0;
16412}
16413_ACEOF
16414if ac_fn_c_try_run "$LINENO"; then :
16415 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16416$as_echo "yes" >&6; }
16417else
16418 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16419$as_echo "no" >&6; }
16420
16421$as_echo "#define SANDBOX_SKIP_RLIMIT_FSIZE 1" >>confdefs.h
16422
16423fi
16424rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16425 conftest.$ac_objext conftest.beam conftest.$ac_ext
16426fi
16427
16428
16429if test "x$sandbox_arg" = "xpledge" || \
16430 ( test -z "$sandbox_arg" && test "x$ac_cv_func_pledge" = "xyes" ) ; then
16431 test "x$ac_cv_func_pledge" != "xyes" && \
16432 as_fn_error $? "pledge sandbox requires pledge(2) support" "$LINENO" 5
16433 SANDBOX_STYLE="pledge"
16434
16435$as_echo "#define SANDBOX_PLEDGE 1" >>confdefs.h
16436
16437elif test "x$sandbox_arg" = "xsystrace" || \
16438 ( test -z "$sandbox_arg" && test "x$have_systr_policy_kill" = "x1" ) ; then
16439 test "x$have_systr_policy_kill" != "x1" && \
16440 as_fn_error $? "systrace sandbox requires systrace headers and SYSTR_POLICY_KILL support" "$LINENO" 5
16441 SANDBOX_STYLE="systrace"
16442
16443$as_echo "#define SANDBOX_SYSTRACE 1" >>confdefs.h
16444
16445elif test "x$sandbox_arg" = "xdarwin" || \
16446 ( test -z "$sandbox_arg" && test "x$ac_cv_func_sandbox_init" = "xyes" && \
16447 test "x$ac_cv_header_sandbox_h" = "xyes") ; then
16448 test "x$ac_cv_func_sandbox_init" != "xyes" -o \
16449 "x$ac_cv_header_sandbox_h" != "xyes" && \
16450 as_fn_error $? "Darwin seatbelt sandbox requires sandbox.h and sandbox_init function" "$LINENO" 5
16451 SANDBOX_STYLE="darwin"
16452
16453$as_echo "#define SANDBOX_DARWIN 1" >>confdefs.h
16454
16455elif test "x$sandbox_arg" = "xseccomp_filter" || \
16456 ( test -z "$sandbox_arg" && \
16457 test "x$have_seccomp_filter" = "x1" && \
16458 test "x$ac_cv_header_elf_h" = "xyes" && \
16459 test "x$ac_cv_header_linux_audit_h" = "xyes" && \
16460 test "x$ac_cv_header_linux_filter_h" = "xyes" && \
16461 test "x$seccomp_audit_arch" != "x" && \
16462 test "x$have_linux_no_new_privs" = "x1" && \
16463 test "x$ac_cv_func_prctl" = "xyes" ) ; then
16464 test "x$seccomp_audit_arch" = "x" && \
16465 as_fn_error $? "seccomp_filter sandbox not supported on $host" "$LINENO" 5
16466 test "x$have_linux_no_new_privs" != "x1" && \
16467 as_fn_error $? "seccomp_filter sandbox requires PR_SET_NO_NEW_PRIVS" "$LINENO" 5
16468 test "x$have_seccomp_filter" != "x1" && \
16469 as_fn_error $? "seccomp_filter sandbox requires seccomp headers" "$LINENO" 5
16470 test "x$ac_cv_func_prctl" != "xyes" && \
16471 as_fn_error $? "seccomp_filter sandbox requires prctl function" "$LINENO" 5
16472 SANDBOX_STYLE="seccomp_filter"
16473
16474$as_echo "#define SANDBOX_SECCOMP_FILTER 1" >>confdefs.h
16475
16476elif test "x$sandbox_arg" = "xcapsicum" || \
16477 ( test -z "$sandbox_arg" && \
16478 test "x$ac_cv_header_sys_capsicum_h" = "xyes" && \
16479 test "x$ac_cv_func_cap_rights_limit" = "xyes") ; then
16480 test "x$ac_cv_header_sys_capsicum_h" != "xyes" && \
16481 as_fn_error $? "capsicum sandbox requires sys/capsicum.h header" "$LINENO" 5
16482 test "x$ac_cv_func_cap_rights_limit" != "xyes" && \
16483 as_fn_error $? "capsicum sandbox requires cap_rights_limit function" "$LINENO" 5
16484 SANDBOX_STYLE="capsicum"
16485
16486$as_echo "#define SANDBOX_CAPSICUM 1" >>confdefs.h
16487
16488elif test "x$sandbox_arg" = "xrlimit" || \
16489 ( test -z "$sandbox_arg" && test "x$ac_cv_func_setrlimit" = "xyes" && \
16490 test "x$select_works_with_rlimit" = "xyes" && \
16491 test "x$rlimit_nofile_zero_works" = "xyes" ) ; then
16492 test "x$ac_cv_func_setrlimit" != "xyes" && \
16493 as_fn_error $? "rlimit sandbox requires setrlimit function" "$LINENO" 5
16494 test "x$select_works_with_rlimit" != "xyes" && \
16495 as_fn_error $? "rlimit sandbox requires select to work with rlimit" "$LINENO" 5
16496 SANDBOX_STYLE="rlimit"
16497
16498$as_echo "#define SANDBOX_RLIMIT 1" >>confdefs.h
16499
16500elif test "x$sandbox_arg" = "xsolaris" || \
16501 ( test -z "$sandbox_arg" && test "x$SOLARIS_PRIVS" = "xyes" ) ; then
16502 SANDBOX_STYLE="solaris"
16503
16504$as_echo "#define SANDBOX_SOLARIS 1" >>confdefs.h
16505
16506elif test -z "$sandbox_arg" || test "x$sandbox_arg" = "xno" || \
16507 test "x$sandbox_arg" = "xnone" || test "x$sandbox_arg" = "xnull" ; then
16508 SANDBOX_STYLE="none"
16509
16510$as_echo "#define SANDBOX_NULL 1" >>confdefs.h
16511
16512else
16513 as_fn_error $? "unsupported --with-sandbox" "$LINENO" 5
16514fi
16515
16516# Cheap hack to ensure NEWS-OS libraries are arranged right.
16517if test ! -z "$SONY" ; then
16518 LIBS="$LIBS -liberty";
16519fi
16520
16521# Check for long long datatypes
16522ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
16523if test "x$ac_cv_type_long_long" = xyes; then :
16524
16525cat >>confdefs.h <<_ACEOF
16526#define HAVE_LONG_LONG 1
16527_ACEOF
16528
16529
16530fi
16531ac_fn_c_check_type "$LINENO" "unsigned long long" "ac_cv_type_unsigned_long_long" "$ac_includes_default"
16532if test "x$ac_cv_type_unsigned_long_long" = xyes; then :
16533
16534cat >>confdefs.h <<_ACEOF
16535#define HAVE_UNSIGNED_LONG_LONG 1
16536_ACEOF
16537
16538
16539fi
16540ac_fn_c_check_type "$LINENO" "long double" "ac_cv_type_long_double" "$ac_includes_default"
16541if test "x$ac_cv_type_long_double" = xyes; then :
16542
16543cat >>confdefs.h <<_ACEOF
16544#define HAVE_LONG_DOUBLE 1
16545_ACEOF
16546
16547
16548fi
16549
16550
16551# Check datatype sizes
16552# The cast to long int works around a bug in the HP C Compiler
16553# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
16554# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
16555# This bug is HP SR number 8606223364.
16556{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short int" >&5
16557$as_echo_n "checking size of short int... " >&6; }
16558if ${ac_cv_sizeof_short_int+:} false; then :
16559 $as_echo_n "(cached) " >&6
16560else
16561 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short int))" "ac_cv_sizeof_short_int" "$ac_includes_default"; then :
16562
16563else
16564 if test "$ac_cv_type_short_int" = yes; then
16565 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
16566$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
16567as_fn_error 77 "cannot compute sizeof (short int)
16568See \`config.log' for more details" "$LINENO" 5; }
16569 else
16570 ac_cv_sizeof_short_int=0
16571 fi
16572fi
16573
16574fi
16575{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short_int" >&5
16576$as_echo "$ac_cv_sizeof_short_int" >&6; }
16577
16578
16579
16580cat >>confdefs.h <<_ACEOF
16581#define SIZEOF_SHORT_INT $ac_cv_sizeof_short_int
16582_ACEOF
16583
16584
16585# The cast to long int works around a bug in the HP C Compiler
16586# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
16587# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
16588# This bug is HP SR number 8606223364.
16589{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
16590$as_echo_n "checking size of int... " >&6; }
16591if ${ac_cv_sizeof_int+:} false; then :
16592 $as_echo_n "(cached) " >&6
16593else
16594 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then :
16595
16596else
16597 if test "$ac_cv_type_int" = yes; then
16598 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
16599$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
16600as_fn_error 77 "cannot compute sizeof (int)
16601See \`config.log' for more details" "$LINENO" 5; }
16602 else
16603 ac_cv_sizeof_int=0
16604 fi
16605fi
16606
16607fi
16608{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
16609$as_echo "$ac_cv_sizeof_int" >&6; }
16610
16611
16612
16613cat >>confdefs.h <<_ACEOF
16614#define SIZEOF_INT $ac_cv_sizeof_int
16615_ACEOF
16616
16617
16618# The cast to long int works around a bug in the HP C Compiler
16619# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
16620# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
16621# This bug is HP SR number 8606223364.
16622{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long int" >&5
16623$as_echo_n "checking size of long int... " >&6; }
16624if ${ac_cv_sizeof_long_int+:} false; then :
16625 $as_echo_n "(cached) " >&6
16626else
16627 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long int))" "ac_cv_sizeof_long_int" "$ac_includes_default"; then :
16628
16629else
16630 if test "$ac_cv_type_long_int" = yes; then
16631 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
16632$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
16633as_fn_error 77 "cannot compute sizeof (long int)
16634See \`config.log' for more details" "$LINENO" 5; }
16635 else
16636 ac_cv_sizeof_long_int=0
16637 fi
16638fi
16639
16640fi
16641{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_int" >&5
16642$as_echo "$ac_cv_sizeof_long_int" >&6; }
16643
16644
16645
16646cat >>confdefs.h <<_ACEOF
16647#define SIZEOF_LONG_INT $ac_cv_sizeof_long_int
16648_ACEOF
16649
16650
16651# The cast to long int works around a bug in the HP C Compiler
16652# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
16653# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
16654# This bug is HP SR number 8606223364.
16655{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long int" >&5
16656$as_echo_n "checking size of long long int... " >&6; }
16657if ${ac_cv_sizeof_long_long_int+:} false; then :
16658 $as_echo_n "(cached) " >&6
16659else
16660 if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long int))" "ac_cv_sizeof_long_long_int" "$ac_includes_default"; then :
16661
16662else
16663 if test "$ac_cv_type_long_long_int" = yes; then
16664 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
16665$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
16666as_fn_error 77 "cannot compute sizeof (long long int)
16667See \`config.log' for more details" "$LINENO" 5; }
16668 else
16669 ac_cv_sizeof_long_long_int=0
16670 fi
16671fi
16672
16673fi
16674{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long_int" >&5
16675$as_echo "$ac_cv_sizeof_long_long_int" >&6; }
16676
16677
16678
16679cat >>confdefs.h <<_ACEOF
16680#define SIZEOF_LONG_LONG_INT $ac_cv_sizeof_long_long_int
16681_ACEOF
16682
16683
16684
16685# Sanity check long long for some platforms (AIX)
16686if test "x$ac_cv_sizeof_long_long_int" = "x4" ; then
16687 ac_cv_sizeof_long_long_int=0
16688fi
16689
16690# compute LLONG_MIN and LLONG_MAX if we don't know them.
16691if test -z "$have_llong_max"; then
16692 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for max value of long long" >&5
16693$as_echo_n "checking for max value of long long... " >&6; }
16694 if test "$cross_compiling" = yes; then :
16695
16696 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5
16697$as_echo "$as_me: WARNING: cross compiling: not checking" >&2;}
16698
16699
16700else
16701 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16702/* end confdefs.h. */
16703
16704#include <stdio.h>
16705/* Why is this so damn hard? */
16706#ifdef __GNUC__
16707# undef __GNUC__
16708#endif
16709#define __USE_ISOC99
16710#include <limits.h>
16711#define DATA "conftest.llminmax"
16712#define my_abs(a) ((a) < 0 ? ((a) * -1) : (a))
16713
16714/*
16715 * printf in libc on some platforms (eg old Tru64) does not understand %lld so
16716 * we do this the hard way.
16717 */
16718static int
16719fprint_ll(FILE *f, long long n)
16720{
16721 unsigned int i;
16722 int l[sizeof(long long) * 8];
16723
16724 if (n < 0)
16725 if (fprintf(f, "-") < 0)
16726 return -1;
16727 for (i = 0; n != 0; i++) {
16728 l[i] = my_abs(n % 10);
16729 n /= 10;
16730 }
16731 do {
16732 if (fprintf(f, "%d", l[--i]) < 0)
16733 return -1;
16734 } while (i != 0);
16735 if (fprintf(f, " ") < 0)
16736 return -1;
16737 return 0;
16738}
16739
16740int
16741main ()
16742{
16743
16744 FILE *f;
16745 long long i, llmin, llmax = 0;
16746
16747 if((f = fopen(DATA,"w")) == NULL)
16748 exit(1);
16749
16750#if defined(LLONG_MIN) && defined(LLONG_MAX)
16751 fprintf(stderr, "Using system header for LLONG_MIN and LLONG_MAX\n");
16752 llmin = LLONG_MIN;
16753 llmax = LLONG_MAX;
16754#else
16755 fprintf(stderr, "Calculating LLONG_MIN and LLONG_MAX\n");
16756 /* This will work on one's complement and two's complement */
16757 for (i = 1; i > llmax; i <<= 1, i++)
16758 llmax = i;
16759 llmin = llmax + 1LL; /* wrap */
16760#endif
16761
16762 /* Sanity check */
16763 if (llmin + 1 < llmin || llmin - 1 < llmin || llmax + 1 > llmax
16764 || llmax - 1 > llmax || llmin == llmax || llmin == 0
16765 || llmax == 0 || llmax < LONG_MAX || llmin > LONG_MIN) {
16766 fprintf(f, "unknown unknown\n");
16767 exit(2);
16768 }
16769
16770 if (fprint_ll(f, llmin) < 0)
16771 exit(3);
16772 if (fprint_ll(f, llmax) < 0)
16773 exit(4);
16774 if (fclose(f) < 0)
16775 exit(5);
16776 exit(0);
16777
16778 ;
16779 return 0;
16780}
16781_ACEOF
16782if ac_fn_c_try_run "$LINENO"; then :
16783
16784 llong_min=`$AWK '{print $1}' conftest.llminmax`
16785 llong_max=`$AWK '{print $2}' conftest.llminmax`
16786
16787 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_max" >&5
16788$as_echo "$llong_max" >&6; }
16789
16790cat >>confdefs.h <<_ACEOF
16791#define LLONG_MAX ${llong_max}LL
16792_ACEOF
16793
16794 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for min value of long long" >&5
16795$as_echo_n "checking for min value of long long... " >&6; }
16796 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_min" >&5
16797$as_echo "$llong_min" >&6; }
16798
16799cat >>confdefs.h <<_ACEOF
16800#define LLONG_MIN ${llong_min}LL
16801_ACEOF
16802
16803
16804else
16805
16806 { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
16807$as_echo "not found" >&6; }
16808
16809fi
16810rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16811 conftest.$ac_objext conftest.beam conftest.$ac_ext
16812fi
16813
16814fi
16815
16816
16817# More checks for data types
16818{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int type" >&5
16819$as_echo_n "checking for u_int type... " >&6; }
16820if ${ac_cv_have_u_int+:} false; then :
16821 $as_echo_n "(cached) " >&6
16822else
16823
16824 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16825/* end confdefs.h. */
16826 #include <sys/types.h>
16827int
16828main ()
16829{
16830 u_int a; a = 1;
16831 ;
16832 return 0;
16833}
16834_ACEOF
16835if ac_fn_c_try_compile "$LINENO"; then :
16836 ac_cv_have_u_int="yes"
16837else
16838 ac_cv_have_u_int="no"
16839
16840fi
16841rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16842
16843fi
16844{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int" >&5
16845$as_echo "$ac_cv_have_u_int" >&6; }
16846if test "x$ac_cv_have_u_int" = "xyes" ; then
16847
16848$as_echo "#define HAVE_U_INT 1" >>confdefs.h
16849
16850 have_u_int=1
16851fi
16852
16853{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types" >&5
16854$as_echo_n "checking for intXX_t types... " >&6; }
16855if ${ac_cv_have_intxx_t+:} false; then :
16856 $as_echo_n "(cached) " >&6
16857else
16858
16859 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16860/* end confdefs.h. */
16861 #include <sys/types.h>
16862int
16863main ()
16864{
16865 int8_t a; int16_t b; int32_t c; a = b = c = 1;
16866 ;
16867 return 0;
16868}
16869_ACEOF
16870if ac_fn_c_try_compile "$LINENO"; then :
16871 ac_cv_have_intxx_t="yes"
16872else
16873 ac_cv_have_intxx_t="no"
16874
16875fi
16876rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16877
16878fi
16879{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_intxx_t" >&5
16880$as_echo "$ac_cv_have_intxx_t" >&6; }
16881if test "x$ac_cv_have_intxx_t" = "xyes" ; then
16882
16883$as_echo "#define HAVE_INTXX_T 1" >>confdefs.h
16884
16885 have_intxx_t=1
16886fi
16887
16888if (test -z "$have_intxx_t" && \
16889 test "x$ac_cv_header_stdint_h" = "xyes")
16890then
16891 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types in stdint.h" >&5
16892$as_echo_n "checking for intXX_t types in stdint.h... " >&6; }
16893 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16894/* end confdefs.h. */
16895 #include <stdint.h>
16896int
16897main ()
16898{
16899 int8_t a; int16_t b; int32_t c; a = b = c = 1;
16900 ;
16901 return 0;
16902}
16903_ACEOF
16904if ac_fn_c_try_compile "$LINENO"; then :
16905
16906 $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h
16907
16908 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16909$as_echo "yes" >&6; }
16910
16911else
16912 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16913$as_echo "no" >&6; }
16914
16915fi
16916rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16917fi
16918
16919{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for int64_t type" >&5
16920$as_echo_n "checking for int64_t type... " >&6; }
16921if ${ac_cv_have_int64_t+:} false; then :
16922 $as_echo_n "(cached) " >&6
16923else
16924
16925 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16926/* end confdefs.h. */
16927
16928#include <sys/types.h>
16929#ifdef HAVE_STDINT_H
16930# include <stdint.h>
16931#endif
16932#include <sys/socket.h>
16933#ifdef HAVE_SYS_BITYPES_H
16934# include <sys/bitypes.h>
16935#endif
16936
16937int
16938main ()
16939{
16940
16941int64_t a; a = 1;
16942
16943 ;
16944 return 0;
16945}
16946_ACEOF
16947if ac_fn_c_try_compile "$LINENO"; then :
16948 ac_cv_have_int64_t="yes"
16949else
16950 ac_cv_have_int64_t="no"
16951
16952fi
16953rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16954
16955fi
16956{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_int64_t" >&5
16957$as_echo "$ac_cv_have_int64_t" >&6; }
16958if test "x$ac_cv_have_int64_t" = "xyes" ; then
16959
16960$as_echo "#define HAVE_INT64_T 1" >>confdefs.h
16961
16962fi
16963
16964{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types" >&5
16965$as_echo_n "checking for u_intXX_t types... " >&6; }
16966if ${ac_cv_have_u_intxx_t+:} false; then :
16967 $as_echo_n "(cached) " >&6
16968else
16969
16970 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16971/* end confdefs.h. */
16972 #include <sys/types.h>
16973int
16974main ()
16975{
16976 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
16977 ;
16978 return 0;
16979}
16980_ACEOF
16981if ac_fn_c_try_compile "$LINENO"; then :
16982 ac_cv_have_u_intxx_t="yes"
16983else
16984 ac_cv_have_u_intxx_t="no"
16985
16986fi
16987rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16988
16989fi
16990{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_intxx_t" >&5
16991$as_echo "$ac_cv_have_u_intxx_t" >&6; }
16992if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then
16993
16994$as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h
16995
16996 have_u_intxx_t=1
16997fi
16998
16999if test -z "$have_u_intxx_t" ; then
17000 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types in sys/socket.h" >&5
17001$as_echo_n "checking for u_intXX_t types in sys/socket.h... " >&6; }
17002 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17003/* end confdefs.h. */
17004 #include <sys/socket.h>
17005int
17006main ()
17007{
17008 u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;
17009 ;
17010 return 0;
17011}
17012_ACEOF
17013if ac_fn_c_try_compile "$LINENO"; then :
17014
17015 $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h
17016
17017 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17018$as_echo "yes" >&6; }
17019
17020else
17021 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17022$as_echo "no" >&6; }
17023
17024fi
17025rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17026fi
17027
17028{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t types" >&5
17029$as_echo_n "checking for u_int64_t types... " >&6; }
17030if ${ac_cv_have_u_int64_t+:} false; then :
17031 $as_echo_n "(cached) " >&6
17032else
17033
17034 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17035/* end confdefs.h. */
17036 #include <sys/types.h>
17037int
17038main ()
17039{
17040 u_int64_t a; a = 1;
17041 ;
17042 return 0;
17043}
17044_ACEOF
17045if ac_fn_c_try_compile "$LINENO"; then :
17046 ac_cv_have_u_int64_t="yes"
17047else
17048 ac_cv_have_u_int64_t="no"
17049
17050fi
17051rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17052
17053fi
17054{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int64_t" >&5
17055$as_echo "$ac_cv_have_u_int64_t" >&6; }
17056if test "x$ac_cv_have_u_int64_t" = "xyes" ; then
17057
17058$as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h
17059
17060 have_u_int64_t=1
17061fi
17062
17063if (test -z "$have_u_int64_t" && \
17064 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
17065then
17066 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t type in sys/bitypes.h" >&5
17067$as_echo_n "checking for u_int64_t type in sys/bitypes.h... " >&6; }
17068 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17069/* end confdefs.h. */
17070 #include <sys/bitypes.h>
17071int
17072main ()
17073{
17074 u_int64_t a; a = 1
17075 ;
17076 return 0;
17077}
17078_ACEOF
17079if ac_fn_c_try_compile "$LINENO"; then :
17080
17081 $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h
17082
17083 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17084$as_echo "yes" >&6; }
17085
17086else
17087 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17088$as_echo "no" >&6; }
17089
17090fi
17091rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17092fi
17093
17094if test -z "$have_u_intxx_t" ; then
17095 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types" >&5
17096$as_echo_n "checking for uintXX_t types... " >&6; }
17097if ${ac_cv_have_uintxx_t+:} false; then :
17098 $as_echo_n "(cached) " >&6
17099else
17100
17101 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17102/* end confdefs.h. */
17103
17104#include <sys/types.h>
17105
17106int
17107main ()
17108{
17109
17110 uint8_t a;
17111 uint16_t b;
17112 uint32_t c;
17113 a = b = c = 1;
17114
17115 ;
17116 return 0;
17117}
17118_ACEOF
17119if ac_fn_c_try_compile "$LINENO"; then :
17120 ac_cv_have_uintxx_t="yes"
17121else
17122 ac_cv_have_uintxx_t="no"
17123
17124fi
17125rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17126
17127fi
17128{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_uintxx_t" >&5
17129$as_echo "$ac_cv_have_uintxx_t" >&6; }
17130 if test "x$ac_cv_have_uintxx_t" = "xyes" ; then
17131
17132$as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h
17133
17134 fi
17135fi
17136
17137if (test -z "$have_uintxx_t" && \
17138 test "x$ac_cv_header_stdint_h" = "xyes")
17139then
17140 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in stdint.h" >&5
17141$as_echo_n "checking for uintXX_t types in stdint.h... " >&6; }
17142 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17143/* end confdefs.h. */
17144 #include <stdint.h>
17145int
17146main ()
17147{
17148 uint8_t a; uint16_t b; uint32_t c; a = b = c = 1;
17149 ;
17150 return 0;
17151}
17152_ACEOF
17153if ac_fn_c_try_compile "$LINENO"; then :
17154
17155 $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h
17156
17157 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17158$as_echo "yes" >&6; }
17159
17160else
17161 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17162$as_echo "no" >&6; }
17163
17164fi
17165rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17166fi
17167
17168if (test -z "$have_uintxx_t" && \
17169 test "x$ac_cv_header_inttypes_h" = "xyes")
17170then
17171 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in inttypes.h" >&5
17172$as_echo_n "checking for uintXX_t types in inttypes.h... " >&6; }
17173 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17174/* end confdefs.h. */
17175 #include <inttypes.h>
17176int
17177main ()
17178{
17179 uint8_t a; uint16_t b; uint32_t c; a = b = c = 1;
17180 ;
17181 return 0;
17182}
17183_ACEOF
17184if ac_fn_c_try_compile "$LINENO"; then :
17185
17186 $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h
17187
17188 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17189$as_echo "yes" >&6; }
17190
17191else
17192 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17193$as_echo "no" >&6; }
17194
17195fi
17196rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17197fi
17198
17199if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \
17200 test "x$ac_cv_header_sys_bitypes_h" = "xyes")
17201then
17202 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t and u_intXX_t types in sys/bitypes.h" >&5
17203$as_echo_n "checking for intXX_t and u_intXX_t types in sys/bitypes.h... " >&6; }
17204 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17205/* end confdefs.h. */
17206
17207#include <sys/bitypes.h>
17208
17209int
17210main ()
17211{
17212
17213 int8_t a; int16_t b; int32_t c;
17214 u_int8_t e; u_int16_t f; u_int32_t g;
17215 a = b = c = e = f = g = 1;
17216
17217 ;
17218 return 0;
17219}
17220_ACEOF
17221if ac_fn_c_try_compile "$LINENO"; then :
17222
17223 $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h
17224
17225 $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h
17226
17227 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17228$as_echo "yes" >&6; }
17229
17230else
17231 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17232$as_echo "no" >&6; }
17233
17234fi
17235rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17236fi
17237
17238
17239{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_char" >&5
17240$as_echo_n "checking for u_char... " >&6; }
17241if ${ac_cv_have_u_char+:} false; then :
17242 $as_echo_n "(cached) " >&6
17243else
17244
17245 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17246/* end confdefs.h. */
17247 #include <sys/types.h>
17248int
17249main ()
17250{
17251 u_char foo; foo = 125;
17252 ;
17253 return 0;
17254}
17255_ACEOF
17256if ac_fn_c_try_compile "$LINENO"; then :
17257 ac_cv_have_u_char="yes"
17258else
17259 ac_cv_have_u_char="no"
17260
17261fi
17262rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17263
17264fi
17265{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_char" >&5
17266$as_echo "$ac_cv_have_u_char" >&6; }
17267if test "x$ac_cv_have_u_char" = "xyes" ; then
17268
17269$as_echo "#define HAVE_U_CHAR 1" >>confdefs.h
17270
17271fi
17272
17273ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" "
17274#include <sys/types.h>
17275#include <stdint.h>
17276
17277"
17278if test "x$ac_cv_type_intmax_t" = xyes; then :
17279
17280cat >>confdefs.h <<_ACEOF
17281#define HAVE_INTMAX_T 1
17282_ACEOF
17283
17284
17285fi
17286ac_fn_c_check_type "$LINENO" "uintmax_t" "ac_cv_type_uintmax_t" "
17287#include <sys/types.h>
17288#include <stdint.h>
17289
17290"
17291if test "x$ac_cv_type_uintmax_t" = xyes; then :
17292
17293cat >>confdefs.h <<_ACEOF
17294#define HAVE_UINTMAX_T 1
17295_ACEOF
17296
17297
17298fi
17299
17300
17301
17302 ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include <sys/types.h>
17303#include <sys/socket.h>
17304"
17305if test "x$ac_cv_type_socklen_t" = xyes; then :
17306
17307else
17308
17309 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5
17310$as_echo_n "checking for socklen_t equivalent... " >&6; }
17311 if ${curl_cv_socklen_t_equiv+:} false; then :
17312 $as_echo_n "(cached) " >&6
17313else
17314
17315 # Systems have either "struct sockaddr *" or
17316 # "void *" as the second argument to getpeername
17317 curl_cv_socklen_t_equiv=
17318 for arg2 in "struct sockaddr" void; do
17319 for t in int size_t unsigned long "unsigned long"; do
17320 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17321/* end confdefs.h. */
17322
17323 #include <sys/types.h>
17324 #include <sys/socket.h>
17325
17326 int getpeername (int, $arg2 *, $t *);
17327
17328int
17329main ()
17330{
17331
17332 $t len;
17333 getpeername(0,0,&len);
17334
17335 ;
17336 return 0;
17337}
17338_ACEOF
17339if ac_fn_c_try_compile "$LINENO"; then :
17340
17341 curl_cv_socklen_t_equiv="$t"
17342 break
17343
17344fi
17345rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17346 done
17347 done
17348
17349 if test "x$curl_cv_socklen_t_equiv" = x; then
17350 as_fn_error $? "Cannot find a type to use in place of socklen_t" "$LINENO" 5
17351 fi
17352
17353fi
17354
17355 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_socklen_t_equiv" >&5
17356$as_echo "$curl_cv_socklen_t_equiv" >&6; }
17357
17358cat >>confdefs.h <<_ACEOF
17359#define socklen_t $curl_cv_socklen_t_equiv
17360_ACEOF
17361
17362fi
17363
17364
17365
17366ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "#include <signal.h>
17367"
17368if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
17369
17370cat >>confdefs.h <<_ACEOF
17371#define HAVE_SIG_ATOMIC_T 1
17372_ACEOF
17373
17374
17375fi
17376
17377ac_fn_c_check_type "$LINENO" "fsblkcnt_t" "ac_cv_type_fsblkcnt_t" "
17378#include <sys/types.h>
17379#ifdef HAVE_SYS_BITYPES_H
17380#include <sys/bitypes.h>
17381#endif
17382#ifdef HAVE_SYS_STATFS_H
17383#include <sys/statfs.h>
17384#endif
17385#ifdef HAVE_SYS_STATVFS_H
17386#include <sys/statvfs.h>
17387#endif
17388
17389"
17390if test "x$ac_cv_type_fsblkcnt_t" = xyes; then :
17391
17392cat >>confdefs.h <<_ACEOF
17393#define HAVE_FSBLKCNT_T 1
17394_ACEOF
17395
17396
17397fi
17398ac_fn_c_check_type "$LINENO" "fsfilcnt_t" "ac_cv_type_fsfilcnt_t" "
17399#include <sys/types.h>
17400#ifdef HAVE_SYS_BITYPES_H
17401#include <sys/bitypes.h>
17402#endif
17403#ifdef HAVE_SYS_STATFS_H
17404#include <sys/statfs.h>
17405#endif
17406#ifdef HAVE_SYS_STATVFS_H
17407#include <sys/statvfs.h>
17408#endif
17409
17410"
17411if test "x$ac_cv_type_fsfilcnt_t" = xyes; then :
17412
17413cat >>confdefs.h <<_ACEOF
17414#define HAVE_FSFILCNT_T 1
17415_ACEOF
17416
17417
17418fi
17419
17420
17421ac_fn_c_check_member "$LINENO" "struct statfs" "f_flags" "ac_cv_member_struct_statfs_f_flags" "
17422#include <sys/types.h>
17423#ifdef HAVE_SYS_BITYPES_H
17424#include <sys/bitypes.h>
17425#endif
17426#ifdef HAVE_SYS_STATFS_H
17427#include <sys/statfs.h>
17428#endif
17429#ifdef HAVE_SYS_STATVFS_H
17430#include <sys/statvfs.h>
17431#endif
17432#ifdef HAVE_SYS_VFS_H
17433#include <sys/vfs.h>
17434#endif
17435
17436"
17437if test "x$ac_cv_member_struct_statfs_f_flags" = xyes; then :
17438
17439cat >>confdefs.h <<_ACEOF
17440#define HAVE_STRUCT_STATFS_F_FLAGS 1
17441_ACEOF
17442
17443
17444fi
17445
17446
17447
17448ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "#include <sys/types.h>
17449#include <netinet/in.h>
17450"
17451if test "x$ac_cv_type_in_addr_t" = xyes; then :
17452
17453cat >>confdefs.h <<_ACEOF
17454#define HAVE_IN_ADDR_T 1
17455_ACEOF
17456
17457
17458fi
17459ac_fn_c_check_type "$LINENO" "in_port_t" "ac_cv_type_in_port_t" "#include <sys/types.h>
17460#include <netinet/in.h>
17461"
17462if test "x$ac_cv_type_in_port_t" = xyes; then :
17463
17464cat >>confdefs.h <<_ACEOF
17465#define HAVE_IN_PORT_T 1
17466_ACEOF
17467
17468
17469fi
17470
17471
17472{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size_t" >&5
17473$as_echo_n "checking for size_t... " >&6; }
17474if ${ac_cv_have_size_t+:} false; then :
17475 $as_echo_n "(cached) " >&6
17476else
17477
17478 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17479/* end confdefs.h. */
17480 #include <sys/types.h>
17481int
17482main ()
17483{
17484 size_t foo; foo = 1235;
17485 ;
17486 return 0;
17487}
17488_ACEOF
17489if ac_fn_c_try_compile "$LINENO"; then :
17490 ac_cv_have_size_t="yes"
17491else
17492 ac_cv_have_size_t="no"
17493
17494fi
17495rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17496
17497fi
17498{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_size_t" >&5
17499$as_echo "$ac_cv_have_size_t" >&6; }
17500if test "x$ac_cv_have_size_t" = "xyes" ; then
17501
17502$as_echo "#define HAVE_SIZE_T 1" >>confdefs.h
17503
17504fi
17505
17506{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5
17507$as_echo_n "checking for ssize_t... " >&6; }
17508if ${ac_cv_have_ssize_t+:} false; then :
17509 $as_echo_n "(cached) " >&6
17510else
17511
17512 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17513/* end confdefs.h. */
17514 #include <sys/types.h>
17515int
17516main ()
17517{
17518 ssize_t foo; foo = 1235;
17519 ;
17520 return 0;
17521}
17522_ACEOF
17523if ac_fn_c_try_compile "$LINENO"; then :
17524 ac_cv_have_ssize_t="yes"
17525else
17526 ac_cv_have_ssize_t="no"
17527
17528fi
17529rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17530
17531fi
17532{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ssize_t" >&5
17533$as_echo "$ac_cv_have_ssize_t" >&6; }
17534if test "x$ac_cv_have_ssize_t" = "xyes" ; then
17535
17536$as_echo "#define HAVE_SSIZE_T 1" >>confdefs.h
17537
17538fi
17539
17540{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5
17541$as_echo_n "checking for clock_t... " >&6; }
17542if ${ac_cv_have_clock_t+:} false; then :
17543 $as_echo_n "(cached) " >&6
17544else
17545
17546 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17547/* end confdefs.h. */
17548 #include <time.h>
17549int
17550main ()
17551{
17552 clock_t foo; foo = 1235;
17553 ;
17554 return 0;
17555}
17556_ACEOF
17557if ac_fn_c_try_compile "$LINENO"; then :
17558 ac_cv_have_clock_t="yes"
17559else
17560 ac_cv_have_clock_t="no"
17561
17562fi
17563rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17564
17565fi
17566{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_clock_t" >&5
17567$as_echo "$ac_cv_have_clock_t" >&6; }
17568if test "x$ac_cv_have_clock_t" = "xyes" ; then
17569
17570$as_echo "#define HAVE_CLOCK_T 1" >>confdefs.h
17571
17572fi
17573
17574{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sa_family_t" >&5
17575$as_echo_n "checking for sa_family_t... " >&6; }
17576if ${ac_cv_have_sa_family_t+:} false; then :
17577 $as_echo_n "(cached) " >&6
17578else
17579
17580 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17581/* end confdefs.h. */
17582
17583#include <sys/types.h>
17584#include <sys/socket.h>
17585
17586int
17587main ()
17588{
17589 sa_family_t foo; foo = 1235;
17590 ;
17591 return 0;
17592}
17593_ACEOF
17594if ac_fn_c_try_compile "$LINENO"; then :
17595 ac_cv_have_sa_family_t="yes"
17596else
17597 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17598/* end confdefs.h. */
17599
17600#include <sys/types.h>
17601#include <sys/socket.h>
17602#include <netinet/in.h>
17603
17604int
17605main ()
17606{
17607 sa_family_t foo; foo = 1235;
17608 ;
17609 return 0;
17610}
17611_ACEOF
17612if ac_fn_c_try_compile "$LINENO"; then :
17613 ac_cv_have_sa_family_t="yes"
17614else
17615 ac_cv_have_sa_family_t="no"
17616
17617fi
17618rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17619
17620fi
17621rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17622
17623fi
17624{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sa_family_t" >&5
17625$as_echo "$ac_cv_have_sa_family_t" >&6; }
17626if test "x$ac_cv_have_sa_family_t" = "xyes" ; then
17627
17628$as_echo "#define HAVE_SA_FAMILY_T 1" >>confdefs.h
17629
17630fi
17631
17632{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pid_t" >&5
17633$as_echo_n "checking for pid_t... " >&6; }
17634if ${ac_cv_have_pid_t+:} false; then :
17635 $as_echo_n "(cached) " >&6
17636else
17637
17638 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17639/* end confdefs.h. */
17640 #include <sys/types.h>
17641int
17642main ()
17643{
17644 pid_t foo; foo = 1235;
17645 ;
17646 return 0;
17647}
17648_ACEOF
17649if ac_fn_c_try_compile "$LINENO"; then :
17650 ac_cv_have_pid_t="yes"
17651else
17652 ac_cv_have_pid_t="no"
17653
17654fi
17655rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17656
17657fi
17658{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_pid_t" >&5
17659$as_echo "$ac_cv_have_pid_t" >&6; }
17660if test "x$ac_cv_have_pid_t" = "xyes" ; then
17661
17662$as_echo "#define HAVE_PID_T 1" >>confdefs.h
17663
17664fi
17665
17666{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for mode_t" >&5
17667$as_echo_n "checking for mode_t... " >&6; }
17668if ${ac_cv_have_mode_t+:} false; then :
17669 $as_echo_n "(cached) " >&6
17670else
17671
17672 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17673/* end confdefs.h. */
17674 #include <sys/types.h>
17675int
17676main ()
17677{
17678 mode_t foo; foo = 1235;
17679 ;
17680 return 0;
17681}
17682_ACEOF
17683if ac_fn_c_try_compile "$LINENO"; then :
17684 ac_cv_have_mode_t="yes"
17685else
17686 ac_cv_have_mode_t="no"
17687
17688fi
17689rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17690
17691fi
17692{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_mode_t" >&5
17693$as_echo "$ac_cv_have_mode_t" >&6; }
17694if test "x$ac_cv_have_mode_t" = "xyes" ; then
17695
17696$as_echo "#define HAVE_MODE_T 1" >>confdefs.h
17697
17698fi
17699
17700
17701{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_storage" >&5
17702$as_echo_n "checking for struct sockaddr_storage... " >&6; }
17703if ${ac_cv_have_struct_sockaddr_storage+:} false; then :
17704 $as_echo_n "(cached) " >&6
17705else
17706
17707 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17708/* end confdefs.h. */
17709
17710#include <sys/types.h>
17711#include <sys/socket.h>
17712
17713int
17714main ()
17715{
17716 struct sockaddr_storage s;
17717 ;
17718 return 0;
17719}
17720_ACEOF
17721if ac_fn_c_try_compile "$LINENO"; then :
17722 ac_cv_have_struct_sockaddr_storage="yes"
17723else
17724 ac_cv_have_struct_sockaddr_storage="no"
17725
17726fi
17727rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17728
17729fi
17730{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_storage" >&5
17731$as_echo "$ac_cv_have_struct_sockaddr_storage" >&6; }
17732if test "x$ac_cv_have_struct_sockaddr_storage" = "xyes" ; then
17733
17734$as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
17735
17736fi
17737
17738{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_in6" >&5
17739$as_echo_n "checking for struct sockaddr_in6... " >&6; }
17740if ${ac_cv_have_struct_sockaddr_in6+:} false; then :
17741 $as_echo_n "(cached) " >&6
17742else
17743
17744 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17745/* end confdefs.h. */
17746
17747#include <sys/types.h>
17748#include <netinet/in.h>
17749
17750int
17751main ()
17752{
17753 struct sockaddr_in6 s; s.sin6_family = 0;
17754 ;
17755 return 0;
17756}
17757_ACEOF
17758if ac_fn_c_try_compile "$LINENO"; then :
17759 ac_cv_have_struct_sockaddr_in6="yes"
17760else
17761 ac_cv_have_struct_sockaddr_in6="no"
17762
17763fi
17764rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17765
17766fi
17767{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_in6" >&5
17768$as_echo "$ac_cv_have_struct_sockaddr_in6" >&6; }
17769if test "x$ac_cv_have_struct_sockaddr_in6" = "xyes" ; then
17770
17771$as_echo "#define HAVE_STRUCT_SOCKADDR_IN6 1" >>confdefs.h
17772
17773fi
17774
17775{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct in6_addr" >&5
17776$as_echo_n "checking for struct in6_addr... " >&6; }
17777if ${ac_cv_have_struct_in6_addr+:} false; then :
17778 $as_echo_n "(cached) " >&6
17779else
17780
17781 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17782/* end confdefs.h. */
17783
17784#include <sys/types.h>
17785#include <netinet/in.h>
17786
17787int
17788main ()
17789{
17790 struct in6_addr s; s.s6_addr[0] = 0;
17791 ;
17792 return 0;
17793}
17794_ACEOF
17795if ac_fn_c_try_compile "$LINENO"; then :
17796 ac_cv_have_struct_in6_addr="yes"
17797else
17798 ac_cv_have_struct_in6_addr="no"
17799
17800fi
17801rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17802
17803fi
17804{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_in6_addr" >&5
17805$as_echo "$ac_cv_have_struct_in6_addr" >&6; }
17806if test "x$ac_cv_have_struct_in6_addr" = "xyes" ; then
17807
17808$as_echo "#define HAVE_STRUCT_IN6_ADDR 1" >>confdefs.h
17809
17810
17811 ac_fn_c_check_member "$LINENO" "struct sockaddr_in6" "sin6_scope_id" "ac_cv_member_struct_sockaddr_in6_sin6_scope_id" "
17812#ifdef HAVE_SYS_TYPES_H
17813#include <sys/types.h>
17814#endif
17815#include <netinet/in.h>
17816
17817"
17818if test "x$ac_cv_member_struct_sockaddr_in6_sin6_scope_id" = xyes; then :
17819
17820cat >>confdefs.h <<_ACEOF
17821#define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1
17822_ACEOF
17823
17824
17825fi
17826
17827fi
17828
17829{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct addrinfo" >&5
17830$as_echo_n "checking for struct addrinfo... " >&6; }
17831if ${ac_cv_have_struct_addrinfo+:} false; then :
17832 $as_echo_n "(cached) " >&6
17833else
17834
17835 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17836/* end confdefs.h. */
17837
17838#include <sys/types.h>
17839#include <sys/socket.h>
17840#include <netdb.h>
17841
17842int
17843main ()
17844{
17845 struct addrinfo s; s.ai_flags = AI_PASSIVE;
17846 ;
17847 return 0;
17848}
17849_ACEOF
17850if ac_fn_c_try_compile "$LINENO"; then :
17851 ac_cv_have_struct_addrinfo="yes"
17852else
17853 ac_cv_have_struct_addrinfo="no"
17854
17855fi
17856rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17857
17858fi
17859{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_addrinfo" >&5
17860$as_echo "$ac_cv_have_struct_addrinfo" >&6; }
17861if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then
17862
17863$as_echo "#define HAVE_STRUCT_ADDRINFO 1" >>confdefs.h
17864
17865fi
17866
17867{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
17868$as_echo_n "checking for struct timeval... " >&6; }
17869if ${ac_cv_have_struct_timeval+:} false; then :
17870 $as_echo_n "(cached) " >&6
17871else
17872
17873 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17874/* end confdefs.h. */
17875 #include <sys/time.h>
17876int
17877main ()
17878{
17879 struct timeval tv; tv.tv_sec = 1;
17880 ;
17881 return 0;
17882}
17883_ACEOF
17884if ac_fn_c_try_compile "$LINENO"; then :
17885 ac_cv_have_struct_timeval="yes"
17886else
17887 ac_cv_have_struct_timeval="no"
17888
17889fi
17890rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17891
17892fi
17893{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_timeval" >&5
17894$as_echo "$ac_cv_have_struct_timeval" >&6; }
17895if test "x$ac_cv_have_struct_timeval" = "xyes" ; then
17896
17897$as_echo "#define HAVE_STRUCT_TIMEVAL 1" >>confdefs.h
17898
17899 have_struct_timeval=1
17900fi
17901
17902ac_fn_c_check_type "$LINENO" "struct timespec" "ac_cv_type_struct_timespec" "$ac_includes_default"
17903if test "x$ac_cv_type_struct_timespec" = xyes; then :
17904
17905cat >>confdefs.h <<_ACEOF
17906#define HAVE_STRUCT_TIMESPEC 1
17907_ACEOF
17908
17909
17910fi
17911
17912
17913# We need int64_t or else certain parts of the compile will fail.
17914if test "x$ac_cv_have_int64_t" = "xno" && \
17915 test "x$ac_cv_sizeof_long_int" != "x8" && \
17916 test "x$ac_cv_sizeof_long_long_int" = "x0" ; then
17917 echo "OpenSSH requires int64_t support. Contact your vendor or install"
17918 echo "an alternative compiler (I.E., GCC) before continuing."
17919 echo ""
17920 exit 1;
17921else
17922 if test "$cross_compiling" = yes; then :
17923 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5
17924$as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;}
17925
17926else
17927 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17928/* end confdefs.h. */
17929
17930#include <stdio.h>
17931#include <string.h>
17932#ifdef HAVE_SNPRINTF
17933main()
17934{
17935 char buf[50];
17936 char expected_out[50];
17937 int mazsize = 50 ;
17938#if (SIZEOF_LONG_INT == 8)
17939 long int num = 0x7fffffffffffffff;
17940#else
17941 long long num = 0x7fffffffffffffffll;
17942#endif
17943 strcpy(expected_out, "9223372036854775807");
17944 snprintf(buf, mazsize, "%lld", num);
17945 if(strcmp(buf, expected_out) != 0)
17946 exit(1);
17947 exit(0);
17948}
17949#else
17950main() { exit(0); }
17951#endif
17952
17953_ACEOF
17954if ac_fn_c_try_run "$LINENO"; then :
17955 true
17956else
17957 $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h
17958
17959fi
17960rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
17961 conftest.$ac_objext conftest.beam conftest.$ac_ext
17962fi
17963
17964fi
17965
17966
17967# look for field 'ut_host' in header 'utmp.h'
17968 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
17969 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host
17970 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmp.h" >&5
17971$as_echo_n "checking for ut_host field in utmp.h... " >&6; }
17972 if eval \${$ossh_varname+:} false; then :
17973 $as_echo_n "(cached) " >&6
17974else
17975
17976 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17977/* end confdefs.h. */
17978#include <utmp.h>
17979
17980_ACEOF
17981if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
17982 $EGREP "ut_host" >/dev/null 2>&1; then :
17983 eval "$ossh_varname=yes"
17984else
17985 eval "$ossh_varname=no"
17986fi
17987rm -f conftest*
17988
17989fi
17990
17991 ossh_result=`eval 'echo $'"$ossh_varname"`
17992 if test -n "`echo $ossh_varname`"; then
17993 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
17994$as_echo "$ossh_result" >&6; }
17995 if test "x$ossh_result" = "xyes"; then
17996
17997$as_echo "#define HAVE_HOST_IN_UTMP 1" >>confdefs.h
17998
17999 fi
18000 else
18001 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18002$as_echo "no" >&6; }
18003 fi
18004
18005
18006# look for field 'ut_host' in header 'utmpx.h'
18007 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18008 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host
18009 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmpx.h" >&5
18010$as_echo_n "checking for ut_host field in utmpx.h... " >&6; }
18011 if eval \${$ossh_varname+:} false; then :
18012 $as_echo_n "(cached) " >&6
18013else
18014
18015 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18016/* end confdefs.h. */
18017#include <utmpx.h>
18018
18019_ACEOF
18020if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18021 $EGREP "ut_host" >/dev/null 2>&1; then :
18022 eval "$ossh_varname=yes"
18023else
18024 eval "$ossh_varname=no"
18025fi
18026rm -f conftest*
18027
18028fi
18029
18030 ossh_result=`eval 'echo $'"$ossh_varname"`
18031 if test -n "`echo $ossh_varname`"; then
18032 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18033$as_echo "$ossh_result" >&6; }
18034 if test "x$ossh_result" = "xyes"; then
18035
18036$as_echo "#define HAVE_HOST_IN_UTMPX 1" >>confdefs.h
18037
18038 fi
18039 else
18040 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18041$as_echo "no" >&6; }
18042 fi
18043
18044
18045# look for field 'syslen' in header 'utmpx.h'
18046 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18047 ossh_varname="ossh_cv_$ossh_safe""_has_"syslen
18048 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for syslen field in utmpx.h" >&5
18049$as_echo_n "checking for syslen field in utmpx.h... " >&6; }
18050 if eval \${$ossh_varname+:} false; then :
18051 $as_echo_n "(cached) " >&6
18052else
18053
18054 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18055/* end confdefs.h. */
18056#include <utmpx.h>
18057
18058_ACEOF
18059if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18060 $EGREP "syslen" >/dev/null 2>&1; then :
18061 eval "$ossh_varname=yes"
18062else
18063 eval "$ossh_varname=no"
18064fi
18065rm -f conftest*
18066
18067fi
18068
18069 ossh_result=`eval 'echo $'"$ossh_varname"`
18070 if test -n "`echo $ossh_varname`"; then
18071 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18072$as_echo "$ossh_result" >&6; }
18073 if test "x$ossh_result" = "xyes"; then
18074
18075$as_echo "#define HAVE_SYSLEN_IN_UTMPX 1" >>confdefs.h
18076
18077 fi
18078 else
18079 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18080$as_echo "no" >&6; }
18081 fi
18082
18083
18084# look for field 'ut_pid' in header 'utmp.h'
18085 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18086 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_pid
18087 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_pid field in utmp.h" >&5
18088$as_echo_n "checking for ut_pid field in utmp.h... " >&6; }
18089 if eval \${$ossh_varname+:} false; then :
18090 $as_echo_n "(cached) " >&6
18091else
18092
18093 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18094/* end confdefs.h. */
18095#include <utmp.h>
18096
18097_ACEOF
18098if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18099 $EGREP "ut_pid" >/dev/null 2>&1; then :
18100 eval "$ossh_varname=yes"
18101else
18102 eval "$ossh_varname=no"
18103fi
18104rm -f conftest*
18105
18106fi
18107
18108 ossh_result=`eval 'echo $'"$ossh_varname"`
18109 if test -n "`echo $ossh_varname`"; then
18110 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18111$as_echo "$ossh_result" >&6; }
18112 if test "x$ossh_result" = "xyes"; then
18113
18114$as_echo "#define HAVE_PID_IN_UTMP 1" >>confdefs.h
18115
18116 fi
18117 else
18118 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18119$as_echo "no" >&6; }
18120 fi
18121
18122
18123# look for field 'ut_type' in header 'utmp.h'
18124 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18125 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type
18126 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmp.h" >&5
18127$as_echo_n "checking for ut_type field in utmp.h... " >&6; }
18128 if eval \${$ossh_varname+:} false; then :
18129 $as_echo_n "(cached) " >&6
18130else
18131
18132 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18133/* end confdefs.h. */
18134#include <utmp.h>
18135
18136_ACEOF
18137if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18138 $EGREP "ut_type" >/dev/null 2>&1; then :
18139 eval "$ossh_varname=yes"
18140else
18141 eval "$ossh_varname=no"
18142fi
18143rm -f conftest*
18144
18145fi
18146
18147 ossh_result=`eval 'echo $'"$ossh_varname"`
18148 if test -n "`echo $ossh_varname`"; then
18149 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18150$as_echo "$ossh_result" >&6; }
18151 if test "x$ossh_result" = "xyes"; then
18152
18153$as_echo "#define HAVE_TYPE_IN_UTMP 1" >>confdefs.h
18154
18155 fi
18156 else
18157 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18158$as_echo "no" >&6; }
18159 fi
18160
18161
18162# look for field 'ut_type' in header 'utmpx.h'
18163 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18164 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type
18165 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmpx.h" >&5
18166$as_echo_n "checking for ut_type field in utmpx.h... " >&6; }
18167 if eval \${$ossh_varname+:} false; then :
18168 $as_echo_n "(cached) " >&6
18169else
18170
18171 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18172/* end confdefs.h. */
18173#include <utmpx.h>
18174
18175_ACEOF
18176if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18177 $EGREP "ut_type" >/dev/null 2>&1; then :
18178 eval "$ossh_varname=yes"
18179else
18180 eval "$ossh_varname=no"
18181fi
18182rm -f conftest*
18183
18184fi
18185
18186 ossh_result=`eval 'echo $'"$ossh_varname"`
18187 if test -n "`echo $ossh_varname`"; then
18188 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18189$as_echo "$ossh_result" >&6; }
18190 if test "x$ossh_result" = "xyes"; then
18191
18192$as_echo "#define HAVE_TYPE_IN_UTMPX 1" >>confdefs.h
18193
18194 fi
18195 else
18196 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18197$as_echo "no" >&6; }
18198 fi
18199
18200
18201# look for field 'ut_tv' in header 'utmp.h'
18202 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18203 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv
18204 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmp.h" >&5
18205$as_echo_n "checking for ut_tv field in utmp.h... " >&6; }
18206 if eval \${$ossh_varname+:} false; then :
18207 $as_echo_n "(cached) " >&6
18208else
18209
18210 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18211/* end confdefs.h. */
18212#include <utmp.h>
18213
18214_ACEOF
18215if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18216 $EGREP "ut_tv" >/dev/null 2>&1; then :
18217 eval "$ossh_varname=yes"
18218else
18219 eval "$ossh_varname=no"
18220fi
18221rm -f conftest*
18222
18223fi
18224
18225 ossh_result=`eval 'echo $'"$ossh_varname"`
18226 if test -n "`echo $ossh_varname`"; then
18227 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18228$as_echo "$ossh_result" >&6; }
18229 if test "x$ossh_result" = "xyes"; then
18230
18231$as_echo "#define HAVE_TV_IN_UTMP 1" >>confdefs.h
18232
18233 fi
18234 else
18235 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18236$as_echo "no" >&6; }
18237 fi
18238
18239
18240# look for field 'ut_id' in header 'utmp.h'
18241 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18242 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id
18243 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmp.h" >&5
18244$as_echo_n "checking for ut_id field in utmp.h... " >&6; }
18245 if eval \${$ossh_varname+:} false; then :
18246 $as_echo_n "(cached) " >&6
18247else
18248
18249 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18250/* end confdefs.h. */
18251#include <utmp.h>
18252
18253_ACEOF
18254if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18255 $EGREP "ut_id" >/dev/null 2>&1; then :
18256 eval "$ossh_varname=yes"
18257else
18258 eval "$ossh_varname=no"
18259fi
18260rm -f conftest*
18261
18262fi
18263
18264 ossh_result=`eval 'echo $'"$ossh_varname"`
18265 if test -n "`echo $ossh_varname`"; then
18266 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18267$as_echo "$ossh_result" >&6; }
18268 if test "x$ossh_result" = "xyes"; then
18269
18270$as_echo "#define HAVE_ID_IN_UTMP 1" >>confdefs.h
18271
18272 fi
18273 else
18274 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18275$as_echo "no" >&6; }
18276 fi
18277
18278
18279# look for field 'ut_id' in header 'utmpx.h'
18280 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18281 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id
18282 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmpx.h" >&5
18283$as_echo_n "checking for ut_id field in utmpx.h... " >&6; }
18284 if eval \${$ossh_varname+:} false; then :
18285 $as_echo_n "(cached) " >&6
18286else
18287
18288 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18289/* end confdefs.h. */
18290#include <utmpx.h>
18291
18292_ACEOF
18293if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18294 $EGREP "ut_id" >/dev/null 2>&1; then :
18295 eval "$ossh_varname=yes"
18296else
18297 eval "$ossh_varname=no"
18298fi
18299rm -f conftest*
18300
18301fi
18302
18303 ossh_result=`eval 'echo $'"$ossh_varname"`
18304 if test -n "`echo $ossh_varname`"; then
18305 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18306$as_echo "$ossh_result" >&6; }
18307 if test "x$ossh_result" = "xyes"; then
18308
18309$as_echo "#define HAVE_ID_IN_UTMPX 1" >>confdefs.h
18310
18311 fi
18312 else
18313 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18314$as_echo "no" >&6; }
18315 fi
18316
18317
18318# look for field 'ut_addr' in header 'utmp.h'
18319 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18320 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr
18321 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmp.h" >&5
18322$as_echo_n "checking for ut_addr field in utmp.h... " >&6; }
18323 if eval \${$ossh_varname+:} false; then :
18324 $as_echo_n "(cached) " >&6
18325else
18326
18327 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18328/* end confdefs.h. */
18329#include <utmp.h>
18330
18331_ACEOF
18332if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18333 $EGREP "ut_addr" >/dev/null 2>&1; then :
18334 eval "$ossh_varname=yes"
18335else
18336 eval "$ossh_varname=no"
18337fi
18338rm -f conftest*
18339
18340fi
18341
18342 ossh_result=`eval 'echo $'"$ossh_varname"`
18343 if test -n "`echo $ossh_varname`"; then
18344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18345$as_echo "$ossh_result" >&6; }
18346 if test "x$ossh_result" = "xyes"; then
18347
18348$as_echo "#define HAVE_ADDR_IN_UTMP 1" >>confdefs.h
18349
18350 fi
18351 else
18352 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18353$as_echo "no" >&6; }
18354 fi
18355
18356
18357# look for field 'ut_addr' in header 'utmpx.h'
18358 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18359 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr
18360 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmpx.h" >&5
18361$as_echo_n "checking for ut_addr field in utmpx.h... " >&6; }
18362 if eval \${$ossh_varname+:} false; then :
18363 $as_echo_n "(cached) " >&6
18364else
18365
18366 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18367/* end confdefs.h. */
18368#include <utmpx.h>
18369
18370_ACEOF
18371if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18372 $EGREP "ut_addr" >/dev/null 2>&1; then :
18373 eval "$ossh_varname=yes"
18374else
18375 eval "$ossh_varname=no"
18376fi
18377rm -f conftest*
18378
18379fi
18380
18381 ossh_result=`eval 'echo $'"$ossh_varname"`
18382 if test -n "`echo $ossh_varname`"; then
18383 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18384$as_echo "$ossh_result" >&6; }
18385 if test "x$ossh_result" = "xyes"; then
18386
18387$as_echo "#define HAVE_ADDR_IN_UTMPX 1" >>confdefs.h
18388
18389 fi
18390 else
18391 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18392$as_echo "no" >&6; }
18393 fi
18394
18395
18396# look for field 'ut_addr_v6' in header 'utmp.h'
18397 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18398 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6
18399 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmp.h" >&5
18400$as_echo_n "checking for ut_addr_v6 field in utmp.h... " >&6; }
18401 if eval \${$ossh_varname+:} false; then :
18402 $as_echo_n "(cached) " >&6
18403else
18404
18405 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18406/* end confdefs.h. */
18407#include <utmp.h>
18408
18409_ACEOF
18410if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18411 $EGREP "ut_addr_v6" >/dev/null 2>&1; then :
18412 eval "$ossh_varname=yes"
18413else
18414 eval "$ossh_varname=no"
18415fi
18416rm -f conftest*
18417
18418fi
18419
18420 ossh_result=`eval 'echo $'"$ossh_varname"`
18421 if test -n "`echo $ossh_varname`"; then
18422 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18423$as_echo "$ossh_result" >&6; }
18424 if test "x$ossh_result" = "xyes"; then
18425
18426$as_echo "#define HAVE_ADDR_V6_IN_UTMP 1" >>confdefs.h
18427
18428 fi
18429 else
18430 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18431$as_echo "no" >&6; }
18432 fi
18433
18434
18435# look for field 'ut_addr_v6' in header 'utmpx.h'
18436 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18437 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6
18438 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmpx.h" >&5
18439$as_echo_n "checking for ut_addr_v6 field in utmpx.h... " >&6; }
18440 if eval \${$ossh_varname+:} false; then :
18441 $as_echo_n "(cached) " >&6
18442else
18443
18444 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18445/* end confdefs.h. */
18446#include <utmpx.h>
18447
18448_ACEOF
18449if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18450 $EGREP "ut_addr_v6" >/dev/null 2>&1; then :
18451 eval "$ossh_varname=yes"
18452else
18453 eval "$ossh_varname=no"
18454fi
18455rm -f conftest*
18456
18457fi
18458
18459 ossh_result=`eval 'echo $'"$ossh_varname"`
18460 if test -n "`echo $ossh_varname`"; then
18461 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18462$as_echo "$ossh_result" >&6; }
18463 if test "x$ossh_result" = "xyes"; then
18464
18465$as_echo "#define HAVE_ADDR_V6_IN_UTMPX 1" >>confdefs.h
18466
18467 fi
18468 else
18469 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18470$as_echo "no" >&6; }
18471 fi
18472
18473
18474# look for field 'ut_exit' in header 'utmp.h'
18475 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18476 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_exit
18477 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_exit field in utmp.h" >&5
18478$as_echo_n "checking for ut_exit field in utmp.h... " >&6; }
18479 if eval \${$ossh_varname+:} false; then :
18480 $as_echo_n "(cached) " >&6
18481else
18482
18483 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18484/* end confdefs.h. */
18485#include <utmp.h>
18486
18487_ACEOF
18488if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18489 $EGREP "ut_exit" >/dev/null 2>&1; then :
18490 eval "$ossh_varname=yes"
18491else
18492 eval "$ossh_varname=no"
18493fi
18494rm -f conftest*
18495
18496fi
18497
18498 ossh_result=`eval 'echo $'"$ossh_varname"`
18499 if test -n "`echo $ossh_varname`"; then
18500 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18501$as_echo "$ossh_result" >&6; }
18502 if test "x$ossh_result" = "xyes"; then
18503
18504$as_echo "#define HAVE_EXIT_IN_UTMP 1" >>confdefs.h
18505
18506 fi
18507 else
18508 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18509$as_echo "no" >&6; }
18510 fi
18511
18512
18513# look for field 'ut_time' in header 'utmp.h'
18514 ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'`
18515 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time
18516 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmp.h" >&5
18517$as_echo_n "checking for ut_time field in utmp.h... " >&6; }
18518 if eval \${$ossh_varname+:} false; then :
18519 $as_echo_n "(cached) " >&6
18520else
18521
18522 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18523/* end confdefs.h. */
18524#include <utmp.h>
18525
18526_ACEOF
18527if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18528 $EGREP "ut_time" >/dev/null 2>&1; then :
18529 eval "$ossh_varname=yes"
18530else
18531 eval "$ossh_varname=no"
18532fi
18533rm -f conftest*
18534
18535fi
18536
18537 ossh_result=`eval 'echo $'"$ossh_varname"`
18538 if test -n "`echo $ossh_varname`"; then
18539 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18540$as_echo "$ossh_result" >&6; }
18541 if test "x$ossh_result" = "xyes"; then
18542
18543$as_echo "#define HAVE_TIME_IN_UTMP 1" >>confdefs.h
18544
18545 fi
18546 else
18547 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18548$as_echo "no" >&6; }
18549 fi
18550
18551
18552# look for field 'ut_time' in header 'utmpx.h'
18553 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18554 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time
18555 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmpx.h" >&5
18556$as_echo_n "checking for ut_time field in utmpx.h... " >&6; }
18557 if eval \${$ossh_varname+:} false; then :
18558 $as_echo_n "(cached) " >&6
18559else
18560
18561 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18562/* end confdefs.h. */
18563#include <utmpx.h>
18564
18565_ACEOF
18566if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18567 $EGREP "ut_time" >/dev/null 2>&1; then :
18568 eval "$ossh_varname=yes"
18569else
18570 eval "$ossh_varname=no"
18571fi
18572rm -f conftest*
18573
18574fi
18575
18576 ossh_result=`eval 'echo $'"$ossh_varname"`
18577 if test -n "`echo $ossh_varname`"; then
18578 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18579$as_echo "$ossh_result" >&6; }
18580 if test "x$ossh_result" = "xyes"; then
18581
18582$as_echo "#define HAVE_TIME_IN_UTMPX 1" >>confdefs.h
18583
18584 fi
18585 else
18586 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18587$as_echo "no" >&6; }
18588 fi
18589
18590
18591# look for field 'ut_tv' in header 'utmpx.h'
18592 ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'`
18593 ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv
18594 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmpx.h" >&5
18595$as_echo_n "checking for ut_tv field in utmpx.h... " >&6; }
18596 if eval \${$ossh_varname+:} false; then :
18597 $as_echo_n "(cached) " >&6
18598else
18599
18600 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18601/* end confdefs.h. */
18602#include <utmpx.h>
18603
18604_ACEOF
18605if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
18606 $EGREP "ut_tv" >/dev/null 2>&1; then :
18607 eval "$ossh_varname=yes"
18608else
18609 eval "$ossh_varname=no"
18610fi
18611rm -f conftest*
18612
18613fi
18614
18615 ossh_result=`eval 'echo $'"$ossh_varname"`
18616 if test -n "`echo $ossh_varname`"; then
18617 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5
18618$as_echo "$ossh_result" >&6; }
18619 if test "x$ossh_result" = "xyes"; then
18620
18621$as_echo "#define HAVE_TV_IN_UTMPX 1" >>confdefs.h
18622
18623 fi
18624 else
18625 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18626$as_echo "no" >&6; }
18627 fi
18628
18629
18630ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default"
18631if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then :
18632
18633cat >>confdefs.h <<_ACEOF
18634#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
18635_ACEOF
18636
18637
18638fi
18639
18640ac_fn_c_check_member "$LINENO" "struct stat" "st_mtim" "ac_cv_member_struct_stat_st_mtim" "$ac_includes_default"
18641if test "x$ac_cv_member_struct_stat_st_mtim" = xyes; then :
18642
18643cat >>confdefs.h <<_ACEOF
18644#define HAVE_STRUCT_STAT_ST_MTIM 1
18645_ACEOF
18646
18647
18648fi
18649
18650ac_fn_c_check_member "$LINENO" "struct stat" "st_mtime" "ac_cv_member_struct_stat_st_mtime" "$ac_includes_default"
18651if test "x$ac_cv_member_struct_stat_st_mtime" = xyes; then :
18652
18653cat >>confdefs.h <<_ACEOF
18654#define HAVE_STRUCT_STAT_ST_MTIME 1
18655_ACEOF
18656
18657
18658fi
18659
18660ac_fn_c_check_member "$LINENO" "struct passwd" "pw_gecos" "ac_cv_member_struct_passwd_pw_gecos" "
18661#include <sys/types.h>
18662#include <pwd.h>
18663
18664"
18665if test "x$ac_cv_member_struct_passwd_pw_gecos" = xyes; then :
18666
18667cat >>confdefs.h <<_ACEOF
18668#define HAVE_STRUCT_PASSWD_PW_GECOS 1
18669_ACEOF
18670
18671
18672fi
18673ac_fn_c_check_member "$LINENO" "struct passwd" "pw_class" "ac_cv_member_struct_passwd_pw_class" "
18674#include <sys/types.h>
18675#include <pwd.h>
18676
18677"
18678if test "x$ac_cv_member_struct_passwd_pw_class" = xyes; then :
18679
18680cat >>confdefs.h <<_ACEOF
18681#define HAVE_STRUCT_PASSWD_PW_CLASS 1
18682_ACEOF
18683
18684
18685fi
18686ac_fn_c_check_member "$LINENO" "struct passwd" "pw_change" "ac_cv_member_struct_passwd_pw_change" "
18687#include <sys/types.h>
18688#include <pwd.h>
18689
18690"
18691if test "x$ac_cv_member_struct_passwd_pw_change" = xyes; then :
18692
18693cat >>confdefs.h <<_ACEOF
18694#define HAVE_STRUCT_PASSWD_PW_CHANGE 1
18695_ACEOF
18696
18697
18698fi
18699ac_fn_c_check_member "$LINENO" "struct passwd" "pw_expire" "ac_cv_member_struct_passwd_pw_expire" "
18700#include <sys/types.h>
18701#include <pwd.h>
18702
18703"
18704if test "x$ac_cv_member_struct_passwd_pw_expire" = xyes; then :
18705
18706cat >>confdefs.h <<_ACEOF
18707#define HAVE_STRUCT_PASSWD_PW_EXPIRE 1
18708_ACEOF
18709
18710
18711fi
18712
18713
18714ac_fn_c_check_member "$LINENO" "struct __res_state" "retrans" "ac_cv_member_struct___res_state_retrans" "
18715#include <stdio.h>
18716#if HAVE_SYS_TYPES_H
18717# include <sys/types.h>
18718#endif
18719#include <netinet/in.h>
18720#include <arpa/nameser.h>
18721#include <resolv.h>
18722
18723"
18724if test "x$ac_cv_member_struct___res_state_retrans" = xyes; then :
18725
18726else
18727
18728$as_echo "#define __res_state state" >>confdefs.h
18729
18730fi
18731
18732
18733{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ss_family field in struct sockaddr_storage" >&5
18734$as_echo_n "checking for ss_family field in struct sockaddr_storage... " >&6; }
18735if ${ac_cv_have_ss_family_in_struct_ss+:} false; then :
18736 $as_echo_n "(cached) " >&6
18737else
18738
18739 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18740/* end confdefs.h. */
18741
18742#include <sys/types.h>
18743#include <sys/socket.h>
18744
18745int
18746main ()
18747{
18748 struct sockaddr_storage s; s.ss_family = 1;
18749 ;
18750 return 0;
18751}
18752_ACEOF
18753if ac_fn_c_try_compile "$LINENO"; then :
18754 ac_cv_have_ss_family_in_struct_ss="yes"
18755else
18756 ac_cv_have_ss_family_in_struct_ss="no"
18757fi
18758rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18759
18760fi
18761{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ss_family_in_struct_ss" >&5
18762$as_echo "$ac_cv_have_ss_family_in_struct_ss" >&6; }
18763if test "x$ac_cv_have_ss_family_in_struct_ss" = "xyes" ; then
18764
18765$as_echo "#define HAVE_SS_FAMILY_IN_SS 1" >>confdefs.h
18766
18767fi
18768
18769{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __ss_family field in struct sockaddr_storage" >&5
18770$as_echo_n "checking for __ss_family field in struct sockaddr_storage... " >&6; }
18771if ${ac_cv_have___ss_family_in_struct_ss+:} false; then :
18772 $as_echo_n "(cached) " >&6
18773else
18774
18775 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18776/* end confdefs.h. */
18777
18778#include <sys/types.h>
18779#include <sys/socket.h>
18780
18781int
18782main ()
18783{
18784 struct sockaddr_storage s; s.__ss_family = 1;
18785 ;
18786 return 0;
18787}
18788_ACEOF
18789if ac_fn_c_try_compile "$LINENO"; then :
18790 ac_cv_have___ss_family_in_struct_ss="yes"
18791else
18792 ac_cv_have___ss_family_in_struct_ss="no"
18793
18794fi
18795rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18796
18797fi
18798{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___ss_family_in_struct_ss" >&5
18799$as_echo "$ac_cv_have___ss_family_in_struct_ss" >&6; }
18800if test "x$ac_cv_have___ss_family_in_struct_ss" = "xyes" ; then
18801
18802$as_echo "#define HAVE___SS_FAMILY_IN_SS 1" >>confdefs.h
18803
18804fi
18805
18806{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_accrights field in struct msghdr" >&5
18807$as_echo_n "checking for msg_accrights field in struct msghdr... " >&6; }
18808if ${ac_cv_have_accrights_in_msghdr+:} false; then :
18809 $as_echo_n "(cached) " >&6
18810else
18811
18812 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18813/* end confdefs.h. */
18814
18815#include <sys/types.h>
18816#include <sys/socket.h>
18817#include <sys/uio.h>
18818
18819int
18820main ()
18821{
18822
18823#ifdef msg_accrights
18824#error "msg_accrights is a macro"
18825exit(1);
18826#endif
18827struct msghdr m;
18828m.msg_accrights = 0;
18829exit(0);
18830
18831 ;
18832 return 0;
18833}
18834_ACEOF
18835if ac_fn_c_try_compile "$LINENO"; then :
18836 ac_cv_have_accrights_in_msghdr="yes"
18837else
18838 ac_cv_have_accrights_in_msghdr="no"
18839
18840fi
18841rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18842
18843fi
18844{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_accrights_in_msghdr" >&5
18845$as_echo "$ac_cv_have_accrights_in_msghdr" >&6; }
18846if test "x$ac_cv_have_accrights_in_msghdr" = "xyes" ; then
18847
18848$as_echo "#define HAVE_ACCRIGHTS_IN_MSGHDR 1" >>confdefs.h
18849
18850fi
18851
18852{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct statvfs.f_fsid is integral type" >&5
18853$as_echo_n "checking if struct statvfs.f_fsid is integral type... " >&6; }
18854cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18855/* end confdefs.h. */
18856
18857#include <sys/param.h>
18858#include <sys/stat.h>
18859#ifdef HAVE_SYS_TIME_H
18860# include <sys/time.h>
18861#endif
18862#ifdef HAVE_SYS_MOUNT_H
18863#include <sys/mount.h>
18864#endif
18865#ifdef HAVE_SYS_STATVFS_H
18866#include <sys/statvfs.h>
18867#endif
18868
18869int
18870main ()
18871{
18872 struct statvfs s; s.f_fsid = 0;
18873 ;
18874 return 0;
18875}
18876_ACEOF
18877if ac_fn_c_try_compile "$LINENO"; then :
18878 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18879$as_echo "yes" >&6; }
18880else
18881 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18882$as_echo "no" >&6; }
18883
18884 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsid_t has member val" >&5
18885$as_echo_n "checking if fsid_t has member val... " >&6; }
18886 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18887/* end confdefs.h. */
18888
18889#include <sys/types.h>
18890#include <sys/statvfs.h>
18891
18892int
18893main ()
18894{
18895 fsid_t t; t.val[0] = 0;
18896 ;
18897 return 0;
18898}
18899_ACEOF
18900if ac_fn_c_try_compile "$LINENO"; then :
18901 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18902$as_echo "yes" >&6; }
18903
18904$as_echo "#define FSID_HAS_VAL 1" >>confdefs.h
18905
18906else
18907 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18908$as_echo "no" >&6; }
18909fi
18910rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18911
18912 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if f_fsid has member __val" >&5
18913$as_echo_n "checking if f_fsid has member __val... " >&6; }
18914 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18915/* end confdefs.h. */
18916
18917#include <sys/types.h>
18918#include <sys/statvfs.h>
18919
18920int
18921main ()
18922{
18923 fsid_t t; t.__val[0] = 0;
18924 ;
18925 return 0;
18926}
18927_ACEOF
18928if ac_fn_c_try_compile "$LINENO"; then :
18929 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
18930$as_echo "yes" >&6; }
18931
18932$as_echo "#define FSID_HAS___VAL 1" >>confdefs.h
18933
18934else
18935 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
18936$as_echo "no" >&6; }
18937fi
18938rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18939
18940fi
18941rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18942
18943{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_control field in struct msghdr" >&5
18944$as_echo_n "checking for msg_control field in struct msghdr... " >&6; }
18945if ${ac_cv_have_control_in_msghdr+:} false; then :
18946 $as_echo_n "(cached) " >&6
18947else
18948
18949 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18950/* end confdefs.h. */
18951
18952#include <sys/types.h>
18953#include <sys/socket.h>
18954#include <sys/uio.h>
18955
18956int
18957main ()
18958{
18959
18960#ifdef msg_control
18961#error "msg_control is a macro"
18962exit(1);
18963#endif
18964struct msghdr m;
18965m.msg_control = 0;
18966exit(0);
18967
18968 ;
18969 return 0;
18970}
18971_ACEOF
18972if ac_fn_c_try_compile "$LINENO"; then :
18973 ac_cv_have_control_in_msghdr="yes"
18974else
18975 ac_cv_have_control_in_msghdr="no"
18976
18977fi
18978rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
18979
18980fi
18981{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_control_in_msghdr" >&5
18982$as_echo "$ac_cv_have_control_in_msghdr" >&6; }
18983if test "x$ac_cv_have_control_in_msghdr" = "xyes" ; then
18984
18985$as_echo "#define HAVE_CONTROL_IN_MSGHDR 1" >>confdefs.h
18986
18987fi
18988
18989{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines __progname" >&5
18990$as_echo_n "checking if libc defines __progname... " >&6; }
18991if ${ac_cv_libc_defines___progname+:} false; then :
18992 $as_echo_n "(cached) " >&6
18993else
18994
18995 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
18996/* end confdefs.h. */
18997
18998int
18999main ()
19000{
19001 extern char *__progname; printf("%s", __progname);
19002 ;
19003 return 0;
19004}
19005_ACEOF
19006if ac_fn_c_try_link "$LINENO"; then :
19007 ac_cv_libc_defines___progname="yes"
19008else
19009 ac_cv_libc_defines___progname="no"
19010
19011fi
19012rm -f core conftest.err conftest.$ac_objext \
19013 conftest$ac_exeext conftest.$ac_ext
19014
19015fi
19016{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines___progname" >&5
19017$as_echo "$ac_cv_libc_defines___progname" >&6; }
19018if test "x$ac_cv_libc_defines___progname" = "xyes" ; then
19019
19020$as_echo "#define HAVE___PROGNAME 1" >>confdefs.h
19021
19022fi
19023
19024{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __FUNCTION__" >&5
19025$as_echo_n "checking whether $CC implements __FUNCTION__... " >&6; }
19026if ${ac_cv_cc_implements___FUNCTION__+:} false; then :
19027 $as_echo_n "(cached) " >&6
19028else
19029
19030 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19031/* end confdefs.h. */
19032 #include <stdio.h>
19033int
19034main ()
19035{
19036 printf("%s", __FUNCTION__);
19037 ;
19038 return 0;
19039}
19040_ACEOF
19041if ac_fn_c_try_link "$LINENO"; then :
19042 ac_cv_cc_implements___FUNCTION__="yes"
19043else
19044 ac_cv_cc_implements___FUNCTION__="no"
19045
19046fi
19047rm -f core conftest.err conftest.$ac_objext \
19048 conftest$ac_exeext conftest.$ac_ext
19049
19050fi
19051{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___FUNCTION__" >&5
19052$as_echo "$ac_cv_cc_implements___FUNCTION__" >&6; }
19053if test "x$ac_cv_cc_implements___FUNCTION__" = "xyes" ; then
19054
19055$as_echo "#define HAVE___FUNCTION__ 1" >>confdefs.h
19056
19057fi
19058
19059{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __func__" >&5
19060$as_echo_n "checking whether $CC implements __func__... " >&6; }
19061if ${ac_cv_cc_implements___func__+:} false; then :
19062 $as_echo_n "(cached) " >&6
19063else
19064
19065 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19066/* end confdefs.h. */
19067 #include <stdio.h>
19068int
19069main ()
19070{
19071 printf("%s", __func__);
19072 ;
19073 return 0;
19074}
19075_ACEOF
19076if ac_fn_c_try_link "$LINENO"; then :
19077 ac_cv_cc_implements___func__="yes"
19078else
19079 ac_cv_cc_implements___func__="no"
19080
19081fi
19082rm -f core conftest.err conftest.$ac_objext \
19083 conftest$ac_exeext conftest.$ac_ext
19084
19085fi
19086{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___func__" >&5
19087$as_echo "$ac_cv_cc_implements___func__" >&6; }
19088if test "x$ac_cv_cc_implements___func__" = "xyes" ; then
19089
19090$as_echo "#define HAVE___func__ 1" >>confdefs.h
19091
19092fi
19093
19094{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether va_copy exists" >&5
19095$as_echo_n "checking whether va_copy exists... " >&6; }
19096if ${ac_cv_have_va_copy+:} false; then :
19097 $as_echo_n "(cached) " >&6
19098else
19099
19100 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19101/* end confdefs.h. */
19102
19103#include <stdarg.h>
19104va_list x,y;
19105
19106int
19107main ()
19108{
19109 va_copy(x,y);
19110 ;
19111 return 0;
19112}
19113_ACEOF
19114if ac_fn_c_try_link "$LINENO"; then :
19115 ac_cv_have_va_copy="yes"
19116else
19117 ac_cv_have_va_copy="no"
19118
19119fi
19120rm -f core conftest.err conftest.$ac_objext \
19121 conftest$ac_exeext conftest.$ac_ext
19122
19123fi
19124{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_va_copy" >&5
19125$as_echo "$ac_cv_have_va_copy" >&6; }
19126if test "x$ac_cv_have_va_copy" = "xyes" ; then
19127
19128$as_echo "#define HAVE_VA_COPY 1" >>confdefs.h
19129
19130fi
19131
19132{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __va_copy exists" >&5
19133$as_echo_n "checking whether __va_copy exists... " >&6; }
19134if ${ac_cv_have___va_copy+:} false; then :
19135 $as_echo_n "(cached) " >&6
19136else
19137
19138 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19139/* end confdefs.h. */
19140
19141#include <stdarg.h>
19142va_list x,y;
19143
19144int
19145main ()
19146{
19147 __va_copy(x,y);
19148 ;
19149 return 0;
19150}
19151_ACEOF
19152if ac_fn_c_try_link "$LINENO"; then :
19153 ac_cv_have___va_copy="yes"
19154else
19155 ac_cv_have___va_copy="no"
19156
19157fi
19158rm -f core conftest.err conftest.$ac_objext \
19159 conftest$ac_exeext conftest.$ac_ext
19160
19161fi
19162{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___va_copy" >&5
19163$as_echo "$ac_cv_have___va_copy" >&6; }
19164if test "x$ac_cv_have___va_copy" = "xyes" ; then
19165
19166$as_echo "#define HAVE___VA_COPY 1" >>confdefs.h
19167
19168fi
19169
19170{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getopt has optreset support" >&5
19171$as_echo_n "checking whether getopt has optreset support... " >&6; }
19172if ${ac_cv_have_getopt_optreset+:} false; then :
19173 $as_echo_n "(cached) " >&6
19174else
19175
19176 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19177/* end confdefs.h. */
19178 #include <getopt.h>
19179int
19180main ()
19181{
19182 extern int optreset; optreset = 0;
19183 ;
19184 return 0;
19185}
19186_ACEOF
19187if ac_fn_c_try_link "$LINENO"; then :
19188 ac_cv_have_getopt_optreset="yes"
19189else
19190 ac_cv_have_getopt_optreset="no"
19191
19192fi
19193rm -f core conftest.err conftest.$ac_objext \
19194 conftest$ac_exeext conftest.$ac_ext
19195
19196fi
19197{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getopt_optreset" >&5
19198$as_echo "$ac_cv_have_getopt_optreset" >&6; }
19199if test "x$ac_cv_have_getopt_optreset" = "xyes" ; then
19200
19201$as_echo "#define HAVE_GETOPT_OPTRESET 1" >>confdefs.h
19202
19203fi
19204
19205{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_errlist" >&5
19206$as_echo_n "checking if libc defines sys_errlist... " >&6; }
19207if ${ac_cv_libc_defines_sys_errlist+:} false; then :
19208 $as_echo_n "(cached) " >&6
19209else
19210
19211 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19212/* end confdefs.h. */
19213
19214int
19215main ()
19216{
19217 extern const char *const sys_errlist[]; printf("%s", sys_errlist[0]);
19218 ;
19219 return 0;
19220}
19221_ACEOF
19222if ac_fn_c_try_link "$LINENO"; then :
19223 ac_cv_libc_defines_sys_errlist="yes"
19224else
19225 ac_cv_libc_defines_sys_errlist="no"
19226
19227fi
19228rm -f core conftest.err conftest.$ac_objext \
19229 conftest$ac_exeext conftest.$ac_ext
19230
19231fi
19232{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_errlist" >&5
19233$as_echo "$ac_cv_libc_defines_sys_errlist" >&6; }
19234if test "x$ac_cv_libc_defines_sys_errlist" = "xyes" ; then
19235
19236$as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h
19237
19238fi
19239
19240
19241{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_nerr" >&5
19242$as_echo_n "checking if libc defines sys_nerr... " >&6; }
19243if ${ac_cv_libc_defines_sys_nerr+:} false; then :
19244 $as_echo_n "(cached) " >&6
19245else
19246
19247 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19248/* end confdefs.h. */
19249
19250int
19251main ()
19252{
19253 extern int sys_nerr; printf("%i", sys_nerr);
19254 ;
19255 return 0;
19256}
19257_ACEOF
19258if ac_fn_c_try_link "$LINENO"; then :
19259 ac_cv_libc_defines_sys_nerr="yes"
19260else
19261 ac_cv_libc_defines_sys_nerr="no"
19262
19263fi
19264rm -f core conftest.err conftest.$ac_objext \
19265 conftest$ac_exeext conftest.$ac_ext
19266
19267fi
19268{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_nerr" >&5
19269$as_echo "$ac_cv_libc_defines_sys_nerr" >&6; }
19270if test "x$ac_cv_libc_defines_sys_nerr" = "xyes" ; then
19271
19272$as_echo "#define HAVE_SYS_NERR 1" >>confdefs.h
19273
19274fi
19275
19276# Check libraries needed by DNS fingerprint support
19277{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing getrrsetbyname" >&5
19278$as_echo_n "checking for library containing getrrsetbyname... " >&6; }
19279if ${ac_cv_search_getrrsetbyname+:} false; then :
19280 $as_echo_n "(cached) " >&6
19281else
19282 ac_func_search_save_LIBS=$LIBS
19283cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19284/* end confdefs.h. */
19285
19286/* Override any GCC internal prototype to avoid an error.
19287 Use char because int might match the return type of a GCC
19288 builtin and then its argument prototype would still apply. */
19289#ifdef __cplusplus
19290extern "C"
19291#endif
19292char getrrsetbyname ();
19293int
19294main ()
19295{
19296return getrrsetbyname ();
19297 ;
19298 return 0;
19299}
19300_ACEOF
19301for ac_lib in '' resolv; do
19302 if test -z "$ac_lib"; then
19303 ac_res="none required"
19304 else
19305 ac_res=-l$ac_lib
19306 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
19307 fi
19308 if ac_fn_c_try_link "$LINENO"; then :
19309 ac_cv_search_getrrsetbyname=$ac_res
19310fi
19311rm -f core conftest.err conftest.$ac_objext \
19312 conftest$ac_exeext
19313 if ${ac_cv_search_getrrsetbyname+:} false; then :
19314 break
19315fi
19316done
19317if ${ac_cv_search_getrrsetbyname+:} false; then :
19318
19319else
19320 ac_cv_search_getrrsetbyname=no
19321fi
19322rm conftest.$ac_ext
19323LIBS=$ac_func_search_save_LIBS
19324fi
19325{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_getrrsetbyname" >&5
19326$as_echo "$ac_cv_search_getrrsetbyname" >&6; }
19327ac_res=$ac_cv_search_getrrsetbyname
19328if test "$ac_res" != no; then :
19329 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
19330
19331$as_echo "#define HAVE_GETRRSETBYNAME 1" >>confdefs.h
19332
19333else
19334
19335 # Needed by our getrrsetbyname()
19336 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing res_query" >&5
19337$as_echo_n "checking for library containing res_query... " >&6; }
19338if ${ac_cv_search_res_query+:} false; then :
19339 $as_echo_n "(cached) " >&6
19340else
19341 ac_func_search_save_LIBS=$LIBS
19342cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19343/* end confdefs.h. */
19344
19345/* Override any GCC internal prototype to avoid an error.
19346 Use char because int might match the return type of a GCC
19347 builtin and then its argument prototype would still apply. */
19348#ifdef __cplusplus
19349extern "C"
19350#endif
19351char res_query ();
19352int
19353main ()
19354{
19355return res_query ();
19356 ;
19357 return 0;
19358}
19359_ACEOF
19360for ac_lib in '' resolv; do
19361 if test -z "$ac_lib"; then
19362 ac_res="none required"
19363 else
19364 ac_res=-l$ac_lib
19365 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
19366 fi
19367 if ac_fn_c_try_link "$LINENO"; then :
19368 ac_cv_search_res_query=$ac_res
19369fi
19370rm -f core conftest.err conftest.$ac_objext \
19371 conftest$ac_exeext
19372 if ${ac_cv_search_res_query+:} false; then :
19373 break
19374fi
19375done
19376if ${ac_cv_search_res_query+:} false; then :
19377
19378else
19379 ac_cv_search_res_query=no
19380fi
19381rm conftest.$ac_ext
19382LIBS=$ac_func_search_save_LIBS
19383fi
19384{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_query" >&5
19385$as_echo "$ac_cv_search_res_query" >&6; }
19386ac_res=$ac_cv_search_res_query
19387if test "$ac_res" != no; then :
19388 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
19389
19390fi
19391
19392 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5
19393$as_echo_n "checking for library containing dn_expand... " >&6; }
19394if ${ac_cv_search_dn_expand+:} false; then :
19395 $as_echo_n "(cached) " >&6
19396else
19397 ac_func_search_save_LIBS=$LIBS
19398cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19399/* end confdefs.h. */
19400
19401/* Override any GCC internal prototype to avoid an error.
19402 Use char because int might match the return type of a GCC
19403 builtin and then its argument prototype would still apply. */
19404#ifdef __cplusplus
19405extern "C"
19406#endif
19407char dn_expand ();
19408int
19409main ()
19410{
19411return dn_expand ();
19412 ;
19413 return 0;
19414}
19415_ACEOF
19416for ac_lib in '' resolv; do
19417 if test -z "$ac_lib"; then
19418 ac_res="none required"
19419 else
19420 ac_res=-l$ac_lib
19421 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
19422 fi
19423 if ac_fn_c_try_link "$LINENO"; then :
19424 ac_cv_search_dn_expand=$ac_res
19425fi
19426rm -f core conftest.err conftest.$ac_objext \
19427 conftest$ac_exeext
19428 if ${ac_cv_search_dn_expand+:} false; then :
19429 break
19430fi
19431done
19432if ${ac_cv_search_dn_expand+:} false; then :
19433
19434else
19435 ac_cv_search_dn_expand=no
19436fi
19437rm conftest.$ac_ext
19438LIBS=$ac_func_search_save_LIBS
19439fi
19440{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5
19441$as_echo "$ac_cv_search_dn_expand" >&6; }
19442ac_res=$ac_cv_search_dn_expand
19443if test "$ac_res" != no; then :
19444 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
19445
19446fi
19447
19448 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if res_query will link" >&5
19449$as_echo_n "checking if res_query will link... " >&6; }
19450 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19451/* end confdefs.h. */
19452
19453#include <sys/types.h>
19454#include <netinet/in.h>
19455#include <arpa/nameser.h>
19456#include <netdb.h>
19457#include <resolv.h>
19458
19459int
19460main ()
19461{
19462
19463 res_query (0, 0, 0, 0, 0);
19464
19465 ;
19466 return 0;
19467}
19468_ACEOF
19469if ac_fn_c_try_link "$LINENO"; then :
19470 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19471$as_echo "yes" >&6; }
19472else
19473 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19474$as_echo "no" >&6; }
19475 saved_LIBS="$LIBS"
19476 LIBS="$LIBS -lresolv"
19477 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5
19478$as_echo_n "checking for res_query in -lresolv... " >&6; }
19479 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19480/* end confdefs.h. */
19481
19482#include <sys/types.h>
19483#include <netinet/in.h>
19484#include <arpa/nameser.h>
19485#include <netdb.h>
19486#include <resolv.h>
19487
19488int
19489main ()
19490{
19491
19492 res_query (0, 0, 0, 0, 0);
19493
19494 ;
19495 return 0;
19496}
19497_ACEOF
19498if ac_fn_c_try_link "$LINENO"; then :
19499 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19500$as_echo "yes" >&6; }
19501else
19502 LIBS="$saved_LIBS"
19503 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19504$as_echo "no" >&6; }
19505fi
19506rm -f core conftest.err conftest.$ac_objext \
19507 conftest$ac_exeext conftest.$ac_ext
19508
19509fi
19510rm -f core conftest.err conftest.$ac_objext \
19511 conftest$ac_exeext conftest.$ac_ext
19512 for ac_func in _getshort _getlong
19513do :
19514 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
19515ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
19516if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
19517 cat >>confdefs.h <<_ACEOF
19518#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
19519_ACEOF
19520
19521fi
19522done
19523
19524 ac_fn_c_check_decl "$LINENO" "_getshort" "ac_cv_have_decl__getshort" "#include <sys/types.h>
19525 #include <arpa/nameser.h>
19526"
19527if test "x$ac_cv_have_decl__getshort" = xyes; then :
19528 ac_have_decl=1
19529else
19530 ac_have_decl=0
19531fi
19532
19533cat >>confdefs.h <<_ACEOF
19534#define HAVE_DECL__GETSHORT $ac_have_decl
19535_ACEOF
19536ac_fn_c_check_decl "$LINENO" "_getlong" "ac_cv_have_decl__getlong" "#include <sys/types.h>
19537 #include <arpa/nameser.h>
19538"
19539if test "x$ac_cv_have_decl__getlong" = xyes; then :
19540 ac_have_decl=1
19541else
19542 ac_have_decl=0
19543fi
19544
19545cat >>confdefs.h <<_ACEOF
19546#define HAVE_DECL__GETLONG $ac_have_decl
19547_ACEOF
19548
19549 ac_fn_c_check_member "$LINENO" "HEADER" "ad" "ac_cv_member_HEADER_ad" "#include <arpa/nameser.h>
19550"
19551if test "x$ac_cv_member_HEADER_ad" = xyes; then :
19552
19553$as_echo "#define HAVE_HEADER_AD 1" >>confdefs.h
19554
19555fi
19556
19557
19558fi
19559
19560
19561{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct __res_state _res is an extern" >&5
19562$as_echo_n "checking if struct __res_state _res is an extern... " >&6; }
19563cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19564/* end confdefs.h. */
19565
19566#include <stdio.h>
19567#if HAVE_SYS_TYPES_H
19568# include <sys/types.h>
19569#endif
19570#include <netinet/in.h>
19571#include <arpa/nameser.h>
19572#include <resolv.h>
19573extern struct __res_state _res;
19574
19575int
19576main ()
19577{
19578
19579struct __res_state *volatile p = &_res; /* force resolution of _res */
19580return 0;
19581
19582 ;
19583 return 0;
19584}
19585_ACEOF
19586if ac_fn_c_try_link "$LINENO"; then :
19587 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19588$as_echo "yes" >&6; }
19589
19590$as_echo "#define HAVE__RES_EXTERN 1" >>confdefs.h
19591
19592
19593else
19594 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19595$as_echo "no" >&6; }
19596
19597fi
19598rm -f core conftest.err conftest.$ac_objext \
19599 conftest$ac_exeext conftest.$ac_ext
19600
19601# Check whether user wants SELinux support
19602SELINUX_MSG="no"
19603LIBSELINUX=""
19604
19605# Check whether --with-selinux was given.
19606if test "${with_selinux+set}" = set; then :
19607 withval=$with_selinux; if test "x$withval" != "xno" ; then
19608 save_LIBS="$LIBS"
19609
19610$as_echo "#define WITH_SELINUX 1" >>confdefs.h
19611
19612 SELINUX_MSG="yes"
19613 ac_fn_c_check_header_mongrel "$LINENO" "selinux/selinux.h" "ac_cv_header_selinux_selinux_h" "$ac_includes_default"
19614if test "x$ac_cv_header_selinux_selinux_h" = xyes; then :
19615
19616else
19617 as_fn_error $? "SELinux support requires selinux.h header" "$LINENO" 5
19618fi
19619
19620
19621 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setexeccon in -lselinux" >&5
19622$as_echo_n "checking for setexeccon in -lselinux... " >&6; }
19623if ${ac_cv_lib_selinux_setexeccon+:} false; then :
19624 $as_echo_n "(cached) " >&6
19625else
19626 ac_check_lib_save_LIBS=$LIBS
19627LIBS="-lselinux $LIBS"
19628cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19629/* end confdefs.h. */
19630
19631/* Override any GCC internal prototype to avoid an error.
19632 Use char because int might match the return type of a GCC
19633 builtin and then its argument prototype would still apply. */
19634#ifdef __cplusplus
19635extern "C"
19636#endif
19637char setexeccon ();
19638int
19639main ()
19640{
19641return setexeccon ();
19642 ;
19643 return 0;
19644}
19645_ACEOF
19646if ac_fn_c_try_link "$LINENO"; then :
19647 ac_cv_lib_selinux_setexeccon=yes
19648else
19649 ac_cv_lib_selinux_setexeccon=no
19650fi
19651rm -f core conftest.err conftest.$ac_objext \
19652 conftest$ac_exeext conftest.$ac_ext
19653LIBS=$ac_check_lib_save_LIBS
19654fi
19655{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_setexeccon" >&5
19656$as_echo "$ac_cv_lib_selinux_setexeccon" >&6; }
19657if test "x$ac_cv_lib_selinux_setexeccon" = xyes; then :
19658 LIBSELINUX="-lselinux"
19659 LIBS="$LIBS -lselinux"
19660
19661else
19662 as_fn_error $? "SELinux support requires libselinux library" "$LINENO" 5
19663fi
19664
19665 SSHLIBS="$SSHLIBS $LIBSELINUX"
19666 SSHDLIBS="$SSHDLIBS $LIBSELINUX"
19667 for ac_func in getseuserbyname get_default_context_with_level
19668do :
19669 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
19670ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
19671if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
19672 cat >>confdefs.h <<_ACEOF
19673#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
19674_ACEOF
19675
19676fi
19677done
19678
19679 LIBS="$save_LIBS"
19680 fi
19681
19682fi
19683
19684
19685
19686
19687# Check whether user wants Kerberos 5 support
19688KRB5_MSG="no"
19689
19690# Check whether --with-kerberos5 was given.
19691if test "${with_kerberos5+set}" = set; then :
19692 withval=$with_kerberos5; if test "x$withval" != "xno" ; then
19693 if test "x$withval" = "xyes" ; then
19694 KRB5ROOT="/usr/local"
19695 else
19696 KRB5ROOT=${withval}
19697 fi
19698
19699
19700$as_echo "#define KRB5 1" >>confdefs.h
19701
19702 KRB5_MSG="yes"
19703
19704 if test -n "$ac_tool_prefix"; then
19705 # Extract the first word of "${ac_tool_prefix}krb5-config", so it can be a program name with args.
19706set dummy ${ac_tool_prefix}krb5-config; ac_word=$2
19707{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
19708$as_echo_n "checking for $ac_word... " >&6; }
19709if ${ac_cv_path_KRB5CONF+:} false; then :
19710 $as_echo_n "(cached) " >&6
19711else
19712 case $KRB5CONF in
19713 [\\/]* | ?:[\\/]*)
19714 ac_cv_path_KRB5CONF="$KRB5CONF" # Let the user override the test with a path.
19715 ;;
19716 *)
19717 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
19718as_dummy="$KRB5ROOT/bin:$PATH"
19719for as_dir in $as_dummy
19720do
19721 IFS=$as_save_IFS
19722 test -z "$as_dir" && as_dir=.
19723 for ac_exec_ext in '' $ac_executable_extensions; do
19724 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
19725 ac_cv_path_KRB5CONF="$as_dir/$ac_word$ac_exec_ext"
19726 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
19727 break 2
19728 fi
19729done
19730 done
19731IFS=$as_save_IFS
19732
19733 ;;
19734esac
19735fi
19736KRB5CONF=$ac_cv_path_KRB5CONF
19737if test -n "$KRB5CONF"; then
19738 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KRB5CONF" >&5
19739$as_echo "$KRB5CONF" >&6; }
19740else
19741 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19742$as_echo "no" >&6; }
19743fi
19744
19745
19746fi
19747if test -z "$ac_cv_path_KRB5CONF"; then
19748 ac_pt_KRB5CONF=$KRB5CONF
19749 # Extract the first word of "krb5-config", so it can be a program name with args.
19750set dummy krb5-config; ac_word=$2
19751{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
19752$as_echo_n "checking for $ac_word... " >&6; }
19753if ${ac_cv_path_ac_pt_KRB5CONF+:} false; then :
19754 $as_echo_n "(cached) " >&6
19755else
19756 case $ac_pt_KRB5CONF in
19757 [\\/]* | ?:[\\/]*)
19758 ac_cv_path_ac_pt_KRB5CONF="$ac_pt_KRB5CONF" # Let the user override the test with a path.
19759 ;;
19760 *)
19761 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
19762as_dummy="$KRB5ROOT/bin:$PATH"
19763for as_dir in $as_dummy
19764do
19765 IFS=$as_save_IFS
19766 test -z "$as_dir" && as_dir=.
19767 for ac_exec_ext in '' $ac_executable_extensions; do
19768 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
19769 ac_cv_path_ac_pt_KRB5CONF="$as_dir/$ac_word$ac_exec_ext"
19770 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
19771 break 2
19772 fi
19773done
19774 done
19775IFS=$as_save_IFS
19776
19777 ;;
19778esac
19779fi
19780ac_pt_KRB5CONF=$ac_cv_path_ac_pt_KRB5CONF
19781if test -n "$ac_pt_KRB5CONF"; then
19782 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_KRB5CONF" >&5
19783$as_echo "$ac_pt_KRB5CONF" >&6; }
19784else
19785 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19786$as_echo "no" >&6; }
19787fi
19788
19789 if test "x$ac_pt_KRB5CONF" = x; then
19790 KRB5CONF="$KRB5ROOT/bin/krb5-config"
19791 else
19792 case $cross_compiling:$ac_tool_warned in
19793yes:)
19794{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
19795$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
19796ac_tool_warned=yes ;;
19797esac
19798 KRB5CONF=$ac_pt_KRB5CONF
19799 fi
19800else
19801 KRB5CONF="$ac_cv_path_KRB5CONF"
19802fi
19803
19804 if test -x $KRB5CONF ; then
19805 K5CFLAGS="`$KRB5CONF --cflags`"
19806 K5LIBS="`$KRB5CONF --libs`"
19807 CPPFLAGS="$CPPFLAGS $K5CFLAGS"
19808
19809 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gssapi support" >&5
19810$as_echo_n "checking for gssapi support... " >&6; }
19811 if $KRB5CONF | grep gssapi >/dev/null ; then
19812 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19813$as_echo "yes" >&6; }
19814
19815$as_echo "#define GSSAPI 1" >>confdefs.h
19816
19817 GSSCFLAGS="`$KRB5CONF --cflags gssapi`"
19818 GSSLIBS="`$KRB5CONF --libs gssapi`"
19819 CPPFLAGS="$CPPFLAGS $GSSCFLAGS"
19820 else
19821 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19822$as_echo "no" >&6; }
19823 fi
19824 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5
19825$as_echo_n "checking whether we are using Heimdal... " >&6; }
19826 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19827/* end confdefs.h. */
19828 #include <krb5.h>
19829
19830int
19831main ()
19832{
19833 char *tmp = heimdal_version;
19834 ;
19835 return 0;
19836}
19837_ACEOF
19838if ac_fn_c_try_compile "$LINENO"; then :
19839 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19840$as_echo "yes" >&6; }
19841
19842$as_echo "#define HEIMDAL 1" >>confdefs.h
19843
19844else
19845 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19846$as_echo "no" >&6; }
19847
19848fi
19849rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
19850 else
19851 CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include"
19852 LDFLAGS="$LDFLAGS -L${KRB5ROOT}/lib"
19853 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5
19854$as_echo_n "checking whether we are using Heimdal... " >&6; }
19855 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19856/* end confdefs.h. */
19857 #include <krb5.h>
19858
19859int
19860main ()
19861{
19862 char *tmp = heimdal_version;
19863 ;
19864 return 0;
19865}
19866_ACEOF
19867if ac_fn_c_try_compile "$LINENO"; then :
19868 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
19869$as_echo "yes" >&6; }
19870 $as_echo "#define HEIMDAL 1" >>confdefs.h
19871
19872 K5LIBS="-lkrb5"
19873 K5LIBS="$K5LIBS -lcom_err -lasn1"
19874 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for net_write in -lroken" >&5
19875$as_echo_n "checking for net_write in -lroken... " >&6; }
19876if ${ac_cv_lib_roken_net_write+:} false; then :
19877 $as_echo_n "(cached) " >&6
19878else
19879 ac_check_lib_save_LIBS=$LIBS
19880LIBS="-lroken $LIBS"
19881cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19882/* end confdefs.h. */
19883
19884/* Override any GCC internal prototype to avoid an error.
19885 Use char because int might match the return type of a GCC
19886 builtin and then its argument prototype would still apply. */
19887#ifdef __cplusplus
19888extern "C"
19889#endif
19890char net_write ();
19891int
19892main ()
19893{
19894return net_write ();
19895 ;
19896 return 0;
19897}
19898_ACEOF
19899if ac_fn_c_try_link "$LINENO"; then :
19900 ac_cv_lib_roken_net_write=yes
19901else
19902 ac_cv_lib_roken_net_write=no
19903fi
19904rm -f core conftest.err conftest.$ac_objext \
19905 conftest$ac_exeext conftest.$ac_ext
19906LIBS=$ac_check_lib_save_LIBS
19907fi
19908{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_roken_net_write" >&5
19909$as_echo "$ac_cv_lib_roken_net_write" >&6; }
19910if test "x$ac_cv_lib_roken_net_write" = xyes; then :
19911 K5LIBS="$K5LIBS -lroken"
19912fi
19913
19914 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for des_cbc_encrypt in -ldes" >&5
19915$as_echo_n "checking for des_cbc_encrypt in -ldes... " >&6; }
19916if ${ac_cv_lib_des_des_cbc_encrypt+:} false; then :
19917 $as_echo_n "(cached) " >&6
19918else
19919 ac_check_lib_save_LIBS=$LIBS
19920LIBS="-ldes $LIBS"
19921cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19922/* end confdefs.h. */
19923
19924/* Override any GCC internal prototype to avoid an error.
19925 Use char because int might match the return type of a GCC
19926 builtin and then its argument prototype would still apply. */
19927#ifdef __cplusplus
19928extern "C"
19929#endif
19930char des_cbc_encrypt ();
19931int
19932main ()
19933{
19934return des_cbc_encrypt ();
19935 ;
19936 return 0;
19937}
19938_ACEOF
19939if ac_fn_c_try_link "$LINENO"; then :
19940 ac_cv_lib_des_des_cbc_encrypt=yes
19941else
19942 ac_cv_lib_des_des_cbc_encrypt=no
19943fi
19944rm -f core conftest.err conftest.$ac_objext \
19945 conftest$ac_exeext conftest.$ac_ext
19946LIBS=$ac_check_lib_save_LIBS
19947fi
19948{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_des_des_cbc_encrypt" >&5
19949$as_echo "$ac_cv_lib_des_des_cbc_encrypt" >&6; }
19950if test "x$ac_cv_lib_des_des_cbc_encrypt" = xyes; then :
19951 K5LIBS="$K5LIBS -ldes"
19952fi
19953
19954
19955else
19956 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
19957$as_echo "no" >&6; }
19958 K5LIBS="-lkrb5 -lk5crypto -lcom_err"
19959
19960fi
19961rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
19962 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5
19963$as_echo_n "checking for library containing dn_expand... " >&6; }
19964if ${ac_cv_search_dn_expand+:} false; then :
19965 $as_echo_n "(cached) " >&6
19966else
19967 ac_func_search_save_LIBS=$LIBS
19968cat confdefs.h - <<_ACEOF >conftest.$ac_ext
19969/* end confdefs.h. */
19970
19971/* Override any GCC internal prototype to avoid an error.
19972 Use char because int might match the return type of a GCC
19973 builtin and then its argument prototype would still apply. */
19974#ifdef __cplusplus
19975extern "C"
19976#endif
19977char dn_expand ();
19978int
19979main ()
19980{
19981return dn_expand ();
19982 ;
19983 return 0;
19984}
19985_ACEOF
19986for ac_lib in '' resolv; do
19987 if test -z "$ac_lib"; then
19988 ac_res="none required"
19989 else
19990 ac_res=-l$ac_lib
19991 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
19992 fi
19993 if ac_fn_c_try_link "$LINENO"; then :
19994 ac_cv_search_dn_expand=$ac_res
19995fi
19996rm -f core conftest.err conftest.$ac_objext \
19997 conftest$ac_exeext
19998 if ${ac_cv_search_dn_expand+:} false; then :
19999 break
20000fi
20001done
20002if ${ac_cv_search_dn_expand+:} false; then :
20003
20004else
20005 ac_cv_search_dn_expand=no
20006fi
20007rm conftest.$ac_ext
20008LIBS=$ac_func_search_save_LIBS
20009fi
20010{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5
20011$as_echo "$ac_cv_search_dn_expand" >&6; }
20012ac_res=$ac_cv_search_dn_expand
20013if test "$ac_res" != no; then :
20014 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
20015
20016fi
20017
20018
20019 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi_krb5" >&5
20020$as_echo_n "checking for gss_init_sec_context in -lgssapi_krb5... " >&6; }
20021if ${ac_cv_lib_gssapi_krb5_gss_init_sec_context+:} false; then :
20022 $as_echo_n "(cached) " >&6
20023else
20024 ac_check_lib_save_LIBS=$LIBS
20025LIBS="-lgssapi_krb5 $LIBS"
20026cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20027/* end confdefs.h. */
20028
20029/* Override any GCC internal prototype to avoid an error.
20030 Use char because int might match the return type of a GCC
20031 builtin and then its argument prototype would still apply. */
20032#ifdef __cplusplus
20033extern "C"
20034#endif
20035char gss_init_sec_context ();
20036int
20037main ()
20038{
20039return gss_init_sec_context ();
20040 ;
20041 return 0;
20042}
20043_ACEOF
20044if ac_fn_c_try_link "$LINENO"; then :
20045 ac_cv_lib_gssapi_krb5_gss_init_sec_context=yes
20046else
20047 ac_cv_lib_gssapi_krb5_gss_init_sec_context=no
20048fi
20049rm -f core conftest.err conftest.$ac_objext \
20050 conftest$ac_exeext conftest.$ac_ext
20051LIBS=$ac_check_lib_save_LIBS
20052fi
20053{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&5
20054$as_echo "$ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&6; }
20055if test "x$ac_cv_lib_gssapi_krb5_gss_init_sec_context" = xyes; then :
20056 $as_echo "#define GSSAPI 1" >>confdefs.h
20057
20058 GSSLIBS="-lgssapi_krb5"
20059else
20060 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi" >&5
20061$as_echo_n "checking for gss_init_sec_context in -lgssapi... " >&6; }
20062if ${ac_cv_lib_gssapi_gss_init_sec_context+:} false; then :
20063 $as_echo_n "(cached) " >&6
20064else
20065 ac_check_lib_save_LIBS=$LIBS
20066LIBS="-lgssapi $LIBS"
20067cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20068/* end confdefs.h. */
20069
20070/* Override any GCC internal prototype to avoid an error.
20071 Use char because int might match the return type of a GCC
20072 builtin and then its argument prototype would still apply. */
20073#ifdef __cplusplus
20074extern "C"
20075#endif
20076char gss_init_sec_context ();
20077int
20078main ()
20079{
20080return gss_init_sec_context ();
20081 ;
20082 return 0;
20083}
20084_ACEOF
20085if ac_fn_c_try_link "$LINENO"; then :
20086 ac_cv_lib_gssapi_gss_init_sec_context=yes
20087else
20088 ac_cv_lib_gssapi_gss_init_sec_context=no
20089fi
20090rm -f core conftest.err conftest.$ac_objext \
20091 conftest$ac_exeext conftest.$ac_ext
20092LIBS=$ac_check_lib_save_LIBS
20093fi
20094{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_gss_init_sec_context" >&5
20095$as_echo "$ac_cv_lib_gssapi_gss_init_sec_context" >&6; }
20096if test "x$ac_cv_lib_gssapi_gss_init_sec_context" = xyes; then :
20097 $as_echo "#define GSSAPI 1" >>confdefs.h
20098
20099 GSSLIBS="-lgssapi"
20100else
20101 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgss" >&5
20102$as_echo_n "checking for gss_init_sec_context in -lgss... " >&6; }
20103if ${ac_cv_lib_gss_gss_init_sec_context+:} false; then :
20104 $as_echo_n "(cached) " >&6
20105else
20106 ac_check_lib_save_LIBS=$LIBS
20107LIBS="-lgss $LIBS"
20108cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20109/* end confdefs.h. */
20110
20111/* Override any GCC internal prototype to avoid an error.
20112 Use char because int might match the return type of a GCC
20113 builtin and then its argument prototype would still apply. */
20114#ifdef __cplusplus
20115extern "C"
20116#endif
20117char gss_init_sec_context ();
20118int
20119main ()
20120{
20121return gss_init_sec_context ();
20122 ;
20123 return 0;
20124}
20125_ACEOF
20126if ac_fn_c_try_link "$LINENO"; then :
20127 ac_cv_lib_gss_gss_init_sec_context=yes
20128else
20129 ac_cv_lib_gss_gss_init_sec_context=no
20130fi
20131rm -f core conftest.err conftest.$ac_objext \
20132 conftest$ac_exeext conftest.$ac_ext
20133LIBS=$ac_check_lib_save_LIBS
20134fi
20135{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gss_gss_init_sec_context" >&5
20136$as_echo "$ac_cv_lib_gss_gss_init_sec_context" >&6; }
20137if test "x$ac_cv_lib_gss_gss_init_sec_context" = xyes; then :
20138 $as_echo "#define GSSAPI 1" >>confdefs.h
20139
20140 GSSLIBS="-lgss"
20141else
20142 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api library - build may fail" >&5
20143$as_echo "$as_me: WARNING: Cannot find any suitable gss-api library - build may fail" >&2;}
20144fi
20145
20146
20147fi
20148
20149
20150fi
20151
20152
20153 ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
20154if test "x$ac_cv_header_gssapi_h" = xyes; then :
20155
20156else
20157 unset ac_cv_header_gssapi_h
20158 CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi"
20159 for ac_header in gssapi.h
20160do :
20161 ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
20162if test "x$ac_cv_header_gssapi_h" = xyes; then :
20163 cat >>confdefs.h <<_ACEOF
20164#define HAVE_GSSAPI_H 1
20165_ACEOF
20166
20167else
20168 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api header - build may fail" >&5
20169$as_echo "$as_me: WARNING: Cannot find any suitable gss-api header - build may fail" >&2;}
20170
20171fi
20172
20173done
20174
20175
20176
20177fi
20178
20179
20180
20181 oldCPP="$CPPFLAGS"
20182 CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi"
20183 ac_fn_c_check_header_mongrel "$LINENO" "gssapi_krb5.h" "ac_cv_header_gssapi_krb5_h" "$ac_includes_default"
20184if test "x$ac_cv_header_gssapi_krb5_h" = xyes; then :
20185
20186else
20187 CPPFLAGS="$oldCPP"
20188fi
20189
20190
20191
20192 fi
20193 if test ! -z "$need_dash_r" ; then
20194 LDFLAGS="$LDFLAGS -R${KRB5ROOT}/lib"
20195 fi
20196 if test ! -z "$blibpath" ; then
20197 blibpath="$blibpath:${KRB5ROOT}/lib"
20198 fi
20199
20200 for ac_header in gssapi.h gssapi/gssapi.h
20201do :
20202 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
20203ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
20204if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
20205 cat >>confdefs.h <<_ACEOF
20206#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
20207_ACEOF
20208
20209fi
20210
20211done
20212
20213 for ac_header in gssapi_krb5.h gssapi/gssapi_krb5.h
20214do :
20215 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
20216ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
20217if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
20218 cat >>confdefs.h <<_ACEOF
20219#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
20220_ACEOF
20221
20222fi
20223
20224done
20225
20226 for ac_header in gssapi_generic.h gssapi/gssapi_generic.h
20227do :
20228 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
20229ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
20230if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
20231 cat >>confdefs.h <<_ACEOF
20232#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
20233_ACEOF
20234
20235fi
20236
20237done
20238
20239
20240 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing k_hasafs" >&5
20241$as_echo_n "checking for library containing k_hasafs... " >&6; }
20242if ${ac_cv_search_k_hasafs+:} false; then :
20243 $as_echo_n "(cached) " >&6
20244else
20245 ac_func_search_save_LIBS=$LIBS
20246cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20247/* end confdefs.h. */
20248
20249/* Override any GCC internal prototype to avoid an error.
20250 Use char because int might match the return type of a GCC
20251 builtin and then its argument prototype would still apply. */
20252#ifdef __cplusplus
20253extern "C"
20254#endif
20255char k_hasafs ();
20256int
20257main ()
20258{
20259return k_hasafs ();
20260 ;
20261 return 0;
20262}
20263_ACEOF
20264for ac_lib in '' kafs; do
20265 if test -z "$ac_lib"; then
20266 ac_res="none required"
20267 else
20268 ac_res=-l$ac_lib
20269 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
20270 fi
20271 if ac_fn_c_try_link "$LINENO"; then :
20272 ac_cv_search_k_hasafs=$ac_res
20273fi
20274rm -f core conftest.err conftest.$ac_objext \
20275 conftest$ac_exeext
20276 if ${ac_cv_search_k_hasafs+:} false; then :
20277 break
20278fi
20279done
20280if ${ac_cv_search_k_hasafs+:} false; then :
20281
20282else
20283 ac_cv_search_k_hasafs=no
20284fi
20285rm conftest.$ac_ext
20286LIBS=$ac_func_search_save_LIBS
20287fi
20288{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_k_hasafs" >&5
20289$as_echo "$ac_cv_search_k_hasafs" >&6; }
20290ac_res=$ac_cv_search_k_hasafs
20291if test "$ac_res" != no; then :
20292 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
20293
20294$as_echo "#define USE_AFS 1" >>confdefs.h
20295
20296fi
20297
20298
20299 ac_fn_c_check_decl "$LINENO" "GSS_C_NT_HOSTBASED_SERVICE" "ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" "
20300#ifdef HAVE_GSSAPI_H
20301# include <gssapi.h>
20302#elif defined(HAVE_GSSAPI_GSSAPI_H)
20303# include <gssapi/gssapi.h>
20304#endif
20305
20306#ifdef HAVE_GSSAPI_GENERIC_H
20307# include <gssapi_generic.h>
20308#elif defined(HAVE_GSSAPI_GSSAPI_GENERIC_H)
20309# include <gssapi/gssapi_generic.h>
20310#endif
20311
20312"
20313if test "x$ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" = xyes; then :
20314 ac_have_decl=1
20315else
20316 ac_have_decl=0
20317fi
20318
20319cat >>confdefs.h <<_ACEOF
20320#define HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE $ac_have_decl
20321_ACEOF
20322
20323 saved_LIBS="$LIBS"
20324 LIBS="$LIBS $K5LIBS"
20325 for ac_func in krb5_cc_new_unique krb5_get_error_message krb5_free_error_message
20326do :
20327 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
20328ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
20329if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
20330 cat >>confdefs.h <<_ACEOF
20331#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
20332_ACEOF
20333
20334fi
20335done
20336
20337 LIBS="$saved_LIBS"
20338
20339 fi
20340
20341
20342fi
20343
20344
20345
20346
20347# Looking for programs, paths and files
20348
20349PRIVSEP_PATH=/var/empty
20350
20351# Check whether --with-privsep-path was given.
20352if test "${with_privsep_path+set}" = set; then :
20353 withval=$with_privsep_path;
20354 if test -n "$withval" && test "x$withval" != "xno" && \
20355 test "x${withval}" != "xyes"; then
20356 PRIVSEP_PATH=$withval
20357 fi
20358
20359
20360fi
20361
20362
20363
20364
20365# Check whether --with-xauth was given.
20366if test "${with_xauth+set}" = set; then :
20367 withval=$with_xauth;
20368 if test -n "$withval" && test "x$withval" != "xno" && \
20369 test "x${withval}" != "xyes"; then
20370 xauth_path=$withval
20371 fi
20372
20373else
20374
20375 TestPath="$PATH"
20376 TestPath="${TestPath}${PATH_SEPARATOR}/usr/X/bin"
20377 TestPath="${TestPath}${PATH_SEPARATOR}/usr/bin/X11"
20378 TestPath="${TestPath}${PATH_SEPARATOR}/usr/X11R6/bin"
20379 TestPath="${TestPath}${PATH_SEPARATOR}/usr/openwin/bin"
20380 # Extract the first word of "xauth", so it can be a program name with args.
20381set dummy xauth; ac_word=$2
20382{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
20383$as_echo_n "checking for $ac_word... " >&6; }
20384if ${ac_cv_path_xauth_path+:} false; then :
20385 $as_echo_n "(cached) " >&6
20386else
20387 case $xauth_path in
20388 [\\/]* | ?:[\\/]*)
20389 ac_cv_path_xauth_path="$xauth_path" # Let the user override the test with a path.
20390 ;;
20391 *)
20392 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
20393for as_dir in $TestPath
20394do
20395 IFS=$as_save_IFS
20396 test -z "$as_dir" && as_dir=.
20397 for ac_exec_ext in '' $ac_executable_extensions; do
20398 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
20399 ac_cv_path_xauth_path="$as_dir/$ac_word$ac_exec_ext"
20400 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
20401 break 2
20402 fi
20403done
20404 done
20405IFS=$as_save_IFS
20406
20407 ;;
20408esac
20409fi
20410xauth_path=$ac_cv_path_xauth_path
20411if test -n "$xauth_path"; then
20412 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xauth_path" >&5
20413$as_echo "$xauth_path" >&6; }
20414else
20415 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
20416$as_echo "no" >&6; }
20417fi
20418
20419
20420 if (test ! -z "$xauth_path" && test -x "/usr/openwin/bin/xauth") ; then
20421 xauth_path="/usr/openwin/bin/xauth"
20422 fi
20423
20424
20425fi
20426
20427
20428STRIP_OPT=-s
20429# Check whether --enable-strip was given.
20430if test "${enable_strip+set}" = set; then :
20431 enableval=$enable_strip;
20432 if test "x$enableval" = "xno" ; then
20433 STRIP_OPT=
20434 fi
20435
20436
20437fi
20438
20439
20440
20441if test -z "$xauth_path" ; then
20442 XAUTH_PATH="undefined"
20443
20444else
20445
20446cat >>confdefs.h <<_ACEOF
20447#define XAUTH_PATH "$xauth_path"
20448_ACEOF
20449
20450 XAUTH_PATH=$xauth_path
20451
20452fi
20453
20454# Check for mail directory
20455
20456# Check whether --with-maildir was given.
20457if test "${with_maildir+set}" = set; then :
20458 withval=$with_maildir;
20459 if test "X$withval" != X && test "x$withval" != xno && \
20460 test "x${withval}" != xyes; then
20461
20462cat >>confdefs.h <<_ACEOF
20463#define MAIL_DIRECTORY "$withval"
20464_ACEOF
20465
20466 fi
20467
20468else
20469
20470 if test "X$maildir" != "X"; then
20471 cat >>confdefs.h <<_ACEOF
20472#define MAIL_DIRECTORY "$maildir"
20473_ACEOF
20474
20475 else
20476 { $as_echo "$as_me:${as_lineno-$LINENO}: checking Discovering system mail directory" >&5
20477$as_echo_n "checking Discovering system mail directory... " >&6; }
20478 if test "$cross_compiling" = yes; then :
20479
20480 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&5
20481$as_echo "$as_me: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&2;}
20482
20483
20484else
20485 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20486/* end confdefs.h. */
20487
20488#include <stdio.h>
20489#include <string.h>
20490#ifdef HAVE_PATHS_H
20491#include <paths.h>
20492#endif
20493#ifdef HAVE_MAILLOCK_H
20494#include <maillock.h>
20495#endif
20496#define DATA "conftest.maildir"
20497
20498int
20499main ()
20500{
20501
20502 FILE *fd;
20503 int rc;
20504
20505 fd = fopen(DATA,"w");
20506 if(fd == NULL)
20507 exit(1);
20508
20509#if defined (_PATH_MAILDIR)
20510 if ((rc = fprintf(fd ,"_PATH_MAILDIR:%s\n", _PATH_MAILDIR)) <0)
20511 exit(1);
20512#elif defined (MAILDIR)
20513 if ((rc = fprintf(fd ,"MAILDIR:%s\n", MAILDIR)) <0)
20514 exit(1);
20515#elif defined (_PATH_MAIL)
20516 if ((rc = fprintf(fd ,"_PATH_MAIL:%s\n", _PATH_MAIL)) <0)
20517 exit(1);
20518#else
20519 exit (2);
20520#endif
20521
20522 exit(0);
20523
20524 ;
20525 return 0;
20526}
20527_ACEOF
20528if ac_fn_c_try_run "$LINENO"; then :
20529
20530 maildir_what=`awk -F: '{print $1}' conftest.maildir`
20531 maildir=`awk -F: '{print $2}' conftest.maildir \
20532 | sed 's|/$||'`
20533 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: $maildir from $maildir_what" >&5
20534$as_echo "Using: $maildir from $maildir_what" >&6; }
20535 if test "x$maildir_what" != "x_PATH_MAILDIR"; then
20536 cat >>confdefs.h <<_ACEOF
20537#define MAIL_DIRECTORY "$maildir"
20538_ACEOF
20539
20540 fi
20541
20542else
20543
20544 if test "X$ac_status" = "X2";then
20545# our test program didn't find it. Default to /var/spool/mail
20546 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: default value of /var/spool/mail" >&5
20547$as_echo "Using: default value of /var/spool/mail" >&6; }
20548 cat >>confdefs.h <<_ACEOF
20549#define MAIL_DIRECTORY "/var/spool/mail"
20550_ACEOF
20551
20552 else
20553 { $as_echo "$as_me:${as_lineno-$LINENO}: result: *** not found ***" >&5
20554$as_echo "*** not found ***" >&6; }
20555 fi
20556
20557fi
20558rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
20559 conftest.$ac_objext conftest.beam conftest.$ac_ext
20560fi
20561
20562 fi
20563
20564
20565fi
20566 # maildir
20567
20568if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes"; then
20569 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptmx test" >&5
20570$as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptmx test" >&2;}
20571 disable_ptmx_check=yes
20572fi
20573if test -z "$no_dev_ptmx" ; then
20574 if test "x$disable_ptmx_check" != "xyes" ; then
20575 as_ac_File=`$as_echo "ac_cv_file_"/dev/ptmx"" | $as_tr_sh`
20576{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptmx\"" >&5
20577$as_echo_n "checking for \"/dev/ptmx\"... " >&6; }
20578if eval \${$as_ac_File+:} false; then :
20579 $as_echo_n "(cached) " >&6
20580else
20581 test "$cross_compiling" = yes &&
20582 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
20583if test -r ""/dev/ptmx""; then
20584 eval "$as_ac_File=yes"
20585else
20586 eval "$as_ac_File=no"
20587fi
20588fi
20589eval ac_res=\$$as_ac_File
20590 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
20591$as_echo "$ac_res" >&6; }
20592if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
20593
20594
20595cat >>confdefs.h <<_ACEOF
20596#define HAVE_DEV_PTMX 1
20597_ACEOF
20598
20599 have_dev_ptmx=1
20600
20601
20602fi
20603
20604 fi
20605fi
20606
20607if test ! -z "$cross_compiling" && test "x$cross_compiling" != "xyes"; then
20608 as_ac_File=`$as_echo "ac_cv_file_"/dev/ptc"" | $as_tr_sh`
20609{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptc\"" >&5
20610$as_echo_n "checking for \"/dev/ptc\"... " >&6; }
20611if eval \${$as_ac_File+:} false; then :
20612 $as_echo_n "(cached) " >&6
20613else
20614 test "$cross_compiling" = yes &&
20615 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
20616if test -r ""/dev/ptc""; then
20617 eval "$as_ac_File=yes"
20618else
20619 eval "$as_ac_File=no"
20620fi
20621fi
20622eval ac_res=\$$as_ac_File
20623 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
20624$as_echo "$ac_res" >&6; }
20625if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
20626
20627
20628cat >>confdefs.h <<_ACEOF
20629#define HAVE_DEV_PTS_AND_PTC 1
20630_ACEOF
20631
20632 have_dev_ptc=1
20633
20634
20635fi
20636
20637else
20638 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptc test" >&5
20639$as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptc test" >&2;}
20640fi
20641
20642# Options from here on. Some of these are preset by platform above
20643
20644# Check whether --with-mantype was given.
20645if test "${with_mantype+set}" = set; then :
20646 withval=$with_mantype;
20647 case "$withval" in
20648 man|cat|doc)
20649 MANTYPE=$withval
20650 ;;
20651 *)
20652 as_fn_error $? "invalid man type: $withval" "$LINENO" 5
20653 ;;
20654 esac
20655
20656
20657fi
20658
20659if test -z "$MANTYPE"; then
20660 TestPath="/usr/bin${PATH_SEPARATOR}/usr/ucb"
20661 for ac_prog in nroff awf
20662do
20663 # Extract the first word of "$ac_prog", so it can be a program name with args.
20664set dummy $ac_prog; ac_word=$2
20665{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
20666$as_echo_n "checking for $ac_word... " >&6; }
20667if ${ac_cv_path_NROFF+:} false; then :
20668 $as_echo_n "(cached) " >&6
20669else
20670 case $NROFF in
20671 [\\/]* | ?:[\\/]*)
20672 ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path.
20673 ;;
20674 *)
20675 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
20676for as_dir in $TestPath
20677do
20678 IFS=$as_save_IFS
20679 test -z "$as_dir" && as_dir=.
20680 for ac_exec_ext in '' $ac_executable_extensions; do
20681 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
20682 ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext"
20683 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
20684 break 2
20685 fi
20686done
20687 done
20688IFS=$as_save_IFS
20689
20690 ;;
20691esac
20692fi
20693NROFF=$ac_cv_path_NROFF
20694if test -n "$NROFF"; then
20695 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
20696$as_echo "$NROFF" >&6; }
20697else
20698 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
20699$as_echo "no" >&6; }
20700fi
20701
20702
20703 test -n "$NROFF" && break
20704done
20705test -n "$NROFF" || NROFF="/bin/false"
20706
20707 if ${NROFF} -mdoc ${srcdir}/ssh.1 >/dev/null 2>&1; then
20708 MANTYPE=doc
20709 elif ${NROFF} -man ${srcdir}/ssh.1 >/dev/null 2>&1; then
20710 MANTYPE=man
20711 else
20712 MANTYPE=cat
20713 fi
20714fi
20715
20716if test "$MANTYPE" = "doc"; then
20717 mansubdir=man;
20718else
20719 mansubdir=$MANTYPE;
20720fi
20721
20722
20723# Check whether to enable MD5 passwords
20724MD5_MSG="no"
20725
20726# Check whether --with-md5-passwords was given.
20727if test "${with_md5_passwords+set}" = set; then :
20728 withval=$with_md5_passwords;
20729 if test "x$withval" != "xno" ; then
20730
20731$as_echo "#define HAVE_MD5_PASSWORDS 1" >>confdefs.h
20732
20733 MD5_MSG="yes"
20734 fi
20735
20736
20737fi
20738
20739
20740# Whether to disable shadow password support
20741
20742# Check whether --with-shadow was given.
20743if test "${with_shadow+set}" = set; then :
20744 withval=$with_shadow;
20745 if test "x$withval" = "xno" ; then
20746 $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h
20747
20748 disable_shadow=yes
20749 fi
20750
20751
20752fi
20753
20754
20755if test -z "$disable_shadow" ; then
20756 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the systems has expire shadow information" >&5
20757$as_echo_n "checking if the systems has expire shadow information... " >&6; }
20758 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20759/* end confdefs.h. */
20760
20761#include <sys/types.h>
20762#include <shadow.h>
20763struct spwd sp;
20764
20765int
20766main ()
20767{
20768 sp.sp_expire = sp.sp_lstchg = sp.sp_inact = 0;
20769 ;
20770 return 0;
20771}
20772_ACEOF
20773if ac_fn_c_try_compile "$LINENO"; then :
20774 sp_expire_available=yes
20775fi
20776rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
20777
20778 if test "x$sp_expire_available" = "xyes" ; then
20779 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
20780$as_echo "yes" >&6; }
20781
20782$as_echo "#define HAS_SHADOW_EXPIRE 1" >>confdefs.h
20783
20784 else
20785 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
20786$as_echo "no" >&6; }
20787 fi
20788fi
20789
20790# Use ip address instead of hostname in $DISPLAY
20791if test ! -z "$IPADDR_IN_DISPLAY" ; then
20792 DISPLAY_HACK_MSG="yes"
20793
20794$as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h
20795
20796else
20797 DISPLAY_HACK_MSG="no"
20798
20799# Check whether --with-ipaddr-display was given.
20800if test "${with_ipaddr_display+set}" = set; then :
20801 withval=$with_ipaddr_display;
20802 if test "x$withval" != "xno" ; then
20803 $as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h
20804
20805 DISPLAY_HACK_MSG="yes"
20806 fi
20807
20808
20809fi
20810
20811fi
20812
20813# check for /etc/default/login and use it if present.
20814# Check whether --enable-etc-default-login was given.
20815if test "${enable_etc_default_login+set}" = set; then :
20816 enableval=$enable_etc_default_login; if test "x$enableval" = "xno"; then
20817 { $as_echo "$as_me:${as_lineno-$LINENO}: /etc/default/login handling disabled" >&5
20818$as_echo "$as_me: /etc/default/login handling disabled" >&6;}
20819 etc_default_login=no
20820 else
20821 etc_default_login=yes
20822 fi
20823else
20824 if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes";
20825 then
20826 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking /etc/default/login" >&5
20827$as_echo "$as_me: WARNING: cross compiling: not checking /etc/default/login" >&2;}
20828 etc_default_login=no
20829 else
20830 etc_default_login=yes
20831 fi
20832
20833fi
20834
20835
20836if test "x$etc_default_login" != "xno"; then
20837 as_ac_File=`$as_echo "ac_cv_file_"/etc/default/login"" | $as_tr_sh`
20838{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/etc/default/login\"" >&5
20839$as_echo_n "checking for \"/etc/default/login\"... " >&6; }
20840if eval \${$as_ac_File+:} false; then :
20841 $as_echo_n "(cached) " >&6
20842else
20843 test "$cross_compiling" = yes &&
20844 as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
20845if test -r ""/etc/default/login""; then
20846 eval "$as_ac_File=yes"
20847else
20848 eval "$as_ac_File=no"
20849fi
20850fi
20851eval ac_res=\$$as_ac_File
20852 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
20853$as_echo "$ac_res" >&6; }
20854if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
20855 external_path_file=/etc/default/login
20856fi
20857
20858 if test "x$external_path_file" = "x/etc/default/login"; then
20859
20860$as_echo "#define HAVE_ETC_DEFAULT_LOGIN 1" >>confdefs.h
20861
20862 fi
20863fi
20864
20865if test $ac_cv_func_login_getcapbool = "yes" && \
20866 test $ac_cv_header_login_cap_h = "yes" ; then
20867 external_path_file=/etc/login.conf
20868fi
20869
20870# Whether to mess with the default path
20871SERVER_PATH_MSG="(default)"
20872
20873# Check whether --with-default-path was given.
20874if test "${with_default_path+set}" = set; then :
20875 withval=$with_default_path;
20876 if test "x$external_path_file" = "x/etc/login.conf" ; then
20877 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
20878--with-default-path=PATH has no effect on this system.
20879Edit /etc/login.conf instead." >&5
20880$as_echo "$as_me: WARNING:
20881--with-default-path=PATH has no effect on this system.
20882Edit /etc/login.conf instead." >&2;}
20883 elif test "x$withval" != "xno" ; then
20884 if test ! -z "$external_path_file" ; then
20885 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
20886--with-default-path=PATH will only be used if PATH is not defined in
20887$external_path_file ." >&5
20888$as_echo "$as_me: WARNING:
20889--with-default-path=PATH will only be used if PATH is not defined in
20890$external_path_file ." >&2;}
20891 fi
20892 user_path="$withval"
20893 SERVER_PATH_MSG="$withval"
20894 fi
20895
20896else
20897 if test "x$external_path_file" = "x/etc/login.conf" ; then
20898 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Make sure the path to scp is in /etc/login.conf" >&5
20899$as_echo "$as_me: WARNING: Make sure the path to scp is in /etc/login.conf" >&2;}
20900 else
20901 if test ! -z "$external_path_file" ; then
20902 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
20903If PATH is defined in $external_path_file, ensure the path to scp is included,
20904otherwise scp will not work." >&5
20905$as_echo "$as_me: WARNING:
20906If PATH is defined in $external_path_file, ensure the path to scp is included,
20907otherwise scp will not work." >&2;}
20908 fi
20909 if test "$cross_compiling" = yes; then :
20910 user_path="/usr/bin:/bin:/usr/sbin:/sbin"
20911
20912else
20913 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
20914/* end confdefs.h. */
20915
20916/* find out what STDPATH is */
20917#include <stdio.h>
20918#ifdef HAVE_PATHS_H
20919# include <paths.h>
20920#endif
20921#ifndef _PATH_STDPATH
20922# ifdef _PATH_USERPATH /* Irix */
20923# define _PATH_STDPATH _PATH_USERPATH
20924# else
20925# define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin"
20926# endif
20927#endif
20928#include <sys/types.h>
20929#include <sys/stat.h>
20930#include <fcntl.h>
20931#define DATA "conftest.stdpath"
20932
20933int
20934main ()
20935{
20936
20937 FILE *fd;
20938 int rc;
20939
20940 fd = fopen(DATA,"w");
20941 if(fd == NULL)
20942 exit(1);
20943
20944 if ((rc = fprintf(fd,"%s", _PATH_STDPATH)) < 0)
20945 exit(1);
20946
20947 exit(0);
20948
20949 ;
20950 return 0;
20951}
20952_ACEOF
20953if ac_fn_c_try_run "$LINENO"; then :
20954 user_path=`cat conftest.stdpath`
20955else
20956 user_path="/usr/bin:/bin:/usr/sbin:/sbin"
20957fi
20958rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
20959 conftest.$ac_objext conftest.beam conftest.$ac_ext
20960fi
20961
20962# make sure $bindir is in USER_PATH so scp will work
20963 t_bindir="${bindir}"
20964 while echo "${t_bindir}" | egrep '\$\{|NONE/' >/dev/null 2>&1; do
20965 t_bindir=`eval echo ${t_bindir}`
20966 case $t_bindir in
20967 NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$prefix~"` ;;
20968 esac
20969 case $t_bindir in
20970 NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$ac_default_prefix~"` ;;
20971 esac
20972 done
20973 echo $user_path | grep ":$t_bindir" > /dev/null 2>&1
20974 if test $? -ne 0 ; then
20975 echo $user_path | grep "^$t_bindir" > /dev/null 2>&1
20976 if test $? -ne 0 ; then
20977 user_path=$user_path:$t_bindir
20978 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Adding $t_bindir to USER_PATH so scp will work" >&5
20979$as_echo "Adding $t_bindir to USER_PATH so scp will work" >&6; }
20980 fi
20981 fi
20982 fi
20983
20984fi
20985
20986if test "x$external_path_file" != "x/etc/login.conf" ; then
20987
20988cat >>confdefs.h <<_ACEOF
20989#define USER_PATH "$user_path"
20990_ACEOF
20991
20992
20993fi
20994
20995# Set superuser path separately to user path
20996
20997# Check whether --with-superuser-path was given.
20998if test "${with_superuser_path+set}" = set; then :
20999 withval=$with_superuser_path;
21000 if test -n "$withval" && test "x$withval" != "xno" && \
21001 test "x${withval}" != "xyes"; then
21002
21003cat >>confdefs.h <<_ACEOF
21004#define SUPERUSER_PATH "$withval"
21005_ACEOF
21006
21007 superuser_path=$withval
21008 fi
21009
21010
21011fi
21012
21013
21014
21015{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need to convert IPv4 in IPv6-mapped addresses" >&5
21016$as_echo_n "checking if we need to convert IPv4 in IPv6-mapped addresses... " >&6; }
21017IPV4_IN6_HACK_MSG="no"
21018
21019# Check whether --with-4in6 was given.
21020if test "${with_4in6+set}" = set; then :
21021 withval=$with_4in6;
21022 if test "x$withval" != "xno" ; then
21023 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21024$as_echo "yes" >&6; }
21025
21026$as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h
21027
21028 IPV4_IN6_HACK_MSG="yes"
21029 else
21030 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21031$as_echo "no" >&6; }
21032 fi
21033
21034else
21035
21036 if test "x$inet6_default_4in6" = "xyes"; then
21037 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (default)" >&5
21038$as_echo "yes (default)" >&6; }
21039 $as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h
21040
21041 IPV4_IN6_HACK_MSG="yes"
21042 else
21043 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (default)" >&5
21044$as_echo "no (default)" >&6; }
21045 fi
21046
21047
21048fi
21049
21050
21051# Whether to enable BSD auth support
21052BSD_AUTH_MSG=no
21053
21054# Check whether --with-bsd-auth was given.
21055if test "${with_bsd_auth+set}" = set; then :
21056 withval=$with_bsd_auth;
21057 if test "x$withval" != "xno" ; then
21058
21059$as_echo "#define BSD_AUTH 1" >>confdefs.h
21060
21061 BSD_AUTH_MSG=yes
21062 fi
21063
21064
21065fi
21066
21067
21068# Where to place sshd.pid
21069piddir=/var/run
21070# make sure the directory exists
21071if test ! -d $piddir ; then
21072 piddir=`eval echo ${sysconfdir}`
21073 case $piddir in
21074 NONE/*) piddir=`echo $piddir | sed "s~NONE~$ac_default_prefix~"` ;;
21075 esac
21076fi
21077
21078
21079# Check whether --with-pid-dir was given.
21080if test "${with_pid_dir+set}" = set; then :
21081 withval=$with_pid_dir;
21082 if test -n "$withval" && test "x$withval" != "xno" && \
21083 test "x${withval}" != "xyes"; then
21084 piddir=$withval
21085 if test ! -d $piddir ; then
21086 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** no $piddir directory on this system **" >&5
21087$as_echo "$as_me: WARNING: ** no $piddir directory on this system **" >&2;}
21088 fi
21089 fi
21090
21091
21092fi
21093
21094
21095
21096cat >>confdefs.h <<_ACEOF
21097#define _PATH_SSH_PIDDIR "$piddir"
21098_ACEOF
21099
21100
21101
21102# Check whether --enable-lastlog was given.
21103if test "${enable_lastlog+set}" = set; then :
21104 enableval=$enable_lastlog;
21105 if test "x$enableval" = "xno" ; then
21106 $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
21107
21108 fi
21109
21110
21111fi
21112
21113# Check whether --enable-utmp was given.
21114if test "${enable_utmp+set}" = set; then :
21115 enableval=$enable_utmp;
21116 if test "x$enableval" = "xno" ; then
21117 $as_echo "#define DISABLE_UTMP 1" >>confdefs.h
21118
21119 fi
21120
21121
21122fi
21123
21124# Check whether --enable-utmpx was given.
21125if test "${enable_utmpx+set}" = set; then :
21126 enableval=$enable_utmpx;
21127 if test "x$enableval" = "xno" ; then
21128
21129$as_echo "#define DISABLE_UTMPX 1" >>confdefs.h
21130
21131 fi
21132
21133
21134fi
21135
21136# Check whether --enable-wtmp was given.
21137if test "${enable_wtmp+set}" = set; then :
21138 enableval=$enable_wtmp;
21139 if test "x$enableval" = "xno" ; then
21140 $as_echo "#define DISABLE_WTMP 1" >>confdefs.h
21141
21142 fi
21143
21144
21145fi
21146
21147# Check whether --enable-wtmpx was given.
21148if test "${enable_wtmpx+set}" = set; then :
21149 enableval=$enable_wtmpx;
21150 if test "x$enableval" = "xno" ; then
21151
21152$as_echo "#define DISABLE_WTMPX 1" >>confdefs.h
21153
21154 fi
21155
21156
21157fi
21158
21159# Check whether --enable-libutil was given.
21160if test "${enable_libutil+set}" = set; then :
21161 enableval=$enable_libutil;
21162 if test "x$enableval" = "xno" ; then
21163 $as_echo "#define DISABLE_LOGIN 1" >>confdefs.h
21164
21165 fi
21166
21167
21168fi
21169
21170# Check whether --enable-pututline was given.
21171if test "${enable_pututline+set}" = set; then :
21172 enableval=$enable_pututline;
21173 if test "x$enableval" = "xno" ; then
21174
21175$as_echo "#define DISABLE_PUTUTLINE 1" >>confdefs.h
21176
21177 fi
21178
21179
21180fi
21181
21182# Check whether --enable-pututxline was given.
21183if test "${enable_pututxline+set}" = set; then :
21184 enableval=$enable_pututxline;
21185 if test "x$enableval" = "xno" ; then
21186
21187$as_echo "#define DISABLE_PUTUTXLINE 1" >>confdefs.h
21188
21189 fi
21190
21191
21192fi
21193
21194
21195# Check whether --with-lastlog was given.
21196if test "${with_lastlog+set}" = set; then :
21197 withval=$with_lastlog;
21198 if test "x$withval" = "xno" ; then
21199 $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
21200
21201 elif test -n "$withval" && test "x${withval}" != "xyes"; then
21202 conf_lastlog_location=$withval
21203 fi
21204
21205
21206fi
21207
21208
21209
21210{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines LASTLOG_FILE" >&5
21211$as_echo_n "checking if your system defines LASTLOG_FILE... " >&6; }
21212cat confdefs.h - <<_ACEOF >conftest.$ac_ext
21213/* end confdefs.h. */
21214
21215#include <sys/types.h>
21216#include <utmp.h>
21217#ifdef HAVE_LASTLOG_H
21218# include <lastlog.h>
21219#endif
21220#ifdef HAVE_PATHS_H
21221# include <paths.h>
21222#endif
21223#ifdef HAVE_LOGIN_H
21224# include <login.h>
21225#endif
21226
21227int
21228main ()
21229{
21230 char *lastlog = LASTLOG_FILE;
21231 ;
21232 return 0;
21233}
21234_ACEOF
21235if ac_fn_c_try_compile "$LINENO"; then :
21236 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21237$as_echo "yes" >&6; }
21238else
21239
21240 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21241$as_echo "no" >&6; }
21242 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines _PATH_LASTLOG" >&5
21243$as_echo_n "checking if your system defines _PATH_LASTLOG... " >&6; }
21244 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
21245/* end confdefs.h. */
21246
21247#include <sys/types.h>
21248#include <utmp.h>
21249#ifdef HAVE_LASTLOG_H
21250# include <lastlog.h>
21251#endif
21252#ifdef HAVE_PATHS_H
21253# include <paths.h>
21254#endif
21255
21256int
21257main ()
21258{
21259 char *lastlog = _PATH_LASTLOG;
21260 ;
21261 return 0;
21262}
21263_ACEOF
21264if ac_fn_c_try_compile "$LINENO"; then :
21265 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21266$as_echo "yes" >&6; }
21267else
21268
21269 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21270$as_echo "no" >&6; }
21271 system_lastlog_path=no
21272
21273fi
21274rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
21275
21276fi
21277rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
21278
21279if test -z "$conf_lastlog_location"; then
21280 if test x"$system_lastlog_path" = x"no" ; then
21281 for f in /var/log/lastlog /usr/adm/lastlog /var/adm/lastlog /etc/security/lastlog ; do
21282 if (test -d "$f" || test -f "$f") ; then
21283 conf_lastlog_location=$f
21284 fi
21285 done
21286 if test -z "$conf_lastlog_location"; then
21287 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** Cannot find lastlog **" >&5
21288$as_echo "$as_me: WARNING: ** Cannot find lastlog **" >&2;}
21289 fi
21290 fi
21291fi
21292
21293if test -n "$conf_lastlog_location"; then
21294
21295cat >>confdefs.h <<_ACEOF
21296#define CONF_LASTLOG_FILE "$conf_lastlog_location"
21297_ACEOF
21298
21299fi
21300
21301{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines UTMP_FILE" >&5
21302$as_echo_n "checking if your system defines UTMP_FILE... " >&6; }
21303cat confdefs.h - <<_ACEOF >conftest.$ac_ext
21304/* end confdefs.h. */
21305
21306#include <sys/types.h>
21307#include <utmp.h>
21308#ifdef HAVE_PATHS_H
21309# include <paths.h>
21310#endif
21311
21312int
21313main ()
21314{
21315 char *utmp = UTMP_FILE;
21316 ;
21317 return 0;
21318}
21319_ACEOF
21320if ac_fn_c_try_compile "$LINENO"; then :
21321 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21322$as_echo "yes" >&6; }
21323else
21324 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21325$as_echo "no" >&6; }
21326 system_utmp_path=no
21327
21328fi
21329rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
21330if test -z "$conf_utmp_location"; then
21331 if test x"$system_utmp_path" = x"no" ; then
21332 for f in /etc/utmp /usr/adm/utmp /var/run/utmp; do
21333 if test -f $f ; then
21334 conf_utmp_location=$f
21335 fi
21336 done
21337 if test -z "$conf_utmp_location"; then
21338 $as_echo "#define DISABLE_UTMP 1" >>confdefs.h
21339
21340 fi
21341 fi
21342fi
21343if test -n "$conf_utmp_location"; then
21344
21345cat >>confdefs.h <<_ACEOF
21346#define CONF_UTMP_FILE "$conf_utmp_location"
21347_ACEOF
21348
21349fi
21350
21351{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMP_FILE" >&5
21352$as_echo_n "checking if your system defines WTMP_FILE... " >&6; }
21353cat confdefs.h - <<_ACEOF >conftest.$ac_ext
21354/* end confdefs.h. */
21355
21356#include <sys/types.h>
21357#include <utmp.h>
21358#ifdef HAVE_PATHS_H
21359# include <paths.h>
21360#endif
21361
21362int
21363main ()
21364{
21365 char *wtmp = WTMP_FILE;
21366 ;
21367 return 0;
21368}
21369_ACEOF
21370if ac_fn_c_try_compile "$LINENO"; then :
21371 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21372$as_echo "yes" >&6; }
21373else
21374 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21375$as_echo "no" >&6; }
21376 system_wtmp_path=no
21377
21378fi
21379rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
21380if test -z "$conf_wtmp_location"; then
21381 if test x"$system_wtmp_path" = x"no" ; then
21382 for f in /usr/adm/wtmp /var/log/wtmp; do
21383 if test -f $f ; then
21384 conf_wtmp_location=$f
21385 fi
21386 done
21387 if test -z "$conf_wtmp_location"; then
21388 $as_echo "#define DISABLE_WTMP 1" >>confdefs.h
21389
21390 fi
21391 fi
21392fi
21393if test -n "$conf_wtmp_location"; then
21394
21395cat >>confdefs.h <<_ACEOF
21396#define CONF_WTMP_FILE "$conf_wtmp_location"
21397_ACEOF
21398
21399fi
21400
21401{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMPX_FILE" >&5
21402$as_echo_n "checking if your system defines WTMPX_FILE... " >&6; }
21403cat confdefs.h - <<_ACEOF >conftest.$ac_ext
21404/* end confdefs.h. */
21405
21406#include <sys/types.h>
21407#include <utmp.h>
21408#ifdef HAVE_UTMPX_H
21409#include <utmpx.h>
21410#endif
21411#ifdef HAVE_PATHS_H
21412# include <paths.h>
21413#endif
21414
21415int
21416main ()
21417{
21418 char *wtmpx = WTMPX_FILE;
21419 ;
21420 return 0;
21421}
21422_ACEOF
21423if ac_fn_c_try_compile "$LINENO"; then :
21424 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
21425$as_echo "yes" >&6; }
21426else
21427 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
21428$as_echo "no" >&6; }
21429 system_wtmpx_path=no
21430
21431fi
21432rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
21433if test -z "$conf_wtmpx_location"; then
21434 if test x"$system_wtmpx_path" = x"no" ; then
21435 $as_echo "#define DISABLE_WTMPX 1" >>confdefs.h
21436
21437 fi
21438else
21439
21440cat >>confdefs.h <<_ACEOF
21441#define CONF_WTMPX_FILE "$conf_wtmpx_location"
21442_ACEOF
21443
21444fi
21445
21446
21447if test ! -z "$blibpath" ; then
21448 LDFLAGS="$LDFLAGS $blibflags$blibpath"
21449 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&5
21450$as_echo "$as_me: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&2;}
21451fi
21452
21453ac_fn_c_check_member "$LINENO" "struct lastlog" "ll_line" "ac_cv_member_struct_lastlog_ll_line" "
21454#ifdef HAVE_SYS_TYPES_H
21455#include <sys/types.h>
21456#endif
21457#ifdef HAVE_UTMP_H
21458#include <utmp.h>
21459#endif
21460#ifdef HAVE_UTMPX_H
21461#include <utmpx.h>
21462#endif
21463#ifdef HAVE_LASTLOG_H
21464#include <lastlog.h>
21465#endif
21466
21467"
21468if test "x$ac_cv_member_struct_lastlog_ll_line" = xyes; then :
21469
21470else
21471
21472 if test x$SKIP_DISABLE_LASTLOG_DEFINE != "xyes" ; then
21473 $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h
21474
21475 fi
21476
21477fi
21478
21479
21480ac_fn_c_check_member "$LINENO" "struct utmp" "ut_line" "ac_cv_member_struct_utmp_ut_line" "
21481#ifdef HAVE_SYS_TYPES_H
21482#include <sys/types.h>
21483#endif
21484#ifdef HAVE_UTMP_H
21485#include <utmp.h>
21486#endif
21487#ifdef HAVE_UTMPX_H
21488#include <utmpx.h>
21489#endif
21490#ifdef HAVE_LASTLOG_H
21491#include <lastlog.h>
21492#endif
21493
21494"
21495if test "x$ac_cv_member_struct_utmp_ut_line" = xyes; then :
21496
21497else
21498
21499 $as_echo "#define DISABLE_UTMP 1" >>confdefs.h
21500
21501 $as_echo "#define DISABLE_WTMP 1" >>confdefs.h
21502
21503
21504fi
21505
21506
21507CFLAGS="$CFLAGS $werror_flags"
21508
21509if test "x$ac_cv_func_getaddrinfo" != "xyes" ; then
21510 TEST_SSH_IPV6=no
21511else
21512 TEST_SSH_IPV6=yes
21513fi
21514ac_fn_c_check_decl "$LINENO" "BROKEN_GETADDRINFO" "ac_cv_have_decl_BROKEN_GETADDRINFO" "$ac_includes_default"
21515if test "x$ac_cv_have_decl_BROKEN_GETADDRINFO" = xyes; then :
21516 TEST_SSH_IPV6=no
21517fi
21518
21519TEST_SSH_IPV6=$TEST_SSH_IPV6
21520
21521TEST_SSH_UTF8=$TEST_SSH_UTF8
21522
21523TEST_MALLOC_OPTIONS=$TEST_MALLOC_OPTIONS
21524
21525UNSUPPORTED_ALGORITHMS=$unsupported_algorithms
21526
21527DEPEND=$(cat $srcdir/.depend)
21528
21529
21530CFLAGS="${CFLAGS} ${CFLAGS_AFTER}"
21531LDFLAGS="${LDFLAGS} ${LDFLAGS_AFTER}"
21532
21533
21534ac_config_files="$ac_config_files Makefile buildpkg.sh opensshd.init openssh.xml openbsd-compat/Makefile openbsd-compat/regress/Makefile survey.sh"
21535
21536cat >confcache <<\_ACEOF
21537# This file is a shell script that caches the results of configure
21538# tests run on this system so they can be shared between configure
21539# scripts and configure runs, see configure's option --config-cache.
21540# It is not useful on other systems. If it contains results you don't
21541# want to keep, you may remove or edit it.
21542#
21543# config.status only pays attention to the cache file if you give it
21544# the --recheck option to rerun configure.
21545#
21546# `ac_cv_env_foo' variables (set or unset) will be overridden when
21547# loading this file, other *unset* `ac_cv_foo' will be assigned the
21548# following values.
21549
21550_ACEOF
21551
21552# The following way of writing the cache mishandles newlines in values,
21553# but we know of no workaround that is simple, portable, and efficient.
21554# So, we kill variables containing newlines.
21555# Ultrix sh set writes to stderr and can't be redirected directly,
21556# and sets the high bit in the cache file unless we assign to the vars.
21557(
21558 for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
21559 eval ac_val=\$$ac_var
21560 case $ac_val in #(
21561 *${as_nl}*)
21562 case $ac_var in #(
21563 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
21564$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
21565 esac
21566 case $ac_var in #(
21567 _ | IFS | as_nl) ;; #(
21568 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
21569 *) { eval $ac_var=; unset $ac_var;} ;;
21570 esac ;;
21571 esac
21572 done
21573
21574 (set) 2>&1 |
21575 case $as_nl`(ac_space=' '; set) 2>&1` in #(
21576 *${as_nl}ac_space=\ *)
21577 # `set' does not quote correctly, so add quotes: double-quote
21578 # substitution turns \\\\ into \\, and sed turns \\ into \.
21579 sed -n \
21580 "s/'/'\\\\''/g;
21581 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
21582 ;; #(
21583 *)
21584 # `set' quotes correctly as required by POSIX, so do not add quotes.
21585 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
21586 ;;
21587 esac |
21588 sort
21589) |
21590 sed '
21591 /^ac_cv_env_/b end
21592 t clear
21593 :clear
21594 s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
21595 t end
21596 s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
21597 :end' >>confcache
21598if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
21599 if test -w "$cache_file"; then
21600 if test "x$cache_file" != "x/dev/null"; then
21601 { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
21602$as_echo "$as_me: updating cache $cache_file" >&6;}
21603 if test ! -f "$cache_file" || test -h "$cache_file"; then
21604 cat confcache >"$cache_file"
21605 else
21606 case $cache_file in #(
21607 */* | ?:*)
21608 mv -f confcache "$cache_file"$$ &&
21609 mv -f "$cache_file"$$ "$cache_file" ;; #(
21610 *)
21611 mv -f confcache "$cache_file" ;;
21612 esac
21613 fi
21614 fi
21615 else
21616 { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
21617$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
21618 fi
21619fi
21620rm -f confcache
21621
21622test "x$prefix" = xNONE && prefix=$ac_default_prefix
21623# Let make expand exec_prefix.
21624test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
21625
21626DEFS=-DHAVE_CONFIG_H
21627
21628ac_libobjs=
21629ac_ltlibobjs=
21630U=
21631for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
21632 # 1. Remove the extension, and $U if already installed.
21633 ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
21634 ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
21635 # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
21636 # will be set to the directory where LIBOBJS objects are built.
21637 as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
21638 as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
21639done
21640LIBOBJS=$ac_libobjs
21641
21642LTLIBOBJS=$ac_ltlibobjs
21643
21644
21645
21646
21647: "${CONFIG_STATUS=./config.status}"
21648ac_write_fail=0
21649ac_clean_files_save=$ac_clean_files
21650ac_clean_files="$ac_clean_files $CONFIG_STATUS"
21651{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
21652$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
21653as_write_fail=0
21654cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
21655#! $SHELL
21656# Generated by $as_me.
21657# Run this file to recreate the current configuration.
21658# Compiler output produced by configure, useful for debugging
21659# configure, is in config.log if it exists.
21660
21661debug=false
21662ac_cs_recheck=false
21663ac_cs_silent=false
21664
21665SHELL=\${CONFIG_SHELL-$SHELL}
21666export SHELL
21667_ASEOF
21668cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
21669## -------------------- ##
21670## M4sh Initialization. ##
21671## -------------------- ##
21672
21673# Be more Bourne compatible
21674DUALCASE=1; export DUALCASE # for MKS sh
21675if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
21676 emulate sh
21677 NULLCMD=:
21678 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
21679 # is contrary to our usage. Disable this feature.
21680 alias -g '${1+"$@"}'='"$@"'
21681 setopt NO_GLOB_SUBST
21682else
21683 case `(set -o) 2>/dev/null` in #(
21684 *posix*) :
21685 set -o posix ;; #(
21686 *) :
21687 ;;
21688esac
21689fi
21690
21691
21692as_nl='
21693'
21694export as_nl
21695# Printing a long string crashes Solaris 7 /usr/bin/printf.
21696as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
21697as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
21698as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
21699# Prefer a ksh shell builtin over an external printf program on Solaris,
21700# but without wasting forks for bash or zsh.
21701if test -z "$BASH_VERSION$ZSH_VERSION" \
21702 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
21703 as_echo='print -r --'
21704 as_echo_n='print -rn --'
21705elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
21706 as_echo='printf %s\n'
21707 as_echo_n='printf %s'
21708else
21709 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
21710 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
21711 as_echo_n='/usr/ucb/echo -n'
21712 else
21713 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
21714 as_echo_n_body='eval
21715 arg=$1;
21716 case $arg in #(
21717 *"$as_nl"*)
21718 expr "X$arg" : "X\\(.*\\)$as_nl";
21719 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
21720 esac;
21721 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
21722 '
21723 export as_echo_n_body
21724 as_echo_n='sh -c $as_echo_n_body as_echo'
21725 fi
21726 export as_echo_body
21727 as_echo='sh -c $as_echo_body as_echo'
21728fi
21729
21730# The user is always right.
21731if test "${PATH_SEPARATOR+set}" != set; then
21732 PATH_SEPARATOR=:
21733 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
21734 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
21735 PATH_SEPARATOR=';'
21736 }
21737fi
21738
21739
21740# IFS
21741# We need space, tab and new line, in precisely that order. Quoting is
21742# there to prevent editors from complaining about space-tab.
21743# (If _AS_PATH_WALK were called with IFS unset, it would disable word
21744# splitting by setting IFS to empty value.)
21745IFS=" "" $as_nl"
21746
21747# Find who we are. Look in the path if we contain no directory separator.
21748as_myself=
21749case $0 in #((
21750 *[\\/]* ) as_myself=$0 ;;
21751 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
21752for as_dir in $PATH
21753do
21754 IFS=$as_save_IFS
21755 test -z "$as_dir" && as_dir=.
21756 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
21757 done
21758IFS=$as_save_IFS
21759
21760 ;;
21761esac
21762# We did not find ourselves, most probably we were run as `sh COMMAND'
21763# in which case we are not to be found in the path.
21764if test "x$as_myself" = x; then
21765 as_myself=$0
21766fi
21767if test ! -f "$as_myself"; then
21768 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
21769 exit 1
21770fi
21771
21772# Unset variables that we do not need and which cause bugs (e.g. in
21773# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
21774# suppresses any "Segmentation fault" message there. '((' could
21775# trigger a bug in pdksh 5.2.14.
21776for as_var in BASH_ENV ENV MAIL MAILPATH
21777do eval test x\${$as_var+set} = xset \
21778 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
21779done
21780PS1='$ '
21781PS2='> '
21782PS4='+ '
21783
21784# NLS nuisances.
21785LC_ALL=C
21786export LC_ALL
21787LANGUAGE=C
21788export LANGUAGE
21789
21790# CDPATH.
21791(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
21792
21793
21794# as_fn_error STATUS ERROR [LINENO LOG_FD]
21795# ----------------------------------------
21796# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
21797# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
21798# script with STATUS, using 1 if that was 0.
21799as_fn_error ()
21800{
21801 as_status=$1; test $as_status -eq 0 && as_status=1
21802 if test "$4"; then
21803 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
21804 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
21805 fi
21806 $as_echo "$as_me: error: $2" >&2
21807 as_fn_exit $as_status
21808} # as_fn_error
21809
21810
21811# as_fn_set_status STATUS
21812# -----------------------
21813# Set $? to STATUS, without forking.
21814as_fn_set_status ()
21815{
21816 return $1
21817} # as_fn_set_status
21818
21819# as_fn_exit STATUS
21820# -----------------
21821# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
21822as_fn_exit ()
21823{
21824 set +e
21825 as_fn_set_status $1
21826 exit $1
21827} # as_fn_exit
21828
21829# as_fn_unset VAR
21830# ---------------
21831# Portably unset VAR.
21832as_fn_unset ()
21833{
21834 { eval $1=; unset $1;}
21835}
21836as_unset=as_fn_unset
21837# as_fn_append VAR VALUE
21838# ----------------------
21839# Append the text in VALUE to the end of the definition contained in VAR. Take
21840# advantage of any shell optimizations that allow amortized linear growth over
21841# repeated appends, instead of the typical quadratic growth present in naive
21842# implementations.
21843if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
21844 eval 'as_fn_append ()
21845 {
21846 eval $1+=\$2
21847 }'
21848else
21849 as_fn_append ()
21850 {
21851 eval $1=\$$1\$2
21852 }
21853fi # as_fn_append
21854
21855# as_fn_arith ARG...
21856# ------------------
21857# Perform arithmetic evaluation on the ARGs, and store the result in the
21858# global $as_val. Take advantage of shells that can avoid forks. The arguments
21859# must be portable across $(()) and expr.
21860if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
21861 eval 'as_fn_arith ()
21862 {
21863 as_val=$(( $* ))
21864 }'
21865else
21866 as_fn_arith ()
21867 {
21868 as_val=`expr "$@" || test $? -eq 1`
21869 }
21870fi # as_fn_arith
21871
21872
21873if expr a : '\(a\)' >/dev/null 2>&1 &&
21874 test "X`expr 00001 : '.*\(...\)'`" = X001; then
21875 as_expr=expr
21876else
21877 as_expr=false
21878fi
21879
21880if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
21881 as_basename=basename
21882else
21883 as_basename=false
21884fi
21885
21886if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
21887 as_dirname=dirname
21888else
21889 as_dirname=false
21890fi
21891
21892as_me=`$as_basename -- "$0" ||
21893$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
21894 X"$0" : 'X\(//\)$' \| \
21895 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
21896$as_echo X/"$0" |
21897 sed '/^.*\/\([^/][^/]*\)\/*$/{
21898 s//\1/
21899 q
21900 }
21901 /^X\/\(\/\/\)$/{
21902 s//\1/
21903 q
21904 }
21905 /^X\/\(\/\).*/{
21906 s//\1/
21907 q
21908 }
21909 s/.*/./; q'`
21910
21911# Avoid depending upon Character Ranges.
21912as_cr_letters='abcdefghijklmnopqrstuvwxyz'
21913as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
21914as_cr_Letters=$as_cr_letters$as_cr_LETTERS
21915as_cr_digits='0123456789'
21916as_cr_alnum=$as_cr_Letters$as_cr_digits
21917
21918ECHO_C= ECHO_N= ECHO_T=
21919case `echo -n x` in #(((((
21920-n*)
21921 case `echo 'xy\c'` in
21922 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
21923 xy) ECHO_C='\c';;
21924 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
21925 ECHO_T=' ';;
21926 esac;;
21927*)
21928 ECHO_N='-n';;
21929esac
21930
21931rm -f conf$$ conf$$.exe conf$$.file
21932if test -d conf$$.dir; then
21933 rm -f conf$$.dir/conf$$.file
21934else
21935 rm -f conf$$.dir
21936 mkdir conf$$.dir 2>/dev/null
21937fi
21938if (echo >conf$$.file) 2>/dev/null; then
21939 if ln -s conf$$.file conf$$ 2>/dev/null; then
21940 as_ln_s='ln -s'
21941 # ... but there are two gotchas:
21942 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
21943 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
21944 # In both cases, we have to default to `cp -pR'.
21945 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
21946 as_ln_s='cp -pR'
21947 elif ln conf$$.file conf$$ 2>/dev/null; then
21948 as_ln_s=ln
21949 else
21950 as_ln_s='cp -pR'
21951 fi
21952else
21953 as_ln_s='cp -pR'
21954fi
21955rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
21956rmdir conf$$.dir 2>/dev/null
21957
21958
21959# as_fn_mkdir_p
21960# -------------
21961# Create "$as_dir" as a directory, including parents if necessary.
21962as_fn_mkdir_p ()
21963{
21964
21965 case $as_dir in #(
21966 -*) as_dir=./$as_dir;;
21967 esac
21968 test -d "$as_dir" || eval $as_mkdir_p || {
21969 as_dirs=
21970 while :; do
21971 case $as_dir in #(
21972 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
21973 *) as_qdir=$as_dir;;
21974 esac
21975 as_dirs="'$as_qdir' $as_dirs"
21976 as_dir=`$as_dirname -- "$as_dir" ||
21977$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
21978 X"$as_dir" : 'X\(//\)[^/]' \| \
21979 X"$as_dir" : 'X\(//\)$' \| \
21980 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
21981$as_echo X"$as_dir" |
21982 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
21983 s//\1/
21984 q
21985 }
21986 /^X\(\/\/\)[^/].*/{
21987 s//\1/
21988 q
21989 }
21990 /^X\(\/\/\)$/{
21991 s//\1/
21992 q
21993 }
21994 /^X\(\/\).*/{
21995 s//\1/
21996 q
21997 }
21998 s/.*/./; q'`
21999 test -d "$as_dir" && break
22000 done
22001 test -z "$as_dirs" || eval "mkdir $as_dirs"
22002 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
22003
22004
22005} # as_fn_mkdir_p
22006if mkdir -p . 2>/dev/null; then
22007 as_mkdir_p='mkdir -p "$as_dir"'
22008else
22009 test -d ./-p && rmdir ./-p
22010 as_mkdir_p=false
22011fi
22012
22013
22014# as_fn_executable_p FILE
22015# -----------------------
22016# Test if FILE is an executable regular file.
22017as_fn_executable_p ()
22018{
22019 test -f "$1" && test -x "$1"
22020} # as_fn_executable_p
22021as_test_x='test -x'
22022as_executable_p=as_fn_executable_p
22023
22024# Sed expression to map a string onto a valid CPP name.
22025as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
22026
22027# Sed expression to map a string onto a valid variable name.
22028as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
22029
22030
22031exec 6>&1
22032## ----------------------------------- ##
22033## Main body of $CONFIG_STATUS script. ##
22034## ----------------------------------- ##
22035_ASEOF
22036test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
22037
22038cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22039# Save the log message, to keep $0 and so on meaningful, and to
22040# report actual input values of CONFIG_FILES etc. instead of their
22041# values after options handling.
22042ac_log="
22043This file was extended by OpenSSH $as_me Portable, which was
22044generated by GNU Autoconf 2.69. Invocation command line was
22045
22046 CONFIG_FILES = $CONFIG_FILES
22047 CONFIG_HEADERS = $CONFIG_HEADERS
22048 CONFIG_LINKS = $CONFIG_LINKS
22049 CONFIG_COMMANDS = $CONFIG_COMMANDS
22050 $ $0 $@
22051
22052on `(hostname || uname -n) 2>/dev/null | sed 1q`
22053"
22054
22055_ACEOF
22056
22057case $ac_config_files in *"
22058"*) set x $ac_config_files; shift; ac_config_files=$*;;
22059esac
22060
22061case $ac_config_headers in *"
22062"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
22063esac
22064
22065
22066cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22067# Files that config.status was made for.
22068config_files="$ac_config_files"
22069config_headers="$ac_config_headers"
22070
22071_ACEOF
22072
22073cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22074ac_cs_usage="\
22075\`$as_me' instantiates files and other configuration actions
22076from templates according to the current configuration. Unless the files
22077and actions are specified as TAGs, all are instantiated by default.
22078
22079Usage: $0 [OPTION]... [TAG]...
22080
22081 -h, --help print this help, then exit
22082 -V, --version print version number and configuration settings, then exit
22083 --config print configuration, then exit
22084 -q, --quiet, --silent
22085 do not print progress messages
22086 -d, --debug don't remove temporary files
22087 --recheck update $as_me by reconfiguring in the same conditions
22088 --file=FILE[:TEMPLATE]
22089 instantiate the configuration file FILE
22090 --header=FILE[:TEMPLATE]
22091 instantiate the configuration header FILE
22092
22093Configuration files:
22094$config_files
22095
22096Configuration headers:
22097$config_headers
22098
22099Report bugs to <openssh-unix-dev@mindrot.org>."
22100
22101_ACEOF
22102cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22103ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
22104ac_cs_version="\\
22105OpenSSH config.status Portable
22106configured by $0, generated by GNU Autoconf 2.69,
22107 with options \\"\$ac_cs_config\\"
22108
22109Copyright (C) 2012 Free Software Foundation, Inc.
22110This config.status script is free software; the Free Software Foundation
22111gives unlimited permission to copy, distribute and modify it."
22112
22113ac_pwd='$ac_pwd'
22114srcdir='$srcdir'
22115INSTALL='$INSTALL'
22116MKDIR_P='$MKDIR_P'
22117AWK='$AWK'
22118test -n "\$AWK" || AWK=awk
22119_ACEOF
22120
22121cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22122# The default lists apply if the user does not specify any file.
22123ac_need_defaults=:
22124while test $# != 0
22125do
22126 case $1 in
22127 --*=?*)
22128 ac_option=`expr "X$1" : 'X\([^=]*\)='`
22129 ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
22130 ac_shift=:
22131 ;;
22132 --*=)
22133 ac_option=`expr "X$1" : 'X\([^=]*\)='`
22134 ac_optarg=
22135 ac_shift=:
22136 ;;
22137 *)
22138 ac_option=$1
22139 ac_optarg=$2
22140 ac_shift=shift
22141 ;;
22142 esac
22143
22144 case $ac_option in
22145 # Handling of the options.
22146 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
22147 ac_cs_recheck=: ;;
22148 --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
22149 $as_echo "$ac_cs_version"; exit ;;
22150 --config | --confi | --conf | --con | --co | --c )
22151 $as_echo "$ac_cs_config"; exit ;;
22152 --debug | --debu | --deb | --de | --d | -d )
22153 debug=: ;;
22154 --file | --fil | --fi | --f )
22155 $ac_shift
22156 case $ac_optarg in
22157 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
22158 '') as_fn_error $? "missing file argument" ;;
22159 esac
22160 as_fn_append CONFIG_FILES " '$ac_optarg'"
22161 ac_need_defaults=false;;
22162 --header | --heade | --head | --hea )
22163 $ac_shift
22164 case $ac_optarg in
22165 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
22166 esac
22167 as_fn_append CONFIG_HEADERS " '$ac_optarg'"
22168 ac_need_defaults=false;;
22169 --he | --h)
22170 # Conflict between --help and --header
22171 as_fn_error $? "ambiguous option: \`$1'
22172Try \`$0 --help' for more information.";;
22173 --help | --hel | -h )
22174 $as_echo "$ac_cs_usage"; exit ;;
22175 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
22176 | -silent | --silent | --silen | --sile | --sil | --si | --s)
22177 ac_cs_silent=: ;;
22178
22179 # This is an error.
22180 -*) as_fn_error $? "unrecognized option: \`$1'
22181Try \`$0 --help' for more information." ;;
22182
22183 *) as_fn_append ac_config_targets " $1"
22184 ac_need_defaults=false ;;
22185
22186 esac
22187 shift
22188done
22189
22190ac_configure_extra_args=
22191
22192if $ac_cs_silent; then
22193 exec 6>/dev/null
22194 ac_configure_extra_args="$ac_configure_extra_args --silent"
22195fi
22196
22197_ACEOF
22198cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22199if \$ac_cs_recheck; then
22200 set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
22201 shift
22202 \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
22203 CONFIG_SHELL='$SHELL'
22204 export CONFIG_SHELL
22205 exec "\$@"
22206fi
22207
22208_ACEOF
22209cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22210exec 5>>config.log
22211{
22212 echo
22213 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
22214## Running $as_me. ##
22215_ASBOX
22216 $as_echo "$ac_log"
22217} >&5
22218
22219_ACEOF
22220cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22221_ACEOF
22222
22223cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22224
22225# Handling of arguments.
22226for ac_config_target in $ac_config_targets
22227do
22228 case $ac_config_target in
22229 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
22230 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
22231 "buildpkg.sh") CONFIG_FILES="$CONFIG_FILES buildpkg.sh" ;;
22232 "opensshd.init") CONFIG_FILES="$CONFIG_FILES opensshd.init" ;;
22233 "openssh.xml") CONFIG_FILES="$CONFIG_FILES openssh.xml" ;;
22234 "openbsd-compat/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/Makefile" ;;
22235 "openbsd-compat/regress/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/regress/Makefile" ;;
22236 "survey.sh") CONFIG_FILES="$CONFIG_FILES survey.sh" ;;
22237
22238 *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
22239 esac
22240done
22241
22242
22243# If the user did not use the arguments to specify the items to instantiate,
22244# then the envvar interface is used. Set only those that are not.
22245# We use the long form for the default assignment because of an extremely
22246# bizarre bug on SunOS 4.1.3.
22247if $ac_need_defaults; then
22248 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
22249 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
22250fi
22251
22252# Have a temporary directory for convenience. Make it in the build tree
22253# simply because there is no reason against having it here, and in addition,
22254# creating and moving files from /tmp can sometimes cause problems.
22255# Hook for its removal unless debugging.
22256# Note that there is a small window in which the directory will not be cleaned:
22257# after its creation but before its name has been assigned to `$tmp'.
22258$debug ||
22259{
22260 tmp= ac_tmp=
22261 trap 'exit_status=$?
22262 : "${ac_tmp:=$tmp}"
22263 { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
22264' 0
22265 trap 'as_fn_exit 1' 1 2 13 15
22266}
22267# Create a (secure) tmp directory for tmp files.
22268
22269{
22270 tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
22271 test -d "$tmp"
22272} ||
22273{
22274 tmp=./conf$$-$RANDOM
22275 (umask 077 && mkdir "$tmp")
22276} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
22277ac_tmp=$tmp
22278
22279# Set up the scripts for CONFIG_FILES section.
22280# No need to generate them if there are no CONFIG_FILES.
22281# This happens for instance with `./config.status config.h'.
22282if test -n "$CONFIG_FILES"; then
22283
22284
22285ac_cr=`echo X | tr X '\015'`
22286# On cygwin, bash can eat \r inside `` if the user requested igncr.
22287# But we know of no other shell where ac_cr would be empty at this
22288# point, so we can use a bashism as a fallback.
22289if test "x$ac_cr" = x; then
22290 eval ac_cr=\$\'\\r\'
22291fi
22292ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
22293if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
22294 ac_cs_awk_cr='\\r'
22295else
22296 ac_cs_awk_cr=$ac_cr
22297fi
22298
22299echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
22300_ACEOF
22301
22302
22303{
22304 echo "cat >conf$$subs.awk <<_ACEOF" &&
22305 echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
22306 echo "_ACEOF"
22307} >conf$$subs.sh ||
22308 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
22309ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
22310ac_delim='%!_!# '
22311for ac_last_try in false false false false false :; do
22312 . ./conf$$subs.sh ||
22313 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
22314
22315 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
22316 if test $ac_delim_n = $ac_delim_num; then
22317 break
22318 elif $ac_last_try; then
22319 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
22320 else
22321 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
22322 fi
22323done
22324rm -f conf$$subs.sh
22325
22326cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22327cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
22328_ACEOF
22329sed -n '
22330h
22331s/^/S["/; s/!.*/"]=/
22332p
22333g
22334s/^[^!]*!//
22335:repl
22336t repl
22337s/'"$ac_delim"'$//
22338t delim
22339:nl
22340h
22341s/\(.\{148\}\)..*/\1/
22342t more1
22343s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
22344p
22345n
22346b repl
22347:more1
22348s/["\\]/\\&/g; s/^/"/; s/$/"\\/
22349p
22350g
22351s/.\{148\}//
22352t nl
22353:delim
22354h
22355s/\(.\{148\}\)..*/\1/
22356t more2
22357s/["\\]/\\&/g; s/^/"/; s/$/"/
22358p
22359b
22360:more2
22361s/["\\]/\\&/g; s/^/"/; s/$/"\\/
22362p
22363g
22364s/.\{148\}//
22365t delim
22366' <conf$$subs.awk | sed '
22367/^[^""]/{
22368 N
22369 s/\n//
22370}
22371' >>$CONFIG_STATUS || ac_write_fail=1
22372rm -f conf$$subs.awk
22373cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22374_ACAWK
22375cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
22376 for (key in S) S_is_set[key] = 1
22377 FS = ""
22378
22379}
22380{
22381 line = $ 0
22382 nfields = split(line, field, "@")
22383 substed = 0
22384 len = length(field[1])
22385 for (i = 2; i < nfields; i++) {
22386 key = field[i]
22387 keylen = length(key)
22388 if (S_is_set[key]) {
22389 value = S[key]
22390 line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
22391 len += length(value) + length(field[++i])
22392 substed = 1
22393 } else
22394 len += 1 + keylen
22395 }
22396
22397 print line
22398}
22399
22400_ACAWK
22401_ACEOF
22402cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22403if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
22404 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
22405else
22406 cat
22407fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
22408 || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
22409_ACEOF
22410
22411# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
22412# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
22413# trailing colons and then remove the whole line if VPATH becomes empty
22414# (actually we leave an empty line to preserve line numbers).
22415if test "x$srcdir" = x.; then
22416 ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
22417h
22418s///
22419s/^/:/
22420s/[ ]*$/:/
22421s/:\$(srcdir):/:/g
22422s/:\${srcdir}:/:/g
22423s/:@srcdir@:/:/g
22424s/^:*//
22425s/:*$//
22426x
22427s/\(=[ ]*\).*/\1/
22428G
22429s/\n//
22430s/^[^=]*=[ ]*$//
22431}'
22432fi
22433
22434cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22435fi # test -n "$CONFIG_FILES"
22436
22437# Set up the scripts for CONFIG_HEADERS section.
22438# No need to generate them if there are no CONFIG_HEADERS.
22439# This happens for instance with `./config.status Makefile'.
22440if test -n "$CONFIG_HEADERS"; then
22441cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
22442BEGIN {
22443_ACEOF
22444
22445# Transform confdefs.h into an awk script `defines.awk', embedded as
22446# here-document in config.status, that substitutes the proper values into
22447# config.h.in to produce config.h.
22448
22449# Create a delimiter string that does not exist in confdefs.h, to ease
22450# handling of long lines.
22451ac_delim='%!_!# '
22452for ac_last_try in false false :; do
22453 ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
22454 if test -z "$ac_tt"; then
22455 break
22456 elif $ac_last_try; then
22457 as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
22458 else
22459 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
22460 fi
22461done
22462
22463# For the awk script, D is an array of macro values keyed by name,
22464# likewise P contains macro parameters if any. Preserve backslash
22465# newline sequences.
22466
22467ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
22468sed -n '
22469s/.\{148\}/&'"$ac_delim"'/g
22470t rset
22471:rset
22472s/^[ ]*#[ ]*define[ ][ ]*/ /
22473t def
22474d
22475:def
22476s/\\$//
22477t bsnl
22478s/["\\]/\\&/g
22479s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
22480D["\1"]=" \3"/p
22481s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
22482d
22483:bsnl
22484s/["\\]/\\&/g
22485s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
22486D["\1"]=" \3\\\\\\n"\\/p
22487t cont
22488s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
22489t cont
22490d
22491:cont
22492n
22493s/.\{148\}/&'"$ac_delim"'/g
22494t clear
22495:clear
22496s/\\$//
22497t bsnlc
22498s/["\\]/\\&/g; s/^/"/; s/$/"/p
22499d
22500:bsnlc
22501s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
22502b cont
22503' <confdefs.h | sed '
22504s/'"$ac_delim"'/"\\\
22505"/g' >>$CONFIG_STATUS || ac_write_fail=1
22506
22507cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22508 for (key in D) D_is_set[key] = 1
22509 FS = ""
22510}
22511/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
22512 line = \$ 0
22513 split(line, arg, " ")
22514 if (arg[1] == "#") {
22515 defundef = arg[2]
22516 mac1 = arg[3]
22517 } else {
22518 defundef = substr(arg[1], 2)
22519 mac1 = arg[2]
22520 }
22521 split(mac1, mac2, "(") #)
22522 macro = mac2[1]
22523 prefix = substr(line, 1, index(line, defundef) - 1)
22524 if (D_is_set[macro]) {
22525 # Preserve the white space surrounding the "#".
22526 print prefix "define", macro P[macro] D[macro]
22527 next
22528 } else {
22529 # Replace #undef with comments. This is necessary, for example,
22530 # in the case of _POSIX_SOURCE, which is predefined and required
22531 # on some systems where configure will not decide to define it.
22532 if (defundef == "undef") {
22533 print "/*", prefix defundef, macro, "*/"
22534 next
22535 }
22536 }
22537}
22538{ print }
22539_ACAWK
22540_ACEOF
22541cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22542 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
22543fi # test -n "$CONFIG_HEADERS"
22544
22545
22546eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS "
22547shift
22548for ac_tag
22549do
22550 case $ac_tag in
22551 :[FHLC]) ac_mode=$ac_tag; continue;;
22552 esac
22553 case $ac_mode$ac_tag in
22554 :[FHL]*:*);;
22555 :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
22556 :[FH]-) ac_tag=-:-;;
22557 :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
22558 esac
22559 ac_save_IFS=$IFS
22560 IFS=:
22561 set x $ac_tag
22562 IFS=$ac_save_IFS
22563 shift
22564 ac_file=$1
22565 shift
22566
22567 case $ac_mode in
22568 :L) ac_source=$1;;
22569 :[FH])
22570 ac_file_inputs=
22571 for ac_f
22572 do
22573 case $ac_f in
22574 -) ac_f="$ac_tmp/stdin";;
22575 *) # Look for the file first in the build tree, then in the source tree
22576 # (if the path is not absolute). The absolute path cannot be DOS-style,
22577 # because $ac_f cannot contain `:'.
22578 test -f "$ac_f" ||
22579 case $ac_f in
22580 [\\/$]*) false;;
22581 *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
22582 esac ||
22583 as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
22584 esac
22585 case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
22586 as_fn_append ac_file_inputs " '$ac_f'"
22587 done
22588
22589 # Let's still pretend it is `configure' which instantiates (i.e., don't
22590 # use $as_me), people would be surprised to read:
22591 # /* config.h. Generated by config.status. */
22592 configure_input='Generated from '`
22593 $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
22594 `' by configure.'
22595 if test x"$ac_file" != x-; then
22596 configure_input="$ac_file. $configure_input"
22597 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
22598$as_echo "$as_me: creating $ac_file" >&6;}
22599 fi
22600 # Neutralize special characters interpreted by sed in replacement strings.
22601 case $configure_input in #(
22602 *\&* | *\|* | *\\* )
22603 ac_sed_conf_input=`$as_echo "$configure_input" |
22604 sed 's/[\\\\&|]/\\\\&/g'`;; #(
22605 *) ac_sed_conf_input=$configure_input;;
22606 esac
22607
22608 case $ac_tag in
22609 *:-:* | *:-) cat >"$ac_tmp/stdin" \
22610 || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
22611 esac
22612 ;;
22613 esac
22614
22615 ac_dir=`$as_dirname -- "$ac_file" ||
22616$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
22617 X"$ac_file" : 'X\(//\)[^/]' \| \
22618 X"$ac_file" : 'X\(//\)$' \| \
22619 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
22620$as_echo X"$ac_file" |
22621 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
22622 s//\1/
22623 q
22624 }
22625 /^X\(\/\/\)[^/].*/{
22626 s//\1/
22627 q
22628 }
22629 /^X\(\/\/\)$/{
22630 s//\1/
22631 q
22632 }
22633 /^X\(\/\).*/{
22634 s//\1/
22635 q
22636 }
22637 s/.*/./; q'`
22638 as_dir="$ac_dir"; as_fn_mkdir_p
22639 ac_builddir=.
22640
22641case "$ac_dir" in
22642.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
22643*)
22644 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
22645 # A ".." for each directory in $ac_dir_suffix.
22646 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
22647 case $ac_top_builddir_sub in
22648 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
22649 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
22650 esac ;;
22651esac
22652ac_abs_top_builddir=$ac_pwd
22653ac_abs_builddir=$ac_pwd$ac_dir_suffix
22654# for backward compatibility:
22655ac_top_builddir=$ac_top_build_prefix
22656
22657case $srcdir in
22658 .) # We are building in place.
22659 ac_srcdir=.
22660 ac_top_srcdir=$ac_top_builddir_sub
22661 ac_abs_top_srcdir=$ac_pwd ;;
22662 [\\/]* | ?:[\\/]* ) # Absolute name.
22663 ac_srcdir=$srcdir$ac_dir_suffix;
22664 ac_top_srcdir=$srcdir
22665 ac_abs_top_srcdir=$srcdir ;;
22666 *) # Relative name.
22667 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
22668 ac_top_srcdir=$ac_top_build_prefix$srcdir
22669 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
22670esac
22671ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
22672
22673
22674 case $ac_mode in
22675 :F)
22676 #
22677 # CONFIG_FILE
22678 #
22679
22680 case $INSTALL in
22681 [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
22682 *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
22683 esac
22684 ac_MKDIR_P=$MKDIR_P
22685 case $MKDIR_P in
22686 [\\/$]* | ?:[\\/]* ) ;;
22687 */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
22688 esac
22689_ACEOF
22690
22691cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22692# If the template does not know about datarootdir, expand it.
22693# FIXME: This hack should be removed a few years after 2.60.
22694ac_datarootdir_hack=; ac_datarootdir_seen=
22695ac_sed_dataroot='
22696/datarootdir/ {
22697 p
22698 q
22699}
22700/@datadir@/p
22701/@docdir@/p
22702/@infodir@/p
22703/@localedir@/p
22704/@mandir@/p'
22705case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
22706*datarootdir*) ac_datarootdir_seen=yes;;
22707*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
22708 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
22709$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
22710_ACEOF
22711cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22712 ac_datarootdir_hack='
22713 s&@datadir@&$datadir&g
22714 s&@docdir@&$docdir&g
22715 s&@infodir@&$infodir&g
22716 s&@localedir@&$localedir&g
22717 s&@mandir@&$mandir&g
22718 s&\\\${datarootdir}&$datarootdir&g' ;;
22719esac
22720_ACEOF
22721
22722# Neutralize VPATH when `$srcdir' = `.'.
22723# Shell code in configure.ac might set extrasub.
22724# FIXME: do we really want to maintain this feature?
22725cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
22726ac_sed_extra="$ac_vpsub
22727$extrasub
22728_ACEOF
22729cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
22730:t
22731/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
22732s|@configure_input@|$ac_sed_conf_input|;t t
22733s&@top_builddir@&$ac_top_builddir_sub&;t t
22734s&@top_build_prefix@&$ac_top_build_prefix&;t t
22735s&@srcdir@&$ac_srcdir&;t t
22736s&@abs_srcdir@&$ac_abs_srcdir&;t t
22737s&@top_srcdir@&$ac_top_srcdir&;t t
22738s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
22739s&@builddir@&$ac_builddir&;t t
22740s&@abs_builddir@&$ac_abs_builddir&;t t
22741s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
22742s&@INSTALL@&$ac_INSTALL&;t t
22743s&@MKDIR_P@&$ac_MKDIR_P&;t t
22744$ac_datarootdir_hack
22745"
22746eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
22747 >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
22748
22749test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
22750 { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
22751 { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
22752 "$ac_tmp/out"`; test -z "$ac_out"; } &&
22753 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
22754which seems to be undefined. Please make sure it is defined" >&5
22755$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
22756which seems to be undefined. Please make sure it is defined" >&2;}
22757
22758 rm -f "$ac_tmp/stdin"
22759 case $ac_file in
22760 -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
22761 *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
22762 esac \
22763 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
22764 ;;
22765 :H)
22766 #
22767 # CONFIG_HEADER
22768 #
22769 if test x"$ac_file" != x-; then
22770 {
22771 $as_echo "/* $configure_input */" \
22772 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
22773 } >"$ac_tmp/config.h" \
22774 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
22775 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
22776 { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
22777$as_echo "$as_me: $ac_file is unchanged" >&6;}
22778 else
22779 rm -f "$ac_file"
22780 mv "$ac_tmp/config.h" "$ac_file" \
22781 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
22782 fi
22783 else
22784 $as_echo "/* $configure_input */" \
22785 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
22786 || as_fn_error $? "could not create -" "$LINENO" 5
22787 fi
22788 ;;
22789
22790
22791 esac
22792
22793done # for ac_tag
22794
22795
22796as_fn_exit 0
22797_ACEOF
22798ac_clean_files=$ac_clean_files_save
22799
22800test $ac_write_fail = 0 ||
22801 as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
22802
22803
22804# configure is writing to config.log, and then calls config.status.
22805# config.status does its own redirection, appending to config.log.
22806# Unfortunately, on DOS this fails, as config.log is still kept open
22807# by configure, so config.status won't be able to write to it; its
22808# output is simply discarded. So we exec the FD to /dev/null,
22809# effectively closing config.log, so it can be properly (re)opened and
22810# appended to by config.status. When coming back to configure, we
22811# need to make the FD available again.
22812if test "$no_create" != yes; then
22813 ac_cs_success=:
22814 ac_config_status_args=
22815 test "$silent" = yes &&
22816 ac_config_status_args="$ac_config_status_args --quiet"
22817 exec 5>/dev/null
22818 $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
22819 exec 5>>config.log
22820 # Use ||, not &&, to avoid exiting from the if with $? = 1, which
22821 # would make configure fail if this is the last instruction.
22822 $ac_cs_success || as_fn_exit 1
22823fi
22824if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
22825 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
22826$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
22827fi
22828
22829
22830# Print summary of options
22831
22832# Someone please show me a better way :)
22833A=`eval echo ${prefix}` ; A=`eval echo ${A}`
22834B=`eval echo ${bindir}` ; B=`eval echo ${B}`
22835C=`eval echo ${sbindir}` ; C=`eval echo ${C}`
22836D=`eval echo ${sysconfdir}` ; D=`eval echo ${D}`
22837E=`eval echo ${libexecdir}/ssh-askpass` ; E=`eval echo ${E}`
22838F=`eval echo ${mandir}/${mansubdir}X` ; F=`eval echo ${F}`
22839G=`eval echo ${piddir}` ; G=`eval echo ${G}`
22840H=`eval echo ${PRIVSEP_PATH}` ; H=`eval echo ${H}`
22841I=`eval echo ${user_path}` ; I=`eval echo ${I}`
22842J=`eval echo ${superuser_path}` ; J=`eval echo ${J}`
22843
22844echo ""
22845echo "OpenSSH has been configured with the following options:"
22846echo " User binaries: $B"
22847echo " System binaries: $C"
22848echo " Configuration files: $D"
22849echo " Askpass program: $E"
22850echo " Manual pages: $F"
22851echo " PID file: $G"
22852echo " Privilege separation chroot path: $H"
22853if test "x$external_path_file" = "x/etc/login.conf" ; then
22854echo " At runtime, sshd will use the path defined in $external_path_file"
22855echo " Make sure the path to scp is present, otherwise scp will not work"
22856else
22857echo " sshd default user PATH: $I"
22858 if test ! -z "$external_path_file"; then
22859echo " (If PATH is set in $external_path_file it will be used instead. If"
22860echo " used, ensure the path to scp is present, otherwise scp will not work.)"
22861 fi
22862fi
22863if test ! -z "$superuser_path" ; then
22864echo " sshd superuser user PATH: $J"
22865fi
22866echo " Manpage format: $MANTYPE"
22867echo " PAM support: $PAM_MSG"
22868echo " OSF SIA support: $SIA_MSG"
22869echo " KerberosV support: $KRB5_MSG"
22870echo " SELinux support: $SELINUX_MSG"
22871echo " MD5 password support: $MD5_MSG"
22872echo " libedit support: $LIBEDIT_MSG"
22873echo " libldns support: $LDNS_MSG"
22874echo " Solaris process contract support: $SPC_MSG"
22875echo " Solaris project support: $SP_MSG"
22876echo " Solaris privilege support: $SPP_MSG"
22877echo " IP address in \$DISPLAY hack: $DISPLAY_HACK_MSG"
22878echo " Translate v4 in v6 hack: $IPV4_IN6_HACK_MSG"
22879echo " BSD Auth support: $BSD_AUTH_MSG"
22880echo " Random number source: $RAND_MSG"
22881echo " Privsep sandbox style: $SANDBOX_STYLE"
22882
22883echo ""
22884
22885echo " Host: ${host}"
22886echo " Compiler: ${CC}"
22887echo " Compiler flags: ${CFLAGS}"
22888echo "Preprocessor flags: ${CPPFLAGS}"
22889echo " Linker flags: ${LDFLAGS}"
22890echo " Libraries: ${LIBS}"
22891if test ! -z "${SSHDLIBS}"; then
22892echo " +for sshd: ${SSHDLIBS}"
22893fi
22894if test ! -z "${SSHLIBS}"; then
22895echo " +for ssh: ${SSHLIBS}"
22896fi
22897
22898echo ""
22899
22900if test "x$MAKE_PACKAGE_SUPPORTED" = "xyes" ; then
22901 echo "SVR4 style packages are supported with \"make package\""
22902 echo ""
22903fi
22904
22905if test "x$PAM_MSG" = "xyes" ; then
22906 echo "PAM is enabled. You may need to install a PAM control file "
22907 echo "for sshd, otherwise password authentication may fail. "
22908 echo "Example PAM control files can be found in the contrib/ "
22909 echo "subdirectory"
22910 echo ""
22911fi
22912
22913if test ! -z "$NO_PEERCHECK" ; then
22914 echo "WARNING: the operating system that you are using does not"
22915 echo "appear to support getpeereid(), getpeerucred() or the"
22916 echo "SO_PEERCRED getsockopt() option. These facilities are used to"
22917 echo "enforce security checks to prevent unauthorised connections to"
22918 echo "ssh-agent. Their absence increases the risk that a malicious"
22919 echo "user can connect to your agent."
22920 echo ""
22921fi
22922
22923if test "$AUDIT_MODULE" = "bsm" ; then
22924 echo "WARNING: BSM audit support is currently considered EXPERIMENTAL."
22925 echo "See the Solaris section in README.platform for details."
22926fi
diff --git a/moduli.0 b/moduli.0
new file mode 100644
index 000000000..59767da38
--- /dev/null
+++ b/moduli.0
@@ -0,0 +1,74 @@
1MODULI(5) File Formats Manual MODULI(5)
2
3NAME
4 moduli M-bM-^@M-^S 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 M-bM-^@M-^S 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 6.4 September 26, 2012 OpenBSD 6.4
diff --git a/scp.0 b/scp.0
new file mode 100644
index 000000000..03157e8b7
--- /dev/null
+++ b/scp.0
@@ -0,0 +1,163 @@
1SCP(1) General Commands Manual SCP(1)
2
3NAME
4 scp M-bM-^@M-^S secure copy (remote file copy program)
5
6SYNOPSIS
7 scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
8 [-l limit] [-o ssh_option] [-P port] [-S program] source ... target
9
10DESCRIPTION
11 scp copies files between hosts on a network. It uses ssh(1) for data
12 transfer, and uses the same authentication and provides the same security
13 as ssh(1). scp will ask for passwords or passphrases if they are needed
14 for authentication.
15
16 The source and target may be specified as a local pathname, a remote host
17 with optional path in the form [user@]host:[path], or a URI in the form
18 scp://[user@]host[:port][/path]. Local file names can be made explicit
19 using absolute or relative pathnames to avoid scp treating file names
20 containing M-bM-^@M-^X:M-bM-^@M-^Y as host specifiers.
21
22 When copying between two remote hosts, if the URI format is used, a port
23 may only be specified on the target if the -3 option is used.
24
25 The options are as follows:
26
27 -3 Copies between two remote hosts are transferred through the local
28 host. Without this option the data is copied directly between
29 the two remote hosts. Note that this option disables the
30 progress meter.
31
32 -4 Forces scp to use IPv4 addresses only.
33
34 -6 Forces scp to use IPv6 addresses only.
35
36 -B Selects batch mode (prevents asking for passwords or
37 passphrases).
38
39 -C Compression enable. Passes the -C flag to ssh(1) to enable
40 compression.
41
42 -c cipher
43 Selects the cipher to use for encrypting the data transfer. This
44 option is directly passed to ssh(1).
45
46 -F ssh_config
47 Specifies an alternative per-user configuration file for ssh.
48 This option is directly passed to ssh(1).
49
50 -i identity_file
51 Selects the file from which the identity (private key) for public
52 key authentication is read. This option is directly passed to
53 ssh(1).
54
55 -l limit
56 Limits the used bandwidth, specified in Kbit/s.
57
58 -o ssh_option
59 Can be used to pass options to ssh in the format used in
60 ssh_config(5). This is useful for specifying options for which
61 there is no separate scp command-line flag. For full details of
62 the options listed below, and their possible values, see
63 ssh_config(5).
64
65 AddressFamily
66 BatchMode
67 BindAddress
68 BindInterface
69 CanonicalDomains
70 CanonicalizeFallbackLocal
71 CanonicalizeHostname
72 CanonicalizeMaxDots
73 CanonicalizePermittedCNAMEs
74 CASignatureAlgorithms
75 CertificateFile
76 ChallengeResponseAuthentication
77 CheckHostIP
78 Ciphers
79 Compression
80 ConnectionAttempts
81 ConnectTimeout
82 ControlMaster
83 ControlPath
84 ControlPersist
85 GlobalKnownHostsFile
86 GSSAPIAuthentication
87 GSSAPIDelegateCredentials
88 HashKnownHosts
89 Host
90 HostbasedAuthentication
91 HostbasedKeyTypes
92 HostKeyAlgorithms
93 HostKeyAlias
94 HostName
95 IdentitiesOnly
96 IdentityAgent
97 IdentityFile
98 IPQoS
99 KbdInteractiveAuthentication
100 KbdInteractiveDevices
101 KexAlgorithms
102 LogLevel
103 MACs
104 NoHostAuthenticationForLocalhost
105 NumberOfPasswordPrompts
106 PasswordAuthentication
107 PKCS11Provider
108 Port
109 PreferredAuthentications
110 ProxyCommand
111 ProxyJump
112 PubkeyAcceptedKeyTypes
113 PubkeyAuthentication
114 RekeyLimit
115 SendEnv
116 ServerAliveInterval
117 ServerAliveCountMax
118 SetEnv
119 StrictHostKeyChecking
120 TCPKeepAlive
121 UpdateHostKeys
122 User
123 UserKnownHostsFile
124 VerifyHostKeyDNS
125
126 -P port
127 Specifies the port to connect to on the remote host. Note that
128 this option is written with a capital M-bM-^@M-^XPM-bM-^@M-^Y, because -p is already
129 reserved for preserving the times and modes of the file.
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 exitsM-BM- 0 on success, andM-BM- >0 if an error occurs.
150
151SEE ALSO
152 sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh_config(5),
153 sshd(8)
154
155HISTORY
156 scp is based on the rcp 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 6.4 September 20, 2018 OpenBSD 6.4
diff --git a/sftp-server.0 b/sftp-server.0
new file mode 100644
index 000000000..4c42b26c9
--- /dev/null
+++ b/sftp-server.0
@@ -0,0 +1,96 @@
1SFTP-SERVER(8) System Manager's Manual SFTP-SERVER(8)
2
3NAME
4 sftp-server M-bM-^@M-^S 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 '%', %d 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 M-bM-^@M-^\requestsM-bM-^@M-^], which may be used
69 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 On some systems, sftp-server must be able to access /dev/log for logging
80 to work, and use of sftp-server in a chroot configuration therefore
81 requires that syslogd(8) establish a logging socket inside the chroot
82 directory.
83
84SEE ALSO
85 sftp(1), ssh(1), sshd_config(5), sshd(8)
86
87 T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-
88 filexfer-02.txt, October 2001, work in progress material.
89
90HISTORY
91 sftp-server first appeared in OpenBSD 2.8.
92
93AUTHORS
94 Markus Friedl <markus@openbsd.org>
95
96OpenBSD 6.4 December 11, 2014 OpenBSD 6.4
diff --git a/sftp.0 b/sftp.0
new file mode 100644
index 000000000..ed98400d3
--- /dev/null
+++ b/sftp.0
@@ -0,0 +1,379 @@
1SFTP(1) General Commands Manual SFTP(1)
2
3NAME
4 sftp M-bM-^@M-^S secure file transfer program
5
6SYNOPSIS
7 sftp [-46aCfpqrv] [-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] destination
11
12DESCRIPTION
13 sftp is a file transfer program, similar to ftp(1), which performs all
14 operations over an encrypted ssh(1) transport. It may also use many
15 features of ssh, such as public key authentication and compression.
16
17 The destination may be specified either as [user@]host[:path] or as a URI
18 in the form sftp://[user@]host[:port][/path].
19
20 If the destination includes a path and it is not a directory, sftp will
21 retrieve files automatically if a non-interactive authentication method
22 is used; otherwise it will do so after successful interactive
23 authentication.
24
25 If no path is specified, or if the path is a directory, sftp will log in
26 to the specified host and enter interactive command mode, changing to the
27 remote directory if one was specified. An optional trailing slash can be
28 used to force the path to be interpreted as a directory.
29
30 Since the destination formats use colon characters to delimit host names
31 from path names or port numbers, IPv6 addresses must be enclosed in
32 square brackets to avoid ambiguity.
33
34 The options are as follows:
35
36 -4 Forces sftp to use IPv4 addresses only.
37
38 -6 Forces sftp to use IPv6 addresses only.
39
40 -a Attempt to continue interrupted transfers rather than overwriting
41 existing partial or complete copies of files. If the partial
42 contents differ from those being transferred, then the resultant
43 file is likely to be corrupt.
44
45 -B buffer_size
46 Specify the size of the buffer that sftp uses when transferring
47 files. Larger buffers require fewer round trips at the cost of
48 higher memory consumption. The default is 32768 bytes.
49
50 -b batchfile
51 Batch mode reads a series of commands from an input batchfile
52 instead of stdin. Since it lacks user interaction it should be
53 used in conjunction with non-interactive authentication to
54 obviate the need to enter a password at connection time (see
55 sshd(8) and ssh-keygen(1) for details). A batchfile of M-bM-^@M-^X-M-bM-^@M-^Y may
56 be used to indicate standard input. sftp will abort if any of
57 the following commands fail: get, put, reget, reput, rename, ln,
58 rm, mkdir, chdir, ls, lchdir, chmod, chown, chgrp, lpwd, df,
59 symlink, and lmkdir. Termination on error can be suppressed on a
60 command by command basis by prefixing the command with a M-bM-^@M-^X-M-bM-^@M-^Y
61 character (for example, -rm /tmp/blah*).
62
63 -C Enables compression (via ssh's -C flag).
64
65 -c cipher
66 Selects the cipher to use for encrypting the data transfers.
67 This option is directly passed to ssh(1).
68
69 -D sftp_server_path
70 Connect directly to a local sftp server (rather than via ssh(1)).
71 This option may be useful in debugging the client and server.
72
73 -F ssh_config
74 Specifies an alternative per-user configuration file for ssh(1).
75 This option is directly passed to ssh(1).
76
77 -f Requests that files be flushed to disk immediately after
78 transfer. When uploading files, this feature is only enabled if
79 the server implements the "fsync@openssh.com" extension.
80
81 -i identity_file
82 Selects the file from which the identity (private key) for public
83 key authentication is read. This option is directly passed to
84 ssh(1).
85
86 -l limit
87 Limits the used bandwidth, specified in Kbit/s.
88
89 -o ssh_option
90 Can be used to pass options to ssh in the format used in
91 ssh_config(5). This is useful for specifying options for which
92 there is no separate sftp command-line flag. For example, to
93 specify an alternate port use: sftp -oPort=24. For full details
94 of the options listed below, and their possible values, see
95 ssh_config(5).
96
97 AddressFamily
98 BatchMode
99 BindAddress
100 BindInterface
101 CanonicalDomains
102 CanonicalizeFallbackLocal
103 CanonicalizeHostname
104 CanonicalizeMaxDots
105 CanonicalizePermittedCNAMEs
106 CASignatureAlgorithms
107 CertificateFile
108 ChallengeResponseAuthentication
109 CheckHostIP
110 Ciphers
111 Compression
112 ConnectionAttempts
113 ConnectTimeout
114 ControlMaster
115 ControlPath
116 ControlPersist
117 GlobalKnownHostsFile
118 GSSAPIAuthentication
119 GSSAPIDelegateCredentials
120 HashKnownHosts
121 Host
122 HostbasedAuthentication
123 HostbasedKeyTypes
124 HostKeyAlgorithms
125 HostKeyAlias
126 HostName
127 IdentitiesOnly
128 IdentityAgent
129 IdentityFile
130 IPQoS
131 KbdInteractiveAuthentication
132 KbdInteractiveDevices
133 KexAlgorithms
134 LogLevel
135 MACs
136 NoHostAuthenticationForLocalhost
137 NumberOfPasswordPrompts
138 PasswordAuthentication
139 PKCS11Provider
140 Port
141 PreferredAuthentications
142 ProxyCommand
143 ProxyJump
144 PubkeyAcceptedKeyTypes
145 PubkeyAuthentication
146 RekeyLimit
147 SendEnv
148 ServerAliveInterval
149 ServerAliveCountMax
150 SetEnv
151 StrictHostKeyChecking
152 TCPKeepAlive
153 UpdateHostKeys
154 User
155 UserKnownHostsFile
156 VerifyHostKeyDNS
157
158 -P port
159 Specifies the port to connect to on the remote host.
160
161 -p Preserves modification times, access times, and modes from the
162 original files transferred.
163
164 -q Quiet mode: disables the progress meter as well as warning and
165 diagnostic messages from ssh(1).
166
167 -R num_requests
168 Specify how many requests may be outstanding at any one time.
169 Increasing this may slightly improve file transfer speed but will
170 increase memory usage. The default is 64 outstanding requests.
171
172 -r Recursively copy entire directories when uploading and
173 downloading. Note that sftp does not follow symbolic links
174 encountered in the tree traversal.
175
176 -S program
177 Name of the program to use for the encrypted connection. The
178 program must understand ssh(1) options.
179
180 -s subsystem | sftp_server
181 Specifies the SSH2 subsystem or the path for an sftp server on
182 the remote host. A path is useful when the remote sshd(8) does
183 not have an sftp subsystem configured.
184
185 -v Raise logging level. This option is also passed to ssh.
186
187INTERACTIVE COMMANDS
188 Once in interactive mode, sftp understands a set of commands similar to
189 those of ftp(1). Commands are case insensitive. Pathnames that contain
190 spaces must be enclosed in quotes. Any special characters contained
191 within pathnames that are recognized by glob(3) must be escaped with
192 backslashes (M-bM-^@M-^X\M-bM-^@M-^Y).
193
194 bye Quit sftp.
195
196 cd [path]
197 Change remote directory to path. If path is not specified, then
198 change directory to the one the session started in.
199
200 chgrp grp path
201 Change group of file path to grp. path may contain glob(7)
202 characters and may match multiple files. grp must be a numeric
203 GID.
204
205 chmod mode path
206 Change permissions of file path to mode. path may contain
207 glob(7) characters and may match multiple files.
208
209 chown own path
210 Change owner of file path to own. path may contain glob(7)
211 characters and may match multiple files. own must be a numeric
212 UID.
213
214 df [-hi] [path]
215 Display usage information for the filesystem holding the current
216 directory (or path if specified). If the -h flag is specified,
217 the capacity information will be displayed using "human-readable"
218 suffixes. The -i flag requests display of inode information in
219 addition to capacity information. This command is only supported
220 on servers that implement the M-bM-^@M-^\statvfs@openssh.comM-bM-^@M-^] extension.
221
222 exit Quit sftp.
223
224 get [-afPpr] remote-path [local-path]
225 Retrieve the remote-path and store it on the local machine. If
226 the local path name is not specified, it is given the same name
227 it has on the remote machine. remote-path may contain glob(7)
228 characters and may match multiple files. If it does and
229 local-path is specified, then local-path must specify a
230 directory.
231
232 If the -a flag is specified, then attempt to resume partial
233 transfers of existing files. Note that resumption assumes that
234 any partial copy of the local file matches the remote copy. If
235 the remote file contents differ from the partial local copy then
236 the resultant file is likely to be corrupt.
237
238 If the -f flag is specified, then fsync(2) will be called after
239 the file transfer has completed to flush the file to disk.
240
241 If either the -P or -p flag is specified, then full file
242 permissions and access times are copied too.
243
244 If the -r flag is specified then directories will be copied
245 recursively. Note that sftp does not follow symbolic links when
246 performing recursive transfers.
247
248 help Display help text.
249
250 lcd [path]
251 Change local directory to path. If path is not specified, then
252 change directory to the local user's home directory.
253
254 lls [ls-options [path]]
255 Display local directory listing of either path or current
256 directory if path is not specified. ls-options may contain any
257 flags supported by the local system's ls(1) command. path may
258 contain glob(7) characters and may match multiple files.
259
260 lmkdir path
261 Create local directory specified by path.
262
263 ln [-s] oldpath newpath
264 Create a link from oldpath to newpath. If the -s flag is
265 specified the created link is a symbolic link, otherwise it is a
266 hard link.
267
268 lpwd Print local working directory.
269
270 ls [-1afhlnrSt] [path]
271 Display a remote directory listing of either path or the current
272 directory if path is not specified. path may contain glob(7)
273 characters and may match multiple files.
274
275 The following flags are recognized and alter the behaviour of ls
276 accordingly:
277
278 -1 Produce single columnar output.
279
280 -a List files beginning with a dot (M-bM-^@M-^X.M-bM-^@M-^Y).
281
282 -f Do not sort the listing. The default sort order is
283 lexicographical.
284
285 -h When used with a long format option, use unit suffixes:
286 Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte,
287 and Exabyte in order to reduce the number of digits to
288 four or fewer using powers of 2 for sizes (K=1024,
289 M=1048576, etc.).
290
291 -l Display additional details including permissions and
292 ownership information.
293
294 -n Produce a long listing with user and group information
295 presented numerically.
296
297 -r Reverse the sort order of the listing.
298
299 -S Sort the listing by file size.
300
301 -t Sort the listing by last modification time.
302
303 lumask umask
304 Set local umask to umask.
305
306 mkdir path
307 Create remote directory specified by path.
308
309 progress
310 Toggle display of progress meter.
311
312 put [-afPpr] local-path [remote-path]
313 Upload local-path and store it on the remote machine. If the
314 remote path name is not specified, it is given the same name it
315 has on the local machine. local-path may contain glob(7)
316 characters and may match multiple files. If it does and
317 remote-path is specified, then remote-path must specify a
318 directory.
319
320 If the -a flag is specified, then attempt to resume partial
321 transfers of existing files. Note that resumption assumes that
322 any partial copy of the remote file matches the local copy. If
323 the local file contents differ from the remote local copy then
324 the resultant file is likely to be corrupt.
325
326 If the -f flag is specified, then a request will be sent to the
327 server to call fsync(2) after the file has been transferred.
328 Note that this is only supported by servers that implement the
329 "fsync@openssh.com" extension.
330
331 If either the -P or -p flag is specified, then full file
332 permissions and access times are copied too.
333
334 If the -r flag is specified then directories will be copied
335 recursively. Note that sftp does not follow symbolic links when
336 performing recursive transfers.
337
338 pwd Display remote working directory.
339
340 quit Quit sftp.
341
342 reget [-Ppr] remote-path [local-path]
343 Resume download of remote-path. Equivalent to get with the -a
344 flag set.
345
346 reput [-Ppr] [local-path] remote-path
347 Resume upload of [local-path]. Equivalent to put with the -a
348 flag set.
349
350 rename oldpath newpath
351 Rename remote file from oldpath to newpath.
352
353 rm path
354 Delete remote file specified by path.
355
356 rmdir path
357 Remove remote directory specified by path.
358
359 symlink oldpath newpath
360 Create a symbolic link from oldpath to newpath.
361
362 version
363 Display the sftp protocol version.
364
365 !command
366 Execute command in local shell.
367
368 ! Escape to local shell.
369
370 ? Synonym for help.
371
372SEE ALSO
373 ftp(1), ls(1), scp(1), ssh(1), ssh-add(1), ssh-keygen(1), ssh_config(5),
374 glob(7), sftp-server(8), sshd(8)
375
376 T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-
377 filexfer-00.txt, January 2001, work in progress material.
378
379OpenBSD 6.4 September 20, 2018 OpenBSD 6.4
diff --git a/ssh-add.0 b/ssh-add.0
new file mode 100644
index 000000000..d60ae715e
--- /dev/null
+++ b/ssh-add.0
@@ -0,0 +1,123 @@
1SSH-ADD(1) General Commands Manual SSH-ADD(1)
2
3NAME
4 ssh-add M-bM-^@M-^S adds private key identities to the authentication agent
5
6SYNOPSIS
7 ssh-add [-cDdkLlqXx] [-E fingerprint_hash] [-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, and ~/.ssh/id_ed25519.
15 After loading a private key, ssh-add will try to load corresponding
16 certificate information from the filename obtained by appending -cert.pub
17 to the name of the private key file. Alternative file names can be given
18 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 ssh-askpass(1). Successful confirmation is signaled by a zero
33 exit status from ssh-askpass(1), rather than text entered into
34 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 fingerprint_hash
47 Specifies the hash algorithm used when displaying key
48 fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The
49 default is M-bM-^@M-^\sha256M-bM-^@M-^].
50
51 -e pkcs11
52 Remove keys provided by the PKCS#11 shared library pkcs11.
53
54 -k When loading keys into or deleting keys from the agent, process
55 plain private keys only and skip certificates.
56
57 -L Lists public key parameters of all identities currently
58 represented by the agent.
59
60 -l Lists fingerprints of all identities currently represented by the
61 agent.
62
63 -q Be quiet after a successful operation.
64
65 -s pkcs11
66 Add keys provided by the PKCS#11 shared library pkcs11.
67
68 -t life
69 Set a maximum lifetime when adding identities to an agent. The
70 lifetime may be specified in seconds or in a time format
71 specified in sshd_config(5).
72
73 -X Unlock the agent.
74
75 -x Lock the agent with a password.
76
77ENVIRONMENT
78 DISPLAY and SSH_ASKPASS
79 If ssh-add needs a passphrase, it will read the passphrase from
80 the current terminal if it was run from a terminal. If ssh-add
81 does not have a terminal associated with it but DISPLAY and
82 SSH_ASKPASS are set, it will execute the program specified by
83 SSH_ASKPASS (by default M-bM-^@M-^\ssh-askpassM-bM-^@M-^]) and open an X11 window to
84 read the passphrase. This is particularly useful when calling
85 ssh-add from a .xsession or related script. (Note that on some
86 machines it may be necessary to redirect the input from /dev/null
87 to make this work.)
88
89 SSH_AUTH_SOCK
90 Identifies the path of a UNIX-domain socket used to communicate
91 with the agent.
92
93FILES
94 ~/.ssh/id_dsa
95 Contains the DSA authentication identity of the user.
96
97 ~/.ssh/id_ecdsa
98 Contains the ECDSA authentication identity of the user.
99
100 ~/.ssh/id_ed25519
101 Contains the Ed25519 authentication identity of the user.
102
103 ~/.ssh/id_rsa
104 Contains the RSA authentication identity of 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-askpass(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 6.4 August 29, 2017 OpenBSD 6.4
diff --git a/ssh-agent.0 b/ssh-agent.0
new file mode 100644
index 000000000..f4575d01b
--- /dev/null
+++ b/ssh-agent.0
@@ -0,0 +1,120 @@
1SSH-AGENT(1) General Commands Manual SSH-AGENT(1)
2
3NAME
4 ssh-agent M-bM-^@M-^S authentication agent
5
6SYNOPSIS
7 ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash]
8 [-P pkcs11_whitelist] [-t life] [command [arg ...]]
9 ssh-agent [-c | -s] -k
10
11DESCRIPTION
12 ssh-agent is a program to hold private keys used for public key
13 authentication (RSA, DSA, ECDSA, Ed25519). ssh-agent is usually started
14 in the beginning of an X-session or a login session, and all other
15 windows or programs are started as clients to the ssh-agent program.
16 Through use of environment variables the agent can be located and
17 automatically used for authentication when logging in to other machines
18 using ssh(1).
19
20 The agent initially does not have any private keys. Keys are added using
21 ssh(1) (see AddKeysToAgent in ssh_config(5) for details) or ssh-add(1).
22 Multiple identities may be stored in ssh-agent concurrently and ssh(1)
23 will automatically use them if present. ssh-add(1) is also used to
24 remove keys from ssh-agent and to query the keys that are held in one.
25
26 The options are as follows:
27
28 -a bind_address
29 Bind the agent to the UNIX-domain socket bind_address. The
30 default is $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>.
31
32 -c Generate C-shell commands on stdout. This is the default if
33 SHELL looks like it's a csh style of shell.
34
35 -D Foreground mode. When this option is specified ssh-agent will
36 not fork.
37
38 -d Debug mode. When this option is specified ssh-agent will not
39 fork and will write debug information to standard error.
40
41 -E fingerprint_hash
42 Specifies the hash algorithm used when displaying key
43 fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The
44 default is M-bM-^@M-^\sha256M-bM-^@M-^].
45
46 -k Kill the current agent (given by the SSH_AGENT_PID environment
47 variable).
48
49 -P pkcs11_whitelist
50 Specify a pattern-list of acceptable paths for PKCS#11 shared
51 libraries that may be added using the -s option to ssh-add(1).
52 The default is to allow loading PKCS#11 libraries from
53 M-bM-^@M-^\/usr/lib/*,/usr/local/lib/*M-bM-^@M-^]. PKCS#11 libraries that do not
54 match the whitelist will be refused. See PATTERNS in
55 ssh_config(5) for a description of pattern-list syntax.
56
57 -s Generate Bourne shell commands on stdout. This is the default if
58 SHELL does not look like it's a csh style of shell.
59
60 -t life
61 Set a default value for the maximum lifetime of identities added
62 to the agent. The lifetime may be specified in seconds or in a
63 time format specified in sshd_config(5). A lifetime specified
64 for an identity with ssh-add(1) overrides this value. Without
65 this option the default maximum lifetime is forever.
66
67 If a command line is given, this is executed as a subprocess of the
68 agent. When the command dies, so does the agent.
69
70 The idea is that the agent is run in the user's local PC, laptop, or
71 terminal. Authentication data need not be stored on any other machine,
72 and authentication passphrases never go over the network. However, the
73 connection to the agent is forwarded over SSH remote logins, and the user
74 can thus use the privileges given by the identities anywhere in the
75 network in a secure way.
76
77 There are two main ways to get an agent set up: The first is that the
78 agent starts a new subcommand into which some environment variables are
79 exported, eg ssh-agent xterm &. The second is that the agent prints the
80 needed shell commands (either sh(1) or csh(1) syntax can be generated)
81 which can be evaluated in the calling shell, eg eval `ssh-agent -s` for
82 Bourne-type shells such as sh(1) or ksh(1) and eval `ssh-agent -c` for
83 csh(1) and derivatives.
84
85 Later ssh(1) looks at these variables and uses them to establish a
86 connection to the agent.
87
88 The agent will never send a private key over its request channel.
89 Instead, operations that require a private key will be performed by the
90 agent, and the result will be returned to the requester. This way,
91 private keys are not exposed to clients using the agent.
92
93 A UNIX-domain socket is created and the name of this socket is stored in
94 the SSH_AUTH_SOCK environment variable. The socket is made accessible
95 only to the current user. This method is easily abused by root or
96 another instance of the same user.
97
98 The SSH_AGENT_PID environment variable holds the agent's process ID.
99
100 The agent exits automatically when the command given on the command line
101 terminates.
102
103FILES
104 $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>
105 UNIX-domain sockets used to contain the connection to the
106 authentication agent. These sockets should only be readable by
107 the owner. The sockets should get automatically removed when the
108 agent exits.
109
110SEE ALSO
111 ssh(1), ssh-add(1), ssh-keygen(1), sshd(8)
112
113AUTHORS
114 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
115 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
116 de Raadt and Dug Song removed many bugs, re-added newer features and
117 created OpenSSH. Markus Friedl contributed the support for SSH protocol
118 versions 1.5 and 2.0.
119
120OpenBSD 6.4 November 30, 2016 OpenBSD 6.4
diff --git a/ssh-keygen.0 b/ssh-keygen.0
new file mode 100644
index 000000000..906a338c4
--- /dev/null
+++ b/ssh-keygen.0
@@ -0,0 +1,585 @@
1SSH-KEYGEN(1) General Commands Manual SSH-KEYGEN(1)
2
3NAME
4 ssh-keygen M-bM-^@M-^S authentication key generation, management and conversion
5
6SYNOPSIS
7 ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa]
8 [-N new_passphrase] [-C comment] [-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 [-v] [-E fingerprint_hash] [-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] [-U]
25 [-D pkcs11_provider] [-n principals] [-O option]
26 [-V validity_interval] [-z serial_number] file ...
27 ssh-keygen -L [-f input_keyfile]
28 ssh-keygen -A [-f prefix_path]
29 ssh-keygen -k -f krl_file [-u] [-s ca_public] [-z version_number]
30 file ...
31 ssh-keygen -Q -f krl_file file ...
32
33DESCRIPTION
34 ssh-keygen generates, manages and converts authentication keys for
35 ssh(1). ssh-keygen can create keys for use by SSH protocol version 2.
36
37 The type of key to be generated is specified with the -t option. If
38 invoked without any arguments, ssh-keygen will generate an RSA key.
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/id_dsa,
49 ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 or ~/.ssh/id_rsa. Additionally, the
50 system administrator may use this to generate host keys, as seen in
51 /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 M-bM-^@M-^\.pubM-bM-^@M-^] 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 keys stored in the newer OpenSSH format, there is also a comment
72 field in the key file that is only for convenience to the user to help
73 identify the key. The comment can tell what the key is for, or whatever
74 is useful. The comment is initialized to M-bM-^@M-^\user@hostM-bM-^@M-^] when the key is
75 created, but can be changed 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 (rsa, dsa, ecdsa and ed25519) for which
83 host keys do not exist, generate the host keys with the default
84 key file path, an empty passphrase, default bits for the key
85 type, and default comment. If -f has also been specified, its
86 argument is used as a prefix to the default path for the
87 resulting host key files. This is used by /etc/rc to generate
88 new host keys.
89
90 -a rounds
91 When saving a private key this option specifies the number of KDF
92 (key derivation function) rounds used. Higher numbers result in
93 slower passphrase verification and increased resistance to brute-
94 force password cracking (should 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 1024 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. The program will prompt for the file containing the
118 private keys, for the passphrase if the key has one, and for the
119 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 fingerprint_hash
128 Specifies the hash algorithm used when displaying key
129 fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The
130 default is M-bM-^@M-^\sha256M-bM-^@M-^].
131
132 -e This option will read a private or public OpenSSH key file and
133 print to stdout the key in one of the formats specified by the -m
134 option. The default export format is M-bM-^@M-^\RFC4716M-bM-^@M-^]. This option
135 allows exporting OpenSSH keys for use by other programs,
136 including several commercial SSH implementations.
137
138 -F hostname
139 Search for the specified hostname in a known_hosts file, listing
140 any occurrences found. This option is useful to find hashed host
141 names or addresses and may also be used in conjunction with the
142 -H option to print found keys in a hashed format.
143
144 -f filename
145 Specifies the filename of the key file.
146
147 -G output_file
148 Generate candidate primes for DH-GEX. These primes must be
149 screened for safety (using the -T option) before use.
150
151 -g Use generic DNS format when printing fingerprint resource records
152 using the -r command.
153
154 -H Hash a known_hosts file. This replaces all hostnames and
155 addresses with hashed representations within the specified file;
156 the original content is moved to a file with a .old suffix.
157 These hashes may be used normally by ssh and sshd, but they do
158 not reveal identifying information should the file's contents be
159 disclosed. This option will not modify existing hashed hostnames
160 and is therefore safe to use on files that mix hashed and non-
161 hashed names.
162
163 -h When signing a key, create a host certificate instead of a user
164 certificate. Please see the CERTIFICATES section for details.
165
166 -I certificate_identity
167 Specify the key identity when signing a public key. Please see
168 the CERTIFICATES section for details.
169
170 -i This option will read an unencrypted private (or public) key file
171 in the format specified by the -m option and print an OpenSSH
172 compatible private (or public) key to stdout. This option allows
173 importing keys from other software, including several commercial
174 SSH implementations. The default import format is M-bM-^@M-^\RFC4716M-bM-^@M-^].
175
176 -J num_lines
177 Exit after screening the specified number of lines while
178 performing DH candidate screening using the -T option.
179
180 -j start_line
181 Start screening at the specified line number while performing DH
182 candidate screening using the -T option.
183
184 -K checkpt
185 Write the last line processed to the file checkpt while
186 performing DH candidate screening using the -T option. This will
187 be used to skip lines in the input file that have already been
188 processed if the job is restarted.
189
190 -k Generate a KRL file. In this mode, ssh-keygen will generate a
191 KRL file at the location specified via the -f flag that revokes
192 every key or certificate presented on the command line.
193 Keys/certificates to be revoked may be specified by public key
194 file or using the format described in the KEY REVOCATION LISTS
195 section.
196
197 -L Prints the contents of one or more certificates.
198
199 -l Show fingerprint of specified public key file. For RSA and DSA
200 keys ssh-keygen tries to find the matching public key file and
201 prints its fingerprint. If combined with -v, a visual ASCII art
202 representation of the key is supplied with the fingerprint.
203
204 -M memory
205 Specify the amount of memory to use (in megabytes) when
206 generating candidate moduli for DH-GEX.
207
208 -m key_format
209 Specify a key format for the -i (import) or -e (export)
210 conversion options. The supported key formats are: M-bM-^@M-^\RFC4716M-bM-^@M-^]
211 (RFC 4716/SSH2 public or private key), M-bM-^@M-^\PKCS8M-bM-^@M-^] (PEM PKCS8 public
212 key) or M-bM-^@M-^\PEMM-bM-^@M-^] (PEM public key). The default conversion format is
213 M-bM-^@M-^\RFC4716M-bM-^@M-^]. Setting a format of M-bM-^@M-^\PEMM-bM-^@M-^] when generating or updating
214 a supported private key type will cause the key to be stored in
215 the legacy PEM private key format.
216
217 -N new_passphrase
218 Provides the new passphrase.
219
220 -n principals
221 Specify one or more principals (user or host names) to be
222 included in a certificate when signing a key. Multiple
223 principals may be specified, separated by commas. Please see the
224 CERTIFICATES section for details.
225
226 -O option
227 Specify a certificate option when signing a key. This option may
228 be specified multiple times. See also the CERTIFICATES section
229 for further details.
230
231 At present, no standard options are valid for host keys. The
232 options that are valid for user certificates are:
233
234 clear Clear all enabled permissions. This is useful for
235 clearing the default set of permissions so permissions
236 may be added individually.
237
238 critical:name[=contents]
239 extension:name[=contents]
240 Includes an arbitrary certificate critical option or
241 extension. The specified name should include a domain
242 suffix, e.g. M-bM-^@M-^\name@example.comM-bM-^@M-^]. If contents is
243 specified then it is included as the contents of the
244 extension/option encoded as a string, otherwise the
245 extension/option is created with no contents (usually
246 indicating a flag). Extensions may be ignored by a
247 client or server that does not recognise them, whereas
248 unknown critical options will cause the certificate to be
249 refused.
250
251 force-command=command
252 Forces the execution of command instead of any shell or
253 command specified by the user when the certificate is
254 used for authentication.
255
256 no-agent-forwarding
257 Disable ssh-agent(1) forwarding (permitted by default).
258
259 no-port-forwarding
260 Disable port forwarding (permitted by default).
261
262 no-pty Disable PTY allocation (permitted by default).
263
264 no-user-rc
265 Disable execution of ~/.ssh/rc by sshd(8) (permitted by
266 default).
267
268 no-x11-forwarding
269 Disable X11 forwarding (permitted by default).
270
271 permit-agent-forwarding
272 Allows ssh-agent(1) forwarding.
273
274 permit-port-forwarding
275 Allows port forwarding.
276
277 permit-pty
278 Allows PTY allocation.
279
280 permit-user-rc
281 Allows execution of ~/.ssh/rc by sshd(8).
282
283 permit-X11-forwarding
284 Allows X11 forwarding.
285
286 source-address=address_list
287 Restrict the source addresses from which the certificate
288 is considered valid. The address_list is a comma-
289 separated list of one or more address/netmask pairs in
290 CIDR format.
291
292 -P passphrase
293 Provides the (old) passphrase.
294
295 -p Requests changing the passphrase of a private key file instead of
296 creating a new private key. The program will prompt for the file
297 containing the private key, for the old passphrase, and twice for
298 the new passphrase.
299
300 -Q Test whether keys have been revoked in a KRL.
301
302 -q Silence ssh-keygen.
303
304 -R hostname
305 Removes all keys belonging to hostname from a known_hosts file.
306 This option is useful to delete hashed hosts (see the -H option
307 above).
308
309 -r hostname
310 Print the SSHFP fingerprint resource record named hostname for
311 the specified public key file.
312
313 -S start
314 Specify start point (in hex) when generating candidate moduli for
315 DH-GEX.
316
317 -s ca_key
318 Certify (sign) a public key using the specified CA key. Please
319 see the CERTIFICATES section for details.
320
321 When generating a KRL, -s specifies a path to a CA public key
322 file used to revoke certificates directly by key ID or serial
323 number. See the KEY REVOCATION LISTS section for details.
324
325 -T output_file
326 Test DH group exchange candidate primes (generated using the -G
327 option) for safety.
328
329 -t dsa | ecdsa | ed25519 | rsa
330 Specifies the type of key to create. The possible values are
331 M-bM-^@M-^\dsaM-bM-^@M-^], M-bM-^@M-^\ecdsaM-bM-^@M-^], M-bM-^@M-^\ed25519M-bM-^@M-^], or M-bM-^@M-^\rsaM-bM-^@M-^].
332
333 -U When used in combination with -s, this option indicates that a CA
334 key resides in a ssh-agent(1). See the CERTIFICATES section for
335 more information.
336
337 -u Update a KRL. When specified with -k, keys listed via the
338 command line are added to the existing KRL rather than a new KRL
339 being created.
340
341 -V validity_interval
342 Specify a validity interval when signing a certificate. A
343 validity interval may consist of a single time, indicating that
344 the certificate is valid beginning now and expiring at that time,
345 or may consist of two times separated by a colon to indicate an
346 explicit time interval.
347
348 The start time may be specified as the string M-bM-^@M-^\alwaysM-bM-^@M-^] to
349 indicate the certificate has no specified start time, a date in
350 YYYYMMDD format, a time in YYYYMMDDHHMM[SS] format, a relative
351 time (to the current time) consisting of a minus sign followed by
352 an interval in the format described in the TIME FORMATS section
353 of sshd_config(5).
354
355 The end time may be specified as a YYYYMMDD date, a
356 YYYYMMDDHHMM[SS] time, a relative time starting with a plus
357 character or the string M-bM-^@M-^\foreverM-bM-^@M-^] to indicate that the
358 certificate has no expirty date.
359
360 For example: M-bM-^@M-^\+52w1dM-bM-^@M-^] (valid from now to 52 weeks and one day
361 from now), M-bM-^@M-^\-4w:+4wM-bM-^@M-^] (valid from four weeks ago to four weeks
362 from now), M-bM-^@M-^\20100101123000:20110101123000M-bM-^@M-^] (valid from 12:30 PM,
363 January 1st, 2010 to 12:30 PM, January 1st, 2011), M-bM-^@M-^\-1d:20110101M-bM-^@M-^]
364 (valid from yesterday to midnight, January 1st, 2011).
365 M-bM-^@M-^\-1m:foreverM-bM-^@M-^] (valid from one minute ago and never expiring).
366
367 -v Verbose mode. Causes ssh-keygen to print debugging messages
368 about its progress. This is helpful for debugging moduli
369 generation. Multiple -v options increase the verbosity. The
370 maximum is 3.
371
372 -W generator
373 Specify desired generator when testing candidate moduli for DH-
374 GEX.
375
376 -y This option will read a private OpenSSH format file and print an
377 OpenSSH public key to stdout.
378
379 -z serial_number
380 Specifies a serial number to be embedded in the certificate to
381 distinguish this certificate from others from the same CA. The
382 default serial number is zero.
383
384 When generating a KRL, the -z flag is used to specify a KRL
385 version number.
386
387MODULI GENERATION
388 ssh-keygen may be used to generate groups for the Diffie-Hellman Group
389 Exchange (DH-GEX) protocol. Generating these groups is a two-step
390 process: first, candidate primes are generated using a fast, but memory
391 intensive process. These candidate primes are then tested for
392 suitability (a CPU-intensive process).
393
394 Generation of primes is performed using the -G option. The desired
395 length of the primes may be specified by the -b option. For example:
396
397 # ssh-keygen -G moduli-2048.candidates -b 2048
398
399 By default, the search for primes begins at a random point in the desired
400 length range. This may be overridden using the -S option, which
401 specifies a different start point (in hex).
402
403 Once a set of candidates have been generated, they must be screened for
404 suitability. This may be performed using the -T option. In this mode
405 ssh-keygen will read candidates from standard input (or a file specified
406 using the -f option). For example:
407
408 # ssh-keygen -T moduli-2048 -f moduli-2048.candidates
409
410 By default, each candidate will be subjected to 100 primality tests.
411 This may be overridden using the -a option. The DH generator value will
412 be chosen automatically for the prime under consideration. If a specific
413 generator is desired, it may be requested using the -W option. Valid
414 generator values are 2, 3, and 5.
415
416 Screened DH groups may be installed in /etc/moduli. It is important that
417 this file contains moduli of a range of bit lengths and that both ends of
418 a connection share common moduli.
419
420CERTIFICATES
421 ssh-keygen supports signing of keys to produce certificates that may be
422 used for user or host authentication. Certificates consist of a public
423 key, some identity information, zero or more principal (user or host)
424 names and a set of options that are signed by a Certification Authority
425 (CA) key. Clients or servers may then trust only the CA key and verify
426 its signature on a certificate rather than trusting many user/host keys.
427 Note that OpenSSH certificates are a different, and much simpler, format
428 to the X.509 certificates used in ssl(8).
429
430 ssh-keygen supports two types of certificates: user and host. User
431 certificates authenticate users to servers, whereas host certificates
432 authenticate server hosts to users. To generate a user certificate:
433
434 $ ssh-keygen -s /path/to/ca_key -I key_id /path/to/user_key.pub
435
436 The resultant certificate will be placed in /path/to/user_key-cert.pub.
437 A host certificate requires the -h option:
438
439 $ ssh-keygen -s /path/to/ca_key -I key_id -h /path/to/host_key.pub
440
441 The host certificate will be output to /path/to/host_key-cert.pub.
442
443 It is possible to sign using a CA key stored in a PKCS#11 token by
444 providing the token library using -D and identifying the CA key by
445 providing its public half as an argument to -s:
446
447 $ ssh-keygen -s ca_key.pub -D libpkcs11.so -I key_id user_key.pub
448
449 Similarly, it is possible for the CA key to be hosted in a ssh-agent(1).
450 This is indicated by the -U flag and, again, the CA key must be
451 identified by its public half.
452
453 $ ssh-keygen -Us ca_key.pub -I key_id user_key.pub
454
455 In all cases, key_id is a "key identifier" that is logged by the server
456 when the certificate is used for authentication.
457
458 Certificates may be limited to be valid for a set of principal
459 (user/host) names. By default, generated certificates are valid for all
460 users or hosts. To generate a certificate for a specified set of
461 principals:
462
463 $ ssh-keygen -s ca_key -I key_id -n user1,user2 user_key.pub
464 $ ssh-keygen -s ca_key -I key_id -h -n host.domain host_key.pub
465
466 Additional limitations on the validity and use of user certificates may
467 be specified through certificate options. A certificate option may
468 disable features of the SSH session, may be valid only when presented
469 from particular source addresses or may force the use of a specific
470 command. For a list of valid certificate options, see the documentation
471 for the -O option above.
472
473 Finally, certificates may be defined with a validity lifetime. The -V
474 option allows specification of certificate start and end times. A
475 certificate that is presented at a time outside this range will not be
476 considered valid. By default, certificates are valid from UNIX Epoch to
477 the distant future.
478
479 For certificates to be used for user or host authentication, the CA
480 public key must be trusted by sshd(8) or ssh(1). Please refer to those
481 manual pages for details.
482
483KEY REVOCATION LISTS
484 ssh-keygen is able to manage OpenSSH format Key Revocation Lists (KRLs).
485 These binary files specify keys or certificates to be revoked using a
486 compact format, taking as little as one bit per certificate if they are
487 being revoked by serial number.
488
489 KRLs may be generated using the -k flag. This option reads one or more
490 files from the command line and generates a new KRL. The files may
491 either contain a KRL specification (see below) or public keys, listed one
492 per line. Plain public keys are revoked by listing their hash or
493 contents in the KRL and certificates revoked by serial number or key ID
494 (if the serial is zero or not available).
495
496 Revoking keys using a KRL specification offers explicit control over the
497 types of record used to revoke keys and may be used to directly revoke
498 certificates by serial number or key ID without having the complete
499 original certificate on hand. A KRL specification consists of lines
500 containing one of the following directives followed by a colon and some
501 directive-specific information.
502
503 serial: serial_number[-serial_number]
504 Revokes a certificate with the specified serial number. Serial
505 numbers are 64-bit values, not including zero and may be
506 expressed in decimal, hex or octal. If two serial numbers are
507 specified separated by a hyphen, then the range of serial numbers
508 including and between each is revoked. The CA key must have been
509 specified on the ssh-keygen command line using the -s option.
510
511 id: key_id
512 Revokes a certificate with the specified key ID string. The CA
513 key must have been specified on the ssh-keygen command line using
514 the -s option.
515
516 key: public_key
517 Revokes the specified key. If a certificate is listed, then it
518 is revoked as a plain public key.
519
520 sha1: public_key
521 Revokes the specified key by including its SHA1 hash in the KRL.
522
523 sha256: public_key
524 Revokes the specified key by including its SHA256 hash in the
525 KRL. KRLs that revoke keys by SHA256 hash are not supported by
526 OpenSSH versions prior to 7.9.
527
528 hash: fingerprint
529 Revokes a key using a fingerprint hash, as obtained from a
530 sshd(8) authentication log message or the ssh-keygen -l flag.
531 Only SHA256 fingerprints are supported here and resultant KRLs
532 are not supported by OpenSSH versions prior to 7.9.
533
534 KRLs may be updated using the -u flag in addition to -k. When this
535 option is specified, keys listed via the command line are merged into the
536 KRL, adding to those already there.
537
538 It is also possible, given a KRL, to test whether it revokes a particular
539 key (or keys). The -Q flag will query an existing KRL, testing each key
540 specified on the command line. If any key listed on the command line has
541 been revoked (or an error encountered) then ssh-keygen will exit with a
542 non-zero exit status. A zero exit status will only be returned if no key
543 was revoked.
544
545FILES
546 ~/.ssh/id_dsa
547 ~/.ssh/id_ecdsa
548 ~/.ssh/id_ed25519
549 ~/.ssh/id_rsa
550 Contains the DSA, ECDSA, Ed25519 or RSA authentication identity
551 of the user. This file should not be readable by anyone but the
552 user. It is possible to specify a passphrase when generating the
553 key; that passphrase will be used to encrypt the private part of
554 this file using 128-bit AES. This file is not automatically
555 accessed by ssh-keygen but it is offered as the default file for
556 the private key. ssh(1) will read this file when a login attempt
557 is made.
558
559 ~/.ssh/id_dsa.pub
560 ~/.ssh/id_ecdsa.pub
561 ~/.ssh/id_ed25519.pub
562 ~/.ssh/id_rsa.pub
563 Contains the DSA, ECDSA, Ed25519 or RSA public key for
564 authentication. The contents of this file should be added to
565 ~/.ssh/authorized_keys on all machines where the user wishes to
566 log in using public key authentication. There is no need to keep
567 the contents of this file secret.
568
569 /etc/moduli
570 Contains Diffie-Hellman groups used for DH-GEX. The file format
571 is described in moduli(5).
572
573SEE ALSO
574 ssh(1), ssh-add(1), ssh-agent(1), moduli(5), sshd(8)
575
576 The Secure Shell (SSH) Public Key File Format, RFC 4716, 2006.
577
578AUTHORS
579 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
580 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
581 de Raadt and Dug Song removed many bugs, re-added newer features and
582 created OpenSSH. Markus Friedl contributed the support for SSH protocol
583 versions 1.5 and 2.0.
584
585OpenBSD 6.4 September 12, 2018 OpenBSD 6.4
diff --git a/ssh-keyscan.0 b/ssh-keyscan.0
new file mode 100644
index 000000000..497ac0d9e
--- /dev/null
+++ b/ssh-keyscan.0
@@ -0,0 +1,96 @@
1SSH-KEYSCAN(1) General Commands Manual SSH-KEYSCAN(1)
2
3NAME
4 ssh-keyscan M-bM-^@M-^S gather SSH public keys
5
6SYNOPSIS
7 ssh-keyscan [-46cDHv] [-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, the format of which is documented in sshd(8).
14 ssh-keyscan provides a minimal interface suitable for use by shell and
15 perl scripts.
16
17 ssh-keyscan uses non-blocking socket I/O to contact as many hosts as
18 possible in parallel, so it is very efficient. The keys from a domain of
19 1,000 hosts can be collected in tens of seconds, even when some of those
20 hosts are down or do not run sshd(8). For scanning, one does not need
21 login access to the machines that are being scanned, nor does the
22 scanning process involve any encryption.
23
24 The options are as follows:
25
26 -4 Force ssh-keyscan to use IPv4 addresses only.
27
28 -6 Force ssh-keyscan to use IPv6 addresses only.
29
30 -c Request certificates from target hosts instead of plain keys.
31
32 -D Print keys found as SSHFP DNS records. The default is to print
33 keys in a format usable as a ssh(1) known_hosts file.
34
35 -f file
36 Read hosts or M-bM-^@M-^\addrlist namelistM-bM-^@M-^] pairs from file, one per line.
37 If M-bM-^@M-^X-M-bM-^@M-^Y is supplied instead of a filename, ssh-keyscan will read
38 from the standard input. Input is expected in the format:
39
40 1.2.3.4,1.2.4.4 name.my.domain,name,n.my.domain,n,1.2.3.4,1.2.4.4
41
42 -H Hash all hostnames and addresses in the output. Hashed names may
43 be used normally by ssh(1) and sshd(8), but they do not reveal
44 identifying information should the file's contents be disclosed.
45
46 -p port
47 Connect to port on the remote host.
48
49 -T timeout
50 Set the timeout for connection attempts. If timeout seconds have
51 elapsed since a connection was initiated to a host or since the
52 last time anything was read from that host, the connection is
53 closed and the host in question considered unavailable. The
54 default is 5 seconds.
55
56 -t type
57 Specify the type of the key to fetch from the scanned hosts. The
58 possible values are M-bM-^@M-^\dsaM-bM-^@M-^], M-bM-^@M-^\ecdsaM-bM-^@M-^], M-bM-^@M-^\ed25519M-bM-^@M-^], or M-bM-^@M-^\rsaM-bM-^@M-^].
59 Multiple values may be specified by separating them with commas.
60 The default is to fetch M-bM-^@M-^\rsaM-bM-^@M-^], M-bM-^@M-^\ecdsaM-bM-^@M-^], and M-bM-^@M-^\ed25519M-bM-^@M-^] keys.
61
62 -v Verbose mode: print debugging messages about progress.
63
64 If an ssh_known_hosts file is constructed using ssh-keyscan without
65 verifying the keys, users will be vulnerable to man in the middle
66 attacks. On the other hand, if the security model allows such a risk,
67 ssh-keyscan can help in the detection of tampered keyfiles or man in the
68 middle attacks which have begun after the ssh_known_hosts file was
69 created.
70
71FILES
72 /etc/ssh/ssh_known_hosts
73
74EXAMPLES
75 Print the RSA host key for machine hostname:
76
77 $ ssh-keyscan -t rsa hostname
78
79 Find all hosts from the file ssh_hosts which have new or different keys
80 from those in the sorted file ssh_known_hosts:
81
82 $ ssh-keyscan -t rsa,dsa,ecdsa,ed25519 -f ssh_hosts | \
83 sort -u - ssh_known_hosts | diff ssh_known_hosts -
84
85SEE ALSO
86 ssh(1), sshd(8)
87
88 Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints, RFC
89 4255, 2006.
90
91AUTHORS
92 David Mazieres <dm@lcs.mit.edu> wrote the initial version, and Wayne
93 Davison <wayned@users.sourceforge.net> added support for protocol version
94 2.
95
96OpenBSD 6.4 March 5, 2018 OpenBSD 6.4
diff --git a/ssh-keysign.0 b/ssh-keysign.0
new file mode 100644
index 000000000..db4355d29
--- /dev/null
+++ b/ssh-keysign.0
@@ -0,0 +1,52 @@
1SSH-KEYSIGN(8) System Manager's Manual SSH-KEYSIGN(8)
2
3NAME
4 ssh-keysign M-bM-^@M-^S 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.
12
13 ssh-keysign is disabled by default and can only be enabled in the global
14 client configuration file /etc/ssh/ssh_config by setting EnableSSHKeysign
15 to M-bM-^@M-^\yesM-bM-^@M-^].
16
17 ssh-keysign is not intended to be invoked by the user, but from ssh(1).
18 See ssh(1) and sshd(8) for more information about host-based
19 authentication.
20
21FILES
22 /etc/ssh/ssh_config
23 Controls whether ssh-keysign is enabled.
24
25 /etc/ssh/ssh_host_dsa_key
26 /etc/ssh/ssh_host_ecdsa_key
27 /etc/ssh/ssh_host_ed25519_key
28 /etc/ssh/ssh_host_rsa_key
29 These files contain the private parts of the host keys used to
30 generate the digital signature. They should be owned by root,
31 readable only by root, and not accessible to others. Since they
32 are readable only by root, ssh-keysign must be set-uid root if
33 host-based authentication is used.
34
35 /etc/ssh/ssh_host_dsa_key-cert.pub
36 /etc/ssh/ssh_host_ecdsa_key-cert.pub
37 /etc/ssh/ssh_host_ed25519_key-cert.pub
38 /etc/ssh/ssh_host_rsa_key-cert.pub
39 If these files exist they are assumed to contain public
40 certificate information corresponding with the private keys
41 above.
42
43SEE ALSO
44 ssh(1), ssh-keygen(1), ssh_config(5), sshd(8)
45
46HISTORY
47 ssh-keysign first appeared in OpenBSD 3.2.
48
49AUTHORS
50 Markus Friedl <markus@openbsd.org>
51
52OpenBSD 6.4 February 17, 2016 OpenBSD 6.4
diff --git a/ssh-pkcs11-helper.0 b/ssh-pkcs11-helper.0
new file mode 100644
index 000000000..4d5c9843b
--- /dev/null
+++ b/ssh-pkcs11-helper.0
@@ -0,0 +1,25 @@
1SSH-PKCS11-HELPER(8) System Manager's Manual SSH-PKCS11-HELPER(8)
2
3NAME
4 ssh-pkcs11-helper M-bM-^@M-^S 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 6.4 July 16, 2013 OpenBSD 6.4
diff --git a/ssh.0 b/ssh.0
new file mode 100644
index 000000000..2d8994ffc
--- /dev/null
+++ b/ssh.0
@@ -0,0 +1,982 @@
1SSH(1) General Commands Manual SSH(1)
2
3NAME
4 ssh M-bM-^@M-^S OpenSSH SSH client (remote login program)
5
6SYNOPSIS
7 ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address]
8 [-c cipher_spec] [-D [bind_address:]port] [-E log_file]
9 [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file]
10 [-J destination] [-L address] [-l login_name] [-m mac_spec]
11 [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
12 [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]] destination
13 [command]
14
15DESCRIPTION
16 ssh (SSH client) is a program for logging into a remote machine and for
17 executing commands on a remote machine. It is intended to provide secure
18 encrypted communications between two untrusted hosts over an insecure
19 network. X11 connections, arbitrary TCP ports and UNIX-domain sockets
20 can also be forwarded over the secure channel.
21
22 ssh connects and logs into the specified destination, which may be
23 specified as either [user@]hostname or a URI of the form
24 ssh://[user@]hostname[:port]. The user must prove his/her identity to
25 the remote machine using one of several methods (see below).
26
27 If a command is specified, it is executed on the remote host instead of a
28 login shell.
29
30 The options are as follows:
31
32 -4 Forces ssh to use IPv4 addresses only.
33
34 -6 Forces ssh to use IPv6 addresses only.
35
36 -A Enables forwarding of the authentication agent connection. This
37 can also be specified on a per-host basis in a configuration
38 file.
39
40 Agent forwarding should be enabled with caution. Users with the
41 ability to bypass file permissions on the remote host (for the
42 agent's UNIX-domain socket) can access the local agent through
43 the forwarded connection. An attacker cannot obtain key material
44 from the agent, however they can perform operations on the keys
45 that enable them to authenticate using the identities loaded into
46 the agent.
47
48 -a Disables forwarding of the authentication agent connection.
49
50 -B bind_interface
51 Bind to the address of bind_interface before attempting to
52 connect to the destination host. This is only useful on systems
53 with more than one address.
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, TCP and UNIX-domain
62 connections). The compression algorithm is the same used by
63 gzip(1). Compression is desirable on modem lines and other slow
64 connections, but will only slow down things on fast networks.
65 The default value can be set on a host-by-host basis in the
66 configuration files; see the Compression option.
67
68 -c cipher_spec
69 Selects the cipher specification for encrypting the session.
70 cipher_spec is a comma-separated list of ciphers listed in order
71 of preference. See the Ciphers keyword in ssh_config(5) for more
72 information.
73
74 -D [bind_address:]port
75 Specifies a local M-bM-^@M-^\dynamicM-bM-^@M-^] application-level port forwarding.
76 This works by allocating a socket to listen to port on the local
77 side, optionally bound to the specified bind_address. Whenever a
78 connection is made to this port, the connection is forwarded over
79 the secure channel, and the application protocol is then used to
80 determine where to connect to from the remote machine. Currently
81 the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
82 as a SOCKS server. Only root can forward privileged ports.
83 Dynamic port forwardings can also be specified in the
84 configuration file.
85
86 IPv6 addresses can be specified by enclosing the address in
87 square brackets. Only the superuser can forward privileged
88 ports. By default, the local port is bound in accordance with
89 the GatewayPorts setting. However, an explicit bind_address may
90 be used to bind the connection to a specific address. The
91 bind_address of M-bM-^@M-^\localhostM-bM-^@M-^] indicates that the listening port be
92 bound for local use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates
93 that the port should be available from all interfaces.
94
95 -E log_file
96 Append debug logs to log_file instead of standard error.
97
98 -e escape_char
99 Sets the escape character for sessions with a pty (default: M-bM-^@M-^X~M-bM-^@M-^Y).
100 The escape character is only recognized at the beginning of a
101 line. The escape character followed by a dot (M-bM-^@M-^X.M-bM-^@M-^Y) closes the
102 connection; followed by control-Z suspends the connection; and
103 followed by itself sends the escape character once. Setting the
104 character to M-bM-^@M-^\noneM-bM-^@M-^] disables any escapes and makes the session
105 fully transparent.
106
107 -F configfile
108 Specifies an alternative per-user configuration file. If a
109 configuration file is given on the command line, the system-wide
110 configuration file (/etc/ssh/ssh_config) will be ignored. The
111 default for the per-user configuration file is ~/.ssh/config.
112
113 -f Requests ssh to go to background just before command execution.
114 This is useful if ssh is going to ask for passwords or
115 passphrases, but the user wants it in the background. This
116 implies -n. The recommended way to start X11 programs at a
117 remote site is with something like ssh -f host xterm.
118
119 If the ExitOnForwardFailure configuration option is set to M-bM-^@M-^\yesM-bM-^@M-^],
120 then a client started with -f will wait for all remote port
121 forwards to be successfully established before placing itself in
122 the background.
123
124 -G Causes ssh to print its configuration after evaluating Host and
125 Match blocks and exit.
126
127 -g Allows remote hosts to connect to local forwarded ports. If used
128 on a multiplexed connection, then this option must be specified
129 on the master process.
130
131 -I pkcs11
132 Specify the PKCS#11 shared library ssh should use to communicate
133 with a PKCS#11 token providing the user's private RSA key.
134
135 -i identity_file
136 Selects a file from which the identity (private key) for public
137 key authentication is read. The default is ~/.ssh/id_dsa,
138 ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and ~/.ssh/id_rsa. Identity
139 files may also be specified on a per-host basis in the
140 configuration file. It is possible to have multiple -i options
141 (and multiple identities specified in configuration files). If
142 no certificates have been explicitly specified by the
143 CertificateFile directive, ssh will also try to load certificate
144 information from the filename obtained by appending -cert.pub to
145 identity filenames.
146
147 -J destination
148 Connect to the target host by first making a ssh connection to
149 the jump host described by destination and then establishing a
150 TCP forwarding to the ultimate destination from there. Multiple
151 jump hops may be specified separated by comma characters. This
152 is a shortcut to specify a ProxyJump configuration directive.
153
154 -K Enables GSSAPI-based authentication and forwarding (delegation)
155 of GSSAPI credentials to the server.
156
157 -k Disables forwarding (delegation) of GSSAPI credentials to the
158 server.
159
160 -L [bind_address:]port:host:hostport
161 -L [bind_address:]port:remote_socket
162 -L local_socket:host:hostport
163 -L local_socket:remote_socket
164 Specifies that connections to the given TCP port or Unix socket
165 on the local (client) host are to be forwarded to the given host
166 and port, or Unix socket, on the remote side. This works by
167 allocating a socket to listen to either a TCP port on the local
168 side, optionally bound to the specified bind_address, or to a
169 Unix socket. Whenever a connection is made to the local port or
170 socket, the connection is forwarded over the secure channel, and
171 a connection is made to either host port hostport, or the Unix
172 socket remote_socket, from the remote machine.
173
174 Port forwardings can also be specified in the configuration file.
175 Only the superuser can forward privileged ports. IPv6 addresses
176 can be specified by enclosing the address in square brackets.
177
178 By default, the local port is bound in accordance with the
179 GatewayPorts setting. However, an explicit bind_address may be
180 used to bind the connection to a specific address. The
181 bind_address of M-bM-^@M-^\localhostM-bM-^@M-^] indicates that the listening port be
182 bound for local use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates
183 that the port should be available from all interfaces.
184
185 -l login_name
186 Specifies the user to log in as on the remote machine. This also
187 may be specified on a per-host basis in the configuration file.
188
189 -M Places the ssh client into M-bM-^@M-^\masterM-bM-^@M-^] mode for connection sharing.
190 Multiple -M options places ssh into M-bM-^@M-^\masterM-bM-^@M-^] mode but with
191 confirmation required using ssh-askpass(1) before each operation
192 that changes the multiplexing state (e.g. opening a new session).
193 Refer to the description of ControlMaster in ssh_config(5) for
194 details.
195
196 -m mac_spec
197 A comma-separated list of MAC (message authentication code)
198 algorithms, specified in order of preference. See the MACs
199 keyword for more information.
200
201 -N Do not execute a remote command. This is useful for just
202 forwarding ports.
203
204 -n Redirects stdin from /dev/null (actually, prevents reading from
205 stdin). This must be used when ssh is run in the background. A
206 common trick is to use this to run X11 programs on a remote
207 machine. For example, ssh -n shadows.cs.hut.fi emacs & will
208 start an emacs on shadows.cs.hut.fi, and the X11 connection will
209 be automatically forwarded over an encrypted channel. The ssh
210 program will be put in the background. (This does not work if
211 ssh needs to ask for a password or passphrase; see also the -f
212 option.)
213
214 -O ctl_cmd
215 Control an active connection multiplexing master process. When
216 the -O option is specified, the ctl_cmd argument is interpreted
217 and passed to the master process. Valid commands are: M-bM-^@M-^\checkM-bM-^@M-^]
218 (check that the master process is running), M-bM-^@M-^\forwardM-bM-^@M-^] (request
219 forwardings without command execution), M-bM-^@M-^\cancelM-bM-^@M-^] (cancel
220 forwardings), M-bM-^@M-^\exitM-bM-^@M-^] (request the master to exit), and M-bM-^@M-^\stopM-bM-^@M-^]
221 (request the master to stop accepting further multiplexing
222 requests).
223
224 -o option
225 Can be used to give options in the format used in the
226 configuration file. This is useful for specifying options for
227 which there is no separate command-line flag. For full details
228 of the options listed below, and their possible values, see
229 ssh_config(5).
230
231 AddKeysToAgent
232 AddressFamily
233 BatchMode
234 BindAddress
235 CanonicalDomains
236 CanonicalizeFallbackLocal
237 CanonicalizeHostname
238 CanonicalizeMaxDots
239 CanonicalizePermittedCNAMEs
240 CASignatureAlgorithms
241 CertificateFile
242 ChallengeResponseAuthentication
243 CheckHostIP
244 Ciphers
245 ClearAllForwardings
246 Compression
247 ConnectionAttempts
248 ConnectTimeout
249 ControlMaster
250 ControlPath
251 ControlPersist
252 DynamicForward
253 EscapeChar
254 ExitOnForwardFailure
255 FingerprintHash
256 ForwardAgent
257 ForwardX11
258 ForwardX11Timeout
259 ForwardX11Trusted
260 GatewayPorts
261 GlobalKnownHostsFile
262 GSSAPIAuthentication
263 GSSAPIDelegateCredentials
264 HashKnownHosts
265 Host
266 HostbasedAuthentication
267 HostbasedKeyTypes
268 HostKeyAlgorithms
269 HostKeyAlias
270 HostName
271 IdentitiesOnly
272 IdentityAgent
273 IdentityFile
274 IPQoS
275 KbdInteractiveAuthentication
276 KbdInteractiveDevices
277 KexAlgorithms
278 LocalCommand
279 LocalForward
280 LogLevel
281 MACs
282 Match
283 NoHostAuthenticationForLocalhost
284 NumberOfPasswordPrompts
285 PasswordAuthentication
286 PermitLocalCommand
287 PKCS11Provider
288 Port
289 PreferredAuthentications
290 ProxyCommand
291 ProxyJump
292 ProxyUseFdpass
293 PubkeyAcceptedKeyTypes
294 PubkeyAuthentication
295 RekeyLimit
296 RemoteCommand
297 RemoteForward
298 RequestTTY
299 SendEnv
300 ServerAliveInterval
301 ServerAliveCountMax
302 SetEnv
303 StreamLocalBindMask
304 StreamLocalBindUnlink
305 StrictHostKeyChecking
306 TCPKeepAlive
307 Tunnel
308 TunnelDevice
309 UpdateHostKeys
310 User
311 UserKnownHostsFile
312 VerifyHostKeyDNS
313 VisualHostKey
314 XAuthLocation
315
316 -p port
317 Port to connect to on the remote host. This can be specified on
318 a per-host basis in the configuration file.
319
320 -Q query_option
321 Queries ssh for the algorithms supported for the specified
322 version 2. The available features are: cipher (supported
323 symmetric ciphers), cipher-auth (supported symmetric ciphers that
324 support authenticated encryption), help (supported query terms
325 for use with the -Q flag), mac (supported message integrity
326 codes), kex (key exchange algorithms), key (key types), key-cert
327 (certificate key types), key-plain (non-certificate key types),
328 protocol-version (supported SSH protocol versions), and sig
329 (supported signature algorithms).
330
331 -q Quiet mode. Causes most warning and diagnostic messages to be
332 suppressed.
333
334 -R [bind_address:]port:host:hostport
335 -R [bind_address:]port:local_socket
336 -R remote_socket:host:hostport
337 -R remote_socket:local_socket
338 -R [bind_address:]port
339 Specifies that connections to the given TCP port or Unix socket
340 on the remote (server) host are to be forwarded to the local
341 side.
342
343 This works by allocating a socket to listen to either a TCP port
344 or to a Unix socket on the remote side. Whenever a connection is
345 made to this port or Unix socket, the connection is forwarded
346 over the secure channel, and a connection is made from the local
347 machine to either an explicit destination specified by host port
348 hostport, or local_socket, or, if no explicit destination was
349 specified, ssh will act as a SOCKS 4/5 proxy and forward
350 connections to the destinations requested by the remote SOCKS
351 client.
352
353 Port forwardings can also be specified in the configuration file.
354 Privileged ports can be forwarded only when logging in as root on
355 the remote machine. IPv6 addresses can be specified by enclosing
356 the address in square brackets.
357
358 By default, TCP listening sockets on the server will be bound to
359 the loopback interface only. This may be overridden by
360 specifying a bind_address. An empty bind_address, or the address
361 M-bM-^@M-^X*M-bM-^@M-^Y, indicates that the remote socket should listen on all
362 interfaces. Specifying a remote bind_address will only succeed
363 if the server's GatewayPorts option is enabled (see
364 sshd_config(5)).
365
366 If the port argument is M-bM-^@M-^X0M-bM-^@M-^Y, the listen port will be dynamically
367 allocated on the server and reported to the client at run time.
368 When used together with -O forward the allocated port will be
369 printed to the standard output.
370
371 -S ctl_path
372 Specifies the location of a control socket for connection
373 sharing, or the string M-bM-^@M-^\noneM-bM-^@M-^] to disable connection sharing.
374 Refer to the description of ControlPath and ControlMaster in
375 ssh_config(5) for details.
376
377 -s May be used to request invocation of a subsystem on the remote
378 system. Subsystems facilitate the use of SSH as a secure
379 transport for other applications (e.g. sftp(1)). The subsystem
380 is specified as the remote command.
381
382 -T Disable pseudo-terminal allocation.
383
384 -t Force pseudo-terminal allocation. This can be used to execute
385 arbitrary screen-based programs on a remote machine, which can be
386 very useful, e.g. when implementing menu services. Multiple -t
387 options force tty allocation, even if ssh has no local tty.
388
389 -V Display the version number and exit.
390
391 -v Verbose mode. Causes ssh to print debugging messages about its
392 progress. This is helpful in debugging connection,
393 authentication, and configuration problems. Multiple -v options
394 increase the verbosity. The maximum is 3.
395
396 -W host:port
397 Requests that standard input and output on the client be
398 forwarded to host on port over the secure channel. Implies -N,
399 -T, ExitOnForwardFailure and ClearAllForwardings, though these
400 can be overridden in the configuration file or using -o command
401 line options.
402
403 -w local_tun[:remote_tun]
404 Requests tunnel device forwarding with the specified tun(4)
405 devices between the client (local_tun) and the server
406 (remote_tun).
407
408 The devices may be specified by numerical ID or the keyword
409 M-bM-^@M-^\anyM-bM-^@M-^], which uses the next available tunnel device. If
410 remote_tun is not specified, it defaults to M-bM-^@M-^\anyM-bM-^@M-^]. See also the
411 Tunnel and TunnelDevice directives in ssh_config(5).
412
413 If the Tunnel directive is unset, it will be set to the default
414 tunnel mode, which is M-bM-^@M-^\point-to-pointM-bM-^@M-^]. If a different Tunnel
415 forwarding mode it desired, then it should be specified before
416 -w.
417
418 -X Enables X11 forwarding. This can also be specified on a per-host
419 basis in a configuration file.
420
421 X11 forwarding should be enabled with caution. Users with the
422 ability to bypass file permissions on the remote host (for the
423 user's X authorization database) can access the local X11 display
424 through the forwarded connection. An attacker may then be able
425 to perform activities such as keystroke monitoring.
426
427 For this reason, X11 forwarding is subjected to X11 SECURITY
428 extension restrictions by default. Please refer to the ssh -Y
429 option and the ForwardX11Trusted directive in ssh_config(5) for
430 more information.
431
432 -x Disables X11 forwarding.
433
434 -Y Enables trusted X11 forwarding. Trusted X11 forwardings are not
435 subjected to the X11 SECURITY extension controls.
436
437 -y Send log information using the syslog(3) system module. By
438 default this information is sent to stderr.
439
440 ssh may additionally obtain configuration data from a per-user
441 configuration file and a system-wide configuration file. The file format
442 and configuration options are described in ssh_config(5).
443
444AUTHENTICATION
445 The OpenSSH SSH client supports SSH protocol 2.
446
447 The methods available for authentication are: GSSAPI-based
448 authentication, host-based authentication, public key authentication,
449 challenge-response authentication, and password authentication.
450 Authentication methods are tried in the order specified above, though
451 PreferredAuthentications can be used to change the default order.
452
453 Host-based authentication works as follows: If the machine the user logs
454 in from is listed in /etc/hosts.equiv or /etc/shosts.equiv on the remote
455 machine, and the user names are the same on both sides, or if the files
456 ~/.rhosts or ~/.shosts exist in the user's home directory on the remote
457 machine and contain a line containing the name of the client machine and
458 the name of the user on that machine, the user is considered for login.
459 Additionally, the server must be able to verify the client's host key
460 (see the description of /etc/ssh/ssh_known_hosts and ~/.ssh/known_hosts,
461 below) for login to be permitted. This authentication method closes
462 security holes due to IP spoofing, DNS spoofing, and routing spoofing.
463 [Note to the administrator: /etc/hosts.equiv, ~/.rhosts, and the
464 rlogin/rsh protocol in general, are inherently insecure and should be
465 disabled if security is desired.]
466
467 Public key authentication works as follows: The scheme is based on
468 public-key cryptography, using cryptosystems where encryption and
469 decryption are done using separate keys, and it is unfeasible to derive
470 the decryption key from the encryption key. The idea is that each user
471 creates a public/private key pair for authentication purposes. The
472 server knows the public key, and only the user knows the private key.
473 ssh implements public key authentication protocol automatically, using
474 one of the DSA, ECDSA, Ed25519 or RSA algorithms. The HISTORY section of
475 ssl(8) contains a brief discussion of the DSA and RSA algorithms.
476
477 The file ~/.ssh/authorized_keys lists the public keys that are permitted
478 for logging in. When the user logs in, the ssh program tells the server
479 which key pair it would like to use for authentication. The client
480 proves that it has access to the private key and the server checks that
481 the corresponding public key is authorized to accept the account.
482
483 The server may inform the client of errors that prevented public key
484 authentication from succeeding after authentication completes using a
485 different method. These may be viewed by increasing the LogLevel to
486 DEBUG or higher (e.g. by using the -v flag).
487
488 The user creates his/her key pair by running ssh-keygen(1). This stores
489 the private key in ~/.ssh/id_dsa (DSA), ~/.ssh/id_ecdsa (ECDSA),
490 ~/.ssh/id_ed25519 (Ed25519), or ~/.ssh/id_rsa (RSA) and stores the public
491 key in ~/.ssh/id_dsa.pub (DSA), ~/.ssh/id_ecdsa.pub (ECDSA),
492 ~/.ssh/id_ed25519.pub (Ed25519), or ~/.ssh/id_rsa.pub (RSA) in the user's
493 home directory. The user should then copy the public key to
494 ~/.ssh/authorized_keys in his/her home directory on the remote machine.
495 The authorized_keys file corresponds to the conventional ~/.rhosts file,
496 and has one key per line, though the lines can be very long. After this,
497 the user can log in without giving the password.
498
499 A variation on public key authentication is available in the form of
500 certificate authentication: instead of a set of public/private keys,
501 signed certificates are used. This has the advantage that a single
502 trusted certification authority can be used in place of many
503 public/private keys. See the CERTIFICATES section of ssh-keygen(1) for
504 more information.
505
506 The most convenient way to use public key or certificate authentication
507 may be with an authentication agent. See ssh-agent(1) and (optionally)
508 the AddKeysToAgent directive in ssh_config(5) for more information.
509
510 Challenge-response authentication works as follows: The server sends an
511 arbitrary "challenge" text, and prompts for a response. Examples of
512 challenge-response authentication include BSD Authentication (see
513 login.conf(5)) and PAM (some non-OpenBSD systems).
514
515 Finally, if other authentication methods fail, ssh prompts the user for a
516 password. The password is sent to the remote host for checking; however,
517 since all communications are encrypted, the password cannot be seen by
518 someone listening on the network.
519
520 ssh automatically maintains and checks a database containing
521 identification for all hosts it has ever been used with. Host keys are
522 stored in ~/.ssh/known_hosts in the user's home directory. Additionally,
523 the file /etc/ssh/ssh_known_hosts is automatically checked for known
524 hosts. Any new hosts are automatically added to the user's file. If a
525 host's identification ever changes, ssh warns about this and disables
526 password authentication to prevent server spoofing or man-in-the-middle
527 attacks, which could otherwise be used to circumvent the encryption. The
528 StrictHostKeyChecking option can be used to control logins to machines
529 whose host key is not known or has changed.
530
531 When the user's identity has been accepted by the server, the server
532 either executes the given command in a non-interactive session or, if no
533 command has been specified, logs into the machine and gives the user a
534 normal shell as an interactive session. All communication with the
535 remote command or shell will be automatically encrypted.
536
537 If an interactive session is requested ssh by default will only request a
538 pseudo-terminal (pty) for interactive sessions when the client has one.
539 The flags -T and -t can be used to override this behaviour.
540
541 If a pseudo-terminal has been allocated the user may use the escape
542 characters noted below.
543
544 If no pseudo-terminal has been allocated, the session is transparent and
545 can be used to reliably transfer binary data. On most systems, setting
546 the escape character to M-bM-^@M-^\noneM-bM-^@M-^] will also make the session transparent
547 even if a tty is used.
548
549 The session terminates when the command or shell on the remote machine
550 exits and all X11 and TCP connections have been closed.
551
552ESCAPE CHARACTERS
553 When a pseudo-terminal has been requested, ssh supports a number of
554 functions through the use of an escape character.
555
556 A single tilde character can be sent as ~~ or by following the tilde by a
557 character other than those described below. The escape character must
558 always follow a newline to be interpreted as special. The escape
559 character can be changed in configuration files using the EscapeChar
560 configuration directive or on the command line by the -e option.
561
562 The supported escapes (assuming the default M-bM-^@M-^X~M-bM-^@M-^Y) are:
563
564 ~. Disconnect.
565
566 ~^Z Background ssh.
567
568 ~# List forwarded connections.
569
570 ~& Background ssh at logout when waiting for forwarded connection /
571 X11 sessions to terminate.
572
573 ~? Display a list of escape characters.
574
575 ~B Send a BREAK to the remote system (only useful if the peer
576 supports it).
577
578 ~C Open command line. Currently this allows the addition of port
579 forwardings using the -L, -R and -D options (see above). It also
580 allows the cancellation of existing port-forwardings with
581 -KL[bind_address:]port for local, -KR[bind_address:]port for
582 remote and -KD[bind_address:]port for dynamic port-forwardings.
583 !command allows the user to execute a local command if the
584 PermitLocalCommand option is enabled in ssh_config(5). Basic
585 help is available, using the -h option.
586
587 ~R Request rekeying of the connection (only useful if the peer
588 supports it).
589
590 ~V Decrease the verbosity (LogLevel) when errors are being written
591 to stderr.
592
593 ~v Increase the verbosity (LogLevel) when errors are being written
594 to stderr.
595
596TCP FORWARDING
597 Forwarding of arbitrary TCP connections over the secure channel can be
598 specified either on the command line or in a configuration file. One
599 possible application of TCP forwarding is a secure connection to a mail
600 server; another is going through firewalls.
601
602 In the example below, we look at encrypting communication between an IRC
603 client and server, even though the IRC server does not directly support
604 encrypted communications. This works as follows: the user connects to
605 the remote host using ssh, specifying a port to be used to forward
606 connections to the remote server. After that it is possible to start the
607 service which is to be encrypted on the client machine, connecting to the
608 same local port, and ssh will encrypt and forward the connection.
609
610 The following example tunnels an IRC session from client machine
611 M-bM-^@M-^\127.0.0.1M-bM-^@M-^] (localhost) to remote server M-bM-^@M-^\server.example.comM-bM-^@M-^]:
612
613 $ ssh -f -L 1234:localhost:6667 server.example.com sleep 10
614 $ irc -c '#users' -p 1234 pinky 127.0.0.1
615
616 This tunnels a connection to IRC server M-bM-^@M-^\server.example.comM-bM-^@M-^], joining
617 channel M-bM-^@M-^\#usersM-bM-^@M-^], nickname M-bM-^@M-^\pinkyM-bM-^@M-^], using port 1234. It doesn't matter
618 which port is used, as long as it's greater than 1023 (remember, only
619 root can open sockets on privileged ports) and doesn't conflict with any
620 ports already in use. The connection is forwarded to port 6667 on the
621 remote server, since that's the standard port for IRC services.
622
623 The -f option backgrounds ssh and the remote command M-bM-^@M-^\sleep 10M-bM-^@M-^] is
624 specified to allow an amount of time (10 seconds, in the example) to
625 start the service which is to be tunnelled. If no connections are made
626 within the time specified, ssh will exit.
627
628X11 FORWARDING
629 If the ForwardX11 variable is set to M-bM-^@M-^\yesM-bM-^@M-^] (or see the description of the
630 -X, -x, and -Y options above) and the user is using X11 (the DISPLAY
631 environment variable is set), the connection to the X11 display is
632 automatically forwarded to the remote side in such a way that any X11
633 programs started from the shell (or command) will go through the
634 encrypted channel, and the connection to the real X server will be made
635 from the local machine. The user should not manually set DISPLAY.
636 Forwarding of X11 connections can be configured on the command line or in
637 configuration files.
638
639 The DISPLAY value set by ssh will point to the server machine, but with a
640 display number greater than zero. This is normal, and happens because
641 ssh creates a M-bM-^@M-^\proxyM-bM-^@M-^] X server on the server machine for forwarding the
642 connections over the encrypted channel.
643
644 ssh will also automatically set up Xauthority data on the server machine.
645 For this purpose, it will generate a random authorization cookie, store
646 it in Xauthority on the server, and verify that any forwarded connections
647 carry this cookie and replace it by the real cookie when the connection
648 is opened. The real authentication cookie is never sent to the server
649 machine (and no cookies are sent in the plain).
650
651 If the ForwardAgent variable is set to M-bM-^@M-^\yesM-bM-^@M-^] (or see the description of
652 the -A and -a options above) and the user is using an authentication
653 agent, the connection to the agent is automatically forwarded to the
654 remote side.
655
656VERIFYING HOST KEYS
657 When connecting to a server for the first time, a fingerprint of the
658 server's public key is presented to the user (unless the option
659 StrictHostKeyChecking has been disabled). Fingerprints can be determined
660 using ssh-keygen(1):
661
662 $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key
663
664 If the fingerprint is already known, it can be matched and the key can be
665 accepted or rejected. If only legacy (MD5) fingerprints for the server
666 are available, the ssh-keygen(1) -E option may be used to downgrade the
667 fingerprint algorithm to match.
668
669 Because of the difficulty of comparing host keys just by looking at
670 fingerprint strings, there is also support to compare host keys visually,
671 using random art. By setting the VisualHostKey option to M-bM-^@M-^\yesM-bM-^@M-^], a small
672 ASCII graphic gets displayed on every login to a server, no matter if the
673 session itself is interactive or not. By learning the pattern a known
674 server produces, a user can easily find out that the host key has changed
675 when a completely different pattern is displayed. Because these patterns
676 are not unambiguous however, a pattern that looks similar to the pattern
677 remembered only gives a good probability that the host key is the same,
678 not guaranteed proof.
679
680 To get a listing of the fingerprints along with their random art for all
681 known hosts, the following command line can be used:
682
683 $ ssh-keygen -lv -f ~/.ssh/known_hosts
684
685 If the fingerprint is unknown, an alternative method of verification is
686 available: SSH fingerprints verified by DNS. An additional resource
687 record (RR), SSHFP, is added to a zonefile and the connecting client is
688 able to match the fingerprint with that of the key presented.
689
690 In this example, we are connecting a client to a server,
691 M-bM-^@M-^\host.example.comM-bM-^@M-^]. The SSHFP resource records should first be added to
692 the zonefile for host.example.com:
693
694 $ ssh-keygen -r host.example.com.
695
696 The output lines will have to be added to the zonefile. To check that
697 the zone is answering fingerprint queries:
698
699 $ dig -t SSHFP host.example.com
700
701 Finally the client connects:
702
703 $ ssh -o "VerifyHostKeyDNS ask" host.example.com
704 [...]
705 Matching host key fingerprint found in DNS.
706 Are you sure you want to continue connecting (yes/no)?
707
708 See the VerifyHostKeyDNS option in ssh_config(5) for more information.
709
710SSH-BASED VIRTUAL PRIVATE NETWORKS
711 ssh contains support for Virtual Private Network (VPN) tunnelling using
712 the tun(4) network pseudo-device, allowing two networks to be joined
713 securely. The sshd_config(5) configuration option PermitTunnel controls
714 whether the server supports this, and at what level (layer 2 or 3
715 traffic).
716
717 The following example would connect client network 10.0.50.0/24 with
718 remote network 10.0.99.0/24 using a point-to-point connection from
719 10.1.1.1 to 10.1.1.2, provided that the SSH server running on the gateway
720 to the remote network, at 192.168.1.15, allows it.
721
722 On the client:
723
724 # ssh -f -w 0:1 192.168.1.15 true
725 # ifconfig tun0 10.1.1.1 10.1.1.2 netmask 255.255.255.252
726 # route add 10.0.99.0/24 10.1.1.2
727
728 On the server:
729
730 # ifconfig tun1 10.1.1.2 10.1.1.1 netmask 255.255.255.252
731 # route add 10.0.50.0/24 10.1.1.1
732
733 Client access may be more finely tuned via the /root/.ssh/authorized_keys
734 file (see below) and the PermitRootLogin server option. The following
735 entry would permit connections on tun(4) device 1 from user M-bM-^@M-^\janeM-bM-^@M-^] and on
736 tun device 2 from user M-bM-^@M-^\johnM-bM-^@M-^], if PermitRootLogin is set to
737 M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^]:
738
739 tunnel="1",command="sh /etc/netstart tun1" ssh-rsa ... jane
740 tunnel="2",command="sh /etc/netstart tun2" ssh-rsa ... john
741
742 Since an SSH-based setup entails a fair amount of overhead, it may be
743 more suited to temporary setups, such as for wireless VPNs. More
744 permanent VPNs are better provided by tools such as ipsecctl(8) and
745 isakmpd(8).
746
747ENVIRONMENT
748 ssh will normally set the following environment variables:
749
750 DISPLAY The DISPLAY variable indicates the location of the
751 X11 server. It is automatically set by ssh to
752 point to a value of the form M-bM-^@M-^\hostname:nM-bM-^@M-^], where
753 M-bM-^@M-^\hostnameM-bM-^@M-^] indicates the host where the shell runs,
754 and M-bM-^@M-^XnM-bM-^@M-^Y is an integer M-bM-^IM-% 1. ssh uses this special
755 value to forward X11 connections over the secure
756 channel. The user should normally not set DISPLAY
757 explicitly, as that will render the X11 connection
758 insecure (and will require the user to manually
759 copy any required authorization cookies).
760
761 HOME Set to the path of the user's home directory.
762
763 LOGNAME Synonym for USER; set for compatibility with
764 systems that use this variable.
765
766 MAIL Set to the path of the user's mailbox.
767
768 PATH Set to the default PATH, as specified when
769 compiling ssh.
770
771 SSH_ASKPASS If ssh needs a passphrase, it will read the
772 passphrase from the current terminal if it was run
773 from a terminal. If ssh does not have a terminal
774 associated with it but DISPLAY and SSH_ASKPASS are
775 set, it will execute the program specified by
776 SSH_ASKPASS and open an X11 window to read the
777 passphrase. This is particularly useful when
778 calling ssh from a .xsession or related script.
779 (Note that on some machines it may be necessary to
780 redirect the input from /dev/null to make this
781 work.)
782
783 SSH_AUTH_SOCK Identifies the path of a UNIX-domain socket used to
784 communicate with the agent.
785
786 SSH_CONNECTION Identifies the client and server ends of the
787 connection. The variable contains four space-
788 separated values: client IP address, client port
789 number, server IP address, and server port number.
790
791 SSH_ORIGINAL_COMMAND This variable contains the original command line if
792 a forced command is executed. It can be used to
793 extract the original arguments.
794
795 SSH_TTY This is set to the name of the tty (path to the
796 device) associated with the current shell or
797 command. If the current session has no tty, this
798 variable is not set.
799
800 SSH_TUNNEL Optionally set by sshd(8) to contain the interface
801 names assigned if tunnel forwarding was requested
802 by the client.
803
804 SSH_USER_AUTH Optionally set by sshd(8), this variable may
805 contain a pathname to a file that lists the
806 authentication methods successfully used when the
807 session was established, including any public keys
808 that were used.
809
810 TZ This variable is set to indicate the present time
811 zone if it was set when the daemon was started
812 (i.e. the daemon passes the value on to new
813 connections).
814
815 USER Set to the name of the user logging in.
816
817 Additionally, ssh reads ~/.ssh/environment, and adds lines of the format
818 M-bM-^@M-^\VARNAME=valueM-bM-^@M-^] to the environment if the file exists and users are
819 allowed to change their environment. For more information, see the
820 PermitUserEnvironment option in sshd_config(5).
821
822FILES
823 ~/.rhosts
824 This file is used for host-based authentication (see above). On
825 some machines this file may need to be world-readable if the
826 user's home directory is on an NFS partition, because sshd(8)
827 reads it as root. Additionally, this file must be owned by the
828 user, and must not have write permissions for anyone else. The
829 recommended permission for most machines is read/write for the
830 user, and not accessible by others.
831
832 ~/.shosts
833 This file is used in exactly the same way as .rhosts, but allows
834 host-based authentication without permitting login with
835 rlogin/rsh.
836
837 ~/.ssh/
838 This directory is the default location for all user-specific
839 configuration and authentication information. There is no
840 general requirement to keep the entire contents of this directory
841 secret, but the recommended permissions are read/write/execute
842 for the user, and not accessible by others.
843
844 ~/.ssh/authorized_keys
845 Lists the public keys (DSA, ECDSA, Ed25519, RSA) that can be used
846 for logging in as this user. The format of this file is
847 described in the sshd(8) manual page. This file is not highly
848 sensitive, but the recommended permissions are read/write for the
849 user, and not accessible by others.
850
851 ~/.ssh/config
852 This is the per-user configuration file. The file format and
853 configuration options are described in ssh_config(5). Because of
854 the potential for abuse, this file must have strict permissions:
855 read/write for the user, and not writable by others.
856
857 ~/.ssh/environment
858 Contains additional definitions for environment variables; see
859 ENVIRONMENT, above.
860
861 ~/.ssh/id_dsa
862 ~/.ssh/id_ecdsa
863 ~/.ssh/id_ed25519
864 ~/.ssh/id_rsa
865 Contains the private key for authentication. These files contain
866 sensitive data and should be readable by the user but not
867 accessible by others (read/write/execute). ssh will simply
868 ignore a private key file if it is accessible by others. It is
869 possible to specify a passphrase when generating the key which
870 will be used to encrypt the sensitive part of this file using
871 AES-128.
872
873 ~/.ssh/id_dsa.pub
874 ~/.ssh/id_ecdsa.pub
875 ~/.ssh/id_ed25519.pub
876 ~/.ssh/id_rsa.pub
877 Contains the public key for authentication. These files are not
878 sensitive and can (but need not) be readable by anyone.
879
880 ~/.ssh/known_hosts
881 Contains a list of host keys for all hosts the user has logged
882 into that are not already in the systemwide list of known host
883 keys. See sshd(8) for further details of the format of this
884 file.
885
886 ~/.ssh/rc
887 Commands in this file are executed by ssh when the user logs in,
888 just before the user's shell (or command) is started. See the
889 sshd(8) manual page for more information.
890
891 /etc/hosts.equiv
892 This file is for host-based authentication (see above). It
893 should only be writable by root.
894
895 /etc/shosts.equiv
896 This file is used in exactly the same way as hosts.equiv, but
897 allows host-based authentication without permitting login with
898 rlogin/rsh.
899
900 /etc/ssh/ssh_config
901 Systemwide configuration file. The file format and configuration
902 options are described in ssh_config(5).
903
904 /etc/ssh/ssh_host_key
905 /etc/ssh/ssh_host_dsa_key
906 /etc/ssh/ssh_host_ecdsa_key
907 /etc/ssh/ssh_host_ed25519_key
908 /etc/ssh/ssh_host_rsa_key
909 These files contain the private parts of the host keys and are
910 used for host-based authentication.
911
912 /etc/ssh/ssh_known_hosts
913 Systemwide list of known host keys. This file should be prepared
914 by the system administrator to contain the public host keys of
915 all machines in the organization. It should be world-readable.
916 See sshd(8) for further details of the format of this file.
917
918 /etc/ssh/sshrc
919 Commands in this file are executed by ssh when the user logs in,
920 just before the user's shell (or command) is started. See the
921 sshd(8) manual page for more information.
922
923EXIT STATUS
924 ssh exits with the exit status of the remote command or with 255 if an
925 error occurred.
926
927SEE ALSO
928 scp(1), sftp(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh-keyscan(1),
929 tun(4), ssh_config(5), ssh-keysign(8), sshd(8)
930
931STANDARDS
932 S. Lehtinen and C. Lonvick, The Secure Shell (SSH) Protocol Assigned
933 Numbers, RFC 4250, January 2006.
934
935 T. Ylonen and C. Lonvick, The Secure Shell (SSH) Protocol Architecture,
936 RFC 4251, January 2006.
937
938 T. Ylonen and C. Lonvick, The Secure Shell (SSH) Authentication Protocol,
939 RFC 4252, January 2006.
940
941 T. Ylonen and C. Lonvick, The Secure Shell (SSH) Transport Layer
942 Protocol, RFC 4253, January 2006.
943
944 T. Ylonen and C. Lonvick, The Secure Shell (SSH) Connection Protocol, RFC
945 4254, January 2006.
946
947 J. Schlyter and W. Griffin, Using DNS to Securely Publish Secure Shell
948 (SSH) Key Fingerprints, RFC 4255, January 2006.
949
950 F. Cusack and M. Forssen, Generic Message Exchange Authentication for the
951 Secure Shell Protocol (SSH), RFC 4256, January 2006.
952
953 J. Galbraith and P. Remaker, The Secure Shell (SSH) Session Channel Break
954 Extension, RFC 4335, January 2006.
955
956 M. Bellare, T. Kohno, and C. Namprempre, The Secure Shell (SSH) Transport
957 Layer Encryption Modes, RFC 4344, January 2006.
958
959 B. Harris, Improved Arcfour Modes for the Secure Shell (SSH) Transport
960 Layer Protocol, RFC 4345, January 2006.
961
962 M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for
963 the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006.
964
965 J. Galbraith and R. Thayer, The Secure Shell (SSH) Public Key File
966 Format, RFC 4716, November 2006.
967
968 D. Stebila and J. Green, Elliptic Curve Algorithm Integration in the
969 Secure Shell Transport Layer, RFC 5656, December 2009.
970
971 A. Perrig and D. Song, Hash Visualization: a New Technique to improve
972 Real-World Security, 1999, International Workshop on Cryptographic
973 Techniques and E-Commerce (CrypTEC '99).
974
975AUTHORS
976 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
977 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
978 de Raadt and Dug Song removed many bugs, re-added newer features and
979 created OpenSSH. Markus Friedl contributed the support for SSH protocol
980 versions 1.5 and 2.0.
981
982OpenBSD 6.4 September 20, 2018 OpenBSD 6.4
diff --git a/ssh_config.0 b/ssh_config.0
new file mode 100644
index 000000000..eb7f929e6
--- /dev/null
+++ b/ssh_config.0
@@ -0,0 +1,1109 @@
1SSH_CONFIG(5) File Formats Manual SSH_CONFIG(5)
2
3NAME
4 ssh_config M-bM-^@M-^S OpenSSH SSH client configuration files
5
6DESCRIPTION
7 ssh(1) obtains configuration data from the following sources in the
8 following order:
9
10 1. command-line options
11 2. user's configuration file (~/.ssh/config)
12 3. system-wide configuration file (/etc/ssh/ssh_config)
13
14 For each parameter, the first obtained value will be used. The
15 configuration files contain sections separated by Host specifications,
16 and that section is only applied for hosts that match one of the patterns
17 given in the specification. The matched host name is usually the one
18 given on the command line (see the CanonicalizeHostname option for
19 exceptions).
20
21 Since the first obtained value for each parameter is used, more host-
22 specific declarations should be given near the beginning of the file, and
23 general defaults at the end.
24
25 The file contains keyword-argument pairs, one per line. Lines starting
26 with M-bM-^@M-^X#M-bM-^@M-^Y and empty lines are interpreted as comments. Arguments may
27 optionally be enclosed in double quotes (") in order to represent
28 arguments containing spaces. Configuration options may be separated by
29 whitespace or optional whitespace and exactly one M-bM-^@M-^X=M-bM-^@M-^Y; the latter format
30 is useful to avoid the need to quote whitespace when specifying
31 configuration options using the ssh, scp, and sftp -o option.
32
33 The possible keywords and their meanings are as follows (note that
34 keywords are case-insensitive and arguments are case-sensitive):
35
36 Host Restricts the following declarations (up to the next Host or
37 Match keyword) to be only for those hosts that match one of the
38 patterns given after the keyword. If more than one pattern is
39 provided, they should be separated by whitespace. A single M-bM-^@M-^X*M-bM-^@M-^Y
40 as a pattern can be used to provide global defaults for all
41 hosts. The host is usually the hostname argument given on the
42 command line (see the CanonicalizeHostname keyword for
43 exceptions).
44
45 A pattern entry may be negated by prefixing it with an
46 exclamation mark (M-bM-^@M-^X!M-bM-^@M-^Y). If a negated entry is matched, then the
47 Host entry is ignored, regardless of whether any other patterns
48 on the line match. Negated matches are therefore useful to
49 provide exceptions for wildcard matches.
50
51 See PATTERNS for more information on patterns.
52
53 Match Restricts the following declarations (up to the next Host or
54 Match keyword) to be used only when the conditions following the
55 Match keyword are satisfied. Match conditions are specified
56 using one or more criteria or the single token all which always
57 matches. The available criteria keywords are: canonical, exec,
58 host, originalhost, user, and localuser. The all criteria must
59 appear alone or immediately after canonical. Other criteria may
60 be combined arbitrarily. All criteria but all and canonical
61 require an argument. Criteria may be negated by prepending an
62 exclamation mark (M-bM-^@M-^X!M-bM-^@M-^Y).
63
64 The canonical keyword matches only when the configuration file is
65 being re-parsed after hostname canonicalization (see the
66 CanonicalizeHostname option.) This may be useful to specify
67 conditions that work with canonical host names only. The exec
68 keyword executes the specified command under the user's shell.
69 If the command returns a zero exit status then the condition is
70 considered true. Commands containing whitespace characters must
71 be quoted. Arguments to exec accept the tokens described in the
72 TOKENS section.
73
74 The other keywords' criteria must be single entries or comma-
75 separated lists and may use the wildcard and negation operators
76 described in the PATTERNS section. The criteria for the host
77 keyword are matched against the target hostname, after any
78 substitution by the Hostname or CanonicalizeHostname options.
79 The originalhost keyword matches against the hostname as it was
80 specified on the command-line. The user keyword matches against
81 the target username on the remote host. The localuser keyword
82 matches against the name of the local user running ssh(1) (this
83 keyword may be useful in system-wide ssh_config files).
84
85 AddKeysToAgent
86 Specifies whether keys should be automatically added to a running
87 ssh-agent(1). If this option is set to yes and a key is loaded
88 from a file, the key and its passphrase are added to the agent
89 with the default lifetime, as if by ssh-add(1). If this option
90 is set to ask, ssh(1) will require confirmation using the
91 SSH_ASKPASS program before adding a key (see ssh-add(1) for
92 details). If this option is set to confirm, each use of the key
93 must be confirmed, as if the -c option was specified to
94 ssh-add(1). If this option is set to no, no keys are added to
95 the agent. The argument must be yes, confirm, ask, or no (the
96 default).
97
98 AddressFamily
99 Specifies which address family to use when connecting. Valid
100 arguments are any (the default), inet (use IPv4 only), or inet6
101 (use IPv6 only).
102
103 BatchMode
104 If set to yes, passphrase/password querying will be disabled.
105 This option is useful in scripts and other batch jobs where no
106 user is present to supply the password. The argument must be yes
107 or no (the default).
108
109 BindAddress
110 Use the specified address on the local machine as the source
111 address of the connection. Only useful on systems with more than
112 one address.
113
114 BindInterface
115 Use the address of the specified interface on the local machine
116 as the source address of the connection.
117
118 CanonicalDomains
119 When CanonicalizeHostname is enabled, this option specifies the
120 list of domain suffixes in which to search for the specified
121 destination host.
122
123 CanonicalizeFallbackLocal
124 Specifies whether to fail with an error when hostname
125 canonicalization fails. The default, yes, will attempt to look
126 up the unqualified hostname using the system resolver's search
127 rules. A value of no will cause ssh(1) to fail instantly if
128 CanonicalizeHostname is enabled and the target hostname cannot be
129 found in any of the domains specified by CanonicalDomains.
130
131 CanonicalizeHostname
132 Controls whether explicit hostname canonicalization is performed.
133 The default, no, is not to perform any name rewriting and let the
134 system resolver handle all hostname lookups. If set to yes then,
135 for connections that do not use a ProxyCommand or ProxyJump,
136 ssh(1) will attempt to canonicalize the hostname specified on the
137 command line using the CanonicalDomains suffixes and
138 CanonicalizePermittedCNAMEs rules. If CanonicalizeHostname is
139 set to always, then canonicalization is applied to proxied
140 connections too.
141
142 If this option is enabled, then the configuration files are
143 processed again using the new target name to pick up any new
144 configuration in matching Host and Match stanzas.
145
146 CanonicalizeMaxDots
147 Specifies the maximum number of dot characters in a hostname
148 before canonicalization is disabled. The default, 1, allows a
149 single dot (i.e. hostname.subdomain).
150
151 CanonicalizePermittedCNAMEs
152 Specifies rules to determine whether CNAMEs should be followed
153 when canonicalizing hostnames. The rules consist of one or more
154 arguments of source_domain_list:target_domain_list, where
155 source_domain_list is a pattern-list of domains that may follow
156 CNAMEs in canonicalization, and target_domain_list is a pattern-
157 list of domains that they may resolve to.
158
159 For example, "*.a.example.com:*.b.example.com,*.c.example.com"
160 will allow hostnames matching "*.a.example.com" to be
161 canonicalized to names in the "*.b.example.com" or
162 "*.c.example.com" domains.
163
164 CASignatureAlgorithms
165 Specifies which algorithms are allowed for signing of
166 certificates by certificate authorities (CAs). The default is:
167
168 ecdsa-sha2-nistp256.ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
169 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
170
171 ssh(1) will not accept host certificates signed using algorithms
172 other than those specified.
173
174 CertificateFile
175 Specifies a file from which the user's certificate is read. A
176 corresponding private key must be provided separately in order to
177 use this certificate either from an IdentityFile directive or -i
178 flag to ssh(1), via ssh-agent(1), or via a PKCS11Provider.
179
180 Arguments to CertificateFile may use the tilde syntax to refer to
181 a user's home directory or the tokens described in the TOKENS
182 section.
183
184 It is possible to have multiple certificate files specified in
185 configuration files; these certificates will be tried in
186 sequence. Multiple CertificateFile directives will add to the
187 list of certificates used for authentication.
188
189 ChallengeResponseAuthentication
190 Specifies whether to use challenge-response authentication. The
191 argument to this keyword must be yes (the default) or no.
192
193 CheckHostIP
194 If set to yes (the default), ssh(1) will additionally check the
195 host IP address in the known_hosts file. This allows it to
196 detect if a host key changed due to DNS spoofing and will add
197 addresses of destination hosts to ~/.ssh/known_hosts in the
198 process, regardless of the setting of StrictHostKeyChecking. If
199 the option is set to no, the check will not be executed.
200
201 Ciphers
202 Specifies the ciphers allowed and their order of preference.
203 Multiple ciphers must be comma-separated. If the specified value
204 begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified ciphers will be
205 appended to the default set instead of replacing them. If the
206 specified value begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified
207 ciphers (including wildcards) will be removed from the default
208 set instead of replacing them.
209
210 The supported ciphers are:
211
212 3des-cbc
213 aes128-cbc
214 aes192-cbc
215 aes256-cbc
216 aes128-ctr
217 aes192-ctr
218 aes256-ctr
219 aes128-gcm@openssh.com
220 aes256-gcm@openssh.com
221 chacha20-poly1305@openssh.com
222
223 The default is:
224
225 chacha20-poly1305@openssh.com,
226 aes128-ctr,aes192-ctr,aes256-ctr,
227 aes128-gcm@openssh.com,aes256-gcm@openssh.com
228
229 The list of available ciphers may also be obtained using "ssh -Q
230 cipher".
231
232 ClearAllForwardings
233 Specifies that all local, remote, and dynamic port forwardings
234 specified in the configuration files or on the command line be
235 cleared. This option is primarily useful when used from the
236 ssh(1) command line to clear port forwardings set in
237 configuration files, and is automatically set by scp(1) and
238 sftp(1). The argument must be yes or no (the default).
239
240 Compression
241 Specifies whether to use compression. The argument must be yes
242 or no (the default).
243
244 ConnectionAttempts
245 Specifies the number of tries (one per second) to make before
246 exiting. The argument must be an integer. This may be useful in
247 scripts if the connection sometimes fails. The default is 1.
248
249 ConnectTimeout
250 Specifies the timeout (in seconds) used when connecting to the
251 SSH server, instead of using the default system TCP timeout.
252 This value is used only when the target is down or really
253 unreachable, not when it refuses the connection.
254
255 ControlMaster
256 Enables the sharing of multiple sessions over a single network
257 connection. When set to yes, ssh(1) will listen for connections
258 on a control socket specified using the ControlPath argument.
259 Additional sessions can connect to this socket using the same
260 ControlPath with ControlMaster set to no (the default). These
261 sessions will try to reuse the master instance's network
262 connection rather than initiating new ones, but will fall back to
263 connecting normally if the control socket does not exist, or is
264 not listening.
265
266 Setting this to ask will cause ssh(1) to listen for control
267 connections, but require confirmation using ssh-askpass(1). If
268 the ControlPath cannot be opened, ssh(1) will continue without
269 connecting to a master instance.
270
271 X11 and ssh-agent(1) forwarding is supported over these
272 multiplexed connections, however the display and agent forwarded
273 will be the one belonging to the master connection i.e. it is not
274 possible to forward multiple displays or agents.
275
276 Two additional options allow for opportunistic multiplexing: try
277 to use a master connection but fall back to creating a new one if
278 one does not already exist. These options are: auto and autoask.
279 The latter requires confirmation like the ask option.
280
281 ControlPath
282 Specify the path to the control socket used for connection
283 sharing as described in the ControlMaster section above or the
284 string none to disable connection sharing. Arguments to
285 ControlPath may use the tilde syntax to refer to a user's home
286 directory or the tokens described in the TOKENS section. It is
287 recommended that any ControlPath used for opportunistic
288 connection sharing include at least %h, %p, and %r (or
289 alternatively %C) and be placed in a directory that is not
290 writable by other users. This ensures that shared connections
291 are uniquely identified.
292
293 ControlPersist
294 When used in conjunction with ControlMaster, specifies that the
295 master connection should remain open in the background (waiting
296 for future client connections) after the initial client
297 connection has been closed. If set to no, then the master
298 connection will not be placed into the background, and will close
299 as soon as the initial client connection is closed. If set to
300 yes or 0, then the master connection will remain in the
301 background indefinitely (until killed or closed via a mechanism
302 such as the "ssh -O exit"). If set to a time in seconds, or a
303 time in any of the formats documented in sshd_config(5), then the
304 backgrounded master connection will automatically terminate after
305 it has remained idle (with no client connections) for the
306 specified time.
307
308 DynamicForward
309 Specifies that a TCP port on the local machine be forwarded over
310 the secure channel, and the application protocol is then used to
311 determine where to connect to from the remote machine.
312
313 The argument must be [bind_address:]port. IPv6 addresses can be
314 specified by enclosing addresses in square brackets. By default,
315 the local port is bound in accordance with the GatewayPorts
316 setting. However, an explicit bind_address may be used to bind
317 the connection to a specific address. The bind_address of
318 localhost indicates that the listening port be bound for local
319 use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates that the port
320 should be available from all interfaces.
321
322 Currently the SOCKS4 and SOCKS5 protocols are supported, and
323 ssh(1) will act as a SOCKS server. Multiple forwardings may be
324 specified, and additional forwardings can be given on the command
325 line. Only the superuser can forward privileged ports.
326
327 EnableSSHKeysign
328 Setting this option to yes in the global client configuration
329 file /etc/ssh/ssh_config enables the use of the helper program
330 ssh-keysign(8) during HostbasedAuthentication. The argument must
331 be yes or no (the default). This option should be placed in the
332 non-hostspecific section. See ssh-keysign(8) for more
333 information.
334
335 EscapeChar
336 Sets the escape character (default: M-bM-^@M-^X~M-bM-^@M-^Y). The escape character
337 can also be set on the command line. The argument should be a
338 single character, M-bM-^@M-^X^M-bM-^@M-^Y followed by a letter, or none to disable
339 the escape character entirely (making the connection transparent
340 for binary data).
341
342 ExitOnForwardFailure
343 Specifies whether ssh(1) should terminate the connection if it
344 cannot set up all requested dynamic, tunnel, local, and remote
345 port forwardings, (e.g. if either end is unable to bind and
346 listen on a specified port). Note that ExitOnForwardFailure does
347 not apply to connections made over port forwardings and will not,
348 for example, cause ssh(1) to exit if TCP connections to the
349 ultimate forwarding destination fail. The argument must be yes
350 or no (the default).
351
352 FingerprintHash
353 Specifies the hash algorithm used when displaying key
354 fingerprints. Valid options are: md5 and sha256 (the default).
355
356 ForwardAgent
357 Specifies whether the connection to the authentication agent (if
358 any) will be forwarded to the remote machine. The argument must
359 be yes or no (the default).
360
361 Agent forwarding should be enabled with caution. Users with the
362 ability to bypass file permissions on the remote host (for the
363 agent's Unix-domain socket) can access the local agent through
364 the forwarded connection. An attacker cannot obtain key material
365 from the agent, however they can perform operations on the keys
366 that enable them to authenticate using the identities loaded into
367 the agent.
368
369 ForwardX11
370 Specifies whether X11 connections will be automatically
371 redirected over the secure channel and DISPLAY set. The argument
372 must be yes or no (the default).
373
374 X11 forwarding should be enabled with caution. Users with the
375 ability to bypass file permissions on the remote host (for the
376 user's X11 authorization database) can access the local X11
377 display through the forwarded connection. An attacker may then
378 be able to perform activities such as keystroke monitoring if the
379 ForwardX11Trusted option is also enabled.
380
381 ForwardX11Timeout
382 Specify a timeout for untrusted X11 forwarding using the format
383 described in the TIME FORMATS section of sshd_config(5). X11
384 connections received by ssh(1) after this time will be refused.
385 Setting ForwardX11Timeout to zero will disable the timeout and
386 permit X11 forwarding for the life of the connection. The
387 default is to disable untrusted X11 forwarding after twenty
388 minutes has elapsed.
389
390 ForwardX11Trusted
391 If this option is set to yes, remote X11 clients will have full
392 access to the original X11 display.
393
394 If this option is set to no (the default), remote X11 clients
395 will be considered untrusted and prevented from stealing or
396 tampering with data belonging to trusted X11 clients.
397 Furthermore, the xauth(1) token used for the session will be set
398 to expire after 20 minutes. Remote clients will be refused
399 access after this time.
400
401 See the X11 SECURITY extension specification for full details on
402 the restrictions imposed on untrusted clients.
403
404 GatewayPorts
405 Specifies whether remote hosts are allowed to connect to local
406 forwarded ports. By default, ssh(1) binds local port forwardings
407 to the loopback address. This prevents other remote hosts from
408 connecting to forwarded ports. GatewayPorts can be used to
409 specify that ssh should bind local port forwardings to the
410 wildcard address, thus allowing remote hosts to connect to
411 forwarded ports. The argument must be yes or no (the default).
412
413 GlobalKnownHostsFile
414 Specifies one or more files to use for the global host key
415 database, separated by whitespace. The default is
416 /etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2.
417
418 GSSAPIAuthentication
419 Specifies whether user authentication based on GSSAPI is allowed.
420 The default is no.
421
422 GSSAPIDelegateCredentials
423 Forward (delegate) credentials to the server. The default is no.
424
425 HashKnownHosts
426 Indicates that ssh(1) should hash host names and addresses when
427 they are added to ~/.ssh/known_hosts. These hashed names may be
428 used normally by ssh(1) and sshd(8), but they do not reveal
429 identifying information should the file's contents be disclosed.
430 The default is no. Note that existing names and addresses in
431 known hosts files will not be converted automatically, but may be
432 manually hashed using ssh-keygen(1).
433
434 HostbasedAuthentication
435 Specifies whether to try rhosts based authentication with public
436 key authentication. The argument must be yes or no (the
437 default).
438
439 HostbasedKeyTypes
440 Specifies the key types that will be used for hostbased
441 authentication as a comma-separated list of patterns.
442 Alternately if the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
443 then the specified key types will be appended to the default set
444 instead of replacing them. If the specified value begins with a
445 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards)
446 will be removed from the default set instead of replacing them.
447 The default for this option is:
448
449 ecdsa-sha2-nistp256-cert-v01@openssh.com,
450 ecdsa-sha2-nistp384-cert-v01@openssh.com,
451 ecdsa-sha2-nistp521-cert-v01@openssh.com,
452 ssh-ed25519-cert-v01@openssh.com,
453 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
454 ssh-rsa-cert-v01@openssh.com,
455 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
456 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
457
458 The -Q option of ssh(1) may be used to list supported key types.
459
460 HostKeyAlgorithms
461 Specifies the host key algorithms that the client wants to use in
462 order of preference. Alternately if the specified value begins
463 with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified key types will be
464 appended to the default set instead of replacing them. If the
465 specified value begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified
466 key types (including wildcards) will be removed from the default
467 set instead of replacing them. The default for this option is:
468
469 ecdsa-sha2-nistp256-cert-v01@openssh.com,
470 ecdsa-sha2-nistp384-cert-v01@openssh.com,
471 ecdsa-sha2-nistp521-cert-v01@openssh.com,
472 ssh-ed25519-cert-v01@openssh.com,
473 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
474 ssh-rsa-cert-v01@openssh.com,
475 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
476 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
477
478 If hostkeys are known for the destination host then this default
479 is modified to prefer their algorithms.
480
481 The list of available key types may also be obtained using "ssh
482 -Q key".
483
484 HostKeyAlias
485 Specifies an alias that should be used instead of the real host
486 name when looking up or saving the host key in the host key
487 database files and when validating host certificates. This
488 option is useful for tunneling SSH connections or for multiple
489 servers running on a single host.
490
491 HostName
492 Specifies the real host name to log into. This can be used to
493 specify nicknames or abbreviations for hosts. Arguments to
494 HostName accept the tokens described in the TOKENS section.
495 Numeric IP addresses are also permitted (both on the command line
496 and in HostName specifications). The default is the name given
497 on the command line.
498
499 IdentitiesOnly
500 Specifies that ssh(1) should only use the authentication identity
501 and certificate files explicitly configured in the ssh_config
502 files or passed on the ssh(1) command-line, even if ssh-agent(1)
503 or a PKCS11Provider offers more identities. The argument to this
504 keyword must be yes or no (the default). This option is intended
505 for situations where ssh-agent offers many different identities.
506
507 IdentityAgent
508 Specifies the UNIX-domain socket used to communicate with the
509 authentication agent.
510
511 This option overrides the SSH_AUTH_SOCK environment variable and
512 can be used to select a specific agent. Setting the socket name
513 to none disables the use of an authentication agent. If the
514 string "SSH_AUTH_SOCK" is specified, the location of the socket
515 will be read from the SSH_AUTH_SOCK environment variable.
516 Otherwise if the specified value begins with a M-bM-^@M-^X$M-bM-^@M-^Y character,
517 then it will be treated as an environment variable containing the
518 location of the socket.
519
520 Arguments to IdentityAgent may use the tilde syntax to refer to a
521 user's home directory or the tokens described in the TOKENS
522 section.
523
524 IdentityFile
525 Specifies a file from which the user's DSA, ECDSA, Ed25519 or RSA
526 authentication identity is read. The default is ~/.ssh/id_dsa,
527 ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and ~/.ssh/id_rsa.
528 Additionally, any identities represented by the authentication
529 agent will be used for authentication unless IdentitiesOnly is
530 set. If no certificates have been explicitly specified by
531 CertificateFile, ssh(1) will try to load certificate information
532 from the filename obtained by appending -cert.pub to the path of
533 a specified IdentityFile.
534
535 Arguments to IdentityFile may use the tilde syntax to refer to a
536 user's home directory or the tokens described in the TOKENS
537 section.
538
539 It is possible to have multiple identity files specified in
540 configuration files; all these identities will be tried in
541 sequence. Multiple IdentityFile directives will add to the list
542 of identities tried (this behaviour differs from that of other
543 configuration directives).
544
545 IdentityFile may be used in conjunction with IdentitiesOnly to
546 select which identities in an agent are offered during
547 authentication. IdentityFile may also be used in conjunction
548 with CertificateFile in order to provide any certificate also
549 needed for authentication with the identity.
550
551 IgnoreUnknown
552 Specifies a pattern-list of unknown options to be ignored if they
553 are encountered in configuration parsing. This may be used to
554 suppress errors if ssh_config contains options that are
555 unrecognised by ssh(1). It is recommended that IgnoreUnknown be
556 listed early in the configuration file as it will not be applied
557 to unknown options that appear before it.
558
559 Include
560 Include the specified configuration file(s). Multiple pathnames
561 may be specified and each pathname may contain glob(7) wildcards
562 and, for user configurations, shell-like M-bM-^@M-^X~M-bM-^@M-^Y references to user
563 home directories. Files without absolute paths are assumed to be
564 in ~/.ssh if included in a user configuration file or /etc/ssh if
565 included from the system configuration file. Include directive
566 may appear inside a Match or Host block to perform conditional
567 inclusion.
568
569 IPQoS Specifies the IPv4 type-of-service or DSCP class for connections.
570 Accepted values are af11, af12, af13, af21, af22, af23, af31,
571 af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, cs4, cs5, cs6,
572 cs7, ef, lowdelay, throughput, reliability, a numeric value, or
573 none to use the operating system default. This option may take
574 one or two arguments, separated by whitespace. If one argument
575 is specified, it is used as the packet class unconditionally. If
576 two values are specified, the first is automatically selected for
577 interactive sessions and the second for non-interactive sessions.
578 The default is af21 (Low-Latency Data) for interactive sessions
579 and cs1 (Lower Effort) for non-interactive sessions.
580
581 KbdInteractiveAuthentication
582 Specifies whether to use keyboard-interactive authentication.
583 The argument to this keyword must be yes (the default) or no.
584
585 KbdInteractiveDevices
586 Specifies the list of methods to use in keyboard-interactive
587 authentication. Multiple method names must be comma-separated.
588 The default is to use the server specified list. The methods
589 available vary depending on what the server supports. For an
590 OpenSSH server, it may be zero or more of: bsdauth and pam.
591
592 KexAlgorithms
593 Specifies the available KEX (Key Exchange) algorithms. Multiple
594 algorithms must be comma-separated. Alternately if the specified
595 value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified methods
596 will be appended to the default set instead of replacing them.
597 If the specified value begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the
598 specified methods (including wildcards) will be removed from the
599 default set instead of replacing them. The default is:
600
601 curve25519-sha256,curve25519-sha256@libssh.org,
602 ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
603 diffie-hellman-group-exchange-sha256,
604 diffie-hellman-group16-sha512,
605 diffie-hellman-group18-sha512,
606 diffie-hellman-group-exchange-sha1,
607 diffie-hellman-group14-sha256,
608 diffie-hellman-group14-sha1
609
610 The list of available key exchange algorithms may also be
611 obtained using "ssh -Q kex".
612
613 LocalCommand
614 Specifies a command to execute on the local machine after
615 successfully connecting to the server. The command string
616 extends to the end of the line, and is executed with the user's
617 shell. Arguments to LocalCommand accept the tokens described in
618 the TOKENS section.
619
620 The command is run synchronously and does not have access to the
621 session of the ssh(1) that spawned it. It should not be used for
622 interactive commands.
623
624 This directive is ignored unless PermitLocalCommand has been
625 enabled.
626
627 LocalForward
628 Specifies that a TCP port on the local machine be forwarded over
629 the secure channel to the specified host and port from the remote
630 machine. The first argument must be [bind_address:]port and the
631 second argument must be host:hostport. IPv6 addresses can be
632 specified by enclosing addresses in square brackets. Multiple
633 forwardings may be specified, and additional forwardings can be
634 given on the command line. Only the superuser can forward
635 privileged ports. By default, the local port is bound in
636 accordance with the GatewayPorts setting. However, an explicit
637 bind_address may be used to bind the connection to a specific
638 address. The bind_address of localhost indicates that the
639 listening port be bound for local use only, while an empty
640 address or M-bM-^@M-^X*M-bM-^@M-^Y indicates that the port should be available from
641 all interfaces.
642
643 LogLevel
644 Gives the verbosity level that is used when logging messages from
645 ssh(1). The possible values are: QUIET, FATAL, ERROR, INFO,
646 VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO.
647 DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify
648 higher levels of verbose output.
649
650 MACs Specifies the MAC (message authentication code) algorithms in
651 order of preference. The MAC algorithm is used for data
652 integrity protection. Multiple algorithms must be comma-
653 separated. If the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
654 then the specified algorithms will be appended to the default set
655 instead of replacing them. If the specified value begins with a
656 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified algorithms (including
657 wildcards) will be removed from the default set instead of
658 replacing them.
659
660 The algorithms that contain "-etm" calculate the MAC after
661 encryption (encrypt-then-mac). These are considered safer and
662 their use recommended.
663
664 The default is:
665
666 umac-64-etm@openssh.com,umac-128-etm@openssh.com,
667 hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,
668 hmac-sha1-etm@openssh.com,
669 umac-64@openssh.com,umac-128@openssh.com,
670 hmac-sha2-256,hmac-sha2-512,hmac-sha1
671
672 The list of available MAC algorithms may also be obtained using
673 "ssh -Q mac".
674
675 NoHostAuthenticationForLocalhost
676 Disable host authentication for localhost (loopback addresses).
677 The argument to this keyword must be yes or no (the default).
678
679 NumberOfPasswordPrompts
680 Specifies the number of password prompts before giving up. The
681 argument to this keyword must be an integer. The default is 3.
682
683 PasswordAuthentication
684 Specifies whether to use password authentication. The argument
685 to this keyword must be yes (the default) or no.
686
687 PermitLocalCommand
688 Allow local command execution via the LocalCommand option or
689 using the !command escape sequence in ssh(1). The argument must
690 be yes or no (the default).
691
692 PKCS11Provider
693 Specifies which PKCS#11 provider to use. The argument to this
694 keyword is the PKCS#11 shared library ssh(1) should use to
695 communicate with a PKCS#11 token providing the user's private RSA
696 key.
697
698 Port Specifies the port number to connect on the remote host. The
699 default is 22.
700
701 PreferredAuthentications
702 Specifies the order in which the client should try authentication
703 methods. This allows a client to prefer one method (e.g.
704 keyboard-interactive) over another method (e.g. password). The
705 default is:
706
707 gssapi-with-mic,hostbased,publickey,
708 keyboard-interactive,password
709
710 ProxyCommand
711 Specifies the command to use to connect to the server. The
712 command string extends to the end of the line, and is executed
713 using the user's shell M-bM-^@M-^XexecM-bM-^@M-^Y directive to avoid a lingering
714 shell process.
715
716 Arguments to ProxyCommand accept the tokens described in the
717 TOKENS section. The command can be basically anything, and
718 should read from its standard input and write to its standard
719 output. It should eventually connect an sshd(8) server running
720 on some machine, or execute sshd -i somewhere. Host key
721 management will be done using the HostName of the host being
722 connected (defaulting to the name typed by the user). Setting
723 the command to none disables this option entirely. Note that
724 CheckHostIP is not available for connects with a proxy command.
725
726 This directive is useful in conjunction with nc(1) and its proxy
727 support. For example, the following directive would connect via
728 an HTTP proxy at 192.0.2.0:
729
730 ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p
731
732 ProxyJump
733 Specifies one or more jump proxies as either [user@]host[:port]
734 or an ssh URI. Multiple proxies may be separated by comma
735 characters and will be visited sequentially. Setting this option
736 will cause ssh(1) to connect to the target host by first making a
737 ssh(1) connection to the specified ProxyJump host and then
738 establishing a TCP forwarding to the ultimate target from there.
739
740 Note that this option will compete with the ProxyCommand option -
741 whichever is specified first will prevent later instances of the
742 other from taking effect.
743
744 ProxyUseFdpass
745 Specifies that ProxyCommand will pass a connected file descriptor
746 back to ssh(1) instead of continuing to execute and pass data.
747 The default is no.
748
749 PubkeyAcceptedKeyTypes
750 Specifies the key types that will be used for public key
751 authentication as a comma-separated list of patterns.
752 Alternately if the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
753 then the key types after it will be appended to the default
754 instead of replacing it. If the specified value begins with a
755 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards)
756 will be removed from the default set instead of replacing them.
757 The default for this option is:
758
759 ecdsa-sha2-nistp256-cert-v01@openssh.com,
760 ecdsa-sha2-nistp384-cert-v01@openssh.com,
761 ecdsa-sha2-nistp521-cert-v01@openssh.com,
762 ssh-ed25519-cert-v01@openssh.com,
763 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
764 ssh-rsa-cert-v01@openssh.com,
765 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
766 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
767
768 The list of available key types may also be obtained using "ssh
769 -Q key".
770
771 PubkeyAuthentication
772 Specifies whether to try public key authentication. The argument
773 to this keyword must be yes (the default) or no.
774
775 RekeyLimit
776 Specifies the maximum amount of data that may be transmitted
777 before the session key is renegotiated, optionally followed a
778 maximum amount of time that may pass before the session key is
779 renegotiated. The first argument is specified in bytes and may
780 have a suffix of M-bM-^@M-^XKM-bM-^@M-^Y, M-bM-^@M-^XMM-bM-^@M-^Y, or M-bM-^@M-^XGM-bM-^@M-^Y to indicate Kilobytes,
781 Megabytes, or Gigabytes, respectively. The default is between
782 M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second
783 value is specified in seconds and may use any of the units
784 documented in the TIME FORMATS section of sshd_config(5). The
785 default value for RekeyLimit is default none, which means that
786 rekeying is performed after the cipher's default amount of data
787 has been sent or received and no time based rekeying is done.
788
789 RemoteCommand
790 Specifies a command to execute on the remote machine after
791 successfully connecting to the server. The command string
792 extends to the end of the line, and is executed with the user's
793 shell. Arguments to RemoteCommand accept the tokens described in
794 the TOKENS section.
795
796 RemoteForward
797 Specifies that a TCP port on the remote machine be forwarded over
798 the secure channel. The remote port may either be forwarded to a
799 specified host and port from the local machine, or may act as a
800 SOCKS 4/5 proxy that allows a remote client to connect to
801 arbitrary destinations from the local machine. The first
802 argument must be [bind_address:]port If forwarding to a specific
803 destination then the second argument must be host:hostport,
804 otherwise if no destination argument is specified then the remote
805 forwarding will be established as a SOCKS proxy.
806
807 IPv6 addresses can be specified by enclosing addresses in square
808 brackets. Multiple forwardings may be specified, and additional
809 forwardings can be given on the command line. Privileged ports
810 can be forwarded only when logging in as root on the remote
811 machine.
812
813 If the port argument is 0, the listen port will be dynamically
814 allocated on the server and reported to the client at run time.
815
816 If the bind_address is not specified, the default is to only bind
817 to loopback addresses. If the bind_address is M-bM-^@M-^X*M-bM-^@M-^Y or an empty
818 string, then the forwarding is requested to listen on all
819 interfaces. Specifying a remote bind_address will only succeed
820 if the server's GatewayPorts option is enabled (see
821 sshd_config(5)).
822
823 RequestTTY
824 Specifies whether to request a pseudo-tty for the session. The
825 argument may be one of: no (never request a TTY), yes (always
826 request a TTY when standard input is a TTY), force (always
827 request a TTY) or auto (request a TTY when opening a login
828 session). This option mirrors the -t and -T flags for ssh(1).
829
830 RevokedHostKeys
831 Specifies revoked host public keys. Keys listed in this file
832 will be refused for host authentication. Note that if this file
833 does not exist or is not readable, then host authentication will
834 be refused for all hosts. Keys may be specified as a text file,
835 listing one public key per line, or as an OpenSSH Key Revocation
836 List (KRL) as generated by ssh-keygen(1). For more information
837 on KRLs, see the KEY REVOCATION LISTS section in ssh-keygen(1).
838
839 SendEnv
840 Specifies what variables from the local environ(7) should be sent
841 to the server. The server must also support it, and the server
842 must be configured to accept these environment variables. Note
843 that the TERM environment variable is always sent whenever a
844 pseudo-terminal is requested as it is required by the protocol.
845 Refer to AcceptEnv in sshd_config(5) for how to configure the
846 server. Variables are specified by name, which may contain
847 wildcard characters. Multiple environment variables may be
848 separated by whitespace or spread across multiple SendEnv
849 directives.
850
851 See PATTERNS for more information on patterns.
852
853 It is possible to clear previously set SendEnv variable names by
854 prefixing patterns with -. The default is not to send any
855 environment variables.
856
857 ServerAliveCountMax
858 Sets the number of server alive messages (see below) which may be
859 sent without ssh(1) receiving any messages back from the server.
860 If this threshold is reached while server alive messages are
861 being sent, ssh will disconnect from the server, terminating the
862 session. It is important to note that the use of server alive
863 messages is very different from TCPKeepAlive (below). The server
864 alive messages are sent through the encrypted channel and
865 therefore will not be spoofable. The TCP keepalive option
866 enabled by TCPKeepAlive is spoofable. The server alive mechanism
867 is valuable when the client or server depend on knowing when a
868 connection has become inactive.
869
870 The default value is 3. If, for example, ServerAliveInterval
871 (see below) is set to 15 and ServerAliveCountMax is left at the
872 default, if the server becomes unresponsive, ssh will disconnect
873 after approximately 45 seconds.
874
875 ServerAliveInterval
876 Sets a timeout interval in seconds after which if no data has
877 been received from the server, ssh(1) will send a message through
878 the encrypted channel to request a response from the server. The
879 default is 0, indicating that these messages will not be sent to
880 the server.
881
882 SetEnv Directly specify one or more environment variables and their
883 contents to be sent to the server. Similarly to SendEnv, the
884 server must be prepared to accept the environment variable.
885
886 StreamLocalBindMask
887 Sets the octal file creation mode mask (umask) used when creating
888 a Unix-domain socket file for local or remote port forwarding.
889 This option is only used for port forwarding to a Unix-domain
890 socket file.
891
892 The default value is 0177, which creates a Unix-domain socket
893 file that is readable and writable only by the owner. Note that
894 not all operating systems honor the file mode on Unix-domain
895 socket files.
896
897 StreamLocalBindUnlink
898 Specifies whether to remove an existing Unix-domain socket file
899 for local or remote port forwarding before creating a new one.
900 If the socket file already exists and StreamLocalBindUnlink is
901 not enabled, ssh will be unable to forward the port to the Unix-
902 domain socket file. This option is only used for port forwarding
903 to a Unix-domain socket file.
904
905 The argument must be yes or no (the default).
906
907 StrictHostKeyChecking
908 If this flag is set to yes, ssh(1) will never automatically add
909 host keys to the ~/.ssh/known_hosts file, and refuses to connect
910 to hosts whose host key has changed. This provides maximum
911 protection against man-in-the-middle (MITM) attacks, though it
912 can be annoying when the /etc/ssh/ssh_known_hosts file is poorly
913 maintained or when connections to new hosts are frequently made.
914 This option forces the user to manually add all new hosts.
915
916 If this flag is set to M-bM-^@M-^\accept-newM-bM-^@M-^] then ssh will automatically
917 add new host keys to the user known hosts files, but will not
918 permit connections to hosts with changed host keys. If this flag
919 is set to M-bM-^@M-^\noM-bM-^@M-^] or M-bM-^@M-^\offM-bM-^@M-^], ssh will automatically add new host keys
920 to the user known hosts files and allow connections to hosts with
921 changed hostkeys to proceed, subject to some restrictions. If
922 this flag is set to ask (the default), new host keys will be
923 added to the user known host files only after the user has
924 confirmed that is what they really want to do, and ssh will
925 refuse to connect to hosts whose host key has changed. The host
926 keys of known hosts will be verified automatically in all cases.
927
928 SyslogFacility
929 Gives the facility code that is used when logging messages from
930 ssh(1). The possible values are: DAEMON, USER, AUTH, LOCAL0,
931 LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The
932 default is USER.
933
934 TCPKeepAlive
935 Specifies whether the system should send TCP keepalive messages
936 to the other side. If they are sent, death of the connection or
937 crash of one of the machines will be properly noticed. However,
938 this means that connections will die if the route is down
939 temporarily, and some people find it annoying.
940
941 The default is yes (to send TCP keepalive messages), and the
942 client will notice if the network goes down or the remote host
943 dies. This is important in scripts, and many users want it too.
944
945 To disable TCP keepalive messages, the value should be set to no.
946 See also ServerAliveInterval for protocol-level keepalives.
947
948 Tunnel Request tun(4) device forwarding between the client and the
949 server. The argument must be yes, point-to-point (layer 3),
950 ethernet (layer 2), or no (the default). Specifying yes requests
951 the default tunnel mode, which is point-to-point.
952
953 TunnelDevice
954 Specifies the tun(4) devices to open on the client (local_tun)
955 and the server (remote_tun).
956
957 The argument must be local_tun[:remote_tun]. The devices may be
958 specified by numerical ID or the keyword any, which uses the next
959 available tunnel device. If remote_tun is not specified, it
960 defaults to any. The default is any:any.
961
962 UpdateHostKeys
963 Specifies whether ssh(1) should accept notifications of
964 additional hostkeys from the server sent after authentication has
965 completed and add them to UserKnownHostsFile. The argument must
966 be yes, no (the default) or ask. Enabling this option allows
967 learning alternate hostkeys for a server and supports graceful
968 key rotation by allowing a server to send replacement public keys
969 before old ones are removed. Additional hostkeys are only
970 accepted if the key used to authenticate the host was already
971 trusted or explicitly accepted by the user. If UpdateHostKeys is
972 set to ask, then the user is asked to confirm the modifications
973 to the known_hosts file. Confirmation is currently incompatible
974 with ControlPersist, and will be disabled if it is enabled.
975
976 Presently, only sshd(8) from OpenSSH 6.8 and greater support the
977 "hostkeys@openssh.com" protocol extension used to inform the
978 client of all the server's hostkeys.
979
980 User Specifies the user to log in as. This can be useful when a
981 different user name is used on different machines. This saves
982 the trouble of having to remember to give the user name on the
983 command line.
984
985 UserKnownHostsFile
986 Specifies one or more files to use for the user host key
987 database, separated by whitespace. The default is
988 ~/.ssh/known_hosts, ~/.ssh/known_hosts2.
989
990 VerifyHostKeyDNS
991 Specifies whether to verify the remote key using DNS and SSHFP
992 resource records. If this option is set to yes, the client will
993 implicitly trust keys that match a secure fingerprint from DNS.
994 Insecure fingerprints will be handled as if this option was set
995 to ask. If this option is set to ask, information on fingerprint
996 match will be displayed, but the user will still need to confirm
997 new host keys according to the StrictHostKeyChecking option. The
998 default is no.
999
1000 See also VERIFYING HOST KEYS in ssh(1).
1001
1002 VisualHostKey
1003 If this flag is set to yes, an ASCII art representation of the
1004 remote host key fingerprint is printed in addition to the
1005 fingerprint string at login and for unknown host keys. If this
1006 flag is set to no (the default), no fingerprint strings are
1007 printed at login and only the fingerprint string will be printed
1008 for unknown host keys.
1009
1010 XAuthLocation
1011 Specifies the full pathname of the xauth(1) program. The default
1012 is /usr/X11R6/bin/xauth.
1013
1014PATTERNS
1015 A pattern consists of zero or more non-whitespace characters, M-bM-^@M-^X*M-bM-^@M-^Y (a
1016 wildcard that matches zero or more characters), or M-bM-^@M-^X?M-bM-^@M-^Y (a wildcard that
1017 matches exactly one character). For example, to specify a set of
1018 declarations for any host in the ".co.uk" set of domains, the following
1019 pattern could be used:
1020
1021 Host *.co.uk
1022
1023 The following pattern would match any host in the 192.168.0.[0-9] network
1024 range:
1025
1026 Host 192.168.0.?
1027
1028 A pattern-list is a comma-separated list of patterns. Patterns within
1029 pattern-lists may be negated by preceding them with an exclamation mark
1030 (M-bM-^@M-^X!M-bM-^@M-^Y). For example, to allow a key to be used from anywhere within an
1031 organization except from the "dialup" pool, the following entry (in
1032 authorized_keys) could be used:
1033
1034 from="!*.dialup.example.com,*.example.com"
1035
1036 Note that a negated match will never produce a positive result by itself.
1037 For example, attempting to match "host3" against the following pattern-
1038 list will fail:
1039
1040 from="!host1,!host2"
1041
1042 The solution here is to include a term that will yield a positive match,
1043 such as a wildcard:
1044
1045 from="!host1,!host2,*"
1046
1047TOKENS
1048 Arguments to some keywords can make use of tokens, which are expanded at
1049 runtime:
1050
1051 %% A literal M-bM-^@M-^X%M-bM-^@M-^Y.
1052 %C Hash of %l%h%p%r.
1053 %d Local user's home directory.
1054 %h The remote hostname.
1055 %i The local user ID.
1056 %L The local hostname.
1057 %l The local hostname, including the domain name.
1058 %n The original remote hostname, as given on the command line.
1059 %p The remote port.
1060 %r The remote username.
1061 %T The local tun(4) or tap(4) network interface assigned if
1062 tunnel forwarding was requested, or "NONE" otherwise.
1063 %u The local username.
1064
1065 Match exec accepts the tokens %%, %h, %i, %L, %l, %n, %p, %r, and %u.
1066
1067 CertificateFile accepts the tokens %%, %d, %h, %i, %l, %r, and %u.
1068
1069 ControlPath accepts the tokens %%, %C, %h, %i, %L, %l, %n, %p, %r, and
1070 %u.
1071
1072 HostName accepts the tokens %% and %h.
1073
1074 IdentityAgent and IdentityFile accept the tokens %%, %d, %h, %i, %l, %r,
1075 and %u.
1076
1077 LocalCommand accepts the tokens %%, %C, %d, %h, %i, %l, %n, %p, %r, %T,
1078 and %u.
1079
1080 ProxyCommand accepts the tokens %%, %h, %p, and %r.
1081
1082 RemoteCommand accepts the tokens %%, %C, %d, %h, %i, %l, %n, %p, %r, and
1083 %u.
1084
1085FILES
1086 ~/.ssh/config
1087 This is the per-user configuration file. The format of this file
1088 is described above. This file is used by the SSH client.
1089 Because of the potential for abuse, this file must have strict
1090 permissions: read/write for the user, and not accessible by
1091 others.
1092
1093 /etc/ssh/ssh_config
1094 Systemwide configuration file. This file provides defaults for
1095 those values that are not specified in the user's configuration
1096 file, and for those users who do not have a configuration file.
1097 This file must be world-readable.
1098
1099SEE ALSO
1100 ssh(1)
1101
1102AUTHORS
1103 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
1104 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
1105 de Raadt and Dug Song removed many bugs, re-added newer features and
1106 created OpenSSH. Markus Friedl contributed the support for SSH protocol
1107 versions 1.5 and 2.0.
1108
1109OpenBSD 6.4 October 3, 2018 OpenBSD 6.4
diff --git a/sshd.0 b/sshd.0
new file mode 100644
index 000000000..ac7e70707
--- /dev/null
+++ b/sshd.0
@@ -0,0 +1,653 @@
1SSHD(8) System Manager's Manual SSHD(8)
2
3NAME
4 sshd M-bM-^@M-^S OpenSSH SSH daemon
5
6SYNOPSIS
7 sshd [-46DdeiqTt] [-C connection_spec] [-c host_certificate_file]
8 [-E log_file] [-f config_file] [-g login_grace_time]
9 [-h host_key_file] [-o option] [-p port] [-u len]
10
11DESCRIPTION
12 sshd (OpenSSH Daemon) is the daemon program for ssh(1). Together these
13 programs replace rlogin and rsh, and provide secure encrypted
14 communications between two untrusted hosts over an insecure network.
15
16 sshd listens for connections from clients. It is normally started at
17 boot from /etc/rc. It forks a new daemon for each incoming connection.
18 The forked daemons handle key exchange, encryption, authentication,
19 command execution, and data exchange.
20
21 sshd can be configured using command-line options or a configuration file
22 (by default sshd_config(5)); command-line options override values
23 specified in the configuration file. sshd rereads its configuration file
24 when it receives a hangup signal, SIGHUP, by executing itself with the
25 name and options it was started with, e.g. /usr/sbin/sshd.
26
27 The options are as follows:
28
29 -4 Forces sshd to use IPv4 addresses only.
30
31 -6 Forces sshd to use IPv6 addresses only.
32
33 -C connection_spec
34 Specify the connection parameters to use for the -T extended test
35 mode. If provided, any Match directives in the configuration
36 file that would apply are applied before the configuration is
37 written to standard output. The connection parameters are
38 supplied as keyword=value pairs and may be supplied in any order,
39 either with multiple -C options or as a comma-separated list.
40 The keywords are M-bM-^@M-^\addr,M-bM-^@M-^] M-bM-^@M-^\userM-bM-^@M-^], M-bM-^@M-^\hostM-bM-^@M-^], M-bM-^@M-^\laddrM-bM-^@M-^], M-bM-^@M-^\lportM-bM-^@M-^], and
41 M-bM-^@M-^\rdomainM-bM-^@M-^] and correspond to source address, user, resolved source
42 host name, local address, local port number and routing domain
43 respectively.
44
45 -c host_certificate_file
46 Specifies a path to a certificate file to identify sshd during
47 key exchange. The certificate file must match a host key file
48 specified using the -h option or the HostKey configuration
49 directive.
50
51 -D When this option is specified, sshd will not detach and does not
52 become a daemon. This allows easy monitoring of sshd.
53
54 -d Debug mode. The server sends verbose debug output to standard
55 error, and does not put itself in the background. The server
56 also will not fork and will only process one connection. This
57 option is only intended for debugging for the server. Multiple
58 -d options increase the debugging level. Maximum is 3.
59
60 -E log_file
61 Append debug logs to log_file instead of the system log.
62
63 -e Write debug logs to standard error instead of the system log.
64
65 -f config_file
66 Specifies the name of the configuration file. The default is
67 /etc/ssh/sshd_config. sshd refuses to start if there is no
68 configuration file.
69
70 -g login_grace_time
71 Gives the grace time for clients to authenticate themselves
72 (default 120 seconds). If the client fails to authenticate the
73 user within this many seconds, the server disconnects and exits.
74 A value of zero indicates no limit.
75
76 -h host_key_file
77 Specifies a file from which a host key is read. This option must
78 be given if sshd is not run as root (as the normal host key files
79 are normally not readable by anyone but root). The default is
80 /etc/ssh/ssh_host_ecdsa_key, /etc/ssh/ssh_host_ed25519_key and
81 /etc/ssh/ssh_host_rsa_key. It is possible to have multiple host
82 key files for the different host key algorithms.
83
84 -i Specifies that sshd is being run from inetd(8).
85
86 -o option
87 Can be used to give options in the format used in the
88 configuration file. This is useful for specifying options for
89 which there is no separate command-line flag. For full details
90 of the options, and their values, see sshd_config(5).
91
92 -p port
93 Specifies the port on which the server listens for connections
94 (default 22). Multiple port options are permitted. Ports
95 specified in the configuration file with the Port option are
96 ignored when a command-line port is specified. Ports specified
97 using the ListenAddress option override command-line ports.
98
99 -q Quiet mode. Nothing is sent to the system log. Normally the
100 beginning, authentication, and termination of each connection is
101 logged.
102
103 -T Extended test mode. Check the validity of the configuration
104 file, output the effective configuration to stdout and then exit.
105 Optionally, Match rules may be applied by specifying the
106 connection parameters using one or more -C options.
107
108 -t Test mode. Only check the validity of the configuration file and
109 sanity of the keys. This is useful for updating sshd reliably as
110 configuration options may change.
111
112 -u len This option is used to specify the size of the field in the utmp
113 structure that holds the remote host name. If the resolved host
114 name is longer than len, the dotted decimal value will be used
115 instead. This allows hosts with very long host names that
116 overflow this field to still be uniquely identified. Specifying
117 -u0 indicates that only dotted decimal addresses should be put
118 into the utmp file. -u0 may also be used to prevent sshd from
119 making DNS requests unless the authentication mechanism or
120 configuration requires it. Authentication mechanisms that may
121 require DNS include HostbasedAuthentication and using a
122 from="pattern-list" option in a key file. Configuration options
123 that require DNS include using a USER@HOST pattern in AllowUsers
124 or DenyUsers.
125
126AUTHENTICATION
127 The OpenSSH SSH daemon supports SSH protocol 2 only. Each host has a
128 host-specific key, used to identify the host. Whenever a client
129 connects, the daemon responds with its public host key. The client
130 compares the host key against its own database to verify that it has not
131 changed. Forward security is provided through a Diffie-Hellman key
132 agreement. This key agreement results in a shared session key. The rest
133 of the session is encrypted using a symmetric cipher, currently 128-bit
134 AES, Blowfish, 3DES, CAST128, Arcfour, 192-bit AES, or 256-bit AES. The
135 client selects the encryption algorithm to use from those offered by the
136 server. Additionally, session integrity is provided through a
137 cryptographic message authentication code (hmac-md5, hmac-sha1, umac-64,
138 umac-128, hmac-sha2-256 or hmac-sha2-512).
139
140 Finally, the server and the client enter an authentication dialog. The
141 client tries to authenticate itself using host-based authentication,
142 public key authentication, challenge-response authentication, or password
143 authentication.
144
145 Regardless of the authentication type, the account is checked to ensure
146 that it is accessible. An account is not accessible if it is locked,
147 listed in DenyUsers or its group is listed in DenyGroups . The
148 definition of a locked account is system dependent. Some platforms have
149 their own account database (eg AIX) and some modify the passwd field (
150 M-bM-^@M-^X*LK*M-bM-^@M-^Y on Solaris and UnixWare, M-bM-^@M-^X*M-bM-^@M-^Y on HP-UX, containing M-bM-^@M-^XNologinM-bM-^@M-^Y on
151 Tru64, a leading M-bM-^@M-^X*LOCKED*M-bM-^@M-^Y on FreeBSD and a leading M-bM-^@M-^X!M-bM-^@M-^Y on most
152 Linuxes). If there is a requirement to disable password authentication
153 for the account while allowing still public-key, then the passwd field
154 should be set to something other than these values (eg M-bM-^@M-^XNPM-bM-^@M-^Y or M-bM-^@M-^X*NP*M-bM-^@M-^Y ).
155
156 If the client successfully authenticates itself, a dialog for preparing
157 the session is entered. At this time the client may request things like
158 allocating a pseudo-tty, forwarding X11 connections, forwarding TCP
159 connections, or forwarding the authentication agent connection over the
160 secure channel.
161
162 After this, the client either requests a shell or execution of a command.
163 The sides then enter session mode. In this mode, either side may send
164 data at any time, and such data is forwarded to/from the shell or command
165 on the server side, and the user terminal in the client side.
166
167 When the user program terminates and all forwarded X11 and other
168 connections have been closed, the server sends command exit status to the
169 client, and both sides exit.
170
171LOGIN PROCESS
172 When a user successfully logs in, sshd does the following:
173
174 1. If the login is on a tty, and no command has been specified,
175 prints last login time and /etc/motd (unless prevented in the
176 configuration file or by ~/.hushlogin; see the FILES section).
177
178 2. If the login is on a tty, records login time.
179
180 3. Checks /etc/nologin; if it exists, prints contents and quits
181 (unless root).
182
183 4. Changes to run with normal user privileges.
184
185 5. Sets up basic environment.
186
187 6. Reads the file ~/.ssh/environment, if it exists, and users are
188 allowed to change their environment. See the
189 PermitUserEnvironment option in sshd_config(5).
190
191 7. Changes to user's home directory.
192
193 8. If ~/.ssh/rc exists and the sshd_config(5) PermitUserRC option
194 is set, runs it; else if /etc/ssh/sshrc exists, runs it;
195 otherwise runs xauth. The M-bM-^@M-^\rcM-bM-^@M-^] files are given the X11
196 authentication protocol and cookie in standard input. See
197 SSHRC, below.
198
199 9. Runs user's shell or command. All commands are run under the
200 user's login shell as specified in the system password
201 database.
202
203SSHRC
204 If the file ~/.ssh/rc exists, sh(1) runs it after reading the environment
205 files but before starting the user's shell or command. It must not
206 produce any output on stdout; stderr must be used instead. If X11
207 forwarding is in use, it will receive the "proto cookie" pair in its
208 standard input (and DISPLAY in its environment). The script must call
209 xauth(1) because sshd will not run xauth automatically to add X11
210 cookies.
211
212 The primary purpose of this file is to run any initialization routines
213 which may be needed before the user's home directory becomes accessible;
214 AFS is a particular example of such an environment.
215
216 This file will probably contain some initialization code followed by
217 something similar to:
218
219 if read proto cookie && [ -n "$DISPLAY" ]; then
220 if [ `echo $DISPLAY | cut -c1-10` = 'localhost:' ]; then
221 # X11UseLocalhost=yes
222 echo add unix:`echo $DISPLAY |
223 cut -c11-` $proto $cookie
224 else
225 # X11UseLocalhost=no
226 echo add $DISPLAY $proto $cookie
227 fi | xauth -q -
228 fi
229
230 If this file does not exist, /etc/ssh/sshrc is run, and if that does not
231 exist either, xauth is used to add the cookie.
232
233AUTHORIZED_KEYS FILE FORMAT
234 AuthorizedKeysFile specifies the files containing public keys for public
235 key authentication; if this option is not specified, the default is
236 ~/.ssh/authorized_keys and ~/.ssh/authorized_keys2. Each line of the
237 file contains one key (empty lines and lines starting with a M-bM-^@M-^X#M-bM-^@M-^Y are
238 ignored as comments). Public keys consist of the following space-
239 separated fields: options, keytype, base64-encoded key, comment. The
240 options field is optional. The keytype is M-bM-^@M-^\ecdsa-sha2-nistp256M-bM-^@M-^],
241 M-bM-^@M-^\ecdsa-sha2-nistp384M-bM-^@M-^], M-bM-^@M-^\ecdsa-sha2-nistp521M-bM-^@M-^], M-bM-^@M-^\ssh-ed25519M-bM-^@M-^], M-bM-^@M-^\ssh-dssM-bM-^@M-^] or
242 M-bM-^@M-^\ssh-rsaM-bM-^@M-^]; the comment field is not used for anything (but may be
243 convenient for the user to identify the key).
244
245 Note that lines in this file can be several hundred bytes long (because
246 of the size of the public key encoding) up to a limit of 8 kilobytes,
247 which permits DSA keys up to 8 kilobits and RSA keys up to 16 kilobits.
248 You don't want to type them in; instead, copy the id_dsa.pub,
249 id_ecdsa.pub, id_ed25519.pub, or the id_rsa.pub file and edit it.
250
251 sshd enforces a minimum RSA key modulus size of 1024 bits.
252
253 The options (if present) consist of comma-separated option
254 specifications. No spaces are permitted, except within double quotes.
255 The following option specifications are supported (note that option
256 keywords are case-insensitive):
257
258 agent-forwarding
259 Enable authentication agent forwarding previously disabled by the
260 restrict option.
261
262 cert-authority
263 Specifies that the listed key is a certification authority (CA)
264 that is trusted to validate signed certificates for user
265 authentication.
266
267 Certificates may encode access restrictions similar to these key
268 options. If both certificate restrictions and key options are
269 present, the most restrictive union of the two is applied.
270
271 command="command"
272 Specifies that the command is executed whenever this key is used
273 for authentication. The command supplied by the user (if any) is
274 ignored. The command is run on a pty if the client requests a
275 pty; otherwise it is run without a tty. If an 8-bit clean
276 channel is required, one must not request a pty or should specify
277 no-pty. A quote may be included in the command by quoting it
278 with a backslash.
279
280 This option might be useful to restrict certain public keys to
281 perform just a specific operation. An example might be a key
282 that permits remote backups but nothing else. Note that the
283 client may specify TCP and/or X11 forwarding unless they are
284 explicitly prohibited, e.g. using the restrict key option.
285
286 The command originally supplied by the client is available in the
287 SSH_ORIGINAL_COMMAND environment variable. Note that this option
288 applies to shell, command or subsystem execution. Also note that
289 this command may be superseded by a sshd_config(5) ForceCommand
290 directive.
291
292 If a command is specified and a forced-command is embedded in a
293 certificate used for authentication, then the certificate will be
294 accepted only if the two commands are identical.
295
296 environment="NAME=value"
297 Specifies that the string is to be added to the environment when
298 logging in using this key. Environment variables set this way
299 override other default environment values. Multiple options of
300 this type are permitted. Environment processing is disabled by
301 default and is controlled via the PermitUserEnvironment option.
302
303 expiry-time="timespec"
304 Specifies a time after which the key will not be accepted. The
305 time may be specified as a YYYYMMDD date or a YYYYMMDDHHMM[SS]
306 time in the system time-zone.
307
308 from="pattern-list"
309 Specifies that in addition to public key authentication, either
310 the canonical name of the remote host or its IP address must be
311 present in the comma-separated list of patterns. See PATTERNS in
312 ssh_config(5) for more information on patterns.
313
314 In addition to the wildcard matching that may be applied to
315 hostnames or addresses, a from stanza may match IP addresses
316 using CIDR address/masklen notation.
317
318 The purpose of this option is to optionally increase security:
319 public key authentication by itself does not trust the network or
320 name servers or anything (but the key); however, if somebody
321 somehow steals the key, the key permits an intruder to log in
322 from anywhere in the world. This additional option makes using a
323 stolen key more difficult (name servers and/or routers would have
324 to be compromised in addition to just the key).
325
326 no-agent-forwarding
327 Forbids authentication agent forwarding when this key is used for
328 authentication.
329
330 no-port-forwarding
331 Forbids TCP forwarding when this key is used for authentication.
332 Any port forward requests by the client will return an error.
333 This might be used, e.g. in connection with the command option.
334
335 no-pty Prevents tty allocation (a request to allocate a pty will fail).
336
337 no-user-rc
338 Disables execution of ~/.ssh/rc.
339
340 no-X11-forwarding
341 Forbids X11 forwarding when this key is used for authentication.
342 Any X11 forward requests by the client will return an error.
343
344 permitlisten="[host:]port"
345 Limit remote port forwarding with the ssh(1) -R option such that
346 it may only listen on the specified host (optional) and port.
347 IPv6 addresses can be specified by enclosing the address in
348 square brackets. Multiple permitlisten options may be applied
349 separated by commas. Hostnames may include wildcards as
350 described in the PATTERNS section in ssh_config(5). A port
351 specification of * matches any port. Note that the setting of
352 GatewayPorts may further restrict listen addresses. Note that
353 ssh(1) will send a hostname of M-bM-^@M-^\localhostM-bM-^@M-^] if a listen host was
354 not specified when the forwarding was requested, and that this
355 name is treated differently to the explicit localhost addresses
356 M-bM-^@M-^\127.0.0.1M-bM-^@M-^] and M-bM-^@M-^\::1M-bM-^@M-^].
357
358 permitopen="host:port"
359 Limit local port forwarding with the ssh(1) -L option such that
360 it may only connect to the specified host and port. IPv6
361 addresses can be specified by enclosing the address in square
362 brackets. Multiple permitopen options may be applied separated
363 by commas. No pattern matching is performed on the specified
364 hostnames, they must be literal domains or addresses. A port
365 specification of * matches any port.
366
367 port-forwarding
368 Enable port forwarding previously disabled by the restrict
369 option.
370
371 principals="principals"
372 On a cert-authority line, specifies allowed principals for
373 certificate authentication as a comma-separated list. At least
374 one name from the list must appear in the certificate's list of
375 principals for the certificate to be accepted. This option is
376 ignored for keys that are not marked as trusted certificate
377 signers using the cert-authority option.
378
379 pty Permits tty allocation previously disabled by the restrict
380 option.
381
382 restrict
383 Enable all restrictions, i.e. disable port, agent and X11
384 forwarding, as well as disabling PTY allocation and execution of
385 ~/.ssh/rc. If any future restriction capabilities are added to
386 authorized_keys files they will be included in this set.
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 user-rc
394 Enables execution of ~/.ssh/rc previously disabled by the
395 restrict option.
396
397 X11-forwarding
398 Permits X11 forwarding previously disabled by the restrict
399 option.
400
401 An example authorized_keys file:
402
403 # Comments allowed at start of line
404 ssh-rsa AAAAB3Nza...LiPk== user@example.net
405 from="*.sales.example.net,!pc.sales.example.net" ssh-rsa
406 AAAAB2...19Q== john@example.net
407 command="dump /home",no-pty,no-port-forwarding ssh-rsa
408 AAAAC3...51R== example.net
409 permitopen="192.0.2.1:80",permitopen="192.0.2.2:25" ssh-rsa
410 AAAAB5...21S==
411 permitlisten="localhost:8080",permitopen="localhost:22000" ssh-rsa
412 AAAAB5...21S==
413 tunnel="0",command="sh /etc/netstart tun0" ssh-rsa AAAA...==
414 jane@example.net
415 restrict,command="uptime" ssh-rsa AAAA1C8...32Tv==
416 user@example.net
417 restrict,pty,command="nethack" ssh-rsa AAAA1f8...IrrC5==
418 user@example.net
419
420SSH_KNOWN_HOSTS FILE FORMAT
421 The /etc/ssh/ssh_known_hosts and ~/.ssh/known_hosts files contain host
422 public keys for all known hosts. The global file should be prepared by
423 the administrator (optional), and the per-user file is maintained
424 automatically: whenever the user connects to an unknown host, its key is
425 added to the per-user file.
426
427 Each line in these files contains the following fields: markers
428 (optional), hostnames, keytype, base64-encoded key, comment. The fields
429 are separated by spaces.
430
431 The marker is optional, but if it is present then it must be one of
432 M-bM-^@M-^\@cert-authorityM-bM-^@M-^], to indicate that the line contains a certification
433 authority (CA) key, or M-bM-^@M-^\@revokedM-bM-^@M-^], to indicate that the key contained on
434 the line is revoked and must not ever be accepted. Only one marker
435 should be used on a key line.
436
437 Hostnames is a comma-separated list of patterns (M-bM-^@M-^X*M-bM-^@M-^Y and M-bM-^@M-^X?M-bM-^@M-^Y act as
438 wildcards); each pattern in turn is matched against the host name. When
439 sshd is authenticating a client, such as when using
440 HostbasedAuthentication, this will be the canonical client host name.
441 When ssh(1) is authenticating a server, this will be the host name given
442 by the user, the value of the ssh(1) HostkeyAlias if it was specified, or
443 the canonical server hostname if the ssh(1) CanonicalizeHostname option
444 was used.
445
446 A pattern may also be preceded by M-bM-^@M-^X!M-bM-^@M-^Y to indicate negation: if the host
447 name matches a negated pattern, it is not accepted (by that line) even if
448 it matched another pattern on the line. A hostname or address may
449 optionally be enclosed within M-bM-^@M-^X[M-bM-^@M-^Y and M-bM-^@M-^X]M-bM-^@M-^Y brackets then followed by M-bM-^@M-^X:M-bM-^@M-^Y
450 and a non-standard port number.
451
452 Alternately, hostnames may be stored in a hashed form which hides host
453 names and addresses should the file's contents be disclosed. Hashed
454 hostnames start with a M-bM-^@M-^X|M-bM-^@M-^Y character. Only one hashed hostname may
455 appear on a single line and none of the above negation or wildcard
456 operators may be applied.
457
458 The keytype and base64-encoded key are taken directly from the host key;
459 they can be obtained, for example, from /etc/ssh/ssh_host_rsa_key.pub.
460 The optional comment field continues to the end of the line, and is not
461 used.
462
463 Lines starting with M-bM-^@M-^X#M-bM-^@M-^Y and empty lines are ignored as comments.
464
465 When performing host authentication, authentication is accepted if any
466 matching line has the proper key; either one that matches exactly or, if
467 the server has presented a certificate for authentication, the key of the
468 certification authority that signed the certificate. For a key to be
469 trusted as a certification authority, it must use the M-bM-^@M-^\@cert-authorityM-bM-^@M-^]
470 marker described above.
471
472 The known hosts file also provides a facility to mark keys as revoked,
473 for example when it is known that the associated private key has been
474 stolen. Revoked keys are specified by including the M-bM-^@M-^\@revokedM-bM-^@M-^] marker at
475 the beginning of the key line, and are never accepted for authentication
476 or as certification authorities, but instead will produce a warning from
477 ssh(1) when they are encountered.
478
479 It is permissible (but not recommended) to have several lines or
480 different host keys for the same names. This will inevitably happen when
481 short forms of host names from different domains are put in the file. It
482 is possible that the files contain conflicting information;
483 authentication is accepted if valid information can be found from either
484 file.
485
486 Note that the lines in these files are typically hundreds of characters
487 long, and you definitely don't want to type in the host keys by hand.
488 Rather, generate them by a script, ssh-keyscan(1) or by taking, for
489 example, /etc/ssh/ssh_host_rsa_key.pub and adding the host names at the
490 front. ssh-keygen(1) also offers some basic automated editing for
491 ~/.ssh/known_hosts including removing hosts matching a host name and
492 converting all host names to their hashed representations.
493
494 An example ssh_known_hosts file:
495
496 # Comments allowed at start of line
497 closenet,...,192.0.2.53 1024 37 159...93 closenet.example.net
498 cvs.example.net,192.0.2.10 ssh-rsa AAAA1234.....=
499 # A hashed hostname
500 |1|JfKTdBh7rNbXkVAQCRp4OQoPfmI=|USECr3SWf1JUPsms5AqfD5QfxkM= ssh-rsa
501 AAAA1234.....=
502 # A revoked key
503 @revoked * ssh-rsa AAAAB5W...
504 # A CA key, accepted for any host in *.mydomain.com or *.mydomain.org
505 @cert-authority *.mydomain.org,*.mydomain.com ssh-rsa AAAAB5W...
506
507FILES
508 ~/.hushlogin
509 This file is used to suppress printing the last login time and
510 /etc/motd, if PrintLastLog and PrintMotd, respectively, are
511 enabled. It does not suppress printing of the banner specified
512 by Banner.
513
514 ~/.rhosts
515 This file is used for host-based authentication (see ssh(1) for
516 more information). On some machines this file may need to be
517 world-readable if the user's home directory is on an NFS
518 partition, because sshd reads it as root. Additionally, this
519 file must be owned by the user, and must not have write
520 permissions for anyone else. The recommended permission for most
521 machines is read/write for the user, and not accessible by
522 others.
523
524 ~/.shosts
525 This file is used in exactly the same way as .rhosts, but allows
526 host-based authentication without permitting login with
527 rlogin/rsh.
528
529 ~/.ssh/
530 This directory is the default location for all user-specific
531 configuration and authentication information. There is no
532 general requirement to keep the entire contents of this directory
533 secret, but the recommended permissions are read/write/execute
534 for the user, and not accessible by others.
535
536 ~/.ssh/authorized_keys
537 Lists the public keys (DSA, ECDSA, Ed25519, RSA) that can be used
538 for logging in as this user. The format of this file is
539 described above. The content of the file is not highly
540 sensitive, but the recommended permissions are read/write for the
541 user, and not accessible by others.
542
543 If this file, the ~/.ssh directory, or the user's home directory
544 are writable by other users, then the file could be modified or
545 replaced by unauthorized users. In this case, sshd will not
546 allow it to be used unless the StrictModes option has been set to
547 M-bM-^@M-^\noM-bM-^@M-^].
548
549 ~/.ssh/environment
550 This file is read into the environment at login (if it exists).
551 It can only contain empty lines, comment lines (that start with
552 M-bM-^@M-^X#M-bM-^@M-^Y), and assignment lines of the form name=value. The file
553 should be writable only by the user; it need not be readable by
554 anyone else. Environment processing is disabled by default and
555 is controlled via the PermitUserEnvironment option.
556
557 ~/.ssh/known_hosts
558 Contains a list of host keys for all hosts the user has logged
559 into that are not already in the systemwide list of known host
560 keys. The format of this file is described above. This file
561 should be writable only by root/the owner and can, but need not
562 be, world-readable.
563
564 ~/.ssh/rc
565 Contains initialization routines to be run before the user's home
566 directory becomes accessible. This file should be writable only
567 by the user, and need not be readable by anyone else.
568
569 /etc/hosts.equiv
570 This file is for host-based authentication (see ssh(1)). It
571 should only be writable by root.
572
573 /etc/moduli
574 Contains Diffie-Hellman groups used for the "Diffie-Hellman Group
575 Exchange" key exchange method. The file format is described in
576 moduli(5). If no usable groups are found in this file then fixed
577 internal groups will be used.
578
579 /etc/motd
580 See motd(5).
581
582 /etc/nologin
583 If this file exists, sshd refuses to let anyone except root log
584 in. The contents of the file are displayed to anyone trying to
585 log in, and non-root connections are refused. The file should be
586 world-readable.
587
588 /etc/shosts.equiv
589 This file is used in exactly the same way as hosts.equiv, but
590 allows host-based authentication without permitting login with
591 rlogin/rsh.
592
593 /etc/ssh/ssh_host_ecdsa_key
594 /etc/ssh/ssh_host_ed25519_key
595 /etc/ssh/ssh_host_rsa_key
596 These files contain the private parts of the host keys. These
597 files should only be owned by root, readable only by root, and
598 not accessible to others. Note that sshd does not start if these
599 files are group/world-accessible.
600
601 /etc/ssh/ssh_host_ecdsa_key.pub
602 /etc/ssh/ssh_host_ed25519_key.pub
603 /etc/ssh/ssh_host_rsa_key.pub
604 These files contain the public parts of the host keys. These
605 files should be world-readable but writable only by root. Their
606 contents should match the respective private parts. These files
607 are not really used for anything; they are provided for the
608 convenience of the user so their contents can be copied to known
609 hosts files. These files are created using ssh-keygen(1).
610
611 /etc/ssh/ssh_known_hosts
612 Systemwide list of known host keys. This file should be prepared
613 by the system administrator to contain the public host keys of
614 all machines in the organization. The format of this file is
615 described above. This file should be writable only by root/the
616 owner and should be world-readable.
617
618 /etc/ssh/sshd_config
619 Contains configuration data for sshd. The file format and
620 configuration options are described in sshd_config(5).
621
622 /etc/ssh/sshrc
623 Similar to ~/.ssh/rc, it can be used to specify machine-specific
624 login-time initializations globally. This file should be
625 writable only by root, and should be world-readable.
626
627 /var/empty
628 chroot(2) directory used by sshd during privilege separation in
629 the pre-authentication phase. The directory should not contain
630 any files and must be owned by root and not group or world-
631 writable.
632
633 /var/run/sshd.pid
634 Contains the process ID of the sshd listening for connections (if
635 there are several daemons running concurrently for different
636 ports, this contains the process ID of the one started last).
637 The content of this file is not sensitive; it can be world-
638 readable.
639
640SEE ALSO
641 scp(1), sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1),
642 ssh-keyscan(1), chroot(2), login.conf(5), moduli(5), sshd_config(5),
643 inetd(8), sftp-server(8)
644
645AUTHORS
646 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
647 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
648 de Raadt and Dug Song removed many bugs, re-added newer features and
649 created OpenSSH. Markus Friedl contributed the support for SSH protocol
650 versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
651 for privilege separation.
652
653OpenBSD 6.4 July 22, 2018 OpenBSD 6.4
diff --git a/sshd_config.0 b/sshd_config.0
new file mode 100644
index 000000000..af54da6b2
--- /dev/null
+++ b/sshd_config.0
@@ -0,0 +1,1092 @@
1SSHD_CONFIG(5) File Formats Manual SSHD_CONFIG(5)
2
3NAME
4 sshd_config M-bM-^@M-^S OpenSSH SSH daemon configuration file
5
6DESCRIPTION
7 sshd(8) reads configuration data from /etc/ssh/sshd_config (or the file
8 specified with -f on the command line). The file contains keyword-
9 argument pairs, one per line. For each keyword, the first obtained value
10 will be used. Lines starting with M-bM-^@M-^X#M-bM-^@M-^Y and empty lines are interpreted as
11 comments. Arguments may optionally be enclosed in double quotes (") in
12 order to represent arguments containing spaces.
13
14 The possible keywords and their meanings are as follows (note that
15 keywords are case-insensitive and arguments are case-sensitive):
16
17 AcceptEnv
18 Specifies what environment variables sent by the client will be
19 copied into the session's environ(7). See SendEnv and SetEnv in
20 ssh_config(5) for how to configure the client. The TERM
21 environment variable is always accepted whenever the client
22 requests a pseudo-terminal as it is required by the protocol.
23 Variables are specified by name, which may contain the wildcard
24 characters M-bM-^@M-^X*M-bM-^@M-^Y and M-bM-^@M-^X?M-bM-^@M-^Y. Multiple environment variables may be
25 separated by whitespace or spread across multiple AcceptEnv
26 directives. Be warned that some environment variables could be
27 used to bypass restricted user environments. For this reason,
28 care should be taken in the use of this directive. The default
29 is not to accept any environment variables.
30
31 AddressFamily
32 Specifies which address family should be used by sshd(8). Valid
33 arguments are any (the default), inet (use IPv4 only), or inet6
34 (use IPv6 only).
35
36 AllowAgentForwarding
37 Specifies whether ssh-agent(1) forwarding is permitted. The
38 default is yes. Note that disabling agent forwarding does not
39 improve security unless users are also denied shell access, as
40 they can always install their own forwarders.
41
42 AllowGroups
43 This keyword can be followed by a list of group name patterns,
44 separated by spaces. If specified, login is allowed only for
45 users whose primary group or supplementary group list matches one
46 of the patterns. Only group names are valid; a numerical group
47 ID is not recognized. By default, login is allowed for all
48 groups. The allow/deny directives are processed in the following
49 order: DenyUsers, AllowUsers, DenyGroups, and finally
50 AllowGroups.
51
52 See PATTERNS in ssh_config(5) for more information on patterns.
53
54 AllowStreamLocalForwarding
55 Specifies whether StreamLocal (Unix-domain socket) forwarding is
56 permitted. The available options are yes (the default) or all to
57 allow StreamLocal forwarding, no to prevent all StreamLocal
58 forwarding, local to allow local (from the perspective of ssh(1))
59 forwarding only or remote to allow remote forwarding only. Note
60 that disabling StreamLocal forwarding does not improve security
61 unless users are also denied shell access, as they can always
62 install their own forwarders.
63
64 AllowTcpForwarding
65 Specifies whether TCP forwarding is permitted. The available
66 options are yes (the default) or all to allow TCP forwarding, no
67 to prevent all TCP forwarding, local to allow local (from the
68 perspective of ssh(1)) forwarding only or remote to allow remote
69 forwarding only. Note that disabling TCP forwarding does not
70 improve security unless users are also denied shell access, as
71 they can always install their own forwarders.
72
73 AllowUsers
74 This keyword can be followed by a list of user name patterns,
75 separated by spaces. If specified, login is allowed only for
76 user names that match one of the patterns. Only user names are
77 valid; a numerical user ID is not recognized. By default, login
78 is allowed for all users. If the pattern takes the form
79 USER@HOST then USER and HOST are separately checked, restricting
80 logins to particular users from particular hosts. HOST criteria
81 may additionally contain addresses to match in CIDR
82 address/masklen format. The allow/deny directives are processed
83 in the following order: DenyUsers, AllowUsers, DenyGroups, and
84 finally AllowGroups.
85
86 See PATTERNS in ssh_config(5) for more information on patterns.
87
88 AuthenticationMethods
89 Specifies the authentication methods that must be successfully
90 completed for a user to be granted access. This option must be
91 followed by one or more lists of comma-separated authentication
92 method names, or by the single string any to indicate the default
93 behaviour of accepting any single authentication method. If the
94 default is overridden, then successful authentication requires
95 completion of every method in at least one of these lists.
96
97 For example, "publickey,password publickey,keyboard-interactive"
98 would require the user to complete public key authentication,
99 followed by either password or keyboard interactive
100 authentication. Only methods that are next in one or more lists
101 are offered at each stage, so for this example it would not be
102 possible to attempt password or keyboard-interactive
103 authentication before public key.
104
105 For keyboard interactive authentication it is also possible to
106 restrict authentication to a specific device by appending a colon
107 followed by the device identifier bsdauth or pam. depending on
108 the server configuration. For example,
109 "keyboard-interactive:bsdauth" would restrict keyboard
110 interactive authentication to the bsdauth device.
111
112 If the publickey method is listed more than once, sshd(8)
113 verifies that keys that have been used successfully are not
114 reused for subsequent authentications. For example,
115 "publickey,publickey" requires successful authentication using
116 two different public keys.
117
118 Note that each authentication method listed should also be
119 explicitly enabled in the configuration.
120
121 The available authentication methods are: "gssapi-with-mic",
122 "hostbased", "keyboard-interactive", "none" (used for access to
123 password-less accounts when PermitEmptyPasswords is enabled),
124 "password" and "publickey".
125
126 AuthorizedKeysCommand
127 Specifies a program to be used to look up the user's public keys.
128 The program must be owned by root, not writable by group or
129 others and specified by an absolute path. Arguments to
130 AuthorizedKeysCommand accept the tokens described in the TOKENS
131 section. If no arguments are specified then the username of the
132 target user is used.
133
134 The program should produce on standard output zero or more lines
135 of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)). If a
136 key supplied by AuthorizedKeysCommand does not successfully
137 authenticate and authorize the user then public key
138 authentication continues using the usual AuthorizedKeysFile
139 files. By default, no AuthorizedKeysCommand is run.
140
141 AuthorizedKeysCommandUser
142 Specifies the user under whose account the AuthorizedKeysCommand
143 is run. It is recommended to use a dedicated user that has no
144 other role on the host than running authorized keys commands. If
145 AuthorizedKeysCommand is specified but AuthorizedKeysCommandUser
146 is not, then sshd(8) will refuse to start.
147
148 AuthorizedKeysFile
149 Specifies the file that contains the public keys used for user
150 authentication. The format is described in the AUTHORIZED_KEYS
151 FILE FORMAT section of sshd(8). Arguments to AuthorizedKeysFile
152 accept the tokens described in the TOKENS section. After
153 expansion, AuthorizedKeysFile is taken to be an absolute path or
154 one relative to the user's home directory. Multiple files may be
155 listed, separated by whitespace. Alternately this option may be
156 set to none to skip checking for user keys in files. The default
157 is ".ssh/authorized_keys .ssh/authorized_keys2".
158
159 AuthorizedPrincipalsCommand
160 Specifies a program to be used to generate the list of allowed
161 certificate principals as per AuthorizedPrincipalsFile. The
162 program must be owned by root, not writable by group or others
163 and specified by an absolute path. Arguments to
164 AuthorizedPrincipalsCommand accept the tokens described in the
165 TOKENS section. If no arguments are specified then the username
166 of the target user is used.
167
168 The program should produce on standard output zero or more lines
169 of AuthorizedPrincipalsFile output. If either
170 AuthorizedPrincipalsCommand or AuthorizedPrincipalsFile is
171 specified, then certificates offered by the client for
172 authentication must contain a principal that is listed. By
173 default, no AuthorizedPrincipalsCommand is run.
174
175 AuthorizedPrincipalsCommandUser
176 Specifies the user under whose account the
177 AuthorizedPrincipalsCommand is run. It is recommended to use a
178 dedicated user that has no other role on the host than running
179 authorized principals commands. If AuthorizedPrincipalsCommand
180 is specified but AuthorizedPrincipalsCommandUser is not, then
181 sshd(8) will refuse to start.
182
183 AuthorizedPrincipalsFile
184 Specifies a file that lists principal names that are accepted for
185 certificate authentication. When using certificates signed by a
186 key listed in TrustedUserCAKeys, this file lists names, one of
187 which must appear in the certificate for it to be accepted for
188 authentication. Names are listed one per line preceded by key
189 options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)).
190 Empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are ignored.
191
192 Arguments to AuthorizedPrincipalsFile accept the tokens described
193 in the TOKENS section. After expansion, AuthorizedPrincipalsFile
194 is taken to be an absolute path or one relative to the user's
195 home directory. The default is none, i.e. not to use a
196 principals file M-bM-^@M-^S in this case, the username of the user must
197 appear in a certificate's principals list for it to be accepted.
198
199 Note that AuthorizedPrincipalsFile is only used when
200 authentication proceeds using a CA listed in TrustedUserCAKeys
201 and is not consulted for certification authorities trusted via
202 ~/.ssh/authorized_keys, though the principals= key option offers
203 a similar facility (see sshd(8) for details).
204
205 Banner The contents of the specified file are sent to the remote user
206 before authentication is allowed. If the argument is none then
207 no banner is displayed. By default, no banner is displayed.
208
209 CASignatureAlgorithms
210 Specifies which algorithms are allowed for signing of
211 certificates by certificate authorities (CAs). The default is:
212
213 ecdsa-sha2-nistp256.ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
214 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
215
216 Certificates signed using other algorithms will not be accepted
217 for public key or host-based authentication.
218
219 ChallengeResponseAuthentication
220 Specifies whether challenge-response authentication is allowed
221 (e.g. via PAM or through authentication styles supported in
222 login.conf(5)) The default is yes.
223
224 ChrootDirectory
225 Specifies the pathname of a directory to chroot(2) to after
226 authentication. At session startup sshd(8) checks that all
227 components of the pathname are root-owned directories which are
228 not writable by any other user or group. After the chroot,
229 sshd(8) changes the working directory to the user's home
230 directory. Arguments to ChrootDirectory accept the tokens
231 described in the TOKENS section.
232
233 The ChrootDirectory must contain the necessary files and
234 directories to support the user's session. For an interactive
235 session this requires at least a shell, typically sh(1), and
236 basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4),
237 stderr(4), and tty(4) devices. For file transfer sessions using
238 SFTP no additional configuration of the environment is necessary
239 if the in-process sftp-server is used, though sessions which use
240 logging may require /dev/log inside the chroot directory on some
241 operating systems (see sftp-server(8) for details).
242
243 For safety, it is very important that the directory hierarchy be
244 prevented from modification by other processes on the system
245 (especially those outside the jail). Misconfiguration can lead
246 to unsafe environments which sshd(8) cannot detect.
247
248 The default is none, indicating not to chroot(2).
249
250 Ciphers
251 Specifies the ciphers allowed. Multiple ciphers must be comma-
252 separated. If the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
253 then the specified ciphers will be appended to the default set
254 instead of replacing them. If the specified value begins with a
255 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified ciphers (including wildcards)
256 will be removed from the default set instead of replacing them.
257
258 The supported ciphers are:
259
260 3des-cbc
261 aes128-cbc
262 aes192-cbc
263 aes256-cbc
264 aes128-ctr
265 aes192-ctr
266 aes256-ctr
267 aes128-gcm@openssh.com
268 aes256-gcm@openssh.com
269 chacha20-poly1305@openssh.com
270
271 The default is:
272
273 chacha20-poly1305@openssh.com,
274 aes128-ctr,aes192-ctr,aes256-ctr,
275 aes128-gcm@openssh.com,aes256-gcm@openssh.com
276
277 The list of available ciphers may also be obtained using "ssh -Q
278 cipher".
279
280 ClientAliveCountMax
281 Sets the number of client alive messages which may be sent
282 without sshd(8) receiving any messages back from the client. If
283 this threshold is reached while client alive messages are being
284 sent, sshd will disconnect the client, terminating the session.
285 It is important to note that the use of client alive messages is
286 very different from TCPKeepAlive. The client alive messages are
287 sent through the encrypted channel and therefore will not be
288 spoofable. The TCP keepalive option enabled by TCPKeepAlive is
289 spoofable. The client alive mechanism is valuable when the
290 client or server depend on knowing when a connection has become
291 inactive.
292
293 The default value is 3. If ClientAliveInterval is set to 15, and
294 ClientAliveCountMax is left at the default, unresponsive SSH
295 clients will be disconnected after approximately 45 seconds.
296
297 ClientAliveInterval
298 Sets a timeout interval in seconds after which if no data has
299 been received from the client, sshd(8) will send a message
300 through the encrypted channel to request a response from the
301 client. The default is 0, indicating that these messages will
302 not be sent to the client.
303
304 Compression
305 Specifies whether compression is enabled after the user has
306 authenticated successfully. The argument must be yes, delayed (a
307 legacy synonym for yes) or no. The default is yes.
308
309 DenyGroups
310 This keyword can be followed by a list of group name patterns,
311 separated by spaces. Login is disallowed for users whose primary
312 group or supplementary group list matches one of the patterns.
313 Only group names are valid; a numerical group ID is not
314 recognized. By default, login is allowed for all groups. The
315 allow/deny directives are processed in the following order:
316 DenyUsers, AllowUsers, DenyGroups, and finally AllowGroups.
317
318 See PATTERNS in ssh_config(5) for more information on patterns.
319
320 DenyUsers
321 This keyword can be followed by a list of user name patterns,
322 separated by spaces. Login is disallowed for user names that
323 match one of the patterns. Only user names are valid; a
324 numerical user ID is not recognized. By default, login is
325 allowed for all users. If the pattern takes the form USER@HOST
326 then USER and HOST are separately checked, restricting logins to
327 particular users from particular hosts. HOST criteria may
328 additionally contain addresses to match in CIDR address/masklen
329 format. The allow/deny directives are processed in the following
330 order: DenyUsers, AllowUsers, DenyGroups, and finally
331 AllowGroups.
332
333 See PATTERNS in ssh_config(5) for more information on patterns.
334
335 DisableForwarding
336 Disables all forwarding features, including X11, ssh-agent(1),
337 TCP and StreamLocal. This option overrides all other forwarding-
338 related options and may simplify restricted configurations.
339
340 ExposeAuthInfo
341 Writes a temporary file containing a list of authentication
342 methods and public credentials (e.g. keys) used to authenticate
343 the user. The location of the file is exposed to the user
344 session through the SSH_USER_AUTH environment variable. The
345 default is no.
346
347 FingerprintHash
348 Specifies the hash algorithm used when logging key fingerprints.
349 Valid options are: md5 and sha256. The default is sha256.
350
351 ForceCommand
352 Forces the execution of the command specified by ForceCommand,
353 ignoring any command supplied by the client and ~/.ssh/rc if
354 present. The command is invoked by using the user's login shell
355 with the -c option. This applies to shell, command, or subsystem
356 execution. It is most useful inside a Match block. The command
357 originally supplied by the client is available in the
358 SSH_ORIGINAL_COMMAND environment variable. Specifying a command
359 of internal-sftp will force the use of an in-process SFTP server
360 that requires no support files when used with ChrootDirectory.
361 The default is none.
362
363 GatewayPorts
364 Specifies whether remote hosts are allowed to connect to ports
365 forwarded for the client. By default, sshd(8) binds remote port
366 forwardings to the loopback address. This prevents other remote
367 hosts from connecting to forwarded ports. GatewayPorts can be
368 used to specify that sshd should allow remote port forwardings to
369 bind to non-loopback addresses, thus allowing other hosts to
370 connect. The argument may be no to force remote port forwardings
371 to be available to the local host only, yes to force remote port
372 forwardings to bind to the wildcard address, or clientspecified
373 to allow the client to select the address to which the forwarding
374 is bound. The default is no.
375
376 GSSAPIAuthentication
377 Specifies whether user authentication based on GSSAPI is allowed.
378 The default is no.
379
380 GSSAPICleanupCredentials
381 Specifies whether to automatically destroy the user's credentials
382 cache on logout. The default is yes.
383
384 GSSAPIStrictAcceptorCheck
385 Determines whether to be strict about the identity of the GSSAPI
386 acceptor a client authenticates against. If set to yes then the
387 client must authenticate against the host service on the current
388 hostname. If set to no then the client may authenticate against
389 any service key stored in the machine's default store. This
390 facility is provided to assist with operation on multi homed
391 machines. The default is yes.
392
393 HostbasedAcceptedKeyTypes
394 Specifies the key types that will be accepted for hostbased
395 authentication as a list of comma-separated patterns.
396 Alternately if the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
397 then the specified key types will be appended to the default set
398 instead of replacing them. If the specified value begins with a
399 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards)
400 will be removed from the default set instead of replacing them.
401 The default for this option is:
402
403 ecdsa-sha2-nistp256-cert-v01@openssh.com,
404 ecdsa-sha2-nistp384-cert-v01@openssh.com,
405 ecdsa-sha2-nistp521-cert-v01@openssh.com,
406 ssh-ed25519-cert-v01@openssh.com,
407 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
408 ssh-rsa-cert-v01@openssh.com,
409 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
410 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
411
412 The list of available key types may also be obtained using "ssh
413 -Q key".
414
415 HostbasedAuthentication
416 Specifies whether rhosts or /etc/hosts.equiv authentication
417 together with successful public key client host authentication is
418 allowed (host-based authentication). The default is no.
419
420 HostbasedUsesNameFromPacketOnly
421 Specifies whether or not the server will attempt to perform a
422 reverse name lookup when matching the name in the ~/.shosts,
423 ~/.rhosts, and /etc/hosts.equiv files during
424 HostbasedAuthentication. A setting of yes means that sshd(8)
425 uses the name supplied by the client rather than attempting to
426 resolve the name from the TCP connection itself. The default is
427 no.
428
429 HostCertificate
430 Specifies a file containing a public host certificate. The
431 certificate's public key must match a private host key already
432 specified by HostKey. The default behaviour of sshd(8) is not to
433 load any certificates.
434
435 HostKey
436 Specifies a file containing a private host key used by SSH. The
437 defaults are /etc/ssh/ssh_host_ecdsa_key,
438 /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key.
439
440 Note that sshd(8) will refuse to use a file if it is group/world-
441 accessible and that the HostKeyAlgorithms option restricts which
442 of the keys are actually used by sshd(8).
443
444 It is possible to have multiple host key files. It is also
445 possible to specify public host key files instead. In this case
446 operations on the private key will be delegated to an
447 ssh-agent(1).
448
449 HostKeyAgent
450 Identifies the UNIX-domain socket used to communicate with an
451 agent that has access to the private host keys. If the string
452 "SSH_AUTH_SOCK" is specified, the location of the socket will be
453 read from the SSH_AUTH_SOCK environment variable.
454
455 HostKeyAlgorithms
456 Specifies the host key algorithms that the server offers. The
457 default for this option is:
458
459 ecdsa-sha2-nistp256-cert-v01@openssh.com,
460 ecdsa-sha2-nistp384-cert-v01@openssh.com,
461 ecdsa-sha2-nistp521-cert-v01@openssh.com,
462 ssh-ed25519-cert-v01@openssh.com,
463 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
464 ssh-rsa-cert-v01@openssh.com,
465 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
466 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
467
468 The list of available key types may also be obtained using "ssh
469 -Q key".
470
471 IgnoreRhosts
472 Specifies that .rhosts and .shosts files will not be used in
473 HostbasedAuthentication.
474
475 /etc/hosts.equiv and /etc/shosts.equiv are still used. The
476 default is yes.
477
478 IgnoreUserKnownHosts
479 Specifies whether sshd(8) should ignore the user's
480 ~/.ssh/known_hosts during HostbasedAuthentication and use only
481 the system-wide known hosts file /etc/ssh/known_hosts. The
482 default is no.
483
484 IPQoS Specifies the IPv4 type-of-service or DSCP class for the
485 connection. Accepted values are af11, af12, af13, af21, af22,
486 af23, af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3,
487 cs4, cs5, cs6, cs7, ef, lowdelay, throughput, reliability, a
488 numeric value, or none to use the operating system default. This
489 option may take one or two arguments, separated by whitespace.
490 If one argument is specified, it is used as the packet class
491 unconditionally. If two values are specified, the first is
492 automatically selected for interactive sessions and the second
493 for non-interactive sessions. The default is af21 (Low-Latency
494 Data) for interactive sessions and cs1 (Lower Effort) for non-
495 interactive sessions.
496
497 KbdInteractiveAuthentication
498 Specifies whether to allow keyboard-interactive authentication.
499 The argument to this keyword must be yes or no. The default is
500 to use whatever value ChallengeResponseAuthentication is set to
501 (by default yes).
502
503 KerberosAuthentication
504 Specifies whether the password provided by the user for
505 PasswordAuthentication will be validated through the Kerberos
506 KDC. To use this option, the server needs a Kerberos servtab
507 which allows the verification of the KDC's identity. The default
508 is no.
509
510 KerberosGetAFSToken
511 If AFS is active and the user has a Kerberos 5 TGT, attempt to
512 acquire an AFS token before accessing the user's home directory.
513 The default is no.
514
515 KerberosOrLocalPasswd
516 If password authentication through Kerberos fails then the
517 password will be validated via any additional local mechanism
518 such as /etc/passwd. The default is yes.
519
520 KerberosTicketCleanup
521 Specifies whether to automatically destroy the user's ticket
522 cache file on logout. The default is yes.
523
524 KexAlgorithms
525 Specifies the available KEX (Key Exchange) algorithms. Multiple
526 algorithms must be comma-separated. Alternately if the specified
527 value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified methods
528 will be appended to the default set instead of replacing them.
529 If the specified value begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the
530 specified methods (including wildcards) will be removed from the
531 default set instead of replacing them. The supported algorithms
532 are:
533
534 curve25519-sha256
535 curve25519-sha256@libssh.org
536 diffie-hellman-group1-sha1
537 diffie-hellman-group14-sha1
538 diffie-hellman-group14-sha256
539 diffie-hellman-group16-sha512
540 diffie-hellman-group18-sha512
541 diffie-hellman-group-exchange-sha1
542 diffie-hellman-group-exchange-sha256
543 ecdh-sha2-nistp256
544 ecdh-sha2-nistp384
545 ecdh-sha2-nistp521
546
547 The default is:
548
549 curve25519-sha256,curve25519-sha256@libssh.org,
550 ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
551 diffie-hellman-group-exchange-sha256,
552 diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,
553 diffie-hellman-group14-sha256,diffie-hellman-group14-sha1
554
555 The list of available key exchange algorithms may also be
556 obtained using "ssh -Q kex".
557
558 ListenAddress
559 Specifies the local addresses sshd(8) should listen on. The
560 following forms may be used:
561
562 ListenAddress hostname|address [rdomain domain]
563 ListenAddress hostname:port [rdomain domain]
564 ListenAddress IPv4_address:port [rdomain domain]
565 ListenAddress [hostname|address]:port [rdomain domain]
566
567 The optional rdomain qualifier requests sshd(8) listen in an
568 explicit routing domain. If port is not specified, sshd will
569 listen on the address and all Port options specified. The
570 default is to listen on all local addresses on the current
571 default routing domain. Multiple ListenAddress options are
572 permitted. For more information on routing domains, see
573 rdomain(4).
574
575 LoginGraceTime
576 The server disconnects after this time if the user has not
577 successfully logged in. If the value is 0, there is no time
578 limit. The default is 120 seconds.
579
580 LogLevel
581 Gives the verbosity level that is used when logging messages from
582 sshd(8). The possible values are: QUIET, FATAL, ERROR, INFO,
583 VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO.
584 DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify
585 higher levels of debugging output. Logging with a DEBUG level
586 violates the privacy of users and is not recommended.
587
588 MACs Specifies the available MAC (message authentication code)
589 algorithms. The MAC algorithm is used for data integrity
590 protection. Multiple algorithms must be comma-separated. If the
591 specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified
592 algorithms will be appended to the default set instead of
593 replacing them. If the specified value begins with a M-bM-^@M-^X-M-bM-^@M-^Y
594 character, then the specified algorithms (including wildcards)
595 will be removed from the default set instead of replacing them.
596
597 The algorithms that contain "-etm" calculate the MAC after
598 encryption (encrypt-then-mac). These are considered safer and
599 their use recommended. The supported MACs are:
600
601 hmac-md5
602 hmac-md5-96
603 hmac-sha1
604 hmac-sha1-96
605 hmac-sha2-256
606 hmac-sha2-512
607 umac-64@openssh.com
608 umac-128@openssh.com
609 hmac-md5-etm@openssh.com
610 hmac-md5-96-etm@openssh.com
611 hmac-sha1-etm@openssh.com
612 hmac-sha1-96-etm@openssh.com
613 hmac-sha2-256-etm@openssh.com
614 hmac-sha2-512-etm@openssh.com
615 umac-64-etm@openssh.com
616 umac-128-etm@openssh.com
617
618 The default is:
619
620 umac-64-etm@openssh.com,umac-128-etm@openssh.com,
621 hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,
622 hmac-sha1-etm@openssh.com,
623 umac-64@openssh.com,umac-128@openssh.com,
624 hmac-sha2-256,hmac-sha2-512,hmac-sha1
625
626 The list of available MAC algorithms may also be obtained using
627 "ssh -Q mac".
628
629 Match Introduces a conditional block. If all of the criteria on the
630 Match line are satisfied, the keywords on the following lines
631 override those set in the global section of the config file,
632 until either another Match line or the end of the file. If a
633 keyword appears in multiple Match blocks that are satisfied, only
634 the first instance of the keyword is applied.
635
636 The arguments to Match are one or more criteria-pattern pairs or
637 the single token All which matches all criteria. The available
638 criteria are User, Group, Host, LocalAddress, LocalPort, RDomain,
639 and Address (with RDomain representing the rdomain(4) on which
640 the connection was received.)
641
642 The match patterns may consist of single entries or comma-
643 separated lists and may use the wildcard and negation operators
644 described in the PATTERNS section of ssh_config(5).
645
646 The patterns in an Address criteria may additionally contain
647 addresses to match in CIDR address/masklen format, such as
648 192.0.2.0/24 or 2001:db8::/32. Note that the mask length
649 provided must be consistent with the address - it is an error to
650 specify a mask length that is too long for the address or one
651 with bits set in this host portion of the address. For example,
652 192.0.2.0/33 and 192.0.2.0/8, respectively.
653
654 Only a subset of keywords may be used on the lines following a
655 Match keyword. Available keywords are AcceptEnv,
656 AllowAgentForwarding, AllowGroups, AllowStreamLocalForwarding,
657 AllowTcpForwarding, AllowUsers, AuthenticationMethods,
658 AuthorizedKeysCommand, AuthorizedKeysCommandUser,
659 AuthorizedKeysFile, AuthorizedPrincipalsCommand,
660 AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile,
661 Banner, ChrootDirectory, ClientAliveCountMax,
662 ClientAliveInterval, DenyGroups, DenyUsers, ForceCommand,
663 GatewayPorts, GSSAPIAuthentication, HostbasedAcceptedKeyTypes,
664 HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, IPQoS,
665 KbdInteractiveAuthentication, KerberosAuthentication, LogLevel,
666 MaxAuthTries, MaxSessions, PasswordAuthentication,
667 PermitEmptyPasswords, PermitListen, PermitOpen, PermitRootLogin,
668 PermitTTY, PermitTunnel, PermitUserRC, PubkeyAcceptedKeyTypes,
669 PubkeyAuthentication, RekeyLimit, RevokedKeys, RDomain, SetEnv,
670 StreamLocalBindMask, StreamLocalBindUnlink, TrustedUserCAKeys,
671 X11DisplayOffset, X11Forwarding and X11UseLocalHost.
672
673 MaxAuthTries
674 Specifies the maximum number of authentication attempts permitted
675 per connection. Once the number of failures reaches half this
676 value, additional failures are logged. The default is 6.
677
678 MaxSessions
679 Specifies the maximum number of open shell, login or subsystem
680 (e.g. sftp) sessions permitted per network connection. Multiple
681 sessions may be established by clients that support connection
682 multiplexing. Setting MaxSessions to 1 will effectively disable
683 session multiplexing, whereas setting it to 0 will prevent all
684 shell, login and subsystem sessions while still permitting
685 forwarding. The default is 10.
686
687 MaxStartups
688 Specifies the maximum number of concurrent unauthenticated
689 connections to the SSH daemon. Additional connections will be
690 dropped until authentication succeeds or the LoginGraceTime
691 expires for a connection. The default is 10:30:100.
692
693 Alternatively, random early drop can be enabled by specifying the
694 three colon separated values start:rate:full (e.g. "10:30:60").
695 sshd(8) will refuse connection attempts with a probability of
696 rate/100 (30%) if there are currently start (10) unauthenticated
697 connections. The probability increases linearly and all
698 connection attempts are refused if the number of unauthenticated
699 connections reaches full (60).
700
701 PasswordAuthentication
702 Specifies whether password authentication is allowed. The
703 default is yes.
704
705 PermitEmptyPasswords
706 When password authentication is allowed, it specifies whether the
707 server allows login to accounts with empty password strings. The
708 default is no.
709
710 PermitListen
711 Specifies the addresses/ports on which a remote TCP port
712 forwarding may listen. The listen specification must be one of
713 the following forms:
714
715 PermitListen port
716 PermitListen host:port
717
718 Multiple permissions may be specified by separating them with
719 whitespace. An argument of any can be used to remove all
720 restrictions and permit any listen requests. An argument of none
721 can be used to prohibit all listen requests. The host name may
722 contain wildcards as described in the PATTERNS section in
723 ssh_config(5). The wildcard M-bM-^@M-^X*M-bM-^@M-^Y can also be used in place of a
724 port number to allow all ports. By default all port forwarding
725 listen requests are permitted. Note that the GatewayPorts option
726 may further restrict which addresses may be listened on. Note
727 also that ssh(1) will request a listen host of M-bM-^@M-^\localhostM-bM-^@M-^] if no
728 listen host was specifically requested, and this this name is
729 treated differently to explicit localhost addresses of
730 M-bM-^@M-^\127.0.0.1M-bM-^@M-^] and M-bM-^@M-^\::1M-bM-^@M-^].
731
732 PermitOpen
733 Specifies the destinations to which TCP port forwarding is
734 permitted. The forwarding specification must be one of the
735 following forms:
736
737 PermitOpen host:port
738 PermitOpen IPv4_addr:port
739 PermitOpen [IPv6_addr]:port
740
741 Multiple forwards may be specified by separating them with
742 whitespace. An argument of any can be used to remove all
743 restrictions and permit any forwarding requests. An argument of
744 none can be used to prohibit all forwarding requests. The
745 wildcard M-bM-^@M-^X*M-bM-^@M-^Y can be used for host or port to allow all hosts or
746 ports, respectively. By default all port forwarding requests are
747 permitted.
748
749 PermitRootLogin
750 Specifies whether root can log in using ssh(1). The argument
751 must be yes, prohibit-password, forced-commands-only, or no. The
752 default is prohibit-password.
753
754 If this option is set to prohibit-password (or its deprecated
755 alias, without-password), password and keyboard-interactive
756 authentication are disabled for root.
757
758 If this option is set to forced-commands-only, root login with
759 public key authentication will be allowed, but only if the
760 command option has been specified (which may be useful for taking
761 remote backups even if root login is normally not allowed). All
762 other authentication methods are disabled for root.
763
764 If this option is set to no, root is not allowed to log in.
765
766 PermitTTY
767 Specifies whether pty(4) allocation is permitted. The default is
768 yes.
769
770 PermitTunnel
771 Specifies whether tun(4) device forwarding is allowed. The
772 argument must be yes, point-to-point (layer 3), ethernet (layer
773 2), or no. Specifying yes permits both point-to-point and
774 ethernet. The default is no.
775
776 Independent of this setting, the permissions of the selected
777 tun(4) device must allow access to the user.
778
779 PermitUserEnvironment
780 Specifies whether ~/.ssh/environment and environment= options in
781 ~/.ssh/authorized_keys are processed by sshd(8). Valid options
782 are yes, no or a pattern-list specifying which environment
783 variable names to accept (for example "LANG,LC_*"). The default
784 is no. Enabling environment processing may enable users to
785 bypass access restrictions in some configurations using
786 mechanisms such as LD_PRELOAD.
787
788 PermitUserRC
789 Specifies whether any ~/.ssh/rc file is executed. The default is
790 yes.
791
792 PidFile
793 Specifies the file that contains the process ID of the SSH
794 daemon, or none to not write one. The default is
795 /var/run/sshd.pid.
796
797 Port Specifies the port number that sshd(8) listens on. The default
798 is 22. Multiple options of this type are permitted. See also
799 ListenAddress.
800
801 PrintLastLog
802 Specifies whether sshd(8) should print the date and time of the
803 last user login when a user logs in interactively. The default
804 is yes.
805
806 PrintMotd
807 Specifies whether sshd(8) should print /etc/motd when a user logs
808 in interactively. (On some systems it is also printed by the
809 shell, /etc/profile, or equivalent.) The default is yes.
810
811 PubkeyAcceptedKeyTypes
812 Specifies the key types that will be accepted for public key
813 authentication as a list of comma-separated patterns.
814 Alternately if the specified value begins with a M-bM-^@M-^X+M-bM-^@M-^Y character,
815 then the specified key types will be appended to the default set
816 instead of replacing them. If the specified value begins with a
817 M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards)
818 will be removed from the default set instead of replacing them.
819 The default for this option is:
820
821 ecdsa-sha2-nistp256-cert-v01@openssh.com,
822 ecdsa-sha2-nistp384-cert-v01@openssh.com,
823 ecdsa-sha2-nistp521-cert-v01@openssh.com,
824 ssh-ed25519-cert-v01@openssh.com,
825 rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,
826 ssh-rsa-cert-v01@openssh.com,
827 ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
828 ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
829
830 The list of available key types may also be obtained using "ssh
831 -Q key".
832
833 PubkeyAuthentication
834 Specifies whether public key authentication is allowed. The
835 default is yes.
836
837 RekeyLimit
838 Specifies the maximum amount of data that may be transmitted
839 before the session key is renegotiated, optionally followed a
840 maximum amount of time that may pass before the session key is
841 renegotiated. The first argument is specified in bytes and may
842 have a suffix of M-bM-^@M-^XKM-bM-^@M-^Y, M-bM-^@M-^XMM-bM-^@M-^Y, or M-bM-^@M-^XGM-bM-^@M-^Y to indicate Kilobytes,
843 Megabytes, or Gigabytes, respectively. The default is between
844 M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second
845 value is specified in seconds and may use any of the units
846 documented in the TIME FORMATS section. The default value for
847 RekeyLimit is default none, which means that rekeying is
848 performed after the cipher's default amount of data has been sent
849 or received and no time based rekeying is done.
850
851 RevokedKeys
852 Specifies revoked public keys file, or none to not use one. Keys
853 listed in this file will be refused for public key
854 authentication. Note that if this file is not readable, then
855 public key authentication will be refused for all users. Keys
856 may be specified as a text file, listing one public key per line,
857 or as an OpenSSH Key Revocation List (KRL) as generated by
858 ssh-keygen(1). For more information on KRLs, see the KEY
859 REVOCATION LISTS section in ssh-keygen(1).
860
861 RDomain
862 Specifies an explicit routing domain that is applied after
863 authentication has completed. The user session, as well and any
864 forwarded or listening IP sockets, will be bound to this
865 rdomain(4). If the routing domain is set to %D, then the domain
866 in which the incoming connection was received will be applied.
867
868 SetEnv Specifies one or more environment variables to set in child
869 sessions started by sshd(8) as M-bM-^@M-^\NAME=VALUEM-bM-^@M-^]. The environment
870 value may be quoted (e.g. if it contains whitespace characters).
871 Environment variables set by SetEnv override the default
872 environment and any variables specified by the user via AcceptEnv
873 or PermitUserEnvironment.
874
875 StreamLocalBindMask
876 Sets the octal file creation mode mask (umask) used when creating
877 a Unix-domain socket file for local or remote port forwarding.
878 This option is only used for port forwarding to a Unix-domain
879 socket file.
880
881 The default value is 0177, which creates a Unix-domain socket
882 file that is readable and writable only by the owner. Note that
883 not all operating systems honor the file mode on Unix-domain
884 socket files.
885
886 StreamLocalBindUnlink
887 Specifies whether to remove an existing Unix-domain socket file
888 for local or remote port forwarding before creating a new one.
889 If the socket file already exists and StreamLocalBindUnlink is
890 not enabled, sshd will be unable to forward the port to the Unix-
891 domain socket file. This option is only used for port forwarding
892 to a Unix-domain socket file.
893
894 The argument must be yes or no. The default is no.
895
896 StrictModes
897 Specifies whether sshd(8) should check file modes and ownership
898 of the user's files and home directory before accepting login.
899 This is normally desirable because novices sometimes accidentally
900 leave their directory or files world-writable. The default is
901 yes. Note that this does not apply to ChrootDirectory, whose
902 permissions and ownership are checked unconditionally.
903
904 Subsystem
905 Configures an external subsystem (e.g. file transfer daemon).
906 Arguments should be a subsystem name and a command (with optional
907 arguments) to execute upon subsystem request.
908
909 The command sftp-server implements the SFTP file transfer
910 subsystem.
911
912 Alternately the name internal-sftp implements an in-process SFTP
913 server. This may simplify configurations using ChrootDirectory
914 to force a different filesystem root on clients.
915
916 By default no subsystems are defined.
917
918 SyslogFacility
919 Gives the facility code that is used when logging messages from
920 sshd(8). The possible values are: DAEMON, USER, AUTH, LOCAL0,
921 LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The
922 default is AUTH.
923
924 TCPKeepAlive
925 Specifies whether the system should send TCP keepalive messages
926 to the other side. If they are sent, death of the connection or
927 crash of one of the machines will be properly noticed. However,
928 this means that connections will die if the route is down
929 temporarily, and some people find it annoying. On the other
930 hand, if TCP keepalives are not sent, sessions may hang
931 indefinitely on the server, leaving "ghost" users and consuming
932 server resources.
933
934 The default is yes (to send TCP keepalive messages), and the
935 server will notice if the network goes down or the client host
936 crashes. This avoids infinitely hanging sessions.
937
938 To disable TCP keepalive messages, the value should be set to no.
939
940 TrustedUserCAKeys
941 Specifies a file containing public keys of certificate
942 authorities that are trusted to sign user certificates for
943 authentication, or none to not use one. Keys are listed one per
944 line; empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. If
945 a certificate is presented for authentication and has its signing
946 CA key listed in this file, then it may be used for
947 authentication for any user listed in the certificate's
948 principals list. Note that certificates that lack a list of
949 principals will not be permitted for authentication using
950 TrustedUserCAKeys. For more details on certificates, see the
951 CERTIFICATES section in ssh-keygen(1).
952
953 UseDNS Specifies whether sshd(8) should look up the remote host name,
954 and to check that the resolved host name for the remote IP
955 address maps back to the very same IP address.
956
957 If this option is set to no (the default) then only addresses and
958 not host names may be used in ~/.ssh/authorized_keys from and
959 sshd_config Match Host directives.
960
961 UsePAM Enables the Pluggable Authentication Module interface. If set to
962 yes this will enable PAM authentication using
963 ChallengeResponseAuthentication and PasswordAuthentication in
964 addition to PAM account and session module processing for all
965 authentication types.
966
967 Because PAM challenge-response authentication usually serves an
968 equivalent role to password authentication, you should disable
969 either PasswordAuthentication or ChallengeResponseAuthentication.
970
971 If UsePAM is enabled, you will not be able to run sshd(8) as a
972 non-root user. The default is no.
973
974 VersionAddendum
975 Optionally specifies additional text to append to the SSH
976 protocol banner sent by the server upon connection. The default
977 is none.
978
979 X11DisplayOffset
980 Specifies the first display number available for sshd(8)'s X11
981 forwarding. This prevents sshd from interfering with real X11
982 servers. The default is 10.
983
984 X11Forwarding
985 Specifies whether X11 forwarding is permitted. The argument must
986 be yes or no. The default is no.
987
988 When X11 forwarding is enabled, there may be additional exposure
989 to the server and to client displays if the sshd(8) proxy display
990 is configured to listen on the wildcard address (see
991 X11UseLocalhost), though this is not the default. Additionally,
992 the authentication spoofing and authentication data verification
993 and substitution occur on the client side. The security risk of
994 using X11 forwarding is that the client's X11 display server may
995 be exposed to attack when the SSH client requests forwarding (see
996 the warnings for ForwardX11 in ssh_config(5)). A system
997 administrator may have a stance in which they want to protect
998 clients that may expose themselves to attack by unwittingly
999 requesting X11 forwarding, which can warrant a no setting.
1000
1001 Note that disabling X11 forwarding does not prevent users from
1002 forwarding X11 traffic, as users can always install their own
1003 forwarders.
1004
1005 X11UseLocalhost
1006 Specifies whether sshd(8) should bind the X11 forwarding server
1007 to the loopback address or to the wildcard address. By default,
1008 sshd binds the forwarding server to the loopback address and sets
1009 the hostname part of the DISPLAY environment variable to
1010 localhost. This prevents remote hosts from connecting to the
1011 proxy display. However, some older X11 clients may not function
1012 with this configuration. X11UseLocalhost may be set to no to
1013 specify that the forwarding server should be bound to the
1014 wildcard address. The argument must be yes or no. The default
1015 is yes.
1016
1017 XAuthLocation
1018 Specifies the full pathname of the xauth(1) program, or none to
1019 not use one. The default is /usr/X11R6/bin/xauth.
1020
1021TIME FORMATS
1022 sshd(8) command-line arguments and configuration file options that
1023 specify time may be expressed using a sequence of the form:
1024 time[qualifier], where time is a positive integer value and qualifier is
1025 one of the following:
1026
1027 M-bM-^_M-(noneM-bM-^_M-) seconds
1028 s | S seconds
1029 m | M minutes
1030 h | H hours
1031 d | D days
1032 w | W weeks
1033
1034 Each member of the sequence is added together to calculate the total time
1035 value.
1036
1037 Time format examples:
1038
1039 600 600 seconds (10 minutes)
1040 10m 10 minutes
1041 1h30m 1 hour 30 minutes (90 minutes)
1042
1043TOKENS
1044 Arguments to some keywords can make use of tokens, which are expanded at
1045 runtime:
1046
1047 %% A literal M-bM-^@M-^X%M-bM-^@M-^Y.
1048 %D The routing domain in which the incoming connection was
1049 received.
1050 %F The fingerprint of the CA key.
1051 %f The fingerprint of the key or certificate.
1052 %h The home directory of the user.
1053 %i The key ID in the certificate.
1054 %K The base64-encoded CA key.
1055 %k The base64-encoded key or certificate for authentication.
1056 %s The serial number of the certificate.
1057 %T The type of the CA key.
1058 %t The key or certificate type.
1059 %U The numeric user ID of the target user.
1060 %u The username.
1061
1062 AuthorizedKeysCommand accepts the tokens %%, %f, %h, %k, %t, %U, and %u.
1063
1064 AuthorizedKeysFile accepts the tokens %%, %h, %U, and %u.
1065
1066 AuthorizedPrincipalsCommand accepts the tokens %%, %F, %f, %h, %i, %K,
1067 %k, %s, %T, %t, %U, and %u.
1068
1069 AuthorizedPrincipalsFile accepts the tokens %%, %h, %U, and %u.
1070
1071 ChrootDirectory accepts the tokens %%, %h, %U, and %u.
1072
1073 RoutingDomain accepts the token %D.
1074
1075FILES
1076 /etc/ssh/sshd_config
1077 Contains configuration data for sshd(8). This file should be
1078 writable by root only, but it is recommended (though not
1079 necessary) that it be world-readable.
1080
1081SEE ALSO
1082 sftp-server(8), sshd(8)
1083
1084AUTHORS
1085 OpenSSH is a derivative of the original and free ssh 1.2.12 release by
1086 Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
1087 de Raadt and Dug Song removed many bugs, re-added newer features and
1088 created OpenSSH. Markus Friedl contributed the support for SSH protocol
1089 versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
1090 for privilege separation.
1091
1092OpenBSD 6.4 September 20, 2018 OpenBSD 6.4