diff options
-rw-r--r-- | ChangeLog | 12492 | ||||
-rw-r--r-- | aclocal.m4 | 15 | ||||
-rw-r--r-- | config.h.in | 2059 | ||||
-rwxr-xr-x | configure | 21833 | ||||
-rw-r--r-- | moduli.0 | 74 | ||||
-rw-r--r-- | scp.0 | 186 | ||||
-rw-r--r-- | sftp-server.0 | 98 | ||||
-rw-r--r-- | sftp.0 | 402 | ||||
-rw-r--r-- | ssh-add.0 | 152 | ||||
-rw-r--r-- | ssh-agent.0 | 119 | ||||
-rw-r--r-- | ssh-keygen.0 | 809 | ||||
-rw-r--r-- | ssh-keyscan.0 | 96 | ||||
-rw-r--r-- | ssh-keysign.0 | 52 | ||||
-rw-r--r-- | ssh-pkcs11-helper.0 | 35 | ||||
-rw-r--r-- | ssh-sk-helper.0 | 34 | ||||
-rw-r--r-- | ssh.0 | 1002 | ||||
-rw-r--r-- | ssh_config.0 | 1194 | ||||
-rw-r--r-- | sshd.0 | 672 | ||||
-rw-r--r-- | sshd_config.0 | 1153 |
19 files changed, 42477 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 000000000..bcaa38f94 --- /dev/null +++ b/ChangeLog | |||
@@ -0,0 +1,12492 @@ | |||
1 | commit 279261e1ea8150c7c64ab5fe7cb4a4ea17acbb29 | ||
2 | Author: Damien Miller <djm@mindrot.org> | ||
3 | Date: Sun Sep 27 17:25:01 2020 +1000 | ||
4 | |||
5 | update version numbers | ||
6 | |||
7 | commit 58ca6ab6ff035ed12b5078e3e9c7199fe72c8587 | ||
8 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9 | Date: Sun Sep 27 07:22:05 2020 +0000 | ||
10 | |||
11 | upstream: openssh 8.4 | ||
12 | |||
13 | OpenBSD-Commit-ID: a29e5b372d2c00e297da8a35a3b87c9beb3b4a58 | ||
14 | |||
15 | commit 9bb8a303ce05ff13fb421de991b495930be103c3 | ||
16 | Author: Damien Miller <djm@mindrot.org> | ||
17 | Date: Tue Sep 22 10:07:43 2020 +1000 | ||
18 | |||
19 | sync with upstream ssh-copy-id rev f0da1a1b7 | ||
20 | |||
21 | commit 0a4a5571ada76b1b012bec9cf6ad1203fc19ec8d | ||
22 | Author: djm@openbsd.org <djm@openbsd.org> | ||
23 | Date: Mon Sep 21 07:29:09 2020 +0000 | ||
24 | |||
25 | upstream: close stdin when forking after authentication too; ok markus | ||
26 | |||
27 | OpenBSD-Commit-ID: 43db17e4abc3e6b4a7b033aa8cdab326a7cb6c24 | ||
28 | |||
29 | commit d14fe25e6c3b89f8af17e2894046164ac3b45688 | ||
30 | Author: djm@openbsd.org <djm@openbsd.org> | ||
31 | Date: Sun Sep 20 23:31:46 2020 +0000 | ||
32 | |||
33 | upstream: close stdout/stderr after "ssh -f ..." forking | ||
34 | |||
35 | bz#3137, ok markus | ||
36 | |||
37 | OpenBSD-Commit-ID: e2d83cc4dea1665651a7aa924ad1ed6bcaaab3e2 | ||
38 | |||
39 | commit 53a33a0d745179c02108589e1722457ca8ae4372 | ||
40 | Author: Damien Miller <djm@mindrot.org> | ||
41 | Date: Sun Sep 20 15:57:09 2020 +1000 | ||
42 | |||
43 | .depend | ||
44 | |||
45 | commit 107eb3eeafcd390e1fa7cc7672a05e994d14013e | ||
46 | Author: djm@openbsd.org <djm@openbsd.org> | ||
47 | Date: Sun Sep 20 05:47:25 2020 +0000 | ||
48 | |||
49 | upstream: cap channel input buffer size at 16MB; avoids high memory use | ||
50 | |||
51 | when peer advertises a large window but is slow to consume the data we send | ||
52 | (e.g. because of a slow network) | ||
53 | |||
54 | reported by Pierre-Yves David | ||
55 | |||
56 | fix with & ok markus@ | ||
57 | |||
58 | OpenBSD-Commit-ID: 1452771f5e5e768876d3bfe2544e3866d6ade216 | ||
59 | |||
60 | commit acfe2ac5fe033e227ad3a56624fbbe4af8b5da04 | ||
61 | Author: Damien Miller <djm@mindrot.org> | ||
62 | Date: Fri Sep 18 22:02:53 2020 +1000 | ||
63 | |||
64 | libfido2 1.5.0 is recommended | ||
65 | |||
66 | commit 52a03e9fca2d74eef953ddd4709250f365ca3975 | ||
67 | Author: djm@openbsd.org <djm@openbsd.org> | ||
68 | Date: Fri Sep 18 08:16:38 2020 +0000 | ||
69 | |||
70 | upstream: handle multiple messages in a single read() | ||
71 | |||
72 | PR#183 by Dennis Kaarsemaker; feedback and ok markus@ | ||
73 | |||
74 | OpenBSD-Commit-ID: 8570bb4d02d00cf70b98590716ea6a7d1cce68d1 | ||
75 | |||
76 | commit dc098405b2939146e17567a25b08fc6122893cdf | ||
77 | Author: pedro martelletto <pedro@ambientworks.net> | ||
78 | Date: Fri Sep 18 08:57:29 2020 +0200 | ||
79 | |||
80 | configure.ac: add missing includes | ||
81 | |||
82 | when testing, make sure to include the relevant header files that | ||
83 | declare the types of the functions used by the test: | ||
84 | |||
85 | - stdio.h for printf(); | ||
86 | - stdlib.h for exit(); | ||
87 | - string.h for strcmp(); | ||
88 | - unistd.h for unlink(), _exit(), fork(), getppid(), sleep(). | ||
89 | |||
90 | commit b3855ff053f5078ec3d3c653cdaedefaa5fc362d | ||
91 | Author: djm@openbsd.org <djm@openbsd.org> | ||
92 | Date: Fri Sep 18 05:23:03 2020 +0000 | ||
93 | |||
94 | upstream: tweak the client hostkey preference ordering algorithm to | ||
95 | |||
96 | prefer the default ordering if the user has a key that matches the | ||
97 | best-preference default algorithm. | ||
98 | |||
99 | feedback and ok markus@ | ||
100 | |||
101 | OpenBSD-Commit-ID: a92dd7d7520ddd95c0a16786a7519e6d0167d35f | ||
102 | |||
103 | commit f93b187ab900c7d12875952cc63350fe4de8a0a8 | ||
104 | Author: Damien Miller <djm@mindrot.org> | ||
105 | Date: Fri Sep 18 14:55:48 2020 +1000 | ||
106 | |||
107 | control over the colours in gnome-ssh-askpass[23] | ||
108 | |||
109 | Optionally set the textarea colours via $GNOME_SSH_ASKPASS_FG_COLOR and | ||
110 | $GNOME_SSH_ASKPASS_BG_COLOR. These accept the usual three or six digit | ||
111 | hex colours. | ||
112 | |||
113 | commit 9d3d36bdb10b66abd1af42e8655502487b6ba1fa | ||
114 | Author: Damien Miller <djm@mindrot.org> | ||
115 | Date: Fri Sep 18 14:50:38 2020 +1000 | ||
116 | |||
117 | focus improvement for gnome-ssh-askpass[23] | ||
118 | |||
119 | When serving a SSH_ASKPASS_PROMPT=none information dialog, ensure | ||
120 | then <enter> doesn't immediately close the dialog. Instead, require an | ||
121 | explicit <tab> to reach the close button, or <esc>. | ||
122 | |||
123 | commit d6f507f37e6c75a899db0ef8224e72797c5563b6 | ||
124 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
125 | Date: Wed Sep 16 03:07:31 2020 +0000 | ||
126 | |||
127 | upstream: Remove unused buf, last user was removed when switching | ||
128 | |||
129 | to the sshbuf API. Patch from Sebastian Andrzej Siewior. | ||
130 | |||
131 | OpenBSD-Commit-ID: 250fa17f0cec01039cc4abd95917d9746e24c889 | ||
132 | |||
133 | commit c3c786c3a0973331ee0922b2c51832a3b8d7f20f | ||
134 | Author: djm@openbsd.org <djm@openbsd.org> | ||
135 | Date: Wed Sep 9 21:57:27 2020 +0000 | ||
136 | |||
137 | upstream: For the hostkey confirmation message: | ||
138 | |||
139 | > Are you sure you want to continue connecting (yes/no/[fingerprint])? | ||
140 | |||
141 | compare the fingerprint case sensitively; spotted Patrik Lundin | ||
142 | ok dtucker | ||
143 | |||
144 | OpenBSD-Commit-ID: 73097afee1b3a5929324e345ba4a4a42347409f2 | ||
145 | |||
146 | commit f2950baf0bafe6aa20dfe2e8d1ca4b23528df617 | ||
147 | Author: Darren Tucker <dtucker@dtucker.net> | ||
148 | Date: Fri Sep 11 14:45:23 2020 +1000 | ||
149 | |||
150 | New config-build-time dependency on automake. | ||
151 | |||
152 | commit 600c1c27abd496372bd0cf83d21a1c119dfdf9a5 | ||
153 | Author: Darren Tucker <dtucker@dtucker.net> | ||
154 | Date: Sun Sep 6 21:56:36 2020 +1000 | ||
155 | |||
156 | Add aclocal.m4 and config.h.in~ to .gitignore. | ||
157 | |||
158 | aclocal.m4 is now generated by autoreconf. | ||
159 | |||
160 | commit 4bf7e1d00b1dcd3a6b3239f77465c019e61c6715 | ||
161 | Author: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
162 | Date: Sat Sep 5 17:50:03 2020 +0200 | ||
163 | |||
164 | Quote the definition of OSSH_CHECK_HEADER_FOR_FIELD | ||
165 | |||
166 | autoreconf complains about underquoted definition of | ||
167 | OSSH_CHECK_HEADER_FOR_FIELD after aclocal.m4 has been and now is beeing | ||
168 | recreated. | ||
169 | |||
170 | Quote OSSH_CHECK_HEADER_FOR_FIELD as suggested. | ||
171 | |||
172 | Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
173 | |||
174 | commit a2f3ae386b5f7938ed3c565ad71f30c4f7f010f1 | ||
175 | Author: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
176 | Date: Sat Sep 5 17:50:02 2020 +0200 | ||
177 | |||
178 | Move the local m4 macros | ||
179 | |||
180 | The `aclocal' step is skipped during `autoreconf' because aclocal.m4 is | ||
181 | present. | ||
182 | Move the current aclocal.m4 which contains local macros into the m4/ | ||
183 | folder. With this change the aclocal.m4 will be re-created during | ||
184 | changes to the m4/ macro. | ||
185 | This is needed so the `aclocal' can fetch m4 macros from the system if | ||
186 | they are references in the configure script. This is a prerequisite to | ||
187 | use PKG_CHECK_MODULES. | ||
188 | |||
189 | Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
190 | |||
191 | commit 8372bff3a895b84fd78a81dc39da10928b662f5a | ||
192 | Author: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
193 | Date: Sat Sep 5 17:50:01 2020 +0200 | ||
194 | |||
195 | Remove HAVE_MMAP and BROKEN_MMAP | ||
196 | |||
197 | BROKEN_MMAP is no longer defined since commit | ||
198 | 1cfd5c06efb12 ("Remove portability support for mmap") | ||
199 | |||
200 | this commit also removed other HAVE_MMAP user. I didn't find anything | ||
201 | that defines HAVE_MMAP. The check does not trigger because compression | ||
202 | on server side is by default COMP_DELAYED (2) so it never triggers. | ||
203 | |||
204 | Remove remaining HAVE_MMAP and BROKEN_MMAP bits. | ||
205 | |||
206 | Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> | ||
207 | |||
208 | commit bbf20ac8065905f9cb9aeb8f1df57fcab52ee2fb | ||
209 | Author: djm@openbsd.org <djm@openbsd.org> | ||
210 | Date: Wed Sep 9 03:10:21 2020 +0000 | ||
211 | |||
212 | upstream: adapt to SSH_SK_VERSION_MAJOR crank | ||
213 | |||
214 | OpenBSD-Regress-ID: 0f3e76bdc8f9dbd9d22707c7bdd86051d5112ab8 | ||
215 | |||
216 | commit 9afe2a150893b20bdf9eab764978d817b9a7b783 | ||
217 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
218 | Date: Fri Aug 28 03:17:13 2020 +0000 | ||
219 | |||
220 | upstream: Ensure that address/mask mismatches are flagged at | ||
221 | |||
222 | config-check time. ok djm@ | ||
223 | |||
224 | OpenBSD-Regress-ID: 8f5f4c2c0bf00e6ceae7a1755a444666de0ea5c2 | ||
225 | |||
226 | commit c76773524179cb654ff838dd43ba1ddb155bafaa | ||
227 | Author: djm@openbsd.org <djm@openbsd.org> | ||
228 | Date: Wed Sep 9 03:08:01 2020 +0000 | ||
229 | |||
230 | upstream: when writing an attestation blob for a FIDO key, record all | ||
231 | |||
232 | the data needed to verify the attestation. Previously we were missing the | ||
233 | "authenticator data" that is included in the signature. | ||
234 | |||
235 | spotted by Ian Haken | ||
236 | feedback Pedro Martelletto and Ian Haken; ok markus@ | ||
237 | |||
238 | OpenBSD-Commit-ID: 8439896e63792b2db99c6065dd9a45eabbdb7e0a | ||
239 | |||
240 | commit c1c44eeecddf093a7983bd91e70b446de789b363 | ||
241 | Author: pedro martelletto <pedro@ambientworks.net> | ||
242 | Date: Tue Sep 1 17:01:55 2020 +0200 | ||
243 | |||
244 | configure.ac: fix libfido2 back-compat | ||
245 | |||
246 | - HAVE_FIDO_CRED_PROD -> HAVE_FIDO_CRED_PROT; | ||
247 | - check for fido_dev_get_touch_begin(), so that | ||
248 | HAVE_FIDO_DEV_GET_TOUCH_BEGIN gets defined. | ||
249 | |||
250 | commit 785f0f315bf7ac5909e988bb1ac3e019fb5e1594 | ||
251 | Author: djm@openbsd.org <djm@openbsd.org> | ||
252 | Date: Mon Aug 31 04:33:17 2020 +0000 | ||
253 | |||
254 | upstream: refuse to add verify-required (PINful) FIDO keys to | ||
255 | |||
256 | ssh-agent until the agent supports them properly | ||
257 | |||
258 | OpenBSD-Commit-ID: 125bd55a8df32c87c3ec33c6ebe437673a3d037e | ||
259 | |||
260 | commit 39e88aeff9c7cb6862b37ad1a87a03ebbb38c233 | ||
261 | Author: djm@openbsd.org <djm@openbsd.org> | ||
262 | Date: Mon Aug 31 00:17:41 2020 +0000 | ||
263 | |||
264 | upstream: Add RCS IDs to the few files that are missing them; from | ||
265 | |||
266 | Pedro Martelletto | ||
267 | |||
268 | OpenBSD-Commit-ID: 39aa37a43d0c75ec87f1659f573d3b5867e4a3b3 | ||
269 | |||
270 | commit 72730249b38a676da94a1366b54a6e96e6928bcb | ||
271 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
272 | Date: Fri Aug 28 03:15:52 2020 +0000 | ||
273 | |||
274 | upstream: Check that the addresses supplied to Match Address and | ||
275 | |||
276 | Match LocalAddress are valid when parsing in config-test mode. This will | ||
277 | catch address/mask mismatches before they cause problems at runtime. Found by | ||
278 | Daniel Stocker, ok djm@ | ||
279 | |||
280 | OpenBSD-Commit-ID: 2d0b10c69fad5d8fda4c703e7c6804935289378b | ||
281 | |||
282 | commit 2a3a9822311a565a9df48ed3b6a3c972f462bd7d | ||
283 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
284 | Date: Thu Aug 27 12:34:00 2020 +0000 | ||
285 | |||
286 | upstream: sentence fix; from pedro martelletto | ||
287 | |||
288 | OpenBSD-Commit-ID: f95b84a1e94e9913173229f3787448eea2f8a575 | ||
289 | |||
290 | commit ce178be0d954b210c958bc2b9e998cd6a7aa73a9 | ||
291 | Author: Damien Miller <djm@mindrot.org> | ||
292 | Date: Thu Aug 27 20:01:52 2020 +1000 | ||
293 | |||
294 | tweak back-compat for older libfido2 | ||
295 | |||
296 | commit d6f45cdde031acdf434bbb27235a1055621915f4 | ||
297 | Author: djm@openbsd.org <djm@openbsd.org> | ||
298 | Date: Thu Aug 27 09:46:04 2020 +0000 | ||
299 | |||
300 | upstream: debug()-print a little info about FIDO-specific key | ||
301 | |||
302 | fields via "ssh-keygen -vyf /path/key" | ||
303 | |||
304 | OpenBSD-Commit-ID: cf315c4fe77db43947d111b00155165cb6b577cf | ||
305 | |||
306 | commit b969072cc3d62d05cb41bc6d6f3c22c764ed932f | ||
307 | Author: djm@openbsd.org <djm@openbsd.org> | ||
308 | Date: Thu Aug 27 09:43:28 2020 +0000 | ||
309 | |||
310 | upstream: skip a bit more FIDO token selection logic when only a | ||
311 | |||
312 | single token is attached. | ||
313 | |||
314 | with Pedro Martelletto | ||
315 | |||
316 | OpenBSD-Commit-ID: e4a324bd9814227ec1faa8cb619580e661cca9ac | ||
317 | |||
318 | commit 744df42a129d7d7db26947b7561be32edac89f88 | ||
319 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
320 | Date: Thu Aug 27 06:15:22 2020 +0000 | ||
321 | |||
322 | upstream: tweak previous; | ||
323 | |||
324 | OpenBSD-Commit-ID: 92714b6531e244e4da401b2defaa376374e24be7 | ||
325 | |||
326 | commit e32479645ce649b444ba5c6e7151304306a09654 | ||
327 | Author: djm@openbsd.org <djm@openbsd.org> | ||
328 | Date: Thu Aug 27 03:55:22 2020 +0000 | ||
329 | |||
330 | upstream: adapt to API changes | ||
331 | |||
332 | OpenBSD-Regress-ID: 5f147990cb67094fe554333782ab268a572bb2dd | ||
333 | |||
334 | commit bbcc858ded3fbc46abfa7760e40389e3ca93884c | ||
335 | Author: Damien Miller <djm@mindrot.org> | ||
336 | Date: Thu Aug 27 12:37:12 2020 +1000 | ||
337 | |||
338 | degrade semi-gracefully when libfido2 is too old | ||
339 | |||
340 | commit 9cbbdc12cb6a2ab1e9ffe9974cca91d213c185c2 | ||
341 | Author: djm@openbsd.org <djm@openbsd.org> | ||
342 | Date: Thu Aug 27 01:15:36 2020 +0000 | ||
343 | |||
344 | upstream: dummy firmware needs to match API version numner crank (for | ||
345 | |||
346 | verify-required resident keys) even though it doesn't implement this feature | ||
347 | |||
348 | OpenBSD-Regress-ID: 86579ea2891e18e822e204413d011b2ae0e59657 | ||
349 | |||
350 | commit c1e76c64956b424ba260fd4eec9970e5b5859039 | ||
351 | Author: djm@openbsd.org <djm@openbsd.org> | ||
352 | Date: Thu Aug 27 02:11:09 2020 +0000 | ||
353 | |||
354 | upstream: remove unreachable code I forgot to delete in r1.334 | ||
355 | |||
356 | OpenBSD-Commit-ID: 9ed6078251a0959ee8deda443b9ae42484fd8b18 | ||
357 | |||
358 | commit 0caff05350bd5fc635674c9e051a0322faba5ae3 | ||
359 | Author: djm@openbsd.org <djm@openbsd.org> | ||
360 | Date: Thu Aug 27 01:08:45 2020 +0000 | ||
361 | |||
362 | upstream: Request PIN ahead of time for certain FIDO actions | ||
363 | |||
364 | When we know that a particular action will require a PIN, such as | ||
365 | downloading resident keys or generating a verify-required key, request | ||
366 | the PIN before attempting it. | ||
367 | |||
368 | joint work with Pedro Martelletto; ok markus@ | ||
369 | |||
370 | OpenBSD-Commit-ID: 863182d38ef075bad1f7d20ca485752a05edb727 | ||
371 | |||
372 | commit b649b3daa6d4b8ebe1bd6de69b3db5d2c03c9af0 | ||
373 | Author: djm@openbsd.org <djm@openbsd.org> | ||
374 | Date: Thu Aug 27 01:08:19 2020 +0000 | ||
375 | |||
376 | upstream: preserve verify-required for resident FIDO keys | ||
377 | |||
378 | When downloading a resident, verify-required key from a FIDO token, | ||
379 | preserve the verify-required in the private key that is written to | ||
380 | disk. Previously we weren't doing that because of lack of support | ||
381 | in the middleware API. | ||
382 | |||
383 | from Pedro Martelletto; ok markus@ and myself | ||
384 | |||
385 | OpenBSD-Commit-ID: 201c46ccdd227cddba3d64e1bdbd082afa956517 | ||
386 | |||
387 | commit 642e06d0df983fa2af85126cf4b23440bb2985bf | ||
388 | Author: djm@openbsd.org <djm@openbsd.org> | ||
389 | Date: Thu Aug 27 01:07:51 2020 +0000 | ||
390 | |||
391 | upstream: major rework of FIDO token selection logic | ||
392 | |||
393 | When PINs are in use and multiple FIDO tokens are attached to a host, we | ||
394 | cannot just blast requests at all attached tokens with the PIN specified | ||
395 | as this will cause the per-token PIN failure counter to increment. If | ||
396 | this retry counter hits the token's limit (usually 3 attempts), then the | ||
397 | token will lock itself and render all (web and SSH) of its keys invalid. | ||
398 | We don't want this. | ||
399 | |||
400 | So this reworks the key selection logic for the specific case of | ||
401 | multiple keys being attached. When multiple keys are attached and the | ||
402 | operation requires a PIN, then the user must touch the key that they | ||
403 | wish to use first in order to identify it. | ||
404 | |||
405 | This may require multiple touches, but only if there are multiple keys | ||
406 | attached AND (usually) the operation requires a PIN. The usual case of a | ||
407 | single key attached should be unaffected. | ||
408 | |||
409 | Work by Pedro Martelletto; ok myself and markus@ | ||
410 | |||
411 | OpenBSD-Commit-ID: 637d3049ced61b7a9ee796914bbc4843d999a864 | ||
412 | |||
413 | commit 801c9f095e6d8b7b91aefd98f5001c652ea13488 | ||
414 | Author: djm@openbsd.org <djm@openbsd.org> | ||
415 | Date: Thu Aug 27 01:07:09 2020 +0000 | ||
416 | |||
417 | upstream: support for requiring user verified FIDO keys in sshd | ||
418 | |||
419 | This adds a "verify-required" authorized_keys flag and a corresponding | ||
420 | sshd_config option that tells sshd to require that FIDO keys verify the | ||
421 | user identity before completing the signing/authentication attempt. | ||
422 | Whether or not user verification was performed is already baked into the | ||
423 | signature made on the FIDO token, so this is just plumbing that flag | ||
424 | through and adding ways to require it. | ||
425 | |||
426 | feedback and ok markus@ | ||
427 | |||
428 | OpenBSD-Commit-ID: 3a2313aae153e043d57763d766bb6d55c4e276e6 | ||
429 | |||
430 | commit 9b8ad93824c682ce841f53f3b5762cef4e7cc4dc | ||
431 | Author: djm@openbsd.org <djm@openbsd.org> | ||
432 | Date: Thu Aug 27 01:06:18 2020 +0000 | ||
433 | |||
434 | upstream: support for user-verified FIDO keys | ||
435 | |||
436 | FIDO2 supports a notion of "user verification" where the user is | ||
437 | required to demonstrate their identity to the token before particular | ||
438 | operations (e.g. signing). Typically this is done by authenticating | ||
439 | themselves using a PIN that has been set on the token. | ||
440 | |||
441 | This adds support for generating and using user verified keys where | ||
442 | the verification happens via PIN (other options might be added in the | ||
443 | future, but none are in common use now). Practically, this adds | ||
444 | another key generation option "verify-required" that yields a key that | ||
445 | requires a PIN before each authentication. | ||
446 | |||
447 | feedback markus@ and Pedro Martelletto; ok markus@ | ||
448 | |||
449 | OpenBSD-Commit-ID: 57fd461e4366f87c47502c5614ec08573e6d6a15 | ||
450 | |||
451 | commit 1196d7f49d4fbc90f37e550de3056561613b0960 | ||
452 | Author: cheloha@openbsd.org <cheloha@openbsd.org> | ||
453 | Date: Wed Aug 12 01:23:45 2020 +0000 | ||
454 | |||
455 | upstream: ssh-keyscan(1): simplify conloop() with timercmp(3), | ||
456 | |||
457 | timersub(3); ok djm@ | ||
458 | |||
459 | OpenBSD-Commit-ID: a102acb544f840d33ad73d40088adab4a687fa27 | ||
460 | |||
461 | commit d0a195c89e26766d3eb8f3e4e2a00ebc98b57795 | ||
462 | Author: djm@openbsd.org <djm@openbsd.org> | ||
463 | Date: Tue Aug 11 09:49:57 2020 +0000 | ||
464 | |||
465 | upstream: let ssh_config(5)'s AddKeysToAgent keyword accept a time | ||
466 | |||
467 | limit for keys in addition to its current flag options. Time-limited keys | ||
468 | will automatically be removed from ssh-agent after their expiry time has | ||
469 | passed; ok markus@ | ||
470 | |||
471 | OpenBSD-Commit-ID: 792e71cacbbc25faab5424cf80bee4a006119f94 | ||
472 | |||
473 | commit e9c2002891a7b8e66f4140557a982978f372e5a3 | ||
474 | Author: djm@openbsd.org <djm@openbsd.org> | ||
475 | Date: Tue Aug 11 09:45:54 2020 +0000 | ||
476 | |||
477 | upstream: let the "Confirm user presence for key ..." ssh-askpass | ||
478 | |||
479 | notification respect $SSH_ASKPASS_REQUIRE; ok markus@ | ||
480 | |||
481 | OpenBSD-Commit-ID: 7c1a616b348779bda3b9ad46bf592741f8e206c1 | ||
482 | |||
483 | commit eaf8672b1b52db2815a229745f4e4b08681bed6d | ||
484 | Author: Darren Tucker <dtucker@dtucker.net> | ||
485 | Date: Fri Aug 21 00:04:13 2020 +1000 | ||
486 | |||
487 | Remove check for 'ent' command. | ||
488 | |||
489 | It was added in 8d1fd57a9 for measuring entropy of ssh_prng_cmds which | ||
490 | has long since been removed and there are no other references to it. | ||
491 | |||
492 | commit 05c215de8d224e094a872d97d45f37f60c06206b | ||
493 | Author: Darren Tucker <dtucker@dtucker.net> | ||
494 | Date: Mon Aug 17 21:34:32 2020 +1000 | ||
495 | |||
496 | Wrap stdint.h include in ifdef HAVE_STDINT_H. | ||
497 | |||
498 | commit eaf2765efe8bc74feba85c34295d067637fc6635 | ||
499 | Author: Damien Miller <djm@mindrot.org> | ||
500 | Date: Mon Aug 10 13:24:09 2020 +1000 | ||
501 | |||
502 | sync memmem.c with OpenBSD | ||
503 | |||
504 | commit ed6bef77f5bb5b8f9ca2914478949e29f2f0a780 | ||
505 | Author: Darren Tucker <dtucker@dtucker.net> | ||
506 | Date: Fri Aug 7 17:12:16 2020 +1000 | ||
507 | |||
508 | Always send any PAM account messages. | ||
509 | |||
510 | If the PAM account stack reaturns any messages, send them to the user | ||
511 | not just if the check succeeds. bz#2049, ok djm@ | ||
512 | |||
513 | commit a09e98dcae1e26f026029b7142b0e0d10130056f | ||
514 | Author: Darren Tucker <dtucker@dtucker.net> | ||
515 | Date: Fri Aug 7 15:37:37 2020 +1000 | ||
516 | |||
517 | Output test debug logs on failure. | ||
518 | |||
519 | commit eb122b1eebe58b29a83a507ee814cbcf8aeded1b | ||
520 | Author: Darren Tucker <dtucker@dtucker.net> | ||
521 | Date: Fri Aug 7 15:11:42 2020 +1000 | ||
522 | |||
523 | Add ability to specify exact test target. | ||
524 | |||
525 | commit c2ec7a07f8caabb4d8e00c66e7cd46bf2cd1e922 | ||
526 | Author: Darren Tucker <dtucker@dtucker.net> | ||
527 | Date: Fri Aug 7 14:21:15 2020 +1000 | ||
528 | |||
529 | Document --without-openssl and --without-zlib. | ||
530 | |||
531 | commit 651bb3a31949bbdc3a78b2ede95a77bce0c72984 | ||
532 | Author: Darren Tucker <dtucker@dtucker.net> | ||
533 | Date: Fri Aug 7 14:15:11 2020 +1000 | ||
534 | |||
535 | Add without-openssl without-zlib test target. | ||
536 | |||
537 | commit 9499f2bb01dc1032ae155999b2d7764b9491341f | ||
538 | Author: Stefan Schindler <dns2utf8@estada.ch> | ||
539 | Date: Wed Aug 5 19:00:52 2020 +0200 | ||
540 | |||
541 | Add CI with prepare script | ||
542 | |||
543 | * Only use heimdal kerberos implementation | ||
544 | * Fetch yubico/libfido2 (see: https://github.com/Yubico/libfido2) | ||
545 | * Add one target for | ||
546 | * all features | ||
547 | * each feature alone | ||
548 | * no features | ||
549 | |||
550 | commit ea1f649046546a860f68b97ddc3015b7e44346ca | ||
551 | Author: Damien Miller <djm@mindrot.org> | ||
552 | Date: Wed Aug 5 08:58:57 2020 +1000 | ||
553 | |||
554 | support NetBSD's utmpx.ut_ss address field | ||
555 | |||
556 | bz#960, ok dtucker | ||
557 | |||
558 | commit 32c63e75a70a0ed9d6887a55fcb0e4531a6ad617 | ||
559 | Author: Damien Miller <djm@mindrot.org> | ||
560 | Date: Tue Aug 4 14:59:21 2020 +1000 | ||
561 | |||
562 | wrap a declaration in the same ifdefs as its use | ||
563 | |||
564 | avoids warnings on NetBSD | ||
565 | |||
566 | commit c9e3be9f4b41fda32a2a0138d54c7a6b563bc94d | ||
567 | Author: Damien Miller <djm@mindrot.org> | ||
568 | Date: Tue Aug 4 14:58:46 2020 +1000 | ||
569 | |||
570 | undef TAILQ_CONCAT and friends | ||
571 | |||
572 | Needed for NetBSD. etc that supply these macros | ||
573 | |||
574 | commit 2d8a3b7e8b0408dfeb933ac5cfd3a58f5bac49af | ||
575 | Author: djm@openbsd.org <djm@openbsd.org> | ||
576 | Date: Mon Aug 3 02:53:51 2020 +0000 | ||
577 | |||
578 | upstream: ensure that certificate extensions are lexically sorted. | ||
579 | |||
580 | Previously if the user specified a custom extension then the everything would | ||
581 | be in order except the custom ones. bz3198 ok dtucker markus | ||
582 | |||
583 | OpenBSD-Commit-ID: d97deb90587b06cb227c66ffebb2d9667bf886f0 | ||
584 | |||
585 | commit a8732d74cb8e72f0c6366015687f1e649f60be87 | ||
586 | Author: djm@openbsd.org <djm@openbsd.org> | ||
587 | Date: Mon Aug 3 02:43:41 2020 +0000 | ||
588 | |||
589 | upstream: allow -A to explicitly enable agent forwarding in scp and | ||
590 | |||
591 | sftp. The default remains to not forward an agent, even when ssh_config | ||
592 | enables it. ok jmc dtucker markus | ||
593 | |||
594 | OpenBSD-Commit-ID: 36cc526aa3b0f94e4704b8d7b969dd63e8576822 | ||
595 | |||
596 | commit ab9105470a83ed5d8197959a1b1f367399958ba1 | ||
597 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
598 | Date: Mon Aug 3 02:42:49 2020 +0000 | ||
599 | |||
600 | upstream: clang -Wimplicit-fallthrough does not recognise /* | ||
601 | |||
602 | FALLTHROUGH */ comments, which is the style we currently use, and gives too | ||
603 | many boring warnings. ok djm | ||
604 | |||
605 | OpenBSD-Commit-ID: 07b5031e9f49f2b69ac5e85b8da4fc9e393992a0 | ||
606 | |||
607 | commit ced327b9fb78c94d143879ef4b2a02cbc5d38690 | ||
608 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
609 | Date: Fri Jul 31 04:19:37 2020 +0000 | ||
610 | |||
611 | upstream: Also compare username when checking for JumpHost loops. | ||
612 | |||
613 | bz#3057, ok djm@ | ||
614 | |||
615 | OpenBSD-Commit-ID: 9bbc1d138adb34c54f3c03a15a91f75dbf418782 | ||
616 | |||
617 | commit ae7527010c44b3376b85d036a498f136597b2099 | ||
618 | Author: Darren Tucker <dtucker@dtucker.net> | ||
619 | Date: Fri Jul 31 15:19:04 2020 +1000 | ||
620 | |||
621 | Remove AC_REVISION. | ||
622 | |||
623 | It hasn't been useful since we switched to git in 2014. ok djm@ | ||
624 | |||
625 | commit 89fc3f414be0ce4e8008332a9739a7d721269e50 | ||
626 | Author: Darren Tucker <dtucker@dtucker.net> | ||
627 | Date: Tue Jul 28 19:40:30 2020 +1000 | ||
628 | |||
629 | Use argv in OSSH_CHECK_CFLAG_COMPILE test. | ||
630 | |||
631 | configure.ac is not detecting -Wextra in compilers that implement the | ||
632 | option. The problem is that -Wextra implies -Wunused-parameter, and the | ||
633 | C excerpt used by aclocal.m4 does not use argv. Patch from pedro at | ||
634 | ambientworks.net, ok djm@ | ||
635 | |||
636 | commit 62c81ef531b0cc7ff655455dd34f5f0c94f48e82 | ||
637 | Author: Darren Tucker <dtucker@dtucker.net> | ||
638 | Date: Mon Jul 20 22:12:07 2020 +1000 | ||
639 | |||
640 | Skip ECDSA-SK webauthn test when built w/out ECC | ||
641 | |||
642 | commit 3ec9a6d7317236a9994887d8bd5d246af403a00d | ||
643 | Author: Damien Miller <djm@mindrot.org> | ||
644 | Date: Mon Jul 20 13:09:25 2020 +1000 | ||
645 | |||
646 | Add ssh-sk-helper and manpage to RPM spec file | ||
647 | |||
648 | Based on patch from Fabio Pedretti | ||
649 | |||
650 | commit a2855c048b3f4b17d8787bd3f24232ec0cd79abe | ||
651 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
652 | Date: Fri Jul 17 07:09:24 2020 +0000 | ||
653 | |||
654 | upstream: Add %k to the TOKENs for Match Exec for consistency with | ||
655 | |||
656 | the other keywords that recently got %k. | ||
657 | |||
658 | OpenBSD-Commit-ID: 1857d1c40f270cbc254fca91e66110641dddcfdb | ||
659 | |||
660 | commit 69860769fa9f4529d8612ec055ae11912f7344cf | ||
661 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
662 | Date: Fri Jul 17 05:59:05 2020 +0000 | ||
663 | |||
664 | upstream: fix macro slip in previous; | ||
665 | |||
666 | OpenBSD-Commit-ID: 624e47ab209450ad9ad5c69f54fa69244de5ed9a | ||
667 | |||
668 | commit 40649bd0822883b684183854b16d0b8461d5697b | ||
669 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
670 | Date: Fri Jul 17 07:10:24 2020 +0000 | ||
671 | |||
672 | upstream: Add test for '%k' (HostKeyAlias) TOKEN. | ||
673 | |||
674 | OpenBSD-Regress-ID: 8ed1ba1a811790031aad3fcea860a34ad7910456 | ||
675 | |||
676 | commit 6736fe680704a3518cb4f3f8f6723b00433bd3dd | ||
677 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
678 | Date: Fri Jul 17 03:26:58 2020 +0000 | ||
679 | |||
680 | upstream: Add tests for expansions on UserKnownHostsFile. | ||
681 | |||
682 | OpenBSD-Regress-ID: bccf8060306c841bbcceb1392644f906a4d6ca51 | ||
683 | |||
684 | commit 287dc6396e0f9cb2393f901816dbd7f2a7dfbb5f | ||
685 | Author: djm@openbsd.org <djm@openbsd.org> | ||
686 | Date: Fri Jul 17 03:51:32 2020 +0000 | ||
687 | |||
688 | upstream: log error message for process_write() write failures | ||
689 | |||
690 | OpenBSD-Commit-ID: f733d7b3b05e3c68967dc18dfe39b9e8fad29851 | ||
691 | |||
692 | commit 8df5774a42d2eaffe057bd7f293fc6a4b1aa411c | ||
693 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
694 | Date: Fri Jul 17 03:43:42 2020 +0000 | ||
695 | |||
696 | upstream: Add a '%k' TOKEN that expands to the effective HostKey of | ||
697 | |||
698 | the destination. This allows, eg, keeping host keys in individual files | ||
699 | using "UserKnownHostsFile ~/.ssh/known_hosts.d/%k". bz#1654, ok djm@, jmc@ | ||
700 | (man page bits) | ||
701 | |||
702 | OpenBSD-Commit-ID: 7084d723c9cc987a5c47194219efd099af5beadc | ||
703 | |||
704 | commit c4f239944a4351810fd317edf408bdcd5c0102d9 | ||
705 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
706 | Date: Fri Jul 17 03:23:10 2020 +0000 | ||
707 | |||
708 | upstream: Add %-TOKEN, environment variable and tilde expansion to | ||
709 | |||
710 | UserKnownHostsFile, allowing the file to be automagically split up in the | ||
711 | configuration (eg bz#1654). ok djm@, man page parts jmc@ | ||
712 | |||
713 | OpenBSD-Commit-ID: 7e1b406caf147638bb51558836a72d6cc0bd1b18 | ||
714 | |||
715 | commit dbaaa01daedb423c38124a72c471982fb08a16fb | ||
716 | Author: solene@openbsd.org <solene@openbsd.org> | ||
717 | Date: Wed Jul 15 07:50:46 2020 +0000 | ||
718 | |||
719 | upstream: - Add [-a rounds] in ssh-keygen man page and usage() - | ||
720 | |||
721 | Reorder parameters list in the first usage() case - Sentence rewording | ||
722 | |||
723 | ok dtucker@ | ||
724 | jmc@ noticed usage() missed -a flag too | ||
725 | |||
726 | OpenBSD-Commit-ID: f06b9afe91cc96f260b929a56e9930caecbde246 | ||
727 | |||
728 | commit 69924a92c3af7b99a7541aa544a2334ec0fb092c | ||
729 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
730 | Date: Wed Jul 15 05:40:05 2020 +0000 | ||
731 | |||
732 | upstream: start sentence with capital letter; | ||
733 | |||
734 | OpenBSD-Commit-ID: ab06581d51b2b4cc1b4aab781f7f3cfa56cad973 | ||
735 | |||
736 | commit 5b56bd0affea7b02b540bdbc4d1d271b0e4fc885 | ||
737 | Author: Damien Miller <djm@mindrot.org> | ||
738 | Date: Fri Jul 17 13:15:50 2020 +1000 | ||
739 | |||
740 | detect Linux/X32 systems | ||
741 | |||
742 | This is a frankenstein monster of AMD64 instructions/calling conventions | ||
743 | but with a 4GB address space. Allegedly deprecated but people still run | ||
744 | into it causing weird sandbox failures, e.g. bz#3085 | ||
745 | |||
746 | commit 9c9ddc1391d6af8d09580a2424ab467d0a5df3c7 | ||
747 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
748 | Date: Wed Jul 15 06:43:16 2020 +0000 | ||
749 | |||
750 | upstream: Fix previous by calling the correct function. | ||
751 | |||
752 | OpenBSD-Regress-ID: 821cdd1dff9c502cceff4518b6afcb81767cad5a | ||
753 | |||
754 | commit f1a4798941b4372bfe5e46f1c0f8672fe692d9e4 | ||
755 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
756 | Date: Wed Jul 15 05:36:50 2020 +0000 | ||
757 | |||
758 | upstream: Update test to match recent change in match.c | ||
759 | |||
760 | OpenBSD-Regress-ID: 965bda1f95f09a765050707340c73ad755f41167 | ||
761 | |||
762 | commit d7e71be4fd57b7c7e620d733cdf2333b27bfa924 | ||
763 | Author: Darren Tucker <dtucker@dtucker.net> | ||
764 | Date: Wed Jul 15 15:30:43 2020 +1000 | ||
765 | |||
766 | Adjust portable code to match changes in 939d787d, | ||
767 | |||
768 | commit fec89f32a84fd0aa1afc81deec80a460cbaf451a | ||
769 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
770 | Date: Wed Jul 15 04:27:34 2020 +0000 | ||
771 | |||
772 | upstream: Add default for number of rounds (-a). ok djm@ | ||
773 | |||
774 | OpenBSD-Commit-ID: cb7e9aa04ace01a98e63e4bd77f34a42ab169b15 | ||
775 | |||
776 | commit aaa8b609a7b332be836cd9a3b782422254972777 | ||
777 | Author: djm@openbsd.org <djm@openbsd.org> | ||
778 | Date: Tue Jul 14 23:57:01 2020 +0000 | ||
779 | |||
780 | upstream: allow some additional control over the use of ssh-askpass | ||
781 | |||
782 | via $SSH_ASKPASS_REQUIRE, including force-enable/disable. bz#69 ok markus@ | ||
783 | |||
784 | OpenBSD-Commit-ID: 3a1e6cbbf6241ddc4405c4246caa2c249f149eb2 | ||
785 | |||
786 | commit 6368022cd4dd508671c4999a59ec5826df098530 | ||
787 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
788 | Date: Tue Jul 7 02:47:21 2020 +0000 | ||
789 | |||
790 | upstream: correct recently broken comments | ||
791 | |||
792 | OpenBSD-Commit-ID: 964d9a88f7de1d0eedd3f8070b43fb6e426351f1 | ||
793 | |||
794 | commit 6d755706a0059eb9e2d63517f288b75cbc3b4701 | ||
795 | Author: djm@openbsd.org <djm@openbsd.org> | ||
796 | Date: Sun Jul 5 23:59:45 2020 +0000 | ||
797 | |||
798 | upstream: some language improvements; ok markus | ||
799 | |||
800 | OpenBSD-Commit-ID: 939d787d571b4d5da50b3b721fd0b2ac236acaa8 | ||
801 | |||
802 | commit b0c1e8384d5e136ebdf895d1434aea7dd8661a1c | ||
803 | Author: markus@openbsd.org <markus@openbsd.org> | ||
804 | Date: Fri Jul 3 10:12:26 2020 +0000 | ||
805 | |||
806 | upstream: update setproctitle after re-exec; ok djm | ||
807 | |||
808 | OpenBSD-Commit-ID: bc92d122f9184ec2a9471ade754b80edd034ce8b | ||
809 | |||
810 | commit cd119a5ec2bf0ed5df4daff3bd14f8f7566dafd3 | ||
811 | Author: markus@openbsd.org <markus@openbsd.org> | ||
812 | Date: Fri Jul 3 10:11:33 2020 +0000 | ||
813 | |||
814 | upstream: keep ignoring HUP after fork+exec; ok djm | ||
815 | |||
816 | OpenBSD-Commit-ID: 7679985a84ee5ceb09839905bb6f3ddd568749a2 | ||
817 | |||
818 | commit 8af4a743693ccbea3e15fc9e93edbeb610fa94f4 | ||
819 | Author: markus@openbsd.org <markus@openbsd.org> | ||
820 | Date: Fri Jul 3 10:10:17 2020 +0000 | ||
821 | |||
822 | upstream: don't exit the listener on send_rexec_state errors; ok | ||
823 | |||
824 | djm | ||
825 | |||
826 | OpenBSD-Commit-ID: 57cbd757d130d3f45b7d41310b3a15eeec137d5c | ||
827 | |||
828 | commit 03da4c2b70468f04ed1c08518ea0a70e67232739 | ||
829 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
830 | Date: Wed Jul 15 04:55:47 2020 +0000 | ||
831 | |||
832 | upstream: Use $OBJ to find key files. Fixes test when run on an obj | ||
833 | |||
834 | directory (on OpenBSD) or out of tree (in Portable). | ||
835 | |||
836 | OpenBSD-Regress-ID: 938fa8ac86adaa527d64a305bd2135cfbb1c0a17 | ||
837 | |||
838 | commit 73f20f195ad18f1cf633eb7d8be95dc1b6111eea | ||
839 | Author: Darren Tucker <dtucker@dtucker.net> | ||
840 | Date: Sat Jul 4 23:11:23 2020 +1000 | ||
841 | |||
842 | Wrap stdint.h in ifdef HAVE_STDINT_H. | ||
843 | |||
844 | commit aa6fa4bf3023fa0e5761cd8f4b2cd015d2de74dd | ||
845 | Author: djm@openbsd.org <djm@openbsd.org> | ||
846 | Date: Fri Jul 3 07:25:18 2020 +0000 | ||
847 | |||
848 | upstream: put back the mux_ctx memleak fix, but only for channels of | ||
849 | |||
850 | type SSH_CHANNEL_MUX_LISTENER; Specifically SSH_CHANNEL_MUX_PROXY channels | ||
851 | should not have this structure freed. | ||
852 | |||
853 | OpenBSD-Commit-ID: f3b213ae60405f77439e2b06262f054760c9d325 | ||
854 | |||
855 | commit d8195914eb43b20b13381f4e5a74f9f8a14f0ded | ||
856 | Author: djm@openbsd.org <djm@openbsd.org> | ||
857 | Date: Fri Jul 3 07:17:35 2020 +0000 | ||
858 | |||
859 | upstream: revert r1.399 - the lifetime of c->mux_ctx is more complex; | ||
860 | |||
861 | simply freeing it here causes other problems | ||
862 | |||
863 | OpenBSD-Commit-ID: c6fee8ca94e2485faa783839541962be2834c5ed | ||
864 | |||
865 | commit 20b5fab9f773b3d3c7f06cb15b8f69a2c081ee80 | ||
866 | Author: djm@openbsd.org <djm@openbsd.org> | ||
867 | Date: Fri Jul 3 07:02:37 2020 +0000 | ||
868 | |||
869 | upstream: avoid tilde_expand_filename() in expanding ~/.ssh/rc - if | ||
870 | |||
871 | sshd is in chroot mode, the likely absence of a password database will cause | ||
872 | tilde_expand_filename() to fatal; ok dtucker@ | ||
873 | |||
874 | OpenBSD-Commit-ID: e20aee6159e8b79190d18dba1513fc1b7c8b7ee1 | ||
875 | |||
876 | commit c8935081db35d73ee6355999142fa0776a2af912 | ||
877 | Author: djm@openbsd.org <djm@openbsd.org> | ||
878 | Date: Fri Jul 3 06:46:41 2020 +0000 | ||
879 | |||
880 | upstream: when redirecting sshd's log output to a file, undo this | ||
881 | |||
882 | redirection after the session child process is forked(); ok dtucker@ | ||
883 | |||
884 | OpenBSD-Commit-ID: 6df86dd653c91f5bc8ac1916e7680d9d24690865 | ||
885 | |||
886 | commit 183c4aaef944af3a1a909ffa01058c65bac55748 | ||
887 | Author: djm@openbsd.org <djm@openbsd.org> | ||
888 | Date: Fri Jul 3 06:29:57 2020 +0000 | ||
889 | |||
890 | upstream: start ClientAliveInterval bookkeeping before first pass | ||
891 | |||
892 | through select() loop; fixed theoretical case where busy sshd may ignore | ||
893 | timeouts from client; inspired by and ok dtucker | ||
894 | |||
895 | OpenBSD-Commit-ID: 96bfc4b1f86c7da313882a84755b2b47eb31957f | ||
896 | |||
897 | commit 6fcfd303d67f16695198cf23d109a988e40eefb6 | ||
898 | Author: Damien Miller <djm@mindrot.org> | ||
899 | Date: Fri Jul 3 15:28:27 2020 +1000 | ||
900 | |||
901 | add check for fido_cred_set_prot() to configure | ||
902 | |||
903 | commit f11b23346309e4d5138e733a49321aedd6eeaa2f | ||
904 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
905 | Date: Fri Jul 3 05:09:06 2020 +0000 | ||
906 | |||
907 | upstream: Only reset the serveralive check when we receive traffic from | ||
908 | |||
909 | the server and ignore traffic from a port forwarding client, preventing a | ||
910 | client from keeping a connection alive when it should be terminated. Based | ||
911 | on a patch from jxraynor at gmail.com via openssh-unix-dev and bz#2265, ok | ||
912 | djm@ | ||
913 | |||
914 | OpenBSD-Commit-ID: a941a575a5cbc244c0ef5d7abd0422bbf02c2dcd | ||
915 | |||
916 | commit adfdbf1211914b631c038f0867a447db7b519937 | ||
917 | Author: Damien Miller <djm@mindrot.org> | ||
918 | Date: Fri Jul 3 15:15:15 2020 +1000 | ||
919 | |||
920 | sync sys-queue.h with OpenBSD upstream | ||
921 | |||
922 | needed for TAILQ_CONCAT | ||
923 | |||
924 | commit 1b90ddde49e2ff377204082b6eb130a096411dc1 | ||
925 | Author: djm@openbsd.org <djm@openbsd.org> | ||
926 | Date: Fri Jul 3 05:08:41 2020 +0000 | ||
927 | |||
928 | upstream: fix memory leak of mux_ctx; patch from Sergiy Lozovsky | ||
929 | |||
930 | via bz3189 ok dtucker | ||
931 | |||
932 | OpenBSD-Commit-ID: db249bd4526fd42d0f4f43f72f7b8b7705253bde | ||
933 | |||
934 | commit 55ef3e9cbd5b336bd0f89205716924886fcf86de | ||
935 | Author: markus@openbsd.org <markus@openbsd.org> | ||
936 | Date: Wed Jul 1 16:28:31 2020 +0000 | ||
937 | |||
938 | upstream: free kex in ssh_packet_close; ok djm semarie | ||
939 | |||
940 | OpenBSD-Commit-ID: dbc181e90d3d32fd97b10d75e68e374270e070a2 | ||
941 | |||
942 | commit e1c401109b61f7dbc199b5099933d579e7fc5dc9 | ||
943 | Author: bket@openbsd.org <bket@openbsd.org> | ||
944 | Date: Sat Jun 27 13:39:09 2020 +0000 | ||
945 | |||
946 | upstream: Replace TAILQ concatenation loops with TAILQ_CONCAT | ||
947 | |||
948 | OK djm@ | ||
949 | |||
950 | OpenBSD-Commit-ID: 454b40e09a117ddb833794358970a65b14c431ef | ||
951 | |||
952 | commit 14beca57ac92d62830c42444c26ba861812dc837 | ||
953 | Author: semarie@openbsd.org <semarie@openbsd.org> | ||
954 | Date: Fri Jun 26 11:26:01 2020 +0000 | ||
955 | |||
956 | upstream: backout 1.293 fix kex mem-leak in ssh_packet_close at markus | ||
957 | |||
958 | request | ||
959 | |||
960 | the change introduced a NULL deref in sshpkt_vfatal() (uses of ssh->kex after | ||
961 | calling ssh_packet_clear_keys()) | ||
962 | |||
963 | OpenBSD-Commit-ID: 9c9a6721411461b0b1c28dc00930d7251a798484 | ||
964 | |||
965 | commit 598c3a5e3885080ced0d7c40fde00f1d5cdbb32b | ||
966 | Author: Damien Miller <djm@mindrot.org> | ||
967 | Date: Fri Jun 26 16:07:12 2020 +1000 | ||
968 | |||
969 | document a PAM spec problem in a frustrated comment | ||
970 | |||
971 | commit 976c4f86286d52a0cb2aadf4a095d379c0da752e | ||
972 | Author: djm@openbsd.org <djm@openbsd.org> | ||
973 | Date: Fri Jun 26 05:42:16 2020 +0000 | ||
974 | |||
975 | upstream: avoid spurious error message when ssh-keygen creates files | ||
976 | |||
977 | outside ~/.ssh; with dtucker@ | ||
978 | |||
979 | OpenBSD-Commit-ID: ac0c662d44607e00ec78c266ee60752beb1c7e08 | ||
980 | |||
981 | commit 32b2502a9dfdfded1ccdc1fd6dc2b3fe41bfc205 | ||
982 | Author: Damien Miller <djm@mindrot.org> | ||
983 | Date: Fri Jun 26 15:30:06 2020 +1000 | ||
984 | |||
985 | missing ifdef SELINUX; spotted by dtucker | ||
986 | |||
987 | commit e073106f370cdd2679e41f6f55a37b491f0e82fe | ||
988 | Author: djm@openbsd.org <djm@openbsd.org> | ||
989 | Date: Fri Jun 26 05:12:21 2020 +0000 | ||
990 | |||
991 | upstream: regress test for ssh-add -d; ok dtucker@ | ||
992 | |||
993 | OpenBSD-Regress-ID: 3a2e044be616afc7dd4f56c100179e83b33d8abf | ||
994 | |||
995 | commit c809daaa1bad6b1c305b0e0b5440360f32546c84 | ||
996 | Author: markus@openbsd.org <markus@openbsd.org> | ||
997 | Date: Wed Jun 24 15:16:23 2020 +0000 | ||
998 | |||
999 | upstream: add test for mux w/-Oproxy; ok djm | ||
1000 | |||
1001 | OpenBSD-Regress-ID: 764d5c696e2a259f1316a056e225e50023abb027 | ||
1002 | |||
1003 | commit 3d06ff4bbd3dca8054c238d2a94c0da563ef7eee | ||
1004 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1005 | Date: Fri Jun 26 05:16:38 2020 +0000 | ||
1006 | |||
1007 | upstream: handle EINTR in waitfd() and timeout_connect() helpers; | ||
1008 | |||
1009 | bz#3071; ok dtucker@ | ||
1010 | |||
1011 | OpenBSD-Commit-ID: 08fa87be50070bd8b754d9b1ebb1138d7bc9d8ee | ||
1012 | |||
1013 | commit fe2ec0b9c19adeab0cd9f04b8152dc17f31c31e5 | ||
1014 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1015 | Date: Fri Jun 26 05:04:07 2020 +0000 | ||
1016 | |||
1017 | upstream: allow "ssh-add -d -" to read keys to be deleted from | ||
1018 | |||
1019 | stdin bz#3180; ok dtucker@ | ||
1020 | |||
1021 | OpenBSD-Commit-ID: 15c7f10289511eb19fce7905c9cae8954e3857ff | ||
1022 | |||
1023 | commit a3e0c376ffc11862fa3568b28188bd12965973e1 | ||
1024 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1025 | Date: Fri Jun 26 05:03:36 2020 +0000 | ||
1026 | |||
1027 | upstream: constify a few things; ok dtucker (as part of another | ||
1028 | |||
1029 | diff) | ||
1030 | |||
1031 | OpenBSD-Commit-ID: 7c17fc987085994d752304bd20b1ae267a9bcdf6 | ||
1032 | |||
1033 | commit 74344c3ca42c3f53b00b025daf09ae7f6aa38076 | ||
1034 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1035 | Date: Fri Jun 26 05:02:03 2020 +0000 | ||
1036 | |||
1037 | upstream: Defer creation of ~/.ssh by ssh(1) until we attempt to | ||
1038 | |||
1039 | write to it so we don't leave an empty .ssh directory when it's not needed. | ||
1040 | Use the same function to replace the code in ssh-keygen that does the same | ||
1041 | thing. bz#3156, ok djm@ | ||
1042 | |||
1043 | OpenBSD-Commit-ID: 59c073b569be1a60f4de36f491a4339bc4ae870f | ||
1044 | |||
1045 | commit c9e24daac6324fcbdba171392c325bf9ccc3c768 | ||
1046 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1047 | Date: Fri Jun 26 04:45:11 2020 +0000 | ||
1048 | |||
1049 | upstream: Expand path to ~/.ssh/rc rather than relying on it | ||
1050 | |||
1051 | being relative to the current directory, so that it'll still be found if the | ||
1052 | shell startup changes its directory. Since the path is potentially longer, | ||
1053 | make the cmd buffer that uses it dynamically sized. bz#3185, with & ok djm@ | ||
1054 | |||
1055 | OpenBSD-Commit-ID: 36e33ff01497af3dc8226d0c4c1526fc3a1e46bf | ||
1056 | |||
1057 | commit 07f5f369a25e228a7357ef6c57205f191f073d99 | ||
1058 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1059 | Date: Wed Jun 24 15:12:09 2020 +0000 | ||
1060 | |||
1061 | upstream: fix kex mem-leak in ssh_packet_close; ok djm | ||
1062 | |||
1063 | OpenBSD-Commit-ID: e2e9533f393620383afd0b68ef435de8d5e8abe4 | ||
1064 | |||
1065 | commit e35995088cd6691a712bfd586bae8084a3a922ba | ||
1066 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1067 | Date: Wed Jun 24 15:10:38 2020 +0000 | ||
1068 | |||
1069 | upstream: fix ssh -O proxy w/mux which got broken by no longer | ||
1070 | |||
1071 | making ssh->kex optional in packet.c revision 1.278 ok djm@ | ||
1072 | |||
1073 | OpenBSD-Commit-ID: 2b65df04a064c2c6277359921d2320c90ab7d917 | ||
1074 | |||
1075 | commit 250246fef22b87a54a63211c60a2def9be431fbd | ||
1076 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1077 | Date: Wed Jun 24 15:09:53 2020 +0000 | ||
1078 | |||
1079 | upstream: support loading big sshd_config files w/o realloc; ok | ||
1080 | |||
1081 | djm | ||
1082 | |||
1083 | OpenBSD-Commit-ID: ba9238e810074ac907f0cf8cee1737ac04983171 | ||
1084 | |||
1085 | commit 89b54900ac61986760452f132bbe3fb7249cfdac | ||
1086 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1087 | Date: Wed Jun 24 15:08:53 2020 +0000 | ||
1088 | |||
1089 | upstream: allow sshd_config longer than 256k; ok djm | ||
1090 | |||
1091 | OpenBSD-Commit-ID: 83f40dd5457a64c1d3928eb4364461b22766beb3 | ||
1092 | |||
1093 | commit e3fa6249e6d9ceb57c14b04dd4c0cfab12fa7cd5 | ||
1094 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1095 | Date: Wed Jun 24 15:07:33 2020 +0000 | ||
1096 | |||
1097 | upstream: only call sshkey_xmss_init() once for KEY_XMSS_CERT; ok | ||
1098 | |||
1099 | djm | ||
1100 | |||
1101 | OpenBSD-Commit-ID: d0002ffb7f20f538b014d1d0735facd5a81ff096 | ||
1102 | |||
1103 | commit 37f2da069c0619f2947fb92785051d82882876d7 | ||
1104 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1105 | Date: Mon Jun 22 23:44:27 2020 +0000 | ||
1106 | |||
1107 | upstream: some clarifying comments | ||
1108 | |||
1109 | OpenBSD-Commit-ID: 5268479000fd97bfa30ab819f3517139daa054a2 | ||
1110 | |||
1111 | commit b659319a5bc9e8adf3c4facc51f37b670d2a7426 | ||
1112 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
1113 | Date: Mon Jun 22 06:37:38 2020 +0000 | ||
1114 | |||
1115 | upstream: updated argument name for -P in first synopsis was | ||
1116 | |||
1117 | missed in previous; | ||
1118 | |||
1119 | OpenBSD-Commit-ID: 8d84dc3050469884ea91e29ee06a371713f2d0b7 | ||
1120 | |||
1121 | commit 02a9222cbce7131d639984c2f6c71d1551fc3333 | ||
1122 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
1123 | Date: Mon Jun 22 06:36:40 2020 +0000 | ||
1124 | |||
1125 | upstream: supply word missing in previous; | ||
1126 | |||
1127 | OpenBSD-Commit-ID: 16a38b049f216108f66c8b699aa046063381bd23 | ||
1128 | |||
1129 | commit 5098b3b6230852a80ac6cef5d53a785c789a5a56 | ||
1130 | Author: Damien Miller <djm@mindrot.org> | ||
1131 | Date: Mon Jun 22 16:54:02 2020 +1000 | ||
1132 | |||
1133 | missing files for webauthn/sshsig unit test | ||
1134 | |||
1135 | commit 354535ff79380237924ac8fdc98f8cdf83e67da6 | ||
1136 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1137 | Date: Mon Jun 22 06:00:06 2020 +0000 | ||
1138 | |||
1139 | upstream: add support for verification of webauthn sshsig signature, | ||
1140 | |||
1141 | and example HTML/JS to generate webauthn signatures in SSH formats (also used | ||
1142 | to generate the testdata/* for the test). | ||
1143 | |||
1144 | OpenBSD-Regress-ID: dc575be5bb1796fdf4b8aaee0ef52a6671a0f6fb | ||
1145 | |||
1146 | commit bb52e70fa5330070ec9a23069c311d9e277bbd6f | ||
1147 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1148 | Date: Mon Jun 22 05:58:35 2020 +0000 | ||
1149 | |||
1150 | upstream: Add support for FIDO webauthn (verification only). | ||
1151 | |||
1152 | webauthn is a standard for using FIDO keys in web browsers. webauthn | ||
1153 | signatures are a slightly different format to plain FIDO signatures - this | ||
1154 | support allows verification of these. Feedback and ok markus@ | ||
1155 | |||
1156 | OpenBSD-Commit-ID: ab7e3a9fb5782d99d574f408614d833379e564ad | ||
1157 | |||
1158 | commit 64bc121097f377142f1387ffb2df7592c49935af | ||
1159 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1160 | Date: Mon Jun 22 05:56:23 2020 +0000 | ||
1161 | |||
1162 | upstream: refactor ECDSA-SK verification a little ahead of adding | ||
1163 | |||
1164 | support for FIDO webauthn signature verification support; ok markus@ | ||
1165 | |||
1166 | OpenBSD-Commit-ID: c9f478fd8e0c1bd17e511ce8694f010d8e32043e | ||
1167 | |||
1168 | commit 12848191f8fe725af4485d3600e0842d92f8637f | ||
1169 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1170 | Date: Mon Jun 22 05:54:10 2020 +0000 | ||
1171 | |||
1172 | upstream: support for RFC4648 base64url encoding; ok markus | ||
1173 | |||
1174 | OpenBSD-Commit-ID: 0ef22c55e772dda05c112c88412c0797fec66eb4 | ||
1175 | |||
1176 | commit 473b4af43db12127137c7fc1a10928313f5a16d2 | ||
1177 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1178 | Date: Mon Jun 22 05:53:26 2020 +0000 | ||
1179 | |||
1180 | upstream: better terminology for permissions; feedback & ok markus@ | ||
1181 | |||
1182 | OpenBSD-Commit-ID: ff2a71803b5ea57b83cc3fa9b3be42b70e462fb9 | ||
1183 | |||
1184 | commit fc270baf264248c3ee3050b13a6c8c0919e6559f | ||
1185 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1186 | Date: Mon Jun 22 05:52:05 2020 +0000 | ||
1187 | |||
1188 | upstream: better terminology for permissions; feedback & ok markus@ | ||
1189 | |||
1190 | OpenBSD-Commit-ID: ffb220b435610741dcb4de0e7fc68cbbdc876d2c | ||
1191 | |||
1192 | commit 00531bb42f1af17ddabea59c3d9c4b0629000d27 | ||
1193 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1194 | Date: Fri Jun 19 07:21:42 2020 +0000 | ||
1195 | |||
1196 | upstream: Correct synopsis and usage for the options accepted when | ||
1197 | |||
1198 | passing a command to ssh-agent. ok jmc@ | ||
1199 | |||
1200 | OpenBSD-Commit-ID: b36f0679cb0cac0e33b361051b3406ade82ea846 | ||
1201 | |||
1202 | commit b4556c8ad7177e379f0b60305a0cd70f12180e7c | ||
1203 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1204 | Date: Fri Jun 19 19:22:00 2020 +1000 | ||
1205 | |||
1206 | Add OPENBSD ORIGINAL marker to bcrypt_pbkdf. | ||
1207 | |||
1208 | commit 1babb8bb14c423011ca34c2f563bb1c51c8fbf1d | ||
1209 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1210 | Date: Fri Jun 19 19:10:47 2020 +1000 | ||
1211 | |||
1212 | Extra brackets around sizeof() in bcrypt. | ||
1213 | |||
1214 | Prevents following warning from clang 10: | ||
1215 | bcrypt_pbkdf.c:94:40: error: expression does not compute the number of | ||
1216 | elements in this array; element type is ´uint32_tÂ[...] | ||
1217 | place parentheses around the ´sizeof(uint64_t)´ expression to | ||
1218 | silence this warning | ||
1219 | |||
1220 | commit 9e065729592633290e5ddb6852792913b2286545 | ||
1221 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1222 | Date: Fri Jun 19 18:47:56 2020 +1000 | ||
1223 | |||
1224 | Add includes.h to new test. | ||
1225 | |||
1226 | Fixes warnings eg "´bounded´ attribute directive ignor" from gcc. | ||
1227 | |||
1228 | commit e684b1ea365e070433f282a3c1dabc3e2311ce49 | ||
1229 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1230 | Date: Fri Jun 19 18:38:39 2020 +1000 | ||
1231 | |||
1232 | Skip OpenSSL specific tests w/out OpenSSL. | ||
1233 | |||
1234 | Allows unit tests to pass when configure'ed --without-openssl. | ||
1235 | |||
1236 | commit 80610e97a76407ca982e62fd051c9be03622fe7b | ||
1237 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1238 | Date: Fri Jun 19 17:15:27 2020 +1000 | ||
1239 | |||
1240 | Hook sshsig tests up to Portable Makefiles. | ||
1241 | |||
1242 | commit 5dba1fcabacaab46693338ec829b42a1293d1f52 | ||
1243 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1244 | Date: Fri Jun 19 05:07:09 2020 +0000 | ||
1245 | |||
1246 | upstream: Test that ssh-agent exits when running as as subprocess | ||
1247 | |||
1248 | of a specified command (ie "ssh-agent command"). Would have caught bz#3181. | ||
1249 | |||
1250 | OpenBSD-Regress-ID: 895b4765ba5153eefaea3160a7fe08ac0b6db8b3 | ||
1251 | |||
1252 | commit 68e8294f6b04f9590ea227e63d3e129398a49e27 | ||
1253 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1254 | Date: Fri Jun 19 04:34:21 2020 +0000 | ||
1255 | |||
1256 | upstream: run sshsig unit tests | ||
1257 | |||
1258 | OpenBSD-Regress-ID: 706ef17e2b545b64873626e0e35553da7c06052a | ||
1259 | |||
1260 | commit 5edfa1690e9a75048971fd8775f7c16d153779db | ||
1261 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1262 | Date: Fri Jun 19 04:32:09 2020 +0000 | ||
1263 | |||
1264 | upstream: basic unit test for sshsig.[ch], including FIDO keys | ||
1265 | |||
1266 | verification only so far | ||
1267 | |||
1268 | OpenBSD-Regress-ID: fb1f946c8fc59206bc6a6666e577b5d5d7e45896 | ||
1269 | |||
1270 | commit e95c0a0e964827722d29b4bc00d5c0ff4afe0ed2 | ||
1271 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1272 | Date: Fri Jun 19 03:48:49 2020 +0000 | ||
1273 | |||
1274 | upstream: basic unit test for FIDO kep parsing | ||
1275 | |||
1276 | OpenBSD-Regress-ID: 8089b88393dd916d7c95422b442a6fd4cfe00c82 | ||
1277 | |||
1278 | commit 7775819c6de3e9547ac57b87c7dd2bfd28cefcc5 | ||
1279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1280 | Date: Thu Jun 18 23:34:19 2020 +0000 | ||
1281 | |||
1282 | upstream: check public host key matches private; ok markus@ (as | ||
1283 | |||
1284 | part of previous diff) | ||
1285 | |||
1286 | OpenBSD-Commit-ID: 65a4f66436028748b59fb88b264cb8c94ce2ba63 | ||
1287 | |||
1288 | commit c514f3c0522855b4d548286eaa113e209051a6d2 | ||
1289 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1290 | Date: Thu Jun 18 23:33:38 2020 +0000 | ||
1291 | |||
1292 | upstream: avoid spurious "Unable to load host key" message when | ||
1293 | |||
1294 | sshd can load a private key but no public counterpart; with & ok markus@ | ||
1295 | |||
1296 | OpenBSD-Commit-ID: 0713cbdf9aa1ff8ac7b1f78b09ac911af510f81b | ||
1297 | |||
1298 | commit 7fafaeb5da365f4a408fec355dac04a774f27193 | ||
1299 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1300 | Date: Fri Jun 12 05:26:37 2020 +0000 | ||
1301 | |||
1302 | upstream: correct RFC number; from HARUYAMA Seigo via GH PR191 | ||
1303 | |||
1304 | OpenBSD-Commit-ID: 8d03b6c96ca98bfbc23d3754c3c33e1fe0852e10 | ||
1305 | |||
1306 | commit 3a7f654d5bcb20df24a134b6581b0d235da4564a | ||
1307 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1308 | Date: Fri Jun 5 06:18:07 2020 +0000 | ||
1309 | |||
1310 | upstream: unbreak "sshd -ddd" - close of config passing fd happened too | ||
1311 | |||
1312 | early. ok markus@ | ||
1313 | |||
1314 | OpenBSD-Commit-ID: 49346e945c6447aca3e904e65fc400128d2f8ed0 | ||
1315 | |||
1316 | commit 3de02be39e5c0c2208d9682a3844991651620fcc | ||
1317 | Author: Andreas Schwab <schwab@suse.de> | ||
1318 | Date: Mon May 25 11:10:44 2020 +0200 | ||
1319 | |||
1320 | Add support for AUDIT_ARCH_RISCV64 | ||
1321 | |||
1322 | commit ea547eb0329c2f8da77a4ac05f6c330bd49bdaab | ||
1323 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1324 | Date: Fri Jun 5 03:25:35 2020 +0000 | ||
1325 | |||
1326 | upstream: make sshbuf_putb(b, NULL) a no-op | ||
1327 | |||
1328 | OpenBSD-Commit-ID: 976fdc99b500e347023d430df372f31c1dd128f7 | ||
1329 | |||
1330 | commit 69796297c812640415c6cea074ea61afc899cbaa | ||
1331 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1332 | Date: Fri Jun 5 03:24:36 2020 +0000 | ||
1333 | |||
1334 | upstream: make sshbuf_dump() args const | ||
1335 | |||
1336 | OpenBSD-Commit-ID: b4a5accae750875d665b862504169769bcf663bd | ||
1337 | |||
1338 | commit 670428895739d1f79894bdb2457891c3afa60a59 | ||
1339 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1340 | Date: Fri Jun 5 03:24:16 2020 +0000 | ||
1341 | |||
1342 | upstream: wrap long line | ||
1343 | |||
1344 | OpenBSD-Commit-ID: ed405a12bd27bdc9c52e169bc5ff3529b4ebbbb2 | ||
1345 | |||
1346 | commit 2f648cf222882719040906722b3593b01df4ad1a | ||
1347 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1348 | Date: Fri Jun 5 03:15:26 2020 +0000 | ||
1349 | |||
1350 | upstream: Correct historical comment: provos@ modified OpenSSH to | ||
1351 | |||
1352 | work with SSLeay (very quickly replaced by OpenSSL) not SSL in general. ok | ||
1353 | deraadt, historical context markus@ | ||
1354 | |||
1355 | OpenBSD-Commit-ID: 7209e07a2984b50411ed8ca5a4932da5030d2b90 | ||
1356 | |||
1357 | commit 56548e4efcc3e3e8093c2eba30c75b23e561b172 | ||
1358 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1359 | Date: Wed Jun 3 08:23:18 2020 +0000 | ||
1360 | |||
1361 | upstream: Import regenerated moduli file. | ||
1362 | |||
1363 | OpenBSD-Commit-ID: 52ff0e3205036147b2499889353ac082e505ea54 | ||
1364 | |||
1365 | commit 8da801f585dd9c534c0cbe487a3b1648036bf2fb | ||
1366 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1367 | Date: Fri Jun 5 13:20:10 2020 +1000 | ||
1368 | |||
1369 | Test fallthrough in OSSH_CHECK_CFLAG_COMPILE. | ||
1370 | |||
1371 | clang 10's -Wimplicit-fallthrough does not understand /* FALLTHROUGH */ | ||
1372 | comments and we don't use the __attribute__((fallthrough)) that it's | ||
1373 | looking for. This has the effect of turning off -Wimplicit-fallthrough | ||
1374 | where it does not currently help (particularly with -Werror). ok djm@ | ||
1375 | |||
1376 | commit 049297de975b92adcc2db77e3fb7046c0e3c695d | ||
1377 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1378 | Date: Wed Jun 3 08:23:18 2020 +0000 | ||
1379 | |||
1380 | upstream: Import regenerated moduli file. | ||
1381 | |||
1382 | OpenBSD-Commit-ID: 52ff0e3205036147b2499889353ac082e505ea54 | ||
1383 | |||
1384 | commit b458423a38a3140ac022ffcffcb332609faccfe3 | ||
1385 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1386 | Date: Mon Jun 1 07:11:38 2020 +0000 | ||
1387 | |||
1388 | upstream: Remove now-unused proto_spec and associated definitions. | ||
1389 | |||
1390 | ok djm@ | ||
1391 | |||
1392 | OpenBSD-Commit-ID: 2e2b18e3aa6ee22a7b69c39f2d3bd679ec35c362 | ||
1393 | |||
1394 | commit 5ad3c3a33ef038b55a14ebd31faeeec46073db2c | ||
1395 | Author: millert@openbsd.org <millert@openbsd.org> | ||
1396 | Date: Fri May 29 21:22:02 2020 +0000 | ||
1397 | |||
1398 | upstream: Fix error message on close(2) and add printf format | ||
1399 | |||
1400 | attributes. From Christos Zoulas, OK markus@ | ||
1401 | |||
1402 | OpenBSD-Commit-ID: 41523c999a9e3561fcc7082fd38ea2e0629ee07e | ||
1403 | |||
1404 | commit 712ac1efb687a945a89db6aa3e998c1a17b38653 | ||
1405 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1406 | Date: Fri May 29 11:17:56 2020 +0000 | ||
1407 | |||
1408 | upstream: Make dollar_expand variadic and pass a real va_list to | ||
1409 | |||
1410 | vdollar_percent_expand. Fixes build error on arm64 spotted by otto@. | ||
1411 | |||
1412 | OpenBSD-Commit-ID: 181910d7ae489f40ad609b4cf4a20f3d068a7279 | ||
1413 | |||
1414 | commit 837ffa9699a9cba47ae7921d2876afaccc027133 | ||
1415 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1416 | Date: Fri May 29 20:39:00 2020 +1000 | ||
1417 | |||
1418 | Omit ToS setting if we don't have IPV6_TCLASS too. | ||
1419 | |||
1420 | Fixes tests on old BSDs. | ||
1421 | |||
1422 | commit f85b118d2150847cc333895296bc230e367be6b5 | ||
1423 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1424 | Date: Fri May 29 09:02:44 2020 +0000 | ||
1425 | |||
1426 | upstream: Pass a NULL instead of zeroed out va_list from | ||
1427 | |||
1428 | dollar_expand. The original intent was in case there's some platform where | ||
1429 | va_list is not a pointer equivalent, but on i386 this chokes on the memset. | ||
1430 | This unbreaks that build, but will require further consideration. | ||
1431 | |||
1432 | OpenBSD-Commit-ID: 7b90afcd8e1137a1d863204060052aef415baaf7 | ||
1433 | |||
1434 | commit ec1d50b01c84ff667240ed525f669454c4ebc8e9 | ||
1435 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
1436 | Date: Fri May 29 05:48:39 2020 +0000 | ||
1437 | |||
1438 | upstream: remove a stray .El; | ||
1439 | |||
1440 | OpenBSD-Commit-ID: 58ddfe6f8a15fe10209db6664ecbe7896f1d167c | ||
1441 | |||
1442 | commit 058674a62ffe33f01d871d46e624bc2a2c22d91f | ||
1443 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1444 | Date: Fri May 29 04:32:26 2020 +0000 | ||
1445 | |||
1446 | upstream: Add regression and unit tests for ${ENV} style | ||
1447 | |||
1448 | environment variable expansion in various keywords (bz#3140). ok djm@ | ||
1449 | |||
1450 | OpenBSD-Regress-ID: 4d9ceb95d89365b7b674bc26cf064c15a5bbb197 | ||
1451 | |||
1452 | commit 0b15892fc47d6840eba1291a6be9be1a70bc8972 | ||
1453 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1454 | Date: Fri May 29 01:21:35 2020 +0000 | ||
1455 | |||
1456 | upstream: Unit test for convtime. ok djm@ | ||
1457 | |||
1458 | OpenBSD-Regress-ID: cec4239efa2fc4c7062064f07a847e1cbdbcd5dd | ||
1459 | |||
1460 | commit 188e332d1c8f9f24e5b6659e9680bf083f837df9 | ||
1461 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1462 | Date: Fri May 29 05:37:03 2020 +0000 | ||
1463 | |||
1464 | upstream: mention that wildcards are processed in lexical order; | ||
1465 | |||
1466 | bz#3165 | ||
1467 | |||
1468 | OpenBSD-Commit-ID: 8856f3d1612bd42e9ee606d89386cae456dd165c | ||
1469 | |||
1470 | commit 4a1b46e6d032608b7ec00ae51c4e25b82f460b05 | ||
1471 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1472 | Date: Fri May 29 04:25:40 2020 +0000 | ||
1473 | |||
1474 | upstream: Allow some keywords to expand shell-style ${ENV} | ||
1475 | |||
1476 | environment variables on the client side. The supported keywords are | ||
1477 | CertificateFile, ControlPath, IdentityAgent and IdentityFile, plus | ||
1478 | LocalForward and RemoteForward when used for Unix domain socket paths. This | ||
1479 | would for example allow forwarding of Unix domain socket paths that change at | ||
1480 | runtime. bz#3140, ok djm@ | ||
1481 | |||
1482 | OpenBSD-Commit-ID: a4a2e801fc2d4df2fe0e58f50d9c81b03822dffa | ||
1483 | |||
1484 | commit c9bab1d3a9e183cef3a3412f57880a0374cc8cb2 | ||
1485 | Author: Damien Miller <djm@mindrot.org> | ||
1486 | Date: Fri May 29 14:49:16 2020 +1000 | ||
1487 | |||
1488 | depend | ||
1489 | |||
1490 | commit 0b0d219313bf9239ca043f20b1a095db0245588f | ||
1491 | Author: sobrado <sobrado@openbsd.org> | ||
1492 | Date: Thu Sep 3 23:06:28 2015 +0000 | ||
1493 | |||
1494 | partial sync of regress/netcat.c with upstream | ||
1495 | |||
1496 | synchronize synopsis and usage. | ||
1497 | |||
1498 | commit 0f04c8467f589f85a523e19fd684c4f6c4ed9482 | ||
1499 | Author: chl <chl@openbsd.org> | ||
1500 | Date: Sun Jul 26 19:12:28 2015 +0000 | ||
1501 | |||
1502 | partial sync of regress/netcat.c with upstream | ||
1503 | |||
1504 | remove unused variable | ||
1505 | |||
1506 | ok tedu@ | ||
1507 | |||
1508 | commit d6a81050ace2630b06c3c6dd39bb4eef5d1043f8 | ||
1509 | Author: tobias <tobias@openbsd.org> | ||
1510 | Date: Thu Mar 26 21:22:50 2015 +0000 | ||
1511 | |||
1512 | partial sync of regress/netcat.c with upstream | ||
1513 | |||
1514 | The code in socks.c writes multiple times in a row to a socket. If the socket becomes invalid between these calls (e.g. connection closed), write will throw SIGPIPE. With this patch, SIGPIPE is ignored so we can handle write's -1 return value (errno will be EPIPE). Ultimately, it leads to program exit, too -- but with nicer error message. :) | ||
1515 | |||
1516 | with input by and ok djm | ||
1517 | |||
1518 | commit bf3893dddd35e16def04bf48ed2ee1ad695b8f82 | ||
1519 | Author: tobias <tobias@openbsd.org> | ||
1520 | Date: Thu Mar 26 10:36:03 2015 +0000 | ||
1521 | |||
1522 | partial sync of regress/netcat.c with upstream | ||
1523 | |||
1524 | Check for short writes in fdpass(). Clean up while at it. | ||
1525 | |||
1526 | ok djm | ||
1527 | |||
1528 | commit e18435fec124b4c08eb6bbbbee9693dc04f4befb | ||
1529 | Author: jca <jca@openbsd.org> | ||
1530 | Date: Sat Feb 14 22:40:22 2015 +0000 | ||
1531 | |||
1532 | partial sync of regress/netcat.c with upstream | ||
1533 | |||
1534 | Support for nc -T on IPv6 addresses. | ||
1535 | |||
1536 | ok sthen@ | ||
1537 | |||
1538 | commit 4c607244054a036ad3b2449a6cb4c15feb846a76 | ||
1539 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1540 | Date: Fri May 29 03:14:02 2020 +0000 | ||
1541 | |||
1542 | upstream: fix compilation on !HAVE_DLOPEN platforms; stub function | ||
1543 | |||
1544 | was not updated to match API change. From Dale Rahn via beck@ ok markus@ | ||
1545 | |||
1546 | OpenBSD-Commit-ID: 2b8d054afe34c9ac85e417dae702ef981917b836 | ||
1547 | |||
1548 | commit 224418cf55611869a4ace1b8b07bba0dff77a9c3 | ||
1549 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1550 | Date: Fri May 29 03:11:54 2020 +0000 | ||
1551 | |||
1552 | upstream: fix exit status for downloading of FIDO resident keys; | ||
1553 | |||
1554 | from Pedro Martelletto, ok markus@ | ||
1555 | |||
1556 | OpenBSD-Commit-ID: 0da77dc24a1084798eedd83c39a002a9d231faef | ||
1557 | |||
1558 | commit 1001dd148ed7c57bccf56afb40cb77482ea343a6 | ||
1559 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1560 | Date: Fri May 29 01:20:46 2020 +0000 | ||
1561 | |||
1562 | upstream: Fix multiplier in convtime when handling seconds after | ||
1563 | |||
1564 | other units. bz#3171, spotted by ronf at timeheart.net, ok djm@. | ||
1565 | |||
1566 | OpenBSD-Commit-ID: 95b7a848e1083974a65fbb6ccb381d438e1dd5be | ||
1567 | |||
1568 | commit 7af1e92cd289b7eaa9a683e9a6f2fddd98f37a01 | ||
1569 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1570 | Date: Wed May 27 22:37:53 2020 +0000 | ||
1571 | |||
1572 | upstream: fix Include before Match in sshd_config; bz#3122 patch | ||
1573 | |||
1574 | from Jakub Jelen | ||
1575 | |||
1576 | OpenBSD-Commit-ID: 1b0aaf135fe6732b5d326946042665dd3beba5f4 | ||
1577 | |||
1578 | commit 0a9a611619b0a1fecd0195ec86a9885f5d681c84 | ||
1579 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1580 | Date: Wed May 27 21:59:11 2020 +0000 | ||
1581 | |||
1582 | upstream: Do not call process_queued_listen_addrs() for every | ||
1583 | |||
1584 | included file from sshd_config; patch from Jakub Jelen | ||
1585 | |||
1586 | OpenBSD-Commit-ID: 0ff603d6f06a7fab4881f12503b53024799d0a49 | ||
1587 | |||
1588 | commit 16ea1fdbe736648f79a827219134331f8d9844fb | ||
1589 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1590 | Date: Wed May 27 21:25:18 2020 +0000 | ||
1591 | |||
1592 | upstream: fix crash in recallocarray when deleting SendEnv | ||
1593 | |||
1594 | variables; spotted by & ok sthen@ | ||
1595 | |||
1596 | OpenBSD-Commit-ID: b881e8e849edeec5082b5c0a87d8d7cff091a8fd | ||
1597 | |||
1598 | commit 47adfdc07f4f8ea0064a1495500244de08d311ed | ||
1599 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1600 | Date: Wed May 27 22:35:19 2020 +0000 | ||
1601 | |||
1602 | upstream: two new tests for Include in sshd_config, checking whether | ||
1603 | |||
1604 | Port directives are processed correctly and handling of Include directives | ||
1605 | that appear before Match. Both tests currently fail. bz#3122 and bz#3169 - | ||
1606 | patch from Jakub Jelen | ||
1607 | |||
1608 | OpenBSD-Regress-ID: 8ad5a4a385a63f0a1c59c59c763ff029b45715df | ||
1609 | |||
1610 | commit 47faad8f794516c33864d866aa1b55d88416f94c | ||
1611 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1612 | Date: Wed May 27 23:26:23 2020 +1000 | ||
1613 | |||
1614 | Document that libfido2 >= 1.4.0 is needed. | ||
1615 | |||
1616 | commit 4be563994c0cbe9856e7dd3078909f41beae4a9c | ||
1617 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1618 | Date: Tue May 26 01:59:46 2020 +0000 | ||
1619 | |||
1620 | upstream: fix memleak of signature; from Pedro Martelletto | ||
1621 | |||
1622 | OpenBSD-Commit-ID: d0a6eb07e77c001427d738b220dd024ddc64b2bb | ||
1623 | |||
1624 | commit 0c111eb84efba7c2a38b2cc3278901a0123161b9 | ||
1625 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1626 | Date: Tue May 26 01:26:58 2020 +0000 | ||
1627 | |||
1628 | upstream: Restrict ssh-agent from signing web challenges for FIDO | ||
1629 | |||
1630 | keys. | ||
1631 | |||
1632 | When signing messages in ssh-agent using a FIDO key that has an | ||
1633 | application string that does not start with "ssh:", ensure that the | ||
1634 | message being signed is one of the forms expected for the SSH protocol | ||
1635 | (currently pubkey authentication and sshsig signatures). | ||
1636 | |||
1637 | This prevents ssh-agent forwarding on a host that has FIDO keys | ||
1638 | attached granting the ability for the remote side to sign challenges | ||
1639 | for web authentication using those keys too. | ||
1640 | |||
1641 | Note that the converse case of web browsers signing SSH challenges is | ||
1642 | already precluded because no web RP can have the "ssh:" prefix in the | ||
1643 | application string that we require. | ||
1644 | |||
1645 | ok markus@ | ||
1646 | |||
1647 | OpenBSD-Commit-ID: 9ab6012574ed0352d2f097d307f4a988222d1b19 | ||
1648 | |||
1649 | commit 9c5f64b6cb3a68b99915202d318b842c6c76cf14 | ||
1650 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1651 | Date: Tue May 26 01:09:05 2020 +0000 | ||
1652 | |||
1653 | upstream: improve logging for MaxStartups connection throttling: | ||
1654 | |||
1655 | have sshd log when it starts and stops throttling and periodically while in | ||
1656 | this state. bz#3055 ok markus@ | ||
1657 | |||
1658 | OpenBSD-Commit-ID: 2e07a09a62ab45d790d3d2d714f8cc09a9ac7ab9 | ||
1659 | |||
1660 | commit 756c6f66aee83a5862a6f936a316f761532f3320 | ||
1661 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1662 | Date: Tue May 26 01:06:52 2020 +0000 | ||
1663 | |||
1664 | upstream: add fmt_timeframe() (from bgpd) to format a time | ||
1665 | |||
1666 | interval in a human- friendly format. Switch copyright for this file from BSD | ||
1667 | to MIT to make it easier to add Henning's copyright for this function. ok | ||
1668 | markus@ | ||
1669 | |||
1670 | OpenBSD-Commit-ID: 414a831c662df7e68893e5233e86f2cac081ccf9 | ||
1671 | |||
1672 | commit 2a63ce5cd6d0e782783bf721462239b03757dd49 | ||
1673 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1674 | Date: Mon May 18 04:29:35 2020 +0000 | ||
1675 | |||
1676 | upstream: avoid possible NULL deref; from Pedro Martelletto | ||
1677 | |||
1678 | OpenBSD-Commit-ID: e6099c3fbb70aa67eb106e84d8b43f1fa919b721 | ||
1679 | |||
1680 | commit 4b307faf2fb0e63e51a550b37652f7f972df9676 | ||
1681 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1682 | Date: Fri May 15 08:34:03 2020 +0000 | ||
1683 | |||
1684 | upstream: sshd listener must not block if reexecd sshd exits | ||
1685 | |||
1686 | in write(2) on config_s[0] if the forked child exits early before finishing | ||
1687 | recv_rexec_state (e.g. with fatal()) because config_s[1] stays open in the | ||
1688 | parent. this prevents the parent from accepting new connections. ok djm, | ||
1689 | deraadt | ||
1690 | |||
1691 | OpenBSD-Commit-ID: 92ccfeb939ccd55bda914dc3fe84582158c4a9ef | ||
1692 | |||
1693 | commit af8b16fb2cce880341c0ee570ceb0d84104bdcc0 | ||
1694 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1695 | Date: Fri May 15 03:57:33 2020 +0000 | ||
1696 | |||
1697 | upstream: fix off-by-one error that caused sftp downloads to make | ||
1698 | |||
1699 | one more concurrent request that desired. This prevented using sftp(1) in | ||
1700 | unpipelined request/response mode, which is useful when debugging. Patch from | ||
1701 | Stephen Goetze in bz#3054 | ||
1702 | |||
1703 | OpenBSD-Commit-ID: 41b394ebe57037dbc43bdd0eef21ff0511191f28 | ||
1704 | |||
1705 | commit d7d753e2979f2d3c904b03a08d30856cd2a6e892 | ||
1706 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
1707 | Date: Wed May 13 22:38:41 2020 +0000 | ||
1708 | |||
1709 | upstream: we are still aiming for pre-C99 ... | ||
1710 | |||
1711 | OpenBSD-Commit-ID: a240fc9cbe60bc4e6c3d24d022eb4ab01fe1cb38 | ||
1712 | |||
1713 | commit 2ad7b7e46408dbebf2a4efc4efd75a9544197d57 | ||
1714 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1715 | Date: Wed May 13 10:08:02 2020 +0000 | ||
1716 | |||
1717 | upstream: Enable credProtect extension when generating a resident | ||
1718 | |||
1719 | key. | ||
1720 | |||
1721 | The FIDO 2.1 Client to Authenticator Protocol introduced a "credProtect" | ||
1722 | feature to better protect resident keys. This option allows (amone other | ||
1723 | possibilities) requiring a PIN prior to all operations that may retrieve | ||
1724 | the key handle. | ||
1725 | |||
1726 | Patch by Pedro Martelletto; ok djm and markus | ||
1727 | |||
1728 | OpenBSD-Commit-ID: 013bc06a577dcaa66be3913b7f183eb8cad87e73 | ||
1729 | |||
1730 | commit 1e70dc3285fc9b4f6454975acb81e8702c23dd89 | ||
1731 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1732 | Date: Wed May 13 09:57:17 2020 +0000 | ||
1733 | |||
1734 | upstream: always call fido_init(); previous behaviour only called | ||
1735 | |||
1736 | fido_init() when SK_DEBUG was defined. Harmless with current libfido2, but | ||
1737 | this isn't guaranteed in the future. | ||
1738 | |||
1739 | OpenBSD-Commit-ID: c7ea20ff2bcd98dd12015d748d3672d4f01f0864 | ||
1740 | |||
1741 | commit f2d84f1b3fa68d77c99238d4c645d0266fae2a74 | ||
1742 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1743 | Date: Wed May 13 09:55:57 2020 +0000 | ||
1744 | |||
1745 | upstream: preserve group/world read permission on known_hosts | ||
1746 | |||
1747 | file across runs of "ssh-keygen -Rf /path". The old behaviour was to remove | ||
1748 | all rights for group/other. bz#3146 ok dtucker@ | ||
1749 | |||
1750 | OpenBSD-Commit-ID: dc369d0e0b5dd826430c63fd5f4b269953448a8a | ||
1751 | |||
1752 | commit 05a651400da6fbe12296c34e3d3bcf09f034fbbf | ||
1753 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1754 | Date: Wed May 13 09:52:41 2020 +0000 | ||
1755 | |||
1756 | upstream: when ordering the hostkey algorithms to request from a | ||
1757 | |||
1758 | server, prefer certificate types if the known_hosts files contain a key | ||
1759 | marked as a @cert-authority; bz#3157 ok markus@ | ||
1760 | |||
1761 | OpenBSD-Commit-ID: 8f194573e5bb7c01b69bbfaabc68f27c9fa5e0db | ||
1762 | |||
1763 | commit 829451815ec207e14bd54ff5cf7e22046816f042 | ||
1764 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1765 | Date: Tue May 12 01:41:32 2020 +0000 | ||
1766 | |||
1767 | upstream: fix non-ASCII quote that snuck in; spotted by Gabriel | ||
1768 | |||
1769 | Kihlman | ||
1770 | |||
1771 | OpenBSD-Commit-ID: 04bcde311de2325d9e45730c744c8de079b49800 | ||
1772 | |||
1773 | commit 5a442cec92c0efd6fffb4af84bf99c70af248ef3 | ||
1774 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1775 | Date: Mon May 11 02:11:29 2020 +0000 | ||
1776 | |||
1777 | upstream: clarify role of FIDO tokens in multi-factor | ||
1778 | |||
1779 | authentictation; mostly from Pedro Martelletto | ||
1780 | |||
1781 | OpenBSD-Commit-ID: fbe05685a1f99c74b1baca7130c5a03c2df7c0ac | ||
1782 | |||
1783 | commit ecb2c02d994b3e21994f31a70ff911667c262f1f | ||
1784 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1785 | Date: Fri May 8 05:13:14 2020 +0000 | ||
1786 | |||
1787 | upstream: fix compilation with DEBUG_KEXDH; bz#3160 ok dtucker@ | ||
1788 | |||
1789 | OpenBSD-Commit-ID: 832e771948fb45f2270e8b8895aac36d176ba17a | ||
1790 | |||
1791 | commit 3ab6fccc3935e9b778ff52f9c8d40f215d58e01d | ||
1792 | Author: Damien Miller <djm@mindrot.org> | ||
1793 | Date: Thu May 14 12:22:09 2020 +1000 | ||
1794 | |||
1795 | prefer ln to cp for temporary copy of sshd | ||
1796 | |||
1797 | I saw failures on the reexec fallback test on Darwin 19.4 where | ||
1798 | fork()ed children of a process that had it's executable removed | ||
1799 | would instantly fail. Using ln to preserve the inode avoids this. | ||
1800 | |||
1801 | commit f700d316c6b15a9cfbe87230d2dca81a5d916279 | ||
1802 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1803 | Date: Wed May 13 15:24:51 2020 +1000 | ||
1804 | |||
1805 | Actually skip pty tests when needed. | ||
1806 | |||
1807 | commit 08ce6b2210f46f795e7db747809f8e587429dfd2 | ||
1808 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1809 | Date: Wed May 13 13:56:45 2020 +1000 | ||
1810 | |||
1811 | Skip building sk-dummy library if no SK support. | ||
1812 | |||
1813 | commit 102d106bc2e50347d0e545fad6ff5ce408d67247 | ||
1814 | Author: Damien Miller <djm@mindrot.org> | ||
1815 | Date: Wed May 13 12:08:34 2020 +1000 | ||
1816 | |||
1817 | explicitly manage .depend and .depend.bak | ||
1818 | |||
1819 | Bring back removal of .depend to give the file a known state before | ||
1820 | running makedepend, but manually move aside the current .depend file | ||
1821 | and restore it as .depend.bak afterwards so the stale .depend check | ||
1822 | works as expected. | ||
1823 | |||
1824 | commit 83a6dc6ba1e03b3fa39d12a8522b8b0e68dd6390 | ||
1825 | Author: Damien Miller <djm@mindrot.org> | ||
1826 | Date: Wed May 13 12:03:42 2020 +1000 | ||
1827 | |||
1828 | make depend | ||
1829 | |||
1830 | commit 7c0bbed967abed6301a63e0267cc64144357a99a | ||
1831 | Author: Damien Miller <djm@mindrot.org> | ||
1832 | Date: Wed May 13 12:01:10 2020 +1000 | ||
1833 | |||
1834 | revert removal of .depend before makedepend | ||
1835 | |||
1836 | Commit 83657eac4 started removing .depend before running makedepend | ||
1837 | to reset the contents of .depend to a known state. Unfortunately | ||
1838 | this broke the depend-check step as now .depend.bak would only ever | ||
1839 | be created as an empty file. | ||
1840 | |||
1841 | ok dtucker | ||
1842 | |||
1843 | commit 58ad004acdcabf3b9f40bc3aaa206b25d998db8c | ||
1844 | Author: Damien Miller <djm@mindrot.org> | ||
1845 | Date: Tue May 12 12:58:46 2020 +1000 | ||
1846 | |||
1847 | prepare for 8.3 release | ||
1848 | |||
1849 | commit 4fa9e048c2af26beb7dc2ee9479ff3323e92a7b5 | ||
1850 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1851 | Date: Fri May 8 21:50:43 2020 +1000 | ||
1852 | |||
1853 | Ensure SA_SIGNAL test only signals itself. | ||
1854 | |||
1855 | When the test's child signals its parent and it exits the result of | ||
1856 | getppid changes. On Ubuntu 20.04 this results in the ppid being that | ||
1857 | of the GDM session, causing it to exit. Analysis and testing from pedro | ||
1858 | at ambientworks.net | ||
1859 | |||
1860 | commit dc2da29aae76e170d22f38bb36f1f5d1edd5ec2b | ||
1861 | Author: Damien Miller <djm@mindrot.org> | ||
1862 | Date: Fri May 8 13:31:53 2020 +1000 | ||
1863 | |||
1864 | sync config.guess/config.sub with latest versions | ||
1865 | |||
1866 | ok dtucker@ | ||
1867 | |||
1868 | commit a8265bd64c14881fc7f4fa592f46dfc66b911f17 | ||
1869 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1870 | Date: Wed May 6 20:58:01 2020 +0000 | ||
1871 | |||
1872 | upstream: openssh-8.3; ok deraadt@ | ||
1873 | |||
1874 | OpenBSD-Commit-ID: c8831ec88b9c750f5816aed9051031fb535d22c1 | ||
1875 | |||
1876 | commit 955854cafca88e0cdcd3d09ca1ad4ada465364a1 | ||
1877 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1878 | Date: Wed May 6 20:57:38 2020 +0000 | ||
1879 | |||
1880 | upstream: another case where a utimes() failure could make scp send | ||
1881 | |||
1882 | a desynchronising error; reminded by Aymeric Vincent ok deraadt markus | ||
1883 | |||
1884 | OpenBSD-Commit-ID: 2ea611d34d8ff6d703a7a8bf858aa5dbfbfa7381 | ||
1885 | |||
1886 | commit 59d531553fd90196946743da391f3a27cf472f4e | ||
1887 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1888 | Date: Thu May 7 15:34:12 2020 +1000 | ||
1889 | |||
1890 | Check if -D_REENTRANT is needed for localtime_r. | ||
1891 | |||
1892 | On at least HP-UX 11.11, the localtime_r declararation is behind | ||
1893 | ifdef _REENTRANT. Check for and add if needed. | ||
1894 | |||
1895 | commit c13403e55de8cdbb9da628ed95017b1d4c0f205f | ||
1896 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1897 | Date: Tue May 5 11:32:43 2020 +1000 | ||
1898 | |||
1899 | Skip security key tests if ENABLE_SK not set. | ||
1900 | |||
1901 | commit 4da393f87cd52d788c84112ee3f2191c9bcaaf30 | ||
1902 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1903 | Date: Fri May 1 04:03:14 2020 +0000 | ||
1904 | |||
1905 | upstream: sure enough, some of the test data that we though were in | ||
1906 | |||
1907 | new format were actually in the old format; fix from Michael Forney | ||
1908 | |||
1909 | OpenBSD-Regress-ID: a41a5c43a61b0f0b1691994dbf16dfb88e8af933 | ||
1910 | |||
1911 | commit 15bfafc1db4c8792265ada9623a96f387990f732 | ||
1912 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1913 | Date: Fri May 1 04:00:29 2020 +0000 | ||
1914 | |||
1915 | upstream: make mktestdata.sh generate old/new format keys that we | ||
1916 | |||
1917 | expect. This script was written before OpenSSH switched to new-format private | ||
1918 | keys by default and was never updated to the change (until now) From Michael | ||
1919 | Forney | ||
1920 | |||
1921 | OpenBSD-Regress-ID: 38cf354715c96852e5b71c2393fb6e7ad28b7ca7 | ||
1922 | |||
1923 | commit 7882d2eda6ad3eb82220a85294de545d20ef82db | ||
1924 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1925 | Date: Fri May 1 03:58:02 2020 +0000 | ||
1926 | |||
1927 | upstream: portability fix for sed that always emil a newline even | ||
1928 | |||
1929 | if the input does not contain one; from Michael Forney | ||
1930 | |||
1931 | OpenBSD-Regress-ID: 9190c3ddf0d2562ccc02c4a95fce0e392196bfc7 | ||
1932 | |||
1933 | commit 8074f9499e454df0acdacea33598858a1453a357 | ||
1934 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1935 | Date: Fri May 1 03:36:25 2020 +0000 | ||
1936 | |||
1937 | upstream: remove obsolete RSA1 test keys; spotted by Michael Forney | ||
1938 | |||
1939 | OpenBSD-Regress-ID: 6384ba889594e217d166908ed8253718ab0866da | ||
1940 | |||
1941 | commit c697e46c314aa94574af0d393d80f23e0ebc9748 | ||
1942 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1943 | Date: Sat May 2 18:34:47 2020 +1000 | ||
1944 | |||
1945 | Update .depend. | ||
1946 | |||
1947 | commit 83657eac42941f270c4b02b2c46d9a21f616ef99 | ||
1948 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1949 | Date: Sat May 2 18:29:40 2020 +1000 | ||
1950 | |||
1951 | Remove use of tail for 'make depend'. | ||
1952 | |||
1953 | Not every tail supports +N and we can do with out it so just remove it. | ||
1954 | Prompted by mforney at mforney.org. | ||
1955 | |||
1956 | commit d25d630d24c5a1c64d4e646510e79dc22d6d7b88 | ||
1957 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1958 | Date: Sat May 2 07:19:43 2020 +0000 | ||
1959 | |||
1960 | upstream: we have a sshkey_save_public() function to save public keys; | ||
1961 | |||
1962 | use it and save a bunch of redundant code. | ||
1963 | |||
1964 | Patch from loic AT venez.fr; ok markus@ djm@ | ||
1965 | |||
1966 | OpenBSD-Commit-ID: f93e030a0ebcd0fd9054ab30db501ec63454ea5f | ||
1967 | |||
1968 | commit e9dc9863723e111ae05e353d69df857f0169544a | ||
1969 | Author: Darren Tucker <dtucker@dtucker.net> | ||
1970 | Date: Fri May 1 18:32:25 2020 +1000 | ||
1971 | |||
1972 | Use LONG_LONG_MAX and friends if available. | ||
1973 | |||
1974 | If we don't have LLONG_{MIN,MAX} but do have LONG_LONG_{MIN,MAX} | ||
1975 | then use those instead. We do calculate these values in configure, | ||
1976 | but it turns out that at least one compiler (old HP ANSI C) can't | ||
1977 | parse "-9223372036854775808LL" without mangling it. (It can parse | ||
1978 | "-9223372036854775807LL" which is presumably why its limits.h defines | ||
1979 | LONG_LONG_MIN as the latter minus 1.) | ||
1980 | |||
1981 | Fixes rekey test when compiled with the aforementioned compiler. | ||
1982 | |||
1983 | commit aad87b88fc2536b1ea023213729aaf4eaabe1894 | ||
1984 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1985 | Date: Fri May 1 06:31:42 2020 +0000 | ||
1986 | |||
1987 | upstream: when receving a file in sink(), be careful to send at | ||
1988 | |||
1989 | most a single error response after the file has been opened. Otherwise the | ||
1990 | source() and sink() can become desyncronised. Reported by Daniel Goujot, | ||
1991 | Georges-Axel Jaloyan, Ryan Lahfa, and David Naccache. | ||
1992 | |||
1993 | ok deraadt@ markus@ | ||
1994 | |||
1995 | OpenBSD-Commit-ID: 6c14d233c97349cb811a8f7921ded3ae7d9e0035 | ||
1996 | |||
1997 | commit 31909696c4620c431dd55f6cd15db65c4e9b98da | ||
1998 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1999 | Date: Fri May 1 06:28:52 2020 +0000 | ||
2000 | |||
2001 | upstream: expose vasnmprintf(); ok (as part of other commit) markus | ||
2002 | |||
2003 | deraadt | ||
2004 | |||
2005 | OpenBSD-Commit-ID: 2e80cea441c599631a870fd40307d2ade5a7f9b5 | ||
2006 | |||
2007 | commit 99ce9cefbe532ae979744c6d956b49f4b02aff82 | ||
2008 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2009 | Date: Fri May 1 04:23:11 2020 +0000 | ||
2010 | |||
2011 | upstream: avoid NULL dereference when attempting to convert invalid | ||
2012 | |||
2013 | ssh.com private keys using "ssh-keygen -i"; spotted by Michael Forney | ||
2014 | |||
2015 | OpenBSD-Commit-ID: 2e56e6d26973967d11d13f56ea67145f435bf298 | ||
2016 | |||
2017 | commit 6c6072ba8b079e6f5caa38b011a6f4570c14ed38 | ||
2018 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2019 | Date: Fri May 1 15:09:26 2020 +1000 | ||
2020 | |||
2021 | See if SA_RESTART signals will interrupt select(). | ||
2022 | |||
2023 | On some platforms (at least older HP-UXes such as 11.11, possibly others) | ||
2024 | setting SA_RESTART on signal handers will cause it to not interrupt | ||
2025 | select(), at least for calls that do not specify a timeout. Try to | ||
2026 | detect this and if found, don't use SA_RESTART. | ||
2027 | |||
2028 | POSIX says "If SA_RESTART has been set for the interrupting signal, it | ||
2029 | is implementation-dependent whether select() restarts or returns with | ||
2030 | [EINTR]" so this behaviour is within spec. | ||
2031 | |||
2032 | commit 90a0b434ed41f9c505662dba8782591818599cb3 | ||
2033 | Author: Damien Miller <djm@mindrot.org> | ||
2034 | Date: Fri May 1 13:55:03 2020 +1000 | ||
2035 | |||
2036 | fix reversed test | ||
2037 | |||
2038 | commit c0dfd18dd1c2107c73d18f70cd164f7ebd434b08 | ||
2039 | Author: Damien Miller <djm@mindrot.org> | ||
2040 | Date: Fri May 1 13:29:16 2020 +1000 | ||
2041 | |||
2042 | wrap sha2.h inclusion in #ifdef HAVE_SHA2_H | ||
2043 | |||
2044 | commit a01817a9f63dbcbbc6293aacc4019993a4cdc7e3 | ||
2045 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2046 | Date: Tue Apr 28 04:59:29 2020 +0000 | ||
2047 | |||
2048 | upstream: adapt dummy FIDO middleware to API change; ok markus@ | ||
2049 | |||
2050 | OpenBSD-Regress-ID: 8bb84ee500c2eaa5616044314dd0247709a1790f | ||
2051 | |||
2052 | commit 261571ddf02ea38fdb5e4a97c69ee53f847ca5b7 | ||
2053 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
2054 | Date: Thu Apr 30 18:28:37 2020 +0000 | ||
2055 | |||
2056 | upstream: tweak previous; ok markus | ||
2057 | |||
2058 | OpenBSD-Commit-ID: 41895450ce2294ec44a5713134491cc31f0c09fd | ||
2059 | |||
2060 | commit 5de21c82e1d806d3e401b5338371e354b2e0a66f | ||
2061 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2062 | Date: Thu Apr 30 17:12:20 2020 +0000 | ||
2063 | |||
2064 | upstream: bring back debug() removed in rev 1.74; noted by pradeep | ||
2065 | |||
2066 | kumar | ||
2067 | |||
2068 | OpenBSD-Commit-ID: 8d134d22ab25979078a3b48d058557d49c402e65 | ||
2069 | |||
2070 | commit ea14103ce9a5e13492e805f7e9277516ff5a4273 | ||
2071 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2072 | Date: Thu Apr 30 17:07:10 2020 +0000 | ||
2073 | |||
2074 | upstream: run the 2nd ssh with BatchMode for scp -3 | ||
2075 | |||
2076 | OpenBSD-Commit-ID: 77994fc8c7ca02d88e6d0d06d0f0fe842a935748 | ||
2077 | |||
2078 | commit 59d2de956ed29aa5565ed5e5947a7abdb27ac013 | ||
2079 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2080 | Date: Tue Apr 28 04:02:29 2020 +0000 | ||
2081 | |||
2082 | upstream: when signing a challenge using a FIDO toke, perform the | ||
2083 | |||
2084 | hashing in the middleware layer rather than in ssh code. This allows | ||
2085 | middlewares that call APIs that perform the hashing implicitly (including | ||
2086 | Microsoft's AFAIK). ok markus@ | ||
2087 | |||
2088 | OpenBSD-Commit-ID: c9fc8630aba26c75d5016884932f08a5a237f37d | ||
2089 | |||
2090 | commit c9d10dbc0ccfb1c7568bbb784f7aeb7a0b5ded12 | ||
2091 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2092 | Date: Sun Apr 26 09:38:14 2020 +0000 | ||
2093 | |||
2094 | upstream: Fix comment typo. Patch from mforney at mforney.org. | ||
2095 | |||
2096 | OpenBSD-Commit-ID: 3565f056003707a5e678e60e03f7a3efd0464a2b | ||
2097 | |||
2098 | commit 4d2c87b4d1bde019cdd0f00552fcf97dd8b39940 | ||
2099 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2100 | Date: Sat Apr 25 06:59:36 2020 +0000 | ||
2101 | |||
2102 | upstream: We've standardized on memset over bzero, replace a couple | ||
2103 | |||
2104 | that had slipped in. ok deraadt markus djm. | ||
2105 | |||
2106 | OpenBSD-Commit-ID: f5be055554ee93e6cc66b0053b590bef3728dbd6 | ||
2107 | |||
2108 | commit 7f23f42123d64272a7b00754afa6b0841d676691 | ||
2109 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2110 | Date: Fri May 1 12:21:58 2020 +1000 | ||
2111 | |||
2112 | Include sys/byteorder.h for htons and friends. | ||
2113 | |||
2114 | These are usually in netinet/in.h but on HP-UX they are not defined if | ||
2115 | _XOPEN_SOURCE_EXTENDED is set. Only needed for netcat in the regression | ||
2116 | tests. | ||
2117 | |||
2118 | commit d27cba58c972d101a5de976777e518f34ac779cb | ||
2119 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2120 | Date: Fri May 1 09:21:52 2020 +1000 | ||
2121 | |||
2122 | Fix conditional for openssl-based chacha20. | ||
2123 | |||
2124 | Fixes warnings or link errors when building against older OpenSSLs. | ||
2125 | ok djm | ||
2126 | |||
2127 | commit 20819b962dc1467cd6fad5486a7020c850efdbee | ||
2128 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2129 | Date: Fri Apr 24 15:07:55 2020 +1000 | ||
2130 | |||
2131 | Error out if given RDomain if unsupported. | ||
2132 | |||
2133 | If the config contained 'RDomain %D' on a platform that did not support | ||
2134 | it, the error would not be detected until runtime resulting in a broken | ||
2135 | sshd. Detect this earlier and error out if found. bz#3126, based on a | ||
2136 | patch from jjelen at redhat.com, tweaks and ok djm@ | ||
2137 | |||
2138 | commit 2c1690115a585c624eed2435075a93a463a894e2 | ||
2139 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2140 | Date: Fri Apr 24 03:33:21 2020 +0000 | ||
2141 | |||
2142 | upstream: Fix incorrect error message for "too many known hosts files." | ||
2143 | |||
2144 | bz#3149, patch from jjelen at redhat.com. | ||
2145 | |||
2146 | OpenBSD-Commit-ID: e0fcb07ed5cf7fd54ce340471a747c24454235e5 | ||
2147 | |||
2148 | commit 3beb7276e7a8aedd3d4a49f9c03b97f643448c92 | ||
2149 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2150 | Date: Fri Apr 24 02:19:40 2020 +0000 | ||
2151 | |||
2152 | upstream: Remove leave_non_blocking() which is now dead code | ||
2153 | |||
2154 | because nothing sets in_non_blocking_mode any more. Patch from | ||
2155 | michaael.meeks at collabora.com, ok djm@ | ||
2156 | |||
2157 | OpenBSD-Commit-ID: c403cefe97a5a99eca816e19cc849cdf926bd09c | ||
2158 | |||
2159 | commit 8654e3561772f0656e7663a0bd6a1a8cb6d43300 | ||
2160 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
2161 | Date: Thu Apr 23 21:28:09 2020 +0000 | ||
2162 | |||
2163 | upstream: ce examples of "Ar arg Ar arg" with "Ar arg arg" and | ||
2164 | |||
2165 | stop the spread; | ||
2166 | |||
2167 | OpenBSD-Commit-ID: af0e952ea0f5e2019c2ce953ed1796eca47f0705 | ||
2168 | |||
2169 | commit 67697e4a8246dd8423e44b8785f3ee31fee72d07 | ||
2170 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2171 | Date: Fri Apr 24 11:10:18 2020 +1000 | ||
2172 | |||
2173 | Update .depend. | ||
2174 | |||
2175 | commit d6cc76176216fe3fac16cd20d148d75cb9c50876 | ||
2176 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2177 | Date: Wed Apr 22 14:07:00 2020 +1000 | ||
2178 | |||
2179 | Mailing list is now closed to non-subscribers. | ||
2180 | |||
2181 | While there, add a reference to the bugzilla. ok djm@ | ||
2182 | |||
2183 | commit cecde6a41689d0ae585ec903b190755613a6de79 | ||
2184 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2185 | Date: Wed Apr 22 12:09:40 2020 +1000 | ||
2186 | |||
2187 | Put the values from env vars back. | ||
2188 | |||
2189 | This merges the values from the recently removed environment into make's | ||
2190 | command line arguments since we actually need those. | ||
2191 | |||
2192 | commit 300c4322b92e98d3346efa0aec1c094c94d0f964 | ||
2193 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2194 | Date: Wed Apr 22 11:33:15 2020 +1000 | ||
2195 | |||
2196 | Pass configure's egrep through to test-exec.sh. | ||
2197 | |||
2198 | Use it to create a wrapper function to call it from tests. Fixes the | ||
2199 | keygen-comment test on platforms with impoverished default egrep (eg | ||
2200 | Solaris). | ||
2201 | |||
2202 | commit c8d9796cfe046f00eb8b2096d2b7028d6a523a84 | ||
2203 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2204 | Date: Wed Apr 22 10:56:44 2020 +1000 | ||
2205 | |||
2206 | Remove unneeded env vars from t-exec invocation. | ||
2207 | |||
2208 | commit 01d4cdcd4514e99a4b6eb9523cd832bbf008d1d7 | ||
2209 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2210 | Date: Tue Apr 21 23:14:58 2020 +0000 | ||
2211 | |||
2212 | upstream: Backslash '$' at then end of string. Prevents warning on | ||
2213 | |||
2214 | some shells. | ||
2215 | |||
2216 | OpenBSD-Regress-ID: 5dc27ab624c09d34078fd326b10e38c1ce9c741f | ||
2217 | |||
2218 | commit 8854724ccefc1fa16f10b37eda2e759c98148caa | ||
2219 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2220 | Date: Tue Apr 21 18:27:23 2020 +1000 | ||
2221 | |||
2222 | Sync rev 1.49. | ||
2223 | |||
2224 | Prevent infinite for loop since i went from ssize_t to size_t. Patch from | ||
2225 | eagleoflqj via OpenSSH github PR#178, ok djm@, feedback & ok millert@ | ||
2226 | |||
2227 | commit d00d07b6744d3b4bb7aca46c734ecd670148da23 | ||
2228 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2229 | Date: Mon Apr 20 04:44:47 2020 +0000 | ||
2230 | |||
2231 | upstream: regression test for printing of private key fingerprints and | ||
2232 | |||
2233 | key comments, mostly by loic AT venez.fr (slightly tweaked for portability) | ||
2234 | ok dtucker@ | ||
2235 | |||
2236 | OpenBSD-Regress-ID: 8dc6c4feaf4fe58b6d634cd89afac9a13fd19004 | ||
2237 | |||
2238 | commit a98d5ba31e5e7e01317352f85fa63b846a960f8c | ||
2239 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2240 | Date: Mon Apr 20 04:43:57 2020 +0000 | ||
2241 | |||
2242 | upstream: fix a bug I introduced in r1.406: when printing private key | ||
2243 | |||
2244 | fingerprint of old-format key, key comments were not being displayed. Spotted | ||
2245 | by loic AT venez.fr, ok dtucker | ||
2246 | |||
2247 | OpenBSD-Commit-ID: 2d98e4f9eb168eea733d17e141e1ead9fe26e533 | ||
2248 | |||
2249 | commit 32f2d0aad42c15e19bd3b07496076ca891573a58 | ||
2250 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2251 | Date: Fri Apr 17 07:16:07 2020 +0000 | ||
2252 | |||
2253 | upstream: repair private key fingerprint printing to also print | ||
2254 | |||
2255 | comment after regression caused by my recent pubkey loading refactor. | ||
2256 | Reported by loic AT venez.fr, ok dtucker@ | ||
2257 | |||
2258 | OpenBSD-Commit-ID: f8db49acbee6a6ccb2a4259135693b3cceedb89e | ||
2259 | |||
2260 | commit 094dd513f4b42e6a3cebefd18d1837eb709b4d99 | ||
2261 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2262 | Date: Fri Apr 17 07:15:11 2020 +0000 | ||
2263 | |||
2264 | upstream: refactor out some duplicate private key loading code; | ||
2265 | |||
2266 | based on patch from loic AT venez.fr, ok dtucker@ | ||
2267 | |||
2268 | OpenBSD-Commit-ID: 5eff2476b0d8d0614924c55e350fb7bb9c84f45e | ||
2269 | |||
2270 | commit 4e04f46f248f1708e39b900b76c9693c820eff68 | ||
2271 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
2272 | Date: Fri Apr 17 06:12:41 2020 +0000 | ||
2273 | |||
2274 | upstream: add space beteen macro arg and punctuation; | ||
2275 | |||
2276 | OpenBSD-Commit-ID: c93a6cbb4bf9468fc4c13e64bc1fd4efee201a44 | ||
2277 | |||
2278 | commit 44ae009a0112081d0d541aeaa90088bedb6f21ce | ||
2279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2280 | Date: Fri Apr 17 04:27:03 2020 +0000 | ||
2281 | |||
2282 | upstream: auth2-pubkey r1.89 changed the order of operations to | ||
2283 | |||
2284 | checking AuthorizedKeysFile first and falling back to AuthorizedKeysCommand | ||
2285 | if no key was found in a file. Document this order here; bz3134 | ||
2286 | |||
2287 | OpenBSD-Commit-ID: afce0872cbfcfc1d4910ad7722e50f792a1dce12 | ||
2288 | |||
2289 | commit f96f17f920f38ceea6f3c5cb0b075c46b8929fdc | ||
2290 | Author: Damien Miller <djm@mindrot.org> | ||
2291 | Date: Fri Apr 17 14:07:15 2020 +1000 | ||
2292 | |||
2293 | sys/sysctl.h is only used on OpenBSD | ||
2294 | |||
2295 | so change the preprocessor test used to include it to check | ||
2296 | __OpenBSD__, matching the code that uses the symbols it declares. | ||
2297 | |||
2298 | commit 54688e937a69c7aebef8a3d50cbd4c6345bab2ca | ||
2299 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2300 | Date: Fri Apr 17 03:38:47 2020 +0000 | ||
2301 | |||
2302 | upstream: fix reversed test that caused IdentitiesOnly=yes to not | ||
2303 | |||
2304 | apply to keys loaded from a PKCS11Provider; bz3141, ok dtucker@ | ||
2305 | |||
2306 | OpenBSD-Commit-ID: e3dd6424b94685671fe84c9b9dbe352fb659f677 | ||
2307 | |||
2308 | commit 267cbc87b5b6e78973ac4d3c7a6f807ed226928c | ||
2309 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2310 | Date: Fri Apr 17 03:34:42 2020 +0000 | ||
2311 | |||
2312 | upstream: mention that /etc/hosts.equiv and /etc/shosts.equiv are | ||
2313 | |||
2314 | not considered for HostbasedAuthentication when the target user is root; | ||
2315 | bz3148 | ||
2316 | |||
2317 | OpenBSD-Commit-ID: fe4c1256929e53f23af17068fbef47852f4bd752 | ||
2318 | |||
2319 | commit c90f72d29e84b4a2709078bf5546a72c29a65177 | ||
2320 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2321 | Date: Fri Apr 17 03:30:05 2020 +0000 | ||
2322 | |||
2323 | upstream: make IgnoreRhosts a tri-state option: "yes" ignore | ||
2324 | |||
2325 | rhosts/shosts, "no" allow rhosts/shosts or (new) "shosts-only" to allow | ||
2326 | .shosts files but not .rhosts. ok dtucker@ | ||
2327 | |||
2328 | OpenBSD-Commit-ID: d08d6930ed06377a80cf53923c1955e9589342e9 | ||
2329 | |||
2330 | commit 321c7147079270f3a154f91b59e66219aac3d514 | ||
2331 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2332 | Date: Fri Apr 17 03:23:13 2020 +0000 | ||
2333 | |||
2334 | upstream: allow the IgnoreRhosts directive to appear anywhere in a | ||
2335 | |||
2336 | sshd_config, not just before any Match blocks; bz3148, ok dtucker@ | ||
2337 | |||
2338 | OpenBSD-Commit-ID: e042467d703bce640b1f42c5d1a62bf3825736e8 | ||
2339 | |||
2340 | commit ca5403b085a735055ec7b7cdcd5b91f2662df94c | ||
2341 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
2342 | Date: Sat Apr 11 20:20:09 2020 +0000 | ||
2343 | |||
2344 | upstream: add space between macro arg and punctuation; | ||
2345 | |||
2346 | OpenBSD-Commit-ID: e579e4d95eef13059c30931ea1f09ed8296b819c | ||
2347 | |||
2348 | commit 8af0244d7b4a65eed2e62f9c89141c7c8e63f09d | ||
2349 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2350 | Date: Wed Apr 15 10:58:02 2020 +1000 | ||
2351 | |||
2352 | Add sys/syscall.h for syscall numbers. | ||
2353 | |||
2354 | In some architecture/libc configurations we need to explicitly include | ||
2355 | sys/syscall.h for the syscall number (__NR_xxx) definitions. bz#3085, | ||
2356 | patch from blowfist at xroutine.net. | ||
2357 | |||
2358 | commit 3779b50ee952078018a5d9e1df20977f4355df17 | ||
2359 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2360 | Date: Sat Apr 11 10:16:11 2020 +0000 | ||
2361 | |||
2362 | upstream: Refactor private key parsing. Eliminates a fair bit of | ||
2363 | |||
2364 | duplicated code and fixes oss-fuzz#20074 (NULL deref) caused by a missing key | ||
2365 | type check in the ECDSA_CERT parsing path. | ||
2366 | |||
2367 | feedback and ok markus@ | ||
2368 | |||
2369 | OpenBSD-Commit-ID: 4711981d88afb7196d228f7baad9be1d3b20f9c9 | ||
2370 | |||
2371 | commit b6a4013647db67ec622c144a9e05dd768f1966b3 | ||
2372 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2373 | Date: Fri Apr 10 00:54:03 2020 +0000 | ||
2374 | |||
2375 | upstream: Add tests for TOKEN expansion of LocalForward and | ||
2376 | |||
2377 | RemoteForward. | ||
2378 | |||
2379 | OpenBSD-Regress-ID: 90fcbc60d510eb114a2b6eaf4a06ff87ecd80a89 | ||
2380 | |||
2381 | commit abc3e0a5179c13c0469a1b11fe17d832abc39999 | ||
2382 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2383 | Date: Mon Apr 6 09:43:55 2020 +0000 | ||
2384 | |||
2385 | upstream: Add utf8.c for asmprintf used by krl.c | ||
2386 | |||
2387 | OpenBSD-Regress-ID: 433708d11165afdb189fe635151d21659dd37a37 | ||
2388 | |||
2389 | commit 990687a0336098566c3a854d23cce74a31ec6fe2 | ||
2390 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2391 | Date: Fri Apr 10 00:52:07 2020 +0000 | ||
2392 | |||
2393 | upstream: Add TOKEN percent expansion to LocalFoward and RemoteForward | ||
2394 | |||
2395 | when used for Unix domain socket forwarding. Factor out the code for the | ||
2396 | config keywords that use the most common subset of TOKENS into its own | ||
2397 | function. bz#3014, ok jmc@ (man page bits) djm@ | ||
2398 | |||
2399 | OpenBSD-Commit-ID: bffc9f7e7b5cf420309a057408bef55171fd0b97 | ||
2400 | |||
2401 | commit 2b13d3934d5803703c04803ca3a93078ecb5b715 | ||
2402 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2403 | Date: Wed Apr 8 00:10:37 2020 +0000 | ||
2404 | |||
2405 | upstream: let sshkey_try_load_public() load public keys from the | ||
2406 | |||
2407 | unencrypted envelope of private key files if not sidecar public key file is | ||
2408 | present. | ||
2409 | |||
2410 | ok markus@ | ||
2411 | |||
2412 | OpenBSD-Commit-ID: 252a0a580e10b9a6311632530d63b5ac76592040 | ||
2413 | |||
2414 | commit d01f39304eaab0352793b490a25e1ab5f59a5366 | ||
2415 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2416 | Date: Wed Apr 8 00:09:24 2020 +0000 | ||
2417 | |||
2418 | upstream: simplify sshkey_try_load_public() | ||
2419 | |||
2420 | ok markus@ | ||
2421 | |||
2422 | OpenBSD-Commit-ID: 05a5d46562aafcd70736c792208b1856064f40ad | ||
2423 | |||
2424 | commit f290ab0833e44355fc006e4e67b92446c14673ef | ||
2425 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2426 | Date: Wed Apr 8 00:08:46 2020 +0000 | ||
2427 | |||
2428 | upstream: add sshkey_parse_pubkey_from_private_fileblob_type() | ||
2429 | |||
2430 | Extracts a public key from the unencrypted envelope of a new-style | ||
2431 | OpenSSH private key. | ||
2432 | |||
2433 | ok markus@ | ||
2434 | |||
2435 | OpenBSD-Commit-ID: 44d7ab446e5e8c686aee96d5897b26b3939939aa | ||
2436 | |||
2437 | commit 8d514eea4ae089626a55e11c7bc1745c8d9683e4 | ||
2438 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2439 | Date: Wed Apr 8 00:07:19 2020 +0000 | ||
2440 | |||
2441 | upstream: simplify sshkey_parse_private_fileblob_type() | ||
2442 | |||
2443 | Try new format parser for all key types first, fall back to PEM | ||
2444 | parser only for invalid format errors. | ||
2445 | |||
2446 | ok markus@ | ||
2447 | |||
2448 | OpenBSD-Commit-ID: 0173bbb3a5cface77b0679d4dca0e15eb5600b77 | ||
2449 | |||
2450 | commit 421169d0e758351b105eabfcebf42378ebf17217 | ||
2451 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2452 | Date: Wed Apr 8 00:05:59 2020 +0000 | ||
2453 | |||
2454 | upstream: check private key type against requested key type in | ||
2455 | |||
2456 | new-style private decoding; ok markus@ | ||
2457 | |||
2458 | OpenBSD-Commit-ID: 04d44b3a34ce12ce5187fb6f6e441a88c8c51662 | ||
2459 | |||
2460 | commit 6aabfb6d22b36d07f584cba97f4cdc4363a829da | ||
2461 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2462 | Date: Wed Apr 8 00:04:32 2020 +0000 | ||
2463 | |||
2464 | upstream: check that pubkey in private key envelope matches actual | ||
2465 | |||
2466 | private key | ||
2467 | |||
2468 | (this public key is currently unusued) | ||
2469 | |||
2470 | ok markus@ | ||
2471 | |||
2472 | OpenBSD-Commit-ID: 634a60b5e135d75f48249ccdf042f3555112049c | ||
2473 | |||
2474 | commit c0f5b2294796451001fd328c44f0d00f1114eddf | ||
2475 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2476 | Date: Wed Apr 8 00:01:52 2020 +0000 | ||
2477 | |||
2478 | upstream: refactor private key parsing a little | ||
2479 | |||
2480 | Split out the base64 decoding and private section decryption steps in | ||
2481 | to separate functions. This will make the decryption step easier to fuzz | ||
2482 | as well as making it easier to write a "load public key from new-format | ||
2483 | private key" function. | ||
2484 | |||
2485 | ok markus@ | ||
2486 | |||
2487 | OpenBSD-Commit-ID: 7de31d80fb9062aa01901ddf040c286b64ff904e | ||
2488 | |||
2489 | commit 8461a5b3db34ed0b5a4a18d82f64fd5ac8693ea8 | ||
2490 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2491 | Date: Mon Apr 6 20:54:34 2020 +1000 | ||
2492 | |||
2493 | Include openssl-compat.h before checking ifdefs. | ||
2494 | |||
2495 | Fixes problem where unsuitable chacha20 code in libressl would be used | ||
2496 | unintentionally. | ||
2497 | |||
2498 | commit 931c50c5883a9910ea1ae9a371e4e815ec56b035 | ||
2499 | Author: Damien Miller <djm@mindrot.org> | ||
2500 | Date: Mon Apr 6 10:04:56 2020 +1000 | ||
2501 | |||
2502 | fix inverted test for LibreSSL version | ||
2503 | |||
2504 | commit d1d5f728511e2338b7c994968d301d8723012264 | ||
2505 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2506 | Date: Sat Apr 4 23:04:41 2020 +0000 | ||
2507 | |||
2508 | upstream: Indicate if we're using a cached key in trace output. | ||
2509 | |||
2510 | OpenBSD-Regress-ID: 409a7b0e59d1272890fda507651c0c3d2d3c0d89 | ||
2511 | |||
2512 | commit a398251a4627367c78bc483c70c2ec973223f82c | ||
2513 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2514 | Date: Sun Apr 5 08:43:57 2020 +1000 | ||
2515 | |||
2516 | Use /usr/bin/xp4g/id if necessary. | ||
2517 | |||
2518 | Solaris' native "id" doesn't support the options we use but the one | ||
2519 | in /usr/bin/xp4g does, so use that instead. | ||
2520 | |||
2521 | commit db0fdd48335b5b01114f78c1a73a195235910f81 | ||
2522 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2523 | Date: Sat Apr 4 22:14:26 2020 +0000 | ||
2524 | |||
2525 | upstream: Some platforms don't have "hostname -s", so use cut to trim | ||
2526 | |||
2527 | short hostname instead. | ||
2528 | |||
2529 | OpenBSD-Regress-ID: ebcf36a6fdf287c9336b0d4f6fc9f793c05307a7 | ||
2530 | |||
2531 | commit e7e59a9cc8eb7fd5944ded28f4d7e3ae0a5fdecd | ||
2532 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2533 | Date: Fri Apr 3 07:53:10 2020 +0000 | ||
2534 | |||
2535 | upstream: Compute hash locally and re-enable %C tests. | ||
2536 | |||
2537 | OpenBSD-Regress-ID: 94d1366e8105274858b88a1f9ad2e62801e49770 | ||
2538 | |||
2539 | commit abe2b245b3ac6c4801e99bc0f13289cd28211e22 | ||
2540 | Author: Damien Miller <djm@mindrot.org> | ||
2541 | Date: Fri Apr 3 17:25:46 2020 +1100 | ||
2542 | |||
2543 | prefer libcrypto chacha20-poly1305 where possible | ||
2544 | |||
2545 | commit bc5c5d01ad668981f9e554e62195383bc12e8528 | ||
2546 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2547 | Date: Fri Apr 3 05:43:11 2020 +0000 | ||
2548 | |||
2549 | upstream: Temporarily remove tests for '%C' since the hash contains the | ||
2550 | |||
2551 | local hostname and it doesn't work on any machine except mine... spotted by | ||
2552 | djm@ | ||
2553 | |||
2554 | OpenBSD-Regress-ID: 2d4c3585b9fcbbff14f4a5a5fde51dbd0d690401 | ||
2555 | |||
2556 | commit 81624026989654955a657ebf2a1fe8b9994f3c87 | ||
2557 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2558 | Date: Fri Apr 3 06:07:57 2020 +0000 | ||
2559 | |||
2560 | upstream: r1.522 deleted one too many lines; repair | ||
2561 | |||
2562 | OpenBSD-Commit-ID: 1af8851fd7a99e4a887b19aa8f4c41a6b3d25477 | ||
2563 | |||
2564 | commit 668cb3585ce829bd6e34d4a962c489bda1d16370 | ||
2565 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
2566 | Date: Fri Apr 3 05:53:52 2020 +0000 | ||
2567 | |||
2568 | upstream: sort -N and add it to usage(); | ||
2569 | |||
2570 | OpenBSD-Commit-ID: 5b00e8db37c2b0a54c7831fed9e5f4db53ada332 | ||
2571 | |||
2572 | commit 338ccee1e7fefa47f3d128c2541e94c5270abe0c | ||
2573 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2574 | Date: Fri Apr 3 05:48:57 2020 +0000 | ||
2575 | |||
2576 | upstream: avoid another compiler warning spotted in -portable | ||
2577 | |||
2578 | OpenBSD-Commit-ID: 1d29c51ac844b287c4c8bcaf04c63c7d9ba3b8c7 | ||
2579 | |||
2580 | commit 9f8a42340bd9af86a99cf554dc39ecdf89287544 | ||
2581 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2582 | Date: Fri Apr 3 04:07:48 2020 +0000 | ||
2583 | |||
2584 | upstream: this needs utf8.c too | ||
2585 | |||
2586 | OpenBSD-Regress-ID: 445040036cec714d28069a20da25553a04a28451 | ||
2587 | |||
2588 | commit 92115ea7c3a834374720c350841fc729e7d5c8b2 | ||
2589 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2590 | Date: Fri Apr 3 03:14:03 2020 +0000 | ||
2591 | |||
2592 | upstream: Add percent_expand test for 'Match Exec'. | ||
2593 | |||
2594 | OpenBSD-Regress-ID: a41c14fd6a0b54d66aa1e9eebfb9ec962b41232f | ||
2595 | |||
2596 | commit de34a440276ae855c38deb20f926d46752c62c9d | ||
2597 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2598 | Date: Fri Apr 3 04:43:24 2020 +0000 | ||
2599 | |||
2600 | upstream: fix format string (use %llu for uint64, not %lld). spotted by | ||
2601 | |||
2602 | Darren and his tinderbox tests | ||
2603 | |||
2604 | OpenBSD-Commit-ID: 3b4587c3d9d46a7be9bdf028704201943fba96c2 | ||
2605 | |||
2606 | commit 9cd40b829a5295cc81fbea8c7d632b2478db6274 | ||
2607 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2608 | Date: Fri Apr 3 04:34:15 2020 +0000 | ||
2609 | |||
2610 | upstream: Add a flag to re-enable verbose output when in batch | ||
2611 | |||
2612 | mode; requested in bz3135; ok dtucker | ||
2613 | |||
2614 | OpenBSD-Commit-ID: 5ad2ed0e6440562ba9c84b666a5bbddc1afe2e2b | ||
2615 | |||
2616 | commit 6ce51a5da5d333a44e7c74c027f3571f70c39b24 | ||
2617 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2618 | Date: Fri Apr 3 04:32:21 2020 +0000 | ||
2619 | |||
2620 | upstream: chacha20-poly1305 AEAD using libcrypto EVP_chacha20 | ||
2621 | |||
2622 | Based on patch from Yuriy M. Kaminskiy. ok + lots of assistance along the | ||
2623 | way at a2k20 tb@ | ||
2624 | |||
2625 | OpenBSD-Commit-ID: 5e08754c13d31258bae6c5e318cc96219d6b10f0 | ||
2626 | |||
2627 | commit eba523f0a130f1cce829e6aecdcefa841f526a1a | ||
2628 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2629 | Date: Fri Apr 3 04:27:03 2020 +0000 | ||
2630 | |||
2631 | upstream: make Chacha20-POLY1305 context struct opaque; ok tb@ as | ||
2632 | |||
2633 | part of a larger diff at a2k20 | ||
2634 | |||
2635 | OpenBSD-Commit-ID: a4609b7263284f95c9417ef60ed7cdbb7bf52cfd | ||
2636 | |||
2637 | commit ebd29e90129cf18fedfcfe1de86e324228669295 | ||
2638 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2639 | Date: Fri Apr 3 04:06:26 2020 +0000 | ||
2640 | |||
2641 | upstream: fix debug statement | ||
2642 | |||
2643 | OpenBSD-Commit-ID: 42c6edeeda5ce88b51a20d88c93be3729ce6b916 | ||
2644 | |||
2645 | commit 7b4d8999f2e1a0cb7b065e3efa83e6edccfc7d82 | ||
2646 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2647 | Date: Fri Apr 3 04:03:51 2020 +0000 | ||
2648 | |||
2649 | upstream: the tunnel-forwarding vs ExitOnForwardFailure fix that I | ||
2650 | |||
2651 | committed earlier had an off-by-one. Fix this and add some debugging that | ||
2652 | would have made it apparent sooner. | ||
2653 | |||
2654 | OpenBSD-Commit-ID: 082f8f72b1423bd81bbdad750925b906e5ac6910 | ||
2655 | |||
2656 | commit eece243666d44ceb710d004624c5c7bdc05454bc | ||
2657 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2658 | Date: Fri Apr 3 03:12:11 2020 +0000 | ||
2659 | |||
2660 | upstream: %C expansion just added to Match Exec should include | ||
2661 | |||
2662 | remote user not local user. | ||
2663 | |||
2664 | OpenBSD-Commit-ID: 80f1d976938f2a55ee350c11d8b796836c8397e2 | ||
2665 | |||
2666 | commit d5318a784d016478fc8da90a38d9062c51c10432 | ||
2667 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2668 | Date: Fri Apr 3 02:33:31 2020 +0000 | ||
2669 | |||
2670 | upstream: Add regression test for percent expansions where possible. | ||
2671 | |||
2672 | OpenBSD-Regress-ID: 7283be8b2733ac1cbefea3048a23d02594485288 | ||
2673 | |||
2674 | commit 663e84bb53de2a60e56a44d538d25b8152b5c1cc | ||
2675 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2676 | Date: Fri Apr 3 02:40:32 2020 +0000 | ||
2677 | |||
2678 | upstream: make failures when establishing "Tunnel" forwarding terminate | ||
2679 | |||
2680 | the connection when ExitOnForwardFailure is enabled; bz3116; ok dtucker | ||
2681 | |||
2682 | OpenBSD-Commit-ID: ef4b4808de0a419c17579b1081da768625c1d735 | ||
2683 | |||
2684 | commit ed833da176611a39d3376d62154eb88eb440d31c | ||
2685 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2686 | Date: Fri Apr 3 02:27:12 2020 +0000 | ||
2687 | |||
2688 | upstream: Make with config keywords support which | ||
2689 | |||
2690 | percent_expansions more consistent. - %C is moved into its own function and | ||
2691 | added to Match Exec. - move the common (global) options into a macro. This | ||
2692 | is ugly but it's the least-ugly way I could come up with. - move | ||
2693 | IdentityAgent and ForwardAgent percent expansion to before the config dump | ||
2694 | to make it regression-testable. - document all of the above | ||
2695 | |||
2696 | ok jmc@ for man page bits, "makes things less terrible" djm@ for the rest. | ||
2697 | |||
2698 | OpenBSD-Commit-ID: 4b65664bd6d8ae2a9afaf1a2438ddd1b614b1d75 | ||
2699 | |||
2700 | commit 6ec7457171468da2bbd908b8cd63d298b0e049ea | ||
2701 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2702 | Date: Fri Apr 3 02:26:56 2020 +0000 | ||
2703 | |||
2704 | upstream: give ssh-keygen the ability to dump the contents of a | ||
2705 | |||
2706 | binary key revocation list: ssh-keygen -lQf /path bz#3132; ok dtucker | ||
2707 | |||
2708 | OpenBSD-Commit-ID: b76afc4e3b74ab735dbde4e5f0cfa1f02356033b | ||
2709 | |||
2710 | commit af628b8a6c3ef403644d83d205c80ff188c97f0c | ||
2711 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2712 | Date: Fri Apr 3 02:25:21 2020 +0000 | ||
2713 | |||
2714 | upstream: add allocating variant of the safe utf8 printer; ok | ||
2715 | |||
2716 | dtucker as part of a larger diff | ||
2717 | |||
2718 | OpenBSD-Commit-ID: 037e2965bd50eacc2ffb49889ecae41552744fa0 | ||
2719 | |||
2720 | commit d8ac9af645f5519ac5211e9e1e4dc1ed00e9cced | ||
2721 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2722 | Date: Mon Mar 16 02:17:02 2020 +0000 | ||
2723 | |||
2724 | upstream: Cast lifetime to u_long for comparison to prevent unsigned | ||
2725 | |||
2726 | comparison warning on 32bit arches. Spotted by deraadt, ok djm. | ||
2727 | |||
2728 | OpenBSD-Commit-ID: 7a75b2540bff5ab4fa00b4d595db1df13bb0515a | ||
2729 | |||
2730 | commit 0eaca933ae08b0a515edfccd5cc4a6b667034813 | ||
2731 | Author: Darren Tucker <dtucker@dtucker.net> | ||
2732 | Date: Sat Mar 14 20:58:46 2020 +1100 | ||
2733 | |||
2734 | Include fido.h when checking for fido/credman.h. | ||
2735 | |||
2736 | It's required for fido_dev_t, otherwise configure fails with | ||
2737 | when given --with-security-key-builtin. | ||
2738 | |||
2739 | commit c7c099060f82ffe6a36d8785ecf6052e12fd92f0 | ||
2740 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2741 | Date: Fri Mar 13 03:18:45 2020 +0000 | ||
2742 | |||
2743 | upstream: some more speeling mistakes from | ||
2744 | |||
2745 | OpenBSD-Regress-ID: 02471c079805471c546b7a69d9ab1d34e9a57443 | ||
2746 | |||
2747 | commit 1d89232a4aa97fe935cd60b8d24d75c2f70d56c5 | ||
2748 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2749 | Date: Fri Mar 13 04:16:27 2020 +0000 | ||
2750 | |||
2751 | upstream: improve error messages for some common PKCS#11 C_Login | ||
2752 | |||
2753 | failure cases; based on patch from Jacob Hoffman-Andrews in bz3130; ok | ||
2754 | dtucker | ||
2755 | |||
2756 | OpenBSD-Commit-ID: b8b849621b4a98e468942efd0a1c519c12ce089e | ||
2757 | |||
2758 | commit 5becbec023f2037394987f85ed7f74b9a28699e0 | ||
2759 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2760 | Date: Fri Mar 13 04:01:56 2020 +0000 | ||
2761 | |||
2762 | upstream: use sshpkt_fatal() for kex_exchange_identification() | ||
2763 | |||
2764 | errors. This ensures that the logged errors are consistent with other | ||
2765 | transport- layer errors and that the relevant IP addresses are logged. bz3129 | ||
2766 | ok dtucker@ | ||
2767 | |||
2768 | OpenBSD-Commit-ID: 2c22891f0b9e1a6cd46771cedbb26ac96ec2e6ab | ||
2769 | |||
2770 | commit eef88418f9e5e51910af3c5b23b5606ebc17af55 | ||
2771 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
2772 | Date: Fri Mar 13 03:24:49 2020 +0000 | ||
2773 | |||
2774 | upstream: Don't clear alarm timers in listening sshd. Previously | ||
2775 | |||
2776 | these timers were used for regenerating the SSH1 ephemeral host keys but | ||
2777 | those are now gone so there's no need to clear the timers either. ok | ||
2778 | deraadt@ | ||
2779 | |||
2780 | OpenBSD-Commit-ID: 280d2b885e4a1ce404632e8cc38fcb17be7dafc0 | ||
2781 | |||
2782 | commit d081f017c20a3564255873ed99fd7d024cac540f | ||
2783 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2784 | Date: Fri Mar 13 03:17:07 2020 +0000 | ||
2785 | |||
2786 | upstream: spelling errors in comments; no code change from | ||
2787 | |||
2788 | OpenBSD-Commit-ID: 166ea64f6d84f7bac5636dbd38968592cb5eb924 | ||
2789 | |||
2790 | commit c084a2d040f160bc2b83f13297e3e3ca3f5dbac6 | ||
2791 | Author: djm@openbsd.org <djm@openbsd.org> | ||
2792 | Date: Fri Mar 13 03:12:17 2020 +0000 | ||
2793 | |||
2794 | upstream: when downloading FIDO2 resident keys from a token, don't | ||
2795 | |||
2796 | prompt for a PIN until the token has told us that it needs one. Avoids | ||
2797 | double-prompting on devices that implement on-device authentication (e.g. a | ||
2798 | touchscreen PIN pad on the Trezor Model T). ok dtucker@ | ||
2799 | |||
2800 | OpenBSD-Commit-ID: 38b78903dd4422d7d3204095a31692fb69130817 | ||
2801 | |||
2802 | commit 955c4cf4c6a1417c28d4e1040702c4d9bf63645b | ||
2803 | Author: Damien Miller <djm@mindrot.org> | ||
2804 | Date: Fri Mar 13 14:30:16 2020 +1100 | ||
2805 | |||
2806 | sync fnmatch.c with upstream to fix another typo | ||
2807 | |||
2808 | commit 397f217e8640e75bb719a8e87111b4bd848fb3df | ||
2809 | Author: Damien Miller <djm@mindrot.org> | ||
2810 | Date: Fri Mar 13 14:24:23 2020 +1100 | ||
2811 | |||
2812 | another spelling error in comment | ||
2813 | |||
2814 | commit def31bc5427579ec3f7f2ce99f2da1338fdc0c9f | ||
2815 | Author: Damien Miller <djm@mindrot.org> | ||
2816 | Date: Fri Mar 13 14:23:07 2020 +1100 | ||
2817 | |||
2818 | spelling mistakes | ||
2819 | |||
2820 | from https://fossies.org/linux/misc/openssh-8.2p1.tar.gz/codespell.html | ||
2821 | |||
2822 | commit 8bdc3bb7cf4c82c3344cfcb82495a43406e87e83 | ||
2823 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2824 | Date: Fri Mar 6 18:29:54 2020 +0000 | ||
2825 | |||
2826 | upstream: fix relative includes in sshd_config; ok djm | ||
2827 | |||
2828 | OpenBSD-Commit-ID: fa29b0da3c93cbc3a1d4c6bcd58af43c00ffeb5b | ||
2829 | |||
2830 | commit e32ef97a56ae03febfe307688858badae3a70e5a | ||
2831 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2832 | Date: Fri Mar 6 18:29:14 2020 +0000 | ||
2833 | |||
2834 | upstream: fix use-after-free in do_download_sk; ok djm | ||
2835 | |||
2836 | OpenBSD-Commit-ID: 96b49623d297797d4fc069f1f09e13c8811f8863 | ||
2837 | |||
2838 | commit 5732d58020309364bf31fa125354e399361006db | ||
2839 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2840 | Date: Fri Mar 6 18:28:50 2020 +0000 | ||
2841 | |||
2842 | upstream: do not leak oprincipals; ok djm | ||
2843 | |||
2844 | OpenBSD-Commit-ID: 4691d9387eab36f8fda48f5d8009756ed13a7c4c | ||
2845 | |||
2846 | commit 8fae395f34c2c52cdaf9919aa261d1848b4bb00b | ||
2847 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2848 | Date: Fri Mar 6 18:28:27 2020 +0000 | ||
2849 | |||
2850 | upstream: initialize seconds for debug message; ok djm | ||
2851 | |||
2852 | OpenBSD-Commit-ID: 293fbefe6d00b4812a180ba02e26170e4c855b81 | ||
2853 | |||
2854 | commit 46e5c4c8ffcd1569bcd5d04803abaa2ecf3e4cff | ||
2855 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2856 | Date: Fri Mar 6 18:27:50 2020 +0000 | ||
2857 | |||
2858 | upstream: correct return code; ok djm | ||
2859 | |||
2860 | OpenBSD-Commit-ID: 319d09e3b7f4b2bc920c67244d9ff6426b744810 | ||
2861 | |||
2862 | commit 31c39e7840893f1bfdcbe4f813b20d1d7e69ec3e | ||
2863 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2864 | Date: Fri Mar 6 18:27:15 2020 +0000 | ||
2865 | |||
2866 | upstream: principalsp is optional, pubkey required; ok djm | ||
2867 | |||
2868 | OpenBSD-Commit-ID: 2cc3ea5018c28ed97edaccd7f17d2cc796f01024 | ||
2869 | |||
2870 | commit e26a31757c5df2f58687cb9a4853d1418f39728e | ||
2871 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2872 | Date: Fri Mar 6 18:26:21 2020 +0000 | ||
2873 | |||
2874 | upstream: remove unused variables in ssh-pkcs11-helper; ok djm | ||
2875 | |||
2876 | OpenBSD-Commit-ID: 13e572846d0d1b28f1251ddd2165e9cf18135ae1 | ||
2877 | |||
2878 | commit 1b378c0d982d6ab522eda634b0e88cf1fca5e352 | ||
2879 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2880 | Date: Fri Mar 6 18:25:48 2020 +0000 | ||
2881 | |||
2882 | upstream: return correct error in sshsk_ed25519_sig; ok djm | ||
2883 | |||
2884 | OpenBSD-Commit-ID: 52bf733df220303c260fee4f165ec64b4a977625 | ||
2885 | |||
2886 | commit fbff605e637b068061ab6784ff03e3874890c092 | ||
2887 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2888 | Date: Fri Mar 6 18:25:12 2020 +0000 | ||
2889 | |||
2890 | upstream: fix possible null-deref in check_key_not_revoked; ok | ||
2891 | |||
2892 | djm | ||
2893 | |||
2894 | OpenBSD-Commit-ID: 80855e9d7af42bb6fcc16c074ba69876bfe5e3bf | ||
2895 | |||
2896 | commit bc30b446841fc16e50ed6e75c56ccfbd37b9f281 | ||
2897 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2898 | Date: Fri Mar 6 18:24:39 2020 +0000 | ||
2899 | |||
2900 | upstream: ssh_fetch_identitylist() returns the return value from | ||
2901 | |||
2902 | ssh_request_reply() so we should also check against != 0 ok djm | ||
2903 | |||
2904 | OpenBSD-Commit-ID: 28d0028769d03e665688c61bb5fd943e18614952 | ||
2905 | |||
2906 | commit 7b4f70ddeb59f35283d77d8d9c834ca58f8cf436 | ||
2907 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2908 | Date: Fri Mar 6 18:23:17 2020 +0000 | ||
2909 | |||
2910 | upstream: sshkey_cert_check_authority requires reason to be set; | ||
2911 | |||
2912 | ok djm | ||
2913 | |||
2914 | OpenBSD-Commit-ID: 6f7a6f19540ed5749763c2f9530c0897c94aa552 | ||
2915 | |||
2916 | commit 05efe270df1e925db0af56a806d18b5063db4b6d | ||
2917 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2918 | Date: Fri Mar 6 18:21:28 2020 +0000 | ||
2919 | |||
2920 | upstream: passphrase depends on kdfname, not ciphername (possible | ||
2921 | |||
2922 | null-deref); ok djm | ||
2923 | |||
2924 | OpenBSD-Commit-ID: 0d39668edf5e790b5837df4926ee1141cec5471c | ||
2925 | |||
2926 | commit 1ddf5682f3992bdacd29164891abb71a19c2cf61 | ||
2927 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2928 | Date: Fri Mar 6 18:20:44 2020 +0000 | ||
2929 | |||
2930 | upstream: consistently check packet_timeout_ms against 0; ok djm | ||
2931 | |||
2932 | OpenBSD-Commit-ID: e8fb8cb2c96c980f075069302534eaf830929928 | ||
2933 | |||
2934 | commit 31f1ee54968ad84eb32375e4412e0318766b586b | ||
2935 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2936 | Date: Fri Mar 6 18:20:02 2020 +0000 | ||
2937 | |||
2938 | upstream: initialize cname in case ai_canonname is NULL or too | ||
2939 | |||
2940 | long; ok djm | ||
2941 | |||
2942 | OpenBSD-Commit-ID: c27984636fdb1035d1642283664193e91aab6e37 | ||
2943 | |||
2944 | commit a6134b02b5264b2611c8beae98bb392329452bba | ||
2945 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2946 | Date: Fri Mar 6 18:19:21 2020 +0000 | ||
2947 | |||
2948 | upstream: fix uninitialized pointers for forward_cancel; ok djm | ||
2949 | |||
2950 | OpenBSD-Commit-ID: 612778e6d87ee865d0ba97d0a335f141cee1aa37 | ||
2951 | |||
2952 | commit 16d4f9961c75680aab374dee762a5baa0ad507af | ||
2953 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2954 | Date: Fri Mar 6 18:16:21 2020 +0000 | ||
2955 | |||
2956 | upstream: exit on parse failures in input_service_request; ok djm | ||
2957 | |||
2958 | OpenBSD-Commit-ID: 6a7e1bfded26051d5aa893c030229b1ee6a0d5d2 | ||
2959 | |||
2960 | commit 5f25afe5216ba7f8921e04f79aa4ca0624eca820 | ||
2961 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2962 | Date: Fri Mar 6 18:15:38 2020 +0000 | ||
2963 | |||
2964 | upstream: fix null-deref on calloc failure; ok djm | ||
2965 | |||
2966 | OpenBSD-Commit-ID: a313519579b392076b7831ec022dfdefbec8724a | ||
2967 | |||
2968 | commit ff2acca039aef16a15fce409163df404858f7aa5 | ||
2969 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2970 | Date: Fri Mar 6 18:15:04 2020 +0000 | ||
2971 | |||
2972 | upstream: exit if ssh_krl_revoke_key_sha256 fails; ok djm | ||
2973 | |||
2974 | OpenBSD-Commit-ID: 0864ad4fe8bf28ab21fd1df766e0365c11bbc0dc | ||
2975 | |||
2976 | commit 31c860a0212af2d5b6a129e3e8fcead51392ee1d | ||
2977 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2978 | Date: Fri Mar 6 18:14:13 2020 +0000 | ||
2979 | |||
2980 | upstream: pkcs11_register_provider: return < 0 on error; ok djm | ||
2981 | |||
2982 | OpenBSD-Commit-ID: cfc8321315b787e4d40da4bdb2cbabd4154b0d97 | ||
2983 | |||
2984 | commit 15be29e1e3318737b0768ca37d5b4a3fbe868ef0 | ||
2985 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2986 | Date: Fri Mar 6 18:13:29 2020 +0000 | ||
2987 | |||
2988 | upstream: sshsig: return correct error, fix null-deref; ok djm | ||
2989 | |||
2990 | OpenBSD-Commit-ID: 1d1af7cd538b8b23e621cf7ab84f11e7a923edcd | ||
2991 | |||
2992 | commit 6fb6f186cb62a6370fba476b6a03478a1e95c30d | ||
2993 | Author: markus@openbsd.org <markus@openbsd.org> | ||
2994 | Date: Fri Mar 6 18:12:55 2020 +0000 | ||
2995 | |||
2996 | upstream: vasnmprintf allocates str and returns -1; ok djm | ||
2997 | |||
2998 | OpenBSD-Commit-ID: dae4c9e83d88471bf3b3f89e3da7a107b44df11c | ||
2999 | |||
3000 | commit 714e1cbca17daa13f4f98978cf9e0695d4b2e0a4 | ||
3001 | Author: markus@openbsd.org <markus@openbsd.org> | ||
3002 | Date: Fri Mar 6 18:11:10 2020 +0000 | ||
3003 | |||
3004 | upstream: sshpkt_fatal() does not return; ok djm | ||
3005 | |||
3006 | OpenBSD-Commit-ID: 7dfe847e28bd78208eb227b37f29f4a2a0929929 | ||
3007 | |||
3008 | commit 9b47bd7b09d191991ad9e0506bb66b74bbc93d34 | ||
3009 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3010 | Date: Fri Feb 28 01:07:28 2020 +0000 | ||
3011 | |||
3012 | upstream: no-touch-required certificate option should be an | ||
3013 | |||
3014 | extension, not a critical option. | ||
3015 | |||
3016 | OpenBSD-Commit-ID: 626b22c5feb7be8a645e4b9a9bef89893b88600d | ||
3017 | |||
3018 | commit dd992520bed35387fc010239abe1bdc0c2665e38 | ||
3019 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3020 | Date: Fri Feb 28 01:06:05 2020 +0000 | ||
3021 | |||
3022 | upstream: better error message when trying to use a FIDO key | ||
3023 | |||
3024 | function and SecurityKeyProvider is empty | ||
3025 | |||
3026 | OpenBSD-Commit-ID: e56602c2ee8c82f835d30e4dc8ee2e4a7896be24 | ||
3027 | |||
3028 | commit b81e66dbe0345aef4717911abcb4f589fff33a0a | ||
3029 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3030 | Date: Thu Feb 27 02:32:37 2020 +0000 | ||
3031 | |||
3032 | upstream: Drop leading space from line count that was confusing | ||
3033 | |||
3034 | ssh-keygen's screen mode. | ||
3035 | |||
3036 | OpenBSD-Commit-ID: 3bcae7a754db3fc5ad3cab63dd46774edb35b8ae | ||
3037 | |||
3038 | commit d5ba1c03278eb079438bb038266d80d7477d49cb | ||
3039 | Author: jsg@openbsd.org <jsg@openbsd.org> | ||
3040 | Date: Wed Feb 26 13:40:09 2020 +0000 | ||
3041 | |||
3042 | upstream: change explicit_bzero();free() to freezero() | ||
3043 | |||
3044 | While freezero() returns early if the pointer is NULL the tests for | ||
3045 | NULL in callers are left to avoid warnings about passing an | ||
3046 | uninitialised size argument across a function boundry. | ||
3047 | |||
3048 | ok deraadt@ djm@ | ||
3049 | |||
3050 | OpenBSD-Commit-ID: 2660fa334fcc7cd05ec74dd99cb036f9ade6384a | ||
3051 | |||
3052 | commit 9e3220b585c5be19a7431ea4ff8884c137b3a81c | ||
3053 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3054 | Date: Wed Feb 26 11:46:51 2020 +0000 | ||
3055 | |||
3056 | upstream: Have sftp reject "-1" in the same way as ssh(1) and | ||
3057 | |||
3058 | scp(1) do instead of accepting and silently ignoring it since protocol 1 | ||
3059 | support has been removed. Spotted by shivakumar2696 at gmail.com, ok | ||
3060 | deraadt@ | ||
3061 | |||
3062 | OpenBSD-Commit-ID: b79f95559a1c993214f4ec9ae3c34caa87e9d5de | ||
3063 | |||
3064 | commit ade8e67bb0f07b12e5e47e7baeafbdc898de639f | ||
3065 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3066 | Date: Wed Feb 26 01:31:47 2020 +0000 | ||
3067 | |||
3068 | upstream: Remove obsolete XXX comment. ok deraadt@ | ||
3069 | |||
3070 | OpenBSD-Commit-ID: bc462cc843947feea26a2e21c750b3a7469ff01b | ||
3071 | |||
3072 | commit 7eb903f51eba051d7f65790bab92a28970ac1ccc | ||
3073 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3074 | Date: Mon Feb 24 04:27:58 2020 +0000 | ||
3075 | |||
3076 | upstream: Fix typo. Patch from itoama at live.jp via github PR#173. | ||
3077 | |||
3078 | OpenBSD-Commit-ID: 5cdaafab38bbdea0d07e24777d00bfe6f972568a | ||
3079 | |||
3080 | commit b2491c289dd1b557a18a2aca04eeff5c157fc5ef | ||
3081 | Author: Nico Kadel-Garcia <nkadel@gmail.com> | ||
3082 | Date: Sat Oct 12 17:51:01 2019 -0400 | ||
3083 | |||
3084 | Switch %define to %global for redhat/openssh.spec | ||
3085 | |||
3086 | commit b18dcf6cca7c7aba1cc22e668e04492090ef0255 | ||
3087 | Author: mkontani <itoama@live.jp> | ||
3088 | Date: Fri Feb 21 00:54:49 2020 +0900 | ||
3089 | |||
3090 | fix some typos and sentence | ||
3091 | |||
3092 | commit 0001576a096f788d40c2c0a39121cff51bf961ad | ||
3093 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3094 | Date: Fri Feb 21 00:04:43 2020 +0000 | ||
3095 | |||
3096 | upstream: Fix some typos and an incorrect word in docs. Patch from | ||
3097 | |||
3098 | itoama at live.jp via github PR#172. | ||
3099 | |||
3100 | OpenBSD-Commit-ID: 166ee8f93a7201fef431b9001725ab8b269d5874 | ||
3101 | |||
3102 | commit 99ff8fefe4b2763a53778d06b5f74443c8701615 | ||
3103 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3104 | Date: Thu Feb 20 05:58:08 2020 +0000 | ||
3105 | |||
3106 | upstream: Update moduli generation script to new ssh-keygen | ||
3107 | |||
3108 | generation and screening command line flags. | ||
3109 | |||
3110 | OpenBSD-Commit-ID: 5010ff08f7ad92082e87dde098b20f5c24921a8f | ||
3111 | |||
3112 | commit 700d16f5e534d6de5a3b7105a74a7a6f4487b681 | ||
3113 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3114 | Date: Thu Feb 20 05:41:51 2020 +0000 | ||
3115 | |||
3116 | upstream: Import regenerated moduli. | ||
3117 | |||
3118 | OpenBSD-Commit-ID: 7b7b619c1452a459310b0cf4391c5757c6bdbc0f | ||
3119 | |||
3120 | commit 4753b74ba0f09e4aacdaab5e184cd540352004d5 | ||
3121 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3122 | Date: Thu Feb 20 16:42:50 2020 +1100 | ||
3123 | |||
3124 | Import regenerated moduli. | ||
3125 | |||
3126 | commit 11d427162778c18fa42917893a75d178679a2389 | ||
3127 | Author: HARUYAMA Seigo <haruyama@unixuser.org> | ||
3128 | Date: Fri Feb 14 16:14:23 2020 +0900 | ||
3129 | |||
3130 | Fix typos in INSTALL: s/avilable/available/ s/suppports/supports/ | ||
3131 | |||
3132 | commit 264a966216137c9f4f8220fd9142242d784ba059 | ||
3133 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3134 | Date: Tue Feb 18 08:58:33 2020 +0000 | ||
3135 | |||
3136 | upstream: Ensure that the key lifetime provided fits within the | ||
3137 | |||
3138 | values allowed by the wire format (u32). Prevents integer wraparound of the | ||
3139 | timeout values. bz#3119, ok markus@ djm@ | ||
3140 | |||
3141 | OpenBSD-Commit-ID: 8afe6038b5cdfcf63360788f012a7ad81acc46a2 | ||
3142 | |||
3143 | commit de1f3564cd85915b3002859873a37cb8d31ac9ce | ||
3144 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3145 | Date: Tue Feb 18 08:49:49 2020 +0000 | ||
3146 | |||
3147 | upstream: Detect and prevent simple configuration loops when using | ||
3148 | |||
3149 | ProxyJump. bz#3057, ok djm@ | ||
3150 | |||
3151 | OpenBSD-Commit-ID: 077d21c564c886c98309d871ed6f8ef267b9f037 | ||
3152 | |||
3153 | commit 30144865bfa06b12239cfabc37c45e5ddc369d97 | ||
3154 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
3155 | Date: Sun Feb 16 21:15:43 2020 +0000 | ||
3156 | |||
3157 | upstream: document -F none; with jmc@ | ||
3158 | |||
3159 | OpenBSD-Commit-ID: 0eb93b75473d2267aae9200e02588e57778c84f2 | ||
3160 | |||
3161 | commit 011052de73f3dbc53f50927ccf677266a9ade4f6 | ||
3162 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3163 | Date: Mon Feb 17 22:55:51 2020 +1100 | ||
3164 | |||
3165 | Remove unused variable warning. | ||
3166 | |||
3167 | commit 31c9348c5e4e94e9913ec64b3ca6e15f68ba19e5 | ||
3168 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3169 | Date: Mon Feb 17 22:53:24 2020 +1100 | ||
3170 | |||
3171 | Constify aix_krb5_get_principal_name. | ||
3172 | |||
3173 | Prevents warning about discarding type qualifiers on AIX. | ||
3174 | |||
3175 | commit 290c994336a2cfe03c5496bebb6580863f94b232 | ||
3176 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3177 | Date: Mon Feb 17 22:51:36 2020 +1100 | ||
3178 | |||
3179 | Check if TILDE is already defined and undef. | ||
3180 | |||
3181 | Prevents redefinition warning on AIX. | ||
3182 | |||
3183 | commit 41a2e64ae480eda73ee0e809bbe743d203890938 | ||
3184 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3185 | Date: Mon Feb 17 22:51:00 2020 +1100 | ||
3186 | |||
3187 | Prevent unused variable warning. | ||
3188 | |||
3189 | commit d4860ec4efd25ba194337082736797fce0bda016 | ||
3190 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3191 | Date: Mon Feb 17 22:48:50 2020 +1100 | ||
3192 | |||
3193 | Check if getpeereid is actually declared. | ||
3194 | |||
3195 | Check in sys/socket.h (AIX) and unistd.h (FreeBSD, DragonFLy and OS X). | ||
3196 | Prevents undeclared function warning on at least some versions of AIX. | ||
3197 | |||
3198 | commit 8aa3455b16fddea4c0144a7c4a1edb10ec67dcc8 | ||
3199 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3200 | Date: Fri Feb 14 00:39:20 2020 +0000 | ||
3201 | |||
3202 | upstream: openssh-8.2 | ||
3203 | |||
3204 | OpenBSD-Commit-ID: 0a1340ff65fad0d84b997ac58dd1b393dec7c19b | ||
3205 | |||
3206 | commit 72f0ce33f0d5a37f31bad5800d1eb2fbdb732de6 | ||
3207 | Author: Damien Miller <djm@mindrot.org> | ||
3208 | Date: Wed Feb 12 09:28:35 2020 +1100 | ||
3209 | |||
3210 | crank version numbers | ||
3211 | |||
3212 | commit b763ed05bd1f1f15ae1727c86a4498546bc36ca8 | ||
3213 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3214 | Date: Tue Feb 11 12:51:24 2020 +1100 | ||
3215 | |||
3216 | Minor documentation update: | ||
3217 | |||
3218 | - remove duplication of dependency information (it's all in INSTALL). | ||
3219 | - SSHFP is now an RFC. | ||
3220 | |||
3221 | commit 14ccfdb7248e33b1dc8bbac1425ace4598e094cb | ||
3222 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3223 | Date: Sun Feb 9 11:23:35 2020 +1100 | ||
3224 | |||
3225 | Check if UINT32_MAX is defined before redefining. | ||
3226 | |||
3227 | commit be075110c735a451fd9d79a864e01e2e0d9f19d2 | ||
3228 | Author: Damien Miller <djm@mindrot.org> | ||
3229 | Date: Fri Feb 7 15:07:27 2020 +1100 | ||
3230 | |||
3231 | typo; reported by Phil Pennock | ||
3232 | |||
3233 | commit 963d71851e727ffdd2a97fe0898fad61d4a70ba1 | ||
3234 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3235 | Date: Fri Feb 7 03:57:31 2020 +0000 | ||
3236 | |||
3237 | upstream: sync the description of the $SSH_SK_PROVIDER environment | ||
3238 | |||
3239 | variable with that of the SecurityKeyProvider ssh/sshd_config(5) directive, | ||
3240 | as the latter was more descriptive. | ||
3241 | |||
3242 | OpenBSD-Commit-ID: 0488f09530524a7e53afca6b6e1780598022552f | ||
3243 | |||
3244 | commit d4d9e1d40514e2746f9e05335d646512ea1020c6 | ||
3245 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3246 | Date: Fri Feb 7 03:54:44 2020 +0000 | ||
3247 | |||
3248 | upstream: Add ssh -Q key-sig for all key and signature types. | ||
3249 | |||
3250 | Teach ssh -Q to accept ssh_config(5) and sshd_config(5) algorithm keywords as | ||
3251 | an alias for the corresponding query. Man page help jmc@, ok djm@. | ||
3252 | |||
3253 | OpenBSD-Commit-ID: 1e110aee3db2fc4bc5bee2d893b7128fd622e0f8 | ||
3254 | |||
3255 | commit fd68dc27864b099b552a6d9d507ca4b83afd6a76 | ||
3256 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3257 | Date: Fri Feb 7 03:27:54 2020 +0000 | ||
3258 | |||
3259 | upstream: fix two PIN entry bugs on FIDO keygen: 1) it would allow more | ||
3260 | |||
3261 | than the intended number of prompts (3) and 2) it would SEGV too many | ||
3262 | incorrect PINs were entered; based on patch by Gabriel Kihlman | ||
3263 | |||
3264 | OpenBSD-Commit-ID: 9c0011f28ba8bd8adf2014424b64960333da1718 | ||
3265 | |||
3266 | commit 96bd895a0a0b3a36f81c14db8c91513578fc5563 | ||
3267 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3268 | Date: Thu Feb 6 22:48:23 2020 +0000 | ||
3269 | |||
3270 | upstream: When using HostkeyAlgorithms to merely append or remove | ||
3271 | |||
3272 | algorithms from the default set (i.e. HostkeyAlgorithms=+/-...), retain the | ||
3273 | default behaviour of preferring those algorithms that have existing keys in | ||
3274 | known_hosts; ok markus | ||
3275 | |||
3276 | OpenBSD-Commit-ID: 040e7fcc38ea00146b5d224ce31ce7a1795ee6ed | ||
3277 | |||
3278 | commit c7288486731734a864b58d024b1395029b55bbc5 | ||
3279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3280 | Date: Thu Feb 6 22:46:31 2020 +0000 | ||
3281 | |||
3282 | upstream: expand HostkeyAlgorithms prior to config dump, matching | ||
3283 | |||
3284 | other algorithm lists; ok markus@ | ||
3285 | |||
3286 | OpenBSD-Commit-ID: a66f0fca8cc5ce30405a2867bc115fff600671d0 | ||
3287 | |||
3288 | commit a6ac5d36efc072b15690c65039754f8e44247bdf | ||
3289 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
3290 | Date: Thu Feb 6 22:34:58 2020 +0000 | ||
3291 | |||
3292 | upstream: Add Include to the list of permitted keywords after a | ||
3293 | |||
3294 | Match keyword. ok markus@ | ||
3295 | |||
3296 | OpenBSD-Commit-ID: 342e940538b13dd41e0fa167dc9ab192b9f6e2eb | ||
3297 | |||
3298 | commit a47f6a6c0e06628eed0c2a08dc31a8923bcc37ba | ||
3299 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
3300 | Date: Thu Feb 6 22:30:54 2020 +0000 | ||
3301 | |||
3302 | upstream: Replace "security key" with "authenticator" in program | ||
3303 | |||
3304 | messages. | ||
3305 | |||
3306 | This replaces "security key" in error/usage/verbose messages and | ||
3307 | distinguishes between "authenticator" and "authenticator-hosted key". | ||
3308 | |||
3309 | ok djm@ | ||
3310 | |||
3311 | OpenBSD-Commit-ID: 7c63800e9c340c59440a054cde9790a78f18592e | ||
3312 | |||
3313 | commit 849a9b87144f8a5b1771de6c85e44bfeb86be9a9 | ||
3314 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3315 | Date: Thu Feb 6 11:28:14 2020 +1100 | ||
3316 | |||
3317 | Don't look for UINT32_MAX in inttypes.h | ||
3318 | |||
3319 | ... unless we are actually going to use it. Fixes build on HP-UX | ||
3320 | without the potential impact to other platforms of a header change | ||
3321 | shortly before release. | ||
3322 | |||
3323 | commit a2437f8ed0c3be54ddd21630a93c68ebd168286f | ||
3324 | Author: Damien Miller <djm@mindrot.org> | ||
3325 | Date: Thu Feb 6 12:02:22 2020 +1100 | ||
3326 | |||
3327 | depend | ||
3328 | |||
3329 | commit 9716e8c4956acdd7b223d1642bfa376e07e7503d | ||
3330 | Author: Michael Forney <mforney@mforney.org> | ||
3331 | Date: Wed Nov 27 19:17:26 2019 -0800 | ||
3332 | |||
3333 | Fix sha2 MAKE_CLONE no-op definition | ||
3334 | |||
3335 | The point of the dummy declaration is so that MAKE_CLONE(...) can have | ||
3336 | a trailing semicolon without introducing an empty declaration. So, | ||
3337 | the macro replacement text should *not* have a trailing semicolon, | ||
3338 | just like DEF_WEAK. | ||
3339 | |||
3340 | commit d596b1d30dc158915a3979fa409d21ff2465b6ee | ||
3341 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3342 | Date: Tue Feb 4 09:58:04 2020 +0000 | ||
3343 | |||
3344 | upstream: require FIDO application strings to start with "ssh:"; ok | ||
3345 | |||
3346 | markus@ | ||
3347 | |||
3348 | OpenBSD-Commit-ID: 94e9c1c066d42b76f035a3d58250a32b14000afb | ||
3349 | |||
3350 | commit 501f3582438cb2cb1cb92be0f17be490ae96fb23 | ||
3351 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3352 | Date: Mon Feb 3 23:47:57 2020 +0000 | ||
3353 | |||
3354 | upstream: revert enabling UpdateHostKeys by default - there are still | ||
3355 | |||
3356 | corner cases we need to address; ok markus | ||
3357 | |||
3358 | OpenBSD-Commit-ID: ff7ad941bfdc49fb1d8baa95fd0717a61adcad57 | ||
3359 | |||
3360 | commit 072f3b832d2a4db8d9880effcb6c4d0dad676504 | ||
3361 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
3362 | Date: Mon Feb 3 08:15:37 2020 +0000 | ||
3363 | |||
3364 | upstream: use better markup for challenge and write-attestation, and | ||
3365 | |||
3366 | rejig the challenge text a little; | ||
3367 | |||
3368 | ok djm | ||
3369 | |||
3370 | OpenBSD-Commit-ID: 9f351e6da9edfdc907d5c3fdaf2e9ff3ab0a7a6f | ||
3371 | |||
3372 | commit 262eb05a22cb1fabc3bc1746c220566490b80229 | ||
3373 | Author: Damien Miller <djm@mindrot.org> | ||
3374 | Date: Mon Feb 3 21:22:15 2020 +1100 | ||
3375 | |||
3376 | mention libfido2 in dependencies section | ||
3377 | |||
3378 | commit ccd3b247d59d3bde16c3bef0ea888213fbd6da86 | ||
3379 | Author: Damien Miller <djm@mindrot.org> | ||
3380 | Date: Mon Feb 3 19:40:12 2020 +1100 | ||
3381 | |||
3382 | add clock_gettime64(2) to sandbox allowed syscalls | ||
3383 | |||
3384 | bz3093 | ||
3385 | |||
3386 | commit adffbe1c645ad2887ba0b6d24c194aa7a40c5735 | ||
3387 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3388 | Date: Sun Feb 2 09:45:34 2020 +0000 | ||
3389 | |||
3390 | upstream: Output (none) in debug in the case in the CheckHostIP=no case | ||
3391 | |||
3392 | as suggested by markus@ | ||
3393 | |||
3394 | OpenBSD-Commit-ID: 4ab9117ee5261cbbd1868717fcc3142eea6385cf | ||
3395 | |||
3396 | commit 58c819096a2167983e55ae686486ce317b69b2d1 | ||
3397 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3398 | Date: Sun Feb 2 09:22:22 2020 +0000 | ||
3399 | |||
3400 | upstream: Prevent possible null pointer deref of ip_str in debug. | ||
3401 | |||
3402 | OpenBSD-Commit-ID: 37b252e2e6f690efed6682437ef75734dbc8addf | ||
3403 | |||
3404 | commit 0facae7bc8d3f8f9d02d0f6bed3d163ff7f39806 | ||
3405 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
3406 | Date: Sun Feb 2 07:36:50 2020 +0000 | ||
3407 | |||
3408 | upstream: shuffle the challenge keyword to keep the -O list sorted; | ||
3409 | |||
3410 | OpenBSD-Commit-ID: 08efad608b790949a9a048d65578fae9ed5845fe | ||
3411 | |||
3412 | commit 6fb3dd0ccda1c26b06223b87bcd1cab9ec8ec3cc | ||
3413 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
3414 | Date: Sat Feb 1 06:53:12 2020 +0000 | ||
3415 | |||
3416 | upstream: tweak previous; | ||
3417 | |||
3418 | OpenBSD-Commit-ID: 0c42851cdc88583402b4ab2b110a6348563626d3 | ||
3419 | |||
3420 | commit 92725d4d3fde675acc0ca040b48f3d0c7be73b7f | ||
3421 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3422 | Date: Sat Feb 1 17:25:09 2020 +1100 | ||
3423 | |||
3424 | Use sys-queue.h from compat library. | ||
3425 | |||
3426 | Fixes build on platforms that don't have sys/queue.h (eg MUSL). | ||
3427 | |||
3428 | commit 677d0ece67634262b3b96c3cd6410b19f3a603b7 | ||
3429 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3430 | Date: Fri Jan 31 23:25:08 2020 +0000 | ||
3431 | |||
3432 | upstream: regress test for sshd_config Include directive; from Jakub | ||
3433 | |||
3434 | Jelen | ||
3435 | |||
3436 | OpenBSD-Regress-ID: 0d9224de3297c7a5f51ba68d6e3725a2a9345fa4 | ||
3437 | |||
3438 | commit d4f4cdd681ab6408a98419f398b75a55497ed324 | ||
3439 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3440 | Date: Fri Jan 31 23:13:04 2020 +0000 | ||
3441 | |||
3442 | upstream: whitespace | ||
3443 | |||
3444 | OpenBSD-Commit-ID: 564cf7a5407ecf5da2d94ec15474e07427986772 | ||
3445 | |||
3446 | commit 245399dfb3ecebc6abfc2ef4ee2e650fa9f6942b | ||
3447 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3448 | Date: Fri Jan 31 23:11:25 2020 +0000 | ||
3449 | |||
3450 | upstream: force early logging to stderr if debug_flag (-d) is set; | ||
3451 | |||
3452 | avoids missing messages from re-exec config passing | ||
3453 | |||
3454 | OpenBSD-Commit-ID: 02484b8241c1f49010e7a543a7098e6910a8c9ff | ||
3455 | |||
3456 | commit 7365f28a66d1c443723fbe6f4a2612ea6002901e | ||
3457 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3458 | Date: Fri Jan 31 23:08:08 2020 +0000 | ||
3459 | |||
3460 | upstream: mistake in previous: filling the incorrect buffer | ||
3461 | |||
3462 | OpenBSD-Commit-ID: 862ee84bd4b97b529f64aec5d800c3dcde952e3a | ||
3463 | |||
3464 | commit c2bd7f74b0e0f3a3ee9d19ac549e6ba89013abaf | ||
3465 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3466 | Date: Fri Jan 31 22:42:45 2020 +0000 | ||
3467 | |||
3468 | upstream: Add a sshd_config "Include" directive to allow inclusion | ||
3469 | |||
3470 | of files. This has sensible semantics wrt Match blocks and accepts glob(3) | ||
3471 | patterns to specify the included files. Based on patch by Jakub Jelen in | ||
3472 | bz2468; feedback and ok markus@ | ||
3473 | |||
3474 | OpenBSD-Commit-ID: 36ed0e845b872e33f03355b936a4fff02d5794ff | ||
3475 | |||
3476 | commit ba261a1dd33266168ead4f8f40446dcece4d1600 | ||
3477 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
3478 | Date: Fri Jan 31 22:25:59 2020 +0000 | ||
3479 | |||
3480 | upstream: spelling fix; | ||
3481 | |||
3482 | OpenBSD-Commit-ID: 3c079523c4b161725a4b15dd06348186da912402 | ||
3483 | |||
3484 | commit 771891a044f763be0711493eca14b6b0082e030f | ||
3485 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3486 | Date: Thu Jan 30 22:25:34 2020 +0000 | ||
3487 | |||
3488 | upstream: document changed default for UpdateHostKeys | ||
3489 | |||
3490 | OpenBSD-Commit-ID: 25c390b21d142f78ac0106241d13441c4265fd2c | ||
3491 | |||
3492 | commit d53a518536c552672c00e8892e2aea28f664148c | ||
3493 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3494 | Date: Thu Jan 30 22:19:32 2020 +0000 | ||
3495 | |||
3496 | upstream: enable UpdateKnownHosts=yes if the configuration | ||
3497 | |||
3498 | specifies only the default known_hosts files, otherwise select | ||
3499 | UpdateKnownHosts=ask; ok markus@ | ||
3500 | |||
3501 | OpenBSD-Commit-ID: ab401a5ec4a33d2e1a9449eae6202e4b6d427df7 | ||
3502 | |||
3503 | commit bb63ff844e818d188da4fed3c016e0a4eecbbf25 | ||
3504 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3505 | Date: Thu Jan 30 18:54:42 2020 +1100 | ||
3506 | |||
3507 | Look in inttypes.h for UINT32_MAX. | ||
3508 | |||
3509 | Should prevent warnings on at least some AIX versions. | ||
3510 | |||
3511 | commit afeb6a960da23f0a5cbc4b80cca107c7504e932a | ||
3512 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3513 | Date: Thu Jan 30 07:21:38 2020 +0000 | ||
3514 | |||
3515 | upstream: use sshpkt_fatal() instead of plain fatal() for | ||
3516 | |||
3517 | ssh_packet_write_poll() failures here too as the former yields better error | ||
3518 | messages; ok dtucker@ | ||
3519 | |||
3520 | OpenBSD-Commit-ID: 1f7a6ca95bc2b716c2e948fc1370753be772d8e3 | ||
3521 | |||
3522 | commit 65d6fd0a8a6f31c3ddf0c1192429a176575cf701 | ||
3523 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3524 | Date: Thu Jan 30 07:20:57 2020 +0000 | ||
3525 | |||
3526 | upstream: check the return value of ssh_packet_write_poll() and | ||
3527 | |||
3528 | call sshpkt_fatal() if it fails; avoid potential busy-loop under some | ||
3529 | circumstances. Based on patch by Mike Frysinger; ok dtucker@ | ||
3530 | |||
3531 | OpenBSD-Commit-ID: c79fe5cf4f0cd8074cb6db257c1394d5139408ec | ||
3532 | |||
3533 | commit dce74eab0c0f9010dc84c62500a17771d0131ff3 | ||
3534 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3535 | Date: Thu Jan 30 07:20:05 2020 +0000 | ||
3536 | |||
3537 | upstream: have sshpkt_fatal() save/restore errno before we | ||
3538 | |||
3539 | potentially call strerror() (via ssh_err()); ok dtucker | ||
3540 | |||
3541 | OpenBSD-Commit-ID: 5590df31d21405498c848245b85c24acb84ad787 | ||
3542 | |||
3543 | commit 14ef4efe2bf4180e085ea6738fdbebc199458b0c | ||
3544 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3545 | Date: Wed Jan 29 08:17:49 2020 +0000 | ||
3546 | |||
3547 | upstream: markus suggests a simplification to previous | ||
3548 | |||
3549 | OpenBSD-Commit-ID: 10bbfb6607ebbb9a018dcd163f0964941adf58de | ||
3550 | |||
3551 | commit 101ebc3a8cfa78d2e615afffbef9861bbbabf1ff | ||
3552 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3553 | Date: Wed Jan 29 07:51:30 2020 +0000 | ||
3554 | |||
3555 | upstream: give more context to UpdateHostKeys messages, mentioning | ||
3556 | |||
3557 | that the changes are validated by the existing trusted host key. Prompted by | ||
3558 | espie@ feedback and ok markus@ | ||
3559 | |||
3560 | OpenBSD-Commit-ID: b3d95f4a45f2692f4143b9e77bb241184dbb8dc5 | ||
3561 | |||
3562 | commit 24c0f752adf9021277a7b0a84931bb5fe48ea379 | ||
3563 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3564 | Date: Tue Jan 28 08:01:34 2020 +0000 | ||
3565 | |||
3566 | upstream: changes to support FIDO attestation | ||
3567 | |||
3568 | Allow writing to disk the attestation certificate that is generated by | ||
3569 | the FIDO token at key enrollment time. These certificates may be used | ||
3570 | by an out-of-band workflow to prove that a particular key is held in | ||
3571 | trustworthy hardware. | ||
3572 | |||
3573 | Allow passing in a challenge that will be sent to the card during | ||
3574 | key enrollment. These are needed to build an attestation workflow | ||
3575 | that resists replay attacks. | ||
3576 | |||
3577 | ok markus@ | ||
3578 | |||
3579 | OpenBSD-Commit-ID: 457dc3c3d689ba39eed328f0817ed9b91a5f78f6 | ||
3580 | |||
3581 | commit 156bef36f93a48212383235bb8e3d71eaf2b2777 | ||
3582 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3583 | Date: Tue Jan 28 07:24:15 2020 +0000 | ||
3584 | |||
3585 | upstream: disable UpdateHostKeys=ask when in quiet mode; "work for | ||
3586 | |||
3587 | me" matthieu@ | ||
3588 | |||
3589 | OpenBSD-Commit-ID: 60d7b5eb91accf935ed9852650a826d86db2ddc7 | ||
3590 | |||
3591 | commit ec8a759b4045e54d6b38e690ffee4cbffc53c7b7 | ||
3592 | Author: Damien Miller <djm@mindrot.org> | ||
3593 | Date: Tue Jan 28 12:57:25 2020 +1100 | ||
3594 | |||
3595 | compat for missing IPTOS_DSCP_LE in system headers | ||
3596 | |||
3597 | commit 4594c7627680c4f41c2ad5fe412e55b7cc79b10c | ||
3598 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3599 | Date: Tue Jan 28 01:49:36 2020 +0000 | ||
3600 | |||
3601 | upstream: make IPTOS_DSCP_LE available via IPQoS directive; bz2986, | ||
3602 | |||
3603 | based on patch by veegish AT cyberstorm.mu | ||
3604 | |||
3605 | OpenBSD-Commit-ID: 9902bf4fbb4ea51de2193ac2b1d965bc5d99c425 | ||
3606 | |||
3607 | commit da22216b5db3613325aa7b639f40dc017e4c6f69 | ||
3608 | Author: markus@openbsd.org <markus@openbsd.org> | ||
3609 | Date: Mon Jan 27 20:51:32 2020 +0000 | ||
3610 | |||
3611 | upstream: disable UpdateHostKeys=ask if command is specified; ok | ||
3612 | |||
3613 | djm@ sthen@ | ||
3614 | |||
3615 | OpenBSD-Commit-ID: e5bcc45eadb78896637d4143d289f1e42c2ef5d7 | ||
3616 | |||
3617 | commit 1e1db0544fdd788e2e3fc21d972a7ccb7de6b4ae | ||
3618 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3619 | Date: Sun Jan 26 00:09:50 2020 +0000 | ||
3620 | |||
3621 | upstream: unbreak unittests for recent API / source file changes | ||
3622 | |||
3623 | OpenBSD-Regress-ID: 075a899a01bbf7781d38bf0b33d8366faaf6d3c0 | ||
3624 | |||
3625 | commit 0d1144769151edf65f74aee9a4c8545c37861695 | ||
3626 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3627 | Date: Sun Jan 26 15:09:15 2020 +1100 | ||
3628 | |||
3629 | Move definition of UINT32_MAX. | ||
3630 | |||
3631 | This allows us to always define it if needed not just if we also | ||
3632 | define the type ourself. | ||
3633 | |||
3634 | commit f73ab8a811bc874c2fb403012aa8e4bfdcaf5ec7 | ||
3635 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3636 | Date: Sun Jan 26 00:09:50 2020 +0000 | ||
3637 | |||
3638 | upstream: unbreak unittests for recent API / source file changes | ||
3639 | |||
3640 | OpenBSD-Regress-ID: 075a899a01bbf7781d38bf0b33d8366faaf6d3c0 | ||
3641 | |||
3642 | commit 0373f9eba2b63455dceedbd3ac3d5dca306789ff | ||
3643 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3644 | Date: Sun Jan 26 14:09:17 2020 +1100 | ||
3645 | |||
3646 | Include signal.h to prevent redefintion of _NSIG. | ||
3647 | |||
3648 | commit 638a45b5c1e20a8539100ca44166caad8abf26f8 | ||
3649 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3650 | Date: Sun Jan 26 13:40:51 2020 +1100 | ||
3651 | |||
3652 | Wrap stdint.h in tests inside HAVE_STDINT_H. | ||
3653 | |||
3654 | commit 74dfc2c859c906eaab1f88a27fd883115ffb928f | ||
3655 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3656 | Date: Sun Jan 26 00:14:45 2020 +0000 | ||
3657 | |||
3658 | upstream: for UpdateHostKeys, don't report errors for unsupported | ||
3659 | |||
3660 | key types - just ignore them. spotted by and ok dtucker@ | ||
3661 | |||
3662 | OpenBSD-Commit-ID: 91769e443f6197c983932fc8ae9d39948727d473 | ||
3663 | |||
3664 | commit b59618246c332e251160be0f1e0e88a7d4e2b0ae | ||
3665 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3666 | Date: Sun Jan 26 00:13:20 2020 +0000 | ||
3667 | |||
3668 | upstream: downgrade error() for missing subsequent known_hosts | ||
3669 | |||
3670 | files to debug() as it was intended to be; spotted by dtucker@ | ||
3671 | |||
3672 | OpenBSD-Commit-ID: 18cfea382cb52f2da761be524e309cc3d5354ef9 | ||
3673 | |||
3674 | commit 469df611f778eec5950d556aabfe1d4efc227915 | ||
3675 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3676 | Date: Sat Jan 25 23:33:27 2020 +0000 | ||
3677 | |||
3678 | upstream: clarify that BatchMode applies to all interactive prompts | ||
3679 | |||
3680 | (e.g. host key confirmation) and not just password prompts. | ||
3681 | |||
3682 | OpenBSD-Commit-ID: 97b001883d89d3fb1620d2e6b747c14a26aa9818 | ||
3683 | |||
3684 | commit de40876c4a5d7c519d3d7253557572fdfc13db76 | ||
3685 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3686 | Date: Sat Jan 25 23:28:06 2020 +0000 | ||
3687 | |||
3688 | upstream: tidy headers; some junk snuck into sshbuf-misc.c and | ||
3689 | |||
3690 | sshbuf-io.c doesn't need SSHBUF_INTERNAL set | ||
3691 | |||
3692 | OpenBSD-Commit-ID: 27a724d2e0b2619c1a1490f44093bbd73580d9e6 | ||
3693 | |||
3694 | commit 6a107606355fa9547884cad6740e6144a7a7955b | ||
3695 | Author: Damien Miller <djm@mindrot.org> | ||
3696 | Date: Sun Jan 26 10:28:21 2020 +1100 | ||
3697 | |||
3698 | depend | ||
3699 | |||
3700 | commit 59d01f1d720ebede4da42882f592d1093dac7adc | ||
3701 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3702 | Date: Sat Jan 25 23:13:09 2020 +0000 | ||
3703 | |||
3704 | upstream: improve the error message for u2f enrollment errors by | ||
3705 | |||
3706 | making ssh-keygen be solely responsible for printing the error message and | ||
3707 | convertint some more common error responses from the middleware to a useful | ||
3708 | ssherr.h status code. more detail remains visible via -v of course. | ||
3709 | |||
3710 | also remove indepedent copy of sk-api.h declarations in sk-usbhid.c | ||
3711 | and just include it. | ||
3712 | |||
3713 | feedback & ok markus@ | ||
3714 | |||
3715 | OpenBSD-Commit-ID: a4a8ffa870d9a3e0cfd76544bcdeef5c9fb1f1bb | ||
3716 | |||
3717 | commit 99aa8035554ddb976348d2a9253ab3653019728d | ||
3718 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3719 | Date: Sat Jan 25 23:02:13 2020 +0000 | ||
3720 | |||
3721 | upstream: factor out reading/writing sshbufs to dedicated | ||
3722 | |||
3723 | functions; feedback and ok markus@ | ||
3724 | |||
3725 | OpenBSD-Commit-ID: dc09e5f1950b7acc91b8fdf8015347782d2ecd3d | ||
3726 | |||
3727 | commit 065064fcf455778b0918f783033b374d4ba37a92 | ||
3728 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3729 | Date: Sat Jan 25 22:49:38 2020 +0000 | ||
3730 | |||
3731 | upstream: add a comment describing the ranges of channel IDs that | ||
3732 | |||
3733 | we use; requested by markus@ | ||
3734 | |||
3735 | OpenBSD-Commit-ID: 83a1f09810ffa3a96a55fbe32675b34ba739e56b | ||
3736 | |||
3737 | commit 69334996ae203c51c70bf01d414c918a44618f8e | ||
3738 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3739 | Date: Sat Jan 25 22:41:01 2020 +0000 | ||
3740 | |||
3741 | upstream: make sshd_config:ClientAliveCountMax=0 disable the | ||
3742 | |||
3743 | connection killing behaviour, rather than killing the connection after | ||
3744 | sending the first liveness test probe (regardless of whether the client was | ||
3745 | responsive) bz2627; ok markus | ||
3746 | |||
3747 | OpenBSD-Commit-ID: 5af79c35f4c9fa280643b6852f524bfcd9bccdaf | ||
3748 | |||
3749 | commit bf986a9e2792555e0879a3145fa18d2b49436c74 | ||
3750 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3751 | Date: Sat Jan 25 22:36:22 2020 +0000 | ||
3752 | |||
3753 | upstream: clarify order of AllowUsers/DenyUsers vs | ||
3754 | |||
3755 | AllowGroups/DenyGroups; bz1690, ok markus@ | ||
3756 | |||
3757 | OpenBSD-Commit-ID: 5637584ec30db9cf64822460f41b3e42c8f9facd | ||
3758 | |||
3759 | commit 022ce92fa0daa9d78830baeb2bd2dc3f83c724ba | ||
3760 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3761 | Date: Sat Jan 25 07:17:18 2020 +0000 | ||
3762 | |||
3763 | upstream: when AddKeysToAgent=yes is set and the key contains no | ||
3764 | |||
3765 | comment, add the key to the agent with the key's path as the comment. bz2564 | ||
3766 | |||
3767 | OpenBSD-Commit-ID: 8dd8ca9340d7017631a27f4ed5358a4cfddec16f | ||
3768 | |||
3769 | commit 0b813436bbf6546638b10c1fa71f54691bcf5e63 | ||
3770 | Author: tedu@openbsd.org <tedu@openbsd.org> | ||
3771 | Date: Sat Jan 25 07:09:14 2020 +0000 | ||
3772 | |||
3773 | upstream: group14-sha1 is no longer a default algorithm | ||
3774 | |||
3775 | OpenBSD-Commit-ID: a96f04d5e9c2ff760c6799579dc44f69b4ff431d | ||
3776 | |||
3777 | commit 3432b6e05d5c583c91c566c5708fed487cec79ac | ||
3778 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3779 | Date: Sat Jan 25 07:02:51 2020 +0000 | ||
3780 | |||
3781 | upstream: reword HashKnownHosts description a little more; some | ||
3782 | |||
3783 | people found the wording confusing (bz#2560) | ||
3784 | |||
3785 | OpenBSD-Commit-ID: ac30896598694f07d498828690aecd424c496988 | ||
3786 | |||
3787 | commit f80d7d6aa98d6eddc5df02412efee6db75673d4c | ||
3788 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3789 | Date: Sat Jan 25 07:01:00 2020 +0000 | ||
3790 | |||
3791 | upstream: weaken the language for what HashKnownHosts provides with | ||
3792 | |||
3793 | regards to known_hosts name privacy, it's not practical for this option to | ||
3794 | offer any guarantee that hostnames cannot be recovered from a disclosed | ||
3795 | known_hosts file (e.g. by brute force). | ||
3796 | |||
3797 | OpenBSD-Commit-ID: 13f1e3285f8acf7244e9770074296bcf446c6972 | ||
3798 | |||
3799 | commit 846446bf3e7421e6671a4afd074bdf15eecd7832 | ||
3800 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3801 | Date: Sat Jan 25 06:40:20 2020 +0000 | ||
3802 | |||
3803 | upstream: the GatewayPorts vs -R listen address selection logic is | ||
3804 | |||
3805 | still confusing people, so add another comment explaining the special | ||
3806 | handling of "localhost"; bz#3258 | ||
3807 | |||
3808 | OpenBSD-Commit-ID: e6bf0f0fbf1c7092bf0dbd9c6eab105970b5b53a | ||
3809 | |||
3810 | commit 734f2f83f5ff86f2967a99d67be9ce22dd0394dd | ||
3811 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3812 | Date: Sat Jan 25 06:03:10 2020 +0000 | ||
3813 | |||
3814 | upstream: mention that permitopen=/PermitOpen do no name to address | ||
3815 | |||
3816 | translation; prompted by bz3099 | ||
3817 | |||
3818 | OpenBSD-Commit-ID: 0dda8e54d566b29855e76bebf9cfecce573f5c23 | ||
3819 | |||
3820 | commit e1e97cae19ff07b7a7f7e82556bc048c3c54af63 | ||
3821 | Author: Damien Miller <djm@mindrot.org> | ||
3822 | Date: Sat Jan 25 16:30:22 2020 +1100 | ||
3823 | |||
3824 | include tunnel device path in error message | ||
3825 | |||
3826 | commit 0ecd20bc9f0b9c7c697c9eb014613516c8f65834 | ||
3827 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3828 | Date: Sat Jan 25 04:48:26 2020 +0000 | ||
3829 | |||
3830 | upstream: unrevert this: | ||
3831 | |||
3832 | > revision 1.217 | ||
3833 | > date: 2019/11/27 03:34:04; author: dtucker; state: Exp; lines: +5 -7; commitid: wkiMn49XJyjzoJIs; | ||
3834 | > Make channel_id u_int32_t and remove unnecessary check and cast that were | ||
3835 | > left over from the type conversion. Noted by t-hashida@amiya.co.jp in | ||
3836 | > bz#3098, ok markus@ djm@ | ||
3837 | |||
3838 | Darren was right the first time; ok dtucker@ "agreed" markus@ | ||
3839 | |||
3840 | OpenBSD-Commit-ID: 641dd1b99a6bbd85b7160da462ae1be83432c7c8 | ||
3841 | |||
3842 | commit a0c81d2402eedc514b9c9f25ef9604eb0576b86a | ||
3843 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3844 | Date: Sat Jan 25 02:57:53 2020 +0000 | ||
3845 | |||
3846 | upstream: Move setting $NC into test-exec since it's now used by | ||
3847 | |||
3848 | multiple tests, and in -portable we use our own local copy to avoid | ||
3849 | portability problems. | ||
3850 | |||
3851 | OpenBSD-Regress-ID: ceb78445fcaac317bec2fc51b3f0d9589048c114 | ||
3852 | |||
3853 | commit e16dfa94f86358033531c4a97dcb51508ef84d49 | ||
3854 | Author: Darren Tucker <dtucker@dtucker.net> | ||
3855 | Date: Sat Jan 25 13:05:42 2020 +1100 | ||
3856 | |||
3857 | Put EC key export inside OPENSSL_HAS_ECC. | ||
3858 | |||
3859 | Fixes link error when building against an OpenSSL that does not have | ||
3860 | ECC. | ||
3861 | |||
3862 | commit 94a2e5951b374e1a89761ceaff72e66eb1946807 | ||
3863 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3864 | Date: Sat Jan 25 00:27:56 2020 +0000 | ||
3865 | |||
3866 | upstream: Wait a bit longer for the multiplex master to become ready | ||
3867 | |||
3868 | since on very slow hosts the current delay is not sufficient and the test | ||
3869 | will fail. | ||
3870 | |||
3871 | OpenBSD-Regress-ID: 6d90c7475d67ac3a95610b64af700629ece51a48 | ||
3872 | |||
3873 | commit b2df804f571d77b07059f087b90955ffbc2f67d4 | ||
3874 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
3875 | Date: Fri Jan 24 10:08:17 2020 +0000 | ||
3876 | |||
3877 | upstream: Add a connection test for proxycommand. This would have | ||
3878 | |||
3879 | caught the problem caused by ssh.c rev 1.507 wherein Host and Hostname were | ||
3880 | swapped. Prompted by beck@ | ||
3881 | |||
3882 | OpenBSD-Regress-ID: d218500ae6aca4c479c27318fb5b09ebc00f7aae | ||
3883 | |||
3884 | commit c6f06fd38a257b9fcc7d6760f8fb6d505dccb628 | ||
3885 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3886 | Date: Sat Jan 25 00:22:31 2020 +0000 | ||
3887 | |||
3888 | upstream: set UpdateKnownHosts=ask by default; bz#2894; ok | ||
3889 | |||
3890 | markus@ | ||
3891 | |||
3892 | OpenBSD-Commit-ID: f09cb3177f3a14c96428e14f347e976a8a531fee | ||
3893 | |||
3894 | commit 7955633a554397bc24913cec9fd7285002935f7e | ||
3895 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3896 | Date: Sat Jan 25 00:21:08 2020 +0000 | ||
3897 | |||
3898 | upstream: allow UpdateKnownHosts=yes to function when multiple | ||
3899 | |||
3900 | known_hosts files are in use. When updating host keys, ssh will now search | ||
3901 | subsequent known_hosts files, but will add new/changed host keys to the first | ||
3902 | specified file only. bz#2738 | ||
3903 | |||
3904 | ok markus@ | ||
3905 | |||
3906 | OpenBSD-Commit-ID: 6ded6d878a03e57d5aa20bab9c31f92e929dbc6c | ||
3907 | |||
3908 | commit e5a278a62ab49dffe96929fa8d8506c6928dba90 | ||
3909 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3910 | Date: Sat Jan 25 00:06:48 2020 +0000 | ||
3911 | |||
3912 | upstream: process security key provider via realpath() in agent, | ||
3913 | |||
3914 | avoids malicious client from being able to cause agent to load arbitrary | ||
3915 | libraries into ssh-sk-helper. | ||
3916 | |||
3917 | reported by puck AT puckipedia.com; ok markus | ||
3918 | |||
3919 | OpenBSD-Commit-ID: 1086643df1b7eee4870825c687cf0c26a6145d1c | ||
3920 | |||
3921 | commit 89a8d4525e8edd9958ed3df60cf683551142eae0 | ||
3922 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3923 | Date: Sat Jan 25 00:03:36 2020 +0000 | ||
3924 | |||
3925 | upstream: expose PKCS#11 key labels/X.509 subjects as comments | ||
3926 | |||
3927 | Extract the key label or X.509 subject string when PKCS#11 keys | ||
3928 | are retrieved from the token and plumb this through to places where | ||
3929 | it may be used as a comment. | ||
3930 | |||
3931 | based on https://github.com/openssh/openssh-portable/pull/138 | ||
3932 | by Danielle Church | ||
3933 | |||
3934 | feedback and ok markus@ | ||
3935 | |||
3936 | OpenBSD-Commit-ID: cae1fda10d9e10971dea29520916e27cfec7ca35 | ||
3937 | |||
3938 | commit a8c05c640873621681ab64d2e47a314592d5efa2 | ||
3939 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3940 | Date: Fri Jan 24 23:56:01 2020 +0000 | ||
3941 | |||
3942 | upstream: tweak proctitle to include sshd arguments, as these are | ||
3943 | |||
3944 | frequently used to distinguish between multiple independent instances of the | ||
3945 | server. New proctitle looks like this: | ||
3946 | |||
3947 | $ pgrep -lf sshd | ||
3948 | 12844 sshd: /usr/sbin/sshd -f /etc/ssh/sshd_config [listener] 0 of 10-100 startups | ||
3949 | |||
3950 | requested by sthen@ and aja@; ok aja@ | ||
3951 | |||
3952 | OpenBSD-Commit-ID: cf235a561c655a3524a82003cf7244ecb48ccc1e | ||
3953 | |||
3954 | commit 8075fccbd4f70a4371acabcfb47562471ff0de6f | ||
3955 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3956 | Date: Fri Jan 24 23:54:40 2020 +0000 | ||
3957 | |||
3958 | upstream: add xextendf() to extend a string with a format | ||
3959 | |||
3960 | (reallocating as necessary). ok aja@ as part of a larger diff | ||
3961 | |||
3962 | OpenBSD-Commit-ID: 30796b50d330b3e0e201747fe40cdf9aa70a77f9 | ||
3963 | |||
3964 | commit d15c8adf2c6f1a6b4845131074383eb9c3d05c3d | ||
3965 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3966 | Date: Fri Jan 24 05:33:01 2020 +0000 | ||
3967 | |||
3968 | upstream: minor tweaks to ssh-keygen -Y find-principals: | ||
3969 | |||
3970 | emit matched principals one per line to stdout rather than as comma- | ||
3971 | separated and with a free-text preamble (easy confusion opportunity) | ||
3972 | |||
3973 | emit "not found" error to stderr | ||
3974 | |||
3975 | fix up argument testing for -Y operations and improve error message for | ||
3976 | unsupported operations | ||
3977 | |||
3978 | OpenBSD-Commit-ID: 3d9c9a671ab07fc04a48f543edfa85eae77da69c | ||
3979 | |||
3980 | commit c3368a5d5ec368ef6bdf9971d6330ca0e3bdca06 | ||
3981 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3982 | Date: Fri Jan 24 00:28:57 2020 +0000 | ||
3983 | |||
3984 | upstream: remove ssh-rsa (SHA1) from the list of allowed CA | ||
3985 | |||
3986 | signature algorithms ok markus | ||
3987 | |||
3988 | OpenBSD-Commit-ID: da3481fca8c81e6951f319a86b7be67502237f57 | ||
3989 | |||
3990 | commit 4a41d245d6b13bd3882c8dc058dbd2e2b39a9f67 | ||
3991 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3992 | Date: Fri Jan 24 00:27:04 2020 +0000 | ||
3993 | |||
3994 | upstream: when signing a certificate with an RSA key, default to | ||
3995 | |||
3996 | a safe signature algorithm (rsa-sha-512) if not is explicitly specified by | ||
3997 | the user; ok markus@ | ||
3998 | |||
3999 | OpenBSD-Commit-ID: e05f638f0be6c0266e1d3d799716b461011e83a9 | ||
4000 | |||
4001 | commit 8dfb6a202c96cdf037c8ce05e53e32e0e0b7b454 | ||
4002 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4003 | Date: Fri Jan 24 00:00:31 2020 +0000 | ||
4004 | |||
4005 | upstream: allow PEM export of DSA and ECDSA keys; bz3091, patch | ||
4006 | |||
4007 | from Jakub Jelen ok markus@ | ||
4008 | |||
4009 | OpenBSD-Commit-ID: a58edec8b9f07acab4b962a71a5125830d321b51 | ||
4010 | |||
4011 | commit 72a8bea2d748c8bd7f076a8b39a52082c79ae95f | ||
4012 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4013 | Date: Thu Jan 23 23:31:52 2020 +0000 | ||
4014 | |||
4015 | upstream: ssh-keygen -Y find-principals fixes based on feedback | ||
4016 | |||
4017 | from Markus: | ||
4018 | |||
4019 | use "principals" instead of principal, as allowed_signers lines may list | ||
4020 | multiple. | ||
4021 | |||
4022 | When the signing key is a certificate, emit only principals that match | ||
4023 | the certificate principal list. | ||
4024 | |||
4025 | NB. the command -Y name changes: "find-principal" => "find-principals" | ||
4026 | |||
4027 | ok markus@ | ||
4028 | |||
4029 | OpenBSD-Commit-ID: ab575946ff9a55624cd4e811bfd338bf3b1d0faf | ||
4030 | |||
4031 | commit 0585b5697201f5d8b32e6f1b0fee7e188268d30d | ||
4032 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4033 | Date: Fri Jan 24 01:29:23 2020 +0000 | ||
4034 | |||
4035 | upstream: Do not warn about permissions on symlinks. | ||
4036 | |||
4037 | OpenBSD-Regress-ID: 339d4cbae224bd8743ffad9c3afb0cf3cb66c357 | ||
4038 | |||
4039 | commit 415192348a5737a960f6d1b292a17b64d55b542c | ||
4040 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4041 | Date: Thu Jan 23 11:19:12 2020 +0000 | ||
4042 | |||
4043 | upstream: Handle zlib compression being disabled now that it's | ||
4044 | |||
4045 | optional. | ||
4046 | |||
4047 | OpenBSD-Regress-ID: 0af4fbc5168e62f89d0350de524bff1cb00e707a | ||
4048 | |||
4049 | commit fbce7c1a898ae75286349822950682cf46346121 | ||
4050 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4051 | Date: Thu Jan 23 10:53:04 2020 +0000 | ||
4052 | |||
4053 | upstream: Fix typo in comment. | ||
4054 | |||
4055 | OpenBSD-Commit-ID: d1d7a6553208bf439378fd1cf686a828aceb353a | ||
4056 | |||
4057 | commit ba247af8e9e302910e22881ef9d307a8afeef036 | ||
4058 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4059 | Date: Thu Jan 23 10:19:59 2020 +0000 | ||
4060 | |||
4061 | upstream: When checking for unsafe directories, ignore non-directories | ||
4062 | |||
4063 | (ie symlinks, where permissions are not relevant). | ||
4064 | |||
4065 | OpenBSD-Regress-ID: fb6cfc8b022becb62b2dcb99ed3f072b3326e501 | ||
4066 | |||
4067 | commit 74deb7029be4c00810443114aac9308875a81dae | ||
4068 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4069 | Date: Thu Jan 23 22:17:24 2020 +1100 | ||
4070 | |||
4071 | zlib is now optional. | ||
4072 | |||
4073 | commit 633a2af47ee90291aaf93969aeee1e5046074c7c | ||
4074 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4075 | Date: Thu Jan 23 22:16:51 2020 +1100 | ||
4076 | |||
4077 | Plumb WITH_ZLIB into configure. | ||
4078 | |||
4079 | This allows zlib support to be disabled by ./configure --without-zlib. | ||
4080 | |||
4081 | commit 7f8e66fea8c4e2a910df9067cb7638999b7764d5 | ||
4082 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4083 | Date: Thu Jan 23 10:24:29 2020 +0000 | ||
4084 | |||
4085 | upstream: Make zlib optional. This adds a "ZLIB" build time option | ||
4086 | |||
4087 | that allows building without zlib compression and associated options. With | ||
4088 | feedback from markus@, ok djm@ | ||
4089 | |||
4090 | OpenBSD-Commit-ID: 44c6e1133a90fd15a3aa865bdedc53bab28b7910 | ||
4091 | |||
4092 | commit 69ac4e33023b379e9a8e9b4b6aeeffa6d1fcf6fa | ||
4093 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4094 | Date: Thu Jan 23 07:54:04 2020 +0000 | ||
4095 | |||
4096 | upstream: remove trailing period characters from pub/priv key | ||
4097 | |||
4098 | pathnames - they make them needlessly more difficult to cut and paste without | ||
4099 | error; ok markus@ & dtucker@ | ||
4100 | |||
4101 | OpenBSD-Commit-ID: abdcfd1a5723fcac0711feee7665edc66ae2335a | ||
4102 | |||
4103 | commit 945bf52c3c815d95b1e842ebf6c910c3524bd5bb | ||
4104 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4105 | Date: Thu Jan 23 21:06:45 2020 +1100 | ||
4106 | |||
4107 | Fix a couple of mysig_t leftovers. | ||
4108 | |||
4109 | commit 84226b447d45fe4542613de68c2ca59a890d7c01 | ||
4110 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4111 | Date: Thu Jan 23 18:55:24 2020 +1100 | ||
4112 | |||
4113 | Remove mysignal wrapper. | ||
4114 | |||
4115 | We switched the main code to use sigaction(), so the wrapper is no | ||
4116 | longer used. | ||
4117 | |||
4118 | commit 5533c2fb7ef21172fa3708d66b03faa2c6b3d93f | ||
4119 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4120 | Date: Thu Jan 23 07:16:38 2020 +0000 | ||
4121 | |||
4122 | upstream: new sentence, new line; | ||
4123 | |||
4124 | OpenBSD-Commit-ID: b6c3f2f36ec77e99198619b38a9f146655281925 | ||
4125 | |||
4126 | commit 3bf2a6ac791d64046a537335a0f1d5e43579c5ad | ||
4127 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4128 | Date: Thu Jan 23 07:10:22 2020 +0000 | ||
4129 | |||
4130 | upstream: Replace all calls to signal(2) with a wrapper around | ||
4131 | |||
4132 | sigaction(2). This wrapper blocks all other signals during the handler | ||
4133 | preventing races between handlers, and sets SA_RESTART which should reduce | ||
4134 | the potential for short read/write operations. | ||
4135 | |||
4136 | OpenBSD-Commit-ID: 5e047663fd77a40d7b07bdabe68529df51fd2519 | ||
4137 | |||
4138 | commit e027c044c796f3a01081a91bee55741204283f28 | ||
4139 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4140 | Date: Thu Jan 23 04:54:34 2020 +0000 | ||
4141 | |||
4142 | upstream: missing header change from previous; spotted by dtucker@ | ||
4143 | |||
4144 | OpenBSD-Commit-ID: 321ce74c0a5bbd0f02fa3f20cb5cf2a952c6b96f | ||
4145 | |||
4146 | commit 7e1323102b1b04eef391b01e180710a2d408a7ab | ||
4147 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4148 | Date: Thu Jan 23 03:42:41 2020 +0000 | ||
4149 | |||
4150 | upstream: Check for and warn about StrictModes permission problems. ok tb@ | ||
4151 | |||
4152 | OpenBSD-Regress-ID: 4841704ccdee50ee7efc6035bc686695c6ac2991 | ||
4153 | |||
4154 | commit 84de1c27f845d15c859db44e7070a46f45504b66 | ||
4155 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4156 | Date: Thu Jan 23 03:35:07 2020 +0000 | ||
4157 | |||
4158 | upstream: Also test PuTTY chacha20. | ||
4159 | |||
4160 | OpenBSD-Regress-ID: 7af6a0e8763b05f1f8eee6bca5f31fcb16151040 | ||
4161 | |||
4162 | commit c7ed15a39695ecd5f1f21842d8d9cd22246d4ee2 | ||
4163 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4164 | Date: Thu Jan 23 03:24:38 2020 +0000 | ||
4165 | |||
4166 | upstream: Also test PuTTY ecdh kex methods. | ||
4167 | |||
4168 | OpenBSD-Regress-ID: ec4017dce612131842398a03e93007a869c2c133 | ||
4169 | |||
4170 | commit c4b3a128954ee1b7fbcbda167baf8aca1a3d1c84 | ||
4171 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4172 | Date: Thu Jan 23 02:46:49 2020 +0000 | ||
4173 | |||
4174 | upstream: Remove unsupported algorithms from list of defaults at run | ||
4175 | |||
4176 | time and remove ifdef and distinct settings for OPENSSL=no case. | ||
4177 | |||
4178 | This will make things much simpler for -portable where the exact set | ||
4179 | of algos depends on the configuration of both OpenSSH and the libcrypto | ||
4180 | it's linked against (if any). ok djm@ | ||
4181 | |||
4182 | OpenBSD-Commit-ID: e0116d0183dcafc7a9c40ba5fe9127805c5dfdd2 | ||
4183 | |||
4184 | commit 56cffcc09f8a2e661d2ba02e61364ae6f998b2b1 | ||
4185 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4186 | Date: Thu Jan 23 02:43:48 2020 +0000 | ||
4187 | |||
4188 | upstream: add a new signature operations "find-principal" to look | ||
4189 | |||
4190 | up the principal associated with a signature from an allowed-signers file. | ||
4191 | Work by Sebastian Kinne; ok dtucker@ | ||
4192 | |||
4193 | OpenBSD-Commit-ID: 6f782cc7e18e38fcfafa62af53246a1dcfe74e5d | ||
4194 | |||
4195 | commit 65cf8730de6876a56595eef296e07a86c52534a6 | ||
4196 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4197 | Date: Wed Jan 22 07:38:30 2020 +0000 | ||
4198 | |||
4199 | upstream: Ignore whitespace when checking explict fingerprint. | ||
4200 | |||
4201 | When confirming a host key using the fingerprint itself, ignore leading and | ||
4202 | trailing whitespace. ok deraadt@ djm@ | ||
4203 | |||
4204 | OpenBSD-Commit-ID: cafd7f803bbdcd40c3a8f8f1a77747e6b6d8c011 | ||
4205 | |||
4206 | commit 8d3af6ebdf524b34087a0a3ae415b5141ba10572 | ||
4207 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4208 | Date: Wed Jan 22 07:31:27 2020 +0000 | ||
4209 | |||
4210 | upstream: Increase keyscan timeout from default. On slow hosts 3 | ||
4211 | |||
4212 | concurrent keyscans can hit the default 5 second timeout, so increase to 15 | ||
4213 | seconds. | ||
4214 | |||
4215 | OpenBSD-Regress-ID: 16383dec166af369b7fb9948572856f5d544c93f | ||
4216 | |||
4217 | commit 6c30c9adbeeed09a8a9e7a69974cfa1f1ddd1e9e | ||
4218 | Author: tedu@openbsd.org <tedu@openbsd.org> | ||
4219 | Date: Wed Jan 22 04:58:23 2020 +0000 | ||
4220 | |||
4221 | upstream: remove diffie-hellman-group14-sha1 from default kex to | ||
4222 | |||
4223 | see what happens. general mostly ok | ||
4224 | |||
4225 | OpenBSD-Commit-ID: 216b7b8462d2ef5f4531f26cb2cb839b2153dad9 | ||
4226 | |||
4227 | commit 4a32c0ca44a2dc2a358f69b5d43c08e528b44b39 | ||
4228 | Author: claudio@openbsd.org <claudio@openbsd.org> | ||
4229 | Date: Wed Jan 22 04:51:51 2020 +0000 | ||
4230 | |||
4231 | upstream: For ssh-keygen -lF only add a space after key fingerprint | ||
4232 | |||
4233 | when there is a comment. This makes copy-paste of fingerprints into ssh | ||
4234 | easier. OK djm@ | ||
4235 | |||
4236 | OpenBSD-Commit-ID: fa01d95624f65c1eb4dc7c575d20d77c78010dfd | ||
4237 | |||
4238 | commit 37d3b736506760e4ebc7fe56255f7b8ea823a00c | ||
4239 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4240 | Date: Wed Jan 22 04:49:16 2020 +0000 | ||
4241 | |||
4242 | upstream: some __func__ and strerror(errno) here; no functional | ||
4243 | |||
4244 | change | ||
4245 | |||
4246 | OpenBSD-Commit-ID: 6c3ddd5f848b99ea560b31d3fba99ceed66cef37 | ||
4247 | |||
4248 | commit e2031b05c74c98b141179ceab13a323cf17d01e5 | ||
4249 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4250 | Date: Wed Jan 22 02:25:21 2020 +0000 | ||
4251 | |||
4252 | upstream: factor out parsing of allowed-signers lines | ||
4253 | |||
4254 | OpenBSD-Commit-ID: 85ee6aeff608371826019ea85e55bfa87f79d06e | ||
4255 | |||
4256 | commit 47160e1de8c2f638f0ef41cef42c976417b61778 | ||
4257 | Author: Damien Miller <djm@mindrot.org> | ||
4258 | Date: Wed Jan 22 10:30:13 2020 +1100 | ||
4259 | |||
4260 | unbreak fuzzer support for recent ssh-sk.h changes | ||
4261 | |||
4262 | commit 70d38c3cfd4550e8ee66cc3bf1b91aa339c91df5 | ||
4263 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4264 | Date: Tue Jan 21 22:39:57 2020 +0000 | ||
4265 | |||
4266 | upstream: expose the number of currently-authenticating connections | ||
4267 | |||
4268 | along with the MaxStartups limit in the proctitle; suggestion from Philipp | ||
4269 | Marek, w/ feedback from Craig Miskell ok dtucker@ | ||
4270 | |||
4271 | OpenBSD-Commit-ID: a4a6db2dc1641a5df8eddf7d6652176e359dffb3 | ||
4272 | |||
4273 | commit a78c66d5d2144bd49779bc80a647346bd3d7233d | ||
4274 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4275 | Date: Tue Jan 21 12:40:04 2020 +0000 | ||
4276 | |||
4277 | upstream: document the default value of the ControlPersist option; | ||
4278 | |||
4279 | ok dtucker@ djm@ | ||
4280 | |||
4281 | OpenBSD-Commit-ID: 0788e7f2b5a9d4e36d3d2ab378f73329320fef66 | ||
4282 | |||
4283 | commit b46a6325849e40aa2e4b0d962a6f00f708f6576a | ||
4284 | Author: Damien Miller <djm@mindrot.org> | ||
4285 | Date: Wed Jan 22 09:28:32 2020 +1100 | ||
4286 | |||
4287 | remove accidental change in f8c11461 | ||
4288 | |||
4289 | commit 80d3bebcab96fe1d177e45906e10db16895da01d | ||
4290 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4291 | Date: Tue Jan 21 11:06:09 2020 +0000 | ||
4292 | |||
4293 | upstream: don't #ifdef out the KRL code when compiling without | ||
4294 | |||
4295 | libcrypto support; it works just fine and disabling it breaks a few tests. ok | ||
4296 | dtucker@ | ||
4297 | |||
4298 | OpenBSD-Commit-ID: 65f6272c4241eb4b04de78b012fe98b2b555ad44 | ||
4299 | |||
4300 | commit f8c11461aa6db168fc5e7eeae448b4cbbf59642a | ||
4301 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4302 | Date: Tue Jan 21 08:06:27 2020 +0000 | ||
4303 | |||
4304 | upstream: pass SSH_SK_HELPER explicitly past $SUDO to avoid it getting | ||
4305 | |||
4306 | cleared; with dtucker@ | ||
4307 | |||
4308 | OpenBSD-Regress-ID: 03178a0580324bf0dff28f7eac6c3edbc5407f8e | ||
4309 | |||
4310 | commit b5fcb0ac1cc0ef01aeec1c089146298654ab3ae0 | ||
4311 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4312 | Date: Tue Jan 21 07:07:31 2020 +0000 | ||
4313 | |||
4314 | upstream: check access(ssh-sk-helper, X_OK) to provide friendly | ||
4315 | |||
4316 | error message for misconfigured helper paths | ||
4317 | |||
4318 | OpenBSD-Commit-ID: 061bcc262155d12e726305c91394ac0aaf1f8341 | ||
4319 | |||
4320 | commit 56bced43c14dc6fa2bfa1816007e441644105609 | ||
4321 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4322 | Date: Tue Jan 21 06:09:56 2020 +0000 | ||
4323 | |||
4324 | upstream: Document sntrup4591761x25519-sha512@tinyssh.org. Patch | ||
4325 | |||
4326 | from jtesta@positronsecurity.com via github PR#151. | ||
4327 | |||
4328 | OpenBSD-Commit-ID: f3d48168623045c258245c340a5a2af7dbb74edc | ||
4329 | |||
4330 | commit 4a05d789b86314fef7303824f69defbc6b96ed60 | ||
4331 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4332 | Date: Tue Jan 21 05:56:56 2020 +0000 | ||
4333 | |||
4334 | upstream: fix ssh-keygen not displaying authenticator touch | ||
4335 | |||
4336 | prompt; reported by jmc@ | ||
4337 | |||
4338 | OpenBSD-Commit-ID: 04d4f582fc194eb3897ebcbfe286c49958ba2859 | ||
4339 | |||
4340 | commit 881aded0389d999375f926051491a944c6d8752b | ||
4341 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4342 | Date: Tue Jan 21 05:56:27 2020 +0000 | ||
4343 | |||
4344 | upstream: a little more verbosity in sign_and_send_pubkey() debug | ||
4345 | |||
4346 | messages | ||
4347 | |||
4348 | OpenBSD-Commit-ID: 6da47a0e6373f6683006f49bc2a516d197655508 | ||
4349 | |||
4350 | commit b715fdc71bbd009d0caff691ab3fc04903c4aee8 | ||
4351 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4352 | Date: Sat Jan 18 21:16:43 2020 +0000 | ||
4353 | |||
4354 | upstream: one more replacement "(security) key" -> "(FIDO) | ||
4355 | |||
4356 | authenticator" | ||
4357 | |||
4358 | OpenBSD-Commit-ID: 031bca03c1d1f878ab929facd561911f1bc68dfd | ||
4359 | |||
4360 | commit 84911da1beeb6ed258a43468efb316cd39fb6855 | ||
4361 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4362 | Date: Sat Jan 18 15:45:41 2020 +0000 | ||
4363 | |||
4364 | upstream: undo merge error and replace the term "security key" | ||
4365 | |||
4366 | again | ||
4367 | |||
4368 | OpenBSD-Commit-ID: 341749062c089cc360a7877e9ee3a887aecde395 | ||
4369 | |||
4370 | commit e8c06c4ee708720efec12cd1a6f78a3c6d76b7f0 | ||
4371 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4372 | Date: Fri Jan 17 20:13:47 2020 +0000 | ||
4373 | |||
4374 | upstream: Document loading of resident keys from a FIDO | ||
4375 | |||
4376 | authenticator. | ||
4377 | |||
4378 | * Rename -O to -K to keep "-O option" available. | ||
4379 | * Document -K. | ||
4380 | * Trim usage() message down to synopsis, like all other commands. | ||
4381 | |||
4382 | ok markus@ | ||
4383 | |||
4384 | OpenBSD-Commit-ID: 015c2c4b28f8e19107adc80351b44b23bca4c78a | ||
4385 | |||
4386 | commit 0d005d6372a067b59123dec8fc6dc905f2c09e1e | ||
4387 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4388 | Date: Tue Jan 14 15:07:30 2020 +0000 | ||
4389 | |||
4390 | upstream: sync ssh-keygen.1 and ssh-keygen's usage() with each | ||
4391 | |||
4392 | other and reality ok markus@ | ||
4393 | |||
4394 | OpenBSD-Commit-ID: cdf64454f2c3604c25977c944e5b6262a3bcce92 | ||
4395 | |||
4396 | commit b8a4ca2ebfddab862f7eb1ea2a07fb9f70330429 | ||
4397 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4398 | Date: Sat Jan 11 16:23:10 2020 +0000 | ||
4399 | |||
4400 | upstream: revise the fix for reversed arguments on | ||
4401 | |||
4402 | expand_proxy_command() | ||
4403 | |||
4404 | Always put 'host' before 'host_arg' for consistency. ok markus@ djm@ | ||
4405 | |||
4406 | OpenBSD-Commit-ID: 1ba5b25472779f1b1957295fcc6907bb961472a3 | ||
4407 | |||
4408 | commit 57b181eaf2d34fd0a1b51ab30cb6983df784de5a | ||
4409 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4410 | Date: Fri Jan 10 23:43:26 2020 +0000 | ||
4411 | |||
4412 | upstream: pass the log-on-stderr flag and log level through to | ||
4413 | |||
4414 | ssh-sk-helper, making debugging a bit easier. ok markus@ | ||
4415 | |||
4416 | OpenBSD-Commit-ID: 2e7aea6bf5770d3f38b7c7bba891069256c5a49a | ||
4417 | |||
4418 | commit a8bd5fdbdb7581afc7123a042a7cd6ca25357388 | ||
4419 | Author: Damien Miller <djm@mindrot.org> | ||
4420 | Date: Tue Jan 21 12:32:16 2020 +1100 | ||
4421 | |||
4422 | Wrap copy_environment_blacklist() in #ifdef | ||
4423 | |||
4424 | It's only needed for USE_PAM or HAVE_CYGWIN cases and will cause compiler | ||
4425 | warnings otherwise. | ||
4426 | |||
4427 | commit 10ecc647fc1db8d2dde9f6b9b826b201dfc48b62 | ||
4428 | Author: Damien Miller <djm@mindrot.org> | ||
4429 | Date: Tue Jan 21 12:20:05 2020 +1100 | ||
4430 | |||
4431 | depend | ||
4432 | |||
4433 | commit b3f7009c9ffa5891283ed96e043001e09934a8d4 | ||
4434 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4435 | Date: Mon Jan 20 11:56:48 2020 +0100 | ||
4436 | |||
4437 | Fix missing prototype warning for copy_environment | ||
4438 | |||
4439 | This function is only used in this file, and only on Cygwin, so make | ||
4440 | it static and hide it behind HAVE_CYGWIN. Prevents missing prototype | ||
4441 | warning. | ||
4442 | |||
4443 | commit 0c428c0e991e2c4fabc48cf5d9b8f84c9412e0c3 | ||
4444 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4445 | Date: Mon Jan 20 13:58:11 2020 +0100 | ||
4446 | |||
4447 | configure.ac: fix ldns test | ||
4448 | |||
4449 | When running ./configure --with-ldns, if ldns-config cannot be found, we | ||
4450 | add -Iyes/include to CPPFLAGS and -Lyes/lib to LDFLAGS. Fix that. | ||
4451 | |||
4452 | commit 6089abf715e2784751c9f62697e09bb103295b93 | ||
4453 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4454 | Date: Mon Jan 20 12:13:26 2020 +0100 | ||
4455 | |||
4456 | Make sshpam_password_change_required static. | ||
4457 | |||
4458 | sshpam_password_change_required is only used in auth-pam.c, so make it | ||
4459 | static to prevent a mising prototype warning. | ||
4460 | |||
4461 | commit 5a9b9c82851b7bc219dc3a65962a80803c76c102 | ||
4462 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4463 | Date: Mon Jan 20 12:24:51 2020 +0100 | ||
4464 | |||
4465 | sandbox-darwin.c: fix missing prototypes. | ||
4466 | |||
4467 | Include the right header just like the other sandbox files. | ||
4468 | Fixes missing prototype warnings for ssh_sandbox_* functions. | ||
4469 | |||
4470 | commit 335dc93526942a650f6c69666b3f6ca44d0a2910 | ||
4471 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4472 | Date: Mon Jan 20 11:09:27 2020 +0100 | ||
4473 | |||
4474 | Fix a few warnings when on Mac OS X. | ||
4475 | |||
4476 | Include stdlib.h for calloc, malloc, free and setenv. | ||
4477 | |||
4478 | commit 0488dc2d3050ea1a99ef5cf44afc50ffbf3f1315 | ||
4479 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4480 | Date: Mon Jan 20 10:32:23 2020 +0100 | ||
4481 | |||
4482 | Fix building without openssl. | ||
4483 | |||
4484 | This fixes the following when there are no openssl headers on the system: | ||
4485 | ssh-ecdsa-sk.c:34:10: fatal error: 'openssl/bn.h' file not found | ||
4486 | |||
4487 | commit e6b7157b4ef29c83ec3a2d1d7c927e4b8898f9bb | ||
4488 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4489 | Date: Wed Jan 15 16:08:55 2020 +0100 | ||
4490 | |||
4491 | Add config.log to .gitignore | ||
4492 | |||
4493 | commit 515e10ddf9644010b88cfd7ecf601f4306d42232 | ||
4494 | Author: Ruben Kerkhof <ruben@rubenkerkhof.com> | ||
4495 | Date: Wed Jan 15 16:16:31 2020 +0100 | ||
4496 | |||
4497 | Fix typo in README.md, s/crytpo/crypto/ | ||
4498 | |||
4499 | commit 1af3354aea3c4bfa5b5ecfb5d1ff3ad231c2073c | ||
4500 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4501 | Date: Wed Jan 15 16:22:36 2020 +1100 | ||
4502 | |||
4503 | Wrap stdint.h in ifdef HAVE_STDINT_H. | ||
4504 | |||
4505 | commit 429170f273ce1b0140f8111a45ba69390d98de3a | ||
4506 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4507 | Date: Tue Jan 14 14:41:47 2020 +1100 | ||
4508 | |||
4509 | Wrap stdint.h inside HAVE_STDINT_H. | ||
4510 | |||
4511 | commit a0989b60211b6f1c2313e1397c526d883a23a075 | ||
4512 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4513 | Date: Tue Jan 14 14:26:41 2020 +1100 | ||
4514 | |||
4515 | Include compat header for definitions. | ||
4516 | |||
4517 | commit e0cedcad51fe02683943bf4f1ad2961aa3f35313 | ||
4518 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4519 | Date: Tue Jan 14 09:42:52 2020 +1100 | ||
4520 | |||
4521 | Improve search for 'struct timespec'. | ||
4522 | |||
4523 | Make struct timespec test consistent with existing timeval test. | ||
4524 | Include time.h for timespec in compat header where required. | ||
4525 | |||
4526 | commit acaf9e058594310001ce64468ed2923dc6323e81 | ||
4527 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4528 | Date: Tue Jan 14 12:43:03 2020 +1100 | ||
4529 | |||
4530 | Update depend to remove rmd160.h. | ||
4531 | |||
4532 | commit 26b2675b0c3e3efea11a52609073aec01736ec84 | ||
4533 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4534 | Date: Tue Jan 14 07:24:46 2020 +1100 | ||
4535 | |||
4536 | Remove configure test & compat code for ripemd160. | ||
4537 | |||
4538 | RIPEMD160 support was removed upstream in 2017, however we still had | ||
4539 | a configure test and compat code for it, so clean those up now. | ||
4540 | |||
4541 | commit ed3ad71b17adcd1fb4431d145f53cee1c6a1135e | ||
4542 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4543 | Date: Thu Jan 9 03:28:38 2020 +0000 | ||
4544 | |||
4545 | upstream: fix reversed arguments on expand_proxy_command(); spotted | ||
4546 | |||
4547 | by anton@ | ||
4548 | |||
4549 | OpenBSD-Commit-ID: db1c32478a01dfbc9c4db171de0f25907bea5775 | ||
4550 | |||
4551 | commit cd53476383f0cf475f40ba8ac8deb6b76dd5ce4e | ||
4552 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4553 | Date: Mon Jan 6 07:43:28 2020 +0000 | ||
4554 | |||
4555 | upstream: put the fido options in a list, and tidy up the text a | ||
4556 | |||
4557 | little; ok djm | ||
4558 | |||
4559 | OpenBSD-Commit-ID: 491ce15ae52a88b7a6a2b3b6708a14b4aacdeebb | ||
4560 | |||
4561 | commit 30f704ebc0e9e32b3d12f5d9e8c1b705fdde2c89 | ||
4562 | Author: Jeremy Drake <github@jdrake.com> | ||
4563 | Date: Fri Oct 11 18:31:05 2019 -0700 | ||
4564 | |||
4565 | Deny (non-fatal) ipc in preauth privsep child. | ||
4566 | |||
4567 | As noted in openssh/openssh-portable#149, i386 does not have have | ||
4568 | _NR_shmget etc. Instead, it has a single ipc syscall (see man 2 ipc, | ||
4569 | https://linux.die.net/man/2/ipc). Add this syscall, if present, to the | ||
4570 | list of syscalls that seccomp will deny non-fatally. | ||
4571 | |||
4572 | commit b110cefdfbf5a20f49b774a55062d6ded2fb6e22 | ||
4573 | Author: Khem Raj <raj.khem@gmail.com> | ||
4574 | Date: Tue Jan 7 16:26:45 2020 -0800 | ||
4575 | |||
4576 | seccomp: Allow clock_gettime64() in sandbox. | ||
4577 | |||
4578 | This helps sshd accept connections on mips platforms with | ||
4579 | upcoming glibc ( 2.31 ) | ||
4580 | |||
4581 | commit 3cc60c899a92a469e5118310ba6b74cb57215618 | ||
4582 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4583 | Date: Mon Jan 6 02:39:30 2020 +0000 | ||
4584 | |||
4585 | upstream: missing else in check_enroll_options() | ||
4586 | |||
4587 | OpenBSD-Commit-ID: e058fb918fda56ddbbf0bee910101004cec421d4 | ||
4588 | |||
4589 | commit ff5784e2698d6c41e9f39ce4df24968c1beeb2bb | ||
4590 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4591 | Date: Mon Jan 6 02:24:28 2020 +0000 | ||
4592 | |||
4593 | upstream: fix error message | ||
4594 | |||
4595 | OpenBSD-Commit-ID: 1eb52025658eb78ea6223181e552862198d3d505 | ||
4596 | |||
4597 | commit dd2acc8b862c09751621995fba2d5fa6f4e24cc9 | ||
4598 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4599 | Date: Mon Jan 6 02:07:50 2020 +0000 | ||
4600 | |||
4601 | upstream: adapt sk-dummy to SK API changes | ||
4602 | |||
4603 | also, make it pull prototypes directly from sk-api.c and #error | ||
4604 | if the expected version changes. This will make any future regress | ||
4605 | test breakage because of SK API changes much more apparent | ||
4606 | |||
4607 | OpenBSD-Regress-ID: 79b07055de4feb988e31da71a89051ad5969829d | ||
4608 | |||
4609 | commit c312ca077cd2a6c15545cd6b4d34ee2f69289174 | ||
4610 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4611 | Date: Mon Jan 6 02:00:46 2020 +0000 | ||
4612 | |||
4613 | upstream: Extends the SK API to accept a set of key/value options | ||
4614 | |||
4615 | for all operations. These are intended to future-proof the API a little by | ||
4616 | making it easier to specify additional fields for without having to change | ||
4617 | the API version for each. | ||
4618 | |||
4619 | At present, only two options are defined: one to explicitly specify | ||
4620 | the device for an operation (rather than accepting the middleware's | ||
4621 | autoselection) and another to specify the FIDO2 username that may | ||
4622 | be used when generating a resident key. These new options may be | ||
4623 | invoked at key generation time via ssh-keygen -O | ||
4624 | |||
4625 | This also implements a suggestion from Markus to avoid "int" in favour | ||
4626 | of uint32_t for the algorithm argument in the API, to make implementation | ||
4627 | of ssh-sk-client/helper a little easier. | ||
4628 | |||
4629 | feedback, fixes and ok markus@ | ||
4630 | |||
4631 | OpenBSD-Commit-ID: 973ce11704609022ab36abbdeb6bc23c8001eabc | ||
4632 | |||
4633 | commit 2ab335712d084d9ccaf3f53afc3fa9535329da87 | ||
4634 | Author: beck@openbsd.org <beck@openbsd.org> | ||
4635 | Date: Sun Jan 5 16:28:22 2020 +0000 | ||
4636 | |||
4637 | upstream: fix CanonicalizeHostname, broken by rev 1.507 | ||
4638 | |||
4639 | Issue noticed and reported by Pierre-Olivier Martel <pom@apple.com> | ||
4640 | ok dtucker@ markus@ djm@ | ||
4641 | |||
4642 | OpenBSD-Commit-ID: 749f3168ec520609c35b0c4e1984e5fa47f16094 | ||
4643 | |||
4644 | commit 69e44ba701b90b0f530d64c3fe4363ea86e50cd3 | ||
4645 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4646 | Date: Mon Jan 6 09:02:53 2020 +1100 | ||
4647 | |||
4648 | Fix typo: 'you' -> 'your'. | ||
4649 | |||
4650 | bz#3108 from jmckitrick@gmail.com. | ||
4651 | |||
4652 | commit 7652a57662969bd5c61448b3843ec6d407ad12be | ||
4653 | Author: Darren Tucker <dtucker@dtucker.net> | ||
4654 | Date: Mon Jan 6 08:56:46 2020 +1100 | ||
4655 | |||
4656 | Remove auth-skey.c. | ||
4657 | |||
4658 | S/Key support was removed in OpenSSH 7.8 but this file was missed. | ||
4659 | |||
4660 | commit c593cc5e826c9f4ec506e22b629d37cabfaacff9 | ||
4661 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4662 | Date: Fri Jan 3 07:33:33 2020 +0000 | ||
4663 | |||
4664 | upstream: the download resident keys option is -K (upper) not -k | ||
4665 | |||
4666 | (lower); ok djm | ||
4667 | |||
4668 | OpenBSD-Commit-ID: 71dc28a3e1fa7c553844abc508845bcf5766e091 | ||
4669 | |||
4670 | commit ff31f15773ee173502eec4d7861ec56f26bba381 | ||
4671 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4672 | Date: Fri Jan 3 03:02:26 2020 +0000 | ||
4673 | |||
4674 | upstream: what bozo decided to use 2020 as a future date in a regress | ||
4675 | |||
4676 | test? | ||
4677 | |||
4678 | OpenBSD-Regress-ID: 3b953df5a7e14081ff6cf495d4e8d40e153cbc3a | ||
4679 | |||
4680 | commit 680eb7749a39d0e4d046e66cac4e51e8e3640b75 | ||
4681 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4682 | Date: Fri Jan 3 02:46:19 2020 +0000 | ||
4683 | |||
4684 | upstream: implement recent SK API change to support resident keys | ||
4685 | |||
4686 | and PIN prompting in the dummy middleware that we use for the tests. Should | ||
4687 | fix breakage spotted by dtucker@ | ||
4688 | |||
4689 | OpenBSD-Regress-ID: 379cf9eabfea57aaf7f3f59dafde59889566c484 | ||
4690 | |||
4691 | commit 86834fe6b54ac57b8528c30cf0b27e5cac5b7af7 | ||
4692 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4693 | Date: Thu Jan 2 13:25:38 2020 +0000 | ||
4694 | |||
4695 | upstream: Update keygen moduli screen test to match recent command | ||
4696 | |||
4697 | line option change to ssh-keygen(1). | ||
4698 | |||
4699 | OpenBSD-Regress-ID: 744a72755004377e9669b662c13c6aa9ead8a0c3 | ||
4700 | |||
4701 | commit 9039971887cccd95b209c479296f772a3a93e8e7 | ||
4702 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4703 | Date: Thu Jan 2 22:40:09 2020 +0000 | ||
4704 | |||
4705 | upstream: ability to download FIDO2 resident keys from a token via | ||
4706 | |||
4707 | "ssh-keygen -K". This will save public/private keys into the current | ||
4708 | directory. | ||
4709 | |||
4710 | This is handy if you move a token between hosts. | ||
4711 | |||
4712 | feedback & ok markus@ | ||
4713 | |||
4714 | OpenBSD-Commit-ID: d57c1f9802f7850f00a117a1d36682a6c6d10da6 | ||
4715 | |||
4716 | commit 878ba4350d57e905d6bb1865d8ff31bdfe5deab4 | ||
4717 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4718 | Date: Thu Jan 2 22:38:33 2020 +0000 | ||
4719 | |||
4720 | upstream: add sshkey_save_public(), to save a public key; ok | ||
4721 | |||
4722 | markus@ | ||
4723 | |||
4724 | OpenBSD-Commit-ID: 5d6f96a966d10d7fa689ff9aa9e1d6767ad5a076 | ||
4725 | |||
4726 | commit 3b1382ffd5e71eff78db8cef0f3cada22ff29409 | ||
4727 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4728 | Date: Mon Dec 30 16:10:00 2019 +0000 | ||
4729 | |||
4730 | upstream: simplify the list for moduli options - no need for | ||
4731 | |||
4732 | -compact; | ||
4733 | |||
4734 | OpenBSD-Commit-ID: 6492c72280482c6d072be46236b365cb359fc280 | ||
4735 | |||
4736 | commit 0248ec7c763dee9ff730a589e3d166eac5c74d7c | ||
4737 | Author: Damien Miller <djm@mindrot.org> | ||
4738 | Date: Thu Jan 2 13:41:31 2020 +1100 | ||
4739 | |||
4740 | ssh-sk-null.cc needs extern "C" {} | ||
4741 | |||
4742 | commit 5ca4b414effe4b56f0cfe3058c92391aa8a43871 | ||
4743 | Author: Damien Miller <djm@mindrot.org> | ||
4744 | Date: Thu Jan 2 10:56:29 2020 +1100 | ||
4745 | |||
4746 | add dummy ssh-sk API for linking with fuzzers | ||
4747 | |||
4748 | commit c4b2664be7ba25e4c233315b25212dec29b727ab | ||
4749 | Author: Damien Miller <djm@mindrot.org> | ||
4750 | Date: Mon Dec 30 21:04:09 2019 +1100 | ||
4751 | |||
4752 | refresh depend | ||
4753 | |||
4754 | commit 3093d12ff80927cf45da08d9f262a26680fb14ee | ||
4755 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4756 | Date: Mon Dec 30 09:49:52 2019 +0000 | ||
4757 | |||
4758 | upstream: Remove the -x option currently used for | ||
4759 | |||
4760 | FIDO/U2F-specific key flags. Instead these flags may be specified via -O. | ||
4761 | |||
4762 | ok markus@ | ||
4763 | |||
4764 | OpenBSD-Commit-ID: f23ebde2a8a7e1bf860a51055a711cffb8c328c1 | ||
4765 | |||
4766 | commit ef65e7dbaa8fac3245aa2bfc9f7e09be7cba0d9d | ||
4767 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4768 | Date: Mon Dec 30 09:25:29 2019 +0000 | ||
4769 | |||
4770 | upstream: document SK API changes in PROTOCOL.u2f | ||
4771 | |||
4772 | ok markus@ | ||
4773 | |||
4774 | OpenBSD-Commit-ID: 52622363c103a3c4d3d546050480ffe978a32186 | ||
4775 | |||
4776 | commit 43ce96427b76c4918e39af654e2fc9ee18d5d478 | ||
4777 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4778 | Date: Mon Dec 30 09:24:45 2019 +0000 | ||
4779 | |||
4780 | upstream: translate and return error codes; retry on bad PIN | ||
4781 | |||
4782 | Define some well-known error codes in the SK API and pass | ||
4783 | them back via ssh-sk-helper. | ||
4784 | |||
4785 | Use the new "wrong PIN" error code to retry PIN prompting during | ||
4786 | ssh-keygen of resident keys. | ||
4787 | |||
4788 | feedback and ok markus@ | ||
4789 | |||
4790 | OpenBSD-Commit-ID: 9663c6a2bb7a0bc8deaccc6c30d9a2983b481620 | ||
4791 | |||
4792 | commit d433596736a2cd4818f538be11fc94783f5c5236 | ||
4793 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4794 | Date: Mon Dec 30 09:24:03 2019 +0000 | ||
4795 | |||
4796 | upstream: improve some error messages; ok markus@ | ||
4797 | |||
4798 | OpenBSD-Commit-ID: 4ccd8ddabb8df4f995107dd3b7ea58220e93cb81 | ||
4799 | |||
4800 | commit c54cd1892c3e7f268b21e1f07ada9f0d9816ffc0 | ||
4801 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4802 | Date: Mon Dec 30 09:23:28 2019 +0000 | ||
4803 | |||
4804 | upstream: SK API and sk-helper error/PIN passing | ||
4805 | |||
4806 | Allow passing a PIN via the SK API (API major crank) and let the | ||
4807 | ssh-sk-helper API follow. | ||
4808 | |||
4809 | Also enhance the ssh-sk-helper API to support passing back an error | ||
4810 | code instead of a complete reply. Will be used to signal "wrong PIN", | ||
4811 | etc. | ||
4812 | |||
4813 | feedback and ok markus@ | ||
4814 | |||
4815 | OpenBSD-Commit-ID: a1bd6b0a2421646919a0c139b8183ad76d28fb71 | ||
4816 | |||
4817 | commit 79fe22d9bc2868c5118f032ec1200ac9c2e3aaef | ||
4818 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4819 | Date: Mon Dec 30 09:22:49 2019 +0000 | ||
4820 | |||
4821 | upstream: implement loading resident keys in ssh-add | ||
4822 | |||
4823 | "ssh-add -O" will load resident keys from a FIDO2 token and add them | ||
4824 | to a ssh-agent. | ||
4825 | |||
4826 | feedback and ok markus@ | ||
4827 | |||
4828 | OpenBSD-Commit-ID: 608104ae957a7d65cb84e0a3a26c8f60e0df3290 | ||
4829 | |||
4830 | commit 27753a8e21887d47fe6b5c78a4aed0efe558a850 | ||
4831 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4832 | Date: Mon Dec 30 09:21:59 2019 +0000 | ||
4833 | |||
4834 | upstream: implement loading of resident keys in ssh-sk-helper | ||
4835 | |||
4836 | feedback and ok markus@ | ||
4837 | |||
4838 | OpenBSD-Commit-ID: b273c23769ea182c55c4a7b8f9cbd9181722011a | ||
4839 | |||
4840 | commit 14cea36df397677b8f8568204300ef654114fd76 | ||
4841 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4842 | Date: Mon Dec 30 09:21:16 2019 +0000 | ||
4843 | |||
4844 | upstream: resident keys support in SK API | ||
4845 | |||
4846 | Adds a sk_load_resident_keys() function to the security key | ||
4847 | API that accepts a security key provider and a PIN and returns | ||
4848 | a list of keys. | ||
4849 | |||
4850 | Implement support for this in the usbhid middleware. | ||
4851 | |||
4852 | feedback and ok markus@ | ||
4853 | |||
4854 | OpenBSD-Commit-ID: 67e984e4e87f4999ce447a6178c4249a9174eff0 | ||
4855 | |||
4856 | commit 2fe05fcb4a2695f190b4fcf27770b655586ab349 | ||
4857 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4858 | Date: Mon Dec 30 09:20:36 2019 +0000 | ||
4859 | |||
4860 | upstream: Factor out parsing of struct sk_enroll_response | ||
4861 | |||
4862 | We'll reuse this for extracting resident keys from a device. | ||
4863 | |||
4864 | feedback and ok markus@ | ||
4865 | |||
4866 | OpenBSD-Commit-ID: 9bc1efd9c6897eac4df0983746cf6578c1542273 | ||
4867 | |||
4868 | commit 4532bd01d57ee13c3ca881eceac1bf9da96a4d7e | ||
4869 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4870 | Date: Mon Dec 30 09:19:52 2019 +0000 | ||
4871 | |||
4872 | upstream: basic support for generating FIDO2 resident keys | ||
4873 | |||
4874 | "ssh-keygen -t ecdsa-sk|ed25519-sk -x resident" will generate a | ||
4875 | device-resident key. | ||
4876 | |||
4877 | feedback and ok markus@ | ||
4878 | |||
4879 | OpenBSD-Commit-ID: 8e1b3c56a4b11d85047bd6c6c705b7eef4d58431 | ||
4880 | |||
4881 | commit 3e60d18fba1b502c21d64fc7e81d80bcd08a2092 | ||
4882 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4883 | Date: Mon Dec 30 03:30:09 2019 +0000 | ||
4884 | |||
4885 | upstream: remove single-letter flags for moduli options | ||
4886 | |||
4887 | Move all moduli generation options to live under the -O flag. | ||
4888 | |||
4889 | Frees up seven single-letter flags. | ||
4890 | |||
4891 | NB. this change break existing ssh-keygen commandline syntax for moduli- | ||
4892 | related operations. Very few people use these fortunately. | ||
4893 | |||
4894 | feedback and ok markus@ | ||
4895 | |||
4896 | OpenBSD-Commit-ID: d498f3eaf28128484826a4fcb343612764927935 | ||
4897 | |||
4898 | commit 1e645fe767f27725dc7fd7864526de34683f7daf | ||
4899 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4900 | Date: Mon Dec 30 03:28:41 2019 +0000 | ||
4901 | |||
4902 | upstream: prepare for use of ssh-keygen -O flag beyond certs | ||
4903 | |||
4904 | Move list of available certificate options in ssh-keygen.1 to the | ||
4905 | CERTIFICATES section. | ||
4906 | |||
4907 | Collect options specified by -O but delay parsing/validation of | ||
4908 | certificate options until we're sure that we're acting as a CA. | ||
4909 | |||
4910 | ok markus@ | ||
4911 | |||
4912 | OpenBSD-Commit-ID: 33e6bcc29cfca43606f6fa09bd84b955ee3a4106 | ||
4913 | |||
4914 | commit 20ccd854245c598e2b47cc9f8d4955d645195055 | ||
4915 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4916 | Date: Fri Dec 27 08:28:44 2019 +0000 | ||
4917 | |||
4918 | upstream: sort -Y internally in the options list, as is already | ||
4919 | |||
4920 | done in synopsis; | ||
4921 | |||
4922 | OpenBSD-Commit-ID: 86d033c5764404057616690d7be992e445b42274 | ||
4923 | |||
4924 | commit 5b6c954751dd3677466cda7adb92e4f05446c96c | ||
4925 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
4926 | Date: Fri Dec 27 08:25:07 2019 +0000 | ||
4927 | |||
4928 | upstream: in the options list, sort -Y and -y; | ||
4929 | |||
4930 | OpenBSD-Commit-ID: 24c2e6a3aeab6e050a0271ffc73fdff91c10dcaa | ||
4931 | |||
4932 | commit 141df487ba699cfd1ec3dcd98186e7c956e99024 | ||
4933 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4934 | Date: Sat Dec 21 20:22:34 2019 +0000 | ||
4935 | |||
4936 | upstream: Replace the term "security key" with "(FIDO) | ||
4937 | |||
4938 | authenticator". | ||
4939 | |||
4940 | The polysemous use of "key" was too confusing. Input from markus@. | ||
4941 | ok jmc@ | ||
4942 | |||
4943 | OpenBSD-Commit-ID: 12eea973a44c8232af89f86e4269d71ae900ca8f | ||
4944 | |||
4945 | commit fbd9729d4eadf2f7097b6017156387ac64302453 | ||
4946 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4947 | Date: Sat Dec 21 02:33:07 2019 +0000 | ||
4948 | |||
4949 | upstream: unit tests for ForwardAgent=/path; from Eric Chiang | ||
4950 | |||
4951 | OpenBSD-Regress-ID: 24f693f78290b2c17725dab2c614dffe4a88c8da | ||
4952 | |||
4953 | commit e5b7cf8edca7e843adc125621e1dab14507f430a | ||
4954 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4955 | Date: Mon Dec 16 02:39:05 2019 +0000 | ||
4956 | |||
4957 | upstream: test security key host keys in addition to user keys | ||
4958 | |||
4959 | OpenBSD-Regress-ID: 9fb45326106669a27e4bf150575c321806e275b1 | ||
4960 | |||
4961 | commit 40be78f503277bd91c958fa25ea9ef918a2ffd3d | ||
4962 | Author: djm@openbsd.org <djm@openbsd.org> | ||
4963 | Date: Sat Dec 21 02:19:13 2019 +0000 | ||
4964 | |||
4965 | upstream: Allow forwarding a different agent socket to the path | ||
4966 | |||
4967 | specified by $SSH_AUTH_SOCK, by extending the existing ForwardAgent option to | ||
4968 | accepting an explicit path or the name of an environment variable in addition | ||
4969 | to yes/no. | ||
4970 | |||
4971 | Patch by Eric Chiang, manpage by me; ok markus@ | ||
4972 | |||
4973 | OpenBSD-Commit-ID: 98f2ed80bf34ea54d8b2ddd19ac14ebbf40e9265 | ||
4974 | |||
4975 | commit 416f15372bfb5be1709a0ad1d00ef5d8ebfb9e0e | ||
4976 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
4977 | Date: Fri Dec 20 20:28:55 2019 +0000 | ||
4978 | |||
4979 | upstream: SSH U2F keys can now be used as host keys. Fix a garden | ||
4980 | |||
4981 | path sentence. ok markus@ | ||
4982 | |||
4983 | OpenBSD-Commit-ID: 67d7971ca1a020acd6c151426c54bd29d784bd6b | ||
4984 | |||
4985 | commit 68010acbcfe36167b3eece3115f3a502535f80df | ||
4986 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4987 | Date: Fri Dec 20 02:42:42 2019 +0000 | ||
4988 | |||
4989 | upstream: Move always unsupported keywords to be grouped with the other | ||
4990 | |||
4991 | ones. Move oSecurityProvider to match the order in the OpCodes enum. Patch | ||
4992 | from openbsd@academicsolutions.ch, ok djm@ | ||
4993 | |||
4994 | OpenBSD-Commit-ID: 061e4505861ec1e02ba3a63e3d1b3be3cad458ec | ||
4995 | |||
4996 | commit 8784b02dc49e1c98df4e7aca466be2f652ed4ad1 | ||
4997 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
4998 | Date: Fri Dec 20 02:29:21 2019 +0000 | ||
4999 | |||
5000 | upstream: Remove obsolete opcodes from the configuation enum. | ||
5001 | |||
5002 | Patch from openbsd@academicsolutions.ch, ok djm@ | ||
5003 | |||
5004 | OpenBSD-Commit-ID: 395c202228872ce8d9044cc08552ac969f51e01b | ||
5005 | |||
5006 | commit 345be6091bdc9be09c90a937d1320f97c01fab2a | ||
5007 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5008 | Date: Fri Dec 20 02:11:38 2019 +0000 | ||
5009 | |||
5010 | upstream: Remove now-obsolete config options from example in | ||
5011 | |||
5012 | comment. Patch from openbsd@academicsolutions.ch, ok djm@ | ||
5013 | |||
5014 | OpenBSD-Commit-ID: 35862beb0927b1cb0af476ec23cc07f6e3006101 | ||
5015 | |||
5016 | commit ae024b22c4fd68e7f39681d605585889f9511108 | ||
5017 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5018 | Date: Thu Dec 19 15:09:30 2019 +0000 | ||
5019 | |||
5020 | upstream: Document that security key-hosted keys can act as host | ||
5021 | |||
5022 | keys. | ||
5023 | |||
5024 | Update the list of default host key algorithms in ssh_config.5 and | ||
5025 | sshd_config.5. Copy the description of the SecurityKeyProvider | ||
5026 | option to sshd_config.5. | ||
5027 | |||
5028 | ok jmc@ | ||
5029 | |||
5030 | OpenBSD-Commit-ID: edadf3566ab5e94582df4377fee3b8b702c7eca0 | ||
5031 | |||
5032 | commit bc2dc091e0ac4ff6245c43a61ebe12c7e9ea0b7f | ||
5033 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5034 | Date: Thu Dec 19 03:50:01 2019 +0000 | ||
5035 | |||
5036 | upstream: "Forward security" -> "Forward secrecy" since that's the | ||
5037 | |||
5038 | correct term. Add "MAC" since we use that acronym in other man pages. ok | ||
5039 | naddy@ | ||
5040 | |||
5041 | OpenBSD-Commit-ID: c35529e511788586725fb63bda3459e10738c5f5 | ||
5042 | |||
5043 | commit e905f7260d72bc0e33ef5f10a0db737ff6e77ba7 | ||
5044 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5045 | Date: Tue Dec 17 16:21:07 2019 +0000 | ||
5046 | |||
5047 | upstream: cut obsolete lists of crypto algorithms from outline of | ||
5048 | |||
5049 | how SSH works ok markus@ jmc@ | ||
5050 | |||
5051 | OpenBSD-Commit-ID: 8e34973f232ab48c4d4f5d07df48d501708b9160 | ||
5052 | |||
5053 | commit f65cf1163ff01531ae02f3f9210391d0d692f699 | ||
5054 | Author: tobhe@openbsd.org <tobhe@openbsd.org> | ||
5055 | Date: Mon Dec 16 13:58:53 2019 +0000 | ||
5056 | |||
5057 | upstream: strdup may return NULL if memory allocation fails. Use | ||
5058 | |||
5059 | the safer xstrdup which fatals on allocation failures. | ||
5060 | |||
5061 | ok markus@ | ||
5062 | |||
5063 | OpenBSD-Commit-ID: 8b608d387120630753cbcb8110e0b019c0c9a0d0 | ||
5064 | |||
5065 | commit 57634bfc5708477826c0be265ddc59b9d83e4886 | ||
5066 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5067 | Date: Mon Dec 16 03:16:58 2019 +0000 | ||
5068 | |||
5069 | upstream: sort sk-* methods behind their plain key methods cousins | ||
5070 | |||
5071 | for now | ||
5072 | |||
5073 | OpenBSD-Commit-ID: c97e22c2b28c0d12ee389b8b4ef5f2ada7908828 | ||
5074 | |||
5075 | commit b8df8fe920e697edcc69c520390b78c3b7ad9d84 | ||
5076 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5077 | Date: Tue Dec 17 19:46:15 2019 +1100 | ||
5078 | |||
5079 | Mac OS X has PAM too. | ||
5080 | |||
5081 | commit bf8de8b8251af69b5ce96a8faa69145af156af4d | ||
5082 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5083 | Date: Tue Dec 17 19:37:06 2019 +1100 | ||
5084 | |||
5085 | Show portable tarball pattern in example. | ||
5086 | |||
5087 | commit a19ef613e98141cc37c8acdeebe285b9dbe2531e | ||
5088 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5089 | Date: Tue Dec 17 19:35:59 2019 +1100 | ||
5090 | |||
5091 | OpenSSL is now optional. | ||
5092 | |||
5093 | commit 1a7217ac063e48cf0082895aeee81ed2b8a57191 | ||
5094 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5095 | Date: Sun Dec 15 18:58:33 2019 +0000 | ||
5096 | |||
5097 | upstream: adapt to ssh-sk-client change | ||
5098 | |||
5099 | OpenBSD-Regress-ID: 40481999a5928d635ab2e5b029e8239c112005ea | ||
5100 | |||
5101 | commit a7fc1df246e80bfdabd09b069b91c72f9c578ca8 | ||
5102 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5103 | Date: Wed Dec 11 18:47:14 2019 +0000 | ||
5104 | |||
5105 | upstream: it's no longer possible to disable privilege separation | ||
5106 | |||
5107 | in sshd, so don't double the tests' work by trying both off/on | ||
5108 | |||
5109 | OpenBSD-Regress-ID: d366665466dbd09e9b707305da884be3e7619c68 | ||
5110 | |||
5111 | commit 3145d38ea06820a66c0f5e068f49af14fd2b7ac1 | ||
5112 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5113 | Date: Sun Dec 15 20:59:23 2019 +0000 | ||
5114 | |||
5115 | upstream: don't treat HostKeyAgent=none as a path either; avoids | ||
5116 | |||
5117 | spurious warnings from the cfgparse regress test | ||
5118 | |||
5119 | OpenBSD-Commit-ID: ba49ea7a5c92b8a16cb9c2e975dbb163853afc54 | ||
5120 | |||
5121 | commit 747e25192f436e71dd39e15d65aa32bca967533a | ||
5122 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5123 | Date: Sun Dec 15 20:57:15 2019 +0000 | ||
5124 | |||
5125 | upstream: do not attempt to find an absolute path for sshd_config | ||
5126 | |||
5127 | SecurityKeyProvider=internal - unbreaks cfgparse regress test | ||
5128 | |||
5129 | OpenBSD-Commit-ID: d2ddcf525c0dc3c8339522360c10b3c70f1fd641 | ||
5130 | |||
5131 | commit 9b6e30b96b094ad787511a5b989253e3b8fe1789 | ||
5132 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5133 | Date: Sun Dec 15 19:47:10 2019 +0000 | ||
5134 | |||
5135 | upstream: allow ssh-keyscan to find security key hostkeys | ||
5136 | |||
5137 | OpenBSD-Commit-ID: 1fe822a7f714df19a7e7184e3a3bbfbf546811d3 | ||
5138 | |||
5139 | commit 56584cce75f3d20aaa30befc7cbd331d922927f3 | ||
5140 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5141 | Date: Sun Dec 15 18:57:30 2019 +0000 | ||
5142 | |||
5143 | upstream: allow security keys to act as host keys as well as user | ||
5144 | |||
5145 | keys. | ||
5146 | |||
5147 | Previously we didn't do this because we didn't want to expose | ||
5148 | the attack surface presented by USB and FIDO protocol handling, | ||
5149 | but now that this is insulated behind ssh-sk-helper there is | ||
5150 | less risk. | ||
5151 | |||
5152 | ok markus@ | ||
5153 | |||
5154 | OpenBSD-Commit-ID: 77b068dd133b8d87e0f010987bd5131e640ee64c | ||
5155 | |||
5156 | commit 5af6fd5461bb709304e6979c8b7856c7af921c9e | ||
5157 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5158 | Date: Mon Dec 16 13:55:56 2019 +1100 | ||
5159 | |||
5160 | Allow clock_nanosleep_time64 in seccomp sandbox. | ||
5161 | |||
5162 | Needed on Linux ARM. bz#3100, patch from jjelen@redhat.com. | ||
5163 | |||
5164 | commit fff8ff6dd580e1a72ba09a6775d185175cdc8d13 | ||
5165 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5166 | Date: Sun Dec 15 18:27:02 2019 +1100 | ||
5167 | |||
5168 | Put SK ECDSA bits inside ifdef OPENSSL_HAS_ECC. | ||
5169 | |||
5170 | Fixes build when linking against OpenSSLs built with no-ec. | ||
5171 | |||
5172 | commit 9244990ecdcfa36bb9371058111685b05f201c1e | ||
5173 | Author: Damien Miller <djm@mindrot.org> | ||
5174 | Date: Sat Dec 14 09:21:46 2019 +1100 | ||
5175 | |||
5176 | remove a bunch of ENABLE_SK #ifdefs | ||
5177 | |||
5178 | The ssh-sk-helper client API gives us a nice place to disable | ||
5179 | security key support when it is wasn't enabled at compile time, | ||
5180 | so we don't need to check everywere. | ||
5181 | |||
5182 | Also, verification of security key signatures can remain enabled | ||
5183 | all the time - it has no additional dependencies. So sshd can | ||
5184 | accept security key pubkeys in authorized_keys, etc regardless of | ||
5185 | the host's support for dlopen, etc. | ||
5186 | |||
5187 | commit a33ab1688b5c460a7e2a301418241ce1b13b2638 | ||
5188 | Author: Damien Miller <djm@mindrot.org> | ||
5189 | Date: Sat Dec 14 09:15:06 2019 +1100 | ||
5190 | |||
5191 | ssh-sk-client.c needs includes.h | ||
5192 | |||
5193 | commit 633778d567ad50b63d2a3bca5e1b97d279d236d9 | ||
5194 | Author: Damien Miller <djm@mindrot.org> | ||
5195 | Date: Sat Dec 14 08:40:33 2019 +1100 | ||
5196 | |||
5197 | only link ssh-sk-helper against libfido2 | ||
5198 | |||
5199 | commit 7b47b40b170db4d6f41da0479575f6d99dd7228a | ||
5200 | Author: Damien Miller <djm@mindrot.org> | ||
5201 | Date: Sat Dec 14 08:20:52 2019 +1100 | ||
5202 | |||
5203 | adapt Makefile to ssh-sk-client everywhere | ||
5204 | |||
5205 | commit f45f3a8a12e2bee601046b916e6c5cd6eae08048 | ||
5206 | Author: Damien Miller <djm@mindrot.org> | ||
5207 | Date: Sat Dec 14 07:53:11 2019 +1100 | ||
5208 | |||
5209 | fixup | ||
5210 | |||
5211 | commit d21434766764d5babf99fc3937c19b625c0f6334 | ||
5212 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5213 | Date: Fri Dec 13 20:16:56 2019 +0000 | ||
5214 | |||
5215 | upstream: actually commit the ssh-sk-helper client code; ok markus | ||
5216 | |||
5217 | OpenBSD-Commit-ID: fd2ea776a5bbbf4d452989d3c3054cf25a5e0589 | ||
5218 | |||
5219 | commit 611073fb40ecaf4ac65094e403edea3a08deb700 | ||
5220 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5221 | Date: Fri Dec 13 19:11:14 2019 +0000 | ||
5222 | |||
5223 | upstream: perform security key enrollment via ssh-sk-helper too. | ||
5224 | |||
5225 | This means that ssh-keygen no longer needs to link against ssh-sk-helper, and | ||
5226 | only ssh-sk-helper needs libfido2 and /dev/uhid* access; | ||
5227 | |||
5228 | feedback & ok markus@ | ||
5229 | |||
5230 | OpenBSD-Commit-ID: 9464233fab95708d2ff059f8bee29c0d1f270800 | ||
5231 | |||
5232 | commit 612b1dd1ec91ffb1e01f58cca0c6eb1d47bf4423 | ||
5233 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5234 | Date: Fri Dec 13 19:09:37 2019 +0000 | ||
5235 | |||
5236 | upstream: allow sshbuf_put_stringb(buf, NULL); ok markus@ | ||
5237 | |||
5238 | OpenBSD-Commit-ID: 91482c1ada9adb283165d48dafbb88ae91c657bd | ||
5239 | |||
5240 | commit b52ec0ba3983859514aa7b57d6100fa9759fe696 | ||
5241 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5242 | Date: Fri Dec 13 19:09:10 2019 +0000 | ||
5243 | |||
5244 | upstream: use ssh-sk-helper for all security key signing operations | ||
5245 | |||
5246 | This extracts and refactors the client interface for ssh-sk-helper | ||
5247 | from ssh-agent and generalises it for use by the other programs. | ||
5248 | This means that most OpenSSH tools no longer need to link against | ||
5249 | libfido2 or directly interact with /dev/uhid* | ||
5250 | |||
5251 | requested by, feedback and ok markus@ | ||
5252 | |||
5253 | OpenBSD-Commit-ID: 1abcd3aea9a7460eccfbf8ca154cdfa62f1dc93f | ||
5254 | |||
5255 | commit c33d46868c3d88e04a92610cdb429094aeeb5847 | ||
5256 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5257 | Date: Wed Dec 11 22:19:47 2019 +0000 | ||
5258 | |||
5259 | upstream: add a note about the 'extensions' field in the signed | ||
5260 | |||
5261 | object | ||
5262 | |||
5263 | OpenBSD-Commit-ID: 67c01e0565b258e0818c1ccfe1f1aeaf9a0d4c7b | ||
5264 | |||
5265 | commit a62f4e1960691f3aeb1f972e009788b29e2ae464 | ||
5266 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5267 | Date: Tue Dec 10 23:37:31 2019 +0000 | ||
5268 | |||
5269 | upstream: some more corrections for documentation problems spotted | ||
5270 | |||
5271 | by Ron Frederick | ||
5272 | |||
5273 | document certifiate private key format | ||
5274 | correct flags type for sk-ssh-ed25519@openssh.com keys | ||
5275 | |||
5276 | OpenBSD-Commit-ID: fc4e9a1ed7f9f7f9dd83e2e2c59327912e933e74 | ||
5277 | |||
5278 | commit 22d4beb79622fc82d7111ac941269861fc7aef8d | ||
5279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5280 | Date: Tue Dec 10 23:21:56 2019 +0000 | ||
5281 | |||
5282 | upstream: loading security keys into ssh-agent used the extension | ||
5283 | |||
5284 | constraint "sk-provider@openssh.com", not "sk@openssh.com"; spotted by Ron | ||
5285 | Frederick | ||
5286 | |||
5287 | OpenBSD-Commit-ID: dbfba09edbe023abadd5f59c1492df9073b0e51d | ||
5288 | |||
5289 | commit 75f7f22a43799f6d25dffd9d6683de1601da05a3 | ||
5290 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5291 | Date: Tue Dec 10 22:43:19 2019 +0000 | ||
5292 | |||
5293 | upstream: add security key types to list of keys allowed to act as | ||
5294 | |||
5295 | CAs; spotted by Ron Frederick | ||
5296 | |||
5297 | OpenBSD-Commit-ID: 9bb0dfff927b4f7aa70679f983f84c69d45656c3 | ||
5298 | |||
5299 | commit 516605f2d596884cedc2beed6b262716ec76f63d | ||
5300 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5301 | Date: Tue Dec 10 22:37:20 2019 +0000 | ||
5302 | |||
5303 | upstream: when acting as a CA and using a security key as the CA | ||
5304 | |||
5305 | key, remind the user to touch they key to authorise the signature. | ||
5306 | |||
5307 | OpenBSD-Commit-ID: fe58733edd367362f9766b526a8b56827cc439c1 | ||
5308 | |||
5309 | commit c4036fe75ea5a4d03a2a40be1f3660dcbbfa01b2 | ||
5310 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5311 | Date: Tue Dec 10 22:36:08 2019 +0000 | ||
5312 | |||
5313 | upstream: chop some unnecessary and confusing verbiage from the | ||
5314 | |||
5315 | security key protocol description; feedback from Ron Frederick | ||
5316 | |||
5317 | OpenBSD-Commit-ID: 048c9483027fbf9c995e5a51b3ac502989085a42 | ||
5318 | |||
5319 | commit 59175a350fe1091af7528b2971e3273aa7ca7295 | ||
5320 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5321 | Date: Fri Dec 6 03:06:08 2019 +0000 | ||
5322 | |||
5323 | upstream: fix setting of $SSH_ASKPASS_PROMPT - it shouldn't be set | ||
5324 | |||
5325 | when asking passphrases, only when confirming the use of a key (i.e. for | ||
5326 | ssh-agent keys added with "ssh-add -c keyfile") | ||
5327 | |||
5328 | OpenBSD-Commit-ID: 6643c82960d9427d5972eb702c917b3b838ecf89 | ||
5329 | |||
5330 | commit 36eaa356d391a23a2d4e3a8aaa0223abc70b9822 | ||
5331 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5332 | Date: Fri Dec 6 02:55:21 2019 +0000 | ||
5333 | |||
5334 | upstream: bring the __func__ | ||
5335 | |||
5336 | OpenBSD-Commit-ID: 71a3a45b0fe1b8f680ff95cf264aa81f7abbff67 | ||
5337 | |||
5338 | commit 483cc723d1ff3b7fdafc6239348040a608ebc78d | ||
5339 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5340 | Date: Sat Nov 30 07:07:59 2019 +0000 | ||
5341 | |||
5342 | upstream: tweak the Nd lines for a bit of consistency; ok markus | ||
5343 | |||
5344 | OpenBSD-Commit-ID: 876651bdde06bc1e72dd4bd7ad599f42a6ce5a16 | ||
5345 | |||
5346 | commit afffd310360b155df2133d1f5f1ab2f4e939b570 | ||
5347 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5348 | Date: Wed Dec 11 13:22:06 2019 +1100 | ||
5349 | |||
5350 | Check if memmem is declared in system headers. | ||
5351 | |||
5352 | If the system (or one of the dependencies) implements memmem but does | ||
5353 | not define the header, we would not declare it either resulting in | ||
5354 | compiler warnings. Check for declaration explicitly. bz#3102. | ||
5355 | |||
5356 | commit ad8cd420797695f3b580aea1034b9de60bede9b9 | ||
5357 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5358 | Date: Wed Dec 11 13:12:01 2019 +1100 | ||
5359 | |||
5360 | Sort depends. | ||
5361 | |||
5362 | commit 5e3abff39e01817f6866494416f2ada25c316018 | ||
5363 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5364 | Date: Wed Dec 11 13:09:34 2019 +1100 | ||
5365 | |||
5366 | Sort .depend when rebuilding. | ||
5367 | |||
5368 | This makes diffs more stable between makedepend implementations. | ||
5369 | |||
5370 | commit 5df9d1f5c0943367d9b68435f4c82224ce11a73f | ||
5371 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5372 | Date: Wed Dec 11 13:06:43 2019 +1100 | ||
5373 | |||
5374 | Update depend to include sk files. | ||
5375 | |||
5376 | commit 9a967c5bbfca35835165f7d8a6165009f5b21872 | ||
5377 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5378 | Date: Mon Dec 9 20:25:26 2019 +1100 | ||
5379 | |||
5380 | Describe how to build libcrypto as PIC. | ||
5381 | |||
5382 | While there, move the OpenSSL 1.1.0g caveat closer to the other version | ||
5383 | information. | ||
5384 | |||
5385 | commit b66fa5da25c4b5b67cf9f0ce7af513f5a6a6a686 | ||
5386 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5387 | Date: Mon Dec 9 17:23:22 2019 +1100 | ||
5388 | |||
5389 | Recommend running LibreSSL or OpenSSL self-tests. | ||
5390 | |||
5391 | commit fa7924008e838cded7e8a561356ffe5e06e0ed64 | ||
5392 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5393 | Date: Fri Dec 6 14:17:26 2019 +1100 | ||
5394 | |||
5395 | Wrap ECC specific bits in ifdef. | ||
5396 | |||
5397 | Fixes tests when built against an OpenSSL configured with no-ec. | ||
5398 | |||
5399 | commit 2ff822eabd7d4461743f22d3b9ba35ab76069df5 | ||
5400 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5401 | Date: Fri Nov 29 20:21:36 2019 +1100 | ||
5402 | |||
5403 | Wrap sha2.h include in ifdef. | ||
5404 | |||
5405 | Fixes build --without-openssl on at least Fedora. | ||
5406 | |||
5407 | commit 443848155ffcda65a6077aac118c861b503a093f | ||
5408 | Author: Damien Miller <djm@mindrot.org> | ||
5409 | Date: Fri Nov 29 15:10:21 2019 +1100 | ||
5410 | |||
5411 | compile sk-dummy.so with no-PIE version of LDFLAGS | ||
5412 | |||
5413 | This lets it pick up the -L path to libcrypto for example. | ||
5414 | |||
5415 | commit 37f5b5346e4cc6a894245aa89d2930649bb7045b | ||
5416 | Author: Damien Miller <djm@mindrot.org> | ||
5417 | Date: Fri Nov 29 14:48:46 2019 +1100 | ||
5418 | |||
5419 | includes.h for sk-dummy.c, dummy | ||
5420 | |||
5421 | commit b218055e59a7c1a1816f7a55ca18e3f3c05d63a4 | ||
5422 | Author: Damien Miller <djm@mindrot.org> | ||
5423 | Date: Fri Nov 29 12:32:23 2019 +1100 | ||
5424 | |||
5425 | (yet) another x-platform fix for sk-dummy.so | ||
5426 | |||
5427 | Check for -fPIC support from compiler | ||
5428 | |||
5429 | Compile libopenbsd-compat -fPIC | ||
5430 | |||
5431 | Don't mix -fPIE and -fPIC when compiling | ||
5432 | |||
5433 | commit 0dedb703adcd98d0dbc4479f5f312a2bd3df2850 | ||
5434 | Author: Damien Miller <djm@mindrot.org> | ||
5435 | Date: Fri Nov 29 11:53:57 2019 +1100 | ||
5436 | |||
5437 | needs includes.h for WITH_OPENSSL | ||
5438 | |||
5439 | commit ef3853bb94c2c72e7eda0de6cec0bcb1da62058f | ||
5440 | Author: Damien Miller <djm@mindrot.org> | ||
5441 | Date: Fri Nov 29 11:52:23 2019 +1100 | ||
5442 | |||
5443 | another attempt at sk-dummy.so working x-platform | ||
5444 | |||
5445 | include a fatal() implementation to satisfy libopenbsd-compat | ||
5446 | |||
5447 | clean up .lo and .so files | ||
5448 | |||
5449 | .gitignore .lo and .so files | ||
5450 | |||
5451 | commit d46ac56f1cbd5a855a2d5e7309f90d383dcf6431 | ||
5452 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5453 | Date: Fri Nov 29 00:13:29 2019 +0000 | ||
5454 | |||
5455 | upstream: lots of dependencies go away here with ed25519 no longer | ||
5456 | |||
5457 | needing the ssh_digest API. | ||
5458 | |||
5459 | OpenBSD-Regress-ID: 785847ec78cb580d141e29abce351a436d6b5d49 | ||
5460 | |||
5461 | commit 7404b81f25a4a7847380c0f0cf7f1bea5f0a5cd3 | ||
5462 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5463 | Date: Fri Nov 29 00:11:21 2019 +0000 | ||
5464 | |||
5465 | upstream: perform hashing directly in crypto_hash_sha512() using | ||
5466 | |||
5467 | libcrypto or libc SHA512 functions rather than calling ssh_digest_memory(); | ||
5468 | avoids many dependencies on ssh code that complicate standalone use of | ||
5469 | ed25519, as we want to do in sk-dummy.so | ||
5470 | |||
5471 | OpenBSD-Commit-ID: 5a3c37593d3ba7add037b587cec44aaea088496d | ||
5472 | |||
5473 | commit d39a865b7af93a7a9b5a64cf7cf0ef4396c80ba3 | ||
5474 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5475 | Date: Thu Nov 28 12:24:31 2019 +0000 | ||
5476 | |||
5477 | upstream: improve the text for -A a little; input from naddy and | ||
5478 | |||
5479 | djm | ||
5480 | |||
5481 | OpenBSD-Commit-ID: f9cdfb1d6dbb9887c4bf3bb25f9c7a94294c988d | ||
5482 | |||
5483 | commit 9a0e01bd0c61f553ead96b5af84abd73865847b8 | ||
5484 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5485 | Date: Thu Nov 28 12:23:25 2019 +0000 | ||
5486 | |||
5487 | upstream: reshuffle the text to read better; input from naddy, | ||
5488 | |||
5489 | djmc, and dtucker | ||
5490 | |||
5491 | OpenBSD-Commit-ID: a0b2aca2b67614dda3d6618ea097bf0610c35013 | ||
5492 | |||
5493 | commit 5ca52c0f2e5e7f7d01d8d557b994b5c2087bed00 | ||
5494 | Author: Damien Miller <djm@mindrot.org> | ||
5495 | Date: Thu Nov 28 18:09:07 2019 +1100 | ||
5496 | |||
5497 | $< doesn't work as` I thought; explicily list objs | ||
5498 | |||
5499 | commit 18e84bfdc5906a73405c3b42d7f840013bbffe34 | ||
5500 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5501 | Date: Thu Nov 28 05:20:54 2019 +0000 | ||
5502 | |||
5503 | upstream: tweak wording | ||
5504 | |||
5505 | OpenBSD-Commit-ID: bd002ca1599b71331faca735ff5f6de29e32222e | ||
5506 | |||
5507 | commit 8ef5bf9d03aa0f047711cff47f5ffbe3b33ff8c9 | ||
5508 | Author: Damien Miller <djm@mindrot.org> | ||
5509 | Date: Thu Nov 28 13:12:30 2019 +1100 | ||
5510 | |||
5511 | missing .SUFFIXES line makes make sad | ||
5512 | |||
5513 | commit 323da82b8ea993b7f2c5793fd53b4f5ca105d19d | ||
5514 | Author: Damien Miller <djm@mindrot.org> | ||
5515 | Date: Thu Nov 28 09:53:42 2019 +1100 | ||
5516 | |||
5517 | (hopefully) fix out of tree builds of sk-dummy.so | ||
5518 | |||
5519 | commit d8b2838c5d19bf409d44ede4d32df8ee47aeb4cd | ||
5520 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5521 | Date: Wed Nov 27 22:32:11 2019 +0000 | ||
5522 | |||
5523 | upstream: remove stray semicolon after closing brace of function; | ||
5524 | |||
5525 | from Michael Forney | ||
5526 | |||
5527 | OpenBSD-Commit-ID: fda95acb799bb160d15e205ee126117cf33da3a7 | ||
5528 | |||
5529 | commit 6e1d1bbf5a3eca875005e0c87f341a0a03799809 | ||
5530 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5531 | Date: Wed Nov 27 05:38:43 2019 +0000 | ||
5532 | |||
5533 | upstream: Revert previous commit. The channels code still uses int | ||
5534 | |||
5535 | in many places for channel ids so the INT_MAX check still makes sense. | ||
5536 | |||
5537 | OpenBSD-Commit-ID: 532e4b644791b826956c3c61d6ac6da39bac84bf | ||
5538 | |||
5539 | commit 48989244658b9748b6801034ff4ffbdfc6b1520f | ||
5540 | Author: Damien Miller <djm@mindrot.org> | ||
5541 | Date: Wed Nov 27 16:03:12 2019 +1100 | ||
5542 | |||
5543 | wire sk-dummy.so into test suite | ||
5544 | |||
5545 | commit f79364bacaebde4f1c260318ab460fceacace02f | ||
5546 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5547 | Date: Wed Nov 27 05:00:17 2019 +0000 | ||
5548 | |||
5549 | upstream: use error()+_exit() instead of fatal() to avoid running | ||
5550 | |||
5551 | cleanup handlers in child process; spotted via weird regress failures in | ||
5552 | portable | ||
5553 | |||
5554 | OpenBSD-Commit-ID: 6902a9bb3987c7d347774444f7979b8a9ba7f412 | ||
5555 | |||
5556 | commit 70ec5e5e2681bcd409a9df94a2fec6f57a750945 | ||
5557 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5558 | Date: Wed Nov 27 03:34:04 2019 +0000 | ||
5559 | |||
5560 | upstream: Make channel_id u_int32_t and remove unnecessary check | ||
5561 | |||
5562 | and cast that were left over from the type conversion. Noted by | ||
5563 | t-hashida@amiya.co.jp in bz#3098, ok markus@ djm@ | ||
5564 | |||
5565 | OpenBSD-Commit-ID: 3ad105b6a905284e780b1fd7ff118e1c346e90b5 | ||
5566 | |||
5567 | commit ad44ca81bea83657d558aaef5a1d789a9032bac3 | ||
5568 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5569 | Date: Tue Nov 26 23:43:10 2019 +0000 | ||
5570 | |||
5571 | upstream: test FIDO2/U2F key types; ok markus@ | ||
5572 | |||
5573 | OpenBSD-Regress-ID: 367e06d5a260407619b4b113ea0bd7004a435474 | ||
5574 | |||
5575 | commit c6efa8a91af1d4fdb43909a23a0a4ffa012155ad | ||
5576 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5577 | Date: Tue Nov 26 23:41:23 2019 +0000 | ||
5578 | |||
5579 | upstream: add dummy security key middleware based on work by | ||
5580 | |||
5581 | markus@ | ||
5582 | |||
5583 | This will allow us to test U2F/FIDO2 support in OpenSSH without | ||
5584 | requiring real hardware. | ||
5585 | |||
5586 | ok markus@ | ||
5587 | |||
5588 | OpenBSD-Regress-ID: 88b309464b8850c320cf7513f26d97ee1fdf9aae | ||
5589 | |||
5590 | commit 8635afa1cdc21366d61730d943f3cf61861899c8 | ||
5591 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5592 | Date: Tue Nov 26 22:42:26 2019 +0000 | ||
5593 | |||
5594 | upstream: tweak previous; | ||
5595 | |||
5596 | OpenBSD-Commit-ID: a4c097364c75da320f1b291568db830fb1ee4883 | ||
5597 | |||
5598 | commit e0d38ae9bc8c0de421605b9021d8144e4d8ff22b | ||
5599 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5600 | Date: Tue Nov 26 03:04:27 2019 +0000 | ||
5601 | |||
5602 | upstream: more debugging; behind DEBUG_SK | ||
5603 | |||
5604 | OpenBSD-Commit-ID: a978896227118557505999ddefc1f4c839818b60 | ||
5605 | |||
5606 | commit 9281d4311b8abc63b88259f354944c53f9b0b3c7 | ||
5607 | Author: Damien Miller <djm@mindrot.org> | ||
5608 | Date: Mon Nov 25 21:47:49 2019 +1100 | ||
5609 | |||
5610 | unbreak fuzzers for recent security key changes | ||
5611 | |||
5612 | commit c5f1cc993597fed0a9013743556b1567f476c677 | ||
5613 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5614 | Date: Mon Nov 25 10:32:35 2019 +0000 | ||
5615 | |||
5616 | upstream: unbreak tests for recent security key changes | ||
5617 | |||
5618 | OpenBSD-Regress-ID: 2cdf2fcae9962ca4d711338f3ceec3c1391bdf95 | ||
5619 | |||
5620 | commit 64988266820cc90a45a21672be9d762cbde8d34d | ||
5621 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5622 | Date: Mon Nov 25 06:53:04 2019 +0000 | ||
5623 | |||
5624 | upstream: unbreak after security key support landed | ||
5625 | |||
5626 | OpenBSD-Regress-ID: 3ab578b0dbeb2aa6d9969b54a9c1bad329c0dcba | ||
5627 | |||
5628 | commit e65e25c81e22ea622e89a142a303726a3882384f | ||
5629 | Author: tb@openbsd.org <tb@openbsd.org> | ||
5630 | Date: Thu Nov 21 05:18:47 2019 +0000 | ||
5631 | |||
5632 | upstream: Remove workaround for broken 'openssl rsa -text' output | ||
5633 | |||
5634 | that was fixed in libcrypto/rsa/rsa_ameth.c r1.24. | ||
5635 | |||
5636 | ok dtucker inoguchi | ||
5637 | |||
5638 | OpenBSD-Regress-ID: c260edfac177daa8fcce90141587cf04a95c4f5f | ||
5639 | |||
5640 | commit 21377ec2a9378579ba4b44a681af7bbca77581f4 | ||
5641 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5642 | Date: Mon Nov 25 10:23:36 2019 +0000 | ||
5643 | |||
5644 | upstream: redundant test | ||
5645 | |||
5646 | OpenBSD-Commit-ID: 38fa7806c528a590d91ae560e67bd8b246c2d7a3 | ||
5647 | |||
5648 | commit 664deef95a2e770812533439b8bdd3f3c291ae59 | ||
5649 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5650 | Date: Mon Nov 25 00:57:51 2019 +0000 | ||
5651 | |||
5652 | upstream: document the "no-touch-required" certificate extension; | ||
5653 | |||
5654 | ok markus, feedback deraadt | ||
5655 | |||
5656 | OpenBSD-Commit-ID: 47640122b13f825e9c404ea99803b2372246579d | ||
5657 | |||
5658 | commit 26cb128b31efdd5395153f4943f5be3eddc07033 | ||
5659 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5660 | Date: Mon Nov 25 00:57:27 2019 +0000 | ||
5661 | |||
5662 | upstream: Print a key touch reminder when generating a security | ||
5663 | |||
5664 | key. Most keys require a touch to authorize the operation. | ||
5665 | |||
5666 | OpenBSD-Commit-ID: 7fe8b23edbf33e1bb81741b9f25e9a63be5f6b68 | ||
5667 | |||
5668 | commit daeaf4136927c2a82af1399022103d67ff03f74a | ||
5669 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5670 | Date: Mon Nov 25 00:55:58 2019 +0000 | ||
5671 | |||
5672 | upstream: allow "ssh-keygen -x no-touch-required" when generating a | ||
5673 | |||
5674 | security key keypair to request one that does not require a touch for each | ||
5675 | authentication attempt. The default remains to require touch. | ||
5676 | |||
5677 | feedback deraadt; ok markus@ | ||
5678 | |||
5679 | OpenBSD-Commit-ID: 887e7084b2e89c0c62d1598ac378aad8e434bcbd | ||
5680 | |||
5681 | commit 2e71263b80fec7ad977e098004fef7d122169d40 | ||
5682 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5683 | Date: Mon Nov 25 00:54:23 2019 +0000 | ||
5684 | |||
5685 | upstream: add a "no-touch-required" option for authorized_keys and | ||
5686 | |||
5687 | a similar extension for certificates. This option disables the default | ||
5688 | requirement that security key signatures attest that the user touched their | ||
5689 | key to authorize them. | ||
5690 | |||
5691 | feedback deraadt, ok markus | ||
5692 | |||
5693 | OpenBSD-Commit-ID: f1fb56151ba68d55d554d0f6d3d4dba0cf1a452e | ||
5694 | |||
5695 | commit 0fddf2967ac51d518e300408a0d7e6adf4cd2634 | ||
5696 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5697 | Date: Mon Nov 25 00:52:46 2019 +0000 | ||
5698 | |||
5699 | upstream: Add a sshd_config PubkeyAuthOptions directive | ||
5700 | |||
5701 | This directive has a single valid option "no-touch-required" that | ||
5702 | causes sshd to skip checking whether user presence was tested before | ||
5703 | a security key signature was made (usually by the user touching the | ||
5704 | key). | ||
5705 | |||
5706 | ok markus@ | ||
5707 | |||
5708 | OpenBSD-Commit-ID: 46e434a49802d4ed82bc0aa38cb985c198c407de | ||
5709 | |||
5710 | commit b7e74ea072919b31391bc0f5ff653f80b9f5e84f | ||
5711 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5712 | Date: Mon Nov 25 00:51:37 2019 +0000 | ||
5713 | |||
5714 | upstream: Add new structure for signature options | ||
5715 | |||
5716 | This is populated during signature verification with additional fields | ||
5717 | that are present in and covered by the signature. At the moment, it is | ||
5718 | only used to record security key-specific options, especially the flags | ||
5719 | field. | ||
5720 | |||
5721 | with and ok markus@ | ||
5722 | |||
5723 | OpenBSD-Commit-ID: 338a1f0e04904008836130bedb9ece4faafd4e49 | ||
5724 | |||
5725 | commit d2b0f88178ec9e3f11b606bf1004ac2fe541a2c3 | ||
5726 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5727 | Date: Mon Nov 25 00:38:17 2019 +0000 | ||
5728 | |||
5729 | upstream: memleak in error path | ||
5730 | |||
5731 | OpenBSD-Commit-ID: 93488431bf02dde85a854429362695d2d43d9112 | ||
5732 | |||
5733 | commit e2c0a21ade5e0bd7f0aab08d7eb9457f086681e9 | ||
5734 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5735 | Date: Fri Nov 22 06:50:30 2019 +0000 | ||
5736 | |||
5737 | upstream: Wait for FD to be readable or writeable during a nonblocking | ||
5738 | |||
5739 | connect, not just readable. Prevents a timeout when the server doesn't | ||
5740 | immediately send a banner (eg multiplexers like sslh) but is also slightly | ||
5741 | quicker for other connections since, unlike ssh1, ssh2 doesn't specify | ||
5742 | that the client should parse the server banner before sending its own. | ||
5743 | Patch from mnissler@chromium.org, ok djm@ | ||
5744 | |||
5745 | OpenBSD-Commit-ID: aba9cd8480d1d9dd31d0ca0422ea155c26c5df1d | ||
5746 | |||
5747 | commit 2f95d43dc222ce194622b706682e8de07c9cfb42 | ||
5748 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5749 | Date: Wed Nov 20 16:34:11 2019 +1100 | ||
5750 | |||
5751 | Include openssl compat header. | ||
5752 | |||
5753 | Fixes warning for ECDSA_SIG_set0 on OpenSSL versions prior to 1.1. | ||
5754 | |||
5755 | commit a70d92f236576c032a45c39e68ca0d71e958d19d | ||
5756 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5757 | Date: Tue Nov 19 22:23:19 2019 +0000 | ||
5758 | |||
5759 | upstream: adjust on-wire signature encoding for ecdsa-sk keys to | ||
5760 | |||
5761 | better match ec25519-sk keys. Discussed with markus@ and Sebastian Kinne | ||
5762 | |||
5763 | NB. if you are depending on security keys (already?) then make sure you | ||
5764 | update both your clients and servers. | ||
5765 | |||
5766 | OpenBSD-Commit-ID: 53d88d8211f0dd02a7954d3af72017b1a79c0679 | ||
5767 | |||
5768 | commit 26369a5f7d9c4e4ef44a3e04910126e1bcea43d8 | ||
5769 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5770 | Date: Tue Nov 19 22:21:15 2019 +0000 | ||
5771 | |||
5772 | upstream: a little more information from the monitor when signature | ||
5773 | |||
5774 | verification fails. | ||
5775 | |||
5776 | OpenBSD-Commit-ID: e6a30071e0518cac512f9e10be3dc3500e2003f3 | ||
5777 | |||
5778 | commit 4402d6c9b5bf128dcfae2429f1d41cdaa8849b6b | ||
5779 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5780 | Date: Tue Nov 19 16:02:32 2019 +0000 | ||
5781 | |||
5782 | upstream: revert previous: naddy pointed out what's meant to | ||
5783 | |||
5784 | happen. rethink needed... | ||
5785 | |||
5786 | OpenBSD-Commit-ID: fb0fede8123ea7f725fd65e00d49241c40bd3421 | ||
5787 | |||
5788 | commit 88056f881315233e990e4e04a815f8f96b4674e1 | ||
5789 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
5790 | Date: Tue Nov 19 14:54:47 2019 +0000 | ||
5791 | |||
5792 | upstream: -c and -s do not make sense with -k; reshuffle -k into | ||
5793 | |||
5794 | the main synopsis/usage; ok djm | ||
5795 | |||
5796 | OpenBSD-Commit-ID: f881ba253da015398ae8758d973e3390754869bc | ||
5797 | |||
5798 | commit 2cf262c21f35296c2ff718cfdb52e0473a1c3983 | ||
5799 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5800 | Date: Mon Nov 18 23:17:48 2019 +0000 | ||
5801 | |||
5802 | upstream: document '$' environment variable expansion for | ||
5803 | |||
5804 | SecurityKeyProvider; ok djm@ | ||
5805 | |||
5806 | OpenBSD-Commit-ID: 76db507ebd336a573e1cd4146cc40019332c5799 | ||
5807 | |||
5808 | commit f0edda81c5ebccffcce52b182c3033531a1aab71 | ||
5809 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5810 | Date: Mon Nov 18 23:16:49 2019 +0000 | ||
5811 | |||
5812 | upstream: more missing mentions of ed25519-sk; ok djm@ | ||
5813 | |||
5814 | OpenBSD-Commit-ID: f242e53366f61697dffd53af881bc5daf78230ff | ||
5815 | |||
5816 | commit 189550f5bc85148e85f4caa1f6b2fc623149a4ee | ||
5817 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5818 | Date: Mon Nov 18 16:10:05 2019 +0000 | ||
5819 | |||
5820 | upstream: additional missing stdarg.h includes when built without | ||
5821 | |||
5822 | WITH_OPENSSL; ok djm@ | ||
5823 | |||
5824 | OpenBSD-Commit-ID: 881f9a2c4e2239849cee8bbf4faec9bab128f55b | ||
5825 | |||
5826 | commit 723a5369864b338c48d22854bc2bb4ee5c083deb | ||
5827 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
5828 | Date: Mon Nov 18 16:08:57 2019 +0000 | ||
5829 | |||
5830 | upstream: add the missing WITH_OPENSSL ifdefs after the ED25519-SK | ||
5831 | |||
5832 | addition; ok djm@ | ||
5833 | |||
5834 | OpenBSD-Commit-ID: a9545e1c273e506cf70e328cbb9d0129b6d62474 | ||
5835 | |||
5836 | commit 478f4f98e4e93ae4ed1a8911dec4e5b75ea10f30 | ||
5837 | Author: Damien Miller <djm@mindrot.org> | ||
5838 | Date: Tue Nov 19 08:52:24 2019 +1100 | ||
5839 | |||
5840 | remove all EC algs from proposals, no just sk ones | ||
5841 | |||
5842 | ok dtucker@ | ||
5843 | |||
5844 | commit 6a7ef310da100f876a257b7367e3b0766dac3994 | ||
5845 | Author: Damien Miller <djm@mindrot.org> | ||
5846 | Date: Mon Nov 18 22:22:04 2019 +1100 | ||
5847 | |||
5848 | filter PUBKEY_DEFAULT_PK_ALG for ECC algorithms | ||
5849 | |||
5850 | Remove ECC algorithms from the PUBKEY_DEFAULT_PK_ALG list when | ||
5851 | compiling without ECC support in libcrypto. | ||
5852 | |||
5853 | commit 64f56f1d1af3947a71a4c391f2c08747d19ee591 | ||
5854 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
5855 | Date: Mon Nov 18 09:15:17 2019 +0000 | ||
5856 | |||
5857 | upstream: LibreSSL change the format for openssl rsa -text output from | ||
5858 | |||
5859 | "publicExponent" to "Exponent" so accept either. with djm. | ||
5860 | |||
5861 | OpenBSD-Regress-ID: b7e6c4bf700029a31c98be14600d4472fe0467e6 | ||
5862 | |||
5863 | commit 4bfc0503ad94a2a7190686a89649567c20b8534f | ||
5864 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5865 | Date: Mon Nov 18 06:58:00 2019 +0000 | ||
5866 | |||
5867 | upstream: fix a bug that prevented serialisation of ed25519-sk keys | ||
5868 | |||
5869 | OpenBSD-Commit-ID: 066682b79333159cac04fcbe03ebd9c8dcc152a9 | ||
5870 | |||
5871 | commit d88205417084f523107fbe1bc92061635cd57fd2 | ||
5872 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5873 | Date: Mon Nov 18 06:39:36 2019 +0000 | ||
5874 | |||
5875 | upstream: Fix incorrect error message when key certification fails | ||
5876 | |||
5877 | OpenBSD-Commit-ID: 7771bd77ee73f7116df37c734c41192943a73cee | ||
5878 | |||
5879 | commit 740c4bc9875cbb4b9fc03fd5eac19df080f20df5 | ||
5880 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5881 | Date: Mon Nov 18 06:39:02 2019 +0000 | ||
5882 | |||
5883 | upstream: fix bug that prevented certification of ed25519-sk keys | ||
5884 | |||
5885 | OpenBSD-Commit-ID: 64c8cc6f5de2cdd0ee3a81c3a9dee8d862645996 | ||
5886 | |||
5887 | commit 85409cbb505d8c463ab6e2284b4039764c7243de | ||
5888 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5889 | Date: Mon Nov 18 06:24:17 2019 +0000 | ||
5890 | |||
5891 | upstream: allow *-sk key types to be turned into certificates | ||
5892 | |||
5893 | OpenBSD-Commit-ID: cd365ee343934862286d0b011aa77fa739d2a945 | ||
5894 | |||
5895 | commit e2e1283404e06a22ac6135d057199e70dcadb8dd | ||
5896 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5897 | Date: Mon Nov 18 04:55:02 2019 +0000 | ||
5898 | |||
5899 | upstream: mention ed25519-sk key/cert types here too; prompted by | ||
5900 | |||
5901 | jmc@ | ||
5902 | |||
5903 | OpenBSD-Commit-ID: e281977e4a4f121f3470517cbd5e483eee37b818 | ||
5904 | |||
5905 | commit 97dc5d1d82865a7d20f1eb193b5c62ce684024e5 | ||
5906 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5907 | Date: Mon Nov 18 04:50:45 2019 +0000 | ||
5908 | |||
5909 | upstream: mention ed25519-sk in places where it is accepted; | ||
5910 | |||
5911 | prompted by jmc@ | ||
5912 | |||
5913 | OpenBSD-Commit-ID: 076d386739ebe7336c2137e583bc7a5c9538a442 | ||
5914 | |||
5915 | commit 130664344862a8c7afd3e24d8d36ce40af41a99f | ||
5916 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5917 | Date: Mon Nov 18 04:34:47 2019 +0000 | ||
5918 | |||
5919 | upstream: document ed25519-sk pubkey, private key and certificate | ||
5920 | |||
5921 | formats | ||
5922 | |||
5923 | OpenBSD-Commit-ID: 795a7c1c80315412e701bef90e31e376ea2f3c88 | ||
5924 | |||
5925 | commit 71856e1142fc01628ce53098f8cfc74765464b35 | ||
5926 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5927 | Date: Mon Nov 18 04:29:50 2019 +0000 | ||
5928 | |||
5929 | upstream: correct order or ecdsa-sk private key fields | ||
5930 | |||
5931 | OpenBSD-Commit-ID: 4d4a0c13226a79f0080ce6cbe74f73b03ed8092e | ||
5932 | |||
5933 | commit 93fa2a6649ae3e0626cbff25c985a4573d63e3f2 | ||
5934 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5935 | Date: Mon Nov 18 04:16:53 2019 +0000 | ||
5936 | |||
5937 | upstream: correct description of fields in pub/private keys (was | ||
5938 | |||
5939 | missing curve name); spotted by Sebastian Kinne | ||
5940 | |||
5941 | OpenBSD-Commit-ID: 2a11340dc7ed16200342d384fb45ecd4fcce26e7 | ||
5942 | |||
5943 | commit b497e920b409250309c4abe64229237b8f2730ba | ||
5944 | Author: Damien Miller <djm@mindrot.org> | ||
5945 | Date: Mon Nov 18 15:05:04 2019 +1100 | ||
5946 | |||
5947 | Teach the GTK2/3 ssh-askpass the new prompt hints | ||
5948 | |||
5949 | ssh/ssh-agent now sets a hint environment variable $SSH_ASKPASS_PROMPT | ||
5950 | when running the askpass program. This is intended to allow the | ||
5951 | askpass to vary its UI across the three cases it supports: asking for | ||
5952 | a passphrase, confirming the use of a key and (recently) reminding | ||
5953 | a user to touch their security key. | ||
5954 | |||
5955 | This adapts the gnome-ssh-askpass[23] to use these hints. Specifically, | ||
5956 | for SSH_ASKPASS_PROMPT=confirm it will skip the text input box and show | ||
5957 | only "yes"/"no" buttons. For SSH_ASKPASS_PROMPT=none (used to remind | ||
5958 | users to tap their security key), it shows only a "close" button. | ||
5959 | |||
5960 | Help wanted: adapt the other askpass programs in active use, including | ||
5961 | x11-ssh-askpass, lxqt-openssh-askpass, etc. | ||
5962 | |||
5963 | commit 857f49e91eeae6feb781ef5f5e26c38ca3d953ec | ||
5964 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5965 | Date: Mon Nov 18 14:15:26 2019 +1100 | ||
5966 | |||
5967 | Move ifdef OPENSSL_HAS_ECC. | ||
5968 | |||
5969 | Found by -Wimplicit-fallthrough: one ECC case was not inside the ifdef. | ||
5970 | ok djm@ | ||
5971 | |||
5972 | commit 6cf1c40096a79e5eedcf897c7cdb46bb32d4a3ee | ||
5973 | Author: Darren Tucker <dtucker@dtucker.net> | ||
5974 | Date: Mon Nov 18 14:14:18 2019 +1100 | ||
5975 | |||
5976 | Enable -Wimplicit-fallthrough if supported | ||
5977 | |||
5978 | Suggested by djm. | ||
5979 | |||
5980 | commit 103c51fd5f5ddc01cd6b5c1132e711765b921bf5 | ||
5981 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5982 | Date: Mon Nov 18 01:59:48 2019 +0000 | ||
5983 | |||
5984 | upstream: missing break in getopt switch; spotted by Sebastian Kinne | ||
5985 | |||
5986 | OpenBSD-Commit-ID: f002dbf14dba5586e8407e90f0141148ade8e8fc | ||
5987 | |||
5988 | commit 9a1225e8ca2ce1fe809910874935302234399a6d | ||
5989 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5990 | Date: Sat Nov 16 23:17:20 2019 +0000 | ||
5991 | |||
5992 | upstream: tweak debug message | ||
5993 | |||
5994 | OpenBSD-Commit-ID: 2bf336d3be0b7e3dd97920d7e7471146a281d2b9 | ||
5995 | |||
5996 | commit 4103a3ec7c68493dbc4f0994a229507e943a86d3 | ||
5997 | Author: djm@openbsd.org <djm@openbsd.org> | ||
5998 | Date: Sat Nov 16 22:42:30 2019 +0000 | ||
5999 | |||
6000 | upstream: a little debug() in the security key interface | ||
6001 | |||
6002 | OpenBSD-Commit-ID: 4c70300609a5c8b19707207bb7ad4109e963b0e8 | ||
6003 | |||
6004 | commit 05daa211de926f66f50b7380d637f84dc6341574 | ||
6005 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6006 | Date: Sat Nov 16 22:36:48 2019 +0000 | ||
6007 | |||
6008 | upstream: always use ssh-sk-helper, even for the internal USB HID | ||
6009 | |||
6010 | support. This avoid the need for a wpath pledge in ssh-agent. | ||
6011 | |||
6012 | reported by jmc@ | ||
6013 | |||
6014 | OpenBSD-Commit-ID: 19f799c4d020b870741d221335dbfa5e76691c23 | ||
6015 | |||
6016 | commit d431778a561d90131814f986b646299f9af33c8c | ||
6017 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6018 | Date: Fri Nov 15 15:41:01 2019 +0000 | ||
6019 | |||
6020 | upstream: fix typos in sk_enroll | ||
6021 | |||
6022 | OpenBSD-Commit-ID: faa9bf779e008b3e64e2eb1344d9b7d83b3c4487 | ||
6023 | |||
6024 | commit af90aec0443ec51e6b2d804cb91771d3905f8a6f | ||
6025 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
6026 | Date: Fri Nov 15 11:16:28 2019 +0000 | ||
6027 | |||
6028 | upstream: double word; | ||
6029 | |||
6030 | OpenBSD-Commit-ID: 43d09bafa4ea9002078cb30ca9adc3dcc0b9c2b9 | ||
6031 | |||
6032 | commit fd1a96490cef7f945a1b3b5df4e90c8a1070f425 | ||
6033 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6034 | Date: Fri Nov 15 06:00:20 2019 +0000 | ||
6035 | |||
6036 | upstream: remove most uses of BN_CTX | ||
6037 | |||
6038 | We weren't following the rules re BN_CTX_start/BN_CTX_end and the places | ||
6039 | we were using it didn't benefit from its use anyway. ok dtucker@ | ||
6040 | |||
6041 | OpenBSD-Commit-ID: ea9ba6c0d2e6f6adfe00b309a8f41842fe12fc7a | ||
6042 | |||
6043 | commit 39b87104cdd47baf79ef77dc81de62cea07d119f | ||
6044 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6045 | Date: Fri Nov 15 18:56:54 2019 +1100 | ||
6046 | |||
6047 | Add wrappers for other ultrix headers. | ||
6048 | |||
6049 | Wrappers protect against multiple inclusions for headers that don't do | ||
6050 | it themselves. | ||
6051 | |||
6052 | commit 134a74f4e0cf750931f1125beb2a3f40c54c8809 | ||
6053 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6054 | Date: Fri Nov 15 18:55:13 2019 +1100 | ||
6055 | |||
6056 | Add SSIZE_MAX when we define ssize_t. | ||
6057 | |||
6058 | commit 9c6d0a3a1ed77989d8c5436d8c3cc6c7045c0197 | ||
6059 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6060 | Date: Fri Nov 15 17:13:19 2019 +1100 | ||
6061 | |||
6062 | Remove ultrix realpath hack. | ||
6063 | |||
6064 | commit c63fba5e3472307167850bbd84187186af7fa9f0 | ||
6065 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6066 | Date: Fri Nov 15 05:37:27 2019 +0000 | ||
6067 | |||
6068 | upstream: unshield security key privkey before attempting signature | ||
6069 | |||
6070 | in agent. spotted by dtucker@ | ||
6071 | |||
6072 | OpenBSD-Commit-ID: fb67d451665385b8a0a55371231c50aac67b91d2 | ||
6073 | |||
6074 | commit d165bb5396e3f718480e6039ca2cf77f5a2c2885 | ||
6075 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
6076 | Date: Fri Nov 15 05:26:56 2019 +0000 | ||
6077 | |||
6078 | upstream: rewrite c99-ism | ||
6079 | |||
6080 | OpenBSD-Commit-ID: d0c70cca29cfa7e6d9f7ec1d6d5dabea112499b3 | ||
6081 | |||
6082 | commit 03e06dd0e6e1c0a9f4b4b9de7def8a44dcbf93a7 | ||
6083 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
6084 | Date: Fri Nov 15 05:25:52 2019 +0000 | ||
6085 | |||
6086 | upstream: only clang understands those new -W options | ||
6087 | |||
6088 | OpenBSD-Commit-ID: d9b910e412d139141b072a905e66714870c38ac0 | ||
6089 | |||
6090 | commit 5c0bc273cba53f822b7d777bbb6c35d160d3b505 | ||
6091 | Author: Damien Miller <djm@mindrot.org> | ||
6092 | Date: Fri Nov 15 16:08:00 2019 +1100 | ||
6093 | |||
6094 | configure flag to built-in security key support | ||
6095 | |||
6096 | Require --with-security-key-builtin before enabling the built-in | ||
6097 | security key support (and consequent dependency on libfido2). | ||
6098 | |||
6099 | commit fbcb9a7fa55300b8bd4c18bee024c6104c5a25d7 | ||
6100 | Author: Damien Miller <djm@mindrot.org> | ||
6101 | Date: Fri Nov 15 16:06:30 2019 +1100 | ||
6102 | |||
6103 | upstream commit | ||
6104 | |||
6105 | revision 1.48 | ||
6106 | date: 2019/02/04 16:45:40; author: millert; state: Exp; lines: +16 -17; commitid: cpNtVC7erojNyctw; | ||
6107 | Make gl_pathc, gl_matchc and gl_offs size_t in glob_t to match POSIX. | ||
6108 | This requires a libc major version bump. OK deraadt@ | ||
6109 | |||
6110 | commit 2cfb11abac85885de0cb888bbeb9a3e4303105ea | ||
6111 | Author: Damien Miller <djm@mindrot.org> | ||
6112 | Date: Fri Nov 15 16:05:07 2019 +1100 | ||
6113 | |||
6114 | upstream commit | ||
6115 | |||
6116 | revision 1.47 | ||
6117 | date: 2017/05/08 14:53:27; author: millert; state: Exp; lines: +34 -21; commitid: sYfxfyUHAfarP8sE; | ||
6118 | Fix exponential CPU use with repeated '*' operators by changing '*' | ||
6119 | handling to be interative instead of recursive. | ||
6120 | Fix by Yves Orton, ported to OpenBSD glob.c by Ray Lai. OK tb@ | ||
6121 | |||
6122 | commit 228dd595c7882bb9b161dbb7d4dca15c8a5f03f5 | ||
6123 | Author: Damien Miller <djm@mindrot.org> | ||
6124 | Date: Fri Nov 15 16:04:28 2019 +1100 | ||
6125 | |||
6126 | upstream commit | ||
6127 | |||
6128 | revision 1.46 | ||
6129 | date: 2015/12/28 22:08:18; author: mmcc; state: Exp; lines: +5 -9; commitid: 0uXuF2O13NH9q2e1; | ||
6130 | Remove NULL-checks before free() and a few related dead assignments. | ||
6131 | |||
6132 | ok and valuable input from millert@ | ||
6133 | |||
6134 | commit a16f748690139b9f452485d97511ad5e578f59b2 | ||
6135 | Author: Damien Miller <djm@mindrot.org> | ||
6136 | Date: Fri Nov 15 16:02:43 2019 +1100 | ||
6137 | |||
6138 | upstream commit | ||
6139 | |||
6140 | revision 1.44 | ||
6141 | date: 2015/09/14 16:09:13; author: tedu; state: Exp; lines: +3 -5; commitid: iWfSX2BIn0sLw62l; | ||
6142 | remove null check before free. from Michael McConville | ||
6143 | ok semarie | ||
6144 | |||
6145 | commit fd37cdeafe25adfcdc752280f535d28de7997ff1 | ||
6146 | Author: Damien Miller <djm@mindrot.org> | ||
6147 | Date: Fri Nov 15 16:02:27 2019 +1100 | ||
6148 | |||
6149 | upstream commit | ||
6150 | |||
6151 | revision 1.43 | ||
6152 | date: 2015/06/13 16:57:04; author: deraadt; state: Exp; lines: +4 -4; commitid: zOUKuqWBdOPOz1SZ; | ||
6153 | in glob() initialize the glob_t before the first failure check. | ||
6154 | from j@pureftpd.org | ||
6155 | ok millert stsp | ||
6156 | |||
6157 | commit fd62769c3882adea118dccaff80a06009874a2d1 | ||
6158 | Author: Damien Miller <djm@mindrot.org> | ||
6159 | Date: Fri Nov 15 16:01:20 2019 +1100 | ||
6160 | |||
6161 | upstream commit | ||
6162 | |||
6163 | revision 1.42 | ||
6164 | date: 2015/02/05 12:59:57; author: millert; state: Exp; lines: +2 -1; commitid: DTQbfd4poqBW8iSJ; | ||
6165 | Include stdint.h, not limits.h to get SIZE_MAX. OK guenther@ | ||
6166 | |||
6167 | commit 2b6cba7ee2b8b36f393be739c860a9d2e5d8eb48 | ||
6168 | Author: Damien Miller <djm@mindrot.org> | ||
6169 | Date: Fri Nov 15 16:00:07 2019 +1100 | ||
6170 | |||
6171 | upstream commit | ||
6172 | |||
6173 | revision 1.41 | ||
6174 | date: 2014/10/08 05:35:27; author: deraadt; state: Exp; lines: +3 -3; commitid: JwTGarRLHQKDgPh2; | ||
6175 | obvious realloc -> reallocarray conversion | ||
6176 | |||
6177 | commit ab3600665387ae34785498558c4409e27f495b0b | ||
6178 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6179 | Date: Fri Nov 15 04:12:32 2019 +0000 | ||
6180 | |||
6181 | upstream: don't consult dlopen whitelist for internal security key | ||
6182 | |||
6183 | provider; spotted by dtucker@ | ||
6184 | |||
6185 | OpenBSD-Commit-ID: bfe5fbd17e4ff95dd85b9212181652b54444192e | ||
6186 | |||
6187 | commit 19f8ec428db835f68c1cfd63587e9880ccd6486c | ||
6188 | Author: Damien Miller <djm@mindrot.org> | ||
6189 | Date: Fri Nov 15 15:08:28 2019 +1100 | ||
6190 | |||
6191 | upstream commit | ||
6192 | |||
6193 | revision 1.40 | ||
6194 | date: 2013/09/30 12:02:34; author: millert; state: Exp; lines: +14 -15; | ||
6195 | Use PATH_MAX, NAME_MAX and LOGIN_NAME_MAX not MAXPATHNAMELEN, | ||
6196 | MAXNAMLEN or MAXLOGNAME where possible. OK deraadt@ | ||
6197 | |||
6198 | commit bb7413db98e418d4af791244660abf6c829783f5 | ||
6199 | Author: Damien Miller <djm@mindrot.org> | ||
6200 | Date: Fri Nov 15 15:07:30 2019 +1100 | ||
6201 | |||
6202 | upstream commit | ||
6203 | |||
6204 | revision 1.39 | ||
6205 | date: 2012/01/20 07:09:42; author: tedu; state: Exp; lines: +4 -4; | ||
6206 | the glob stat limit is way too low. bump to 2048. | ||
6207 | while here, failed stats should count against the limit too. | ||
6208 | ok deraadt sthen stsp | ||
6209 | |||
6210 | commit 01362cf7cb979525c014714e2bccf799a46e772e | ||
6211 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6212 | Date: Fri Nov 15 03:41:57 2019 +0000 | ||
6213 | |||
6214 | upstream: U2F tokens may return FIDO_ERR_USER_PRESENCE_REQUIRED when | ||
6215 | |||
6216 | probed to see if they own a key handle. Handle this case so the find_device() | ||
6217 | look can work for them. Reported by Michael Forney | ||
6218 | |||
6219 | OpenBSD-Commit-ID: 2ccd5b30a6ddfe4dba228b7159bf168601bd9166 | ||
6220 | |||
6221 | commit cf62307bc9758105913dcb91b418e4968ac2244d | ||
6222 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6223 | Date: Fri Nov 15 14:01:00 2019 +1100 | ||
6224 | |||
6225 | Add libfido2 to INSTALL. | ||
6226 | |||
6227 | commit 69fbda1894349d1f420c842dfcbcc883239d1aa7 | ||
6228 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6229 | Date: Fri Nov 15 13:42:15 2019 +1100 | ||
6230 | |||
6231 | libcrypto is now optional. | ||
6232 | |||
6233 | commit 45ffa369886e37930776d7c15dd8b973242d6ecc | ||
6234 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6235 | Date: Fri Nov 15 02:38:07 2019 +0000 | ||
6236 | |||
6237 | upstream: show the "please touch your security key" notifier when | ||
6238 | |||
6239 | using the (default) build-in security key support. | ||
6240 | |||
6241 | OpenBSD-Commit-ID: 4707643aaa7124501d14e92d1364b20f312a6428 | ||
6242 | |||
6243 | commit 49dc9fa928d77807c53bdc2898db7fb515fe5eb3 | ||
6244 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6245 | Date: Fri Nov 15 02:37:24 2019 +0000 | ||
6246 | |||
6247 | upstream: close the "touch your security key" notifier on the error | ||
6248 | |||
6249 | path too | ||
6250 | |||
6251 | OpenBSD-Commit-ID: c7628bf80505c1aefbb1de7abc8bb5ee51826829 | ||
6252 | |||
6253 | commit 22a82712e89bf17c27427aeba15795fb4011a0c2 | ||
6254 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6255 | Date: Fri Nov 15 02:20:06 2019 +0000 | ||
6256 | |||
6257 | upstream: correct function name in debug message | ||
6258 | |||
6259 | OpenBSD-Commit-ID: 2482c99d2ce448f39282493050f8a01e3ffc39ab | ||
6260 | |||
6261 | commit 018e2902a65c22faded215a7c588492c948f108c | ||
6262 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6263 | Date: Fri Nov 15 00:32:40 2019 +0000 | ||
6264 | |||
6265 | upstream: follow existing askpass logic for security key notifier: | ||
6266 | |||
6267 | fall back to _PATH_SSH_ASKPASS_DEFAULT if no $SSH_ASKPASS environment | ||
6268 | variable is set. | ||
6269 | |||
6270 | OpenBSD-Commit-ID: cda753726b13fb797bf7a9f7a0b3022d9ade4520 | ||
6271 | |||
6272 | commit 575d0042a94997c1eeb86a6dcfb30b3c7bdbcba3 | ||
6273 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6274 | Date: Thu Nov 14 21:56:52 2019 +0000 | ||
6275 | |||
6276 | upstream: remove debugging goop that snuck in to last commit | ||
6277 | |||
6278 | OpenBSD-Commit-ID: 8ea4455a2d9364a0a04f9e4a2cbfa4c9fcefe77e | ||
6279 | |||
6280 | commit 63a5b24f2dbdc9a4bf2182ac3db26731ddc617e8 | ||
6281 | Author: Damien Miller <djm@mindrot.org> | ||
6282 | Date: Fri Nov 15 11:21:26 2019 +1100 | ||
6283 | |||
6284 | don't fatal if libfido2 not found | ||
6285 | |||
6286 | spotted by dtucker@ | ||
6287 | |||
6288 | commit 129952a81c00c332721b4ba3ede868c720ad7f4e | ||
6289 | Author: Damien Miller <djm@mindrot.org> | ||
6290 | Date: Fri Nov 15 11:17:12 2019 +1100 | ||
6291 | |||
6292 | correct object dependency | ||
6293 | |||
6294 | commit 6bff9521ab9a9f7396d635755c342b72373bb4f9 | ||
6295 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6296 | Date: Thu Nov 14 21:27:29 2019 +0000 | ||
6297 | |||
6298 | upstream: directly support U2F/FIDO2 security keys in OpenSSH by | ||
6299 | |||
6300 | linking against the (previously external) USB HID middleware. The dlopen() | ||
6301 | capability still exists for alternate middlewares, e.g. for Bluetooth, NFC | ||
6302 | and test/debugging. | ||
6303 | |||
6304 | OpenBSD-Commit-ID: 14446cf170ac0351f0d4792ba0bca53024930069 | ||
6305 | |||
6306 | commit 4f5e331cb8e11face3025aa6578662dde489c3ad | ||
6307 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6308 | Date: Wed Nov 13 22:00:21 2019 +0000 | ||
6309 | |||
6310 | upstream: in order to be able to figure out the number of | ||
6311 | |||
6312 | signatures left on a shielded key, we need to transfer the number of | ||
6313 | signatures left from the private to the public key. ok djm@ | ||
6314 | |||
6315 | OpenBSD-Commit-ID: 8a5d0d260aeace47d372695fdae383ce9b962574 | ||
6316 | |||
6317 | commit dffd02e297e6c2a4e86775f293eb1b0ff01fb3df | ||
6318 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6319 | Date: Wed Nov 13 20:25:45 2019 +0000 | ||
6320 | |||
6321 | upstream: fix check for sig_s; noted by qsa at qualys.com | ||
6322 | |||
6323 | OpenBSD-Commit-ID: 34198084e4afb424a859f52c04bb2c9668a52867 | ||
6324 | |||
6325 | commit fc173aeb1526d4268db89ec5dfebaf8750dd26cd | ||
6326 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
6327 | Date: Wed Nov 13 11:25:11 2019 +0000 | ||
6328 | |||
6329 | upstream: When clients get denied by MaxStartups, send a | ||
6330 | |||
6331 | noification prior to the SSH2 protocol banner according to RFC4253 section | ||
6332 | 4.2. ok djm@ deraadt@ markus@ | ||
6333 | |||
6334 | OpenBSD-Commit-ID: e5dabcb722d54dea18eafb336d50b733af4f9c63 | ||
6335 | |||
6336 | commit bf219920b70cafbf29ebc9890ef67d0efa54e738 | ||
6337 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6338 | Date: Wed Nov 13 07:53:10 2019 +0000 | ||
6339 | |||
6340 | upstream: fix shield/unshield for xmss keys: - in ssh-agent we need | ||
6341 | |||
6342 | to delay the call to shield until we have received key specific options. - | ||
6343 | when serializing xmss keys for shield we need to deal with all optional | ||
6344 | components (e.g. state might not be loaded). ok djm@ | ||
6345 | |||
6346 | OpenBSD-Commit-ID: cc2db82524b209468eb176d6b4d6b9486422f41f | ||
6347 | |||
6348 | commit 40598b85d72a509566b7b2a6d57676c7231fed34 | ||
6349 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
6350 | Date: Wed Nov 13 05:42:26 2019 +0000 | ||
6351 | |||
6352 | upstream: remove size_t gl_pathc < 0 test, it is invalid. the | ||
6353 | |||
6354 | return value from glob() is sufficient. discussed with djm | ||
6355 | |||
6356 | OpenBSD-Commit-ID: c91203322db9caaf7efaf5ae90c794a91070be3c | ||
6357 | |||
6358 | commit 72687c8e7c38736e3e64e833ee7aa8f9cd9efed1 | ||
6359 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
6360 | Date: Wed Nov 13 04:47:52 2019 +0000 | ||
6361 | |||
6362 | upstream: stdarg.h required more broadly; ok djm | ||
6363 | |||
6364 | OpenBSD-Commit-ID: b5b15674cde1b54d6dbbae8faf30d47e6e5d6513 | ||
6365 | |||
6366 | commit 1e0b248d47c96be944868a735553af8482300a07 | ||
6367 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6368 | Date: Thu Nov 14 16:08:17 2019 +1100 | ||
6369 | |||
6370 | Put sshsk_sign call inside ifdef ENABLE_SK. | ||
6371 | |||
6372 | Fixes build against OpenSSL configured without ECC. | ||
6373 | |||
6374 | commit 546274a6f89489d2e6be8a8b62f2bb63c87a61fd | ||
6375 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6376 | Date: Wed Nov 13 23:27:31 2019 +1100 | ||
6377 | |||
6378 | Remove duplicate __NR_clock_nanosleep | ||
6379 | |||
6380 | commit b1c82f4b8adf3f42476d8a1f292df33fb7aa1a56 | ||
6381 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6382 | Date: Wed Nov 13 23:19:35 2019 +1100 | ||
6383 | |||
6384 | seccomp: Allow clock_nanosleep() in sandbox. | ||
6385 | |||
6386 | seccomp: Allow clock_nanosleep() to make OpenSSH working with latest | ||
6387 | glibc. Patch from Jakub Jelen <jjelen@redhat.com> via bz #3093. | ||
6388 | |||
6389 | commit 2b523d23804c13cb68db135b919fcf312c42b580 | ||
6390 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6391 | Date: Wed Nov 13 11:56:56 2019 +1100 | ||
6392 | |||
6393 | Include stdarg.h for va_list in xmalloc.h. | ||
6394 | |||
6395 | commit 245dcbdca5374296bdb9c48be6e24bdf6b1c0af7 | ||
6396 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6397 | Date: Wed Nov 13 11:19:26 2019 +1100 | ||
6398 | |||
6399 | Put headers inside ifdef _AIX. | ||
6400 | |||
6401 | Prevents compile errors due to missing definitions (eg va_list) on | ||
6402 | non-AIX platforms. | ||
6403 | |||
6404 | commit a4cc579c6ad2b2e54bdd6cc0d5e12c2288113a56 | ||
6405 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6406 | Date: Wed Nov 13 10:41:41 2019 +1100 | ||
6407 | |||
6408 | Fix comment in match_usergroup_pattern_list. | ||
6409 | |||
6410 | Spotted by balu.gajjala@gmail.com via bz#3092. | ||
6411 | |||
6412 | commit fccff339cab5aa66f2554e0188b83f980683490b | ||
6413 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6414 | Date: Tue Nov 12 22:38:19 2019 +0000 | ||
6415 | |||
6416 | upstream: allow an empty attestation certificate returned by a | ||
6417 | |||
6418 | security key enrollment - these are possible for tokens that only offer self- | ||
6419 | attestation. This also needs support from the middleware. | ||
6420 | |||
6421 | ok markus@ | ||
6422 | |||
6423 | OpenBSD-Commit-ID: 135eeeb937088ef6830a25ca0bbe678dfd2c57cc | ||
6424 | |||
6425 | commit e44bb61824e36d0d181a08489c16c378c486a974 | ||
6426 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6427 | Date: Tue Nov 12 22:36:44 2019 +0000 | ||
6428 | |||
6429 | upstream: security keys typically need to be tapped/touched in | ||
6430 | |||
6431 | order to perform a signature operation. Notify the user when this is expected | ||
6432 | via the TTY (if available) or $SSH_ASKPASS if we can. | ||
6433 | |||
6434 | ok markus@ | ||
6435 | |||
6436 | OpenBSD-Commit-ID: 0ef90a99a85d4a2a07217a58efb4df8444818609 | ||
6437 | |||
6438 | commit 4671211068441519011ac0e38c588317f4157ba1 | ||
6439 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6440 | Date: Tue Nov 12 22:35:02 2019 +0000 | ||
6441 | |||
6442 | upstream: pass SSH_ASKPASS_PROMPT hint to y/n key confirm too | ||
6443 | |||
6444 | OpenBSD-Commit-ID: 08d46712e5e5f1bad0aea68e7717b7bec1ab8959 | ||
6445 | |||
6446 | commit 5d1c1590d736694f41b03e686045f08fcae20d62 | ||
6447 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6448 | Date: Tue Nov 12 22:34:20 2019 +0000 | ||
6449 | |||
6450 | upstream: dd API for performing one-shot notifications via tty or | ||
6451 | |||
6452 | SSH_ASKPASS | ||
6453 | |||
6454 | OpenBSD-Commit-ID: 9484aea33aff5b62ce3642bf259546c7639f23f3 | ||
6455 | |||
6456 | commit 166927fd410823eec8a7b2472463db51e0e6fef5 | ||
6457 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6458 | Date: Tue Nov 12 22:32:48 2019 +0000 | ||
6459 | |||
6460 | upstream: add xvasprintf() | ||
6461 | |||
6462 | OpenBSD-Commit-ID: e5e3671c05c121993b034db935bce1a7aa372247 | ||
6463 | |||
6464 | commit 782093ec6cf64cc6c4078410093359869ea9329f | ||
6465 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6466 | Date: Wed Nov 13 09:08:55 2019 +1100 | ||
6467 | |||
6468 | Remove leftover if statement from sync. | ||
6469 | |||
6470 | commit b556cc3cbf0c43f073bb41bba4e92ca709a1ec13 | ||
6471 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6472 | Date: Tue Nov 12 19:34:40 2019 +0000 | ||
6473 | |||
6474 | upstream: remove extra layer for ed25519 signature; ok djm@ | ||
6475 | |||
6476 | OpenBSD-Commit-ID: 7672d9d0278b4bf656a12d3aab0c0bfe92a8ae47 | ||
6477 | |||
6478 | commit 3fcf69ace19e75cf9dcd7206f396adfcb29611a8 | ||
6479 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6480 | Date: Tue Nov 12 19:34:00 2019 +0000 | ||
6481 | |||
6482 | upstream: check sig_r and sig_s for ssh-sk keys; ok djm | ||
6483 | |||
6484 | OpenBSD-Commit-ID: 1a1e6a85b5f465d447a3800f739e35c5b74e0abc | ||
6485 | |||
6486 | commit 2c55744a56de0ffc81fe445a1e7fc5cd308712b3 | ||
6487 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6488 | Date: Tue Nov 12 19:33:08 2019 +0000 | ||
6489 | |||
6490 | upstream: enable ed25519 support; ok djm | ||
6491 | |||
6492 | OpenBSD-Commit-ID: 1a399c5b3ef15bd8efb916110cf5a9e0b554ab7e | ||
6493 | |||
6494 | commit fd1a3b5e38721b1d69aae2d9de1a1d9155dfa5c7 | ||
6495 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6496 | Date: Tue Nov 12 19:32:30 2019 +0000 | ||
6497 | |||
6498 | upstream: update sk-api to version 2 for ed25519 support; ok djm | ||
6499 | |||
6500 | OpenBSD-Commit-ID: 77aa4d5b6ab17987d8a600907b49573940a0044a | ||
6501 | |||
6502 | commit 7c32b51edbed5bd57870249c0a45dffd06be0002 | ||
6503 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6504 | Date: Tue Nov 12 19:31:45 2019 +0000 | ||
6505 | |||
6506 | upstream: implement sshsk_ed25519_assemble(); ok djm | ||
6507 | |||
6508 | OpenBSD-Commit-ID: af9ec838b9bc643786310b5caefc4ca4754e68c6 | ||
6509 | |||
6510 | commit fe05a36dc0ea884c8c2395d53d804fe4f4202b26 | ||
6511 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6512 | Date: Tue Nov 12 19:31:18 2019 +0000 | ||
6513 | |||
6514 | upstream: implement sshsk_ed25519_inner_sig(); ok djm | ||
6515 | |||
6516 | OpenBSD-Commit-ID: f422d0052c6d948fe0e4b04bc961f37fdffa0910 | ||
6517 | |||
6518 | commit e03a29e6554cd0c9cdbac0dae53dd79e6eb4ea47 | ||
6519 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6520 | Date: Tue Nov 12 19:30:50 2019 +0000 | ||
6521 | |||
6522 | upstream: rename sshsk_ecdsa_sign() to sshsk_sign(); ok djm | ||
6523 | |||
6524 | OpenBSD-Commit-ID: 1524042e09d81e54c4470d7bfcc0194c5b46fe19 | ||
6525 | |||
6526 | commit bc7b5d6187de625c086b5f639b25bbad17bbabfc | ||
6527 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6528 | Date: Tue Nov 12 19:30:21 2019 +0000 | ||
6529 | |||
6530 | upstream: factor out sshsk_ecdsa_inner_sig(); ok djm@ | ||
6531 | |||
6532 | OpenBSD-Commit-ID: 07e41997b542f670a15d7e2807143fe01efef584 | ||
6533 | |||
6534 | commit cef84a062db8cfeece26f067235dc440f6992c17 | ||
6535 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6536 | Date: Tue Nov 12 19:29:54 2019 +0000 | ||
6537 | |||
6538 | upstream: factor out sshsk_ecdsa_assemble(); ok djm@ | ||
6539 | |||
6540 | OpenBSD-Commit-ID: 2313761a3a84ccfe032874d638d3c363e0f14026 | ||
6541 | |||
6542 | commit 7c096c456f33f3d2682736d4735cc10e790276e9 | ||
6543 | Author: markus@openbsd.org <markus@openbsd.org> | ||
6544 | Date: Tue Nov 12 19:29:24 2019 +0000 | ||
6545 | |||
6546 | upstream: implement ssh-ed25519-sk verification; ok djm@ | ||
6547 | |||
6548 | OpenBSD-Commit-ID: 37906d93948a1e3d237c20e713d6ca8fbf7d13f6 | ||
6549 | |||
6550 | commit ba5fb02bed1e556d0ce7b1740ae8a5f87b737491 | ||
6551 | Author: Damien Miller <djm@mindrot.org> | ||
6552 | Date: Wed Nov 13 08:48:30 2019 +1100 | ||
6553 | |||
6554 | ignore ssh-sk-helper | ||
6555 | |||
6556 | commit 78c96498947f711141f493a40d202c482cc59438 | ||
6557 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
6558 | Date: Mon Nov 11 19:53:37 2019 +0000 | ||
6559 | |||
6560 | upstream: skip demanding -fstack-protector-all on hppa. we never | ||
6561 | |||
6562 | wrote a stack protector for reverse-stack architectures, and i don't think | ||
6563 | anyone else did either. a warning per compiled file is just annoying. | ||
6564 | |||
6565 | OpenBSD-Commit-ID: 14806a59353152f843eb349e618abbf6f4dd3ada | ||
6566 | |||
6567 | commit aa1c9e37789f999979fe59df74ce5c8424861ac8 | ||
6568 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6569 | Date: Fri Nov 8 03:54:02 2019 +0000 | ||
6570 | |||
6571 | upstream: duplicate 'x' character in getopt(3) optstring | ||
6572 | |||
6573 | OpenBSD-Commit-ID: 64c81caa0cb5798de3621eca16b7dd22e5d0d8a7 | ||
6574 | |||
6575 | commit aa4c640dc362816d63584a16e786d5e314e24390 | ||
6576 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
6577 | Date: Thu Nov 7 08:38:38 2019 +0000 | ||
6578 | |||
6579 | upstream: Fill in missing man page bits for U2F security key support: | ||
6580 | |||
6581 | Mention the new key types, the ~/.ssh/id_ecdsa_sk file, ssh's | ||
6582 | SecurityKeyProvider keyword, the SSH_SK_PROVIDER environment variable, | ||
6583 | and ssh-keygen's new -w and -x options. | ||
6584 | |||
6585 | Copy the ssh-sk-helper man page from ssh-pkcs11-helper with minimal | ||
6586 | substitutions. | ||
6587 | |||
6588 | ok djm@ | ||
6589 | |||
6590 | OpenBSD-Commit-ID: ef2e8f83d0c0ce11ad9b8c28945747e5ca337ac4 | ||
6591 | |||
6592 | commit b236b27d6dada7f0542214003632b4e9b7aa1380 | ||
6593 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6594 | Date: Sun Nov 3 00:10:43 2019 +1100 | ||
6595 | |||
6596 | Put sftp-realpath in libssh.a | ||
6597 | |||
6598 | and remove it from the specific binary targets. | ||
6599 | |||
6600 | commit 382c18c20cdcec45b5d21ff25b4a5e0df91a68c4 | ||
6601 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6602 | Date: Sun Nov 3 00:09:21 2019 +1100 | ||
6603 | |||
6604 | statfs might be defined in sys/mount.h. | ||
6605 | |||
6606 | eg on old NetBSDs. | ||
6607 | |||
6608 | commit 03ffc0951c305c8e3b5fdc260d65312a57f8f7ea | ||
6609 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6610 | Date: Sat Nov 2 23:25:01 2019 +1100 | ||
6611 | |||
6612 | Put stdint.h inside ifdef HAVE_STDINT_H. | ||
6613 | |||
6614 | commit 19cb64c4b42d4312ce12091fd9436dbd6898998c | ||
6615 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6616 | Date: Sat Nov 2 22:45:44 2019 +1100 | ||
6617 | |||
6618 | Rebuild .depend. | ||
6619 | |||
6620 | commit 3611bfe89b92ada5914526d8ff0919aeb967cfa7 | ||
6621 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6622 | Date: Sat Nov 2 22:42:05 2019 +1100 | ||
6623 | |||
6624 | Define __BSD_VISIBLE in fnmatch.h. | ||
6625 | |||
6626 | .. since we use symbols defined only when it is when using the compat | ||
6627 | fnmatch. | ||
6628 | |||
6629 | commit f5cc5816aaddb8eca3cba193f53e99d6a0b37d05 | ||
6630 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6631 | Date: Sat Nov 2 16:39:38 2019 +1100 | ||
6632 | |||
6633 | Only enable U2F if OpenSSL supports ECC. | ||
6634 | |||
6635 | This requires moving the U2F bits to below the OpenSSL parts so we have | ||
6636 | the required information. ok djm@ | ||
6637 | |||
6638 | commit ad38406fc95fa223b0ef2edf8ff50508f8ab1cb6 | ||
6639 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
6640 | Date: Fri Nov 1 12:10:43 2019 +0000 | ||
6641 | |||
6642 | upstream: fix miscellaneous text problems; ok djm@ | ||
6643 | |||
6644 | OpenBSD-Commit-ID: 0cbf411a14d8fa0b269b69cbb1b4fc0ca699fe9f | ||
6645 | |||
6646 | commit 9cac151c2dc76b8e5b727b2fa216f572e372170f | ||
6647 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6648 | Date: Fri Nov 1 18:26:07 2019 +1100 | ||
6649 | |||
6650 | Add flags needed to build and work on Ultrix. | ||
6651 | |||
6652 | commit 0e3c5bc50907d2058407641b5a3581b7eda91b7e | ||
6653 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6654 | Date: Fri Nov 1 18:24:29 2019 +1100 | ||
6655 | |||
6656 | Hook up fnmatch for platforms that don't have it. | ||
6657 | |||
6658 | commit b56dbfd9d967e5b6ce7be9f81f206112e19e1030 | ||
6659 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6660 | Date: Fri Nov 1 18:17:42 2019 +1100 | ||
6661 | |||
6662 | Add missing bracket in realpath macro. | ||
6663 | |||
6664 | commit 59ccb56f15e5e530e7c1b5a0b361749d8c6217d5 | ||
6665 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6666 | Date: Fri Nov 1 17:32:47 2019 +1100 | ||
6667 | |||
6668 | Import fnmatch.c from OpenBSD. | ||
6669 | |||
6670 | commit 79d46de9fbea0f3c0e8ae7cf84effaba089071b0 | ||
6671 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6672 | Date: Fri Nov 1 15:22:32 2019 +1100 | ||
6673 | |||
6674 | Use sftp_realpath if no native realpath. | ||
6675 | |||
6676 | commit bb4f003ed8c5f61ec74a66bcedc8ab19bf5b35c4 | ||
6677 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6678 | Date: Fri Nov 1 15:06:16 2019 +1100 | ||
6679 | |||
6680 | Configure flags for haiku from haikuports. | ||
6681 | |||
6682 | Should build with the default flags with ./configure | ||
6683 | |||
6684 | commit 4332b4fe49360679647a8705bc08f4e81323f6b4 | ||
6685 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6686 | Date: Fri Nov 1 03:54:33 2019 +0000 | ||
6687 | |||
6688 | upstream: fix a race condition in the SIGCHILD handler that could turn | ||
6689 | |||
6690 | in to a kill(-1); bz3084, reported by Gao Rui, ok dtucker@ | ||
6691 | |||
6692 | OpenBSD-Commit-ID: ac2742e04a69d4c34223505b6a32f6d686e18896 | ||
6693 | |||
6694 | commit 03f9205f0fb49ea2507eacc143737a8511ae5a4e | ||
6695 | Author: Damien Miller <djm@mindrot.org> | ||
6696 | Date: Fri Nov 1 14:49:25 2019 +1100 | ||
6697 | |||
6698 | conditionalise SK sign/verify on ENABLE_SK | ||
6699 | |||
6700 | Spotted by Darren and his faux-Vax | ||
6701 | |||
6702 | commit 5eb7b9563ff818e17de24231bf2d347d9db302c5 | ||
6703 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6704 | Date: Fri Nov 1 14:41:07 2019 +1100 | ||
6705 | |||
6706 | Add prototype for localtime_r if needed. | ||
6707 | |||
6708 | commit d500b59a825f6a58f2abf7b04eb1992d81e45d58 | ||
6709 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6710 | Date: Fri Nov 1 13:42:12 2019 +1100 | ||
6711 | |||
6712 | Check if IP_TOS is defined before using. | ||
6713 | |||
6714 | commit 764d51e04460ec0da12e05e4777bc90c116accb9 | ||
6715 | Author: Damien Miller <djm@mindrot.org> | ||
6716 | Date: Fri Nov 1 13:34:49 2019 +1100 | ||
6717 | |||
6718 | autoconf pieces for U2F support | ||
6719 | |||
6720 | Mostly following existing logic for PKCS#11 - turning off support | ||
6721 | when either libcrypto or dlopen(3) are unavailable. | ||
6722 | |||
6723 | commit 45f17a159acfc5a8e450bfbcc2cffe72950ed7a3 | ||
6724 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6725 | Date: Fri Nov 1 02:32:05 2019 +0000 | ||
6726 | |||
6727 | upstream: remove duplicate PUBKEY_DEFAULT_PK_ALG on !WITH_OPENSSL path | ||
6728 | |||
6729 | OpenBSD-Commit-ID: 95a7cafad2a4665d57cabacc28031fabc0bea9fc | ||
6730 | |||
6731 | commit db8d13f7925da7337df87248995c533e111637ec | ||
6732 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6733 | Date: Fri Nov 1 02:06:52 2019 +0000 | ||
6734 | |||
6735 | upstream: more additional source files | ||
6736 | |||
6737 | OpenBSD-Regress-ID: 8eaa25fb901594aee23b76eda99dca5b8db94c6f | ||
6738 | |||
6739 | commit f89c5df65dd307739ff22319c2cf847d3b0c5ab4 | ||
6740 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6741 | Date: Fri Nov 1 02:04:25 2019 +0000 | ||
6742 | |||
6743 | upstream: additional source files here too | ||
6744 | |||
6745 | OpenBSD-Regress-ID: 8809f8e1c8f7459e7096ab6b58d8e56cb2f483fd | ||
6746 | |||
6747 | commit 02275afa1ecbfbd39f27d34c97090e76bec232ec | ||
6748 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6749 | Date: Fri Nov 1 02:03:27 2019 +0000 | ||
6750 | |||
6751 | upstream: additional source files here too | ||
6752 | |||
6753 | OpenBSD-Regress-ID: 09297e484327f911fd353489518cceaa0c1b95ce | ||
6754 | |||
6755 | commit dfc8f01b9886c7999e6e20acf3f7492cb8c80796 | ||
6756 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6757 | Date: Fri Nov 1 01:57:59 2019 +0000 | ||
6758 | |||
6759 | upstream: adapt to extra sshkey_sign() argument and additional | ||
6760 | |||
6761 | dependencies | ||
6762 | |||
6763 | OpenBSD-Regress-ID: 7a25604968486c4d6f81d06e8fbc7d17519de50e | ||
6764 | |||
6765 | commit afa59e26eeb44a93f36f043f60b936eaddae77c4 | ||
6766 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6767 | Date: Fri Nov 1 01:55:41 2019 +0000 | ||
6768 | |||
6769 | upstream: skip security-key key types for tests until we have a | ||
6770 | |||
6771 | dummy U2F middleware to use. | ||
6772 | |||
6773 | OpenBSD-Regress-ID: 37200462b44334a4ad45e6a1f7ad1bd717521a95 | ||
6774 | |||
6775 | commit de871e4daf346a712c78fa4ab8f18b231a47cb85 | ||
6776 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
6777 | Date: Fri Nov 1 00:52:35 2019 +0000 | ||
6778 | |||
6779 | upstream: sort; | ||
6780 | |||
6781 | OpenBSD-Commit-ID: 8264b0be01ec5a60602bd50fd49cc3c81162ea16 | ||
6782 | |||
6783 | commit 2aae149a34b1b5dfbef423d3b7999a96818969bb | ||
6784 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6785 | Date: Thu Oct 31 21:37:33 2019 +0000 | ||
6786 | |||
6787 | upstream: undo debugging bits that shouldn't have been committed | ||
6788 | |||
6789 | OpenBSD-Commit-ID: 4bd5551b306df55379afe17d841207990eb773bf | ||
6790 | |||
6791 | commit 3420e0464bd0e8fedcfa5fd20ad37bdc740ad5b4 | ||
6792 | Author: Damien Miller <djm@mindrot.org> | ||
6793 | Date: Fri Nov 1 09:24:58 2019 +1100 | ||
6794 | |||
6795 | depend | ||
6796 | |||
6797 | commit b923a90abc7bccb11a513dc8b5c0f13a0ea9682c | ||
6798 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6799 | Date: Thu Oct 31 21:28:27 2019 +0000 | ||
6800 | |||
6801 | upstream: fix -Wshadow warning | ||
6802 | |||
6803 | OpenBSD-Commit-ID: 3441eb04f872a00c2483c11a5f1570dfe775103c | ||
6804 | |||
6805 | commit 9a14c64c38fc14d0029f1c7bc70cf62cc7f0fdf9 | ||
6806 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6807 | Date: Thu Oct 31 21:23:19 2019 +0000 | ||
6808 | |||
6809 | upstream: Refactor signing - use sshkey_sign for everything, | ||
6810 | |||
6811 | including the new U2F signatures. | ||
6812 | |||
6813 | Don't use sshsk_ecdsa_sign() directly, instead make it reachable via | ||
6814 | sshkey_sign() like all other signature operations. This means that | ||
6815 | we need to add a provider argument to sshkey_sign(), so most of this | ||
6816 | change is mechanically adding that. | ||
6817 | |||
6818 | Suggested by / ok markus@ | ||
6819 | |||
6820 | OpenBSD-Commit-ID: d5193a03fcfa895085d91b2b83d984a9fde76c8c | ||
6821 | |||
6822 | commit 07da39f71d36fb547749a5b16aa8892e621a7e4a | ||
6823 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6824 | Date: Thu Oct 31 21:22:01 2019 +0000 | ||
6825 | |||
6826 | upstream: ssh-agent support for U2F/FIDO keys | ||
6827 | |||
6828 | feedback & ok markus@ | ||
6829 | |||
6830 | OpenBSD-Commit-ID: bb544a44bc32e45d2ec8bf652db2046f38360acb | ||
6831 | |||
6832 | commit eebec620c9519c4839d781c4d5b6082152998f82 | ||
6833 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6834 | Date: Thu Oct 31 21:20:38 2019 +0000 | ||
6835 | |||
6836 | upstream: ssh AddKeysToAgent support for U2F/FIDO keys | ||
6837 | |||
6838 | feedback & ok markus@ | ||
6839 | |||
6840 | OpenBSD-Commit-ID: ac08e45c7f995fa71f8d661b3f582e38cc0a2f91 | ||
6841 | |||
6842 | commit 486164d060314a7f8bca2a00f53be9e900c5e74d | ||
6843 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6844 | Date: Thu Oct 31 21:19:56 2019 +0000 | ||
6845 | |||
6846 | upstream: ssh-add support for U2F/FIDO keys | ||
6847 | |||
6848 | OpenBSD-Commit-ID: 7f88a5181c982687afedf3130c6ab2bba60f7644 | ||
6849 | |||
6850 | commit b9dd14d3091e31fb836f69873d3aa622eb7b4a1c | ||
6851 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6852 | Date: Thu Oct 31 21:19:14 2019 +0000 | ||
6853 | |||
6854 | upstream: add new agent key constraint for U2F/FIDO provider | ||
6855 | |||
6856 | feedback & ok markus@ | ||
6857 | |||
6858 | OpenBSD-Commit-ID: d880c380170704280b4003860a1744d286c7a172 | ||
6859 | |||
6860 | commit 884416bdb10468f1252e4d7c13d51b43dccba7f6 | ||
6861 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6862 | Date: Thu Oct 31 21:18:28 2019 +0000 | ||
6863 | |||
6864 | upstream: ssh client support for U2F/FIDO keys | ||
6865 | |||
6866 | OpenBSD-Commit-ID: eb2cfa6cf7419a1895e06e398ea6d41516c5b0bc | ||
6867 | |||
6868 | commit 01a0670f69c5b86e471e033b92145d6c7cc77c58 | ||
6869 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6870 | Date: Thu Oct 31 21:17:49 2019 +0000 | ||
6871 | |||
6872 | upstream: Separate myproposal.h userauth pubkey types | ||
6873 | |||
6874 | U2F/FIDO keys are not supported for host authentication, so we need | ||
6875 | a separate list for user keys. | ||
6876 | |||
6877 | feedback & ok markus@ | ||
6878 | |||
6879 | OpenBSD-Commit-ID: 7fe2e6ab85f9f2338866e5af8ca2d312abbf0429 | ||
6880 | |||
6881 | commit 23f38c2d8cda3fad24e214e1f0133c42435b54ee | ||
6882 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6883 | Date: Thu Oct 31 21:17:09 2019 +0000 | ||
6884 | |||
6885 | upstream: ssh-keygen support for generating U2F/FIDO keys | ||
6886 | |||
6887 | OpenBSD-Commit-ID: 6ce04f2b497ac9dd8c327f76f1e6c724fb1d1b37 | ||
6888 | |||
6889 | commit ed3467c1e16b7396ff7fcf12d2769261512935ec | ||
6890 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6891 | Date: Thu Oct 31 21:16:20 2019 +0000 | ||
6892 | |||
6893 | upstream: U2F/FIDO middleware interface | ||
6894 | |||
6895 | Supports enrolling (generating) keys and signatures. | ||
6896 | |||
6897 | feedback & ok markus@ | ||
6898 | |||
6899 | OpenBSD-Commit-ID: 73d1dd5939454f9c7bd840f48236cba41e8ad592 | ||
6900 | |||
6901 | commit 02bb0768a937e50bbb236efc2bbdddb1991b1c85 | ||
6902 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6903 | Date: Thu Oct 31 21:15:14 2019 +0000 | ||
6904 | |||
6905 | upstream: Initial infrastructure for U2F/FIDO support | ||
6906 | |||
6907 | Key library support: including allocation, marshalling public/private | ||
6908 | keys and certificates, signature validation. | ||
6909 | |||
6910 | feedback & ok markus@ | ||
6911 | |||
6912 | OpenBSD-Commit-ID: a17615ba15e0f7932ac4360cb18fc9a9544e68c7 | ||
6913 | |||
6914 | commit 57ecc10628b04c384cbba2fbc87d38b74cd1199d | ||
6915 | Author: djm@openbsd.org <djm@openbsd.org> | ||
6916 | Date: Thu Oct 31 21:14:17 2019 +0000 | ||
6917 | |||
6918 | upstream: Protocol documentation for U2F/FIDO keys in OpenSSH | ||
6919 | |||
6920 | OpenBSD-Commit-ID: 8f3247317c2909870593aeb306dff848bc427915 | ||
6921 | |||
6922 | commit f4fdcd2b7a2bbf5d8770d44565173ca5158d4dcb | ||
6923 | Author: Damien Miller <djm@mindrot.org> | ||
6924 | Date: Fri Nov 1 08:36:16 2019 +1100 | ||
6925 | |||
6926 | Missing unit test files | ||
6927 | |||
6928 | commit 1bcd1169c5221688418fa38606e9c69055b72451 | ||
6929 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6930 | Date: Tue Oct 29 19:45:03 2019 +1100 | ||
6931 | |||
6932 | Add implementation of localtime_r. | ||
6933 | |||
6934 | commit 2046ed16c1202431b0307674c33a123a113e8297 | ||
6935 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
6936 | Date: Tue Oct 29 07:47:27 2019 +0000 | ||
6937 | |||
6938 | upstream: Signal handler cleanup: remove leftover support for | ||
6939 | |||
6940 | unreliable signals and now-unneeded save and restore of errno. ok deraadt@ | ||
6941 | markus@ | ||
6942 | |||
6943 | OpenBSD-Commit-ID: 01dd8a1ebdd991c8629ba1f5237283341a93cd88 | ||
6944 | |||
6945 | commit 70fc9a6ca4dd33cb2dd400a4dad5db9683a3d284 | ||
6946 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
6947 | Date: Tue Oct 22 08:50:35 2019 +0000 | ||
6948 | |||
6949 | upstream: fixes from lucas; | ||
6950 | |||
6951 | OpenBSD-Commit-ID: 4c4bfd2806c5bbc753788ffe19c5ee13aaf418b2 | ||
6952 | |||
6953 | commit 702368aa4381c3b482368257ac574a87b5a80938 | ||
6954 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
6955 | Date: Tue Oct 22 07:06:35 2019 +0000 | ||
6956 | |||
6957 | upstream: Import regenerated moduli file. | ||
6958 | |||
6959 | OpenBSD-Commit-ID: 58ec755be4e51978ecfee73539090eb68652a987 | ||
6960 | |||
6961 | commit 5fe81da22652f8caa63e9e3a1af519a85d36337e | ||
6962 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6963 | Date: Mon Oct 28 21:19:47 2019 +1100 | ||
6964 | |||
6965 | Fix ifdefs to not mask needed bits. | ||
6966 | |||
6967 | commit 7694e9d2fb5785bbdd0920dce7a160bd79feaf00 | ||
6968 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6969 | Date: Mon Oct 28 17:05:36 2019 +1100 | ||
6970 | |||
6971 | Only use RLIMIT_NOFILE if it's defined. | ||
6972 | |||
6973 | commit d561b0b2fa2531b4cc3bc70a7d657c6485c9fd0b | ||
6974 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6975 | Date: Mon Oct 28 16:09:04 2019 +1100 | ||
6976 | |||
6977 | Make sure we have struct statfs before using. | ||
6978 | |||
6979 | commit 2912596aecfcf48e5115c7a906d1e664f7717a4b | ||
6980 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6981 | Date: Mon Oct 28 16:06:59 2019 +1100 | ||
6982 | |||
6983 | Define UINT32_MAX if needed. | ||
6984 | |||
6985 | commit 7169e31121e8c8cc729b55154deb722ae495b316 | ||
6986 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6987 | Date: Mon Oct 28 16:00:45 2019 +1100 | ||
6988 | |||
6989 | Move utimensat definition into timespec section. | ||
6990 | |||
6991 | Since utimensat uses struct timespec, move it to the section where we | ||
6992 | define struct timespec when needed. | ||
6993 | |||
6994 | commit 850ec1773d656cbff44d78a79e369dc262ce5853 | ||
6995 | Author: Darren Tucker <dtucker@dtucker.net> | ||
6996 | Date: Mon Oct 28 15:57:22 2019 +1100 | ||
6997 | |||
6998 | Wrap OpenSSL bits in WITH_OPENSSL. | ||
6999 | |||
7000 | commit 6fc7e1c6fec3ba589869ae98e968c0e5e2e4695b | ||
7001 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7002 | Date: Mon Oct 28 15:53:25 2019 +1100 | ||
7003 | |||
7004 | Wrap poll.h includes in HAVE_POLL_H. | ||
7005 | |||
7006 | commit 9239a18f96905cc1a353e861e33af093652f24e7 | ||
7007 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7008 | Date: Thu Oct 24 14:39:49 2019 +1100 | ||
7009 | |||
7010 | Add a function call stackprotector tests. | ||
7011 | |||
7012 | Including a function call in the test programs for the gcc stack | ||
7013 | protector flag tests exercises more of the compiler and makes it more | ||
7014 | likely it'll detect problems. | ||
7015 | |||
7016 | commit b9705393be4612fd5e29d0cd8e7cf2b66ed19eb7 | ||
7017 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7018 | Date: Tue Oct 22 18:09:22 2019 +1100 | ||
7019 | |||
7020 | Import regenerated moduli file. | ||
7021 | |||
7022 | commit 76ed2199491397e0f9902ade80d5271e4a9b2630 | ||
7023 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7024 | Date: Wed Oct 16 06:05:39 2019 +0000 | ||
7025 | |||
7026 | upstream: potential NULL dereference for revoked hostkeys; reported | ||
7027 | |||
7028 | by krishnaiah bommu | ||
7029 | |||
7030 | OpenBSD-Commit-ID: 35ff685e7cc9dd2e3fe2e3dfcdcb9bc5c79f6506 | ||
7031 | |||
7032 | commit 6500c3bc71bf4fe14972c1177e6b93f1164d07a4 | ||
7033 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7034 | Date: Wed Oct 16 06:03:30 2019 +0000 | ||
7035 | |||
7036 | upstream: free buf before return; reported by krishnaiah bommu | ||
7037 | |||
7038 | OpenBSD-Commit-ID: 091bb23a6e913af5d4f72c50030b53ce1cef4de1 | ||
7039 | |||
7040 | commit d7d116b6d9e6cb79cc235e9801caa683d3db3181 | ||
7041 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7042 | Date: Mon Oct 14 06:00:02 2019 +0000 | ||
7043 | |||
7044 | upstream: memleak in error path; spotted by oss-fuzz, ok markus@ | ||
7045 | |||
7046 | OpenBSD-Commit-ID: d6ed260cbbc297ab157ad63931802fb1ef7a4266 | ||
7047 | |||
7048 | commit 9b9e3ca6945351eefb821ff783a4a8e6d9b98b9a | ||
7049 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7050 | Date: Fri Oct 11 14:12:16 2019 +1100 | ||
7051 | |||
7052 | Re-add SA_RESTART to mysignal. | ||
7053 | |||
7054 | This makes mysignal implement reliable BSD semantics according to | ||
7055 | Stevens' APUE. This was first attempted in 2001 but was reverted | ||
7056 | due to problems with HP-UX 10.20 and select() and possibly grantpt(). | ||
7057 | Modern systems should be fine with it, but if any current platforms have | ||
7058 | a problem with it now we can disable it just for those. ok djm@ | ||
7059 | |||
7060 | commit 0bd312a362168c1eae3cd6b3889395a78e6fd0f8 | ||
7061 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7062 | Date: Thu Oct 10 09:42:03 2019 +1100 | ||
7063 | |||
7064 | Fix ifdef typo for declaration of memmem. | ||
7065 | |||
7066 | Fixes build on IRIX. bz#3081. | ||
7067 | |||
7068 | commit 01ce1cd402d5eecde2bba35b67e08f5b266b37fd | ||
7069 | Author: Abhishek Arya <inferno@chromium.org> | ||
7070 | Date: Tue Oct 8 20:19:18 2019 -0700 | ||
7071 | |||
7072 | Update README.md | ||
7073 | |||
7074 | commit 1ba130ac8fb2884307f658126f04578f8aef409e | ||
7075 | Author: Damien Miller <djm@mindrot.org> | ||
7076 | Date: Wed Oct 9 13:49:35 2019 +1100 | ||
7077 | |||
7078 | add a fuzzer for private key parsing | ||
7079 | |||
7080 | commit cdf1d0a9f5d18535e0a18ff34860e81a6d83aa5c | ||
7081 | Author: Damien Miller <djm@mindrot.org> | ||
7082 | Date: Wed Oct 9 11:31:03 2019 +1100 | ||
7083 | |||
7084 | prepare for 8.1 release | ||
7085 | |||
7086 | commit 3b4e56d740b74324e2d7542957cad5a11518f455 | ||
7087 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7088 | Date: Wed Oct 9 00:04:57 2019 +0000 | ||
7089 | |||
7090 | upstream: openssh-8.1 | ||
7091 | |||
7092 | OpenBSD-Commit-ID: 3356bb34e2aa287f0e6d6773c9ae659dc680147d | ||
7093 | |||
7094 | commit 29e0ecd9b4eb3b9f305e2240351f0c59cad9ef81 | ||
7095 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7096 | Date: Wed Oct 9 00:04:42 2019 +0000 | ||
7097 | |||
7098 | upstream: fix an unreachable integer overflow similar to the XMSS | ||
7099 | |||
7100 | case, and some other NULL dereferences found by fuzzing. | ||
7101 | |||
7102 | fix with and ok markus@ | ||
7103 | |||
7104 | OpenBSD-Commit-ID: 0f81adbb95ef887ce586953e1cb225fa45c7a47b | ||
7105 | |||
7106 | commit a546b17bbaeb12beac4c9aeed56f74a42b18a93a | ||
7107 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7108 | Date: Wed Oct 9 00:02:57 2019 +0000 | ||
7109 | |||
7110 | upstream: fix integer overflow in XMSS private key parsing. | ||
7111 | |||
7112 | Reported by Adam Zabrocki via SecuriTeam's SSH program. | ||
7113 | |||
7114 | Note that this code is experimental and not compiled by default. | ||
7115 | |||
7116 | ok markus@ | ||
7117 | |||
7118 | OpenBSD-Commit-ID: cd0361896d15e8a1bac495ac583ff065ffca2be1 | ||
7119 | |||
7120 | commit c2cc25480ba36ab48c1a577bebb12493865aad87 | ||
7121 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7122 | Date: Tue Oct 8 22:40:39 2019 +0000 | ||
7123 | |||
7124 | upstream: Correct type for end-of-list sentinel; fixes initializer | ||
7125 | |||
7126 | warnings on some platforms. ok deraadt. | ||
7127 | |||
7128 | OpenBSD-Commit-ID: a990dbc2dac25bdfa07e79321349c73fd991efa2 | ||
7129 | |||
7130 | commit e827aedf8818e75c0016b47ed8fc231427457c43 | ||
7131 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7132 | Date: Mon Oct 7 23:10:38 2019 +0000 | ||
7133 | |||
7134 | upstream: reversed test yielded incorrect debug message | ||
7135 | |||
7136 | OpenBSD-Commit-ID: 78bb512d04cfc238adb2c5b7504ac93eecf523b3 | ||
7137 | |||
7138 | commit 8ca491d29fbe26e5909ce22b344c0a848dc28d55 | ||
7139 | Author: Damien Miller <djm@mindrot.org> | ||
7140 | Date: Tue Oct 8 17:05:57 2019 +1100 | ||
7141 | |||
7142 | depend | ||
7143 | |||
7144 | commit 86a0323374cbd404629e75bb320b3fa1c16aaa6b | ||
7145 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7146 | Date: Wed Oct 9 09:36:06 2019 +1100 | ||
7147 | |||
7148 | Make MAKE_CLONE no-op macro more correct. | ||
7149 | |||
7150 | Similar to the previous change to DEF_WEAK, some compilers don't like | ||
7151 | the empty statement, so convert into a no-op function prototype. | ||
7152 | |||
7153 | commit cfc1897a2002ec6c4dc879b24e8b3153c87ea2cf | ||
7154 | Author: Damien Miller <djm@mindrot.org> | ||
7155 | Date: Wed Oct 9 09:06:35 2019 +1100 | ||
7156 | |||
7157 | wrap stdint.h include in HAVE_STDINT_H | ||
7158 | |||
7159 | make the indenting a little more consistent too.. | ||
7160 | |||
7161 | Fixes Solaris 2.6; reported by Tom G. Christensen | ||
7162 | |||
7163 | commit 13b3369830a43b89a503915216a23816d1b25744 | ||
7164 | Author: Damien Miller <djm@mindrot.org> | ||
7165 | Date: Tue Oct 8 15:32:02 2019 +1100 | ||
7166 | |||
7167 | avoid "return (value)" in void-declared function | ||
7168 | |||
7169 | spotted by Tim Rice; ok dtucker | ||
7170 | |||
7171 | commit 0c7f8d2326d812b371f7afd63aff846973ec80a4 | ||
7172 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7173 | Date: Tue Oct 8 14:44:50 2019 +1100 | ||
7174 | |||
7175 | Make DEF_WEAK more likely to be correct. | ||
7176 | |||
7177 | Completely nop-ing out DEF_WEAK leaves an empty statemment which some | ||
7178 | compilers don't like. Replace with a no-op function template. ok djm@ | ||
7179 | |||
7180 | commit b1e79ea8fae9c252399677a28707661d85c7d00c | ||
7181 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7182 | Date: Sun Oct 6 11:49:50 2019 +0000 | ||
7183 | |||
7184 | upstream: Instead of running sed over the whole log to remove CRs, | ||
7185 | |||
7186 | remove them only where it's needed (and confuses test(1) on at least OS X in | ||
7187 | portable). | ||
7188 | |||
7189 | OpenBSD-Regress-ID: a6ab9b4bd1d33770feaf01b2dfb96f9e4189d2d0 | ||
7190 | |||
7191 | commit 8dc7d6b75a7f746fdd056acd41dffc0a13557a4c | ||
7192 | Author: Eduardo Barretto <ebarretto@linux.vnet.ibm.com> | ||
7193 | Date: Tue May 9 13:33:30 2017 -0300 | ||
7194 | |||
7195 | Enable specific ioctl call for EP11 crypto card (s390) | ||
7196 | |||
7197 | The EP11 crypto card needs to make an ioctl call, which receives an | ||
7198 | specific argument. This crypto card is for s390 only. | ||
7199 | |||
7200 | Signed-off-by: Eduardo Barretto <ebarretto@linux.vnet.ibm.com> | ||
7201 | |||
7202 | commit 07f2c7f34951c04d2cd796ac6c80e47c56c4969e | ||
7203 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7204 | Date: Fri Oct 4 04:31:59 2019 +0000 | ||
7205 | |||
7206 | upstream: fix memory leak in error path; bz#3074 patch from | ||
7207 | |||
7208 | krishnaiah.bommu@intel.com, ok dtucker | ||
7209 | |||
7210 | OpenBSD-Commit-ID: d031853f3ecf47b35a0669588f4d9d8e3b307b3c | ||
7211 | |||
7212 | commit b7fbc75e119170f4d15c94a7fda4a1050e0871d6 | ||
7213 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7214 | Date: Fri Oct 4 04:13:39 2019 +0000 | ||
7215 | |||
7216 | upstream: space | ||
7217 | |||
7218 | OpenBSD-Commit-ID: 350648bcf00a2454e7ef998b7d88e42552b348ac | ||
7219 | |||
7220 | commit 643ab68c79ac1644f4a31e36928c2bfc8a51db3c | ||
7221 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7222 | Date: Fri Oct 4 03:39:19 2019 +0000 | ||
7223 | |||
7224 | upstream: more sshsig regress tests: check key revocation, the | ||
7225 | |||
7226 | check-novalidate signature test mode and signing keys in ssh-agent. | ||
7227 | |||
7228 | From Sebastian Kinne (slightly tweaked) | ||
7229 | |||
7230 | OpenBSD-Regress-ID: b39566f5cec70140674658cdcedf38752a52e2e2 | ||
7231 | |||
7232 | commit 714031a10bbe378a395a93cf1040f4ee1451f45f | ||
7233 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7234 | Date: Fri Oct 4 03:26:58 2019 +0000 | ||
7235 | |||
7236 | upstream: Check for gmtime failure in moduli generation. Based on | ||
7237 | |||
7238 | patch from krishnaiah.bommu@intel.com, ok djm@ | ||
7239 | |||
7240 | OpenBSD-Commit-ID: 4c6a4cde0022188ac83737de08da0e875704eeaa | ||
7241 | |||
7242 | commit 6918974405cc28ed977f802fd97a9c9a9b2e141b | ||
7243 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7244 | Date: Thu Oct 3 17:07:50 2019 +0000 | ||
7245 | |||
7246 | upstream: use a more common options order in SYNOPSIS and sync | ||
7247 | |||
7248 | usage(); while here, no need for Bk/Ek; | ||
7249 | |||
7250 | ok dtucker | ||
7251 | |||
7252 | OpenBSD-Commit-ID: 38715c3f10b166f599a2283eb7bc14860211bb90 | ||
7253 | |||
7254 | commit feff96b7d4c0b99307f0459cbff128aede4a8984 | ||
7255 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7256 | Date: Wed Oct 2 09:50:50 2019 +0000 | ||
7257 | |||
7258 | upstream: thinko in previous; spotted by Mantas | ||
7259 | |||
7260 | =?UTF-8?q?=20Mikul=C4=97nas?= | ||
7261 | MIME-Version: 1.0 | ||
7262 | Content-Type: text/plain; charset=UTF-8 | ||
7263 | Content-Transfer-Encoding: 8bit | ||
7264 | |||
7265 | OpenBSD-Commit-ID: ffa3f5a45e09752fc47d9041e2203ee2ec15b24d | ||
7266 | |||
7267 | commit b5a89eec410967d6b712665f8cf0cb632928d74b | ||
7268 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7269 | Date: Wed Oct 2 08:07:13 2019 +0000 | ||
7270 | |||
7271 | upstream: make signature format match PROTOCO | ||
7272 | |||
7273 | =?UTF-8?q?=20as=20a=20string,=20not=20raw=20bytes.=20Spotted=20by=20Manta?= | ||
7274 | =?UTF-8?q?s=20Mikul=C4=97nas?= | ||
7275 | MIME-Version: 1.0 | ||
7276 | Content-Type: text/plain; charset=UTF-8 | ||
7277 | Content-Transfer-Encoding: 8bit | ||
7278 | |||
7279 | OpenBSD-Commit-ID: 80fcc6d52893f80c6de2bedd65353cebfebcfa8f | ||
7280 | |||
7281 | commit dc6f81ee94995deb11bbf7e19801022c5f6fd90a | ||
7282 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7283 | Date: Wed Oct 2 08:05:50 2019 +0000 | ||
7284 | |||
7285 | upstream: ban empty namespace strings for s | ||
7286 | |||
7287 | =?UTF-8?q?shsig;=20spotted=20by=20Mantas=20Mikul=C4=97nas?= | ||
7288 | MIME-Version: 1.0 | ||
7289 | Content-Type: text/plain; charset=UTF-8 | ||
7290 | Content-Transfer-Encoding: 8bit | ||
7291 | |||
7292 | OpenBSD-Commit-ID: 7c5bcf40bed8f4e826230176f4aa353c52aeb698 | ||
7293 | |||
7294 | commit fa5bd8107e0e2b3e1e184f55d0f9320c119f65f0 | ||
7295 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7296 | Date: Wed Oct 2 14:30:55 2019 +1000 | ||
7297 | |||
7298 | Put ssherr.h back as it's actually needed. | ||
7299 | |||
7300 | commit 3ef92a657444f172b61f92d5da66d94fa8265602 | ||
7301 | Author: Lonnie Abelbeck <lonnie@abelbeck.com> | ||
7302 | Date: Tue Oct 1 09:05:09 2019 -0500 | ||
7303 | |||
7304 | Deny (non-fatal) shmget/shmat/shmdt in preauth privsep child. | ||
7305 | |||
7306 | New wait_random_seeded() function on OpenSSL 1.1.1d uses shmget, shmat, and shmdt | ||
7307 | in the preauth codepath, deny (non-fatal) in seccomp_filter sandbox. | ||
7308 | |||
7309 | commit edd1d3a6261aecbf9a55944fd7be1db83571b46e | ||
7310 | Author: Damien Miller <djm@mindrot.org> | ||
7311 | Date: Wed Oct 2 10:54:28 2019 +1000 | ||
7312 | |||
7313 | remove duplicate #includes | ||
7314 | |||
7315 | Prompted by Jakub Jelen | ||
7316 | |||
7317 | commit 13c508dfed9f25e6e54c984ad00a74ef08539e70 | ||
7318 | Author: Damien Miller <djm@mindrot.org> | ||
7319 | Date: Wed Oct 2 10:51:15 2019 +1000 | ||
7320 | |||
7321 | typo in comment | ||
7322 | |||
7323 | commit d0c3ac427f6c52b872d6617421421dd791664445 | ||
7324 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7325 | Date: Wed Oct 2 00:42:30 2019 +0000 | ||
7326 | |||
7327 | upstream: remove some duplicate #includes | ||
7328 | |||
7329 | OpenBSD-Commit-ID: ed6827ab921eff8027669848ef4f70dc1da4098c | ||
7330 | |||
7331 | commit 084682786d9275552ee93857cb36e43c446ce92c | ||
7332 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7333 | Date: Tue Oct 1 10:22:53 2019 +0000 | ||
7334 | |||
7335 | upstream: revert unconditional forced login implemented in r1.41 of | ||
7336 | |||
7337 | ssh-pkcs11.c; r1.45 added a forced login as a fallback for cases where the | ||
7338 | token returns no objects and this is less disruptive for users of tokens | ||
7339 | directly in ssh (rather than via ssh-agent) and in ssh-keygen | ||
7340 | |||
7341 | bz3006, patch from Jakub Jelen; ok markus | ||
7342 | |||
7343 | OpenBSD-Commit-ID: 33d6df589b072094384631ff93b1030103b3d02e | ||
7344 | |||
7345 | commit 6c91d42cce3f055917dc3fd2c305dfc5b3b584b3 | ||
7346 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7347 | Date: Sun Sep 29 16:31:57 2019 +0000 | ||
7348 | |||
7349 | upstream: group and sort single letter options; ok deraadt | ||
7350 | |||
7351 | OpenBSD-Commit-ID: e1480e760a2b582f79696cdcff70098e23fc603f | ||
7352 | |||
7353 | commit 3b44bf39ff4d7ef5d50861e2e9dda62d2926d2fe | ||
7354 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7355 | Date: Fri Sep 27 20:03:24 2019 +0000 | ||
7356 | |||
7357 | upstream: fix the DH-GEX text in -a; because this required a comma, | ||
7358 | |||
7359 | i added a comma to the first part, for balance... | ||
7360 | |||
7361 | OpenBSD-Commit-ID: 2c3464e9e82a41e8cdfe8f0a16d94266e43dbb58 | ||
7362 | |||
7363 | commit 3e53ef28fab53094e3b19622ba0e9c3d5fe71273 | ||
7364 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
7365 | Date: Tue Sep 24 12:50:46 2019 +0000 | ||
7366 | |||
7367 | upstream: identity_file[] should be PATH_MAX, not the arbitrary | ||
7368 | |||
7369 | number 1024 | ||
7370 | |||
7371 | OpenBSD-Commit-ID: e775f94ad47ce9ab37bd1410d7cf3b7ea98b11b7 | ||
7372 | |||
7373 | commit 90d4b2541e8c907793233d9cbd4963f7624f4174 | ||
7374 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7375 | Date: Fri Sep 20 18:50:58 2019 +0000 | ||
7376 | |||
7377 | upstream: new sentence, new line; | ||
7378 | |||
7379 | OpenBSD-Commit-ID: c35ca5ec07be460e95e7406af12eee04a77b6698 | ||
7380 | |||
7381 | commit fbec7dba01b70b49ac47f56031310865dff86200 | ||
7382 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7383 | Date: Mon Sep 30 18:01:12 2019 +1000 | ||
7384 | |||
7385 | Include stdio.h for snprintf. | ||
7386 | |||
7387 | Patch from vapier@gentoo.org. | ||
7388 | |||
7389 | commit 0a403bfde71c4b82147473298d3a60b4171468bd | ||
7390 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7391 | Date: Mon Sep 30 14:11:42 2019 +1000 | ||
7392 | |||
7393 | Add SKIP_LTESTS for skipping specific tests. | ||
7394 | |||
7395 | commit 4d59f7a5169c451ebf559aedec031ac9da2bf80c | ||
7396 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7397 | Date: Fri Sep 27 05:25:12 2019 +0000 | ||
7398 | |||
7399 | upstream: Test for empty result in expected bits. Remove CRs from log | ||
7400 | |||
7401 | as they confuse tools on some platforms. Re-enable the 3des-cbc test. | ||
7402 | |||
7403 | OpenBSD-Regress-ID: edf536d4f29fc1ba412889b37247a47f1b49d250 | ||
7404 | |||
7405 | commit 7c817d129e2d48fc8a6f7965339313023ec45765 | ||
7406 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7407 | Date: Fri Sep 27 15:26:22 2019 +1000 | ||
7408 | |||
7409 | Re-enable dhgex test. | ||
7410 | |||
7411 | Since we've added larger fallback groups to dh.c this test will pass | ||
7412 | even if there is no moduli file installed on the system. | ||
7413 | |||
7414 | commit c1e0a32fa852de6d1c82ece4f76add0ab0ca0eae | ||
7415 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7416 | Date: Tue Sep 24 21:17:20 2019 +1000 | ||
7417 | |||
7418 | Add more ToS bits, currently only used by netcat. | ||
7419 | |||
7420 | commit 5a273a33ca1410351cb484af7db7c13e8b4e8e4e | ||
7421 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7422 | Date: Thu Sep 19 15:41:23 2019 +1000 | ||
7423 | |||
7424 | Privsep is now required. | ||
7425 | |||
7426 | commit 8aa2aa3cd4d27d14e74b247c773696349472ef20 | ||
7427 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7428 | Date: Mon Sep 16 03:23:02 2019 +0000 | ||
7429 | |||
7430 | upstream: Allow testing signature syntax and validity without verifying | ||
7431 | |||
7432 | that a signature came from a trusted signer. To discourage accidental or | ||
7433 | unintentional use, this is invoked by the deliberately ugly option name | ||
7434 | "check-novalidate" | ||
7435 | |||
7436 | from Sebastian Kinne | ||
7437 | |||
7438 | OpenBSD-Commit-ID: cea42c36ab7d6b70890e2d8635c1b5b943adcc0b | ||
7439 | |||
7440 | commit 7047d5afe3103f0f07966c05b810682d92add359 | ||
7441 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7442 | Date: Fri Sep 13 04:52:34 2019 +0000 | ||
7443 | |||
7444 | upstream: clarify that IdentitiesOnly also applies to the default | ||
7445 | |||
7446 | ~/.ssh/id_* keys; bz#3062 | ||
7447 | |||
7448 | OpenBSD-Commit-ID: 604be570e04646f0f4a17026f8b2aada6a585dfa | ||
7449 | |||
7450 | commit b36ee3fcb2f1601693b1b7fd60dd6bd96006ea75 | ||
7451 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7452 | Date: Fri Sep 13 04:36:43 2019 +0000 | ||
7453 | |||
7454 | upstream: Plug mem leaks on error paths, based in part on github | ||
7455 | |||
7456 | pr#120 from David Carlier. ok djm@. | ||
7457 | |||
7458 | OpenBSD-Commit-ID: c57adeb1022a8148fc86e5a88837b3b156dbdb7e | ||
7459 | |||
7460 | commit 2aefdf1aef906cf7548a2e5927d35aacb55948d4 | ||
7461 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7462 | Date: Fri Sep 13 04:31:19 2019 +0000 | ||
7463 | |||
7464 | upstream: whitespace | ||
7465 | |||
7466 | OpenBSD-Commit-ID: 57a71dd5f4cae8d61e0ac631a862589fb2bfd700 | ||
7467 | |||
7468 | commit fbe24b142915331ceb2a3a76be3dc5b6d204fddf | ||
7469 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7470 | Date: Fri Sep 13 04:27:35 2019 +0000 | ||
7471 | |||
7472 | upstream: allow %n to be expanded in ProxyCommand strings | ||
7473 | |||
7474 | From Zachary Harmany via github.com/openssh/openssh-portable/pull/118 | ||
7475 | ok dtucker@ | ||
7476 | |||
7477 | OpenBSD-Commit-ID: 7eebf1b7695f50c66d42053d352a4db9e8fb84b6 | ||
7478 | |||
7479 | commit 2ce1d11600e13bee0667d6b717ffcc18a057b821 | ||
7480 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7481 | Date: Fri Sep 13 04:07:42 2019 +0000 | ||
7482 | |||
7483 | upstream: clarify that ConnectTimeout applies both to the TCP | ||
7484 | |||
7485 | connection and to the protocol handshake/KEX. From Jean-Charles Longuet via | ||
7486 | Github PR140 | ||
7487 | |||
7488 | OpenBSD-Commit-ID: ce1766abc6da080f0d88c09c2c5585a32b2256bf | ||
7489 | |||
7490 | commit df780114278f406ef7cb2278802a2660092fff09 | ||
7491 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7492 | Date: Mon Sep 9 02:31:19 2019 +0000 | ||
7493 | |||
7494 | upstream: Fix potential truncation warning. ok deraadt. | ||
7495 | |||
7496 | OpenBSD-Commit-ID: d87b7e3a94ec935e8194e7fce41815e22804c3ff | ||
7497 | |||
7498 | commit ec0e6243660bf2df30c620a6a0d83eded376c9c6 | ||
7499 | Author: Damien Miller <djm@mindrot.org> | ||
7500 | Date: Fri Sep 13 13:14:39 2019 +1000 | ||
7501 | |||
7502 | memleak of buffer in sshpam_query | ||
7503 | |||
7504 | coverity report via Ed Maste; ok dtucker@ | ||
7505 | |||
7506 | commit c17e4638e5592688264fc0349f61bfc7b4425aa5 | ||
7507 | Author: Damien Miller <djm@mindrot.org> | ||
7508 | Date: Fri Sep 13 13:12:42 2019 +1000 | ||
7509 | |||
7510 | explicitly test set[ug]id() return values | ||
7511 | |||
7512 | Legacy !_POSIX_SAVED_IDS path only; coverity report via Ed Maste | ||
7513 | ok dtucker@ | ||
7514 | |||
7515 | commit 91a2135f32acdd6378476c5bae475a6e7811a6a2 | ||
7516 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
7517 | Date: Fri Sep 6 14:45:34 2019 +0000 | ||
7518 | |||
7519 | upstream: Allow prepending a list of algorithms to the default set | ||
7520 | |||
7521 | by starting the list with the '^' character, e.g. | ||
7522 | |||
7523 | HostKeyAlgorithms ^ssh-ed25519 | ||
7524 | Ciphers ^aes128-gcm@openssh.com,aes256-gcm@openssh.com | ||
7525 | |||
7526 | ok djm@ dtucker@ | ||
7527 | |||
7528 | OpenBSD-Commit-ID: 1e1996fac0dc8a4b0d0ff58395135848287f6f97 | ||
7529 | |||
7530 | commit c8bdd2db77ac2369d5cdee237656f266c8f41552 | ||
7531 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7532 | Date: Fri Sep 6 07:53:40 2019 +0000 | ||
7533 | |||
7534 | upstream: key conversion should fail for !openssl builds, not fall | ||
7535 | |||
7536 | through to the key generation code | ||
7537 | |||
7538 | OpenBSD-Commit-ID: b957436adc43c4941e61d61958a193a708bc83c9 | ||
7539 | |||
7540 | commit 823f6c37eb2d8191d45539f7b6fa877a4cb4ed3d | ||
7541 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7542 | Date: Fri Sep 6 06:08:11 2019 +0000 | ||
7543 | |||
7544 | upstream: typo in previous | ||
7545 | |||
7546 | OpenBSD-Commit-ID: 7c3b94110864771a6b80a0d8acaca34037c3c96e | ||
7547 | |||
7548 | commit 6a710d3e06fd375e2c2ae02546b9541c488a2cdb | ||
7549 | Author: Damien Miller <djm@mindrot.org> | ||
7550 | Date: Sun Sep 8 14:48:11 2019 +1000 | ||
7551 | |||
7552 | needs time.h for --without-openssl | ||
7553 | |||
7554 | commit f61f29afda6c71eda26effa54d3c2e5306fd0833 | ||
7555 | Author: Damien Miller <djm@mindrot.org> | ||
7556 | Date: Sat Sep 7 19:25:00 2019 +1000 | ||
7557 | |||
7558 | make unittests pass for no-openssl case | ||
7559 | |||
7560 | commit 105e1c9218940eb53473f55a9177652d889ddbad | ||
7561 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7562 | Date: Fri Sep 6 05:59:41 2019 +0000 | ||
7563 | |||
7564 | upstream: avoid compiling certain files that deeply depend on | ||
7565 | |||
7566 | libcrypto when WITH_OPENSSL isn't set | ||
7567 | |||
7568 | OpenBSD-Commit-ID: 569f08445c27124ec7c7f6c0268d844ec56ac061 | ||
7569 | |||
7570 | commit 670104b923dd97b1c06c0659aef7c3e52af571b2 | ||
7571 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7572 | Date: Fri Sep 6 05:23:55 2019 +0000 | ||
7573 | |||
7574 | upstream: fixes for !WITH_OPENSSL compilation; ok dtucker@ | ||
7575 | |||
7576 | OpenBSD-Commit-ID: 7fd68eaa9e0f7482b5d4c7e8d740aed4770a839f | ||
7577 | |||
7578 | commit be02d7cbde3d211ec2ed2320a1f7d86b2339d758 | ||
7579 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7580 | Date: Fri Sep 6 04:53:27 2019 +0000 | ||
7581 | |||
7582 | upstream: lots of things were relying on libcrypto headers to | ||
7583 | |||
7584 | transitively include various system headers (mostly stdlib.h); include them | ||
7585 | explicitly | ||
7586 | |||
7587 | OpenBSD-Commit-ID: 5b522f4f2d844f78bf1cc4f3f4cc392e177b2080 | ||
7588 | |||
7589 | commit d05aaaaadcad592abfaa44540928e0c61ef72ebb | ||
7590 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7591 | Date: Fri Sep 6 03:30:42 2019 +0000 | ||
7592 | |||
7593 | upstream: remove leakmalloc reference; we used this early when | ||
7594 | |||
7595 | refactoring but not since | ||
7596 | |||
7597 | OpenBSD-Commit-ID: bb28ebda8f7c490b87b37954044a6cdd43a7eb2c | ||
7598 | |||
7599 | commit 1268f0bcd8fc844ac6c27167888443c8350005eb | ||
7600 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7601 | Date: Fri Sep 6 04:24:06 2019 +0000 | ||
7602 | |||
7603 | upstream: Check for RSA support before using it for the user key, | ||
7604 | |||
7605 | otherwise use ed25519 which is supported when built without OpenSSL. | ||
7606 | |||
7607 | OpenBSD-Regress-ID: 3d23ddfe83c5062f00ac845d463f19a2ec78c0f7 | ||
7608 | |||
7609 | commit fd7a2dec652b9efc8e97f03f118f935dce732c60 | ||
7610 | Author: Darren Tucker <dtucker@dtucker.net> | ||
7611 | Date: Fri Sep 6 14:07:10 2019 +1000 | ||
7612 | |||
7613 | Provide explicit path to configure-check. | ||
7614 | |||
7615 | On some platforms (at least OpenBSD) make won't search VPATH for target | ||
7616 | files, so building out-of-tree will fail at configure-check. Provide | ||
7617 | explicit path. ok djm@ | ||
7618 | |||
7619 | commit 00865c29690003b4523cc09a0e104724b9f911a4 | ||
7620 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7621 | Date: Fri Sep 6 01:58:50 2019 +0000 | ||
7622 | |||
7623 | upstream: better error code for bad arguments; inspired by | ||
7624 | |||
7625 | OpenBSD-Commit-ID: dfc263b6041de7f0ed921a1de0b81ddebfab1e0a | ||
7626 | |||
7627 | commit afdf27f5aceb4973b9f5308f4310c6e3fd8db1fb | ||
7628 | Author: Damien Miller <djm@mindrot.org> | ||
7629 | Date: Thu Sep 5 21:38:40 2019 +1000 | ||
7630 | |||
7631 | revert config.h/config.h.in freshness checks | ||
7632 | |||
7633 | turns out autoreconf and configure don't touch some files if their content | ||
7634 | doesn't change, so the mtime can't be relied upon in a makefile rule | ||
7635 | |||
7636 | commit a97609e850c57bd2cc2fe7e175fc35cb865bc834 | ||
7637 | Author: Damien Miller <djm@mindrot.org> | ||
7638 | Date: Thu Sep 5 20:54:39 2019 +1000 | ||
7639 | |||
7640 | extend autoconf freshness test | ||
7641 | |||
7642 | make it cover config.h.in and config.h separately | ||
7643 | |||
7644 | commit 182297c10edb21c4856c6a38326fd04d81de41a5 | ||
7645 | Author: Damien Miller <djm@mindrot.org> | ||
7646 | Date: Thu Sep 5 20:34:54 2019 +1000 | ||
7647 | |||
7648 | check that configure/config.h is up to date | ||
7649 | |||
7650 | Ensure they are newer than the configure.ac / aclocal.m4 source | ||
7651 | |||
7652 | commit 7d6034bd020248e9fc0f8c39c71c858debd0d0c1 | ||
7653 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7654 | Date: Thu Sep 5 10:05:51 2019 +0000 | ||
7655 | |||
7656 | upstream: if a PKCS#11 token returns no keys then try to login and | ||
7657 | |||
7658 | refetch them. Based on patch from Jakub Jelen; bz#2430 ok markus@ | ||
7659 | |||
7660 | OpenBSD-Commit-ID: ab53bd6ddd54dd09e54a8bfbed1a984496f08b43 | ||
7661 | |||
7662 | commit 76f09bd95917862101b740afb19f4db5ccc752bf | ||
7663 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7664 | Date: Thu Sep 5 09:35:19 2019 +0000 | ||
7665 | |||
7666 | upstream: sprinkle in some explicit errors here, otherwise the | ||
7667 | |||
7668 | percolate all the way up to dispatch_run_fatal() and lose all meaninful | ||
7669 | context | ||
7670 | |||
7671 | to help with bz#3063; ok dtucker@ | ||
7672 | |||
7673 | OpenBSD-Commit-ID: 5b2da83bb1c4a3471444b7910b2120ae36438a0a | ||
7674 | |||
7675 | commit 0ea332497b2b2fc3995f72f6bafe9d664c0195b3 | ||
7676 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7677 | Date: Thu Sep 5 09:25:13 2019 +0000 | ||
7678 | |||
7679 | upstream: only send ext_info for KEX_INITIAL; bz#2929 ok dtucker | ||
7680 | |||
7681 | OpenBSD-Commit-ID: 00f5c6062f6863769f5447c6346f78c05d2e4a63 | ||
7682 | |||
7683 | commit f23d91f9fa7f6f42e70404e000fac88aebfe3076 | ||
7684 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7685 | Date: Thu Sep 5 05:47:23 2019 +0000 | ||
7686 | |||
7687 | upstream: macro fix; ok djm | ||
7688 | |||
7689 | OpenBSD-Commit-ID: e891dd6c7996114cb32f0924cb7898ab55efde6e | ||
7690 | |||
7691 | commit 8b57337c1c1506df2bb9f039d0628a6de618566b | ||
7692 | Author: Damien Miller <djm@mindrot.org> | ||
7693 | Date: Thu Sep 5 15:46:39 2019 +1000 | ||
7694 | |||
7695 | update fuzzing makefile to more recent clang | ||
7696 | |||
7697 | commit ae631ad77daf8fd39723d15a687cd4b1482cbae8 | ||
7698 | Author: Damien Miller <djm@mindrot.org> | ||
7699 | Date: Thu Sep 5 15:45:32 2019 +1000 | ||
7700 | |||
7701 | fuzzer for sshsig allowed_signers option parsing | ||
7702 | |||
7703 | commit 69159afe24120c97e5ebaf81016c85968afb903e | ||
7704 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7705 | Date: Thu Sep 5 05:42:59 2019 +0000 | ||
7706 | |||
7707 | upstream: memleak on error path; found by libfuzzer | ||
7708 | |||
7709 | OpenBSD-Commit-ID: 34d44cb0fb5bdb5fcbc6b02b804e71b20a7a5fc7 | ||
7710 | |||
7711 | commit bab6feb01f9924758ca7129dba708298a53dde5f | ||
7712 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7713 | Date: Thu Sep 5 04:55:32 2019 +0000 | ||
7714 | |||
7715 | upstream: expose allowed_signers options parsing code in header for | ||
7716 | |||
7717 | fuzzing | ||
7718 | |||
7719 | rename to make more consistent with philosophically-similar auth | ||
7720 | options parsing API. | ||
7721 | |||
7722 | OpenBSD-Commit-ID: 0c67600ef04187f98e2912ca57b60c22a8025b7c | ||
7723 | |||
7724 | commit 4f9d75fbafde83d428e291516f8ce98e6b3a7c4b | ||
7725 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
7726 | Date: Wed Sep 4 20:31:15 2019 +0000 | ||
7727 | |||
7728 | upstream: Call comma-separated lists as such to clarify semantics. | ||
7729 | |||
7730 | Options such as Ciphers take values that may be a list of ciphers; the | ||
7731 | complete list, not indiviual elements, may be prefixed with a dash or plus | ||
7732 | character to remove from or append to the default list, respectively. | ||
7733 | |||
7734 | Users might read the current text as if each elment took an optional prefix, | ||
7735 | so tweak the wording from "values" to "list" to prevent such ambiguity for | ||
7736 | all options supporting these semantics. | ||
7737 | |||
7738 | Fix instances missed in first commit. ok jmc@ kn@ | ||
7739 | |||
7740 | OpenBSD-Commit-ID: 7112522430a54fb9f15a7a26d26190ed84d5e417 | ||
7741 | |||
7742 | commit db1e6f60f03641b2d17e0ab062242609f4ed4598 | ||
7743 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
7744 | Date: Wed Sep 4 05:56:54 2019 +0000 | ||
7745 | |||
7746 | upstream: tweak previous; | ||
7747 | |||
7748 | OpenBSD-Commit-ID: 0abd728aef6b5b35f6db43176aa83b7e3bf3ce27 | ||
7749 | |||
7750 | commit 0f44e5956c7c816f6600f2a47be4d7bb5a8d711d | ||
7751 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
7752 | Date: Tue Sep 3 20:51:49 2019 +0000 | ||
7753 | |||
7754 | upstream: repair typo and editing mishap | ||
7755 | |||
7756 | OpenBSD-Commit-ID: d125ab720ca71ccf9baf83e08ddc8c12a328597e | ||
7757 | |||
7758 | commit f4846dfc6a79f84bbc6356ae3184f142bacedc24 | ||
7759 | Author: Damien Miller <djm@mindrot.org> | ||
7760 | Date: Thu Sep 5 11:09:28 2019 +1000 | ||
7761 | |||
7762 | Fuzzer harness for sshsig | ||
7763 | |||
7764 | commit b08a6bc1cc7750c6f8a425d1cdbd86552fffc637 | ||
7765 | Author: Damien Miller <djm@mindrot.org> | ||
7766 | Date: Tue Sep 3 18:45:42 2019 +1000 | ||
7767 | |||
7768 | oops; missed including the actual file | ||
7769 | |||
7770 | commit 1a72c0dd89f09754df443c9576dde624a17d7dd0 | ||
7771 | Author: Damien Miller <djm@mindrot.org> | ||
7772 | Date: Tue Sep 3 18:44:10 2019 +1000 | ||
7773 | |||
7774 | portability fixes for sshsig | ||
7775 | |||
7776 | commit 6d6427d01304d967e58544cf1c71d2b4394c0522 | ||
7777 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7778 | Date: Tue Sep 3 08:37:45 2019 +0000 | ||
7779 | |||
7780 | upstream: regress test for sshsig; feedback and ok markus@ | ||
7781 | |||
7782 | OpenBSD-Regress-ID: 74c0974f2cdae8d9599b9d76a09680bae55d8a8b | ||
7783 | |||
7784 | commit 59650f0eaf65115afe04c39abfb93a4fc994ec55 | ||
7785 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7786 | Date: Tue Sep 3 08:37:06 2019 +0000 | ||
7787 | |||
7788 | upstream: only add plain keys to prevent any certs laying around | ||
7789 | |||
7790 | from confusing the test. | ||
7791 | |||
7792 | OpenBSD-Regress-ID: b8f1508f822bc560b98dea910e61ecd76f34100f | ||
7793 | |||
7794 | commit d637c4aee6f9b5280c13c020d7653444ac1fcaa5 | ||
7795 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7796 | Date: Tue Sep 3 08:35:27 2019 +0000 | ||
7797 | |||
7798 | upstream: sshsig tweaks and improvements from and suggested by | ||
7799 | |||
7800 | Markus | ||
7801 | |||
7802 | ok markus/me | ||
7803 | |||
7804 | OpenBSD-Commit-ID: ea4f46ad5a16b27af96e08c4877423918c4253e9 | ||
7805 | |||
7806 | commit 2a9c9f7272c1e8665155118fe6536bebdafb6166 | ||
7807 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7808 | Date: Tue Sep 3 08:34:19 2019 +0000 | ||
7809 | |||
7810 | upstream: sshsig: lightweight signature and verification ability | ||
7811 | |||
7812 | for OpenSSH | ||
7813 | |||
7814 | This adds a simple manual signature scheme to OpenSSH. | ||
7815 | Signatures can be made and verified using ssh-keygen -Y sign|verify | ||
7816 | |||
7817 | Signatures embed the key used to make them. At verification time, this | ||
7818 | is matched via principal name against an authorized_keys-like list | ||
7819 | of allowed signers. | ||
7820 | |||
7821 | Mostly by Sebastian Kinne w/ some tweaks by me | ||
7822 | |||
7823 | ok markus@ | ||
7824 | |||
7825 | OpenBSD-Commit-ID: 2ab568e7114c933346616392579d72be65a4b8fb | ||
7826 | |||
7827 | commit 5485f8d50a5bc46aeed829075ebf5d9c617027ea | ||
7828 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7829 | Date: Tue Sep 3 08:32:11 2019 +0000 | ||
7830 | |||
7831 | upstream: move authorized_keys option parsing helpsers to misc.c | ||
7832 | |||
7833 | and make them public; ok markus@ | ||
7834 | |||
7835 | OpenBSD-Commit-ID: c18bcb2a687227b3478377c981c2d56af2638ea2 | ||
7836 | |||
7837 | commit f8df0413f0a057b6a3d3dd7bd8bc7c5d80911d3a | ||
7838 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7839 | Date: Tue Sep 3 08:31:20 2019 +0000 | ||
7840 | |||
7841 | upstream: make get_sigtype public as sshkey_get_sigtype(); ok | ||
7842 | |||
7843 | markus@ | ||
7844 | |||
7845 | OpenBSD-Commit-ID: 01f8cdbec63350490d2249f41112c5780d1cfbb8 | ||
7846 | |||
7847 | commit dd8002fbe63d903ffea5be7b7f5fc2714acab4a0 | ||
7848 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7849 | Date: Tue Sep 3 08:30:47 2019 +0000 | ||
7850 | |||
7851 | upstream: move advance_past_options to authfile.c and make it | ||
7852 | |||
7853 | public; ok markus@ | ||
7854 | |||
7855 | OpenBSD-Commit-ID: edda2fbba2c5b1f48e60f857a2010479e80c5f3c | ||
7856 | |||
7857 | commit c72d78ccbe642e08591a626e5de18381489716e0 | ||
7858 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7859 | Date: Tue Sep 3 08:29:58 2019 +0000 | ||
7860 | |||
7861 | upstream: move skip_space() to misc.c and make it public; ok | ||
7862 | |||
7863 | markus@ | ||
7864 | |||
7865 | OpenBSD-Commit-ID: caa77e8a3b210948e29ad3e28c5db00852961eae | ||
7866 | |||
7867 | commit 06af3583f46e2c327fdd44d8a95b8b4e8dfd8db5 | ||
7868 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7869 | Date: Tue Sep 3 08:29:15 2019 +0000 | ||
7870 | |||
7871 | upstream: authfd: add function to check if key is in agent | ||
7872 | |||
7873 | This commit adds a helper function which allows the caller to | ||
7874 | check if a given public key is present in ssh-agent. | ||
7875 | |||
7876 | work by Sebastian Kinne; ok markus@ | ||
7877 | |||
7878 | OpenBSD-Commit-ID: d43c5826353e1fdc1af71eb42961b30782c7bd13 | ||
7879 | |||
7880 | commit 2ab5a8464870cc4b29ddbe849bbbc255729437bf | ||
7881 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7882 | Date: Tue Sep 3 08:28:30 2019 +0000 | ||
7883 | |||
7884 | upstream: fix memleak in ssh_free_identitylist(); ok markus@ | ||
7885 | |||
7886 | OpenBSD-Commit-ID: aa51f77ae2c5330a1f61b2d22933f24a443f9abf | ||
7887 | |||
7888 | commit 85443f165b4169b2a448b3e24bc1d4dc5b3156a4 | ||
7889 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7890 | Date: Tue Sep 3 08:27:52 2019 +0000 | ||
7891 | |||
7892 | upstream: factor out confirm_overwrite(); ok markus@ | ||
7893 | |||
7894 | OpenBSD-Commit-ID: 304e95381b39c774c8fced7e5328b106a3ff0400 | ||
7895 | |||
7896 | commit 9a396e33685633581c67d5ad9664570ef95281f2 | ||
7897 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7898 | Date: Mon Sep 2 23:46:46 2019 +0000 | ||
7899 | |||
7900 | upstream: constify an argument | ||
7901 | |||
7902 | OpenBSD-Commit-ID: 724bafc9f993746ad4303e95bede2c030de6233b | ||
7903 | |||
7904 | commit b52c0c2e64988277a35a955a474d944967059aeb | ||
7905 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7906 | Date: Mon Sep 2 00:19:25 2019 +0000 | ||
7907 | |||
7908 | upstream: downgrade PKCS#11 "provider returned no slots" warning | ||
7909 | |||
7910 | from log level error to debug. This is common when attempting to enumerate | ||
7911 | keys on smartcard readers with no cards plugged in. bz#3058 ok dtucker@ | ||
7912 | |||
7913 | OpenBSD-Commit-ID: bb8839ddeb77c271390488af1b771041d43e49c6 | ||
7914 | |||
7915 | commit 0713322e18162463c5ab5ddfb9f935055ca775d8 | ||
7916 | Author: djm@openbsd.org <djm@openbsd.org> | ||
7917 | Date: Sun Sep 1 23:47:32 2019 +0000 | ||
7918 | |||
7919 | upstream: print comment when printing pubkey from private | ||
7920 | |||
7921 | bz#3052; ok dtucker | ||
7922 | |||
7923 | OpenBSD-Commit-ID: a91b2a8d5f1053d34d7fce44523c53fb534ba914 | ||
7924 | |||
7925 | commit 368f1cc2fbd6ad10c66bc1b67c2c04aebf8a04a8 | ||
7926 | Author: Damien Miller <djm@mindrot.org> | ||
7927 | Date: Mon Sep 2 10:28:42 2019 +1000 | ||
7928 | |||
7929 | fixed test in OSX closefrom() replacement | ||
7930 | |||
7931 | from likan_999.student AT sina.com | ||
7932 | |||
7933 | commit 6b7c53498def19a14dd9587bf521ab6dbee8988f | ||
7934 | Author: Damien Miller <djm@mindrot.org> | ||
7935 | Date: Mon Sep 2 10:22:02 2019 +1000 | ||
7936 | |||
7937 | retain Solaris PRIV_FILE_LINK_ANY in sftp-server | ||
7938 | |||
7939 | Dropping this privilege removes the ability to create hard links to | ||
7940 | files owned by other users. This is required for the legacy sftp rename | ||
7941 | operation. | ||
7942 | |||
7943 | bz#3036; approach ok Alex Wilson (the original author of the Solaris | ||
7944 | sandbox/pledge replacement code) | ||
7945 | |||
7946 | commit e50f808712393e86d69e42e9847cdf8d473412d7 | ||
7947 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
7948 | Date: Fri Aug 30 05:08:28 2019 +0000 | ||
7949 | |||
7950 | upstream: Use ed25519 for most hostkey rotation tests since it's | ||
7951 | |||
7952 | supported even when built without OpenSSL. Use RSA for the secondary type | ||
7953 | test if supported, otherwise skip it. Fixes this test for !OpenSSL builds. | ||
7954 | |||
7955 | OpenBSD-Regress-ID: 101cb34a84fd974c623bdb2e496f25a6e91be109 | ||
7956 | |||
7957 | commit 5e4796c47dd8d6c38fb2ff0b3e817525fed6040d | ||
7958 | Author: bluhm@openbsd.org <bluhm@openbsd.org> | ||
7959 | Date: Thu Aug 22 21:47:27 2019 +0000 | ||
7960 | |||
7961 | upstream: Test did not compile due to missing symbols. Add source | ||
7962 | |||
7963 | sshbuf-misc.c to regress as it was done in ssh make file. from Moritz Buhl | ||
7964 | |||
7965 | OpenBSD-Regress-ID: 9e1c23476bb845f3cf3d15d9032da3ed0cb2fcf5 | ||
7966 | |||
7967 | commit e0e7e3d0e26f2c30697e6d0cfc293414908963c7 | ||
7968 | Author: Damien Miller <djm@mindrot.org> | ||
7969 | Date: Fri Aug 30 14:26:19 2019 +1000 | ||
7970 | |||
7971 | tweak warning flags | ||
7972 | |||
7973 | Enable -Wextra if compiler supports it | ||
7974 | |||
7975 | Set -Wno-error=format-truncation if available to prevent expected | ||
7976 | string truncations in openbsd-compat from breaking -Werror builds | ||
7977 | |||
7978 | commit 28744182cf90e0073b76a9e98de58a47e688b2c4 | ||
7979 | Author: Damien Miller <djm@mindrot.org> | ||
7980 | Date: Fri Aug 30 13:21:38 2019 +1000 | ||
7981 | |||
7982 | proc_pidinfo()-based closefrom() for OS X | ||
7983 | |||
7984 | Refactor closefrom() to use a single brute-force close() loop fallback. | ||
7985 | |||
7986 | Based on patch from likan_999.student@sina.com in bz#3049. ok dtucker@ | ||
7987 | |||
7988 | commit dc2ca588144f088a54febebfde3414568dc73d5f | ||
7989 | Author: kn@openbsd.org <kn@openbsd.org> | ||
7990 | Date: Fri Aug 16 11:16:32 2019 +0000 | ||
7991 | |||
7992 | upstream: Call comma-separated lists as such to clarify semantics | ||
7993 | |||
7994 | Options such as Ciphers take values that may be a list of ciphers; the | ||
7995 | complete list, not indiviual elements, may be prefixed with a dash or plus | ||
7996 | character to remove from or append to the default list respectively. | ||
7997 | |||
7998 | Users might read the current text as if each elment took an optional prefix, | ||
7999 | so tweak the wording from "values" to "list" to prevent such ambiguity for | ||
8000 | all options supporting this semantics (those that provide a list of | ||
8001 | available elements via "ssh -Q ..."). | ||
8002 | |||
8003 | Input and OK jmc | ||
8004 | |||
8005 | OpenBSD-Commit-ID: 4fdd175b0e5f5cb10ab3f26ccc38a93bb6515d57 | ||
8006 | |||
8007 | commit c4736f39e66729ce2bf5b06ee6b391e092b48f47 | ||
8008 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8009 | Date: Fri Aug 16 06:35:27 2019 +0000 | ||
8010 | |||
8011 | upstream: include sshbuf-misc.c in SRCS_BASE | ||
8012 | |||
8013 | OpenBSD-Commit-ID: 99dd10e72c04e93849981d43d64c946619efa474 | ||
8014 | |||
8015 | commit d0e51810f332fe44ebdba41113aacf319d35f5a5 | ||
8016 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8017 | Date: Sat Aug 24 15:12:11 2019 +1000 | ||
8018 | |||
8019 | Fix pasto in fallback code. | ||
8020 | |||
8021 | There is no parameter called "pathname", it should simply be "path". | ||
8022 | bz#3059, patch from samuel at cendio.se. | ||
8023 | |||
8024 | commit e83c989bfd9fc9838b7dfb711d1dc6da81814045 | ||
8025 | Author: Damien Miller <djm@mindrot.org> | ||
8026 | Date: Fri Aug 23 10:19:30 2019 +1000 | ||
8027 | |||
8028 | use SC_ALLOW_ARG_MASK to limit mmap protections | ||
8029 | |||
8030 | Restrict to PROT_(READ|WRITE|NONE), i.e. exclude PROT_EXEC | ||
8031 | |||
8032 | commit f6906f9bf12c968debec3671bbf19926ff8a235b | ||
8033 | Author: Damien Miller <djm@mindrot.org> | ||
8034 | Date: Fri Aug 23 10:08:48 2019 +1000 | ||
8035 | |||
8036 | allow mprotect(2) with PROT_(READ|WRITE|NONE) only | ||
8037 | |||
8038 | Used by some hardened heap allocators. Requested by Yegor | ||
8039 | Timoshenko in https://github.com/openssh/openssh-portable/pull/142 | ||
8040 | |||
8041 | commit e3b6c966b79c3ea5d51b923c3bbdc41e13b96ea0 | ||
8042 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8043 | Date: Fri Aug 16 06:13:15 2019 +0000 | ||
8044 | |||
8045 | upstream: switch percent_expand() to use sshbuf instead of a limited | ||
8046 | |||
8047 | fixed buffer; ok markus@ | ||
8048 | |||
8049 | OpenBSD-Commit-ID: 3f9ef20bca5ef5058b48c1cac67c53b9a1d15711 | ||
8050 | |||
8051 | commit 9ab5b9474779ac4f581d402ae397f871ed16b383 | ||
8052 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8053 | Date: Fri Aug 9 05:05:54 2019 +0000 | ||
8054 | |||
8055 | upstream: produce a useful error message if the user's shell is set | ||
8056 | |||
8057 | incorrectly during "match exec" processing. bz#2791 reported by Dario | ||
8058 | Bertini; ok dtucker | ||
8059 | |||
8060 | OpenBSD-Commit-ID: cf9eddd6a6be726cb73bd9c3936f3888cd85c03d | ||
8061 | |||
8062 | commit 8fdbc7247f432578abaaca1b72a0dbf5058d67e5 | ||
8063 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8064 | Date: Fri Aug 9 04:24:03 2019 +0000 | ||
8065 | |||
8066 | upstream: Change description of TCPKeepAlive from "inactive" to | ||
8067 | |||
8068 | "unresponsive" to clarify what it checks for. Patch from jblaine at | ||
8069 | kickflop.net via github pr#129, ok djm@. | ||
8070 | |||
8071 | OpenBSD-Commit-ID: 3682f8ec7227f5697945daa25d11ce2d933899e9 | ||
8072 | |||
8073 | commit 7afc45c3ed72672690014dc432edc223b23ae288 | ||
8074 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8075 | Date: Thu Aug 8 08:02:57 2019 +0000 | ||
8076 | |||
8077 | upstream: Allow the maximimum uint32 value for the argument passed to | ||
8078 | |||
8079 | -b which allows better error messages from later validation. bz#3050, ok | ||
8080 | djm@ | ||
8081 | |||
8082 | OpenBSD-Commit-ID: 10adf6876b2401b3dc02da580ebf67af05861673 | ||
8083 | |||
8084 | commit c31e4f5fb3915c040061981a67224de7650ab34b | ||
8085 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
8086 | Date: Mon Aug 5 21:45:27 2019 +0000 | ||
8087 | |||
8088 | upstream: Many key types are supported now, so take care to check | ||
8089 | |||
8090 | the size restrictions and apply the default size only to the matching key | ||
8091 | type. tweak and ok dtucker@ | ||
8092 | |||
8093 | OpenBSD-Commit-ID: b825de92d79cc4cba19b298c61e99909488ff57e | ||
8094 | |||
8095 | commit 6b39a7b49ebacec4e70e24bfc8ea2f11057aac22 | ||
8096 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8097 | Date: Mon Aug 5 11:50:33 2019 +0000 | ||
8098 | |||
8099 | upstream: Remove now-redundant perm_ok arg since | ||
8100 | |||
8101 | sshkey_load_private_type will now return SSH_ERR_KEY_BAD_PERMISSIONS in that | ||
8102 | case. Patch from jitendra.sharma at intel.com, ok djm@ | ||
8103 | |||
8104 | OpenBSD-Commit-ID: 07916a17ed0a252591b71e7fb4be2599cb5b0c77 | ||
8105 | |||
8106 | commit d46075b923bf25e6f25959a3f5b458852161cb3e | ||
8107 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8108 | Date: Mon Aug 5 21:36:48 2019 +1000 | ||
8109 | |||
8110 | Fix mem leak in unit test. | ||
8111 | |||
8112 | Patch from jitendra.sharma at intel.com. | ||
8113 | |||
8114 | commit c4ffb72593c08921cf9291bc05a5ef1d0aaa6891 | ||
8115 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8116 | Date: Fri Aug 2 01:41:24 2019 +0000 | ||
8117 | |||
8118 | upstream: fix some memleaks in test_helper code | ||
8119 | |||
8120 | bz#3037 from Jitendra Sharma | ||
8121 | |||
8122 | OpenBSD-Regress-ID: 71440fa9186f5842a65ce9a27159385c6cb6f751 | ||
8123 | |||
8124 | commit 6e76e69dc0c7712e9ac599af34bd091b0e7dcdb5 | ||
8125 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8126 | Date: Fri Aug 2 01:23:19 2019 +0000 | ||
8127 | |||
8128 | upstream: typo; from Christian Hesse | ||
8129 | |||
8130 | OpenBSD-Commit-ID: 82f6de7438ea7ee5a14f44fdf5058ed57688fdc3 | ||
8131 | |||
8132 | commit 49fa065a1bfaeb88a59abdfa4432d3b9c35b0655 | ||
8133 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8134 | Date: Tue Jul 30 05:04:49 2019 +0000 | ||
8135 | |||
8136 | upstream: let sshbuf_find/cmp take a void* for the | ||
8137 | |||
8138 | search/comparison argument, instead of a u_char*. Saves callers needing to | ||
8139 | cast. | ||
8140 | |||
8141 | OpenBSD-Commit-ID: d63b69b7c5dd570963e682f758f5a47b825605ed | ||
8142 | |||
8143 | commit 7adf6c430d6fc17901e167bc0789d31638f5c2f8 | ||
8144 | Author: mestre@openbsd.org <mestre@openbsd.org> | ||
8145 | Date: Wed Jul 24 08:57:00 2019 +0000 | ||
8146 | |||
8147 | upstream: When using a combination of a Yubikey+GnuPG+remote | ||
8148 | |||
8149 | forwarding the gpg-agent (and options ControlMaster+RemoteForward in | ||
8150 | ssh_config(5)) then the codepath taken will call mux_client_request_session | ||
8151 | -> mm_send_fd -> sendmsg(2). Since sendmsg(2) is not allowed in that codepath | ||
8152 | then pledge(2) kills the process. | ||
8153 | |||
8154 | The solution is to add "sendfd" to pledge(2), which is not too bad considering | ||
8155 | a little bit later we reduce pledge(2) to only "stdio proc tty" in that | ||
8156 | codepath. | ||
8157 | |||
8158 | Problem reported and diff provided by Timothy Brown <tbrown at freeshell.org> | ||
8159 | |||
8160 | OK deraadt@ | ||
8161 | |||
8162 | OpenBSD-Commit-ID: 7ce38b6542bbec00e441595d0a178e970a9472ac | ||
8163 | |||
8164 | commit 0e2fe18acc1da853a9120c2e9af68e8d05e6503e | ||
8165 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8166 | Date: Tue Jul 23 23:06:57 2019 +0000 | ||
8167 | |||
8168 | upstream: Fix typo in CASignatureAlgorithms wherein what should be | ||
8169 | |||
8170 | a comma is a dot. Patch from hnj2 via github pr#141. | ||
8171 | |||
8172 | OpenBSD-Commit-ID: 01f5a460438ff1af09aab483c0a70065309445f0 | ||
8173 | |||
8174 | commit e93ffd1a19fc47c49d68ae2fb332433690ecd389 | ||
8175 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8176 | Date: Mon Jul 29 16:04:01 2019 +1000 | ||
8177 | |||
8178 | Report success of individual tests as well as all. | ||
8179 | |||
8180 | This puts the "all tests passed" message back at the end where the | ||
8181 | test harnesses can find it. | ||
8182 | |||
8183 | commit 2ad5b36b18bddf2965fe60384c29b3f1d451b4ed | ||
8184 | Author: Damien Miller <djm@mindrot.org> | ||
8185 | Date: Mon Jul 29 09:49:23 2019 +1000 | ||
8186 | |||
8187 | convert to UTF-8; from Mike Frysinger | ||
8188 | |||
8189 | commit d31e7c937ba0b97534f373cf5dea34675bcec602 | ||
8190 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8191 | Date: Fri Jul 26 04:22:21 2019 +0000 | ||
8192 | |||
8193 | upstream: Restrict limit-keytype to types supported by build. This | ||
8194 | |||
8195 | means we have to skip a couple tests when only one key type is supported. | ||
8196 | |||
8197 | OpenBSD-Regress-ID: 22d05befb9c7ce21ce8dc22acf1ffe9e2ef2e95e | ||
8198 | |||
8199 | commit 0967a233b8a28907ae8a4a6773c89f21d2ace11b | ||
8200 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8201 | Date: Thu Jul 25 18:36:28 2019 +1000 | ||
8202 | |||
8203 | Remove override disabling DH-GEX. | ||
8204 | |||
8205 | The DH-GEX override doesn't work when build without OpenSSL, and | ||
8206 | we'll prefer curve25519 these days, removing the need for it. | ||
8207 | |||
8208 | commit 061407efc19b41ab4a7485e5adcff2a12befacdb | ||
8209 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8210 | Date: Thu Jul 25 09:17:35 2019 +0000 | ||
8211 | |||
8212 | upstream: Only use supported key types during KRL test, preferring | ||
8213 | |||
8214 | ed25519 since it's supported by both OpenSSL and non-OpenSSL builds. | ||
8215 | |||
8216 | OpenBSD-Regress-ID: 9f2bb3eadd50fcc8245b1bd8fd6f0e53602f71aa | ||
8217 | |||
8218 | commit 47f8ff1fa5b76790c1d785815fd13ee6009f8012 | ||
8219 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8220 | Date: Thu Jul 25 08:48:11 2019 +0000 | ||
8221 | |||
8222 | upstream: Switch keys-command test from rsa to ed25519 since it's | ||
8223 | |||
8224 | supported for both OpenSSL and non-OpenSSL builds. | ||
8225 | |||
8226 | OpenBSD-Regress-ID: 174be4be876edd493e4a5c851e5bc579885e7a0a | ||
8227 | |||
8228 | commit 1e94afdfa8df774ab7dd3bad52912b636dc31bbd | ||
8229 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8230 | Date: Thu Jul 25 08:28:15 2019 +0000 | ||
8231 | |||
8232 | upstream: Make certificate tests work with the supported key | ||
8233 | |||
8234 | algorithms. Allows tests to pass when built without OpenSSL. | ||
8235 | |||
8236 | OpenBSD-Regress-ID: 617169a6dd9d06db3697a449d9a26c284eca20fc | ||
8237 | |||
8238 | commit 26bf693661a48b97b6023f702b2af643676ac21a | ||
8239 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8240 | Date: Tue Jul 23 13:49:14 2019 +0000 | ||
8241 | |||
8242 | upstream: Construct list of key types to test based on the types | ||
8243 | |||
8244 | supported by the binaries. | ||
8245 | |||
8246 | OpenBSD-Regress-ID: fcbd115efacec8ab0ecbdb3faef79ac696cb1d62 | ||
8247 | |||
8248 | commit 773c55b3d1230e8f7714a1b33873c37b85049c74 | ||
8249 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8250 | Date: Tue Jul 23 13:32:48 2019 +0000 | ||
8251 | |||
8252 | upstream: Only use DSA key type in tests if binaries support it. | ||
8253 | |||
8254 | OpenBSD-Regress-ID: 770e31fe61dc33ed8eea9c04ce839b33ddb4dc96 | ||
8255 | |||
8256 | commit 159e987a54d92ccd73875e7581ffc64e8927a715 | ||
8257 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8258 | Date: Wed Jul 24 14:21:19 2019 +1000 | ||
8259 | |||
8260 | Split test targets further. | ||
8261 | |||
8262 | Splits test into file-tests, t-exec, unit and interop-tests and their | ||
8263 | respective dependencies. Should allow running any set individually | ||
8264 | without having to build the other dependencies that are not needed | ||
8265 | for that specific test. | ||
8266 | |||
8267 | commit 520d4550a2470106d63e30079bb05ce82f3a4f7d | ||
8268 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8269 | Date: Wed Jul 24 11:20:18 2019 +1000 | ||
8270 | |||
8271 | Add lib dependencies for regress binary targets. | ||
8272 | |||
8273 | commit 4e8d0dd78d5f6142841a07dc8b8c6b4730eaf587 | ||
8274 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8275 | Date: Wed Jul 24 00:12:51 2019 +1000 | ||
8276 | |||
8277 | Make "unit" a dependency of "test". | ||
8278 | |||
8279 | commit 4317b2a0480e293e58ba115e47b49d3a384b6568 | ||
8280 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8281 | Date: Tue Jul 23 23:24:47 2019 +1000 | ||
8282 | |||
8283 | upstream rev 1.28: fix comment typo. | ||
8284 | |||
8285 | commit e0055af2bd39fdb44566ff6594147664e1fac8b8 | ||
8286 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8287 | Date: Tue Jul 23 23:06:22 2019 +1000 | ||
8288 | |||
8289 | Split regress-binaries into two targets. | ||
8290 | |||
8291 | Split the binaries for the unit tests out into a regress-unit-binaries | ||
8292 | target, and add a dependency on it for only the unit tests. This allows | ||
8293 | us to run the integration tests only ("make t-exec") without building | ||
8294 | the unit tests, which allows us to run a subset of the tests when | ||
8295 | building --without-openssl without trying (and failing) to build the | ||
8296 | unit tests. | ||
8297 | |||
8298 | This means there are two targets for "unit" which I *think* is valid | ||
8299 | (it works in testing, and makedepend will generate Makefiles of this | ||
8300 | form)a but I could be wrong. | ||
8301 | |||
8302 | commit 7cdf9fdcf11aaaa98c2bd22c92882ea559e772ad | ||
8303 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8304 | Date: Tue Jul 23 08:19:29 2019 +0000 | ||
8305 | |||
8306 | upstream: Skip DH group generation test if binaries don't support | ||
8307 | |||
8308 | DH-GEX. | ||
8309 | |||
8310 | OpenBSD-Regress-ID: 7c918230d969ecf7656babd6191a74526bffbffd | ||
8311 | |||
8312 | commit 3a3eab8bb0da3d2f0f32cb85a1a268bcca6e4d69 | ||
8313 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8314 | Date: Tue Jul 23 07:55:29 2019 +0000 | ||
8315 | |||
8316 | upstream: Only test conversion of key types supported by the | ||
8317 | |||
8318 | binaries. | ||
8319 | |||
8320 | OpenBSD-Regress-ID: e3f0938a0a7407e2dfbb90abc3ec979ab6e8eeea | ||
8321 | |||
8322 | commit 7e66b7d98c6e3f48a1918c3e1940c9b11b10ec63 | ||
8323 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8324 | Date: Tue Jul 23 07:39:43 2019 +0000 | ||
8325 | |||
8326 | upstream: Only add ssh-dss to allowed key types if it's supported | ||
8327 | |||
8328 | by the binary. | ||
8329 | |||
8330 | OpenBSD-Regress-ID: 395a54cab16e9e4ece9aec047ab257954eebd413 | ||
8331 | |||
8332 | commit fd0684b319e664d8821dc4ca3026126dfea3ccf4 | ||
8333 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8334 | Date: Tue Jul 23 22:36:39 2019 +1000 | ||
8335 | |||
8336 | Remove sys/cdefs.h include. | ||
8337 | |||
8338 | It's not needed on -portable (that's handled by includes.h) and not all | ||
8339 | platforms have it. | ||
8340 | |||
8341 | commit 9634ffbf29b3c2493e69d10b37077b09a8cbf5ff | ||
8342 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8343 | Date: Tue Jul 23 22:25:44 2019 +1000 | ||
8344 | |||
8345 | Add headers to prevent warnings w/out OpenSSL. | ||
8346 | |||
8347 | commit 2ea60312e1c08dea88982fec68244f89a40912ff | ||
8348 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8349 | Date: Tue Jul 23 22:11:50 2019 +1000 | ||
8350 | |||
8351 | Include stdlib.h for free() and calloc(). | ||
8352 | |||
8353 | commit 11cba2a4523fda447e2554ea457484655bedc831 | ||
8354 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8355 | Date: Tue Jul 23 21:51:22 2019 +1000 | ||
8356 | |||
8357 | Re-apply portability changes to current sha2.{c,h}. | ||
8358 | |||
8359 | Rather than attempt to apply 14 years' worth of changes to OpenBSD's sha2 | ||
8360 | I imported the current versions directly then re-applied the portability | ||
8361 | changes. This also allowed re-syncing digest-libc.c against upstream. | ||
8362 | |||
8363 | commit 09159594a3bbd363429ee6fafde57ce77986dd7c | ||
8364 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8365 | Date: Tue Jul 23 20:27:51 2019 +1000 | ||
8366 | |||
8367 | Import current sha2.c and sha2.h from OpenBSD. | ||
8368 | |||
8369 | These are not changed from their original state, the next commit will | ||
8370 | re-apply the portable changes. | ||
8371 | |||
8372 | commit 2e6035b900cc9d7432d95084e03993d1b426f812 | ||
8373 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8374 | Date: Tue Jul 23 08:11:22 2019 +1000 | ||
8375 | |||
8376 | Rename valgrind "errors" to "failures". | ||
8377 | |||
8378 | When valgrind is enabled, test-exec.sh counts the number of invocations | ||
8379 | that valgrind detects failures in, not the total number of errors detected. | ||
8380 | This makes the name to be more accurate. | ||
8381 | |||
8382 | commit e82c9bb9ffa65725cc2e03ea81cb79ce3387f66b | ||
8383 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8384 | Date: Fri Jul 19 18:51:18 2019 +1000 | ||
8385 | |||
8386 | Skip running sftp-chroot under Valgrind. | ||
8387 | |||
8388 | commit 41e22c2e05cb950b704945ac9408f6109c9b7848 | ||
8389 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8390 | Date: Sat Jul 20 09:50:58 2019 +0000 | ||
8391 | |||
8392 | upstream: Remove the sleeps and thus races from the forwarding | ||
8393 | |||
8394 | test. They were originally required to work with Protocol 1, but now we can | ||
8395 | use ssh -N and the control socket without the sleeps. While there, suppress | ||
8396 | output fro the control exit commands. | ||
8397 | |||
8398 | OpenBSD-Regress-ID: 4c51a1d651242f12c90074c18c61008a74c1c790 | ||
8399 | |||
8400 | commit 0423043c5e54293f4dd56041304fd0046c317be9 | ||
8401 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8402 | Date: Sat Jul 20 09:37:31 2019 +0000 | ||
8403 | |||
8404 | upstream: Allow SLEEPTIME to be overridden. | ||
8405 | |||
8406 | OpenBSD-Regress-ID: 1596ab168729954be3d219933b2d01cc93687e76 | ||
8407 | |||
8408 | commit d466b6a5cfba17a83c7aae9f584ab164e2ece0a1 | ||
8409 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8410 | Date: Sat Jul 20 09:14:40 2019 +0000 | ||
8411 | |||
8412 | upstream: Move sleep time into a variable so that we can increase | ||
8413 | |||
8414 | it for platforms or configurations that are much slower then usual. | ||
8415 | |||
8416 | OpenBSD-Regress-ID: 88586cabc800062c260d0b876bdcd4ca3f58a872 | ||
8417 | |||
8418 | commit b4a7c9d2b5f928e0b902b580d35dc8b244a3aae0 | ||
8419 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8420 | Date: Fri Jul 19 03:45:44 2019 +0000 | ||
8421 | |||
8422 | upstream: add regression tests for scp for out-of-destination path file | ||
8423 | |||
8424 | creation by Harry Sintonen via Jakub Jelen in bz3007 | ||
8425 | |||
8426 | OpenBSD-Regress-ID: 01ae5fbc6ce400b2df5a84dc3152a9e31f354c07 | ||
8427 | |||
8428 | commit bca0582063f148c7ddf409ec51435a5a726bee4c | ||
8429 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8430 | Date: Fri Jul 19 03:38:01 2019 +0000 | ||
8431 | |||
8432 | upstream: Accept the verbose flag when searching for host keys in known | ||
8433 | |||
8434 | hosts (i.e. "ssh-keygen -vF host") to print the matching host's random- art | ||
8435 | signature too. bz#3003 "amusing, pretty" deraadt@ | ||
8436 | |||
8437 | OpenBSD-Commit-ID: 686221a5447d6507f40a2ffba5393984d889891f | ||
8438 | |||
8439 | commit 5299a09fa2879a068af200c91028fcfa9283c0f0 | ||
8440 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8441 | Date: Fri Jul 19 13:50:25 2019 +1000 | ||
8442 | |||
8443 | Revert one dependency per line change. | ||
8444 | |||
8445 | It turns out that having such a large number of lines in the .depend | ||
8446 | file will cause the memory usage of awk during AC_SUBST to blow up on at | ||
8447 | least NetBSD's awk, causing configure to fail. | ||
8448 | |||
8449 | commit 01dddb231f23b4a7b616f9d33a0b9d937f9eaf0e | ||
8450 | Author: Damien Miller <djm@mindrot.org> | ||
8451 | Date: Fri Jul 19 13:19:19 2019 +1000 | ||
8452 | |||
8453 | fix SIGWINCH delivery of Solaris for mux sessions | ||
8454 | |||
8455 | Remove PRIV_PROC_SESSION which was limiting ability to send SIGWINCH | ||
8456 | signals to other sessions. bz#3030; report and fix from Darren Moffat | ||
8457 | |||
8458 | commit 05500af21d27c1a3ddac232b018cc23da7b1ee95 | ||
8459 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8460 | Date: Fri Jul 19 13:20:03 2019 +1000 | ||
8461 | |||
8462 | Force dependencies one per line. | ||
8463 | |||
8464 | Force makedepend to output one dependency per line, which will make | ||
8465 | reading diffs against it much easier. ok djm@ | ||
8466 | |||
8467 | commit b5bc5d016bbb83eb7f8e685390044e78b1ea1427 | ||
8468 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8469 | Date: Fri Jul 19 13:18:07 2019 +1000 | ||
8470 | |||
8471 | make depend. | ||
8472 | |||
8473 | commit 65333f7454365fe40f7367630e7dd10903b9d99e | ||
8474 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8475 | Date: Fri Jul 19 13:16:11 2019 +1000 | ||
8476 | |||
8477 | Show when skipping valgrind for a test. | ||
8478 | |||
8479 | commit fccb7eb3436da8ef3dcd22e5936ba1abc7ae6730 | ||
8480 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8481 | Date: Fri Jul 19 10:41:56 2019 +1000 | ||
8482 | |||
8483 | Enable connect-privsep test with valgrind. | ||
8484 | |||
8485 | connect-privsep seems to work OK with valgrind now so don't skip | ||
8486 | valgrind on it. | ||
8487 | |||
8488 | commit d7423017265c5ae6d0be39340feb6c9f016b1f71 | ||
8489 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8490 | Date: Fri Jul 19 07:43:07 2019 +1000 | ||
8491 | |||
8492 | Show valgrind results and error counts. | ||
8493 | |||
8494 | commit 22b9b3e944880db906c6ac5527c4228bd92b293a | ||
8495 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8496 | Date: Thu Jul 18 13:40:12 2019 +1000 | ||
8497 | |||
8498 | Fix format string integer type in error message. | ||
8499 | |||
8500 | commit ed46a0c0705895834d3f47a46faa89c2a71b760a | ||
8501 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8502 | Date: Thu Jul 18 13:26:00 2019 +0000 | ||
8503 | |||
8504 | upstream: fix off-by-one in sshbuf_dtob64() base64 wrapping that could | ||
8505 | |||
8506 | cause extra newlines to be appended at the end of the base64 text (ugly, but | ||
8507 | harmless). Found and fixed by Sebastian Kinne | ||
8508 | |||
8509 | OpenBSD-Commit-ID: 9fe290bd68f706ed8f986a7704ca5a2bd32d7b68 | ||
8510 | |||
8511 | commit a192021fedead23c375077f92346336d531f8cad | ||
8512 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8513 | Date: Thu Jul 18 11:09:38 2019 +1000 | ||
8514 | |||
8515 | Fail tests if Valgrind enabled and reports errors. | ||
8516 | |||
8517 | Also dump the failing valgrind report to stdout (not the cleanest | ||
8518 | solution, but better than nothing). | ||
8519 | |||
8520 | commit d1c491ecb939ee10b341fa7bb6205dff19d297e5 | ||
8521 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8522 | Date: Thu Jul 18 10:17:54 2019 +1000 | ||
8523 | |||
8524 | Allow low-priv tests to write to pipe dir. | ||
8525 | |||
8526 | When running regression tests with Valgrind and SUDO, the low-priv agent | ||
8527 | tests need to be able to create pipes in the appropriate directory. | ||
8528 | |||
8529 | commit 8a5bb3e78191cc206f970c26d2a26c949971e91a | ||
8530 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8531 | Date: Wed Jul 17 21:24:55 2019 +1000 | ||
8532 | |||
8533 | Put valgrind vgdb files to a specific directory. | ||
8534 | |||
8535 | Valgrind by default puts vgdb files and pipes under /tmp, however it | ||
8536 | is not always able to clean them up, which can cause test failures when | ||
8537 | there's a pid/file collision. Using a specific directory ensures that | ||
8538 | we can clean up and start clean. | ||
8539 | |||
8540 | commit f8829fe57fb0479d6103cfe1190095da3c032c6d | ||
8541 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8542 | Date: Tue Jul 16 22:16:49 2019 +0000 | ||
8543 | |||
8544 | upstream: adapt to sshbuf_dtob64() change | ||
8545 | |||
8546 | OpenBSD-Regress-ID: 82374a83edf0955fd1477169eee3f5d6467405a6 | ||
8547 | |||
8548 | commit 1254fcbb2f005f745f2265016ee9fa52e16d37b0 | ||
8549 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8550 | Date: Tue Jul 16 03:21:54 2019 +0000 | ||
8551 | |||
8552 | upstream: Remove ssh1 files from CLEANFILES since ssh1 no longer | ||
8553 | |||
8554 | supported. | ||
8555 | |||
8556 | OpenBSD-Regress-ID: 5b9ae869dc669bac05939b4a2fdf44ee067acfa0 | ||
8557 | |||
8558 | commit 9dc81a5adabc9a7d611ed2e63fbf4c85d43b15c6 | ||
8559 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8560 | Date: Tue Jul 16 02:09:29 2019 +0000 | ||
8561 | |||
8562 | upstream: Update names of host key files in CLEANFILES to match | ||
8563 | |||
8564 | recent changes to the tests. | ||
8565 | |||
8566 | OpenBSD-Regress-ID: 28743052de3acf70b06f18333561497cd47c4ecf | ||
8567 | |||
8568 | commit e44e4ad1190db22ed407a79f32a8cff5bcd2b815 | ||
8569 | Author: Damien Miller <djm@mindrot.org> | ||
8570 | Date: Tue Jul 16 23:26:53 2019 +1000 | ||
8571 | |||
8572 | depend | ||
8573 | |||
8574 | commit 16dd8b2c78a0de106c7429e2a294d203f6bda3c7 | ||
8575 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8576 | Date: Tue Jul 16 13:18:39 2019 +0000 | ||
8577 | |||
8578 | upstream: remove mostly vestigal uuencode.[ch]; moving the only unique | ||
8579 | |||
8580 | functionality there (wrapping of base64-encoded data) to sshbuf functions; | ||
8581 | feedback and ok markus@ | ||
8582 | |||
8583 | OpenBSD-Commit-ID: 4dba6735d88c57232f6fccec8a08bdcfea44ac4c | ||
8584 | |||
8585 | commit 45478898f9590b5cc8bc7104e573b84be67443b0 | ||
8586 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8587 | Date: Tue Jul 16 09:20:23 2019 +1000 | ||
8588 | |||
8589 | Hook memmem compat code into build. | ||
8590 | |||
8591 | This fixes builds on platforms that don't have it (at least old DragonFly, | ||
8592 | probably others). | ||
8593 | |||
8594 | commit c7bd4617293a903bd3fac3394a7e72d439af49a5 | ||
8595 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8596 | Date: Tue Jul 16 09:07:18 2019 +1000 | ||
8597 | |||
8598 | Import memmem.c from OpenBSD. | ||
8599 | |||
8600 | commit 477e2a3be8b10df76e8d76f0427b043280d73d68 | ||
8601 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8602 | Date: Mon Jul 15 13:12:02 2019 +0000 | ||
8603 | |||
8604 | upstream: unit tests for sshbuf_cmp() and sshbuf_find(); ok markus | ||
8605 | |||
8606 | OpenBSD-Regress-ID: b52d36bc3ab6dc158c1e59a9a4735f821cf9e1fd | ||
8607 | |||
8608 | commit eb0d8e708a1f958aecd2d6e2ff2450af488d4c2a | ||
8609 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8610 | Date: Mon Jul 15 13:16:29 2019 +0000 | ||
8611 | |||
8612 | upstream: support PKCS8 as an optional format for storage of | ||
8613 | |||
8614 | private keys, enabled via "ssh-keygen -m PKCS8" on operations that save | ||
8615 | private keys to disk. | ||
8616 | |||
8617 | The OpenSSH native key format remains the default, but PKCS8 is a | ||
8618 | superior format to PEM if interoperability with non-OpenSSH software | ||
8619 | is required, as it may use a less terrible KDF (IIRC PEM uses a single | ||
8620 | round of MD5 as a KDF). | ||
8621 | |||
8622 | adapted from patch by Jakub Jelen via bz3013; ok markus | ||
8623 | |||
8624 | OpenBSD-Commit-ID: 027824e3bc0b1c243dc5188504526d73a55accb1 | ||
8625 | |||
8626 | commit e18a27eedccb024acb3cd9820b650a5dff323f01 | ||
8627 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8628 | Date: Mon Jul 15 13:11:38 2019 +0000 | ||
8629 | |||
8630 | upstream: two more bounds-checking sshbuf counterparts to common | ||
8631 | |||
8632 | string operations: sshbuf_cmp() (bcmp-like) and sshbuf_find() (memmem like) | ||
8633 | |||
8634 | feedback and ok markus@ | ||
8635 | |||
8636 | OpenBSD-Commit-ID: fd071ec2485c7198074a168ff363a0d6052a706a | ||
8637 | |||
8638 | commit bc551dfebb55845537b1095cf3ccd01640a147b7 | ||
8639 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8640 | Date: Mon Jul 15 12:52:45 2019 +1000 | ||
8641 | |||
8642 | Clear valgrind-out dir to prevent collisions. | ||
8643 | |||
8644 | commit 5db9ba718e983661a9114ae1418f6e412d1f52d5 | ||
8645 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8646 | Date: Mon Jul 15 12:02:27 2019 +1000 | ||
8647 | |||
8648 | Allow agent tests to write to valgrind dir. | ||
8649 | |||
8650 | commit 121e48fa5305f41f0477d9908e3d862987a68a84 | ||
8651 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8652 | Date: Sun Jul 14 23:33:19 2019 +0000 | ||
8653 | |||
8654 | upstream: unit tests for sshbuf_peek/poke bounds-checked random access | ||
8655 | |||
8656 | functions. ok markus@ | ||
8657 | |||
8658 | OpenBSD-Regress-ID: 034c4284b1da6b12e25c762a6b958efacdafbaef | ||
8659 | |||
8660 | commit 101d164723ffbc38f8036b6f3ea3bfef771ba250 | ||
8661 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8662 | Date: Sun Jul 14 23:32:27 2019 +0000 | ||
8663 | |||
8664 | upstream: add some functions to perform random-access read/write | ||
8665 | |||
8666 | operations inside buffers with bounds checking. Intended to replace manual | ||
8667 | pointer arithmetic wherever possible. | ||
8668 | |||
8669 | feedback and ok markus@ | ||
8670 | |||
8671 | OpenBSD-Commit-ID: 91771fde7732738f1ffed078aa5d3bee6d198409 | ||
8672 | |||
8673 | commit 7250879c72d28275a53f2f220e49646c3e42ef18 | ||
8674 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8675 | Date: Fri Jul 12 04:08:39 2019 +0000 | ||
8676 | |||
8677 | upstream: include SHA2-variant RSA key algorithms in KEX proposal; | ||
8678 | |||
8679 | allows ssh-keyscan to harvest keys from servers that disable olde SHA1 | ||
8680 | ssh-rsa. bz#3029 from Jakub Jelen | ||
8681 | |||
8682 | OpenBSD-Commit-ID: 9f95ebf76a150c2f727ca4780fb2599d50bbab7a | ||
8683 | |||
8684 | commit a0876bd994cab9ba6e47ba2a163a4417c7597487 | ||
8685 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8686 | Date: Fri Jul 12 03:56:21 2019 +0000 | ||
8687 | |||
8688 | upstream: print explicit "not modified" message if a file was | ||
8689 | |||
8690 | requested for resumed download but was considered already complete. | ||
8691 | |||
8692 | bz#2978 ok dtucker | ||
8693 | |||
8694 | OpenBSD-Commit-ID: f32084b26a662f16215ee4ca4a403d67e49ab986 | ||
8695 | |||
8696 | commit b9b0f2ac9625933db53a35b1c1ce423876630558 | ||
8697 | Author: tb@openbsd.org <tb@openbsd.org> | ||
8698 | Date: Wed Jul 10 07:04:27 2019 +0000 | ||
8699 | |||
8700 | upstream: Fix a typo and make <esc><right> move right to the | ||
8701 | |||
8702 | closest end of a word just like <esc><left> moves left to the closest | ||
8703 | beginning of a word. | ||
8704 | |||
8705 | ok djm | ||
8706 | |||
8707 | OpenBSD-Commit-ID: 6afe01b05ed52d8b12eb1fda6e9af5afb5e198ee | ||
8708 | |||
8709 | commit 8729498a5d239980a91d32f031b34e8c58c52f62 | ||
8710 | Author: Damien Miller <djm@mindrot.org> | ||
8711 | Date: Wed Jul 10 09:43:19 2019 +1000 | ||
8712 | |||
8713 | fix typo that prevented detection of Linux VRF | ||
8714 | |||
8715 | Reported by hexiaowen AT huawei.com | ||
8716 | |||
8717 | commit 5b2b79ff7c057ee101518545727ed3023372891d | ||
8718 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8719 | Date: Tue Jul 9 04:15:00 2019 +0000 | ||
8720 | |||
8721 | upstream: cap the number of permiopen/permitlisten directives we're | ||
8722 | |||
8723 | willing to parse on a single authorized_keys line; ok deraadt@ | ||
8724 | |||
8725 | OpenBSD-Commit-ID: a43a752c2555d26aa3fc754805a476f6e3e30f46 | ||
8726 | |||
8727 | commit eb0b51dac408fadd1fd13fa6d726ab8fdfcc4152 | ||
8728 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8729 | Date: Mon Jul 8 17:27:26 2019 +1000 | ||
8730 | |||
8731 | Move log.h include inside ifdefs. | ||
8732 | |||
8733 | Fixes build on some other platforms that don't have va_list immediately | ||
8734 | available (eg NetBSD). | ||
8735 | |||
8736 | commit 43702f8e6fa22a258e25c4dd950baaae0bc656b7 | ||
8737 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8738 | Date: Sat Jul 6 23:07:04 2019 +1000 | ||
8739 | |||
8740 | Include log.h for debug() and friends. | ||
8741 | |||
8742 | Should fix some compiler warnings on IRIX (bz#3032). | ||
8743 | |||
8744 | commit 53a6ebf1445a857f5e487b18ee5e5830a9575149 | ||
8745 | Author: Damien Miller <djm@mindrot.org> | ||
8746 | Date: Mon Jul 8 13:44:32 2019 +1000 | ||
8747 | |||
8748 | sftp-realpath.c needs includes.h | ||
8749 | |||
8750 | commit 4efe1adf05ee5d3fce44320fcff68735891f4ee6 | ||
8751 | Author: Damien Miller <djm@mindrot.org> | ||
8752 | Date: Mon Jul 8 13:38:39 2019 +1000 | ||
8753 | |||
8754 | remove realpath() compat replacement | ||
8755 | |||
8756 | We shipped a BSD implementation of realpath() because sftp-server | ||
8757 | depended on its behaviour. | ||
8758 | |||
8759 | OpenBSD is now moving to a more strictly POSIX-compliant realpath(2), | ||
8760 | so sftp-server now unconditionally requires its own BSD-style realpath | ||
8761 | implementation. As such, there is no need to carry another independant | ||
8762 | implementation in openbsd-compat. | ||
8763 | |||
8764 | ok dtucker@ | ||
8765 | |||
8766 | commit 696fb4298e80f2ebcd188986a91b49af3b7ca14c | ||
8767 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8768 | Date: Sun Jul 7 01:05:00 2019 +0000 | ||
8769 | |||
8770 | upstream: Remove some set but never used variables. ok daraadt@ | ||
8771 | |||
8772 | OpenBSD-Commit-ID: 824baf9c59afc66a4637017e397b9b74a41684e7 | ||
8773 | |||
8774 | commit 156e9e85e92b46ca90226605d9eff49e8ec31b22 | ||
8775 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8776 | Date: Fri Jul 5 12:35:40 2019 +0000 | ||
8777 | |||
8778 | upstream: still compile uuencode.c, unbreaks build | ||
8779 | |||
8780 | OpenBSD-Commit-ID: 5ea3d63ab972691f43e9087ab5fd8376d48e898f | ||
8781 | |||
8782 | commit cec9ee527a12b1f6c2e0a1c155fec64a38d71cf6 | ||
8783 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8784 | Date: Fri Jul 5 07:32:01 2019 +0000 | ||
8785 | |||
8786 | upstream: revert header removal that snuck into previous | ||
8787 | |||
8788 | OpenBSD-Commit-ID: 3919cdd58989786660b8269b325646ef8856428e | ||
8789 | |||
8790 | commit 569b650f93b561c09c655f83f128e1dfffe74101 | ||
8791 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8792 | Date: Fri Jul 5 04:55:40 2019 +0000 | ||
8793 | |||
8794 | upstream: add a local implementation of BSD realpath() for | ||
8795 | |||
8796 | sftp-server use ahead of OpenBSD's realpath changing to match POSIX; | ||
8797 | |||
8798 | ok deraadt@ (thanks for snaps testing) | ||
8799 | |||
8800 | OpenBSD-Commit-ID: 4f8cbf7ed8679f6237264301d104ecec64885d55 | ||
8801 | |||
8802 | commit b8e2b797362526437e0642a6c2f2970d794f2561 | ||
8803 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8804 | Date: Sat Jul 6 13:13:57 2019 +1000 | ||
8805 | |||
8806 | Add prototype for strnlen to prevent warnings. | ||
8807 | |||
8808 | commit 4c3e00b1ed7e596610f34590eb5d54ee50d77878 | ||
8809 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8810 | Date: Sat Jul 6 13:02:34 2019 +1000 | ||
8811 | |||
8812 | Cast *ID types to unsigned long when printing. | ||
8813 | |||
8814 | UID and GID types vary by platform so cast to u_long and use %lu when | ||
8815 | printing them to prevent warnings. | ||
8816 | |||
8817 | commit 2753521e899f30d1d58b5da0b4e68fde6fcf341e | ||
8818 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8819 | Date: Sat Jul 6 12:54:43 2019 +1000 | ||
8820 | |||
8821 | Add prototype for compat strndup.(bz#3032). | ||
8822 | |||
8823 | commit 01a1e21cd55d99293c8ff8ed7c590f2ee440da43 | ||
8824 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8825 | Date: Sat Jul 6 12:00:41 2019 +1000 | ||
8826 | |||
8827 | Add missing bracket in EGD seeding code. | ||
8828 | |||
8829 | When configured --with-prngd-socket the code had a missing bracket after | ||
8830 | an API change. Fix that and a couple of warnings. bz#3032 , from | ||
8831 | ole.weidner at protonmail.ch | ||
8832 | |||
8833 | commit e187b1d4607392cf2c19243afe0d0311a4ff3591 | ||
8834 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8835 | Date: Fri Jul 5 04:19:39 2019 +0000 | ||
8836 | |||
8837 | upstream: Add (recently added) rsa_oldfmt to CLEANFILES. | ||
8838 | |||
8839 | OpenBSD-Regress-ID: 405beda94e32aa6cc9c80969152fab91f7c54bd3 | ||
8840 | |||
8841 | commit 74b541bfabdcb57c1683cd9b3f1d1f4d5e41563e | ||
8842 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8843 | Date: Fri Jul 5 04:12:46 2019 +0000 | ||
8844 | |||
8845 | upstream: Adapt the PuTTY/Conch tests to new key names. | ||
8846 | |||
8847 | A recent regress change (2a9b3a2ce411d16cda9c79ab713c55f65b0ec257 in | ||
8848 | portable) broke the PuTTY and Twisted Conch interop tests, because the | ||
8849 | key they want to use is now called ssh-rsa rather than rsa. Adapt the | ||
8850 | tests to the new file names. bz#3020, patch from cjwatson at debian.org. | ||
8851 | |||
8852 | OpenBSD-Regress-ID: fd342a37db4d55aa4ec85316f73082c8eb96e64e | ||
8853 | |||
8854 | commit de08335a4cfaa9b7081e94ea4a8b7153c230546d | ||
8855 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8856 | Date: Fri Jul 5 04:03:13 2019 +0000 | ||
8857 | |||
8858 | upstream: Add a sleep to allow forwards to come up. | ||
8859 | |||
8860 | Currently when the multiplex client requests a forward it returns | ||
8861 | once the request has been sent but not necessarily when the forward | ||
8862 | is up. This causes intermittent text failures due to this race, | ||
8863 | so add some sleeps to mitigate this until we can fix it properly. | ||
8864 | |||
8865 | OpenBSD-Regress-ID: 384c7d209d2443d25ea941d7f677e932621fb253 | ||
8866 | |||
8867 | commit 4d249284729f864faa2e8f3e015f9a41b674544a | ||
8868 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8869 | Date: Fri Jul 5 14:58:57 2019 +1000 | ||
8870 | |||
8871 | Remove nc stderr redirection to resync w/OpenBSD. | ||
8872 | |||
8873 | commit c5cfa90e03432181ffcc7ad3f9f815179bd0c626 | ||
8874 | Author: Darren Tucker <dtucker@dtucker.net> | ||
8875 | Date: Fri Jul 5 13:21:45 2019 +1000 | ||
8876 | |||
8877 | Do not fatal on failed lookup of group "tty". | ||
8878 | |||
8879 | Some platforms (eg AIX and Cygwin) do not have a "tty" group. In those | ||
8880 | cases we will fall back to making the tty device the user's primary | ||
8881 | group, so do not fatal if the group lookup fails. ok djm@ | ||
8882 | |||
8883 | commit 8b4cc4bdc8a70bf209a274fa2b2a49c1e3c8d8a2 | ||
8884 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8885 | Date: Thu Jul 4 16:20:10 2019 +0000 | ||
8886 | |||
8887 | upstream: fatal() if getgrnam() cannot find "tty" | ||
8888 | |||
8889 | OpenBSD-Commit-ID: d148c1c052fa0ed7d105b5428b5c1bab91630048 | ||
8890 | |||
8891 | commit 48cccc275c6a1e91d3f80fdb0dc0d5baf529aeca | ||
8892 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8893 | Date: Thu Jul 4 16:16:51 2019 +0000 | ||
8894 | |||
8895 | upstream: stat() returns precisely -1 to indicate error | ||
8896 | |||
8897 | OpenBSD-Commit-ID: 668e8d022ed4ab847747214f64119e5865365fa1 | ||
8898 | |||
8899 | commit 8142fcaf9ed8ff66252deecbfd29fc59d5f2df4f | ||
8900 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8901 | Date: Wed Jul 3 03:24:02 2019 +0000 | ||
8902 | |||
8903 | upstream: snprintf/vsnprintf return < 0 on error, rather than -1. | ||
8904 | |||
8905 | OpenBSD-Commit-ID: a261c421140a0639bb2b66bbceca72bf8239749d | ||
8906 | |||
8907 | commit 4d28fa78abce2890e136281950633fae2066cc29 | ||
8908 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8909 | Date: Fri Jun 28 13:35:04 2019 +0000 | ||
8910 | |||
8911 | upstream: When system calls indicate an error they return -1, not | ||
8912 | |||
8913 | some arbitrary value < 0. errno is only updated in this case. Change all | ||
8914 | (most?) callers of syscalls to follow this better, and let's see if this | ||
8915 | strictness helps us in the future. | ||
8916 | |||
8917 | OpenBSD-Commit-ID: 48081f00db7518e3b712a49dca06efc2a5428075 | ||
8918 | |||
8919 | commit e8c974043c1648eab0ad67a7ba6a3e444fe79d2d | ||
8920 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8921 | Date: Fri Jun 28 05:44:09 2019 +0000 | ||
8922 | |||
8923 | upstream: asprintf returns -1, not an arbitrary value < 0. Also | ||
8924 | |||
8925 | upon error the (very sloppy specification) leaves an undefined value in *ret, | ||
8926 | so it is wrong to inspect it, the error condition is enough. discussed a | ||
8927 | little with nicm, and then much more with millert until we were exasperated | ||
8928 | |||
8929 | OpenBSD-Commit-ID: 29258fa51edf8115d244b9d4b84028487bf8923e | ||
8930 | |||
8931 | commit 1b2d55d15c6240c15a1e1cf4203b82e54a766272 | ||
8932 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8933 | Date: Fri Jun 28 01:23:50 2019 +0000 | ||
8934 | |||
8935 | upstream: oops, from asou | ||
8936 | |||
8937 | OpenBSD-Commit-ID: 702e765d1639b732370d8f003bb84a1c71c4d0c6 | ||
8938 | |||
8939 | commit 5cdbaa78fcb718c39af4522d98016ad89d065427 | ||
8940 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
8941 | Date: Thu Jun 27 18:03:37 2019 +0000 | ||
8942 | |||
8943 | upstream: Some asprintf() calls were checked < 0, rather than the | ||
8944 | |||
8945 | precise == -1. ok millert nicm tb, etc | ||
8946 | |||
8947 | OpenBSD-Commit-ID: caecf8f57938685c04f125515b9f2806ad408d53 | ||
8948 | |||
8949 | commit b2e3e57be4a933d9464bccbe592573725765486f | ||
8950 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8951 | Date: Thu Jun 27 06:29:35 2019 +0000 | ||
8952 | |||
8953 | upstream: fix NULL deference (bzero) on err | ||
8954 | |||
8955 | =?UTF-8?q?or=20path=20added=20in=20last=20commit;=20spotted=20by=20Reynir?= | ||
8956 | =?UTF-8?q?=20Bj=C3=B6rnsson?= | ||
8957 | MIME-Version: 1.0 | ||
8958 | Content-Type: text/plain; charset=UTF-8 | ||
8959 | Content-Transfer-Encoding: 8bit | ||
8960 | |||
8961 | ok deraadt@ markus@ tb@ | ||
8962 | |||
8963 | OpenBSD-Commit-ID: b11b084bcc551b2c630560eb08618dd501027bbd | ||
8964 | |||
8965 | commit 58ceacdcbaebefc77d120712de55c6fc6aa32bb1 | ||
8966 | Author: Jitendra Sharma <jitendra.sharma@intel.com> | ||
8967 | Date: Fri Jun 21 09:54:17 2019 +0530 | ||
8968 | |||
8969 | Update README doc to include missing test cases | ||
8970 | |||
8971 | Readme regress document is missing various individual tests, | ||
8972 | which are supported currently. Update README to | ||
8973 | include those test cases. | ||
8974 | |||
8975 | commit 7959330a554051b5587f8af3fec0c2c0d5820f64 | ||
8976 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
8977 | Date: Wed Jun 26 22:29:43 2019 +0000 | ||
8978 | |||
8979 | upstream: Remove unneeded unlink of xauthfile o | ||
8980 | |||
8981 | =?UTF-8?q?n=20error=20path.=20=20From=20Erik=20Sj=C3=B6lund=20via=20githu?= | ||
8982 | =?UTF-8?q?b,=20ok=20djm@=20deraadt@?= | ||
8983 | MIME-Version: 1.0 | ||
8984 | Content-Type: text/plain; charset=UTF-8 | ||
8985 | Content-Transfer-Encoding: 8bit | ||
8986 | |||
8987 | OpenBSD-Commit-ID: 62a4893cf83b29a4bbfedc40e7067c25c203e632 | ||
8988 | |||
8989 | commit 8de52eb224143783a49f9bddd9ab7800022a8276 | ||
8990 | Author: djm@openbsd.org <djm@openbsd.org> | ||
8991 | Date: Sun Jun 23 12:21:46 2019 +0000 | ||
8992 | |||
8993 | upstream: fix mismatch proto/decl from key shielding change; spotted | ||
8994 | |||
8995 | via oss-fuzz | ||
8996 | |||
8997 | OpenBSD-Commit-ID: 1ea0ba05ded2c5557507bd844cd446e5c8b5b3b7 | ||
8998 | |||
8999 | commit 1dfadb9b57c2985c95838a0292d1c2f6a501896e | ||
9000 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9001 | Date: Fri Jun 21 04:21:45 2019 +0000 | ||
9002 | |||
9003 | upstream: adapt for key shielding API changes (const removal) | ||
9004 | |||
9005 | OpenBSD-Regress-ID: 298890bc52f0cd09dba76dc1022fabe89bc0ded6 | ||
9006 | |||
9007 | commit 4f7a56d5e02e3d04ab69eac1213817a7536d0562 | ||
9008 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9009 | Date: Fri Jun 21 04:21:04 2019 +0000 | ||
9010 | |||
9011 | upstream: Add protection for private keys at rest in RAM against | ||
9012 | |||
9013 | speculation and memory sidechannel attacks like Spectre, Meltdown, Rowhammer | ||
9014 | and Rambleed. This change encrypts private keys when they are not in use with | ||
9015 | a symmetic key that is derived from a relatively large "prekey" consisting of | ||
9016 | random data (currently 16KB). | ||
9017 | |||
9018 | Attackers must recover the entire prekey with high accuracy before | ||
9019 | they can attempt to decrypt the shielded private key, but the current | ||
9020 | generation of attacks have bit error rates that, when applied | ||
9021 | cumulatively to the entire prekey, make this unlikely. | ||
9022 | |||
9023 | Implementation-wise, keys are encrypted "shielded" when loaded and then | ||
9024 | automatically and transparently unshielded when used for signatures or | ||
9025 | when being saved/serialised. | ||
9026 | |||
9027 | Hopefully we can remove this in a few years time when computer | ||
9028 | architecture has become less unsafe. | ||
9029 | |||
9030 | been in snaps for a bit already; thanks deraadt@ | ||
9031 | |||
9032 | ok dtucker@ deraadt@ | ||
9033 | |||
9034 | OpenBSD-Commit-ID: 19767213c312e46f94b303a512ef8e9218a39bd4 | ||
9035 | |||
9036 | commit 4cd6b12cc9c10bf59c8b425041f3ea5091285a0f | ||
9037 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9038 | Date: Fri Jun 21 03:19:59 2019 +0000 | ||
9039 | |||
9040 | upstream: print the correct AuthorizedPrincipalsCommand rather than | ||
9041 | |||
9042 | an uninitialised variable; spotted by dtucker@ | ||
9043 | |||
9044 | OpenBSD-Commit-ID: 02802018784250f68202f01c8561de82e17b0638 | ||
9045 | |||
9046 | commit 5f68ab436b0e01751d564e9a9041e6ac3673e45a | ||
9047 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9048 | Date: Wed Jun 19 20:12:44 2019 +0000 | ||
9049 | |||
9050 | upstream: from tim: - for reput, it is remote-path which is | ||
9051 | |||
9052 | optional, not local-path - sync help | ||
9053 | |||
9054 | from deraadt: | ||
9055 | - prefer -R and undocument -r (but add a comment for future editors) | ||
9056 | |||
9057 | from schwarze: | ||
9058 | - prefer -p and undocument -P (as above. the comment was schwarze's too) | ||
9059 | |||
9060 | more: | ||
9061 | - add the -f flag to reput and reget | ||
9062 | - sort help (i can;t remember who suggested this originally) | ||
9063 | |||
9064 | djm and deraadt were ok with earlier versions of this; | ||
9065 | tim and schwarze ok | ||
9066 | |||
9067 | OpenBSD-Commit-ID: 3c699b53b46111f5c57eed4533f132e7e58bacdd | ||
9068 | |||
9069 | commit 99bcbbc77fbd5a5027031f42a5931b21b07c947e | ||
9070 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9071 | Date: Fri Jun 14 04:03:48 2019 +0000 | ||
9072 | |||
9073 | upstream: check for convtime() refusing to accept times that | ||
9074 | |||
9075 | resolve to LONG_MAX Reported by Kirk Wolf bz2977; ok dtucker | ||
9076 | |||
9077 | OpenBSD-Regress-ID: 15c9fe87be1ec241d24707006a31123d3a3117e0 | ||
9078 | |||
9079 | commit e5cccb2410247c9b8151b9510a876abdf5424b24 | ||
9080 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9081 | Date: Sun Apr 28 22:53:26 2019 +0000 | ||
9082 | |||
9083 | upstream: Add unit tests for user@host and URI parsing. | ||
9084 | |||
9085 | OpenBSD-Regress-ID: 69d5b6f278e04ed32377046f7692c714c2d07a68 | ||
9086 | |||
9087 | commit 0bb7e38834e3f9886302bbaea630a6b0f8cfb520 | ||
9088 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9089 | Date: Thu Apr 18 18:57:16 2019 +0000 | ||
9090 | |||
9091 | upstream: Add tests for sshd -T -C with Match. | ||
9092 | |||
9093 | OpenBSD-Regress-ID: d4c34916fe20d717692f10ef50b5ae5a271c12c7 | ||
9094 | |||
9095 | commit 73eb6cef41daba0359c1888e4756108d41b4e819 | ||
9096 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9097 | Date: Sun Jun 16 12:55:27 2019 +1000 | ||
9098 | |||
9099 | Include stdio.h for vsnprintf. | ||
9100 | |||
9101 | Patch from mforney at mforney.org. | ||
9102 | |||
9103 | commit adcaf40fd0a180e6cb5798317fdf479b52e3c09a | ||
9104 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9105 | Date: Sat Jun 8 09:07:04 2019 +1000 | ||
9106 | |||
9107 | upstream rev 1.27: fix integer overflow. | ||
9108 | |||
9109 | Cast bitcount to u_in64_t before bit shifting to prevent integer overflow | ||
9110 | on 32bit platforms which cause incorrect results when adding a block | ||
9111 | >=512M in size. sha1 patch from ante84 at gmail.com via openssh github, | ||
9112 | sha2 with djm@, ok tedu@ | ||
9113 | |||
9114 | commit 7689048e6103d3c34cba24ac5aeea7bf8405d19a | ||
9115 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9116 | Date: Sat Jun 8 09:06:06 2019 +1000 | ||
9117 | |||
9118 | upstream rev 1.25: add DEF_WEAK. | ||
9119 | |||
9120 | Wrap blowfish, sha*, md5, and rmd160 so that internal calls go direct | ||
9121 | ok deraadt@ | ||
9122 | |||
9123 | commit 55f3153393ac7e072a4b4b21b194864460d8f44a | ||
9124 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9125 | Date: Sat Jun 8 09:02:24 2019 +1000 | ||
9126 | |||
9127 | upstream rev 1.25: add sys/types.h | ||
9128 | |||
9129 | commit 10974f986fa842a3a3a693e3d5761072540002b4 | ||
9130 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9131 | Date: Sat Jun 8 09:01:14 2019 +1000 | ||
9132 | |||
9133 | upstream: Use explicit_bzero instead of memset | ||
9134 | |||
9135 | in hash Final and End functions. OK deraadt@ djm@ | ||
9136 | |||
9137 | commit cb8f56570f70b00abae4267d4bcce2bfae7dfff6 | ||
9138 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9139 | Date: Fri Jun 14 04:13:58 2019 +0000 | ||
9140 | |||
9141 | upstream: slightly more instructive error message when the user | ||
9142 | |||
9143 | specifies multiple -J options on the commandline. bz3015 ok dtucker@ | ||
9144 | |||
9145 | OpenBSD-Commit-ID: 181c15a65cac3b575819bc8d9a56212c3c748179 | ||
9146 | |||
9147 | commit 2317ce4b0ed7d8c4b0c684e2d47bff5006bd1178 | ||
9148 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9149 | Date: Fri Jun 14 03:51:47 2019 +0000 | ||
9150 | |||
9151 | upstream: process agent requests for RSA certificate private keys using | ||
9152 | |||
9153 | correct signature algorithm when requested. Patch from Jakub Jelen in bz3016 | ||
9154 | ok dtucker markus | ||
9155 | |||
9156 | OpenBSD-Commit-ID: 61f86efbeb4a1857a3e91298c1ccc6cf49b79624 | ||
9157 | |||
9158 | commit c95b90d40170473825904be561b1eafba354f376 | ||
9159 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9160 | Date: Fri Jun 14 03:39:59 2019 +0000 | ||
9161 | |||
9162 | upstream: for public key authentication, check AuthorizedKeysFiles | ||
9163 | |||
9164 | files before consulting AuthorizedKeysCommand; ok dtucker markus | ||
9165 | |||
9166 | OpenBSD-Commit-ID: 13652998bea5cb93668999c39c3c48e8429db8b3 | ||
9167 | |||
9168 | commit a5a53914989ddd3521b6edc452bc3291784a4f4f | ||
9169 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9170 | Date: Fri Jun 14 03:28:19 2019 +0000 | ||
9171 | |||
9172 | upstream: if passed a bad fd, log what it was | ||
9173 | |||
9174 | OpenBSD-Commit-ID: 582e2bd05854e49365195b58989b68ac67f09140 | ||
9175 | |||
9176 | commit 7349149da1074d82b71722338e05b6a282f126cc | ||
9177 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9178 | Date: Wed Jun 12 11:31:50 2019 +0000 | ||
9179 | |||
9180 | upstream: Hostname->HostName cleanup; from lauri tirkkonen ok | ||
9181 | |||
9182 | dtucker | ||
9183 | |||
9184 | OpenBSD-Commit-ID: 4ade73629ede63b691f36f9a929f943d4e7a44e4 | ||
9185 | |||
9186 | commit 76af9c57387243556d38935555c227d0b34062c5 | ||
9187 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9188 | Date: Wed Jun 12 05:53:21 2019 +0000 | ||
9189 | |||
9190 | upstream: deraadt noticed some inconsistency in the way we denote | ||
9191 | |||
9192 | the "Hostname" and "X11UseLocalhost" keywords; this makes things consistent | ||
9193 | (effectively reversing my commit of yesterday); | ||
9194 | |||
9195 | ok deraadt markus djm | ||
9196 | |||
9197 | OpenBSD-Commit-ID: 255c02adb29186ac91dcf47dfad7adb1b1e54667 | ||
9198 | |||
9199 | commit d1bbfdd932db9b9b799db865ee1ff50060dfc895 | ||
9200 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9201 | Date: Tue Jun 11 13:39:40 2019 +0000 | ||
9202 | |||
9203 | upstream: consistent lettering for "HostName" keyword; from lauri | ||
9204 | |||
9205 | tirkkonen | ||
9206 | |||
9207 | OpenBSD-Commit-ID: 0c267a1257ed7482b13ef550837b6496e657d563 | ||
9208 | |||
9209 | commit fc0340f7c4ee29bfb12bd1de9f99defa797e16b4 | ||
9210 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9211 | Date: Sat Jun 8 00:10:59 2019 +1000 | ||
9212 | |||
9213 | Typo fixes in error messages. | ||
9214 | |||
9215 | Patch from knweiss at gmail.com via github pull req #97 (portable- | ||
9216 | specific parts). | ||
9217 | |||
9218 | commit 4b7dd22b02b64b1ededd3c0e98a6e7ae21e31d38 | ||
9219 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9220 | Date: Fri Jun 7 14:18:48 2019 +0000 | ||
9221 | |||
9222 | upstream: Typo and spelling fixes in comments and error messages. | ||
9223 | |||
9224 | Patch from knweiss at gmail.com via -portable. | ||
9225 | |||
9226 | OpenBSD-Commit-ID: 2577465442f761a39703762c4f87a8dfcb918b4b | ||
9227 | |||
9228 | commit 130ef0695e1731392ca33831939fe89e8b70cc17 | ||
9229 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9230 | Date: Sat Jun 8 00:47:07 2019 +1000 | ||
9231 | |||
9232 | Include missed bits from previous sync. | ||
9233 | |||
9234 | commit 25e3bccbaa63d27b9d5e09c123f1eb28594d2bd6 | ||
9235 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9236 | Date: Fri Jun 7 03:47:12 2019 +0000 | ||
9237 | |||
9238 | upstream: Check for user@host when parsing sftp target. This | ||
9239 | |||
9240 | allows user@[1.2.3.4] to work without a path in addition to with one. | ||
9241 | bz#2999, ok djm@ | ||
9242 | |||
9243 | OpenBSD-Commit-ID: d989217110932490ba8ce92127a9a6838878928b | ||
9244 | |||
9245 | commit 0323d9b619d512f80c57575b810a05791891f657 | ||
9246 | Author: otto@openbsd.org <otto@openbsd.org> | ||
9247 | Date: Thu Jun 6 05:13:13 2019 +0000 | ||
9248 | |||
9249 | upstream: Replace calls to ssh_malloc_init() by a static init of | ||
9250 | |||
9251 | malloc_options. Prepares for changes in the way malloc is initialized. ok | ||
9252 | guenther@ dtucker@ | ||
9253 | |||
9254 | OpenBSD-Commit-ID: 154f4e3e174f614b09f792d4d06575e08de58a6b | ||
9255 | |||
9256 | commit c586d2d3129265ea64b12960c379d634bccb6535 | ||
9257 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9258 | Date: Fri May 31 03:20:07 2019 +0000 | ||
9259 | |||
9260 | upstream: fix ssh-keysign fd handling problem introduced in r1.304 | ||
9261 | |||
9262 | caused by a typo (STDIN_FILENO vs STDERR_FILENO) | ||
9263 | |||
9264 | OpenBSD-Commit-ID: 57a0b4be7bef23963afe24150e24bf014fdd9cb0 | ||
9265 | |||
9266 | commit 410b231aa41ff830b2f5b09b5aaf5e5cdc1ab86b | ||
9267 | Author: lum@openbsd.org <lum@openbsd.org> | ||
9268 | Date: Wed May 29 08:30:26 2019 +0000 | ||
9269 | |||
9270 | upstream: Make the standard output messages of both methods of | ||
9271 | |||
9272 | changing a key pair's comments (using -c and -C) more applicable to both | ||
9273 | methods. ok and suggestions djm@ dtucker@ | ||
9274 | |||
9275 | OpenBSD-Commit-ID: b379338118109eb36e14a65bc0a12735205b3de6 | ||
9276 | |||
9277 | commit 2b3402dc9f1d9b0df70291b424f36e436cdfa7e0 | ||
9278 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9279 | Date: Sat Jun 8 00:03:07 2019 +1000 | ||
9280 | |||
9281 | Always clean up before and after utimensat test. | ||
9282 | |||
9283 | commit 182898192d4b720e4faeafd5b39c2cfb3b92aa21 | ||
9284 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9285 | Date: Fri Jun 7 23:47:37 2019 +1000 | ||
9286 | |||
9287 | Update utimensat test. | ||
9288 | |||
9289 | POSIX specifies that when given a symlink, AT_SYMLINK_NOFOLLOW should | ||
9290 | update the symlink and not the destination. The compat code doesn't | ||
9291 | have a way to do this, so where possible it fails instead of following a | ||
9292 | symlink when explicitly asked not to. Instead of checking for an explicit | ||
9293 | failure, check that it does not update the destination, which both the | ||
9294 | real and compat implmentations should honour. | ||
9295 | |||
9296 | Inspired by github pull req #125 from chutzpah at gentoo.org. | ||
9297 | |||
9298 | commit d220b675205185e0b4d6b6524acc2e5c599ef0e2 | ||
9299 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9300 | Date: Fri Jun 7 14:26:54 2019 +1000 | ||
9301 | |||
9302 | Have pthread_create return errno on failure. | ||
9303 | |||
9304 | According to POSIX, pthread_create returns the failure reason in | ||
9305 | the non-zero function return code so make the fork wrapper do that. | ||
9306 | Matches previous change. | ||
9307 | |||
9308 | commit 1bd4f7f25f653e0cadb2e6f25d79bc3c35c6aa4d | ||
9309 | Author: Elliott Hughes <enh@google.com> | ||
9310 | Date: Thu Apr 25 13:36:27 2019 -0700 | ||
9311 | |||
9312 | pthread_create(3) returns positive values on failure. | ||
9313 | |||
9314 | Found by inspection after finding similar bugs in other code used by | ||
9315 | Android. | ||
9316 | |||
9317 | commit b3a77b25e5f7880222b179431a74fad76d2cf60c | ||
9318 | Author: Harald Freudenberger <freude@linux.ibm.com> | ||
9319 | Date: Fri May 24 10:11:15 2019 +0200 | ||
9320 | |||
9321 | allow s390 specific ioctl for ecc hardware support | ||
9322 | |||
9323 | Adding another s390 specific ioctl to be able to support ECC hardware | ||
9324 | acceleration to the sandbox seccomp filter rules. | ||
9325 | |||
9326 | Now the ibmca openssl engine provides elliptic curve cryptography | ||
9327 | support with the help of libica and CCA crypto cards. This is done via | ||
9328 | jet another ioctl call to the zcrypt device driver and so there is a | ||
9329 | need to enable this on the openssl sandbox. | ||
9330 | |||
9331 | Code is s390 specific and has been tested, verified and reviewed. | ||
9332 | |||
9333 | Please note that I am also the originator of the previous changes in | ||
9334 | that area. I posted these changes to Eduardo and he forwarded the | ||
9335 | patches to the openssl community. | ||
9336 | |||
9337 | Signed-off-by: Harald Freudenberger <freude@linux.ibm.com> | ||
9338 | Reviewed-by: Joerg Schmidbauer <jschmidb@de.ibm.com> | ||
9339 | |||
9340 | commit 2459df9aa11820f8092a8651aeb381af7ebbccb1 | ||
9341 | Author: Sorin Adrian Savu <sorin25@users.noreply.github.com> | ||
9342 | Date: Sun May 26 21:50:08 2019 +0300 | ||
9343 | |||
9344 | openssl-devel is obsoleted by libssl-devel | ||
9345 | |||
9346 | openssl-devel is no longer installable via the cygwin setup and | ||
9347 | it's hidden by default, so you can't see the replacement very easy. | ||
9348 | |||
9349 | commit 85ceb0e64bff672558fc87958cd548f135c83cdd | ||
9350 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9351 | Date: Mon May 20 06:01:59 2019 +0000 | ||
9352 | |||
9353 | upstream: tweak previous; | ||
9354 | |||
9355 | OpenBSD-Commit-ID: 42f39f22f53cfcb913bce401ae0f1bb93e08dd6c | ||
9356 | |||
9357 | commit 30615295609f5c57b3137b3021fe63bfa45c1985 | ||
9358 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9359 | Date: Mon May 20 00:25:55 2019 +0000 | ||
9360 | |||
9361 | upstream: embiggen format buffer size for certificate serial number so | ||
9362 | |||
9363 | that it will fit a full 64 bit integer. bz#3012 from Manoel Domingues Junior | ||
9364 | |||
9365 | OpenBSD-Commit-ID: a51f3013056d05b976e5af6b978dcb9e27bbc12b | ||
9366 | |||
9367 | commit 476e3551b2952ef73acc43d995e832539bf9bc4d | ||
9368 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9369 | Date: Mon May 20 00:20:35 2019 +0000 | ||
9370 | |||
9371 | upstream: When signing certificates with an RSA key, default to | ||
9372 | |||
9373 | using the rsa-sha2-512 signature algorithm. Certificates signed by RSA keys | ||
9374 | will therefore be incompatible with OpenSSH < 7.2 unless the default is | ||
9375 | overridden. | ||
9376 | |||
9377 | Document the ability of the ssh-keygen -t flag to override the | ||
9378 | signature algorithm when signing certificates, and the new default. | ||
9379 | |||
9380 | ok deraadt@ | ||
9381 | |||
9382 | OpenBSD-Commit-ID: 400c9c15013978204c2cb80f294b03ae4cfc8b95 | ||
9383 | |||
9384 | commit 606077ee1e77af5908431d003fb28461ef7be092 | ||
9385 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9386 | Date: Fri May 17 13:14:12 2019 +1000 | ||
9387 | |||
9388 | Add no-op implementation of pam_putenv. | ||
9389 | |||
9390 | Some platforms such as HP-UX do not have pam_putenv. Currently the | ||
9391 | calls are ifdef'ed out, but a new one was recently added. Remove the | ||
9392 | ifdefs and add a no-op implementation. bz#3008, ok djm. | ||
9393 | |||
9394 | commit 1ac98be8724c9789d770ddb8e7f0dbf1b55e05a0 | ||
9395 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9396 | Date: Fri May 17 12:42:17 2019 +1000 | ||
9397 | |||
9398 | Use the correct macro for SSH_ALLOWED_CA_SIGALGS. | ||
9399 | |||
9400 | commit 97370f6c2c3b825f8c577b7e6c00b1a98d30a6cf | ||
9401 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9402 | Date: Fri May 17 10:54:51 2019 +1000 | ||
9403 | |||
9404 | Fix building w/out ECC. | ||
9405 | |||
9406 | Ifdef out ECC specific code so that that it'll build against an OpenSSL | ||
9407 | configured w/out ECC. With & ok djm@ | ||
9408 | |||
9409 | commit 633703babf8d9a88da85f23b800e1b88dec7cdbd | ||
9410 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9411 | Date: Fri May 17 10:50:29 2019 +1000 | ||
9412 | |||
9413 | Conditionalize ECDH methods in CA algos. | ||
9414 | |||
9415 | When building against an OpenSSL configured without ECC, don't include | ||
9416 | those algos in CASignatureAlgorithms. ok djm@ | ||
9417 | |||
9418 | commit 5c8d14c512f5d413095b22bdba08a6bb990f1e97 | ||
9419 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9420 | Date: Thu May 16 08:47:27 2019 +0000 | ||
9421 | |||
9422 | upstream: Move a variable declaration to the block where it's used | ||
9423 | |||
9424 | to make things a little tidier for -portable. | ||
9425 | |||
9426 | OpenBSD-Commit-ID: 616379861be95619e5358768b7dee4793e2f3a75 | ||
9427 | |||
9428 | commit a1d29cc36a5e6eeabc935065a8780e1ba5b67014 | ||
9429 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
9430 | Date: Wed May 15 04:43:31 2019 +0000 | ||
9431 | |||
9432 | upstream: When doing the fork+exec'ing for ssh-keysign, rearrange | ||
9433 | |||
9434 | the socket into fd3, so as to not mistakenly leak other fd forward | ||
9435 | accidentally. ok djm | ||
9436 | |||
9437 | OpenBSD-Commit-ID: 24cc753f5aa2c6a7d0fbf62766adbc75cd785296 | ||
9438 | |||
9439 | commit db7606d4a62fee67b0cb2f32dfcbd7b3642bfef5 | ||
9440 | Author: schwarze@openbsd.org <schwarze@openbsd.org> | ||
9441 | Date: Tue May 14 12:47:17 2019 +0000 | ||
9442 | |||
9443 | upstream: Delete some .Sx macros that were used in a wrong way. | ||
9444 | |||
9445 | Part of a patch from Stephen Gregoratto <dev at sgregoratto dot me>. | ||
9446 | |||
9447 | OpenBSD-Commit-ID: 15501ed13c595f135e7610b1a5d8345ccdb513b7 | ||
9448 | |||
9449 | commit cb4accb1233865d9151f8a50cc5f0c61a3fd4077 | ||
9450 | Author: florian@openbsd.org <florian@openbsd.org> | ||
9451 | Date: Fri May 10 18:55:17 2019 +0000 | ||
9452 | |||
9453 | upstream: For PermitOpen violations add the remote host and port to | ||
9454 | |||
9455 | be able to find out from where the request was comming. | ||
9456 | |||
9457 | Add the same logging for PermitListen violations which where not | ||
9458 | logged at all. | ||
9459 | |||
9460 | Pointed out by Robert Kisteleki (robert AT ripe.net) | ||
9461 | |||
9462 | input markus | ||
9463 | OK deraadt | ||
9464 | |||
9465 | OpenBSD-Commit-ID: 8a7d0f1b7175504c0d1dca8d9aca1588b66448c8 | ||
9466 | |||
9467 | commit cd16aceec148d55088fc8df6be88335578d85258 | ||
9468 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9469 | Date: Thu May 16 07:53:20 2019 +1000 | ||
9470 | |||
9471 | Add OpenSSL 1.1.1 to the supported list. | ||
9472 | |||
9473 | Clarify the language around prngd and egd. | ||
9474 | |||
9475 | commit 6fd4aa2aafbce90acb11a328ca0aa0696cb01c6b | ||
9476 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9477 | Date: Wed May 15 16:19:14 2019 +1000 | ||
9478 | |||
9479 | Fix typo in man page formatter selector. | ||
9480 | |||
9481 | commit 285546b73e2c172565c992a695927ac8cf3b4cc6 | ||
9482 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9483 | Date: Fri May 10 15:04:42 2019 +1000 | ||
9484 | |||
9485 | Use "doc" man page format if mandoc present. | ||
9486 | |||
9487 | Previously configure would not select the "doc" man page format if | ||
9488 | mandoc was present but nroff was not. This checks for mandoc first | ||
9489 | and removes a now-superflous AC_PATH_PROG. Based on a patch from | ||
9490 | vehk at vehk.de and feedback from schwarze at usta.de. | ||
9491 | |||
9492 | commit 62dd70613b77b229f53db3cc1c3e8a206fa2b582 | ||
9493 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9494 | Date: Fri May 3 06:06:30 2019 +0000 | ||
9495 | |||
9496 | upstream: Use the correct (according to POSIX) format for | ||
9497 | |||
9498 | left-justification in snmprintf. bz#3002, patch from velemas at gmail.com, ok | ||
9499 | markus@. | ||
9500 | |||
9501 | OpenBSD-Commit-ID: 65d252b799be0cc8f68b6c47cece0a57bb00fea7 | ||
9502 | |||
9503 | commit 62be1ffe5ffc68cfaac183320503c00a8c72e0b1 | ||
9504 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9505 | Date: Fri May 3 04:11:00 2019 +0000 | ||
9506 | |||
9507 | upstream: Free channel objects on exit path. Patch from markus at | ||
9508 | |||
9509 | blueflash.cc, ok deraadt | ||
9510 | |||
9511 | OpenBSD-Commit-ID: dbe4db381603909482211ffdd2b48abd72169117 | ||
9512 | |||
9513 | commit 1c554a5d94b9de6bd5374e2992a5662746cc39ba | ||
9514 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9515 | Date: Fri May 3 03:27:38 2019 +0000 | ||
9516 | |||
9517 | upstream: Free host on exit path. Patch from markus at | ||
9518 | |||
9519 | blueflash.cc, ok djm@ | ||
9520 | |||
9521 | OpenBSD-Commit-ID: c54e9945d93c4ce28350d8b9fa8b71f744ef2b5a | ||
9522 | |||
9523 | commit 99043bd64e5e0f427173f4fa83ef25a4676624a3 | ||
9524 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9525 | Date: Fri May 3 03:25:18 2019 +0000 | ||
9526 | |||
9527 | upstream: Wrap XMSS including in ifdef. Patch from markus at | ||
9528 | |||
9529 | blueflash.cc, ok djm | ||
9530 | |||
9531 | OpenBSD-Commit-ID: e3b34fc35cf12d33bde91ac03633210a3bc0f8b5 | ||
9532 | |||
9533 | commit 8fcfb7789c43a19d24162a7a4055cd09ee951b34 | ||
9534 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9535 | Date: Fri Apr 26 08:37:17 2019 +0000 | ||
9536 | |||
9537 | upstream: Import regenerated moduli. | ||
9538 | |||
9539 | OpenBSD-Commit-ID: db6375fc302e3bdf07d96430c63c991b2c2bd3ff | ||
9540 | |||
9541 | commit 3a7db919d5dd09f797971b3cf8ee301767459774 | ||
9542 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9543 | Date: Tue Apr 23 11:56:41 2019 +0000 | ||
9544 | |||
9545 | upstream: Use the LogLevel typdef instead of int where appropriate. Patch from Markus Schmidt via openssh-unix-dev, ok markus@ | ||
9546 | |||
9547 | OpenBSD-Commit-ID: 4c0f0f458e3da7807806b35e3eb5c1e8403c968a | ||
9548 | |||
9549 | commit d7c6e38b87efab1f140745fd8b1106b82e6e4a68 | ||
9550 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9551 | Date: Fri Apr 19 05:47:44 2019 +0000 | ||
9552 | |||
9553 | upstream: Document new default RSA key size. From | ||
9554 | |||
9555 | sebastiaanlokhorst at gmail.com via bz#2997. | ||
9556 | |||
9557 | OpenBSD-Commit-ID: bdd62ff5d4d649d2147904e91bf7cefa82fe11e1 | ||
9558 | |||
9559 | commit e826bbcafe26dac349a8593da5569e82faa45ab8 | ||
9560 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9561 | Date: Thu Apr 18 18:56:16 2019 +0000 | ||
9562 | |||
9563 | upstream: When running sshd -T, assume any attibute not provided by | ||
9564 | |||
9565 | -C does not match, which allows it to work when sshd_config contains a Match | ||
9566 | directive with or without -C. bz#2858, ok djm@ | ||
9567 | |||
9568 | OpenBSD-Commit-ID: 1a701f0a33e3bc96753cfda2fe0b0378520b82eb | ||
9569 | |||
9570 | commit 5696512d7ad57e85e89f8011ce8dec617be686aa | ||
9571 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9572 | Date: Thu Apr 18 07:32:56 2019 +0000 | ||
9573 | |||
9574 | upstream: Remove crc32.{c,h} which were only used by the now-gone | ||
9575 | |||
9576 | SSH1 protocol. Patch from yumkam at gmail.com, ok deraadt. | ||
9577 | |||
9578 | OpenBSD-Commit-ID: cceda5876c5ba6b4d8abcd52335329198cee3240 | ||
9579 | |||
9580 | commit 34e87fb5d9ce607f5701ab4c31d837ad8133e2d1 | ||
9581 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9582 | Date: Tue Apr 30 12:27:57 2019 +1000 | ||
9583 | |||
9584 | Remove unused variables from RLIMIT_NOFILE test. | ||
9585 | |||
9586 | commit 35e82e62c1ef53cfa457473a4c4d957d6197371a | ||
9587 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9588 | Date: Fri Apr 26 18:38:27 2019 +1000 | ||
9589 | |||
9590 | Import regenerated moduli. | ||
9591 | |||
9592 | commit 5590f53f99219e95dc23b0ebd220f19a6f46b101 | ||
9593 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9594 | Date: Fri Apr 26 18:22:10 2019 +1000 | ||
9595 | |||
9596 | Whitespace resync w/OpenBSD. | ||
9597 | |||
9598 | Patch from markus at blueflash.cc via openssh-unix-dev. | ||
9599 | |||
9600 | commit b7b8334914fb9397a6725f3b5d2de999b0bb69ac | ||
9601 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9602 | Date: Fri Apr 26 18:06:34 2019 +1000 | ||
9603 | |||
9604 | Don't install duplicate STREAMS modules on Solaris | ||
9605 | |||
9606 | Check if STREAMS modules are already installed on pty before installing | ||
9607 | since when compiling with XPG>=4 they will likely be installed already. | ||
9608 | Prevents hangs and duplicate lines on the terminal. bz#2945 and bz#2998, | ||
9609 | patch from djm@ | ||
9610 | |||
9611 | commit fd0fa130ecf06d7d092932adcd5d77f1549bfc8d | ||
9612 | Author: Damien Miller <djm@mindrot.org> | ||
9613 | Date: Thu Apr 18 08:52:57 2019 +1000 | ||
9614 | |||
9615 | makedepend | ||
9616 | |||
9617 | commit 5de397a876b587ba05a9169237deffdc71f273b0 | ||
9618 | Author: Damien Miller <djm@mindrot.org> | ||
9619 | Date: Fri Apr 5 11:29:51 2019 -0700 | ||
9620 | |||
9621 | second thoughts: leave README in place | ||
9622 | |||
9623 | A number of contrib/* files refer to the existing README so let's leave | ||
9624 | it in place for release and add the new markdown version in parallel. | ||
9625 | |||
9626 | I'll get rid of README after release. | ||
9627 | |||
9628 | commit 5d3127d9274519b25ed10e320f45045ba8d7f3be | ||
9629 | Author: Damien Miller <djm@mindrot.org> | ||
9630 | Date: Fri Apr 5 11:29:31 2019 -0700 | ||
9631 | |||
9632 | Revert "rewrite README" | ||
9633 | |||
9634 | This reverts commit 9444d82678cb7781820da4d1c23b3c2b9fb1e12f. | ||
9635 | |||
9636 | commit 9444d82678cb7781820da4d1c23b3c2b9fb1e12f | ||
9637 | Author: Damien Miller <djm@mindrot.org> | ||
9638 | Date: Fri Apr 5 11:21:48 2019 -0700 | ||
9639 | |||
9640 | rewrite README | ||
9641 | |||
9642 | Include basic build instructions and comments on commonly-used build- | ||
9643 | time flags, links to the manual pages and other resources. | ||
9644 | |||
9645 | Now in Markdown format for better viewing on github, etc. | ||
9646 | |||
9647 | commit a924de0c4908902433813ba205bee1446bd1a157 | ||
9648 | Author: Damien Miller <djm@mindrot.org> | ||
9649 | Date: Fri Apr 5 03:41:52 2019 +1100 | ||
9650 | |||
9651 | update versions | ||
9652 | |||
9653 | commit 312dcee739bca5d6878c536537b2a8a497314b75 | ||
9654 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9655 | Date: Wed Apr 3 15:48:45 2019 +0000 | ||
9656 | |||
9657 | upstream: openssh-8.0 | ||
9658 | |||
9659 | OpenBSD-Commit-ID: 5aafdf218679dab982fea20771afd643be9a127b | ||
9660 | |||
9661 | commit 885bc114692046d55e2a170b932bdc0092fa3456 | ||
9662 | Author: Damien Miller <djm@mindrot.org> | ||
9663 | Date: Thu Apr 4 02:47:40 2019 +1100 | ||
9664 | |||
9665 | session: Do not use removed API | ||
9666 | |||
9667 | from Jakub Jelen | ||
9668 | |||
9669 | commit 9d7b2882b0c9a5e9bf8312ce4075bf178e2b98be | ||
9670 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9671 | Date: Fri Mar 29 11:31:40 2019 +0000 | ||
9672 | |||
9673 | upstream: when logging/fataling on error, include a bit more detail | ||
9674 | |||
9675 | than just the function name and the error message | ||
9676 | |||
9677 | OpenBSD-Commit-ID: dd72d7eba2215fcb89be516c378f633ea5bcca9f | ||
9678 | |||
9679 | commit 79a87d32783d6c9db40af8f35e091d9d30365ae7 | ||
9680 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9681 | Date: Wed Apr 3 06:27:45 2019 +1100 | ||
9682 | |||
9683 | Remove "struct ssh" from sys_auth_record_login. | ||
9684 | |||
9685 | It's not needed, and is not available from the call site in loginrec.c | ||
9686 | Should only affect AIX, spotted by Kevin Brott. | ||
9687 | |||
9688 | commit 138c0d52cdc90f9895333b82fc57d81cce7a3d90 | ||
9689 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9690 | Date: Tue Apr 2 18:21:35 2019 +1100 | ||
9691 | |||
9692 | Adapt custom_failed_login to new prototype. | ||
9693 | |||
9694 | Spotted by Kevin Brott. | ||
9695 | |||
9696 | commit a0ca4009ab2f0b1007ec8ab6864dbf9b760a8ed5 | ||
9697 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9698 | Date: Mon Apr 1 20:07:23 2019 +1100 | ||
9699 | |||
9700 | Add includes.h for compat layer. | ||
9701 | |||
9702 | Should fix build on AIX 7.2. | ||
9703 | |||
9704 | commit 00991151786ce9b1d577bdad1f83a81d19c8236d | ||
9705 | Author: Tim Rice <tim@multitalents.net> | ||
9706 | Date: Sun Mar 31 22:14:22 2019 -0700 | ||
9707 | |||
9708 | Stop USL compilers for erroring with "integral constant expression expected" | ||
9709 | |||
9710 | commit 43f47ebbdd4037b569c23b8f4f7981f53b567f1d | ||
9711 | Author: Tim Rice <tim@multitalents.net> | ||
9712 | Date: Sun Mar 31 19:22:19 2019 -0700 | ||
9713 | |||
9714 | Only use O_NOFOLLOW in fchownat and fchmodat if defined | ||
9715 | |||
9716 | commit 342d6e51589b184c337cccfc4c788b60ff8b3765 | ||
9717 | Author: Jakub Jelen <jjelen@redhat.com> | ||
9718 | Date: Fri Mar 29 12:29:41 2019 +0100 | ||
9719 | |||
9720 | Adjust softhsm2 path on Fedora Linux for regress | ||
9721 | |||
9722 | The SoftHSM lives in Fedora in /usr/lib64/pkcs11/libsofthsm2.so | ||
9723 | |||
9724 | commit f5abb05f8c7358dacdcb866fe2813f6d8efd5830 | ||
9725 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9726 | Date: Thu Mar 28 09:26:14 2019 +1100 | ||
9727 | |||
9728 | Only use O_NOFOLLOW in utimensat if defined. | ||
9729 | |||
9730 | Fixes build on systems that don't have it (Solaris <=9) Found by | ||
9731 | Tom G. Christensen. | ||
9732 | |||
9733 | commit 786cd4c1837fdc3fe7b4befe54a3f37db7df8715 | ||
9734 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
9735 | Date: Wed Mar 27 18:18:21 2019 +0100 | ||
9736 | |||
9737 | drop old Cygwin considerations | ||
9738 | |||
9739 | - Cygwin supports non-DOS characters in filenames | ||
9740 | - Cygwin does not support Windows XP anymore | ||
9741 | |||
9742 | Signed-off-by: Corinna Vinschen <vinschen@redhat.com> | ||
9743 | |||
9744 | commit 21da87f439b48a85b951ef1518fe85ac0273e719 | ||
9745 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9746 | Date: Wed Mar 27 09:29:14 2019 +0000 | ||
9747 | |||
9748 | upstream: fix interaction between ClientAliveInterval and RekeyLimit | ||
9749 | |||
9750 | that could cause connection to close incorrectly; Report and patch from Jakub | ||
9751 | Jelen in bz#2757; ok dtucker@ markus@ | ||
9752 | |||
9753 | OpenBSD-Commit-ID: 17229a8a65bd8e6c2080318ec2b7a61e1aede3fb | ||
9754 | |||
9755 | commit 4f0019a9afdb4a94d83b75e82dbbbe0cbe826c56 | ||
9756 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9757 | Date: Mon Mar 25 22:34:52 2019 +0000 | ||
9758 | |||
9759 | upstream: Fix authentication failures when "AuthenticationMethods | ||
9760 | |||
9761 | any" in a Match block overrides a more restrictive global default. | ||
9762 | |||
9763 | Spotted by jmc@, ok markus@ | ||
9764 | |||
9765 | OpenBSD-Commit-ID: a90a4fe2ab81d0eeeb8fdfc21af81f7eabda6666 | ||
9766 | |||
9767 | commit d6e5def308610f194c0ec3ef97a34a3e9630e190 | ||
9768 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9769 | Date: Mon Mar 25 22:33:44 2019 +0000 | ||
9770 | |||
9771 | upstream: whitespace | ||
9772 | |||
9773 | OpenBSD-Commit-ID: 106e853ae8a477e8385bc53824d3884a8159db07 | ||
9774 | |||
9775 | commit 26e0cef07b04479537c971dec898741df1290fe5 | ||
9776 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9777 | Date: Mon Mar 25 16:19:44 2019 +0000 | ||
9778 | |||
9779 | upstream: Expand comment to document rationale for default key | ||
9780 | |||
9781 | sizes. "seems worthwhile" deraadt. | ||
9782 | |||
9783 | OpenBSD-Commit-ID: 72e5c0983d7da1fb72f191870f36cb58263a2456 | ||
9784 | |||
9785 | commit f47269ea67eb4ff87454bf0d2a03e55532786482 | ||
9786 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9787 | Date: Mon Mar 25 15:49:00 2019 +0000 | ||
9788 | |||
9789 | upstream: Increase the default RSA key size to 3072 bits. Based on | ||
9790 | |||
9791 | the estimates from NIST Special Publication 800-57, 3k bits provides security | ||
9792 | equivalent to 128 bits which is the smallest symmetric cipher we enable by | ||
9793 | default. ok markus@ deraadt@ | ||
9794 | |||
9795 | OpenBSD-Commit-ID: 461dd32ebe808f88f4fc3ec74749b0e6bef2276b | ||
9796 | |||
9797 | commit 62949c5b37af28d8490d94866e314a76be683a5e | ||
9798 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9799 | Date: Fri Mar 22 20:58:34 2019 +0000 | ||
9800 | |||
9801 | upstream: full stop in the wrong place; | ||
9802 | |||
9803 | OpenBSD-Commit-ID: 478a0567c83553a2aebf95d0f1bd67ac1b1253e4 | ||
9804 | |||
9805 | commit 1b1332b5bb975d759a50b37f0e8bc8cfb07a0bb0 | ||
9806 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
9807 | Date: Sat Mar 16 19:14:21 2019 +0000 | ||
9808 | |||
9809 | upstream: benno helped me clean up the tcp forwarding section; | ||
9810 | |||
9811 | OpenBSD-Commit-ID: d4bec27edefde636fb632b7f0b7c656b9c7b7f08 | ||
9812 | |||
9813 | commit 2aee9a49f668092ac5c9d34e904ef7a9722e541d | ||
9814 | Author: markus@openbsd.org <markus@openbsd.org> | ||
9815 | Date: Fri Mar 8 17:24:43 2019 +0000 | ||
9816 | |||
9817 | upstream: fix use-after-free in ssh-pkcs11; found by hshoexer w/AFL | ||
9818 | |||
9819 | OpenBSD-Commit-ID: febce81cca72b71f70513fbee4ff52ca050f675c | ||
9820 | |||
9821 | commit 9edbd7821e6837e98e7e95546cede804dac96754 | ||
9822 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9823 | Date: Thu Mar 14 10:17:28 2019 +1100 | ||
9824 | |||
9825 | Fix build when configured --without-openssl. | ||
9826 | |||
9827 | ok djm@ | ||
9828 | |||
9829 | commit 825ab32f0d04a791e9d19d743c61ff8ed9b4d8e5 | ||
9830 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9831 | Date: Thu Mar 14 08:51:17 2019 +1100 | ||
9832 | |||
9833 | On Cygwin run sshd as SYSTEM where possible. | ||
9834 | |||
9835 | Seteuid now creates user token using S4U. We don't create a token | ||
9836 | from scratch anymore, so we don't need the "Create a process token" | ||
9837 | privilege. The service can run under SYSTEM again... | ||
9838 | |||
9839 | ...unless Cygwin is running on Windows Vista or Windows 7 in the | ||
9840 | WOW64 32 bit emulation layer. It turns out that WOW64 on these systems | ||
9841 | didn't implement MsV1_0 S4U Logon so we still need the fallback | ||
9842 | to NtCreateToken for these systems. | ||
9843 | |||
9844 | Signed-off-by: Corinna Vinschen <vinschen@redhat.com> | ||
9845 | |||
9846 | commit a212107bfdf4d3e870ab7a443e4d906e5b9578c3 | ||
9847 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9848 | Date: Wed Mar 13 10:49:16 2019 +1100 | ||
9849 | |||
9850 | Replace alloca with xcalloc. | ||
9851 | |||
9852 | The latter checks for memory exhaustion and integer overflow and may be | ||
9853 | at a less predictable place. Sanity check by vinschen at redhat.com, ok | ||
9854 | djm@ | ||
9855 | |||
9856 | commit daa7505aadca68ba1a2c70cbdfce423208eb91ee | ||
9857 | Author: Darren Tucker <dtucker@dtucker.net> | ||
9858 | Date: Tue Mar 12 09:19:19 2019 +1100 | ||
9859 | |||
9860 | Use Cygwin-specific matching only for users+groups. | ||
9861 | |||
9862 | Patch from vinschen at redhat.com, updated a little by me. | ||
9863 | |||
9864 | commit fd10cf027b56f9aaa80c9e3844626a05066589a4 | ||
9865 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9866 | Date: Wed Mar 6 22:14:23 2019 +0000 | ||
9867 | |||
9868 | upstream: Move checks for lists of users or groups into their own | ||
9869 | |||
9870 | function. This is a no-op on OpenBSD but will make things easier in | ||
9871 | -portable, eg on systems where these checks should be case-insensitive. ok | ||
9872 | djm@ | ||
9873 | |||
9874 | OpenBSD-Commit-ID: 8bc9c8d98670e23f8eaaaefe29c1f98e7ba0487e | ||
9875 | |||
9876 | commit ab5fee8eb6a011002fd9e32b1597f02aa8804a25 | ||
9877 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
9878 | Date: Wed Mar 6 21:06:59 2019 +0000 | ||
9879 | |||
9880 | upstream: Reset last-seen time when sending a keepalive. Prevents | ||
9881 | |||
9882 | sending two keepalives successively and prematurely terminating connection | ||
9883 | when ClientAliveCount=1. While there, collapse two similar tests into one. | ||
9884 | ok markus@ | ||
9885 | |||
9886 | OpenBSD-Commit-ID: 043670d201dfe222537a2a4bed16ce1087de5ddd | ||
9887 | |||
9888 | commit c13b74530f9f1d9df7aeae012004b31b2de4438e | ||
9889 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
9890 | Date: Tue Mar 5 16:17:12 2019 +0000 | ||
9891 | |||
9892 | upstream: PKCS#11 support is no longer limited to RSA; ok benno@ | ||
9893 | |||
9894 | kn@ | ||
9895 | |||
9896 | OpenBSD-Commit-ID: 1a9bec64d530aed5f434a960e7515a3e80cbc826 | ||
9897 | |||
9898 | commit e9552d6043db7cd170ac6ba1b4d2c7a5eb2c3201 | ||
9899 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9900 | Date: Fri Mar 1 03:29:32 2019 +0000 | ||
9901 | |||
9902 | upstream: in ssh_set_newkeys(), mention the direction that we're | ||
9903 | |||
9904 | keying in debug messages. Previously it would be difficult to tell which | ||
9905 | direction it was talking about | ||
9906 | |||
9907 | OpenBSD-Commit-ID: c2b71bfcceb2a7389b9d0b497fb2122a406a522d | ||
9908 | |||
9909 | commit 76a24b3fa193a9ca3e47a8779d497cb06500798b | ||
9910 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9911 | Date: Fri Mar 1 02:32:39 2019 +0000 | ||
9912 | |||
9913 | upstream: Fix two race conditions in sshd relating to SIGHUP: | ||
9914 | |||
9915 | 1. Recently-forked child processes will briefly remain listening to | ||
9916 | listen_socks. If the main server sshd process completes its restart | ||
9917 | via execv() before these sockets are closed by the child processes | ||
9918 | then it can fail to listen at the desired addresses/ports and/or | ||
9919 | fail to restart. | ||
9920 | |||
9921 | 2. When a SIGHUP is received, there may be forked child processes that | ||
9922 | are awaiting their reexecution state. If the main server sshd | ||
9923 | process restarts before passing this state, these child processes | ||
9924 | will yield errors and use a fallback path of reading the current | ||
9925 | sshd_config from the filesystem rather than use the one that sshd | ||
9926 | was started with. | ||
9927 | |||
9928 | To fix both of these cases, we reuse the startup_pipes that are shared | ||
9929 | between the main server sshd and forked children. Previously this was | ||
9930 | used solely to implement tracking of pre-auth child processes for | ||
9931 | MaxStartups, but this extends the messaging over these pipes to include | ||
9932 | a child->parent message that the parent process is safe to restart. This | ||
9933 | message is sent from the child after it has completed its preliminaries: | ||
9934 | closing listen_socks and receiving its reexec state. | ||
9935 | |||
9936 | bz#2953, reported by Michal Koutný; ok markus@ dtucker@ | ||
9937 | |||
9938 | OpenBSD-Commit-ID: 7df09eacfa3ce13e9a7b1e9f17276ecc924d65ab | ||
9939 | |||
9940 | commit de817e9dfab99473017d28cdf69e60397d00ea21 | ||
9941 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9942 | Date: Fri Mar 1 02:16:47 2019 +0000 | ||
9943 | |||
9944 | upstream: mention PKCS11Provide=none, reword a little and remove | ||
9945 | |||
9946 | mention of RSA keys only (since we support ECDSA now and might support others | ||
9947 | in the future). Inspired by Jakub Jelen via bz#2974 | ||
9948 | |||
9949 | OpenBSD-Commit-ID: a92e3686561bf624ccc64ab320c96c9e9a263aa5 | ||
9950 | |||
9951 | commit 95a8058c1a90a27acbb91392ba206854abc85226 | ||
9952 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9953 | Date: Fri Mar 1 02:08:50 2019 +0000 | ||
9954 | |||
9955 | upstream: let PKCS11Provider=none do what users expect | ||
9956 | |||
9957 | print PKCS11Provider instead of obsolete SmartcardDevice in config dump. | ||
9958 | |||
9959 | bz#2974 ok dtucker@ | ||
9960 | |||
9961 | OpenBSD-Commit-ID: c303d6f0230a33aa2dd92dc9b68843d56a64f846 | ||
9962 | |||
9963 | commit 8e7bac35aa576d2fd7560836da83733e864ce649 | ||
9964 | Author: markus@openbsd.org <markus@openbsd.org> | ||
9965 | Date: Wed Feb 27 19:37:01 2019 +0000 | ||
9966 | |||
9967 | upstream: dup stdout/in for proxycommand=-, otherwise stdout might | ||
9968 | |||
9969 | be redirected to /dev/null; ok djm@ | ||
9970 | |||
9971 | OpenBSD-Commit-ID: 97dfce4c47ed4055042de8ebde85b7d88793e595 | ||
9972 | |||
9973 | commit 9b61130fbd95d196bce81ebeca94a4cb7c0d5ba0 | ||
9974 | Author: djm@openbsd.org <djm@openbsd.org> | ||
9975 | Date: Sat Feb 23 08:20:43 2019 +0000 | ||
9976 | |||
9977 | upstream: openssh-7.9 accidentally reused the server's algorithm lists | ||
9978 | |||
9979 | in the client for KEX, ciphers and MACs. The ciphers and MACs were identical | ||
9980 | between the client and server, but the error accidentially disabled the | ||
9981 | diffie-hellman-group-exchange-sha1 KEX method. | ||
9982 | |||
9983 | This fixes the client code to use the correct method list, but | ||
9984 | because nobody complained, it also disables the | ||
9985 | diffie-hellman-group-exchange-sha1 KEX method. | ||
9986 | |||
9987 | Reported by nuxi AT vault24.org via bz#2697; ok dtucker | ||
9988 | |||
9989 | OpenBSD-Commit-ID: e30c33a23c10fd536fefa120e86af1842e33fd57 | ||
9990 | |||
9991 | commit 37638c752041d591371900df820f070037878a2d | ||
9992 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
9993 | Date: Wed Feb 20 13:41:25 2019 +0100 | ||
9994 | |||
9995 | Cygwin: implement case-insensitive Unicode user and group name matching | ||
9996 | |||
9997 | The previous revert enabled case-insensitive user names again. This | ||
9998 | patch implements the case-insensitive user and group name matching. | ||
9999 | To allow Unicode chars, implement the matcher using wchar_t chars in | ||
10000 | Cygwin-specific code. Keep the generic code changes as small as possible. | ||
10001 | Cygwin: implement case-insensitive Unicode user and group name matching | ||
10002 | |||
10003 | Signed-off-by: Corinna Vinschen <vinschen@redhat.com> | ||
10004 | |||
10005 | commit bed1d43698807a07bb4ddb93a46b0bd84b9970b3 | ||
10006 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10007 | Date: Fri Feb 22 15:21:21 2019 +1100 | ||
10008 | |||
10009 | Revert unintended parts of previous commit. | ||
10010 | |||
10011 | commit f02afa350afac1b2f2d1413259a27a4ba1e2ca24 | ||
10012 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
10013 | Date: Wed Feb 20 13:41:24 2019 +0100 | ||
10014 | |||
10015 | Revert "[auth.c] On Cygwin, refuse usernames that have differences in case" | ||
10016 | |||
10017 | This reverts commit acc9b29486dfd649dfda474e5c1a03b317449f1c. | ||
10018 | |||
10019 | Signed-off-by: Corinna Vinschen <vinschen@redhat.com> | ||
10020 | |||
10021 | commit 4c55b674835478eb80a1a7aeae588aa654e2a433 | ||
10022 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
10023 | Date: Sat Feb 16 14:13:43 2019 +0100 | ||
10024 | |||
10025 | Add tags to .gitignore | ||
10026 | |||
10027 | Signed-off-by: Corinna Vinschen <vinschen@redhat.com> | ||
10028 | |||
10029 | commit 625b62634c33eaef4b80d07529954fe5c6435fe5 | ||
10030 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10031 | Date: Fri Feb 22 03:37:11 2019 +0000 | ||
10032 | |||
10033 | upstream: perform removal of agent-forwarding directory in forward | ||
10034 | |||
10035 | setup error path with user's privileged. This is a no-op as this code always | ||
10036 | runs with user privilege now that we no longer support running sshd with | ||
10037 | privilege separation disabled, but as long as the privsep skeleton is there | ||
10038 | we should follow the rules. | ||
10039 | MIME-Version: 1.0 | ||
10040 | Content-Type: text/plain; charset=UTF-8 | ||
10041 | Content-Transfer-Encoding: 8bit | ||
10042 | |||
10043 | bz#2969 with patch from Erik Sjölund | ||
10044 | |||
10045 | OpenBSD-Commit-ID: 2b708401a5a8d6133c865d7698d9852210dca846 | ||
10046 | |||
10047 | commit d9ecfaba0b2f1887d20e4368230632e709ca83be | ||
10048 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
10049 | Date: Mon Feb 18 07:02:34 2019 +0000 | ||
10050 | |||
10051 | upstream: sync the description of ~/.ssh/config with djm's updated | ||
10052 | |||
10053 | description in ssh.1; issue pointed out by andreas kahari | ||
10054 | |||
10055 | ok dtucker djm | ||
10056 | |||
10057 | OpenBSD-Commit-ID: 1b01ef0ae2c6328165150badae317ec92e52b01c | ||
10058 | |||
10059 | commit 38e83e4f219c752ebb1560633b73f06f0392018b | ||
10060 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10061 | Date: Tue Feb 12 23:53:10 2019 +0000 | ||
10062 | |||
10063 | upstream: fix regression in r1.302 reported by naddy@ - only the first | ||
10064 | |||
10065 | public key from the agent was being attempted for use. | ||
10066 | |||
10067 | OpenBSD-Commit-ID: 07116aea521a04888718b2157f1ca723b2f46c8d | ||
10068 | |||
10069 | commit 5c68ea8da790d711e6dd5f4c30d089c54032c59a | ||
10070 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10071 | Date: Mon Feb 11 09:44:42 2019 +0000 | ||
10072 | |||
10073 | upstream: cleanup GSSAPI authentication context after completion of the | ||
10074 | |||
10075 | authmethod. Move function-static GSSAPI state to the client Authctxt | ||
10076 | structure. Make static a bunch of functions that aren't used outside this | ||
10077 | file. | ||
10078 | |||
10079 | Based on patch from Markus Schmidt <markus@blueflash.cc>; ok markus@ | ||
10080 | |||
10081 | OpenBSD-Commit-ID: 497fb792c0ddb4f1ba631b6eed526861f115dbe5 | ||
10082 | |||
10083 | commit a8c807f1956f81a92a758d3d0237d0ff06d0be5d | ||
10084 | Author: benno@openbsd.org <benno@openbsd.org> | ||
10085 | Date: Sun Feb 10 16:35:41 2019 +0000 | ||
10086 | |||
10087 | upstream: ssh-keygen -D pkcs11.so needs to initialize pkcs11 | ||
10088 | |||
10089 | interactive, so it can ask for the smartcards PIN. ok markus@ | ||
10090 | |||
10091 | OpenBSD-Commit-ID: 1be7ccf88f1876e0fc4d7c9b3f96019ac5655bab | ||
10092 | |||
10093 | commit 3d896c157c722bc47adca51a58dca859225b5874 | ||
10094 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10095 | Date: Sun Feb 10 11:15:52 2019 +0000 | ||
10096 | |||
10097 | upstream: when checking that filenames sent by the server side | ||
10098 | |||
10099 | match what the client requested, be prepared to handle shell-style brace | ||
10100 | alternations, e.g. "{foo,bar}". | ||
10101 | |||
10102 | "looks good to me" millert@ + in snaps for the last week courtesy | ||
10103 | deraadt@ | ||
10104 | |||
10105 | OpenBSD-Commit-ID: 3b1ce7639b0b25b2248e3a30f561a548f6815f3e | ||
10106 | |||
10107 | commit 318e4f8548a4f5c0c913f61e27d4fc21ffb1eaae | ||
10108 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10109 | Date: Sun Feb 10 11:10:57 2019 +0000 | ||
10110 | |||
10111 | upstream: syslog when connection is dropped for attempting to run a | ||
10112 | |||
10113 | command when ForceCommand=internal-sftp is in effect; bz2960; ok dtucker@ | ||
10114 | |||
10115 | OpenBSD-Commit-ID: 8c87fa66d7fc6c0fffa3a3c28e8ab5e8dde234b8 | ||
10116 | |||
10117 | commit 2ff2e19653b8c0798b8b8eff209651bdb1be2761 | ||
10118 | Author: Damien Miller <djm@mindrot.org> | ||
10119 | Date: Fri Feb 8 14:53:35 2019 +1100 | ||
10120 | |||
10121 | don't set $MAIL if UsePam=yes | ||
10122 | |||
10123 | PAM typically specifies the user environment if it's enabled, so don't | ||
10124 | second guess. bz#2937; ok dtucker@ | ||
10125 | |||
10126 | commit 03e92dd27d491fe6d1a54e7b2f44ef1b0a916e52 | ||
10127 | Author: Damien Miller <djm@mindrot.org> | ||
10128 | Date: Fri Feb 8 14:50:36 2019 +1100 | ||
10129 | |||
10130 | use same close logic for stderr as stdout | ||
10131 | |||
10132 | Avoids sending SIGPIPE to child processes after their parent exits | ||
10133 | if they attempt to write to stderr. | ||
10134 | |||
10135 | Analysis and patch from JD Paul; patch reworked by Jakub Jelen and | ||
10136 | myself. bz#2071; ok dtucker@ | ||
10137 | |||
10138 | commit 8c53d409baeeaf652c0c125a9b164edc9dbeb6de | ||
10139 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10140 | Date: Tue Feb 5 11:35:56 2019 +0000 | ||
10141 | |||
10142 | upstream: Adapt code in the non-USE_PIPES codepath to the new packet | ||
10143 | |||
10144 | API. This code is not normally reachable since USE_PIPES is always defined. | ||
10145 | bz#2961, patch from adrian.fita at gmail com. | ||
10146 | |||
10147 | OpenBSD-Commit-ID: 8d8428d678d1d5eb4bb21921df34e8173e6d238a | ||
10148 | |||
10149 | commit 7a7fdca78de4b4774950be056099e579ef595414 | ||
10150 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10151 | Date: Mon Feb 4 23:37:54 2019 +0000 | ||
10152 | |||
10153 | upstream: fix NULL-deref crash in PKCS#11 code when attempting | ||
10154 | |||
10155 | login to a token requiring a PIN; reported by benno@ fix mostly by markus@ | ||
10156 | |||
10157 | OpenBSD-Commit-ID: 438d0b114b1b4ba25a9869733db1921209aa9a31 | ||
10158 | |||
10159 | commit cac302a4b42a988e54d32eb254b29b79b648dbf5 | ||
10160 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10161 | Date: Mon Feb 4 02:39:42 2019 +0000 | ||
10162 | |||
10163 | upstream: Remove obsolete "Protocol" from commented out examples. Patch | ||
10164 | |||
10165 | from samy.mahmoudi at gmail com. | ||
10166 | |||
10167 | OpenBSD-Commit-ID: 16aede33dae299725a03abdac5dcb4d73f5d0cbf | ||
10168 | |||
10169 | commit 483b3b638500fd498b4b529356e5a0e18cf76891 | ||
10170 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10171 | Date: Fri Feb 1 03:52:23 2019 +0000 | ||
10172 | |||
10173 | upstream: Save connection timeout and restore for 2nd and | ||
10174 | |||
10175 | subsequent attempts, preventing them from having no timeout. bz#2918, ok | ||
10176 | djm@ | ||
10177 | |||
10178 | OpenBSD-Commit-ID: 4977f1d0521d9b6bba0c9a20d3d226cefac48292 | ||
10179 | |||
10180 | commit 5f004620fdc1b2108139300ee12f4014530fb559 | ||
10181 | Author: markus@openbsd.org <markus@openbsd.org> | ||
10182 | Date: Wed Jan 30 19:51:15 2019 +0000 | ||
10183 | |||
10184 | upstream: Add authors for public domain sntrup4591761 code; | ||
10185 | |||
10186 | confirmed by Daniel J. Bernstein | ||
10187 | |||
10188 | OpenBSD-Commit-ID: b4621f22b8b8ef13e063c852af5e54dbbfa413c1 | ||
10189 | |||
10190 | commit 2c21b75a7be6ebdcbceaebb43157c48dbb36f3d8 | ||
10191 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
10192 | Date: Sun Jan 27 07:14:11 2019 +0000 | ||
10193 | |||
10194 | upstream: add -T to usage(); | ||
10195 | |||
10196 | OpenBSD-Commit-ID: a7ae14d9436c64e1bd05022329187ea3a0ce1899 | ||
10197 | |||
10198 | commit 19a0f0529d3df04118da829528cac7ceff380b24 | ||
10199 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10200 | Date: Mon Jan 28 03:50:39 2019 +0000 | ||
10201 | |||
10202 | upstream: The test sshd_config in in $OBJ. | ||
10203 | |||
10204 | OpenBSD-Regress-ID: 1e5d908a286d8e7de3a15a0020c8857f3a7c9172 | ||
10205 | |||
10206 | commit 8fe25440206319d15b52d12b948a5dfdec14dca3 | ||
10207 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10208 | Date: Mon Jan 28 03:28:10 2019 +0000 | ||
10209 | |||
10210 | upstream: Remove leftover debugging. | ||
10211 | |||
10212 | OpenBSD-Regress-ID: 3d86c3d4867e46b35af3fd2ac8c96df0ffdcfeb9 | ||
10213 | |||
10214 | commit e30d32364d12c351eec9e14be6c61116f9d6cc90 | ||
10215 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10216 | Date: Mon Jan 28 00:12:36 2019 +0000 | ||
10217 | |||
10218 | upstream: Enable ssh-dss for the agent test. Disable it for the | ||
10219 | |||
10220 | certificate test. | ||
10221 | |||
10222 | OpenBSD-Regress-ID: 388c1e03e1def539d350f139b37d69f12334668d | ||
10223 | |||
10224 | commit ffdde469ed56249f5dc8af98da468dde35531398 | ||
10225 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10226 | Date: Mon Jan 28 00:08:26 2019 +0000 | ||
10227 | |||
10228 | upstream: Count the number of key types instead of assuming there | ||
10229 | |||
10230 | are only two. | ||
10231 | |||
10232 | OpenBSD-Regress-ID: 0998702c41235782cf0beee396ec49b5056eaed9 | ||
10233 | |||
10234 | commit 1d05b4adcba08ab068466e5c08dee2f5417ec53a | ||
10235 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
10236 | Date: Sat Jan 26 23:42:40 2019 +0100 | ||
10237 | |||
10238 | Cygwin: only tweak sshd_config file if it's new, drop creating sshd user | ||
10239 | |||
10240 | The sshd_config tweaks were executed even if the old file was | ||
10241 | still in place. Fix that. Also disable sshd user creation. | ||
10242 | It's not used on Cygwin. | ||
10243 | |||
10244 | commit 89843de0c4c733501f6b4f988098e6e06963df37 | ||
10245 | Author: Corinna Vinschen <vinschen@redhat.com> | ||
10246 | Date: Sat Jan 26 23:03:12 2019 +0100 | ||
10247 | |||
10248 | Cygwin: Change service name to cygsshd | ||
10249 | |||
10250 | Microsoft hijacked the sshd service name without asking. | ||
10251 | |||
10252 | commit 2a9b3a2ce411d16cda9c79ab713c55f65b0ec257 | ||
10253 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10254 | Date: Sun Jan 27 06:30:53 2019 +0000 | ||
10255 | |||
10256 | upstream: Generate all key supported key types and enable for keyscan | ||
10257 | |||
10258 | test. | ||
10259 | |||
10260 | OpenBSD-Regress-ID: 72f72ff49946c61bc949e1692dd9e3d71370891b | ||
10261 | |||
10262 | commit 391ffc4b9d31fa1f4ad566499fef9176ff8a07dc | ||
10263 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10264 | Date: Sat Jan 26 22:41:28 2019 +0000 | ||
10265 | |||
10266 | upstream: check in scp client that filenames sent during | ||
10267 | |||
10268 | remote->local directory copies satisfy the wildcard specified by the user. | ||
10269 | |||
10270 | This checking provides some protection against a malicious server | ||
10271 | sending unexpected filenames, but it comes at a risk of rejecting wanted | ||
10272 | files due to differences between client and server wildcard expansion rules. | ||
10273 | |||
10274 | For this reason, this also adds a new -T flag to disable the check. | ||
10275 | |||
10276 | reported by Harry Sintonen | ||
10277 | fix approach suggested by markus@; | ||
10278 | has been in snaps for ~1wk courtesy deraadt@ | ||
10279 | |||
10280 | OpenBSD-Commit-ID: 00f44b50d2be8e321973f3c6d014260f8f7a8eda | ||
10281 | |||
10282 | commit c2c18a39683db382a15b438632afab3f551d50ce | ||
10283 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10284 | Date: Sat Jan 26 22:35:01 2019 +0000 | ||
10285 | |||
10286 | upstream: make ssh-keyscan return a non-zero exit status if it | ||
10287 | |||
10288 | finds no keys. bz#2903 | ||
10289 | |||
10290 | OpenBSD-Commit-ID: 89f1081fb81d950ebb48e6e73d21807b2723d488 | ||
10291 | |||
10292 | commit 05b9a466700b44d49492edc2aa415fc2e8913dfe | ||
10293 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10294 | Date: Thu Jan 24 17:00:29 2019 +0000 | ||
10295 | |||
10296 | upstream: Accept the host key fingerprint as a synonym for "yes" | ||
10297 | |||
10298 | when accepting an unknown host key. This allows you to paste a fingerprint | ||
10299 | obtained out of band into the yes/no prompt and have the client do the | ||
10300 | comparison for you. ok markus@ djm@ | ||
10301 | |||
10302 | OpenBSD-Commit-ID: 3c47d10b9f43d3d345e044fd9ec09709583a2767 | ||
10303 | |||
10304 | commit bdc6c63c80b55bcbaa66b5fde31c1cb1d09a41eb | ||
10305 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10306 | Date: Thu Jan 24 16:52:17 2019 +0000 | ||
10307 | |||
10308 | upstream: Have progressmeter force an update at the beginning and | ||
10309 | |||
10310 | end of each transfer. Fixes the problem recently introduces where very quick | ||
10311 | transfers do not display the progressmeter at all. Spotted by naddy@ | ||
10312 | |||
10313 | OpenBSD-Commit-ID: 68dc46c259e8fdd4f5db3ec2a130f8e4590a7a9a | ||
10314 | |||
10315 | commit 258e6ca003e47f944688ad8b8de087b58a7d966c | ||
10316 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10317 | Date: Thu Jan 24 02:42:23 2019 +0000 | ||
10318 | |||
10319 | upstream: Check for both EAGAIN and EWOULDBLOCK. This is a no-op | ||
10320 | |||
10321 | in OpenBSD (they are the same value) but makes things easier in -portable | ||
10322 | where they may be distinct values. "sigh ok" deraadt@ | ||
10323 | |||
10324 | (ID sync only, portable already had this change). | ||
10325 | |||
10326 | OpenBSD-Commit-ID: 91f2bc7c0ecec905915ed59fa37feb9cc90e17d7 | ||
10327 | |||
10328 | commit 281ce042579b834cdc1e74314f1fb2eeb75d2612 | ||
10329 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10330 | Date: Thu Jan 24 02:34:52 2019 +0000 | ||
10331 | |||
10332 | upstream: Always initialize 2nd arg to hpdelim2. It populates that | ||
10333 | |||
10334 | *ONLY IF* there's a delimiter. If there's not (the common case) it checked | ||
10335 | uninitialized memory, which usually passed, but if not would cause spurious | ||
10336 | failures when the uninitialized memory happens to contain "/". ok deraadt. | ||
10337 | |||
10338 | OpenBSD-Commit-ID: 4291611eaf2a53d4c92f4a57c7f267c9f944e0d3 | ||
10339 | |||
10340 | commit d05ea255678d9402beda4416cd0360f3e5dfe938 | ||
10341 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10342 | Date: Wed Jan 23 21:50:56 2019 +0000 | ||
10343 | |||
10344 | upstream: Remove support for obsolete host/port syntax. | ||
10345 | |||
10346 | host/port was added in 2001 as an alternative to host:port syntax for | ||
10347 | the benefit of IPv6 users. These days there are establised standards | ||
10348 | for this like [::1]:22 and the slash syntax is easily mistaken for CIDR | ||
10349 | notation, which OpenSSH now supports for some things. Remove the slash | ||
10350 | notation from ListenAddress and PermitOpen. bz#2335, patch from jjelen | ||
10351 | at redhat.com, ok markus@ | ||
10352 | |||
10353 | OpenBSD-Commit-ID: fae5f4e23c51a368d6b2d98376069ac2b10ad4b7 | ||
10354 | |||
10355 | commit 177d6c80c557a5e060cd343a0c116a2f1a7f43db | ||
10356 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10357 | Date: Wed Jan 23 20:48:52 2019 +0000 | ||
10358 | |||
10359 | upstream: Remove duplicate word. bz#2958, patch from jjelen at | ||
10360 | |||
10361 | redhat.com | ||
10362 | |||
10363 | OpenBSD-Commit-ID: cca3965a8333f2b6aae48b79ec1d72f7a830dd2c | ||
10364 | |||
10365 | commit be3e6cba95dffe5fcf190c713525b48c837e7875 | ||
10366 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10367 | Date: Wed Jan 23 09:49:00 2019 +0000 | ||
10368 | |||
10369 | upstream: Remove 3 as a guess for possible generator during moduli | ||
10370 | |||
10371 | generation. It's not mentioned in RFC4419 and it's not possible for | ||
10372 | Sophie-Germain primes greater than 5. bz#2330, from Christian Wittenhorst , | ||
10373 | ok djm@ tb@ | ||
10374 | |||
10375 | OpenBSD-Commit-ID: 1467652e6802ad3333b0959282d8d49dfe22c8cd | ||
10376 | |||
10377 | commit 8976f1c4b2721c26e878151f52bdf346dfe2d54c | ||
10378 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
10379 | Date: Wed Jan 23 08:01:46 2019 +0000 | ||
10380 | |||
10381 | upstream: Sanitize scp filenames via snmprintf. To do this we move | ||
10382 | |||
10383 | the progressmeter formatting outside of signal handler context and have the | ||
10384 | atomicio callback called for EINTR too. bz#2434 with contributions from djm | ||
10385 | and jjelen at redhat.com, ok djm@ | ||
10386 | |||
10387 | OpenBSD-Commit-ID: 1af61c1f70e4f3bd8ab140b9f1fa699481db57d8 | ||
10388 | |||
10389 | commit 6249451f381755f792c6b9e2c2f80cdc699c14e2 | ||
10390 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10391 | Date: Thu Jan 24 10:00:20 2019 +1100 | ||
10392 | |||
10393 | For broken read/readv comparisons, poll(RW). | ||
10394 | |||
10395 | In the cases where we can't compare to read or readv function pointers | ||
10396 | for some reason we currently ifdef out the poll() used to block while | ||
10397 | waiting for reads or writes, falling back to busy waiting. This restores | ||
10398 | the poll() in this case, but has it always check for read or write, | ||
10399 | removing an inline ifdef in the process. | ||
10400 | |||
10401 | commit 5cb503dff4db251520e8bf7d23b9c97c06eee031 | ||
10402 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10403 | Date: Thu Jan 24 09:55:16 2019 +1100 | ||
10404 | |||
10405 | Include unistd.h for strmode(). | ||
10406 | |||
10407 | commit f236ca2741f29b5c443c0b2db3aa9afb9ad9befe | ||
10408 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10409 | Date: Thu Jan 24 09:50:58 2019 +1100 | ||
10410 | |||
10411 | Also undef SIMPLEQ_FOREACH_SAFE. | ||
10412 | |||
10413 | Prevents macro redefinition warning on at least NetBSD 6.1. | ||
10414 | |||
10415 | commit be063945e4e7d46b1734d973bf244c350fae172a | ||
10416 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10417 | Date: Wed Jan 23 04:51:02 2019 +0000 | ||
10418 | |||
10419 | upstream: allow auto-incrementing certificate serial number for certs | ||
10420 | |||
10421 | signed in a single commandline. | ||
10422 | |||
10423 | OpenBSD-Commit-ID: 39881087641efb8cd83c7ec13b9c98280633f45b | ||
10424 | |||
10425 | commit 851f80328931975fe68f71af363c4537cb896da2 | ||
10426 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10427 | Date: Wed Jan 23 04:16:22 2019 +0000 | ||
10428 | |||
10429 | upstream: move a bunch of global flag variables to main(); make the | ||
10430 | |||
10431 | rest static | ||
10432 | |||
10433 | OpenBSD-Commit-ID: fa431d92584e81fe99f95882f4c56b43fe3242dc | ||
10434 | |||
10435 | commit 2265402dc7d701a9aca9f8a7b7b0fd45b65c479f | ||
10436 | Author: Damien Miller <djm@mindrot.org> | ||
10437 | Date: Wed Jan 23 13:03:16 2019 +1100 | ||
10438 | |||
10439 | depend | ||
10440 | |||
10441 | commit 2c223878e53cc46def760add459f5f7c4fb43e35 | ||
10442 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10443 | Date: Wed Jan 23 02:01:10 2019 +0000 | ||
10444 | |||
10445 | upstream: switch mainloop from select(2) to poll(2); ok deraadt@ | ||
10446 | |||
10447 | OpenBSD-Commit-ID: 37645419a330037d297f6f0adc3b3663e7ae7b2e | ||
10448 | |||
10449 | commit bb956eaa94757ad058ff43631c3a7d6c94d38c2f | ||
10450 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10451 | Date: Wed Jan 23 00:30:41 2019 +0000 | ||
10452 | |||
10453 | upstream: pass most arguments to the KEX hash functions as sshbuf | ||
10454 | |||
10455 | rather than pointer+length; ok markus@ | ||
10456 | |||
10457 | OpenBSD-Commit-ID: ef0c89c52ccc89817a13a5205725148a28492bf7 | ||
10458 | |||
10459 | commit d691588b8e29622c66abf8932362b522cf7f4051 | ||
10460 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10461 | Date: Tue Jan 22 22:58:50 2019 +0000 | ||
10462 | |||
10463 | upstream: backoff reading messages from active connections when the | ||
10464 | |||
10465 | input buffer is too full to read one, or if the output buffer is too full to | ||
10466 | enqueue a response; feedback & ok dtucker@ | ||
10467 | |||
10468 | OpenBSD-Commit-ID: df3c5b6d57c968975875de40d8955cbfed05a6c8 | ||
10469 | |||
10470 | commit f99ef8de967949a1fc25a5c28263ea32736e5943 | ||
10471 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10472 | Date: Tue Jan 22 20:48:01 2019 +0000 | ||
10473 | |||
10474 | upstream: add -m to usage(); reminded by jmc@ | ||
10475 | |||
10476 | OpenBSD-Commit-ID: bca476a5236e8f94210290b3e6a507af0434613e | ||
10477 | |||
10478 | commit 41923ce06ac149453debe472238e0cca7d5a2e5f | ||
10479 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10480 | Date: Tue Jan 22 12:03:58 2019 +0000 | ||
10481 | |||
10482 | upstream: Correct some bugs in PKCS#11 token PIN handling at | ||
10483 | |||
10484 | initial login, the attempt at reading the PIN could be skipped in some cases | ||
10485 | especially on devices with integrated PIN readers. | ||
10486 | |||
10487 | based on patch from Daniel Kucera in bz#2652; ok markus@ | ||
10488 | |||
10489 | OpenBSD-Commit-ID: fad70a61c60610afe8bb0db538c90e343e75e58e | ||
10490 | |||
10491 | commit 2162171ad517501ba511fa9f8191945d01857bb4 | ||
10492 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10493 | Date: Tue Jan 22 12:00:50 2019 +0000 | ||
10494 | |||
10495 | upstream: Support keys that set the CKA_ALWAYS_AUTHENTICATE by | ||
10496 | |||
10497 | requring a fresh login after the C_SignInit operation. | ||
10498 | |||
10499 | based on patch from Jakub Jelen in bz#2638; ok markus | ||
10500 | |||
10501 | OpenBSD-Commit-ID: a76e66996ba7c0923b46b74d46d499b811786661 | ||
10502 | |||
10503 | commit 7a2cb18a215b2cb335da3dc99489c52a91f4925b | ||
10504 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10505 | Date: Tue Jan 22 11:51:25 2019 +0000 | ||
10506 | |||
10507 | upstream: Mention that configuration for the destination host is | ||
10508 | |||
10509 | not applied to any ProxyJump/-J hosts. This has confused a few people... | ||
10510 | |||
10511 | OpenBSD-Commit-ID: 03f4f641df6ca236c1bfc69836a256b873db868b | ||
10512 | |||
10513 | commit ecd2f33cb772db4fa76776543599f1c1ab6f9fa0 | ||
10514 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10515 | Date: Tue Jan 22 11:40:42 2019 +0000 | ||
10516 | |||
10517 | upstream: Include -m in the synopsis for a few more commands that | ||
10518 | |||
10519 | support it | ||
10520 | |||
10521 | Be more explicit in the description of -m about where it may be used | ||
10522 | |||
10523 | Prompted by Jakub Jelen in bz2904 | ||
10524 | |||
10525 | OpenBSD-Commit-ID: 3b398ac5e05d8a6356710d0ff114536c9d71046c | ||
10526 | |||
10527 | commit ff5d2cf4ca373bb4002eef395ed2cbe2ff0826c1 | ||
10528 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10529 | Date: Tue Jan 22 11:26:16 2019 +0000 | ||
10530 | |||
10531 | upstream: print the full pubkey being attempted at loglevel >= | ||
10532 | |||
10533 | debug2; bz2939 | ||
10534 | |||
10535 | OpenBSD-Commit-ID: ac0fe5ca1429ebf4d460bad602adc96de0d7e290 | ||
10536 | |||
10537 | commit 180b520e2bab33b566b4b0cbac7d5f9940935011 | ||
10538 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10539 | Date: Tue Jan 22 11:19:42 2019 +0000 | ||
10540 | |||
10541 | upstream: clarify: ssh-keygen -e only writes public keys, never | ||
10542 | |||
10543 | private | ||
10544 | |||
10545 | OpenBSD-Commit-ID: 7de7ff6d274d82febf9feb641e2415ffd6a30bfb | ||
10546 | |||
10547 | commit c45616a199c322ca674315de88e788f1d2596e26 | ||
10548 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10549 | Date: Tue Jan 22 11:00:15 2019 +0000 | ||
10550 | |||
10551 | upstream: mention the new vs. old key formats in the introduction | ||
10552 | |||
10553 | and give some hints on how keys may be converted or written in the old | ||
10554 | format. | ||
10555 | |||
10556 | OpenBSD-Commit-ID: 9c90a9f92eddc249e07fad1204d0e15c8aa13823 | ||
10557 | |||
10558 | commit fd8eb1383a34c986a00ef13d745ae9bd3ea21760 | ||
10559 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
10560 | Date: Tue Jan 22 06:58:31 2019 +0000 | ||
10561 | |||
10562 | upstream: tweak previous; | ||
10563 | |||
10564 | OpenBSD-Commit-ID: d2a80e389da8e7ed71978643d8cbaa8605b597a8 | ||
10565 | |||
10566 | commit 68e924d5473c00057f8532af57741d258c478223 | ||
10567 | Author: tb@openbsd.org <tb@openbsd.org> | ||
10568 | Date: Mon Jan 21 23:55:12 2019 +0000 | ||
10569 | |||
10570 | upstream: Forgot to add -J to the synopsis. | ||
10571 | |||
10572 | OpenBSD-Commit-ID: 26d95e409a0b72526526fc56ca1caca5cc3d3c5e | ||
10573 | |||
10574 | commit 622dedf1a884f2927a9121e672bd9955e12ba108 | ||
10575 | Author: tb@openbsd.org <tb@openbsd.org> | ||
10576 | Date: Mon Jan 21 22:50:42 2019 +0000 | ||
10577 | |||
10578 | upstream: Add a -J option as a shortcut for -o Proxyjump= to scp(1) | ||
10579 | |||
10580 | and sftp(1) to match ssh(1)'s interface. | ||
10581 | |||
10582 | ok djm | ||
10583 | |||
10584 | OpenBSD-Commit-ID: a75bc2d5f329caa7229a7e9fe346c4f41c2663fc | ||
10585 | |||
10586 | commit c882d74652800150d538e22c80dd2bd3cdd5fae2 | ||
10587 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10588 | Date: Tue Jan 22 20:38:40 2019 +1100 | ||
10589 | |||
10590 | Allow building against OpenSSL dev (3.x) version. | ||
10591 | |||
10592 | commit d5520393572eb24aa0e001a1c61f49b104396e45 | ||
10593 | Author: Damien Miller <djm@mindrot.org> | ||
10594 | Date: Tue Jan 22 10:50:40 2019 +1100 | ||
10595 | |||
10596 | typo | ||
10597 | |||
10598 | commit 2de9cec54230998ab10161576f77860a2559ccb7 | ||
10599 | Author: Damien Miller <djm@mindrot.org> | ||
10600 | Date: Tue Jan 22 10:49:52 2019 +1100 | ||
10601 | |||
10602 | add missing header | ||
10603 | |||
10604 | commit 533cfb01e49a2a30354e191669dc3159e03e99a7 | ||
10605 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10606 | Date: Mon Jan 21 22:18:24 2019 +0000 | ||
10607 | |||
10608 | upstream: switch sntrup implementation source from supercop to | ||
10609 | |||
10610 | libpqcrypto; the latter is almost identical but doesn't rely on signed | ||
10611 | underflow to implement an optimised integer sort; from markus@ | ||
10612 | |||
10613 | OpenBSD-Commit-ID: cd09bbf0e0fcef1bedca69fdf7990dc360567cf8 | ||
10614 | |||
10615 | commit d50ab3cd6fb859888a26b4d4e333239b4f6bf573 | ||
10616 | Author: Damien Miller <djm@mindrot.org> | ||
10617 | Date: Tue Jan 22 00:02:23 2019 +1100 | ||
10618 | |||
10619 | new files need includes.h | ||
10620 | |||
10621 | commit c7670b091a7174760d619ef6738b4f26b2093301 | ||
10622 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10623 | Date: Mon Jan 21 12:53:35 2019 +0000 | ||
10624 | |||
10625 | upstream: add "-v" flags to ssh-add and ssh-pkcs11-helper to turn up | ||
10626 | |||
10627 | debug verbosity. | ||
10628 | |||
10629 | Make ssh-agent turn on ssh-pkcs11-helper's verbosity when it is run | ||
10630 | in debug mode ("ssh-agent -d"), so we get to see errors from the | ||
10631 | PKCS#11 code. | ||
10632 | |||
10633 | ok markus@ | ||
10634 | |||
10635 | OpenBSD-Commit-ID: 0a798643c6a92a508df6bd121253ba1c8bee659d | ||
10636 | |||
10637 | commit 49d8c8e214d39acf752903566b105d06c565442a | ||
10638 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10639 | Date: Mon Jan 21 12:50:12 2019 +0000 | ||
10640 | |||
10641 | upstream: adapt to changes in KEX APIs and file removals | ||
10642 | |||
10643 | OpenBSD-Regress-ID: 54d6857e7c58999c7a6d40942ab0fed3529f43ca | ||
10644 | |||
10645 | commit 35ecc53a83f8e8baab2e37549addfd05c73c30f1 | ||
10646 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10647 | Date: Mon Jan 21 12:35:20 2019 +0000 | ||
10648 | |||
10649 | upstream: adapt to changes in KEX API and file removals | ||
10650 | |||
10651 | OpenBSD-Regress-ID: 92cad022d3b0d11e08f3e0055d6a14b8f994c0d7 | ||
10652 | |||
10653 | commit 7d69aae64c35868cc4f644583ab973113a79480e | ||
10654 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10655 | Date: Mon Jan 21 12:29:35 2019 +0000 | ||
10656 | |||
10657 | upstream: adapt to bignum1 API removal and bignum2 API change | ||
10658 | |||
10659 | OpenBSD-Regress-ID: cea6ff270f3d560de86b355a87a2c95b55a5ca63 | ||
10660 | |||
10661 | commit beab553f0a9578ef9bffe28b2c779725e77b39ec | ||
10662 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10663 | Date: Mon Jan 21 09:13:41 2019 +0000 | ||
10664 | |||
10665 | upstream: remove hack to use non-system libcrypto | ||
10666 | |||
10667 | OpenBSD-Regress-ID: ce72487327eee4dfae1ab0212a1f33871fe0809f | ||
10668 | |||
10669 | commit 4dc06bd57996f1a46b4c3bababe0d09bc89098f7 | ||
10670 | Author: Damien Miller <djm@mindrot.org> | ||
10671 | Date: Mon Jan 21 23:14:04 2019 +1100 | ||
10672 | |||
10673 | depend | ||
10674 | |||
10675 | commit 70edd73edc4df54e5eee50cd27c25427b34612f8 | ||
10676 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10677 | Date: Mon Jan 21 12:08:13 2019 +0000 | ||
10678 | |||
10679 | upstream: fix reversed arguments to kex_load_hostkey(); manifested as | ||
10680 | |||
10681 | errors in cert-hostkey.sh regress failures. | ||
10682 | |||
10683 | OpenBSD-Commit-ID: 12dab63850b844f84d5a67e86d9e21a42fba93ba | ||
10684 | |||
10685 | commit f1185abbf0c9108e639297addc77f8757ee00eb3 | ||
10686 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10687 | Date: Mon Jan 21 11:22:00 2019 +0000 | ||
10688 | |||
10689 | upstream: forgot to cvs add this file in previous series of commits; | ||
10690 | |||
10691 | grrr | ||
10692 | |||
10693 | OpenBSD-Commit-ID: bcff316c3e7da8fd15333e05d244442c3aaa66b0 | ||
10694 | |||
10695 | commit 7bef390b625bdc080f0fd4499ef03cef60fca4fa | ||
10696 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10697 | Date: Mon Jan 21 10:44:21 2019 +0000 | ||
10698 | |||
10699 | upstream: nothing shall escape this purge | ||
10700 | |||
10701 | OpenBSD-Commit-ID: 4795b0ff142b45448f7e15f3c2f77a947191b217 | ||
10702 | |||
10703 | commit aaca72d6f1279b842066e07bff797019efeb2c23 | ||
10704 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10705 | Date: Mon Jan 21 10:40:11 2019 +0000 | ||
10706 | |||
10707 | upstream: rename kex->kem_client_pub -> kex->client_pub now that | ||
10708 | |||
10709 | KEM has been renamed to kexgen | ||
10710 | |||
10711 | from markus@ ok djm@ | ||
10712 | |||
10713 | OpenBSD-Commit-ID: fac6da5dc63530ad0da537db022a9a4cfbe8bed8 | ||
10714 | |||
10715 | commit 70867e1ca2eb08bbd494fe9c568df4fd3b35b867 | ||
10716 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10717 | Date: Mon Jan 21 10:38:54 2019 +0000 | ||
10718 | |||
10719 | upstream: merge kexkem[cs] into kexgen | ||
10720 | |||
10721 | from markus@ ok djm@ | ||
10722 | |||
10723 | OpenBSD-Commit-ID: 87d886b7f1812ff9355fda1435f6ea9b71a0ac89 | ||
10724 | |||
10725 | commit 71e67fff946396caa110a7964da23480757258ff | ||
10726 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10727 | Date: Mon Jan 21 10:35:09 2019 +0000 | ||
10728 | |||
10729 | upstream: pass values used in KEX hash computation as sshbuf | ||
10730 | |||
10731 | rather than pointer+len | ||
10732 | |||
10733 | suggested by me; implemented by markus@ ok me | ||
10734 | |||
10735 | OpenBSD-Commit-ID: 994f33c464f4a9e0f1d21909fa3e379f5a0910f0 | ||
10736 | |||
10737 | commit 4b83e2a2cc0c12e671a77eaba1c1245894f4e884 | ||
10738 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10739 | Date: Mon Jan 21 10:33:49 2019 +0000 | ||
10740 | |||
10741 | upstream: remove kex_derive_keys_bn wrapper; no unused since the | ||
10742 | |||
10743 | DH-like KEX methods have moved to KEM | ||
10744 | |||
10745 | from markus@ ok djm@ | ||
10746 | |||
10747 | OpenBSD-Commit-ID: bde9809103832f349545e4f5bb733d316db9a060 | ||
10748 | |||
10749 | commit 92dda34e373832f34a1944e5d9ebbebb184dedc1 | ||
10750 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10751 | Date: Mon Jan 21 10:29:56 2019 +0000 | ||
10752 | |||
10753 | upstream: use KEM API for vanilla ECDH | ||
10754 | |||
10755 | from markus@ ok djm@ | ||
10756 | |||
10757 | OpenBSD-Commit-ID: 6fbff96339a929835536b5730585d1d6057a352c | ||
10758 | |||
10759 | commit b72357217cbe510a3ae155307a7be6b9181f1d1b | ||
10760 | Author: Damien Miller <djm@mindrot.org> | ||
10761 | Date: Mon Jan 21 23:11:21 2019 +1100 | ||
10762 | |||
10763 | fixup missing ssherr.h | ||
10764 | |||
10765 | commit 9c9c97e14fe190931f341876ad98213e1e1dc19f | ||
10766 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10767 | Date: Mon Jan 21 10:28:01 2019 +0000 | ||
10768 | |||
10769 | upstream: use KEM API for vanilla DH KEX | ||
10770 | |||
10771 | from markus@ ok djm@ | ||
10772 | |||
10773 | OpenBSD-Commit-ID: af56466426b08a8be275412ae2743319e3d277c9 | ||
10774 | |||
10775 | commit 2f6a9ddbbf6ca8623c53c323ff17fb6d68d66970 | ||
10776 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10777 | Date: Mon Jan 21 10:24:09 2019 +0000 | ||
10778 | |||
10779 | upstream: use KEM API for vanilla c25519 KEX | ||
10780 | |||
10781 | OpenBSD-Commit-ID: 38d937b85ff770886379dd66a8f32ab0c1c35c1f | ||
10782 | |||
10783 | commit dfd591618cdf2c96727ac0eb65f89cf54af0d97e | ||
10784 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10785 | Date: Mon Jan 21 10:20:12 2019 +0000 | ||
10786 | |||
10787 | upstream: Add support for a PQC KEX/KEM: | ||
10788 | |||
10789 | sntrup4591761x25519-sha512@tinyssh.org using the Streamlined NTRU Prime | ||
10790 | 4591^761 implementation from SUPERCOP coupled with X25519 as a stop-loss. Not | ||
10791 | enabled by default. | ||
10792 | |||
10793 | introduce KEM API; a simplified framework for DH-ish KEX methods. | ||
10794 | |||
10795 | from markus@ feedback & ok djm@ | ||
10796 | |||
10797 | OpenBSD-Commit-ID: d687f76cffd3561dd73eb302d17a1c3bf321d1a7 | ||
10798 | |||
10799 | commit b1b2ff4ed559051d1035419f8f236275fa66d5d6 | ||
10800 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10801 | Date: Mon Jan 21 10:07:22 2019 +0000 | ||
10802 | |||
10803 | upstream: factor out kex_verify_hostkey() - again, duplicated | ||
10804 | |||
10805 | almost exactly across client and server for several KEX methods. | ||
10806 | |||
10807 | from markus@ ok djm@ | ||
10808 | |||
10809 | OpenBSD-Commit-ID: 4e4a16d949dadde002a0aacf6d280a684e20829c | ||
10810 | |||
10811 | commit bb39bafb6dc520cc097780f4611a52da7f19c3e2 | ||
10812 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10813 | Date: Mon Jan 21 10:05:09 2019 +0000 | ||
10814 | |||
10815 | upstream: factor out kex_load_hostkey() - this is duplicated in | ||
10816 | |||
10817 | both the client and server implementations for most KEX methods. | ||
10818 | |||
10819 | from markus@ ok djm@ | ||
10820 | |||
10821 | OpenBSD-Commit-ID: 8232fa7c21fbfbcaf838313b0c166dc6c8762f3c | ||
10822 | |||
10823 | commit dec5e9d33891e3bc3f1395d7db0e56fdc7f86dfc | ||
10824 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10825 | Date: Mon Jan 21 10:03:37 2019 +0000 | ||
10826 | |||
10827 | upstream: factor out kex_dh_compute_key() - it's shared between | ||
10828 | |||
10829 | plain DH KEX and DH GEX in both the client and server implementations | ||
10830 | |||
10831 | from markus@ ok djm@ | ||
10832 | |||
10833 | OpenBSD-Commit-ID: 12186e18791fffcd4642c82e7e0cfdd7ea37e2ec | ||
10834 | |||
10835 | commit e93bd98eab79b9a78f64ee8dd4dffc4d3979c7ae | ||
10836 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10837 | Date: Mon Jan 21 10:00:23 2019 +0000 | ||
10838 | |||
10839 | upstream: factor out DH keygen; it's identical between the client | ||
10840 | |||
10841 | and the server | ||
10842 | |||
10843 | from markus@ ok djm@ | ||
10844 | |||
10845 | OpenBSD-Commit-ID: 2be57f6a0d44f1ab2c8de2b1b5d6f530c387fae9 | ||
10846 | |||
10847 | commit 5ae3f6d314465026d028af82609c1d49ad197655 | ||
10848 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10849 | Date: Mon Jan 21 09:55:52 2019 +0000 | ||
10850 | |||
10851 | upstream: save the derived session id in kex_derive_keys() rather | ||
10852 | |||
10853 | than making each kex method implementation do it. | ||
10854 | |||
10855 | from markus@ ok djm@ | ||
10856 | |||
10857 | OpenBSD-Commit-ID: d61ade9c8d1e13f665f8663c552abff8c8a30673 | ||
10858 | |||
10859 | commit 7be8572b32a15d5c3dba897f252e2e04e991c307 | ||
10860 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10861 | Date: Mon Jan 21 09:54:11 2019 +0000 | ||
10862 | |||
10863 | upstream: Make sshpkt_get_bignum2() allocate the bignum it is | ||
10864 | |||
10865 | parsing rather than make the caller do it. Saves a lot of boilerplate code. | ||
10866 | |||
10867 | from markus@ ok djm@ | ||
10868 | |||
10869 | OpenBSD-Commit-ID: 576bf784f9a240f5a1401f7005364e59aed3bce9 | ||
10870 | |||
10871 | commit 803178bd5da7e72be94ba5b4c4c196d4b542da4d | ||
10872 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10873 | Date: Mon Jan 21 09:52:25 2019 +0000 | ||
10874 | |||
10875 | upstream: remove obsolete (SSH v.1) sshbuf_get/put_bignum1 | ||
10876 | |||
10877 | functions | ||
10878 | |||
10879 | from markus@ ok djm@ | ||
10880 | |||
10881 | OpenBSD-Commit-ID: 0380b1b2d9de063de3c5a097481a622e6a04943e | ||
10882 | |||
10883 | commit f3ebaffd8714be31d4345f90af64992de4b3bba2 | ||
10884 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10885 | Date: Mon Jan 21 09:49:37 2019 +0000 | ||
10886 | |||
10887 | upstream: fix all-zero check in kexc25519_shared_key | ||
10888 | |||
10889 | from markus@ ok djm@ | ||
10890 | |||
10891 | OpenBSD-Commit-ID: 60b1d364e0d9d34d1d1ef1620cb92e36cf06712d | ||
10892 | |||
10893 | commit 9d1a9771d0ad3a83af733bf3d2650b53f43c269f | ||
10894 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
10895 | Date: Mon Jan 21 07:09:10 2019 +0000 | ||
10896 | |||
10897 | upstream: - -T was added to the first synopsis by mistake - since | ||
10898 | |||
10899 | "..." denotes optional, no need to surround it in [] | ||
10900 | |||
10901 | ok djm | ||
10902 | |||
10903 | OpenBSD-Commit-ID: 918f6d8eed4e0d8d9ef5eadae1b8983d796f0e25 | ||
10904 | |||
10905 | commit 2f0bad2bf85391dbb41315ab55032ec522660617 | ||
10906 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10907 | Date: Mon Jan 21 21:28:27 2019 +1100 | ||
10908 | |||
10909 | Make --with-rpath take a flag instead of yes/no. | ||
10910 | |||
10911 | Linkers need various flags for -rpath and similar, so make --with-rpath | ||
10912 | take an optional flag argument which is passed to the linker. ok djm@ | ||
10913 | |||
10914 | commit 23490a6c970ea1d03581a3b4208f2eb7a675f453 | ||
10915 | Author: Damien Miller <djm@mindrot.org> | ||
10916 | Date: Mon Jan 21 15:05:43 2019 +1100 | ||
10917 | |||
10918 | fix previous test | ||
10919 | |||
10920 | commit b6dd3277f2c49f9584a2097bc792e8f480397e87 | ||
10921 | Author: Darren Tucker <dtucker@dtucker.net> | ||
10922 | Date: Mon Jan 21 13:50:17 2019 +1100 | ||
10923 | |||
10924 | Wrap ECC static globals in EC_KEY_METHOD_NEW too. | ||
10925 | |||
10926 | commit b2eb9db35b7191613f2f4b934d57b25938bb34b3 | ||
10927 | Author: Damien Miller <djm@mindrot.org> | ||
10928 | Date: Mon Jan 21 12:53:40 2019 +1100 | ||
10929 | |||
10930 | pass TEST_SSH_SSHPKCS11HELPER to regress tests | ||
10931 | |||
10932 | commit ba58a529f45b3dae2db68607d8c54ae96e90e705 | ||
10933 | Author: Damien Miller <djm@mindrot.org> | ||
10934 | Date: Mon Jan 21 12:31:29 2019 +1100 | ||
10935 | |||
10936 | make agent-pkcs11 search harder for softhsm2.so | ||
10937 | |||
10938 | commit 662be40c62339ab645113c930ce689466f028938 | ||
10939 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10940 | Date: Mon Jan 21 02:05:38 2019 +0000 | ||
10941 | |||
10942 | upstream: always print the caller's error message in ossl_error(), | ||
10943 | |||
10944 | even when there are no libcrypto errors to report. | ||
10945 | |||
10946 | OpenBSD-Commit-ID: 09ebaa8f706e0eccedd209775baa1eee2ada806a | ||
10947 | |||
10948 | commit ce46c3a077dfb4c531ccffcfff03f37775725b75 | ||
10949 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10950 | Date: Mon Jan 21 02:01:03 2019 +0000 | ||
10951 | |||
10952 | upstream: get the ex_data (pkcs11_key object) back from the keys at | ||
10953 | |||
10954 | the index at which it was inserted, rather than assuming index 0 | ||
10955 | |||
10956 | OpenBSD-Commit-ID: 1f3a6ce0346c8014e895e50423bef16401510aa8 | ||
10957 | |||
10958 | commit 0a5f2ea35626022299ece3c8817a1abe8cf37b3e | ||
10959 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10960 | Date: Mon Jan 21 01:05:00 2019 +0000 | ||
10961 | |||
10962 | upstream: GSSAPI code got missed when converting to new packet API | ||
10963 | |||
10964 | OpenBSD-Commit-ID: 37e4f06ab4a0f4214430ff462ba91acba28b7851 | ||
10965 | |||
10966 | commit 2efcf812b4c1555ca3aff744820a3b3bccd68298 | ||
10967 | Author: Damien Miller <djm@mindrot.org> | ||
10968 | Date: Mon Jan 21 11:57:21 2019 +1100 | ||
10969 | |||
10970 | Fix -Wunused when compiling PKCS#11 without ECDSA | ||
10971 | |||
10972 | commit 3c0c657ed7cd335fc05c0852d88232ca7e92a5d9 | ||
10973 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10974 | Date: Sun Jan 20 23:26:44 2019 +0000 | ||
10975 | |||
10976 | upstream: allow override of ssh-pkcs11-helper binary via | ||
10977 | |||
10978 | $TEST_SSH_SSHPKCS11HELPER from markus@ | ||
10979 | |||
10980 | OpenBSD-Regress-ID: 7382a3d76746f5a792d106912a5819fd5e49e469 | ||
10981 | |||
10982 | commit 760ae37b4505453c6fa4faf1aa39a8671ab053af | ||
10983 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10984 | Date: Sun Jan 20 23:25:25 2019 +0000 | ||
10985 | |||
10986 | upstream: adapt agent-pkcs11.sh test to softhsm2 and add support | ||
10987 | |||
10988 | for ECDSA keys | ||
10989 | |||
10990 | work by markus@, ok djm@ | ||
10991 | |||
10992 | OpenBSD-Regress-ID: 1ebc2be0e88eff1b6d8be2f9c00cdc60723509fe | ||
10993 | |||
10994 | commit b2ce8b31a1f974a13e6d12e0a0c132b50bc45115 | ||
10995 | Author: djm@openbsd.org <djm@openbsd.org> | ||
10996 | Date: Sun Jan 20 23:24:19 2019 +0000 | ||
10997 | |||
10998 | upstream: add "extra:" target to run some extra tests that are not | ||
10999 | |||
11000 | enabled by default (currently includes agent-pkcs11.sh); from markus@ | ||
11001 | |||
11002 | OpenBSD-Regress-ID: 9a969e1adcd117fea174d368dcb9c61eb50a2a3c | ||
11003 | |||
11004 | commit 632976418d60b7193597bbc6ac7ca33981a41aab | ||
11005 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11006 | Date: Mon Jan 21 00:47:34 2019 +0000 | ||
11007 | |||
11008 | upstream: use ECDSA_SIG_set0() instead of poking signature values into | ||
11009 | |||
11010 | structure directly; the latter works on LibreSSL but not on OpenSSL. From | ||
11011 | portable. | ||
11012 | |||
11013 | OpenBSD-Commit-ID: 5b22a1919d9cee907d3f8a029167f70a481891c6 | ||
11014 | |||
11015 | commit 5de6ac2bad11175135d9b819b3546db0ca0b4878 | ||
11016 | Author: Damien Miller <djm@mindrot.org> | ||
11017 | Date: Mon Jan 21 11:44:19 2019 +1100 | ||
11018 | |||
11019 | remove HAVE_DLOPEN that snuck in | ||
11020 | |||
11021 | portable doesn't use this | ||
11022 | |||
11023 | commit e2cb445d786f7572da2af93e3433308eaed1093a | ||
11024 | Author: Damien Miller <djm@mindrot.org> | ||
11025 | Date: Mon Jan 21 11:32:28 2019 +1100 | ||
11026 | |||
11027 | conditionalise ECDSA PKCS#11 support | ||
11028 | |||
11029 | Require EC_KEY_METHOD support in libcrypto, evidenced by presence | ||
11030 | of EC_KEY_METHOD_new() function. | ||
11031 | |||
11032 | commit fcb1b0937182d0137a3c357c89735d0dc5869d54 | ||
11033 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11034 | Date: Sun Jan 20 23:12:35 2019 +0000 | ||
11035 | |||
11036 | upstream: we use singleton pkcs#11 RSA_METHOD and EC_KEY_METHOD | ||
11037 | |||
11038 | now, so there is no need to keep a copy of each in the pkcs11_key object. | ||
11039 | |||
11040 | work by markus@, ok djm@ | ||
11041 | |||
11042 | OpenBSD-Commit-ID: 43b4856516e45c0595f17a8e95b2daee05f12faa | ||
11043 | |||
11044 | commit 6529409e85890cd6df7e5e81d04e393b1d2e4b0b | ||
11045 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11046 | Date: Sun Jan 20 23:11:11 2019 +0000 | ||
11047 | |||
11048 | upstream: KNF previous; from markus@ | ||
11049 | |||
11050 | OpenBSD-Commit-ID: 3dfe35e25b310c3968b1e4e53a0cb1d03bda5395 | ||
11051 | |||
11052 | commit 58622a8c82f4e2aad630580543f51ba537c1f39e | ||
11053 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11054 | Date: Sun Jan 20 23:10:33 2019 +0000 | ||
11055 | |||
11056 | upstream: use OpenSSL's RSA reference counting hooks to | ||
11057 | |||
11058 | implicitly clean up pkcs11_key objects when their owning RSA object's | ||
11059 | reference count drops to zero. Simplifies the cleanup path and makes it more | ||
11060 | like ECDSA's | ||
11061 | |||
11062 | work by markus@, ok djm@ | ||
11063 | |||
11064 | OpenBSD-Commit-ID: 74b9c98f405cd78f7148e9e4a4982336cd3df25c | ||
11065 | |||
11066 | commit f118542fc82a3b3ab0360955b33bc5a271ea709f | ||
11067 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11068 | Date: Sun Jan 20 23:08:24 2019 +0000 | ||
11069 | |||
11070 | upstream: make the PKCS#11 RSA code more like the new PKCS#11 | ||
11071 | |||
11072 | ECDSA code: use a single custom RSA_METHOD instead of a method per key | ||
11073 | |||
11074 | suggested by me, but markus@ did all the work. | ||
11075 | ok djm@ | ||
11076 | |||
11077 | OpenBSD-Commit-ID: 8aafcebe923dc742fc5537a995cee549d07e4b2e | ||
11078 | |||
11079 | commit 445cfce49dfc904c6b8ab25afa2f43130296c1a5 | ||
11080 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11081 | Date: Sun Jan 20 23:05:52 2019 +0000 | ||
11082 | |||
11083 | upstream: fix leak of ECDSA pkcs11_key objects | ||
11084 | |||
11085 | work by markus, ok djm@ | ||
11086 | |||
11087 | OpenBSD-Commit-ID: 9fc0c4f1d640aaa5f19b8d70f37ea19b8ad284a1 | ||
11088 | |||
11089 | commit 8a2467583f0b5760787273796ec929190c3f16ee | ||
11090 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11091 | Date: Sun Jan 20 23:03:26 2019 +0000 | ||
11092 | |||
11093 | upstream: use EVP_PKEY_get0_EC_KEY() instead of direct access of | ||
11094 | |||
11095 | EC_KEY internals as that won't work on OpenSSL | ||
11096 | |||
11097 | work by markus@, feedback and ok djm@ | ||
11098 | |||
11099 | OpenBSD-Commit-ID: 4a99cdb89fbd6f5155ef8c521c99dc66e2612700 | ||
11100 | |||
11101 | commit 24757c1ae309324e98d50e5935478655be04e549 | ||
11102 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11103 | Date: Sun Jan 20 23:01:59 2019 +0000 | ||
11104 | |||
11105 | upstream: cleanup PKCS#11 ECDSA pubkey loading: the returned | ||
11106 | |||
11107 | object should never have a DER header | ||
11108 | |||
11109 | work by markus; feedback and ok djm@ | ||
11110 | |||
11111 | OpenBSD-Commit-ID: b617fa585eddbbf0b1245b58b7a3c4b8d613db17 | ||
11112 | |||
11113 | commit 749aef30321595435ddacef2f31d7a8f2b289309 | ||
11114 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11115 | Date: Sun Jan 20 23:00:12 2019 +0000 | ||
11116 | |||
11117 | upstream: cleanup unnecessary code in ECDSA pkcs#11 signature | ||
11118 | |||
11119 | work by markus@, feedback and ok djm@ | ||
11120 | |||
11121 | OpenBSD-Commit-ID: affa5ca7d58d59fbd16169f77771dcdbd2b0306d | ||
11122 | |||
11123 | commit 0c50992af49b562970dd0ba3f8f151f1119e260e | ||
11124 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11125 | Date: Sun Jan 20 22:57:45 2019 +0000 | ||
11126 | |||
11127 | upstream: cleanup pkcs#11 client code: use sshkey_new in instead | ||
11128 | |||
11129 | of stack- allocating a sshkey | ||
11130 | |||
11131 | work by markus@, ok djm@ | ||
11132 | |||
11133 | OpenBSD-Commit-ID: a048eb6ec8aa7fa97330af927022c0da77521f91 | ||
11134 | |||
11135 | commit 854bd8674ee5074a239f7cadf757d55454802e41 | ||
11136 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11137 | Date: Sun Jan 20 22:54:30 2019 +0000 | ||
11138 | |||
11139 | upstream: allow override of the pkcs#11 helper binary via | ||
11140 | |||
11141 | $SSH_PKCS11_HELPER; needed for regress tests. | ||
11142 | |||
11143 | work by markus@, ok me | ||
11144 | |||
11145 | OpenBSD-Commit-ID: f78d8185500bd7c37aeaf7bd27336db62f0f7a83 | ||
11146 | |||
11147 | commit 93f02107f44d63a016d8c23ebd2ca9205c495c48 | ||
11148 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11149 | Date: Sun Jan 20 22:51:37 2019 +0000 | ||
11150 | |||
11151 | upstream: add support for ECDSA keys in PKCS#11 tokens | ||
11152 | |||
11153 | Work by markus@ and Pedro Martelletto, feedback and ok me@ | ||
11154 | |||
11155 | OpenBSD-Commit-ID: a37d651e221341376636056512bddfc16efb4424 | ||
11156 | |||
11157 | commit aa22c20e0c36c2fc610cfcc793b0d14079c38814 | ||
11158 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11159 | Date: Sun Jan 20 22:03:29 2019 +0000 | ||
11160 | |||
11161 | upstream: add option to test whether keys in an agent are usable, | ||
11162 | |||
11163 | by performing a signature and a verification using each key "ssh-add -T | ||
11164 | pubkey [...]" | ||
11165 | |||
11166 | work by markus@, ok djm@ | ||
11167 | |||
11168 | OpenBSD-Commit-ID: 931b888a600b6a883f65375bd5f73a4776c6d19b | ||
11169 | |||
11170 | commit a36b0b14a12971086034d53c0c3dfbad07665abe | ||
11171 | Author: tb@openbsd.org <tb@openbsd.org> | ||
11172 | Date: Sun Jan 20 02:01:59 2019 +0000 | ||
11173 | |||
11174 | upstream: Fix BN_is_prime_* calls in SSH, the API returns -1 on | ||
11175 | |||
11176 | error. | ||
11177 | |||
11178 | Found thanks to BoringSSL's commit 53409ee3d7595ed37da472bc73b010cd2c8a5ffd | ||
11179 | by David Benjamin. | ||
11180 | |||
11181 | ok djm, dtucker | ||
11182 | |||
11183 | OpenBSD-Commit-ID: 1ee832be3c44b1337f76b8562ec6d203f3b072f8 | ||
11184 | |||
11185 | commit ec4776bb01dd8d61fddc7d2a31ab10bf3d3d829a | ||
11186 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11187 | Date: Sun Jan 20 01:12:40 2019 +0000 | ||
11188 | |||
11189 | upstream: DH-GEX min value is now specified in RFC8270. ok djm@ | ||
11190 | |||
11191 | OpenBSD-Commit-ID: 1229d0feb1d0ecefe05bf67a17578b263e991acc | ||
11192 | |||
11193 | commit c90a7928c4191303e76a8c58b9008d464287ae1b | ||
11194 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11195 | Date: Mon Jan 21 09:22:36 2019 +1100 | ||
11196 | |||
11197 | Check for cc before gcc. | ||
11198 | |||
11199 | If cc is something other than gcc and is the system compiler prefer using | ||
11200 | that, unless otherwise told via $CC. ok djm@ | ||
11201 | |||
11202 | commit 9b655dc9c9a353f0a527f0c6c43a5e35653c9503 | ||
11203 | Author: Damien Miller <djm@mindrot.org> | ||
11204 | Date: Sun Jan 20 14:55:27 2019 +1100 | ||
11205 | |||
11206 | last bits of old packet API / active_state global | ||
11207 | |||
11208 | commit 3f0786bbe73609ac96e5a0d91425ee21129f8e04 | ||
11209 | Author: Damien Miller <djm@mindrot.org> | ||
11210 | Date: Sun Jan 20 10:22:18 2019 +1100 | ||
11211 | |||
11212 | remove PAM dependencies on old packet API | ||
11213 | |||
11214 | Requires some caching of values, because the PAM code isn't | ||
11215 | always called with packet context. | ||
11216 | |||
11217 | commit 08f66d9f17e12c1140d1f1cf5c4dce67e915d3cc | ||
11218 | Author: Damien Miller <djm@mindrot.org> | ||
11219 | Date: Sun Jan 20 09:58:45 2019 +1100 | ||
11220 | |||
11221 | remove vestiges of old packet API from loginrec.c | ||
11222 | |||
11223 | commit c327813ea1d740e3e367109c17873815aba1328e | ||
11224 | Author: Damien Miller <djm@mindrot.org> | ||
11225 | Date: Sun Jan 20 09:45:38 2019 +1100 | ||
11226 | |||
11227 | depend | ||
11228 | |||
11229 | commit 135e302cfdbe91817294317c337cc38c3ff01cba | ||
11230 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11231 | Date: Sat Jan 19 22:30:52 2019 +0000 | ||
11232 | |||
11233 | upstream: fix error in refactor: use ssh_packet_disconnect() instead of | ||
11234 | |||
11235 | sshpkt_error(). The first one logs the error and exits (what we want) instead | ||
11236 | of just logging and blundering on. | ||
11237 | |||
11238 | OpenBSD-Commit-ID: 39f51b43641dce9ce0f408ea6c0e6e077e2e91ae | ||
11239 | |||
11240 | commit 245c6a0b220b58686ee35bc5fc1c359e9be2faaa | ||
11241 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11242 | Date: Sat Jan 19 21:45:31 2019 +0000 | ||
11243 | |||
11244 | upstream: remove last traces of old packet API! | ||
11245 | |||
11246 | with & ok markus@ | ||
11247 | |||
11248 | OpenBSD-Commit-ID: 9bd10437026423eb8245636ad34797a20fbafd7d | ||
11249 | |||
11250 | commit 04c091fc199f17dacf8921df0a06634b454e2722 | ||
11251 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11252 | Date: Sat Jan 19 21:43:56 2019 +0000 | ||
11253 | |||
11254 | upstream: remove last references to active_state | ||
11255 | |||
11256 | with & ok markus@ | ||
11257 | |||
11258 | OpenBSD-Commit-ID: 78619a50ea7e4ca2f3b54d4658b3227277490ba2 | ||
11259 | |||
11260 | commit ec00f918b8ad90295044266c433340a8adc93452 | ||
11261 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11262 | Date: Sat Jan 19 21:43:07 2019 +0000 | ||
11263 | |||
11264 | upstream: convert monitor.c to new packet API | ||
11265 | |||
11266 | with & ok markus@ | ||
11267 | |||
11268 | OpenBSD-Commit-ID: 61ecd154bd9804461a0cf5f495a29d919e0014d5 | ||
11269 | |||
11270 | commit 6350e0316981489d4205952d6904d6fedba5bfe0 | ||
11271 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11272 | Date: Sat Jan 19 21:42:30 2019 +0000 | ||
11273 | |||
11274 | upstream: convert sshd.c to new packet API | ||
11275 | |||
11276 | with & ok markus@ | ||
11277 | |||
11278 | OpenBSD-Commit-ID: ea569d3eaf9b5cf1bad52779fbfa5fa0b28af891 | ||
11279 | |||
11280 | commit a5e2ad88acff2b7d131ee6d5dc5d339b0f8c6a6d | ||
11281 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11282 | Date: Sat Jan 19 21:41:53 2019 +0000 | ||
11283 | |||
11284 | upstream: convert session.c to new packet API | ||
11285 | |||
11286 | with & ok markus@ | ||
11287 | |||
11288 | OpenBSD-Commit-ID: fae817207e23099ddd248960c984f7b7f26ea68e | ||
11289 | |||
11290 | commit 3a00a921590d4c4b7e96df11bb10e6f9253ad45e | ||
11291 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11292 | Date: Sat Jan 19 21:41:18 2019 +0000 | ||
11293 | |||
11294 | upstream: convert auth.c to new packet API | ||
11295 | |||
11296 | with & ok markus@ | ||
11297 | |||
11298 | OpenBSD-Commit-ID: 7e10359f614ff522b52a3f05eec576257794e8e4 | ||
11299 | |||
11300 | commit 7ec5cb4d15ed2f2c5c9f5d00e6b361d136fc1e2d | ||
11301 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11302 | Date: Sat Jan 19 21:40:48 2019 +0000 | ||
11303 | |||
11304 | upstream: convert serverloop.c to new packet API | ||
11305 | |||
11306 | with & ok markus@ | ||
11307 | |||
11308 | OpenBSD-Commit-ID: c92dd19b55457541478f95c0d6b318426d86d885 | ||
11309 | |||
11310 | commit 64c9598ac05332d1327cbf55334dee4172d216c4 | ||
11311 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11312 | Date: Sat Jan 19 21:40:21 2019 +0000 | ||
11313 | |||
11314 | upstream: convert the remainder of sshconnect2.c to new packet | ||
11315 | |||
11316 | API | ||
11317 | |||
11318 | with & ok markus@ | ||
11319 | |||
11320 | OpenBSD-Commit-ID: 0986d324f2ceb5e8a12ac21c1bb10b3b4b1e0f71 | ||
11321 | |||
11322 | commit bc5e1169d101d16e3a5962a928db2bc49a8ef5a3 | ||
11323 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11324 | Date: Sat Jan 19 21:39:12 2019 +0000 | ||
11325 | |||
11326 | upstream: convert the remainder of clientloop.c to new packet API | ||
11327 | |||
11328 | with & ok markus@ | ||
11329 | |||
11330 | OpenBSD-Commit-ID: ce2fbbacb86a290f31da1e7bf04cddf2bdae3d1e | ||
11331 | |||
11332 | commit 5ebce136a6105f084db8f0d7ee41981d42daec40 | ||
11333 | Author: Damien Miller <djm@mindrot.org> | ||
11334 | Date: Sun Jan 20 09:44:53 2019 +1100 | ||
11335 | |||
11336 | upstream: convert auth2.c to new packet API | ||
11337 | |||
11338 | OpenBSD-Commit-ID: ed831bb95ad228c6791bc18b60ce7a2edef2c999 | ||
11339 | |||
11340 | commit 172a592a53ebe8649c4ac0d7946e6c08eb151af6 | ||
11341 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11342 | Date: Sat Jan 19 21:37:48 2019 +0000 | ||
11343 | |||
11344 | upstream: convert servconf.c to new packet API | ||
11345 | |||
11346 | with & ok markus@ | ||
11347 | |||
11348 | OpenBSD-Commit-ID: 126553aecca302c9e02fd77e333b9cb217e623b4 | ||
11349 | |||
11350 | commit 8cc7a679d29cf6ecccfa08191e688c7f81ef95c2 | ||
11351 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11352 | Date: Sat Jan 19 21:37:13 2019 +0000 | ||
11353 | |||
11354 | upstream: convert channels.c to new packet API | ||
11355 | |||
11356 | with & ok markus@ | ||
11357 | |||
11358 | OpenBSD-Commit-ID: 0b8279b56113cbd4011fc91315c0796b63dc862c | ||
11359 | |||
11360 | commit 06232038c794c7dfcb087be0ab0b3e65b09fd396 | ||
11361 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11362 | Date: Sat Jan 19 21:36:38 2019 +0000 | ||
11363 | |||
11364 | upstream: convert sshconnect.c to new packet API | ||
11365 | |||
11366 | with & ok markus@ | ||
11367 | |||
11368 | OpenBSD-Commit-ID: 222337cf6c96c347f1022d976fac74b4257c061f | ||
11369 | |||
11370 | commit 25b2ed667216314471bb66752442c55b95792dc3 | ||
11371 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11372 | Date: Sat Jan 19 21:36:06 2019 +0000 | ||
11373 | |||
11374 | upstream: convert ssh.c to new packet API | ||
11375 | |||
11376 | with & ok markus@ | ||
11377 | |||
11378 | OpenBSD-Commit-ID: eb146878b24e85c2a09ee171afa6797c166a2e21 | ||
11379 | |||
11380 | commit e3128b38623eef2fa8d6e7ae934d3bd08c7e973e | ||
11381 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11382 | Date: Sat Jan 19 21:35:25 2019 +0000 | ||
11383 | |||
11384 | upstream: convert mux.c to new packet API | ||
11385 | |||
11386 | with & ok markus@ | ||
11387 | |||
11388 | OpenBSD-Commit-ID: 4e3893937bae66416e984b282d8f0f800aafd802 | ||
11389 | |||
11390 | commit ed1df7226caf3a943a36d580d4d4e9275f8a61ee | ||
11391 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11392 | Date: Sat Jan 19 21:34:45 2019 +0000 | ||
11393 | |||
11394 | upstream: convert sshconnect2.c to new packet API | ||
11395 | |||
11396 | with & ok markus@ | ||
11397 | |||
11398 | OpenBSD-Commit-ID: 1cb869e0d6e03539f943235641ea070cae2ebc58 | ||
11399 | |||
11400 | commit 23f22a4aaa923c61ec49a99ebaa383656e87fa40 | ||
11401 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11402 | Date: Sat Jan 19 21:33:57 2019 +0000 | ||
11403 | |||
11404 | upstream: convert clientloop.c to new packet API | ||
11405 | |||
11406 | with & ok markus@ | ||
11407 | |||
11408 | OpenBSD-Commit-ID: 497b36500191f452a22abf283aa8d4a9abaee7fa | ||
11409 | |||
11410 | commit ad60b1179c9682ca5aef0b346f99ef68cbbbc4e5 | ||
11411 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11412 | Date: Sat Jan 19 21:33:13 2019 +0000 | ||
11413 | |||
11414 | upstream: allow sshpkt_fatal() to take a varargs format; we'll | ||
11415 | |||
11416 | use this to give packet-related fatal error messages more context (esp. the | ||
11417 | remote endpoint) ok markus@ | ||
11418 | |||
11419 | OpenBSD-Commit-ID: de57211f9543426b515a8a10a4f481666b2b2a50 | ||
11420 | |||
11421 | commit 0fa174ebe129f3d0aeaf4e2d1dd8de745870d0ff | ||
11422 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11423 | Date: Sat Jan 19 21:31:32 2019 +0000 | ||
11424 | |||
11425 | upstream: begin landing remaining refactoring of packet parsing | ||
11426 | |||
11427 | API, started almost exactly six years ago. | ||
11428 | |||
11429 | This change stops including the old packet_* API by default and makes | ||
11430 | each file that requires the old API include it explicitly. We will | ||
11431 | commit file-by-file refactoring to remove the old API in consistent | ||
11432 | steps. | ||
11433 | |||
11434 | with & ok markus@ | ||
11435 | |||
11436 | OpenBSD-Commit-ID: 93c98a6b38f6911fd1ae025a1ec57807fb4d4ef4 | ||
11437 | |||
11438 | commit 4ae7f80dfd02f2bde912a67c9f338f61e90fa79f | ||
11439 | Author: tb@openbsd.org <tb@openbsd.org> | ||
11440 | Date: Sat Jan 19 04:15:56 2019 +0000 | ||
11441 | |||
11442 | upstream: Print an \r in front of the password prompt so parts of | ||
11443 | |||
11444 | a password that was entered too early are likely clobbered by the prompt. | ||
11445 | Idea from doas. | ||
11446 | |||
11447 | from and ok djm | ||
11448 | "i like it" deraadt | ||
11449 | |||
11450 | OpenBSD-Commit-ID: 5fb97c68df6d8b09ab37f77bca1d84d799c4084e | ||
11451 | |||
11452 | commit a6258e5dc314c7d504ac9f0fbc3be96475581dbe | ||
11453 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11454 | Date: Fri Jan 18 11:09:01 2019 +1100 | ||
11455 | |||
11456 | Add minimal fchownat and fchmodat implementations. | ||
11457 | |||
11458 | Fixes builds on at least OS X Lion, NetBSD 6 and Solaris 10. | ||
11459 | |||
11460 | commit 091093d25802b87d3b2b09f2c88d9f33e1ae5562 | ||
11461 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11462 | Date: Fri Jan 18 12:11:42 2019 +1300 | ||
11463 | |||
11464 | Add a minimal implementation of utimensat(). | ||
11465 | |||
11466 | Some systems (eg older OS X) do not have utimensat, so provide minimal | ||
11467 | implementation in compat layer. Fixes build on at least El Capitan. | ||
11468 | |||
11469 | commit 609644027dde1f82213699cb6599e584c7efcb75 | ||
11470 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11471 | Date: Tue Jan 1 22:20:16 2019 +0000 | ||
11472 | |||
11473 | upstream: regress bits for banner processing refactor (this test was | ||
11474 | |||
11475 | depending on ssh returning a particular error message for banner parsing | ||
11476 | failure) | ||
11477 | |||
11478 | reminded by bluhm@ | ||
11479 | |||
11480 | OpenBSD-Regress-ID: f24fc303d40931157431df589b386abf5e1be575 | ||
11481 | |||
11482 | commit f47d72ddad75b93d3cbc781718b0fa9046c03df8 | ||
11483 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11484 | Date: Thu Jan 17 04:45:09 2019 +0000 | ||
11485 | |||
11486 | upstream: tun_fwd_ifnames variable should b | ||
11487 | |||
11488 | =?UTF-8?q?e=20extern;=20from=20Hanno=20B=C3=B6ck?= | ||
11489 | MIME-Version: 1.0 | ||
11490 | Content-Type: text/plain; charset=UTF-8 | ||
11491 | Content-Transfer-Encoding: 8bit | ||
11492 | |||
11493 | OpenBSD-Commit-ID: d53dede6e521161bf04d39d09947db6253a38271 | ||
11494 | |||
11495 | commit 943d0965263cae1c080ce5a9d0b5aa341885e55d | ||
11496 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11497 | Date: Thu Jan 17 04:20:53 2019 +0000 | ||
11498 | |||
11499 | upstream: include time.h for time(3)/nanosleep(2); from Ian | ||
11500 | |||
11501 | McKellar | ||
11502 | |||
11503 | OpenBSD-Commit-ID: 6412ccd06a88f65b207a1089345f51fa1244ea51 | ||
11504 | |||
11505 | commit dbb4dec6d5d671b5e9d67ef02162a610ad052068 | ||
11506 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11507 | Date: Thu Jan 17 01:50:24 2019 +0000 | ||
11508 | |||
11509 | upstream: many of the global variables in this file can be made static; | ||
11510 | |||
11511 | patch from Markus Schmidt | ||
11512 | |||
11513 | OpenBSD-Commit-ID: f3db619f67beb53257b21bac0e92b4fb7d5d5737 | ||
11514 | |||
11515 | commit 60d8c84e0887514c99c9ce071965fafaa1c3d34a | ||
11516 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11517 | Date: Wed Jan 16 23:23:45 2019 +0000 | ||
11518 | |||
11519 | upstream: Add "-h" flag to sftp chown/chgrp/chmod commands to | ||
11520 | |||
11521 | request they do not follow symlinks. Requires recently-committed | ||
11522 | lsetstat@openssh.com extension on the server side. | ||
11523 | |||
11524 | ok markus@ dtucker@ | ||
11525 | |||
11526 | OpenBSD-Commit-ID: f93bb3f6f7eb2fb7ef1e59126e72714f1626d604 | ||
11527 | |||
11528 | commit dbbc7e0eab7262f34b8e0cd6efecd1c77b905ed0 | ||
11529 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11530 | Date: Wed Jan 16 23:22:10 2019 +0000 | ||
11531 | |||
11532 | upstream: add support for a "lsetstat@openssh.com" extension. This | ||
11533 | |||
11534 | replicates the functionality of the existing SSH2_FXP_SETSTAT operation but | ||
11535 | does not follow symlinks. Based on a patch from Bert Haverkamp in bz#2067 but | ||
11536 | with more attribute modifications supported. | ||
11537 | |||
11538 | ok markus@ dtucker@ | ||
11539 | |||
11540 | OpenBSD-Commit-ID: f7234f6e90db19655d55d936a115ee4ccb6aaf80 | ||
11541 | |||
11542 | commit 4a526941d328fc3d97068c6a4cbd9b71b70fe5e1 | ||
11543 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11544 | Date: Fri Jan 4 03:27:50 2019 +0000 | ||
11545 | |||
11546 | upstream: eliminate function-static attempt counters for | ||
11547 | |||
11548 | passwd/kbdint authmethods by moving them to the client authctxt; Patch from | ||
11549 | Markus Schmidt, ok markus@ | ||
11550 | |||
11551 | OpenBSD-Commit-ID: 4df4404a5d5416eb056f68e0e2f4fa91ba3b3f7f | ||
11552 | |||
11553 | commit 8a8183474c41bd6cebaa917346b549af2239ba2f | ||
11554 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11555 | Date: Fri Jan 4 03:23:00 2019 +0000 | ||
11556 | |||
11557 | upstream: fix memory leak of ciphercontext when rekeying; bz#2942 | ||
11558 | |||
11559 | Patch from Markus Schmidt; ok markus@ | ||
11560 | |||
11561 | OpenBSD-Commit-ID: 7877f1b82e249986f1ef98d0ae76ce987d332bdd | ||
11562 | |||
11563 | commit 5bed70afce0907b6217418d0655724c99b683d93 | ||
11564 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11565 | Date: Tue Jan 1 23:10:53 2019 +0000 | ||
11566 | |||
11567 | upstream: static on global vars, const on handler tables that contain | ||
11568 | |||
11569 | function pointers; from Mike Frysinger | ||
11570 | |||
11571 | OpenBSD-Commit-ID: 7ef2305e50d3caa6326286db43cf2cfaf03960e0 | ||
11572 | |||
11573 | commit 007a88b48c97d092ed2f501bbdcb70d9925277be | ||
11574 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11575 | Date: Thu Dec 27 23:02:11 2018 +0000 | ||
11576 | |||
11577 | upstream: Request RSA-SHA2 signatures for | ||
11578 | |||
11579 | rsa-sha2-{256|512}-cert-v01@openssh.com cert algorithms; ok markus@ | ||
11580 | |||
11581 | OpenBSD-Commit-ID: afc6f7ca216ccd821656d1c911d2a3deed685033 | ||
11582 | |||
11583 | commit eb347d086c35428c47fe52b34588cbbc9b49d9a6 | ||
11584 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11585 | Date: Thu Dec 27 03:37:49 2018 +0000 | ||
11586 | |||
11587 | upstream: ssh_packet_set_state() now frees ssh->kex implicitly, so | ||
11588 | |||
11589 | don't do explicit kex_free() beforehand | ||
11590 | |||
11591 | OpenBSD-Regress-ID: f2f73bad47f62a2040ccba0a72cadcb12eda49cf | ||
11592 | |||
11593 | commit bb542f0cf6f7511a22a08c492861e256a82376a9 | ||
11594 | Author: tedu@openbsd.org <tedu@openbsd.org> | ||
11595 | Date: Sat Dec 15 00:50:21 2018 +0000 | ||
11596 | |||
11597 | upstream: remove unused and problematic sudo clean. ok espie | ||
11598 | |||
11599 | OpenBSD-Regress-ID: ca90c20a15a85b661e13e98b80c10e65cd662f7b | ||
11600 | |||
11601 | commit 0a843d9a0e805f14653a555f5c7a8ba99d62c12d | ||
11602 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11603 | Date: Thu Dec 27 03:25:24 2018 +0000 | ||
11604 | |||
11605 | upstream: move client/server SSH-* banners to buffers under | ||
11606 | |||
11607 | ssh->kex and factor out the banner exchange. This eliminates some common code | ||
11608 | from the client and server. | ||
11609 | |||
11610 | Also be more strict about handling \r characters - these should only | ||
11611 | be accepted immediately before \n (pointed out by Jann Horn). | ||
11612 | |||
11613 | Inspired by a patch from Markus Schmidt. | ||
11614 | (lots of) feedback and ok markus@ | ||
11615 | |||
11616 | OpenBSD-Commit-ID: 1cc7885487a6754f63641d7d3279b0941890275b | ||
11617 | |||
11618 | commit 434b587afe41c19391821e7392005068fda76248 | ||
11619 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11620 | Date: Fri Dec 7 04:36:09 2018 +0000 | ||
11621 | |||
11622 | upstream: Fix calculation of initial bandwidth limits. Account for | ||
11623 | |||
11624 | written bytes before the initial timer check so that the first buffer written | ||
11625 | is accounted. Set the threshold after which the timer is checked such that | ||
11626 | the limit starts being computed as soon as possible, ie after the second | ||
11627 | buffer is written. This prevents an initial burst of traffic and provides a | ||
11628 | more accurate bandwidth limit. bz#2927, ok djm. | ||
11629 | |||
11630 | OpenBSD-Commit-ID: ff3ef76e4e43040ec198c2718d5682c36b255cb6 | ||
11631 | |||
11632 | commit a6a0788cbbe8dfce2819ee43b09c80725742e21c | ||
11633 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11634 | Date: Fri Dec 7 03:39:40 2018 +0000 | ||
11635 | |||
11636 | upstream: only consider the ext-info-c extension during the initial | ||
11637 | |||
11638 | KEX. It shouldn't be sent in subsequent ones, but if it is present we should | ||
11639 | ignore it. | ||
11640 | |||
11641 | This prevents sshd from sending a SSH_MSG_EXT_INFO for REKEX for buggy | ||
11642 | these clients. Reported by Jakub Jelen via bz2929; ok dtucker@ | ||
11643 | |||
11644 | OpenBSD-Commit-ID: 91564118547f7807030ec537480303e2371902f9 | ||
11645 | |||
11646 | commit 63bba57a32c5bb6158d57cf4c47022daf89c14a0 | ||
11647 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11648 | Date: Fri Dec 7 03:33:18 2018 +0000 | ||
11649 | |||
11650 | upstream: fix option letter pasto in previous | ||
11651 | |||
11652 | OpenBSD-Commit-ID: e26c8bf2f2a808f3c47960e1e490d2990167ec39 | ||
11653 | |||
11654 | commit 737e4edd82406595815efadc28ed5161b8b0c01a | ||
11655 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11656 | Date: Fri Dec 7 03:32:26 2018 +0000 | ||
11657 | |||
11658 | upstream: mention that the ssh-keygen -F (find host in | ||
11659 | |||
11660 | authorized_keys) and -R (remove host from authorized_keys) options may accept | ||
11661 | either a bare hostname or a [hostname]:port combo. bz#2935 | ||
11662 | |||
11663 | OpenBSD-Commit-ID: 5535cf4ce78375968b0d2cd7aa316fa3eb176780 | ||
11664 | |||
11665 | commit 8a22ffaa13391cfe5b40316d938fe0fb931e9296 | ||
11666 | Author: Damien Miller <djm@mindrot.org> | ||
11667 | Date: Fri Dec 7 15:41:16 2018 +1100 | ||
11668 | |||
11669 | expose $SSH_CONNECTION in the PAM environment | ||
11670 | |||
11671 | This makes the connection 4-tuple available to PAM modules that | ||
11672 | wish to use it in decision-making. bz#2741 | ||
11673 | |||
11674 | commit a784fa8c7a7b084d63bae82ccfea902131bb45c5 | ||
11675 | Author: Kevin Adler <kadler@us.ibm.com> | ||
11676 | Date: Wed Dec 12 22:12:45 2018 -0600 | ||
11677 | |||
11678 | Don't pass loginmsg by address now that it's an sshbuf* | ||
11679 | |||
11680 | In 120a1ec74, loginmsg was changed from the legacy Buffer type | ||
11681 | to struct sshbuf*, but it missed changing calls to | ||
11682 | sys_auth_allowed_user and sys_auth_record_login which passed | ||
11683 | loginmsg by address. Now that it's a pointer, just pass it directly. | ||
11684 | |||
11685 | This only affects AIX, unless there are out of tree users. | ||
11686 | |||
11687 | commit 285310b897969a63ef224d39e7cc2b7316d86940 | ||
11688 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11689 | Date: Fri Dec 7 02:31:20 2018 +0000 | ||
11690 | |||
11691 | upstream: no need to allocate channels_pre/channels_post in | ||
11692 | |||
11693 | channel_init_channels() as we do it anyway in channel_handler_init() that we | ||
11694 | call at the end of the function. Fix from Markus Schmidt via bz#2938 | ||
11695 | |||
11696 | OpenBSD-Commit-ID: 74893638af49e3734f1e33a54af1b7ea533373ed | ||
11697 | |||
11698 | commit 87d6cf1cbc91df6815db8fe0acc7c910bc3d18e4 | ||
11699 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11700 | Date: Fri Nov 30 02:24:52 2018 +0000 | ||
11701 | |||
11702 | upstream: don't attempt to connect to empty SSH_AUTH_SOCK; bz#293 | ||
11703 | |||
11704 | OpenBSD-Commit-ID: 0e8fc8f19f14b21adef7109e0faa583d87c0e929 | ||
11705 | |||
11706 | commit 91b19198c3f604f5eef2c56dbe36f29478243141 | ||
11707 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11708 | Date: Wed Nov 28 06:00:38 2018 +0000 | ||
11709 | |||
11710 | upstream: don't truncate user or host name in "user@host's | ||
11711 | |||
11712 | OpenBSD-Commit-ID: e6ca01a8d58004b7f2cac0b1b7ce8f87e425e360 | ||
11713 | |||
11714 | commit dd0cf6318d9b4b3533bda1e3bc021b2cd7246b7a | ||
11715 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
11716 | Date: Fri Nov 23 06:58:28 2018 +0000 | ||
11717 | |||
11718 | upstream: tweak previous; | ||
11719 | |||
11720 | OpenBSD-Commit-ID: 08f096922eb00c98251501c193ff9e83fbb5de4f | ||
11721 | |||
11722 | commit 8a85f5458d1c802471ca899c97f89946f6666e61 | ||
11723 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11724 | Date: Sun Nov 25 21:44:05 2018 +1100 | ||
11725 | |||
11726 | Include stdio.h for FILE if needed. | ||
11727 | |||
11728 | commit 16fb23f25454991272bfe4598cc05d20fcd25116 | ||
11729 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11730 | Date: Sun Nov 25 14:05:57 2018 +1100 | ||
11731 | |||
11732 | Reverse order of OpenSSL init functions. | ||
11733 | |||
11734 | Try the new init function (OPENSSL_init_crypto) before falling back to | ||
11735 | the old one (OpenSSL_add_all_algorithms). | ||
11736 | |||
11737 | commit 98f878d2272bf8dff21f2a0265d963c29e33fed2 | ||
11738 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11739 | Date: Sun Nov 25 14:05:08 2018 +1100 | ||
11740 | |||
11741 | Improve OpenSSL_add_all_algorithms check. | ||
11742 | |||
11743 | OpenSSL_add_all_algorithms() may be a macro so check for that too. | ||
11744 | |||
11745 | commit 9e34e0c59ab04514f9de9934a772283f7f372afe | ||
11746 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11747 | Date: Fri Nov 23 05:08:07 2018 +0000 | ||
11748 | |||
11749 | upstream: add a ssh_config "Match final" predicate | ||
11750 | |||
11751 | Matches in same pass as "Match canonical" but doesn't require | ||
11752 | hostname canonicalisation be enabled. bz#2906 ok markus | ||
11753 | |||
11754 | OpenBSD-Commit-ID: fba1dfe9f6e0cabcd0e2b3be13f7a434199beffa | ||
11755 | |||
11756 | commit 4da58d58736b065b1182b563d10ad6765d811c6d | ||
11757 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11758 | Date: Fri Nov 23 02:53:57 2018 +0000 | ||
11759 | |||
11760 | upstream: Remove now-unneeded ifdef SIGINFO around handler since it is | ||
11761 | |||
11762 | now always used for SIGUSR1 even when SIGINFO is not defined. This will make | ||
11763 | things simpler in -portable. | ||
11764 | |||
11765 | OpenBSD-Regress-ID: 4ff0265b335820b0646d37beb93f036ded0dc43f | ||
11766 | |||
11767 | commit c721d5877509875c8515df0215fa1dab862013bc | ||
11768 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11769 | Date: Fri Nov 23 14:11:20 2018 +1100 | ||
11770 | |||
11771 | Move RANDOM_SEED_SIZE outside ifdef. | ||
11772 | |||
11773 | RANDOM_SEED_SIZE is used by both the OpenSSL and non-OpenSSL code | ||
11774 | This fixes the build with configureed --without-openssl. | ||
11775 | |||
11776 | commit deb51552c3ce7ce72c8d0232e4f36f2e7c118c7d | ||
11777 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11778 | Date: Thu Nov 22 19:59:28 2018 +1100 | ||
11779 | |||
11780 | Resync with OpenBSD by pulling in an ifdef SIGINFO. | ||
11781 | |||
11782 | commit 28c7b2cd050f4416bfcf3869a20e3ea138aa52fe | ||
11783 | Author: Damien Miller <djm@mindrot.org> | ||
11784 | Date: Fri Nov 23 10:45:20 2018 +1100 | ||
11785 | |||
11786 | fix configure test for OpenSSL version | ||
11787 | |||
11788 | square brackets in case statements may be eaten by autoconf. | ||
11789 | |||
11790 | Report and fix from Filipp Gunbin; tweaked by naddy@ | ||
11791 | |||
11792 | commit 42c5ec4b97b6a1bae70f323952d0646af16ce710 | ||
11793 | Author: Damien Miller <djm@mindrot.org> | ||
11794 | Date: Fri Nov 23 10:40:06 2018 +1100 | ||
11795 | |||
11796 | refactor libcrypto initialisation | ||
11797 | |||
11798 | Don't call OpenSSL_add_all_algorithms() unless OpenSSL actually | ||
11799 | supports it. | ||
11800 | |||
11801 | Move all libcrypto initialisation to a single function, and call that | ||
11802 | from seed_rng() that is called early in each tool's main(). | ||
11803 | |||
11804 | Prompted by patch from Rosen Penev | ||
11805 | |||
11806 | commit 5b60b6c02009547a3e2a99d4886965de2a4719da | ||
11807 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11808 | Date: Thu Nov 22 08:59:11 2018 +0000 | ||
11809 | |||
11810 | upstream: Output info on SIGUSR1 as well as | ||
11811 | |||
11812 | SIGINFO to resync with portable. (ID sync only). | ||
11813 | |||
11814 | OpenBSD-Regress-ID: 699d153e2de22dce51a1b270c40a98472d1a1b16 | ||
11815 | |||
11816 | commit e4ae345dc75b34fd870c2e8690d831d2c1088eb7 | ||
11817 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11818 | Date: Thu Nov 22 08:48:32 2018 +0000 | ||
11819 | |||
11820 | upstream: Append pid to temp files in /var/run and set a cleanup | ||
11821 | |||
11822 | trap for them. This allows multiple instances of tests to run without | ||
11823 | colliding. | ||
11824 | |||
11825 | OpenBSD-Regress-ID: 57add105ecdfc54752d8003acdd99eb68c3e0b4c | ||
11826 | |||
11827 | commit f72d0f52effca5aa20a193217346615ecd3eed53 | ||
11828 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11829 | Date: Wed Oct 31 11:09:27 2018 +0000 | ||
11830 | |||
11831 | upstream: UsePrivilegeSeparation no is deprecated | ||
11832 | |||
11833 | test "yes" and "sandbox". | ||
11834 | |||
11835 | OpenBSD-Regress-ID: 80e685ed8990766527dc629b1affc09a75bfe2da | ||
11836 | |||
11837 | commit 35d0e5fefc419bddcbe09d7fc163d8cd3417125b | ||
11838 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11839 | Date: Wed Oct 17 23:28:05 2018 +0000 | ||
11840 | |||
11841 | upstream: add some knobs: | ||
11842 | |||
11843 | UNITTEST_FAST?= no # Skip slow tests (e.g. less intensive fuzzing). | ||
11844 | UNITTEST_SLOW?= no # Include slower tests (e.g. more intensive fuzzing). | ||
11845 | UNITTEST_VERBOSE?= no # Verbose test output (inc. per-test names). | ||
11846 | |||
11847 | useful if you want to run the tests as a smoke test to exercise the | ||
11848 | functionality without waiting for all the fuzzers to run. | ||
11849 | |||
11850 | OpenBSD-Regress-ID: e04d82ebec86068198cd903acf1c67563c57315e | ||
11851 | |||
11852 | commit c1941293d9422a14dda372b4c21895e72aa7a063 | ||
11853 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11854 | Date: Thu Nov 22 15:52:26 2018 +1100 | ||
11855 | |||
11856 | Resync Makefile.inc with upstream. | ||
11857 | |||
11858 | It's unused in -portable, but having it out of sync makes other syncs | ||
11859 | fail to apply. | ||
11860 | |||
11861 | commit 928f1231f65f88cd4c73e6e0edd63d2cf6295d77 | ||
11862 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11863 | Date: Mon Nov 19 04:12:32 2018 +0000 | ||
11864 | |||
11865 | upstream: silence (to log level debug2) failure messages when | ||
11866 | |||
11867 | loading the default hostkeys. Hostkeys explicitly specified in the | ||
11868 | configuration or on the command-line are still reported as errors, and | ||
11869 | failure to load at least one host key remains a fatal error. | ||
11870 | MIME-Version: 1.0 | ||
11871 | Content-Type: text/plain; charset=UTF-8 | ||
11872 | Content-Transfer-Encoding: 8bit | ||
11873 | |||
11874 | Based on patch from Dag-Erling Smørgrav via | ||
11875 | https://github.com/openssh/openssh-portable/pull/103 | ||
11876 | |||
11877 | ok markus@ | ||
11878 | |||
11879 | OpenBSD-Commit-ID: ffc2e35a75d1008effaf05a5e27425041c27b684 | ||
11880 | |||
11881 | commit 7fca94edbe8ca9f879da9fdd2afd959c4180f4c7 | ||
11882 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
11883 | Date: Sun Nov 18 22:43:29 2018 +0000 | ||
11884 | |||
11885 | upstream: Fix inverted logic for redirecting ProxyCommand stderr to | ||
11886 | |||
11887 | /dev/null. Fixes mosh in proxycommand mode that was broken by the previous | ||
11888 | ProxyCommand change that was reported by matthieu@. ok djm@ danj@ | ||
11889 | |||
11890 | OpenBSD-Commit-ID: c6fc9641bc250221a0a81c6beb2e72d603f8add6 | ||
11891 | |||
11892 | commit ccef7c4faf914993b53035cd2b25ce02ab039c9d | ||
11893 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11894 | Date: Fri Nov 16 06:17:38 2018 +0000 | ||
11895 | |||
11896 | upstream: redirect stderr of ProxyCommands to /dev/null when ssh is | ||
11897 | |||
11898 | started with ControlPersist; based on patch from Steffen Prohaska | ||
11899 | |||
11900 | OpenBSD-Commit-ID: 1bcaa14a03ae80369d31021271ec75dce2597957 | ||
11901 | |||
11902 | commit 15182fd96845a03216d7ac5a2cf31c4e77e406e3 | ||
11903 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11904 | Date: Fri Nov 16 06:10:29 2018 +0000 | ||
11905 | |||
11906 | upstream: make grandparent-parent-child sshbuf chains robust to | ||
11907 | |||
11908 | use-after-free faults if the ancestors are freed before the descendents. | ||
11909 | Nothing in OpenSSH uses this deallocation pattern. Reported by Jann Horn | ||
11910 | |||
11911 | OpenBSD-Commit-ID: d93501d1d2734245aac802a252b9bb2eccdba0f2 | ||
11912 | |||
11913 | commit 2a35862e664afde774d4a72497d394fe7306ccb5 | ||
11914 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11915 | Date: Fri Nov 16 03:26:01 2018 +0000 | ||
11916 | |||
11917 | upstream: use path_absolute() for pathname checks; from Manoj Ampalam | ||
11918 | |||
11919 | OpenBSD-Commit-ID: 482ce71a5ea5c5f3bc4d00fd719481a6a584d925 | ||
11920 | |||
11921 | commit d0d1dfa55be1c5c0d77ab3096b198a64235f936d | ||
11922 | Author: Darren Tucker <dtucker@dtucker.net> | ||
11923 | Date: Fri Nov 16 14:11:44 2018 +1100 | ||
11924 | |||
11925 | Test for OPENSSL_init_crypto before using. | ||
11926 | |||
11927 | Check for the presence of OPENSSL_init_crypto and all the flags we want | ||
11928 | before trying to use it (bz#2931). | ||
11929 | |||
11930 | commit 6010c0303a422a9c5fa8860c061bf7105eb7f8b2 | ||
11931 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11932 | Date: Fri Nov 16 03:03:10 2018 +0000 | ||
11933 | |||
11934 | upstream: disallow empty incoming filename or ones that refer to the | ||
11935 | |||
11936 | current directory; based on report/patch from Harry Sintonen | ||
11937 | |||
11938 | OpenBSD-Commit-ID: f27651b30eaee2df49540ab68d030865c04f6de9 | ||
11939 | |||
11940 | commit aaed635e3a401cfcc4cc97f33788179c458901c3 | ||
11941 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11942 | Date: Fri Nov 16 02:46:20 2018 +0000 | ||
11943 | |||
11944 | upstream: fix bug in client that was keeping a redundant ssh-agent | ||
11945 | |||
11946 | socket around for the life of the connection; bz#2912; reported by Simon | ||
11947 | Tatham; ok dtucker@ | ||
11948 | |||
11949 | OpenBSD-Commit-ID: 4ded588301183d343dce3e8c5fc1398e35058478 | ||
11950 | |||
11951 | commit e76135e3007f1564427b2956c628923d8dc2f75a | ||
11952 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11953 | Date: Fri Nov 16 02:43:56 2018 +0000 | ||
11954 | |||
11955 | upstream: fix bug in HostbasedAcceptedKeyTypes and | ||
11956 | |||
11957 | PubkeyAcceptedKeyTypes options. If only RSA-SHA2 siganture types were | ||
11958 | specified, then authentication would always fail for RSA keys as the monitor | ||
11959 | checks only the base key (not the signature algorithm) type against | ||
11960 | *AcceptedKeyTypes. bz#2746; reported by Jakub Jelen; ok dtucker | ||
11961 | |||
11962 | OpenBSD-Commit-ID: 117bc3dc54578dbdb515a1d3732988cb5b00461b | ||
11963 | |||
11964 | commit 5c1a63562cac0574c226224075b0829a50b48c9d | ||
11965 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11966 | Date: Fri Nov 16 02:30:20 2018 +0000 | ||
11967 | |||
11968 | upstream: support a prefix of '@' to suppress echo of sftp batch | ||
11969 | |||
11970 | commands; bz#2926; ok dtucker@ | ||
11971 | |||
11972 | OpenBSD-Commit-ID: 9d635636bc84aeae796467e059f7634de990a79d | ||
11973 | |||
11974 | commit 90ef45f7aac33eaf55ec344e101548a01e570f29 | ||
11975 | Author: schwarze@openbsd.org <schwarze@openbsd.org> | ||
11976 | Date: Tue Nov 13 07:22:45 2018 +0000 | ||
11977 | |||
11978 | upstream: fix markup error (missing blank before delimiter); from | ||
11979 | |||
11980 | Mike Frysinger <vapier at gentoo dot org> | ||
11981 | |||
11982 | OpenBSD-Commit-ID: 1bc5392f795ca86318d695e0947eaf71a5a4f6d9 | ||
11983 | |||
11984 | commit 960e7c672dc106f3b759c081de3edb4d1138b36e | ||
11985 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11986 | Date: Fri Nov 9 02:57:58 2018 +0000 | ||
11987 | |||
11988 | upstream: typo in error message; caught by Debian lintian, via | ||
11989 | |||
11990 | Colin Watson | ||
11991 | |||
11992 | OpenBSD-Commit-ID: bff614c7bd1f4ca491a84e9b5999f848d0d66758 | ||
11993 | |||
11994 | commit 81f1620c836e6c79c0823ba44acca605226a80f1 | ||
11995 | Author: djm@openbsd.org <djm@openbsd.org> | ||
11996 | Date: Fri Nov 9 02:56:22 2018 +0000 | ||
11997 | |||
11998 | upstream: correct local variable name; from yawang AT microsoft.com | ||
11999 | |||
12000 | OpenBSD-Commit-ID: a0c228390856a215bb66319c89cb3959d3af8c87 | ||
12001 | |||
12002 | commit 1293740e800fa2e5ccd38842a2e4970c6f3b9831 | ||
12003 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
12004 | Date: Wed Oct 31 11:20:05 2018 +0000 | ||
12005 | |||
12006 | upstream: Import new moduli. | ||
12007 | |||
12008 | OpenBSD-Commit-ID: c07772f58028fda683ee6abd41c73da3ff70d403 | ||
12009 | |||
12010 | commit 46925ae28e53fc9add336a4fcdb7ed4b86c3591c | ||
12011 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12012 | Date: Fri Oct 26 01:23:03 2018 +0000 | ||
12013 | |||
12014 | upstream: mention ssh-ed25519-cert-v01@openssh.com in list of cert | ||
12015 | |||
12016 | key type at start of doc | ||
12017 | |||
12018 | OpenBSD-Commit-ID: b46b0149256d67f05f2d5d01e160634ed1a67324 | ||
12019 | |||
12020 | commit 8d8340e2c215155637fe19cb1a837f71b2d55f7b | ||
12021 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12022 | Date: Fri Nov 16 13:32:13 2018 +1100 | ||
12023 | |||
12024 | Remove fallback check for /usr/local/ssl. | ||
12025 | |||
12026 | If configure could not find a working OpenSSL installation it would | ||
12027 | fall back to checking in /usr/local/ssl. This made sense back when | ||
12028 | systems did not ship with OpenSSL, but most do and OpenSSL 1.1 doesn't | ||
12029 | use that as a default any more. The fallback behaviour also meant | ||
12030 | that if you pointed --with-ssl-dir at a specific directory and it | ||
12031 | didn't work, it would silently use either the system libs or the ones | ||
12032 | in /usr/local/ssl. If you want to use /usr/local/ssl you'll need to | ||
12033 | pass configure --with-ssl-dir=/usr/local/ssl. ok djm@ | ||
12034 | |||
12035 | commit ce93472134fb22eff73edbcd173a21ae38889331 | ||
12036 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12037 | Date: Fri Nov 16 12:44:01 2018 +1100 | ||
12038 | |||
12039 | Fix check for OpenSSL 1.0.1 exactly. | ||
12040 | |||
12041 | Both INSTALL and configure.ac claim OpenSSL >= 1.0.1 is supported; fix | ||
12042 | compile-time check for 1.0.1 to match. | ||
12043 | |||
12044 | commit f2970868f86161a22b2c377057fa3891863a692a | ||
12045 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12046 | Date: Sun Nov 11 15:58:20 2018 +1100 | ||
12047 | |||
12048 | Improve warnings in cygwin service setup. | ||
12049 | |||
12050 | bz#2922, patch from vinschen at redhat.com. | ||
12051 | |||
12052 | commit bd2d54fc1eee84bf87158a1277a50e6c8a303339 | ||
12053 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12054 | Date: Sun Nov 11 15:54:54 2018 +1100 | ||
12055 | |||
12056 | Remove hardcoded service name in cygwin setup. | ||
12057 | |||
12058 | bz#2922, patch from Christian.Lupien at USherbrooke.ca, sanity check | ||
12059 | by vinschen at redhat.com. | ||
12060 | |||
12061 | commit d0153c77bf7964e694f1d26c56c41a571b8e9466 | ||
12062 | Author: Dag-Erling Smørgrav <des@des.no> | ||
12063 | Date: Tue Oct 9 23:03:40 2018 +0200 | ||
12064 | |||
12065 | AC_CHECK_SIZEOF() no longer needs a second argument. | ||
12066 | |||
12067 | commit 9b47b083ca9d866249ada9f02dbd57c87b13806e | ||
12068 | Author: Manoj Ampalam <manojamp@microsoft.com> | ||
12069 | Date: Thu Nov 8 22:41:59 2018 -0800 | ||
12070 | |||
12071 | Fix error message w/out nistp521. | ||
12072 | |||
12073 | Correct error message when OpenSSL doesn't support certain ECDSA key | ||
12074 | lengths. | ||
12075 | |||
12076 | commit 624d19ac2d56fa86a22417c35536caceb3be346f | ||
12077 | Author: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||
12078 | Date: Tue Oct 9 16:17:42 2018 -0300 | ||
12079 | |||
12080 | fix compilation with openssl built without ECC | ||
12081 | |||
12082 | ECDSA code in openssh-compat.h and libressl-api-compat.c needs to be | ||
12083 | guarded by OPENSSL_HAS_ECC | ||
12084 | |||
12085 | Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||
12086 | |||
12087 | commit 1801cd11d99d05a66ab5248c0555f55909a355ce | ||
12088 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12089 | Date: Thu Nov 8 15:03:11 2018 +1100 | ||
12090 | |||
12091 | Simplify OpenSSL 1.1 function checks. | ||
12092 | |||
12093 | Replace AC_SEARCH_LIBS checks for OpenSSL 1.1 functions with a single | ||
12094 | AC_CHECK_FUNCS. ok djm@ | ||
12095 | |||
12096 | commit bc32f118d484e4d71d2a0828fd4eab7e4176c9af | ||
12097 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12098 | Date: Mon Nov 5 17:31:24 2018 +1100 | ||
12099 | |||
12100 | Fix pasto for HAVE_EVP_CIPHER_CTX_SET_IV. | ||
12101 | |||
12102 | Prevents unnecessary redefinition. Patch from mforney at mforney.org. | ||
12103 | |||
12104 | commit 3719df60c66abc4b47200d41f571d67772f293ba | ||
12105 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12106 | Date: Wed Oct 31 22:21:03 2018 +1100 | ||
12107 | |||
12108 | Import new moduli. | ||
12109 | |||
12110 | commit 595605d4abede475339d6a1f07a8cc674c11d1c3 | ||
12111 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12112 | Date: Sun Oct 28 15:18:13 2018 +1100 | ||
12113 | |||
12114 | Update check for minimum OpenSSL version. | ||
12115 | |||
12116 | commit 6ab75aba340d827140d7ba719787aabaf39a0355 | ||
12117 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12118 | Date: Sun Oct 28 15:16:31 2018 +1100 | ||
12119 | |||
12120 | Update required OpenSSL versions to match current. | ||
12121 | |||
12122 | commit c801b0e38eae99427f37869370151b78f8e15c5d | ||
12123 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12124 | Date: Sun Oct 28 14:34:12 2018 +1100 | ||
12125 | |||
12126 | Use detected version functions in openssl compat. | ||
12127 | |||
12128 | Use detected functions in compat layer instead of guessing based on | ||
12129 | versions. Really fixes builds with LibreSSL, not just configure. | ||
12130 | |||
12131 | commit 262d81a259d4aa1507c709ec9d5caa21c7740722 | ||
12132 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12133 | Date: Sat Oct 27 16:45:59 2018 +1100 | ||
12134 | |||
12135 | Check for the existence of openssl version funcs. | ||
12136 | |||
12137 | Check for the existence of openssl version functions and use the ones | ||
12138 | detected instead of trying to guess based on the int32 version | ||
12139 | identifier. Fixes builds with LibreSSL. | ||
12140 | |||
12141 | commit 406a24b25d6a2bdd70cacd16de7e899dcb2a8829 | ||
12142 | Author: Damien Miller <djm@mindrot.org> | ||
12143 | Date: Fri Oct 26 13:43:28 2018 +1100 | ||
12144 | |||
12145 | fix builds on OpenSSL <= 1.0.x | ||
12146 | |||
12147 | I thought OpenSSL 1.0.x offered the new-style OpenSSL_version_num() API | ||
12148 | to obtain version number, but they don't. | ||
12149 | |||
12150 | commit 859754bdeb41373d372e36b5dc89c547453addb3 | ||
12151 | Author: Damien Miller <djm@mindrot.org> | ||
12152 | Date: Tue Oct 23 17:10:41 2018 +1100 | ||
12153 | |||
12154 | remove remaining references to SSLeay | ||
12155 | |||
12156 | Prompted by Rosen Penev | ||
12157 | |||
12158 | commit b9fea45a68946c8dfeace72ad1f6657c18f2a98a | ||
12159 | Author: Damien Miller <djm@mindrot.org> | ||
12160 | Date: Tue Oct 23 17:10:35 2018 +1100 | ||
12161 | |||
12162 | regen depend | ||
12163 | |||
12164 | commit a65784c9f9c5d00cf1a0e235090170abc8d07c73 | ||
12165 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12166 | Date: Tue Oct 23 05:56:35 2018 +0000 | ||
12167 | |||
12168 | upstream: refer to OpenSSL not SSLeay; | ||
12169 | |||
12170 | we're old, but we don't have to act it | ||
12171 | |||
12172 | OpenBSD-Commit-ID: 9ca38d11f8ed19e61a55108d1e892d696cee08ec | ||
12173 | |||
12174 | commit c0a35265907533be10ca151ac797f34ae0d68969 | ||
12175 | Author: Damien Miller <djm@mindrot.org> | ||
12176 | Date: Mon Oct 22 11:22:50 2018 +1100 | ||
12177 | |||
12178 | fix compile for openssl 1.0.x w/ --with-ssl-engine | ||
12179 | |||
12180 | bz#2921, patch from cotequeiroz | ||
12181 | |||
12182 | commit 31b49525168245abe16ad49d7b7f519786b53a38 | ||
12183 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12184 | Date: Mon Oct 22 20:05:18 2018 +1100 | ||
12185 | |||
12186 | Include openssl compatibility. | ||
12187 | |||
12188 | Patch from rosenp at gmail.com via openssh-unix-dev. | ||
12189 | |||
12190 | commit a4fc253f5f44f0e4c47aafe2a17d2c46481d3c04 | ||
12191 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12192 | Date: Fri Oct 19 03:12:42 2018 +0000 | ||
12193 | |||
12194 | upstream: when printing certificate contents "ssh-keygen -Lf | ||
12195 | |||
12196 | /path/certificate", include the algorithm that the CA used to sign the cert. | ||
12197 | |||
12198 | OpenBSD-Commit-ID: 1ea20b5048a851a7a0758dcb9777a211a2c0dddd | ||
12199 | |||
12200 | commit 83b3d99d2b47321b7ebb8db6f6ea04f3808bc069 | ||
12201 | Author: florian@openbsd.org <florian@openbsd.org> | ||
12202 | Date: Mon Oct 15 11:28:50 2018 +0000 | ||
12203 | |||
12204 | upstream: struct sockaddr_storage is guaranteed to be large enough, | ||
12205 | |||
12206 | no need to check the size. OK kn, deraadt | ||
12207 | |||
12208 | OpenBSD-Commit-ID: 0aa56e92eb49c79f495b31a5093109ec5841f439 | ||
12209 | |||
12210 | commit aede1c34243a6f7feae2fb2cb686ade5f9be6f3d | ||
12211 | Author: Damien Miller <djm@mindrot.org> | ||
12212 | Date: Wed Oct 17 11:01:20 2018 +1100 | ||
12213 | |||
12214 | Require OpenSSL 1.1.x series 1.1.0g or greater | ||
12215 | |||
12216 | Previous versions have a bug with EVP_CipherInit() when passed a | ||
12217 | NULL EVP_CIPHER, per https://github.com/openssl/openssl/pull/4613 | ||
12218 | |||
12219 | ok dtucker@ | ||
12220 | |||
12221 | commit 08300c211409c212e010fe2e2f2883e573a04ce2 | ||
12222 | Author: Damien Miller <djm@mindrot.org> | ||
12223 | Date: Wed Oct 17 08:12:02 2018 +1100 | ||
12224 | |||
12225 | unbreak compilation with --with-ssl-engine | ||
12226 | |||
12227 | Missing last argument to OPENSSL_init_crypto() | ||
12228 | |||
12229 | commit 1673274aee67ce0eb6f00578b6f3d2bcbd58f937 | ||
12230 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12231 | Date: Tue Oct 16 14:45:57 2018 +1100 | ||
12232 | |||
12233 | Remove gcc spectre mitigation flags. | ||
12234 | |||
12235 | Current impementions of the gcc spectre mitigation flags cause | ||
12236 | miscompilations when combined with other flags and do not provide much | ||
12237 | protection. Found by fweimer at redhat.com, ok djm@ | ||
12238 | |||
12239 | commit 4e23deefd7959ef83c73ed9cce574423438f6133 | ||
12240 | Author: Damien Miller <djm@mindrot.org> | ||
12241 | Date: Tue Oct 16 10:51:52 2018 +1100 | ||
12242 | |||
12243 | Avoid deprecated OPENSSL_config when using 1.1.x | ||
12244 | |||
12245 | OpenSSL 1.1.x soft-deprecated OPENSSL_config in favour of | ||
12246 | OPENSSL_init_crypto; pointed out by Jakub Jelen | ||
12247 | |||
12248 | commit 797cdd9c8468ed1125ce60d590ae3f1397866af4 | ||
12249 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12250 | Date: Fri Oct 12 16:58:47 2018 +1100 | ||
12251 | |||
12252 | Don't avoid our *sprintf replacements. | ||
12253 | |||
12254 | Don't let systems with broken printf(3) avoid our replacements | ||
12255 | via asprintf(3)/vasprintf(3) calling libc internally. From djm@ | ||
12256 | |||
12257 | commit e526127cbd2f8ad88fb41229df0c9b850c722830 | ||
12258 | Author: Darren Tucker <dtucker@dtucker.net> | ||
12259 | Date: Fri Oct 12 16:43:35 2018 +1100 | ||
12260 | |||
12261 | Check if snprintf understands %zu. | ||
12262 | |||
12263 | If the platforms snprintf and friends don't understand %zu, use the | ||
12264 | compat replacement. Prevents segfaults on those platforms. | ||
12265 | |||
12266 | commit cf39f875191708c5f2f1a3c1c9019f106e74aea3 | ||
12267 | Author: Damien Miller <djm@mindrot.org> | ||
12268 | Date: Fri Oct 12 09:48:05 2018 +1100 | ||
12269 | |||
12270 | remove stale link, tweak | ||
12271 | |||
12272 | commit a7205e68decf7de2005810853b4ce6b222b65e2a | ||
12273 | Author: Damien Miller <djm@mindrot.org> | ||
12274 | Date: Fri Oct 12 09:47:20 2018 +1100 | ||
12275 | |||
12276 | update version numbers ahead of release | ||
12277 | |||
12278 | commit 1a4a9cf80f5b92b9d1dadd0bfa8867c04d195391 | ||
12279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12280 | Date: Thu Oct 11 03:48:04 2018 +0000 | ||
12281 | |||
12282 | upstream: don't send new-style rsa-sha2-*-cert-v01@openssh.com names to | ||
12283 | |||
12284 | older OpenSSH that can't handle them. spotted by Adam Eijdenberg; ok dtucker | ||
12285 | |||
12286 | OpenBSD-Commit-ID: 662bbc402e3d7c9b6c322806269698106a6ae631 | ||
12287 | |||
12288 | commit dc8ddcdf1a95e011c263486c25869bb5bf4e30ec | ||
12289 | Author: Damien Miller <djm@mindrot.org> | ||
12290 | Date: Thu Oct 11 13:08:59 2018 +1100 | ||
12291 | |||
12292 | update depends | ||
12293 | |||
12294 | commit 26841ac265603fd2253e6832e03602823dbb4022 | ||
12295 | Author: Damien Miller <djm@mindrot.org> | ||
12296 | Date: Thu Oct 11 13:02:11 2018 +1100 | ||
12297 | |||
12298 | some more duplicated key algorithm lines | ||
12299 | |||
12300 | From Adam Eijdenberg | ||
12301 | |||
12302 | commit 5d9d17603bfbb620195a4581025052832b4c4adc | ||
12303 | Author: Damien Miller <djm@mindrot.org> | ||
12304 | Date: Thu Oct 11 11:56:36 2018 +1100 | ||
12305 | |||
12306 | fix duplicated algorithm specification lines | ||
12307 | |||
12308 | Spotted by Adam Eijdenberg | ||
12309 | |||
12310 | commit ebfafd9c7a5b2a7fb515ee95dbe0e44e11d0a663 | ||
12311 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12312 | Date: Thu Oct 11 00:52:46 2018 +0000 | ||
12313 | |||
12314 | upstream: typo in plain RSA algorithm counterpart names for | ||
12315 | |||
12316 | certificates; spotted by Adam Eijdenberg; ok dtucker@ | ||
12317 | |||
12318 | OpenBSD-Commit-ID: bfcdeb6f4fc9e7607f5096574c8f118f2e709e00 | ||
12319 | |||
12320 | commit c29b111e7d87c2324ff71c80653dd8da168c13b9 | ||
12321 | Author: Damien Miller <djm@mindrot.org> | ||
12322 | Date: Thu Oct 11 11:29:35 2018 +1100 | ||
12323 | |||
12324 | check pw_passwd != NULL here too | ||
12325 | |||
12326 | Again, for systems with broken NIS implementations. | ||
12327 | |||
12328 | Prompted by coolbugcheckers AT gmail.com | ||
12329 | |||
12330 | commit fe8e8f349a553ef4c567acd418aac769a82b7729 | ||
12331 | Author: Damien Miller <djm@mindrot.org> | ||
12332 | Date: Thu Oct 11 11:03:15 2018 +1100 | ||
12333 | |||
12334 | check for NULL return from shadow_pw() | ||
12335 | |||
12336 | probably unreachable on this platform; pointed out by | ||
12337 | coolbugcheckers AT gmail.com | ||
12338 | |||
12339 | commit acc59cbe7a1fb169e1c3caba65a39bd74d6e030d | ||
12340 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
12341 | Date: Wed Oct 10 16:43:49 2018 +0000 | ||
12342 | |||
12343 | upstream: introducing openssh 7.9 | ||
12344 | |||
12345 | OpenBSD-Commit-ID: 42d526a9fe01a40dd299ac58014d3349adf40e25 | ||
12346 | |||
12347 | commit 12731158c75c8760a8bea06350eeb3e763fe1a07 | ||
12348 | Author: Damien Miller <djm@mindrot.org> | ||
12349 | Date: Thu Oct 11 10:29:29 2018 +1100 | ||
12350 | |||
12351 | supply callback to PEM_read_bio_PrivateKey | ||
12352 | |||
12353 | OpenSSL 1.1.0i has changed the behaviour of their PEM APIs, | ||
12354 | so that empty passphrases are interpreted differently. This | ||
12355 | probabalistically breaks loading some keys, because the PEM format | ||
12356 | is terrible and doesn't include a proper MAC. | ||
12357 | |||
12358 | Avoid this by providing a basic callback to avoid passing empty | ||
12359 | passphrases to OpenSSL in cases where one is required. | ||
12360 | |||
12361 | Based on patch from Jakub Jelen in bz#2913; ok dtucker@ | ||
12362 | |||
12363 | commit d1d301a1dd5d6cc3a9ed93ab7ab09dda4cb456e0 | ||
12364 | Author: Damien Miller <djm@mindrot.org> | ||
12365 | Date: Wed Oct 10 14:57:00 2018 +1100 | ||
12366 | |||
12367 | in pick_salt() avoid dereference of NULL passwords | ||
12368 | |||
12369 | Apparently some NIS implementations can leave pw->pw_passwd (or the | ||
12370 | shadow equivalent) NULL. | ||
12371 | |||
12372 | bz#2909; based on patch from Todd Eigenschink | ||
12373 | |||
12374 | commit edbb6febccee084d212fdc0cb05b40cb1c646ab1 | ||
12375 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12376 | Date: Tue Oct 9 05:42:23 2018 +0000 | ||
12377 | |||
12378 | upstream: Treat all PEM_read_bio_PrivateKey() errors when a passphrase | ||
12379 | |||
12380 | is specified as "incorrect passphrase" instead of trying to choose between | ||
12381 | that and "invalid format". | ||
12382 | |||
12383 | libcrypto can return ASN1 parsing errors rather than the expected | ||
12384 | decrypt error in certain infrequent cases when trying to decrypt/parse | ||
12385 | PEM private keys when supplied with an invalid passphrase. | ||
12386 | |||
12387 | Report and repro recipe from Thomas Deutschmann in bz#2901 | ||
12388 | |||
12389 | ok markus@ | ||
12390 | |||
12391 | OpenBSD-Commit-ID: b1d4cd92395f9743f81c0d23aab2524109580870 | ||
12392 | |||
12393 | commit 2581333d564d8697837729b3d07d45738eaf5a54 | ||
12394 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
12395 | Date: Fri Oct 5 14:26:09 2018 +0000 | ||
12396 | |||
12397 | upstream: Support using service names for port numbers. | ||
12398 | |||
12399 | * Try to resolve a port specification with getservbyname(3) if a | ||
12400 | numeric conversion fails. | ||
12401 | * Make the "Port" option in ssh_config handle its argument as a | ||
12402 | port rather than a plain integer. | ||
12403 | |||
12404 | ok dtucker@ deraadt@ | ||
12405 | |||
12406 | OpenBSD-Commit-ID: e7f03633133205ab3dfbc67f9df7475fabae660d | ||
12407 | |||
12408 | commit e0d6501e86734c48c8c503f81e1c0926e98c5c4c | ||
12409 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12410 | Date: Thu Oct 4 07:47:35 2018 +0000 | ||
12411 | |||
12412 | upstream: when the peer sends a channel-close message, make sure we | ||
12413 | |||
12414 | close the local extended read fd (stderr) along with the regular read fd | ||
12415 | (stdout). Avoids weird stuck processed in multiplexing mode. | ||
12416 | |||
12417 | Report and analysis by Nelson Elhage and Geoffrey Thomas in bz#2863 | ||
12418 | |||
12419 | ok dtucker@ markus@ | ||
12420 | |||
12421 | OpenBSD-Commit-ID: a48a2467fe938de4de69d2e7193d5fa701f12ae9 | ||
12422 | |||
12423 | commit 6f1aabb128246f445e33b8844fad3de9cb1d18cb | ||
12424 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12425 | Date: Thu Oct 4 01:04:52 2018 +0000 | ||
12426 | |||
12427 | upstream: factor out channel status formatting from | ||
12428 | |||
12429 | channel_open_message() so we can use it in other debug messages | ||
12430 | |||
12431 | OpenBSD-Commit-ID: 9c3903ca28fcabad57f566c9d0045b41ab7d52ba | ||
12432 | |||
12433 | commit f1dd179e122bdfdb7ca3072d9603607740efda05 | ||
12434 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12435 | Date: Thu Oct 4 00:10:11 2018 +0000 | ||
12436 | |||
12437 | upstream: include a little more information about the status and | ||
12438 | |||
12439 | disposition of channel's extended (stderr) fd; makes debugging some things a | ||
12440 | bit easier. No behaviour change. | ||
12441 | |||
12442 | OpenBSD-Commit-ID: 483eb6467dc7d5dbca8eb109c453e7a43075f7ce | ||
12443 | |||
12444 | commit 2d1428b11c8b6f616f070f2ecedce12328526944 | ||
12445 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12446 | Date: Thu Oct 4 00:04:41 2018 +0000 | ||
12447 | |||
12448 | upstream: explicit_bzero here to be consistent with other kex*.c; | ||
12449 | |||
12450 | report from coolbugcheckers AT gmail.com | ||
12451 | |||
12452 | OpenBSD-Commit-ID: a90f146c5b5f5b1408700395e394f70b440856cb | ||
12453 | |||
12454 | commit 5eff5b858e717e901e6af6596306a114de9f79f2 | ||
12455 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12456 | Date: Wed Oct 3 06:38:35 2018 +0000 | ||
12457 | |||
12458 | upstream: Allow ssh_config IdentityAgent directive to accept | ||
12459 | |||
12460 | environment variable names as well as explicit paths. ok dtucker@ | ||
12461 | |||
12462 | OpenBSD-Commit-ID: 2f0996e103876c53d8c9dd51dcce9889d700767b | ||
12463 | |||
12464 | commit a46ac4d86b25414d78b632e8173578b37e5f8a83 | ||
12465 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12466 | Date: Tue Oct 2 12:51:58 2018 +0000 | ||
12467 | |||
12468 | upstream: mention INFO@openssh.com for sending SIGINFO | ||
12469 | |||
12470 | OpenBSD-Commit-ID: 132471eeb0df658210afd27852fe65131b26e900 | ||
12471 | |||
12472 | commit ff3a411cae0b484274b7900ef52ff4dad3e12876 | ||
12473 | Author: Damien Miller <djm@mindrot.org> | ||
12474 | Date: Tue Oct 2 22:49:40 2018 +1000 | ||
12475 | |||
12476 | only support SIGINFO on systems with SIGINFO | ||
12477 | |||
12478 | commit cd98925c6405e972dc9f211afc7e75e838abe81c | ||
12479 | Author: djm@openbsd.org <djm@openbsd.org> | ||
12480 | Date: Tue Oct 2 12:40:07 2018 +0000 | ||
12481 | |||
12482 | upstream: Add server support for signalling sessions via the SSH | ||
12483 | |||
12484 | channel/ session protocol. Signalling is only supported to sesssions that are | ||
12485 | not subsystems and were not started with a forced command. | ||
12486 | |||
12487 | Long requested in bz#1424 | ||
12488 | |||
12489 | Based on a patch from markus@ and reworked by dtucker@; | ||
12490 | ok markus@ dtucker@ | ||
12491 | |||
12492 | OpenBSD-Commit-ID: 4bea826f575862eaac569c4bedd1056a268be1c3 | ||
diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 000000000..c1b774884 --- /dev/null +++ b/aclocal.m4 | |||
@@ -0,0 +1,15 @@ | |||
1 | # generated automatically by aclocal 1.16.2 -*- Autoconf -*- | ||
2 | |||
3 | # Copyright (C) 1996-2020 Free Software Foundation, Inc. | ||
4 | |||
5 | # This file is free software; the Free Software Foundation | ||
6 | # gives unlimited permission to copy and/or distribute it, | ||
7 | # with or without modifications, as long as this notice is preserved. | ||
8 | |||
9 | # This program is distributed in the hope that it will be useful, | ||
10 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||
11 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||
12 | # PARTICULAR PURPOSE. | ||
13 | |||
14 | m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) | ||
15 | m4_include([m4/openssh.m4]) | ||
diff --git a/config.h.in b/config.h.in new file mode 100644 index 000000000..18e0b90c2 --- /dev/null +++ b/config.h.in | |||
@@ -0,0 +1,2059 @@ | |||
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 | /* Needed for NeXT */ | ||
49 | #undef BROKEN_SAVED_UIDS | ||
50 | |||
51 | /* Define if your setregid() is broken */ | ||
52 | #undef BROKEN_SETREGID | ||
53 | |||
54 | /* Define if your setresgid() is broken */ | ||
55 | #undef BROKEN_SETRESGID | ||
56 | |||
57 | /* Define if your setresuid() is broken */ | ||
58 | #undef BROKEN_SETRESUID | ||
59 | |||
60 | /* Define if your setreuid() is broken */ | ||
61 | #undef BROKEN_SETREUID | ||
62 | |||
63 | /* LynxOS has broken setvbuf() implementation */ | ||
64 | #undef BROKEN_SETVBUF | ||
65 | |||
66 | /* QNX shadow support is broken */ | ||
67 | #undef BROKEN_SHADOW_EXPIRE | ||
68 | |||
69 | /* Define if your snprintf is busted */ | ||
70 | #undef BROKEN_SNPRINTF | ||
71 | |||
72 | /* strndup broken, see APAR IY61211 */ | ||
73 | #undef BROKEN_STRNDUP | ||
74 | |||
75 | /* strnlen broken, see APAR IY62551 */ | ||
76 | #undef BROKEN_STRNLEN | ||
77 | |||
78 | /* strnvis detected broken */ | ||
79 | #undef BROKEN_STRNVIS | ||
80 | |||
81 | /* tcgetattr with ICANON may hang */ | ||
82 | #undef BROKEN_TCGETATTR_ICANON | ||
83 | |||
84 | /* updwtmpx is broken (if present) */ | ||
85 | #undef BROKEN_UPDWTMPX | ||
86 | |||
87 | /* Define if you have BSD auth support */ | ||
88 | #undef BSD_AUTH | ||
89 | |||
90 | /* Define if you want to specify the path to your lastlog file */ | ||
91 | #undef CONF_LASTLOG_FILE | ||
92 | |||
93 | /* Define if you want to specify the path to your utmp file */ | ||
94 | #undef CONF_UTMP_FILE | ||
95 | |||
96 | /* Define if you want to specify the path to your wtmpx file */ | ||
97 | #undef CONF_WTMPX_FILE | ||
98 | |||
99 | /* Define if you want to specify the path to your wtmp file */ | ||
100 | #undef CONF_WTMP_FILE | ||
101 | |||
102 | /* Need to call setpgrp as root */ | ||
103 | #undef DISABLE_FD_PASSING | ||
104 | |||
105 | /* Define if you don't want to use lastlog */ | ||
106 | #undef DISABLE_LASTLOG | ||
107 | |||
108 | /* Define if you don't want to use your system's login() call */ | ||
109 | #undef DISABLE_LOGIN | ||
110 | |||
111 | /* Define if you don't want to use pututline() etc. to write [uw]tmp */ | ||
112 | #undef DISABLE_PUTUTLINE | ||
113 | |||
114 | /* Define if you don't want to use pututxline() etc. to write [uw]tmpx */ | ||
115 | #undef DISABLE_PUTUTXLINE | ||
116 | |||
117 | /* Define if you want to disable shadow passwords */ | ||
118 | #undef DISABLE_SHADOW | ||
119 | |||
120 | /* Define if you don't want to use utmp */ | ||
121 | #undef DISABLE_UTMP | ||
122 | |||
123 | /* Define if you don't want to use utmpx */ | ||
124 | #undef DISABLE_UTMPX | ||
125 | |||
126 | /* Define if you don't want to use wtmp */ | ||
127 | #undef DISABLE_WTMP | ||
128 | |||
129 | /* Define if you don't want to use wtmpx */ | ||
130 | #undef DISABLE_WTMPX | ||
131 | |||
132 | /* Enable for PKCS#11 support */ | ||
133 | #undef ENABLE_PKCS11 | ||
134 | |||
135 | /* Enable for U2F/FIDO support */ | ||
136 | #undef ENABLE_SK | ||
137 | |||
138 | /* Enable for built-in U2F/FIDO support */ | ||
139 | #undef ENABLE_SK_INTERNAL | ||
140 | |||
141 | /* define if fflush(NULL) does not work */ | ||
142 | #undef FFLUSH_NULL_BUG | ||
143 | |||
144 | /* File names may not contain backslash characters */ | ||
145 | #undef FILESYSTEM_NO_BACKSLASH | ||
146 | |||
147 | /* fsid_t has member val */ | ||
148 | #undef FSID_HAS_VAL | ||
149 | |||
150 | /* fsid_t has member __val */ | ||
151 | #undef FSID_HAS___VAL | ||
152 | |||
153 | /* getpgrp takes one arg */ | ||
154 | #undef GETPGRP_VOID | ||
155 | |||
156 | /* Conflicting defs for getspnam */ | ||
157 | #undef GETSPNAM_CONFLICTING_DEFS | ||
158 | |||
159 | /* Define if your system glob() function has the GLOB_ALTDIRFUNC extension */ | ||
160 | #undef GLOB_HAS_ALTDIRFUNC | ||
161 | |||
162 | /* Define if your system glob() function has gl_matchc options in glob_t */ | ||
163 | #undef GLOB_HAS_GL_MATCHC | ||
164 | |||
165 | /* Define if your system glob() function has gl_statv options in glob_t */ | ||
166 | #undef GLOB_HAS_GL_STATV | ||
167 | |||
168 | /* Define this if you want GSSAPI support in the version 2 protocol */ | ||
169 | #undef GSSAPI | ||
170 | |||
171 | /* Define if you want to use shadow password expire field */ | ||
172 | #undef HAS_SHADOW_EXPIRE | ||
173 | |||
174 | /* Define if your system uses access rights style file descriptor passing */ | ||
175 | #undef HAVE_ACCRIGHTS_IN_MSGHDR | ||
176 | |||
177 | /* Define if you have ut_addr in utmp.h */ | ||
178 | #undef HAVE_ADDR_IN_UTMP | ||
179 | |||
180 | /* Define if you have ut_addr in utmpx.h */ | ||
181 | #undef HAVE_ADDR_IN_UTMPX | ||
182 | |||
183 | /* Define if you have ut_addr_v6 in utmp.h */ | ||
184 | #undef HAVE_ADDR_V6_IN_UTMP | ||
185 | |||
186 | /* Define if you have ut_addr_v6 in utmpx.h */ | ||
187 | #undef HAVE_ADDR_V6_IN_UTMPX | ||
188 | |||
189 | /* Define to 1 if you have the `arc4random' function. */ | ||
190 | #undef HAVE_ARC4RANDOM | ||
191 | |||
192 | /* Define to 1 if you have the `arc4random_buf' function. */ | ||
193 | #undef HAVE_ARC4RANDOM_BUF | ||
194 | |||
195 | /* Define to 1 if you have the `arc4random_stir' function. */ | ||
196 | #undef HAVE_ARC4RANDOM_STIR | ||
197 | |||
198 | /* Define to 1 if you have the `arc4random_uniform' function. */ | ||
199 | #undef HAVE_ARC4RANDOM_UNIFORM | ||
200 | |||
201 | /* Define to 1 if you have the `asprintf' function. */ | ||
202 | #undef HAVE_ASPRINTF | ||
203 | |||
204 | /* OpenBSD's gcc has bounded */ | ||
205 | #undef HAVE_ATTRIBUTE__BOUNDED__ | ||
206 | |||
207 | /* Have attribute nonnull */ | ||
208 | #undef HAVE_ATTRIBUTE__NONNULL__ | ||
209 | |||
210 | /* OpenBSD's gcc has sentinel */ | ||
211 | #undef HAVE_ATTRIBUTE__SENTINEL__ | ||
212 | |||
213 | /* Define to 1 if you have the `aug_get_machine' function. */ | ||
214 | #undef HAVE_AUG_GET_MACHINE | ||
215 | |||
216 | /* Define to 1 if you have the `b64_ntop' function. */ | ||
217 | #undef HAVE_B64_NTOP | ||
218 | |||
219 | /* Define to 1 if you have the `b64_pton' function. */ | ||
220 | #undef HAVE_B64_PTON | ||
221 | |||
222 | /* Define if you have the basename function. */ | ||
223 | #undef HAVE_BASENAME | ||
224 | |||
225 | /* Define to 1 if you have the `bcopy' function. */ | ||
226 | #undef HAVE_BCOPY | ||
227 | |||
228 | /* Define to 1 if you have the `bcrypt_pbkdf' function. */ | ||
229 | #undef HAVE_BCRYPT_PBKDF | ||
230 | |||
231 | /* Define to 1 if you have the `bindresvport_sa' function. */ | ||
232 | #undef HAVE_BINDRESVPORT_SA | ||
233 | |||
234 | /* Define to 1 if you have the `blf_enc' function. */ | ||
235 | #undef HAVE_BLF_ENC | ||
236 | |||
237 | /* Define to 1 if you have the <blf.h> header file. */ | ||
238 | #undef HAVE_BLF_H | ||
239 | |||
240 | /* Define to 1 if you have the `Blowfish_expand0state' function. */ | ||
241 | #undef HAVE_BLOWFISH_EXPAND0STATE | ||
242 | |||
243 | /* Define to 1 if you have the `Blowfish_expandstate' function. */ | ||
244 | #undef HAVE_BLOWFISH_EXPANDSTATE | ||
245 | |||
246 | /* Define to 1 if you have the `Blowfish_initstate' function. */ | ||
247 | #undef HAVE_BLOWFISH_INITSTATE | ||
248 | |||
249 | /* Define to 1 if you have the `Blowfish_stream2word' function. */ | ||
250 | #undef HAVE_BLOWFISH_STREAM2WORD | ||
251 | |||
252 | /* Define to 1 if you have the `BN_is_prime_ex' function. */ | ||
253 | #undef HAVE_BN_IS_PRIME_EX | ||
254 | |||
255 | /* Define to 1 if you have the <bsd/libutil.h> header file. */ | ||
256 | #undef HAVE_BSD_LIBUTIL_H | ||
257 | |||
258 | /* Define to 1 if you have the <bsm/audit.h> header file. */ | ||
259 | #undef HAVE_BSM_AUDIT_H | ||
260 | |||
261 | /* Define to 1 if you have the <bstring.h> header file. */ | ||
262 | #undef HAVE_BSTRING_H | ||
263 | |||
264 | /* Define to 1 if you have the `bzero' function. */ | ||
265 | #undef HAVE_BZERO | ||
266 | |||
267 | /* calloc(0, x) returns NULL */ | ||
268 | #undef HAVE_CALLOC | ||
269 | |||
270 | /* Define to 1 if you have the `cap_rights_limit' function. */ | ||
271 | #undef HAVE_CAP_RIGHTS_LIMIT | ||
272 | |||
273 | /* Define to 1 if you have the `clock' function. */ | ||
274 | #undef HAVE_CLOCK | ||
275 | |||
276 | /* Have clock_gettime */ | ||
277 | #undef HAVE_CLOCK_GETTIME | ||
278 | |||
279 | /* define if you have clock_t data type */ | ||
280 | #undef HAVE_CLOCK_T | ||
281 | |||
282 | /* Define to 1 if you have the `closefrom' function. */ | ||
283 | #undef HAVE_CLOSEFROM | ||
284 | |||
285 | /* Define if gai_strerror() returns const char * */ | ||
286 | #undef HAVE_CONST_GAI_STRERROR_PROTO | ||
287 | |||
288 | /* Define if your system uses ancillary data style file descriptor passing */ | ||
289 | #undef HAVE_CONTROL_IN_MSGHDR | ||
290 | |||
291 | /* Define to 1 if you have the `crypt' function. */ | ||
292 | #undef HAVE_CRYPT | ||
293 | |||
294 | /* Define to 1 if you have the <crypto/sha2.h> header file. */ | ||
295 | #undef HAVE_CRYPTO_SHA2_H | ||
296 | |||
297 | /* Define to 1 if you have the <crypt.h> header file. */ | ||
298 | #undef HAVE_CRYPT_H | ||
299 | |||
300 | /* Define if you are on Cygwin */ | ||
301 | #undef HAVE_CYGWIN | ||
302 | |||
303 | /* Define if your libraries define daemon() */ | ||
304 | #undef HAVE_DAEMON | ||
305 | |||
306 | /* Define to 1 if you have the declaration of `AI_NUMERICSERV', and to 0 if | ||
307 | you don't. */ | ||
308 | #undef HAVE_DECL_AI_NUMERICSERV | ||
309 | |||
310 | /* Define to 1 if you have the declaration of `authenticate', and to 0 if you | ||
311 | don't. */ | ||
312 | #undef HAVE_DECL_AUTHENTICATE | ||
313 | |||
314 | /* Define to 1 if you have the declaration of `bzero', and to 0 if you don't. | ||
315 | */ | ||
316 | #undef HAVE_DECL_BZERO | ||
317 | |||
318 | /* Define to 1 if you have the declaration of `getpeereid', and to 0 if you | ||
319 | don't. */ | ||
320 | #undef HAVE_DECL_GETPEEREID | ||
321 | |||
322 | /* Define to 1 if you have the declaration of `GLOB_NOMATCH', and to 0 if you | ||
323 | don't. */ | ||
324 | #undef HAVE_DECL_GLOB_NOMATCH | ||
325 | |||
326 | /* Define to 1 if you have the declaration of `GSS_C_NT_HOSTBASED_SERVICE', | ||
327 | and to 0 if you don't. */ | ||
328 | #undef HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE | ||
329 | |||
330 | /* Define to 1 if you have the declaration of `howmany', and to 0 if you | ||
331 | don't. */ | ||
332 | #undef HAVE_DECL_HOWMANY | ||
333 | |||
334 | /* Define to 1 if you have the declaration of `h_errno', and to 0 if you | ||
335 | don't. */ | ||
336 | #undef HAVE_DECL_H_ERRNO | ||
337 | |||
338 | /* Define to 1 if you have the declaration of `loginfailed', and to 0 if you | ||
339 | don't. */ | ||
340 | #undef HAVE_DECL_LOGINFAILED | ||
341 | |||
342 | /* Define to 1 if you have the declaration of `loginrestrictions', and to 0 if | ||
343 | you don't. */ | ||
344 | #undef HAVE_DECL_LOGINRESTRICTIONS | ||
345 | |||
346 | /* Define to 1 if you have the declaration of `loginsuccess', and to 0 if you | ||
347 | don't. */ | ||
348 | #undef HAVE_DECL_LOGINSUCCESS | ||
349 | |||
350 | /* Define to 1 if you have the declaration of `MAXSYMLINKS', and to 0 if you | ||
351 | don't. */ | ||
352 | #undef HAVE_DECL_MAXSYMLINKS | ||
353 | |||
354 | /* Define to 1 if you have the declaration of `memmem', and to 0 if you don't. | ||
355 | */ | ||
356 | #undef HAVE_DECL_MEMMEM | ||
357 | |||
358 | /* Define to 1 if you have the declaration of `NFDBITS', and to 0 if you | ||
359 | don't. */ | ||
360 | #undef HAVE_DECL_NFDBITS | ||
361 | |||
362 | /* Define to 1 if you have the declaration of `offsetof', and to 0 if you | ||
363 | don't. */ | ||
364 | #undef HAVE_DECL_OFFSETOF | ||
365 | |||
366 | /* Define to 1 if you have the declaration of `O_NONBLOCK', and to 0 if you | ||
367 | don't. */ | ||
368 | #undef HAVE_DECL_O_NONBLOCK | ||
369 | |||
370 | /* Define to 1 if you have the declaration of `passwdexpired', and to 0 if you | ||
371 | don't. */ | ||
372 | #undef HAVE_DECL_PASSWDEXPIRED | ||
373 | |||
374 | /* Define to 1 if you have the declaration of `readv', and to 0 if you don't. | ||
375 | */ | ||
376 | #undef HAVE_DECL_READV | ||
377 | |||
378 | /* Define to 1 if you have the declaration of `setauthdb', and to 0 if you | ||
379 | don't. */ | ||
380 | #undef HAVE_DECL_SETAUTHDB | ||
381 | |||
382 | /* Define to 1 if you have the declaration of `SHUT_RD', and to 0 if you | ||
383 | don't. */ | ||
384 | #undef HAVE_DECL_SHUT_RD | ||
385 | |||
386 | /* Define to 1 if you have the declaration of `UINT32_MAX', and to 0 if you | ||
387 | don't. */ | ||
388 | #undef HAVE_DECL_UINT32_MAX | ||
389 | |||
390 | /* Define to 1 if you have the declaration of `writev', and to 0 if you don't. | ||
391 | */ | ||
392 | #undef HAVE_DECL_WRITEV | ||
393 | |||
394 | /* Define to 1 if you have the declaration of `_getlong', and to 0 if you | ||
395 | don't. */ | ||
396 | #undef HAVE_DECL__GETLONG | ||
397 | |||
398 | /* Define to 1 if you have the declaration of `_getshort', and to 0 if you | ||
399 | don't. */ | ||
400 | #undef HAVE_DECL__GETSHORT | ||
401 | |||
402 | /* Define to 1 if you have the `DES_crypt' function. */ | ||
403 | #undef HAVE_DES_CRYPT | ||
404 | |||
405 | /* Define if you have /dev/ptmx */ | ||
406 | #undef HAVE_DEV_PTMX | ||
407 | |||
408 | /* Define if you have /dev/ptc */ | ||
409 | #undef HAVE_DEV_PTS_AND_PTC | ||
410 | |||
411 | /* Define to 1 if you have the `DH_get0_key' function. */ | ||
412 | #undef HAVE_DH_GET0_KEY | ||
413 | |||
414 | /* Define to 1 if you have the `DH_get0_pqg' function. */ | ||
415 | #undef HAVE_DH_GET0_PQG | ||
416 | |||
417 | /* Define to 1 if you have the `DH_set0_key' function. */ | ||
418 | #undef HAVE_DH_SET0_KEY | ||
419 | |||
420 | /* Define to 1 if you have the `DH_set0_pqg' function. */ | ||
421 | #undef HAVE_DH_SET0_PQG | ||
422 | |||
423 | /* Define to 1 if you have the `DH_set_length' function. */ | ||
424 | #undef HAVE_DH_SET_LENGTH | ||
425 | |||
426 | /* Define to 1 if you have the <dirent.h> header file. */ | ||
427 | #undef HAVE_DIRENT_H | ||
428 | |||
429 | /* Define to 1 if you have the `dirfd' function. */ | ||
430 | #undef HAVE_DIRFD | ||
431 | |||
432 | /* Define to 1 if you have the `dirname' function. */ | ||
433 | #undef HAVE_DIRNAME | ||
434 | |||
435 | /* Define to 1 if you have the `dlopen' function. */ | ||
436 | #undef HAVE_DLOPEN | ||
437 | |||
438 | /* Define to 1 if you have the `DSA_generate_parameters_ex' function. */ | ||
439 | #undef HAVE_DSA_GENERATE_PARAMETERS_EX | ||
440 | |||
441 | /* Define to 1 if you have the `DSA_get0_key' function. */ | ||
442 | #undef HAVE_DSA_GET0_KEY | ||
443 | |||
444 | /* Define to 1 if you have the `DSA_get0_pqg' function. */ | ||
445 | #undef HAVE_DSA_GET0_PQG | ||
446 | |||
447 | /* Define to 1 if you have the `DSA_set0_key' function. */ | ||
448 | #undef HAVE_DSA_SET0_KEY | ||
449 | |||
450 | /* Define to 1 if you have the `DSA_set0_pqg' function. */ | ||
451 | #undef HAVE_DSA_SET0_PQG | ||
452 | |||
453 | /* Define to 1 if you have the `DSA_SIG_get0' function. */ | ||
454 | #undef HAVE_DSA_SIG_GET0 | ||
455 | |||
456 | /* Define to 1 if you have the `DSA_SIG_set0' function. */ | ||
457 | #undef HAVE_DSA_SIG_SET0 | ||
458 | |||
459 | /* Define to 1 if you have the `ECDSA_SIG_get0' function. */ | ||
460 | #undef HAVE_ECDSA_SIG_GET0 | ||
461 | |||
462 | /* Define to 1 if you have the `ECDSA_SIG_set0' function. */ | ||
463 | #undef HAVE_ECDSA_SIG_SET0 | ||
464 | |||
465 | /* Define to 1 if you have the `EC_KEY_METHOD_new' function. */ | ||
466 | #undef HAVE_EC_KEY_METHOD_NEW | ||
467 | |||
468 | /* Define to 1 if you have the <elf.h> header file. */ | ||
469 | #undef HAVE_ELF_H | ||
470 | |||
471 | /* Define to 1 if you have the `endgrent' function. */ | ||
472 | #undef HAVE_ENDGRENT | ||
473 | |||
474 | /* Define to 1 if you have the <endian.h> header file. */ | ||
475 | #undef HAVE_ENDIAN_H | ||
476 | |||
477 | /* Define to 1 if you have the `endutent' function. */ | ||
478 | #undef HAVE_ENDUTENT | ||
479 | |||
480 | /* Define to 1 if you have the `endutxent' function. */ | ||
481 | #undef HAVE_ENDUTXENT | ||
482 | |||
483 | /* Define to 1 if you have the `err' function. */ | ||
484 | #undef HAVE_ERR | ||
485 | |||
486 | /* Define to 1 if you have the `errx' function. */ | ||
487 | #undef HAVE_ERRX | ||
488 | |||
489 | /* Define to 1 if you have the <err.h> header file. */ | ||
490 | #undef HAVE_ERR_H | ||
491 | |||
492 | /* Define if your system has /etc/default/login */ | ||
493 | #undef HAVE_ETC_DEFAULT_LOGIN | ||
494 | |||
495 | /* Define to 1 if you have the `EVP_chacha20' function. */ | ||
496 | #undef HAVE_EVP_CHACHA20 | ||
497 | |||
498 | /* Define to 1 if you have the `EVP_CIPHER_CTX_ctrl' function. */ | ||
499 | #undef HAVE_EVP_CIPHER_CTX_CTRL | ||
500 | |||
501 | /* Define to 1 if you have the `EVP_CIPHER_CTX_get_iv' function. */ | ||
502 | #undef HAVE_EVP_CIPHER_CTX_GET_IV | ||
503 | |||
504 | /* Define to 1 if you have the `EVP_CIPHER_CTX_iv' function. */ | ||
505 | #undef HAVE_EVP_CIPHER_CTX_IV | ||
506 | |||
507 | /* Define to 1 if you have the `EVP_CIPHER_CTX_iv_noconst' function. */ | ||
508 | #undef HAVE_EVP_CIPHER_CTX_IV_NOCONST | ||
509 | |||
510 | /* Define to 1 if you have the `EVP_CIPHER_CTX_set_iv' function. */ | ||
511 | #undef HAVE_EVP_CIPHER_CTX_SET_IV | ||
512 | |||
513 | /* Define to 1 if you have the `EVP_DigestFinal_ex' function. */ | ||
514 | #undef HAVE_EVP_DIGESTFINAL_EX | ||
515 | |||
516 | /* Define to 1 if you have the `EVP_DigestInit_ex' function. */ | ||
517 | #undef HAVE_EVP_DIGESTINIT_EX | ||
518 | |||
519 | /* Define to 1 if you have the `EVP_MD_CTX_cleanup' function. */ | ||
520 | #undef HAVE_EVP_MD_CTX_CLEANUP | ||
521 | |||
522 | /* Define to 1 if you have the `EVP_MD_CTX_copy_ex' function. */ | ||
523 | #undef HAVE_EVP_MD_CTX_COPY_EX | ||
524 | |||
525 | /* Define to 1 if you have the `EVP_MD_CTX_free' function. */ | ||
526 | #undef HAVE_EVP_MD_CTX_FREE | ||
527 | |||
528 | /* Define to 1 if you have the `EVP_MD_CTX_init' function. */ | ||
529 | #undef HAVE_EVP_MD_CTX_INIT | ||
530 | |||
531 | /* Define to 1 if you have the `EVP_MD_CTX_new' function. */ | ||
532 | #undef HAVE_EVP_MD_CTX_NEW | ||
533 | |||
534 | /* Define to 1 if you have the `EVP_PKEY_get0_RSA' function. */ | ||
535 | #undef HAVE_EVP_PKEY_GET0_RSA | ||
536 | |||
537 | /* Define to 1 if you have the `EVP_sha256' function. */ | ||
538 | #undef HAVE_EVP_SHA256 | ||
539 | |||
540 | /* Define to 1 if you have the `EVP_sha384' function. */ | ||
541 | #undef HAVE_EVP_SHA384 | ||
542 | |||
543 | /* Define to 1 if you have the `EVP_sha512' function. */ | ||
544 | #undef HAVE_EVP_SHA512 | ||
545 | |||
546 | /* Define if you have ut_exit in utmp.h */ | ||
547 | #undef HAVE_EXIT_IN_UTMP | ||
548 | |||
549 | /* Define to 1 if you have the `explicit_bzero' function. */ | ||
550 | #undef HAVE_EXPLICIT_BZERO | ||
551 | |||
552 | /* Define to 1 if you have the `fchmod' function. */ | ||
553 | #undef HAVE_FCHMOD | ||
554 | |||
555 | /* Define to 1 if you have the `fchmodat' function. */ | ||
556 | #undef HAVE_FCHMODAT | ||
557 | |||
558 | /* Define to 1 if you have the `fchown' function. */ | ||
559 | #undef HAVE_FCHOWN | ||
560 | |||
561 | /* Define to 1 if you have the `fchownat' function. */ | ||
562 | #undef HAVE_FCHOWNAT | ||
563 | |||
564 | /* Use F_CLOSEM fcntl for closefrom */ | ||
565 | #undef HAVE_FCNTL_CLOSEM | ||
566 | |||
567 | /* Define to 1 if you have the <fcntl.h> header file. */ | ||
568 | #undef HAVE_FCNTL_H | ||
569 | |||
570 | /* Define to 1 if the system has the type `fd_mask'. */ | ||
571 | #undef HAVE_FD_MASK | ||
572 | |||
573 | /* Define to 1 if you have the <features.h> header file. */ | ||
574 | #undef HAVE_FEATURES_H | ||
575 | |||
576 | /* Define to 1 if you have the `fido_cred_prot' function. */ | ||
577 | #undef HAVE_FIDO_CRED_PROT | ||
578 | |||
579 | /* Define to 1 if you have the `fido_cred_set_prot' function. */ | ||
580 | #undef HAVE_FIDO_CRED_SET_PROT | ||
581 | |||
582 | /* Define to 1 if you have the `fido_dev_get_touch_begin' function. */ | ||
583 | #undef HAVE_FIDO_DEV_GET_TOUCH_BEGIN | ||
584 | |||
585 | /* Define to 1 if you have the `fido_dev_get_touch_status' function. */ | ||
586 | #undef HAVE_FIDO_DEV_GET_TOUCH_STATUS | ||
587 | |||
588 | /* Define to 1 if you have the `fido_dev_supports_cred_prot' function. */ | ||
589 | #undef HAVE_FIDO_DEV_SUPPORTS_CRED_PROT | ||
590 | |||
591 | /* Define to 1 if you have the <floatingpoint.h> header file. */ | ||
592 | #undef HAVE_FLOATINGPOINT_H | ||
593 | |||
594 | /* Define to 1 if you have the `flock' function. */ | ||
595 | #undef HAVE_FLOCK | ||
596 | |||
597 | /* Define to 1 if you have the `fmt_scaled' function. */ | ||
598 | #undef HAVE_FMT_SCALED | ||
599 | |||
600 | /* Define to 1 if you have the `fnmatch' function. */ | ||
601 | #undef HAVE_FNMATCH | ||
602 | |||
603 | /* Define to 1 if you have the <fnmatch.h> header file. */ | ||
604 | #undef HAVE_FNMATCH_H | ||
605 | |||
606 | /* Define to 1 if you have the `freeaddrinfo' function. */ | ||
607 | #undef HAVE_FREEADDRINFO | ||
608 | |||
609 | /* Define to 1 if you have the `freezero' function. */ | ||
610 | #undef HAVE_FREEZERO | ||
611 | |||
612 | /* Define to 1 if the system has the type `fsblkcnt_t'. */ | ||
613 | #undef HAVE_FSBLKCNT_T | ||
614 | |||
615 | /* Define to 1 if the system has the type `fsfilcnt_t'. */ | ||
616 | #undef HAVE_FSFILCNT_T | ||
617 | |||
618 | /* Define to 1 if you have the `fstatfs' function. */ | ||
619 | #undef HAVE_FSTATFS | ||
620 | |||
621 | /* Define to 1 if you have the `fstatvfs' function. */ | ||
622 | #undef HAVE_FSTATVFS | ||
623 | |||
624 | /* Define to 1 if you have the `futimes' function. */ | ||
625 | #undef HAVE_FUTIMES | ||
626 | |||
627 | /* Define to 1 if you have the `gai_strerror' function. */ | ||
628 | #undef HAVE_GAI_STRERROR | ||
629 | |||
630 | /* Define to 1 if you have the `getaddrinfo' function. */ | ||
631 | #undef HAVE_GETADDRINFO | ||
632 | |||
633 | /* Define to 1 if you have the `getaudit' function. */ | ||
634 | #undef HAVE_GETAUDIT | ||
635 | |||
636 | /* Define to 1 if you have the `getaudit_addr' function. */ | ||
637 | #undef HAVE_GETAUDIT_ADDR | ||
638 | |||
639 | /* Define to 1 if you have the `getcwd' function. */ | ||
640 | #undef HAVE_GETCWD | ||
641 | |||
642 | /* Define to 1 if you have the `getgrouplist' function. */ | ||
643 | #undef HAVE_GETGROUPLIST | ||
644 | |||
645 | /* Define to 1 if you have the `getgrset' function. */ | ||
646 | #undef HAVE_GETGRSET | ||
647 | |||
648 | /* Define to 1 if you have the `getlastlogxbyname' function. */ | ||
649 | #undef HAVE_GETLASTLOGXBYNAME | ||
650 | |||
651 | /* Define to 1 if you have the `getline' function. */ | ||
652 | #undef HAVE_GETLINE | ||
653 | |||
654 | /* Define to 1 if you have the `getluid' function. */ | ||
655 | #undef HAVE_GETLUID | ||
656 | |||
657 | /* Define to 1 if you have the `getnameinfo' function. */ | ||
658 | #undef HAVE_GETNAMEINFO | ||
659 | |||
660 | /* Define to 1 if you have the `getopt' function. */ | ||
661 | #undef HAVE_GETOPT | ||
662 | |||
663 | /* Define to 1 if you have the <getopt.h> header file. */ | ||
664 | #undef HAVE_GETOPT_H | ||
665 | |||
666 | /* Define if your getopt(3) defines and uses optreset */ | ||
667 | #undef HAVE_GETOPT_OPTRESET | ||
668 | |||
669 | /* Define if your libraries define getpagesize() */ | ||
670 | #undef HAVE_GETPAGESIZE | ||
671 | |||
672 | /* Define to 1 if you have the `getpeereid' function. */ | ||
673 | #undef HAVE_GETPEEREID | ||
674 | |||
675 | /* Define to 1 if you have the `getpeerucred' function. */ | ||
676 | #undef HAVE_GETPEERUCRED | ||
677 | |||
678 | /* Define to 1 if you have the `getpgid' function. */ | ||
679 | #undef HAVE_GETPGID | ||
680 | |||
681 | /* Define to 1 if you have the `getpgrp' function. */ | ||
682 | #undef HAVE_GETPGRP | ||
683 | |||
684 | /* Define to 1 if you have the `getpwanam' function. */ | ||
685 | #undef HAVE_GETPWANAM | ||
686 | |||
687 | /* Define to 1 if you have the `getrandom' function. */ | ||
688 | #undef HAVE_GETRANDOM | ||
689 | |||
690 | /* Define to 1 if you have the `getrlimit' function. */ | ||
691 | #undef HAVE_GETRLIMIT | ||
692 | |||
693 | /* Define if getrrsetbyname() exists */ | ||
694 | #undef HAVE_GETRRSETBYNAME | ||
695 | |||
696 | /* Define to 1 if you have the `getseuserbyname' function. */ | ||
697 | #undef HAVE_GETSEUSERBYNAME | ||
698 | |||
699 | /* Define to 1 if you have the `getsid' function. */ | ||
700 | #undef HAVE_GETSID | ||
701 | |||
702 | /* Define to 1 if you have the `gettimeofday' function. */ | ||
703 | #undef HAVE_GETTIMEOFDAY | ||
704 | |||
705 | /* Define to 1 if you have the `getttyent' function. */ | ||
706 | #undef HAVE_GETTTYENT | ||
707 | |||
708 | /* Define to 1 if you have the `getutent' function. */ | ||
709 | #undef HAVE_GETUTENT | ||
710 | |||
711 | /* Define to 1 if you have the `getutid' function. */ | ||
712 | #undef HAVE_GETUTID | ||
713 | |||
714 | /* Define to 1 if you have the `getutline' function. */ | ||
715 | #undef HAVE_GETUTLINE | ||
716 | |||
717 | /* Define to 1 if you have the `getutxent' function. */ | ||
718 | #undef HAVE_GETUTXENT | ||
719 | |||
720 | /* Define to 1 if you have the `getutxid' function. */ | ||
721 | #undef HAVE_GETUTXID | ||
722 | |||
723 | /* Define to 1 if you have the `getutxline' function. */ | ||
724 | #undef HAVE_GETUTXLINE | ||
725 | |||
726 | /* Define to 1 if you have the `getutxuser' function. */ | ||
727 | #undef HAVE_GETUTXUSER | ||
728 | |||
729 | /* Define to 1 if you have the `get_default_context_with_level' function. */ | ||
730 | #undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL | ||
731 | |||
732 | /* Define to 1 if you have the `glob' function. */ | ||
733 | #undef HAVE_GLOB | ||
734 | |||
735 | /* Define to 1 if you have the <glob.h> header file. */ | ||
736 | #undef HAVE_GLOB_H | ||
737 | |||
738 | /* Define to 1 if you have the `group_from_gid' function. */ | ||
739 | #undef HAVE_GROUP_FROM_GID | ||
740 | |||
741 | /* Define to 1 if you have the <gssapi_generic.h> header file. */ | ||
742 | #undef HAVE_GSSAPI_GENERIC_H | ||
743 | |||
744 | /* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */ | ||
745 | #undef HAVE_GSSAPI_GSSAPI_GENERIC_H | ||
746 | |||
747 | /* Define to 1 if you have the <gssapi/gssapi.h> header file. */ | ||
748 | #undef HAVE_GSSAPI_GSSAPI_H | ||
749 | |||
750 | /* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */ | ||
751 | #undef HAVE_GSSAPI_GSSAPI_KRB5_H | ||
752 | |||
753 | /* Define to 1 if you have the <gssapi.h> header file. */ | ||
754 | #undef HAVE_GSSAPI_H | ||
755 | |||
756 | /* Define to 1 if you have the <gssapi_krb5.h> header file. */ | ||
757 | #undef HAVE_GSSAPI_KRB5_H | ||
758 | |||
759 | /* Define if HEADER.ad exists in arpa/nameser.h */ | ||
760 | #undef HAVE_HEADER_AD | ||
761 | |||
762 | /* Define to 1 if you have the `HMAC_CTX_init' function. */ | ||
763 | #undef HAVE_HMAC_CTX_INIT | ||
764 | |||
765 | /* Define if you have ut_host in utmp.h */ | ||
766 | #undef HAVE_HOST_IN_UTMP | ||
767 | |||
768 | /* Define if you have ut_host in utmpx.h */ | ||
769 | #undef HAVE_HOST_IN_UTMPX | ||
770 | |||
771 | /* Define to 1 if you have the <iaf.h> header file. */ | ||
772 | #undef HAVE_IAF_H | ||
773 | |||
774 | /* Define to 1 if you have the <ia.h> header file. */ | ||
775 | #undef HAVE_IA_H | ||
776 | |||
777 | /* Define if you have ut_id in utmp.h */ | ||
778 | #undef HAVE_ID_IN_UTMP | ||
779 | |||
780 | /* Define if you have ut_id in utmpx.h */ | ||
781 | #undef HAVE_ID_IN_UTMPX | ||
782 | |||
783 | /* Define to 1 if you have the <ifaddrs.h> header file. */ | ||
784 | #undef HAVE_IFADDRS_H | ||
785 | |||
786 | /* Define to 1 if you have the `inet_aton' function. */ | ||
787 | #undef HAVE_INET_ATON | ||
788 | |||
789 | /* Define to 1 if you have the `inet_ntoa' function. */ | ||
790 | #undef HAVE_INET_NTOA | ||
791 | |||
792 | /* Define to 1 if you have the `inet_ntop' function. */ | ||
793 | #undef HAVE_INET_NTOP | ||
794 | |||
795 | /* Define to 1 if you have the `innetgr' function. */ | ||
796 | #undef HAVE_INNETGR | ||
797 | |||
798 | /* define if you have int64_t data type */ | ||
799 | #undef HAVE_INT64_T | ||
800 | |||
801 | /* Define to 1 if the system has the type `intmax_t'. */ | ||
802 | #undef HAVE_INTMAX_T | ||
803 | |||
804 | /* Define to 1 if you have the <inttypes.h> header file. */ | ||
805 | #undef HAVE_INTTYPES_H | ||
806 | |||
807 | /* define if you have intxx_t data type */ | ||
808 | #undef HAVE_INTXX_T | ||
809 | |||
810 | /* Define to 1 if the system has the type `in_addr_t'. */ | ||
811 | #undef HAVE_IN_ADDR_T | ||
812 | |||
813 | /* Define to 1 if the system has the type `in_port_t'. */ | ||
814 | #undef HAVE_IN_PORT_T | ||
815 | |||
816 | /* Define if you have isblank(3C). */ | ||
817 | #undef HAVE_ISBLANK | ||
818 | |||
819 | /* Define to 1 if you have the `krb5_cc_new_unique' function. */ | ||
820 | #undef HAVE_KRB5_CC_NEW_UNIQUE | ||
821 | |||
822 | /* Define to 1 if you have the `krb5_free_error_message' function. */ | ||
823 | #undef HAVE_KRB5_FREE_ERROR_MESSAGE | ||
824 | |||
825 | /* Define to 1 if you have the `krb5_get_error_message' function. */ | ||
826 | #undef HAVE_KRB5_GET_ERROR_MESSAGE | ||
827 | |||
828 | /* Define to 1 if you have the <langinfo.h> header file. */ | ||
829 | #undef HAVE_LANGINFO_H | ||
830 | |||
831 | /* Define to 1 if you have the <lastlog.h> header file. */ | ||
832 | #undef HAVE_LASTLOG_H | ||
833 | |||
834 | /* Define if you want ldns support */ | ||
835 | #undef HAVE_LDNS | ||
836 | |||
837 | /* Define to 1 if you have the <libaudit.h> header file. */ | ||
838 | #undef HAVE_LIBAUDIT_H | ||
839 | |||
840 | /* Define to 1 if you have the `bsm' library (-lbsm). */ | ||
841 | #undef HAVE_LIBBSM | ||
842 | |||
843 | /* Define to 1 if you have the `crypt' library (-lcrypt). */ | ||
844 | #undef HAVE_LIBCRYPT | ||
845 | |||
846 | /* Define to 1 if you have the `dl' library (-ldl). */ | ||
847 | #undef HAVE_LIBDL | ||
848 | |||
849 | /* Define to 1 if you have the <libgen.h> header file. */ | ||
850 | #undef HAVE_LIBGEN_H | ||
851 | |||
852 | /* Define if system has libiaf that supports set_id */ | ||
853 | #undef HAVE_LIBIAF | ||
854 | |||
855 | /* Define to 1 if you have the `network' library (-lnetwork). */ | ||
856 | #undef HAVE_LIBNETWORK | ||
857 | |||
858 | /* Define to 1 if you have the `pam' library (-lpam). */ | ||
859 | #undef HAVE_LIBPAM | ||
860 | |||
861 | /* Define to 1 if you have the <libproc.h> header file. */ | ||
862 | #undef HAVE_LIBPROC_H | ||
863 | |||
864 | /* Define to 1 if you have the `socket' library (-lsocket). */ | ||
865 | #undef HAVE_LIBSOCKET | ||
866 | |||
867 | /* Define to 1 if you have the <libutil.h> header file. */ | ||
868 | #undef HAVE_LIBUTIL_H | ||
869 | |||
870 | /* Define to 1 if you have the `xnet' library (-lxnet). */ | ||
871 | #undef HAVE_LIBXNET | ||
872 | |||
873 | /* Define to 1 if you have the `z' library (-lz). */ | ||
874 | #undef HAVE_LIBZ | ||
875 | |||
876 | /* Define to 1 if you have the <limits.h> header file. */ | ||
877 | #undef HAVE_LIMITS_H | ||
878 | |||
879 | /* Define to 1 if you have the <linux/audit.h> header file. */ | ||
880 | #undef HAVE_LINUX_AUDIT_H | ||
881 | |||
882 | /* Define to 1 if you have the <linux/filter.h> header file. */ | ||
883 | #undef HAVE_LINUX_FILTER_H | ||
884 | |||
885 | /* Define to 1 if you have the <linux/if_tun.h> header file. */ | ||
886 | #undef HAVE_LINUX_IF_TUN_H | ||
887 | |||
888 | /* Define to 1 if you have the <linux/seccomp.h> header file. */ | ||
889 | #undef HAVE_LINUX_SECCOMP_H | ||
890 | |||
891 | /* Define to 1 if you have the `llabs' function. */ | ||
892 | #undef HAVE_LLABS | ||
893 | |||
894 | /* Define to 1 if you have the <locale.h> header file. */ | ||
895 | #undef HAVE_LOCALE_H | ||
896 | |||
897 | /* Define to 1 if you have the `localtime_r' function. */ | ||
898 | #undef HAVE_LOCALTIME_R | ||
899 | |||
900 | /* Define to 1 if you have the `login' function. */ | ||
901 | #undef HAVE_LOGIN | ||
902 | |||
903 | /* Define to 1 if you have the <login_cap.h> header file. */ | ||
904 | #undef HAVE_LOGIN_CAP_H | ||
905 | |||
906 | /* Define to 1 if you have the `login_getcapbool' function. */ | ||
907 | #undef HAVE_LOGIN_GETCAPBOOL | ||
908 | |||
909 | /* Define to 1 if you have the <login.h> header file. */ | ||
910 | #undef HAVE_LOGIN_H | ||
911 | |||
912 | /* Define to 1 if you have the `logout' function. */ | ||
913 | #undef HAVE_LOGOUT | ||
914 | |||
915 | /* Define to 1 if you have the `logwtmp' function. */ | ||
916 | #undef HAVE_LOGWTMP | ||
917 | |||
918 | /* Define to 1 if the system has the type `long double'. */ | ||
919 | #undef HAVE_LONG_DOUBLE | ||
920 | |||
921 | /* Define to 1 if the system has the type `long long'. */ | ||
922 | #undef HAVE_LONG_LONG | ||
923 | |||
924 | /* Define to 1 if you have the <maillock.h> header file. */ | ||
925 | #undef HAVE_MAILLOCK_H | ||
926 | |||
927 | /* Define to 1 if your system has a GNU libc compatible `malloc' function, and | ||
928 | to 0 otherwise. */ | ||
929 | #undef HAVE_MALLOC | ||
930 | |||
931 | /* Define to 1 if you have the `mblen' function. */ | ||
932 | #undef HAVE_MBLEN | ||
933 | |||
934 | /* Define to 1 if you have the `mbtowc' function. */ | ||
935 | #undef HAVE_MBTOWC | ||
936 | |||
937 | /* Define to 1 if you have the `md5_crypt' function. */ | ||
938 | #undef HAVE_MD5_CRYPT | ||
939 | |||
940 | /* Define if you want to allow MD5 passwords */ | ||
941 | #undef HAVE_MD5_PASSWORDS | ||
942 | |||
943 | /* Define to 1 if you have the `memmem' function. */ | ||
944 | #undef HAVE_MEMMEM | ||
945 | |||
946 | /* Define to 1 if you have the `memmove' function. */ | ||
947 | #undef HAVE_MEMMOVE | ||
948 | |||
949 | /* Define to 1 if you have the <memory.h> header file. */ | ||
950 | #undef HAVE_MEMORY_H | ||
951 | |||
952 | /* Define to 1 if you have the `memset_s' function. */ | ||
953 | #undef HAVE_MEMSET_S | ||
954 | |||
955 | /* Define to 1 if you have the `mkdtemp' function. */ | ||
956 | #undef HAVE_MKDTEMP | ||
957 | |||
958 | /* define if you have mode_t data type */ | ||
959 | #undef HAVE_MODE_T | ||
960 | |||
961 | /* Some systems put nanosleep outside of libc */ | ||
962 | #undef HAVE_NANOSLEEP | ||
963 | |||
964 | /* Define to 1 if you have the <ndir.h> header file. */ | ||
965 | #undef HAVE_NDIR_H | ||
966 | |||
967 | /* Define to 1 if you have the <netdb.h> header file. */ | ||
968 | #undef HAVE_NETDB_H | ||
969 | |||
970 | /* Define to 1 if you have the <netgroup.h> header file. */ | ||
971 | #undef HAVE_NETGROUP_H | ||
972 | |||
973 | /* Define to 1 if you have the <net/if_tun.h> header file. */ | ||
974 | #undef HAVE_NET_IF_TUN_H | ||
975 | |||
976 | /* Define to 1 if you have the <net/route.h> header file. */ | ||
977 | #undef HAVE_NET_ROUTE_H | ||
978 | |||
979 | /* Define if you are on NeXT */ | ||
980 | #undef HAVE_NEXT | ||
981 | |||
982 | /* Define to 1 if you have the `ngetaddrinfo' function. */ | ||
983 | #undef HAVE_NGETADDRINFO | ||
984 | |||
985 | /* Define to 1 if you have the `nl_langinfo' function. */ | ||
986 | #undef HAVE_NL_LANGINFO | ||
987 | |||
988 | /* Define to 1 if you have the `nsleep' function. */ | ||
989 | #undef HAVE_NSLEEP | ||
990 | |||
991 | /* Define to 1 if you have the `ogetaddrinfo' function. */ | ||
992 | #undef HAVE_OGETADDRINFO | ||
993 | |||
994 | /* Define if you have an old version of PAM which takes only one argument to | ||
995 | pam_strerror */ | ||
996 | #undef HAVE_OLD_PAM | ||
997 | |||
998 | /* Define to 1 if you have the `openlog_r' function. */ | ||
999 | #undef HAVE_OPENLOG_R | ||
1000 | |||
1001 | /* Define to 1 if you have the `openpty' function. */ | ||
1002 | #undef HAVE_OPENPTY | ||
1003 | |||
1004 | /* as a macro */ | ||
1005 | #undef HAVE_OPENSSL_ADD_ALL_ALGORITHMS | ||
1006 | |||
1007 | /* Define to 1 if you have the `OPENSSL_init_crypto' function. */ | ||
1008 | #undef HAVE_OPENSSL_INIT_CRYPTO | ||
1009 | |||
1010 | /* Define to 1 if you have the `OpenSSL_version' function. */ | ||
1011 | #undef HAVE_OPENSSL_VERSION | ||
1012 | |||
1013 | /* Define to 1 if you have the `OpenSSL_version_num' function. */ | ||
1014 | #undef HAVE_OPENSSL_VERSION_NUM | ||
1015 | |||
1016 | /* Define if you have Digital Unix Security Integration Architecture */ | ||
1017 | #undef HAVE_OSF_SIA | ||
1018 | |||
1019 | /* Define to 1 if you have the `pam_getenvlist' function. */ | ||
1020 | #undef HAVE_PAM_GETENVLIST | ||
1021 | |||
1022 | /* Define to 1 if you have the <pam/pam_appl.h> header file. */ | ||
1023 | #undef HAVE_PAM_PAM_APPL_H | ||
1024 | |||
1025 | /* Define to 1 if you have the `pam_putenv' function. */ | ||
1026 | #undef HAVE_PAM_PUTENV | ||
1027 | |||
1028 | /* Define to 1 if you have the <paths.h> header file. */ | ||
1029 | #undef HAVE_PATHS_H | ||
1030 | |||
1031 | /* Define if you have ut_pid in utmp.h */ | ||
1032 | #undef HAVE_PID_IN_UTMP | ||
1033 | |||
1034 | /* define if you have pid_t data type */ | ||
1035 | #undef HAVE_PID_T | ||
1036 | |||
1037 | /* Define to 1 if you have the `pledge' function. */ | ||
1038 | #undef HAVE_PLEDGE | ||
1039 | |||
1040 | /* Define to 1 if you have the `poll' function. */ | ||
1041 | #undef HAVE_POLL | ||
1042 | |||
1043 | /* Define to 1 if you have the <poll.h> header file. */ | ||
1044 | #undef HAVE_POLL_H | ||
1045 | |||
1046 | /* Define to 1 if you have the `prctl' function. */ | ||
1047 | #undef HAVE_PRCTL | ||
1048 | |||
1049 | /* Define to 1 if you have the `priv_basicset' function. */ | ||
1050 | #undef HAVE_PRIV_BASICSET | ||
1051 | |||
1052 | /* Define to 1 if you have the <priv.h> header file. */ | ||
1053 | #undef HAVE_PRIV_H | ||
1054 | |||
1055 | /* Define if you have /proc/$pid/fd */ | ||
1056 | #undef HAVE_PROC_PID | ||
1057 | |||
1058 | /* Define to 1 if you have the `proc_pidinfo' function. */ | ||
1059 | #undef HAVE_PROC_PIDINFO | ||
1060 | |||
1061 | /* Define to 1 if you have the `pstat' function. */ | ||
1062 | #undef HAVE_PSTAT | ||
1063 | |||
1064 | /* Define to 1 if you have the <pty.h> header file. */ | ||
1065 | #undef HAVE_PTY_H | ||
1066 | |||
1067 | /* Define to 1 if you have the `pututline' function. */ | ||
1068 | #undef HAVE_PUTUTLINE | ||
1069 | |||
1070 | /* Define to 1 if you have the `pututxline' function. */ | ||
1071 | #undef HAVE_PUTUTXLINE | ||
1072 | |||
1073 | /* Define to 1 if you have the `raise' function. */ | ||
1074 | #undef HAVE_RAISE | ||
1075 | |||
1076 | /* Define to 1 if you have the `readpassphrase' function. */ | ||
1077 | #undef HAVE_READPASSPHRASE | ||
1078 | |||
1079 | /* Define to 1 if you have the <readpassphrase.h> header file. */ | ||
1080 | #undef HAVE_READPASSPHRASE_H | ||
1081 | |||
1082 | /* Define to 1 if your system has a GNU libc compatible `realloc' function, | ||
1083 | and to 0 otherwise. */ | ||
1084 | #undef HAVE_REALLOC | ||
1085 | |||
1086 | /* Define to 1 if you have the `reallocarray' function. */ | ||
1087 | #undef HAVE_REALLOCARRAY | ||
1088 | |||
1089 | /* Define to 1 if you have the `realpath' function. */ | ||
1090 | #undef HAVE_REALPATH | ||
1091 | |||
1092 | /* Define to 1 if you have the `recallocarray' function. */ | ||
1093 | #undef HAVE_RECALLOCARRAY | ||
1094 | |||
1095 | /* Define to 1 if you have the `recvmsg' function. */ | ||
1096 | #undef HAVE_RECVMSG | ||
1097 | |||
1098 | /* sys/resource.h has RLIMIT_NPROC */ | ||
1099 | #undef HAVE_RLIMIT_NPROC | ||
1100 | |||
1101 | /* Define to 1 if you have the <rpc/types.h> header file. */ | ||
1102 | #undef HAVE_RPC_TYPES_H | ||
1103 | |||
1104 | /* Define to 1 if you have the `rresvport_af' function. */ | ||
1105 | #undef HAVE_RRESVPORT_AF | ||
1106 | |||
1107 | /* Define to 1 if you have the `RSA_generate_key_ex' function. */ | ||
1108 | #undef HAVE_RSA_GENERATE_KEY_EX | ||
1109 | |||
1110 | /* Define to 1 if you have the `RSA_get0_crt_params' function. */ | ||
1111 | #undef HAVE_RSA_GET0_CRT_PARAMS | ||
1112 | |||
1113 | /* Define to 1 if you have the `RSA_get0_factors' function. */ | ||
1114 | #undef HAVE_RSA_GET0_FACTORS | ||
1115 | |||
1116 | /* Define to 1 if you have the `RSA_get0_key' function. */ | ||
1117 | #undef HAVE_RSA_GET0_KEY | ||
1118 | |||
1119 | /* Define to 1 if you have the `RSA_get_default_method' function. */ | ||
1120 | #undef HAVE_RSA_GET_DEFAULT_METHOD | ||
1121 | |||
1122 | /* Define to 1 if you have the `RSA_meth_dup' function. */ | ||
1123 | #undef HAVE_RSA_METH_DUP | ||
1124 | |||
1125 | /* Define to 1 if you have the `RSA_meth_free' function. */ | ||
1126 | #undef HAVE_RSA_METH_FREE | ||
1127 | |||
1128 | /* Define to 1 if you have the `RSA_meth_get_finish' function. */ | ||
1129 | #undef HAVE_RSA_METH_GET_FINISH | ||
1130 | |||
1131 | /* Define to 1 if you have the `RSA_meth_set1_name' function. */ | ||
1132 | #undef HAVE_RSA_METH_SET1_NAME | ||
1133 | |||
1134 | /* Define to 1 if you have the `RSA_meth_set_finish' function. */ | ||
1135 | #undef HAVE_RSA_METH_SET_FINISH | ||
1136 | |||
1137 | /* Define to 1 if you have the `RSA_meth_set_priv_dec' function. */ | ||
1138 | #undef HAVE_RSA_METH_SET_PRIV_DEC | ||
1139 | |||
1140 | /* Define to 1 if you have the `RSA_meth_set_priv_enc' function. */ | ||
1141 | #undef HAVE_RSA_METH_SET_PRIV_ENC | ||
1142 | |||
1143 | /* Define to 1 if you have the `RSA_set0_crt_params' function. */ | ||
1144 | #undef HAVE_RSA_SET0_CRT_PARAMS | ||
1145 | |||
1146 | /* Define to 1 if you have the `RSA_set0_factors' function. */ | ||
1147 | #undef HAVE_RSA_SET0_FACTORS | ||
1148 | |||
1149 | /* Define to 1 if you have the `RSA_set0_key' function. */ | ||
1150 | #undef HAVE_RSA_SET0_KEY | ||
1151 | |||
1152 | /* Define to 1 if you have the <sandbox.h> header file. */ | ||
1153 | #undef HAVE_SANDBOX_H | ||
1154 | |||
1155 | /* Define to 1 if you have the `sandbox_init' function. */ | ||
1156 | #undef HAVE_SANDBOX_INIT | ||
1157 | |||
1158 | /* define if you have sa_family_t data type */ | ||
1159 | #undef HAVE_SA_FAMILY_T | ||
1160 | |||
1161 | /* Define to 1 if you have the `scan_scaled' function. */ | ||
1162 | #undef HAVE_SCAN_SCALED | ||
1163 | |||
1164 | /* Define if you have SecureWare-based protected password database */ | ||
1165 | #undef HAVE_SECUREWARE | ||
1166 | |||
1167 | /* Define to 1 if you have the <security/pam_appl.h> header file. */ | ||
1168 | #undef HAVE_SECURITY_PAM_APPL_H | ||
1169 | |||
1170 | /* Define to 1 if you have the `sendmsg' function. */ | ||
1171 | #undef HAVE_SENDMSG | ||
1172 | |||
1173 | /* Define to 1 if you have the `setauthdb' function. */ | ||
1174 | #undef HAVE_SETAUTHDB | ||
1175 | |||
1176 | /* Define to 1 if you have the `setdtablesize' function. */ | ||
1177 | #undef HAVE_SETDTABLESIZE | ||
1178 | |||
1179 | /* Define to 1 if you have the `setegid' function. */ | ||
1180 | #undef HAVE_SETEGID | ||
1181 | |||
1182 | /* Define to 1 if you have the `setenv' function. */ | ||
1183 | #undef HAVE_SETENV | ||
1184 | |||
1185 | /* Define to 1 if you have the `seteuid' function. */ | ||
1186 | #undef HAVE_SETEUID | ||
1187 | |||
1188 | /* Define to 1 if you have the `setgroupent' function. */ | ||
1189 | #undef HAVE_SETGROUPENT | ||
1190 | |||
1191 | /* Define to 1 if you have the `setgroups' function. */ | ||
1192 | #undef HAVE_SETGROUPS | ||
1193 | |||
1194 | /* Define to 1 if you have the `setlinebuf' function. */ | ||
1195 | #undef HAVE_SETLINEBUF | ||
1196 | |||
1197 | /* Define to 1 if you have the `setlogin' function. */ | ||
1198 | #undef HAVE_SETLOGIN | ||
1199 | |||
1200 | /* Define to 1 if you have the `setluid' function. */ | ||
1201 | #undef HAVE_SETLUID | ||
1202 | |||
1203 | /* Define to 1 if you have the `setpassent' function. */ | ||
1204 | #undef HAVE_SETPASSENT | ||
1205 | |||
1206 | /* Define to 1 if you have the `setpcred' function. */ | ||
1207 | #undef HAVE_SETPCRED | ||
1208 | |||
1209 | /* Define to 1 if you have the `setpflags' function. */ | ||
1210 | #undef HAVE_SETPFLAGS | ||
1211 | |||
1212 | /* Define to 1 if you have the `setppriv' function. */ | ||
1213 | #undef HAVE_SETPPRIV | ||
1214 | |||
1215 | /* Define to 1 if you have the `setproctitle' function. */ | ||
1216 | #undef HAVE_SETPROCTITLE | ||
1217 | |||
1218 | /* Define to 1 if you have the `setregid' function. */ | ||
1219 | #undef HAVE_SETREGID | ||
1220 | |||
1221 | /* Define to 1 if you have the `setresgid' function. */ | ||
1222 | #undef HAVE_SETRESGID | ||
1223 | |||
1224 | /* Define to 1 if you have the `setresuid' function. */ | ||
1225 | #undef HAVE_SETRESUID | ||
1226 | |||
1227 | /* Define to 1 if you have the `setreuid' function. */ | ||
1228 | #undef HAVE_SETREUID | ||
1229 | |||
1230 | /* Define to 1 if you have the `setrlimit' function. */ | ||
1231 | #undef HAVE_SETRLIMIT | ||
1232 | |||
1233 | /* Define to 1 if you have the `setsid' function. */ | ||
1234 | #undef HAVE_SETSID | ||
1235 | |||
1236 | /* Define to 1 if you have the `setutent' function. */ | ||
1237 | #undef HAVE_SETUTENT | ||
1238 | |||
1239 | /* Define to 1 if you have the `setutxdb' function. */ | ||
1240 | #undef HAVE_SETUTXDB | ||
1241 | |||
1242 | /* Define to 1 if you have the `setutxent' function. */ | ||
1243 | #undef HAVE_SETUTXENT | ||
1244 | |||
1245 | /* Define to 1 if you have the `setvbuf' function. */ | ||
1246 | #undef HAVE_SETVBUF | ||
1247 | |||
1248 | /* Define to 1 if you have the `set_id' function. */ | ||
1249 | #undef HAVE_SET_ID | ||
1250 | |||
1251 | /* Define to 1 if you have the `SHA256Update' function. */ | ||
1252 | #undef HAVE_SHA256UPDATE | ||
1253 | |||
1254 | /* Define to 1 if you have the <sha2.h> header file. */ | ||
1255 | #undef HAVE_SHA2_H | ||
1256 | |||
1257 | /* Define to 1 if you have the `SHA384Update' function. */ | ||
1258 | #undef HAVE_SHA384UPDATE | ||
1259 | |||
1260 | /* Define to 1 if you have the `SHA512Update' function. */ | ||
1261 | #undef HAVE_SHA512UPDATE | ||
1262 | |||
1263 | /* Define to 1 if you have the <shadow.h> header file. */ | ||
1264 | #undef HAVE_SHADOW_H | ||
1265 | |||
1266 | /* Define to 1 if you have the `sigaction' function. */ | ||
1267 | #undef HAVE_SIGACTION | ||
1268 | |||
1269 | /* Define to 1 if you have the `sigvec' function. */ | ||
1270 | #undef HAVE_SIGVEC | ||
1271 | |||
1272 | /* Define to 1 if the system has the type `sig_atomic_t'. */ | ||
1273 | #undef HAVE_SIG_ATOMIC_T | ||
1274 | |||
1275 | /* define if you have size_t data type */ | ||
1276 | #undef HAVE_SIZE_T | ||
1277 | |||
1278 | /* Define to 1 if you have the `snprintf' function. */ | ||
1279 | #undef HAVE_SNPRINTF | ||
1280 | |||
1281 | /* Define to 1 if you have the `socketpair' function. */ | ||
1282 | #undef HAVE_SOCKETPAIR | ||
1283 | |||
1284 | /* Have PEERCRED socket option */ | ||
1285 | #undef HAVE_SO_PEERCRED | ||
1286 | |||
1287 | /* define if you have ssize_t data type */ | ||
1288 | #undef HAVE_SSIZE_T | ||
1289 | |||
1290 | /* Fields in struct sockaddr_storage */ | ||
1291 | #undef HAVE_SS_FAMILY_IN_SS | ||
1292 | |||
1293 | /* Define if you have ut_ss in utmpx.h */ | ||
1294 | #undef HAVE_SS_IN_UTMPX | ||
1295 | |||
1296 | /* Define to 1 if you have the `statfs' function. */ | ||
1297 | #undef HAVE_STATFS | ||
1298 | |||
1299 | /* Define to 1 if you have the `statvfs' function. */ | ||
1300 | #undef HAVE_STATVFS | ||
1301 | |||
1302 | /* Define to 1 if you have the <stddef.h> header file. */ | ||
1303 | #undef HAVE_STDDEF_H | ||
1304 | |||
1305 | /* Define to 1 if you have the <stdint.h> header file. */ | ||
1306 | #undef HAVE_STDINT_H | ||
1307 | |||
1308 | /* Define to 1 if you have the <stdlib.h> header file. */ | ||
1309 | #undef HAVE_STDLIB_H | ||
1310 | |||
1311 | /* Define to 1 if you have the `strcasestr' function. */ | ||
1312 | #undef HAVE_STRCASESTR | ||
1313 | |||
1314 | /* Define to 1 if you have the `strdup' function. */ | ||
1315 | #undef HAVE_STRDUP | ||
1316 | |||
1317 | /* Define to 1 if you have the `strerror' function. */ | ||
1318 | #undef HAVE_STRERROR | ||
1319 | |||
1320 | /* Define to 1 if you have the `strftime' function. */ | ||
1321 | #undef HAVE_STRFTIME | ||
1322 | |||
1323 | /* Silly mkstemp() */ | ||
1324 | #undef HAVE_STRICT_MKSTEMP | ||
1325 | |||
1326 | /* Define to 1 if you have the <strings.h> header file. */ | ||
1327 | #undef HAVE_STRINGS_H | ||
1328 | |||
1329 | /* Define to 1 if you have the <string.h> header file. */ | ||
1330 | #undef HAVE_STRING_H | ||
1331 | |||
1332 | /* Define to 1 if you have the `strlcat' function. */ | ||
1333 | #undef HAVE_STRLCAT | ||
1334 | |||
1335 | /* Define to 1 if you have the `strlcpy' function. */ | ||
1336 | #undef HAVE_STRLCPY | ||
1337 | |||
1338 | /* Define to 1 if you have the `strmode' function. */ | ||
1339 | #undef HAVE_STRMODE | ||
1340 | |||
1341 | /* Define to 1 if you have the `strndup' function. */ | ||
1342 | #undef HAVE_STRNDUP | ||
1343 | |||
1344 | /* Define to 1 if you have the `strnlen' function. */ | ||
1345 | #undef HAVE_STRNLEN | ||
1346 | |||
1347 | /* Define to 1 if you have the `strnvis' function. */ | ||
1348 | #undef HAVE_STRNVIS | ||
1349 | |||
1350 | /* Define to 1 if you have the `strptime' function. */ | ||
1351 | #undef HAVE_STRPTIME | ||
1352 | |||
1353 | /* Define to 1 if you have the `strsep' function. */ | ||
1354 | #undef HAVE_STRSEP | ||
1355 | |||
1356 | /* Define to 1 if you have the `strsignal' function. */ | ||
1357 | #undef HAVE_STRSIGNAL | ||
1358 | |||
1359 | /* Define to 1 if you have the `strtoll' function. */ | ||
1360 | #undef HAVE_STRTOLL | ||
1361 | |||
1362 | /* Define to 1 if you have the `strtonum' function. */ | ||
1363 | #undef HAVE_STRTONUM | ||
1364 | |||
1365 | /* Define to 1 if you have the `strtoul' function. */ | ||
1366 | #undef HAVE_STRTOUL | ||
1367 | |||
1368 | /* Define to 1 if you have the `strtoull' function. */ | ||
1369 | #undef HAVE_STRTOULL | ||
1370 | |||
1371 | /* define if you have struct addrinfo data type */ | ||
1372 | #undef HAVE_STRUCT_ADDRINFO | ||
1373 | |||
1374 | /* define if you have struct in6_addr data type */ | ||
1375 | #undef HAVE_STRUCT_IN6_ADDR | ||
1376 | |||
1377 | /* Define to 1 if `pw_change' is a member of `struct passwd'. */ | ||
1378 | #undef HAVE_STRUCT_PASSWD_PW_CHANGE | ||
1379 | |||
1380 | /* Define to 1 if `pw_class' is a member of `struct passwd'. */ | ||
1381 | #undef HAVE_STRUCT_PASSWD_PW_CLASS | ||
1382 | |||
1383 | /* Define to 1 if `pw_expire' is a member of `struct passwd'. */ | ||
1384 | #undef HAVE_STRUCT_PASSWD_PW_EXPIRE | ||
1385 | |||
1386 | /* Define to 1 if `pw_gecos' is a member of `struct passwd'. */ | ||
1387 | #undef HAVE_STRUCT_PASSWD_PW_GECOS | ||
1388 | |||
1389 | /* define if you have struct sockaddr_in6 data type */ | ||
1390 | #undef HAVE_STRUCT_SOCKADDR_IN6 | ||
1391 | |||
1392 | /* Define to 1 if `sin6_scope_id' is a member of `struct sockaddr_in6'. */ | ||
1393 | #undef HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID | ||
1394 | |||
1395 | /* define if you have struct sockaddr_storage data type */ | ||
1396 | #undef HAVE_STRUCT_SOCKADDR_STORAGE | ||
1397 | |||
1398 | /* Define to 1 if `f_files' is a member of `struct statfs'. */ | ||
1399 | #undef HAVE_STRUCT_STATFS_F_FILES | ||
1400 | |||
1401 | /* Define to 1 if `f_flags' is a member of `struct statfs'. */ | ||
1402 | #undef HAVE_STRUCT_STATFS_F_FLAGS | ||
1403 | |||
1404 | /* Define to 1 if `st_blksize' is a member of `struct stat'. */ | ||
1405 | #undef HAVE_STRUCT_STAT_ST_BLKSIZE | ||
1406 | |||
1407 | /* Define to 1 if `st_mtim' is a member of `struct stat'. */ | ||
1408 | #undef HAVE_STRUCT_STAT_ST_MTIM | ||
1409 | |||
1410 | /* Define to 1 if `st_mtime' is a member of `struct stat'. */ | ||
1411 | #undef HAVE_STRUCT_STAT_ST_MTIME | ||
1412 | |||
1413 | /* define if you have struct timespec */ | ||
1414 | #undef HAVE_STRUCT_TIMESPEC | ||
1415 | |||
1416 | /* define if you have struct timeval */ | ||
1417 | #undef HAVE_STRUCT_TIMEVAL | ||
1418 | |||
1419 | /* Define to 1 if you have the `swap32' function. */ | ||
1420 | #undef HAVE_SWAP32 | ||
1421 | |||
1422 | /* Define to 1 if you have the `sysconf' function. */ | ||
1423 | #undef HAVE_SYSCONF | ||
1424 | |||
1425 | /* Define if you have syslen in utmpx.h */ | ||
1426 | #undef HAVE_SYSLEN_IN_UTMPX | ||
1427 | |||
1428 | /* Define to 1 if you have the <sys/audit.h> header file. */ | ||
1429 | #undef HAVE_SYS_AUDIT_H | ||
1430 | |||
1431 | /* Define to 1 if you have the <sys/bitypes.h> header file. */ | ||
1432 | #undef HAVE_SYS_BITYPES_H | ||
1433 | |||
1434 | /* Define to 1 if you have the <sys/bsdtty.h> header file. */ | ||
1435 | #undef HAVE_SYS_BSDTTY_H | ||
1436 | |||
1437 | /* Define to 1 if you have the <sys/byteorder.h> header file. */ | ||
1438 | #undef HAVE_SYS_BYTEORDER_H | ||
1439 | |||
1440 | /* Define to 1 if you have the <sys/capsicum.h> header file. */ | ||
1441 | #undef HAVE_SYS_CAPSICUM_H | ||
1442 | |||
1443 | /* Define to 1 if you have the <sys/cdefs.h> header file. */ | ||
1444 | #undef HAVE_SYS_CDEFS_H | ||
1445 | |||
1446 | /* Define to 1 if you have the <sys/dir.h> header file. */ | ||
1447 | #undef HAVE_SYS_DIR_H | ||
1448 | |||
1449 | /* Define if your system defines sys_errlist[] */ | ||
1450 | #undef HAVE_SYS_ERRLIST | ||
1451 | |||
1452 | /* Define to 1 if you have the <sys/file.h> header file. */ | ||
1453 | #undef HAVE_SYS_FILE_H | ||
1454 | |||
1455 | /* Define to 1 if you have the <sys/label.h> header file. */ | ||
1456 | #undef HAVE_SYS_LABEL_H | ||
1457 | |||
1458 | /* Define to 1 if you have the <sys/mman.h> header file. */ | ||
1459 | #undef HAVE_SYS_MMAN_H | ||
1460 | |||
1461 | /* Define to 1 if you have the <sys/mount.h> header file. */ | ||
1462 | #undef HAVE_SYS_MOUNT_H | ||
1463 | |||
1464 | /* Define to 1 if you have the <sys/ndir.h> header file. */ | ||
1465 | #undef HAVE_SYS_NDIR_H | ||
1466 | |||
1467 | /* Define if your system defines sys_nerr */ | ||
1468 | #undef HAVE_SYS_NERR | ||
1469 | |||
1470 | /* Define to 1 if you have the <sys/poll.h> header file. */ | ||
1471 | #undef HAVE_SYS_POLL_H | ||
1472 | |||
1473 | /* Define to 1 if you have the <sys/prctl.h> header file. */ | ||
1474 | #undef HAVE_SYS_PRCTL_H | ||
1475 | |||
1476 | /* Define to 1 if you have the <sys/pstat.h> header file. */ | ||
1477 | #undef HAVE_SYS_PSTAT_H | ||
1478 | |||
1479 | /* Define to 1 if you have the <sys/ptms.h> header file. */ | ||
1480 | #undef HAVE_SYS_PTMS_H | ||
1481 | |||
1482 | /* Define to 1 if you have the <sys/ptrace.h> header file. */ | ||
1483 | #undef HAVE_SYS_PTRACE_H | ||
1484 | |||
1485 | /* Define to 1 if you have the <sys/random.h> header file. */ | ||
1486 | #undef HAVE_SYS_RANDOM_H | ||
1487 | |||
1488 | /* Define to 1 if you have the <sys/select.h> header file. */ | ||
1489 | #undef HAVE_SYS_SELECT_H | ||
1490 | |||
1491 | /* Define to 1 if you have the <sys/statvfs.h> header file. */ | ||
1492 | #undef HAVE_SYS_STATVFS_H | ||
1493 | |||
1494 | /* Define to 1 if you have the <sys/stat.h> header file. */ | ||
1495 | #undef HAVE_SYS_STAT_H | ||
1496 | |||
1497 | /* Define to 1 if you have the <sys/stream.h> header file. */ | ||
1498 | #undef HAVE_SYS_STREAM_H | ||
1499 | |||
1500 | /* Define to 1 if you have the <sys/stropts.h> header file. */ | ||
1501 | #undef HAVE_SYS_STROPTS_H | ||
1502 | |||
1503 | /* Define to 1 if you have the <sys/strtio.h> header file. */ | ||
1504 | #undef HAVE_SYS_STRTIO_H | ||
1505 | |||
1506 | /* Define to 1 if you have the <sys/sysctl.h> header file. */ | ||
1507 | #undef HAVE_SYS_SYSCTL_H | ||
1508 | |||
1509 | /* Force use of sys/syslog.h on Ultrix */ | ||
1510 | #undef HAVE_SYS_SYSLOG_H | ||
1511 | |||
1512 | /* Define to 1 if you have the <sys/sysmacros.h> header file. */ | ||
1513 | #undef HAVE_SYS_SYSMACROS_H | ||
1514 | |||
1515 | /* Define to 1 if you have the <sys/timers.h> header file. */ | ||
1516 | #undef HAVE_SYS_TIMERS_H | ||
1517 | |||
1518 | /* Define to 1 if you have the <sys/time.h> header file. */ | ||
1519 | #undef HAVE_SYS_TIME_H | ||
1520 | |||
1521 | /* Define to 1 if you have the <sys/types.h> header file. */ | ||
1522 | #undef HAVE_SYS_TYPES_H | ||
1523 | |||
1524 | /* Define to 1 if you have the <sys/un.h> header file. */ | ||
1525 | #undef HAVE_SYS_UN_H | ||
1526 | |||
1527 | /* Define to 1 if you have the <sys/vfs.h> header file. */ | ||
1528 | #undef HAVE_SYS_VFS_H | ||
1529 | |||
1530 | /* Define to 1 if you have the `tcgetpgrp' function. */ | ||
1531 | #undef HAVE_TCGETPGRP | ||
1532 | |||
1533 | /* Define to 1 if you have the `tcsendbreak' function. */ | ||
1534 | #undef HAVE_TCSENDBREAK | ||
1535 | |||
1536 | /* Define to 1 if you have the `time' function. */ | ||
1537 | #undef HAVE_TIME | ||
1538 | |||
1539 | /* Define to 1 if you have the <time.h> header file. */ | ||
1540 | #undef HAVE_TIME_H | ||
1541 | |||
1542 | /* Define if you have ut_time in utmp.h */ | ||
1543 | #undef HAVE_TIME_IN_UTMP | ||
1544 | |||
1545 | /* Define if you have ut_time in utmpx.h */ | ||
1546 | #undef HAVE_TIME_IN_UTMPX | ||
1547 | |||
1548 | /* Define to 1 if you have the `timingsafe_bcmp' function. */ | ||
1549 | #undef HAVE_TIMINGSAFE_BCMP | ||
1550 | |||
1551 | /* Define to 1 if you have the <tmpdir.h> header file. */ | ||
1552 | #undef HAVE_TMPDIR_H | ||
1553 | |||
1554 | /* Define to 1 if you have the `truncate' function. */ | ||
1555 | #undef HAVE_TRUNCATE | ||
1556 | |||
1557 | /* Define to 1 if you have the <ttyent.h> header file. */ | ||
1558 | #undef HAVE_TTYENT_H | ||
1559 | |||
1560 | /* Define if you have ut_tv in utmp.h */ | ||
1561 | #undef HAVE_TV_IN_UTMP | ||
1562 | |||
1563 | /* Define if you have ut_tv in utmpx.h */ | ||
1564 | #undef HAVE_TV_IN_UTMPX | ||
1565 | |||
1566 | /* Define if you have ut_type in utmp.h */ | ||
1567 | #undef HAVE_TYPE_IN_UTMP | ||
1568 | |||
1569 | /* Define if you have ut_type in utmpx.h */ | ||
1570 | #undef HAVE_TYPE_IN_UTMPX | ||
1571 | |||
1572 | /* Define to 1 if you have the <ucred.h> header file. */ | ||
1573 | #undef HAVE_UCRED_H | ||
1574 | |||
1575 | /* Define to 1 if the system has the type `uintmax_t'. */ | ||
1576 | #undef HAVE_UINTMAX_T | ||
1577 | |||
1578 | /* define if you have uintxx_t data type */ | ||
1579 | #undef HAVE_UINTXX_T | ||
1580 | |||
1581 | /* Define to 1 if you have the <unistd.h> header file. */ | ||
1582 | #undef HAVE_UNISTD_H | ||
1583 | |||
1584 | /* Define to 1 if you have the `unsetenv' function. */ | ||
1585 | #undef HAVE_UNSETENV | ||
1586 | |||
1587 | /* Define to 1 if the system has the type `unsigned long long'. */ | ||
1588 | #undef HAVE_UNSIGNED_LONG_LONG | ||
1589 | |||
1590 | /* Define to 1 if you have the `updwtmp' function. */ | ||
1591 | #undef HAVE_UPDWTMP | ||
1592 | |||
1593 | /* Define to 1 if you have the `updwtmpx' function. */ | ||
1594 | #undef HAVE_UPDWTMPX | ||
1595 | |||
1596 | /* Define to 1 if you have the <usersec.h> header file. */ | ||
1597 | #undef HAVE_USERSEC_H | ||
1598 | |||
1599 | /* Define to 1 if you have the `user_from_uid' function. */ | ||
1600 | #undef HAVE_USER_FROM_UID | ||
1601 | |||
1602 | /* Define to 1 if you have the `usleep' function. */ | ||
1603 | #undef HAVE_USLEEP | ||
1604 | |||
1605 | /* Define to 1 if you have the <util.h> header file. */ | ||
1606 | #undef HAVE_UTIL_H | ||
1607 | |||
1608 | /* Define to 1 if you have the `utimensat' function. */ | ||
1609 | #undef HAVE_UTIMENSAT | ||
1610 | |||
1611 | /* Define to 1 if you have the `utimes' function. */ | ||
1612 | #undef HAVE_UTIMES | ||
1613 | |||
1614 | /* Define to 1 if you have the <utime.h> header file. */ | ||
1615 | #undef HAVE_UTIME_H | ||
1616 | |||
1617 | /* Define to 1 if you have the `utmpname' function. */ | ||
1618 | #undef HAVE_UTMPNAME | ||
1619 | |||
1620 | /* Define to 1 if you have the `utmpxname' function. */ | ||
1621 | #undef HAVE_UTMPXNAME | ||
1622 | |||
1623 | /* Define to 1 if you have the <utmpx.h> header file. */ | ||
1624 | #undef HAVE_UTMPX_H | ||
1625 | |||
1626 | /* Define to 1 if you have the <utmp.h> header file. */ | ||
1627 | #undef HAVE_UTMP_H | ||
1628 | |||
1629 | /* define if you have u_char data type */ | ||
1630 | #undef HAVE_U_CHAR | ||
1631 | |||
1632 | /* define if you have u_int data type */ | ||
1633 | #undef HAVE_U_INT | ||
1634 | |||
1635 | /* define if you have u_int64_t data type */ | ||
1636 | #undef HAVE_U_INT64_T | ||
1637 | |||
1638 | /* define if you have u_intxx_t data type */ | ||
1639 | #undef HAVE_U_INTXX_T | ||
1640 | |||
1641 | /* Define to 1 if you have the `vasprintf' function. */ | ||
1642 | #undef HAVE_VASPRINTF | ||
1643 | |||
1644 | /* Define if va_copy exists */ | ||
1645 | #undef HAVE_VA_COPY | ||
1646 | |||
1647 | /* Define to 1 if you have the <vis.h> header file. */ | ||
1648 | #undef HAVE_VIS_H | ||
1649 | |||
1650 | /* Define to 1 if you have the `vsnprintf' function. */ | ||
1651 | #undef HAVE_VSNPRINTF | ||
1652 | |||
1653 | /* Define to 1 if you have the `waitpid' function. */ | ||
1654 | #undef HAVE_WAITPID | ||
1655 | |||
1656 | /* Define to 1 if you have the `warn' function. */ | ||
1657 | #undef HAVE_WARN | ||
1658 | |||
1659 | /* Define to 1 if you have the <wchar.h> header file. */ | ||
1660 | #undef HAVE_WCHAR_H | ||
1661 | |||
1662 | /* Define to 1 if you have the `wcwidth' function. */ | ||
1663 | #undef HAVE_WCWIDTH | ||
1664 | |||
1665 | /* Define to 1 if you have the `_getlong' function. */ | ||
1666 | #undef HAVE__GETLONG | ||
1667 | |||
1668 | /* Define to 1 if you have the `_getpty' function. */ | ||
1669 | #undef HAVE__GETPTY | ||
1670 | |||
1671 | /* Define to 1 if you have the `_getshort' function. */ | ||
1672 | #undef HAVE__GETSHORT | ||
1673 | |||
1674 | /* Define if you have struct __res_state _res as an extern */ | ||
1675 | #undef HAVE__RES_EXTERN | ||
1676 | |||
1677 | /* Define to 1 if you have the `__b64_ntop' function. */ | ||
1678 | #undef HAVE___B64_NTOP | ||
1679 | |||
1680 | /* Define to 1 if you have the `__b64_pton' function. */ | ||
1681 | #undef HAVE___B64_PTON | ||
1682 | |||
1683 | /* Define if compiler implements __FUNCTION__ */ | ||
1684 | #undef HAVE___FUNCTION__ | ||
1685 | |||
1686 | /* Define if libc defines __progname */ | ||
1687 | #undef HAVE___PROGNAME | ||
1688 | |||
1689 | /* Fields in struct sockaddr_storage */ | ||
1690 | #undef HAVE___SS_FAMILY_IN_SS | ||
1691 | |||
1692 | /* Define if __va_copy exists */ | ||
1693 | #undef HAVE___VA_COPY | ||
1694 | |||
1695 | /* Define if compiler implements __func__ */ | ||
1696 | #undef HAVE___func__ | ||
1697 | |||
1698 | /* Define this if you are using the Heimdal version of Kerberos V5 */ | ||
1699 | #undef HEIMDAL | ||
1700 | |||
1701 | /* Define if you need to use IP address instead of hostname in $DISPLAY */ | ||
1702 | #undef IPADDR_IN_DISPLAY | ||
1703 | |||
1704 | /* Detect IPv4 in IPv6 mapped addresses and treat as IPv4 */ | ||
1705 | #undef IPV4_IN_IPV6 | ||
1706 | |||
1707 | /* Define if your system choked on IP TOS setting */ | ||
1708 | #undef IP_TOS_IS_BROKEN | ||
1709 | |||
1710 | /* Define if you want Kerberos 5 support */ | ||
1711 | #undef KRB5 | ||
1712 | |||
1713 | /* Define if pututxline updates lastlog too */ | ||
1714 | #undef LASTLOG_WRITE_PUTUTXLINE | ||
1715 | |||
1716 | /* Define to whatever link() returns for "not supported" if it doesn't return | ||
1717 | EOPNOTSUPP. */ | ||
1718 | #undef LINK_OPNOTSUPP_ERRNO | ||
1719 | |||
1720 | /* Adjust Linux out-of-memory killer */ | ||
1721 | #undef LINUX_OOM_ADJUST | ||
1722 | |||
1723 | /* max value of long long calculated by configure */ | ||
1724 | #undef LLONG_MAX | ||
1725 | |||
1726 | /* min value of long long calculated by configure */ | ||
1727 | #undef LLONG_MIN | ||
1728 | |||
1729 | /* Account locked with pw(1) */ | ||
1730 | #undef LOCKED_PASSWD_PREFIX | ||
1731 | |||
1732 | /* String used in /etc/passwd to denote locked account */ | ||
1733 | #undef LOCKED_PASSWD_STRING | ||
1734 | |||
1735 | /* String used in /etc/passwd to denote locked account */ | ||
1736 | #undef LOCKED_PASSWD_SUBSTR | ||
1737 | |||
1738 | /* Some systems need a utmpx entry for /bin/login to work */ | ||
1739 | #undef LOGIN_NEEDS_UTMPX | ||
1740 | |||
1741 | /* Set this to your mail directory if you do not have _PATH_MAILDIR */ | ||
1742 | #undef MAIL_DIRECTORY | ||
1743 | |||
1744 | /* Need setpgrp to for controlling tty */ | ||
1745 | #undef NEED_SETPGRP | ||
1746 | |||
1747 | /* compiler does not accept __attribute__ on prototype args */ | ||
1748 | #undef NO_ATTRIBUTE_ON_PROTOTYPE_ARGS | ||
1749 | |||
1750 | /* compiler does not accept __attribute__ on return types */ | ||
1751 | #undef NO_ATTRIBUTE_ON_RETURN_TYPE | ||
1752 | |||
1753 | /* SA_RESTARTed signals do no interrupt select */ | ||
1754 | #undef NO_SA_RESTART | ||
1755 | |||
1756 | /* Define to disable UID restoration test */ | ||
1757 | #undef NO_UID_RESTORATION_TEST | ||
1758 | |||
1759 | /* Define if X11 doesn't support AF_UNIX sockets on that system */ | ||
1760 | #undef NO_X11_UNIX_SOCKETS | ||
1761 | |||
1762 | /* Define if EVP_DigestUpdate returns void */ | ||
1763 | #undef OPENSSL_EVP_DIGESTUPDATE_VOID | ||
1764 | |||
1765 | /* OpenSSL has ECC */ | ||
1766 | #undef OPENSSL_HAS_ECC | ||
1767 | |||
1768 | /* libcrypto has NID_X9_62_prime256v1 */ | ||
1769 | #undef OPENSSL_HAS_NISTP256 | ||
1770 | |||
1771 | /* libcrypto has NID_secp384r1 */ | ||
1772 | #undef OPENSSL_HAS_NISTP384 | ||
1773 | |||
1774 | /* libcrypto has NID_secp521r1 */ | ||
1775 | #undef OPENSSL_HAS_NISTP521 | ||
1776 | |||
1777 | /* libcrypto has EVP AES CTR */ | ||
1778 | #undef OPENSSL_HAVE_EVPCTR | ||
1779 | |||
1780 | /* libcrypto has EVP AES GCM */ | ||
1781 | #undef OPENSSL_HAVE_EVPGCM | ||
1782 | |||
1783 | /* libcrypto is missing AES 192 and 256 bit functions */ | ||
1784 | #undef OPENSSL_LOBOTOMISED_AES | ||
1785 | |||
1786 | /* Define if you want the OpenSSL internally seeded PRNG only */ | ||
1787 | #undef OPENSSL_PRNG_ONLY | ||
1788 | |||
1789 | /* Define to the address where bug reports for this package should be sent. */ | ||
1790 | #undef PACKAGE_BUGREPORT | ||
1791 | |||
1792 | /* Define to the full name of this package. */ | ||
1793 | #undef PACKAGE_NAME | ||
1794 | |||
1795 | /* Define to the full name and version of this package. */ | ||
1796 | #undef PACKAGE_STRING | ||
1797 | |||
1798 | /* Define to the one symbol short name of this package. */ | ||
1799 | #undef PACKAGE_TARNAME | ||
1800 | |||
1801 | /* Define to the home page for this package. */ | ||
1802 | #undef PACKAGE_URL | ||
1803 | |||
1804 | /* Define to the version of this package. */ | ||
1805 | #undef PACKAGE_VERSION | ||
1806 | |||
1807 | /* Define if you are using Solaris-derived PAM which passes pam_messages to | ||
1808 | the conversation function with an extra level of indirection */ | ||
1809 | #undef PAM_SUN_CODEBASE | ||
1810 | |||
1811 | /* Work around problematic Linux PAM modules handling of PAM_TTY */ | ||
1812 | #undef PAM_TTY_KLUDGE | ||
1813 | |||
1814 | /* must supply username to passwd */ | ||
1815 | #undef PASSWD_NEEDS_USERNAME | ||
1816 | |||
1817 | /* System dirs owned by bin (uid 2) */ | ||
1818 | #undef PLATFORM_SYS_DIR_UID | ||
1819 | |||
1820 | /* Port number of PRNGD/EGD random number socket */ | ||
1821 | #undef PRNGD_PORT | ||
1822 | |||
1823 | /* Location of PRNGD/EGD random number socket */ | ||
1824 | #undef PRNGD_SOCKET | ||
1825 | |||
1826 | /* read(1) can return 0 for a non-closed fd */ | ||
1827 | #undef PTY_ZEROREAD | ||
1828 | |||
1829 | /* Sandbox using capsicum */ | ||
1830 | #undef SANDBOX_CAPSICUM | ||
1831 | |||
1832 | /* Sandbox using Darwin sandbox_init(3) */ | ||
1833 | #undef SANDBOX_DARWIN | ||
1834 | |||
1835 | /* no privsep sandboxing */ | ||
1836 | #undef SANDBOX_NULL | ||
1837 | |||
1838 | /* Sandbox using pledge(2) */ | ||
1839 | #undef SANDBOX_PLEDGE | ||
1840 | |||
1841 | /* Sandbox using setrlimit(2) */ | ||
1842 | #undef SANDBOX_RLIMIT | ||
1843 | |||
1844 | /* Sandbox using seccomp filter */ | ||
1845 | #undef SANDBOX_SECCOMP_FILTER | ||
1846 | |||
1847 | /* setrlimit RLIMIT_FSIZE works */ | ||
1848 | #undef SANDBOX_SKIP_RLIMIT_FSIZE | ||
1849 | |||
1850 | /* define if setrlimit RLIMIT_NOFILE breaks things */ | ||
1851 | #undef SANDBOX_SKIP_RLIMIT_NOFILE | ||
1852 | |||
1853 | /* Sandbox using Solaris/Illumos privileges */ | ||
1854 | #undef SANDBOX_SOLARIS | ||
1855 | |||
1856 | /* Sandbox using systrace(4) */ | ||
1857 | #undef SANDBOX_SYSTRACE | ||
1858 | |||
1859 | /* Specify the system call convention in use */ | ||
1860 | #undef SECCOMP_AUDIT_ARCH | ||
1861 | |||
1862 | /* Define if your platform breaks doing a seteuid before a setuid */ | ||
1863 | #undef SETEUID_BREAKS_SETUID | ||
1864 | |||
1865 | /* The size of `int', as computed by sizeof. */ | ||
1866 | #undef SIZEOF_INT | ||
1867 | |||
1868 | /* The size of `long int', as computed by sizeof. */ | ||
1869 | #undef SIZEOF_LONG_INT | ||
1870 | |||
1871 | /* The size of `long long int', as computed by sizeof. */ | ||
1872 | #undef SIZEOF_LONG_LONG_INT | ||
1873 | |||
1874 | /* The size of `short int', as computed by sizeof. */ | ||
1875 | #undef SIZEOF_SHORT_INT | ||
1876 | |||
1877 | /* The size of `size_t', as computed by sizeof. */ | ||
1878 | #undef SIZEOF_SIZE_T | ||
1879 | |||
1880 | /* Define as const if snprintf() can declare const char *fmt */ | ||
1881 | #undef SNPRINTF_CONST | ||
1882 | |||
1883 | /* Define to a Set Process Title type if your system is supported by | ||
1884 | bsd-setproctitle.c */ | ||
1885 | #undef SPT_TYPE | ||
1886 | |||
1887 | /* Define if sshd somehow reacquires a controlling TTY after setsid() */ | ||
1888 | #undef SSHD_ACQUIRES_CTTY | ||
1889 | |||
1890 | /* sshd PAM service name */ | ||
1891 | #undef SSHD_PAM_SERVICE | ||
1892 | |||
1893 | /* Define if pam_chauthtok wants real uid set to the unpriv'ed user */ | ||
1894 | #undef SSHPAM_CHAUTHTOK_NEEDS_RUID | ||
1895 | |||
1896 | /* Use audit debugging module */ | ||
1897 | #undef SSH_AUDIT_EVENTS | ||
1898 | |||
1899 | /* Windows is sensitive to read buffer size */ | ||
1900 | #undef SSH_IOBUFSZ | ||
1901 | |||
1902 | /* non-privileged user for privilege separation */ | ||
1903 | #undef SSH_PRIVSEP_USER | ||
1904 | |||
1905 | /* Use tunnel device compatibility to OpenBSD */ | ||
1906 | #undef SSH_TUN_COMPAT_AF | ||
1907 | |||
1908 | /* Open tunnel devices the FreeBSD way */ | ||
1909 | #undef SSH_TUN_FREEBSD | ||
1910 | |||
1911 | /* Open tunnel devices the Linux tun/tap way */ | ||
1912 | #undef SSH_TUN_LINUX | ||
1913 | |||
1914 | /* No layer 2 tunnel support */ | ||
1915 | #undef SSH_TUN_NO_L2 | ||
1916 | |||
1917 | /* Open tunnel devices the OpenBSD way */ | ||
1918 | #undef SSH_TUN_OPENBSD | ||
1919 | |||
1920 | /* Prepend the address family to IP tunnel traffic */ | ||
1921 | #undef SSH_TUN_PREPEND_AF | ||
1922 | |||
1923 | /* Define to 1 if you have the ANSI C header files. */ | ||
1924 | #undef STDC_HEADERS | ||
1925 | |||
1926 | /* Define if you want a different $PATH for the superuser */ | ||
1927 | #undef SUPERUSER_PATH | ||
1928 | |||
1929 | /* syslog_r function is safe to use in in a signal handler */ | ||
1930 | #undef SYSLOG_R_SAFE_IN_SIGHAND | ||
1931 | |||
1932 | /* Support routing domains using Linux VRF */ | ||
1933 | #undef SYS_RDOMAIN_LINUX | ||
1934 | |||
1935 | /* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ | ||
1936 | #undef TIME_WITH_SYS_TIME | ||
1937 | |||
1938 | /* Support passwords > 8 chars */ | ||
1939 | #undef UNIXWARE_LONG_PASSWORDS | ||
1940 | |||
1941 | /* Specify default $PATH */ | ||
1942 | #undef USER_PATH | ||
1943 | |||
1944 | /* Define this if you want to use libkafs' AFS support */ | ||
1945 | #undef USE_AFS | ||
1946 | |||
1947 | /* Use BSM audit module */ | ||
1948 | #undef USE_BSM_AUDIT | ||
1949 | |||
1950 | /* Use btmp to log bad logins */ | ||
1951 | #undef USE_BTMP | ||
1952 | |||
1953 | /* Use libedit for sftp */ | ||
1954 | #undef USE_LIBEDIT | ||
1955 | |||
1956 | /* Use Linux audit module */ | ||
1957 | #undef USE_LINUX_AUDIT | ||
1958 | |||
1959 | /* Enable OpenSSL engine support */ | ||
1960 | #undef USE_OPENSSL_ENGINE | ||
1961 | |||
1962 | /* Define if you want to enable PAM support */ | ||
1963 | #undef USE_PAM | ||
1964 | |||
1965 | /* Use PIPES instead of a socketpair() */ | ||
1966 | #undef USE_PIPES | ||
1967 | |||
1968 | /* Define if you have Solaris privileges */ | ||
1969 | #undef USE_SOLARIS_PRIVS | ||
1970 | |||
1971 | /* Define if you have Solaris process contracts */ | ||
1972 | #undef USE_SOLARIS_PROCESS_CONTRACTS | ||
1973 | |||
1974 | /* Define if you have Solaris projects */ | ||
1975 | #undef USE_SOLARIS_PROJECTS | ||
1976 | |||
1977 | /* Define if you shouldn't strip 'tty' from your ttyname in [uw]tmp */ | ||
1978 | #undef WITH_ABBREV_NO_TTY | ||
1979 | |||
1980 | /* Define if you want to enable AIX4's authenticate function */ | ||
1981 | #undef WITH_AIXAUTHENTICATE | ||
1982 | |||
1983 | /* Define if you have/want arrays (cluster-wide session management, not C | ||
1984 | arrays) */ | ||
1985 | #undef WITH_IRIX_ARRAY | ||
1986 | |||
1987 | /* Define if you want IRIX audit trails */ | ||
1988 | #undef WITH_IRIX_AUDIT | ||
1989 | |||
1990 | /* Define if you want IRIX kernel jobs */ | ||
1991 | #undef WITH_IRIX_JOBS | ||
1992 | |||
1993 | /* Define if you want IRIX project management */ | ||
1994 | #undef WITH_IRIX_PROJECT | ||
1995 | |||
1996 | /* use libcrypto for cryptography */ | ||
1997 | #undef WITH_OPENSSL | ||
1998 | |||
1999 | /* Define if you want SELinux support. */ | ||
2000 | #undef WITH_SELINUX | ||
2001 | |||
2002 | /* Enable zlib */ | ||
2003 | #undef WITH_ZLIB | ||
2004 | |||
2005 | /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most | ||
2006 | significant byte first (like Motorola and SPARC, unlike Intel). */ | ||
2007 | #if defined AC_APPLE_UNIVERSAL_BUILD | ||
2008 | # if defined __BIG_ENDIAN__ | ||
2009 | # define WORDS_BIGENDIAN 1 | ||
2010 | # endif | ||
2011 | #else | ||
2012 | # ifndef WORDS_BIGENDIAN | ||
2013 | # undef WORDS_BIGENDIAN | ||
2014 | # endif | ||
2015 | #endif | ||
2016 | |||
2017 | /* Define if xauth is found in your path */ | ||
2018 | #undef XAUTH_PATH | ||
2019 | |||
2020 | /* Enable large inode numbers on Mac OS X 10.5. */ | ||
2021 | #ifndef _DARWIN_USE_64_BIT_INODE | ||
2022 | # define _DARWIN_USE_64_BIT_INODE 1 | ||
2023 | #endif | ||
2024 | |||
2025 | /* Number of bits in a file offset, on hosts where this is settable. */ | ||
2026 | #undef _FILE_OFFSET_BITS | ||
2027 | |||
2028 | /* Define for large files, on AIX-style hosts. */ | ||
2029 | #undef _LARGE_FILES | ||
2030 | |||
2031 | /* log for bad login attempts */ | ||
2032 | #undef _PATH_BTMP | ||
2033 | |||
2034 | /* Full path of your "passwd" program */ | ||
2035 | #undef _PATH_PASSWD_PROG | ||
2036 | |||
2037 | /* Specify location of ssh.pid */ | ||
2038 | #undef _PATH_SSH_PIDDIR | ||
2039 | |||
2040 | /* Define if we don't have struct __res_state in resolv.h */ | ||
2041 | #undef __res_state | ||
2042 | |||
2043 | /* Define to rpl_calloc if the replacement function should be used. */ | ||
2044 | #undef calloc | ||
2045 | |||
2046 | /* Define to `__inline__' or `__inline' if that's what the C compiler | ||
2047 | calls it, or to nothing if 'inline' is not supported under any name. */ | ||
2048 | #ifndef __cplusplus | ||
2049 | #undef inline | ||
2050 | #endif | ||
2051 | |||
2052 | /* Define to rpl_malloc if the replacement function should be used. */ | ||
2053 | #undef malloc | ||
2054 | |||
2055 | /* Define to rpl_realloc if the replacement function should be used. */ | ||
2056 | #undef realloc | ||
2057 | |||
2058 | /* type to use in place of socklen_t if not defined */ | ||
2059 | #undef socklen_t | ||
diff --git a/configure b/configure new file mode 100755 index 000000000..57b261503 --- /dev/null +++ b/configure | |||
@@ -0,0 +1,21833 @@ | |||
1 | #! /bin/sh | ||
2 | # Guess values for system-dependent variables and create Makefiles. | ||
3 | # Generated by GNU Autoconf 2.69 for OpenSSH Portable. | ||
4 | # | ||
5 | # Report bugs to <openssh-unix-dev@mindrot.org>. | ||
6 | # | ||
7 | # | ||
8 | # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. | ||
9 | # | ||
10 | # | ||
11 | # This configure script is free software; the Free Software Foundation | ||
12 | # gives unlimited permission to copy, distribute and modify it. | ||
13 | ## -------------------- ## | ||
14 | ## M4sh Initialization. ## | ||
15 | ## -------------------- ## | ||
16 | |||
17 | # Be more Bourne compatible | ||
18 | DUALCASE=1; export DUALCASE # for MKS sh | ||
19 | if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : | ||
20 | emulate sh | ||
21 | NULLCMD=: | ||
22 | # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which | ||
23 | # is contrary to our usage. Disable this feature. | ||
24 | alias -g '${1+"$@"}'='"$@"' | ||
25 | setopt NO_GLOB_SUBST | ||
26 | else | ||
27 | case `(set -o) 2>/dev/null` in #( | ||
28 | *posix*) : | ||
29 | set -o posix ;; #( | ||
30 | *) : | ||
31 | ;; | ||
32 | esac | ||
33 | fi | ||
34 | |||
35 | |||
36 | as_nl=' | ||
37 | ' | ||
38 | export as_nl | ||
39 | # Printing a long string crashes Solaris 7 /usr/bin/printf. | ||
40 | as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' | ||
41 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo | ||
42 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo | ||
43 | # Prefer a ksh shell builtin over an external printf program on Solaris, | ||
44 | # but without wasting forks for bash or zsh. | ||
45 | if test -z "$BASH_VERSION$ZSH_VERSION" \ | ||
46 | && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
47 | as_echo='print -r --' | ||
48 | as_echo_n='print -rn --' | ||
49 | elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
50 | as_echo='printf %s\n' | ||
51 | as_echo_n='printf %s' | ||
52 | else | ||
53 | if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then | ||
54 | as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' | ||
55 | as_echo_n='/usr/ucb/echo -n' | ||
56 | else | ||
57 | as_echo_body='eval expr "X$1" : "X\\(.*\\)"' | ||
58 | as_echo_n_body='eval | ||
59 | arg=$1; | ||
60 | case $arg in #( | ||
61 | *"$as_nl"*) | ||
62 | expr "X$arg" : "X\\(.*\\)$as_nl"; | ||
63 | arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; | ||
64 | esac; | ||
65 | expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" | ||
66 | ' | ||
67 | export as_echo_n_body | ||
68 | as_echo_n='sh -c $as_echo_n_body as_echo' | ||
69 | fi | ||
70 | export as_echo_body | ||
71 | as_echo='sh -c $as_echo_body as_echo' | ||
72 | fi | ||
73 | |||
74 | # The user is always right. | ||
75 | if test "${PATH_SEPARATOR+set}" != set; then | ||
76 | PATH_SEPARATOR=: | ||
77 | (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { | ||
78 | (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || | ||
79 | PATH_SEPARATOR=';' | ||
80 | } | ||
81 | fi | ||
82 | |||
83 | |||
84 | # IFS | ||
85 | # We need space, tab and new line, in precisely that order. Quoting is | ||
86 | # there to prevent editors from complaining about space-tab. | ||
87 | # (If _AS_PATH_WALK were called with IFS unset, it would disable word | ||
88 | # splitting by setting IFS to empty value.) | ||
89 | IFS=" "" $as_nl" | ||
90 | |||
91 | # Find who we are. Look in the path if we contain no directory separator. | ||
92 | as_myself= | ||
93 | case $0 in #(( | ||
94 | *[\\/]* ) as_myself=$0 ;; | ||
95 | *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
96 | for as_dir in $PATH | ||
97 | do | ||
98 | IFS=$as_save_IFS | ||
99 | test -z "$as_dir" && as_dir=. | ||
100 | test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break | ||
101 | done | ||
102 | IFS=$as_save_IFS | ||
103 | |||
104 | ;; | ||
105 | esac | ||
106 | # We did not find ourselves, most probably we were run as `sh COMMAND' | ||
107 | # in which case we are not to be found in the path. | ||
108 | if test "x$as_myself" = x; then | ||
109 | as_myself=$0 | ||
110 | fi | ||
111 | if test ! -f "$as_myself"; then | ||
112 | $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 | ||
113 | exit 1 | ||
114 | fi | ||
115 | |||
116 | # Unset variables that we do not need and which cause bugs (e.g. in | ||
117 | # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" | ||
118 | # suppresses any "Segmentation fault" message there. '((' could | ||
119 | # trigger a bug in pdksh 5.2.14. | ||
120 | for as_var in BASH_ENV ENV MAIL MAILPATH | ||
121 | do eval test x\${$as_var+set} = xset \ | ||
122 | && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : | ||
123 | done | ||
124 | PS1='$ ' | ||
125 | PS2='> ' | ||
126 | PS4='+ ' | ||
127 | |||
128 | # NLS nuisances. | ||
129 | LC_ALL=C | ||
130 | export LC_ALL | ||
131 | LANGUAGE=C | ||
132 | export LANGUAGE | ||
133 | |||
134 | # CDPATH. | ||
135 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | ||
136 | |||
137 | # Use a proper internal environment variable to ensure we don't fall | ||
138 | # into an infinite loop, continuously re-executing ourselves. | ||
139 | if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then | ||
140 | _as_can_reexec=no; export _as_can_reexec; | ||
141 | # We cannot yet assume a decent shell, so we have to provide a | ||
142 | # neutralization value for shells without unset; and this also | ||
143 | # works around shells that cannot unset nonexistent variables. | ||
144 | # Preserve -v and -x to the replacement shell. | ||
145 | BASH_ENV=/dev/null | ||
146 | ENV=/dev/null | ||
147 | (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV | ||
148 | case $- in # (((( | ||
149 | *v*x* | *x*v* ) as_opts=-vx ;; | ||
150 | *v* ) as_opts=-v ;; | ||
151 | *x* ) as_opts=-x ;; | ||
152 | * ) as_opts= ;; | ||
153 | esac | ||
154 | exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} | ||
155 | # Admittedly, this is quite paranoid, since all the known shells bail | ||
156 | # out after a failed `exec'. | ||
157 | $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 | ||
158 | as_fn_exit 255 | ||
159 | fi | ||
160 | # We don't want this to propagate to other subprocesses. | ||
161 | { _as_can_reexec=; unset _as_can_reexec;} | ||
162 | if test "x$CONFIG_SHELL" = x; then | ||
163 | as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : | ||
164 | emulate sh | ||
165 | NULLCMD=: | ||
166 | # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which | ||
167 | # is contrary to our usage. Disable this feature. | ||
168 | alias -g '\${1+\"\$@\"}'='\"\$@\"' | ||
169 | setopt NO_GLOB_SUBST | ||
170 | else | ||
171 | case \`(set -o) 2>/dev/null\` in #( | ||
172 | *posix*) : | ||
173 | set -o posix ;; #( | ||
174 | *) : | ||
175 | ;; | ||
176 | esac | ||
177 | fi | ||
178 | " | ||
179 | as_required="as_fn_return () { (exit \$1); } | ||
180 | as_fn_success () { as_fn_return 0; } | ||
181 | as_fn_failure () { as_fn_return 1; } | ||
182 | as_fn_ret_success () { return 0; } | ||
183 | as_fn_ret_failure () { return 1; } | ||
184 | |||
185 | exitcode=0 | ||
186 | as_fn_success || { exitcode=1; echo as_fn_success failed.; } | ||
187 | as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } | ||
188 | as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } | ||
189 | as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } | ||
190 | if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : | ||
191 | |||
192 | else | ||
193 | exitcode=1; echo positional parameters were not saved. | ||
194 | fi | ||
195 | test x\$exitcode = x0 || exit 1 | ||
196 | test -x / || exit 1" | ||
197 | as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO | ||
198 | as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO | ||
199 | eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && | ||
200 | test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 | ||
201 | test \$(( 1 + 1 )) = 2 || exit 1" | ||
202 | if (eval "$as_required") 2>/dev/null; then : | ||
203 | as_have_required=yes | ||
204 | else | ||
205 | as_have_required=no | ||
206 | fi | ||
207 | if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : | ||
208 | |||
209 | else | ||
210 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
211 | as_found=false | ||
212 | for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH | ||
213 | do | ||
214 | IFS=$as_save_IFS | ||
215 | test -z "$as_dir" && as_dir=. | ||
216 | as_found=: | ||
217 | case $as_dir in #( | ||
218 | /*) | ||
219 | for as_base in sh bash ksh sh5; do | ||
220 | # Try only shells that exist, to save several forks. | ||
221 | as_shell=$as_dir/$as_base | ||
222 | if { test -f "$as_shell" || test -f "$as_shell.exe"; } && | ||
223 | { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : | ||
224 | CONFIG_SHELL=$as_shell as_have_required=yes | ||
225 | if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : | ||
226 | break 2 | ||
227 | fi | ||
228 | fi | ||
229 | done;; | ||
230 | esac | ||
231 | as_found=false | ||
232 | done | ||
233 | $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && | ||
234 | { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : | ||
235 | CONFIG_SHELL=$SHELL as_have_required=yes | ||
236 | fi; } | ||
237 | IFS=$as_save_IFS | ||
238 | |||
239 | |||
240 | if test "x$CONFIG_SHELL" != x; then : | ||
241 | export CONFIG_SHELL | ||
242 | # We cannot yet assume a decent shell, so we have to provide a | ||
243 | # neutralization value for shells without unset; and this also | ||
244 | # works around shells that cannot unset nonexistent variables. | ||
245 | # Preserve -v and -x to the replacement shell. | ||
246 | BASH_ENV=/dev/null | ||
247 | ENV=/dev/null | ||
248 | (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV | ||
249 | case $- in # (((( | ||
250 | *v*x* | *x*v* ) as_opts=-vx ;; | ||
251 | *v* ) as_opts=-v ;; | ||
252 | *x* ) as_opts=-x ;; | ||
253 | * ) as_opts= ;; | ||
254 | esac | ||
255 | exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} | ||
256 | # Admittedly, this is quite paranoid, since all the known shells bail | ||
257 | # out after a failed `exec'. | ||
258 | $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 | ||
259 | exit 255 | ||
260 | fi | ||
261 | |||
262 | if test x$as_have_required = xno; then : | ||
263 | $as_echo "$0: This script requires a shell more modern than all" | ||
264 | $as_echo "$0: the shells that I found on your system." | ||
265 | if test x${ZSH_VERSION+set} = xset ; then | ||
266 | $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" | ||
267 | $as_echo "$0: be upgraded to zsh 4.3.4 or later." | ||
268 | else | ||
269 | $as_echo "$0: Please tell bug-autoconf@gnu.org and | ||
270 | $0: openssh-unix-dev@mindrot.org about your system, | ||
271 | $0: including any error possibly output before this | ||
272 | $0: message. Then install a modern shell, or manually run | ||
273 | $0: the script under such a shell if you do have one." | ||
274 | fi | ||
275 | exit 1 | ||
276 | fi | ||
277 | fi | ||
278 | fi | ||
279 | SHELL=${CONFIG_SHELL-/bin/sh} | ||
280 | export SHELL | ||
281 | # Unset more variables known to interfere with behavior of common tools. | ||
282 | CLICOLOR_FORCE= GREP_OPTIONS= | ||
283 | unset CLICOLOR_FORCE GREP_OPTIONS | ||
284 | |||
285 | ## --------------------- ## | ||
286 | ## M4sh Shell Functions. ## | ||
287 | ## --------------------- ## | ||
288 | # as_fn_unset VAR | ||
289 | # --------------- | ||
290 | # Portably unset VAR. | ||
291 | as_fn_unset () | ||
292 | { | ||
293 | { eval $1=; unset $1;} | ||
294 | } | ||
295 | as_unset=as_fn_unset | ||
296 | |||
297 | # as_fn_set_status STATUS | ||
298 | # ----------------------- | ||
299 | # Set $? to STATUS, without forking. | ||
300 | as_fn_set_status () | ||
301 | { | ||
302 | return $1 | ||
303 | } # as_fn_set_status | ||
304 | |||
305 | # as_fn_exit STATUS | ||
306 | # ----------------- | ||
307 | # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. | ||
308 | as_fn_exit () | ||
309 | { | ||
310 | set +e | ||
311 | as_fn_set_status $1 | ||
312 | exit $1 | ||
313 | } # as_fn_exit | ||
314 | |||
315 | # as_fn_mkdir_p | ||
316 | # ------------- | ||
317 | # Create "$as_dir" as a directory, including parents if necessary. | ||
318 | as_fn_mkdir_p () | ||
319 | { | ||
320 | |||
321 | case $as_dir in #( | ||
322 | -*) as_dir=./$as_dir;; | ||
323 | esac | ||
324 | test -d "$as_dir" || eval $as_mkdir_p || { | ||
325 | as_dirs= | ||
326 | while :; do | ||
327 | case $as_dir in #( | ||
328 | *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( | ||
329 | *) as_qdir=$as_dir;; | ||
330 | esac | ||
331 | as_dirs="'$as_qdir' $as_dirs" | ||
332 | as_dir=`$as_dirname -- "$as_dir" || | ||
333 | $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
334 | X"$as_dir" : 'X\(//\)[^/]' \| \ | ||
335 | X"$as_dir" : 'X\(//\)$' \| \ | ||
336 | X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || | ||
337 | $as_echo X"$as_dir" | | ||
338 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
339 | s//\1/ | ||
340 | q | ||
341 | } | ||
342 | /^X\(\/\/\)[^/].*/{ | ||
343 | s//\1/ | ||
344 | q | ||
345 | } | ||
346 | /^X\(\/\/\)$/{ | ||
347 | s//\1/ | ||
348 | q | ||
349 | } | ||
350 | /^X\(\/\).*/{ | ||
351 | s//\1/ | ||
352 | q | ||
353 | } | ||
354 | s/.*/./; q'` | ||
355 | test -d "$as_dir" && break | ||
356 | done | ||
357 | test -z "$as_dirs" || eval "mkdir $as_dirs" | ||
358 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | ||
359 | |||
360 | |||
361 | } # as_fn_mkdir_p | ||
362 | |||
363 | # as_fn_executable_p FILE | ||
364 | # ----------------------- | ||
365 | # Test if FILE is an executable regular file. | ||
366 | as_fn_executable_p () | ||
367 | { | ||
368 | test -f "$1" && test -x "$1" | ||
369 | } # as_fn_executable_p | ||
370 | # as_fn_append VAR VALUE | ||
371 | # ---------------------- | ||
372 | # Append the text in VALUE to the end of the definition contained in VAR. Take | ||
373 | # advantage of any shell optimizations that allow amortized linear growth over | ||
374 | # repeated appends, instead of the typical quadratic growth present in naive | ||
375 | # implementations. | ||
376 | if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : | ||
377 | eval 'as_fn_append () | ||
378 | { | ||
379 | eval $1+=\$2 | ||
380 | }' | ||
381 | else | ||
382 | as_fn_append () | ||
383 | { | ||
384 | eval $1=\$$1\$2 | ||
385 | } | ||
386 | fi # as_fn_append | ||
387 | |||
388 | # as_fn_arith ARG... | ||
389 | # ------------------ | ||
390 | # Perform arithmetic evaluation on the ARGs, and store the result in the | ||
391 | # global $as_val. Take advantage of shells that can avoid forks. The arguments | ||
392 | # must be portable across $(()) and expr. | ||
393 | if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : | ||
394 | eval 'as_fn_arith () | ||
395 | { | ||
396 | as_val=$(( $* )) | ||
397 | }' | ||
398 | else | ||
399 | as_fn_arith () | ||
400 | { | ||
401 | as_val=`expr "$@" || test $? -eq 1` | ||
402 | } | ||
403 | fi # as_fn_arith | ||
404 | |||
405 | |||
406 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | ||
407 | # ---------------------------------------- | ||
408 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | ||
409 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | ||
410 | # script with STATUS, using 1 if that was 0. | ||
411 | as_fn_error () | ||
412 | { | ||
413 | as_status=$1; test $as_status -eq 0 && as_status=1 | ||
414 | if test "$4"; then | ||
415 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
416 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | ||
417 | fi | ||
418 | $as_echo "$as_me: error: $2" >&2 | ||
419 | as_fn_exit $as_status | ||
420 | } # as_fn_error | ||
421 | |||
422 | if expr a : '\(a\)' >/dev/null 2>&1 && | ||
423 | test "X`expr 00001 : '.*\(...\)'`" = X001; then | ||
424 | as_expr=expr | ||
425 | else | ||
426 | as_expr=false | ||
427 | fi | ||
428 | |||
429 | if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then | ||
430 | as_basename=basename | ||
431 | else | ||
432 | as_basename=false | ||
433 | fi | ||
434 | |||
435 | if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then | ||
436 | as_dirname=dirname | ||
437 | else | ||
438 | as_dirname=false | ||
439 | fi | ||
440 | |||
441 | as_me=`$as_basename -- "$0" || | ||
442 | $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ | ||
443 | X"$0" : 'X\(//\)$' \| \ | ||
444 | X"$0" : 'X\(/\)' \| . 2>/dev/null || | ||
445 | $as_echo X/"$0" | | ||
446 | sed '/^.*\/\([^/][^/]*\)\/*$/{ | ||
447 | s//\1/ | ||
448 | q | ||
449 | } | ||
450 | /^X\/\(\/\/\)$/{ | ||
451 | s//\1/ | ||
452 | q | ||
453 | } | ||
454 | /^X\/\(\/\).*/{ | ||
455 | s//\1/ | ||
456 | q | ||
457 | } | ||
458 | s/.*/./; q'` | ||
459 | |||
460 | # Avoid depending upon Character Ranges. | ||
461 | as_cr_letters='abcdefghijklmnopqrstuvwxyz' | ||
462 | as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' | ||
463 | as_cr_Letters=$as_cr_letters$as_cr_LETTERS | ||
464 | as_cr_digits='0123456789' | ||
465 | as_cr_alnum=$as_cr_Letters$as_cr_digits | ||
466 | |||
467 | |||
468 | as_lineno_1=$LINENO as_lineno_1a=$LINENO | ||
469 | as_lineno_2=$LINENO as_lineno_2a=$LINENO | ||
470 | eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && | ||
471 | test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { | ||
472 | # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) | ||
473 | sed -n ' | ||
474 | p | ||
475 | /[$]LINENO/= | ||
476 | ' <$as_myself | | ||
477 | sed ' | ||
478 | s/[$]LINENO.*/&-/ | ||
479 | t lineno | ||
480 | b | ||
481 | :lineno | ||
482 | N | ||
483 | :loop | ||
484 | s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ | ||
485 | t loop | ||
486 | s/-\n.*// | ||
487 | ' >$as_me.lineno && | ||
488 | chmod +x "$as_me.lineno" || | ||
489 | { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } | ||
490 | |||
491 | # If we had to re-execute with $CONFIG_SHELL, we're ensured to have | ||
492 | # already done that, so ensure we don't try to do so again and fall | ||
493 | # in an infinite loop. This has already happened in practice. | ||
494 | _as_can_reexec=no; export _as_can_reexec | ||
495 | # Don't try to exec as it changes $[0], causing all sort of problems | ||
496 | # (the dirname of $[0] is not the place where we might find the | ||
497 | # original and so on. Autoconf is especially sensitive to this). | ||
498 | . "./$as_me.lineno" | ||
499 | # Exit status is that of the last command. | ||
500 | exit | ||
501 | } | ||
502 | |||
503 | ECHO_C= ECHO_N= ECHO_T= | ||
504 | case `echo -n x` in #((((( | ||
505 | -n*) | ||
506 | case `echo 'xy\c'` in | ||
507 | *c*) ECHO_T=' ';; # ECHO_T is single tab character. | ||
508 | xy) ECHO_C='\c';; | ||
509 | *) echo `echo ksh88 bug on AIX 6.1` > /dev/null | ||
510 | ECHO_T=' ';; | ||
511 | esac;; | ||
512 | *) | ||
513 | ECHO_N='-n';; | ||
514 | esac | ||
515 | |||
516 | rm -f conf$$ conf$$.exe conf$$.file | ||
517 | if test -d conf$$.dir; then | ||
518 | rm -f conf$$.dir/conf$$.file | ||
519 | else | ||
520 | rm -f conf$$.dir | ||
521 | mkdir conf$$.dir 2>/dev/null | ||
522 | fi | ||
523 | if (echo >conf$$.file) 2>/dev/null; then | ||
524 | if ln -s conf$$.file conf$$ 2>/dev/null; then | ||
525 | as_ln_s='ln -s' | ||
526 | # ... but there are two gotchas: | ||
527 | # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. | ||
528 | # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. | ||
529 | # In both cases, we have to default to `cp -pR'. | ||
530 | ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || | ||
531 | as_ln_s='cp -pR' | ||
532 | elif ln conf$$.file conf$$ 2>/dev/null; then | ||
533 | as_ln_s=ln | ||
534 | else | ||
535 | as_ln_s='cp -pR' | ||
536 | fi | ||
537 | else | ||
538 | as_ln_s='cp -pR' | ||
539 | fi | ||
540 | rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file | ||
541 | rmdir conf$$.dir 2>/dev/null | ||
542 | |||
543 | if mkdir -p . 2>/dev/null; then | ||
544 | as_mkdir_p='mkdir -p "$as_dir"' | ||
545 | else | ||
546 | test -d ./-p && rmdir ./-p | ||
547 | as_mkdir_p=false | ||
548 | fi | ||
549 | |||
550 | as_test_x='test -x' | ||
551 | as_executable_p=as_fn_executable_p | ||
552 | |||
553 | # Sed expression to map a string onto a valid CPP name. | ||
554 | as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" | ||
555 | |||
556 | # Sed expression to map a string onto a valid variable name. | ||
557 | as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" | ||
558 | |||
559 | |||
560 | test -n "$DJDIR" || exec 7<&0 </dev/null | ||
561 | exec 6>&1 | ||
562 | |||
563 | # Name of the host. | ||
564 | # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, | ||
565 | # so uname gets run too. | ||
566 | ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` | ||
567 | |||
568 | # | ||
569 | # Initializations. | ||
570 | # | ||
571 | ac_default_prefix=/usr/local | ||
572 | ac_clean_files= | ||
573 | ac_config_libobj_dir=. | ||
574 | LIBOBJS= | ||
575 | cross_compiling=no | ||
576 | subdirs= | ||
577 | MFLAGS= | ||
578 | MAKEFLAGS= | ||
579 | |||
580 | # Identity of this package. | ||
581 | PACKAGE_NAME='OpenSSH' | ||
582 | PACKAGE_TARNAME='openssh' | ||
583 | PACKAGE_VERSION='Portable' | ||
584 | PACKAGE_STRING='OpenSSH Portable' | ||
585 | PACKAGE_BUGREPORT='openssh-unix-dev@mindrot.org' | ||
586 | PACKAGE_URL='' | ||
587 | |||
588 | ac_unique_file="ssh.c" | ||
589 | # Factoring default headers for most tests. | ||
590 | ac_includes_default="\ | ||
591 | #include <stdio.h> | ||
592 | #ifdef HAVE_SYS_TYPES_H | ||
593 | # include <sys/types.h> | ||
594 | #endif | ||
595 | #ifdef HAVE_SYS_STAT_H | ||
596 | # include <sys/stat.h> | ||
597 | #endif | ||
598 | #ifdef STDC_HEADERS | ||
599 | # include <stdlib.h> | ||
600 | # include <stddef.h> | ||
601 | #else | ||
602 | # ifdef HAVE_STDLIB_H | ||
603 | # include <stdlib.h> | ||
604 | # endif | ||
605 | #endif | ||
606 | #ifdef HAVE_STRING_H | ||
607 | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | ||
608 | # include <memory.h> | ||
609 | # endif | ||
610 | # include <string.h> | ||
611 | #endif | ||
612 | #ifdef HAVE_STRINGS_H | ||
613 | # include <strings.h> | ||
614 | #endif | ||
615 | #ifdef HAVE_INTTYPES_H | ||
616 | # include <inttypes.h> | ||
617 | #endif | ||
618 | #ifdef HAVE_STDINT_H | ||
619 | # include <stdint.h> | ||
620 | #endif | ||
621 | #ifdef HAVE_UNISTD_H | ||
622 | # include <unistd.h> | ||
623 | #endif" | ||
624 | |||
625 | ac_subst_vars='LTLIBOBJS | ||
626 | CFLAGS_NOPIE | ||
627 | LDFLAGS_NOPIE | ||
628 | DEPEND | ||
629 | UNSUPPORTED_ALGORITHMS | ||
630 | TEST_MALLOC_OPTIONS | ||
631 | TEST_SSH_UTF8 | ||
632 | TEST_SSH_IPV6 | ||
633 | piddir | ||
634 | user_path | ||
635 | mansubdir | ||
636 | MANTYPE | ||
637 | XAUTH_PATH | ||
638 | STRIP_OPT | ||
639 | xauth_path | ||
640 | PRIVSEP_PATH | ||
641 | K5LIBS | ||
642 | GSSLIBS | ||
643 | KRB5CONF | ||
644 | SSHDLIBS | ||
645 | SSH_PRIVSEP_USER | ||
646 | LIBFIDO2 | ||
647 | SK_DUMMY_LIBRARY | ||
648 | COMMENT_OUT_ECC | ||
649 | TEST_SSH_ECC | ||
650 | PICFLAG | ||
651 | LIBEDIT | ||
652 | PKGCONFIG | ||
653 | LDNSCONFIG | ||
654 | LIBOBJS | ||
655 | LD | ||
656 | PATH_PASSWD_PROG | ||
657 | STARTUP_SCRIPT_SHELL | ||
658 | MAKE_PACKAGE_SUPPORTED | ||
659 | PATH_USERADD_PROG | ||
660 | PATH_GROUPADD_PROG | ||
661 | MANFMT | ||
662 | TEST_SHELL | ||
663 | MANDOC | ||
664 | NROFF | ||
665 | GROFF | ||
666 | SH | ||
667 | TEST_MINUS_S_SH | ||
668 | SED | ||
669 | KILL | ||
670 | CAT | ||
671 | ac_ct_AR | ||
672 | AR | ||
673 | MKDIR_P | ||
674 | INSTALL_DATA | ||
675 | INSTALL_SCRIPT | ||
676 | INSTALL_PROGRAM | ||
677 | RANLIB | ||
678 | AWK | ||
679 | EGREP | ||
680 | GREP | ||
681 | CPP | ||
682 | host_os | ||
683 | host_vendor | ||
684 | host_cpu | ||
685 | host | ||
686 | build_os | ||
687 | build_vendor | ||
688 | build_cpu | ||
689 | build | ||
690 | OBJEXT | ||
691 | EXEEXT | ||
692 | ac_ct_CC | ||
693 | CPPFLAGS | ||
694 | LDFLAGS | ||
695 | CFLAGS | ||
696 | CC | ||
697 | target_alias | ||
698 | host_alias | ||
699 | build_alias | ||
700 | LIBS | ||
701 | ECHO_T | ||
702 | ECHO_N | ||
703 | ECHO_C | ||
704 | DEFS | ||
705 | mandir | ||
706 | localedir | ||
707 | libdir | ||
708 | psdir | ||
709 | pdfdir | ||
710 | dvidir | ||
711 | htmldir | ||
712 | infodir | ||
713 | docdir | ||
714 | oldincludedir | ||
715 | includedir | ||
716 | runstatedir | ||
717 | localstatedir | ||
718 | sharedstatedir | ||
719 | sysconfdir | ||
720 | datadir | ||
721 | datarootdir | ||
722 | libexecdir | ||
723 | sbindir | ||
724 | bindir | ||
725 | program_transform_name | ||
726 | prefix | ||
727 | exec_prefix | ||
728 | PACKAGE_URL | ||
729 | PACKAGE_BUGREPORT | ||
730 | PACKAGE_STRING | ||
731 | PACKAGE_VERSION | ||
732 | PACKAGE_TARNAME | ||
733 | PACKAGE_NAME | ||
734 | PATH_SEPARATOR | ||
735 | SHELL' | ||
736 | ac_subst_files='' | ||
737 | ac_user_opts=' | ||
738 | enable_option_checking | ||
739 | enable_largefile | ||
740 | with_openssl | ||
741 | with_stackprotect | ||
742 | with_hardening | ||
743 | with_rpath | ||
744 | with_cflags | ||
745 | with_cflags_after | ||
746 | with_cppflags | ||
747 | with_ldflags | ||
748 | with_ldflags_after | ||
749 | with_libs | ||
750 | with_Werror | ||
751 | with_solaris_contracts | ||
752 | with_solaris_projects | ||
753 | with_solaris_privs | ||
754 | with_osfsia | ||
755 | with_zlib | ||
756 | with_zlib_version_check | ||
757 | with_ldns | ||
758 | with_libedit | ||
759 | with_audit | ||
760 | with_pie | ||
761 | enable_pkcs11 | ||
762 | enable_security_key | ||
763 | with_security_key_builtin | ||
764 | with_ssl_dir | ||
765 | with_openssl_header_check | ||
766 | with_ssl_engine | ||
767 | with_prngd_port | ||
768 | with_prngd_socket | ||
769 | with_pam | ||
770 | with_pam_service | ||
771 | with_privsep_user | ||
772 | with_sandbox | ||
773 | with_selinux | ||
774 | with_kerberos5 | ||
775 | with_privsep_path | ||
776 | with_xauth | ||
777 | enable_strip | ||
778 | with_maildir | ||
779 | with_mantype | ||
780 | with_md5_passwords | ||
781 | with_shadow | ||
782 | with_ipaddr_display | ||
783 | enable_etc_default_login | ||
784 | with_default_path | ||
785 | with_superuser_path | ||
786 | with_4in6 | ||
787 | with_bsd_auth | ||
788 | with_pid_dir | ||
789 | enable_lastlog | ||
790 | enable_utmp | ||
791 | enable_utmpx | ||
792 | enable_wtmp | ||
793 | enable_wtmpx | ||
794 | enable_libutil | ||
795 | enable_pututline | ||
796 | enable_pututxline | ||
797 | with_lastlog | ||
798 | ' | ||
799 | ac_precious_vars='build_alias | ||
800 | host_alias | ||
801 | target_alias | ||
802 | CC | ||
803 | CFLAGS | ||
804 | LDFLAGS | ||
805 | LIBS | ||
806 | CPPFLAGS | ||
807 | CPP' | ||
808 | |||
809 | |||
810 | # Initialize some variables set by options. | ||
811 | ac_init_help= | ||
812 | ac_init_version=false | ||
813 | ac_unrecognized_opts= | ||
814 | ac_unrecognized_sep= | ||
815 | # The variables have the same names as the options, with | ||
816 | # dashes changed to underlines. | ||
817 | cache_file=/dev/null | ||
818 | exec_prefix=NONE | ||
819 | no_create= | ||
820 | no_recursion= | ||
821 | prefix=NONE | ||
822 | program_prefix=NONE | ||
823 | program_suffix=NONE | ||
824 | program_transform_name=s,x,x, | ||
825 | silent= | ||
826 | site= | ||
827 | srcdir= | ||
828 | verbose= | ||
829 | x_includes=NONE | ||
830 | x_libraries=NONE | ||
831 | |||
832 | # Installation directory options. | ||
833 | # These are left unexpanded so users can "make install exec_prefix=/foo" | ||
834 | # and all the variables that are supposed to be based on exec_prefix | ||
835 | # by default will actually change. | ||
836 | # Use braces instead of parens because sh, perl, etc. also accept them. | ||
837 | # (The list follows the same order as the GNU Coding Standards.) | ||
838 | bindir='${exec_prefix}/bin' | ||
839 | sbindir='${exec_prefix}/sbin' | ||
840 | libexecdir='${exec_prefix}/libexec' | ||
841 | datarootdir='${prefix}/share' | ||
842 | datadir='${datarootdir}' | ||
843 | sysconfdir='${prefix}/etc' | ||
844 | sharedstatedir='${prefix}/com' | ||
845 | localstatedir='${prefix}/var' | ||
846 | runstatedir='${localstatedir}/run' | ||
847 | includedir='${prefix}/include' | ||
848 | oldincludedir='/usr/include' | ||
849 | docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' | ||
850 | infodir='${datarootdir}/info' | ||
851 | htmldir='${docdir}' | ||
852 | dvidir='${docdir}' | ||
853 | pdfdir='${docdir}' | ||
854 | psdir='${docdir}' | ||
855 | libdir='${exec_prefix}/lib' | ||
856 | localedir='${datarootdir}/locale' | ||
857 | mandir='${datarootdir}/man' | ||
858 | |||
859 | ac_prev= | ||
860 | ac_dashdash= | ||
861 | for ac_option | ||
862 | do | ||
863 | # If the previous option needs an argument, assign it. | ||
864 | if test -n "$ac_prev"; then | ||
865 | eval $ac_prev=\$ac_option | ||
866 | ac_prev= | ||
867 | continue | ||
868 | fi | ||
869 | |||
870 | case $ac_option in | ||
871 | *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; | ||
872 | *=) ac_optarg= ;; | ||
873 | *) ac_optarg=yes ;; | ||
874 | esac | ||
875 | |||
876 | # Accept the important Cygnus configure options, so we can diagnose typos. | ||
877 | |||
878 | case $ac_dashdash$ac_option in | ||
879 | --) | ||
880 | ac_dashdash=yes ;; | ||
881 | |||
882 | -bindir | --bindir | --bindi | --bind | --bin | --bi) | ||
883 | ac_prev=bindir ;; | ||
884 | -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) | ||
885 | bindir=$ac_optarg ;; | ||
886 | |||
887 | -build | --build | --buil | --bui | --bu) | ||
888 | ac_prev=build_alias ;; | ||
889 | -build=* | --build=* | --buil=* | --bui=* | --bu=*) | ||
890 | build_alias=$ac_optarg ;; | ||
891 | |||
892 | -cache-file | --cache-file | --cache-fil | --cache-fi \ | ||
893 | | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) | ||
894 | ac_prev=cache_file ;; | ||
895 | -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | ||
896 | | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) | ||
897 | cache_file=$ac_optarg ;; | ||
898 | |||
899 | --config-cache | -C) | ||
900 | cache_file=config.cache ;; | ||
901 | |||
902 | -datadir | --datadir | --datadi | --datad) | ||
903 | ac_prev=datadir ;; | ||
904 | -datadir=* | --datadir=* | --datadi=* | --datad=*) | ||
905 | datadir=$ac_optarg ;; | ||
906 | |||
907 | -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | ||
908 | | --dataroo | --dataro | --datar) | ||
909 | ac_prev=datarootdir ;; | ||
910 | -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | ||
911 | | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) | ||
912 | datarootdir=$ac_optarg ;; | ||
913 | |||
914 | -disable-* | --disable-*) | ||
915 | ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` | ||
916 | # Reject names that are not valid shell variable names. | ||
917 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
918 | as_fn_error $? "invalid feature name: $ac_useropt" | ||
919 | ac_useropt_orig=$ac_useropt | ||
920 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
921 | case $ac_user_opts in | ||
922 | *" | ||
923 | "enable_$ac_useropt" | ||
924 | "*) ;; | ||
925 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" | ||
926 | ac_unrecognized_sep=', ';; | ||
927 | esac | ||
928 | eval enable_$ac_useropt=no ;; | ||
929 | |||
930 | -docdir | --docdir | --docdi | --doc | --do) | ||
931 | ac_prev=docdir ;; | ||
932 | -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) | ||
933 | docdir=$ac_optarg ;; | ||
934 | |||
935 | -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) | ||
936 | ac_prev=dvidir ;; | ||
937 | -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) | ||
938 | dvidir=$ac_optarg ;; | ||
939 | |||
940 | -enable-* | --enable-*) | ||
941 | ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` | ||
942 | # Reject names that are not valid shell variable names. | ||
943 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
944 | as_fn_error $? "invalid feature name: $ac_useropt" | ||
945 | ac_useropt_orig=$ac_useropt | ||
946 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
947 | case $ac_user_opts in | ||
948 | *" | ||
949 | "enable_$ac_useropt" | ||
950 | "*) ;; | ||
951 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" | ||
952 | ac_unrecognized_sep=', ';; | ||
953 | esac | ||
954 | eval enable_$ac_useropt=\$ac_optarg ;; | ||
955 | |||
956 | -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | ||
957 | | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | ||
958 | | --exec | --exe | --ex) | ||
959 | ac_prev=exec_prefix ;; | ||
960 | -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | ||
961 | | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | ||
962 | | --exec=* | --exe=* | --ex=*) | ||
963 | exec_prefix=$ac_optarg ;; | ||
964 | |||
965 | -gas | --gas | --ga | --g) | ||
966 | # Obsolete; use --with-gas. | ||
967 | with_gas=yes ;; | ||
968 | |||
969 | -help | --help | --hel | --he | -h) | ||
970 | ac_init_help=long ;; | ||
971 | -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) | ||
972 | ac_init_help=recursive ;; | ||
973 | -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) | ||
974 | ac_init_help=short ;; | ||
975 | |||
976 | -host | --host | --hos | --ho) | ||
977 | ac_prev=host_alias ;; | ||
978 | -host=* | --host=* | --hos=* | --ho=*) | ||
979 | host_alias=$ac_optarg ;; | ||
980 | |||
981 | -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) | ||
982 | ac_prev=htmldir ;; | ||
983 | -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | ||
984 | | --ht=*) | ||
985 | htmldir=$ac_optarg ;; | ||
986 | |||
987 | -includedir | --includedir | --includedi | --included | --include \ | ||
988 | | --includ | --inclu | --incl | --inc) | ||
989 | ac_prev=includedir ;; | ||
990 | -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | ||
991 | | --includ=* | --inclu=* | --incl=* | --inc=*) | ||
992 | includedir=$ac_optarg ;; | ||
993 | |||
994 | -infodir | --infodir | --infodi | --infod | --info | --inf) | ||
995 | ac_prev=infodir ;; | ||
996 | -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) | ||
997 | infodir=$ac_optarg ;; | ||
998 | |||
999 | -libdir | --libdir | --libdi | --libd) | ||
1000 | ac_prev=libdir ;; | ||
1001 | -libdir=* | --libdir=* | --libdi=* | --libd=*) | ||
1002 | libdir=$ac_optarg ;; | ||
1003 | |||
1004 | -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | ||
1005 | | --libexe | --libex | --libe) | ||
1006 | ac_prev=libexecdir ;; | ||
1007 | -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | ||
1008 | | --libexe=* | --libex=* | --libe=*) | ||
1009 | libexecdir=$ac_optarg ;; | ||
1010 | |||
1011 | -localedir | --localedir | --localedi | --localed | --locale) | ||
1012 | ac_prev=localedir ;; | ||
1013 | -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) | ||
1014 | localedir=$ac_optarg ;; | ||
1015 | |||
1016 | -localstatedir | --localstatedir | --localstatedi | --localstated \ | ||
1017 | | --localstate | --localstat | --localsta | --localst | --locals) | ||
1018 | ac_prev=localstatedir ;; | ||
1019 | -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | ||
1020 | | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) | ||
1021 | localstatedir=$ac_optarg ;; | ||
1022 | |||
1023 | -mandir | --mandir | --mandi | --mand | --man | --ma | --m) | ||
1024 | ac_prev=mandir ;; | ||
1025 | -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) | ||
1026 | mandir=$ac_optarg ;; | ||
1027 | |||
1028 | -nfp | --nfp | --nf) | ||
1029 | # Obsolete; use --without-fp. | ||
1030 | with_fp=no ;; | ||
1031 | |||
1032 | -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | ||
1033 | | --no-cr | --no-c | -n) | ||
1034 | no_create=yes ;; | ||
1035 | |||
1036 | -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | ||
1037 | | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) | ||
1038 | no_recursion=yes ;; | ||
1039 | |||
1040 | -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | ||
1041 | | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | ||
1042 | | --oldin | --oldi | --old | --ol | --o) | ||
1043 | ac_prev=oldincludedir ;; | ||
1044 | -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | ||
1045 | | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | ||
1046 | | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) | ||
1047 | oldincludedir=$ac_optarg ;; | ||
1048 | |||
1049 | -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) | ||
1050 | ac_prev=prefix ;; | ||
1051 | -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) | ||
1052 | prefix=$ac_optarg ;; | ||
1053 | |||
1054 | -program-prefix | --program-prefix | --program-prefi | --program-pref \ | ||
1055 | | --program-pre | --program-pr | --program-p) | ||
1056 | ac_prev=program_prefix ;; | ||
1057 | -program-prefix=* | --program-prefix=* | --program-prefi=* \ | ||
1058 | | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) | ||
1059 | program_prefix=$ac_optarg ;; | ||
1060 | |||
1061 | -program-suffix | --program-suffix | --program-suffi | --program-suff \ | ||
1062 | | --program-suf | --program-su | --program-s) | ||
1063 | ac_prev=program_suffix ;; | ||
1064 | -program-suffix=* | --program-suffix=* | --program-suffi=* \ | ||
1065 | | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) | ||
1066 | program_suffix=$ac_optarg ;; | ||
1067 | |||
1068 | -program-transform-name | --program-transform-name \ | ||
1069 | | --program-transform-nam | --program-transform-na \ | ||
1070 | | --program-transform-n | --program-transform- \ | ||
1071 | | --program-transform | --program-transfor \ | ||
1072 | | --program-transfo | --program-transf \ | ||
1073 | | --program-trans | --program-tran \ | ||
1074 | | --progr-tra | --program-tr | --program-t) | ||
1075 | ac_prev=program_transform_name ;; | ||
1076 | -program-transform-name=* | --program-transform-name=* \ | ||
1077 | | --program-transform-nam=* | --program-transform-na=* \ | ||
1078 | | --program-transform-n=* | --program-transform-=* \ | ||
1079 | | --program-transform=* | --program-transfor=* \ | ||
1080 | | --program-transfo=* | --program-transf=* \ | ||
1081 | | --program-trans=* | --program-tran=* \ | ||
1082 | | --progr-tra=* | --program-tr=* | --program-t=*) | ||
1083 | program_transform_name=$ac_optarg ;; | ||
1084 | |||
1085 | -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) | ||
1086 | ac_prev=pdfdir ;; | ||
1087 | -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) | ||
1088 | pdfdir=$ac_optarg ;; | ||
1089 | |||
1090 | -psdir | --psdir | --psdi | --psd | --ps) | ||
1091 | ac_prev=psdir ;; | ||
1092 | -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) | ||
1093 | psdir=$ac_optarg ;; | ||
1094 | |||
1095 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
1096 | | -silent | --silent | --silen | --sile | --sil) | ||
1097 | silent=yes ;; | ||
1098 | |||
1099 | -runstatedir | --runstatedir | --runstatedi | --runstated \ | ||
1100 | | --runstate | --runstat | --runsta | --runst | --runs \ | ||
1101 | | --run | --ru | --r) | ||
1102 | ac_prev=runstatedir ;; | ||
1103 | -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ | ||
1104 | | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ | ||
1105 | | --run=* | --ru=* | --r=*) | ||
1106 | runstatedir=$ac_optarg ;; | ||
1107 | |||
1108 | -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) | ||
1109 | ac_prev=sbindir ;; | ||
1110 | -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | ||
1111 | | --sbi=* | --sb=*) | ||
1112 | sbindir=$ac_optarg ;; | ||
1113 | |||
1114 | -sharedstatedir | --sharedstatedir | --sharedstatedi \ | ||
1115 | | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | ||
1116 | | --sharedst | --shareds | --shared | --share | --shar \ | ||
1117 | | --sha | --sh) | ||
1118 | ac_prev=sharedstatedir ;; | ||
1119 | -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | ||
1120 | | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | ||
1121 | | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | ||
1122 | | --sha=* | --sh=*) | ||
1123 | sharedstatedir=$ac_optarg ;; | ||
1124 | |||
1125 | -site | --site | --sit) | ||
1126 | ac_prev=site ;; | ||
1127 | -site=* | --site=* | --sit=*) | ||
1128 | site=$ac_optarg ;; | ||
1129 | |||
1130 | -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) | ||
1131 | ac_prev=srcdir ;; | ||
1132 | -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) | ||
1133 | srcdir=$ac_optarg ;; | ||
1134 | |||
1135 | -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | ||
1136 | | --syscon | --sysco | --sysc | --sys | --sy) | ||
1137 | ac_prev=sysconfdir ;; | ||
1138 | -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | ||
1139 | | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) | ||
1140 | sysconfdir=$ac_optarg ;; | ||
1141 | |||
1142 | -target | --target | --targe | --targ | --tar | --ta | --t) | ||
1143 | ac_prev=target_alias ;; | ||
1144 | -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) | ||
1145 | target_alias=$ac_optarg ;; | ||
1146 | |||
1147 | -v | -verbose | --verbose | --verbos | --verbo | --verb) | ||
1148 | verbose=yes ;; | ||
1149 | |||
1150 | -version | --version | --versio | --versi | --vers | -V) | ||
1151 | ac_init_version=: ;; | ||
1152 | |||
1153 | -with-* | --with-*) | ||
1154 | ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` | ||
1155 | # Reject names that are not valid shell variable names. | ||
1156 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
1157 | as_fn_error $? "invalid package name: $ac_useropt" | ||
1158 | ac_useropt_orig=$ac_useropt | ||
1159 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
1160 | case $ac_user_opts in | ||
1161 | *" | ||
1162 | "with_$ac_useropt" | ||
1163 | "*) ;; | ||
1164 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" | ||
1165 | ac_unrecognized_sep=', ';; | ||
1166 | esac | ||
1167 | eval with_$ac_useropt=\$ac_optarg ;; | ||
1168 | |||
1169 | -without-* | --without-*) | ||
1170 | ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` | ||
1171 | # Reject names that are not valid shell variable names. | ||
1172 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | ||
1173 | as_fn_error $? "invalid package name: $ac_useropt" | ||
1174 | ac_useropt_orig=$ac_useropt | ||
1175 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | ||
1176 | case $ac_user_opts in | ||
1177 | *" | ||
1178 | "with_$ac_useropt" | ||
1179 | "*) ;; | ||
1180 | *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" | ||
1181 | ac_unrecognized_sep=', ';; | ||
1182 | esac | ||
1183 | eval with_$ac_useropt=no ;; | ||
1184 | |||
1185 | --x) | ||
1186 | # Obsolete; use --with-x. | ||
1187 | with_x=yes ;; | ||
1188 | |||
1189 | -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | ||
1190 | | --x-incl | --x-inc | --x-in | --x-i) | ||
1191 | ac_prev=x_includes ;; | ||
1192 | -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | ||
1193 | | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) | ||
1194 | x_includes=$ac_optarg ;; | ||
1195 | |||
1196 | -x-libraries | --x-libraries | --x-librarie | --x-librari \ | ||
1197 | | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) | ||
1198 | ac_prev=x_libraries ;; | ||
1199 | -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | ||
1200 | | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) | ||
1201 | x_libraries=$ac_optarg ;; | ||
1202 | |||
1203 | -*) as_fn_error $? "unrecognized option: \`$ac_option' | ||
1204 | Try \`$0 --help' for more information" | ||
1205 | ;; | ||
1206 | |||
1207 | *=*) | ||
1208 | ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` | ||
1209 | # Reject names that are not valid shell variable names. | ||
1210 | case $ac_envvar in #( | ||
1211 | '' | [0-9]* | *[!_$as_cr_alnum]* ) | ||
1212 | as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; | ||
1213 | esac | ||
1214 | eval $ac_envvar=\$ac_optarg | ||
1215 | export $ac_envvar ;; | ||
1216 | |||
1217 | *) | ||
1218 | # FIXME: should be removed in autoconf 3.0. | ||
1219 | $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 | ||
1220 | expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && | ||
1221 | $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 | ||
1222 | : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" | ||
1223 | ;; | ||
1224 | |||
1225 | esac | ||
1226 | done | ||
1227 | |||
1228 | if test -n "$ac_prev"; then | ||
1229 | ac_option=--`echo $ac_prev | sed 's/_/-/g'` | ||
1230 | as_fn_error $? "missing argument to $ac_option" | ||
1231 | fi | ||
1232 | |||
1233 | if test -n "$ac_unrecognized_opts"; then | ||
1234 | case $enable_option_checking in | ||
1235 | no) ;; | ||
1236 | fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; | ||
1237 | *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; | ||
1238 | esac | ||
1239 | fi | ||
1240 | |||
1241 | # Check all directory arguments for consistency. | ||
1242 | for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ | ||
1243 | datadir sysconfdir sharedstatedir localstatedir includedir \ | ||
1244 | oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ | ||
1245 | libdir localedir mandir runstatedir | ||
1246 | do | ||
1247 | eval ac_val=\$$ac_var | ||
1248 | # Remove trailing slashes. | ||
1249 | case $ac_val in | ||
1250 | */ ) | ||
1251 | ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` | ||
1252 | eval $ac_var=\$ac_val;; | ||
1253 | esac | ||
1254 | # Be sure to have absolute directory names. | ||
1255 | case $ac_val in | ||
1256 | [\\/$]* | ?:[\\/]* ) continue;; | ||
1257 | NONE | '' ) case $ac_var in *prefix ) continue;; esac;; | ||
1258 | esac | ||
1259 | as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" | ||
1260 | done | ||
1261 | |||
1262 | # There might be people who depend on the old broken behavior: `$host' | ||
1263 | # used to hold the argument of --host etc. | ||
1264 | # FIXME: To remove some day. | ||
1265 | build=$build_alias | ||
1266 | host=$host_alias | ||
1267 | target=$target_alias | ||
1268 | |||
1269 | # FIXME: To remove some day. | ||
1270 | if test "x$host_alias" != x; then | ||
1271 | if test "x$build_alias" = x; then | ||
1272 | cross_compiling=maybe | ||
1273 | elif test "x$build_alias" != "x$host_alias"; then | ||
1274 | cross_compiling=yes | ||
1275 | fi | ||
1276 | fi | ||
1277 | |||
1278 | ac_tool_prefix= | ||
1279 | test -n "$host_alias" && ac_tool_prefix=$host_alias- | ||
1280 | |||
1281 | test "$silent" = yes && exec 6>/dev/null | ||
1282 | |||
1283 | |||
1284 | ac_pwd=`pwd` && test -n "$ac_pwd" && | ||
1285 | ac_ls_di=`ls -di .` && | ||
1286 | ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || | ||
1287 | as_fn_error $? "working directory cannot be determined" | ||
1288 | test "X$ac_ls_di" = "X$ac_pwd_ls_di" || | ||
1289 | as_fn_error $? "pwd does not report name of working directory" | ||
1290 | |||
1291 | |||
1292 | # Find the source files, if location was not specified. | ||
1293 | if test -z "$srcdir"; then | ||
1294 | ac_srcdir_defaulted=yes | ||
1295 | # Try the directory containing this script, then the parent directory. | ||
1296 | ac_confdir=`$as_dirname -- "$as_myself" || | ||
1297 | $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
1298 | X"$as_myself" : 'X\(//\)[^/]' \| \ | ||
1299 | X"$as_myself" : 'X\(//\)$' \| \ | ||
1300 | X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || | ||
1301 | $as_echo X"$as_myself" | | ||
1302 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
1303 | s//\1/ | ||
1304 | q | ||
1305 | } | ||
1306 | /^X\(\/\/\)[^/].*/{ | ||
1307 | s//\1/ | ||
1308 | q | ||
1309 | } | ||
1310 | /^X\(\/\/\)$/{ | ||
1311 | s//\1/ | ||
1312 | q | ||
1313 | } | ||
1314 | /^X\(\/\).*/{ | ||
1315 | s//\1/ | ||
1316 | q | ||
1317 | } | ||
1318 | s/.*/./; q'` | ||
1319 | srcdir=$ac_confdir | ||
1320 | if test ! -r "$srcdir/$ac_unique_file"; then | ||
1321 | srcdir=.. | ||
1322 | fi | ||
1323 | else | ||
1324 | ac_srcdir_defaulted=no | ||
1325 | fi | ||
1326 | if test ! -r "$srcdir/$ac_unique_file"; then | ||
1327 | test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." | ||
1328 | as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" | ||
1329 | fi | ||
1330 | ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" | ||
1331 | ac_abs_confdir=`( | ||
1332 | cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" | ||
1333 | pwd)` | ||
1334 | # When building in place, set srcdir=. | ||
1335 | if test "$ac_abs_confdir" = "$ac_pwd"; then | ||
1336 | srcdir=. | ||
1337 | fi | ||
1338 | # Remove unnecessary trailing slashes from srcdir. | ||
1339 | # Double slashes in file names in object file debugging info | ||
1340 | # mess up M-x gdb in Emacs. | ||
1341 | case $srcdir in | ||
1342 | */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; | ||
1343 | esac | ||
1344 | for ac_var in $ac_precious_vars; do | ||
1345 | eval ac_env_${ac_var}_set=\${${ac_var}+set} | ||
1346 | eval ac_env_${ac_var}_value=\$${ac_var} | ||
1347 | eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} | ||
1348 | eval ac_cv_env_${ac_var}_value=\$${ac_var} | ||
1349 | done | ||
1350 | |||
1351 | # | ||
1352 | # Report the --help message. | ||
1353 | # | ||
1354 | if test "$ac_init_help" = "long"; then | ||
1355 | # Omit some internal or obsolete options to make the list less imposing. | ||
1356 | # This message is too long to be a string in the A/UX 3.1 sh. | ||
1357 | cat <<_ACEOF | ||
1358 | \`configure' configures OpenSSH Portable to adapt to many kinds of systems. | ||
1359 | |||
1360 | Usage: $0 [OPTION]... [VAR=VALUE]... | ||
1361 | |||
1362 | To assign environment variables (e.g., CC, CFLAGS...), specify them as | ||
1363 | VAR=VALUE. See below for descriptions of some of the useful variables. | ||
1364 | |||
1365 | Defaults for the options are specified in brackets. | ||
1366 | |||
1367 | Configuration: | ||
1368 | -h, --help display this help and exit | ||
1369 | --help=short display options specific to this package | ||
1370 | --help=recursive display the short help of all the included packages | ||
1371 | -V, --version display version information and exit | ||
1372 | -q, --quiet, --silent do not print \`checking ...' messages | ||
1373 | --cache-file=FILE cache test results in FILE [disabled] | ||
1374 | -C, --config-cache alias for \`--cache-file=config.cache' | ||
1375 | -n, --no-create do not create output files | ||
1376 | --srcdir=DIR find the sources in DIR [configure dir or \`..'] | ||
1377 | |||
1378 | Installation directories: | ||
1379 | --prefix=PREFIX install architecture-independent files in PREFIX | ||
1380 | [$ac_default_prefix] | ||
1381 | --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX | ||
1382 | [PREFIX] | ||
1383 | |||
1384 | By default, \`make install' will install all the files in | ||
1385 | \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify | ||
1386 | an installation prefix other than \`$ac_default_prefix' using \`--prefix', | ||
1387 | for instance \`--prefix=\$HOME'. | ||
1388 | |||
1389 | For better control, use the options below. | ||
1390 | |||
1391 | Fine tuning of the installation directories: | ||
1392 | --bindir=DIR user executables [EPREFIX/bin] | ||
1393 | --sbindir=DIR system admin executables [EPREFIX/sbin] | ||
1394 | --libexecdir=DIR program executables [EPREFIX/libexec] | ||
1395 | --sysconfdir=DIR read-only single-machine data [PREFIX/etc] | ||
1396 | --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] | ||
1397 | --localstatedir=DIR modifiable single-machine data [PREFIX/var] | ||
1398 | --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] | ||
1399 | --libdir=DIR object code libraries [EPREFIX/lib] | ||
1400 | --includedir=DIR C header files [PREFIX/include] | ||
1401 | --oldincludedir=DIR C header files for non-gcc [/usr/include] | ||
1402 | --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] | ||
1403 | --datadir=DIR read-only architecture-independent data [DATAROOTDIR] | ||
1404 | --infodir=DIR info documentation [DATAROOTDIR/info] | ||
1405 | --localedir=DIR locale-dependent data [DATAROOTDIR/locale] | ||
1406 | --mandir=DIR man documentation [DATAROOTDIR/man] | ||
1407 | --docdir=DIR documentation root [DATAROOTDIR/doc/openssh] | ||
1408 | --htmldir=DIR html documentation [DOCDIR] | ||
1409 | --dvidir=DIR dvi documentation [DOCDIR] | ||
1410 | --pdfdir=DIR pdf documentation [DOCDIR] | ||
1411 | --psdir=DIR ps documentation [DOCDIR] | ||
1412 | _ACEOF | ||
1413 | |||
1414 | cat <<\_ACEOF | ||
1415 | |||
1416 | System types: | ||
1417 | --build=BUILD configure for building on BUILD [guessed] | ||
1418 | --host=HOST cross-compile to build programs to run on HOST [BUILD] | ||
1419 | _ACEOF | ||
1420 | fi | ||
1421 | |||
1422 | if test -n "$ac_init_help"; then | ||
1423 | case $ac_init_help in | ||
1424 | short | recursive ) echo "Configuration of OpenSSH Portable:";; | ||
1425 | esac | ||
1426 | cat <<\_ACEOF | ||
1427 | |||
1428 | Optional Features: | ||
1429 | --disable-option-checking ignore unrecognized --enable/--with options | ||
1430 | --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) | ||
1431 | --enable-FEATURE[=ARG] include FEATURE [ARG=yes] | ||
1432 | --disable-largefile omit support for large files | ||
1433 | --disable-pkcs11 disable PKCS#11 support code [no] | ||
1434 | --disable-security-key disable U2F/FIDO support code no | ||
1435 | --disable-strip Disable calling strip(1) on install | ||
1436 | --disable-etc-default-login Disable using PATH from /etc/default/login no | ||
1437 | --disable-lastlog disable use of lastlog even if detected no | ||
1438 | --disable-utmp disable use of utmp even if detected no | ||
1439 | --disable-utmpx disable use of utmpx even if detected no | ||
1440 | --disable-wtmp disable use of wtmp even if detected no | ||
1441 | --disable-wtmpx disable use of wtmpx even if detected no | ||
1442 | --disable-libutil disable use of libutil (login() etc.) no | ||
1443 | --disable-pututline disable use of pututline() etc. (uwtmp) no | ||
1444 | --disable-pututxline disable use of pututxline() etc. (uwtmpx) no | ||
1445 | |||
1446 | Optional Packages: | ||
1447 | --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] | ||
1448 | --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) | ||
1449 | --without-openssl Disable use of OpenSSL; use only limited internal crypto **EXPERIMENTAL** | ||
1450 | --without-stackprotect Don't use compiler's stack protection | ||
1451 | --without-hardening Don't use toolchain hardening flags | ||
1452 | --without-rpath Disable auto-added -R linker paths | ||
1453 | --with-cflags Specify additional flags to pass to compiler | ||
1454 | --with-cflags-after Specify additional flags to pass to compiler after configure | ||
1455 | --with-cppflags Specify additional flags to pass to preprocessor | ||
1456 | --with-ldflags Specify additional flags to pass to linker | ||
1457 | --with-ldflags-after Specify additional flags to pass to linker after configure | ||
1458 | --with-libs Specify additional libraries to link with | ||
1459 | --with-Werror Build main code with -Werror | ||
1460 | --with-solaris-contracts Enable Solaris process contracts (experimental) | ||
1461 | --with-solaris-projects Enable Solaris projects (experimental) | ||
1462 | --with-solaris-privs Enable Solaris/Illumos privileges (experimental) | ||
1463 | --with-osfsia Enable Digital Unix SIA | ||
1464 | --with-zlib=PATH Use zlib in PATH | ||
1465 | --without-zlib-version-check Disable zlib version check | ||
1466 | --with-ldns[=PATH] Use ldns for DNSSEC support (optionally in PATH) | ||
1467 | --with-libedit[=PATH] Enable libedit support for sftp | ||
1468 | --with-audit=module Enable audit support (modules=debug,bsm,linux) | ||
1469 | --with-pie Build Position Independent Executables if possible | ||
1470 | --with-security-key-builtin include builtin U2F/FIDO support | ||
1471 | --with-ssl-dir=PATH Specify path to OpenSSL installation | ||
1472 | --without-openssl-header-check Disable OpenSSL version consistency check | ||
1473 | --with-ssl-engine Enable OpenSSL (hardware) ENGINE support | ||
1474 | --with-prngd-port=PORT read entropy from PRNGD/EGD TCP localhost:PORT | ||
1475 | --with-prngd-socket=FILE read entropy from PRNGD/EGD socket FILE (default=/var/run/egd-pool) | ||
1476 | --with-pam Enable PAM support | ||
1477 | --with-pam-service=name Specify PAM service name | ||
1478 | --with-privsep-user=user Specify non-privileged user for privilege separation | ||
1479 | --with-sandbox=style Specify privilege separation sandbox (no, capsicum, darwin, rlimit, seccomp_filter, systrace, pledge) | ||
1480 | --with-selinux Enable SELinux support | ||
1481 | --with-kerberos5=PATH Enable Kerberos 5 support | ||
1482 | --with-privsep-path=xxx Path for privilege separation chroot (default=/var/empty) | ||
1483 | --with-xauth=PATH Specify path to xauth program | ||
1484 | --with-maildir=/path/to/mail Specify your system mail directory | ||
1485 | --with-mantype=man|cat|doc Set man page type | ||
1486 | --with-md5-passwords Enable use of MD5 passwords | ||
1487 | --without-shadow Disable shadow password support | ||
1488 | --with-ipaddr-display Use ip address instead of hostname in $DISPLAY | ||
1489 | --with-default-path= Specify default $PATH environment for server | ||
1490 | --with-superuser-path= Specify different path for super-user | ||
1491 | --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses | ||
1492 | --with-bsd-auth Enable BSD auth support | ||
1493 | --with-pid-dir=PATH Specify location of sshd.pid file | ||
1494 | --with-lastlog=FILE|DIR specify lastlog location common locations | ||
1495 | |||
1496 | Some influential environment variables: | ||
1497 | CC C compiler command | ||
1498 | CFLAGS C compiler flags | ||
1499 | LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a | ||
1500 | nonstandard directory <lib dir> | ||
1501 | LIBS libraries to pass to the linker, e.g. -l<library> | ||
1502 | CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if | ||
1503 | you have headers in a nonstandard directory <include dir> | ||
1504 | CPP C preprocessor | ||
1505 | |||
1506 | Use these variables to override the choices made by `configure' or to help | ||
1507 | it to find libraries and programs with nonstandard names/locations. | ||
1508 | |||
1509 | Report bugs to <openssh-unix-dev@mindrot.org>. | ||
1510 | _ACEOF | ||
1511 | ac_status=$? | ||
1512 | fi | ||
1513 | |||
1514 | if test "$ac_init_help" = "recursive"; then | ||
1515 | # If there are subdirs, report their specific --help. | ||
1516 | for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue | ||
1517 | test -d "$ac_dir" || | ||
1518 | { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || | ||
1519 | continue | ||
1520 | ac_builddir=. | ||
1521 | |||
1522 | case "$ac_dir" in | ||
1523 | .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
1524 | *) | ||
1525 | ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` | ||
1526 | # A ".." for each directory in $ac_dir_suffix. | ||
1527 | ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` | ||
1528 | case $ac_top_builddir_sub in | ||
1529 | "") ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
1530 | *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; | ||
1531 | esac ;; | ||
1532 | esac | ||
1533 | ac_abs_top_builddir=$ac_pwd | ||
1534 | ac_abs_builddir=$ac_pwd$ac_dir_suffix | ||
1535 | # for backward compatibility: | ||
1536 | ac_top_builddir=$ac_top_build_prefix | ||
1537 | |||
1538 | case $srcdir in | ||
1539 | .) # We are building in place. | ||
1540 | ac_srcdir=. | ||
1541 | ac_top_srcdir=$ac_top_builddir_sub | ||
1542 | ac_abs_top_srcdir=$ac_pwd ;; | ||
1543 | [\\/]* | ?:[\\/]* ) # Absolute name. | ||
1544 | ac_srcdir=$srcdir$ac_dir_suffix; | ||
1545 | ac_top_srcdir=$srcdir | ||
1546 | ac_abs_top_srcdir=$srcdir ;; | ||
1547 | *) # Relative name. | ||
1548 | ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix | ||
1549 | ac_top_srcdir=$ac_top_build_prefix$srcdir | ||
1550 | ac_abs_top_srcdir=$ac_pwd/$srcdir ;; | ||
1551 | esac | ||
1552 | ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix | ||
1553 | |||
1554 | cd "$ac_dir" || { ac_status=$?; continue; } | ||
1555 | # Check for guested configure. | ||
1556 | if test -f "$ac_srcdir/configure.gnu"; then | ||
1557 | echo && | ||
1558 | $SHELL "$ac_srcdir/configure.gnu" --help=recursive | ||
1559 | elif test -f "$ac_srcdir/configure"; then | ||
1560 | echo && | ||
1561 | $SHELL "$ac_srcdir/configure" --help=recursive | ||
1562 | else | ||
1563 | $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 | ||
1564 | fi || ac_status=$? | ||
1565 | cd "$ac_pwd" || { ac_status=$?; break; } | ||
1566 | done | ||
1567 | fi | ||
1568 | |||
1569 | test -n "$ac_init_help" && exit $ac_status | ||
1570 | if $ac_init_version; then | ||
1571 | cat <<\_ACEOF | ||
1572 | OpenSSH configure Portable | ||
1573 | generated by GNU Autoconf 2.69 | ||
1574 | |||
1575 | Copyright (C) 2012 Free Software Foundation, Inc. | ||
1576 | This configure script is free software; the Free Software Foundation | ||
1577 | gives unlimited permission to copy, distribute and modify it. | ||
1578 | _ACEOF | ||
1579 | exit | ||
1580 | fi | ||
1581 | |||
1582 | ## ------------------------ ## | ||
1583 | ## Autoconf initialization. ## | ||
1584 | ## ------------------------ ## | ||
1585 | |||
1586 | # ac_fn_c_try_compile LINENO | ||
1587 | # -------------------------- | ||
1588 | # Try to compile conftest.$ac_ext, and return whether this succeeded. | ||
1589 | ac_fn_c_try_compile () | ||
1590 | { | ||
1591 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1592 | rm -f conftest.$ac_objext | ||
1593 | if { { ac_try="$ac_compile" | ||
1594 | case "(($ac_try" in | ||
1595 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1596 | *) ac_try_echo=$ac_try;; | ||
1597 | esac | ||
1598 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1599 | $as_echo "$ac_try_echo"; } >&5 | ||
1600 | (eval "$ac_compile") 2>conftest.err | ||
1601 | ac_status=$? | ||
1602 | if test -s conftest.err; then | ||
1603 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1604 | cat conftest.er1 >&5 | ||
1605 | mv -f conftest.er1 conftest.err | ||
1606 | fi | ||
1607 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1608 | test $ac_status = 0; } && { | ||
1609 | test -z "$ac_c_werror_flag" || | ||
1610 | test ! -s conftest.err | ||
1611 | } && test -s conftest.$ac_objext; then : | ||
1612 | ac_retval=0 | ||
1613 | else | ||
1614 | $as_echo "$as_me: failed program was:" >&5 | ||
1615 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1616 | |||
1617 | ac_retval=1 | ||
1618 | fi | ||
1619 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1620 | as_fn_set_status $ac_retval | ||
1621 | |||
1622 | } # ac_fn_c_try_compile | ||
1623 | |||
1624 | # ac_fn_c_try_run LINENO | ||
1625 | # ---------------------- | ||
1626 | # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes | ||
1627 | # that executables *can* be run. | ||
1628 | ac_fn_c_try_run () | ||
1629 | { | ||
1630 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1631 | if { { ac_try="$ac_link" | ||
1632 | case "(($ac_try" in | ||
1633 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1634 | *) ac_try_echo=$ac_try;; | ||
1635 | esac | ||
1636 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1637 | $as_echo "$ac_try_echo"; } >&5 | ||
1638 | (eval "$ac_link") 2>&5 | ||
1639 | ac_status=$? | ||
1640 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1641 | test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' | ||
1642 | { { case "(($ac_try" in | ||
1643 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1644 | *) ac_try_echo=$ac_try;; | ||
1645 | esac | ||
1646 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1647 | $as_echo "$ac_try_echo"; } >&5 | ||
1648 | (eval "$ac_try") 2>&5 | ||
1649 | ac_status=$? | ||
1650 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1651 | test $ac_status = 0; }; }; then : | ||
1652 | ac_retval=0 | ||
1653 | else | ||
1654 | $as_echo "$as_me: program exited with status $ac_status" >&5 | ||
1655 | $as_echo "$as_me: failed program was:" >&5 | ||
1656 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1657 | |||
1658 | ac_retval=$ac_status | ||
1659 | fi | ||
1660 | rm -rf conftest.dSYM conftest_ipa8_conftest.oo | ||
1661 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1662 | as_fn_set_status $ac_retval | ||
1663 | |||
1664 | } # ac_fn_c_try_run | ||
1665 | |||
1666 | # ac_fn_c_try_cpp LINENO | ||
1667 | # ---------------------- | ||
1668 | # Try to preprocess conftest.$ac_ext, and return whether this succeeded. | ||
1669 | ac_fn_c_try_cpp () | ||
1670 | { | ||
1671 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1672 | if { { ac_try="$ac_cpp conftest.$ac_ext" | ||
1673 | case "(($ac_try" in | ||
1674 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1675 | *) ac_try_echo=$ac_try;; | ||
1676 | esac | ||
1677 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1678 | $as_echo "$ac_try_echo"; } >&5 | ||
1679 | (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err | ||
1680 | ac_status=$? | ||
1681 | if test -s conftest.err; then | ||
1682 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1683 | cat conftest.er1 >&5 | ||
1684 | mv -f conftest.er1 conftest.err | ||
1685 | fi | ||
1686 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1687 | test $ac_status = 0; } > conftest.i && { | ||
1688 | test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || | ||
1689 | test ! -s conftest.err | ||
1690 | }; then : | ||
1691 | ac_retval=0 | ||
1692 | else | ||
1693 | $as_echo "$as_me: failed program was:" >&5 | ||
1694 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1695 | |||
1696 | ac_retval=1 | ||
1697 | fi | ||
1698 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1699 | as_fn_set_status $ac_retval | ||
1700 | |||
1701 | } # ac_fn_c_try_cpp | ||
1702 | |||
1703 | # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES | ||
1704 | # ------------------------------------------------------- | ||
1705 | # Tests whether HEADER exists and can be compiled using the include files in | ||
1706 | # INCLUDES, setting the cache variable VAR accordingly. | ||
1707 | ac_fn_c_check_header_compile () | ||
1708 | { | ||
1709 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1710 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1711 | $as_echo_n "checking for $2... " >&6; } | ||
1712 | if eval \${$3+:} false; then : | ||
1713 | $as_echo_n "(cached) " >&6 | ||
1714 | else | ||
1715 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1716 | /* end confdefs.h. */ | ||
1717 | $4 | ||
1718 | #include <$2> | ||
1719 | _ACEOF | ||
1720 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1721 | eval "$3=yes" | ||
1722 | else | ||
1723 | eval "$3=no" | ||
1724 | fi | ||
1725 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1726 | fi | ||
1727 | eval ac_res=\$$3 | ||
1728 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1729 | $as_echo "$ac_res" >&6; } | ||
1730 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1731 | |||
1732 | } # ac_fn_c_check_header_compile | ||
1733 | |||
1734 | # ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES | ||
1735 | # --------------------------------------------- | ||
1736 | # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR | ||
1737 | # accordingly. | ||
1738 | ac_fn_c_check_decl () | ||
1739 | { | ||
1740 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1741 | as_decl_name=`echo $2|sed 's/ *(.*//'` | ||
1742 | as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` | ||
1743 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 | ||
1744 | $as_echo_n "checking whether $as_decl_name is declared... " >&6; } | ||
1745 | if eval \${$3+:} false; then : | ||
1746 | $as_echo_n "(cached) " >&6 | ||
1747 | else | ||
1748 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1749 | /* end confdefs.h. */ | ||
1750 | $4 | ||
1751 | int | ||
1752 | main () | ||
1753 | { | ||
1754 | #ifndef $as_decl_name | ||
1755 | #ifdef __cplusplus | ||
1756 | (void) $as_decl_use; | ||
1757 | #else | ||
1758 | (void) $as_decl_name; | ||
1759 | #endif | ||
1760 | #endif | ||
1761 | |||
1762 | ; | ||
1763 | return 0; | ||
1764 | } | ||
1765 | _ACEOF | ||
1766 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1767 | eval "$3=yes" | ||
1768 | else | ||
1769 | eval "$3=no" | ||
1770 | fi | ||
1771 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1772 | fi | ||
1773 | eval ac_res=\$$3 | ||
1774 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1775 | $as_echo "$ac_res" >&6; } | ||
1776 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1777 | |||
1778 | } # ac_fn_c_check_decl | ||
1779 | |||
1780 | # ac_fn_c_try_link LINENO | ||
1781 | # ----------------------- | ||
1782 | # Try to link conftest.$ac_ext, and return whether this succeeded. | ||
1783 | ac_fn_c_try_link () | ||
1784 | { | ||
1785 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1786 | rm -f conftest.$ac_objext conftest$ac_exeext | ||
1787 | if { { ac_try="$ac_link" | ||
1788 | case "(($ac_try" in | ||
1789 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
1790 | *) ac_try_echo=$ac_try;; | ||
1791 | esac | ||
1792 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
1793 | $as_echo "$ac_try_echo"; } >&5 | ||
1794 | (eval "$ac_link") 2>conftest.err | ||
1795 | ac_status=$? | ||
1796 | if test -s conftest.err; then | ||
1797 | grep -v '^ *+' conftest.err >conftest.er1 | ||
1798 | cat conftest.er1 >&5 | ||
1799 | mv -f conftest.er1 conftest.err | ||
1800 | fi | ||
1801 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
1802 | test $ac_status = 0; } && { | ||
1803 | test -z "$ac_c_werror_flag" || | ||
1804 | test ! -s conftest.err | ||
1805 | } && test -s conftest$ac_exeext && { | ||
1806 | test "$cross_compiling" = yes || | ||
1807 | test -x conftest$ac_exeext | ||
1808 | }; then : | ||
1809 | ac_retval=0 | ||
1810 | else | ||
1811 | $as_echo "$as_me: failed program was:" >&5 | ||
1812 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
1813 | |||
1814 | ac_retval=1 | ||
1815 | fi | ||
1816 | # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information | ||
1817 | # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would | ||
1818 | # interfere with the next link command; also delete a directory that is | ||
1819 | # left behind by Apple's compiler. We do this before executing the actions. | ||
1820 | rm -rf conftest.dSYM conftest_ipa8_conftest.oo | ||
1821 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1822 | as_fn_set_status $ac_retval | ||
1823 | |||
1824 | } # ac_fn_c_try_link | ||
1825 | |||
1826 | # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES | ||
1827 | # ------------------------------------------------------- | ||
1828 | # Tests whether HEADER exists, giving a warning if it cannot be compiled using | ||
1829 | # the include files in INCLUDES and setting the cache variable VAR | ||
1830 | # accordingly. | ||
1831 | ac_fn_c_check_header_mongrel () | ||
1832 | { | ||
1833 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1834 | if eval \${$3+:} false; then : | ||
1835 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1836 | $as_echo_n "checking for $2... " >&6; } | ||
1837 | if eval \${$3+:} false; then : | ||
1838 | $as_echo_n "(cached) " >&6 | ||
1839 | fi | ||
1840 | eval ac_res=\$$3 | ||
1841 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1842 | $as_echo "$ac_res" >&6; } | ||
1843 | else | ||
1844 | # Is the header compilable? | ||
1845 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 | ||
1846 | $as_echo_n "checking $2 usability... " >&6; } | ||
1847 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1848 | /* end confdefs.h. */ | ||
1849 | $4 | ||
1850 | #include <$2> | ||
1851 | _ACEOF | ||
1852 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1853 | ac_header_compiler=yes | ||
1854 | else | ||
1855 | ac_header_compiler=no | ||
1856 | fi | ||
1857 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1858 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 | ||
1859 | $as_echo "$ac_header_compiler" >&6; } | ||
1860 | |||
1861 | # Is the header present? | ||
1862 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 | ||
1863 | $as_echo_n "checking $2 presence... " >&6; } | ||
1864 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1865 | /* end confdefs.h. */ | ||
1866 | #include <$2> | ||
1867 | _ACEOF | ||
1868 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
1869 | ac_header_preproc=yes | ||
1870 | else | ||
1871 | ac_header_preproc=no | ||
1872 | fi | ||
1873 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
1874 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 | ||
1875 | $as_echo "$ac_header_preproc" >&6; } | ||
1876 | |||
1877 | # So? What about this header? | ||
1878 | case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( | ||
1879 | yes:no: ) | ||
1880 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 | ||
1881 | $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} | ||
1882 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 | ||
1883 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} | ||
1884 | ;; | ||
1885 | no:yes:* ) | ||
1886 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 | ||
1887 | $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} | ||
1888 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 | ||
1889 | $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} | ||
1890 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 | ||
1891 | $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} | ||
1892 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 | ||
1893 | $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} | ||
1894 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 | ||
1895 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} | ||
1896 | ( $as_echo "## ------------------------------------------- ## | ||
1897 | ## Report this to openssh-unix-dev@mindrot.org ## | ||
1898 | ## ------------------------------------------- ##" | ||
1899 | ) | sed "s/^/$as_me: WARNING: /" >&2 | ||
1900 | ;; | ||
1901 | esac | ||
1902 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
1903 | $as_echo_n "checking for $2... " >&6; } | ||
1904 | if eval \${$3+:} false; then : | ||
1905 | $as_echo_n "(cached) " >&6 | ||
1906 | else | ||
1907 | eval "$3=\$ac_header_compiler" | ||
1908 | fi | ||
1909 | eval ac_res=\$$3 | ||
1910 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
1911 | $as_echo "$ac_res" >&6; } | ||
1912 | fi | ||
1913 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
1914 | |||
1915 | } # ac_fn_c_check_header_mongrel | ||
1916 | |||
1917 | # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES | ||
1918 | # -------------------------------------------- | ||
1919 | # Tries to find the compile-time value of EXPR in a program that includes | ||
1920 | # INCLUDES, setting VAR accordingly. Returns whether the value could be | ||
1921 | # computed | ||
1922 | ac_fn_c_compute_int () | ||
1923 | { | ||
1924 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
1925 | if test "$cross_compiling" = yes; then | ||
1926 | # Depending upon the size, compute the lo and hi bounds. | ||
1927 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1928 | /* end confdefs.h. */ | ||
1929 | $4 | ||
1930 | int | ||
1931 | main () | ||
1932 | { | ||
1933 | static int test_array [1 - 2 * !(($2) >= 0)]; | ||
1934 | test_array [0] = 0; | ||
1935 | return test_array [0]; | ||
1936 | |||
1937 | ; | ||
1938 | return 0; | ||
1939 | } | ||
1940 | _ACEOF | ||
1941 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1942 | ac_lo=0 ac_mid=0 | ||
1943 | while :; do | ||
1944 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1945 | /* end confdefs.h. */ | ||
1946 | $4 | ||
1947 | int | ||
1948 | main () | ||
1949 | { | ||
1950 | static int test_array [1 - 2 * !(($2) <= $ac_mid)]; | ||
1951 | test_array [0] = 0; | ||
1952 | return test_array [0]; | ||
1953 | |||
1954 | ; | ||
1955 | return 0; | ||
1956 | } | ||
1957 | _ACEOF | ||
1958 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1959 | ac_hi=$ac_mid; break | ||
1960 | else | ||
1961 | as_fn_arith $ac_mid + 1 && ac_lo=$as_val | ||
1962 | if test $ac_lo -le $ac_mid; then | ||
1963 | ac_lo= ac_hi= | ||
1964 | break | ||
1965 | fi | ||
1966 | as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val | ||
1967 | fi | ||
1968 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
1969 | done | ||
1970 | else | ||
1971 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1972 | /* end confdefs.h. */ | ||
1973 | $4 | ||
1974 | int | ||
1975 | main () | ||
1976 | { | ||
1977 | static int test_array [1 - 2 * !(($2) < 0)]; | ||
1978 | test_array [0] = 0; | ||
1979 | return test_array [0]; | ||
1980 | |||
1981 | ; | ||
1982 | return 0; | ||
1983 | } | ||
1984 | _ACEOF | ||
1985 | if ac_fn_c_try_compile "$LINENO"; then : | ||
1986 | ac_hi=-1 ac_mid=-1 | ||
1987 | while :; do | ||
1988 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
1989 | /* end confdefs.h. */ | ||
1990 | $4 | ||
1991 | int | ||
1992 | main () | ||
1993 | { | ||
1994 | static int test_array [1 - 2 * !(($2) >= $ac_mid)]; | ||
1995 | test_array [0] = 0; | ||
1996 | return test_array [0]; | ||
1997 | |||
1998 | ; | ||
1999 | return 0; | ||
2000 | } | ||
2001 | _ACEOF | ||
2002 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2003 | ac_lo=$ac_mid; break | ||
2004 | else | ||
2005 | as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val | ||
2006 | if test $ac_mid -le $ac_hi; then | ||
2007 | ac_lo= ac_hi= | ||
2008 | break | ||
2009 | fi | ||
2010 | as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val | ||
2011 | fi | ||
2012 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2013 | done | ||
2014 | else | ||
2015 | ac_lo= ac_hi= | ||
2016 | fi | ||
2017 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2018 | fi | ||
2019 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2020 | # Binary search between lo and hi bounds. | ||
2021 | while test "x$ac_lo" != "x$ac_hi"; do | ||
2022 | as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val | ||
2023 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2024 | /* end confdefs.h. */ | ||
2025 | $4 | ||
2026 | int | ||
2027 | main () | ||
2028 | { | ||
2029 | static int test_array [1 - 2 * !(($2) <= $ac_mid)]; | ||
2030 | test_array [0] = 0; | ||
2031 | return test_array [0]; | ||
2032 | |||
2033 | ; | ||
2034 | return 0; | ||
2035 | } | ||
2036 | _ACEOF | ||
2037 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2038 | ac_hi=$ac_mid | ||
2039 | else | ||
2040 | as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val | ||
2041 | fi | ||
2042 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2043 | done | ||
2044 | case $ac_lo in #(( | ||
2045 | ?*) eval "$3=\$ac_lo"; ac_retval=0 ;; | ||
2046 | '') ac_retval=1 ;; | ||
2047 | esac | ||
2048 | else | ||
2049 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2050 | /* end confdefs.h. */ | ||
2051 | $4 | ||
2052 | static long int longval () { return $2; } | ||
2053 | static unsigned long int ulongval () { return $2; } | ||
2054 | #include <stdio.h> | ||
2055 | #include <stdlib.h> | ||
2056 | int | ||
2057 | main () | ||
2058 | { | ||
2059 | |||
2060 | FILE *f = fopen ("conftest.val", "w"); | ||
2061 | if (! f) | ||
2062 | return 1; | ||
2063 | if (($2) < 0) | ||
2064 | { | ||
2065 | long int i = longval (); | ||
2066 | if (i != ($2)) | ||
2067 | return 1; | ||
2068 | fprintf (f, "%ld", i); | ||
2069 | } | ||
2070 | else | ||
2071 | { | ||
2072 | unsigned long int i = ulongval (); | ||
2073 | if (i != ($2)) | ||
2074 | return 1; | ||
2075 | fprintf (f, "%lu", i); | ||
2076 | } | ||
2077 | /* Do not output a trailing newline, as this causes \r\n confusion | ||
2078 | on some platforms. */ | ||
2079 | return ferror (f) || fclose (f) != 0; | ||
2080 | |||
2081 | ; | ||
2082 | return 0; | ||
2083 | } | ||
2084 | _ACEOF | ||
2085 | if ac_fn_c_try_run "$LINENO"; then : | ||
2086 | echo >>conftest.val; read $3 <conftest.val; ac_retval=0 | ||
2087 | else | ||
2088 | ac_retval=1 | ||
2089 | fi | ||
2090 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
2091 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
2092 | rm -f conftest.val | ||
2093 | |||
2094 | fi | ||
2095 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2096 | as_fn_set_status $ac_retval | ||
2097 | |||
2098 | } # ac_fn_c_compute_int | ||
2099 | |||
2100 | # ac_fn_c_check_func LINENO FUNC VAR | ||
2101 | # ---------------------------------- | ||
2102 | # Tests whether FUNC exists, setting the cache variable VAR accordingly | ||
2103 | ac_fn_c_check_func () | ||
2104 | { | ||
2105 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
2106 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
2107 | $as_echo_n "checking for $2... " >&6; } | ||
2108 | if eval \${$3+:} false; then : | ||
2109 | $as_echo_n "(cached) " >&6 | ||
2110 | else | ||
2111 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2112 | /* end confdefs.h. */ | ||
2113 | /* Define $2 to an innocuous variant, in case <limits.h> declares $2. | ||
2114 | For example, HP-UX 11i <limits.h> declares gettimeofday. */ | ||
2115 | #define $2 innocuous_$2 | ||
2116 | |||
2117 | /* System header to define __stub macros and hopefully few prototypes, | ||
2118 | which can conflict with char $2 (); below. | ||
2119 | Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
2120 | <limits.h> exists even on freestanding compilers. */ | ||
2121 | |||
2122 | #ifdef __STDC__ | ||
2123 | # include <limits.h> | ||
2124 | #else | ||
2125 | # include <assert.h> | ||
2126 | #endif | ||
2127 | |||
2128 | #undef $2 | ||
2129 | |||
2130 | /* Override any GCC internal prototype to avoid an error. | ||
2131 | Use char because int might match the return type of a GCC | ||
2132 | builtin and then its argument prototype would still apply. */ | ||
2133 | #ifdef __cplusplus | ||
2134 | extern "C" | ||
2135 | #endif | ||
2136 | char $2 (); | ||
2137 | /* The GNU C library defines this for functions which it implements | ||
2138 | to always fail with ENOSYS. Some functions are actually named | ||
2139 | something starting with __ and the normal name is an alias. */ | ||
2140 | #if defined __stub_$2 || defined __stub___$2 | ||
2141 | choke me | ||
2142 | #endif | ||
2143 | |||
2144 | int | ||
2145 | main () | ||
2146 | { | ||
2147 | return $2 (); | ||
2148 | ; | ||
2149 | return 0; | ||
2150 | } | ||
2151 | _ACEOF | ||
2152 | if ac_fn_c_try_link "$LINENO"; then : | ||
2153 | eval "$3=yes" | ||
2154 | else | ||
2155 | eval "$3=no" | ||
2156 | fi | ||
2157 | rm -f core conftest.err conftest.$ac_objext \ | ||
2158 | conftest$ac_exeext conftest.$ac_ext | ||
2159 | fi | ||
2160 | eval ac_res=\$$3 | ||
2161 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
2162 | $as_echo "$ac_res" >&6; } | ||
2163 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2164 | |||
2165 | } # ac_fn_c_check_func | ||
2166 | |||
2167 | # ac_fn_c_check_type LINENO TYPE VAR INCLUDES | ||
2168 | # ------------------------------------------- | ||
2169 | # Tests whether TYPE exists after having included INCLUDES, setting cache | ||
2170 | # variable VAR accordingly. | ||
2171 | ac_fn_c_check_type () | ||
2172 | { | ||
2173 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
2174 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | ||
2175 | $as_echo_n "checking for $2... " >&6; } | ||
2176 | if eval \${$3+:} false; then : | ||
2177 | $as_echo_n "(cached) " >&6 | ||
2178 | else | ||
2179 | eval "$3=no" | ||
2180 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2181 | /* end confdefs.h. */ | ||
2182 | $4 | ||
2183 | int | ||
2184 | main () | ||
2185 | { | ||
2186 | if (sizeof ($2)) | ||
2187 | return 0; | ||
2188 | ; | ||
2189 | return 0; | ||
2190 | } | ||
2191 | _ACEOF | ||
2192 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2193 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2194 | /* end confdefs.h. */ | ||
2195 | $4 | ||
2196 | int | ||
2197 | main () | ||
2198 | { | ||
2199 | if (sizeof (($2))) | ||
2200 | return 0; | ||
2201 | ; | ||
2202 | return 0; | ||
2203 | } | ||
2204 | _ACEOF | ||
2205 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2206 | |||
2207 | else | ||
2208 | eval "$3=yes" | ||
2209 | fi | ||
2210 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2211 | fi | ||
2212 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2213 | fi | ||
2214 | eval ac_res=\$$3 | ||
2215 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
2216 | $as_echo "$ac_res" >&6; } | ||
2217 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2218 | |||
2219 | } # ac_fn_c_check_type | ||
2220 | |||
2221 | # ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES | ||
2222 | # ---------------------------------------------------- | ||
2223 | # Tries to find if the field MEMBER exists in type AGGR, after including | ||
2224 | # INCLUDES, setting cache variable VAR accordingly. | ||
2225 | ac_fn_c_check_member () | ||
2226 | { | ||
2227 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
2228 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 | ||
2229 | $as_echo_n "checking for $2.$3... " >&6; } | ||
2230 | if eval \${$4+:} false; then : | ||
2231 | $as_echo_n "(cached) " >&6 | ||
2232 | else | ||
2233 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2234 | /* end confdefs.h. */ | ||
2235 | $5 | ||
2236 | int | ||
2237 | main () | ||
2238 | { | ||
2239 | static $2 ac_aggr; | ||
2240 | if (ac_aggr.$3) | ||
2241 | return 0; | ||
2242 | ; | ||
2243 | return 0; | ||
2244 | } | ||
2245 | _ACEOF | ||
2246 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2247 | eval "$4=yes" | ||
2248 | else | ||
2249 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2250 | /* end confdefs.h. */ | ||
2251 | $5 | ||
2252 | int | ||
2253 | main () | ||
2254 | { | ||
2255 | static $2 ac_aggr; | ||
2256 | if (sizeof ac_aggr.$3) | ||
2257 | return 0; | ||
2258 | ; | ||
2259 | return 0; | ||
2260 | } | ||
2261 | _ACEOF | ||
2262 | if ac_fn_c_try_compile "$LINENO"; then : | ||
2263 | eval "$4=yes" | ||
2264 | else | ||
2265 | eval "$4=no" | ||
2266 | fi | ||
2267 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2268 | fi | ||
2269 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
2270 | fi | ||
2271 | eval ac_res=\$$4 | ||
2272 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
2273 | $as_echo "$ac_res" >&6; } | ||
2274 | eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno | ||
2275 | |||
2276 | } # ac_fn_c_check_member | ||
2277 | cat >config.log <<_ACEOF | ||
2278 | This file contains any messages produced by compilers while | ||
2279 | running configure, to aid debugging if configure makes a mistake. | ||
2280 | |||
2281 | It was created by OpenSSH $as_me Portable, which was | ||
2282 | generated by GNU Autoconf 2.69. Invocation command line was | ||
2283 | |||
2284 | $ $0 $@ | ||
2285 | |||
2286 | _ACEOF | ||
2287 | exec 5>>config.log | ||
2288 | { | ||
2289 | cat <<_ASUNAME | ||
2290 | ## --------- ## | ||
2291 | ## Platform. ## | ||
2292 | ## --------- ## | ||
2293 | |||
2294 | hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` | ||
2295 | uname -m = `(uname -m) 2>/dev/null || echo unknown` | ||
2296 | uname -r = `(uname -r) 2>/dev/null || echo unknown` | ||
2297 | uname -s = `(uname -s) 2>/dev/null || echo unknown` | ||
2298 | uname -v = `(uname -v) 2>/dev/null || echo unknown` | ||
2299 | |||
2300 | /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` | ||
2301 | /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` | ||
2302 | |||
2303 | /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` | ||
2304 | /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` | ||
2305 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` | ||
2306 | /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` | ||
2307 | /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` | ||
2308 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` | ||
2309 | /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` | ||
2310 | |||
2311 | _ASUNAME | ||
2312 | |||
2313 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2314 | for as_dir in $PATH | ||
2315 | do | ||
2316 | IFS=$as_save_IFS | ||
2317 | test -z "$as_dir" && as_dir=. | ||
2318 | $as_echo "PATH: $as_dir" | ||
2319 | done | ||
2320 | IFS=$as_save_IFS | ||
2321 | |||
2322 | } >&5 | ||
2323 | |||
2324 | cat >&5 <<_ACEOF | ||
2325 | |||
2326 | |||
2327 | ## ----------- ## | ||
2328 | ## Core tests. ## | ||
2329 | ## ----------- ## | ||
2330 | |||
2331 | _ACEOF | ||
2332 | |||
2333 | |||
2334 | # Keep a trace of the command line. | ||
2335 | # Strip out --no-create and --no-recursion so they do not pile up. | ||
2336 | # Strip out --silent because we don't want to record it for future runs. | ||
2337 | # Also quote any args containing shell meta-characters. | ||
2338 | # Make two passes to allow for proper duplicate-argument suppression. | ||
2339 | ac_configure_args= | ||
2340 | ac_configure_args0= | ||
2341 | ac_configure_args1= | ||
2342 | ac_must_keep_next=false | ||
2343 | for ac_pass in 1 2 | ||
2344 | do | ||
2345 | for ac_arg | ||
2346 | do | ||
2347 | case $ac_arg in | ||
2348 | -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; | ||
2349 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
2350 | | -silent | --silent | --silen | --sile | --sil) | ||
2351 | continue ;; | ||
2352 | *\'*) | ||
2353 | ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
2354 | esac | ||
2355 | case $ac_pass in | ||
2356 | 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; | ||
2357 | 2) | ||
2358 | as_fn_append ac_configure_args1 " '$ac_arg'" | ||
2359 | if test $ac_must_keep_next = true; then | ||
2360 | ac_must_keep_next=false # Got value, back to normal. | ||
2361 | else | ||
2362 | case $ac_arg in | ||
2363 | *=* | --config-cache | -C | -disable-* | --disable-* \ | ||
2364 | | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | ||
2365 | | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | ||
2366 | | -with-* | --with-* | -without-* | --without-* | --x) | ||
2367 | case "$ac_configure_args0 " in | ||
2368 | "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; | ||
2369 | esac | ||
2370 | ;; | ||
2371 | -* ) ac_must_keep_next=true ;; | ||
2372 | esac | ||
2373 | fi | ||
2374 | as_fn_append ac_configure_args " '$ac_arg'" | ||
2375 | ;; | ||
2376 | esac | ||
2377 | done | ||
2378 | done | ||
2379 | { ac_configure_args0=; unset ac_configure_args0;} | ||
2380 | { ac_configure_args1=; unset ac_configure_args1;} | ||
2381 | |||
2382 | # When interrupted or exit'd, cleanup temporary files, and complete | ||
2383 | # config.log. We remove comments because anyway the quotes in there | ||
2384 | # would cause problems or look ugly. | ||
2385 | # WARNING: Use '\'' to represent an apostrophe within the trap. | ||
2386 | # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. | ||
2387 | trap 'exit_status=$? | ||
2388 | # Save into config.log some information that might help in debugging. | ||
2389 | { | ||
2390 | echo | ||
2391 | |||
2392 | $as_echo "## ---------------- ## | ||
2393 | ## Cache variables. ## | ||
2394 | ## ---------------- ##" | ||
2395 | echo | ||
2396 | # The following way of writing the cache mishandles newlines in values, | ||
2397 | ( | ||
2398 | for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do | ||
2399 | eval ac_val=\$$ac_var | ||
2400 | case $ac_val in #( | ||
2401 | *${as_nl}*) | ||
2402 | case $ac_var in #( | ||
2403 | *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 | ||
2404 | $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | ||
2405 | esac | ||
2406 | case $ac_var in #( | ||
2407 | _ | IFS | as_nl) ;; #( | ||
2408 | BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( | ||
2409 | *) { eval $ac_var=; unset $ac_var;} ;; | ||
2410 | esac ;; | ||
2411 | esac | ||
2412 | done | ||
2413 | (set) 2>&1 | | ||
2414 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( | ||
2415 | *${as_nl}ac_space=\ *) | ||
2416 | sed -n \ | ||
2417 | "s/'\''/'\''\\\\'\'''\''/g; | ||
2418 | s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" | ||
2419 | ;; #( | ||
2420 | *) | ||
2421 | sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" | ||
2422 | ;; | ||
2423 | esac | | ||
2424 | sort | ||
2425 | ) | ||
2426 | echo | ||
2427 | |||
2428 | $as_echo "## ----------------- ## | ||
2429 | ## Output variables. ## | ||
2430 | ## ----------------- ##" | ||
2431 | echo | ||
2432 | for ac_var in $ac_subst_vars | ||
2433 | do | ||
2434 | eval ac_val=\$$ac_var | ||
2435 | case $ac_val in | ||
2436 | *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; | ||
2437 | esac | ||
2438 | $as_echo "$ac_var='\''$ac_val'\''" | ||
2439 | done | sort | ||
2440 | echo | ||
2441 | |||
2442 | if test -n "$ac_subst_files"; then | ||
2443 | $as_echo "## ------------------- ## | ||
2444 | ## File substitutions. ## | ||
2445 | ## ------------------- ##" | ||
2446 | echo | ||
2447 | for ac_var in $ac_subst_files | ||
2448 | do | ||
2449 | eval ac_val=\$$ac_var | ||
2450 | case $ac_val in | ||
2451 | *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; | ||
2452 | esac | ||
2453 | $as_echo "$ac_var='\''$ac_val'\''" | ||
2454 | done | sort | ||
2455 | echo | ||
2456 | fi | ||
2457 | |||
2458 | if test -s confdefs.h; then | ||
2459 | $as_echo "## ----------- ## | ||
2460 | ## confdefs.h. ## | ||
2461 | ## ----------- ##" | ||
2462 | echo | ||
2463 | cat confdefs.h | ||
2464 | echo | ||
2465 | fi | ||
2466 | test "$ac_signal" != 0 && | ||
2467 | $as_echo "$as_me: caught signal $ac_signal" | ||
2468 | $as_echo "$as_me: exit $exit_status" | ||
2469 | } >&5 | ||
2470 | rm -f core *.core core.conftest.* && | ||
2471 | rm -f -r conftest* confdefs* conf$$* $ac_clean_files && | ||
2472 | exit $exit_status | ||
2473 | ' 0 | ||
2474 | for ac_signal in 1 2 13 15; do | ||
2475 | trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal | ||
2476 | done | ||
2477 | ac_signal=0 | ||
2478 | |||
2479 | # confdefs.h avoids OS command line length limits that DEFS can exceed. | ||
2480 | rm -f -r conftest* confdefs.h | ||
2481 | |||
2482 | $as_echo "/* confdefs.h */" > confdefs.h | ||
2483 | |||
2484 | # Predefined preprocessor variables. | ||
2485 | |||
2486 | cat >>confdefs.h <<_ACEOF | ||
2487 | #define PACKAGE_NAME "$PACKAGE_NAME" | ||
2488 | _ACEOF | ||
2489 | |||
2490 | cat >>confdefs.h <<_ACEOF | ||
2491 | #define PACKAGE_TARNAME "$PACKAGE_TARNAME" | ||
2492 | _ACEOF | ||
2493 | |||
2494 | cat >>confdefs.h <<_ACEOF | ||
2495 | #define PACKAGE_VERSION "$PACKAGE_VERSION" | ||
2496 | _ACEOF | ||
2497 | |||
2498 | cat >>confdefs.h <<_ACEOF | ||
2499 | #define PACKAGE_STRING "$PACKAGE_STRING" | ||
2500 | _ACEOF | ||
2501 | |||
2502 | cat >>confdefs.h <<_ACEOF | ||
2503 | #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" | ||
2504 | _ACEOF | ||
2505 | |||
2506 | cat >>confdefs.h <<_ACEOF | ||
2507 | #define PACKAGE_URL "$PACKAGE_URL" | ||
2508 | _ACEOF | ||
2509 | |||
2510 | |||
2511 | # Let the site file select an alternate cache file if it wants to. | ||
2512 | # Prefer an explicitly selected file to automatically selected ones. | ||
2513 | ac_site_file1=NONE | ||
2514 | ac_site_file2=NONE | ||
2515 | if test -n "$CONFIG_SITE"; then | ||
2516 | # We do not want a PATH search for config.site. | ||
2517 | case $CONFIG_SITE in #(( | ||
2518 | -*) ac_site_file1=./$CONFIG_SITE;; | ||
2519 | */*) ac_site_file1=$CONFIG_SITE;; | ||
2520 | *) ac_site_file1=./$CONFIG_SITE;; | ||
2521 | esac | ||
2522 | elif test "x$prefix" != xNONE; then | ||
2523 | ac_site_file1=$prefix/share/config.site | ||
2524 | ac_site_file2=$prefix/etc/config.site | ||
2525 | else | ||
2526 | ac_site_file1=$ac_default_prefix/share/config.site | ||
2527 | ac_site_file2=$ac_default_prefix/etc/config.site | ||
2528 | fi | ||
2529 | for ac_site_file in "$ac_site_file1" "$ac_site_file2" | ||
2530 | do | ||
2531 | test "x$ac_site_file" = xNONE && continue | ||
2532 | if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then | ||
2533 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 | ||
2534 | $as_echo "$as_me: loading site script $ac_site_file" >&6;} | ||
2535 | sed 's/^/| /' "$ac_site_file" >&5 | ||
2536 | . "$ac_site_file" \ | ||
2537 | || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2538 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2539 | as_fn_error $? "failed to load site script $ac_site_file | ||
2540 | See \`config.log' for more details" "$LINENO" 5; } | ||
2541 | fi | ||
2542 | done | ||
2543 | |||
2544 | if test -r "$cache_file"; then | ||
2545 | # Some versions of bash will fail to source /dev/null (special files | ||
2546 | # actually), so we avoid doing that. DJGPP emulates it as a regular file. | ||
2547 | if test /dev/null != "$cache_file" && test -f "$cache_file"; then | ||
2548 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 | ||
2549 | $as_echo "$as_me: loading cache $cache_file" >&6;} | ||
2550 | case $cache_file in | ||
2551 | [\\/]* | ?:[\\/]* ) . "$cache_file";; | ||
2552 | *) . "./$cache_file";; | ||
2553 | esac | ||
2554 | fi | ||
2555 | else | ||
2556 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 | ||
2557 | $as_echo "$as_me: creating cache $cache_file" >&6;} | ||
2558 | >$cache_file | ||
2559 | fi | ||
2560 | |||
2561 | # Check that the precious variables saved in the cache have kept the same | ||
2562 | # value. | ||
2563 | ac_cache_corrupted=false | ||
2564 | for ac_var in $ac_precious_vars; do | ||
2565 | eval ac_old_set=\$ac_cv_env_${ac_var}_set | ||
2566 | eval ac_new_set=\$ac_env_${ac_var}_set | ||
2567 | eval ac_old_val=\$ac_cv_env_${ac_var}_value | ||
2568 | eval ac_new_val=\$ac_env_${ac_var}_value | ||
2569 | case $ac_old_set,$ac_new_set in | ||
2570 | set,) | ||
2571 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 | ||
2572 | $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} | ||
2573 | ac_cache_corrupted=: ;; | ||
2574 | ,set) | ||
2575 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 | ||
2576 | $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} | ||
2577 | ac_cache_corrupted=: ;; | ||
2578 | ,);; | ||
2579 | *) | ||
2580 | if test "x$ac_old_val" != "x$ac_new_val"; then | ||
2581 | # differences in whitespace do not lead to failure. | ||
2582 | ac_old_val_w=`echo x $ac_old_val` | ||
2583 | ac_new_val_w=`echo x $ac_new_val` | ||
2584 | if test "$ac_old_val_w" != "$ac_new_val_w"; then | ||
2585 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 | ||
2586 | $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} | ||
2587 | ac_cache_corrupted=: | ||
2588 | else | ||
2589 | { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 | ||
2590 | $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} | ||
2591 | eval $ac_var=\$ac_old_val | ||
2592 | fi | ||
2593 | { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 | ||
2594 | $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} | ||
2595 | { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 | ||
2596 | $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} | ||
2597 | fi;; | ||
2598 | esac | ||
2599 | # Pass precious variables to config.status. | ||
2600 | if test "$ac_new_set" = set; then | ||
2601 | case $ac_new_val in | ||
2602 | *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
2603 | *) ac_arg=$ac_var=$ac_new_val ;; | ||
2604 | esac | ||
2605 | case " $ac_configure_args " in | ||
2606 | *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. | ||
2607 | *) as_fn_append ac_configure_args " '$ac_arg'" ;; | ||
2608 | esac | ||
2609 | fi | ||
2610 | done | ||
2611 | if $ac_cache_corrupted; then | ||
2612 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2613 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2614 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 | ||
2615 | $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} | ||
2616 | as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 | ||
2617 | fi | ||
2618 | ## -------------------- ## | ||
2619 | ## Main body of script. ## | ||
2620 | ## -------------------- ## | ||
2621 | |||
2622 | ac_ext=c | ||
2623 | ac_cpp='$CPP $CPPFLAGS' | ||
2624 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2625 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2626 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2627 | |||
2628 | |||
2629 | |||
2630 | |||
2631 | ac_ext=c | ||
2632 | ac_cpp='$CPP $CPPFLAGS' | ||
2633 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2634 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2635 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2636 | |||
2637 | |||
2638 | ac_config_headers="$ac_config_headers config.h" | ||
2639 | |||
2640 | ac_ext=c | ||
2641 | ac_cpp='$CPP $CPPFLAGS' | ||
2642 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
2643 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
2644 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
2645 | if test -n "$ac_tool_prefix"; then | ||
2646 | for ac_prog in cc gcc | ||
2647 | do | ||
2648 | # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. | ||
2649 | set dummy $ac_tool_prefix$ac_prog; ac_word=$2 | ||
2650 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2651 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2652 | if ${ac_cv_prog_CC+:} false; then : | ||
2653 | $as_echo_n "(cached) " >&6 | ||
2654 | else | ||
2655 | if test -n "$CC"; then | ||
2656 | ac_cv_prog_CC="$CC" # Let the user override the test. | ||
2657 | else | ||
2658 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2659 | for as_dir in $PATH | ||
2660 | do | ||
2661 | IFS=$as_save_IFS | ||
2662 | test -z "$as_dir" && as_dir=. | ||
2663 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2664 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
2665 | ac_cv_prog_CC="$ac_tool_prefix$ac_prog" | ||
2666 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2667 | break 2 | ||
2668 | fi | ||
2669 | done | ||
2670 | done | ||
2671 | IFS=$as_save_IFS | ||
2672 | |||
2673 | fi | ||
2674 | fi | ||
2675 | CC=$ac_cv_prog_CC | ||
2676 | if test -n "$CC"; then | ||
2677 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 | ||
2678 | $as_echo "$CC" >&6; } | ||
2679 | else | ||
2680 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2681 | $as_echo "no" >&6; } | ||
2682 | fi | ||
2683 | |||
2684 | |||
2685 | test -n "$CC" && break | ||
2686 | done | ||
2687 | fi | ||
2688 | if test -z "$CC"; then | ||
2689 | ac_ct_CC=$CC | ||
2690 | for ac_prog in cc gcc | ||
2691 | do | ||
2692 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
2693 | set dummy $ac_prog; ac_word=$2 | ||
2694 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
2695 | $as_echo_n "checking for $ac_word... " >&6; } | ||
2696 | if ${ac_cv_prog_ac_ct_CC+:} false; then : | ||
2697 | $as_echo_n "(cached) " >&6 | ||
2698 | else | ||
2699 | if test -n "$ac_ct_CC"; then | ||
2700 | ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. | ||
2701 | else | ||
2702 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
2703 | for as_dir in $PATH | ||
2704 | do | ||
2705 | IFS=$as_save_IFS | ||
2706 | test -z "$as_dir" && as_dir=. | ||
2707 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
2708 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
2709 | ac_cv_prog_ac_ct_CC="$ac_prog" | ||
2710 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
2711 | break 2 | ||
2712 | fi | ||
2713 | done | ||
2714 | done | ||
2715 | IFS=$as_save_IFS | ||
2716 | |||
2717 | fi | ||
2718 | fi | ||
2719 | ac_ct_CC=$ac_cv_prog_ac_ct_CC | ||
2720 | if test -n "$ac_ct_CC"; then | ||
2721 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 | ||
2722 | $as_echo "$ac_ct_CC" >&6; } | ||
2723 | else | ||
2724 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2725 | $as_echo "no" >&6; } | ||
2726 | fi | ||
2727 | |||
2728 | |||
2729 | test -n "$ac_ct_CC" && break | ||
2730 | done | ||
2731 | |||
2732 | if test "x$ac_ct_CC" = x; then | ||
2733 | CC="" | ||
2734 | else | ||
2735 | case $cross_compiling:$ac_tool_warned in | ||
2736 | yes:) | ||
2737 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
2738 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
2739 | ac_tool_warned=yes ;; | ||
2740 | esac | ||
2741 | CC=$ac_ct_CC | ||
2742 | fi | ||
2743 | fi | ||
2744 | |||
2745 | |||
2746 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2747 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2748 | as_fn_error $? "no acceptable C compiler found in \$PATH | ||
2749 | See \`config.log' for more details" "$LINENO" 5; } | ||
2750 | |||
2751 | # Provide some information about the compiler. | ||
2752 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 | ||
2753 | set X $ac_compile | ||
2754 | ac_compiler=$2 | ||
2755 | for ac_option in --version -v -V -qversion; do | ||
2756 | { { ac_try="$ac_compiler $ac_option >&5" | ||
2757 | case "(($ac_try" in | ||
2758 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2759 | *) ac_try_echo=$ac_try;; | ||
2760 | esac | ||
2761 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2762 | $as_echo "$ac_try_echo"; } >&5 | ||
2763 | (eval "$ac_compiler $ac_option >&5") 2>conftest.err | ||
2764 | ac_status=$? | ||
2765 | if test -s conftest.err; then | ||
2766 | sed '10a\ | ||
2767 | ... rest of stderr output deleted ... | ||
2768 | 10q' conftest.err >conftest.er1 | ||
2769 | cat conftest.er1 >&5 | ||
2770 | fi | ||
2771 | rm -f conftest.er1 conftest.err | ||
2772 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2773 | test $ac_status = 0; } | ||
2774 | done | ||
2775 | |||
2776 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2777 | /* end confdefs.h. */ | ||
2778 | |||
2779 | int | ||
2780 | main () | ||
2781 | { | ||
2782 | |||
2783 | ; | ||
2784 | return 0; | ||
2785 | } | ||
2786 | _ACEOF | ||
2787 | ac_clean_files_save=$ac_clean_files | ||
2788 | ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" | ||
2789 | # Try to create an executable without -o first, disregard a.out. | ||
2790 | # It will help us diagnose broken compilers, and finding out an intuition | ||
2791 | # of exeext. | ||
2792 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 | ||
2793 | $as_echo_n "checking whether the C compiler works... " >&6; } | ||
2794 | ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` | ||
2795 | |||
2796 | # The possible output files: | ||
2797 | ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" | ||
2798 | |||
2799 | ac_rmfiles= | ||
2800 | for ac_file in $ac_files | ||
2801 | do | ||
2802 | case $ac_file in | ||
2803 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; | ||
2804 | * ) ac_rmfiles="$ac_rmfiles $ac_file";; | ||
2805 | esac | ||
2806 | done | ||
2807 | rm -f $ac_rmfiles | ||
2808 | |||
2809 | if { { ac_try="$ac_link_default" | ||
2810 | case "(($ac_try" in | ||
2811 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2812 | *) ac_try_echo=$ac_try;; | ||
2813 | esac | ||
2814 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2815 | $as_echo "$ac_try_echo"; } >&5 | ||
2816 | (eval "$ac_link_default") 2>&5 | ||
2817 | ac_status=$? | ||
2818 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2819 | test $ac_status = 0; }; then : | ||
2820 | # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. | ||
2821 | # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' | ||
2822 | # in a Makefile. We should not override ac_cv_exeext if it was cached, | ||
2823 | # so that the user can short-circuit this test for compilers unknown to | ||
2824 | # Autoconf. | ||
2825 | for ac_file in $ac_files '' | ||
2826 | do | ||
2827 | test -f "$ac_file" || continue | ||
2828 | case $ac_file in | ||
2829 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) | ||
2830 | ;; | ||
2831 | [ab].out ) | ||
2832 | # We found the default executable, but exeext='' is most | ||
2833 | # certainly right. | ||
2834 | break;; | ||
2835 | *.* ) | ||
2836 | if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; | ||
2837 | then :; else | ||
2838 | ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` | ||
2839 | fi | ||
2840 | # We set ac_cv_exeext here because the later test for it is not | ||
2841 | # safe: cross compilers may not add the suffix if given an `-o' | ||
2842 | # argument, so we may need to know it at that point already. | ||
2843 | # Even if this section looks crufty: it has the advantage of | ||
2844 | # actually working. | ||
2845 | break;; | ||
2846 | * ) | ||
2847 | break;; | ||
2848 | esac | ||
2849 | done | ||
2850 | test "$ac_cv_exeext" = no && ac_cv_exeext= | ||
2851 | |||
2852 | else | ||
2853 | ac_file='' | ||
2854 | fi | ||
2855 | if test -z "$ac_file"; then : | ||
2856 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
2857 | $as_echo "no" >&6; } | ||
2858 | $as_echo "$as_me: failed program was:" >&5 | ||
2859 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
2860 | |||
2861 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2862 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2863 | as_fn_error 77 "C compiler cannot create executables | ||
2864 | See \`config.log' for more details" "$LINENO" 5; } | ||
2865 | else | ||
2866 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
2867 | $as_echo "yes" >&6; } | ||
2868 | fi | ||
2869 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 | ||
2870 | $as_echo_n "checking for C compiler default output file name... " >&6; } | ||
2871 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 | ||
2872 | $as_echo "$ac_file" >&6; } | ||
2873 | ac_exeext=$ac_cv_exeext | ||
2874 | |||
2875 | rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out | ||
2876 | ac_clean_files=$ac_clean_files_save | ||
2877 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 | ||
2878 | $as_echo_n "checking for suffix of executables... " >&6; } | ||
2879 | if { { ac_try="$ac_link" | ||
2880 | case "(($ac_try" in | ||
2881 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2882 | *) ac_try_echo=$ac_try;; | ||
2883 | esac | ||
2884 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2885 | $as_echo "$ac_try_echo"; } >&5 | ||
2886 | (eval "$ac_link") 2>&5 | ||
2887 | ac_status=$? | ||
2888 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2889 | test $ac_status = 0; }; then : | ||
2890 | # If both `conftest.exe' and `conftest' are `present' (well, observable) | ||
2891 | # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will | ||
2892 | # work properly (i.e., refer to `conftest.exe'), while it won't with | ||
2893 | # `rm'. | ||
2894 | for ac_file in conftest.exe conftest conftest.*; do | ||
2895 | test -f "$ac_file" || continue | ||
2896 | case $ac_file in | ||
2897 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; | ||
2898 | *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` | ||
2899 | break;; | ||
2900 | * ) break;; | ||
2901 | esac | ||
2902 | done | ||
2903 | else | ||
2904 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2905 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2906 | as_fn_error $? "cannot compute suffix of executables: cannot compile and link | ||
2907 | See \`config.log' for more details" "$LINENO" 5; } | ||
2908 | fi | ||
2909 | rm -f conftest conftest$ac_cv_exeext | ||
2910 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 | ||
2911 | $as_echo "$ac_cv_exeext" >&6; } | ||
2912 | |||
2913 | rm -f conftest.$ac_ext | ||
2914 | EXEEXT=$ac_cv_exeext | ||
2915 | ac_exeext=$EXEEXT | ||
2916 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2917 | /* end confdefs.h. */ | ||
2918 | #include <stdio.h> | ||
2919 | int | ||
2920 | main () | ||
2921 | { | ||
2922 | FILE *f = fopen ("conftest.out", "w"); | ||
2923 | return ferror (f) || fclose (f) != 0; | ||
2924 | |||
2925 | ; | ||
2926 | return 0; | ||
2927 | } | ||
2928 | _ACEOF | ||
2929 | ac_clean_files="$ac_clean_files conftest.out" | ||
2930 | # Check that the compiler produces executables we can run. If not, either | ||
2931 | # the compiler is broken, or we cross compile. | ||
2932 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 | ||
2933 | $as_echo_n "checking whether we are cross compiling... " >&6; } | ||
2934 | if test "$cross_compiling" != yes; then | ||
2935 | { { ac_try="$ac_link" | ||
2936 | case "(($ac_try" in | ||
2937 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2938 | *) ac_try_echo=$ac_try;; | ||
2939 | esac | ||
2940 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2941 | $as_echo "$ac_try_echo"; } >&5 | ||
2942 | (eval "$ac_link") 2>&5 | ||
2943 | ac_status=$? | ||
2944 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2945 | test $ac_status = 0; } | ||
2946 | if { ac_try='./conftest$ac_cv_exeext' | ||
2947 | { { case "(($ac_try" in | ||
2948 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2949 | *) ac_try_echo=$ac_try;; | ||
2950 | esac | ||
2951 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2952 | $as_echo "$ac_try_echo"; } >&5 | ||
2953 | (eval "$ac_try") 2>&5 | ||
2954 | ac_status=$? | ||
2955 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
2956 | test $ac_status = 0; }; }; then | ||
2957 | cross_compiling=no | ||
2958 | else | ||
2959 | if test "$cross_compiling" = maybe; then | ||
2960 | cross_compiling=yes | ||
2961 | else | ||
2962 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
2963 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
2964 | as_fn_error $? "cannot run C compiled programs. | ||
2965 | If you meant to cross compile, use \`--host'. | ||
2966 | See \`config.log' for more details" "$LINENO" 5; } | ||
2967 | fi | ||
2968 | fi | ||
2969 | fi | ||
2970 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 | ||
2971 | $as_echo "$cross_compiling" >&6; } | ||
2972 | |||
2973 | rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out | ||
2974 | ac_clean_files=$ac_clean_files_save | ||
2975 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 | ||
2976 | $as_echo_n "checking for suffix of object files... " >&6; } | ||
2977 | if ${ac_cv_objext+:} false; then : | ||
2978 | $as_echo_n "(cached) " >&6 | ||
2979 | else | ||
2980 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
2981 | /* end confdefs.h. */ | ||
2982 | |||
2983 | int | ||
2984 | main () | ||
2985 | { | ||
2986 | |||
2987 | ; | ||
2988 | return 0; | ||
2989 | } | ||
2990 | _ACEOF | ||
2991 | rm -f conftest.o conftest.obj | ||
2992 | if { { ac_try="$ac_compile" | ||
2993 | case "(($ac_try" in | ||
2994 | *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; | ||
2995 | *) ac_try_echo=$ac_try;; | ||
2996 | esac | ||
2997 | eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" | ||
2998 | $as_echo "$ac_try_echo"; } >&5 | ||
2999 | (eval "$ac_compile") 2>&5 | ||
3000 | ac_status=$? | ||
3001 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
3002 | test $ac_status = 0; }; then : | ||
3003 | for ac_file in conftest.o conftest.obj conftest.*; do | ||
3004 | test -f "$ac_file" || continue; | ||
3005 | case $ac_file in | ||
3006 | *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; | ||
3007 | *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` | ||
3008 | break;; | ||
3009 | esac | ||
3010 | done | ||
3011 | else | ||
3012 | $as_echo "$as_me: failed program was:" >&5 | ||
3013 | sed 's/^/| /' conftest.$ac_ext >&5 | ||
3014 | |||
3015 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3016 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3017 | as_fn_error $? "cannot compute suffix of object files: cannot compile | ||
3018 | See \`config.log' for more details" "$LINENO" 5; } | ||
3019 | fi | ||
3020 | rm -f conftest.$ac_cv_objext conftest.$ac_ext | ||
3021 | fi | ||
3022 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 | ||
3023 | $as_echo "$ac_cv_objext" >&6; } | ||
3024 | OBJEXT=$ac_cv_objext | ||
3025 | ac_objext=$OBJEXT | ||
3026 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 | ||
3027 | $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } | ||
3028 | if ${ac_cv_c_compiler_gnu+:} false; then : | ||
3029 | $as_echo_n "(cached) " >&6 | ||
3030 | else | ||
3031 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3032 | /* end confdefs.h. */ | ||
3033 | |||
3034 | int | ||
3035 | main () | ||
3036 | { | ||
3037 | #ifndef __GNUC__ | ||
3038 | choke me | ||
3039 | #endif | ||
3040 | |||
3041 | ; | ||
3042 | return 0; | ||
3043 | } | ||
3044 | _ACEOF | ||
3045 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3046 | ac_compiler_gnu=yes | ||
3047 | else | ||
3048 | ac_compiler_gnu=no | ||
3049 | fi | ||
3050 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3051 | ac_cv_c_compiler_gnu=$ac_compiler_gnu | ||
3052 | |||
3053 | fi | ||
3054 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 | ||
3055 | $as_echo "$ac_cv_c_compiler_gnu" >&6; } | ||
3056 | if test $ac_compiler_gnu = yes; then | ||
3057 | GCC=yes | ||
3058 | else | ||
3059 | GCC= | ||
3060 | fi | ||
3061 | ac_test_CFLAGS=${CFLAGS+set} | ||
3062 | ac_save_CFLAGS=$CFLAGS | ||
3063 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 | ||
3064 | $as_echo_n "checking whether $CC accepts -g... " >&6; } | ||
3065 | if ${ac_cv_prog_cc_g+:} false; then : | ||
3066 | $as_echo_n "(cached) " >&6 | ||
3067 | else | ||
3068 | ac_save_c_werror_flag=$ac_c_werror_flag | ||
3069 | ac_c_werror_flag=yes | ||
3070 | ac_cv_prog_cc_g=no | ||
3071 | CFLAGS="-g" | ||
3072 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3073 | /* end confdefs.h. */ | ||
3074 | |||
3075 | int | ||
3076 | main () | ||
3077 | { | ||
3078 | |||
3079 | ; | ||
3080 | return 0; | ||
3081 | } | ||
3082 | _ACEOF | ||
3083 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3084 | ac_cv_prog_cc_g=yes | ||
3085 | else | ||
3086 | CFLAGS="" | ||
3087 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3088 | /* end confdefs.h. */ | ||
3089 | |||
3090 | int | ||
3091 | main () | ||
3092 | { | ||
3093 | |||
3094 | ; | ||
3095 | return 0; | ||
3096 | } | ||
3097 | _ACEOF | ||
3098 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3099 | |||
3100 | else | ||
3101 | ac_c_werror_flag=$ac_save_c_werror_flag | ||
3102 | CFLAGS="-g" | ||
3103 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3104 | /* end confdefs.h. */ | ||
3105 | |||
3106 | int | ||
3107 | main () | ||
3108 | { | ||
3109 | |||
3110 | ; | ||
3111 | return 0; | ||
3112 | } | ||
3113 | _ACEOF | ||
3114 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3115 | ac_cv_prog_cc_g=yes | ||
3116 | fi | ||
3117 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3118 | fi | ||
3119 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3120 | fi | ||
3121 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3122 | ac_c_werror_flag=$ac_save_c_werror_flag | ||
3123 | fi | ||
3124 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 | ||
3125 | $as_echo "$ac_cv_prog_cc_g" >&6; } | ||
3126 | if test "$ac_test_CFLAGS" = set; then | ||
3127 | CFLAGS=$ac_save_CFLAGS | ||
3128 | elif test $ac_cv_prog_cc_g = yes; then | ||
3129 | if test "$GCC" = yes; then | ||
3130 | CFLAGS="-g -O2" | ||
3131 | else | ||
3132 | CFLAGS="-g" | ||
3133 | fi | ||
3134 | else | ||
3135 | if test "$GCC" = yes; then | ||
3136 | CFLAGS="-O2" | ||
3137 | else | ||
3138 | CFLAGS= | ||
3139 | fi | ||
3140 | fi | ||
3141 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 | ||
3142 | $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } | ||
3143 | if ${ac_cv_prog_cc_c89+:} false; then : | ||
3144 | $as_echo_n "(cached) " >&6 | ||
3145 | else | ||
3146 | ac_cv_prog_cc_c89=no | ||
3147 | ac_save_CC=$CC | ||
3148 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3149 | /* end confdefs.h. */ | ||
3150 | #include <stdarg.h> | ||
3151 | #include <stdio.h> | ||
3152 | struct stat; | ||
3153 | /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ | ||
3154 | struct buf { int x; }; | ||
3155 | FILE * (*rcsopen) (struct buf *, struct stat *, int); | ||
3156 | static char *e (p, i) | ||
3157 | char **p; | ||
3158 | int i; | ||
3159 | { | ||
3160 | return p[i]; | ||
3161 | } | ||
3162 | static char *f (char * (*g) (char **, int), char **p, ...) | ||
3163 | { | ||
3164 | char *s; | ||
3165 | va_list v; | ||
3166 | va_start (v,p); | ||
3167 | s = g (p, va_arg (v,int)); | ||
3168 | va_end (v); | ||
3169 | return s; | ||
3170 | } | ||
3171 | |||
3172 | /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has | ||
3173 | function prototypes and stuff, but not '\xHH' hex character constants. | ||
3174 | These don't provoke an error unfortunately, instead are silently treated | ||
3175 | as 'x'. The following induces an error, until -std is added to get | ||
3176 | proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an | ||
3177 | array size at least. It's necessary to write '\x00'==0 to get something | ||
3178 | that's true only with -std. */ | ||
3179 | int osf4_cc_array ['\x00' == 0 ? 1 : -1]; | ||
3180 | |||
3181 | /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters | ||
3182 | inside strings and character constants. */ | ||
3183 | #define FOO(x) 'x' | ||
3184 | int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; | ||
3185 | |||
3186 | int test (int i, double x); | ||
3187 | struct s1 {int (*f) (int a);}; | ||
3188 | struct s2 {int (*f) (double a);}; | ||
3189 | int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); | ||
3190 | int argc; | ||
3191 | char **argv; | ||
3192 | int | ||
3193 | main () | ||
3194 | { | ||
3195 | return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; | ||
3196 | ; | ||
3197 | return 0; | ||
3198 | } | ||
3199 | _ACEOF | ||
3200 | for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ | ||
3201 | -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" | ||
3202 | do | ||
3203 | CC="$ac_save_CC $ac_arg" | ||
3204 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3205 | ac_cv_prog_cc_c89=$ac_arg | ||
3206 | fi | ||
3207 | rm -f core conftest.err conftest.$ac_objext | ||
3208 | test "x$ac_cv_prog_cc_c89" != "xno" && break | ||
3209 | done | ||
3210 | rm -f conftest.$ac_ext | ||
3211 | CC=$ac_save_CC | ||
3212 | |||
3213 | fi | ||
3214 | # AC_CACHE_VAL | ||
3215 | case "x$ac_cv_prog_cc_c89" in | ||
3216 | x) | ||
3217 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 | ||
3218 | $as_echo "none needed" >&6; } ;; | ||
3219 | xno) | ||
3220 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 | ||
3221 | $as_echo "unsupported" >&6; } ;; | ||
3222 | *) | ||
3223 | CC="$CC $ac_cv_prog_cc_c89" | ||
3224 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 | ||
3225 | $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; | ||
3226 | esac | ||
3227 | if test "x$ac_cv_prog_cc_c89" != xno; then : | ||
3228 | |||
3229 | fi | ||
3230 | |||
3231 | ac_ext=c | ||
3232 | ac_cpp='$CPP $CPPFLAGS' | ||
3233 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3234 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3235 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3236 | |||
3237 | ac_aux_dir= | ||
3238 | for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do | ||
3239 | if test -f "$ac_dir/install-sh"; then | ||
3240 | ac_aux_dir=$ac_dir | ||
3241 | ac_install_sh="$ac_aux_dir/install-sh -c" | ||
3242 | break | ||
3243 | elif test -f "$ac_dir/install.sh"; then | ||
3244 | ac_aux_dir=$ac_dir | ||
3245 | ac_install_sh="$ac_aux_dir/install.sh -c" | ||
3246 | break | ||
3247 | elif test -f "$ac_dir/shtool"; then | ||
3248 | ac_aux_dir=$ac_dir | ||
3249 | ac_install_sh="$ac_aux_dir/shtool install -c" | ||
3250 | break | ||
3251 | fi | ||
3252 | done | ||
3253 | if test -z "$ac_aux_dir"; then | ||
3254 | as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 | ||
3255 | fi | ||
3256 | |||
3257 | # These three variables are undocumented and unsupported, | ||
3258 | # and are intended to be withdrawn in a future Autoconf release. | ||
3259 | # They can cause serious problems if a builder's source tree is in a directory | ||
3260 | # whose full name contains unusual characters. | ||
3261 | ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. | ||
3262 | ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. | ||
3263 | ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. | ||
3264 | |||
3265 | |||
3266 | # Make sure we can run config.sub. | ||
3267 | $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || | ||
3268 | as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 | ||
3269 | |||
3270 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 | ||
3271 | $as_echo_n "checking build system type... " >&6; } | ||
3272 | if ${ac_cv_build+:} false; then : | ||
3273 | $as_echo_n "(cached) " >&6 | ||
3274 | else | ||
3275 | ac_build_alias=$build_alias | ||
3276 | test "x$ac_build_alias" = x && | ||
3277 | ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` | ||
3278 | test "x$ac_build_alias" = x && | ||
3279 | as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 | ||
3280 | ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || | ||
3281 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 | ||
3282 | |||
3283 | fi | ||
3284 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 | ||
3285 | $as_echo "$ac_cv_build" >&6; } | ||
3286 | case $ac_cv_build in | ||
3287 | *-*-*) ;; | ||
3288 | *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; | ||
3289 | esac | ||
3290 | build=$ac_cv_build | ||
3291 | ac_save_IFS=$IFS; IFS='-' | ||
3292 | set x $ac_cv_build | ||
3293 | shift | ||
3294 | build_cpu=$1 | ||
3295 | build_vendor=$2 | ||
3296 | shift; shift | ||
3297 | # Remember, the first character of IFS is used to create $*, | ||
3298 | # except with old shells: | ||
3299 | build_os=$* | ||
3300 | IFS=$ac_save_IFS | ||
3301 | case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac | ||
3302 | |||
3303 | |||
3304 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 | ||
3305 | $as_echo_n "checking host system type... " >&6; } | ||
3306 | if ${ac_cv_host+:} false; then : | ||
3307 | $as_echo_n "(cached) " >&6 | ||
3308 | else | ||
3309 | if test "x$host_alias" = x; then | ||
3310 | ac_cv_host=$ac_cv_build | ||
3311 | else | ||
3312 | ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || | ||
3313 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 | ||
3314 | fi | ||
3315 | |||
3316 | fi | ||
3317 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 | ||
3318 | $as_echo "$ac_cv_host" >&6; } | ||
3319 | case $ac_cv_host in | ||
3320 | *-*-*) ;; | ||
3321 | *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; | ||
3322 | esac | ||
3323 | host=$ac_cv_host | ||
3324 | ac_save_IFS=$IFS; IFS='-' | ||
3325 | set x $ac_cv_host | ||
3326 | shift | ||
3327 | host_cpu=$1 | ||
3328 | host_vendor=$2 | ||
3329 | shift; shift | ||
3330 | # Remember, the first character of IFS is used to create $*, | ||
3331 | # except with old shells: | ||
3332 | host_os=$* | ||
3333 | IFS=$ac_save_IFS | ||
3334 | case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac | ||
3335 | |||
3336 | |||
3337 | |||
3338 | ac_ext=c | ||
3339 | ac_cpp='$CPP $CPPFLAGS' | ||
3340 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3341 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3342 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3343 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 | ||
3344 | $as_echo_n "checking how to run the C preprocessor... " >&6; } | ||
3345 | # On Suns, sometimes $CPP names a directory. | ||
3346 | if test -n "$CPP" && test -d "$CPP"; then | ||
3347 | CPP= | ||
3348 | fi | ||
3349 | if test -z "$CPP"; then | ||
3350 | if ${ac_cv_prog_CPP+:} false; then : | ||
3351 | $as_echo_n "(cached) " >&6 | ||
3352 | else | ||
3353 | # Double quotes because CPP needs to be expanded | ||
3354 | for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" | ||
3355 | do | ||
3356 | ac_preproc_ok=false | ||
3357 | for ac_c_preproc_warn_flag in '' yes | ||
3358 | do | ||
3359 | # Use a header file that comes with gcc, so configuring glibc | ||
3360 | # with a fresh cross-compiler works. | ||
3361 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
3362 | # <limits.h> exists even on freestanding compilers. | ||
3363 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
3364 | # not just through cpp. "Syntax error" is here to catch this case. | ||
3365 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3366 | /* end confdefs.h. */ | ||
3367 | #ifdef __STDC__ | ||
3368 | # include <limits.h> | ||
3369 | #else | ||
3370 | # include <assert.h> | ||
3371 | #endif | ||
3372 | Syntax error | ||
3373 | _ACEOF | ||
3374 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3375 | |||
3376 | else | ||
3377 | # Broken: fails on valid input. | ||
3378 | continue | ||
3379 | fi | ||
3380 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3381 | |||
3382 | # OK, works on sane cases. Now check whether nonexistent headers | ||
3383 | # can be detected and how. | ||
3384 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3385 | /* end confdefs.h. */ | ||
3386 | #include <ac_nonexistent.h> | ||
3387 | _ACEOF | ||
3388 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3389 | # Broken: success on invalid input. | ||
3390 | continue | ||
3391 | else | ||
3392 | # Passes both tests. | ||
3393 | ac_preproc_ok=: | ||
3394 | break | ||
3395 | fi | ||
3396 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3397 | |||
3398 | done | ||
3399 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
3400 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
3401 | if $ac_preproc_ok; then : | ||
3402 | break | ||
3403 | fi | ||
3404 | |||
3405 | done | ||
3406 | ac_cv_prog_CPP=$CPP | ||
3407 | |||
3408 | fi | ||
3409 | CPP=$ac_cv_prog_CPP | ||
3410 | else | ||
3411 | ac_cv_prog_CPP=$CPP | ||
3412 | fi | ||
3413 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 | ||
3414 | $as_echo "$CPP" >&6; } | ||
3415 | ac_preproc_ok=false | ||
3416 | for ac_c_preproc_warn_flag in '' yes | ||
3417 | do | ||
3418 | # Use a header file that comes with gcc, so configuring glibc | ||
3419 | # with a fresh cross-compiler works. | ||
3420 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
3421 | # <limits.h> exists even on freestanding compilers. | ||
3422 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
3423 | # not just through cpp. "Syntax error" is here to catch this case. | ||
3424 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3425 | /* end confdefs.h. */ | ||
3426 | #ifdef __STDC__ | ||
3427 | # include <limits.h> | ||
3428 | #else | ||
3429 | # include <assert.h> | ||
3430 | #endif | ||
3431 | Syntax error | ||
3432 | _ACEOF | ||
3433 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3434 | |||
3435 | else | ||
3436 | # Broken: fails on valid input. | ||
3437 | continue | ||
3438 | fi | ||
3439 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3440 | |||
3441 | # OK, works on sane cases. Now check whether nonexistent headers | ||
3442 | # can be detected and how. | ||
3443 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3444 | /* end confdefs.h. */ | ||
3445 | #include <ac_nonexistent.h> | ||
3446 | _ACEOF | ||
3447 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
3448 | # Broken: success on invalid input. | ||
3449 | continue | ||
3450 | else | ||
3451 | # Passes both tests. | ||
3452 | ac_preproc_ok=: | ||
3453 | break | ||
3454 | fi | ||
3455 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
3456 | |||
3457 | done | ||
3458 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
3459 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
3460 | if $ac_preproc_ok; then : | ||
3461 | |||
3462 | else | ||
3463 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3464 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3465 | as_fn_error $? "C preprocessor \"$CPP\" fails sanity check | ||
3466 | See \`config.log' for more details" "$LINENO" 5; } | ||
3467 | fi | ||
3468 | |||
3469 | ac_ext=c | ||
3470 | ac_cpp='$CPP $CPPFLAGS' | ||
3471 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
3472 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
3473 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
3474 | |||
3475 | |||
3476 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 | ||
3477 | $as_echo_n "checking for grep that handles long lines and -e... " >&6; } | ||
3478 | if ${ac_cv_path_GREP+:} false; then : | ||
3479 | $as_echo_n "(cached) " >&6 | ||
3480 | else | ||
3481 | if test -z "$GREP"; then | ||
3482 | ac_path_GREP_found=false | ||
3483 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
3484 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
3485 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
3486 | do | ||
3487 | IFS=$as_save_IFS | ||
3488 | test -z "$as_dir" && as_dir=. | ||
3489 | for ac_prog in grep ggrep; do | ||
3490 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
3491 | ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" | ||
3492 | as_fn_executable_p "$ac_path_GREP" || continue | ||
3493 | # Check for GNU ac_path_GREP and select it if it is found. | ||
3494 | # Check for GNU $ac_path_GREP | ||
3495 | case `"$ac_path_GREP" --version 2>&1` in | ||
3496 | *GNU*) | ||
3497 | ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; | ||
3498 | *) | ||
3499 | ac_count=0 | ||
3500 | $as_echo_n 0123456789 >"conftest.in" | ||
3501 | while : | ||
3502 | do | ||
3503 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
3504 | mv "conftest.tmp" "conftest.in" | ||
3505 | cp "conftest.in" "conftest.nl" | ||
3506 | $as_echo 'GREP' >> "conftest.nl" | ||
3507 | "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
3508 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
3509 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
3510 | if test $ac_count -gt ${ac_path_GREP_max-0}; then | ||
3511 | # Best one so far, save it but keep looking for a better one | ||
3512 | ac_cv_path_GREP="$ac_path_GREP" | ||
3513 | ac_path_GREP_max=$ac_count | ||
3514 | fi | ||
3515 | # 10*(2^10) chars as input seems more than enough | ||
3516 | test $ac_count -gt 10 && break | ||
3517 | done | ||
3518 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
3519 | esac | ||
3520 | |||
3521 | $ac_path_GREP_found && break 3 | ||
3522 | done | ||
3523 | done | ||
3524 | done | ||
3525 | IFS=$as_save_IFS | ||
3526 | if test -z "$ac_cv_path_GREP"; then | ||
3527 | as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
3528 | fi | ||
3529 | else | ||
3530 | ac_cv_path_GREP=$GREP | ||
3531 | fi | ||
3532 | |||
3533 | fi | ||
3534 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 | ||
3535 | $as_echo "$ac_cv_path_GREP" >&6; } | ||
3536 | GREP="$ac_cv_path_GREP" | ||
3537 | |||
3538 | |||
3539 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 | ||
3540 | $as_echo_n "checking for egrep... " >&6; } | ||
3541 | if ${ac_cv_path_EGREP+:} false; then : | ||
3542 | $as_echo_n "(cached) " >&6 | ||
3543 | else | ||
3544 | if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 | ||
3545 | then ac_cv_path_EGREP="$GREP -E" | ||
3546 | else | ||
3547 | if test -z "$EGREP"; then | ||
3548 | ac_path_EGREP_found=false | ||
3549 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
3550 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
3551 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
3552 | do | ||
3553 | IFS=$as_save_IFS | ||
3554 | test -z "$as_dir" && as_dir=. | ||
3555 | for ac_prog in egrep; do | ||
3556 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
3557 | ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" | ||
3558 | as_fn_executable_p "$ac_path_EGREP" || continue | ||
3559 | # Check for GNU ac_path_EGREP and select it if it is found. | ||
3560 | # Check for GNU $ac_path_EGREP | ||
3561 | case `"$ac_path_EGREP" --version 2>&1` in | ||
3562 | *GNU*) | ||
3563 | ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; | ||
3564 | *) | ||
3565 | ac_count=0 | ||
3566 | $as_echo_n 0123456789 >"conftest.in" | ||
3567 | while : | ||
3568 | do | ||
3569 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
3570 | mv "conftest.tmp" "conftest.in" | ||
3571 | cp "conftest.in" "conftest.nl" | ||
3572 | $as_echo 'EGREP' >> "conftest.nl" | ||
3573 | "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
3574 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
3575 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
3576 | if test $ac_count -gt ${ac_path_EGREP_max-0}; then | ||
3577 | # Best one so far, save it but keep looking for a better one | ||
3578 | ac_cv_path_EGREP="$ac_path_EGREP" | ||
3579 | ac_path_EGREP_max=$ac_count | ||
3580 | fi | ||
3581 | # 10*(2^10) chars as input seems more than enough | ||
3582 | test $ac_count -gt 10 && break | ||
3583 | done | ||
3584 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
3585 | esac | ||
3586 | |||
3587 | $ac_path_EGREP_found && break 3 | ||
3588 | done | ||
3589 | done | ||
3590 | done | ||
3591 | IFS=$as_save_IFS | ||
3592 | if test -z "$ac_cv_path_EGREP"; then | ||
3593 | as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
3594 | fi | ||
3595 | else | ||
3596 | ac_cv_path_EGREP=$EGREP | ||
3597 | fi | ||
3598 | |||
3599 | fi | ||
3600 | fi | ||
3601 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 | ||
3602 | $as_echo "$ac_cv_path_EGREP" >&6; } | ||
3603 | EGREP="$ac_cv_path_EGREP" | ||
3604 | |||
3605 | |||
3606 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 | ||
3607 | $as_echo_n "checking for ANSI C header files... " >&6; } | ||
3608 | if ${ac_cv_header_stdc+:} false; then : | ||
3609 | $as_echo_n "(cached) " >&6 | ||
3610 | else | ||
3611 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3612 | /* end confdefs.h. */ | ||
3613 | #include <stdlib.h> | ||
3614 | #include <stdarg.h> | ||
3615 | #include <string.h> | ||
3616 | #include <float.h> | ||
3617 | |||
3618 | int | ||
3619 | main () | ||
3620 | { | ||
3621 | |||
3622 | ; | ||
3623 | return 0; | ||
3624 | } | ||
3625 | _ACEOF | ||
3626 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3627 | ac_cv_header_stdc=yes | ||
3628 | else | ||
3629 | ac_cv_header_stdc=no | ||
3630 | fi | ||
3631 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3632 | |||
3633 | if test $ac_cv_header_stdc = yes; then | ||
3634 | # SunOS 4.x string.h does not declare mem*, contrary to ANSI. | ||
3635 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3636 | /* end confdefs.h. */ | ||
3637 | #include <string.h> | ||
3638 | |||
3639 | _ACEOF | ||
3640 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
3641 | $EGREP "memchr" >/dev/null 2>&1; then : | ||
3642 | |||
3643 | else | ||
3644 | ac_cv_header_stdc=no | ||
3645 | fi | ||
3646 | rm -f conftest* | ||
3647 | |||
3648 | fi | ||
3649 | |||
3650 | if test $ac_cv_header_stdc = yes; then | ||
3651 | # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. | ||
3652 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3653 | /* end confdefs.h. */ | ||
3654 | #include <stdlib.h> | ||
3655 | |||
3656 | _ACEOF | ||
3657 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
3658 | $EGREP "free" >/dev/null 2>&1; then : | ||
3659 | |||
3660 | else | ||
3661 | ac_cv_header_stdc=no | ||
3662 | fi | ||
3663 | rm -f conftest* | ||
3664 | |||
3665 | fi | ||
3666 | |||
3667 | if test $ac_cv_header_stdc = yes; then | ||
3668 | # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. | ||
3669 | if test "$cross_compiling" = yes; then : | ||
3670 | : | ||
3671 | else | ||
3672 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3673 | /* end confdefs.h. */ | ||
3674 | #include <ctype.h> | ||
3675 | #include <stdlib.h> | ||
3676 | #if ((' ' & 0x0FF) == 0x020) | ||
3677 | # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') | ||
3678 | # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) | ||
3679 | #else | ||
3680 | # define ISLOWER(c) \ | ||
3681 | (('a' <= (c) && (c) <= 'i') \ | ||
3682 | || ('j' <= (c) && (c) <= 'r') \ | ||
3683 | || ('s' <= (c) && (c) <= 'z')) | ||
3684 | # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) | ||
3685 | #endif | ||
3686 | |||
3687 | #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) | ||
3688 | int | ||
3689 | main () | ||
3690 | { | ||
3691 | int i; | ||
3692 | for (i = 0; i < 256; i++) | ||
3693 | if (XOR (islower (i), ISLOWER (i)) | ||
3694 | || toupper (i) != TOUPPER (i)) | ||
3695 | return 2; | ||
3696 | return 0; | ||
3697 | } | ||
3698 | _ACEOF | ||
3699 | if ac_fn_c_try_run "$LINENO"; then : | ||
3700 | |||
3701 | else | ||
3702 | ac_cv_header_stdc=no | ||
3703 | fi | ||
3704 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
3705 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
3706 | fi | ||
3707 | |||
3708 | fi | ||
3709 | fi | ||
3710 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 | ||
3711 | $as_echo "$ac_cv_header_stdc" >&6; } | ||
3712 | if test $ac_cv_header_stdc = yes; then | ||
3713 | |||
3714 | $as_echo "#define STDC_HEADERS 1" >>confdefs.h | ||
3715 | |||
3716 | fi | ||
3717 | |||
3718 | # On IRIX 5.3, sys/types and inttypes.h are conflicting. | ||
3719 | for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ | ||
3720 | inttypes.h stdint.h unistd.h | ||
3721 | do : | ||
3722 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
3723 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default | ||
3724 | " | ||
3725 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
3726 | cat >>confdefs.h <<_ACEOF | ||
3727 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
3728 | _ACEOF | ||
3729 | |||
3730 | fi | ||
3731 | |||
3732 | done | ||
3733 | |||
3734 | |||
3735 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 | ||
3736 | $as_echo_n "checking whether byte ordering is bigendian... " >&6; } | ||
3737 | if ${ac_cv_c_bigendian+:} false; then : | ||
3738 | $as_echo_n "(cached) " >&6 | ||
3739 | else | ||
3740 | ac_cv_c_bigendian=unknown | ||
3741 | # See if we're dealing with a universal compiler. | ||
3742 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3743 | /* end confdefs.h. */ | ||
3744 | #ifndef __APPLE_CC__ | ||
3745 | not a universal capable compiler | ||
3746 | #endif | ||
3747 | typedef int dummy; | ||
3748 | |||
3749 | _ACEOF | ||
3750 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3751 | |||
3752 | # Check for potential -arch flags. It is not universal unless | ||
3753 | # there are at least two -arch flags with different values. | ||
3754 | ac_arch= | ||
3755 | ac_prev= | ||
3756 | for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do | ||
3757 | if test -n "$ac_prev"; then | ||
3758 | case $ac_word in | ||
3759 | i?86 | x86_64 | ppc | ppc64) | ||
3760 | if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then | ||
3761 | ac_arch=$ac_word | ||
3762 | else | ||
3763 | ac_cv_c_bigendian=universal | ||
3764 | break | ||
3765 | fi | ||
3766 | ;; | ||
3767 | esac | ||
3768 | ac_prev= | ||
3769 | elif test "x$ac_word" = "x-arch"; then | ||
3770 | ac_prev=arch | ||
3771 | fi | ||
3772 | done | ||
3773 | fi | ||
3774 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3775 | if test $ac_cv_c_bigendian = unknown; then | ||
3776 | # See if sys/param.h defines the BYTE_ORDER macro. | ||
3777 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3778 | /* end confdefs.h. */ | ||
3779 | #include <sys/types.h> | ||
3780 | #include <sys/param.h> | ||
3781 | |||
3782 | int | ||
3783 | main () | ||
3784 | { | ||
3785 | #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ | ||
3786 | && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ | ||
3787 | && LITTLE_ENDIAN) | ||
3788 | bogus endian macros | ||
3789 | #endif | ||
3790 | |||
3791 | ; | ||
3792 | return 0; | ||
3793 | } | ||
3794 | _ACEOF | ||
3795 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3796 | # It does; now see whether it defined to BIG_ENDIAN or not. | ||
3797 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3798 | /* end confdefs.h. */ | ||
3799 | #include <sys/types.h> | ||
3800 | #include <sys/param.h> | ||
3801 | |||
3802 | int | ||
3803 | main () | ||
3804 | { | ||
3805 | #if BYTE_ORDER != BIG_ENDIAN | ||
3806 | not big endian | ||
3807 | #endif | ||
3808 | |||
3809 | ; | ||
3810 | return 0; | ||
3811 | } | ||
3812 | _ACEOF | ||
3813 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3814 | ac_cv_c_bigendian=yes | ||
3815 | else | ||
3816 | ac_cv_c_bigendian=no | ||
3817 | fi | ||
3818 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3819 | fi | ||
3820 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3821 | fi | ||
3822 | if test $ac_cv_c_bigendian = unknown; then | ||
3823 | # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). | ||
3824 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3825 | /* end confdefs.h. */ | ||
3826 | #include <limits.h> | ||
3827 | |||
3828 | int | ||
3829 | main () | ||
3830 | { | ||
3831 | #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) | ||
3832 | bogus endian macros | ||
3833 | #endif | ||
3834 | |||
3835 | ; | ||
3836 | return 0; | ||
3837 | } | ||
3838 | _ACEOF | ||
3839 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3840 | # It does; now see whether it defined to _BIG_ENDIAN or not. | ||
3841 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3842 | /* end confdefs.h. */ | ||
3843 | #include <limits.h> | ||
3844 | |||
3845 | int | ||
3846 | main () | ||
3847 | { | ||
3848 | #ifndef _BIG_ENDIAN | ||
3849 | not big endian | ||
3850 | #endif | ||
3851 | |||
3852 | ; | ||
3853 | return 0; | ||
3854 | } | ||
3855 | _ACEOF | ||
3856 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3857 | ac_cv_c_bigendian=yes | ||
3858 | else | ||
3859 | ac_cv_c_bigendian=no | ||
3860 | fi | ||
3861 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3862 | fi | ||
3863 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3864 | fi | ||
3865 | if test $ac_cv_c_bigendian = unknown; then | ||
3866 | # Compile a test program. | ||
3867 | if test "$cross_compiling" = yes; then : | ||
3868 | # Try to guess by grepping values from an object file. | ||
3869 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3870 | /* end confdefs.h. */ | ||
3871 | short int ascii_mm[] = | ||
3872 | { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; | ||
3873 | short int ascii_ii[] = | ||
3874 | { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; | ||
3875 | int use_ascii (int i) { | ||
3876 | return ascii_mm[i] + ascii_ii[i]; | ||
3877 | } | ||
3878 | short int ebcdic_ii[] = | ||
3879 | { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; | ||
3880 | short int ebcdic_mm[] = | ||
3881 | { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; | ||
3882 | int use_ebcdic (int i) { | ||
3883 | return ebcdic_mm[i] + ebcdic_ii[i]; | ||
3884 | } | ||
3885 | extern int foo; | ||
3886 | |||
3887 | int | ||
3888 | main () | ||
3889 | { | ||
3890 | return use_ascii (foo) == use_ebcdic (foo); | ||
3891 | ; | ||
3892 | return 0; | ||
3893 | } | ||
3894 | _ACEOF | ||
3895 | if ac_fn_c_try_compile "$LINENO"; then : | ||
3896 | if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then | ||
3897 | ac_cv_c_bigendian=yes | ||
3898 | fi | ||
3899 | if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then | ||
3900 | if test "$ac_cv_c_bigendian" = unknown; then | ||
3901 | ac_cv_c_bigendian=no | ||
3902 | else | ||
3903 | # finding both strings is unlikely to happen, but who knows? | ||
3904 | ac_cv_c_bigendian=unknown | ||
3905 | fi | ||
3906 | fi | ||
3907 | fi | ||
3908 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
3909 | else | ||
3910 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
3911 | /* end confdefs.h. */ | ||
3912 | $ac_includes_default | ||
3913 | int | ||
3914 | main () | ||
3915 | { | ||
3916 | |||
3917 | /* Are we little or big endian? From Harbison&Steele. */ | ||
3918 | union | ||
3919 | { | ||
3920 | long int l; | ||
3921 | char c[sizeof (long int)]; | ||
3922 | } u; | ||
3923 | u.l = 1; | ||
3924 | return u.c[sizeof (long int) - 1] == 1; | ||
3925 | |||
3926 | ; | ||
3927 | return 0; | ||
3928 | } | ||
3929 | _ACEOF | ||
3930 | if ac_fn_c_try_run "$LINENO"; then : | ||
3931 | ac_cv_c_bigendian=no | ||
3932 | else | ||
3933 | ac_cv_c_bigendian=yes | ||
3934 | fi | ||
3935 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
3936 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
3937 | fi | ||
3938 | |||
3939 | fi | ||
3940 | fi | ||
3941 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 | ||
3942 | $as_echo "$ac_cv_c_bigendian" >&6; } | ||
3943 | case $ac_cv_c_bigendian in #( | ||
3944 | yes) | ||
3945 | $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h | ||
3946 | ;; #( | ||
3947 | no) | ||
3948 | ;; #( | ||
3949 | universal) | ||
3950 | |||
3951 | $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h | ||
3952 | |||
3953 | ;; #( | ||
3954 | *) | ||
3955 | as_fn_error $? "unknown endianness | ||
3956 | presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; | ||
3957 | esac | ||
3958 | |||
3959 | |||
3960 | # Checks for programs. | ||
3961 | for ac_prog in gawk mawk nawk awk | ||
3962 | do | ||
3963 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
3964 | set dummy $ac_prog; ac_word=$2 | ||
3965 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
3966 | $as_echo_n "checking for $ac_word... " >&6; } | ||
3967 | if ${ac_cv_prog_AWK+:} false; then : | ||
3968 | $as_echo_n "(cached) " >&6 | ||
3969 | else | ||
3970 | if test -n "$AWK"; then | ||
3971 | ac_cv_prog_AWK="$AWK" # Let the user override the test. | ||
3972 | else | ||
3973 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
3974 | for as_dir in $PATH | ||
3975 | do | ||
3976 | IFS=$as_save_IFS | ||
3977 | test -z "$as_dir" && as_dir=. | ||
3978 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
3979 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
3980 | ac_cv_prog_AWK="$ac_prog" | ||
3981 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
3982 | break 2 | ||
3983 | fi | ||
3984 | done | ||
3985 | done | ||
3986 | IFS=$as_save_IFS | ||
3987 | |||
3988 | fi | ||
3989 | fi | ||
3990 | AWK=$ac_cv_prog_AWK | ||
3991 | if test -n "$AWK"; then | ||
3992 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 | ||
3993 | $as_echo "$AWK" >&6; } | ||
3994 | else | ||
3995 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
3996 | $as_echo "no" >&6; } | ||
3997 | fi | ||
3998 | |||
3999 | |||
4000 | test -n "$AWK" && break | ||
4001 | done | ||
4002 | |||
4003 | ac_ext=c | ||
4004 | ac_cpp='$CPP $CPPFLAGS' | ||
4005 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
4006 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
4007 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
4008 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 | ||
4009 | $as_echo_n "checking how to run the C preprocessor... " >&6; } | ||
4010 | # On Suns, sometimes $CPP names a directory. | ||
4011 | if test -n "$CPP" && test -d "$CPP"; then | ||
4012 | CPP= | ||
4013 | fi | ||
4014 | if test -z "$CPP"; then | ||
4015 | if ${ac_cv_prog_CPP+:} false; then : | ||
4016 | $as_echo_n "(cached) " >&6 | ||
4017 | else | ||
4018 | # Double quotes because CPP needs to be expanded | ||
4019 | for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" | ||
4020 | do | ||
4021 | ac_preproc_ok=false | ||
4022 | for ac_c_preproc_warn_flag in '' yes | ||
4023 | do | ||
4024 | # Use a header file that comes with gcc, so configuring glibc | ||
4025 | # with a fresh cross-compiler works. | ||
4026 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
4027 | # <limits.h> exists even on freestanding compilers. | ||
4028 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
4029 | # not just through cpp. "Syntax error" is here to catch this case. | ||
4030 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4031 | /* end confdefs.h. */ | ||
4032 | #ifdef __STDC__ | ||
4033 | # include <limits.h> | ||
4034 | #else | ||
4035 | # include <assert.h> | ||
4036 | #endif | ||
4037 | Syntax error | ||
4038 | _ACEOF | ||
4039 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4040 | |||
4041 | else | ||
4042 | # Broken: fails on valid input. | ||
4043 | continue | ||
4044 | fi | ||
4045 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4046 | |||
4047 | # OK, works on sane cases. Now check whether nonexistent headers | ||
4048 | # can be detected and how. | ||
4049 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4050 | /* end confdefs.h. */ | ||
4051 | #include <ac_nonexistent.h> | ||
4052 | _ACEOF | ||
4053 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4054 | # Broken: success on invalid input. | ||
4055 | continue | ||
4056 | else | ||
4057 | # Passes both tests. | ||
4058 | ac_preproc_ok=: | ||
4059 | break | ||
4060 | fi | ||
4061 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4062 | |||
4063 | done | ||
4064 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
4065 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
4066 | if $ac_preproc_ok; then : | ||
4067 | break | ||
4068 | fi | ||
4069 | |||
4070 | done | ||
4071 | ac_cv_prog_CPP=$CPP | ||
4072 | |||
4073 | fi | ||
4074 | CPP=$ac_cv_prog_CPP | ||
4075 | else | ||
4076 | ac_cv_prog_CPP=$CPP | ||
4077 | fi | ||
4078 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 | ||
4079 | $as_echo "$CPP" >&6; } | ||
4080 | ac_preproc_ok=false | ||
4081 | for ac_c_preproc_warn_flag in '' yes | ||
4082 | do | ||
4083 | # Use a header file that comes with gcc, so configuring glibc | ||
4084 | # with a fresh cross-compiler works. | ||
4085 | # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since | ||
4086 | # <limits.h> exists even on freestanding compilers. | ||
4087 | # On the NeXT, cc -E runs the code through the compiler's parser, | ||
4088 | # not just through cpp. "Syntax error" is here to catch this case. | ||
4089 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4090 | /* end confdefs.h. */ | ||
4091 | #ifdef __STDC__ | ||
4092 | # include <limits.h> | ||
4093 | #else | ||
4094 | # include <assert.h> | ||
4095 | #endif | ||
4096 | Syntax error | ||
4097 | _ACEOF | ||
4098 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4099 | |||
4100 | else | ||
4101 | # Broken: fails on valid input. | ||
4102 | continue | ||
4103 | fi | ||
4104 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4105 | |||
4106 | # OK, works on sane cases. Now check whether nonexistent headers | ||
4107 | # can be detected and how. | ||
4108 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
4109 | /* end confdefs.h. */ | ||
4110 | #include <ac_nonexistent.h> | ||
4111 | _ACEOF | ||
4112 | if ac_fn_c_try_cpp "$LINENO"; then : | ||
4113 | # Broken: success on invalid input. | ||
4114 | continue | ||
4115 | else | ||
4116 | # Passes both tests. | ||
4117 | ac_preproc_ok=: | ||
4118 | break | ||
4119 | fi | ||
4120 | rm -f conftest.err conftest.i conftest.$ac_ext | ||
4121 | |||
4122 | done | ||
4123 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | ||
4124 | rm -f conftest.i conftest.err conftest.$ac_ext | ||
4125 | if $ac_preproc_ok; then : | ||
4126 | |||
4127 | else | ||
4128 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
4129 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
4130 | as_fn_error $? "C preprocessor \"$CPP\" fails sanity check | ||
4131 | See \`config.log' for more details" "$LINENO" 5; } | ||
4132 | fi | ||
4133 | |||
4134 | ac_ext=c | ||
4135 | ac_cpp='$CPP $CPPFLAGS' | ||
4136 | ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' | ||
4137 | ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' | ||
4138 | ac_compiler_gnu=$ac_cv_c_compiler_gnu | ||
4139 | |||
4140 | if test -n "$ac_tool_prefix"; then | ||
4141 | # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. | ||
4142 | set dummy ${ac_tool_prefix}ranlib; ac_word=$2 | ||
4143 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4144 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4145 | if ${ac_cv_prog_RANLIB+:} false; then : | ||
4146 | $as_echo_n "(cached) " >&6 | ||
4147 | else | ||
4148 | if test -n "$RANLIB"; then | ||
4149 | ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. | ||
4150 | else | ||
4151 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4152 | for as_dir in $PATH | ||
4153 | do | ||
4154 | IFS=$as_save_IFS | ||
4155 | test -z "$as_dir" && as_dir=. | ||
4156 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4157 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4158 | ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" | ||
4159 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4160 | break 2 | ||
4161 | fi | ||
4162 | done | ||
4163 | done | ||
4164 | IFS=$as_save_IFS | ||
4165 | |||
4166 | fi | ||
4167 | fi | ||
4168 | RANLIB=$ac_cv_prog_RANLIB | ||
4169 | if test -n "$RANLIB"; then | ||
4170 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 | ||
4171 | $as_echo "$RANLIB" >&6; } | ||
4172 | else | ||
4173 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4174 | $as_echo "no" >&6; } | ||
4175 | fi | ||
4176 | |||
4177 | |||
4178 | fi | ||
4179 | if test -z "$ac_cv_prog_RANLIB"; then | ||
4180 | ac_ct_RANLIB=$RANLIB | ||
4181 | # Extract the first word of "ranlib", so it can be a program name with args. | ||
4182 | set dummy ranlib; ac_word=$2 | ||
4183 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4184 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4185 | if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : | ||
4186 | $as_echo_n "(cached) " >&6 | ||
4187 | else | ||
4188 | if test -n "$ac_ct_RANLIB"; then | ||
4189 | ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. | ||
4190 | else | ||
4191 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4192 | for as_dir in $PATH | ||
4193 | do | ||
4194 | IFS=$as_save_IFS | ||
4195 | test -z "$as_dir" && as_dir=. | ||
4196 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4197 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4198 | ac_cv_prog_ac_ct_RANLIB="ranlib" | ||
4199 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4200 | break 2 | ||
4201 | fi | ||
4202 | done | ||
4203 | done | ||
4204 | IFS=$as_save_IFS | ||
4205 | |||
4206 | fi | ||
4207 | fi | ||
4208 | ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB | ||
4209 | if test -n "$ac_ct_RANLIB"; then | ||
4210 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 | ||
4211 | $as_echo "$ac_ct_RANLIB" >&6; } | ||
4212 | else | ||
4213 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4214 | $as_echo "no" >&6; } | ||
4215 | fi | ||
4216 | |||
4217 | if test "x$ac_ct_RANLIB" = x; then | ||
4218 | RANLIB=":" | ||
4219 | else | ||
4220 | case $cross_compiling:$ac_tool_warned in | ||
4221 | yes:) | ||
4222 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
4223 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
4224 | ac_tool_warned=yes ;; | ||
4225 | esac | ||
4226 | RANLIB=$ac_ct_RANLIB | ||
4227 | fi | ||
4228 | else | ||
4229 | RANLIB="$ac_cv_prog_RANLIB" | ||
4230 | fi | ||
4231 | |||
4232 | # Find a good install program. We prefer a C program (faster), | ||
4233 | # so one script is as good as another. But avoid the broken or | ||
4234 | # incompatible versions: | ||
4235 | # SysV /etc/install, /usr/sbin/install | ||
4236 | # SunOS /usr/etc/install | ||
4237 | # IRIX /sbin/install | ||
4238 | # AIX /bin/install | ||
4239 | # AmigaOS /C/install, which installs bootblocks on floppy discs | ||
4240 | # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag | ||
4241 | # AFS /usr/afsws/bin/install, which mishandles nonexistent args | ||
4242 | # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" | ||
4243 | # OS/2's system install, which has a completely different semantic | ||
4244 | # ./install, which can be erroneously created by make from ./install.sh. | ||
4245 | # Reject install programs that cannot install multiple files. | ||
4246 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 | ||
4247 | $as_echo_n "checking for a BSD-compatible install... " >&6; } | ||
4248 | if test -z "$INSTALL"; then | ||
4249 | if ${ac_cv_path_install+:} false; then : | ||
4250 | $as_echo_n "(cached) " >&6 | ||
4251 | else | ||
4252 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4253 | for as_dir in $PATH | ||
4254 | do | ||
4255 | IFS=$as_save_IFS | ||
4256 | test -z "$as_dir" && as_dir=. | ||
4257 | # Account for people who put trailing slashes in PATH elements. | ||
4258 | case $as_dir/ in #(( | ||
4259 | ./ | .// | /[cC]/* | \ | ||
4260 | /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ | ||
4261 | ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ | ||
4262 | /usr/ucb/* ) ;; | ||
4263 | *) | ||
4264 | # OSF1 and SCO ODT 3.0 have their own names for install. | ||
4265 | # Don't use installbsd from OSF since it installs stuff as root | ||
4266 | # by default. | ||
4267 | for ac_prog in ginstall scoinst install; do | ||
4268 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4269 | if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then | ||
4270 | if test $ac_prog = install && | ||
4271 | grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then | ||
4272 | # AIX install. It has an incompatible calling convention. | ||
4273 | : | ||
4274 | elif test $ac_prog = install && | ||
4275 | grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then | ||
4276 | # program-specific install script used by HP pwplus--don't use. | ||
4277 | : | ||
4278 | else | ||
4279 | rm -rf conftest.one conftest.two conftest.dir | ||
4280 | echo one > conftest.one | ||
4281 | echo two > conftest.two | ||
4282 | mkdir conftest.dir | ||
4283 | if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && | ||
4284 | test -s conftest.one && test -s conftest.two && | ||
4285 | test -s conftest.dir/conftest.one && | ||
4286 | test -s conftest.dir/conftest.two | ||
4287 | then | ||
4288 | ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" | ||
4289 | break 3 | ||
4290 | fi | ||
4291 | fi | ||
4292 | fi | ||
4293 | done | ||
4294 | done | ||
4295 | ;; | ||
4296 | esac | ||
4297 | |||
4298 | done | ||
4299 | IFS=$as_save_IFS | ||
4300 | |||
4301 | rm -rf conftest.one conftest.two conftest.dir | ||
4302 | |||
4303 | fi | ||
4304 | if test "${ac_cv_path_install+set}" = set; then | ||
4305 | INSTALL=$ac_cv_path_install | ||
4306 | else | ||
4307 | # As a last resort, use the slow shell script. Don't cache a | ||
4308 | # value for INSTALL within a source directory, because that will | ||
4309 | # break other packages using the cache if that directory is | ||
4310 | # removed, or if the value is a relative name. | ||
4311 | INSTALL=$ac_install_sh | ||
4312 | fi | ||
4313 | fi | ||
4314 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 | ||
4315 | $as_echo "$INSTALL" >&6; } | ||
4316 | |||
4317 | # Use test -z because SunOS4 sh mishandles braces in ${var-val}. | ||
4318 | # It thinks the first close brace ends the variable substitution. | ||
4319 | test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' | ||
4320 | |||
4321 | test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' | ||
4322 | |||
4323 | test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' | ||
4324 | |||
4325 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 | ||
4326 | $as_echo_n "checking for egrep... " >&6; } | ||
4327 | if ${ac_cv_path_EGREP+:} false; then : | ||
4328 | $as_echo_n "(cached) " >&6 | ||
4329 | else | ||
4330 | if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 | ||
4331 | then ac_cv_path_EGREP="$GREP -E" | ||
4332 | else | ||
4333 | if test -z "$EGREP"; then | ||
4334 | ac_path_EGREP_found=false | ||
4335 | # Loop through the user's path and test for each of PROGNAME-LIST | ||
4336 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4337 | for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin | ||
4338 | do | ||
4339 | IFS=$as_save_IFS | ||
4340 | test -z "$as_dir" && as_dir=. | ||
4341 | for ac_prog in egrep; do | ||
4342 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4343 | ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" | ||
4344 | as_fn_executable_p "$ac_path_EGREP" || continue | ||
4345 | # Check for GNU ac_path_EGREP and select it if it is found. | ||
4346 | # Check for GNU $ac_path_EGREP | ||
4347 | case `"$ac_path_EGREP" --version 2>&1` in | ||
4348 | *GNU*) | ||
4349 | ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; | ||
4350 | *) | ||
4351 | ac_count=0 | ||
4352 | $as_echo_n 0123456789 >"conftest.in" | ||
4353 | while : | ||
4354 | do | ||
4355 | cat "conftest.in" "conftest.in" >"conftest.tmp" | ||
4356 | mv "conftest.tmp" "conftest.in" | ||
4357 | cp "conftest.in" "conftest.nl" | ||
4358 | $as_echo 'EGREP' >> "conftest.nl" | ||
4359 | "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break | ||
4360 | diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break | ||
4361 | as_fn_arith $ac_count + 1 && ac_count=$as_val | ||
4362 | if test $ac_count -gt ${ac_path_EGREP_max-0}; then | ||
4363 | # Best one so far, save it but keep looking for a better one | ||
4364 | ac_cv_path_EGREP="$ac_path_EGREP" | ||
4365 | ac_path_EGREP_max=$ac_count | ||
4366 | fi | ||
4367 | # 10*(2^10) chars as input seems more than enough | ||
4368 | test $ac_count -gt 10 && break | ||
4369 | done | ||
4370 | rm -f conftest.in conftest.tmp conftest.nl conftest.out;; | ||
4371 | esac | ||
4372 | |||
4373 | $ac_path_EGREP_found && break 3 | ||
4374 | done | ||
4375 | done | ||
4376 | done | ||
4377 | IFS=$as_save_IFS | ||
4378 | if test -z "$ac_cv_path_EGREP"; then | ||
4379 | as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | ||
4380 | fi | ||
4381 | else | ||
4382 | ac_cv_path_EGREP=$EGREP | ||
4383 | fi | ||
4384 | |||
4385 | fi | ||
4386 | fi | ||
4387 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 | ||
4388 | $as_echo "$ac_cv_path_EGREP" >&6; } | ||
4389 | EGREP="$ac_cv_path_EGREP" | ||
4390 | |||
4391 | |||
4392 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 | ||
4393 | $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } | ||
4394 | if test -z "$MKDIR_P"; then | ||
4395 | if ${ac_cv_path_mkdir+:} false; then : | ||
4396 | $as_echo_n "(cached) " >&6 | ||
4397 | else | ||
4398 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4399 | for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin | ||
4400 | do | ||
4401 | IFS=$as_save_IFS | ||
4402 | test -z "$as_dir" && as_dir=. | ||
4403 | for ac_prog in mkdir gmkdir; do | ||
4404 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4405 | as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue | ||
4406 | case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( | ||
4407 | 'mkdir (GNU coreutils) '* | \ | ||
4408 | 'mkdir (coreutils) '* | \ | ||
4409 | 'mkdir (fileutils) '4.1*) | ||
4410 | ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext | ||
4411 | break 3;; | ||
4412 | esac | ||
4413 | done | ||
4414 | done | ||
4415 | done | ||
4416 | IFS=$as_save_IFS | ||
4417 | |||
4418 | fi | ||
4419 | |||
4420 | test -d ./--version && rmdir ./--version | ||
4421 | if test "${ac_cv_path_mkdir+set}" = set; then | ||
4422 | MKDIR_P="$ac_cv_path_mkdir -p" | ||
4423 | else | ||
4424 | # As a last resort, use the slow shell script. Don't cache a | ||
4425 | # value for MKDIR_P within a source directory, because that will | ||
4426 | # break other packages using the cache if that directory is | ||
4427 | # removed, or if the value is a relative name. | ||
4428 | MKDIR_P="$ac_install_sh -d" | ||
4429 | fi | ||
4430 | fi | ||
4431 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 | ||
4432 | $as_echo "$MKDIR_P" >&6; } | ||
4433 | |||
4434 | if test -n "$ac_tool_prefix"; then | ||
4435 | for ac_prog in ar | ||
4436 | do | ||
4437 | # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. | ||
4438 | set dummy $ac_tool_prefix$ac_prog; ac_word=$2 | ||
4439 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4440 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4441 | if ${ac_cv_prog_AR+:} false; then : | ||
4442 | $as_echo_n "(cached) " >&6 | ||
4443 | else | ||
4444 | if test -n "$AR"; then | ||
4445 | ac_cv_prog_AR="$AR" # Let the user override the test. | ||
4446 | else | ||
4447 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4448 | for as_dir in $PATH | ||
4449 | do | ||
4450 | IFS=$as_save_IFS | ||
4451 | test -z "$as_dir" && as_dir=. | ||
4452 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4453 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4454 | ac_cv_prog_AR="$ac_tool_prefix$ac_prog" | ||
4455 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4456 | break 2 | ||
4457 | fi | ||
4458 | done | ||
4459 | done | ||
4460 | IFS=$as_save_IFS | ||
4461 | |||
4462 | fi | ||
4463 | fi | ||
4464 | AR=$ac_cv_prog_AR | ||
4465 | if test -n "$AR"; then | ||
4466 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 | ||
4467 | $as_echo "$AR" >&6; } | ||
4468 | else | ||
4469 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4470 | $as_echo "no" >&6; } | ||
4471 | fi | ||
4472 | |||
4473 | |||
4474 | test -n "$AR" && break | ||
4475 | done | ||
4476 | fi | ||
4477 | if test -z "$AR"; then | ||
4478 | ac_ct_AR=$AR | ||
4479 | for ac_prog in ar | ||
4480 | do | ||
4481 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
4482 | set dummy $ac_prog; ac_word=$2 | ||
4483 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4484 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4485 | if ${ac_cv_prog_ac_ct_AR+:} false; then : | ||
4486 | $as_echo_n "(cached) " >&6 | ||
4487 | else | ||
4488 | if test -n "$ac_ct_AR"; then | ||
4489 | ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. | ||
4490 | else | ||
4491 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4492 | for as_dir in $PATH | ||
4493 | do | ||
4494 | IFS=$as_save_IFS | ||
4495 | test -z "$as_dir" && as_dir=. | ||
4496 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4497 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4498 | ac_cv_prog_ac_ct_AR="$ac_prog" | ||
4499 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4500 | break 2 | ||
4501 | fi | ||
4502 | done | ||
4503 | done | ||
4504 | IFS=$as_save_IFS | ||
4505 | |||
4506 | fi | ||
4507 | fi | ||
4508 | ac_ct_AR=$ac_cv_prog_ac_ct_AR | ||
4509 | if test -n "$ac_ct_AR"; then | ||
4510 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 | ||
4511 | $as_echo "$ac_ct_AR" >&6; } | ||
4512 | else | ||
4513 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4514 | $as_echo "no" >&6; } | ||
4515 | fi | ||
4516 | |||
4517 | |||
4518 | test -n "$ac_ct_AR" && break | ||
4519 | done | ||
4520 | |||
4521 | if test "x$ac_ct_AR" = x; then | ||
4522 | AR="" | ||
4523 | else | ||
4524 | case $cross_compiling:$ac_tool_warned in | ||
4525 | yes:) | ||
4526 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
4527 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
4528 | ac_tool_warned=yes ;; | ||
4529 | esac | ||
4530 | AR=$ac_ct_AR | ||
4531 | fi | ||
4532 | fi | ||
4533 | |||
4534 | # Extract the first word of "cat", so it can be a program name with args. | ||
4535 | set dummy cat; ac_word=$2 | ||
4536 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4537 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4538 | if ${ac_cv_path_CAT+:} false; then : | ||
4539 | $as_echo_n "(cached) " >&6 | ||
4540 | else | ||
4541 | case $CAT in | ||
4542 | [\\/]* | ?:[\\/]*) | ||
4543 | ac_cv_path_CAT="$CAT" # Let the user override the test with a path. | ||
4544 | ;; | ||
4545 | *) | ||
4546 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4547 | for as_dir in $PATH | ||
4548 | do | ||
4549 | IFS=$as_save_IFS | ||
4550 | test -z "$as_dir" && as_dir=. | ||
4551 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4552 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4553 | ac_cv_path_CAT="$as_dir/$ac_word$ac_exec_ext" | ||
4554 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4555 | break 2 | ||
4556 | fi | ||
4557 | done | ||
4558 | done | ||
4559 | IFS=$as_save_IFS | ||
4560 | |||
4561 | ;; | ||
4562 | esac | ||
4563 | fi | ||
4564 | CAT=$ac_cv_path_CAT | ||
4565 | if test -n "$CAT"; then | ||
4566 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5 | ||
4567 | $as_echo "$CAT" >&6; } | ||
4568 | else | ||
4569 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4570 | $as_echo "no" >&6; } | ||
4571 | fi | ||
4572 | |||
4573 | |||
4574 | # Extract the first word of "kill", so it can be a program name with args. | ||
4575 | set dummy kill; ac_word=$2 | ||
4576 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4577 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4578 | if ${ac_cv_path_KILL+:} false; then : | ||
4579 | $as_echo_n "(cached) " >&6 | ||
4580 | else | ||
4581 | case $KILL in | ||
4582 | [\\/]* | ?:[\\/]*) | ||
4583 | ac_cv_path_KILL="$KILL" # Let the user override the test with a path. | ||
4584 | ;; | ||
4585 | *) | ||
4586 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4587 | for as_dir in $PATH | ||
4588 | do | ||
4589 | IFS=$as_save_IFS | ||
4590 | test -z "$as_dir" && as_dir=. | ||
4591 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4592 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4593 | ac_cv_path_KILL="$as_dir/$ac_word$ac_exec_ext" | ||
4594 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4595 | break 2 | ||
4596 | fi | ||
4597 | done | ||
4598 | done | ||
4599 | IFS=$as_save_IFS | ||
4600 | |||
4601 | ;; | ||
4602 | esac | ||
4603 | fi | ||
4604 | KILL=$ac_cv_path_KILL | ||
4605 | if test -n "$KILL"; then | ||
4606 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KILL" >&5 | ||
4607 | $as_echo "$KILL" >&6; } | ||
4608 | else | ||
4609 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4610 | $as_echo "no" >&6; } | ||
4611 | fi | ||
4612 | |||
4613 | |||
4614 | # Extract the first word of "sed", so it can be a program name with args. | ||
4615 | set dummy sed; ac_word=$2 | ||
4616 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4617 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4618 | if ${ac_cv_path_SED+:} false; then : | ||
4619 | $as_echo_n "(cached) " >&6 | ||
4620 | else | ||
4621 | case $SED in | ||
4622 | [\\/]* | ?:[\\/]*) | ||
4623 | ac_cv_path_SED="$SED" # Let the user override the test with a path. | ||
4624 | ;; | ||
4625 | *) | ||
4626 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4627 | for as_dir in $PATH | ||
4628 | do | ||
4629 | IFS=$as_save_IFS | ||
4630 | test -z "$as_dir" && as_dir=. | ||
4631 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4632 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4633 | ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext" | ||
4634 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4635 | break 2 | ||
4636 | fi | ||
4637 | done | ||
4638 | done | ||
4639 | IFS=$as_save_IFS | ||
4640 | |||
4641 | ;; | ||
4642 | esac | ||
4643 | fi | ||
4644 | SED=$ac_cv_path_SED | ||
4645 | if test -n "$SED"; then | ||
4646 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 | ||
4647 | $as_echo "$SED" >&6; } | ||
4648 | else | ||
4649 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4650 | $as_echo "no" >&6; } | ||
4651 | fi | ||
4652 | |||
4653 | |||
4654 | # Extract the first word of "bash", so it can be a program name with args. | ||
4655 | set dummy bash; ac_word=$2 | ||
4656 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4657 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4658 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4659 | $as_echo_n "(cached) " >&6 | ||
4660 | else | ||
4661 | case $TEST_MINUS_S_SH in | ||
4662 | [\\/]* | ?:[\\/]*) | ||
4663 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4664 | ;; | ||
4665 | *) | ||
4666 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4667 | for as_dir in $PATH | ||
4668 | do | ||
4669 | IFS=$as_save_IFS | ||
4670 | test -z "$as_dir" && as_dir=. | ||
4671 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4672 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4673 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4674 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4675 | break 2 | ||
4676 | fi | ||
4677 | done | ||
4678 | done | ||
4679 | IFS=$as_save_IFS | ||
4680 | |||
4681 | ;; | ||
4682 | esac | ||
4683 | fi | ||
4684 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4685 | if test -n "$TEST_MINUS_S_SH"; then | ||
4686 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4687 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4688 | else | ||
4689 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4690 | $as_echo "no" >&6; } | ||
4691 | fi | ||
4692 | |||
4693 | |||
4694 | # Extract the first word of "ksh", so it can be a program name with args. | ||
4695 | set dummy ksh; ac_word=$2 | ||
4696 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4697 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4698 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4699 | $as_echo_n "(cached) " >&6 | ||
4700 | else | ||
4701 | case $TEST_MINUS_S_SH in | ||
4702 | [\\/]* | ?:[\\/]*) | ||
4703 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4704 | ;; | ||
4705 | *) | ||
4706 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4707 | for as_dir in $PATH | ||
4708 | do | ||
4709 | IFS=$as_save_IFS | ||
4710 | test -z "$as_dir" && as_dir=. | ||
4711 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4712 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4713 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4714 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4715 | break 2 | ||
4716 | fi | ||
4717 | done | ||
4718 | done | ||
4719 | IFS=$as_save_IFS | ||
4720 | |||
4721 | ;; | ||
4722 | esac | ||
4723 | fi | ||
4724 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4725 | if test -n "$TEST_MINUS_S_SH"; then | ||
4726 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4727 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4728 | else | ||
4729 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4730 | $as_echo "no" >&6; } | ||
4731 | fi | ||
4732 | |||
4733 | |||
4734 | # Extract the first word of "sh", so it can be a program name with args. | ||
4735 | set dummy sh; ac_word=$2 | ||
4736 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4737 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4738 | if ${ac_cv_path_TEST_MINUS_S_SH+:} false; then : | ||
4739 | $as_echo_n "(cached) " >&6 | ||
4740 | else | ||
4741 | case $TEST_MINUS_S_SH in | ||
4742 | [\\/]* | ?:[\\/]*) | ||
4743 | ac_cv_path_TEST_MINUS_S_SH="$TEST_MINUS_S_SH" # Let the user override the test with a path. | ||
4744 | ;; | ||
4745 | *) | ||
4746 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4747 | for as_dir in $PATH | ||
4748 | do | ||
4749 | IFS=$as_save_IFS | ||
4750 | test -z "$as_dir" && as_dir=. | ||
4751 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4752 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4753 | ac_cv_path_TEST_MINUS_S_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4754 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4755 | break 2 | ||
4756 | fi | ||
4757 | done | ||
4758 | done | ||
4759 | IFS=$as_save_IFS | ||
4760 | |||
4761 | ;; | ||
4762 | esac | ||
4763 | fi | ||
4764 | TEST_MINUS_S_SH=$ac_cv_path_TEST_MINUS_S_SH | ||
4765 | if test -n "$TEST_MINUS_S_SH"; then | ||
4766 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_MINUS_S_SH" >&5 | ||
4767 | $as_echo "$TEST_MINUS_S_SH" >&6; } | ||
4768 | else | ||
4769 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4770 | $as_echo "no" >&6; } | ||
4771 | fi | ||
4772 | |||
4773 | |||
4774 | # Extract the first word of "sh", so it can be a program name with args. | ||
4775 | set dummy sh; ac_word=$2 | ||
4776 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4777 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4778 | if ${ac_cv_path_SH+:} false; then : | ||
4779 | $as_echo_n "(cached) " >&6 | ||
4780 | else | ||
4781 | case $SH in | ||
4782 | [\\/]* | ?:[\\/]*) | ||
4783 | ac_cv_path_SH="$SH" # Let the user override the test with a path. | ||
4784 | ;; | ||
4785 | *) | ||
4786 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4787 | for as_dir in $PATH | ||
4788 | do | ||
4789 | IFS=$as_save_IFS | ||
4790 | test -z "$as_dir" && as_dir=. | ||
4791 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4792 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4793 | ac_cv_path_SH="$as_dir/$ac_word$ac_exec_ext" | ||
4794 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4795 | break 2 | ||
4796 | fi | ||
4797 | done | ||
4798 | done | ||
4799 | IFS=$as_save_IFS | ||
4800 | |||
4801 | ;; | ||
4802 | esac | ||
4803 | fi | ||
4804 | SH=$ac_cv_path_SH | ||
4805 | if test -n "$SH"; then | ||
4806 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SH" >&5 | ||
4807 | $as_echo "$SH" >&6; } | ||
4808 | else | ||
4809 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4810 | $as_echo "no" >&6; } | ||
4811 | fi | ||
4812 | |||
4813 | |||
4814 | # Extract the first word of "groff", so it can be a program name with args. | ||
4815 | set dummy groff; ac_word=$2 | ||
4816 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4817 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4818 | if ${ac_cv_path_GROFF+:} false; then : | ||
4819 | $as_echo_n "(cached) " >&6 | ||
4820 | else | ||
4821 | case $GROFF in | ||
4822 | [\\/]* | ?:[\\/]*) | ||
4823 | ac_cv_path_GROFF="$GROFF" # Let the user override the test with a path. | ||
4824 | ;; | ||
4825 | *) | ||
4826 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4827 | for as_dir in $PATH | ||
4828 | do | ||
4829 | IFS=$as_save_IFS | ||
4830 | test -z "$as_dir" && as_dir=. | ||
4831 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4832 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4833 | ac_cv_path_GROFF="$as_dir/$ac_word$ac_exec_ext" | ||
4834 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4835 | break 2 | ||
4836 | fi | ||
4837 | done | ||
4838 | done | ||
4839 | IFS=$as_save_IFS | ||
4840 | |||
4841 | ;; | ||
4842 | esac | ||
4843 | fi | ||
4844 | GROFF=$ac_cv_path_GROFF | ||
4845 | if test -n "$GROFF"; then | ||
4846 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GROFF" >&5 | ||
4847 | $as_echo "$GROFF" >&6; } | ||
4848 | else | ||
4849 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4850 | $as_echo "no" >&6; } | ||
4851 | fi | ||
4852 | |||
4853 | |||
4854 | # Extract the first word of "nroff awf", so it can be a program name with args. | ||
4855 | set dummy nroff awf; ac_word=$2 | ||
4856 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4857 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4858 | if ${ac_cv_path_NROFF+:} false; then : | ||
4859 | $as_echo_n "(cached) " >&6 | ||
4860 | else | ||
4861 | case $NROFF in | ||
4862 | [\\/]* | ?:[\\/]*) | ||
4863 | ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path. | ||
4864 | ;; | ||
4865 | *) | ||
4866 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4867 | for as_dir in $PATH | ||
4868 | do | ||
4869 | IFS=$as_save_IFS | ||
4870 | test -z "$as_dir" && as_dir=. | ||
4871 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4872 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4873 | ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext" | ||
4874 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4875 | break 2 | ||
4876 | fi | ||
4877 | done | ||
4878 | done | ||
4879 | IFS=$as_save_IFS | ||
4880 | |||
4881 | ;; | ||
4882 | esac | ||
4883 | fi | ||
4884 | NROFF=$ac_cv_path_NROFF | ||
4885 | if test -n "$NROFF"; then | ||
4886 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5 | ||
4887 | $as_echo "$NROFF" >&6; } | ||
4888 | else | ||
4889 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4890 | $as_echo "no" >&6; } | ||
4891 | fi | ||
4892 | |||
4893 | |||
4894 | # Extract the first word of "mandoc", so it can be a program name with args. | ||
4895 | set dummy mandoc; ac_word=$2 | ||
4896 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4897 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4898 | if ${ac_cv_path_MANDOC+:} false; then : | ||
4899 | $as_echo_n "(cached) " >&6 | ||
4900 | else | ||
4901 | case $MANDOC in | ||
4902 | [\\/]* | ?:[\\/]*) | ||
4903 | ac_cv_path_MANDOC="$MANDOC" # Let the user override the test with a path. | ||
4904 | ;; | ||
4905 | *) | ||
4906 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4907 | for as_dir in $PATH | ||
4908 | do | ||
4909 | IFS=$as_save_IFS | ||
4910 | test -z "$as_dir" && as_dir=. | ||
4911 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4912 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4913 | ac_cv_path_MANDOC="$as_dir/$ac_word$ac_exec_ext" | ||
4914 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4915 | break 2 | ||
4916 | fi | ||
4917 | done | ||
4918 | done | ||
4919 | IFS=$as_save_IFS | ||
4920 | |||
4921 | ;; | ||
4922 | esac | ||
4923 | fi | ||
4924 | MANDOC=$ac_cv_path_MANDOC | ||
4925 | if test -n "$MANDOC"; then | ||
4926 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANDOC" >&5 | ||
4927 | $as_echo "$MANDOC" >&6; } | ||
4928 | else | ||
4929 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4930 | $as_echo "no" >&6; } | ||
4931 | fi | ||
4932 | |||
4933 | |||
4934 | TEST_SHELL=sh | ||
4935 | |||
4936 | |||
4937 | if test "x$MANDOC" != "x" ; then | ||
4938 | MANFMT="$MANDOC" | ||
4939 | elif test "x$NROFF" != "x" ; then | ||
4940 | MANFMT="$NROFF -mandoc" | ||
4941 | elif test "x$GROFF" != "x" ; then | ||
4942 | MANFMT="$GROFF -mandoc -Tascii" | ||
4943 | else | ||
4944 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no manpage formatter found" >&5 | ||
4945 | $as_echo "$as_me: WARNING: no manpage formatter found" >&2;} | ||
4946 | MANFMT="false" | ||
4947 | fi | ||
4948 | |||
4949 | |||
4950 | # Extract the first word of "groupadd", so it can be a program name with args. | ||
4951 | set dummy groupadd; ac_word=$2 | ||
4952 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4953 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4954 | if ${ac_cv_path_PATH_GROUPADD_PROG+:} false; then : | ||
4955 | $as_echo_n "(cached) " >&6 | ||
4956 | else | ||
4957 | case $PATH_GROUPADD_PROG in | ||
4958 | [\\/]* | ?:[\\/]*) | ||
4959 | ac_cv_path_PATH_GROUPADD_PROG="$PATH_GROUPADD_PROG" # Let the user override the test with a path. | ||
4960 | ;; | ||
4961 | *) | ||
4962 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4963 | for as_dir in /usr/sbin${PATH_SEPARATOR}/etc | ||
4964 | do | ||
4965 | IFS=$as_save_IFS | ||
4966 | test -z "$as_dir" && as_dir=. | ||
4967 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4968 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
4969 | ac_cv_path_PATH_GROUPADD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
4970 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4971 | break 2 | ||
4972 | fi | ||
4973 | done | ||
4974 | done | ||
4975 | IFS=$as_save_IFS | ||
4976 | |||
4977 | test -z "$ac_cv_path_PATH_GROUPADD_PROG" && ac_cv_path_PATH_GROUPADD_PROG="groupadd" | ||
4978 | ;; | ||
4979 | esac | ||
4980 | fi | ||
4981 | PATH_GROUPADD_PROG=$ac_cv_path_PATH_GROUPADD_PROG | ||
4982 | if test -n "$PATH_GROUPADD_PROG"; then | ||
4983 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_GROUPADD_PROG" >&5 | ||
4984 | $as_echo "$PATH_GROUPADD_PROG" >&6; } | ||
4985 | else | ||
4986 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
4987 | $as_echo "no" >&6; } | ||
4988 | fi | ||
4989 | |||
4990 | |||
4991 | # Extract the first word of "useradd", so it can be a program name with args. | ||
4992 | set dummy useradd; ac_word=$2 | ||
4993 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
4994 | $as_echo_n "checking for $ac_word... " >&6; } | ||
4995 | if ${ac_cv_path_PATH_USERADD_PROG+:} false; then : | ||
4996 | $as_echo_n "(cached) " >&6 | ||
4997 | else | ||
4998 | case $PATH_USERADD_PROG in | ||
4999 | [\\/]* | ?:[\\/]*) | ||
5000 | ac_cv_path_PATH_USERADD_PROG="$PATH_USERADD_PROG" # Let the user override the test with a path. | ||
5001 | ;; | ||
5002 | *) | ||
5003 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5004 | for as_dir in /usr/sbin${PATH_SEPARATOR}/etc | ||
5005 | do | ||
5006 | IFS=$as_save_IFS | ||
5007 | test -z "$as_dir" && as_dir=. | ||
5008 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5009 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
5010 | ac_cv_path_PATH_USERADD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
5011 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5012 | break 2 | ||
5013 | fi | ||
5014 | done | ||
5015 | done | ||
5016 | IFS=$as_save_IFS | ||
5017 | |||
5018 | test -z "$ac_cv_path_PATH_USERADD_PROG" && ac_cv_path_PATH_USERADD_PROG="useradd" | ||
5019 | ;; | ||
5020 | esac | ||
5021 | fi | ||
5022 | PATH_USERADD_PROG=$ac_cv_path_PATH_USERADD_PROG | ||
5023 | if test -n "$PATH_USERADD_PROG"; then | ||
5024 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_USERADD_PROG" >&5 | ||
5025 | $as_echo "$PATH_USERADD_PROG" >&6; } | ||
5026 | else | ||
5027 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5028 | $as_echo "no" >&6; } | ||
5029 | fi | ||
5030 | |||
5031 | |||
5032 | # Extract the first word of "pkgmk", so it can be a program name with args. | ||
5033 | set dummy pkgmk; ac_word=$2 | ||
5034 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5035 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5036 | if ${ac_cv_prog_MAKE_PACKAGE_SUPPORTED+:} false; then : | ||
5037 | $as_echo_n "(cached) " >&6 | ||
5038 | else | ||
5039 | if test -n "$MAKE_PACKAGE_SUPPORTED"; then | ||
5040 | ac_cv_prog_MAKE_PACKAGE_SUPPORTED="$MAKE_PACKAGE_SUPPORTED" # Let the user override the test. | ||
5041 | else | ||
5042 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5043 | for as_dir in $PATH | ||
5044 | do | ||
5045 | IFS=$as_save_IFS | ||
5046 | test -z "$as_dir" && as_dir=. | ||
5047 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5048 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
5049 | ac_cv_prog_MAKE_PACKAGE_SUPPORTED="yes" | ||
5050 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5051 | break 2 | ||
5052 | fi | ||
5053 | done | ||
5054 | done | ||
5055 | IFS=$as_save_IFS | ||
5056 | |||
5057 | test -z "$ac_cv_prog_MAKE_PACKAGE_SUPPORTED" && ac_cv_prog_MAKE_PACKAGE_SUPPORTED="no" | ||
5058 | fi | ||
5059 | fi | ||
5060 | MAKE_PACKAGE_SUPPORTED=$ac_cv_prog_MAKE_PACKAGE_SUPPORTED | ||
5061 | if test -n "$MAKE_PACKAGE_SUPPORTED"; then | ||
5062 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKE_PACKAGE_SUPPORTED" >&5 | ||
5063 | $as_echo "$MAKE_PACKAGE_SUPPORTED" >&6; } | ||
5064 | else | ||
5065 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5066 | $as_echo "no" >&6; } | ||
5067 | fi | ||
5068 | |||
5069 | |||
5070 | if test -x /sbin/sh; then | ||
5071 | STARTUP_SCRIPT_SHELL=/sbin/sh | ||
5072 | |||
5073 | else | ||
5074 | STARTUP_SCRIPT_SHELL=/bin/sh | ||
5075 | |||
5076 | fi | ||
5077 | |||
5078 | # System features | ||
5079 | # Check whether --enable-largefile was given. | ||
5080 | if test "${enable_largefile+set}" = set; then : | ||
5081 | enableval=$enable_largefile; | ||
5082 | fi | ||
5083 | |||
5084 | if test "$enable_largefile" != no; then | ||
5085 | |||
5086 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 | ||
5087 | $as_echo_n "checking for special C compiler options needed for large files... " >&6; } | ||
5088 | if ${ac_cv_sys_largefile_CC+:} false; then : | ||
5089 | $as_echo_n "(cached) " >&6 | ||
5090 | else | ||
5091 | ac_cv_sys_largefile_CC=no | ||
5092 | if test "$GCC" != yes; then | ||
5093 | ac_save_CC=$CC | ||
5094 | while :; do | ||
5095 | # IRIX 6.2 and later do not support large files by default, | ||
5096 | # so use the C compiler's -n32 option if that helps. | ||
5097 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5098 | /* end confdefs.h. */ | ||
5099 | #include <sys/types.h> | ||
5100 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5101 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5102 | since some C++ compilers masquerading as C compilers | ||
5103 | incorrectly reject 9223372036854775807. */ | ||
5104 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5105 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5106 | && LARGE_OFF_T % 2147483647 == 1) | ||
5107 | ? 1 : -1]; | ||
5108 | int | ||
5109 | main () | ||
5110 | { | ||
5111 | |||
5112 | ; | ||
5113 | return 0; | ||
5114 | } | ||
5115 | _ACEOF | ||
5116 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5117 | break | ||
5118 | fi | ||
5119 | rm -f core conftest.err conftest.$ac_objext | ||
5120 | CC="$CC -n32" | ||
5121 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5122 | ac_cv_sys_largefile_CC=' -n32'; break | ||
5123 | fi | ||
5124 | rm -f core conftest.err conftest.$ac_objext | ||
5125 | break | ||
5126 | done | ||
5127 | CC=$ac_save_CC | ||
5128 | rm -f conftest.$ac_ext | ||
5129 | fi | ||
5130 | fi | ||
5131 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 | ||
5132 | $as_echo "$ac_cv_sys_largefile_CC" >&6; } | ||
5133 | if test "$ac_cv_sys_largefile_CC" != no; then | ||
5134 | CC=$CC$ac_cv_sys_largefile_CC | ||
5135 | fi | ||
5136 | |||
5137 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 | ||
5138 | $as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } | ||
5139 | if ${ac_cv_sys_file_offset_bits+:} false; then : | ||
5140 | $as_echo_n "(cached) " >&6 | ||
5141 | else | ||
5142 | while :; do | ||
5143 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5144 | /* end confdefs.h. */ | ||
5145 | #include <sys/types.h> | ||
5146 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5147 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5148 | since some C++ compilers masquerading as C compilers | ||
5149 | incorrectly reject 9223372036854775807. */ | ||
5150 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5151 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5152 | && LARGE_OFF_T % 2147483647 == 1) | ||
5153 | ? 1 : -1]; | ||
5154 | int | ||
5155 | main () | ||
5156 | { | ||
5157 | |||
5158 | ; | ||
5159 | return 0; | ||
5160 | } | ||
5161 | _ACEOF | ||
5162 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5163 | ac_cv_sys_file_offset_bits=no; break | ||
5164 | fi | ||
5165 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5166 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5167 | /* end confdefs.h. */ | ||
5168 | #define _FILE_OFFSET_BITS 64 | ||
5169 | #include <sys/types.h> | ||
5170 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5171 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5172 | since some C++ compilers masquerading as C compilers | ||
5173 | incorrectly reject 9223372036854775807. */ | ||
5174 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5175 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5176 | && LARGE_OFF_T % 2147483647 == 1) | ||
5177 | ? 1 : -1]; | ||
5178 | int | ||
5179 | main () | ||
5180 | { | ||
5181 | |||
5182 | ; | ||
5183 | return 0; | ||
5184 | } | ||
5185 | _ACEOF | ||
5186 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5187 | ac_cv_sys_file_offset_bits=64; break | ||
5188 | fi | ||
5189 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5190 | ac_cv_sys_file_offset_bits=unknown | ||
5191 | break | ||
5192 | done | ||
5193 | fi | ||
5194 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 | ||
5195 | $as_echo "$ac_cv_sys_file_offset_bits" >&6; } | ||
5196 | case $ac_cv_sys_file_offset_bits in #( | ||
5197 | no | unknown) ;; | ||
5198 | *) | ||
5199 | cat >>confdefs.h <<_ACEOF | ||
5200 | #define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits | ||
5201 | _ACEOF | ||
5202 | ;; | ||
5203 | esac | ||
5204 | rm -rf conftest* | ||
5205 | if test $ac_cv_sys_file_offset_bits = unknown; then | ||
5206 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 | ||
5207 | $as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } | ||
5208 | if ${ac_cv_sys_large_files+:} false; then : | ||
5209 | $as_echo_n "(cached) " >&6 | ||
5210 | else | ||
5211 | while :; do | ||
5212 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5213 | /* end confdefs.h. */ | ||
5214 | #include <sys/types.h> | ||
5215 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5216 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5217 | since some C++ compilers masquerading as C compilers | ||
5218 | incorrectly reject 9223372036854775807. */ | ||
5219 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5220 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5221 | && LARGE_OFF_T % 2147483647 == 1) | ||
5222 | ? 1 : -1]; | ||
5223 | int | ||
5224 | main () | ||
5225 | { | ||
5226 | |||
5227 | ; | ||
5228 | return 0; | ||
5229 | } | ||
5230 | _ACEOF | ||
5231 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5232 | ac_cv_sys_large_files=no; break | ||
5233 | fi | ||
5234 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5235 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5236 | /* end confdefs.h. */ | ||
5237 | #define _LARGE_FILES 1 | ||
5238 | #include <sys/types.h> | ||
5239 | /* Check that off_t can represent 2**63 - 1 correctly. | ||
5240 | We can't simply define LARGE_OFF_T to be 9223372036854775807, | ||
5241 | since some C++ compilers masquerading as C compilers | ||
5242 | incorrectly reject 9223372036854775807. */ | ||
5243 | #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) | ||
5244 | int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 | ||
5245 | && LARGE_OFF_T % 2147483647 == 1) | ||
5246 | ? 1 : -1]; | ||
5247 | int | ||
5248 | main () | ||
5249 | { | ||
5250 | |||
5251 | ; | ||
5252 | return 0; | ||
5253 | } | ||
5254 | _ACEOF | ||
5255 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5256 | ac_cv_sys_large_files=1; break | ||
5257 | fi | ||
5258 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5259 | ac_cv_sys_large_files=unknown | ||
5260 | break | ||
5261 | done | ||
5262 | fi | ||
5263 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 | ||
5264 | $as_echo "$ac_cv_sys_large_files" >&6; } | ||
5265 | case $ac_cv_sys_large_files in #( | ||
5266 | no | unknown) ;; | ||
5267 | *) | ||
5268 | cat >>confdefs.h <<_ACEOF | ||
5269 | #define _LARGE_FILES $ac_cv_sys_large_files | ||
5270 | _ACEOF | ||
5271 | ;; | ||
5272 | esac | ||
5273 | rm -rf conftest* | ||
5274 | fi | ||
5275 | |||
5276 | |||
5277 | fi | ||
5278 | |||
5279 | |||
5280 | if test -z "$AR" ; then | ||
5281 | as_fn_error $? "*** 'ar' missing, please install or fix your \$PATH ***" "$LINENO" 5 | ||
5282 | fi | ||
5283 | |||
5284 | # Extract the first word of "passwd", so it can be a program name with args. | ||
5285 | set dummy passwd; ac_word=$2 | ||
5286 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
5287 | $as_echo_n "checking for $ac_word... " >&6; } | ||
5288 | if ${ac_cv_path_PATH_PASSWD_PROG+:} false; then : | ||
5289 | $as_echo_n "(cached) " >&6 | ||
5290 | else | ||
5291 | case $PATH_PASSWD_PROG in | ||
5292 | [\\/]* | ?:[\\/]*) | ||
5293 | ac_cv_path_PATH_PASSWD_PROG="$PATH_PASSWD_PROG" # Let the user override the test with a path. | ||
5294 | ;; | ||
5295 | *) | ||
5296 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
5297 | for as_dir in $PATH | ||
5298 | do | ||
5299 | IFS=$as_save_IFS | ||
5300 | test -z "$as_dir" && as_dir=. | ||
5301 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
5302 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
5303 | ac_cv_path_PATH_PASSWD_PROG="$as_dir/$ac_word$ac_exec_ext" | ||
5304 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
5305 | break 2 | ||
5306 | fi | ||
5307 | done | ||
5308 | done | ||
5309 | IFS=$as_save_IFS | ||
5310 | |||
5311 | ;; | ||
5312 | esac | ||
5313 | fi | ||
5314 | PATH_PASSWD_PROG=$ac_cv_path_PATH_PASSWD_PROG | ||
5315 | if test -n "$PATH_PASSWD_PROG"; then | ||
5316 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_PASSWD_PROG" >&5 | ||
5317 | $as_echo "$PATH_PASSWD_PROG" >&6; } | ||
5318 | else | ||
5319 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5320 | $as_echo "no" >&6; } | ||
5321 | fi | ||
5322 | |||
5323 | |||
5324 | if test ! -z "$PATH_PASSWD_PROG" ; then | ||
5325 | |||
5326 | cat >>confdefs.h <<_ACEOF | ||
5327 | #define _PATH_PASSWD_PROG "$PATH_PASSWD_PROG" | ||
5328 | _ACEOF | ||
5329 | |||
5330 | fi | ||
5331 | |||
5332 | LD="$CC" | ||
5333 | |||
5334 | |||
5335 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 | ||
5336 | $as_echo_n "checking for inline... " >&6; } | ||
5337 | if ${ac_cv_c_inline+:} false; then : | ||
5338 | $as_echo_n "(cached) " >&6 | ||
5339 | else | ||
5340 | ac_cv_c_inline=no | ||
5341 | for ac_kw in inline __inline__ __inline; do | ||
5342 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5343 | /* end confdefs.h. */ | ||
5344 | #ifndef __cplusplus | ||
5345 | typedef int foo_t; | ||
5346 | static $ac_kw foo_t static_foo () {return 0; } | ||
5347 | $ac_kw foo_t foo () {return 0; } | ||
5348 | #endif | ||
5349 | |||
5350 | _ACEOF | ||
5351 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5352 | ac_cv_c_inline=$ac_kw | ||
5353 | fi | ||
5354 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5355 | test "$ac_cv_c_inline" != no && break | ||
5356 | done | ||
5357 | |||
5358 | fi | ||
5359 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 | ||
5360 | $as_echo "$ac_cv_c_inline" >&6; } | ||
5361 | |||
5362 | case $ac_cv_c_inline in | ||
5363 | inline | yes) ;; | ||
5364 | *) | ||
5365 | case $ac_cv_c_inline in | ||
5366 | no) ac_val=;; | ||
5367 | *) ac_val=$ac_cv_c_inline;; | ||
5368 | esac | ||
5369 | cat >>confdefs.h <<_ACEOF | ||
5370 | #ifndef __cplusplus | ||
5371 | #define inline $ac_val | ||
5372 | #endif | ||
5373 | _ACEOF | ||
5374 | ;; | ||
5375 | esac | ||
5376 | |||
5377 | |||
5378 | ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h> | ||
5379 | " | ||
5380 | if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then : | ||
5381 | have_llong_max=1 | ||
5382 | fi | ||
5383 | |||
5384 | ac_fn_c_check_decl "$LINENO" "LONG_LONG_MAX" "ac_cv_have_decl_LONG_LONG_MAX" "#include <limits.h> | ||
5385 | " | ||
5386 | if test "x$ac_cv_have_decl_LONG_LONG_MAX" = xyes; then : | ||
5387 | have_long_long_max=1 | ||
5388 | fi | ||
5389 | |||
5390 | ac_fn_c_check_decl "$LINENO" "SYSTR_POLICY_KILL" "ac_cv_have_decl_SYSTR_POLICY_KILL" " | ||
5391 | #include <sys/types.h> | ||
5392 | #include <sys/param.h> | ||
5393 | #include <dev/systrace.h> | ||
5394 | |||
5395 | " | ||
5396 | if test "x$ac_cv_have_decl_SYSTR_POLICY_KILL" = xyes; then : | ||
5397 | have_systr_policy_kill=1 | ||
5398 | fi | ||
5399 | |||
5400 | ac_fn_c_check_decl "$LINENO" "RLIMIT_NPROC" "ac_cv_have_decl_RLIMIT_NPROC" " | ||
5401 | #include <sys/types.h> | ||
5402 | #include <sys/resource.h> | ||
5403 | |||
5404 | " | ||
5405 | if test "x$ac_cv_have_decl_RLIMIT_NPROC" = xyes; then : | ||
5406 | |||
5407 | $as_echo "#define HAVE_RLIMIT_NPROC /**/" >>confdefs.h | ||
5408 | |||
5409 | fi | ||
5410 | |||
5411 | ac_fn_c_check_decl "$LINENO" "PR_SET_NO_NEW_PRIVS" "ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" " | ||
5412 | #include <sys/types.h> | ||
5413 | #include <linux/prctl.h> | ||
5414 | |||
5415 | " | ||
5416 | if test "x$ac_cv_have_decl_PR_SET_NO_NEW_PRIVS" = xyes; then : | ||
5417 | have_linux_no_new_privs=1 | ||
5418 | fi | ||
5419 | |||
5420 | |||
5421 | openssl=yes | ||
5422 | |||
5423 | # Check whether --with-openssl was given. | ||
5424 | if test "${with_openssl+set}" = set; then : | ||
5425 | withval=$with_openssl; if test "x$withval" = "xno" ; then | ||
5426 | openssl=no | ||
5427 | fi | ||
5428 | |||
5429 | |||
5430 | fi | ||
5431 | |||
5432 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL will be used for cryptography" >&5 | ||
5433 | $as_echo_n "checking whether OpenSSL will be used for cryptography... " >&6; } | ||
5434 | if test "x$openssl" = "xyes" ; then | ||
5435 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5436 | $as_echo "yes" >&6; } | ||
5437 | |||
5438 | cat >>confdefs.h <<_ACEOF | ||
5439 | #define WITH_OPENSSL 1 | ||
5440 | _ACEOF | ||
5441 | |||
5442 | else | ||
5443 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5444 | $as_echo "no" >&6; } | ||
5445 | fi | ||
5446 | |||
5447 | use_stack_protector=1 | ||
5448 | use_toolchain_hardening=1 | ||
5449 | |||
5450 | # Check whether --with-stackprotect was given. | ||
5451 | if test "${with_stackprotect+set}" = set; then : | ||
5452 | withval=$with_stackprotect; | ||
5453 | if test "x$withval" = "xno"; then | ||
5454 | use_stack_protector=0 | ||
5455 | fi | ||
5456 | fi | ||
5457 | |||
5458 | |||
5459 | # Check whether --with-hardening was given. | ||
5460 | if test "${with_hardening+set}" = set; then : | ||
5461 | withval=$with_hardening; | ||
5462 | if test "x$withval" = "xno"; then | ||
5463 | use_toolchain_hardening=0 | ||
5464 | fi | ||
5465 | fi | ||
5466 | |||
5467 | |||
5468 | # We use -Werror for the tests only so that we catch warnings like "this is | ||
5469 | # on by default" for things like -fPIE. | ||
5470 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror" >&5 | ||
5471 | $as_echo_n "checking if $CC supports -Werror... " >&6; } | ||
5472 | saved_CFLAGS="$CFLAGS" | ||
5473 | CFLAGS="$CFLAGS -Werror" | ||
5474 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5475 | /* end confdefs.h. */ | ||
5476 | int main(void) { return 0; } | ||
5477 | _ACEOF | ||
5478 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5479 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5480 | $as_echo "yes" >&6; } | ||
5481 | WERROR="-Werror" | ||
5482 | else | ||
5483 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5484 | $as_echo "no" >&6; } | ||
5485 | WERROR="" | ||
5486 | |||
5487 | fi | ||
5488 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5489 | CFLAGS="$saved_CFLAGS" | ||
5490 | |||
5491 | if test "$GCC" = "yes" || test "$GCC" = "egcs"; then | ||
5492 | { | ||
5493 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -pipe" >&5 | ||
5494 | $as_echo_n "checking if $CC supports compile flag -pipe... " >&6; } | ||
5495 | saved_CFLAGS="$CFLAGS" | ||
5496 | CFLAGS="$CFLAGS $WERROR -pipe" | ||
5497 | _define_flag="" | ||
5498 | test "x$_define_flag" = "x" && _define_flag="-pipe" | ||
5499 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5500 | /* end confdefs.h. */ | ||
5501 | |||
5502 | #include <stdlib.h> | ||
5503 | #include <stdio.h> | ||
5504 | int main(int argc, char **argv) { | ||
5505 | (void)argv; | ||
5506 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5507 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5508 | float l = i * 2.1; | ||
5509 | double m = l / 0.5; | ||
5510 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5511 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5512 | /* | ||
5513 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5514 | * not understand comments and we don't use the "fallthrough" attribute | ||
5515 | * that it's looking for. | ||
5516 | */ | ||
5517 | switch(i){ | ||
5518 | case 0: j += i; | ||
5519 | /* FALLTHROUGH */ | ||
5520 | default: j += k; | ||
5521 | } | ||
5522 | exit(0); | ||
5523 | } | ||
5524 | |||
5525 | _ACEOF | ||
5526 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5527 | |||
5528 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5529 | then | ||
5530 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5531 | $as_echo "no" >&6; } | ||
5532 | CFLAGS="$saved_CFLAGS" | ||
5533 | else | ||
5534 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5535 | $as_echo "yes" >&6; } | ||
5536 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5537 | fi | ||
5538 | else | ||
5539 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5540 | $as_echo "no" >&6; } | ||
5541 | CFLAGS="$saved_CFLAGS" | ||
5542 | |||
5543 | fi | ||
5544 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5545 | } | ||
5546 | { | ||
5547 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunknown-warning-option" >&5 | ||
5548 | $as_echo_n "checking if $CC supports compile flag -Wunknown-warning-option... " >&6; } | ||
5549 | saved_CFLAGS="$CFLAGS" | ||
5550 | CFLAGS="$CFLAGS $WERROR -Wunknown-warning-option" | ||
5551 | _define_flag="" | ||
5552 | test "x$_define_flag" = "x" && _define_flag="-Wunknown-warning-option" | ||
5553 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5554 | /* end confdefs.h. */ | ||
5555 | |||
5556 | #include <stdlib.h> | ||
5557 | #include <stdio.h> | ||
5558 | int main(int argc, char **argv) { | ||
5559 | (void)argv; | ||
5560 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5561 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5562 | float l = i * 2.1; | ||
5563 | double m = l / 0.5; | ||
5564 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5565 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5566 | /* | ||
5567 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5568 | * not understand comments and we don't use the "fallthrough" attribute | ||
5569 | * that it's looking for. | ||
5570 | */ | ||
5571 | switch(i){ | ||
5572 | case 0: j += i; | ||
5573 | /* FALLTHROUGH */ | ||
5574 | default: j += k; | ||
5575 | } | ||
5576 | exit(0); | ||
5577 | } | ||
5578 | |||
5579 | _ACEOF | ||
5580 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5581 | |||
5582 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5583 | then | ||
5584 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5585 | $as_echo "no" >&6; } | ||
5586 | CFLAGS="$saved_CFLAGS" | ||
5587 | else | ||
5588 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5589 | $as_echo "yes" >&6; } | ||
5590 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5591 | fi | ||
5592 | else | ||
5593 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5594 | $as_echo "no" >&6; } | ||
5595 | CFLAGS="$saved_CFLAGS" | ||
5596 | |||
5597 | fi | ||
5598 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5599 | } | ||
5600 | { | ||
5601 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wno-error=format-truncation" >&5 | ||
5602 | $as_echo_n "checking if $CC supports compile flag -Wno-error=format-truncation... " >&6; } | ||
5603 | saved_CFLAGS="$CFLAGS" | ||
5604 | CFLAGS="$CFLAGS $WERROR -Wno-error=format-truncation" | ||
5605 | _define_flag="" | ||
5606 | test "x$_define_flag" = "x" && _define_flag="-Wno-error=format-truncation" | ||
5607 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5608 | /* end confdefs.h. */ | ||
5609 | |||
5610 | #include <stdlib.h> | ||
5611 | #include <stdio.h> | ||
5612 | int main(int argc, char **argv) { | ||
5613 | (void)argv; | ||
5614 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5615 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5616 | float l = i * 2.1; | ||
5617 | double m = l / 0.5; | ||
5618 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5619 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5620 | /* | ||
5621 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5622 | * not understand comments and we don't use the "fallthrough" attribute | ||
5623 | * that it's looking for. | ||
5624 | */ | ||
5625 | switch(i){ | ||
5626 | case 0: j += i; | ||
5627 | /* FALLTHROUGH */ | ||
5628 | default: j += k; | ||
5629 | } | ||
5630 | exit(0); | ||
5631 | } | ||
5632 | |||
5633 | _ACEOF | ||
5634 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5635 | |||
5636 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5637 | then | ||
5638 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5639 | $as_echo "no" >&6; } | ||
5640 | CFLAGS="$saved_CFLAGS" | ||
5641 | else | ||
5642 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5643 | $as_echo "yes" >&6; } | ||
5644 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5645 | fi | ||
5646 | else | ||
5647 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5648 | $as_echo "no" >&6; } | ||
5649 | CFLAGS="$saved_CFLAGS" | ||
5650 | |||
5651 | fi | ||
5652 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5653 | } | ||
5654 | { | ||
5655 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Qunused-arguments" >&5 | ||
5656 | $as_echo_n "checking if $CC supports compile flag -Qunused-arguments... " >&6; } | ||
5657 | saved_CFLAGS="$CFLAGS" | ||
5658 | CFLAGS="$CFLAGS $WERROR -Qunused-arguments" | ||
5659 | _define_flag="" | ||
5660 | test "x$_define_flag" = "x" && _define_flag="-Qunused-arguments" | ||
5661 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5662 | /* end confdefs.h. */ | ||
5663 | |||
5664 | #include <stdlib.h> | ||
5665 | #include <stdio.h> | ||
5666 | int main(int argc, char **argv) { | ||
5667 | (void)argv; | ||
5668 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5669 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5670 | float l = i * 2.1; | ||
5671 | double m = l / 0.5; | ||
5672 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5673 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5674 | /* | ||
5675 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5676 | * not understand comments and we don't use the "fallthrough" attribute | ||
5677 | * that it's looking for. | ||
5678 | */ | ||
5679 | switch(i){ | ||
5680 | case 0: j += i; | ||
5681 | /* FALLTHROUGH */ | ||
5682 | default: j += k; | ||
5683 | } | ||
5684 | exit(0); | ||
5685 | } | ||
5686 | |||
5687 | _ACEOF | ||
5688 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5689 | |||
5690 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5691 | then | ||
5692 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5693 | $as_echo "no" >&6; } | ||
5694 | CFLAGS="$saved_CFLAGS" | ||
5695 | else | ||
5696 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5697 | $as_echo "yes" >&6; } | ||
5698 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5699 | fi | ||
5700 | else | ||
5701 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5702 | $as_echo "no" >&6; } | ||
5703 | CFLAGS="$saved_CFLAGS" | ||
5704 | |||
5705 | fi | ||
5706 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5707 | } | ||
5708 | { | ||
5709 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wall" >&5 | ||
5710 | $as_echo_n "checking if $CC supports compile flag -Wall... " >&6; } | ||
5711 | saved_CFLAGS="$CFLAGS" | ||
5712 | CFLAGS="$CFLAGS $WERROR -Wall" | ||
5713 | _define_flag="" | ||
5714 | test "x$_define_flag" = "x" && _define_flag="-Wall" | ||
5715 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5716 | /* end confdefs.h. */ | ||
5717 | |||
5718 | #include <stdlib.h> | ||
5719 | #include <stdio.h> | ||
5720 | int main(int argc, char **argv) { | ||
5721 | (void)argv; | ||
5722 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5723 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5724 | float l = i * 2.1; | ||
5725 | double m = l / 0.5; | ||
5726 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5727 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5728 | /* | ||
5729 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5730 | * not understand comments and we don't use the "fallthrough" attribute | ||
5731 | * that it's looking for. | ||
5732 | */ | ||
5733 | switch(i){ | ||
5734 | case 0: j += i; | ||
5735 | /* FALLTHROUGH */ | ||
5736 | default: j += k; | ||
5737 | } | ||
5738 | exit(0); | ||
5739 | } | ||
5740 | |||
5741 | _ACEOF | ||
5742 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5743 | |||
5744 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5745 | then | ||
5746 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5747 | $as_echo "no" >&6; } | ||
5748 | CFLAGS="$saved_CFLAGS" | ||
5749 | else | ||
5750 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5751 | $as_echo "yes" >&6; } | ||
5752 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5753 | fi | ||
5754 | else | ||
5755 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5756 | $as_echo "no" >&6; } | ||
5757 | CFLAGS="$saved_CFLAGS" | ||
5758 | |||
5759 | fi | ||
5760 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5761 | } | ||
5762 | { | ||
5763 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wextra" >&5 | ||
5764 | $as_echo_n "checking if $CC supports compile flag -Wextra... " >&6; } | ||
5765 | saved_CFLAGS="$CFLAGS" | ||
5766 | CFLAGS="$CFLAGS $WERROR -Wextra" | ||
5767 | _define_flag="" | ||
5768 | test "x$_define_flag" = "x" && _define_flag="-Wextra" | ||
5769 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5770 | /* end confdefs.h. */ | ||
5771 | |||
5772 | #include <stdlib.h> | ||
5773 | #include <stdio.h> | ||
5774 | int main(int argc, char **argv) { | ||
5775 | (void)argv; | ||
5776 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5777 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5778 | float l = i * 2.1; | ||
5779 | double m = l / 0.5; | ||
5780 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5781 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5782 | /* | ||
5783 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5784 | * not understand comments and we don't use the "fallthrough" attribute | ||
5785 | * that it's looking for. | ||
5786 | */ | ||
5787 | switch(i){ | ||
5788 | case 0: j += i; | ||
5789 | /* FALLTHROUGH */ | ||
5790 | default: j += k; | ||
5791 | } | ||
5792 | exit(0); | ||
5793 | } | ||
5794 | |||
5795 | _ACEOF | ||
5796 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5797 | |||
5798 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5799 | then | ||
5800 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5801 | $as_echo "no" >&6; } | ||
5802 | CFLAGS="$saved_CFLAGS" | ||
5803 | else | ||
5804 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5805 | $as_echo "yes" >&6; } | ||
5806 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5807 | fi | ||
5808 | else | ||
5809 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5810 | $as_echo "no" >&6; } | ||
5811 | CFLAGS="$saved_CFLAGS" | ||
5812 | |||
5813 | fi | ||
5814 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5815 | } | ||
5816 | { | ||
5817 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-arith" >&5 | ||
5818 | $as_echo_n "checking if $CC supports compile flag -Wpointer-arith... " >&6; } | ||
5819 | saved_CFLAGS="$CFLAGS" | ||
5820 | CFLAGS="$CFLAGS $WERROR -Wpointer-arith" | ||
5821 | _define_flag="" | ||
5822 | test "x$_define_flag" = "x" && _define_flag="-Wpointer-arith" | ||
5823 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5824 | /* end confdefs.h. */ | ||
5825 | |||
5826 | #include <stdlib.h> | ||
5827 | #include <stdio.h> | ||
5828 | int main(int argc, char **argv) { | ||
5829 | (void)argv; | ||
5830 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5831 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5832 | float l = i * 2.1; | ||
5833 | double m = l / 0.5; | ||
5834 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5835 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5836 | /* | ||
5837 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5838 | * not understand comments and we don't use the "fallthrough" attribute | ||
5839 | * that it's looking for. | ||
5840 | */ | ||
5841 | switch(i){ | ||
5842 | case 0: j += i; | ||
5843 | /* FALLTHROUGH */ | ||
5844 | default: j += k; | ||
5845 | } | ||
5846 | exit(0); | ||
5847 | } | ||
5848 | |||
5849 | _ACEOF | ||
5850 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5851 | |||
5852 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5853 | then | ||
5854 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5855 | $as_echo "no" >&6; } | ||
5856 | CFLAGS="$saved_CFLAGS" | ||
5857 | else | ||
5858 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5859 | $as_echo "yes" >&6; } | ||
5860 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5861 | fi | ||
5862 | else | ||
5863 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5864 | $as_echo "no" >&6; } | ||
5865 | CFLAGS="$saved_CFLAGS" | ||
5866 | |||
5867 | fi | ||
5868 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5869 | } | ||
5870 | { | ||
5871 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wuninitialized" >&5 | ||
5872 | $as_echo_n "checking if $CC supports compile flag -Wuninitialized... " >&6; } | ||
5873 | saved_CFLAGS="$CFLAGS" | ||
5874 | CFLAGS="$CFLAGS $WERROR -Wuninitialized" | ||
5875 | _define_flag="" | ||
5876 | test "x$_define_flag" = "x" && _define_flag="-Wuninitialized" | ||
5877 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5878 | /* end confdefs.h. */ | ||
5879 | |||
5880 | #include <stdlib.h> | ||
5881 | #include <stdio.h> | ||
5882 | int main(int argc, char **argv) { | ||
5883 | (void)argv; | ||
5884 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5885 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5886 | float l = i * 2.1; | ||
5887 | double m = l / 0.5; | ||
5888 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5889 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5890 | /* | ||
5891 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5892 | * not understand comments and we don't use the "fallthrough" attribute | ||
5893 | * that it's looking for. | ||
5894 | */ | ||
5895 | switch(i){ | ||
5896 | case 0: j += i; | ||
5897 | /* FALLTHROUGH */ | ||
5898 | default: j += k; | ||
5899 | } | ||
5900 | exit(0); | ||
5901 | } | ||
5902 | |||
5903 | _ACEOF | ||
5904 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5905 | |||
5906 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5907 | then | ||
5908 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5909 | $as_echo "no" >&6; } | ||
5910 | CFLAGS="$saved_CFLAGS" | ||
5911 | else | ||
5912 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5913 | $as_echo "yes" >&6; } | ||
5914 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5915 | fi | ||
5916 | else | ||
5917 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5918 | $as_echo "no" >&6; } | ||
5919 | CFLAGS="$saved_CFLAGS" | ||
5920 | |||
5921 | fi | ||
5922 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5923 | } | ||
5924 | { | ||
5925 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsign-compare" >&5 | ||
5926 | $as_echo_n "checking if $CC supports compile flag -Wsign-compare... " >&6; } | ||
5927 | saved_CFLAGS="$CFLAGS" | ||
5928 | CFLAGS="$CFLAGS $WERROR -Wsign-compare" | ||
5929 | _define_flag="" | ||
5930 | test "x$_define_flag" = "x" && _define_flag="-Wsign-compare" | ||
5931 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5932 | /* end confdefs.h. */ | ||
5933 | |||
5934 | #include <stdlib.h> | ||
5935 | #include <stdio.h> | ||
5936 | int main(int argc, char **argv) { | ||
5937 | (void)argv; | ||
5938 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5939 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5940 | float l = i * 2.1; | ||
5941 | double m = l / 0.5; | ||
5942 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5943 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5944 | /* | ||
5945 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
5946 | * not understand comments and we don't use the "fallthrough" attribute | ||
5947 | * that it's looking for. | ||
5948 | */ | ||
5949 | switch(i){ | ||
5950 | case 0: j += i; | ||
5951 | /* FALLTHROUGH */ | ||
5952 | default: j += k; | ||
5953 | } | ||
5954 | exit(0); | ||
5955 | } | ||
5956 | |||
5957 | _ACEOF | ||
5958 | if ac_fn_c_try_compile "$LINENO"; then : | ||
5959 | |||
5960 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
5961 | then | ||
5962 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5963 | $as_echo "no" >&6; } | ||
5964 | CFLAGS="$saved_CFLAGS" | ||
5965 | else | ||
5966 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
5967 | $as_echo "yes" >&6; } | ||
5968 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
5969 | fi | ||
5970 | else | ||
5971 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
5972 | $as_echo "no" >&6; } | ||
5973 | CFLAGS="$saved_CFLAGS" | ||
5974 | |||
5975 | fi | ||
5976 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
5977 | } | ||
5978 | { | ||
5979 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wformat-security" >&5 | ||
5980 | $as_echo_n "checking if $CC supports compile flag -Wformat-security... " >&6; } | ||
5981 | saved_CFLAGS="$CFLAGS" | ||
5982 | CFLAGS="$CFLAGS $WERROR -Wformat-security" | ||
5983 | _define_flag="" | ||
5984 | test "x$_define_flag" = "x" && _define_flag="-Wformat-security" | ||
5985 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
5986 | /* end confdefs.h. */ | ||
5987 | |||
5988 | #include <stdlib.h> | ||
5989 | #include <stdio.h> | ||
5990 | int main(int argc, char **argv) { | ||
5991 | (void)argv; | ||
5992 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
5993 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
5994 | float l = i * 2.1; | ||
5995 | double m = l / 0.5; | ||
5996 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
5997 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
5998 | /* | ||
5999 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6000 | * not understand comments and we don't use the "fallthrough" attribute | ||
6001 | * that it's looking for. | ||
6002 | */ | ||
6003 | switch(i){ | ||
6004 | case 0: j += i; | ||
6005 | /* FALLTHROUGH */ | ||
6006 | default: j += k; | ||
6007 | } | ||
6008 | exit(0); | ||
6009 | } | ||
6010 | |||
6011 | _ACEOF | ||
6012 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6013 | |||
6014 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6015 | then | ||
6016 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6017 | $as_echo "no" >&6; } | ||
6018 | CFLAGS="$saved_CFLAGS" | ||
6019 | else | ||
6020 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6021 | $as_echo "yes" >&6; } | ||
6022 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6023 | fi | ||
6024 | else | ||
6025 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6026 | $as_echo "no" >&6; } | ||
6027 | CFLAGS="$saved_CFLAGS" | ||
6028 | |||
6029 | fi | ||
6030 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6031 | } | ||
6032 | { | ||
6033 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wsizeof-pointer-memaccess" >&5 | ||
6034 | $as_echo_n "checking if $CC supports compile flag -Wsizeof-pointer-memaccess... " >&6; } | ||
6035 | saved_CFLAGS="$CFLAGS" | ||
6036 | CFLAGS="$CFLAGS $WERROR -Wsizeof-pointer-memaccess" | ||
6037 | _define_flag="" | ||
6038 | test "x$_define_flag" = "x" && _define_flag="-Wsizeof-pointer-memaccess" | ||
6039 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6040 | /* end confdefs.h. */ | ||
6041 | |||
6042 | #include <stdlib.h> | ||
6043 | #include <stdio.h> | ||
6044 | int main(int argc, char **argv) { | ||
6045 | (void)argv; | ||
6046 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6047 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6048 | float l = i * 2.1; | ||
6049 | double m = l / 0.5; | ||
6050 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6051 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6052 | /* | ||
6053 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6054 | * not understand comments and we don't use the "fallthrough" attribute | ||
6055 | * that it's looking for. | ||
6056 | */ | ||
6057 | switch(i){ | ||
6058 | case 0: j += i; | ||
6059 | /* FALLTHROUGH */ | ||
6060 | default: j += k; | ||
6061 | } | ||
6062 | exit(0); | ||
6063 | } | ||
6064 | |||
6065 | _ACEOF | ||
6066 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6067 | |||
6068 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6069 | then | ||
6070 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6071 | $as_echo "no" >&6; } | ||
6072 | CFLAGS="$saved_CFLAGS" | ||
6073 | else | ||
6074 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6075 | $as_echo "yes" >&6; } | ||
6076 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6077 | fi | ||
6078 | else | ||
6079 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6080 | $as_echo "no" >&6; } | ||
6081 | CFLAGS="$saved_CFLAGS" | ||
6082 | |||
6083 | fi | ||
6084 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6085 | } | ||
6086 | { | ||
6087 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wpointer-sign" >&5 | ||
6088 | $as_echo_n "checking if $CC supports compile flag -Wpointer-sign... " >&6; } | ||
6089 | saved_CFLAGS="$CFLAGS" | ||
6090 | CFLAGS="$CFLAGS $WERROR -Wpointer-sign" | ||
6091 | _define_flag="-Wno-pointer-sign" | ||
6092 | test "x$_define_flag" = "x" && _define_flag="-Wpointer-sign" | ||
6093 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6094 | /* end confdefs.h. */ | ||
6095 | |||
6096 | #include <stdlib.h> | ||
6097 | #include <stdio.h> | ||
6098 | int main(int argc, char **argv) { | ||
6099 | (void)argv; | ||
6100 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6101 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6102 | float l = i * 2.1; | ||
6103 | double m = l / 0.5; | ||
6104 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6105 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6106 | /* | ||
6107 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6108 | * not understand comments and we don't use the "fallthrough" attribute | ||
6109 | * that it's looking for. | ||
6110 | */ | ||
6111 | switch(i){ | ||
6112 | case 0: j += i; | ||
6113 | /* FALLTHROUGH */ | ||
6114 | default: j += k; | ||
6115 | } | ||
6116 | exit(0); | ||
6117 | } | ||
6118 | |||
6119 | _ACEOF | ||
6120 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6121 | |||
6122 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6123 | then | ||
6124 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6125 | $as_echo "no" >&6; } | ||
6126 | CFLAGS="$saved_CFLAGS" | ||
6127 | else | ||
6128 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6129 | $as_echo "yes" >&6; } | ||
6130 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6131 | fi | ||
6132 | else | ||
6133 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6134 | $as_echo "no" >&6; } | ||
6135 | CFLAGS="$saved_CFLAGS" | ||
6136 | |||
6137 | fi | ||
6138 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6139 | } | ||
6140 | { | ||
6141 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunused-parameter" >&5 | ||
6142 | $as_echo_n "checking if $CC supports compile flag -Wunused-parameter... " >&6; } | ||
6143 | saved_CFLAGS="$CFLAGS" | ||
6144 | CFLAGS="$CFLAGS $WERROR -Wunused-parameter" | ||
6145 | _define_flag="-Wno-unused-parameter" | ||
6146 | test "x$_define_flag" = "x" && _define_flag="-Wunused-parameter" | ||
6147 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6148 | /* end confdefs.h. */ | ||
6149 | |||
6150 | #include <stdlib.h> | ||
6151 | #include <stdio.h> | ||
6152 | int main(int argc, char **argv) { | ||
6153 | (void)argv; | ||
6154 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6155 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6156 | float l = i * 2.1; | ||
6157 | double m = l / 0.5; | ||
6158 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6159 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6160 | /* | ||
6161 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6162 | * not understand comments and we don't use the "fallthrough" attribute | ||
6163 | * that it's looking for. | ||
6164 | */ | ||
6165 | switch(i){ | ||
6166 | case 0: j += i; | ||
6167 | /* FALLTHROUGH */ | ||
6168 | default: j += k; | ||
6169 | } | ||
6170 | exit(0); | ||
6171 | } | ||
6172 | |||
6173 | _ACEOF | ||
6174 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6175 | |||
6176 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6177 | then | ||
6178 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6179 | $as_echo "no" >&6; } | ||
6180 | CFLAGS="$saved_CFLAGS" | ||
6181 | else | ||
6182 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6183 | $as_echo "yes" >&6; } | ||
6184 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6185 | fi | ||
6186 | else | ||
6187 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6188 | $as_echo "no" >&6; } | ||
6189 | CFLAGS="$saved_CFLAGS" | ||
6190 | |||
6191 | fi | ||
6192 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6193 | } | ||
6194 | { | ||
6195 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wunused-result" >&5 | ||
6196 | $as_echo_n "checking if $CC supports compile flag -Wunused-result... " >&6; } | ||
6197 | saved_CFLAGS="$CFLAGS" | ||
6198 | CFLAGS="$CFLAGS $WERROR -Wunused-result" | ||
6199 | _define_flag="-Wno-unused-result" | ||
6200 | test "x$_define_flag" = "x" && _define_flag="-Wunused-result" | ||
6201 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6202 | /* end confdefs.h. */ | ||
6203 | |||
6204 | #include <stdlib.h> | ||
6205 | #include <stdio.h> | ||
6206 | int main(int argc, char **argv) { | ||
6207 | (void)argv; | ||
6208 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6209 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6210 | float l = i * 2.1; | ||
6211 | double m = l / 0.5; | ||
6212 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6213 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6214 | /* | ||
6215 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6216 | * not understand comments and we don't use the "fallthrough" attribute | ||
6217 | * that it's looking for. | ||
6218 | */ | ||
6219 | switch(i){ | ||
6220 | case 0: j += i; | ||
6221 | /* FALLTHROUGH */ | ||
6222 | default: j += k; | ||
6223 | } | ||
6224 | exit(0); | ||
6225 | } | ||
6226 | |||
6227 | _ACEOF | ||
6228 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6229 | |||
6230 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6231 | then | ||
6232 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6233 | $as_echo "no" >&6; } | ||
6234 | CFLAGS="$saved_CFLAGS" | ||
6235 | else | ||
6236 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6237 | $as_echo "yes" >&6; } | ||
6238 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6239 | fi | ||
6240 | else | ||
6241 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6242 | $as_echo "no" >&6; } | ||
6243 | CFLAGS="$saved_CFLAGS" | ||
6244 | |||
6245 | fi | ||
6246 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6247 | } | ||
6248 | { | ||
6249 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wimplicit-fallthrough" >&5 | ||
6250 | $as_echo_n "checking if $CC supports compile flag -Wimplicit-fallthrough... " >&6; } | ||
6251 | saved_CFLAGS="$CFLAGS" | ||
6252 | CFLAGS="$CFLAGS $WERROR -Wimplicit-fallthrough" | ||
6253 | _define_flag="" | ||
6254 | test "x$_define_flag" = "x" && _define_flag="-Wimplicit-fallthrough" | ||
6255 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6256 | /* end confdefs.h. */ | ||
6257 | |||
6258 | #include <stdlib.h> | ||
6259 | #include <stdio.h> | ||
6260 | int main(int argc, char **argv) { | ||
6261 | (void)argv; | ||
6262 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6263 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6264 | float l = i * 2.1; | ||
6265 | double m = l / 0.5; | ||
6266 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6267 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6268 | /* | ||
6269 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6270 | * not understand comments and we don't use the "fallthrough" attribute | ||
6271 | * that it's looking for. | ||
6272 | */ | ||
6273 | switch(i){ | ||
6274 | case 0: j += i; | ||
6275 | /* FALLTHROUGH */ | ||
6276 | default: j += k; | ||
6277 | } | ||
6278 | exit(0); | ||
6279 | } | ||
6280 | |||
6281 | _ACEOF | ||
6282 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6283 | |||
6284 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6285 | then | ||
6286 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6287 | $as_echo "no" >&6; } | ||
6288 | CFLAGS="$saved_CFLAGS" | ||
6289 | else | ||
6290 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6291 | $as_echo "yes" >&6; } | ||
6292 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6293 | fi | ||
6294 | else | ||
6295 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6296 | $as_echo "no" >&6; } | ||
6297 | CFLAGS="$saved_CFLAGS" | ||
6298 | |||
6299 | fi | ||
6300 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6301 | } | ||
6302 | { | ||
6303 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fno-strict-aliasing" >&5 | ||
6304 | $as_echo_n "checking if $CC supports compile flag -fno-strict-aliasing... " >&6; } | ||
6305 | saved_CFLAGS="$CFLAGS" | ||
6306 | CFLAGS="$CFLAGS $WERROR -fno-strict-aliasing" | ||
6307 | _define_flag="" | ||
6308 | test "x$_define_flag" = "x" && _define_flag="-fno-strict-aliasing" | ||
6309 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6310 | /* end confdefs.h. */ | ||
6311 | |||
6312 | #include <stdlib.h> | ||
6313 | #include <stdio.h> | ||
6314 | int main(int argc, char **argv) { | ||
6315 | (void)argv; | ||
6316 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6317 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6318 | float l = i * 2.1; | ||
6319 | double m = l / 0.5; | ||
6320 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6321 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6322 | /* | ||
6323 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6324 | * not understand comments and we don't use the "fallthrough" attribute | ||
6325 | * that it's looking for. | ||
6326 | */ | ||
6327 | switch(i){ | ||
6328 | case 0: j += i; | ||
6329 | /* FALLTHROUGH */ | ||
6330 | default: j += k; | ||
6331 | } | ||
6332 | exit(0); | ||
6333 | } | ||
6334 | |||
6335 | _ACEOF | ||
6336 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6337 | |||
6338 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6339 | then | ||
6340 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6341 | $as_echo "no" >&6; } | ||
6342 | CFLAGS="$saved_CFLAGS" | ||
6343 | else | ||
6344 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6345 | $as_echo "yes" >&6; } | ||
6346 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6347 | fi | ||
6348 | else | ||
6349 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6350 | $as_echo "no" >&6; } | ||
6351 | CFLAGS="$saved_CFLAGS" | ||
6352 | |||
6353 | fi | ||
6354 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6355 | } | ||
6356 | if test "x$use_toolchain_hardening" = "x1"; then | ||
6357 | { | ||
6358 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -mretpoline" >&5 | ||
6359 | $as_echo_n "checking if $CC supports compile flag -mretpoline... " >&6; } | ||
6360 | saved_CFLAGS="$CFLAGS" | ||
6361 | CFLAGS="$CFLAGS $WERROR -mretpoline" | ||
6362 | _define_flag="" | ||
6363 | test "x$_define_flag" = "x" && _define_flag="-mretpoline" | ||
6364 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6365 | /* end confdefs.h. */ | ||
6366 | |||
6367 | #include <stdlib.h> | ||
6368 | #include <stdio.h> | ||
6369 | int main(int argc, char **argv) { | ||
6370 | (void)argv; | ||
6371 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6372 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6373 | float l = i * 2.1; | ||
6374 | double m = l / 0.5; | ||
6375 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6376 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6377 | /* | ||
6378 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6379 | * not understand comments and we don't use the "fallthrough" attribute | ||
6380 | * that it's looking for. | ||
6381 | */ | ||
6382 | switch(i){ | ||
6383 | case 0: j += i; | ||
6384 | /* FALLTHROUGH */ | ||
6385 | default: j += k; | ||
6386 | } | ||
6387 | exit(0); | ||
6388 | } | ||
6389 | |||
6390 | _ACEOF | ||
6391 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6392 | |||
6393 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6394 | then | ||
6395 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6396 | $as_echo "no" >&6; } | ||
6397 | CFLAGS="$saved_CFLAGS" | ||
6398 | else | ||
6399 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6400 | $as_echo "yes" >&6; } | ||
6401 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6402 | fi | ||
6403 | else | ||
6404 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6405 | $as_echo "no" >&6; } | ||
6406 | CFLAGS="$saved_CFLAGS" | ||
6407 | |||
6408 | fi | ||
6409 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6410 | } # clang | ||
6411 | { | ||
6412 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,retpolineplt" >&5 | ||
6413 | $as_echo_n "checking if $LD supports link flag -Wl,-z,retpolineplt... " >&6; } | ||
6414 | saved_LDFLAGS="$LDFLAGS" | ||
6415 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,retpolineplt" | ||
6416 | _define_flag="" | ||
6417 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,retpolineplt" | ||
6418 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6419 | /* end confdefs.h. */ | ||
6420 | |||
6421 | #include <stdlib.h> | ||
6422 | #include <stdio.h> | ||
6423 | int main(int argc, char **argv) { | ||
6424 | (void)argv; | ||
6425 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6426 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6427 | float l = i * 2.1; | ||
6428 | double m = l / 0.5; | ||
6429 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6430 | long long p = n * o; | ||
6431 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
6432 | exit(0); | ||
6433 | } | ||
6434 | |||
6435 | _ACEOF | ||
6436 | if ac_fn_c_try_link "$LINENO"; then : | ||
6437 | |||
6438 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6439 | then | ||
6440 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6441 | $as_echo "no" >&6; } | ||
6442 | LDFLAGS="$saved_LDFLAGS" | ||
6443 | else | ||
6444 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6445 | $as_echo "yes" >&6; } | ||
6446 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6447 | fi | ||
6448 | else | ||
6449 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6450 | $as_echo "no" >&6; } | ||
6451 | LDFLAGS="$saved_LDFLAGS" | ||
6452 | |||
6453 | fi | ||
6454 | rm -f core conftest.err conftest.$ac_objext \ | ||
6455 | conftest$ac_exeext conftest.$ac_ext | ||
6456 | } | ||
6457 | { | ||
6458 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -D_FORTIFY_SOURCE=2" >&5 | ||
6459 | $as_echo_n "checking if $CC supports compile flag -D_FORTIFY_SOURCE=2... " >&6; } | ||
6460 | saved_CFLAGS="$CFLAGS" | ||
6461 | CFLAGS="$CFLAGS $WERROR -D_FORTIFY_SOURCE=2" | ||
6462 | _define_flag="" | ||
6463 | test "x$_define_flag" = "x" && _define_flag="-D_FORTIFY_SOURCE=2" | ||
6464 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6465 | /* end confdefs.h. */ | ||
6466 | |||
6467 | #include <stdlib.h> | ||
6468 | #include <stdio.h> | ||
6469 | int main(int argc, char **argv) { | ||
6470 | (void)argv; | ||
6471 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6472 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6473 | float l = i * 2.1; | ||
6474 | double m = l / 0.5; | ||
6475 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6476 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
6477 | /* | ||
6478 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
6479 | * not understand comments and we don't use the "fallthrough" attribute | ||
6480 | * that it's looking for. | ||
6481 | */ | ||
6482 | switch(i){ | ||
6483 | case 0: j += i; | ||
6484 | /* FALLTHROUGH */ | ||
6485 | default: j += k; | ||
6486 | } | ||
6487 | exit(0); | ||
6488 | } | ||
6489 | |||
6490 | _ACEOF | ||
6491 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6492 | |||
6493 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6494 | then | ||
6495 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6496 | $as_echo "no" >&6; } | ||
6497 | CFLAGS="$saved_CFLAGS" | ||
6498 | else | ||
6499 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6500 | $as_echo "yes" >&6; } | ||
6501 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6502 | fi | ||
6503 | else | ||
6504 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6505 | $as_echo "no" >&6; } | ||
6506 | CFLAGS="$saved_CFLAGS" | ||
6507 | |||
6508 | fi | ||
6509 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6510 | } | ||
6511 | { | ||
6512 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,relro" >&5 | ||
6513 | $as_echo_n "checking if $LD supports link flag -Wl,-z,relro... " >&6; } | ||
6514 | saved_LDFLAGS="$LDFLAGS" | ||
6515 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,relro" | ||
6516 | _define_flag="" | ||
6517 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,relro" | ||
6518 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6519 | /* end confdefs.h. */ | ||
6520 | |||
6521 | #include <stdlib.h> | ||
6522 | #include <stdio.h> | ||
6523 | int main(int argc, char **argv) { | ||
6524 | (void)argv; | ||
6525 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6526 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6527 | float l = i * 2.1; | ||
6528 | double m = l / 0.5; | ||
6529 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6530 | long long p = n * o; | ||
6531 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
6532 | exit(0); | ||
6533 | } | ||
6534 | |||
6535 | _ACEOF | ||
6536 | if ac_fn_c_try_link "$LINENO"; then : | ||
6537 | |||
6538 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6539 | then | ||
6540 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6541 | $as_echo "no" >&6; } | ||
6542 | LDFLAGS="$saved_LDFLAGS" | ||
6543 | else | ||
6544 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6545 | $as_echo "yes" >&6; } | ||
6546 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6547 | fi | ||
6548 | else | ||
6549 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6550 | $as_echo "no" >&6; } | ||
6551 | LDFLAGS="$saved_LDFLAGS" | ||
6552 | |||
6553 | fi | ||
6554 | rm -f core conftest.err conftest.$ac_objext \ | ||
6555 | conftest$ac_exeext conftest.$ac_ext | ||
6556 | } | ||
6557 | { | ||
6558 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,now" >&5 | ||
6559 | $as_echo_n "checking if $LD supports link flag -Wl,-z,now... " >&6; } | ||
6560 | saved_LDFLAGS="$LDFLAGS" | ||
6561 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,now" | ||
6562 | _define_flag="" | ||
6563 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,now" | ||
6564 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6565 | /* end confdefs.h. */ | ||
6566 | |||
6567 | #include <stdlib.h> | ||
6568 | #include <stdio.h> | ||
6569 | int main(int argc, char **argv) { | ||
6570 | (void)argv; | ||
6571 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6572 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6573 | float l = i * 2.1; | ||
6574 | double m = l / 0.5; | ||
6575 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6576 | long long p = n * o; | ||
6577 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
6578 | exit(0); | ||
6579 | } | ||
6580 | |||
6581 | _ACEOF | ||
6582 | if ac_fn_c_try_link "$LINENO"; then : | ||
6583 | |||
6584 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6585 | then | ||
6586 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6587 | $as_echo "no" >&6; } | ||
6588 | LDFLAGS="$saved_LDFLAGS" | ||
6589 | else | ||
6590 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6591 | $as_echo "yes" >&6; } | ||
6592 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6593 | fi | ||
6594 | else | ||
6595 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6596 | $as_echo "no" >&6; } | ||
6597 | LDFLAGS="$saved_LDFLAGS" | ||
6598 | |||
6599 | fi | ||
6600 | rm -f core conftest.err conftest.$ac_objext \ | ||
6601 | conftest$ac_exeext conftest.$ac_ext | ||
6602 | } | ||
6603 | { | ||
6604 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -Wl,-z,noexecstack" >&5 | ||
6605 | $as_echo_n "checking if $LD supports link flag -Wl,-z,noexecstack... " >&6; } | ||
6606 | saved_LDFLAGS="$LDFLAGS" | ||
6607 | LDFLAGS="$LDFLAGS $WERROR -Wl,-z,noexecstack" | ||
6608 | _define_flag="" | ||
6609 | test "x$_define_flag" = "x" && _define_flag="-Wl,-z,noexecstack" | ||
6610 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6611 | /* end confdefs.h. */ | ||
6612 | |||
6613 | #include <stdlib.h> | ||
6614 | #include <stdio.h> | ||
6615 | int main(int argc, char **argv) { | ||
6616 | (void)argv; | ||
6617 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6618 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6619 | float l = i * 2.1; | ||
6620 | double m = l / 0.5; | ||
6621 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6622 | long long p = n * o; | ||
6623 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
6624 | exit(0); | ||
6625 | } | ||
6626 | |||
6627 | _ACEOF | ||
6628 | if ac_fn_c_try_link "$LINENO"; then : | ||
6629 | |||
6630 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6631 | then | ||
6632 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6633 | $as_echo "no" >&6; } | ||
6634 | LDFLAGS="$saved_LDFLAGS" | ||
6635 | else | ||
6636 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6637 | $as_echo "yes" >&6; } | ||
6638 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
6639 | fi | ||
6640 | else | ||
6641 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6642 | $as_echo "no" >&6; } | ||
6643 | LDFLAGS="$saved_LDFLAGS" | ||
6644 | |||
6645 | fi | ||
6646 | rm -f core conftest.err conftest.$ac_objext \ | ||
6647 | conftest$ac_exeext conftest.$ac_ext | ||
6648 | } | ||
6649 | # NB. -ftrapv expects certain support functions to be present in | ||
6650 | # the compiler library (libgcc or similar) to detect integer operations | ||
6651 | # that can overflow. We must check that the result of enabling it | ||
6652 | # actually links. The test program compiled/linked includes a number | ||
6653 | # of integer operations that should exercise this. | ||
6654 | { | ||
6655 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -ftrapv and linking succeeds" >&5 | ||
6656 | $as_echo_n "checking if $CC supports compile flag -ftrapv and linking succeeds... " >&6; } | ||
6657 | saved_CFLAGS="$CFLAGS" | ||
6658 | CFLAGS="$CFLAGS $WERROR -ftrapv" | ||
6659 | _define_flag="" | ||
6660 | test "x$_define_flag" = "x" && _define_flag="-ftrapv" | ||
6661 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6662 | /* end confdefs.h. */ | ||
6663 | |||
6664 | #include <stdlib.h> | ||
6665 | #include <stdio.h> | ||
6666 | int main(int argc, char **argv) { | ||
6667 | (void)argv; | ||
6668 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
6669 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
6670 | float l = i * 2.1; | ||
6671 | double m = l / 0.5; | ||
6672 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
6673 | long long int p = n * o; | ||
6674 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
6675 | exit(0); | ||
6676 | } | ||
6677 | |||
6678 | _ACEOF | ||
6679 | if ac_fn_c_try_link "$LINENO"; then : | ||
6680 | |||
6681 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
6682 | then | ||
6683 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6684 | $as_echo "no" >&6; } | ||
6685 | CFLAGS="$saved_CFLAGS" | ||
6686 | else | ||
6687 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6688 | $as_echo "yes" >&6; } | ||
6689 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
6690 | fi | ||
6691 | else | ||
6692 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6693 | $as_echo "no" >&6; } | ||
6694 | CFLAGS="$saved_CFLAGS" | ||
6695 | |||
6696 | fi | ||
6697 | rm -f core conftest.err conftest.$ac_objext \ | ||
6698 | conftest$ac_exeext conftest.$ac_ext | ||
6699 | } | ||
6700 | fi | ||
6701 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking gcc version" >&5 | ||
6702 | $as_echo_n "checking gcc version... " >&6; } | ||
6703 | GCC_VER=`$CC -v 2>&1 | $AWK '/gcc version /{print $3}'` | ||
6704 | case $GCC_VER in | ||
6705 | 1.*) no_attrib_nonnull=1 ;; | ||
6706 | 2.8* | 2.9*) | ||
6707 | no_attrib_nonnull=1 | ||
6708 | ;; | ||
6709 | 2.*) no_attrib_nonnull=1 ;; | ||
6710 | *) ;; | ||
6711 | esac | ||
6712 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCC_VER" >&5 | ||
6713 | $as_echo "$GCC_VER" >&6; } | ||
6714 | |||
6715 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC accepts -fno-builtin-memset" >&5 | ||
6716 | $as_echo_n "checking if $CC accepts -fno-builtin-memset... " >&6; } | ||
6717 | saved_CFLAGS="$CFLAGS" | ||
6718 | CFLAGS="$CFLAGS -fno-builtin-memset" | ||
6719 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6720 | /* end confdefs.h. */ | ||
6721 | #include <string.h> | ||
6722 | int | ||
6723 | main () | ||
6724 | { | ||
6725 | char b[10]; memset(b, 0, sizeof(b)); | ||
6726 | ; | ||
6727 | return 0; | ||
6728 | } | ||
6729 | _ACEOF | ||
6730 | if ac_fn_c_try_link "$LINENO"; then : | ||
6731 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6732 | $as_echo "yes" >&6; } | ||
6733 | else | ||
6734 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6735 | $as_echo "no" >&6; } | ||
6736 | CFLAGS="$saved_CFLAGS" | ||
6737 | |||
6738 | fi | ||
6739 | rm -f core conftest.err conftest.$ac_objext \ | ||
6740 | conftest$ac_exeext conftest.$ac_ext | ||
6741 | |||
6742 | # -fstack-protector-all doesn't always work for some GCC versions | ||
6743 | # and/or platforms, so we test if we can. If it's not supported | ||
6744 | # on a given platform gcc will emit a warning so we use -Werror. | ||
6745 | if test "x$use_stack_protector" = "x1"; then | ||
6746 | for t in -fstack-protector-strong -fstack-protector-all \ | ||
6747 | -fstack-protector; do | ||
6748 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports $t" >&5 | ||
6749 | $as_echo_n "checking if $CC supports $t... " >&6; } | ||
6750 | saved_CFLAGS="$CFLAGS" | ||
6751 | saved_LDFLAGS="$LDFLAGS" | ||
6752 | CFLAGS="$CFLAGS $t -Werror" | ||
6753 | LDFLAGS="$LDFLAGS $t -Werror" | ||
6754 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6755 | /* end confdefs.h. */ | ||
6756 | |||
6757 | #include <stdio.h> | ||
6758 | int func (int t) {char b[100]; snprintf(b,sizeof b,"%d",t); return t;} | ||
6759 | |||
6760 | int | ||
6761 | main () | ||
6762 | { | ||
6763 | |||
6764 | char x[256]; | ||
6765 | snprintf(x, sizeof(x), "XXX%d", func(1)); | ||
6766 | |||
6767 | ; | ||
6768 | return 0; | ||
6769 | } | ||
6770 | _ACEOF | ||
6771 | if ac_fn_c_try_link "$LINENO"; then : | ||
6772 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6773 | $as_echo "yes" >&6; } | ||
6774 | CFLAGS="$saved_CFLAGS $t" | ||
6775 | LDFLAGS="$saved_LDFLAGS $t" | ||
6776 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $t works" >&5 | ||
6777 | $as_echo_n "checking if $t works... " >&6; } | ||
6778 | if test "$cross_compiling" = yes; then : | ||
6779 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: cannot test" >&5 | ||
6780 | $as_echo "$as_me: WARNING: cross compiling: cannot test" >&2;} | ||
6781 | break | ||
6782 | |||
6783 | else | ||
6784 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6785 | /* end confdefs.h. */ | ||
6786 | |||
6787 | #include <stdio.h> | ||
6788 | int func (int t) {char b[100]; snprintf(b,sizeof b,"%d",t); return t;} | ||
6789 | |||
6790 | int | ||
6791 | main () | ||
6792 | { | ||
6793 | |||
6794 | char x[256]; | ||
6795 | snprintf(x, sizeof(x), "XXX%d", func(1)); | ||
6796 | |||
6797 | ; | ||
6798 | return 0; | ||
6799 | } | ||
6800 | _ACEOF | ||
6801 | if ac_fn_c_try_run "$LINENO"; then : | ||
6802 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6803 | $as_echo "yes" >&6; } | ||
6804 | break | ||
6805 | else | ||
6806 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6807 | $as_echo "no" >&6; } | ||
6808 | fi | ||
6809 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
6810 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
6811 | fi | ||
6812 | |||
6813 | |||
6814 | else | ||
6815 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6816 | $as_echo "no" >&6; } | ||
6817 | |||
6818 | fi | ||
6819 | rm -f core conftest.err conftest.$ac_objext \ | ||
6820 | conftest$ac_exeext conftest.$ac_ext | ||
6821 | CFLAGS="$saved_CFLAGS" | ||
6822 | LDFLAGS="$saved_LDFLAGS" | ||
6823 | done | ||
6824 | fi | ||
6825 | |||
6826 | if test -z "$have_llong_max"; then | ||
6827 | # retry LLONG_MAX with -std=gnu99, needed on some Linuxes | ||
6828 | unset ac_cv_have_decl_LLONG_MAX | ||
6829 | saved_CFLAGS="$CFLAGS" | ||
6830 | CFLAGS="$CFLAGS -std=gnu99" | ||
6831 | ac_fn_c_check_decl "$LINENO" "LLONG_MAX" "ac_cv_have_decl_LLONG_MAX" "#include <limits.h> | ||
6832 | |||
6833 | " | ||
6834 | if test "x$ac_cv_have_decl_LLONG_MAX" = xyes; then : | ||
6835 | have_llong_max=1 | ||
6836 | else | ||
6837 | CFLAGS="$saved_CFLAGS" | ||
6838 | fi | ||
6839 | |||
6840 | fi | ||
6841 | fi | ||
6842 | |||
6843 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows __attribute__ on return types" >&5 | ||
6844 | $as_echo_n "checking if compiler allows __attribute__ on return types... " >&6; } | ||
6845 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6846 | /* end confdefs.h. */ | ||
6847 | |||
6848 | #include <stdlib.h> | ||
6849 | __attribute__((__unused__)) static void foo(void){return;} | ||
6850 | int | ||
6851 | main () | ||
6852 | { | ||
6853 | exit(0); | ||
6854 | ; | ||
6855 | return 0; | ||
6856 | } | ||
6857 | _ACEOF | ||
6858 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6859 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6860 | $as_echo "yes" >&6; } | ||
6861 | else | ||
6862 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6863 | $as_echo "no" >&6; } | ||
6864 | |||
6865 | $as_echo "#define NO_ATTRIBUTE_ON_RETURN_TYPE 1" >>confdefs.h | ||
6866 | |||
6867 | |||
6868 | fi | ||
6869 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6870 | |||
6871 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows __attribute__ prototype args" >&5 | ||
6872 | $as_echo_n "checking if compiler allows __attribute__ prototype args... " >&6; } | ||
6873 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
6874 | /* end confdefs.h. */ | ||
6875 | |||
6876 | #include <stdlib.h> | ||
6877 | typedef void foo(const char *, ...) __attribute__((format(printf, 1, 2))); | ||
6878 | int | ||
6879 | main () | ||
6880 | { | ||
6881 | exit(0); | ||
6882 | ; | ||
6883 | return 0; | ||
6884 | } | ||
6885 | _ACEOF | ||
6886 | if ac_fn_c_try_compile "$LINENO"; then : | ||
6887 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
6888 | $as_echo "yes" >&6; } | ||
6889 | else | ||
6890 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
6891 | $as_echo "no" >&6; } | ||
6892 | |||
6893 | $as_echo "#define NO_ATTRIBUTE_ON_PROTOTYPE_ARGS 1" >>confdefs.h | ||
6894 | |||
6895 | |||
6896 | fi | ||
6897 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
6898 | |||
6899 | if test "x$no_attrib_nonnull" != "x1" ; then | ||
6900 | |||
6901 | $as_echo "#define HAVE_ATTRIBUTE__NONNULL__ 1" >>confdefs.h | ||
6902 | |||
6903 | fi | ||
6904 | |||
6905 | |||
6906 | # Check whether --with-rpath was given. | ||
6907 | if test "${with_rpath+set}" = set; then : | ||
6908 | withval=$with_rpath; | ||
6909 | if test "x$withval" = "xno" ; then | ||
6910 | rpath_opt="" | ||
6911 | elif test "x$withval" = "xyes" ; then | ||
6912 | rpath_opt="-R" | ||
6913 | else | ||
6914 | rpath_opt="$withval" | ||
6915 | fi | ||
6916 | |||
6917 | |||
6918 | fi | ||
6919 | |||
6920 | |||
6921 | # Allow user to specify flags | ||
6922 | |||
6923 | # Check whether --with-cflags was given. | ||
6924 | if test "${with_cflags+set}" = set; then : | ||
6925 | withval=$with_cflags; | ||
6926 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6927 | test "x${withval}" != "xyes"; then | ||
6928 | CFLAGS="$CFLAGS $withval" | ||
6929 | fi | ||
6930 | |||
6931 | |||
6932 | fi | ||
6933 | |||
6934 | |||
6935 | |||
6936 | # Check whether --with-cflags-after was given. | ||
6937 | if test "${with_cflags_after+set}" = set; then : | ||
6938 | withval=$with_cflags_after; | ||
6939 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6940 | test "x${withval}" != "xyes"; then | ||
6941 | CFLAGS_AFTER="$withval" | ||
6942 | fi | ||
6943 | |||
6944 | |||
6945 | fi | ||
6946 | |||
6947 | |||
6948 | # Check whether --with-cppflags was given. | ||
6949 | if test "${with_cppflags+set}" = set; then : | ||
6950 | withval=$with_cppflags; | ||
6951 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6952 | test "x${withval}" != "xyes"; then | ||
6953 | CPPFLAGS="$CPPFLAGS $withval" | ||
6954 | fi | ||
6955 | |||
6956 | |||
6957 | fi | ||
6958 | |||
6959 | |||
6960 | # Check whether --with-ldflags was given. | ||
6961 | if test "${with_ldflags+set}" = set; then : | ||
6962 | withval=$with_ldflags; | ||
6963 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6964 | test "x${withval}" != "xyes"; then | ||
6965 | LDFLAGS="$LDFLAGS $withval" | ||
6966 | fi | ||
6967 | |||
6968 | |||
6969 | fi | ||
6970 | |||
6971 | |||
6972 | # Check whether --with-ldflags-after was given. | ||
6973 | if test "${with_ldflags_after+set}" = set; then : | ||
6974 | withval=$with_ldflags_after; | ||
6975 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6976 | test "x${withval}" != "xyes"; then | ||
6977 | LDFLAGS_AFTER="$withval" | ||
6978 | fi | ||
6979 | |||
6980 | |||
6981 | fi | ||
6982 | |||
6983 | |||
6984 | # Check whether --with-libs was given. | ||
6985 | if test "${with_libs+set}" = set; then : | ||
6986 | withval=$with_libs; | ||
6987 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
6988 | test "x${withval}" != "xyes"; then | ||
6989 | LIBS="$LIBS $withval" | ||
6990 | fi | ||
6991 | |||
6992 | |||
6993 | fi | ||
6994 | |||
6995 | |||
6996 | # Check whether --with-Werror was given. | ||
6997 | if test "${with_Werror+set}" = set; then : | ||
6998 | withval=$with_Werror; | ||
6999 | if test -n "$withval" && test "x$withval" != "xno"; then | ||
7000 | werror_flags="-Werror" | ||
7001 | if test "x${withval}" != "xyes"; then | ||
7002 | werror_flags="$withval" | ||
7003 | fi | ||
7004 | fi | ||
7005 | |||
7006 | |||
7007 | fi | ||
7008 | |||
7009 | |||
7010 | for ac_header in \ | ||
7011 | blf.h \ | ||
7012 | bstring.h \ | ||
7013 | crypt.h \ | ||
7014 | crypto/sha2.h \ | ||
7015 | dirent.h \ | ||
7016 | endian.h \ | ||
7017 | elf.h \ | ||
7018 | err.h \ | ||
7019 | features.h \ | ||
7020 | fcntl.h \ | ||
7021 | floatingpoint.h \ | ||
7022 | fnmatch.h \ | ||
7023 | getopt.h \ | ||
7024 | glob.h \ | ||
7025 | ia.h \ | ||
7026 | iaf.h \ | ||
7027 | ifaddrs.h \ | ||
7028 | inttypes.h \ | ||
7029 | langinfo.h \ | ||
7030 | limits.h \ | ||
7031 | locale.h \ | ||
7032 | login.h \ | ||
7033 | maillock.h \ | ||
7034 | ndir.h \ | ||
7035 | net/if_tun.h \ | ||
7036 | netdb.h \ | ||
7037 | netgroup.h \ | ||
7038 | pam/pam_appl.h \ | ||
7039 | paths.h \ | ||
7040 | poll.h \ | ||
7041 | pty.h \ | ||
7042 | readpassphrase.h \ | ||
7043 | rpc/types.h \ | ||
7044 | security/pam_appl.h \ | ||
7045 | sha2.h \ | ||
7046 | shadow.h \ | ||
7047 | stddef.h \ | ||
7048 | stdint.h \ | ||
7049 | string.h \ | ||
7050 | strings.h \ | ||
7051 | sys/bitypes.h \ | ||
7052 | sys/byteorder.h \ | ||
7053 | sys/bsdtty.h \ | ||
7054 | sys/cdefs.h \ | ||
7055 | sys/dir.h \ | ||
7056 | sys/file.h \ | ||
7057 | sys/mman.h \ | ||
7058 | sys/label.h \ | ||
7059 | sys/ndir.h \ | ||
7060 | sys/poll.h \ | ||
7061 | sys/prctl.h \ | ||
7062 | sys/pstat.h \ | ||
7063 | sys/ptrace.h \ | ||
7064 | sys/random.h \ | ||
7065 | sys/select.h \ | ||
7066 | sys/stat.h \ | ||
7067 | sys/stream.h \ | ||
7068 | sys/stropts.h \ | ||
7069 | sys/strtio.h \ | ||
7070 | sys/statvfs.h \ | ||
7071 | sys/sysmacros.h \ | ||
7072 | sys/time.h \ | ||
7073 | sys/timers.h \ | ||
7074 | sys/vfs.h \ | ||
7075 | time.h \ | ||
7076 | tmpdir.h \ | ||
7077 | ttyent.h \ | ||
7078 | ucred.h \ | ||
7079 | unistd.h \ | ||
7080 | usersec.h \ | ||
7081 | util.h \ | ||
7082 | utime.h \ | ||
7083 | utmp.h \ | ||
7084 | utmpx.h \ | ||
7085 | vis.h \ | ||
7086 | wchar.h \ | ||
7087 | |||
7088 | do : | ||
7089 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
7090 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
7091 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
7092 | cat >>confdefs.h <<_ACEOF | ||
7093 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
7094 | _ACEOF | ||
7095 | |||
7096 | fi | ||
7097 | |||
7098 | done | ||
7099 | |||
7100 | |||
7101 | # On some platforms (eg SunOS4) sys/audit.h requires sys/[time|types|label.h] | ||
7102 | # to be included first. | ||
7103 | for ac_header in sys/audit.h | ||
7104 | do : | ||
7105 | ac_fn_c_check_header_compile "$LINENO" "sys/audit.h" "ac_cv_header_sys_audit_h" " | ||
7106 | #ifdef HAVE_SYS_TIME_H | ||
7107 | # include <sys/time.h> | ||
7108 | #endif | ||
7109 | #ifdef HAVE_SYS_TYPES_H | ||
7110 | # include <sys/types.h> | ||
7111 | #endif | ||
7112 | #ifdef HAVE_SYS_LABEL_H | ||
7113 | # include <sys/label.h> | ||
7114 | #endif | ||
7115 | |||
7116 | " | ||
7117 | if test "x$ac_cv_header_sys_audit_h" = xyes; then : | ||
7118 | cat >>confdefs.h <<_ACEOF | ||
7119 | #define HAVE_SYS_AUDIT_H 1 | ||
7120 | _ACEOF | ||
7121 | |||
7122 | fi | ||
7123 | |||
7124 | done | ||
7125 | |||
7126 | |||
7127 | # sys/capsicum.h requires sys/types.h | ||
7128 | for ac_header in sys/capsicum.h | ||
7129 | do : | ||
7130 | ac_fn_c_check_header_compile "$LINENO" "sys/capsicum.h" "ac_cv_header_sys_capsicum_h" " | ||
7131 | #ifdef HAVE_SYS_TYPES_H | ||
7132 | # include <sys/types.h> | ||
7133 | #endif | ||
7134 | |||
7135 | " | ||
7136 | if test "x$ac_cv_header_sys_capsicum_h" = xyes; then : | ||
7137 | cat >>confdefs.h <<_ACEOF | ||
7138 | #define HAVE_SYS_CAPSICUM_H 1 | ||
7139 | _ACEOF | ||
7140 | |||
7141 | fi | ||
7142 | |||
7143 | done | ||
7144 | |||
7145 | |||
7146 | # net/route.h requires sys/socket.h and sys/types.h. | ||
7147 | # sys/sysctl.h also requires sys/param.h | ||
7148 | for ac_header in net/route.h sys/sysctl.h | ||
7149 | do : | ||
7150 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
7151 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" " | ||
7152 | #ifdef HAVE_SYS_TYPES_H | ||
7153 | # include <sys/types.h> | ||
7154 | #endif | ||
7155 | #include <sys/param.h> | ||
7156 | #include <sys/socket.h> | ||
7157 | |||
7158 | " | ||
7159 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
7160 | cat >>confdefs.h <<_ACEOF | ||
7161 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
7162 | _ACEOF | ||
7163 | |||
7164 | fi | ||
7165 | |||
7166 | done | ||
7167 | |||
7168 | |||
7169 | # lastlog.h requires sys/time.h to be included first on Solaris | ||
7170 | for ac_header in lastlog.h | ||
7171 | do : | ||
7172 | ac_fn_c_check_header_compile "$LINENO" "lastlog.h" "ac_cv_header_lastlog_h" " | ||
7173 | #ifdef HAVE_SYS_TIME_H | ||
7174 | # include <sys/time.h> | ||
7175 | #endif | ||
7176 | |||
7177 | " | ||
7178 | if test "x$ac_cv_header_lastlog_h" = xyes; then : | ||
7179 | cat >>confdefs.h <<_ACEOF | ||
7180 | #define HAVE_LASTLOG_H 1 | ||
7181 | _ACEOF | ||
7182 | |||
7183 | fi | ||
7184 | |||
7185 | done | ||
7186 | |||
7187 | |||
7188 | # sys/ptms.h requires sys/stream.h to be included first on Solaris | ||
7189 | for ac_header in sys/ptms.h | ||
7190 | do : | ||
7191 | ac_fn_c_check_header_compile "$LINENO" "sys/ptms.h" "ac_cv_header_sys_ptms_h" " | ||
7192 | #ifdef HAVE_SYS_STREAM_H | ||
7193 | # include <sys/stream.h> | ||
7194 | #endif | ||
7195 | |||
7196 | " | ||
7197 | if test "x$ac_cv_header_sys_ptms_h" = xyes; then : | ||
7198 | cat >>confdefs.h <<_ACEOF | ||
7199 | #define HAVE_SYS_PTMS_H 1 | ||
7200 | _ACEOF | ||
7201 | |||
7202 | fi | ||
7203 | |||
7204 | done | ||
7205 | |||
7206 | |||
7207 | # login_cap.h requires sys/types.h on NetBSD | ||
7208 | for ac_header in login_cap.h | ||
7209 | do : | ||
7210 | ac_fn_c_check_header_compile "$LINENO" "login_cap.h" "ac_cv_header_login_cap_h" " | ||
7211 | #include <sys/types.h> | ||
7212 | |||
7213 | " | ||
7214 | if test "x$ac_cv_header_login_cap_h" = xyes; then : | ||
7215 | cat >>confdefs.h <<_ACEOF | ||
7216 | #define HAVE_LOGIN_CAP_H 1 | ||
7217 | _ACEOF | ||
7218 | |||
7219 | fi | ||
7220 | |||
7221 | done | ||
7222 | |||
7223 | |||
7224 | # older BSDs need sys/param.h before sys/mount.h | ||
7225 | for ac_header in sys/mount.h | ||
7226 | do : | ||
7227 | ac_fn_c_check_header_compile "$LINENO" "sys/mount.h" "ac_cv_header_sys_mount_h" " | ||
7228 | #include <sys/param.h> | ||
7229 | |||
7230 | " | ||
7231 | if test "x$ac_cv_header_sys_mount_h" = xyes; then : | ||
7232 | cat >>confdefs.h <<_ACEOF | ||
7233 | #define HAVE_SYS_MOUNT_H 1 | ||
7234 | _ACEOF | ||
7235 | |||
7236 | fi | ||
7237 | |||
7238 | done | ||
7239 | |||
7240 | |||
7241 | # Android requires sys/socket.h to be included before sys/un.h | ||
7242 | for ac_header in sys/un.h | ||
7243 | do : | ||
7244 | ac_fn_c_check_header_compile "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" " | ||
7245 | #include <sys/types.h> | ||
7246 | #include <sys/socket.h> | ||
7247 | |||
7248 | " | ||
7249 | if test "x$ac_cv_header_sys_un_h" = xyes; then : | ||
7250 | cat >>confdefs.h <<_ACEOF | ||
7251 | #define HAVE_SYS_UN_H 1 | ||
7252 | _ACEOF | ||
7253 | |||
7254 | fi | ||
7255 | |||
7256 | done | ||
7257 | |||
7258 | |||
7259 | # Messages for features tested for in target-specific section | ||
7260 | SIA_MSG="no" | ||
7261 | SPC_MSG="no" | ||
7262 | SP_MSG="no" | ||
7263 | SPP_MSG="no" | ||
7264 | |||
7265 | # Support for Solaris/Illumos privileges (this test is used by both | ||
7266 | # the --with-solaris-privs option and --with-sandbox=solaris). | ||
7267 | SOLARIS_PRIVS="no" | ||
7268 | |||
7269 | # The cast to long int works around a bug in the HP C Compiler | ||
7270 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
7271 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
7272 | # This bug is HP SR number 8606223364. | ||
7273 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5 | ||
7274 | $as_echo_n "checking size of size_t... " >&6; } | ||
7275 | if ${ac_cv_sizeof_size_t+:} false; then : | ||
7276 | $as_echo_n "(cached) " >&6 | ||
7277 | else | ||
7278 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t" "$ac_includes_default"; then : | ||
7279 | |||
7280 | else | ||
7281 | if test "$ac_cv_type_size_t" = yes; then | ||
7282 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
7283 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
7284 | as_fn_error 77 "cannot compute sizeof (size_t) | ||
7285 | See \`config.log' for more details" "$LINENO" 5; } | ||
7286 | else | ||
7287 | ac_cv_sizeof_size_t=0 | ||
7288 | fi | ||
7289 | fi | ||
7290 | |||
7291 | fi | ||
7292 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5 | ||
7293 | $as_echo "$ac_cv_sizeof_size_t" >&6; } | ||
7294 | |||
7295 | |||
7296 | |||
7297 | cat >>confdefs.h <<_ACEOF | ||
7298 | #define SIZEOF_SIZE_T $ac_cv_sizeof_size_t | ||
7299 | _ACEOF | ||
7300 | |||
7301 | |||
7302 | |||
7303 | # Check for some target-specific stuff | ||
7304 | case "$host" in | ||
7305 | *-*-aix*) | ||
7306 | # Some versions of VAC won't allow macro redefinitions at | ||
7307 | # -qlanglevel=ansi, and autoconf 2.60 sometimes insists on using that | ||
7308 | # particularly with older versions of vac or xlc. | ||
7309 | # It also throws errors about null macro arguments, but these are | ||
7310 | # not fatal. | ||
7311 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler allows macro redefinitions" >&5 | ||
7312 | $as_echo_n "checking if compiler allows macro redefinitions... " >&6; } | ||
7313 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7314 | /* end confdefs.h. */ | ||
7315 | |||
7316 | #define testmacro foo | ||
7317 | #define testmacro bar | ||
7318 | int | ||
7319 | main () | ||
7320 | { | ||
7321 | exit(0); | ||
7322 | ; | ||
7323 | return 0; | ||
7324 | } | ||
7325 | _ACEOF | ||
7326 | if ac_fn_c_try_compile "$LINENO"; then : | ||
7327 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
7328 | $as_echo "yes" >&6; } | ||
7329 | else | ||
7330 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7331 | $as_echo "no" >&6; } | ||
7332 | CC="`echo $CC | sed 's/-qlanglvl\=ansi//g'`" | ||
7333 | CFLAGS="`echo $CFLAGS | sed 's/-qlanglvl\=ansi//g'`" | ||
7334 | CPPFLAGS="`echo $CPPFLAGS | sed 's/-qlanglvl\=ansi//g'`" | ||
7335 | |||
7336 | |||
7337 | fi | ||
7338 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
7339 | |||
7340 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to specify blibpath for linker ($LD)" >&5 | ||
7341 | $as_echo_n "checking how to specify blibpath for linker ($LD)... " >&6; } | ||
7342 | if (test -z "$blibpath"); then | ||
7343 | blibpath="/usr/lib:/lib" | ||
7344 | fi | ||
7345 | saved_LDFLAGS="$LDFLAGS" | ||
7346 | if test "$GCC" = "yes"; then | ||
7347 | flags="-Wl,-blibpath: -Wl,-rpath, -blibpath:" | ||
7348 | else | ||
7349 | flags="-blibpath: -Wl,-blibpath: -Wl,-rpath," | ||
7350 | fi | ||
7351 | for tryflags in $flags ;do | ||
7352 | if (test -z "$blibflags"); then | ||
7353 | LDFLAGS="$saved_LDFLAGS $tryflags$blibpath" | ||
7354 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7355 | /* end confdefs.h. */ | ||
7356 | |||
7357 | int | ||
7358 | main () | ||
7359 | { | ||
7360 | |||
7361 | ; | ||
7362 | return 0; | ||
7363 | } | ||
7364 | _ACEOF | ||
7365 | if ac_fn_c_try_link "$LINENO"; then : | ||
7366 | blibflags=$tryflags | ||
7367 | fi | ||
7368 | rm -f core conftest.err conftest.$ac_objext \ | ||
7369 | conftest$ac_exeext conftest.$ac_ext | ||
7370 | fi | ||
7371 | done | ||
7372 | if (test -z "$blibflags"); then | ||
7373 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
7374 | $as_echo "not found" >&6; } | ||
7375 | as_fn_error $? "*** must be able to specify blibpath on AIX - check config.log" "$LINENO" 5 | ||
7376 | else | ||
7377 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $blibflags" >&5 | ||
7378 | $as_echo "$blibflags" >&6; } | ||
7379 | fi | ||
7380 | LDFLAGS="$saved_LDFLAGS" | ||
7381 | ac_fn_c_check_func "$LINENO" "authenticate" "ac_cv_func_authenticate" | ||
7382 | if test "x$ac_cv_func_authenticate" = xyes; then : | ||
7383 | |||
7384 | $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h | ||
7385 | |||
7386 | else | ||
7387 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for authenticate in -ls" >&5 | ||
7388 | $as_echo_n "checking for authenticate in -ls... " >&6; } | ||
7389 | if ${ac_cv_lib_s_authenticate+:} false; then : | ||
7390 | $as_echo_n "(cached) " >&6 | ||
7391 | else | ||
7392 | ac_check_lib_save_LIBS=$LIBS | ||
7393 | LIBS="-ls $LIBS" | ||
7394 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7395 | /* end confdefs.h. */ | ||
7396 | |||
7397 | /* Override any GCC internal prototype to avoid an error. | ||
7398 | Use char because int might match the return type of a GCC | ||
7399 | builtin and then its argument prototype would still apply. */ | ||
7400 | #ifdef __cplusplus | ||
7401 | extern "C" | ||
7402 | #endif | ||
7403 | char authenticate (); | ||
7404 | int | ||
7405 | main () | ||
7406 | { | ||
7407 | return authenticate (); | ||
7408 | ; | ||
7409 | return 0; | ||
7410 | } | ||
7411 | _ACEOF | ||
7412 | if ac_fn_c_try_link "$LINENO"; then : | ||
7413 | ac_cv_lib_s_authenticate=yes | ||
7414 | else | ||
7415 | ac_cv_lib_s_authenticate=no | ||
7416 | fi | ||
7417 | rm -f core conftest.err conftest.$ac_objext \ | ||
7418 | conftest$ac_exeext conftest.$ac_ext | ||
7419 | LIBS=$ac_check_lib_save_LIBS | ||
7420 | fi | ||
7421 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_s_authenticate" >&5 | ||
7422 | $as_echo "$ac_cv_lib_s_authenticate" >&6; } | ||
7423 | if test "x$ac_cv_lib_s_authenticate" = xyes; then : | ||
7424 | $as_echo "#define WITH_AIXAUTHENTICATE 1" >>confdefs.h | ||
7425 | |||
7426 | LIBS="$LIBS -ls" | ||
7427 | |||
7428 | fi | ||
7429 | |||
7430 | |||
7431 | fi | ||
7432 | |||
7433 | ac_fn_c_check_decl "$LINENO" "authenticate" "ac_cv_have_decl_authenticate" "#include <usersec.h> | ||
7434 | " | ||
7435 | if test "x$ac_cv_have_decl_authenticate" = xyes; then : | ||
7436 | ac_have_decl=1 | ||
7437 | else | ||
7438 | ac_have_decl=0 | ||
7439 | fi | ||
7440 | |||
7441 | cat >>confdefs.h <<_ACEOF | ||
7442 | #define HAVE_DECL_AUTHENTICATE $ac_have_decl | ||
7443 | _ACEOF | ||
7444 | ac_fn_c_check_decl "$LINENO" "loginrestrictions" "ac_cv_have_decl_loginrestrictions" "#include <usersec.h> | ||
7445 | " | ||
7446 | if test "x$ac_cv_have_decl_loginrestrictions" = xyes; then : | ||
7447 | ac_have_decl=1 | ||
7448 | else | ||
7449 | ac_have_decl=0 | ||
7450 | fi | ||
7451 | |||
7452 | cat >>confdefs.h <<_ACEOF | ||
7453 | #define HAVE_DECL_LOGINRESTRICTIONS $ac_have_decl | ||
7454 | _ACEOF | ||
7455 | ac_fn_c_check_decl "$LINENO" "loginsuccess" "ac_cv_have_decl_loginsuccess" "#include <usersec.h> | ||
7456 | " | ||
7457 | if test "x$ac_cv_have_decl_loginsuccess" = xyes; then : | ||
7458 | ac_have_decl=1 | ||
7459 | else | ||
7460 | ac_have_decl=0 | ||
7461 | fi | ||
7462 | |||
7463 | cat >>confdefs.h <<_ACEOF | ||
7464 | #define HAVE_DECL_LOGINSUCCESS $ac_have_decl | ||
7465 | _ACEOF | ||
7466 | ac_fn_c_check_decl "$LINENO" "passwdexpired" "ac_cv_have_decl_passwdexpired" "#include <usersec.h> | ||
7467 | " | ||
7468 | if test "x$ac_cv_have_decl_passwdexpired" = xyes; then : | ||
7469 | ac_have_decl=1 | ||
7470 | else | ||
7471 | ac_have_decl=0 | ||
7472 | fi | ||
7473 | |||
7474 | cat >>confdefs.h <<_ACEOF | ||
7475 | #define HAVE_DECL_PASSWDEXPIRED $ac_have_decl | ||
7476 | _ACEOF | ||
7477 | ac_fn_c_check_decl "$LINENO" "setauthdb" "ac_cv_have_decl_setauthdb" "#include <usersec.h> | ||
7478 | " | ||
7479 | if test "x$ac_cv_have_decl_setauthdb" = xyes; then : | ||
7480 | ac_have_decl=1 | ||
7481 | else | ||
7482 | ac_have_decl=0 | ||
7483 | fi | ||
7484 | |||
7485 | cat >>confdefs.h <<_ACEOF | ||
7486 | #define HAVE_DECL_SETAUTHDB $ac_have_decl | ||
7487 | _ACEOF | ||
7488 | |||
7489 | ac_fn_c_check_decl "$LINENO" "loginfailed" "ac_cv_have_decl_loginfailed" "#include <usersec.h> | ||
7490 | |||
7491 | " | ||
7492 | if test "x$ac_cv_have_decl_loginfailed" = xyes; then : | ||
7493 | ac_have_decl=1 | ||
7494 | else | ||
7495 | ac_have_decl=0 | ||
7496 | fi | ||
7497 | |||
7498 | cat >>confdefs.h <<_ACEOF | ||
7499 | #define HAVE_DECL_LOGINFAILED $ac_have_decl | ||
7500 | _ACEOF | ||
7501 | if test $ac_have_decl = 1; then : | ||
7502 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if loginfailed takes 4 arguments" >&5 | ||
7503 | $as_echo_n "checking if loginfailed takes 4 arguments... " >&6; } | ||
7504 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7505 | /* end confdefs.h. */ | ||
7506 | #include <usersec.h> | ||
7507 | int | ||
7508 | main () | ||
7509 | { | ||
7510 | (void)loginfailed("user","host","tty",0); | ||
7511 | ; | ||
7512 | return 0; | ||
7513 | } | ||
7514 | _ACEOF | ||
7515 | if ac_fn_c_try_compile "$LINENO"; then : | ||
7516 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
7517 | $as_echo "yes" >&6; } | ||
7518 | |||
7519 | $as_echo "#define AIX_LOGINFAILED_4ARG 1" >>confdefs.h | ||
7520 | |||
7521 | else | ||
7522 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7523 | $as_echo "no" >&6; } | ||
7524 | |||
7525 | fi | ||
7526 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
7527 | fi | ||
7528 | |||
7529 | for ac_func in getgrset setauthdb | ||
7530 | do : | ||
7531 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
7532 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
7533 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
7534 | cat >>confdefs.h <<_ACEOF | ||
7535 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
7536 | _ACEOF | ||
7537 | |||
7538 | fi | ||
7539 | done | ||
7540 | |||
7541 | ac_fn_c_check_decl "$LINENO" "F_CLOSEM" "ac_cv_have_decl_F_CLOSEM" " #include <limits.h> | ||
7542 | #include <fcntl.h> | ||
7543 | |||
7544 | " | ||
7545 | if test "x$ac_cv_have_decl_F_CLOSEM" = xyes; then : | ||
7546 | |||
7547 | $as_echo "#define HAVE_FCNTL_CLOSEM 1" >>confdefs.h | ||
7548 | |||
7549 | fi | ||
7550 | |||
7551 | check_for_aix_broken_getaddrinfo=1 | ||
7552 | |||
7553 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7554 | |||
7555 | |||
7556 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7557 | |||
7558 | |||
7559 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7560 | |||
7561 | |||
7562 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
7563 | |||
7564 | |||
7565 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
7566 | |||
7567 | |||
7568 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7569 | |||
7570 | |||
7571 | $as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h | ||
7572 | |||
7573 | |||
7574 | $as_echo "#define PTY_ZEROREAD 1" >>confdefs.h | ||
7575 | |||
7576 | |||
7577 | $as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h | ||
7578 | |||
7579 | |||
7580 | $as_echo "#define BROKEN_STRNDUP 1" >>confdefs.h | ||
7581 | |||
7582 | |||
7583 | $as_echo "#define BROKEN_STRNLEN 1" >>confdefs.h | ||
7584 | |||
7585 | ;; | ||
7586 | *-*-android*) | ||
7587 | |||
7588 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
7589 | |||
7590 | |||
7591 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
7592 | |||
7593 | ;; | ||
7594 | *-*-cygwin*) | ||
7595 | check_for_libcrypt_later=1 | ||
7596 | LIBS="$LIBS /usr/lib/textreadmode.o" | ||
7597 | |||
7598 | $as_echo "#define HAVE_CYGWIN 1" >>confdefs.h | ||
7599 | |||
7600 | |||
7601 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7602 | |||
7603 | |||
7604 | $as_echo "#define NO_UID_RESTORATION_TEST 1" >>confdefs.h | ||
7605 | |||
7606 | |||
7607 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
7608 | |||
7609 | |||
7610 | $as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h | ||
7611 | |||
7612 | |||
7613 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
7614 | |||
7615 | |||
7616 | $as_echo "#define SSH_IOBUFSZ 65535" >>confdefs.h | ||
7617 | |||
7618 | |||
7619 | $as_echo "#define FILESYSTEM_NO_BACKSLASH 1" >>confdefs.h | ||
7620 | |||
7621 | # Cygwin defines optargs, optargs as declspec(dllimport) for historical | ||
7622 | # reasons which cause compile warnings, so we disable those warnings. | ||
7623 | { | ||
7624 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -Wno-attributes" >&5 | ||
7625 | $as_echo_n "checking if $CC supports compile flag -Wno-attributes... " >&6; } | ||
7626 | saved_CFLAGS="$CFLAGS" | ||
7627 | CFLAGS="$CFLAGS $WERROR -Wno-attributes" | ||
7628 | _define_flag="" | ||
7629 | test "x$_define_flag" = "x" && _define_flag="-Wno-attributes" | ||
7630 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7631 | /* end confdefs.h. */ | ||
7632 | |||
7633 | #include <stdlib.h> | ||
7634 | #include <stdio.h> | ||
7635 | int main(int argc, char **argv) { | ||
7636 | (void)argv; | ||
7637 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
7638 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
7639 | float l = i * 2.1; | ||
7640 | double m = l / 0.5; | ||
7641 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
7642 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
7643 | /* | ||
7644 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
7645 | * not understand comments and we don't use the "fallthrough" attribute | ||
7646 | * that it's looking for. | ||
7647 | */ | ||
7648 | switch(i){ | ||
7649 | case 0: j += i; | ||
7650 | /* FALLTHROUGH */ | ||
7651 | default: j += k; | ||
7652 | } | ||
7653 | exit(0); | ||
7654 | } | ||
7655 | |||
7656 | _ACEOF | ||
7657 | if ac_fn_c_try_compile "$LINENO"; then : | ||
7658 | |||
7659 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
7660 | then | ||
7661 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7662 | $as_echo "no" >&6; } | ||
7663 | CFLAGS="$saved_CFLAGS" | ||
7664 | else | ||
7665 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
7666 | $as_echo "yes" >&6; } | ||
7667 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
7668 | fi | ||
7669 | else | ||
7670 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
7671 | $as_echo "no" >&6; } | ||
7672 | CFLAGS="$saved_CFLAGS" | ||
7673 | |||
7674 | fi | ||
7675 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
7676 | } | ||
7677 | ;; | ||
7678 | *-*-dgux*) | ||
7679 | |||
7680 | $as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h | ||
7681 | |||
7682 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7683 | |||
7684 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7685 | |||
7686 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7687 | |||
7688 | ;; | ||
7689 | *-*-darwin*) | ||
7690 | use_pie=auto | ||
7691 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we have working getaddrinfo" >&5 | ||
7692 | $as_echo_n "checking if we have working getaddrinfo... " >&6; } | ||
7693 | if test "$cross_compiling" = yes; then : | ||
7694 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: assume it is working" >&5 | ||
7695 | $as_echo "assume it is working" >&6; } | ||
7696 | else | ||
7697 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7698 | /* end confdefs.h. */ | ||
7699 | |||
7700 | #include <mach-o/dyld.h> | ||
7701 | #include <stdlib.h> | ||
7702 | main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) | ||
7703 | exit(0); | ||
7704 | else | ||
7705 | exit(1); | ||
7706 | } | ||
7707 | |||
7708 | _ACEOF | ||
7709 | if ac_fn_c_try_run "$LINENO"; then : | ||
7710 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: working" >&5 | ||
7711 | $as_echo "working" >&6; } | ||
7712 | else | ||
7713 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy" >&5 | ||
7714 | $as_echo "buggy" >&6; } | ||
7715 | |||
7716 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
7717 | |||
7718 | |||
7719 | fi | ||
7720 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
7721 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
7722 | fi | ||
7723 | |||
7724 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
7725 | |||
7726 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
7727 | |||
7728 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
7729 | |||
7730 | |||
7731 | $as_echo "#define BROKEN_GLOB 1" >>confdefs.h | ||
7732 | |||
7733 | |||
7734 | cat >>confdefs.h <<_ACEOF | ||
7735 | #define BIND_8_COMPAT 1 | ||
7736 | _ACEOF | ||
7737 | |||
7738 | |||
7739 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
7740 | |||
7741 | |||
7742 | $as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h | ||
7743 | |||
7744 | |||
7745 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
7746 | |||
7747 | |||
7748 | ac_fn_c_check_decl "$LINENO" "AU_IPv4" "ac_cv_have_decl_AU_IPv4" "$ac_includes_default" | ||
7749 | if test "x$ac_cv_have_decl_AU_IPv4" = xyes; then : | ||
7750 | |||
7751 | else | ||
7752 | |||
7753 | $as_echo "#define AU_IPv4 0" >>confdefs.h | ||
7754 | |||
7755 | #include <bsm/audit.h> | ||
7756 | |||
7757 | $as_echo "#define LASTLOG_WRITE_PUTUTXLINE 1" >>confdefs.h | ||
7758 | |||
7759 | |||
7760 | fi | ||
7761 | |||
7762 | |||
7763 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
7764 | |||
7765 | for ac_func in sandbox_init | ||
7766 | do : | ||
7767 | ac_fn_c_check_func "$LINENO" "sandbox_init" "ac_cv_func_sandbox_init" | ||
7768 | if test "x$ac_cv_func_sandbox_init" = xyes; then : | ||
7769 | cat >>confdefs.h <<_ACEOF | ||
7770 | #define HAVE_SANDBOX_INIT 1 | ||
7771 | _ACEOF | ||
7772 | |||
7773 | fi | ||
7774 | done | ||
7775 | |||
7776 | for ac_header in sandbox.h | ||
7777 | do : | ||
7778 | ac_fn_c_check_header_mongrel "$LINENO" "sandbox.h" "ac_cv_header_sandbox_h" "$ac_includes_default" | ||
7779 | if test "x$ac_cv_header_sandbox_h" = xyes; then : | ||
7780 | cat >>confdefs.h <<_ACEOF | ||
7781 | #define HAVE_SANDBOX_H 1 | ||
7782 | _ACEOF | ||
7783 | |||
7784 | fi | ||
7785 | |||
7786 | done | ||
7787 | |||
7788 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sandbox_apply in -lsandbox" >&5 | ||
7789 | $as_echo_n "checking for sandbox_apply in -lsandbox... " >&6; } | ||
7790 | if ${ac_cv_lib_sandbox_sandbox_apply+:} false; then : | ||
7791 | $as_echo_n "(cached) " >&6 | ||
7792 | else | ||
7793 | ac_check_lib_save_LIBS=$LIBS | ||
7794 | LIBS="-lsandbox $LIBS" | ||
7795 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7796 | /* end confdefs.h. */ | ||
7797 | |||
7798 | /* Override any GCC internal prototype to avoid an error. | ||
7799 | Use char because int might match the return type of a GCC | ||
7800 | builtin and then its argument prototype would still apply. */ | ||
7801 | #ifdef __cplusplus | ||
7802 | extern "C" | ||
7803 | #endif | ||
7804 | char sandbox_apply (); | ||
7805 | int | ||
7806 | main () | ||
7807 | { | ||
7808 | return sandbox_apply (); | ||
7809 | ; | ||
7810 | return 0; | ||
7811 | } | ||
7812 | _ACEOF | ||
7813 | if ac_fn_c_try_link "$LINENO"; then : | ||
7814 | ac_cv_lib_sandbox_sandbox_apply=yes | ||
7815 | else | ||
7816 | ac_cv_lib_sandbox_sandbox_apply=no | ||
7817 | fi | ||
7818 | rm -f core conftest.err conftest.$ac_objext \ | ||
7819 | conftest$ac_exeext conftest.$ac_ext | ||
7820 | LIBS=$ac_check_lib_save_LIBS | ||
7821 | fi | ||
7822 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sandbox_sandbox_apply" >&5 | ||
7823 | $as_echo "$ac_cv_lib_sandbox_sandbox_apply" >&6; } | ||
7824 | if test "x$ac_cv_lib_sandbox_sandbox_apply" = xyes; then : | ||
7825 | |||
7826 | SSHDLIBS="$SSHDLIBS -lsandbox" | ||
7827 | |||
7828 | fi | ||
7829 | |||
7830 | # proc_pidinfo()-based closefrom() replacement. | ||
7831 | for ac_header in libproc.h | ||
7832 | do : | ||
7833 | ac_fn_c_check_header_mongrel "$LINENO" "libproc.h" "ac_cv_header_libproc_h" "$ac_includes_default" | ||
7834 | if test "x$ac_cv_header_libproc_h" = xyes; then : | ||
7835 | cat >>confdefs.h <<_ACEOF | ||
7836 | #define HAVE_LIBPROC_H 1 | ||
7837 | _ACEOF | ||
7838 | |||
7839 | fi | ||
7840 | |||
7841 | done | ||
7842 | |||
7843 | for ac_func in proc_pidinfo | ||
7844 | do : | ||
7845 | ac_fn_c_check_func "$LINENO" "proc_pidinfo" "ac_cv_func_proc_pidinfo" | ||
7846 | if test "x$ac_cv_func_proc_pidinfo" = xyes; then : | ||
7847 | cat >>confdefs.h <<_ACEOF | ||
7848 | #define HAVE_PROC_PIDINFO 1 | ||
7849 | _ACEOF | ||
7850 | |||
7851 | fi | ||
7852 | done | ||
7853 | |||
7854 | ;; | ||
7855 | *-*-dragonfly*) | ||
7856 | SSHDLIBS="$SSHDLIBS -lcrypt" | ||
7857 | TEST_MALLOC_OPTIONS="AFGJPRX" | ||
7858 | ;; | ||
7859 | *-*-haiku*) | ||
7860 | LIBS="$LIBS -lbsd " | ||
7861 | CFLAGS="$CFLAGS -D_BSD_SOURCE" | ||
7862 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket in -lnetwork" >&5 | ||
7863 | $as_echo_n "checking for socket in -lnetwork... " >&6; } | ||
7864 | if ${ac_cv_lib_network_socket+:} false; then : | ||
7865 | $as_echo_n "(cached) " >&6 | ||
7866 | else | ||
7867 | ac_check_lib_save_LIBS=$LIBS | ||
7868 | LIBS="-lnetwork $LIBS" | ||
7869 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7870 | /* end confdefs.h. */ | ||
7871 | |||
7872 | /* Override any GCC internal prototype to avoid an error. | ||
7873 | Use char because int might match the return type of a GCC | ||
7874 | builtin and then its argument prototype would still apply. */ | ||
7875 | #ifdef __cplusplus | ||
7876 | extern "C" | ||
7877 | #endif | ||
7878 | char socket (); | ||
7879 | int | ||
7880 | main () | ||
7881 | { | ||
7882 | return socket (); | ||
7883 | ; | ||
7884 | return 0; | ||
7885 | } | ||
7886 | _ACEOF | ||
7887 | if ac_fn_c_try_link "$LINENO"; then : | ||
7888 | ac_cv_lib_network_socket=yes | ||
7889 | else | ||
7890 | ac_cv_lib_network_socket=no | ||
7891 | fi | ||
7892 | rm -f core conftest.err conftest.$ac_objext \ | ||
7893 | conftest$ac_exeext conftest.$ac_ext | ||
7894 | LIBS=$ac_check_lib_save_LIBS | ||
7895 | fi | ||
7896 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_socket" >&5 | ||
7897 | $as_echo "$ac_cv_lib_network_socket" >&6; } | ||
7898 | if test "x$ac_cv_lib_network_socket" = xyes; then : | ||
7899 | cat >>confdefs.h <<_ACEOF | ||
7900 | #define HAVE_LIBNETWORK 1 | ||
7901 | _ACEOF | ||
7902 | |||
7903 | LIBS="-lnetwork $LIBS" | ||
7904 | |||
7905 | fi | ||
7906 | |||
7907 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
7908 | |||
7909 | |||
7910 | $as_echo "#define DISABLE_UTMPX 1" >>confdefs.h | ||
7911 | |||
7912 | MANTYPE=man | ||
7913 | ;; | ||
7914 | *-*-hpux*) | ||
7915 | # first we define all of the options common to all HP-UX releases | ||
7916 | CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1" | ||
7917 | IPADDR_IN_DISPLAY=yes | ||
7918 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
7919 | |||
7920 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
7921 | |||
7922 | |||
7923 | $as_echo "#define LOCKED_PASSWD_STRING \"*\"" >>confdefs.h | ||
7924 | |||
7925 | $as_echo "#define SPT_TYPE SPT_PSTAT" >>confdefs.h | ||
7926 | |||
7927 | |||
7928 | $as_echo "#define PLATFORM_SYS_DIR_UID 2" >>confdefs.h | ||
7929 | |||
7930 | maildir="/var/mail" | ||
7931 | LIBS="$LIBS -lsec" | ||
7932 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_error in -lxnet" >&5 | ||
7933 | $as_echo_n "checking for t_error in -lxnet... " >&6; } | ||
7934 | if ${ac_cv_lib_xnet_t_error+:} false; then : | ||
7935 | $as_echo_n "(cached) " >&6 | ||
7936 | else | ||
7937 | ac_check_lib_save_LIBS=$LIBS | ||
7938 | LIBS="-lxnet $LIBS" | ||
7939 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
7940 | /* end confdefs.h. */ | ||
7941 | |||
7942 | /* Override any GCC internal prototype to avoid an error. | ||
7943 | Use char because int might match the return type of a GCC | ||
7944 | builtin and then its argument prototype would still apply. */ | ||
7945 | #ifdef __cplusplus | ||
7946 | extern "C" | ||
7947 | #endif | ||
7948 | char t_error (); | ||
7949 | int | ||
7950 | main () | ||
7951 | { | ||
7952 | return t_error (); | ||
7953 | ; | ||
7954 | return 0; | ||
7955 | } | ||
7956 | _ACEOF | ||
7957 | if ac_fn_c_try_link "$LINENO"; then : | ||
7958 | ac_cv_lib_xnet_t_error=yes | ||
7959 | else | ||
7960 | ac_cv_lib_xnet_t_error=no | ||
7961 | fi | ||
7962 | rm -f core conftest.err conftest.$ac_objext \ | ||
7963 | conftest$ac_exeext conftest.$ac_ext | ||
7964 | LIBS=$ac_check_lib_save_LIBS | ||
7965 | fi | ||
7966 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_xnet_t_error" >&5 | ||
7967 | $as_echo "$ac_cv_lib_xnet_t_error" >&6; } | ||
7968 | if test "x$ac_cv_lib_xnet_t_error" = xyes; then : | ||
7969 | cat >>confdefs.h <<_ACEOF | ||
7970 | #define HAVE_LIBXNET 1 | ||
7971 | _ACEOF | ||
7972 | |||
7973 | LIBS="-lxnet $LIBS" | ||
7974 | |||
7975 | else | ||
7976 | as_fn_error $? "*** -lxnet needed on HP-UX - check config.log ***" "$LINENO" 5 | ||
7977 | fi | ||
7978 | |||
7979 | |||
7980 | # next, we define all of the options specific to major releases | ||
7981 | case "$host" in | ||
7982 | *-*-hpux10*) | ||
7983 | if test -z "$GCC"; then | ||
7984 | CFLAGS="$CFLAGS -Ae" | ||
7985 | fi | ||
7986 | ;; | ||
7987 | *-*-hpux11*) | ||
7988 | |||
7989 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
7990 | |||
7991 | |||
7992 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
7993 | |||
7994 | |||
7995 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
7996 | |||
7997 | check_for_hpux_broken_getaddrinfo=1 | ||
7998 | check_for_conflicting_getspnam=1 | ||
7999 | ;; | ||
8000 | esac | ||
8001 | |||
8002 | # lastly, we define options specific to minor releases | ||
8003 | case "$host" in | ||
8004 | *-*-hpux10.26) | ||
8005 | |||
8006 | $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h | ||
8007 | |||
8008 | disable_ptmx_check=yes | ||
8009 | LIBS="$LIBS -lsecpw" | ||
8010 | ;; | ||
8011 | esac | ||
8012 | ;; | ||
8013 | *-*-irix5*) | ||
8014 | PATH="$PATH:/usr/etc" | ||
8015 | |||
8016 | $as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h | ||
8017 | |||
8018 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8019 | |||
8020 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8021 | |||
8022 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8023 | |||
8024 | |||
8025 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
8026 | |||
8027 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8028 | |||
8029 | ;; | ||
8030 | *-*-irix6*) | ||
8031 | PATH="$PATH:/usr/etc" | ||
8032 | |||
8033 | $as_echo "#define WITH_IRIX_ARRAY 1" >>confdefs.h | ||
8034 | |||
8035 | |||
8036 | $as_echo "#define WITH_IRIX_PROJECT 1" >>confdefs.h | ||
8037 | |||
8038 | |||
8039 | $as_echo "#define WITH_IRIX_AUDIT 1" >>confdefs.h | ||
8040 | |||
8041 | ac_fn_c_check_func "$LINENO" "jlimit_startjob" "ac_cv_func_jlimit_startjob" | ||
8042 | if test "x$ac_cv_func_jlimit_startjob" = xyes; then : | ||
8043 | |||
8044 | $as_echo "#define WITH_IRIX_JOBS 1" >>confdefs.h | ||
8045 | |||
8046 | fi | ||
8047 | |||
8048 | $as_echo "#define BROKEN_INET_NTOA 1" >>confdefs.h | ||
8049 | |||
8050 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8051 | |||
8052 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8053 | |||
8054 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8055 | |||
8056 | |||
8057 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
8058 | |||
8059 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
8060 | |||
8061 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8062 | |||
8063 | ;; | ||
8064 | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) | ||
8065 | check_for_libcrypt_later=1 | ||
8066 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
8067 | |||
8068 | $as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h | ||
8069 | |||
8070 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
8071 | |||
8072 | |||
8073 | $as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h | ||
8074 | |||
8075 | |||
8076 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
8077 | |||
8078 | ;; | ||
8079 | *-*-linux*) | ||
8080 | no_dev_ptmx=1 | ||
8081 | use_pie=auto | ||
8082 | check_for_libcrypt_later=1 | ||
8083 | check_for_openpty_ctty_bug=1 | ||
8084 | CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE" | ||
8085 | |||
8086 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
8087 | |||
8088 | |||
8089 | $as_echo "#define LOCKED_PASSWD_PREFIX \"!\"" >>confdefs.h | ||
8090 | |||
8091 | $as_echo "#define SPT_TYPE SPT_REUSEARGV" >>confdefs.h | ||
8092 | |||
8093 | |||
8094 | $as_echo "#define LINK_OPNOTSUPP_ERRNO EPERM" >>confdefs.h | ||
8095 | |||
8096 | |||
8097 | $as_echo "#define _PATH_BTMP \"/var/log/btmp\"" >>confdefs.h | ||
8098 | |||
8099 | $as_echo "#define USE_BTMP 1" >>confdefs.h | ||
8100 | |||
8101 | |||
8102 | $as_echo "#define LINUX_OOM_ADJUST 1" >>confdefs.h | ||
8103 | |||
8104 | inet6_default_4in6=yes | ||
8105 | case `uname -r` in | ||
8106 | 1.*|2.0.*) | ||
8107 | |||
8108 | $as_echo "#define BROKEN_CMSG_TYPE 1" >>confdefs.h | ||
8109 | |||
8110 | ;; | ||
8111 | esac | ||
8112 | # tun(4) forwarding compat code | ||
8113 | for ac_header in linux/if_tun.h | ||
8114 | do : | ||
8115 | ac_fn_c_check_header_mongrel "$LINENO" "linux/if_tun.h" "ac_cv_header_linux_if_tun_h" "$ac_includes_default" | ||
8116 | if test "x$ac_cv_header_linux_if_tun_h" = xyes; then : | ||
8117 | cat >>confdefs.h <<_ACEOF | ||
8118 | #define HAVE_LINUX_IF_TUN_H 1 | ||
8119 | _ACEOF | ||
8120 | |||
8121 | fi | ||
8122 | |||
8123 | done | ||
8124 | |||
8125 | if test "x$ac_cv_header_linux_if_tun_h" = "xyes" ; then | ||
8126 | |||
8127 | $as_echo "#define SSH_TUN_LINUX 1" >>confdefs.h | ||
8128 | |||
8129 | |||
8130 | $as_echo "#define SSH_TUN_COMPAT_AF 1" >>confdefs.h | ||
8131 | |||
8132 | |||
8133 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
8134 | |||
8135 | fi | ||
8136 | ac_fn_c_check_header_compile "$LINENO" "linux/if.h" "ac_cv_header_linux_if_h" " | ||
8137 | #ifdef HAVE_SYS_TYPES_H | ||
8138 | # include <sys/types.h> | ||
8139 | #endif | ||
8140 | |||
8141 | " | ||
8142 | if test "x$ac_cv_header_linux_if_h" = xyes; then : | ||
8143 | |||
8144 | $as_echo "#define SYS_RDOMAIN_LINUX 1" >>confdefs.h | ||
8145 | |||
8146 | fi | ||
8147 | |||
8148 | |||
8149 | for ac_header in linux/seccomp.h linux/filter.h linux/audit.h | ||
8150 | do : | ||
8151 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
8152 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#include <linux/types.h> | ||
8153 | " | ||
8154 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
8155 | cat >>confdefs.h <<_ACEOF | ||
8156 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
8157 | _ACEOF | ||
8158 | |||
8159 | fi | ||
8160 | |||
8161 | done | ||
8162 | |||
8163 | # Obtain MIPS ABI | ||
8164 | case "$host" in | ||
8165 | mips*) | ||
8166 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8167 | /* end confdefs.h. */ | ||
8168 | |||
8169 | #if _MIPS_SIM != _ABIO32 | ||
8170 | #error | ||
8171 | #endif | ||
8172 | |||
8173 | int | ||
8174 | main () | ||
8175 | { | ||
8176 | |||
8177 | ; | ||
8178 | return 0; | ||
8179 | } | ||
8180 | _ACEOF | ||
8181 | if ac_fn_c_try_compile "$LINENO"; then : | ||
8182 | mips_abi="o32" | ||
8183 | else | ||
8184 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8185 | /* end confdefs.h. */ | ||
8186 | |||
8187 | #if _MIPS_SIM != _ABIN32 | ||
8188 | #error | ||
8189 | #endif | ||
8190 | |||
8191 | int | ||
8192 | main () | ||
8193 | { | ||
8194 | |||
8195 | ; | ||
8196 | return 0; | ||
8197 | } | ||
8198 | _ACEOF | ||
8199 | if ac_fn_c_try_compile "$LINENO"; then : | ||
8200 | mips_abi="n32" | ||
8201 | else | ||
8202 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8203 | /* end confdefs.h. */ | ||
8204 | |||
8205 | #if _MIPS_SIM != _ABI64 | ||
8206 | #error | ||
8207 | #endif | ||
8208 | |||
8209 | int | ||
8210 | main () | ||
8211 | { | ||
8212 | |||
8213 | ; | ||
8214 | return 0; | ||
8215 | } | ||
8216 | _ACEOF | ||
8217 | if ac_fn_c_try_compile "$LINENO"; then : | ||
8218 | mips_abi="n64" | ||
8219 | else | ||
8220 | as_fn_error $? "unknown MIPS ABI" "$LINENO" 5 | ||
8221 | |||
8222 | fi | ||
8223 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
8224 | |||
8225 | fi | ||
8226 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
8227 | |||
8228 | fi | ||
8229 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
8230 | ;; | ||
8231 | esac | ||
8232 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for seccomp architecture" >&5 | ||
8233 | $as_echo_n "checking for seccomp architecture... " >&6; } | ||
8234 | seccomp_audit_arch= | ||
8235 | case "$host" in | ||
8236 | x86_64-*) | ||
8237 | seccomp_audit_arch=AUDIT_ARCH_X86_64 | ||
8238 | # X32: AMD64 instructions in 32bit address space. | ||
8239 | if test "x$ac_cv_sizeof_size_t" = "x4" ; then | ||
8240 | seccomp_audit_arch=AUDIT_ARCH_I386 | ||
8241 | fi | ||
8242 | ;; | ||
8243 | i*86-*) | ||
8244 | seccomp_audit_arch=AUDIT_ARCH_I386 | ||
8245 | ;; | ||
8246 | arm*-*) | ||
8247 | seccomp_audit_arch=AUDIT_ARCH_ARM | ||
8248 | ;; | ||
8249 | aarch64*-*) | ||
8250 | seccomp_audit_arch=AUDIT_ARCH_AARCH64 | ||
8251 | ;; | ||
8252 | s390x-*) | ||
8253 | seccomp_audit_arch=AUDIT_ARCH_S390X | ||
8254 | ;; | ||
8255 | s390-*) | ||
8256 | seccomp_audit_arch=AUDIT_ARCH_S390 | ||
8257 | ;; | ||
8258 | powerpc64-*) | ||
8259 | seccomp_audit_arch=AUDIT_ARCH_PPC64 | ||
8260 | ;; | ||
8261 | powerpc64le-*) | ||
8262 | seccomp_audit_arch=AUDIT_ARCH_PPC64LE | ||
8263 | ;; | ||
8264 | mips-*) | ||
8265 | seccomp_audit_arch=AUDIT_ARCH_MIPS | ||
8266 | ;; | ||
8267 | mipsel-*) | ||
8268 | seccomp_audit_arch=AUDIT_ARCH_MIPSEL | ||
8269 | ;; | ||
8270 | mips64-*) | ||
8271 | case "$mips_abi" in | ||
8272 | "n32") | ||
8273 | seccomp_audit_arch=AUDIT_ARCH_MIPS64N32 | ||
8274 | ;; | ||
8275 | "n64") | ||
8276 | seccomp_audit_arch=AUDIT_ARCH_MIPS64 | ||
8277 | ;; | ||
8278 | esac | ||
8279 | ;; | ||
8280 | mips64el-*) | ||
8281 | case "$mips_abi" in | ||
8282 | "n32") | ||
8283 | seccomp_audit_arch=AUDIT_ARCH_MIPSEL64N32 | ||
8284 | ;; | ||
8285 | "n64") | ||
8286 | seccomp_audit_arch=AUDIT_ARCH_MIPSEL64 | ||
8287 | ;; | ||
8288 | esac | ||
8289 | ;; | ||
8290 | riscv64-*) | ||
8291 | seccomp_audit_arch=AUDIT_ARCH_RISCV64 | ||
8292 | ;; | ||
8293 | esac | ||
8294 | if test "x$seccomp_audit_arch" != "x" ; then | ||
8295 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$seccomp_audit_arch\"" >&5 | ||
8296 | $as_echo "\"$seccomp_audit_arch\"" >&6; } | ||
8297 | |||
8298 | cat >>confdefs.h <<_ACEOF | ||
8299 | #define SECCOMP_AUDIT_ARCH $seccomp_audit_arch | ||
8300 | _ACEOF | ||
8301 | |||
8302 | else | ||
8303 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: architecture not supported" >&5 | ||
8304 | $as_echo "architecture not supported" >&6; } | ||
8305 | fi | ||
8306 | ;; | ||
8307 | mips-sony-bsd|mips-sony-newsos4) | ||
8308 | |||
8309 | $as_echo "#define NEED_SETPGRP 1" >>confdefs.h | ||
8310 | |||
8311 | SONY=1 | ||
8312 | ;; | ||
8313 | *-*-netbsd*) | ||
8314 | check_for_libcrypt_before=1 | ||
8315 | if test "x$withval" != "xno" ; then | ||
8316 | rpath_opt="-R" | ||
8317 | fi | ||
8318 | CPPFLAGS="$CPPFLAGS -D_OPENBSD_SOURCE" | ||
8319 | |||
8320 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
8321 | |||
8322 | ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default" | ||
8323 | if test "x$ac_cv_header_net_if_tap_h" = xyes; then : | ||
8324 | |||
8325 | else | ||
8326 | |||
8327 | $as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h | ||
8328 | |||
8329 | fi | ||
8330 | |||
8331 | |||
8332 | |||
8333 | $as_echo "#define SSH_TUN_PREPEND_AF 1" >>confdefs.h | ||
8334 | |||
8335 | TEST_MALLOC_OPTIONS="AJRX" | ||
8336 | |||
8337 | $as_echo "#define BROKEN_READ_COMPARISON 1" >>confdefs.h | ||
8338 | |||
8339 | ;; | ||
8340 | *-*-freebsd*) | ||
8341 | check_for_libcrypt_later=1 | ||
8342 | |||
8343 | $as_echo "#define LOCKED_PASSWD_PREFIX \"*LOCKED*\"" >>confdefs.h | ||
8344 | |||
8345 | |||
8346 | $as_echo "#define SSH_TUN_FREEBSD 1" >>confdefs.h | ||
8347 | |||
8348 | ac_fn_c_check_header_mongrel "$LINENO" "net/if_tap.h" "ac_cv_header_net_if_tap_h" "$ac_includes_default" | ||
8349 | if test "x$ac_cv_header_net_if_tap_h" = xyes; then : | ||
8350 | |||
8351 | else | ||
8352 | |||
8353 | $as_echo "#define SSH_TUN_NO_L2 1" >>confdefs.h | ||
8354 | |||
8355 | fi | ||
8356 | |||
8357 | |||
8358 | |||
8359 | $as_echo "#define BROKEN_GLOB 1" >>confdefs.h | ||
8360 | |||
8361 | TEST_MALLOC_OPTIONS="AJRX" | ||
8362 | # Preauth crypto occasionally uses file descriptors for crypto offload | ||
8363 | # and will crash if they cannot be opened. | ||
8364 | |||
8365 | $as_echo "#define SANDBOX_SKIP_RLIMIT_NOFILE 1" >>confdefs.h | ||
8366 | |||
8367 | ;; | ||
8368 | *-*-bsdi*) | ||
8369 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8370 | |||
8371 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8372 | |||
8373 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8374 | |||
8375 | ;; | ||
8376 | *-next-*) | ||
8377 | conf_lastlog_location="/usr/adm/lastlog" | ||
8378 | conf_utmp_location=/etc/utmp | ||
8379 | conf_wtmp_location=/usr/adm/wtmp | ||
8380 | maildir=/usr/spool/mail | ||
8381 | |||
8382 | $as_echo "#define HAVE_NEXT 1" >>confdefs.h | ||
8383 | |||
8384 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8385 | |||
8386 | |||
8387 | $as_echo "#define BROKEN_SAVED_UIDS 1" >>confdefs.h | ||
8388 | |||
8389 | ;; | ||
8390 | *-*-openbsd*) | ||
8391 | use_pie=auto | ||
8392 | |||
8393 | $as_echo "#define HAVE_ATTRIBUTE__SENTINEL__ 1" >>confdefs.h | ||
8394 | |||
8395 | |||
8396 | $as_echo "#define HAVE_ATTRIBUTE__BOUNDED__ 1" >>confdefs.h | ||
8397 | |||
8398 | |||
8399 | $as_echo "#define SSH_TUN_OPENBSD 1" >>confdefs.h | ||
8400 | |||
8401 | |||
8402 | $as_echo "#define SYSLOG_R_SAFE_IN_SIGHAND 1" >>confdefs.h | ||
8403 | |||
8404 | TEST_MALLOC_OPTIONS="AFGJPRX" | ||
8405 | ;; | ||
8406 | *-*-solaris*) | ||
8407 | if test "x$withval" != "xno" ; then | ||
8408 | rpath_opt="-R" | ||
8409 | fi | ||
8410 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
8411 | |||
8412 | $as_echo "#define LOGIN_NEEDS_UTMPX 1" >>confdefs.h | ||
8413 | |||
8414 | $as_echo "#define PAM_TTY_KLUDGE 1" >>confdefs.h | ||
8415 | |||
8416 | |||
8417 | $as_echo "#define SSHPAM_CHAUTHTOK_NEEDS_RUID 1" >>confdefs.h | ||
8418 | |||
8419 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8420 | |||
8421 | # Pushing STREAMS modules will cause sshd to acquire a controlling tty. | ||
8422 | |||
8423 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
8424 | |||
8425 | |||
8426 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
8427 | |||
8428 | |||
8429 | $as_echo "#define BROKEN_TCGETATTR_ICANON 1" >>confdefs.h | ||
8430 | |||
8431 | external_path_file=/etc/default/login | ||
8432 | # hardwire lastlog location (can't detect it on some versions) | ||
8433 | conf_lastlog_location="/var/adm/lastlog" | ||
8434 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for obsolete utmp and wtmp in solaris2.x" >&5 | ||
8435 | $as_echo_n "checking for obsolete utmp and wtmp in solaris2.x... " >&6; } | ||
8436 | sol2ver=`echo "$host"| sed -e 's/.*[0-9]\.//'` | ||
8437 | if test "$sol2ver" -ge 8; then | ||
8438 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
8439 | $as_echo "yes" >&6; } | ||
8440 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
8441 | |||
8442 | |||
8443 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
8444 | |||
8445 | else | ||
8446 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
8447 | $as_echo "no" >&6; } | ||
8448 | fi | ||
8449 | for ac_func in setpflags | ||
8450 | do : | ||
8451 | ac_fn_c_check_func "$LINENO" "setpflags" "ac_cv_func_setpflags" | ||
8452 | if test "x$ac_cv_func_setpflags" = xyes; then : | ||
8453 | cat >>confdefs.h <<_ACEOF | ||
8454 | #define HAVE_SETPFLAGS 1 | ||
8455 | _ACEOF | ||
8456 | |||
8457 | fi | ||
8458 | done | ||
8459 | |||
8460 | for ac_func in setppriv | ||
8461 | do : | ||
8462 | ac_fn_c_check_func "$LINENO" "setppriv" "ac_cv_func_setppriv" | ||
8463 | if test "x$ac_cv_func_setppriv" = xyes; then : | ||
8464 | cat >>confdefs.h <<_ACEOF | ||
8465 | #define HAVE_SETPPRIV 1 | ||
8466 | _ACEOF | ||
8467 | |||
8468 | fi | ||
8469 | done | ||
8470 | |||
8471 | for ac_func in priv_basicset | ||
8472 | do : | ||
8473 | ac_fn_c_check_func "$LINENO" "priv_basicset" "ac_cv_func_priv_basicset" | ||
8474 | if test "x$ac_cv_func_priv_basicset" = xyes; then : | ||
8475 | cat >>confdefs.h <<_ACEOF | ||
8476 | #define HAVE_PRIV_BASICSET 1 | ||
8477 | _ACEOF | ||
8478 | |||
8479 | fi | ||
8480 | done | ||
8481 | |||
8482 | for ac_header in priv.h | ||
8483 | do : | ||
8484 | ac_fn_c_check_header_mongrel "$LINENO" "priv.h" "ac_cv_header_priv_h" "$ac_includes_default" | ||
8485 | if test "x$ac_cv_header_priv_h" = xyes; then : | ||
8486 | cat >>confdefs.h <<_ACEOF | ||
8487 | #define HAVE_PRIV_H 1 | ||
8488 | _ACEOF | ||
8489 | |||
8490 | fi | ||
8491 | |||
8492 | done | ||
8493 | |||
8494 | |||
8495 | # Check whether --with-solaris-contracts was given. | ||
8496 | if test "${with_solaris_contracts+set}" = set; then : | ||
8497 | withval=$with_solaris_contracts; | ||
8498 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ct_tmpl_activate in -lcontract" >&5 | ||
8499 | $as_echo_n "checking for ct_tmpl_activate in -lcontract... " >&6; } | ||
8500 | if ${ac_cv_lib_contract_ct_tmpl_activate+:} false; then : | ||
8501 | $as_echo_n "(cached) " >&6 | ||
8502 | else | ||
8503 | ac_check_lib_save_LIBS=$LIBS | ||
8504 | LIBS="-lcontract $LIBS" | ||
8505 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8506 | /* end confdefs.h. */ | ||
8507 | |||
8508 | /* Override any GCC internal prototype to avoid an error. | ||
8509 | Use char because int might match the return type of a GCC | ||
8510 | builtin and then its argument prototype would still apply. */ | ||
8511 | #ifdef __cplusplus | ||
8512 | extern "C" | ||
8513 | #endif | ||
8514 | char ct_tmpl_activate (); | ||
8515 | int | ||
8516 | main () | ||
8517 | { | ||
8518 | return ct_tmpl_activate (); | ||
8519 | ; | ||
8520 | return 0; | ||
8521 | } | ||
8522 | _ACEOF | ||
8523 | if ac_fn_c_try_link "$LINENO"; then : | ||
8524 | ac_cv_lib_contract_ct_tmpl_activate=yes | ||
8525 | else | ||
8526 | ac_cv_lib_contract_ct_tmpl_activate=no | ||
8527 | fi | ||
8528 | rm -f core conftest.err conftest.$ac_objext \ | ||
8529 | conftest$ac_exeext conftest.$ac_ext | ||
8530 | LIBS=$ac_check_lib_save_LIBS | ||
8531 | fi | ||
8532 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_contract_ct_tmpl_activate" >&5 | ||
8533 | $as_echo "$ac_cv_lib_contract_ct_tmpl_activate" >&6; } | ||
8534 | if test "x$ac_cv_lib_contract_ct_tmpl_activate" = xyes; then : | ||
8535 | |||
8536 | $as_echo "#define USE_SOLARIS_PROCESS_CONTRACTS 1" >>confdefs.h | ||
8537 | |||
8538 | LIBS="$LIBS -lcontract" | ||
8539 | SPC_MSG="yes" | ||
8540 | fi | ||
8541 | |||
8542 | |||
8543 | fi | ||
8544 | |||
8545 | |||
8546 | # Check whether --with-solaris-projects was given. | ||
8547 | if test "${with_solaris_projects+set}" = set; then : | ||
8548 | withval=$with_solaris_projects; | ||
8549 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setproject in -lproject" >&5 | ||
8550 | $as_echo_n "checking for setproject in -lproject... " >&6; } | ||
8551 | if ${ac_cv_lib_project_setproject+:} false; then : | ||
8552 | $as_echo_n "(cached) " >&6 | ||
8553 | else | ||
8554 | ac_check_lib_save_LIBS=$LIBS | ||
8555 | LIBS="-lproject $LIBS" | ||
8556 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8557 | /* end confdefs.h. */ | ||
8558 | |||
8559 | /* Override any GCC internal prototype to avoid an error. | ||
8560 | Use char because int might match the return type of a GCC | ||
8561 | builtin and then its argument prototype would still apply. */ | ||
8562 | #ifdef __cplusplus | ||
8563 | extern "C" | ||
8564 | #endif | ||
8565 | char setproject (); | ||
8566 | int | ||
8567 | main () | ||
8568 | { | ||
8569 | return setproject (); | ||
8570 | ; | ||
8571 | return 0; | ||
8572 | } | ||
8573 | _ACEOF | ||
8574 | if ac_fn_c_try_link "$LINENO"; then : | ||
8575 | ac_cv_lib_project_setproject=yes | ||
8576 | else | ||
8577 | ac_cv_lib_project_setproject=no | ||
8578 | fi | ||
8579 | rm -f core conftest.err conftest.$ac_objext \ | ||
8580 | conftest$ac_exeext conftest.$ac_ext | ||
8581 | LIBS=$ac_check_lib_save_LIBS | ||
8582 | fi | ||
8583 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_project_setproject" >&5 | ||
8584 | $as_echo "$ac_cv_lib_project_setproject" >&6; } | ||
8585 | if test "x$ac_cv_lib_project_setproject" = xyes; then : | ||
8586 | |||
8587 | $as_echo "#define USE_SOLARIS_PROJECTS 1" >>confdefs.h | ||
8588 | |||
8589 | LIBS="$LIBS -lproject" | ||
8590 | SP_MSG="yes" | ||
8591 | fi | ||
8592 | |||
8593 | |||
8594 | fi | ||
8595 | |||
8596 | |||
8597 | # Check whether --with-solaris-privs was given. | ||
8598 | if test "${with_solaris_privs+set}" = set; then : | ||
8599 | withval=$with_solaris_privs; | ||
8600 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Solaris/Illumos privilege support" >&5 | ||
8601 | $as_echo_n "checking for Solaris/Illumos privilege support... " >&6; } | ||
8602 | if test "x$ac_cv_func_setppriv" = "xyes" -a \ | ||
8603 | "x$ac_cv_header_priv_h" = "xyes" ; then | ||
8604 | SOLARIS_PRIVS=yes | ||
8605 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5 | ||
8606 | $as_echo "found" >&6; } | ||
8607 | |||
8608 | $as_echo "#define NO_UID_RESTORATION_TEST 1" >>confdefs.h | ||
8609 | |||
8610 | |||
8611 | $as_echo "#define USE_SOLARIS_PRIVS 1" >>confdefs.h | ||
8612 | |||
8613 | SPP_MSG="yes" | ||
8614 | else | ||
8615 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
8616 | $as_echo "not found" >&6; } | ||
8617 | as_fn_error $? "*** must have support for Solaris privileges to use --with-solaris-privs" "$LINENO" 5 | ||
8618 | fi | ||
8619 | |||
8620 | fi | ||
8621 | |||
8622 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
8623 | ;; | ||
8624 | *-*-sunos4*) | ||
8625 | CPPFLAGS="$CPPFLAGS -DSUNOS4" | ||
8626 | for ac_func in getpwanam | ||
8627 | do : | ||
8628 | ac_fn_c_check_func "$LINENO" "getpwanam" "ac_cv_func_getpwanam" | ||
8629 | if test "x$ac_cv_func_getpwanam" = xyes; then : | ||
8630 | cat >>confdefs.h <<_ACEOF | ||
8631 | #define HAVE_GETPWANAM 1 | ||
8632 | _ACEOF | ||
8633 | |||
8634 | fi | ||
8635 | done | ||
8636 | |||
8637 | $as_echo "#define PAM_SUN_CODEBASE 1" >>confdefs.h | ||
8638 | |||
8639 | conf_utmp_location=/etc/utmp | ||
8640 | conf_wtmp_location=/var/adm/wtmp | ||
8641 | conf_lastlog_location=/var/adm/lastlog | ||
8642 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8643 | |||
8644 | |||
8645 | $as_echo "#define DISABLE_UTMPX 1" >>confdefs.h | ||
8646 | |||
8647 | ;; | ||
8648 | *-ncr-sysv*) | ||
8649 | LIBS="$LIBS -lc89" | ||
8650 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8651 | |||
8652 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
8653 | |||
8654 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8655 | |||
8656 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8657 | |||
8658 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8659 | |||
8660 | ;; | ||
8661 | *-sni-sysv*) | ||
8662 | # /usr/ucblib MUST NOT be searched on ReliantUNIX | ||
8663 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlsym in -ldl" >&5 | ||
8664 | $as_echo_n "checking for dlsym in -ldl... " >&6; } | ||
8665 | if ${ac_cv_lib_dl_dlsym+:} false; then : | ||
8666 | $as_echo_n "(cached) " >&6 | ||
8667 | else | ||
8668 | ac_check_lib_save_LIBS=$LIBS | ||
8669 | LIBS="-ldl $LIBS" | ||
8670 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8671 | /* end confdefs.h. */ | ||
8672 | |||
8673 | /* Override any GCC internal prototype to avoid an error. | ||
8674 | Use char because int might match the return type of a GCC | ||
8675 | builtin and then its argument prototype would still apply. */ | ||
8676 | #ifdef __cplusplus | ||
8677 | extern "C" | ||
8678 | #endif | ||
8679 | char dlsym (); | ||
8680 | int | ||
8681 | main () | ||
8682 | { | ||
8683 | return dlsym (); | ||
8684 | ; | ||
8685 | return 0; | ||
8686 | } | ||
8687 | _ACEOF | ||
8688 | if ac_fn_c_try_link "$LINENO"; then : | ||
8689 | ac_cv_lib_dl_dlsym=yes | ||
8690 | else | ||
8691 | ac_cv_lib_dl_dlsym=no | ||
8692 | fi | ||
8693 | rm -f core conftest.err conftest.$ac_objext \ | ||
8694 | conftest$ac_exeext conftest.$ac_ext | ||
8695 | LIBS=$ac_check_lib_save_LIBS | ||
8696 | fi | ||
8697 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlsym" >&5 | ||
8698 | $as_echo "$ac_cv_lib_dl_dlsym" >&6; } | ||
8699 | if test "x$ac_cv_lib_dl_dlsym" = xyes; then : | ||
8700 | cat >>confdefs.h <<_ACEOF | ||
8701 | #define HAVE_LIBDL 1 | ||
8702 | _ACEOF | ||
8703 | |||
8704 | LIBS="-ldl $LIBS" | ||
8705 | |||
8706 | fi | ||
8707 | |||
8708 | # -lresolv needs to be at the end of LIBS or DNS lookups break | ||
8709 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5 | ||
8710 | $as_echo_n "checking for res_query in -lresolv... " >&6; } | ||
8711 | if ${ac_cv_lib_resolv_res_query+:} false; then : | ||
8712 | $as_echo_n "(cached) " >&6 | ||
8713 | else | ||
8714 | ac_check_lib_save_LIBS=$LIBS | ||
8715 | LIBS="-lresolv $LIBS" | ||
8716 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8717 | /* end confdefs.h. */ | ||
8718 | |||
8719 | /* Override any GCC internal prototype to avoid an error. | ||
8720 | Use char because int might match the return type of a GCC | ||
8721 | builtin and then its argument prototype would still apply. */ | ||
8722 | #ifdef __cplusplus | ||
8723 | extern "C" | ||
8724 | #endif | ||
8725 | char res_query (); | ||
8726 | int | ||
8727 | main () | ||
8728 | { | ||
8729 | return res_query (); | ||
8730 | ; | ||
8731 | return 0; | ||
8732 | } | ||
8733 | _ACEOF | ||
8734 | if ac_fn_c_try_link "$LINENO"; then : | ||
8735 | ac_cv_lib_resolv_res_query=yes | ||
8736 | else | ||
8737 | ac_cv_lib_resolv_res_query=no | ||
8738 | fi | ||
8739 | rm -f core conftest.err conftest.$ac_objext \ | ||
8740 | conftest$ac_exeext conftest.$ac_ext | ||
8741 | LIBS=$ac_check_lib_save_LIBS | ||
8742 | fi | ||
8743 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_res_query" >&5 | ||
8744 | $as_echo "$ac_cv_lib_resolv_res_query" >&6; } | ||
8745 | if test "x$ac_cv_lib_resolv_res_query" = xyes; then : | ||
8746 | LIBS="$LIBS -lresolv" | ||
8747 | fi | ||
8748 | |||
8749 | IPADDR_IN_DISPLAY=yes | ||
8750 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8751 | |||
8752 | $as_echo "#define IP_TOS_IS_BROKEN 1" >>confdefs.h | ||
8753 | |||
8754 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8755 | |||
8756 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8757 | |||
8758 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8759 | |||
8760 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
8761 | |||
8762 | external_path_file=/etc/default/login | ||
8763 | # /usr/ucblib/libucb.a no longer needed on ReliantUNIX | ||
8764 | # Attention: always take care to bind libsocket and libnsl before libc, | ||
8765 | # otherwise you will find lots of "SIOCGPGRP errno 22" on syslog | ||
8766 | ;; | ||
8767 | # UnixWare 1.x, UnixWare 2.x, and others based on code from Univel. | ||
8768 | *-*-sysv4.2*) | ||
8769 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8770 | |||
8771 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8772 | |||
8773 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8774 | |||
8775 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8776 | |||
8777 | |||
8778 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
8779 | |||
8780 | $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8781 | |||
8782 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
8783 | ;; | ||
8784 | # UnixWare 7.x, OpenUNIX 8 | ||
8785 | *-*-sysv5*) | ||
8786 | CPPFLAGS="$CPPFLAGS -Dvsnprintf=_xvsnprintf -Dsnprintf=_xsnprintf" | ||
8787 | |||
8788 | $as_echo "#define UNIXWARE_LONG_PASSWORDS 1" >>confdefs.h | ||
8789 | |||
8790 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8791 | |||
8792 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8793 | |||
8794 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
8795 | |||
8796 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8797 | |||
8798 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8799 | |||
8800 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
8801 | |||
8802 | $as_echo "#define BROKEN_TCGETATTR_ICANON 1" >>confdefs.h | ||
8803 | |||
8804 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
8805 | check_for_libcrypt_later=1 | ||
8806 | case "$host" in | ||
8807 | *-*-sysv5SCO_SV*) # SCO OpenServer 6.x | ||
8808 | maildir=/var/spool/mail | ||
8809 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
8810 | |||
8811 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getluid in -lprot" >&5 | ||
8812 | $as_echo_n "checking for getluid in -lprot... " >&6; } | ||
8813 | if ${ac_cv_lib_prot_getluid+:} false; then : | ||
8814 | $as_echo_n "(cached) " >&6 | ||
8815 | else | ||
8816 | ac_check_lib_save_LIBS=$LIBS | ||
8817 | LIBS="-lprot $LIBS" | ||
8818 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
8819 | /* end confdefs.h. */ | ||
8820 | |||
8821 | /* Override any GCC internal prototype to avoid an error. | ||
8822 | Use char because int might match the return type of a GCC | ||
8823 | builtin and then its argument prototype would still apply. */ | ||
8824 | #ifdef __cplusplus | ||
8825 | extern "C" | ||
8826 | #endif | ||
8827 | char getluid (); | ||
8828 | int | ||
8829 | main () | ||
8830 | { | ||
8831 | return getluid (); | ||
8832 | ; | ||
8833 | return 0; | ||
8834 | } | ||
8835 | _ACEOF | ||
8836 | if ac_fn_c_try_link "$LINENO"; then : | ||
8837 | ac_cv_lib_prot_getluid=yes | ||
8838 | else | ||
8839 | ac_cv_lib_prot_getluid=no | ||
8840 | fi | ||
8841 | rm -f core conftest.err conftest.$ac_objext \ | ||
8842 | conftest$ac_exeext conftest.$ac_ext | ||
8843 | LIBS=$ac_check_lib_save_LIBS | ||
8844 | fi | ||
8845 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_prot_getluid" >&5 | ||
8846 | $as_echo "$ac_cv_lib_prot_getluid" >&6; } | ||
8847 | if test "x$ac_cv_lib_prot_getluid" = xyes; then : | ||
8848 | LIBS="$LIBS -lprot" | ||
8849 | for ac_func in getluid setluid | ||
8850 | do : | ||
8851 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
8852 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
8853 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
8854 | cat >>confdefs.h <<_ACEOF | ||
8855 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
8856 | _ACEOF | ||
8857 | |||
8858 | fi | ||
8859 | done | ||
8860 | |||
8861 | |||
8862 | fi | ||
8863 | |||
8864 | ;; | ||
8865 | *) $as_echo "#define LOCKED_PASSWD_STRING \"*LK*\"" >>confdefs.h | ||
8866 | |||
8867 | ;; | ||
8868 | esac | ||
8869 | ;; | ||
8870 | *-*-sysv*) | ||
8871 | ;; | ||
8872 | # SCO UNIX and OEM versions of SCO UNIX | ||
8873 | *-*-sco3.2v4*) | ||
8874 | as_fn_error $? "\"This Platform is no longer supported.\"" "$LINENO" 5 | ||
8875 | ;; | ||
8876 | # SCO OpenServer 5.x | ||
8877 | *-*-sco3.2v5*) | ||
8878 | if test -z "$GCC"; then | ||
8879 | CFLAGS="$CFLAGS -belf" | ||
8880 | fi | ||
8881 | LIBS="$LIBS -lprot -lx -ltinfo -lm" | ||
8882 | no_dev_ptmx=1 | ||
8883 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8884 | |||
8885 | $as_echo "#define HAVE_SECUREWARE 1" >>confdefs.h | ||
8886 | |||
8887 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
8888 | |||
8889 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8890 | |||
8891 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8892 | |||
8893 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
8894 | |||
8895 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8896 | |||
8897 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8898 | |||
8899 | $as_echo "#define WITH_ABBREV_NO_TTY 1" >>confdefs.h | ||
8900 | |||
8901 | $as_echo "#define BROKEN_UPDWTMPX 1" >>confdefs.h | ||
8902 | |||
8903 | $as_echo "#define PASSWD_NEEDS_USERNAME 1" >>confdefs.h | ||
8904 | |||
8905 | for ac_func in getluid setluid | ||
8906 | do : | ||
8907 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
8908 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
8909 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
8910 | cat >>confdefs.h <<_ACEOF | ||
8911 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
8912 | _ACEOF | ||
8913 | |||
8914 | fi | ||
8915 | done | ||
8916 | |||
8917 | MANTYPE=man | ||
8918 | TEST_SHELL=$SHELL # let configure find us a capable shell | ||
8919 | SKIP_DISABLE_LASTLOG_DEFINE=yes | ||
8920 | ;; | ||
8921 | *-dec-osf*) | ||
8922 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Digital Unix SIA" >&5 | ||
8923 | $as_echo_n "checking for Digital Unix SIA... " >&6; } | ||
8924 | no_osfsia="" | ||
8925 | |||
8926 | # Check whether --with-osfsia was given. | ||
8927 | if test "${with_osfsia+set}" = set; then : | ||
8928 | withval=$with_osfsia; | ||
8929 | if test "x$withval" = "xno" ; then | ||
8930 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: disabled" >&5 | ||
8931 | $as_echo "disabled" >&6; } | ||
8932 | no_osfsia=1 | ||
8933 | fi | ||
8934 | |||
8935 | fi | ||
8936 | |||
8937 | if test -z "$no_osfsia" ; then | ||
8938 | if test -f /etc/sia/matrix.conf; then | ||
8939 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
8940 | $as_echo "yes" >&6; } | ||
8941 | |||
8942 | $as_echo "#define HAVE_OSF_SIA 1" >>confdefs.h | ||
8943 | |||
8944 | |||
8945 | $as_echo "#define DISABLE_LOGIN 1" >>confdefs.h | ||
8946 | |||
8947 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8948 | |||
8949 | LIBS="$LIBS -lsecurity -ldb -lm -laud" | ||
8950 | SIA_MSG="yes" | ||
8951 | else | ||
8952 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
8953 | $as_echo "no" >&6; } | ||
8954 | |||
8955 | $as_echo "#define LOCKED_PASSWD_SUBSTR \"Nologin\"" >>confdefs.h | ||
8956 | |||
8957 | fi | ||
8958 | fi | ||
8959 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
8960 | |||
8961 | $as_echo "#define SETEUID_BREAKS_SETUID 1" >>confdefs.h | ||
8962 | |||
8963 | $as_echo "#define BROKEN_SETREUID 1" >>confdefs.h | ||
8964 | |||
8965 | $as_echo "#define BROKEN_SETREGID 1" >>confdefs.h | ||
8966 | |||
8967 | |||
8968 | $as_echo "#define BROKEN_READV_COMPARISON 1" >>confdefs.h | ||
8969 | |||
8970 | ;; | ||
8971 | |||
8972 | *-*-nto-qnx*) | ||
8973 | $as_echo "#define USE_PIPES 1" >>confdefs.h | ||
8974 | |||
8975 | $as_echo "#define NO_X11_UNIX_SOCKETS 1" >>confdefs.h | ||
8976 | |||
8977 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
8978 | |||
8979 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
8980 | |||
8981 | |||
8982 | $as_echo "#define BROKEN_SHADOW_EXPIRE 1" >>confdefs.h | ||
8983 | |||
8984 | enable_etc_default_login=no # has incompatible /etc/default/login | ||
8985 | case "$host" in | ||
8986 | *-*-nto-qnx6*) | ||
8987 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
8988 | |||
8989 | ;; | ||
8990 | esac | ||
8991 | ;; | ||
8992 | |||
8993 | *-*-ultrix*) | ||
8994 | |||
8995 | $as_echo "#define BROKEN_GETGROUPS 1" >>confdefs.h | ||
8996 | |||
8997 | |||
8998 | $as_echo "#define NEED_SETPGRP 1" >>confdefs.h | ||
8999 | |||
9000 | |||
9001 | $as_echo "#define HAVE_SYS_SYSLOG_H 1" >>confdefs.h | ||
9002 | |||
9003 | |||
9004 | $as_echo "#define DISABLE_UTMPX 1" >>confdefs.h | ||
9005 | |||
9006 | # DISABLE_FD_PASSING so that we call setpgrp as root, otherwise we | ||
9007 | # don't get a controlling tty. | ||
9008 | |||
9009 | $as_echo "#define DISABLE_FD_PASSING 1" >>confdefs.h | ||
9010 | |||
9011 | # On Ultrix some headers are not protected against multiple includes, | ||
9012 | # so we create wrappers and put it where the compiler will find it. | ||
9013 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: creating compat wrappers for headers" >&5 | ||
9014 | $as_echo "$as_me: WARNING: creating compat wrappers for headers" >&2;} | ||
9015 | mkdir -p netinet | ||
9016 | for header in netinet/ip.h netdb.h resolv.h; do | ||
9017 | name=`echo $header | tr 'a-z/.' 'A-Z__'` | ||
9018 | cat >$header <<EOD | ||
9019 | #ifndef _SSH_COMPAT_${name} | ||
9020 | #define _SSH_COMPAT_${name} | ||
9021 | #include "/usr/include/${header}" | ||
9022 | #endif | ||
9023 | EOD | ||
9024 | done | ||
9025 | ;; | ||
9026 | |||
9027 | *-*-lynxos) | ||
9028 | CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__" | ||
9029 | |||
9030 | $as_echo "#define BROKEN_SETVBUF 1" >>confdefs.h | ||
9031 | |||
9032 | ;; | ||
9033 | esac | ||
9034 | |||
9035 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler and flags for sanity" >&5 | ||
9036 | $as_echo_n "checking compiler and flags for sanity... " >&6; } | ||
9037 | if test "$cross_compiling" = yes; then : | ||
9038 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking compiler sanity" >&5 | ||
9039 | $as_echo "$as_me: WARNING: cross compiling: not checking compiler sanity" >&2;} | ||
9040 | |||
9041 | else | ||
9042 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9043 | /* end confdefs.h. */ | ||
9044 | #include <stdlib.h> | ||
9045 | int | ||
9046 | main () | ||
9047 | { | ||
9048 | exit(0); | ||
9049 | ; | ||
9050 | return 0; | ||
9051 | } | ||
9052 | _ACEOF | ||
9053 | if ac_fn_c_try_run "$LINENO"; then : | ||
9054 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9055 | $as_echo "yes" >&6; } | ||
9056 | else | ||
9057 | |||
9058 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9059 | $as_echo "no" >&6; } | ||
9060 | as_fn_error $? "*** compiler cannot create working executables, check config.log ***" "$LINENO" 5 | ||
9061 | |||
9062 | fi | ||
9063 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
9064 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
9065 | fi | ||
9066 | |||
9067 | |||
9068 | # Checks for libraries. | ||
9069 | ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt" | ||
9070 | if test "x$ac_cv_func_setsockopt" = xyes; then : | ||
9071 | |||
9072 | else | ||
9073 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5 | ||
9074 | $as_echo_n "checking for setsockopt in -lsocket... " >&6; } | ||
9075 | if ${ac_cv_lib_socket_setsockopt+:} false; then : | ||
9076 | $as_echo_n "(cached) " >&6 | ||
9077 | else | ||
9078 | ac_check_lib_save_LIBS=$LIBS | ||
9079 | LIBS="-lsocket $LIBS" | ||
9080 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9081 | /* end confdefs.h. */ | ||
9082 | |||
9083 | /* Override any GCC internal prototype to avoid an error. | ||
9084 | Use char because int might match the return type of a GCC | ||
9085 | builtin and then its argument prototype would still apply. */ | ||
9086 | #ifdef __cplusplus | ||
9087 | extern "C" | ||
9088 | #endif | ||
9089 | char setsockopt (); | ||
9090 | int | ||
9091 | main () | ||
9092 | { | ||
9093 | return setsockopt (); | ||
9094 | ; | ||
9095 | return 0; | ||
9096 | } | ||
9097 | _ACEOF | ||
9098 | if ac_fn_c_try_link "$LINENO"; then : | ||
9099 | ac_cv_lib_socket_setsockopt=yes | ||
9100 | else | ||
9101 | ac_cv_lib_socket_setsockopt=no | ||
9102 | fi | ||
9103 | rm -f core conftest.err conftest.$ac_objext \ | ||
9104 | conftest$ac_exeext conftest.$ac_ext | ||
9105 | LIBS=$ac_check_lib_save_LIBS | ||
9106 | fi | ||
9107 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5 | ||
9108 | $as_echo "$ac_cv_lib_socket_setsockopt" >&6; } | ||
9109 | if test "x$ac_cv_lib_socket_setsockopt" = xyes; then : | ||
9110 | cat >>confdefs.h <<_ACEOF | ||
9111 | #define HAVE_LIBSOCKET 1 | ||
9112 | _ACEOF | ||
9113 | |||
9114 | LIBS="-lsocket $LIBS" | ||
9115 | |||
9116 | fi | ||
9117 | |||
9118 | fi | ||
9119 | |||
9120 | |||
9121 | for ac_func in dirname | ||
9122 | do : | ||
9123 | ac_fn_c_check_func "$LINENO" "dirname" "ac_cv_func_dirname" | ||
9124 | if test "x$ac_cv_func_dirname" = xyes; then : | ||
9125 | cat >>confdefs.h <<_ACEOF | ||
9126 | #define HAVE_DIRNAME 1 | ||
9127 | _ACEOF | ||
9128 | for ac_header in libgen.h | ||
9129 | do : | ||
9130 | ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default" | ||
9131 | if test "x$ac_cv_header_libgen_h" = xyes; then : | ||
9132 | cat >>confdefs.h <<_ACEOF | ||
9133 | #define HAVE_LIBGEN_H 1 | ||
9134 | _ACEOF | ||
9135 | |||
9136 | fi | ||
9137 | |||
9138 | done | ||
9139 | |||
9140 | else | ||
9141 | |||
9142 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dirname in -lgen" >&5 | ||
9143 | $as_echo_n "checking for dirname in -lgen... " >&6; } | ||
9144 | if ${ac_cv_lib_gen_dirname+:} false; then : | ||
9145 | $as_echo_n "(cached) " >&6 | ||
9146 | else | ||
9147 | ac_check_lib_save_LIBS=$LIBS | ||
9148 | LIBS="-lgen $LIBS" | ||
9149 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9150 | /* end confdefs.h. */ | ||
9151 | |||
9152 | /* Override any GCC internal prototype to avoid an error. | ||
9153 | Use char because int might match the return type of a GCC | ||
9154 | builtin and then its argument prototype would still apply. */ | ||
9155 | #ifdef __cplusplus | ||
9156 | extern "C" | ||
9157 | #endif | ||
9158 | char dirname (); | ||
9159 | int | ||
9160 | main () | ||
9161 | { | ||
9162 | return dirname (); | ||
9163 | ; | ||
9164 | return 0; | ||
9165 | } | ||
9166 | _ACEOF | ||
9167 | if ac_fn_c_try_link "$LINENO"; then : | ||
9168 | ac_cv_lib_gen_dirname=yes | ||
9169 | else | ||
9170 | ac_cv_lib_gen_dirname=no | ||
9171 | fi | ||
9172 | rm -f core conftest.err conftest.$ac_objext \ | ||
9173 | conftest$ac_exeext conftest.$ac_ext | ||
9174 | LIBS=$ac_check_lib_save_LIBS | ||
9175 | fi | ||
9176 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_dirname" >&5 | ||
9177 | $as_echo "$ac_cv_lib_gen_dirname" >&6; } | ||
9178 | if test "x$ac_cv_lib_gen_dirname" = xyes; then : | ||
9179 | |||
9180 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken dirname" >&5 | ||
9181 | $as_echo_n "checking for broken dirname... " >&6; } | ||
9182 | if ${ac_cv_have_broken_dirname+:} false; then : | ||
9183 | $as_echo_n "(cached) " >&6 | ||
9184 | else | ||
9185 | |||
9186 | save_LIBS="$LIBS" | ||
9187 | LIBS="$LIBS -lgen" | ||
9188 | if test "$cross_compiling" = yes; then : | ||
9189 | ac_cv_have_broken_dirname="no" | ||
9190 | else | ||
9191 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9192 | /* end confdefs.h. */ | ||
9193 | |||
9194 | #include <libgen.h> | ||
9195 | #include <string.h> | ||
9196 | #include <stdlib.h> | ||
9197 | |||
9198 | int main(int argc, char **argv) { | ||
9199 | char *s, buf[32]; | ||
9200 | |||
9201 | strncpy(buf,"/etc", 32); | ||
9202 | s = dirname(buf); | ||
9203 | if (!s || strncmp(s, "/", 32) != 0) { | ||
9204 | exit(1); | ||
9205 | } else { | ||
9206 | exit(0); | ||
9207 | } | ||
9208 | } | ||
9209 | |||
9210 | _ACEOF | ||
9211 | if ac_fn_c_try_run "$LINENO"; then : | ||
9212 | ac_cv_have_broken_dirname="no" | ||
9213 | else | ||
9214 | ac_cv_have_broken_dirname="yes" | ||
9215 | fi | ||
9216 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
9217 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
9218 | fi | ||
9219 | |||
9220 | LIBS="$save_LIBS" | ||
9221 | |||
9222 | fi | ||
9223 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_broken_dirname" >&5 | ||
9224 | $as_echo "$ac_cv_have_broken_dirname" >&6; } | ||
9225 | if test "x$ac_cv_have_broken_dirname" = "xno" ; then | ||
9226 | LIBS="$LIBS -lgen" | ||
9227 | $as_echo "#define HAVE_DIRNAME 1" >>confdefs.h | ||
9228 | |||
9229 | for ac_header in libgen.h | ||
9230 | do : | ||
9231 | ac_fn_c_check_header_mongrel "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$ac_includes_default" | ||
9232 | if test "x$ac_cv_header_libgen_h" = xyes; then : | ||
9233 | cat >>confdefs.h <<_ACEOF | ||
9234 | #define HAVE_LIBGEN_H 1 | ||
9235 | _ACEOF | ||
9236 | |||
9237 | fi | ||
9238 | |||
9239 | done | ||
9240 | |||
9241 | fi | ||
9242 | |||
9243 | fi | ||
9244 | |||
9245 | |||
9246 | fi | ||
9247 | done | ||
9248 | |||
9249 | |||
9250 | ac_fn_c_check_func "$LINENO" "getspnam" "ac_cv_func_getspnam" | ||
9251 | if test "x$ac_cv_func_getspnam" = xyes; then : | ||
9252 | |||
9253 | else | ||
9254 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getspnam in -lgen" >&5 | ||
9255 | $as_echo_n "checking for getspnam in -lgen... " >&6; } | ||
9256 | if ${ac_cv_lib_gen_getspnam+:} false; then : | ||
9257 | $as_echo_n "(cached) " >&6 | ||
9258 | else | ||
9259 | ac_check_lib_save_LIBS=$LIBS | ||
9260 | LIBS="-lgen $LIBS" | ||
9261 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9262 | /* end confdefs.h. */ | ||
9263 | |||
9264 | /* Override any GCC internal prototype to avoid an error. | ||
9265 | Use char because int might match the return type of a GCC | ||
9266 | builtin and then its argument prototype would still apply. */ | ||
9267 | #ifdef __cplusplus | ||
9268 | extern "C" | ||
9269 | #endif | ||
9270 | char getspnam (); | ||
9271 | int | ||
9272 | main () | ||
9273 | { | ||
9274 | return getspnam (); | ||
9275 | ; | ||
9276 | return 0; | ||
9277 | } | ||
9278 | _ACEOF | ||
9279 | if ac_fn_c_try_link "$LINENO"; then : | ||
9280 | ac_cv_lib_gen_getspnam=yes | ||
9281 | else | ||
9282 | ac_cv_lib_gen_getspnam=no | ||
9283 | fi | ||
9284 | rm -f core conftest.err conftest.$ac_objext \ | ||
9285 | conftest$ac_exeext conftest.$ac_ext | ||
9286 | LIBS=$ac_check_lib_save_LIBS | ||
9287 | fi | ||
9288 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_getspnam" >&5 | ||
9289 | $as_echo "$ac_cv_lib_gen_getspnam" >&6; } | ||
9290 | if test "x$ac_cv_lib_gen_getspnam" = xyes; then : | ||
9291 | LIBS="$LIBS -lgen" | ||
9292 | fi | ||
9293 | |||
9294 | fi | ||
9295 | |||
9296 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing basename" >&5 | ||
9297 | $as_echo_n "checking for library containing basename... " >&6; } | ||
9298 | if ${ac_cv_search_basename+:} false; then : | ||
9299 | $as_echo_n "(cached) " >&6 | ||
9300 | else | ||
9301 | ac_func_search_save_LIBS=$LIBS | ||
9302 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9303 | /* end confdefs.h. */ | ||
9304 | |||
9305 | /* Override any GCC internal prototype to avoid an error. | ||
9306 | Use char because int might match the return type of a GCC | ||
9307 | builtin and then its argument prototype would still apply. */ | ||
9308 | #ifdef __cplusplus | ||
9309 | extern "C" | ||
9310 | #endif | ||
9311 | char basename (); | ||
9312 | int | ||
9313 | main () | ||
9314 | { | ||
9315 | return basename (); | ||
9316 | ; | ||
9317 | return 0; | ||
9318 | } | ||
9319 | _ACEOF | ||
9320 | for ac_lib in '' gen; do | ||
9321 | if test -z "$ac_lib"; then | ||
9322 | ac_res="none required" | ||
9323 | else | ||
9324 | ac_res=-l$ac_lib | ||
9325 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9326 | fi | ||
9327 | if ac_fn_c_try_link "$LINENO"; then : | ||
9328 | ac_cv_search_basename=$ac_res | ||
9329 | fi | ||
9330 | rm -f core conftest.err conftest.$ac_objext \ | ||
9331 | conftest$ac_exeext | ||
9332 | if ${ac_cv_search_basename+:} false; then : | ||
9333 | break | ||
9334 | fi | ||
9335 | done | ||
9336 | if ${ac_cv_search_basename+:} false; then : | ||
9337 | |||
9338 | else | ||
9339 | ac_cv_search_basename=no | ||
9340 | fi | ||
9341 | rm conftest.$ac_ext | ||
9342 | LIBS=$ac_func_search_save_LIBS | ||
9343 | fi | ||
9344 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_basename" >&5 | ||
9345 | $as_echo "$ac_cv_search_basename" >&6; } | ||
9346 | ac_res=$ac_cv_search_basename | ||
9347 | if test "$ac_res" != no; then : | ||
9348 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9349 | |||
9350 | $as_echo "#define HAVE_BASENAME 1" >>confdefs.h | ||
9351 | |||
9352 | fi | ||
9353 | |||
9354 | |||
9355 | zlib=yes | ||
9356 | |||
9357 | # Check whether --with-zlib was given. | ||
9358 | if test "${with_zlib+set}" = set; then : | ||
9359 | withval=$with_zlib; if test "x$withval" = "xno" ; then | ||
9360 | zlib=no | ||
9361 | elif test "x$withval" != "xyes"; then | ||
9362 | if test -d "$withval/lib"; then | ||
9363 | if test -n "${rpath_opt}"; then | ||
9364 | LDFLAGS="-L${withval}/lib ${rpath_opt}${withval}/lib ${LDFLAGS}" | ||
9365 | else | ||
9366 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
9367 | fi | ||
9368 | else | ||
9369 | if test -n "${rpath_opt}"; then | ||
9370 | LDFLAGS="-L${withval} ${rpath_opt}${withval} ${LDFLAGS}" | ||
9371 | else | ||
9372 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
9373 | fi | ||
9374 | fi | ||
9375 | if test -d "$withval/include"; then | ||
9376 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
9377 | else | ||
9378 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
9379 | fi | ||
9380 | fi | ||
9381 | |||
9382 | fi | ||
9383 | |||
9384 | |||
9385 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for zlib" >&5 | ||
9386 | $as_echo_n "checking for zlib... " >&6; } | ||
9387 | if test "x${zlib}" = "xno"; then | ||
9388 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9389 | $as_echo "no" >&6; } | ||
9390 | else | ||
9391 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9392 | $as_echo "yes" >&6; } | ||
9393 | |||
9394 | $as_echo "#define WITH_ZLIB 1" >>confdefs.h | ||
9395 | |||
9396 | ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" | ||
9397 | if test "x$ac_cv_header_zlib_h" = xyes; then : | ||
9398 | |||
9399 | else | ||
9400 | as_fn_error $? "*** zlib.h missing - please install first or check config.log ***" "$LINENO" 5 | ||
9401 | fi | ||
9402 | |||
9403 | |||
9404 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for deflate in -lz" >&5 | ||
9405 | $as_echo_n "checking for deflate in -lz... " >&6; } | ||
9406 | if ${ac_cv_lib_z_deflate+:} false; then : | ||
9407 | $as_echo_n "(cached) " >&6 | ||
9408 | else | ||
9409 | ac_check_lib_save_LIBS=$LIBS | ||
9410 | LIBS="-lz $LIBS" | ||
9411 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9412 | /* end confdefs.h. */ | ||
9413 | |||
9414 | /* Override any GCC internal prototype to avoid an error. | ||
9415 | Use char because int might match the return type of a GCC | ||
9416 | builtin and then its argument prototype would still apply. */ | ||
9417 | #ifdef __cplusplus | ||
9418 | extern "C" | ||
9419 | #endif | ||
9420 | char deflate (); | ||
9421 | int | ||
9422 | main () | ||
9423 | { | ||
9424 | return deflate (); | ||
9425 | ; | ||
9426 | return 0; | ||
9427 | } | ||
9428 | _ACEOF | ||
9429 | if ac_fn_c_try_link "$LINENO"; then : | ||
9430 | ac_cv_lib_z_deflate=yes | ||
9431 | else | ||
9432 | ac_cv_lib_z_deflate=no | ||
9433 | fi | ||
9434 | rm -f core conftest.err conftest.$ac_objext \ | ||
9435 | conftest$ac_exeext conftest.$ac_ext | ||
9436 | LIBS=$ac_check_lib_save_LIBS | ||
9437 | fi | ||
9438 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflate" >&5 | ||
9439 | $as_echo "$ac_cv_lib_z_deflate" >&6; } | ||
9440 | if test "x$ac_cv_lib_z_deflate" = xyes; then : | ||
9441 | cat >>confdefs.h <<_ACEOF | ||
9442 | #define HAVE_LIBZ 1 | ||
9443 | _ACEOF | ||
9444 | |||
9445 | LIBS="-lz $LIBS" | ||
9446 | |||
9447 | else | ||
9448 | |||
9449 | saved_CPPFLAGS="$CPPFLAGS" | ||
9450 | saved_LDFLAGS="$LDFLAGS" | ||
9451 | save_LIBS="$LIBS" | ||
9452 | if test -n "${rpath_opt}"; then | ||
9453 | LDFLAGS="-L/usr/local/lib ${rpath_opt}/usr/local/lib ${saved_LDFLAGS}" | ||
9454 | else | ||
9455 | LDFLAGS="-L/usr/local/lib ${saved_LDFLAGS}" | ||
9456 | fi | ||
9457 | CPPFLAGS="-I/usr/local/include ${saved_CPPFLAGS}" | ||
9458 | LIBS="$LIBS -lz" | ||
9459 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9460 | /* end confdefs.h. */ | ||
9461 | |||
9462 | /* Override any GCC internal prototype to avoid an error. | ||
9463 | Use char because int might match the return type of a GCC | ||
9464 | builtin and then its argument prototype would still apply. */ | ||
9465 | #ifdef __cplusplus | ||
9466 | extern "C" | ||
9467 | #endif | ||
9468 | char deflate (); | ||
9469 | int | ||
9470 | main () | ||
9471 | { | ||
9472 | return deflate (); | ||
9473 | ; | ||
9474 | return 0; | ||
9475 | } | ||
9476 | _ACEOF | ||
9477 | if ac_fn_c_try_link "$LINENO"; then : | ||
9478 | $as_echo "#define HAVE_LIBZ 1" >>confdefs.h | ||
9479 | |||
9480 | else | ||
9481 | |||
9482 | as_fn_error $? "*** zlib missing - please install first or check config.log ***" "$LINENO" 5 | ||
9483 | |||
9484 | |||
9485 | fi | ||
9486 | rm -f core conftest.err conftest.$ac_objext \ | ||
9487 | conftest$ac_exeext conftest.$ac_ext | ||
9488 | |||
9489 | |||
9490 | fi | ||
9491 | |||
9492 | |||
9493 | |||
9494 | # Check whether --with-zlib-version-check was given. | ||
9495 | if test "${with_zlib_version_check+set}" = set; then : | ||
9496 | withval=$with_zlib_version_check; if test "x$withval" = "xno" ; then | ||
9497 | zlib_check_nonfatal=1 | ||
9498 | fi | ||
9499 | |||
9500 | |||
9501 | fi | ||
9502 | |||
9503 | |||
9504 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for possibly buggy zlib" >&5 | ||
9505 | $as_echo_n "checking for possibly buggy zlib... " >&6; } | ||
9506 | if test "$cross_compiling" = yes; then : | ||
9507 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking zlib version" >&5 | ||
9508 | $as_echo "$as_me: WARNING: cross compiling: not checking zlib version" >&2;} | ||
9509 | |||
9510 | else | ||
9511 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9512 | /* end confdefs.h. */ | ||
9513 | |||
9514 | #include <stdio.h> | ||
9515 | #include <stdlib.h> | ||
9516 | #include <zlib.h> | ||
9517 | |||
9518 | int | ||
9519 | main () | ||
9520 | { | ||
9521 | |||
9522 | int a=0, b=0, c=0, d=0, n, v; | ||
9523 | n = sscanf(ZLIB_VERSION, "%d.%d.%d.%d", &a, &b, &c, &d); | ||
9524 | if (n != 3 && n != 4) | ||
9525 | exit(1); | ||
9526 | v = a*1000000 + b*10000 + c*100 + d; | ||
9527 | fprintf(stderr, "found zlib version %s (%d)\n", ZLIB_VERSION, v); | ||
9528 | |||
9529 | /* 1.1.4 is OK */ | ||
9530 | if (a == 1 && b == 1 && c >= 4) | ||
9531 | exit(0); | ||
9532 | |||
9533 | /* 1.2.3 and up are OK */ | ||
9534 | if (v >= 1020300) | ||
9535 | exit(0); | ||
9536 | |||
9537 | exit(2); | ||
9538 | |||
9539 | ; | ||
9540 | return 0; | ||
9541 | } | ||
9542 | _ACEOF | ||
9543 | if ac_fn_c_try_run "$LINENO"; then : | ||
9544 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
9545 | $as_echo "no" >&6; } | ||
9546 | else | ||
9547 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
9548 | $as_echo "yes" >&6; } | ||
9549 | if test -z "$zlib_check_nonfatal" ; then | ||
9550 | as_fn_error $? "*** zlib too old - check config.log *** | ||
9551 | Your reported zlib version has known security problems. It's possible your | ||
9552 | vendor has fixed these problems without changing the version number. If you | ||
9553 | are sure this is the case, you can disable the check by running | ||
9554 | \"./configure --without-zlib-version-check\". | ||
9555 | If you are in doubt, upgrade zlib to version 1.2.3 or greater. | ||
9556 | See http://www.gzip.org/zlib/ for details." "$LINENO" 5 | ||
9557 | else | ||
9558 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib version may have security problems" >&5 | ||
9559 | $as_echo "$as_me: WARNING: zlib version may have security problems" >&2;} | ||
9560 | fi | ||
9561 | |||
9562 | fi | ||
9563 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
9564 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
9565 | fi | ||
9566 | |||
9567 | fi | ||
9568 | |||
9569 | ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp" | ||
9570 | if test "x$ac_cv_func_strcasecmp" = xyes; then : | ||
9571 | |||
9572 | else | ||
9573 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolv" >&5 | ||
9574 | $as_echo_n "checking for strcasecmp in -lresolv... " >&6; } | ||
9575 | if ${ac_cv_lib_resolv_strcasecmp+:} false; then : | ||
9576 | $as_echo_n "(cached) " >&6 | ||
9577 | else | ||
9578 | ac_check_lib_save_LIBS=$LIBS | ||
9579 | LIBS="-lresolv $LIBS" | ||
9580 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9581 | /* end confdefs.h. */ | ||
9582 | |||
9583 | /* Override any GCC internal prototype to avoid an error. | ||
9584 | Use char because int might match the return type of a GCC | ||
9585 | builtin and then its argument prototype would still apply. */ | ||
9586 | #ifdef __cplusplus | ||
9587 | extern "C" | ||
9588 | #endif | ||
9589 | char strcasecmp (); | ||
9590 | int | ||
9591 | main () | ||
9592 | { | ||
9593 | return strcasecmp (); | ||
9594 | ; | ||
9595 | return 0; | ||
9596 | } | ||
9597 | _ACEOF | ||
9598 | if ac_fn_c_try_link "$LINENO"; then : | ||
9599 | ac_cv_lib_resolv_strcasecmp=yes | ||
9600 | else | ||
9601 | ac_cv_lib_resolv_strcasecmp=no | ||
9602 | fi | ||
9603 | rm -f core conftest.err conftest.$ac_objext \ | ||
9604 | conftest$ac_exeext conftest.$ac_ext | ||
9605 | LIBS=$ac_check_lib_save_LIBS | ||
9606 | fi | ||
9607 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_strcasecmp" >&5 | ||
9608 | $as_echo "$ac_cv_lib_resolv_strcasecmp" >&6; } | ||
9609 | if test "x$ac_cv_lib_resolv_strcasecmp" = xyes; then : | ||
9610 | LIBS="$LIBS -lresolv" | ||
9611 | fi | ||
9612 | |||
9613 | |||
9614 | fi | ||
9615 | |||
9616 | for ac_func in utimes | ||
9617 | do : | ||
9618 | ac_fn_c_check_func "$LINENO" "utimes" "ac_cv_func_utimes" | ||
9619 | if test "x$ac_cv_func_utimes" = xyes; then : | ||
9620 | cat >>confdefs.h <<_ACEOF | ||
9621 | #define HAVE_UTIMES 1 | ||
9622 | _ACEOF | ||
9623 | |||
9624 | else | ||
9625 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for utimes in -lc89" >&5 | ||
9626 | $as_echo_n "checking for utimes in -lc89... " >&6; } | ||
9627 | if ${ac_cv_lib_c89_utimes+:} false; then : | ||
9628 | $as_echo_n "(cached) " >&6 | ||
9629 | else | ||
9630 | ac_check_lib_save_LIBS=$LIBS | ||
9631 | LIBS="-lc89 $LIBS" | ||
9632 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9633 | /* end confdefs.h. */ | ||
9634 | |||
9635 | /* Override any GCC internal prototype to avoid an error. | ||
9636 | Use char because int might match the return type of a GCC | ||
9637 | builtin and then its argument prototype would still apply. */ | ||
9638 | #ifdef __cplusplus | ||
9639 | extern "C" | ||
9640 | #endif | ||
9641 | char utimes (); | ||
9642 | int | ||
9643 | main () | ||
9644 | { | ||
9645 | return utimes (); | ||
9646 | ; | ||
9647 | return 0; | ||
9648 | } | ||
9649 | _ACEOF | ||
9650 | if ac_fn_c_try_link "$LINENO"; then : | ||
9651 | ac_cv_lib_c89_utimes=yes | ||
9652 | else | ||
9653 | ac_cv_lib_c89_utimes=no | ||
9654 | fi | ||
9655 | rm -f core conftest.err conftest.$ac_objext \ | ||
9656 | conftest$ac_exeext conftest.$ac_ext | ||
9657 | LIBS=$ac_check_lib_save_LIBS | ||
9658 | fi | ||
9659 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c89_utimes" >&5 | ||
9660 | $as_echo "$ac_cv_lib_c89_utimes" >&6; } | ||
9661 | if test "x$ac_cv_lib_c89_utimes" = xyes; then : | ||
9662 | $as_echo "#define HAVE_UTIMES 1" >>confdefs.h | ||
9663 | |||
9664 | LIBS="$LIBS -lc89" | ||
9665 | fi | ||
9666 | |||
9667 | |||
9668 | fi | ||
9669 | done | ||
9670 | |||
9671 | |||
9672 | for ac_header in bsd/libutil.h libutil.h | ||
9673 | do : | ||
9674 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
9675 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
9676 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
9677 | cat >>confdefs.h <<_ACEOF | ||
9678 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
9679 | _ACEOF | ||
9680 | |||
9681 | fi | ||
9682 | |||
9683 | done | ||
9684 | |||
9685 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fmt_scaled" >&5 | ||
9686 | $as_echo_n "checking for library containing fmt_scaled... " >&6; } | ||
9687 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
9688 | $as_echo_n "(cached) " >&6 | ||
9689 | else | ||
9690 | ac_func_search_save_LIBS=$LIBS | ||
9691 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9692 | /* end confdefs.h. */ | ||
9693 | |||
9694 | /* Override any GCC internal prototype to avoid an error. | ||
9695 | Use char because int might match the return type of a GCC | ||
9696 | builtin and then its argument prototype would still apply. */ | ||
9697 | #ifdef __cplusplus | ||
9698 | extern "C" | ||
9699 | #endif | ||
9700 | char fmt_scaled (); | ||
9701 | int | ||
9702 | main () | ||
9703 | { | ||
9704 | return fmt_scaled (); | ||
9705 | ; | ||
9706 | return 0; | ||
9707 | } | ||
9708 | _ACEOF | ||
9709 | for ac_lib in '' util bsd; do | ||
9710 | if test -z "$ac_lib"; then | ||
9711 | ac_res="none required" | ||
9712 | else | ||
9713 | ac_res=-l$ac_lib | ||
9714 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9715 | fi | ||
9716 | if ac_fn_c_try_link "$LINENO"; then : | ||
9717 | ac_cv_search_fmt_scaled=$ac_res | ||
9718 | fi | ||
9719 | rm -f core conftest.err conftest.$ac_objext \ | ||
9720 | conftest$ac_exeext | ||
9721 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
9722 | break | ||
9723 | fi | ||
9724 | done | ||
9725 | if ${ac_cv_search_fmt_scaled+:} false; then : | ||
9726 | |||
9727 | else | ||
9728 | ac_cv_search_fmt_scaled=no | ||
9729 | fi | ||
9730 | rm conftest.$ac_ext | ||
9731 | LIBS=$ac_func_search_save_LIBS | ||
9732 | fi | ||
9733 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fmt_scaled" >&5 | ||
9734 | $as_echo "$ac_cv_search_fmt_scaled" >&6; } | ||
9735 | ac_res=$ac_cv_search_fmt_scaled | ||
9736 | if test "$ac_res" != no; then : | ||
9737 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9738 | |||
9739 | fi | ||
9740 | |||
9741 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing scan_scaled" >&5 | ||
9742 | $as_echo_n "checking for library containing scan_scaled... " >&6; } | ||
9743 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
9744 | $as_echo_n "(cached) " >&6 | ||
9745 | else | ||
9746 | ac_func_search_save_LIBS=$LIBS | ||
9747 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9748 | /* end confdefs.h. */ | ||
9749 | |||
9750 | /* Override any GCC internal prototype to avoid an error. | ||
9751 | Use char because int might match the return type of a GCC | ||
9752 | builtin and then its argument prototype would still apply. */ | ||
9753 | #ifdef __cplusplus | ||
9754 | extern "C" | ||
9755 | #endif | ||
9756 | char scan_scaled (); | ||
9757 | int | ||
9758 | main () | ||
9759 | { | ||
9760 | return scan_scaled (); | ||
9761 | ; | ||
9762 | return 0; | ||
9763 | } | ||
9764 | _ACEOF | ||
9765 | for ac_lib in '' util bsd; do | ||
9766 | if test -z "$ac_lib"; then | ||
9767 | ac_res="none required" | ||
9768 | else | ||
9769 | ac_res=-l$ac_lib | ||
9770 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9771 | fi | ||
9772 | if ac_fn_c_try_link "$LINENO"; then : | ||
9773 | ac_cv_search_scan_scaled=$ac_res | ||
9774 | fi | ||
9775 | rm -f core conftest.err conftest.$ac_objext \ | ||
9776 | conftest$ac_exeext | ||
9777 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
9778 | break | ||
9779 | fi | ||
9780 | done | ||
9781 | if ${ac_cv_search_scan_scaled+:} false; then : | ||
9782 | |||
9783 | else | ||
9784 | ac_cv_search_scan_scaled=no | ||
9785 | fi | ||
9786 | rm conftest.$ac_ext | ||
9787 | LIBS=$ac_func_search_save_LIBS | ||
9788 | fi | ||
9789 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_scan_scaled" >&5 | ||
9790 | $as_echo "$ac_cv_search_scan_scaled" >&6; } | ||
9791 | ac_res=$ac_cv_search_scan_scaled | ||
9792 | if test "$ac_res" != no; then : | ||
9793 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9794 | |||
9795 | fi | ||
9796 | |||
9797 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing login" >&5 | ||
9798 | $as_echo_n "checking for library containing login... " >&6; } | ||
9799 | if ${ac_cv_search_login+:} false; then : | ||
9800 | $as_echo_n "(cached) " >&6 | ||
9801 | else | ||
9802 | ac_func_search_save_LIBS=$LIBS | ||
9803 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9804 | /* end confdefs.h. */ | ||
9805 | |||
9806 | /* Override any GCC internal prototype to avoid an error. | ||
9807 | Use char because int might match the return type of a GCC | ||
9808 | builtin and then its argument prototype would still apply. */ | ||
9809 | #ifdef __cplusplus | ||
9810 | extern "C" | ||
9811 | #endif | ||
9812 | char login (); | ||
9813 | int | ||
9814 | main () | ||
9815 | { | ||
9816 | return login (); | ||
9817 | ; | ||
9818 | return 0; | ||
9819 | } | ||
9820 | _ACEOF | ||
9821 | for ac_lib in '' util bsd; do | ||
9822 | if test -z "$ac_lib"; then | ||
9823 | ac_res="none required" | ||
9824 | else | ||
9825 | ac_res=-l$ac_lib | ||
9826 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9827 | fi | ||
9828 | if ac_fn_c_try_link "$LINENO"; then : | ||
9829 | ac_cv_search_login=$ac_res | ||
9830 | fi | ||
9831 | rm -f core conftest.err conftest.$ac_objext \ | ||
9832 | conftest$ac_exeext | ||
9833 | if ${ac_cv_search_login+:} false; then : | ||
9834 | break | ||
9835 | fi | ||
9836 | done | ||
9837 | if ${ac_cv_search_login+:} false; then : | ||
9838 | |||
9839 | else | ||
9840 | ac_cv_search_login=no | ||
9841 | fi | ||
9842 | rm conftest.$ac_ext | ||
9843 | LIBS=$ac_func_search_save_LIBS | ||
9844 | fi | ||
9845 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_login" >&5 | ||
9846 | $as_echo "$ac_cv_search_login" >&6; } | ||
9847 | ac_res=$ac_cv_search_login | ||
9848 | if test "$ac_res" != no; then : | ||
9849 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9850 | |||
9851 | fi | ||
9852 | |||
9853 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logout" >&5 | ||
9854 | $as_echo_n "checking for library containing logout... " >&6; } | ||
9855 | if ${ac_cv_search_logout+:} false; then : | ||
9856 | $as_echo_n "(cached) " >&6 | ||
9857 | else | ||
9858 | ac_func_search_save_LIBS=$LIBS | ||
9859 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9860 | /* end confdefs.h. */ | ||
9861 | |||
9862 | /* Override any GCC internal prototype to avoid an error. | ||
9863 | Use char because int might match the return type of a GCC | ||
9864 | builtin and then its argument prototype would still apply. */ | ||
9865 | #ifdef __cplusplus | ||
9866 | extern "C" | ||
9867 | #endif | ||
9868 | char logout (); | ||
9869 | int | ||
9870 | main () | ||
9871 | { | ||
9872 | return logout (); | ||
9873 | ; | ||
9874 | return 0; | ||
9875 | } | ||
9876 | _ACEOF | ||
9877 | for ac_lib in '' util bsd; do | ||
9878 | if test -z "$ac_lib"; then | ||
9879 | ac_res="none required" | ||
9880 | else | ||
9881 | ac_res=-l$ac_lib | ||
9882 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9883 | fi | ||
9884 | if ac_fn_c_try_link "$LINENO"; then : | ||
9885 | ac_cv_search_logout=$ac_res | ||
9886 | fi | ||
9887 | rm -f core conftest.err conftest.$ac_objext \ | ||
9888 | conftest$ac_exeext | ||
9889 | if ${ac_cv_search_logout+:} false; then : | ||
9890 | break | ||
9891 | fi | ||
9892 | done | ||
9893 | if ${ac_cv_search_logout+:} false; then : | ||
9894 | |||
9895 | else | ||
9896 | ac_cv_search_logout=no | ||
9897 | fi | ||
9898 | rm conftest.$ac_ext | ||
9899 | LIBS=$ac_func_search_save_LIBS | ||
9900 | fi | ||
9901 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logout" >&5 | ||
9902 | $as_echo "$ac_cv_search_logout" >&6; } | ||
9903 | ac_res=$ac_cv_search_logout | ||
9904 | if test "$ac_res" != no; then : | ||
9905 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9906 | |||
9907 | fi | ||
9908 | |||
9909 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing logwtmp" >&5 | ||
9910 | $as_echo_n "checking for library containing logwtmp... " >&6; } | ||
9911 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9912 | $as_echo_n "(cached) " >&6 | ||
9913 | else | ||
9914 | ac_func_search_save_LIBS=$LIBS | ||
9915 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9916 | /* end confdefs.h. */ | ||
9917 | |||
9918 | /* Override any GCC internal prototype to avoid an error. | ||
9919 | Use char because int might match the return type of a GCC | ||
9920 | builtin and then its argument prototype would still apply. */ | ||
9921 | #ifdef __cplusplus | ||
9922 | extern "C" | ||
9923 | #endif | ||
9924 | char logwtmp (); | ||
9925 | int | ||
9926 | main () | ||
9927 | { | ||
9928 | return logwtmp (); | ||
9929 | ; | ||
9930 | return 0; | ||
9931 | } | ||
9932 | _ACEOF | ||
9933 | for ac_lib in '' util bsd; do | ||
9934 | if test -z "$ac_lib"; then | ||
9935 | ac_res="none required" | ||
9936 | else | ||
9937 | ac_res=-l$ac_lib | ||
9938 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9939 | fi | ||
9940 | if ac_fn_c_try_link "$LINENO"; then : | ||
9941 | ac_cv_search_logwtmp=$ac_res | ||
9942 | fi | ||
9943 | rm -f core conftest.err conftest.$ac_objext \ | ||
9944 | conftest$ac_exeext | ||
9945 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9946 | break | ||
9947 | fi | ||
9948 | done | ||
9949 | if ${ac_cv_search_logwtmp+:} false; then : | ||
9950 | |||
9951 | else | ||
9952 | ac_cv_search_logwtmp=no | ||
9953 | fi | ||
9954 | rm conftest.$ac_ext | ||
9955 | LIBS=$ac_func_search_save_LIBS | ||
9956 | fi | ||
9957 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_logwtmp" >&5 | ||
9958 | $as_echo "$ac_cv_search_logwtmp" >&6; } | ||
9959 | ac_res=$ac_cv_search_logwtmp | ||
9960 | if test "$ac_res" != no; then : | ||
9961 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
9962 | |||
9963 | fi | ||
9964 | |||
9965 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing openpty" >&5 | ||
9966 | $as_echo_n "checking for library containing openpty... " >&6; } | ||
9967 | if ${ac_cv_search_openpty+:} false; then : | ||
9968 | $as_echo_n "(cached) " >&6 | ||
9969 | else | ||
9970 | ac_func_search_save_LIBS=$LIBS | ||
9971 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
9972 | /* end confdefs.h. */ | ||
9973 | |||
9974 | /* Override any GCC internal prototype to avoid an error. | ||
9975 | Use char because int might match the return type of a GCC | ||
9976 | builtin and then its argument prototype would still apply. */ | ||
9977 | #ifdef __cplusplus | ||
9978 | extern "C" | ||
9979 | #endif | ||
9980 | char openpty (); | ||
9981 | int | ||
9982 | main () | ||
9983 | { | ||
9984 | return openpty (); | ||
9985 | ; | ||
9986 | return 0; | ||
9987 | } | ||
9988 | _ACEOF | ||
9989 | for ac_lib in '' util bsd; do | ||
9990 | if test -z "$ac_lib"; then | ||
9991 | ac_res="none required" | ||
9992 | else | ||
9993 | ac_res=-l$ac_lib | ||
9994 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
9995 | fi | ||
9996 | if ac_fn_c_try_link "$LINENO"; then : | ||
9997 | ac_cv_search_openpty=$ac_res | ||
9998 | fi | ||
9999 | rm -f core conftest.err conftest.$ac_objext \ | ||
10000 | conftest$ac_exeext | ||
10001 | if ${ac_cv_search_openpty+:} false; then : | ||
10002 | break | ||
10003 | fi | ||
10004 | done | ||
10005 | if ${ac_cv_search_openpty+:} false; then : | ||
10006 | |||
10007 | else | ||
10008 | ac_cv_search_openpty=no | ||
10009 | fi | ||
10010 | rm conftest.$ac_ext | ||
10011 | LIBS=$ac_func_search_save_LIBS | ||
10012 | fi | ||
10013 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_openpty" >&5 | ||
10014 | $as_echo "$ac_cv_search_openpty" >&6; } | ||
10015 | ac_res=$ac_cv_search_openpty | ||
10016 | if test "$ac_res" != no; then : | ||
10017 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10018 | |||
10019 | fi | ||
10020 | |||
10021 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing updwtmp" >&5 | ||
10022 | $as_echo_n "checking for library containing updwtmp... " >&6; } | ||
10023 | if ${ac_cv_search_updwtmp+:} false; then : | ||
10024 | $as_echo_n "(cached) " >&6 | ||
10025 | else | ||
10026 | ac_func_search_save_LIBS=$LIBS | ||
10027 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10028 | /* end confdefs.h. */ | ||
10029 | |||
10030 | /* Override any GCC internal prototype to avoid an error. | ||
10031 | Use char because int might match the return type of a GCC | ||
10032 | builtin and then its argument prototype would still apply. */ | ||
10033 | #ifdef __cplusplus | ||
10034 | extern "C" | ||
10035 | #endif | ||
10036 | char updwtmp (); | ||
10037 | int | ||
10038 | main () | ||
10039 | { | ||
10040 | return updwtmp (); | ||
10041 | ; | ||
10042 | return 0; | ||
10043 | } | ||
10044 | _ACEOF | ||
10045 | for ac_lib in '' util bsd; do | ||
10046 | if test -z "$ac_lib"; then | ||
10047 | ac_res="none required" | ||
10048 | else | ||
10049 | ac_res=-l$ac_lib | ||
10050 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10051 | fi | ||
10052 | if ac_fn_c_try_link "$LINENO"; then : | ||
10053 | ac_cv_search_updwtmp=$ac_res | ||
10054 | fi | ||
10055 | rm -f core conftest.err conftest.$ac_objext \ | ||
10056 | conftest$ac_exeext | ||
10057 | if ${ac_cv_search_updwtmp+:} false; then : | ||
10058 | break | ||
10059 | fi | ||
10060 | done | ||
10061 | if ${ac_cv_search_updwtmp+:} false; then : | ||
10062 | |||
10063 | else | ||
10064 | ac_cv_search_updwtmp=no | ||
10065 | fi | ||
10066 | rm conftest.$ac_ext | ||
10067 | LIBS=$ac_func_search_save_LIBS | ||
10068 | fi | ||
10069 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_updwtmp" >&5 | ||
10070 | $as_echo "$ac_cv_search_updwtmp" >&6; } | ||
10071 | ac_res=$ac_cv_search_updwtmp | ||
10072 | if test "$ac_res" != no; then : | ||
10073 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10074 | |||
10075 | fi | ||
10076 | |||
10077 | for ac_func in fmt_scaled scan_scaled login logout openpty updwtmp logwtmp | ||
10078 | do : | ||
10079 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
10080 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
10081 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
10082 | cat >>confdefs.h <<_ACEOF | ||
10083 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
10084 | _ACEOF | ||
10085 | |||
10086 | fi | ||
10087 | done | ||
10088 | |||
10089 | |||
10090 | # On some platforms, inet_ntop and gethostbyname may be found in libresolv | ||
10091 | # or libnsl. | ||
10092 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inet_ntop" >&5 | ||
10093 | $as_echo_n "checking for library containing inet_ntop... " >&6; } | ||
10094 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
10095 | $as_echo_n "(cached) " >&6 | ||
10096 | else | ||
10097 | ac_func_search_save_LIBS=$LIBS | ||
10098 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10099 | /* end confdefs.h. */ | ||
10100 | |||
10101 | /* Override any GCC internal prototype to avoid an error. | ||
10102 | Use char because int might match the return type of a GCC | ||
10103 | builtin and then its argument prototype would still apply. */ | ||
10104 | #ifdef __cplusplus | ||
10105 | extern "C" | ||
10106 | #endif | ||
10107 | char inet_ntop (); | ||
10108 | int | ||
10109 | main () | ||
10110 | { | ||
10111 | return inet_ntop (); | ||
10112 | ; | ||
10113 | return 0; | ||
10114 | } | ||
10115 | _ACEOF | ||
10116 | for ac_lib in '' resolv nsl; do | ||
10117 | if test -z "$ac_lib"; then | ||
10118 | ac_res="none required" | ||
10119 | else | ||
10120 | ac_res=-l$ac_lib | ||
10121 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10122 | fi | ||
10123 | if ac_fn_c_try_link "$LINENO"; then : | ||
10124 | ac_cv_search_inet_ntop=$ac_res | ||
10125 | fi | ||
10126 | rm -f core conftest.err conftest.$ac_objext \ | ||
10127 | conftest$ac_exeext | ||
10128 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
10129 | break | ||
10130 | fi | ||
10131 | done | ||
10132 | if ${ac_cv_search_inet_ntop+:} false; then : | ||
10133 | |||
10134 | else | ||
10135 | ac_cv_search_inet_ntop=no | ||
10136 | fi | ||
10137 | rm conftest.$ac_ext | ||
10138 | LIBS=$ac_func_search_save_LIBS | ||
10139 | fi | ||
10140 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_ntop" >&5 | ||
10141 | $as_echo "$ac_cv_search_inet_ntop" >&6; } | ||
10142 | ac_res=$ac_cv_search_inet_ntop | ||
10143 | if test "$ac_res" != no; then : | ||
10144 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10145 | |||
10146 | fi | ||
10147 | |||
10148 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gethostbyname" >&5 | ||
10149 | $as_echo_n "checking for library containing gethostbyname... " >&6; } | ||
10150 | if ${ac_cv_search_gethostbyname+:} false; then : | ||
10151 | $as_echo_n "(cached) " >&6 | ||
10152 | else | ||
10153 | ac_func_search_save_LIBS=$LIBS | ||
10154 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10155 | /* end confdefs.h. */ | ||
10156 | |||
10157 | /* Override any GCC internal prototype to avoid an error. | ||
10158 | Use char because int might match the return type of a GCC | ||
10159 | builtin and then its argument prototype would still apply. */ | ||
10160 | #ifdef __cplusplus | ||
10161 | extern "C" | ||
10162 | #endif | ||
10163 | char gethostbyname (); | ||
10164 | int | ||
10165 | main () | ||
10166 | { | ||
10167 | return gethostbyname (); | ||
10168 | ; | ||
10169 | return 0; | ||
10170 | } | ||
10171 | _ACEOF | ||
10172 | for ac_lib in '' resolv nsl; do | ||
10173 | if test -z "$ac_lib"; then | ||
10174 | ac_res="none required" | ||
10175 | else | ||
10176 | ac_res=-l$ac_lib | ||
10177 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
10178 | fi | ||
10179 | if ac_fn_c_try_link "$LINENO"; then : | ||
10180 | ac_cv_search_gethostbyname=$ac_res | ||
10181 | fi | ||
10182 | rm -f core conftest.err conftest.$ac_objext \ | ||
10183 | conftest$ac_exeext | ||
10184 | if ${ac_cv_search_gethostbyname+:} false; then : | ||
10185 | break | ||
10186 | fi | ||
10187 | done | ||
10188 | if ${ac_cv_search_gethostbyname+:} false; then : | ||
10189 | |||
10190 | else | ||
10191 | ac_cv_search_gethostbyname=no | ||
10192 | fi | ||
10193 | rm conftest.$ac_ext | ||
10194 | LIBS=$ac_func_search_save_LIBS | ||
10195 | fi | ||
10196 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gethostbyname" >&5 | ||
10197 | $as_echo "$ac_cv_search_gethostbyname" >&6; } | ||
10198 | ac_res=$ac_cv_search_gethostbyname | ||
10199 | if test "$ac_res" != no; then : | ||
10200 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
10201 | |||
10202 | fi | ||
10203 | |||
10204 | |||
10205 | # "Particular Function Checks" | ||
10206 | # see https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Particular-Functions.html | ||
10207 | for ac_func in strftime | ||
10208 | do : | ||
10209 | ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime" | ||
10210 | if test "x$ac_cv_func_strftime" = xyes; then : | ||
10211 | cat >>confdefs.h <<_ACEOF | ||
10212 | #define HAVE_STRFTIME 1 | ||
10213 | _ACEOF | ||
10214 | |||
10215 | else | ||
10216 | # strftime is in -lintl on SCO UNIX. | ||
10217 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strftime in -lintl" >&5 | ||
10218 | $as_echo_n "checking for strftime in -lintl... " >&6; } | ||
10219 | if ${ac_cv_lib_intl_strftime+:} false; then : | ||
10220 | $as_echo_n "(cached) " >&6 | ||
10221 | else | ||
10222 | ac_check_lib_save_LIBS=$LIBS | ||
10223 | LIBS="-lintl $LIBS" | ||
10224 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10225 | /* end confdefs.h. */ | ||
10226 | |||
10227 | /* Override any GCC internal prototype to avoid an error. | ||
10228 | Use char because int might match the return type of a GCC | ||
10229 | builtin and then its argument prototype would still apply. */ | ||
10230 | #ifdef __cplusplus | ||
10231 | extern "C" | ||
10232 | #endif | ||
10233 | char strftime (); | ||
10234 | int | ||
10235 | main () | ||
10236 | { | ||
10237 | return strftime (); | ||
10238 | ; | ||
10239 | return 0; | ||
10240 | } | ||
10241 | _ACEOF | ||
10242 | if ac_fn_c_try_link "$LINENO"; then : | ||
10243 | ac_cv_lib_intl_strftime=yes | ||
10244 | else | ||
10245 | ac_cv_lib_intl_strftime=no | ||
10246 | fi | ||
10247 | rm -f core conftest.err conftest.$ac_objext \ | ||
10248 | conftest$ac_exeext conftest.$ac_ext | ||
10249 | LIBS=$ac_check_lib_save_LIBS | ||
10250 | fi | ||
10251 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5 | ||
10252 | $as_echo "$ac_cv_lib_intl_strftime" >&6; } | ||
10253 | if test "x$ac_cv_lib_intl_strftime" = xyes; then : | ||
10254 | $as_echo "#define HAVE_STRFTIME 1" >>confdefs.h | ||
10255 | |||
10256 | LIBS="-lintl $LIBS" | ||
10257 | fi | ||
10258 | |||
10259 | fi | ||
10260 | done | ||
10261 | |||
10262 | for ac_header in stdlib.h | ||
10263 | do : | ||
10264 | ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" | ||
10265 | if test "x$ac_cv_header_stdlib_h" = xyes; then : | ||
10266 | cat >>confdefs.h <<_ACEOF | ||
10267 | #define HAVE_STDLIB_H 1 | ||
10268 | _ACEOF | ||
10269 | |||
10270 | fi | ||
10271 | |||
10272 | done | ||
10273 | |||
10274 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 | ||
10275 | $as_echo_n "checking for GNU libc compatible malloc... " >&6; } | ||
10276 | if ${ac_cv_func_malloc_0_nonnull+:} false; then : | ||
10277 | $as_echo_n "(cached) " >&6 | ||
10278 | else | ||
10279 | if test "$cross_compiling" = yes; then : | ||
10280 | ac_cv_func_malloc_0_nonnull=no | ||
10281 | else | ||
10282 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10283 | /* end confdefs.h. */ | ||
10284 | #if defined STDC_HEADERS || defined HAVE_STDLIB_H | ||
10285 | # include <stdlib.h> | ||
10286 | #else | ||
10287 | char *malloc (); | ||
10288 | #endif | ||
10289 | |||
10290 | int | ||
10291 | main () | ||
10292 | { | ||
10293 | return ! malloc (0); | ||
10294 | ; | ||
10295 | return 0; | ||
10296 | } | ||
10297 | _ACEOF | ||
10298 | if ac_fn_c_try_run "$LINENO"; then : | ||
10299 | ac_cv_func_malloc_0_nonnull=yes | ||
10300 | else | ||
10301 | ac_cv_func_malloc_0_nonnull=no | ||
10302 | fi | ||
10303 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
10304 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
10305 | fi | ||
10306 | |||
10307 | fi | ||
10308 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 | ||
10309 | $as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } | ||
10310 | if test $ac_cv_func_malloc_0_nonnull = yes; then : | ||
10311 | |||
10312 | $as_echo "#define HAVE_MALLOC 1" >>confdefs.h | ||
10313 | |||
10314 | else | ||
10315 | $as_echo "#define HAVE_MALLOC 0" >>confdefs.h | ||
10316 | |||
10317 | case " $LIBOBJS " in | ||
10318 | *" malloc.$ac_objext "* ) ;; | ||
10319 | *) LIBOBJS="$LIBOBJS malloc.$ac_objext" | ||
10320 | ;; | ||
10321 | esac | ||
10322 | |||
10323 | |||
10324 | $as_echo "#define malloc rpl_malloc" >>confdefs.h | ||
10325 | |||
10326 | fi | ||
10327 | |||
10328 | |||
10329 | for ac_header in stdlib.h | ||
10330 | do : | ||
10331 | ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" | ||
10332 | if test "x$ac_cv_header_stdlib_h" = xyes; then : | ||
10333 | cat >>confdefs.h <<_ACEOF | ||
10334 | #define HAVE_STDLIB_H 1 | ||
10335 | _ACEOF | ||
10336 | |||
10337 | fi | ||
10338 | |||
10339 | done | ||
10340 | |||
10341 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5 | ||
10342 | $as_echo_n "checking for GNU libc compatible realloc... " >&6; } | ||
10343 | if ${ac_cv_func_realloc_0_nonnull+:} false; then : | ||
10344 | $as_echo_n "(cached) " >&6 | ||
10345 | else | ||
10346 | if test "$cross_compiling" = yes; then : | ||
10347 | ac_cv_func_realloc_0_nonnull=no | ||
10348 | else | ||
10349 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10350 | /* end confdefs.h. */ | ||
10351 | #if defined STDC_HEADERS || defined HAVE_STDLIB_H | ||
10352 | # include <stdlib.h> | ||
10353 | #else | ||
10354 | char *realloc (); | ||
10355 | #endif | ||
10356 | |||
10357 | int | ||
10358 | main () | ||
10359 | { | ||
10360 | return ! realloc (0, 0); | ||
10361 | ; | ||
10362 | return 0; | ||
10363 | } | ||
10364 | _ACEOF | ||
10365 | if ac_fn_c_try_run "$LINENO"; then : | ||
10366 | ac_cv_func_realloc_0_nonnull=yes | ||
10367 | else | ||
10368 | ac_cv_func_realloc_0_nonnull=no | ||
10369 | fi | ||
10370 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
10371 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
10372 | fi | ||
10373 | |||
10374 | fi | ||
10375 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5 | ||
10376 | $as_echo "$ac_cv_func_realloc_0_nonnull" >&6; } | ||
10377 | if test $ac_cv_func_realloc_0_nonnull = yes; then : | ||
10378 | |||
10379 | $as_echo "#define HAVE_REALLOC 1" >>confdefs.h | ||
10380 | |||
10381 | else | ||
10382 | $as_echo "#define HAVE_REALLOC 0" >>confdefs.h | ||
10383 | |||
10384 | case " $LIBOBJS " in | ||
10385 | *" realloc.$ac_objext "* ) ;; | ||
10386 | *) LIBOBJS="$LIBOBJS realloc.$ac_objext" | ||
10387 | ;; | ||
10388 | esac | ||
10389 | |||
10390 | |||
10391 | $as_echo "#define realloc rpl_realloc" >>confdefs.h | ||
10392 | |||
10393 | fi | ||
10394 | |||
10395 | |||
10396 | # autoconf doesn't have AC_FUNC_CALLOC so fake it if malloc returns NULL; | ||
10397 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if calloc(0, N) returns non-null" >&5 | ||
10398 | $as_echo_n "checking if calloc(0, N) returns non-null... " >&6; } | ||
10399 | if test "$cross_compiling" = yes; then : | ||
10400 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming same as malloc" >&5 | ||
10401 | $as_echo "$as_me: WARNING: cross compiling: assuming same as malloc" >&2;} | ||
10402 | func_calloc_0_nonnull="$ac_cv_func_malloc_0_nonnull" | ||
10403 | |||
10404 | else | ||
10405 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10406 | /* end confdefs.h. */ | ||
10407 | #include <stdlib.h> | ||
10408 | int | ||
10409 | main () | ||
10410 | { | ||
10411 | void *p = calloc(0, 1); exit(p == NULL); | ||
10412 | |||
10413 | ; | ||
10414 | return 0; | ||
10415 | } | ||
10416 | _ACEOF | ||
10417 | if ac_fn_c_try_run "$LINENO"; then : | ||
10418 | func_calloc_0_nonnull=yes | ||
10419 | else | ||
10420 | func_calloc_0_nonnull=no | ||
10421 | fi | ||
10422 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
10423 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
10424 | fi | ||
10425 | |||
10426 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $func_calloc_0_nonnull" >&5 | ||
10427 | $as_echo "$func_calloc_0_nonnull" >&6; } | ||
10428 | |||
10429 | if test "x$func_calloc_0_nonnull" = "xyes"; then | ||
10430 | |||
10431 | $as_echo "#define HAVE_CALLOC 1" >>confdefs.h | ||
10432 | |||
10433 | else | ||
10434 | |||
10435 | $as_echo "#define HAVE_CALLOC 0" >>confdefs.h | ||
10436 | |||
10437 | |||
10438 | $as_echo "#define calloc rpl_calloc" >>confdefs.h | ||
10439 | |||
10440 | fi | ||
10441 | |||
10442 | # Check for ALTDIRFUNC glob() extension | ||
10443 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_ALTDIRFUNC support" >&5 | ||
10444 | $as_echo_n "checking for GLOB_ALTDIRFUNC support... " >&6; } | ||
10445 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10446 | /* end confdefs.h. */ | ||
10447 | |||
10448 | #include <glob.h> | ||
10449 | #ifdef GLOB_ALTDIRFUNC | ||
10450 | FOUNDIT | ||
10451 | #endif | ||
10452 | |||
10453 | _ACEOF | ||
10454 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
10455 | $EGREP "FOUNDIT" >/dev/null 2>&1; then : | ||
10456 | |||
10457 | |||
10458 | $as_echo "#define GLOB_HAS_ALTDIRFUNC 1" >>confdefs.h | ||
10459 | |||
10460 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10461 | $as_echo "yes" >&6; } | ||
10462 | |||
10463 | else | ||
10464 | |||
10465 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10466 | $as_echo "no" >&6; } | ||
10467 | |||
10468 | |||
10469 | fi | ||
10470 | rm -f conftest* | ||
10471 | |||
10472 | |||
10473 | # Check for g.gl_matchc glob() extension | ||
10474 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_matchc field in glob_t" >&5 | ||
10475 | $as_echo_n "checking for gl_matchc field in glob_t... " >&6; } | ||
10476 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10477 | /* end confdefs.h. */ | ||
10478 | #include <glob.h> | ||
10479 | int | ||
10480 | main () | ||
10481 | { | ||
10482 | glob_t g; g.gl_matchc = 1; | ||
10483 | ; | ||
10484 | return 0; | ||
10485 | } | ||
10486 | _ACEOF | ||
10487 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10488 | |||
10489 | |||
10490 | $as_echo "#define GLOB_HAS_GL_MATCHC 1" >>confdefs.h | ||
10491 | |||
10492 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10493 | $as_echo "yes" >&6; } | ||
10494 | |||
10495 | else | ||
10496 | |||
10497 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10498 | $as_echo "no" >&6; } | ||
10499 | |||
10500 | fi | ||
10501 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10502 | |||
10503 | # Check for g.gl_statv glob() extension | ||
10504 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gl_statv and GLOB_KEEPSTAT extensions for glob" >&5 | ||
10505 | $as_echo_n "checking for gl_statv and GLOB_KEEPSTAT extensions for glob... " >&6; } | ||
10506 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10507 | /* end confdefs.h. */ | ||
10508 | #include <glob.h> | ||
10509 | int | ||
10510 | main () | ||
10511 | { | ||
10512 | |||
10513 | #ifndef GLOB_KEEPSTAT | ||
10514 | #error "glob does not support GLOB_KEEPSTAT extension" | ||
10515 | #endif | ||
10516 | glob_t g; | ||
10517 | g.gl_statv = NULL; | ||
10518 | |||
10519 | ; | ||
10520 | return 0; | ||
10521 | } | ||
10522 | _ACEOF | ||
10523 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10524 | |||
10525 | |||
10526 | $as_echo "#define GLOB_HAS_GL_STATV 1" >>confdefs.h | ||
10527 | |||
10528 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10529 | $as_echo "yes" >&6; } | ||
10530 | |||
10531 | else | ||
10532 | |||
10533 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10534 | $as_echo "no" >&6; } | ||
10535 | |||
10536 | |||
10537 | fi | ||
10538 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10539 | |||
10540 | ac_fn_c_check_decl "$LINENO" "GLOB_NOMATCH" "ac_cv_have_decl_GLOB_NOMATCH" "#include <glob.h> | ||
10541 | " | ||
10542 | if test "x$ac_cv_have_decl_GLOB_NOMATCH" = xyes; then : | ||
10543 | ac_have_decl=1 | ||
10544 | else | ||
10545 | ac_have_decl=0 | ||
10546 | fi | ||
10547 | |||
10548 | cat >>confdefs.h <<_ACEOF | ||
10549 | #define HAVE_DECL_GLOB_NOMATCH $ac_have_decl | ||
10550 | _ACEOF | ||
10551 | |||
10552 | |||
10553 | ac_fn_c_check_decl "$LINENO" "VIS_ALL" "ac_cv_have_decl_VIS_ALL" "#include <vis.h> | ||
10554 | " | ||
10555 | if test "x$ac_cv_have_decl_VIS_ALL" = xyes; then : | ||
10556 | |||
10557 | else | ||
10558 | |||
10559 | $as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h | ||
10560 | |||
10561 | fi | ||
10562 | |||
10563 | |||
10564 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct dirent allocates space for d_name" >&5 | ||
10565 | $as_echo_n "checking whether struct dirent allocates space for d_name... " >&6; } | ||
10566 | if test "$cross_compiling" = yes; then : | ||
10567 | |||
10568 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&5 | ||
10569 | $as_echo "$as_me: WARNING: cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME" >&2;} | ||
10570 | $as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h | ||
10571 | |||
10572 | |||
10573 | |||
10574 | else | ||
10575 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10576 | /* end confdefs.h. */ | ||
10577 | |||
10578 | #include <sys/types.h> | ||
10579 | #include <dirent.h> | ||
10580 | #include <stdlib.h> | ||
10581 | |||
10582 | int | ||
10583 | main () | ||
10584 | { | ||
10585 | |||
10586 | struct dirent d; | ||
10587 | exit(sizeof(d.d_name)<=sizeof(char)); | ||
10588 | |||
10589 | ; | ||
10590 | return 0; | ||
10591 | } | ||
10592 | _ACEOF | ||
10593 | if ac_fn_c_try_run "$LINENO"; then : | ||
10594 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10595 | $as_echo "yes" >&6; } | ||
10596 | else | ||
10597 | |||
10598 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10599 | $as_echo "no" >&6; } | ||
10600 | |||
10601 | $as_echo "#define BROKEN_ONE_BYTE_DIRENT_D_NAME 1" >>confdefs.h | ||
10602 | |||
10603 | |||
10604 | fi | ||
10605 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
10606 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
10607 | fi | ||
10608 | |||
10609 | |||
10610 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for /proc/pid/fd directory" >&5 | ||
10611 | $as_echo_n "checking for /proc/pid/fd directory... " >&6; } | ||
10612 | if test -d "/proc/$$/fd" ; then | ||
10613 | |||
10614 | $as_echo "#define HAVE_PROC_PID 1" >>confdefs.h | ||
10615 | |||
10616 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10617 | $as_echo "yes" >&6; } | ||
10618 | else | ||
10619 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10620 | $as_echo "no" >&6; } | ||
10621 | fi | ||
10622 | |||
10623 | # Check whether user wants to use ldns | ||
10624 | LDNS_MSG="no" | ||
10625 | |||
10626 | # Check whether --with-ldns was given. | ||
10627 | if test "${with_ldns+set}" = set; then : | ||
10628 | withval=$with_ldns; | ||
10629 | ldns="" | ||
10630 | if test "x$withval" = "xyes" ; then | ||
10631 | if test -n "$ac_tool_prefix"; then | ||
10632 | # Extract the first word of "${ac_tool_prefix}ldns-config", so it can be a program name with args. | ||
10633 | set dummy ${ac_tool_prefix}ldns-config; ac_word=$2 | ||
10634 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
10635 | $as_echo_n "checking for $ac_word... " >&6; } | ||
10636 | if ${ac_cv_path_LDNSCONFIG+:} false; then : | ||
10637 | $as_echo_n "(cached) " >&6 | ||
10638 | else | ||
10639 | case $LDNSCONFIG in | ||
10640 | [\\/]* | ?:[\\/]*) | ||
10641 | ac_cv_path_LDNSCONFIG="$LDNSCONFIG" # Let the user override the test with a path. | ||
10642 | ;; | ||
10643 | *) | ||
10644 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
10645 | for as_dir in $PATH | ||
10646 | do | ||
10647 | IFS=$as_save_IFS | ||
10648 | test -z "$as_dir" && as_dir=. | ||
10649 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
10650 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
10651 | ac_cv_path_LDNSCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
10652 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
10653 | break 2 | ||
10654 | fi | ||
10655 | done | ||
10656 | done | ||
10657 | IFS=$as_save_IFS | ||
10658 | |||
10659 | ;; | ||
10660 | esac | ||
10661 | fi | ||
10662 | LDNSCONFIG=$ac_cv_path_LDNSCONFIG | ||
10663 | if test -n "$LDNSCONFIG"; then | ||
10664 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LDNSCONFIG" >&5 | ||
10665 | $as_echo "$LDNSCONFIG" >&6; } | ||
10666 | else | ||
10667 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10668 | $as_echo "no" >&6; } | ||
10669 | fi | ||
10670 | |||
10671 | |||
10672 | fi | ||
10673 | if test -z "$ac_cv_path_LDNSCONFIG"; then | ||
10674 | ac_pt_LDNSCONFIG=$LDNSCONFIG | ||
10675 | # Extract the first word of "ldns-config", so it can be a program name with args. | ||
10676 | set dummy ldns-config; ac_word=$2 | ||
10677 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
10678 | $as_echo_n "checking for $ac_word... " >&6; } | ||
10679 | if ${ac_cv_path_ac_pt_LDNSCONFIG+:} false; then : | ||
10680 | $as_echo_n "(cached) " >&6 | ||
10681 | else | ||
10682 | case $ac_pt_LDNSCONFIG in | ||
10683 | [\\/]* | ?:[\\/]*) | ||
10684 | ac_cv_path_ac_pt_LDNSCONFIG="$ac_pt_LDNSCONFIG" # Let the user override the test with a path. | ||
10685 | ;; | ||
10686 | *) | ||
10687 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
10688 | for as_dir in $PATH | ||
10689 | do | ||
10690 | IFS=$as_save_IFS | ||
10691 | test -z "$as_dir" && as_dir=. | ||
10692 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
10693 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
10694 | ac_cv_path_ac_pt_LDNSCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
10695 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
10696 | break 2 | ||
10697 | fi | ||
10698 | done | ||
10699 | done | ||
10700 | IFS=$as_save_IFS | ||
10701 | |||
10702 | ;; | ||
10703 | esac | ||
10704 | fi | ||
10705 | ac_pt_LDNSCONFIG=$ac_cv_path_ac_pt_LDNSCONFIG | ||
10706 | if test -n "$ac_pt_LDNSCONFIG"; then | ||
10707 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_LDNSCONFIG" >&5 | ||
10708 | $as_echo "$ac_pt_LDNSCONFIG" >&6; } | ||
10709 | else | ||
10710 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10711 | $as_echo "no" >&6; } | ||
10712 | fi | ||
10713 | |||
10714 | if test "x$ac_pt_LDNSCONFIG" = x; then | ||
10715 | LDNSCONFIG="no" | ||
10716 | else | ||
10717 | case $cross_compiling:$ac_tool_warned in | ||
10718 | yes:) | ||
10719 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
10720 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
10721 | ac_tool_warned=yes ;; | ||
10722 | esac | ||
10723 | LDNSCONFIG=$ac_pt_LDNSCONFIG | ||
10724 | fi | ||
10725 | else | ||
10726 | LDNSCONFIG="$ac_cv_path_LDNSCONFIG" | ||
10727 | fi | ||
10728 | |||
10729 | if test "x$LDNSCONFIG" = "xno"; then | ||
10730 | LIBS="-lldns $LIBS" | ||
10731 | ldns=yes | ||
10732 | else | ||
10733 | LIBS="$LIBS `$LDNSCONFIG --libs`" | ||
10734 | CPPFLAGS="$CPPFLAGS `$LDNSCONFIG --cflags`" | ||
10735 | ldns=yes | ||
10736 | fi | ||
10737 | elif test "x$withval" != "xno" ; then | ||
10738 | CPPFLAGS="$CPPFLAGS -I${withval}/include" | ||
10739 | LDFLAGS="$LDFLAGS -L${withval}/lib" | ||
10740 | LIBS="-lldns $LIBS" | ||
10741 | ldns=yes | ||
10742 | fi | ||
10743 | |||
10744 | # Verify that it works. | ||
10745 | if test "x$ldns" = "xyes" ; then | ||
10746 | |||
10747 | $as_echo "#define HAVE_LDNS 1" >>confdefs.h | ||
10748 | |||
10749 | LDNS_MSG="yes" | ||
10750 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldns support" >&5 | ||
10751 | $as_echo_n "checking for ldns support... " >&6; } | ||
10752 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10753 | /* end confdefs.h. */ | ||
10754 | |||
10755 | #include <stdio.h> | ||
10756 | #include <stdlib.h> | ||
10757 | #ifdef HAVE_STDINT_H | ||
10758 | # include <stdint.h> | ||
10759 | #endif | ||
10760 | #include <ldns/ldns.h> | ||
10761 | int main() { ldns_status status = ldns_verify_trusted(NULL, NULL, NULL, NULL); status=LDNS_STATUS_OK; exit(0); } | ||
10762 | |||
10763 | |||
10764 | _ACEOF | ||
10765 | if ac_fn_c_try_link "$LINENO"; then : | ||
10766 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10767 | $as_echo "yes" >&6; } | ||
10768 | else | ||
10769 | |||
10770 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10771 | $as_echo "no" >&6; } | ||
10772 | as_fn_error $? "** Incomplete or missing ldns libraries." "$LINENO" 5 | ||
10773 | |||
10774 | fi | ||
10775 | rm -f core conftest.err conftest.$ac_objext \ | ||
10776 | conftest$ac_exeext conftest.$ac_ext | ||
10777 | fi | ||
10778 | |||
10779 | fi | ||
10780 | |||
10781 | |||
10782 | # Check whether user wants libedit support | ||
10783 | LIBEDIT_MSG="no" | ||
10784 | |||
10785 | # Check whether --with-libedit was given. | ||
10786 | if test "${with_libedit+set}" = set; then : | ||
10787 | withval=$with_libedit; if test "x$withval" != "xno" ; then | ||
10788 | if test "x$withval" = "xyes" ; then | ||
10789 | if test -n "$ac_tool_prefix"; then | ||
10790 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. | ||
10791 | set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 | ||
10792 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
10793 | $as_echo_n "checking for $ac_word... " >&6; } | ||
10794 | if ${ac_cv_path_PKGCONFIG+:} false; then : | ||
10795 | $as_echo_n "(cached) " >&6 | ||
10796 | else | ||
10797 | case $PKGCONFIG in | ||
10798 | [\\/]* | ?:[\\/]*) | ||
10799 | ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path. | ||
10800 | ;; | ||
10801 | *) | ||
10802 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
10803 | for as_dir in $PATH | ||
10804 | do | ||
10805 | IFS=$as_save_IFS | ||
10806 | test -z "$as_dir" && as_dir=. | ||
10807 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
10808 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
10809 | ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
10810 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
10811 | break 2 | ||
10812 | fi | ||
10813 | done | ||
10814 | done | ||
10815 | IFS=$as_save_IFS | ||
10816 | |||
10817 | ;; | ||
10818 | esac | ||
10819 | fi | ||
10820 | PKGCONFIG=$ac_cv_path_PKGCONFIG | ||
10821 | if test -n "$PKGCONFIG"; then | ||
10822 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5 | ||
10823 | $as_echo "$PKGCONFIG" >&6; } | ||
10824 | else | ||
10825 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10826 | $as_echo "no" >&6; } | ||
10827 | fi | ||
10828 | |||
10829 | |||
10830 | fi | ||
10831 | if test -z "$ac_cv_path_PKGCONFIG"; then | ||
10832 | ac_pt_PKGCONFIG=$PKGCONFIG | ||
10833 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
10834 | set dummy pkg-config; ac_word=$2 | ||
10835 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
10836 | $as_echo_n "checking for $ac_word... " >&6; } | ||
10837 | if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then : | ||
10838 | $as_echo_n "(cached) " >&6 | ||
10839 | else | ||
10840 | case $ac_pt_PKGCONFIG in | ||
10841 | [\\/]* | ?:[\\/]*) | ||
10842 | ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path. | ||
10843 | ;; | ||
10844 | *) | ||
10845 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
10846 | for as_dir in $PATH | ||
10847 | do | ||
10848 | IFS=$as_save_IFS | ||
10849 | test -z "$as_dir" && as_dir=. | ||
10850 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
10851 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
10852 | ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
10853 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
10854 | break 2 | ||
10855 | fi | ||
10856 | done | ||
10857 | done | ||
10858 | IFS=$as_save_IFS | ||
10859 | |||
10860 | ;; | ||
10861 | esac | ||
10862 | fi | ||
10863 | ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG | ||
10864 | if test -n "$ac_pt_PKGCONFIG"; then | ||
10865 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5 | ||
10866 | $as_echo "$ac_pt_PKGCONFIG" >&6; } | ||
10867 | else | ||
10868 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10869 | $as_echo "no" >&6; } | ||
10870 | fi | ||
10871 | |||
10872 | if test "x$ac_pt_PKGCONFIG" = x; then | ||
10873 | PKGCONFIG="no" | ||
10874 | else | ||
10875 | case $cross_compiling:$ac_tool_warned in | ||
10876 | yes:) | ||
10877 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
10878 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
10879 | ac_tool_warned=yes ;; | ||
10880 | esac | ||
10881 | PKGCONFIG=$ac_pt_PKGCONFIG | ||
10882 | fi | ||
10883 | else | ||
10884 | PKGCONFIG="$ac_cv_path_PKGCONFIG" | ||
10885 | fi | ||
10886 | |||
10887 | if test "x$PKGCONFIG" != "xno"; then | ||
10888 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $PKGCONFIG knows about libedit" >&5 | ||
10889 | $as_echo_n "checking if $PKGCONFIG knows about libedit... " >&6; } | ||
10890 | if "$PKGCONFIG" libedit; then | ||
10891 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10892 | $as_echo "yes" >&6; } | ||
10893 | use_pkgconfig_for_libedit=yes | ||
10894 | else | ||
10895 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10896 | $as_echo "no" >&6; } | ||
10897 | fi | ||
10898 | fi | ||
10899 | else | ||
10900 | CPPFLAGS="$CPPFLAGS -I${withval}/include" | ||
10901 | if test -n "${rpath_opt}"; then | ||
10902 | LDFLAGS="-L${withval}/lib ${rpath_opt}${withval}/lib ${LDFLAGS}" | ||
10903 | else | ||
10904 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
10905 | fi | ||
10906 | fi | ||
10907 | if test "x$use_pkgconfig_for_libedit" = "xyes"; then | ||
10908 | LIBEDIT=`$PKGCONFIG --libs libedit` | ||
10909 | CPPFLAGS="$CPPFLAGS `$PKGCONFIG --cflags libedit`" | ||
10910 | else | ||
10911 | LIBEDIT="-ledit -lcurses" | ||
10912 | fi | ||
10913 | OTHERLIBS=`echo $LIBEDIT | sed 's/-ledit//'` | ||
10914 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for el_init in -ledit" >&5 | ||
10915 | $as_echo_n "checking for el_init in -ledit... " >&6; } | ||
10916 | if ${ac_cv_lib_edit_el_init+:} false; then : | ||
10917 | $as_echo_n "(cached) " >&6 | ||
10918 | else | ||
10919 | ac_check_lib_save_LIBS=$LIBS | ||
10920 | LIBS="-ledit $OTHERLIBS | ||
10921 | $LIBS" | ||
10922 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10923 | /* end confdefs.h. */ | ||
10924 | |||
10925 | /* Override any GCC internal prototype to avoid an error. | ||
10926 | Use char because int might match the return type of a GCC | ||
10927 | builtin and then its argument prototype would still apply. */ | ||
10928 | #ifdef __cplusplus | ||
10929 | extern "C" | ||
10930 | #endif | ||
10931 | char el_init (); | ||
10932 | int | ||
10933 | main () | ||
10934 | { | ||
10935 | return el_init (); | ||
10936 | ; | ||
10937 | return 0; | ||
10938 | } | ||
10939 | _ACEOF | ||
10940 | if ac_fn_c_try_link "$LINENO"; then : | ||
10941 | ac_cv_lib_edit_el_init=yes | ||
10942 | else | ||
10943 | ac_cv_lib_edit_el_init=no | ||
10944 | fi | ||
10945 | rm -f core conftest.err conftest.$ac_objext \ | ||
10946 | conftest$ac_exeext conftest.$ac_ext | ||
10947 | LIBS=$ac_check_lib_save_LIBS | ||
10948 | fi | ||
10949 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_edit_el_init" >&5 | ||
10950 | $as_echo "$ac_cv_lib_edit_el_init" >&6; } | ||
10951 | if test "x$ac_cv_lib_edit_el_init" = xyes; then : | ||
10952 | |||
10953 | $as_echo "#define USE_LIBEDIT 1" >>confdefs.h | ||
10954 | |||
10955 | LIBEDIT_MSG="yes" | ||
10956 | |||
10957 | |||
10958 | else | ||
10959 | as_fn_error $? "libedit not found" "$LINENO" 5 | ||
10960 | fi | ||
10961 | |||
10962 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libedit version is compatible" >&5 | ||
10963 | $as_echo_n "checking if libedit version is compatible... " >&6; } | ||
10964 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
10965 | /* end confdefs.h. */ | ||
10966 | |||
10967 | #include <histedit.h> | ||
10968 | #include <stdlib.h> | ||
10969 | |||
10970 | int | ||
10971 | main () | ||
10972 | { | ||
10973 | |||
10974 | int i = H_SETSIZE; | ||
10975 | el_init("", NULL, NULL, NULL); | ||
10976 | exit(0); | ||
10977 | |||
10978 | ; | ||
10979 | return 0; | ||
10980 | } | ||
10981 | _ACEOF | ||
10982 | if ac_fn_c_try_compile "$LINENO"; then : | ||
10983 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
10984 | $as_echo "yes" >&6; } | ||
10985 | else | ||
10986 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
10987 | $as_echo "no" >&6; } | ||
10988 | as_fn_error $? "libedit version is not compatible" "$LINENO" 5 | ||
10989 | |||
10990 | fi | ||
10991 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
10992 | fi | ||
10993 | |||
10994 | fi | ||
10995 | |||
10996 | |||
10997 | AUDIT_MODULE=none | ||
10998 | |||
10999 | # Check whether --with-audit was given. | ||
11000 | if test "${with_audit+set}" = set; then : | ||
11001 | withval=$with_audit; | ||
11002 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for supported audit module" >&5 | ||
11003 | $as_echo_n "checking for supported audit module... " >&6; } | ||
11004 | case "$withval" in | ||
11005 | bsm) | ||
11006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: bsm" >&5 | ||
11007 | $as_echo "bsm" >&6; } | ||
11008 | AUDIT_MODULE=bsm | ||
11009 | for ac_header in bsm/audit.h | ||
11010 | do : | ||
11011 | ac_fn_c_check_header_compile "$LINENO" "bsm/audit.h" "ac_cv_header_bsm_audit_h" " | ||
11012 | #ifdef HAVE_TIME_H | ||
11013 | # include <time.h> | ||
11014 | #endif | ||
11015 | |||
11016 | |||
11017 | " | ||
11018 | if test "x$ac_cv_header_bsm_audit_h" = xyes; then : | ||
11019 | cat >>confdefs.h <<_ACEOF | ||
11020 | #define HAVE_BSM_AUDIT_H 1 | ||
11021 | _ACEOF | ||
11022 | |||
11023 | else | ||
11024 | as_fn_error $? "BSM enabled and bsm/audit.h not found" "$LINENO" 5 | ||
11025 | fi | ||
11026 | |||
11027 | done | ||
11028 | |||
11029 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaudit in -lbsm" >&5 | ||
11030 | $as_echo_n "checking for getaudit in -lbsm... " >&6; } | ||
11031 | if ${ac_cv_lib_bsm_getaudit+:} false; then : | ||
11032 | $as_echo_n "(cached) " >&6 | ||
11033 | else | ||
11034 | ac_check_lib_save_LIBS=$LIBS | ||
11035 | LIBS="-lbsm $LIBS" | ||
11036 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11037 | /* end confdefs.h. */ | ||
11038 | |||
11039 | /* Override any GCC internal prototype to avoid an error. | ||
11040 | Use char because int might match the return type of a GCC | ||
11041 | builtin and then its argument prototype would still apply. */ | ||
11042 | #ifdef __cplusplus | ||
11043 | extern "C" | ||
11044 | #endif | ||
11045 | char getaudit (); | ||
11046 | int | ||
11047 | main () | ||
11048 | { | ||
11049 | return getaudit (); | ||
11050 | ; | ||
11051 | return 0; | ||
11052 | } | ||
11053 | _ACEOF | ||
11054 | if ac_fn_c_try_link "$LINENO"; then : | ||
11055 | ac_cv_lib_bsm_getaudit=yes | ||
11056 | else | ||
11057 | ac_cv_lib_bsm_getaudit=no | ||
11058 | fi | ||
11059 | rm -f core conftest.err conftest.$ac_objext \ | ||
11060 | conftest$ac_exeext conftest.$ac_ext | ||
11061 | LIBS=$ac_check_lib_save_LIBS | ||
11062 | fi | ||
11063 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsm_getaudit" >&5 | ||
11064 | $as_echo "$ac_cv_lib_bsm_getaudit" >&6; } | ||
11065 | if test "x$ac_cv_lib_bsm_getaudit" = xyes; then : | ||
11066 | cat >>confdefs.h <<_ACEOF | ||
11067 | #define HAVE_LIBBSM 1 | ||
11068 | _ACEOF | ||
11069 | |||
11070 | LIBS="-lbsm $LIBS" | ||
11071 | |||
11072 | else | ||
11073 | as_fn_error $? "BSM enabled and required library not found" "$LINENO" 5 | ||
11074 | fi | ||
11075 | |||
11076 | for ac_func in getaudit | ||
11077 | do : | ||
11078 | ac_fn_c_check_func "$LINENO" "getaudit" "ac_cv_func_getaudit" | ||
11079 | if test "x$ac_cv_func_getaudit" = xyes; then : | ||
11080 | cat >>confdefs.h <<_ACEOF | ||
11081 | #define HAVE_GETAUDIT 1 | ||
11082 | _ACEOF | ||
11083 | |||
11084 | else | ||
11085 | as_fn_error $? "BSM enabled and required function not found" "$LINENO" 5 | ||
11086 | fi | ||
11087 | done | ||
11088 | |||
11089 | # These are optional | ||
11090 | for ac_func in getaudit_addr aug_get_machine | ||
11091 | do : | ||
11092 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11093 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11094 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11095 | cat >>confdefs.h <<_ACEOF | ||
11096 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11097 | _ACEOF | ||
11098 | |||
11099 | fi | ||
11100 | done | ||
11101 | |||
11102 | |||
11103 | $as_echo "#define USE_BSM_AUDIT 1" >>confdefs.h | ||
11104 | |||
11105 | if test "$sol2ver" -ge 11; then | ||
11106 | SSHDLIBS="$SSHDLIBS -lscf" | ||
11107 | |||
11108 | $as_echo "#define BROKEN_BSM_API 1" >>confdefs.h | ||
11109 | |||
11110 | fi | ||
11111 | ;; | ||
11112 | linux) | ||
11113 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: linux" >&5 | ||
11114 | $as_echo "linux" >&6; } | ||
11115 | AUDIT_MODULE=linux | ||
11116 | for ac_header in libaudit.h | ||
11117 | do : | ||
11118 | ac_fn_c_check_header_mongrel "$LINENO" "libaudit.h" "ac_cv_header_libaudit_h" "$ac_includes_default" | ||
11119 | if test "x$ac_cv_header_libaudit_h" = xyes; then : | ||
11120 | cat >>confdefs.h <<_ACEOF | ||
11121 | #define HAVE_LIBAUDIT_H 1 | ||
11122 | _ACEOF | ||
11123 | |||
11124 | fi | ||
11125 | |||
11126 | done | ||
11127 | |||
11128 | SSHDLIBS="$SSHDLIBS -laudit" | ||
11129 | |||
11130 | $as_echo "#define USE_LINUX_AUDIT 1" >>confdefs.h | ||
11131 | |||
11132 | ;; | ||
11133 | debug) | ||
11134 | AUDIT_MODULE=debug | ||
11135 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: debug" >&5 | ||
11136 | $as_echo "debug" >&6; } | ||
11137 | |||
11138 | $as_echo "#define SSH_AUDIT_EVENTS 1" >>confdefs.h | ||
11139 | |||
11140 | ;; | ||
11141 | no) | ||
11142 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11143 | $as_echo "no" >&6; } | ||
11144 | ;; | ||
11145 | *) | ||
11146 | as_fn_error $? "Unknown audit module $withval" "$LINENO" 5 | ||
11147 | ;; | ||
11148 | esac | ||
11149 | |||
11150 | fi | ||
11151 | |||
11152 | |||
11153 | |||
11154 | # Check whether --with-pie was given. | ||
11155 | if test "${with_pie+set}" = set; then : | ||
11156 | withval=$with_pie; | ||
11157 | if test "x$withval" = "xno"; then | ||
11158 | use_pie=no | ||
11159 | fi | ||
11160 | if test "x$withval" = "xyes"; then | ||
11161 | use_pie=yes | ||
11162 | fi | ||
11163 | |||
11164 | |||
11165 | fi | ||
11166 | |||
11167 | if test "x$use_pie" = "x"; then | ||
11168 | use_pie=no | ||
11169 | fi | ||
11170 | if test "x$use_toolchain_hardening" != "x1" && test "x$use_pie" = "xauto"; then | ||
11171 | # Turn off automatic PIE when toolchain hardening is off. | ||
11172 | use_pie=no | ||
11173 | fi | ||
11174 | if test "x$use_pie" = "xauto"; then | ||
11175 | # Automatic PIE requires gcc >= 4.x | ||
11176 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc >= 4.x" >&5 | ||
11177 | $as_echo_n "checking for gcc >= 4.x... " >&6; } | ||
11178 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11179 | /* end confdefs.h. */ | ||
11180 | |||
11181 | #if !defined(__GNUC__) || __GNUC__ < 4 | ||
11182 | #error gcc is too old | ||
11183 | #endif | ||
11184 | |||
11185 | _ACEOF | ||
11186 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11187 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11188 | $as_echo "yes" >&6; } | ||
11189 | else | ||
11190 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11191 | $as_echo "no" >&6; } | ||
11192 | use_pie=no | ||
11193 | |||
11194 | fi | ||
11195 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11196 | fi | ||
11197 | if test "x$use_pie" != "xno"; then | ||
11198 | SAVED_CFLAGS="$CFLAGS" | ||
11199 | SAVED_LDFLAGS="$LDFLAGS" | ||
11200 | { | ||
11201 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports compile flag -fPIE" >&5 | ||
11202 | $as_echo_n "checking if $CC supports compile flag -fPIE... " >&6; } | ||
11203 | saved_CFLAGS="$CFLAGS" | ||
11204 | CFLAGS="$CFLAGS $WERROR -fPIE" | ||
11205 | _define_flag="" | ||
11206 | test "x$_define_flag" = "x" && _define_flag="-fPIE" | ||
11207 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11208 | /* end confdefs.h. */ | ||
11209 | |||
11210 | #include <stdlib.h> | ||
11211 | #include <stdio.h> | ||
11212 | int main(int argc, char **argv) { | ||
11213 | (void)argv; | ||
11214 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
11215 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
11216 | float l = i * 2.1; | ||
11217 | double m = l / 0.5; | ||
11218 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
11219 | printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o); | ||
11220 | /* | ||
11221 | * Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does | ||
11222 | * not understand comments and we don't use the "fallthrough" attribute | ||
11223 | * that it's looking for. | ||
11224 | */ | ||
11225 | switch(i){ | ||
11226 | case 0: j += i; | ||
11227 | /* FALLTHROUGH */ | ||
11228 | default: j += k; | ||
11229 | } | ||
11230 | exit(0); | ||
11231 | } | ||
11232 | |||
11233 | _ACEOF | ||
11234 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11235 | |||
11236 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
11237 | then | ||
11238 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11239 | $as_echo "no" >&6; } | ||
11240 | CFLAGS="$saved_CFLAGS" | ||
11241 | else | ||
11242 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11243 | $as_echo "yes" >&6; } | ||
11244 | CFLAGS="$saved_CFLAGS $_define_flag" | ||
11245 | fi | ||
11246 | else | ||
11247 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11248 | $as_echo "no" >&6; } | ||
11249 | CFLAGS="$saved_CFLAGS" | ||
11250 | |||
11251 | fi | ||
11252 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11253 | } | ||
11254 | { | ||
11255 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $LD supports link flag -pie" >&5 | ||
11256 | $as_echo_n "checking if $LD supports link flag -pie... " >&6; } | ||
11257 | saved_LDFLAGS="$LDFLAGS" | ||
11258 | LDFLAGS="$LDFLAGS $WERROR -pie" | ||
11259 | _define_flag="" | ||
11260 | test "x$_define_flag" = "x" && _define_flag="-pie" | ||
11261 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11262 | /* end confdefs.h. */ | ||
11263 | |||
11264 | #include <stdlib.h> | ||
11265 | #include <stdio.h> | ||
11266 | int main(int argc, char **argv) { | ||
11267 | (void)argv; | ||
11268 | /* Some math to catch -ftrapv problems in the toolchain */ | ||
11269 | int i = 123 * argc, j = 456 + argc, k = 789 - argc; | ||
11270 | float l = i * 2.1; | ||
11271 | double m = l / 0.5; | ||
11272 | long long int n = argc * 12345LL, o = 12345LL * (long long int)argc; | ||
11273 | long long p = n * o; | ||
11274 | printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p); | ||
11275 | exit(0); | ||
11276 | } | ||
11277 | |||
11278 | _ACEOF | ||
11279 | if ac_fn_c_try_link "$LINENO"; then : | ||
11280 | |||
11281 | if $ac_cv_path_EGREP -i "unrecognized option|warning.*ignored" conftest.err >/dev/null | ||
11282 | then | ||
11283 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11284 | $as_echo "no" >&6; } | ||
11285 | LDFLAGS="$saved_LDFLAGS" | ||
11286 | else | ||
11287 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11288 | $as_echo "yes" >&6; } | ||
11289 | LDFLAGS="$saved_LDFLAGS $_define_flag" | ||
11290 | fi | ||
11291 | else | ||
11292 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11293 | $as_echo "no" >&6; } | ||
11294 | LDFLAGS="$saved_LDFLAGS" | ||
11295 | |||
11296 | fi | ||
11297 | rm -f core conftest.err conftest.$ac_objext \ | ||
11298 | conftest$ac_exeext conftest.$ac_ext | ||
11299 | } | ||
11300 | # We use both -fPIE and -pie or neither. | ||
11301 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether both -fPIE and -pie are supported" >&5 | ||
11302 | $as_echo_n "checking whether both -fPIE and -pie are supported... " >&6; } | ||
11303 | if echo "x $CFLAGS" | grep ' -fPIE' >/dev/null 2>&1 && \ | ||
11304 | echo "x $LDFLAGS" | grep ' -pie' >/dev/null 2>&1 ; then | ||
11305 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11306 | $as_echo "yes" >&6; } | ||
11307 | else | ||
11308 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11309 | $as_echo "no" >&6; } | ||
11310 | CFLAGS="$SAVED_CFLAGS" | ||
11311 | LDFLAGS="$SAVED_LDFLAGS" | ||
11312 | fi | ||
11313 | fi | ||
11314 | |||
11315 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fPIC is accepted" >&5 | ||
11316 | $as_echo_n "checking whether -fPIC is accepted... " >&6; } | ||
11317 | SAVED_CFLAGS="$CFLAGS" | ||
11318 | CFLAGS="$CFLAGS -fPIC" | ||
11319 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11320 | /* end confdefs.h. */ | ||
11321 | #include <stdlib.h> | ||
11322 | int | ||
11323 | main () | ||
11324 | { | ||
11325 | exit(0); | ||
11326 | ; | ||
11327 | return 0; | ||
11328 | } | ||
11329 | _ACEOF | ||
11330 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11331 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11332 | $as_echo "yes" >&6; } | ||
11333 | PICFLAG="-fPIC"; | ||
11334 | else | ||
11335 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11336 | $as_echo "no" >&6; } | ||
11337 | PICFLAG=""; | ||
11338 | fi | ||
11339 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11340 | CFLAGS="$SAVED_CFLAGS" | ||
11341 | |||
11342 | |||
11343 | for ac_func in \ | ||
11344 | Blowfish_initstate \ | ||
11345 | Blowfish_expandstate \ | ||
11346 | Blowfish_expand0state \ | ||
11347 | Blowfish_stream2word \ | ||
11348 | SHA256Update \ | ||
11349 | SHA384Update \ | ||
11350 | SHA512Update \ | ||
11351 | asprintf \ | ||
11352 | b64_ntop \ | ||
11353 | __b64_ntop \ | ||
11354 | b64_pton \ | ||
11355 | __b64_pton \ | ||
11356 | bcopy \ | ||
11357 | bcrypt_pbkdf \ | ||
11358 | bindresvport_sa \ | ||
11359 | blf_enc \ | ||
11360 | bzero \ | ||
11361 | cap_rights_limit \ | ||
11362 | clock \ | ||
11363 | closefrom \ | ||
11364 | dirfd \ | ||
11365 | endgrent \ | ||
11366 | err \ | ||
11367 | errx \ | ||
11368 | explicit_bzero \ | ||
11369 | fchmod \ | ||
11370 | fchmodat \ | ||
11371 | fchown \ | ||
11372 | fchownat \ | ||
11373 | flock \ | ||
11374 | fnmatch \ | ||
11375 | freeaddrinfo \ | ||
11376 | freezero \ | ||
11377 | fstatfs \ | ||
11378 | fstatvfs \ | ||
11379 | futimes \ | ||
11380 | getaddrinfo \ | ||
11381 | getcwd \ | ||
11382 | getgrouplist \ | ||
11383 | getline \ | ||
11384 | getnameinfo \ | ||
11385 | getopt \ | ||
11386 | getpagesize \ | ||
11387 | getpeereid \ | ||
11388 | getpeerucred \ | ||
11389 | getpgid \ | ||
11390 | _getpty \ | ||
11391 | getrlimit \ | ||
11392 | getrandom \ | ||
11393 | getsid \ | ||
11394 | getttyent \ | ||
11395 | glob \ | ||
11396 | group_from_gid \ | ||
11397 | inet_aton \ | ||
11398 | inet_ntoa \ | ||
11399 | inet_ntop \ | ||
11400 | innetgr \ | ||
11401 | llabs \ | ||
11402 | localtime_r \ | ||
11403 | login_getcapbool \ | ||
11404 | md5_crypt \ | ||
11405 | memmem \ | ||
11406 | memmove \ | ||
11407 | memset_s \ | ||
11408 | mkdtemp \ | ||
11409 | ngetaddrinfo \ | ||
11410 | nsleep \ | ||
11411 | ogetaddrinfo \ | ||
11412 | openlog_r \ | ||
11413 | pledge \ | ||
11414 | poll \ | ||
11415 | prctl \ | ||
11416 | pstat \ | ||
11417 | raise \ | ||
11418 | readpassphrase \ | ||
11419 | reallocarray \ | ||
11420 | realpath \ | ||
11421 | recvmsg \ | ||
11422 | recallocarray \ | ||
11423 | rresvport_af \ | ||
11424 | sendmsg \ | ||
11425 | setdtablesize \ | ||
11426 | setegid \ | ||
11427 | setenv \ | ||
11428 | seteuid \ | ||
11429 | setgroupent \ | ||
11430 | setgroups \ | ||
11431 | setlinebuf \ | ||
11432 | setlogin \ | ||
11433 | setpassent\ | ||
11434 | setpcred \ | ||
11435 | setproctitle \ | ||
11436 | setregid \ | ||
11437 | setreuid \ | ||
11438 | setrlimit \ | ||
11439 | setsid \ | ||
11440 | setvbuf \ | ||
11441 | sigaction \ | ||
11442 | sigvec \ | ||
11443 | snprintf \ | ||
11444 | socketpair \ | ||
11445 | statfs \ | ||
11446 | statvfs \ | ||
11447 | strcasestr \ | ||
11448 | strdup \ | ||
11449 | strerror \ | ||
11450 | strlcat \ | ||
11451 | strlcpy \ | ||
11452 | strmode \ | ||
11453 | strndup \ | ||
11454 | strnlen \ | ||
11455 | strnvis \ | ||
11456 | strptime \ | ||
11457 | strsignal \ | ||
11458 | strtonum \ | ||
11459 | strtoll \ | ||
11460 | strtoul \ | ||
11461 | strtoull \ | ||
11462 | swap32 \ | ||
11463 | sysconf \ | ||
11464 | tcgetpgrp \ | ||
11465 | timingsafe_bcmp \ | ||
11466 | truncate \ | ||
11467 | unsetenv \ | ||
11468 | updwtmpx \ | ||
11469 | utimensat \ | ||
11470 | user_from_uid \ | ||
11471 | usleep \ | ||
11472 | vasprintf \ | ||
11473 | vsnprintf \ | ||
11474 | waitpid \ | ||
11475 | warn \ | ||
11476 | |||
11477 | do : | ||
11478 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11479 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11480 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11481 | cat >>confdefs.h <<_ACEOF | ||
11482 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11483 | _ACEOF | ||
11484 | |||
11485 | fi | ||
11486 | done | ||
11487 | |||
11488 | |||
11489 | ac_fn_c_check_decl "$LINENO" "bzero" "ac_cv_have_decl_bzero" "$ac_includes_default" | ||
11490 | if test "x$ac_cv_have_decl_bzero" = xyes; then : | ||
11491 | ac_have_decl=1 | ||
11492 | else | ||
11493 | ac_have_decl=0 | ||
11494 | fi | ||
11495 | |||
11496 | cat >>confdefs.h <<_ACEOF | ||
11497 | #define HAVE_DECL_BZERO $ac_have_decl | ||
11498 | _ACEOF | ||
11499 | ac_fn_c_check_decl "$LINENO" "memmem" "ac_cv_have_decl_memmem" "$ac_includes_default" | ||
11500 | if test "x$ac_cv_have_decl_memmem" = xyes; then : | ||
11501 | ac_have_decl=1 | ||
11502 | else | ||
11503 | ac_have_decl=0 | ||
11504 | fi | ||
11505 | |||
11506 | cat >>confdefs.h <<_ACEOF | ||
11507 | #define HAVE_DECL_MEMMEM $ac_have_decl | ||
11508 | _ACEOF | ||
11509 | |||
11510 | |||
11511 | for ac_func in mblen mbtowc nl_langinfo wcwidth | ||
11512 | do : | ||
11513 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
11514 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
11515 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
11516 | cat >>confdefs.h <<_ACEOF | ||
11517 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
11518 | _ACEOF | ||
11519 | |||
11520 | fi | ||
11521 | done | ||
11522 | |||
11523 | |||
11524 | TEST_SSH_UTF8=${TEST_SSH_UTF8:=yes} | ||
11525 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for utf8 locale support" >&5 | ||
11526 | $as_echo_n "checking for utf8 locale support... " >&6; } | ||
11527 | if test "$cross_compiling" = yes; then : | ||
11528 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
11529 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
11530 | |||
11531 | else | ||
11532 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11533 | /* end confdefs.h. */ | ||
11534 | |||
11535 | #include <locale.h> | ||
11536 | #include <stdlib.h> | ||
11537 | |||
11538 | int | ||
11539 | main () | ||
11540 | { | ||
11541 | |||
11542 | char *loc = setlocale(LC_CTYPE, "en_US.UTF-8"); | ||
11543 | if (loc != NULL) | ||
11544 | exit(0); | ||
11545 | exit(1); | ||
11546 | |||
11547 | ; | ||
11548 | return 0; | ||
11549 | } | ||
11550 | _ACEOF | ||
11551 | if ac_fn_c_try_run "$LINENO"; then : | ||
11552 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
11553 | $as_echo "yes" >&6; } | ||
11554 | else | ||
11555 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
11556 | $as_echo "no" >&6; } | ||
11557 | TEST_SSH_UTF8=no | ||
11558 | fi | ||
11559 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
11560 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
11561 | fi | ||
11562 | |||
11563 | |||
11564 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11565 | /* end confdefs.h. */ | ||
11566 | #include <ctype.h> | ||
11567 | int | ||
11568 | main () | ||
11569 | { | ||
11570 | return (isblank('a')); | ||
11571 | ; | ||
11572 | return 0; | ||
11573 | } | ||
11574 | _ACEOF | ||
11575 | if ac_fn_c_try_link "$LINENO"; then : | ||
11576 | |||
11577 | $as_echo "#define HAVE_ISBLANK 1" >>confdefs.h | ||
11578 | |||
11579 | |||
11580 | fi | ||
11581 | rm -f core conftest.err conftest.$ac_objext \ | ||
11582 | conftest$ac_exeext conftest.$ac_ext | ||
11583 | |||
11584 | disable_pkcs11= | ||
11585 | # Check whether --enable-pkcs11 was given. | ||
11586 | if test "${enable_pkcs11+set}" = set; then : | ||
11587 | enableval=$enable_pkcs11; | ||
11588 | if test "x$enableval" = "xno" ; then | ||
11589 | disable_pkcs11=1 | ||
11590 | fi | ||
11591 | |||
11592 | |||
11593 | fi | ||
11594 | |||
11595 | |||
11596 | disable_sk= | ||
11597 | # Check whether --enable-security-key was given. | ||
11598 | if test "${enable_security_key+set}" = set; then : | ||
11599 | enableval=$enable_security_key; | ||
11600 | if test "x$enableval" = "xno" ; then | ||
11601 | disable_sk=1 | ||
11602 | fi | ||
11603 | |||
11604 | |||
11605 | fi | ||
11606 | |||
11607 | enable_sk_internal= | ||
11608 | |||
11609 | # Check whether --with-security-key-builtin was given. | ||
11610 | if test "${with_security_key_builtin+set}" = set; then : | ||
11611 | withval=$with_security_key_builtin; | ||
11612 | if test "x$withval" != "xno" ; then | ||
11613 | enable_sk_internal=yes | ||
11614 | fi | ||
11615 | |||
11616 | |||
11617 | fi | ||
11618 | |||
11619 | test "x$disable_sk" != "x" && enable_sk_internal="" | ||
11620 | |||
11621 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 | ||
11622 | $as_echo_n "checking for library containing dlopen... " >&6; } | ||
11623 | if ${ac_cv_search_dlopen+:} false; then : | ||
11624 | $as_echo_n "(cached) " >&6 | ||
11625 | else | ||
11626 | ac_func_search_save_LIBS=$LIBS | ||
11627 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11628 | /* end confdefs.h. */ | ||
11629 | |||
11630 | /* Override any GCC internal prototype to avoid an error. | ||
11631 | Use char because int might match the return type of a GCC | ||
11632 | builtin and then its argument prototype would still apply. */ | ||
11633 | #ifdef __cplusplus | ||
11634 | extern "C" | ||
11635 | #endif | ||
11636 | char dlopen (); | ||
11637 | int | ||
11638 | main () | ||
11639 | { | ||
11640 | return dlopen (); | ||
11641 | ; | ||
11642 | return 0; | ||
11643 | } | ||
11644 | _ACEOF | ||
11645 | for ac_lib in '' dl; do | ||
11646 | if test -z "$ac_lib"; then | ||
11647 | ac_res="none required" | ||
11648 | else | ||
11649 | ac_res=-l$ac_lib | ||
11650 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
11651 | fi | ||
11652 | if ac_fn_c_try_link "$LINENO"; then : | ||
11653 | ac_cv_search_dlopen=$ac_res | ||
11654 | fi | ||
11655 | rm -f core conftest.err conftest.$ac_objext \ | ||
11656 | conftest$ac_exeext | ||
11657 | if ${ac_cv_search_dlopen+:} false; then : | ||
11658 | break | ||
11659 | fi | ||
11660 | done | ||
11661 | if ${ac_cv_search_dlopen+:} false; then : | ||
11662 | |||
11663 | else | ||
11664 | ac_cv_search_dlopen=no | ||
11665 | fi | ||
11666 | rm conftest.$ac_ext | ||
11667 | LIBS=$ac_func_search_save_LIBS | ||
11668 | fi | ||
11669 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5 | ||
11670 | $as_echo "$ac_cv_search_dlopen" >&6; } | ||
11671 | ac_res=$ac_cv_search_dlopen | ||
11672 | if test "$ac_res" != no; then : | ||
11673 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
11674 | |||
11675 | fi | ||
11676 | |||
11677 | for ac_func in dlopen | ||
11678 | do : | ||
11679 | ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" | ||
11680 | if test "x$ac_cv_func_dlopen" = xyes; then : | ||
11681 | cat >>confdefs.h <<_ACEOF | ||
11682 | #define HAVE_DLOPEN 1 | ||
11683 | _ACEOF | ||
11684 | |||
11685 | fi | ||
11686 | done | ||
11687 | |||
11688 | ac_fn_c_check_decl "$LINENO" "RTLD_NOW" "ac_cv_have_decl_RTLD_NOW" "#include <dlfcn.h> | ||
11689 | " | ||
11690 | if test "x$ac_cv_have_decl_RTLD_NOW" = xyes; then : | ||
11691 | |||
11692 | fi | ||
11693 | |||
11694 | |||
11695 | # IRIX has a const char return value for gai_strerror() | ||
11696 | for ac_func in gai_strerror | ||
11697 | do : | ||
11698 | ac_fn_c_check_func "$LINENO" "gai_strerror" "ac_cv_func_gai_strerror" | ||
11699 | if test "x$ac_cv_func_gai_strerror" = xyes; then : | ||
11700 | cat >>confdefs.h <<_ACEOF | ||
11701 | #define HAVE_GAI_STRERROR 1 | ||
11702 | _ACEOF | ||
11703 | |||
11704 | $as_echo "#define HAVE_GAI_STRERROR 1" >>confdefs.h | ||
11705 | |||
11706 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11707 | /* end confdefs.h. */ | ||
11708 | |||
11709 | #include <sys/types.h> | ||
11710 | #include <sys/socket.h> | ||
11711 | #include <netdb.h> | ||
11712 | |||
11713 | const char *gai_strerror(int); | ||
11714 | |||
11715 | int | ||
11716 | main () | ||
11717 | { | ||
11718 | |||
11719 | char *str; | ||
11720 | str = gai_strerror(0); | ||
11721 | |||
11722 | ; | ||
11723 | return 0; | ||
11724 | } | ||
11725 | _ACEOF | ||
11726 | if ac_fn_c_try_compile "$LINENO"; then : | ||
11727 | |||
11728 | |||
11729 | $as_echo "#define HAVE_CONST_GAI_STRERROR_PROTO 1" >>confdefs.h | ||
11730 | |||
11731 | fi | ||
11732 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
11733 | fi | ||
11734 | done | ||
11735 | |||
11736 | |||
11737 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing nanosleep" >&5 | ||
11738 | $as_echo_n "checking for library containing nanosleep... " >&6; } | ||
11739 | if ${ac_cv_search_nanosleep+:} false; then : | ||
11740 | $as_echo_n "(cached) " >&6 | ||
11741 | else | ||
11742 | ac_func_search_save_LIBS=$LIBS | ||
11743 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11744 | /* end confdefs.h. */ | ||
11745 | |||
11746 | /* Override any GCC internal prototype to avoid an error. | ||
11747 | Use char because int might match the return type of a GCC | ||
11748 | builtin and then its argument prototype would still apply. */ | ||
11749 | #ifdef __cplusplus | ||
11750 | extern "C" | ||
11751 | #endif | ||
11752 | char nanosleep (); | ||
11753 | int | ||
11754 | main () | ||
11755 | { | ||
11756 | return nanosleep (); | ||
11757 | ; | ||
11758 | return 0; | ||
11759 | } | ||
11760 | _ACEOF | ||
11761 | for ac_lib in '' rt posix4; do | ||
11762 | if test -z "$ac_lib"; then | ||
11763 | ac_res="none required" | ||
11764 | else | ||
11765 | ac_res=-l$ac_lib | ||
11766 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
11767 | fi | ||
11768 | if ac_fn_c_try_link "$LINENO"; then : | ||
11769 | ac_cv_search_nanosleep=$ac_res | ||
11770 | fi | ||
11771 | rm -f core conftest.err conftest.$ac_objext \ | ||
11772 | conftest$ac_exeext | ||
11773 | if ${ac_cv_search_nanosleep+:} false; then : | ||
11774 | break | ||
11775 | fi | ||
11776 | done | ||
11777 | if ${ac_cv_search_nanosleep+:} false; then : | ||
11778 | |||
11779 | else | ||
11780 | ac_cv_search_nanosleep=no | ||
11781 | fi | ||
11782 | rm conftest.$ac_ext | ||
11783 | LIBS=$ac_func_search_save_LIBS | ||
11784 | fi | ||
11785 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5 | ||
11786 | $as_echo "$ac_cv_search_nanosleep" >&6; } | ||
11787 | ac_res=$ac_cv_search_nanosleep | ||
11788 | if test "$ac_res" != no; then : | ||
11789 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
11790 | |||
11791 | $as_echo "#define HAVE_NANOSLEEP 1" >>confdefs.h | ||
11792 | |||
11793 | fi | ||
11794 | |||
11795 | |||
11796 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 | ||
11797 | $as_echo_n "checking for library containing clock_gettime... " >&6; } | ||
11798 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
11799 | $as_echo_n "(cached) " >&6 | ||
11800 | else | ||
11801 | ac_func_search_save_LIBS=$LIBS | ||
11802 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
11803 | /* end confdefs.h. */ | ||
11804 | |||
11805 | /* Override any GCC internal prototype to avoid an error. | ||
11806 | Use char because int might match the return type of a GCC | ||
11807 | builtin and then its argument prototype would still apply. */ | ||
11808 | #ifdef __cplusplus | ||
11809 | extern "C" | ||
11810 | #endif | ||
11811 | char clock_gettime (); | ||
11812 | int | ||
11813 | main () | ||
11814 | { | ||
11815 | return clock_gettime (); | ||
11816 | ; | ||
11817 | return 0; | ||
11818 | } | ||
11819 | _ACEOF | ||
11820 | for ac_lib in '' rt; do | ||
11821 | if test -z "$ac_lib"; then | ||
11822 | ac_res="none required" | ||
11823 | else | ||
11824 | ac_res=-l$ac_lib | ||
11825 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
11826 | fi | ||
11827 | if ac_fn_c_try_link "$LINENO"; then : | ||
11828 | ac_cv_search_clock_gettime=$ac_res | ||
11829 | fi | ||
11830 | rm -f core conftest.err conftest.$ac_objext \ | ||
11831 | conftest$ac_exeext | ||
11832 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
11833 | break | ||
11834 | fi | ||
11835 | done | ||
11836 | if ${ac_cv_search_clock_gettime+:} false; then : | ||
11837 | |||
11838 | else | ||
11839 | ac_cv_search_clock_gettime=no | ||
11840 | fi | ||
11841 | rm conftest.$ac_ext | ||
11842 | LIBS=$ac_func_search_save_LIBS | ||
11843 | fi | ||
11844 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 | ||
11845 | $as_echo "$ac_cv_search_clock_gettime" >&6; } | ||
11846 | ac_res=$ac_cv_search_clock_gettime | ||
11847 | if test "$ac_res" != no; then : | ||
11848 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
11849 | |||
11850 | $as_echo "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h | ||
11851 | |||
11852 | fi | ||
11853 | |||
11854 | |||
11855 | ac_fn_c_check_decl "$LINENO" "localtime_r" "ac_cv_have_decl_localtime_r" " #include <time.h> | ||
11856 | |||
11857 | " | ||
11858 | if test "x$ac_cv_have_decl_localtime_r" = xyes; then : | ||
11859 | |||
11860 | else | ||
11861 | saved_CPPFLAGS="$CFLAGS" | ||
11862 | CPPFLAGS="$CPPFLAGS -D_REENTRANT" | ||
11863 | unset ac_cv_have_decl_localtime_r | ||
11864 | ac_fn_c_check_decl "$LINENO" "localtime_r" "ac_cv_have_decl_localtime_r" " #include <time.h> | ||
11865 | |||
11866 | " | ||
11867 | if test "x$ac_cv_have_decl_localtime_r" = xyes; then : | ||
11868 | |||
11869 | else | ||
11870 | CPPFLAGS="$saved_CPPFLAGS" | ||
11871 | fi | ||
11872 | |||
11873 | |||
11874 | fi | ||
11875 | |||
11876 | |||
11877 | ac_fn_c_check_decl "$LINENO" "strsep" "ac_cv_have_decl_strsep" " | ||
11878 | #ifdef HAVE_STRING_H | ||
11879 | # include <string.h> | ||
11880 | #endif | ||
11881 | |||
11882 | " | ||
11883 | if test "x$ac_cv_have_decl_strsep" = xyes; then : | ||
11884 | for ac_func in strsep | ||
11885 | do : | ||
11886 | ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep" | ||
11887 | if test "x$ac_cv_func_strsep" = xyes; then : | ||
11888 | cat >>confdefs.h <<_ACEOF | ||
11889 | #define HAVE_STRSEP 1 | ||
11890 | _ACEOF | ||
11891 | |||
11892 | fi | ||
11893 | done | ||
11894 | |||
11895 | fi | ||
11896 | |||
11897 | |||
11898 | ac_fn_c_check_decl "$LINENO" "tcsendbreak" "ac_cv_have_decl_tcsendbreak" "#include <termios.h> | ||
11899 | |||
11900 | " | ||
11901 | if test "x$ac_cv_have_decl_tcsendbreak" = xyes; then : | ||
11902 | $as_echo "#define HAVE_TCSENDBREAK 1" >>confdefs.h | ||
11903 | |||
11904 | else | ||
11905 | for ac_func in tcsendbreak | ||
11906 | do : | ||
11907 | ac_fn_c_check_func "$LINENO" "tcsendbreak" "ac_cv_func_tcsendbreak" | ||
11908 | if test "x$ac_cv_func_tcsendbreak" = xyes; then : | ||
11909 | cat >>confdefs.h <<_ACEOF | ||
11910 | #define HAVE_TCSENDBREAK 1 | ||
11911 | _ACEOF | ||
11912 | |||
11913 | fi | ||
11914 | done | ||
11915 | |||
11916 | fi | ||
11917 | |||
11918 | |||
11919 | ac_fn_c_check_decl "$LINENO" "h_errno" "ac_cv_have_decl_h_errno" "#include <netdb.h> | ||
11920 | " | ||
11921 | if test "x$ac_cv_have_decl_h_errno" = xyes; then : | ||
11922 | ac_have_decl=1 | ||
11923 | else | ||
11924 | ac_have_decl=0 | ||
11925 | fi | ||
11926 | |||
11927 | cat >>confdefs.h <<_ACEOF | ||
11928 | #define HAVE_DECL_H_ERRNO $ac_have_decl | ||
11929 | _ACEOF | ||
11930 | |||
11931 | |||
11932 | ac_fn_c_check_decl "$LINENO" "SHUT_RD" "ac_cv_have_decl_SHUT_RD" " | ||
11933 | #include <sys/types.h> | ||
11934 | #include <sys/socket.h> | ||
11935 | #include <unistd.h> | ||
11936 | |||
11937 | " | ||
11938 | if test "x$ac_cv_have_decl_SHUT_RD" = xyes; then : | ||
11939 | ac_have_decl=1 | ||
11940 | else | ||
11941 | ac_have_decl=0 | ||
11942 | fi | ||
11943 | |||
11944 | cat >>confdefs.h <<_ACEOF | ||
11945 | #define HAVE_DECL_SHUT_RD $ac_have_decl | ||
11946 | _ACEOF | ||
11947 | ac_fn_c_check_decl "$LINENO" "getpeereid" "ac_cv_have_decl_getpeereid" " | ||
11948 | #include <sys/types.h> | ||
11949 | #include <sys/socket.h> | ||
11950 | #include <unistd.h> | ||
11951 | |||
11952 | " | ||
11953 | if test "x$ac_cv_have_decl_getpeereid" = xyes; then : | ||
11954 | ac_have_decl=1 | ||
11955 | else | ||
11956 | ac_have_decl=0 | ||
11957 | fi | ||
11958 | |||
11959 | cat >>confdefs.h <<_ACEOF | ||
11960 | #define HAVE_DECL_GETPEEREID $ac_have_decl | ||
11961 | _ACEOF | ||
11962 | |||
11963 | |||
11964 | ac_fn_c_check_decl "$LINENO" "O_NONBLOCK" "ac_cv_have_decl_O_NONBLOCK" " | ||
11965 | #include <sys/types.h> | ||
11966 | #ifdef HAVE_SYS_STAT_H | ||
11967 | # include <sys/stat.h> | ||
11968 | #endif | ||
11969 | #ifdef HAVE_FCNTL_H | ||
11970 | # include <fcntl.h> | ||
11971 | #endif | ||
11972 | |||
11973 | " | ||
11974 | if test "x$ac_cv_have_decl_O_NONBLOCK" = xyes; then : | ||
11975 | ac_have_decl=1 | ||
11976 | else | ||
11977 | ac_have_decl=0 | ||
11978 | fi | ||
11979 | |||
11980 | cat >>confdefs.h <<_ACEOF | ||
11981 | #define HAVE_DECL_O_NONBLOCK $ac_have_decl | ||
11982 | _ACEOF | ||
11983 | |||
11984 | |||
11985 | ac_fn_c_check_decl "$LINENO" "readv" "ac_cv_have_decl_readv" " | ||
11986 | #include <sys/types.h> | ||
11987 | #include <sys/uio.h> | ||
11988 | #include <unistd.h> | ||
11989 | |||
11990 | " | ||
11991 | if test "x$ac_cv_have_decl_readv" = xyes; then : | ||
11992 | ac_have_decl=1 | ||
11993 | else | ||
11994 | ac_have_decl=0 | ||
11995 | fi | ||
11996 | |||
11997 | cat >>confdefs.h <<_ACEOF | ||
11998 | #define HAVE_DECL_READV $ac_have_decl | ||
11999 | _ACEOF | ||
12000 | ac_fn_c_check_decl "$LINENO" "writev" "ac_cv_have_decl_writev" " | ||
12001 | #include <sys/types.h> | ||
12002 | #include <sys/uio.h> | ||
12003 | #include <unistd.h> | ||
12004 | |||
12005 | " | ||
12006 | if test "x$ac_cv_have_decl_writev" = xyes; then : | ||
12007 | ac_have_decl=1 | ||
12008 | else | ||
12009 | ac_have_decl=0 | ||
12010 | fi | ||
12011 | |||
12012 | cat >>confdefs.h <<_ACEOF | ||
12013 | #define HAVE_DECL_WRITEV $ac_have_decl | ||
12014 | _ACEOF | ||
12015 | |||
12016 | |||
12017 | ac_fn_c_check_decl "$LINENO" "MAXSYMLINKS" "ac_cv_have_decl_MAXSYMLINKS" " | ||
12018 | #include <sys/param.h> | ||
12019 | |||
12020 | " | ||
12021 | if test "x$ac_cv_have_decl_MAXSYMLINKS" = xyes; then : | ||
12022 | ac_have_decl=1 | ||
12023 | else | ||
12024 | ac_have_decl=0 | ||
12025 | fi | ||
12026 | |||
12027 | cat >>confdefs.h <<_ACEOF | ||
12028 | #define HAVE_DECL_MAXSYMLINKS $ac_have_decl | ||
12029 | _ACEOF | ||
12030 | |||
12031 | |||
12032 | ac_fn_c_check_decl "$LINENO" "offsetof" "ac_cv_have_decl_offsetof" " | ||
12033 | #include <stddef.h> | ||
12034 | |||
12035 | " | ||
12036 | if test "x$ac_cv_have_decl_offsetof" = xyes; then : | ||
12037 | ac_have_decl=1 | ||
12038 | else | ||
12039 | ac_have_decl=0 | ||
12040 | fi | ||
12041 | |||
12042 | cat >>confdefs.h <<_ACEOF | ||
12043 | #define HAVE_DECL_OFFSETOF $ac_have_decl | ||
12044 | _ACEOF | ||
12045 | |||
12046 | |||
12047 | # extra bits for select(2) | ||
12048 | ac_fn_c_check_decl "$LINENO" "howmany" "ac_cv_have_decl_howmany" " | ||
12049 | #include <sys/param.h> | ||
12050 | #include <sys/types.h> | ||
12051 | #ifdef HAVE_SYS_SYSMACROS_H | ||
12052 | #include <sys/sysmacros.h> | ||
12053 | #endif | ||
12054 | #ifdef HAVE_SYS_SELECT_H | ||
12055 | #include <sys/select.h> | ||
12056 | #endif | ||
12057 | #ifdef HAVE_SYS_TIME_H | ||
12058 | #include <sys/time.h> | ||
12059 | #endif | ||
12060 | #ifdef HAVE_UNISTD_H | ||
12061 | #include <unistd.h> | ||
12062 | #endif | ||
12063 | |||
12064 | " | ||
12065 | if test "x$ac_cv_have_decl_howmany" = xyes; then : | ||
12066 | ac_have_decl=1 | ||
12067 | else | ||
12068 | ac_have_decl=0 | ||
12069 | fi | ||
12070 | |||
12071 | cat >>confdefs.h <<_ACEOF | ||
12072 | #define HAVE_DECL_HOWMANY $ac_have_decl | ||
12073 | _ACEOF | ||
12074 | ac_fn_c_check_decl "$LINENO" "NFDBITS" "ac_cv_have_decl_NFDBITS" " | ||
12075 | #include <sys/param.h> | ||
12076 | #include <sys/types.h> | ||
12077 | #ifdef HAVE_SYS_SYSMACROS_H | ||
12078 | #include <sys/sysmacros.h> | ||
12079 | #endif | ||
12080 | #ifdef HAVE_SYS_SELECT_H | ||
12081 | #include <sys/select.h> | ||
12082 | #endif | ||
12083 | #ifdef HAVE_SYS_TIME_H | ||
12084 | #include <sys/time.h> | ||
12085 | #endif | ||
12086 | #ifdef HAVE_UNISTD_H | ||
12087 | #include <unistd.h> | ||
12088 | #endif | ||
12089 | |||
12090 | " | ||
12091 | if test "x$ac_cv_have_decl_NFDBITS" = xyes; then : | ||
12092 | ac_have_decl=1 | ||
12093 | else | ||
12094 | ac_have_decl=0 | ||
12095 | fi | ||
12096 | |||
12097 | cat >>confdefs.h <<_ACEOF | ||
12098 | #define HAVE_DECL_NFDBITS $ac_have_decl | ||
12099 | _ACEOF | ||
12100 | |||
12101 | ac_fn_c_check_type "$LINENO" "fd_mask" "ac_cv_type_fd_mask" " | ||
12102 | #include <sys/param.h> | ||
12103 | #include <sys/types.h> | ||
12104 | #ifdef HAVE_SYS_SELECT_H | ||
12105 | #include <sys/select.h> | ||
12106 | #endif | ||
12107 | #ifdef HAVE_SYS_TIME_H | ||
12108 | #include <sys/time.h> | ||
12109 | #endif | ||
12110 | #ifdef HAVE_UNISTD_H | ||
12111 | #include <unistd.h> | ||
12112 | #endif | ||
12113 | |||
12114 | " | ||
12115 | if test "x$ac_cv_type_fd_mask" = xyes; then : | ||
12116 | |||
12117 | cat >>confdefs.h <<_ACEOF | ||
12118 | #define HAVE_FD_MASK 1 | ||
12119 | _ACEOF | ||
12120 | |||
12121 | |||
12122 | fi | ||
12123 | |||
12124 | |||
12125 | for ac_func in setresuid | ||
12126 | do : | ||
12127 | ac_fn_c_check_func "$LINENO" "setresuid" "ac_cv_func_setresuid" | ||
12128 | if test "x$ac_cv_func_setresuid" = xyes; then : | ||
12129 | cat >>confdefs.h <<_ACEOF | ||
12130 | #define HAVE_SETRESUID 1 | ||
12131 | _ACEOF | ||
12132 | |||
12133 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresuid seems to work" >&5 | ||
12134 | $as_echo_n "checking if setresuid seems to work... " >&6; } | ||
12135 | if test "$cross_compiling" = yes; then : | ||
12136 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5 | ||
12137 | $as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;} | ||
12138 | |||
12139 | else | ||
12140 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12141 | /* end confdefs.h. */ | ||
12142 | |||
12143 | #include <stdlib.h> | ||
12144 | #include <errno.h> | ||
12145 | |||
12146 | int | ||
12147 | main () | ||
12148 | { | ||
12149 | |||
12150 | errno=0; | ||
12151 | setresuid(0,0,0); | ||
12152 | if (errno==ENOSYS) | ||
12153 | exit(1); | ||
12154 | else | ||
12155 | exit(0); | ||
12156 | |||
12157 | ; | ||
12158 | return 0; | ||
12159 | } | ||
12160 | _ACEOF | ||
12161 | if ac_fn_c_try_run "$LINENO"; then : | ||
12162 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12163 | $as_echo "yes" >&6; } | ||
12164 | else | ||
12165 | |||
12166 | $as_echo "#define BROKEN_SETRESUID 1" >>confdefs.h | ||
12167 | |||
12168 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5 | ||
12169 | $as_echo "not implemented" >&6; } | ||
12170 | fi | ||
12171 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12172 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12173 | fi | ||
12174 | |||
12175 | |||
12176 | fi | ||
12177 | done | ||
12178 | |||
12179 | |||
12180 | for ac_func in setresgid | ||
12181 | do : | ||
12182 | ac_fn_c_check_func "$LINENO" "setresgid" "ac_cv_func_setresgid" | ||
12183 | if test "x$ac_cv_func_setresgid" = xyes; then : | ||
12184 | cat >>confdefs.h <<_ACEOF | ||
12185 | #define HAVE_SETRESGID 1 | ||
12186 | _ACEOF | ||
12187 | |||
12188 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setresgid seems to work" >&5 | ||
12189 | $as_echo_n "checking if setresgid seems to work... " >&6; } | ||
12190 | if test "$cross_compiling" = yes; then : | ||
12191 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking setresuid" >&5 | ||
12192 | $as_echo "$as_me: WARNING: cross compiling: not checking setresuid" >&2;} | ||
12193 | |||
12194 | else | ||
12195 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12196 | /* end confdefs.h. */ | ||
12197 | |||
12198 | #include <stdlib.h> | ||
12199 | #include <errno.h> | ||
12200 | |||
12201 | int | ||
12202 | main () | ||
12203 | { | ||
12204 | |||
12205 | errno=0; | ||
12206 | setresgid(0,0,0); | ||
12207 | if (errno==ENOSYS) | ||
12208 | exit(1); | ||
12209 | else | ||
12210 | exit(0); | ||
12211 | |||
12212 | ; | ||
12213 | return 0; | ||
12214 | } | ||
12215 | _ACEOF | ||
12216 | if ac_fn_c_try_run "$LINENO"; then : | ||
12217 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12218 | $as_echo "yes" >&6; } | ||
12219 | else | ||
12220 | |||
12221 | $as_echo "#define BROKEN_SETRESGID 1" >>confdefs.h | ||
12222 | |||
12223 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not implemented" >&5 | ||
12224 | $as_echo "not implemented" >&6; } | ||
12225 | fi | ||
12226 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12227 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12228 | fi | ||
12229 | |||
12230 | |||
12231 | fi | ||
12232 | done | ||
12233 | |||
12234 | |||
12235 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fflush(NULL)" >&5 | ||
12236 | $as_echo_n "checking for working fflush(NULL)... " >&6; } | ||
12237 | if test "$cross_compiling" = yes; then : | ||
12238 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming working" >&5 | ||
12239 | $as_echo "$as_me: WARNING: cross compiling: assuming working" >&2;} | ||
12240 | |||
12241 | else | ||
12242 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12243 | /* end confdefs.h. */ | ||
12244 | |||
12245 | #include <stdio.h> | ||
12246 | #include <stdlib.h> | ||
12247 | |||
12248 | int | ||
12249 | main () | ||
12250 | { | ||
12251 | fflush(NULL); exit(0); | ||
12252 | ; | ||
12253 | return 0; | ||
12254 | } | ||
12255 | _ACEOF | ||
12256 | if ac_fn_c_try_run "$LINENO"; then : | ||
12257 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12258 | $as_echo "yes" >&6; } | ||
12259 | else | ||
12260 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12261 | $as_echo "no" >&6; } | ||
12262 | |||
12263 | $as_echo "#define FFLUSH_NULL_BUG 1" >>confdefs.h | ||
12264 | |||
12265 | fi | ||
12266 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12267 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12268 | fi | ||
12269 | |||
12270 | |||
12271 | for ac_func in gettimeofday time | ||
12272 | do : | ||
12273 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12274 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12275 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12276 | cat >>confdefs.h <<_ACEOF | ||
12277 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12278 | _ACEOF | ||
12279 | |||
12280 | fi | ||
12281 | done | ||
12282 | |||
12283 | for ac_func in endutent getutent getutid getutline pututline setutent | ||
12284 | do : | ||
12285 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12286 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12287 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12288 | cat >>confdefs.h <<_ACEOF | ||
12289 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12290 | _ACEOF | ||
12291 | |||
12292 | fi | ||
12293 | done | ||
12294 | |||
12295 | for ac_func in utmpname | ||
12296 | do : | ||
12297 | ac_fn_c_check_func "$LINENO" "utmpname" "ac_cv_func_utmpname" | ||
12298 | if test "x$ac_cv_func_utmpname" = xyes; then : | ||
12299 | cat >>confdefs.h <<_ACEOF | ||
12300 | #define HAVE_UTMPNAME 1 | ||
12301 | _ACEOF | ||
12302 | |||
12303 | fi | ||
12304 | done | ||
12305 | |||
12306 | for ac_func in endutxent getutxent getutxid getutxline getutxuser pututxline | ||
12307 | do : | ||
12308 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12309 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12310 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12311 | cat >>confdefs.h <<_ACEOF | ||
12312 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12313 | _ACEOF | ||
12314 | |||
12315 | fi | ||
12316 | done | ||
12317 | |||
12318 | for ac_func in setutxdb setutxent utmpxname | ||
12319 | do : | ||
12320 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
12321 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
12322 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
12323 | cat >>confdefs.h <<_ACEOF | ||
12324 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
12325 | _ACEOF | ||
12326 | |||
12327 | fi | ||
12328 | done | ||
12329 | |||
12330 | for ac_func in getlastlogxbyname | ||
12331 | do : | ||
12332 | ac_fn_c_check_func "$LINENO" "getlastlogxbyname" "ac_cv_func_getlastlogxbyname" | ||
12333 | if test "x$ac_cv_func_getlastlogxbyname" = xyes; then : | ||
12334 | cat >>confdefs.h <<_ACEOF | ||
12335 | #define HAVE_GETLASTLOGXBYNAME 1 | ||
12336 | _ACEOF | ||
12337 | |||
12338 | fi | ||
12339 | done | ||
12340 | |||
12341 | |||
12342 | ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon" | ||
12343 | if test "x$ac_cv_func_daemon" = xyes; then : | ||
12344 | |||
12345 | $as_echo "#define HAVE_DAEMON 1" >>confdefs.h | ||
12346 | |||
12347 | else | ||
12348 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for daemon in -lbsd" >&5 | ||
12349 | $as_echo_n "checking for daemon in -lbsd... " >&6; } | ||
12350 | if ${ac_cv_lib_bsd_daemon+:} false; then : | ||
12351 | $as_echo_n "(cached) " >&6 | ||
12352 | else | ||
12353 | ac_check_lib_save_LIBS=$LIBS | ||
12354 | LIBS="-lbsd $LIBS" | ||
12355 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12356 | /* end confdefs.h. */ | ||
12357 | |||
12358 | /* Override any GCC internal prototype to avoid an error. | ||
12359 | Use char because int might match the return type of a GCC | ||
12360 | builtin and then its argument prototype would still apply. */ | ||
12361 | #ifdef __cplusplus | ||
12362 | extern "C" | ||
12363 | #endif | ||
12364 | char daemon (); | ||
12365 | int | ||
12366 | main () | ||
12367 | { | ||
12368 | return daemon (); | ||
12369 | ; | ||
12370 | return 0; | ||
12371 | } | ||
12372 | _ACEOF | ||
12373 | if ac_fn_c_try_link "$LINENO"; then : | ||
12374 | ac_cv_lib_bsd_daemon=yes | ||
12375 | else | ||
12376 | ac_cv_lib_bsd_daemon=no | ||
12377 | fi | ||
12378 | rm -f core conftest.err conftest.$ac_objext \ | ||
12379 | conftest$ac_exeext conftest.$ac_ext | ||
12380 | LIBS=$ac_check_lib_save_LIBS | ||
12381 | fi | ||
12382 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_daemon" >&5 | ||
12383 | $as_echo "$ac_cv_lib_bsd_daemon" >&6; } | ||
12384 | if test "x$ac_cv_lib_bsd_daemon" = xyes; then : | ||
12385 | LIBS="$LIBS -lbsd"; $as_echo "#define HAVE_DAEMON 1" >>confdefs.h | ||
12386 | |||
12387 | fi | ||
12388 | |||
12389 | |||
12390 | fi | ||
12391 | |||
12392 | |||
12393 | ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" | ||
12394 | if test "x$ac_cv_func_getpagesize" = xyes; then : | ||
12395 | |||
12396 | $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h | ||
12397 | |||
12398 | else | ||
12399 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpagesize in -lucb" >&5 | ||
12400 | $as_echo_n "checking for getpagesize in -lucb... " >&6; } | ||
12401 | if ${ac_cv_lib_ucb_getpagesize+:} false; then : | ||
12402 | $as_echo_n "(cached) " >&6 | ||
12403 | else | ||
12404 | ac_check_lib_save_LIBS=$LIBS | ||
12405 | LIBS="-lucb $LIBS" | ||
12406 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12407 | /* end confdefs.h. */ | ||
12408 | |||
12409 | /* Override any GCC internal prototype to avoid an error. | ||
12410 | Use char because int might match the return type of a GCC | ||
12411 | builtin and then its argument prototype would still apply. */ | ||
12412 | #ifdef __cplusplus | ||
12413 | extern "C" | ||
12414 | #endif | ||
12415 | char getpagesize (); | ||
12416 | int | ||
12417 | main () | ||
12418 | { | ||
12419 | return getpagesize (); | ||
12420 | ; | ||
12421 | return 0; | ||
12422 | } | ||
12423 | _ACEOF | ||
12424 | if ac_fn_c_try_link "$LINENO"; then : | ||
12425 | ac_cv_lib_ucb_getpagesize=yes | ||
12426 | else | ||
12427 | ac_cv_lib_ucb_getpagesize=no | ||
12428 | fi | ||
12429 | rm -f core conftest.err conftest.$ac_objext \ | ||
12430 | conftest$ac_exeext conftest.$ac_ext | ||
12431 | LIBS=$ac_check_lib_save_LIBS | ||
12432 | fi | ||
12433 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ucb_getpagesize" >&5 | ||
12434 | $as_echo "$ac_cv_lib_ucb_getpagesize" >&6; } | ||
12435 | if test "x$ac_cv_lib_ucb_getpagesize" = xyes; then : | ||
12436 | LIBS="$LIBS -lucb"; $as_echo "#define HAVE_GETPAGESIZE 1" >>confdefs.h | ||
12437 | |||
12438 | fi | ||
12439 | |||
12440 | |||
12441 | fi | ||
12442 | |||
12443 | |||
12444 | # Check for broken snprintf | ||
12445 | if test "x$ac_cv_func_snprintf" = "xyes" ; then | ||
12446 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf correctly terminates long strings" >&5 | ||
12447 | $as_echo_n "checking whether snprintf correctly terminates long strings... " >&6; } | ||
12448 | if test "$cross_compiling" = yes; then : | ||
12449 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5 | ||
12450 | $as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;} | ||
12451 | |||
12452 | else | ||
12453 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12454 | /* end confdefs.h. */ | ||
12455 | |||
12456 | #include <stdio.h> | ||
12457 | #include <stdlib.h> | ||
12458 | |||
12459 | int | ||
12460 | main () | ||
12461 | { | ||
12462 | |||
12463 | char b[5]; | ||
12464 | snprintf(b,5,"123456789"); | ||
12465 | exit(b[4]!='\0'); | ||
12466 | |||
12467 | ; | ||
12468 | return 0; | ||
12469 | } | ||
12470 | _ACEOF | ||
12471 | if ac_fn_c_try_run "$LINENO"; then : | ||
12472 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12473 | $as_echo "yes" >&6; } | ||
12474 | else | ||
12475 | |||
12476 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12477 | $as_echo "no" >&6; } | ||
12478 | |||
12479 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
12480 | |||
12481 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&5 | ||
12482 | $as_echo "$as_me: WARNING: ****** Your snprintf() function is broken, complain to your vendor" >&2;} | ||
12483 | |||
12484 | fi | ||
12485 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12486 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12487 | fi | ||
12488 | |||
12489 | fi | ||
12490 | |||
12491 | if test "x$ac_cv_func_snprintf" = "xyes" ; then | ||
12492 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf understands %zu" >&5 | ||
12493 | $as_echo_n "checking whether snprintf understands %zu... " >&6; } | ||
12494 | if test "$cross_compiling" = yes; then : | ||
12495 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5 | ||
12496 | $as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;} | ||
12497 | |||
12498 | else | ||
12499 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12500 | /* end confdefs.h. */ | ||
12501 | |||
12502 | #include <sys/types.h> | ||
12503 | #include <stdio.h> | ||
12504 | #include <stdlib.h> | ||
12505 | #include <string.h> | ||
12506 | |||
12507 | int | ||
12508 | main () | ||
12509 | { | ||
12510 | |||
12511 | size_t a = 1, b = 2; | ||
12512 | char z[128]; | ||
12513 | snprintf(z, sizeof z, "%zu%zu", a, b); | ||
12514 | exit(strcmp(z, "12")); | ||
12515 | |||
12516 | ; | ||
12517 | return 0; | ||
12518 | } | ||
12519 | _ACEOF | ||
12520 | if ac_fn_c_try_run "$LINENO"; then : | ||
12521 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12522 | $as_echo "yes" >&6; } | ||
12523 | else | ||
12524 | |||
12525 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12526 | $as_echo "no" >&6; } | ||
12527 | |||
12528 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
12529 | |||
12530 | |||
12531 | fi | ||
12532 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12533 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12534 | fi | ||
12535 | |||
12536 | fi | ||
12537 | |||
12538 | # We depend on vsnprintf returning the right thing on overflow: the | ||
12539 | # number of characters it tried to create (as per SUSv3) | ||
12540 | if test "x$ac_cv_func_vsnprintf" = "xyes" ; then | ||
12541 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether vsnprintf returns correct values on overflow" >&5 | ||
12542 | $as_echo_n "checking whether vsnprintf returns correct values on overflow... " >&6; } | ||
12543 | if test "$cross_compiling" = yes; then : | ||
12544 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working vsnprintf()" >&5 | ||
12545 | $as_echo "$as_me: WARNING: cross compiling: Assuming working vsnprintf()" >&2;} | ||
12546 | |||
12547 | else | ||
12548 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12549 | /* end confdefs.h. */ | ||
12550 | |||
12551 | #include <sys/types.h> | ||
12552 | #include <stdio.h> | ||
12553 | #include <stdarg.h> | ||
12554 | |||
12555 | int x_snprintf(char *str, size_t count, const char *fmt, ...) | ||
12556 | { | ||
12557 | size_t ret; | ||
12558 | va_list ap; | ||
12559 | |||
12560 | va_start(ap, fmt); | ||
12561 | ret = vsnprintf(str, count, fmt, ap); | ||
12562 | va_end(ap); | ||
12563 | return ret; | ||
12564 | } | ||
12565 | |||
12566 | int | ||
12567 | main () | ||
12568 | { | ||
12569 | |||
12570 | char x[1]; | ||
12571 | if (x_snprintf(x, 1, "%s %d", "hello", 12345) != 11) | ||
12572 | return 1; | ||
12573 | if (x_snprintf(NULL, 0, "%s %d", "hello", 12345) != 11) | ||
12574 | return 1; | ||
12575 | return 0; | ||
12576 | |||
12577 | ; | ||
12578 | return 0; | ||
12579 | } | ||
12580 | _ACEOF | ||
12581 | if ac_fn_c_try_run "$LINENO"; then : | ||
12582 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12583 | $as_echo "yes" >&6; } | ||
12584 | else | ||
12585 | |||
12586 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12587 | $as_echo "no" >&6; } | ||
12588 | |||
12589 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
12590 | |||
12591 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&5 | ||
12592 | $as_echo "$as_me: WARNING: ****** Your vsnprintf() function is broken, complain to your vendor" >&2;} | ||
12593 | |||
12594 | fi | ||
12595 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12596 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12597 | fi | ||
12598 | |||
12599 | fi | ||
12600 | |||
12601 | # On systems where [v]snprintf is broken, but is declared in stdio, | ||
12602 | # check that the fmt argument is const char * or just char *. | ||
12603 | # This is only useful for when BROKEN_SNPRINTF | ||
12604 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf can declare const char *fmt" >&5 | ||
12605 | $as_echo_n "checking whether snprintf can declare const char *fmt... " >&6; } | ||
12606 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12607 | /* end confdefs.h. */ | ||
12608 | |||
12609 | #include <stdio.h> | ||
12610 | int snprintf(char *a, size_t b, const char *c, ...) { return 0; } | ||
12611 | |||
12612 | int | ||
12613 | main () | ||
12614 | { | ||
12615 | |||
12616 | snprintf(0, 0, 0); | ||
12617 | |||
12618 | ; | ||
12619 | return 0; | ||
12620 | } | ||
12621 | _ACEOF | ||
12622 | if ac_fn_c_try_compile "$LINENO"; then : | ||
12623 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12624 | $as_echo "yes" >&6; } | ||
12625 | |||
12626 | $as_echo "#define SNPRINTF_CONST const" >>confdefs.h | ||
12627 | |||
12628 | else | ||
12629 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12630 | $as_echo "no" >&6; } | ||
12631 | $as_echo "#define SNPRINTF_CONST /* not const */" >>confdefs.h | ||
12632 | |||
12633 | fi | ||
12634 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
12635 | |||
12636 | # Check for missing getpeereid (or equiv) support | ||
12637 | NO_PEERCHECK="" | ||
12638 | if test "x$ac_cv_func_getpeereid" != "xyes" -a "x$ac_cv_func_getpeerucred" != "xyes"; then | ||
12639 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system supports SO_PEERCRED getsockopt" >&5 | ||
12640 | $as_echo_n "checking whether system supports SO_PEERCRED getsockopt... " >&6; } | ||
12641 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12642 | /* end confdefs.h. */ | ||
12643 | |||
12644 | #include <sys/types.h> | ||
12645 | #include <sys/socket.h> | ||
12646 | int | ||
12647 | main () | ||
12648 | { | ||
12649 | int i = SO_PEERCRED; | ||
12650 | ; | ||
12651 | return 0; | ||
12652 | } | ||
12653 | _ACEOF | ||
12654 | if ac_fn_c_try_compile "$LINENO"; then : | ||
12655 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12656 | $as_echo "yes" >&6; } | ||
12657 | |||
12658 | $as_echo "#define HAVE_SO_PEERCRED 1" >>confdefs.h | ||
12659 | |||
12660 | |||
12661 | else | ||
12662 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12663 | $as_echo "no" >&6; } | ||
12664 | NO_PEERCHECK=1 | ||
12665 | |||
12666 | fi | ||
12667 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
12668 | fi | ||
12669 | |||
12670 | if test "x$ac_cv_func_mkdtemp" = "xyes" ; then | ||
12671 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for (overly) strict mkstemp" >&5 | ||
12672 | $as_echo_n "checking for (overly) strict mkstemp... " >&6; } | ||
12673 | if test "$cross_compiling" = yes; then : | ||
12674 | |||
12675 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12676 | $as_echo "yes" >&6; } | ||
12677 | $as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h | ||
12678 | |||
12679 | |||
12680 | |||
12681 | else | ||
12682 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12683 | /* end confdefs.h. */ | ||
12684 | |||
12685 | #include <stdlib.h> | ||
12686 | #include <unistd.h> | ||
12687 | |||
12688 | int | ||
12689 | main () | ||
12690 | { | ||
12691 | |||
12692 | char template[]="conftest.mkstemp-test"; | ||
12693 | if (mkstemp(template) == -1) | ||
12694 | exit(1); | ||
12695 | unlink(template); | ||
12696 | exit(0); | ||
12697 | |||
12698 | ; | ||
12699 | return 0; | ||
12700 | } | ||
12701 | _ACEOF | ||
12702 | if ac_fn_c_try_run "$LINENO"; then : | ||
12703 | |||
12704 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12705 | $as_echo "no" >&6; } | ||
12706 | |||
12707 | else | ||
12708 | |||
12709 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12710 | $as_echo "yes" >&6; } | ||
12711 | |||
12712 | $as_echo "#define HAVE_STRICT_MKSTEMP 1" >>confdefs.h | ||
12713 | |||
12714 | |||
12715 | fi | ||
12716 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12717 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12718 | fi | ||
12719 | |||
12720 | fi | ||
12721 | |||
12722 | if test ! -z "$check_for_openpty_ctty_bug"; then | ||
12723 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if openpty correctly handles controlling tty" >&5 | ||
12724 | $as_echo_n "checking if openpty correctly handles controlling tty... " >&6; } | ||
12725 | if test "$cross_compiling" = yes; then : | ||
12726 | |||
12727 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5 | ||
12728 | $as_echo "cross-compiling, assuming yes" >&6; } | ||
12729 | |||
12730 | |||
12731 | else | ||
12732 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12733 | /* end confdefs.h. */ | ||
12734 | |||
12735 | #include <stdio.h> | ||
12736 | #include <stdlib.h> | ||
12737 | #include <unistd.h> | ||
12738 | #include <sys/fcntl.h> | ||
12739 | #include <sys/types.h> | ||
12740 | #include <sys/wait.h> | ||
12741 | |||
12742 | int | ||
12743 | main () | ||
12744 | { | ||
12745 | |||
12746 | pid_t pid; | ||
12747 | int fd, ptyfd, ttyfd, status; | ||
12748 | |||
12749 | pid = fork(); | ||
12750 | if (pid < 0) { /* failed */ | ||
12751 | exit(1); | ||
12752 | } else if (pid > 0) { /* parent */ | ||
12753 | waitpid(pid, &status, 0); | ||
12754 | if (WIFEXITED(status)) | ||
12755 | exit(WEXITSTATUS(status)); | ||
12756 | else | ||
12757 | exit(2); | ||
12758 | } else { /* child */ | ||
12759 | close(0); close(1); close(2); | ||
12760 | setsid(); | ||
12761 | openpty(&ptyfd, &ttyfd, NULL, NULL, NULL); | ||
12762 | fd = open("/dev/tty", O_RDWR | O_NOCTTY); | ||
12763 | if (fd >= 0) | ||
12764 | exit(3); /* Acquired ctty: broken */ | ||
12765 | else | ||
12766 | exit(0); /* Did not acquire ctty: OK */ | ||
12767 | } | ||
12768 | |||
12769 | ; | ||
12770 | return 0; | ||
12771 | } | ||
12772 | _ACEOF | ||
12773 | if ac_fn_c_try_run "$LINENO"; then : | ||
12774 | |||
12775 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12776 | $as_echo "yes" >&6; } | ||
12777 | |||
12778 | else | ||
12779 | |||
12780 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12781 | $as_echo "no" >&6; } | ||
12782 | $as_echo "#define SSHD_ACQUIRES_CTTY 1" >>confdefs.h | ||
12783 | |||
12784 | |||
12785 | fi | ||
12786 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12787 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12788 | fi | ||
12789 | |||
12790 | fi | ||
12791 | |||
12792 | if test "x$ac_cv_func_getaddrinfo" = "xyes" && \ | ||
12793 | test "x$check_for_hpux_broken_getaddrinfo" = "x1"; then | ||
12794 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5 | ||
12795 | $as_echo_n "checking if getaddrinfo seems to work... " >&6; } | ||
12796 | if test "$cross_compiling" = yes; then : | ||
12797 | |||
12798 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming yes" >&5 | ||
12799 | $as_echo "cross-compiling, assuming yes" >&6; } | ||
12800 | |||
12801 | |||
12802 | else | ||
12803 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12804 | /* end confdefs.h. */ | ||
12805 | |||
12806 | #include <stdio.h> | ||
12807 | #include <stdlib.h> | ||
12808 | #include <sys/socket.h> | ||
12809 | #include <netdb.h> | ||
12810 | #include <errno.h> | ||
12811 | #include <netinet/in.h> | ||
12812 | |||
12813 | #define TEST_PORT "2222" | ||
12814 | |||
12815 | int | ||
12816 | main () | ||
12817 | { | ||
12818 | |||
12819 | int err, sock; | ||
12820 | struct addrinfo *gai_ai, *ai, hints; | ||
12821 | char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL; | ||
12822 | |||
12823 | memset(&hints, 0, sizeof(hints)); | ||
12824 | hints.ai_family = PF_UNSPEC; | ||
12825 | hints.ai_socktype = SOCK_STREAM; | ||
12826 | hints.ai_flags = AI_PASSIVE; | ||
12827 | |||
12828 | err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai); | ||
12829 | if (err != 0) { | ||
12830 | fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err)); | ||
12831 | exit(1); | ||
12832 | } | ||
12833 | |||
12834 | for (ai = gai_ai; ai != NULL; ai = ai->ai_next) { | ||
12835 | if (ai->ai_family != AF_INET6) | ||
12836 | continue; | ||
12837 | |||
12838 | err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop, | ||
12839 | sizeof(ntop), strport, sizeof(strport), | ||
12840 | NI_NUMERICHOST|NI_NUMERICSERV); | ||
12841 | |||
12842 | if (err != 0) { | ||
12843 | if (err == EAI_SYSTEM) | ||
12844 | perror("getnameinfo EAI_SYSTEM"); | ||
12845 | else | ||
12846 | fprintf(stderr, "getnameinfo failed: %s\n", | ||
12847 | gai_strerror(err)); | ||
12848 | exit(2); | ||
12849 | } | ||
12850 | |||
12851 | sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); | ||
12852 | if (sock < 0) | ||
12853 | perror("socket"); | ||
12854 | if (bind(sock, ai->ai_addr, ai->ai_addrlen) < 0) { | ||
12855 | if (errno == EBADF) | ||
12856 | exit(3); | ||
12857 | } | ||
12858 | } | ||
12859 | exit(0); | ||
12860 | |||
12861 | ; | ||
12862 | return 0; | ||
12863 | } | ||
12864 | _ACEOF | ||
12865 | if ac_fn_c_try_run "$LINENO"; then : | ||
12866 | |||
12867 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12868 | $as_echo "yes" >&6; } | ||
12869 | |||
12870 | else | ||
12871 | |||
12872 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12873 | $as_echo "no" >&6; } | ||
12874 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
12875 | |||
12876 | |||
12877 | fi | ||
12878 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12879 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12880 | fi | ||
12881 | |||
12882 | fi | ||
12883 | |||
12884 | if test "x$ac_cv_func_getaddrinfo" = "xyes" && \ | ||
12885 | test "x$check_for_aix_broken_getaddrinfo" = "x1"; then | ||
12886 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5 | ||
12887 | $as_echo_n "checking if getaddrinfo seems to work... " >&6; } | ||
12888 | if test "$cross_compiling" = yes; then : | ||
12889 | |||
12890 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming no" >&5 | ||
12891 | $as_echo "cross-compiling, assuming no" >&6; } | ||
12892 | |||
12893 | |||
12894 | else | ||
12895 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12896 | /* end confdefs.h. */ | ||
12897 | |||
12898 | #include <stdio.h> | ||
12899 | #include <stdlib.h> | ||
12900 | #include <sys/socket.h> | ||
12901 | #include <netdb.h> | ||
12902 | #include <errno.h> | ||
12903 | #include <netinet/in.h> | ||
12904 | |||
12905 | #define TEST_PORT "2222" | ||
12906 | |||
12907 | int | ||
12908 | main () | ||
12909 | { | ||
12910 | |||
12911 | int err, sock; | ||
12912 | struct addrinfo *gai_ai, *ai, hints; | ||
12913 | char ntop[NI_MAXHOST], strport[NI_MAXSERV], *name = NULL; | ||
12914 | |||
12915 | memset(&hints, 0, sizeof(hints)); | ||
12916 | hints.ai_family = PF_UNSPEC; | ||
12917 | hints.ai_socktype = SOCK_STREAM; | ||
12918 | hints.ai_flags = AI_PASSIVE; | ||
12919 | |||
12920 | err = getaddrinfo(name, TEST_PORT, &hints, &gai_ai); | ||
12921 | if (err != 0) { | ||
12922 | fprintf(stderr, "getaddrinfo failed (%s)", gai_strerror(err)); | ||
12923 | exit(1); | ||
12924 | } | ||
12925 | |||
12926 | for (ai = gai_ai; ai != NULL; ai = ai->ai_next) { | ||
12927 | if (ai->ai_family != AF_INET && ai->ai_family != AF_INET6) | ||
12928 | continue; | ||
12929 | |||
12930 | err = getnameinfo(ai->ai_addr, ai->ai_addrlen, ntop, | ||
12931 | sizeof(ntop), strport, sizeof(strport), | ||
12932 | NI_NUMERICHOST|NI_NUMERICSERV); | ||
12933 | |||
12934 | if (ai->ai_family == AF_INET && err != 0) { | ||
12935 | perror("getnameinfo"); | ||
12936 | exit(2); | ||
12937 | } | ||
12938 | } | ||
12939 | exit(0); | ||
12940 | |||
12941 | ; | ||
12942 | return 0; | ||
12943 | } | ||
12944 | _ACEOF | ||
12945 | if ac_fn_c_try_run "$LINENO"; then : | ||
12946 | |||
12947 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
12948 | $as_echo "yes" >&6; } | ||
12949 | |||
12950 | $as_echo "#define AIX_GETNAMEINFO_HACK 1" >>confdefs.h | ||
12951 | |||
12952 | |||
12953 | else | ||
12954 | |||
12955 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
12956 | $as_echo "no" >&6; } | ||
12957 | $as_echo "#define BROKEN_GETADDRINFO 1" >>confdefs.h | ||
12958 | |||
12959 | |||
12960 | fi | ||
12961 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
12962 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
12963 | fi | ||
12964 | |||
12965 | fi | ||
12966 | |||
12967 | if test "x$ac_cv_func_getaddrinfo" = "xyes"; then | ||
12968 | ac_fn_c_check_decl "$LINENO" "AI_NUMERICSERV" "ac_cv_have_decl_AI_NUMERICSERV" "#include <sys/types.h> | ||
12969 | #include <sys/socket.h> | ||
12970 | #include <netdb.h> | ||
12971 | " | ||
12972 | if test "x$ac_cv_have_decl_AI_NUMERICSERV" = xyes; then : | ||
12973 | ac_have_decl=1 | ||
12974 | else | ||
12975 | ac_have_decl=0 | ||
12976 | fi | ||
12977 | |||
12978 | cat >>confdefs.h <<_ACEOF | ||
12979 | #define HAVE_DECL_AI_NUMERICSERV $ac_have_decl | ||
12980 | _ACEOF | ||
12981 | |||
12982 | fi | ||
12983 | |||
12984 | if test "x$check_for_conflicting_getspnam" = "x1"; then | ||
12985 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for conflicting getspnam in shadow.h" >&5 | ||
12986 | $as_echo_n "checking for conflicting getspnam in shadow.h... " >&6; } | ||
12987 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
12988 | /* end confdefs.h. */ | ||
12989 | |||
12990 | #include <shadow.h> | ||
12991 | #include <stdlib.h> | ||
12992 | |||
12993 | int | ||
12994 | main () | ||
12995 | { | ||
12996 | exit(0); | ||
12997 | ; | ||
12998 | return 0; | ||
12999 | } | ||
13000 | _ACEOF | ||
13001 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13002 | |||
13003 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13004 | $as_echo "no" >&6; } | ||
13005 | |||
13006 | else | ||
13007 | |||
13008 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13009 | $as_echo "yes" >&6; } | ||
13010 | |||
13011 | $as_echo "#define GETSPNAM_CONFLICTING_DEFS 1" >>confdefs.h | ||
13012 | |||
13013 | |||
13014 | |||
13015 | fi | ||
13016 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13017 | fi | ||
13018 | |||
13019 | if test "x$ac_cv_func_strnvis" = "xyes"; then | ||
13020 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strnvis" >&5 | ||
13021 | $as_echo_n "checking for working strnvis... " >&6; } | ||
13022 | if test "$cross_compiling" = yes; then : | ||
13023 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming broken" >&5 | ||
13024 | $as_echo "$as_me: WARNING: cross compiling: assuming broken" >&2;} | ||
13025 | |||
13026 | $as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h | ||
13027 | |||
13028 | |||
13029 | else | ||
13030 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13031 | /* end confdefs.h. */ | ||
13032 | |||
13033 | #include <signal.h> | ||
13034 | #include <stdlib.h> | ||
13035 | #include <string.h> | ||
13036 | #include <unistd.h> | ||
13037 | #include <vis.h> | ||
13038 | static void sighandler(int sig) { _exit(1); } | ||
13039 | |||
13040 | int | ||
13041 | main () | ||
13042 | { | ||
13043 | |||
13044 | char dst[16]; | ||
13045 | |||
13046 | signal(SIGSEGV, sighandler); | ||
13047 | if (strnvis(dst, "src", 4, 0) && strcmp(dst, "src") == 0) | ||
13048 | exit(0); | ||
13049 | exit(1) | ||
13050 | |||
13051 | ; | ||
13052 | return 0; | ||
13053 | } | ||
13054 | _ACEOF | ||
13055 | if ac_fn_c_try_run "$LINENO"; then : | ||
13056 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13057 | $as_echo "yes" >&6; } | ||
13058 | else | ||
13059 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13060 | $as_echo "no" >&6; } | ||
13061 | |||
13062 | $as_echo "#define BROKEN_STRNVIS 1" >>confdefs.h | ||
13063 | |||
13064 | fi | ||
13065 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13066 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13067 | fi | ||
13068 | |||
13069 | fi | ||
13070 | |||
13071 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if SA_RESTARTed signals interrupt select()" >&5 | ||
13072 | $as_echo_n "checking if SA_RESTARTed signals interrupt select()... " >&6; } | ||
13073 | if test "$cross_compiling" = yes; then : | ||
13074 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
13075 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
13076 | |||
13077 | else | ||
13078 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13079 | /* end confdefs.h. */ | ||
13080 | |||
13081 | #ifdef HAVE_SYS_SELECT | ||
13082 | # include <sys/select.h> | ||
13083 | #endif | ||
13084 | #include <sys/types.h> | ||
13085 | #include <sys/time.h> | ||
13086 | #include <stdlib.h> | ||
13087 | #include <signal.h> | ||
13088 | #include <unistd.h> | ||
13089 | static void sighandler(int sig) { } | ||
13090 | |||
13091 | int | ||
13092 | main () | ||
13093 | { | ||
13094 | |||
13095 | int r; | ||
13096 | pid_t pid; | ||
13097 | struct sigaction sa; | ||
13098 | |||
13099 | sa.sa_handler = sighandler; | ||
13100 | sa.sa_flags = SA_RESTART; | ||
13101 | (void)sigaction(SIGTERM, &sa, NULL); | ||
13102 | if ((pid = fork()) == 0) { /* child */ | ||
13103 | pid = getppid(); | ||
13104 | sleep(1); | ||
13105 | kill(pid, SIGTERM); | ||
13106 | sleep(1); | ||
13107 | if (getppid() == pid) /* if parent did not exit, shoot it */ | ||
13108 | kill(pid, SIGKILL); | ||
13109 | exit(0); | ||
13110 | } else { /* parent */ | ||
13111 | r = select(0, NULL, NULL, NULL, NULL); | ||
13112 | } | ||
13113 | exit(r == -1 ? 0 : 1); | ||
13114 | |||
13115 | ; | ||
13116 | return 0; | ||
13117 | } | ||
13118 | _ACEOF | ||
13119 | if ac_fn_c_try_run "$LINENO"; then : | ||
13120 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13121 | $as_echo "yes" >&6; } | ||
13122 | else | ||
13123 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13124 | $as_echo "no" >&6; } | ||
13125 | |||
13126 | $as_echo "#define NO_SA_RESTART 1" >>confdefs.h | ||
13127 | |||
13128 | fi | ||
13129 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13130 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13131 | fi | ||
13132 | |||
13133 | |||
13134 | for ac_func in getpgrp | ||
13135 | do : | ||
13136 | ac_fn_c_check_func "$LINENO" "getpgrp" "ac_cv_func_getpgrp" | ||
13137 | if test "x$ac_cv_func_getpgrp" = xyes; then : | ||
13138 | cat >>confdefs.h <<_ACEOF | ||
13139 | #define HAVE_GETPGRP 1 | ||
13140 | _ACEOF | ||
13141 | |||
13142 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpgrp accepts zero args" >&5 | ||
13143 | $as_echo_n "checking if getpgrp accepts zero args... " >&6; } | ||
13144 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13145 | /* end confdefs.h. */ | ||
13146 | $ac_includes_default | ||
13147 | int | ||
13148 | main () | ||
13149 | { | ||
13150 | getpgrp(); | ||
13151 | ; | ||
13152 | return 0; | ||
13153 | } | ||
13154 | _ACEOF | ||
13155 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13156 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13157 | $as_echo "yes" >&6; } | ||
13158 | |||
13159 | $as_echo "#define GETPGRP_VOID 1" >>confdefs.h | ||
13160 | |||
13161 | else | ||
13162 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13163 | $as_echo "no" >&6; } | ||
13164 | |||
13165 | $as_echo "#define GETPGRP_VOID 0" >>confdefs.h | ||
13166 | |||
13167 | |||
13168 | fi | ||
13169 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13170 | |||
13171 | fi | ||
13172 | done | ||
13173 | |||
13174 | |||
13175 | # Search for OpenSSL | ||
13176 | saved_CPPFLAGS="$CPPFLAGS" | ||
13177 | saved_LDFLAGS="$LDFLAGS" | ||
13178 | |||
13179 | # Check whether --with-ssl-dir was given. | ||
13180 | if test "${with_ssl_dir+set}" = set; then : | ||
13181 | withval=$with_ssl_dir; | ||
13182 | if test "x$openssl" = "xno" ; then | ||
13183 | as_fn_error $? "cannot use --with-ssl-dir when OpenSSL disabled" "$LINENO" 5 | ||
13184 | fi | ||
13185 | if test "x$withval" != "xno" ; then | ||
13186 | case "$withval" in | ||
13187 | # Relative paths | ||
13188 | ./*|../*) withval="`pwd`/$withval" | ||
13189 | esac | ||
13190 | if test -d "$withval/lib"; then | ||
13191 | if test -n "${rpath_opt}"; then | ||
13192 | LDFLAGS="-L${withval}/lib ${rpath_opt}${withval}/lib ${LDFLAGS}" | ||
13193 | else | ||
13194 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
13195 | fi | ||
13196 | elif test -d "$withval/lib64"; then | ||
13197 | if test -n "${rpath_opt}"; then | ||
13198 | LDFLAGS="-L${withval}/lib64 ${rpath_opt}${withval}/lib64 ${LDFLAGS}" | ||
13199 | else | ||
13200 | LDFLAGS="-L${withval}/lib64 ${LDFLAGS}" | ||
13201 | fi | ||
13202 | else | ||
13203 | if test -n "${rpath_opt}"; then | ||
13204 | LDFLAGS="-L${withval} ${rpath_opt}${withval} ${LDFLAGS}" | ||
13205 | else | ||
13206 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
13207 | fi | ||
13208 | fi | ||
13209 | if test -d "$withval/include"; then | ||
13210 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
13211 | else | ||
13212 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
13213 | fi | ||
13214 | fi | ||
13215 | |||
13216 | |||
13217 | fi | ||
13218 | |||
13219 | |||
13220 | |||
13221 | # Check whether --with-openssl-header-check was given. | ||
13222 | if test "${with_openssl_header_check+set}" = set; then : | ||
13223 | withval=$with_openssl_header_check; | ||
13224 | if test "x$withval" = "xno" ; then | ||
13225 | openssl_check_nonfatal=1 | ||
13226 | fi | ||
13227 | |||
13228 | |||
13229 | fi | ||
13230 | |||
13231 | |||
13232 | openssl_engine=no | ||
13233 | |||
13234 | # Check whether --with-ssl-engine was given. | ||
13235 | if test "${with_ssl_engine+set}" = set; then : | ||
13236 | withval=$with_ssl_engine; | ||
13237 | if test "x$withval" != "xno" ; then | ||
13238 | if test "x$openssl" = "xno" ; then | ||
13239 | as_fn_error $? "cannot use --with-ssl-engine when OpenSSL disabled" "$LINENO" 5 | ||
13240 | fi | ||
13241 | openssl_engine=yes | ||
13242 | fi | ||
13243 | |||
13244 | |||
13245 | fi | ||
13246 | |||
13247 | |||
13248 | if test "x$openssl" = "xyes" ; then | ||
13249 | LIBS="-lcrypto $LIBS" | ||
13250 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13251 | /* end confdefs.h. */ | ||
13252 | |||
13253 | /* Override any GCC internal prototype to avoid an error. | ||
13254 | Use char because int might match the return type of a GCC | ||
13255 | builtin and then its argument prototype would still apply. */ | ||
13256 | #ifdef __cplusplus | ||
13257 | extern "C" | ||
13258 | #endif | ||
13259 | char RAND_add (); | ||
13260 | int | ||
13261 | main () | ||
13262 | { | ||
13263 | return RAND_add (); | ||
13264 | ; | ||
13265 | return 0; | ||
13266 | } | ||
13267 | _ACEOF | ||
13268 | if ac_fn_c_try_link "$LINENO"; then : | ||
13269 | |||
13270 | else | ||
13271 | as_fn_error $? "*** working libcrypto not found, check config.log" "$LINENO" 5 | ||
13272 | fi | ||
13273 | rm -f core conftest.err conftest.$ac_objext \ | ||
13274 | conftest$ac_exeext conftest.$ac_ext | ||
13275 | ac_fn_c_check_header_mongrel "$LINENO" "openssl/opensslv.h" "ac_cv_header_openssl_opensslv_h" "$ac_includes_default" | ||
13276 | if test "x$ac_cv_header_openssl_opensslv_h" = xyes; then : | ||
13277 | |||
13278 | else | ||
13279 | as_fn_error $? "*** OpenSSL headers missing - please install first or check config.log ***" "$LINENO" 5 | ||
13280 | fi | ||
13281 | |||
13282 | |||
13283 | |||
13284 | # Determine OpenSSL header version | ||
13285 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL header version" >&5 | ||
13286 | $as_echo_n "checking OpenSSL header version... " >&6; } | ||
13287 | if test "$cross_compiling" = yes; then : | ||
13288 | |||
13289 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
13290 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
13291 | |||
13292 | |||
13293 | else | ||
13294 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13295 | /* end confdefs.h. */ | ||
13296 | |||
13297 | #include <stdlib.h> | ||
13298 | #include <stdio.h> | ||
13299 | #include <string.h> | ||
13300 | #include <openssl/opensslv.h> | ||
13301 | #define DATA "conftest.sslincver" | ||
13302 | |||
13303 | int | ||
13304 | main () | ||
13305 | { | ||
13306 | |||
13307 | FILE *fd; | ||
13308 | int rc; | ||
13309 | |||
13310 | fd = fopen(DATA,"w"); | ||
13311 | if(fd == NULL) | ||
13312 | exit(1); | ||
13313 | |||
13314 | if ((rc = fprintf(fd, "%08lx (%s)\n", | ||
13315 | (unsigned long)OPENSSL_VERSION_NUMBER, | ||
13316 | OPENSSL_VERSION_TEXT)) < 0) | ||
13317 | exit(1); | ||
13318 | |||
13319 | exit(0); | ||
13320 | |||
13321 | ; | ||
13322 | return 0; | ||
13323 | } | ||
13324 | _ACEOF | ||
13325 | if ac_fn_c_try_run "$LINENO"; then : | ||
13326 | |||
13327 | ssl_header_ver=`cat conftest.sslincver` | ||
13328 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_header_ver" >&5 | ||
13329 | $as_echo "$ssl_header_ver" >&6; } | ||
13330 | |||
13331 | else | ||
13332 | |||
13333 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
13334 | $as_echo "not found" >&6; } | ||
13335 | as_fn_error $? "OpenSSL version header not found." "$LINENO" 5 | ||
13336 | |||
13337 | fi | ||
13338 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13339 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13340 | fi | ||
13341 | |||
13342 | |||
13343 | # Determining OpenSSL library version is version dependent. | ||
13344 | for ac_func in OpenSSL_version OpenSSL_version_num | ||
13345 | do : | ||
13346 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
13347 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
13348 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
13349 | cat >>confdefs.h <<_ACEOF | ||
13350 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
13351 | _ACEOF | ||
13352 | |||
13353 | fi | ||
13354 | done | ||
13355 | |||
13356 | |||
13357 | # Determine OpenSSL library version | ||
13358 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL library version" >&5 | ||
13359 | $as_echo_n "checking OpenSSL library version... " >&6; } | ||
13360 | if test "$cross_compiling" = yes; then : | ||
13361 | |||
13362 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
13363 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
13364 | |||
13365 | |||
13366 | else | ||
13367 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13368 | /* end confdefs.h. */ | ||
13369 | |||
13370 | #include <stdio.h> | ||
13371 | #include <stdlib.h> | ||
13372 | #include <string.h> | ||
13373 | #include <openssl/opensslv.h> | ||
13374 | #include <openssl/crypto.h> | ||
13375 | #define DATA "conftest.ssllibver" | ||
13376 | |||
13377 | int | ||
13378 | main () | ||
13379 | { | ||
13380 | |||
13381 | FILE *fd; | ||
13382 | int rc; | ||
13383 | |||
13384 | fd = fopen(DATA,"w"); | ||
13385 | if(fd == NULL) | ||
13386 | exit(1); | ||
13387 | #ifndef OPENSSL_VERSION | ||
13388 | # define OPENSSL_VERSION SSLEAY_VERSION | ||
13389 | #endif | ||
13390 | #ifndef HAVE_OPENSSL_VERSION | ||
13391 | # define OpenSSL_version SSLeay_version | ||
13392 | #endif | ||
13393 | #ifndef HAVE_OPENSSL_VERSION_NUM | ||
13394 | # define OpenSSL_version_num SSLeay | ||
13395 | #endif | ||
13396 | if ((rc = fprintf(fd, "%08lx (%s)\n", | ||
13397 | (unsigned long)OpenSSL_version_num(), | ||
13398 | OpenSSL_version(OPENSSL_VERSION))) < 0) | ||
13399 | exit(1); | ||
13400 | |||
13401 | exit(0); | ||
13402 | |||
13403 | ; | ||
13404 | return 0; | ||
13405 | } | ||
13406 | _ACEOF | ||
13407 | if ac_fn_c_try_run "$LINENO"; then : | ||
13408 | |||
13409 | ssl_library_ver=`cat conftest.ssllibver` | ||
13410 | # Check version is supported. | ||
13411 | case "$ssl_library_ver" in | ||
13412 | 10000*|0*) | ||
13413 | as_fn_error $? "OpenSSL >= 1.0.1 required (have \"$ssl_library_ver\")" "$LINENO" 5 | ||
13414 | ;; | ||
13415 | 100*) ;; # 1.0.x | ||
13416 | 101000[0123456]*) | ||
13417 | # https://github.com/openssl/openssl/pull/4613 | ||
13418 | 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 | ||
13419 | ;; | ||
13420 | 101*) ;; # 1.1.x | ||
13421 | 200*) ;; # LibreSSL | ||
13422 | 300*) ;; # OpenSSL development branch. | ||
13423 | *) | ||
13424 | as_fn_error $? "Unknown/unsupported OpenSSL version (\"$ssl_library_ver\")" "$LINENO" 5 | ||
13425 | ;; | ||
13426 | esac | ||
13427 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_library_ver" >&5 | ||
13428 | $as_echo "$ssl_library_ver" >&6; } | ||
13429 | |||
13430 | else | ||
13431 | |||
13432 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
13433 | $as_echo "not found" >&6; } | ||
13434 | as_fn_error $? "OpenSSL library not found." "$LINENO" 5 | ||
13435 | |||
13436 | fi | ||
13437 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13438 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13439 | fi | ||
13440 | |||
13441 | |||
13442 | # Sanity check OpenSSL headers | ||
13443 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's headers match the library" >&5 | ||
13444 | $as_echo_n "checking whether OpenSSL's headers match the library... " >&6; } | ||
13445 | if test "$cross_compiling" = yes; then : | ||
13446 | |||
13447 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
13448 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
13449 | |||
13450 | |||
13451 | else | ||
13452 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13453 | /* end confdefs.h. */ | ||
13454 | |||
13455 | #include <stdlib.h> | ||
13456 | #include <string.h> | ||
13457 | #include <openssl/opensslv.h> | ||
13458 | #include <openssl/crypto.h> | ||
13459 | |||
13460 | int | ||
13461 | main () | ||
13462 | { | ||
13463 | |||
13464 | #ifndef HAVE_OPENSSL_VERSION_NUM | ||
13465 | # define OpenSSL_version_num SSLeay | ||
13466 | #endif | ||
13467 | exit(OpenSSL_version_num() == OPENSSL_VERSION_NUMBER ? 0 : 1); | ||
13468 | |||
13469 | ; | ||
13470 | return 0; | ||
13471 | } | ||
13472 | _ACEOF | ||
13473 | if ac_fn_c_try_run "$LINENO"; then : | ||
13474 | |||
13475 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13476 | $as_echo "yes" >&6; } | ||
13477 | |||
13478 | else | ||
13479 | |||
13480 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13481 | $as_echo "no" >&6; } | ||
13482 | if test "x$openssl_check_nonfatal" = "x"; then | ||
13483 | as_fn_error $? "Your OpenSSL headers do not match your | ||
13484 | library. Check config.log for details. | ||
13485 | If you are sure your installation is consistent, you can disable the check | ||
13486 | by running \"./configure --without-openssl-header-check\". | ||
13487 | Also see contrib/findssl.sh for help identifying header/library mismatches. | ||
13488 | " "$LINENO" 5 | ||
13489 | else | ||
13490 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Your OpenSSL headers do not match your | ||
13491 | library. Check config.log for details. | ||
13492 | Also see contrib/findssl.sh for help identifying header/library mismatches." >&5 | ||
13493 | $as_echo "$as_me: WARNING: Your OpenSSL headers do not match your | ||
13494 | library. Check config.log for details. | ||
13495 | Also see contrib/findssl.sh for help identifying header/library mismatches." >&2;} | ||
13496 | fi | ||
13497 | |||
13498 | fi | ||
13499 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
13500 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
13501 | fi | ||
13502 | |||
13503 | |||
13504 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL functions will link" >&5 | ||
13505 | $as_echo_n "checking if programs using OpenSSL functions will link... " >&6; } | ||
13506 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13507 | /* end confdefs.h. */ | ||
13508 | #include <openssl/err.h> | ||
13509 | int | ||
13510 | main () | ||
13511 | { | ||
13512 | ERR_load_crypto_strings(); | ||
13513 | ; | ||
13514 | return 0; | ||
13515 | } | ||
13516 | _ACEOF | ||
13517 | if ac_fn_c_try_link "$LINENO"; then : | ||
13518 | |||
13519 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13520 | $as_echo "yes" >&6; } | ||
13521 | |||
13522 | else | ||
13523 | |||
13524 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13525 | $as_echo "no" >&6; } | ||
13526 | saved_LIBS="$LIBS" | ||
13527 | LIBS="$LIBS -ldl" | ||
13528 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if programs using OpenSSL need -ldl" >&5 | ||
13529 | $as_echo_n "checking if programs using OpenSSL need -ldl... " >&6; } | ||
13530 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13531 | /* end confdefs.h. */ | ||
13532 | #include <openssl/err.h> | ||
13533 | int | ||
13534 | main () | ||
13535 | { | ||
13536 | ERR_load_crypto_strings(); | ||
13537 | ; | ||
13538 | return 0; | ||
13539 | } | ||
13540 | _ACEOF | ||
13541 | if ac_fn_c_try_link "$LINENO"; then : | ||
13542 | |||
13543 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13544 | $as_echo "yes" >&6; } | ||
13545 | |||
13546 | else | ||
13547 | |||
13548 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13549 | $as_echo "no" >&6; } | ||
13550 | LIBS="$saved_LIBS" | ||
13551 | |||
13552 | |||
13553 | fi | ||
13554 | rm -f core conftest.err conftest.$ac_objext \ | ||
13555 | conftest$ac_exeext conftest.$ac_ext | ||
13556 | |||
13557 | |||
13558 | fi | ||
13559 | rm -f core conftest.err conftest.$ac_objext \ | ||
13560 | conftest$ac_exeext conftest.$ac_ext | ||
13561 | |||
13562 | for ac_func in \ | ||
13563 | BN_is_prime_ex \ | ||
13564 | DSA_generate_parameters_ex \ | ||
13565 | EVP_CIPHER_CTX_ctrl \ | ||
13566 | EVP_DigestFinal_ex \ | ||
13567 | EVP_DigestInit_ex \ | ||
13568 | EVP_MD_CTX_cleanup \ | ||
13569 | EVP_MD_CTX_copy_ex \ | ||
13570 | EVP_MD_CTX_init \ | ||
13571 | HMAC_CTX_init \ | ||
13572 | RSA_generate_key_ex \ | ||
13573 | RSA_get_default_method \ | ||
13574 | |||
13575 | do : | ||
13576 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
13577 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
13578 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
13579 | cat >>confdefs.h <<_ACEOF | ||
13580 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
13581 | _ACEOF | ||
13582 | |||
13583 | fi | ||
13584 | done | ||
13585 | |||
13586 | |||
13587 | # OpenSSL_add_all_algorithms may be a macro. | ||
13588 | ac_fn_c_check_func "$LINENO" "OpenSSL_add_all_algorithms" "ac_cv_func_OpenSSL_add_all_algorithms" | ||
13589 | if test "x$ac_cv_func_OpenSSL_add_all_algorithms" = xyes; then : | ||
13590 | |||
13591 | $as_echo "#define HAVE_OPENSSL_ADD_ALL_ALGORITHMS 1" >>confdefs.h | ||
13592 | |||
13593 | else | ||
13594 | ac_fn_c_check_decl "$LINENO" "OpenSSL_add_all_algorithms" "ac_cv_have_decl_OpenSSL_add_all_algorithms" "#include <openssl/evp.h> | ||
13595 | |||
13596 | " | ||
13597 | if test "x$ac_cv_have_decl_OpenSSL_add_all_algorithms" = xyes; then : | ||
13598 | |||
13599 | $as_echo "#define HAVE_OPENSSL_ADD_ALL_ALGORITHMS 1" >>confdefs.h | ||
13600 | |||
13601 | fi | ||
13602 | |||
13603 | |||
13604 | fi | ||
13605 | |||
13606 | |||
13607 | # LibreSSL/OpenSSL 1.1x API | ||
13608 | for ac_func in \ | ||
13609 | OPENSSL_init_crypto \ | ||
13610 | DH_get0_key \ | ||
13611 | DH_get0_pqg \ | ||
13612 | DH_set0_key \ | ||
13613 | DH_set_length \ | ||
13614 | DH_set0_pqg \ | ||
13615 | DSA_get0_key \ | ||
13616 | DSA_get0_pqg \ | ||
13617 | DSA_set0_key \ | ||
13618 | DSA_set0_pqg \ | ||
13619 | DSA_SIG_get0 \ | ||
13620 | DSA_SIG_set0 \ | ||
13621 | ECDSA_SIG_get0 \ | ||
13622 | ECDSA_SIG_set0 \ | ||
13623 | EVP_CIPHER_CTX_iv \ | ||
13624 | EVP_CIPHER_CTX_iv_noconst \ | ||
13625 | EVP_CIPHER_CTX_get_iv \ | ||
13626 | EVP_CIPHER_CTX_set_iv \ | ||
13627 | RSA_get0_crt_params \ | ||
13628 | RSA_get0_factors \ | ||
13629 | RSA_get0_key \ | ||
13630 | RSA_set0_crt_params \ | ||
13631 | RSA_set0_factors \ | ||
13632 | RSA_set0_key \ | ||
13633 | RSA_meth_free \ | ||
13634 | RSA_meth_dup \ | ||
13635 | RSA_meth_set1_name \ | ||
13636 | RSA_meth_get_finish \ | ||
13637 | RSA_meth_set_priv_enc \ | ||
13638 | RSA_meth_set_priv_dec \ | ||
13639 | RSA_meth_set_finish \ | ||
13640 | EVP_PKEY_get0_RSA \ | ||
13641 | EVP_MD_CTX_new \ | ||
13642 | EVP_MD_CTX_free \ | ||
13643 | EVP_chacha20 \ | ||
13644 | |||
13645 | do : | ||
13646 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
13647 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
13648 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
13649 | cat >>confdefs.h <<_ACEOF | ||
13650 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
13651 | _ACEOF | ||
13652 | |||
13653 | fi | ||
13654 | done | ||
13655 | |||
13656 | |||
13657 | if test "x$openssl_engine" = "xyes" ; then | ||
13658 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL ENGINE support" >&5 | ||
13659 | $as_echo_n "checking for OpenSSL ENGINE support... " >&6; } | ||
13660 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13661 | /* end confdefs.h. */ | ||
13662 | |||
13663 | #include <openssl/engine.h> | ||
13664 | |||
13665 | int | ||
13666 | main () | ||
13667 | { | ||
13668 | |||
13669 | ENGINE_load_builtin_engines(); | ||
13670 | ENGINE_register_all_complete(); | ||
13671 | |||
13672 | ; | ||
13673 | return 0; | ||
13674 | } | ||
13675 | _ACEOF | ||
13676 | if ac_fn_c_try_compile "$LINENO"; then : | ||
13677 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13678 | $as_echo "yes" >&6; } | ||
13679 | |||
13680 | $as_echo "#define USE_OPENSSL_ENGINE 1" >>confdefs.h | ||
13681 | |||
13682 | |||
13683 | else | ||
13684 | as_fn_error $? "OpenSSL ENGINE support not found" "$LINENO" 5 | ||
13685 | |||
13686 | fi | ||
13687 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
13688 | fi | ||
13689 | |||
13690 | # Check for OpenSSL without EVP_aes_{192,256}_cbc | ||
13691 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has crippled AES support" >&5 | ||
13692 | $as_echo_n "checking whether OpenSSL has crippled AES support... " >&6; } | ||
13693 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13694 | /* end confdefs.h. */ | ||
13695 | |||
13696 | #include <stdlib.h> | ||
13697 | #include <string.h> | ||
13698 | #include <openssl/evp.h> | ||
13699 | |||
13700 | int | ||
13701 | main () | ||
13702 | { | ||
13703 | |||
13704 | exit(EVP_aes_192_cbc() == NULL || EVP_aes_256_cbc() == NULL); | ||
13705 | |||
13706 | ; | ||
13707 | return 0; | ||
13708 | } | ||
13709 | _ACEOF | ||
13710 | if ac_fn_c_try_link "$LINENO"; then : | ||
13711 | |||
13712 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13713 | $as_echo "no" >&6; } | ||
13714 | |||
13715 | else | ||
13716 | |||
13717 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13718 | $as_echo "yes" >&6; } | ||
13719 | |||
13720 | $as_echo "#define OPENSSL_LOBOTOMISED_AES 1" >>confdefs.h | ||
13721 | |||
13722 | |||
13723 | |||
13724 | fi | ||
13725 | rm -f core conftest.err conftest.$ac_objext \ | ||
13726 | conftest$ac_exeext conftest.$ac_ext | ||
13727 | |||
13728 | # Check for OpenSSL with EVP_aes_*ctr | ||
13729 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES CTR via EVP" >&5 | ||
13730 | $as_echo_n "checking whether OpenSSL has AES CTR via EVP... " >&6; } | ||
13731 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13732 | /* end confdefs.h. */ | ||
13733 | |||
13734 | #include <stdlib.h> | ||
13735 | #include <string.h> | ||
13736 | #include <openssl/evp.h> | ||
13737 | |||
13738 | int | ||
13739 | main () | ||
13740 | { | ||
13741 | |||
13742 | exit(EVP_aes_128_ctr() == NULL || | ||
13743 | EVP_aes_192_cbc() == NULL || | ||
13744 | EVP_aes_256_cbc() == NULL); | ||
13745 | |||
13746 | ; | ||
13747 | return 0; | ||
13748 | } | ||
13749 | _ACEOF | ||
13750 | if ac_fn_c_try_link "$LINENO"; then : | ||
13751 | |||
13752 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13753 | $as_echo "yes" >&6; } | ||
13754 | |||
13755 | $as_echo "#define OPENSSL_HAVE_EVPCTR 1" >>confdefs.h | ||
13756 | |||
13757 | |||
13758 | else | ||
13759 | |||
13760 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13761 | $as_echo "no" >&6; } | ||
13762 | |||
13763 | |||
13764 | fi | ||
13765 | rm -f core conftest.err conftest.$ac_objext \ | ||
13766 | conftest$ac_exeext conftest.$ac_ext | ||
13767 | |||
13768 | # Check for OpenSSL with EVP_aes_*gcm | ||
13769 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has AES GCM via EVP" >&5 | ||
13770 | $as_echo_n "checking whether OpenSSL has AES GCM via EVP... " >&6; } | ||
13771 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13772 | /* end confdefs.h. */ | ||
13773 | |||
13774 | #include <stdlib.h> | ||
13775 | #include <string.h> | ||
13776 | #include <openssl/evp.h> | ||
13777 | |||
13778 | int | ||
13779 | main () | ||
13780 | { | ||
13781 | |||
13782 | exit(EVP_aes_128_gcm() == NULL || | ||
13783 | EVP_aes_256_gcm() == NULL || | ||
13784 | EVP_CTRL_GCM_SET_IV_FIXED == 0 || | ||
13785 | EVP_CTRL_GCM_IV_GEN == 0 || | ||
13786 | EVP_CTRL_GCM_SET_TAG == 0 || | ||
13787 | EVP_CTRL_GCM_GET_TAG == 0 || | ||
13788 | EVP_CIPHER_CTX_ctrl(NULL, 0, 0, NULL) == 0); | ||
13789 | |||
13790 | ; | ||
13791 | return 0; | ||
13792 | } | ||
13793 | _ACEOF | ||
13794 | if ac_fn_c_try_link "$LINENO"; then : | ||
13795 | |||
13796 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13797 | $as_echo "yes" >&6; } | ||
13798 | |||
13799 | $as_echo "#define OPENSSL_HAVE_EVPGCM 1" >>confdefs.h | ||
13800 | |||
13801 | |||
13802 | else | ||
13803 | |||
13804 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13805 | $as_echo "no" >&6; } | ||
13806 | unsupported_algorithms="$unsupported_cipers \ | ||
13807 | aes128-gcm@openssh.com \ | ||
13808 | aes256-gcm@openssh.com" | ||
13809 | |||
13810 | |||
13811 | fi | ||
13812 | rm -f core conftest.err conftest.$ac_objext \ | ||
13813 | conftest$ac_exeext conftest.$ac_ext | ||
13814 | |||
13815 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if EVP_DigestUpdate returns an int" >&5 | ||
13816 | $as_echo_n "checking if EVP_DigestUpdate returns an int... " >&6; } | ||
13817 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13818 | /* end confdefs.h. */ | ||
13819 | |||
13820 | #include <stdlib.h> | ||
13821 | #include <string.h> | ||
13822 | #include <openssl/evp.h> | ||
13823 | |||
13824 | int | ||
13825 | main () | ||
13826 | { | ||
13827 | |||
13828 | if(EVP_DigestUpdate(NULL, NULL,0)) | ||
13829 | exit(0); | ||
13830 | |||
13831 | ; | ||
13832 | return 0; | ||
13833 | } | ||
13834 | _ACEOF | ||
13835 | if ac_fn_c_try_link "$LINENO"; then : | ||
13836 | |||
13837 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
13838 | $as_echo "yes" >&6; } | ||
13839 | |||
13840 | else | ||
13841 | |||
13842 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
13843 | $as_echo "no" >&6; } | ||
13844 | |||
13845 | $as_echo "#define OPENSSL_EVP_DIGESTUPDATE_VOID 1" >>confdefs.h | ||
13846 | |||
13847 | |||
13848 | |||
13849 | fi | ||
13850 | rm -f core conftest.err conftest.$ac_objext \ | ||
13851 | conftest$ac_exeext conftest.$ac_ext | ||
13852 | |||
13853 | # Some systems want crypt() from libcrypt, *not* the version in OpenSSL, | ||
13854 | # because the system crypt() is more featureful. | ||
13855 | if test "x$check_for_libcrypt_before" = "x1"; then | ||
13856 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5 | ||
13857 | $as_echo_n "checking for crypt in -lcrypt... " >&6; } | ||
13858 | if ${ac_cv_lib_crypt_crypt+:} false; then : | ||
13859 | $as_echo_n "(cached) " >&6 | ||
13860 | else | ||
13861 | ac_check_lib_save_LIBS=$LIBS | ||
13862 | LIBS="-lcrypt $LIBS" | ||
13863 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13864 | /* end confdefs.h. */ | ||
13865 | |||
13866 | /* Override any GCC internal prototype to avoid an error. | ||
13867 | Use char because int might match the return type of a GCC | ||
13868 | builtin and then its argument prototype would still apply. */ | ||
13869 | #ifdef __cplusplus | ||
13870 | extern "C" | ||
13871 | #endif | ||
13872 | char crypt (); | ||
13873 | int | ||
13874 | main () | ||
13875 | { | ||
13876 | return crypt (); | ||
13877 | ; | ||
13878 | return 0; | ||
13879 | } | ||
13880 | _ACEOF | ||
13881 | if ac_fn_c_try_link "$LINENO"; then : | ||
13882 | ac_cv_lib_crypt_crypt=yes | ||
13883 | else | ||
13884 | ac_cv_lib_crypt_crypt=no | ||
13885 | fi | ||
13886 | rm -f core conftest.err conftest.$ac_objext \ | ||
13887 | conftest$ac_exeext conftest.$ac_ext | ||
13888 | LIBS=$ac_check_lib_save_LIBS | ||
13889 | fi | ||
13890 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5 | ||
13891 | $as_echo "$ac_cv_lib_crypt_crypt" >&6; } | ||
13892 | if test "x$ac_cv_lib_crypt_crypt" = xyes; then : | ||
13893 | cat >>confdefs.h <<_ACEOF | ||
13894 | #define HAVE_LIBCRYPT 1 | ||
13895 | _ACEOF | ||
13896 | |||
13897 | LIBS="-lcrypt $LIBS" | ||
13898 | |||
13899 | fi | ||
13900 | |||
13901 | fi | ||
13902 | |||
13903 | # Some Linux systems (Slackware) need crypt() from libcrypt, *not* the | ||
13904 | # version in OpenSSL. | ||
13905 | if test "x$check_for_libcrypt_later" = "x1"; then | ||
13906 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5 | ||
13907 | $as_echo_n "checking for crypt in -lcrypt... " >&6; } | ||
13908 | if ${ac_cv_lib_crypt_crypt+:} false; then : | ||
13909 | $as_echo_n "(cached) " >&6 | ||
13910 | else | ||
13911 | ac_check_lib_save_LIBS=$LIBS | ||
13912 | LIBS="-lcrypt $LIBS" | ||
13913 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13914 | /* end confdefs.h. */ | ||
13915 | |||
13916 | /* Override any GCC internal prototype to avoid an error. | ||
13917 | Use char because int might match the return type of a GCC | ||
13918 | builtin and then its argument prototype would still apply. */ | ||
13919 | #ifdef __cplusplus | ||
13920 | extern "C" | ||
13921 | #endif | ||
13922 | char crypt (); | ||
13923 | int | ||
13924 | main () | ||
13925 | { | ||
13926 | return crypt (); | ||
13927 | ; | ||
13928 | return 0; | ||
13929 | } | ||
13930 | _ACEOF | ||
13931 | if ac_fn_c_try_link "$LINENO"; then : | ||
13932 | ac_cv_lib_crypt_crypt=yes | ||
13933 | else | ||
13934 | ac_cv_lib_crypt_crypt=no | ||
13935 | fi | ||
13936 | rm -f core conftest.err conftest.$ac_objext \ | ||
13937 | conftest$ac_exeext conftest.$ac_ext | ||
13938 | LIBS=$ac_check_lib_save_LIBS | ||
13939 | fi | ||
13940 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5 | ||
13941 | $as_echo "$ac_cv_lib_crypt_crypt" >&6; } | ||
13942 | if test "x$ac_cv_lib_crypt_crypt" = xyes; then : | ||
13943 | LIBS="$LIBS -lcrypt" | ||
13944 | fi | ||
13945 | |||
13946 | fi | ||
13947 | for ac_func in crypt DES_crypt | ||
13948 | do : | ||
13949 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
13950 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
13951 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
13952 | cat >>confdefs.h <<_ACEOF | ||
13953 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
13954 | _ACEOF | ||
13955 | |||
13956 | fi | ||
13957 | done | ||
13958 | |||
13959 | |||
13960 | # Check for SHA256, SHA384 and SHA512 support in OpenSSL | ||
13961 | for ac_func in EVP_sha256 EVP_sha384 EVP_sha512 | ||
13962 | do : | ||
13963 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
13964 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
13965 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
13966 | cat >>confdefs.h <<_ACEOF | ||
13967 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
13968 | _ACEOF | ||
13969 | |||
13970 | fi | ||
13971 | done | ||
13972 | |||
13973 | |||
13974 | # Check complete ECC support in OpenSSL | ||
13975 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_X9_62_prime256v1" >&5 | ||
13976 | $as_echo_n "checking whether OpenSSL has NID_X9_62_prime256v1... " >&6; } | ||
13977 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
13978 | /* end confdefs.h. */ | ||
13979 | |||
13980 | #include <openssl/ec.h> | ||
13981 | #include <openssl/ecdh.h> | ||
13982 | #include <openssl/ecdsa.h> | ||
13983 | #include <openssl/evp.h> | ||
13984 | #include <openssl/objects.h> | ||
13985 | #include <openssl/opensslv.h> | ||
13986 | |||
13987 | int | ||
13988 | main () | ||
13989 | { | ||
13990 | |||
13991 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1); | ||
13992 | const EVP_MD *m = EVP_sha256(); /* We need this too */ | ||
13993 | |||
13994 | ; | ||
13995 | return 0; | ||
13996 | } | ||
13997 | _ACEOF | ||
13998 | if ac_fn_c_try_link "$LINENO"; then : | ||
13999 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14000 | $as_echo "yes" >&6; } | ||
14001 | enable_nistp256=1 | ||
14002 | else | ||
14003 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14004 | $as_echo "no" >&6; } | ||
14005 | |||
14006 | fi | ||
14007 | rm -f core conftest.err conftest.$ac_objext \ | ||
14008 | conftest$ac_exeext conftest.$ac_ext | ||
14009 | |||
14010 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp384r1" >&5 | ||
14011 | $as_echo_n "checking whether OpenSSL has NID_secp384r1... " >&6; } | ||
14012 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14013 | /* end confdefs.h. */ | ||
14014 | |||
14015 | #include <openssl/ec.h> | ||
14016 | #include <openssl/ecdh.h> | ||
14017 | #include <openssl/ecdsa.h> | ||
14018 | #include <openssl/evp.h> | ||
14019 | #include <openssl/objects.h> | ||
14020 | #include <openssl/opensslv.h> | ||
14021 | |||
14022 | int | ||
14023 | main () | ||
14024 | { | ||
14025 | |||
14026 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp384r1); | ||
14027 | const EVP_MD *m = EVP_sha384(); /* We need this too */ | ||
14028 | |||
14029 | ; | ||
14030 | return 0; | ||
14031 | } | ||
14032 | _ACEOF | ||
14033 | if ac_fn_c_try_link "$LINENO"; then : | ||
14034 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14035 | $as_echo "yes" >&6; } | ||
14036 | enable_nistp384=1 | ||
14037 | else | ||
14038 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14039 | $as_echo "no" >&6; } | ||
14040 | |||
14041 | fi | ||
14042 | rm -f core conftest.err conftest.$ac_objext \ | ||
14043 | conftest$ac_exeext conftest.$ac_ext | ||
14044 | |||
14045 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL has NID_secp521r1" >&5 | ||
14046 | $as_echo_n "checking whether OpenSSL has NID_secp521r1... " >&6; } | ||
14047 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14048 | /* end confdefs.h. */ | ||
14049 | |||
14050 | #include <openssl/ec.h> | ||
14051 | #include <openssl/ecdh.h> | ||
14052 | #include <openssl/ecdsa.h> | ||
14053 | #include <openssl/evp.h> | ||
14054 | #include <openssl/objects.h> | ||
14055 | #include <openssl/opensslv.h> | ||
14056 | |||
14057 | int | ||
14058 | main () | ||
14059 | { | ||
14060 | |||
14061 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1); | ||
14062 | const EVP_MD *m = EVP_sha512(); /* We need this too */ | ||
14063 | |||
14064 | ; | ||
14065 | return 0; | ||
14066 | } | ||
14067 | _ACEOF | ||
14068 | if ac_fn_c_try_link "$LINENO"; then : | ||
14069 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14070 | $as_echo "yes" >&6; } | ||
14071 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OpenSSL's NID_secp521r1 is functional" >&5 | ||
14072 | $as_echo_n "checking if OpenSSL's NID_secp521r1 is functional... " >&6; } | ||
14073 | if test "$cross_compiling" = yes; then : | ||
14074 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross-compiling: assuming yes" >&5 | ||
14075 | $as_echo "$as_me: WARNING: cross-compiling: assuming yes" >&2;} | ||
14076 | enable_nistp521=1 | ||
14077 | |||
14078 | else | ||
14079 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14080 | /* end confdefs.h. */ | ||
14081 | |||
14082 | #include <stdlib.h> | ||
14083 | #include <openssl/ec.h> | ||
14084 | #include <openssl/ecdh.h> | ||
14085 | #include <openssl/ecdsa.h> | ||
14086 | #include <openssl/evp.h> | ||
14087 | #include <openssl/objects.h> | ||
14088 | #include <openssl/opensslv.h> | ||
14089 | |||
14090 | int | ||
14091 | main () | ||
14092 | { | ||
14093 | |||
14094 | EC_KEY *e = EC_KEY_new_by_curve_name(NID_secp521r1); | ||
14095 | const EVP_MD *m = EVP_sha512(); /* We need this too */ | ||
14096 | exit(e == NULL || m == NULL); | ||
14097 | |||
14098 | ; | ||
14099 | return 0; | ||
14100 | } | ||
14101 | _ACEOF | ||
14102 | if ac_fn_c_try_run "$LINENO"; then : | ||
14103 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14104 | $as_echo "yes" >&6; } | ||
14105 | enable_nistp521=1 | ||
14106 | else | ||
14107 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14108 | $as_echo "no" >&6; } | ||
14109 | fi | ||
14110 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
14111 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
14112 | fi | ||
14113 | |||
14114 | else | ||
14115 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14116 | $as_echo "no" >&6; } | ||
14117 | |||
14118 | fi | ||
14119 | rm -f core conftest.err conftest.$ac_objext \ | ||
14120 | conftest$ac_exeext conftest.$ac_ext | ||
14121 | |||
14122 | COMMENT_OUT_ECC="#no ecc#" | ||
14123 | TEST_SSH_ECC=no | ||
14124 | |||
14125 | if test x$enable_nistp256 = x1 || test x$enable_nistp384 = x1 || \ | ||
14126 | test x$enable_nistp521 = x1; then | ||
14127 | |||
14128 | $as_echo "#define OPENSSL_HAS_ECC 1" >>confdefs.h | ||
14129 | |||
14130 | for ac_func in EC_KEY_METHOD_new | ||
14131 | do : | ||
14132 | ac_fn_c_check_func "$LINENO" "EC_KEY_METHOD_new" "ac_cv_func_EC_KEY_METHOD_new" | ||
14133 | if test "x$ac_cv_func_EC_KEY_METHOD_new" = xyes; then : | ||
14134 | cat >>confdefs.h <<_ACEOF | ||
14135 | #define HAVE_EC_KEY_METHOD_NEW 1 | ||
14136 | _ACEOF | ||
14137 | |||
14138 | fi | ||
14139 | done | ||
14140 | |||
14141 | openssl_ecc=yes | ||
14142 | else | ||
14143 | openssl_ecc=no | ||
14144 | fi | ||
14145 | if test x$enable_nistp256 = x1; then | ||
14146 | |||
14147 | $as_echo "#define OPENSSL_HAS_NISTP256 1" >>confdefs.h | ||
14148 | |||
14149 | TEST_SSH_ECC=yes | ||
14150 | COMMENT_OUT_ECC="" | ||
14151 | else | ||
14152 | unsupported_algorithms="$unsupported_algorithms \ | ||
14153 | ecdsa-sha2-nistp256 \ | ||
14154 | ecdh-sha2-nistp256 \ | ||
14155 | ecdsa-sha2-nistp256-cert-v01@openssh.com" | ||
14156 | fi | ||
14157 | if test x$enable_nistp384 = x1; then | ||
14158 | |||
14159 | $as_echo "#define OPENSSL_HAS_NISTP384 1" >>confdefs.h | ||
14160 | |||
14161 | TEST_SSH_ECC=yes | ||
14162 | COMMENT_OUT_ECC="" | ||
14163 | else | ||
14164 | unsupported_algorithms="$unsupported_algorithms \ | ||
14165 | ecdsa-sha2-nistp384 \ | ||
14166 | ecdh-sha2-nistp384 \ | ||
14167 | ecdsa-sha2-nistp384-cert-v01@openssh.com" | ||
14168 | fi | ||
14169 | if test x$enable_nistp521 = x1; then | ||
14170 | |||
14171 | $as_echo "#define OPENSSL_HAS_NISTP521 1" >>confdefs.h | ||
14172 | |||
14173 | TEST_SSH_ECC=yes | ||
14174 | COMMENT_OUT_ECC="" | ||
14175 | else | ||
14176 | unsupported_algorithms="$unsupported_algorithms \ | ||
14177 | ecdh-sha2-nistp521 \ | ||
14178 | ecdsa-sha2-nistp521 \ | ||
14179 | ecdsa-sha2-nistp521-cert-v01@openssh.com" | ||
14180 | fi | ||
14181 | |||
14182 | |||
14183 | |||
14184 | else | ||
14185 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for crypt in -lcrypt" >&5 | ||
14186 | $as_echo_n "checking for crypt in -lcrypt... " >&6; } | ||
14187 | if ${ac_cv_lib_crypt_crypt+:} false; then : | ||
14188 | $as_echo_n "(cached) " >&6 | ||
14189 | else | ||
14190 | ac_check_lib_save_LIBS=$LIBS | ||
14191 | LIBS="-lcrypt $LIBS" | ||
14192 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14193 | /* end confdefs.h. */ | ||
14194 | |||
14195 | /* Override any GCC internal prototype to avoid an error. | ||
14196 | Use char because int might match the return type of a GCC | ||
14197 | builtin and then its argument prototype would still apply. */ | ||
14198 | #ifdef __cplusplus | ||
14199 | extern "C" | ||
14200 | #endif | ||
14201 | char crypt (); | ||
14202 | int | ||
14203 | main () | ||
14204 | { | ||
14205 | return crypt (); | ||
14206 | ; | ||
14207 | return 0; | ||
14208 | } | ||
14209 | _ACEOF | ||
14210 | if ac_fn_c_try_link "$LINENO"; then : | ||
14211 | ac_cv_lib_crypt_crypt=yes | ||
14212 | else | ||
14213 | ac_cv_lib_crypt_crypt=no | ||
14214 | fi | ||
14215 | rm -f core conftest.err conftest.$ac_objext \ | ||
14216 | conftest$ac_exeext conftest.$ac_ext | ||
14217 | LIBS=$ac_check_lib_save_LIBS | ||
14218 | fi | ||
14219 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypt_crypt" >&5 | ||
14220 | $as_echo "$ac_cv_lib_crypt_crypt" >&6; } | ||
14221 | if test "x$ac_cv_lib_crypt_crypt" = xyes; then : | ||
14222 | LIBS="$LIBS -lcrypt" | ||
14223 | fi | ||
14224 | |||
14225 | for ac_func in crypt | ||
14226 | do : | ||
14227 | ac_fn_c_check_func "$LINENO" "crypt" "ac_cv_func_crypt" | ||
14228 | if test "x$ac_cv_func_crypt" = xyes; then : | ||
14229 | cat >>confdefs.h <<_ACEOF | ||
14230 | #define HAVE_CRYPT 1 | ||
14231 | _ACEOF | ||
14232 | |||
14233 | fi | ||
14234 | done | ||
14235 | |||
14236 | fi | ||
14237 | |||
14238 | # PKCS11/U2F depend on OpenSSL and dlopen(). | ||
14239 | enable_pkcs11=yes | ||
14240 | enable_sk=yes | ||
14241 | if test "x$openssl" != "xyes" ; then | ||
14242 | enable_pkcs11="disabled; missing libcrypto" | ||
14243 | enable_sk="disabled; missing libcrypto" | ||
14244 | fi | ||
14245 | if test "x$openssl_ecc" != "xyes" ; then | ||
14246 | enable_sk="disabled; OpenSSL has no ECC support" | ||
14247 | fi | ||
14248 | if test "x$ac_cv_func_dlopen" != "xyes" ; then | ||
14249 | enable_pkcs11="disabled; missing dlopen(3)" | ||
14250 | enable_sk="disabled; missing dlopen(3)" | ||
14251 | fi | ||
14252 | if test "x$ac_cv_have_decl_RTLD_NOW" != "xyes" ; then | ||
14253 | enable_pkcs11="disabled; missing RTLD_NOW" | ||
14254 | enable_sk="disabled; missing RTLD_NOW" | ||
14255 | fi | ||
14256 | if test ! -z "$disable_pkcs11" ; then | ||
14257 | enable_pkcs11="disabled by user" | ||
14258 | fi | ||
14259 | if test ! -z "$disable_sk" ; then | ||
14260 | enable_sk="disabled by user" | ||
14261 | fi | ||
14262 | |||
14263 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable PKCS11" >&5 | ||
14264 | $as_echo_n "checking whether to enable PKCS11... " >&6; } | ||
14265 | if test "x$enable_pkcs11" = "xyes" ; then | ||
14266 | |||
14267 | $as_echo "#define ENABLE_PKCS11 /**/" >>confdefs.h | ||
14268 | |||
14269 | fi | ||
14270 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_pkcs11" >&5 | ||
14271 | $as_echo "$enable_pkcs11" >&6; } | ||
14272 | |||
14273 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable U2F" >&5 | ||
14274 | $as_echo_n "checking whether to enable U2F... " >&6; } | ||
14275 | if test "x$enable_sk" = "xyes" ; then | ||
14276 | |||
14277 | $as_echo "#define ENABLE_SK /**/" >>confdefs.h | ||
14278 | |||
14279 | SK_DUMMY_LIBRARY=regress/misc/sk-dummy/sk-dummy.so | ||
14280 | |||
14281 | else | ||
14282 | # Do not try to build sk-dummy library. | ||
14283 | SK_DUMMY_LIBRARY="" | ||
14284 | |||
14285 | fi | ||
14286 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_sk" >&5 | ||
14287 | $as_echo "$enable_sk" >&6; } | ||
14288 | |||
14289 | # Now check for built-in security key support. | ||
14290 | if test "x$enable_sk" = "xyes" -a "x$enable_sk_internal" = "xyes" ; then | ||
14291 | if test -n "$ac_tool_prefix"; then | ||
14292 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. | ||
14293 | set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 | ||
14294 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
14295 | $as_echo_n "checking for $ac_word... " >&6; } | ||
14296 | if ${ac_cv_path_PKGCONFIG+:} false; then : | ||
14297 | $as_echo_n "(cached) " >&6 | ||
14298 | else | ||
14299 | case $PKGCONFIG in | ||
14300 | [\\/]* | ?:[\\/]*) | ||
14301 | ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path. | ||
14302 | ;; | ||
14303 | *) | ||
14304 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
14305 | for as_dir in $PATH | ||
14306 | do | ||
14307 | IFS=$as_save_IFS | ||
14308 | test -z "$as_dir" && as_dir=. | ||
14309 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
14310 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
14311 | ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
14312 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
14313 | break 2 | ||
14314 | fi | ||
14315 | done | ||
14316 | done | ||
14317 | IFS=$as_save_IFS | ||
14318 | |||
14319 | ;; | ||
14320 | esac | ||
14321 | fi | ||
14322 | PKGCONFIG=$ac_cv_path_PKGCONFIG | ||
14323 | if test -n "$PKGCONFIG"; then | ||
14324 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5 | ||
14325 | $as_echo "$PKGCONFIG" >&6; } | ||
14326 | else | ||
14327 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14328 | $as_echo "no" >&6; } | ||
14329 | fi | ||
14330 | |||
14331 | |||
14332 | fi | ||
14333 | if test -z "$ac_cv_path_PKGCONFIG"; then | ||
14334 | ac_pt_PKGCONFIG=$PKGCONFIG | ||
14335 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
14336 | set dummy pkg-config; ac_word=$2 | ||
14337 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
14338 | $as_echo_n "checking for $ac_word... " >&6; } | ||
14339 | if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then : | ||
14340 | $as_echo_n "(cached) " >&6 | ||
14341 | else | ||
14342 | case $ac_pt_PKGCONFIG in | ||
14343 | [\\/]* | ?:[\\/]*) | ||
14344 | ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path. | ||
14345 | ;; | ||
14346 | *) | ||
14347 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
14348 | for as_dir in $PATH | ||
14349 | do | ||
14350 | IFS=$as_save_IFS | ||
14351 | test -z "$as_dir" && as_dir=. | ||
14352 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
14353 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
14354 | ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" | ||
14355 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
14356 | break 2 | ||
14357 | fi | ||
14358 | done | ||
14359 | done | ||
14360 | IFS=$as_save_IFS | ||
14361 | |||
14362 | ;; | ||
14363 | esac | ||
14364 | fi | ||
14365 | ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG | ||
14366 | if test -n "$ac_pt_PKGCONFIG"; then | ||
14367 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5 | ||
14368 | $as_echo "$ac_pt_PKGCONFIG" >&6; } | ||
14369 | else | ||
14370 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14371 | $as_echo "no" >&6; } | ||
14372 | fi | ||
14373 | |||
14374 | if test "x$ac_pt_PKGCONFIG" = x; then | ||
14375 | PKGCONFIG="no" | ||
14376 | else | ||
14377 | case $cross_compiling:$ac_tool_warned in | ||
14378 | yes:) | ||
14379 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
14380 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
14381 | ac_tool_warned=yes ;; | ||
14382 | esac | ||
14383 | PKGCONFIG=$ac_pt_PKGCONFIG | ||
14384 | fi | ||
14385 | else | ||
14386 | PKGCONFIG="$ac_cv_path_PKGCONFIG" | ||
14387 | fi | ||
14388 | |||
14389 | use_pkgconfig_for_libfido2= | ||
14390 | if test "x$PKGCONFIG" != "xno"; then | ||
14391 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $PKGCONFIG knows about libfido2" >&5 | ||
14392 | $as_echo_n "checking if $PKGCONFIG knows about libfido2... " >&6; } | ||
14393 | if "$PKGCONFIG" libfido2; then | ||
14394 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14395 | $as_echo "yes" >&6; } | ||
14396 | use_pkgconfig_for_libfido2=yes | ||
14397 | else | ||
14398 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14399 | $as_echo "no" >&6; } | ||
14400 | fi | ||
14401 | fi | ||
14402 | if test "x$use_pkgconfig_for_libfido2" = "xyes"; then | ||
14403 | LIBFIDO2=`$PKGCONFIG --libs libfido2` | ||
14404 | CPPFLAGS="$CPPFLAGS `$PKGCONFIG --cflags libfido2`" | ||
14405 | else | ||
14406 | LIBFIDO2="-lfido2 -lcbor" | ||
14407 | fi | ||
14408 | OTHERLIBS=`echo $LIBFIDO2 | sed 's/-lfido2//'` | ||
14409 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fido_init in -lfido2" >&5 | ||
14410 | $as_echo_n "checking for fido_init in -lfido2... " >&6; } | ||
14411 | if ${ac_cv_lib_fido2_fido_init+:} false; then : | ||
14412 | $as_echo_n "(cached) " >&6 | ||
14413 | else | ||
14414 | ac_check_lib_save_LIBS=$LIBS | ||
14415 | LIBS="-lfido2 $OTHERLIBS | ||
14416 | $LIBS" | ||
14417 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14418 | /* end confdefs.h. */ | ||
14419 | |||
14420 | /* Override any GCC internal prototype to avoid an error. | ||
14421 | Use char because int might match the return type of a GCC | ||
14422 | builtin and then its argument prototype would still apply. */ | ||
14423 | #ifdef __cplusplus | ||
14424 | extern "C" | ||
14425 | #endif | ||
14426 | char fido_init (); | ||
14427 | int | ||
14428 | main () | ||
14429 | { | ||
14430 | return fido_init (); | ||
14431 | ; | ||
14432 | return 0; | ||
14433 | } | ||
14434 | _ACEOF | ||
14435 | if ac_fn_c_try_link "$LINENO"; then : | ||
14436 | ac_cv_lib_fido2_fido_init=yes | ||
14437 | else | ||
14438 | ac_cv_lib_fido2_fido_init=no | ||
14439 | fi | ||
14440 | rm -f core conftest.err conftest.$ac_objext \ | ||
14441 | conftest$ac_exeext conftest.$ac_ext | ||
14442 | LIBS=$ac_check_lib_save_LIBS | ||
14443 | fi | ||
14444 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fido2_fido_init" >&5 | ||
14445 | $as_echo "$ac_cv_lib_fido2_fido_init" >&6; } | ||
14446 | if test "x$ac_cv_lib_fido2_fido_init" = xyes; then : | ||
14447 | |||
14448 | |||
14449 | |||
14450 | $as_echo "#define ENABLE_SK_INTERNAL /**/" >>confdefs.h | ||
14451 | |||
14452 | enable_sk="built-in" | ||
14453 | |||
14454 | else | ||
14455 | as_fn_error $? "no usable libfido2 found" "$LINENO" 5 | ||
14456 | fi | ||
14457 | |||
14458 | saved_LIBS="$LIBS" | ||
14459 | LIBS="$LIBS $LIBFIDO2" | ||
14460 | for ac_func in \ | ||
14461 | fido_cred_prot \ | ||
14462 | fido_cred_set_prot \ | ||
14463 | fido_dev_get_touch_begin \ | ||
14464 | fido_dev_get_touch_status \ | ||
14465 | fido_dev_supports_cred_prot \ | ||
14466 | |||
14467 | do : | ||
14468 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
14469 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
14470 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
14471 | cat >>confdefs.h <<_ACEOF | ||
14472 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
14473 | _ACEOF | ||
14474 | |||
14475 | fi | ||
14476 | done | ||
14477 | |||
14478 | LIBS="$saved_LIBS" | ||
14479 | ac_fn_c_check_header_mongrel "$LINENO" "fido.h" "ac_cv_header_fido_h" "$ac_includes_default" | ||
14480 | if test "x$ac_cv_header_fido_h" = xyes; then : | ||
14481 | |||
14482 | else | ||
14483 | as_fn_error $? "missing fido.h from libfido2" "$LINENO" 5 | ||
14484 | fi | ||
14485 | |||
14486 | |||
14487 | ac_fn_c_check_header_compile "$LINENO" "fido/credman.h" "ac_cv_header_fido_credman_h" "#include <fido.h> | ||
14488 | |||
14489 | " | ||
14490 | if test "x$ac_cv_header_fido_credman_h" = xyes; then : | ||
14491 | |||
14492 | else | ||
14493 | as_fn_error $? "missing fido/credman.h from libfido2" "$LINENO" 5 | ||
14494 | fi | ||
14495 | |||
14496 | |||
14497 | fi | ||
14498 | |||
14499 | for ac_func in \ | ||
14500 | arc4random \ | ||
14501 | arc4random_buf \ | ||
14502 | arc4random_stir \ | ||
14503 | arc4random_uniform \ | ||
14504 | |||
14505 | do : | ||
14506 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
14507 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
14508 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
14509 | cat >>confdefs.h <<_ACEOF | ||
14510 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
14511 | _ACEOF | ||
14512 | |||
14513 | fi | ||
14514 | done | ||
14515 | |||
14516 | |||
14517 | saved_LIBS="$LIBS" | ||
14518 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ia_openinfo in -liaf" >&5 | ||
14519 | $as_echo_n "checking for ia_openinfo in -liaf... " >&6; } | ||
14520 | if ${ac_cv_lib_iaf_ia_openinfo+:} false; then : | ||
14521 | $as_echo_n "(cached) " >&6 | ||
14522 | else | ||
14523 | ac_check_lib_save_LIBS=$LIBS | ||
14524 | LIBS="-liaf $LIBS" | ||
14525 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14526 | /* end confdefs.h. */ | ||
14527 | |||
14528 | /* Override any GCC internal prototype to avoid an error. | ||
14529 | Use char because int might match the return type of a GCC | ||
14530 | builtin and then its argument prototype would still apply. */ | ||
14531 | #ifdef __cplusplus | ||
14532 | extern "C" | ||
14533 | #endif | ||
14534 | char ia_openinfo (); | ||
14535 | int | ||
14536 | main () | ||
14537 | { | ||
14538 | return ia_openinfo (); | ||
14539 | ; | ||
14540 | return 0; | ||
14541 | } | ||
14542 | _ACEOF | ||
14543 | if ac_fn_c_try_link "$LINENO"; then : | ||
14544 | ac_cv_lib_iaf_ia_openinfo=yes | ||
14545 | else | ||
14546 | ac_cv_lib_iaf_ia_openinfo=no | ||
14547 | fi | ||
14548 | rm -f core conftest.err conftest.$ac_objext \ | ||
14549 | conftest$ac_exeext conftest.$ac_ext | ||
14550 | LIBS=$ac_check_lib_save_LIBS | ||
14551 | fi | ||
14552 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iaf_ia_openinfo" >&5 | ||
14553 | $as_echo "$ac_cv_lib_iaf_ia_openinfo" >&6; } | ||
14554 | if test "x$ac_cv_lib_iaf_ia_openinfo" = xyes; then : | ||
14555 | |||
14556 | LIBS="$LIBS -liaf" | ||
14557 | for ac_func in set_id | ||
14558 | do : | ||
14559 | ac_fn_c_check_func "$LINENO" "set_id" "ac_cv_func_set_id" | ||
14560 | if test "x$ac_cv_func_set_id" = xyes; then : | ||
14561 | cat >>confdefs.h <<_ACEOF | ||
14562 | #define HAVE_SET_ID 1 | ||
14563 | _ACEOF | ||
14564 | SSHDLIBS="$SSHDLIBS -liaf" | ||
14565 | |||
14566 | $as_echo "#define HAVE_LIBIAF 1" >>confdefs.h | ||
14567 | |||
14568 | |||
14569 | fi | ||
14570 | done | ||
14571 | |||
14572 | |||
14573 | fi | ||
14574 | |||
14575 | LIBS="$saved_LIBS" | ||
14576 | |||
14577 | ### Configure cryptographic random number support | ||
14578 | |||
14579 | # Check whether OpenSSL seeds itself | ||
14580 | if test "x$openssl" = "xyes" ; then | ||
14581 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL's PRNG is internally seeded" >&5 | ||
14582 | $as_echo_n "checking whether OpenSSL's PRNG is internally seeded... " >&6; } | ||
14583 | if test "$cross_compiling" = yes; then : | ||
14584 | |||
14585 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
14586 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
14587 | # This is safe, since we will fatal() at runtime if | ||
14588 | # OpenSSL is not seeded correctly. | ||
14589 | OPENSSL_SEEDS_ITSELF=yes | ||
14590 | |||
14591 | |||
14592 | else | ||
14593 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14594 | /* end confdefs.h. */ | ||
14595 | |||
14596 | #include <stdlib.h> | ||
14597 | #include <string.h> | ||
14598 | #include <openssl/rand.h> | ||
14599 | |||
14600 | int | ||
14601 | main () | ||
14602 | { | ||
14603 | |||
14604 | exit(RAND_status() == 1 ? 0 : 1); | ||
14605 | |||
14606 | ; | ||
14607 | return 0; | ||
14608 | } | ||
14609 | _ACEOF | ||
14610 | if ac_fn_c_try_run "$LINENO"; then : | ||
14611 | |||
14612 | OPENSSL_SEEDS_ITSELF=yes | ||
14613 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14614 | $as_echo "yes" >&6; } | ||
14615 | |||
14616 | else | ||
14617 | |||
14618 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14619 | $as_echo "no" >&6; } | ||
14620 | |||
14621 | fi | ||
14622 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
14623 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
14624 | fi | ||
14625 | |||
14626 | fi | ||
14627 | |||
14628 | # PRNGD TCP socket | ||
14629 | |||
14630 | # Check whether --with-prngd-port was given. | ||
14631 | if test "${with_prngd_port+set}" = set; then : | ||
14632 | withval=$with_prngd_port; | ||
14633 | case "$withval" in | ||
14634 | no) | ||
14635 | withval="" | ||
14636 | ;; | ||
14637 | [0-9]*) | ||
14638 | ;; | ||
14639 | *) | ||
14640 | as_fn_error $? "You must specify a numeric port number for --with-prngd-port" "$LINENO" 5 | ||
14641 | ;; | ||
14642 | esac | ||
14643 | if test ! -z "$withval" ; then | ||
14644 | PRNGD_PORT="$withval" | ||
14645 | |||
14646 | cat >>confdefs.h <<_ACEOF | ||
14647 | #define PRNGD_PORT $PRNGD_PORT | ||
14648 | _ACEOF | ||
14649 | |||
14650 | fi | ||
14651 | |||
14652 | |||
14653 | fi | ||
14654 | |||
14655 | |||
14656 | # PRNGD Unix domain socket | ||
14657 | |||
14658 | # Check whether --with-prngd-socket was given. | ||
14659 | if test "${with_prngd_socket+set}" = set; then : | ||
14660 | withval=$with_prngd_socket; | ||
14661 | case "$withval" in | ||
14662 | yes) | ||
14663 | withval="/var/run/egd-pool" | ||
14664 | ;; | ||
14665 | no) | ||
14666 | withval="" | ||
14667 | ;; | ||
14668 | /*) | ||
14669 | ;; | ||
14670 | *) | ||
14671 | as_fn_error $? "You must specify an absolute path to the entropy socket" "$LINENO" 5 | ||
14672 | ;; | ||
14673 | esac | ||
14674 | |||
14675 | if test ! -z "$withval" ; then | ||
14676 | if test ! -z "$PRNGD_PORT" ; then | ||
14677 | as_fn_error $? "You may not specify both a PRNGD/EGD port and socket" "$LINENO" 5 | ||
14678 | fi | ||
14679 | if test ! -r "$withval" ; then | ||
14680 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Entropy socket is not readable" >&5 | ||
14681 | $as_echo "$as_me: WARNING: Entropy socket is not readable" >&2;} | ||
14682 | fi | ||
14683 | PRNGD_SOCKET="$withval" | ||
14684 | |||
14685 | cat >>confdefs.h <<_ACEOF | ||
14686 | #define PRNGD_SOCKET "$PRNGD_SOCKET" | ||
14687 | _ACEOF | ||
14688 | |||
14689 | fi | ||
14690 | |||
14691 | else | ||
14692 | |||
14693 | # Check for existing socket only if we don't have a random device already | ||
14694 | if test "x$OPENSSL_SEEDS_ITSELF" != "xyes" ; then | ||
14695 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PRNGD/EGD socket" >&5 | ||
14696 | $as_echo_n "checking for PRNGD/EGD socket... " >&6; } | ||
14697 | # Insert other locations here | ||
14698 | for sock in /var/run/egd-pool /dev/egd-pool /etc/entropy; do | ||
14699 | if test -r $sock && $TEST_MINUS_S_SH -c "test -S $sock -o -p $sock" ; then | ||
14700 | PRNGD_SOCKET="$sock" | ||
14701 | cat >>confdefs.h <<_ACEOF | ||
14702 | #define PRNGD_SOCKET "$PRNGD_SOCKET" | ||
14703 | _ACEOF | ||
14704 | |||
14705 | break; | ||
14706 | fi | ||
14707 | done | ||
14708 | if test ! -z "$PRNGD_SOCKET" ; then | ||
14709 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PRNGD_SOCKET" >&5 | ||
14710 | $as_echo "$PRNGD_SOCKET" >&6; } | ||
14711 | else | ||
14712 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
14713 | $as_echo "not found" >&6; } | ||
14714 | fi | ||
14715 | fi | ||
14716 | |||
14717 | |||
14718 | fi | ||
14719 | |||
14720 | |||
14721 | # Which randomness source do we use? | ||
14722 | if test ! -z "$PRNGD_PORT" ; then | ||
14723 | RAND_MSG="PRNGd port $PRNGD_PORT" | ||
14724 | elif test ! -z "$PRNGD_SOCKET" ; then | ||
14725 | RAND_MSG="PRNGd socket $PRNGD_SOCKET" | ||
14726 | elif test ! -z "$OPENSSL_SEEDS_ITSELF" ; then | ||
14727 | |||
14728 | $as_echo "#define OPENSSL_PRNG_ONLY 1" >>confdefs.h | ||
14729 | |||
14730 | RAND_MSG="OpenSSL internal ONLY" | ||
14731 | elif test "x$openssl" = "xno" ; then | ||
14732 | { $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 | ||
14733 | $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;} | ||
14734 | else | ||
14735 | 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 | ||
14736 | fi | ||
14737 | |||
14738 | # Check for PAM libs | ||
14739 | PAM_MSG="no" | ||
14740 | |||
14741 | # Check whether --with-pam was given. | ||
14742 | if test "${with_pam+set}" = set; then : | ||
14743 | withval=$with_pam; | ||
14744 | if test "x$withval" != "xno" ; then | ||
14745 | if test "x$ac_cv_header_security_pam_appl_h" != "xyes" && \ | ||
14746 | test "x$ac_cv_header_pam_pam_appl_h" != "xyes" ; then | ||
14747 | as_fn_error $? "PAM headers not found" "$LINENO" 5 | ||
14748 | fi | ||
14749 | |||
14750 | saved_LIBS="$LIBS" | ||
14751 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 | ||
14752 | $as_echo_n "checking for dlopen in -ldl... " >&6; } | ||
14753 | if ${ac_cv_lib_dl_dlopen+:} false; then : | ||
14754 | $as_echo_n "(cached) " >&6 | ||
14755 | else | ||
14756 | ac_check_lib_save_LIBS=$LIBS | ||
14757 | LIBS="-ldl $LIBS" | ||
14758 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14759 | /* end confdefs.h. */ | ||
14760 | |||
14761 | /* Override any GCC internal prototype to avoid an error. | ||
14762 | Use char because int might match the return type of a GCC | ||
14763 | builtin and then its argument prototype would still apply. */ | ||
14764 | #ifdef __cplusplus | ||
14765 | extern "C" | ||
14766 | #endif | ||
14767 | char dlopen (); | ||
14768 | int | ||
14769 | main () | ||
14770 | { | ||
14771 | return dlopen (); | ||
14772 | ; | ||
14773 | return 0; | ||
14774 | } | ||
14775 | _ACEOF | ||
14776 | if ac_fn_c_try_link "$LINENO"; then : | ||
14777 | ac_cv_lib_dl_dlopen=yes | ||
14778 | else | ||
14779 | ac_cv_lib_dl_dlopen=no | ||
14780 | fi | ||
14781 | rm -f core conftest.err conftest.$ac_objext \ | ||
14782 | conftest$ac_exeext conftest.$ac_ext | ||
14783 | LIBS=$ac_check_lib_save_LIBS | ||
14784 | fi | ||
14785 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 | ||
14786 | $as_echo "$ac_cv_lib_dl_dlopen" >&6; } | ||
14787 | if test "x$ac_cv_lib_dl_dlopen" = xyes; then : | ||
14788 | cat >>confdefs.h <<_ACEOF | ||
14789 | #define HAVE_LIBDL 1 | ||
14790 | _ACEOF | ||
14791 | |||
14792 | LIBS="-ldl $LIBS" | ||
14793 | |||
14794 | fi | ||
14795 | |||
14796 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pam_set_item in -lpam" >&5 | ||
14797 | $as_echo_n "checking for pam_set_item in -lpam... " >&6; } | ||
14798 | if ${ac_cv_lib_pam_pam_set_item+:} false; then : | ||
14799 | $as_echo_n "(cached) " >&6 | ||
14800 | else | ||
14801 | ac_check_lib_save_LIBS=$LIBS | ||
14802 | LIBS="-lpam $LIBS" | ||
14803 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14804 | /* end confdefs.h. */ | ||
14805 | |||
14806 | /* Override any GCC internal prototype to avoid an error. | ||
14807 | Use char because int might match the return type of a GCC | ||
14808 | builtin and then its argument prototype would still apply. */ | ||
14809 | #ifdef __cplusplus | ||
14810 | extern "C" | ||
14811 | #endif | ||
14812 | char pam_set_item (); | ||
14813 | int | ||
14814 | main () | ||
14815 | { | ||
14816 | return pam_set_item (); | ||
14817 | ; | ||
14818 | return 0; | ||
14819 | } | ||
14820 | _ACEOF | ||
14821 | if ac_fn_c_try_link "$LINENO"; then : | ||
14822 | ac_cv_lib_pam_pam_set_item=yes | ||
14823 | else | ||
14824 | ac_cv_lib_pam_pam_set_item=no | ||
14825 | fi | ||
14826 | rm -f core conftest.err conftest.$ac_objext \ | ||
14827 | conftest$ac_exeext conftest.$ac_ext | ||
14828 | LIBS=$ac_check_lib_save_LIBS | ||
14829 | fi | ||
14830 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pam_pam_set_item" >&5 | ||
14831 | $as_echo "$ac_cv_lib_pam_pam_set_item" >&6; } | ||
14832 | if test "x$ac_cv_lib_pam_pam_set_item" = xyes; then : | ||
14833 | cat >>confdefs.h <<_ACEOF | ||
14834 | #define HAVE_LIBPAM 1 | ||
14835 | _ACEOF | ||
14836 | |||
14837 | LIBS="-lpam $LIBS" | ||
14838 | |||
14839 | else | ||
14840 | as_fn_error $? "*** libpam missing" "$LINENO" 5 | ||
14841 | fi | ||
14842 | |||
14843 | for ac_func in pam_getenvlist | ||
14844 | do : | ||
14845 | ac_fn_c_check_func "$LINENO" "pam_getenvlist" "ac_cv_func_pam_getenvlist" | ||
14846 | if test "x$ac_cv_func_pam_getenvlist" = xyes; then : | ||
14847 | cat >>confdefs.h <<_ACEOF | ||
14848 | #define HAVE_PAM_GETENVLIST 1 | ||
14849 | _ACEOF | ||
14850 | |||
14851 | fi | ||
14852 | done | ||
14853 | |||
14854 | for ac_func in pam_putenv | ||
14855 | do : | ||
14856 | ac_fn_c_check_func "$LINENO" "pam_putenv" "ac_cv_func_pam_putenv" | ||
14857 | if test "x$ac_cv_func_pam_putenv" = xyes; then : | ||
14858 | cat >>confdefs.h <<_ACEOF | ||
14859 | #define HAVE_PAM_PUTENV 1 | ||
14860 | _ACEOF | ||
14861 | |||
14862 | fi | ||
14863 | done | ||
14864 | |||
14865 | LIBS="$saved_LIBS" | ||
14866 | |||
14867 | PAM_MSG="yes" | ||
14868 | |||
14869 | SSHDLIBS="$SSHDLIBS -lpam" | ||
14870 | |||
14871 | $as_echo "#define USE_PAM 1" >>confdefs.h | ||
14872 | |||
14873 | |||
14874 | if test $ac_cv_lib_dl_dlopen = yes; then | ||
14875 | case "$LIBS" in | ||
14876 | *-ldl*) | ||
14877 | # libdl already in LIBS | ||
14878 | ;; | ||
14879 | *) | ||
14880 | SSHDLIBS="$SSHDLIBS -ldl" | ||
14881 | ;; | ||
14882 | esac | ||
14883 | fi | ||
14884 | fi | ||
14885 | |||
14886 | |||
14887 | fi | ||
14888 | |||
14889 | |||
14890 | |||
14891 | # Check whether --with-pam-service was given. | ||
14892 | if test "${with_pam_service+set}" = set; then : | ||
14893 | withval=$with_pam_service; | ||
14894 | if test "x$withval" != "xno" && \ | ||
14895 | test "x$withval" != "xyes" ; then | ||
14896 | |||
14897 | cat >>confdefs.h <<_ACEOF | ||
14898 | #define SSHD_PAM_SERVICE "$withval" | ||
14899 | _ACEOF | ||
14900 | |||
14901 | fi | ||
14902 | |||
14903 | |||
14904 | fi | ||
14905 | |||
14906 | |||
14907 | # Check for older PAM | ||
14908 | if test "x$PAM_MSG" = "xyes" ; then | ||
14909 | # Check PAM strerror arguments (old PAM) | ||
14910 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pam_strerror takes only one argument" >&5 | ||
14911 | $as_echo_n "checking whether pam_strerror takes only one argument... " >&6; } | ||
14912 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14913 | /* end confdefs.h. */ | ||
14914 | |||
14915 | #include <stdlib.h> | ||
14916 | #if defined(HAVE_SECURITY_PAM_APPL_H) | ||
14917 | #include <security/pam_appl.h> | ||
14918 | #elif defined (HAVE_PAM_PAM_APPL_H) | ||
14919 | #include <pam/pam_appl.h> | ||
14920 | #endif | ||
14921 | |||
14922 | int | ||
14923 | main () | ||
14924 | { | ||
14925 | |||
14926 | (void)pam_strerror((pam_handle_t *)NULL, -1); | ||
14927 | |||
14928 | ; | ||
14929 | return 0; | ||
14930 | } | ||
14931 | _ACEOF | ||
14932 | if ac_fn_c_try_compile "$LINENO"; then : | ||
14933 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
14934 | $as_echo "no" >&6; } | ||
14935 | else | ||
14936 | |||
14937 | |||
14938 | $as_echo "#define HAVE_OLD_PAM 1" >>confdefs.h | ||
14939 | |||
14940 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
14941 | $as_echo "yes" >&6; } | ||
14942 | PAM_MSG="yes (old library)" | ||
14943 | |||
14944 | |||
14945 | fi | ||
14946 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
14947 | fi | ||
14948 | |||
14949 | case "$host" in | ||
14950 | *-*-cygwin*) | ||
14951 | SSH_PRIVSEP_USER=CYGWIN_SSH_PRIVSEP_USER | ||
14952 | ;; | ||
14953 | *) | ||
14954 | SSH_PRIVSEP_USER=sshd | ||
14955 | ;; | ||
14956 | esac | ||
14957 | |||
14958 | # Check whether --with-privsep-user was given. | ||
14959 | if test "${with_privsep_user+set}" = set; then : | ||
14960 | withval=$with_privsep_user; | ||
14961 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
14962 | test "x${withval}" != "xyes"; then | ||
14963 | SSH_PRIVSEP_USER=$withval | ||
14964 | fi | ||
14965 | |||
14966 | |||
14967 | fi | ||
14968 | |||
14969 | if test "x$SSH_PRIVSEP_USER" = "xCYGWIN_SSH_PRIVSEP_USER" ; then | ||
14970 | |||
14971 | cat >>confdefs.h <<_ACEOF | ||
14972 | #define SSH_PRIVSEP_USER CYGWIN_SSH_PRIVSEP_USER | ||
14973 | _ACEOF | ||
14974 | |||
14975 | else | ||
14976 | |||
14977 | cat >>confdefs.h <<_ACEOF | ||
14978 | #define SSH_PRIVSEP_USER "$SSH_PRIVSEP_USER" | ||
14979 | _ACEOF | ||
14980 | |||
14981 | fi | ||
14982 | |||
14983 | |||
14984 | if test "x$have_linux_no_new_privs" = "x1" ; then | ||
14985 | ac_fn_c_check_decl "$LINENO" "SECCOMP_MODE_FILTER" "ac_cv_have_decl_SECCOMP_MODE_FILTER" " | ||
14986 | #include <sys/types.h> | ||
14987 | #include <linux/seccomp.h> | ||
14988 | |||
14989 | " | ||
14990 | if test "x$ac_cv_have_decl_SECCOMP_MODE_FILTER" = xyes; then : | ||
14991 | have_seccomp_filter=1 | ||
14992 | fi | ||
14993 | |||
14994 | fi | ||
14995 | if test "x$have_seccomp_filter" = "x1" ; then | ||
14996 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking kernel for seccomp_filter support" >&5 | ||
14997 | $as_echo_n "checking kernel for seccomp_filter support... " >&6; } | ||
14998 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
14999 | /* end confdefs.h. */ | ||
15000 | |||
15001 | #include <errno.h> | ||
15002 | #include <elf.h> | ||
15003 | #include <linux/audit.h> | ||
15004 | #include <linux/seccomp.h> | ||
15005 | #include <stdlib.h> | ||
15006 | #include <sys/prctl.h> | ||
15007 | |||
15008 | int | ||
15009 | main () | ||
15010 | { | ||
15011 | int i = $seccomp_audit_arch; | ||
15012 | errno = 0; | ||
15013 | prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0); | ||
15014 | exit(errno == EFAULT ? 0 : 1); | ||
15015 | ; | ||
15016 | return 0; | ||
15017 | } | ||
15018 | _ACEOF | ||
15019 | if ac_fn_c_try_link "$LINENO"; then : | ||
15020 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15021 | $as_echo "yes" >&6; } | ||
15022 | else | ||
15023 | |||
15024 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15025 | $as_echo "no" >&6; } | ||
15026 | # Disable seccomp filter as a target | ||
15027 | have_seccomp_filter=0 | ||
15028 | |||
15029 | |||
15030 | fi | ||
15031 | rm -f core conftest.err conftest.$ac_objext \ | ||
15032 | conftest$ac_exeext conftest.$ac_ext | ||
15033 | fi | ||
15034 | |||
15035 | # Decide which sandbox style to use | ||
15036 | sandbox_arg="" | ||
15037 | |||
15038 | # Check whether --with-sandbox was given. | ||
15039 | if test "${with_sandbox+set}" = set; then : | ||
15040 | withval=$with_sandbox; | ||
15041 | if test "x$withval" = "xyes" ; then | ||
15042 | sandbox_arg="" | ||
15043 | else | ||
15044 | sandbox_arg="$withval" | ||
15045 | fi | ||
15046 | |||
15047 | |||
15048 | fi | ||
15049 | |||
15050 | |||
15051 | # Some platforms (seems to be the ones that have a kernel poll(2)-type | ||
15052 | # function with which they implement select(2)) use an extra file descriptor | ||
15053 | # when calling select(2), which means we can't use the rlimit sandbox. | ||
15054 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if select works with descriptor rlimit" >&5 | ||
15055 | $as_echo_n "checking if select works with descriptor rlimit... " >&6; } | ||
15056 | if test "$cross_compiling" = yes; then : | ||
15057 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
15058 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
15059 | select_works_with_rlimit=yes | ||
15060 | |||
15061 | else | ||
15062 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15063 | /* end confdefs.h. */ | ||
15064 | |||
15065 | #include <sys/types.h> | ||
15066 | #ifdef HAVE_SYS_TIME_H | ||
15067 | # include <sys/time.h> | ||
15068 | #endif | ||
15069 | #include <sys/resource.h> | ||
15070 | #ifdef HAVE_SYS_SELECT_H | ||
15071 | # include <sys/select.h> | ||
15072 | #endif | ||
15073 | #include <errno.h> | ||
15074 | #include <fcntl.h> | ||
15075 | #include <stdlib.h> | ||
15076 | |||
15077 | int | ||
15078 | main () | ||
15079 | { | ||
15080 | |||
15081 | struct rlimit rl_zero; | ||
15082 | int fd, r; | ||
15083 | fd_set fds; | ||
15084 | struct timeval tv; | ||
15085 | |||
15086 | fd = open("/dev/null", O_RDONLY); | ||
15087 | FD_ZERO(&fds); | ||
15088 | FD_SET(fd, &fds); | ||
15089 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
15090 | setrlimit(RLIMIT_FSIZE, &rl_zero); | ||
15091 | setrlimit(RLIMIT_NOFILE, &rl_zero); | ||
15092 | tv.tv_sec = 1; | ||
15093 | tv.tv_usec = 0; | ||
15094 | r = select(fd+1, &fds, NULL, NULL, &tv); | ||
15095 | exit (r == -1 ? 1 : 0); | ||
15096 | |||
15097 | ; | ||
15098 | return 0; | ||
15099 | } | ||
15100 | _ACEOF | ||
15101 | if ac_fn_c_try_run "$LINENO"; then : | ||
15102 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15103 | $as_echo "yes" >&6; } | ||
15104 | select_works_with_rlimit=yes | ||
15105 | else | ||
15106 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15107 | $as_echo "no" >&6; } | ||
15108 | select_works_with_rlimit=no | ||
15109 | fi | ||
15110 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
15111 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
15112 | fi | ||
15113 | |||
15114 | |||
15115 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit(RLIMIT_NOFILE,{0,0}) works" >&5 | ||
15116 | $as_echo_n "checking if setrlimit(RLIMIT_NOFILE,{0,0}) works... " >&6; } | ||
15117 | if test "$cross_compiling" = yes; then : | ||
15118 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
15119 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
15120 | rlimit_nofile_zero_works=yes | ||
15121 | |||
15122 | else | ||
15123 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15124 | /* end confdefs.h. */ | ||
15125 | |||
15126 | #include <sys/types.h> | ||
15127 | #ifdef HAVE_SYS_TIME_H | ||
15128 | # include <sys/time.h> | ||
15129 | #endif | ||
15130 | #include <sys/resource.h> | ||
15131 | #include <errno.h> | ||
15132 | #include <stdlib.h> | ||
15133 | |||
15134 | int | ||
15135 | main () | ||
15136 | { | ||
15137 | |||
15138 | struct rlimit rl_zero; | ||
15139 | int r; | ||
15140 | |||
15141 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
15142 | r = setrlimit(RLIMIT_NOFILE, &rl_zero); | ||
15143 | exit (r == -1 ? 1 : 0); | ||
15144 | |||
15145 | ; | ||
15146 | return 0; | ||
15147 | } | ||
15148 | _ACEOF | ||
15149 | if ac_fn_c_try_run "$LINENO"; then : | ||
15150 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15151 | $as_echo "yes" >&6; } | ||
15152 | rlimit_nofile_zero_works=yes | ||
15153 | else | ||
15154 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15155 | $as_echo "no" >&6; } | ||
15156 | rlimit_nofile_zero_works=no | ||
15157 | fi | ||
15158 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
15159 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
15160 | fi | ||
15161 | |||
15162 | |||
15163 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setrlimit RLIMIT_FSIZE works" >&5 | ||
15164 | $as_echo_n "checking if setrlimit RLIMIT_FSIZE works... " >&6; } | ||
15165 | if test "$cross_compiling" = yes; then : | ||
15166 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: assuming yes" >&5 | ||
15167 | $as_echo "$as_me: WARNING: cross compiling: assuming yes" >&2;} | ||
15168 | |||
15169 | else | ||
15170 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15171 | /* end confdefs.h. */ | ||
15172 | |||
15173 | #include <sys/types.h> | ||
15174 | #include <sys/resource.h> | ||
15175 | #include <stdlib.h> | ||
15176 | |||
15177 | int | ||
15178 | main () | ||
15179 | { | ||
15180 | |||
15181 | struct rlimit rl_zero; | ||
15182 | |||
15183 | rl_zero.rlim_cur = rl_zero.rlim_max = 0; | ||
15184 | exit(setrlimit(RLIMIT_FSIZE, &rl_zero) != 0); | ||
15185 | |||
15186 | ; | ||
15187 | return 0; | ||
15188 | } | ||
15189 | _ACEOF | ||
15190 | if ac_fn_c_try_run "$LINENO"; then : | ||
15191 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15192 | $as_echo "yes" >&6; } | ||
15193 | else | ||
15194 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15195 | $as_echo "no" >&6; } | ||
15196 | |||
15197 | $as_echo "#define SANDBOX_SKIP_RLIMIT_FSIZE 1" >>confdefs.h | ||
15198 | |||
15199 | fi | ||
15200 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
15201 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
15202 | fi | ||
15203 | |||
15204 | |||
15205 | if test "x$sandbox_arg" = "xpledge" || \ | ||
15206 | ( test -z "$sandbox_arg" && test "x$ac_cv_func_pledge" = "xyes" ) ; then | ||
15207 | test "x$ac_cv_func_pledge" != "xyes" && \ | ||
15208 | as_fn_error $? "pledge sandbox requires pledge(2) support" "$LINENO" 5 | ||
15209 | SANDBOX_STYLE="pledge" | ||
15210 | |||
15211 | $as_echo "#define SANDBOX_PLEDGE 1" >>confdefs.h | ||
15212 | |||
15213 | elif test "x$sandbox_arg" = "xsystrace" || \ | ||
15214 | ( test -z "$sandbox_arg" && test "x$have_systr_policy_kill" = "x1" ) ; then | ||
15215 | test "x$have_systr_policy_kill" != "x1" && \ | ||
15216 | as_fn_error $? "systrace sandbox requires systrace headers and SYSTR_POLICY_KILL support" "$LINENO" 5 | ||
15217 | SANDBOX_STYLE="systrace" | ||
15218 | |||
15219 | $as_echo "#define SANDBOX_SYSTRACE 1" >>confdefs.h | ||
15220 | |||
15221 | elif test "x$sandbox_arg" = "xdarwin" || \ | ||
15222 | ( test -z "$sandbox_arg" && test "x$ac_cv_func_sandbox_init" = "xyes" && \ | ||
15223 | test "x$ac_cv_header_sandbox_h" = "xyes") ; then | ||
15224 | test "x$ac_cv_func_sandbox_init" != "xyes" -o \ | ||
15225 | "x$ac_cv_header_sandbox_h" != "xyes" && \ | ||
15226 | as_fn_error $? "Darwin seatbelt sandbox requires sandbox.h and sandbox_init function" "$LINENO" 5 | ||
15227 | SANDBOX_STYLE="darwin" | ||
15228 | |||
15229 | $as_echo "#define SANDBOX_DARWIN 1" >>confdefs.h | ||
15230 | |||
15231 | elif test "x$sandbox_arg" = "xseccomp_filter" || \ | ||
15232 | ( test -z "$sandbox_arg" && \ | ||
15233 | test "x$have_seccomp_filter" = "x1" && \ | ||
15234 | test "x$ac_cv_header_elf_h" = "xyes" && \ | ||
15235 | test "x$ac_cv_header_linux_audit_h" = "xyes" && \ | ||
15236 | test "x$ac_cv_header_linux_filter_h" = "xyes" && \ | ||
15237 | test "x$seccomp_audit_arch" != "x" && \ | ||
15238 | test "x$have_linux_no_new_privs" = "x1" && \ | ||
15239 | test "x$ac_cv_func_prctl" = "xyes" ) ; then | ||
15240 | test "x$seccomp_audit_arch" = "x" && \ | ||
15241 | as_fn_error $? "seccomp_filter sandbox not supported on $host" "$LINENO" 5 | ||
15242 | test "x$have_linux_no_new_privs" != "x1" && \ | ||
15243 | as_fn_error $? "seccomp_filter sandbox requires PR_SET_NO_NEW_PRIVS" "$LINENO" 5 | ||
15244 | test "x$have_seccomp_filter" != "x1" && \ | ||
15245 | as_fn_error $? "seccomp_filter sandbox requires seccomp headers" "$LINENO" 5 | ||
15246 | test "x$ac_cv_func_prctl" != "xyes" && \ | ||
15247 | as_fn_error $? "seccomp_filter sandbox requires prctl function" "$LINENO" 5 | ||
15248 | SANDBOX_STYLE="seccomp_filter" | ||
15249 | |||
15250 | $as_echo "#define SANDBOX_SECCOMP_FILTER 1" >>confdefs.h | ||
15251 | |||
15252 | elif test "x$sandbox_arg" = "xcapsicum" || \ | ||
15253 | ( test -z "$sandbox_arg" && \ | ||
15254 | test "x$ac_cv_header_sys_capsicum_h" = "xyes" && \ | ||
15255 | test "x$ac_cv_func_cap_rights_limit" = "xyes") ; then | ||
15256 | test "x$ac_cv_header_sys_capsicum_h" != "xyes" && \ | ||
15257 | as_fn_error $? "capsicum sandbox requires sys/capsicum.h header" "$LINENO" 5 | ||
15258 | test "x$ac_cv_func_cap_rights_limit" != "xyes" && \ | ||
15259 | as_fn_error $? "capsicum sandbox requires cap_rights_limit function" "$LINENO" 5 | ||
15260 | SANDBOX_STYLE="capsicum" | ||
15261 | |||
15262 | $as_echo "#define SANDBOX_CAPSICUM 1" >>confdefs.h | ||
15263 | |||
15264 | elif test "x$sandbox_arg" = "xrlimit" || \ | ||
15265 | ( test -z "$sandbox_arg" && test "x$ac_cv_func_setrlimit" = "xyes" && \ | ||
15266 | test "x$select_works_with_rlimit" = "xyes" && \ | ||
15267 | test "x$rlimit_nofile_zero_works" = "xyes" ) ; then | ||
15268 | test "x$ac_cv_func_setrlimit" != "xyes" && \ | ||
15269 | as_fn_error $? "rlimit sandbox requires setrlimit function" "$LINENO" 5 | ||
15270 | test "x$select_works_with_rlimit" != "xyes" && \ | ||
15271 | as_fn_error $? "rlimit sandbox requires select to work with rlimit" "$LINENO" 5 | ||
15272 | SANDBOX_STYLE="rlimit" | ||
15273 | |||
15274 | $as_echo "#define SANDBOX_RLIMIT 1" >>confdefs.h | ||
15275 | |||
15276 | elif test "x$sandbox_arg" = "xsolaris" || \ | ||
15277 | ( test -z "$sandbox_arg" && test "x$SOLARIS_PRIVS" = "xyes" ) ; then | ||
15278 | SANDBOX_STYLE="solaris" | ||
15279 | |||
15280 | $as_echo "#define SANDBOX_SOLARIS 1" >>confdefs.h | ||
15281 | |||
15282 | elif test -z "$sandbox_arg" || test "x$sandbox_arg" = "xno" || \ | ||
15283 | test "x$sandbox_arg" = "xnone" || test "x$sandbox_arg" = "xnull" ; then | ||
15284 | SANDBOX_STYLE="none" | ||
15285 | |||
15286 | $as_echo "#define SANDBOX_NULL 1" >>confdefs.h | ||
15287 | |||
15288 | else | ||
15289 | as_fn_error $? "unsupported --with-sandbox" "$LINENO" 5 | ||
15290 | fi | ||
15291 | |||
15292 | # Cheap hack to ensure NEWS-OS libraries are arranged right. | ||
15293 | if test ! -z "$SONY" ; then | ||
15294 | LIBS="$LIBS -liberty"; | ||
15295 | fi | ||
15296 | |||
15297 | # Check for long long datatypes | ||
15298 | ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default" | ||
15299 | if test "x$ac_cv_type_long_long" = xyes; then : | ||
15300 | |||
15301 | cat >>confdefs.h <<_ACEOF | ||
15302 | #define HAVE_LONG_LONG 1 | ||
15303 | _ACEOF | ||
15304 | |||
15305 | |||
15306 | fi | ||
15307 | ac_fn_c_check_type "$LINENO" "unsigned long long" "ac_cv_type_unsigned_long_long" "$ac_includes_default" | ||
15308 | if test "x$ac_cv_type_unsigned_long_long" = xyes; then : | ||
15309 | |||
15310 | cat >>confdefs.h <<_ACEOF | ||
15311 | #define HAVE_UNSIGNED_LONG_LONG 1 | ||
15312 | _ACEOF | ||
15313 | |||
15314 | |||
15315 | fi | ||
15316 | ac_fn_c_check_type "$LINENO" "long double" "ac_cv_type_long_double" "$ac_includes_default" | ||
15317 | if test "x$ac_cv_type_long_double" = xyes; then : | ||
15318 | |||
15319 | cat >>confdefs.h <<_ACEOF | ||
15320 | #define HAVE_LONG_DOUBLE 1 | ||
15321 | _ACEOF | ||
15322 | |||
15323 | |||
15324 | fi | ||
15325 | |||
15326 | |||
15327 | # Check datatype sizes | ||
15328 | # The cast to long int works around a bug in the HP C Compiler | ||
15329 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
15330 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
15331 | # This bug is HP SR number 8606223364. | ||
15332 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short int" >&5 | ||
15333 | $as_echo_n "checking size of short int... " >&6; } | ||
15334 | if ${ac_cv_sizeof_short_int+:} false; then : | ||
15335 | $as_echo_n "(cached) " >&6 | ||
15336 | else | ||
15337 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short int))" "ac_cv_sizeof_short_int" "$ac_includes_default"; then : | ||
15338 | |||
15339 | else | ||
15340 | if test "$ac_cv_type_short_int" = yes; then | ||
15341 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
15342 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
15343 | as_fn_error 77 "cannot compute sizeof (short int) | ||
15344 | See \`config.log' for more details" "$LINENO" 5; } | ||
15345 | else | ||
15346 | ac_cv_sizeof_short_int=0 | ||
15347 | fi | ||
15348 | fi | ||
15349 | |||
15350 | fi | ||
15351 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short_int" >&5 | ||
15352 | $as_echo "$ac_cv_sizeof_short_int" >&6; } | ||
15353 | |||
15354 | |||
15355 | |||
15356 | cat >>confdefs.h <<_ACEOF | ||
15357 | #define SIZEOF_SHORT_INT $ac_cv_sizeof_short_int | ||
15358 | _ACEOF | ||
15359 | |||
15360 | |||
15361 | # The cast to long int works around a bug in the HP C Compiler | ||
15362 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
15363 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
15364 | # This bug is HP SR number 8606223364. | ||
15365 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5 | ||
15366 | $as_echo_n "checking size of int... " >&6; } | ||
15367 | if ${ac_cv_sizeof_int+:} false; then : | ||
15368 | $as_echo_n "(cached) " >&6 | ||
15369 | else | ||
15370 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then : | ||
15371 | |||
15372 | else | ||
15373 | if test "$ac_cv_type_int" = yes; then | ||
15374 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
15375 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
15376 | as_fn_error 77 "cannot compute sizeof (int) | ||
15377 | See \`config.log' for more details" "$LINENO" 5; } | ||
15378 | else | ||
15379 | ac_cv_sizeof_int=0 | ||
15380 | fi | ||
15381 | fi | ||
15382 | |||
15383 | fi | ||
15384 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5 | ||
15385 | $as_echo "$ac_cv_sizeof_int" >&6; } | ||
15386 | |||
15387 | |||
15388 | |||
15389 | cat >>confdefs.h <<_ACEOF | ||
15390 | #define SIZEOF_INT $ac_cv_sizeof_int | ||
15391 | _ACEOF | ||
15392 | |||
15393 | |||
15394 | # The cast to long int works around a bug in the HP C Compiler | ||
15395 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
15396 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
15397 | # This bug is HP SR number 8606223364. | ||
15398 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long int" >&5 | ||
15399 | $as_echo_n "checking size of long int... " >&6; } | ||
15400 | if ${ac_cv_sizeof_long_int+:} false; then : | ||
15401 | $as_echo_n "(cached) " >&6 | ||
15402 | else | ||
15403 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long int))" "ac_cv_sizeof_long_int" "$ac_includes_default"; then : | ||
15404 | |||
15405 | else | ||
15406 | if test "$ac_cv_type_long_int" = yes; then | ||
15407 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
15408 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
15409 | as_fn_error 77 "cannot compute sizeof (long int) | ||
15410 | See \`config.log' for more details" "$LINENO" 5; } | ||
15411 | else | ||
15412 | ac_cv_sizeof_long_int=0 | ||
15413 | fi | ||
15414 | fi | ||
15415 | |||
15416 | fi | ||
15417 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_int" >&5 | ||
15418 | $as_echo "$ac_cv_sizeof_long_int" >&6; } | ||
15419 | |||
15420 | |||
15421 | |||
15422 | cat >>confdefs.h <<_ACEOF | ||
15423 | #define SIZEOF_LONG_INT $ac_cv_sizeof_long_int | ||
15424 | _ACEOF | ||
15425 | |||
15426 | |||
15427 | # The cast to long int works around a bug in the HP C Compiler | ||
15428 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
15429 | # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. | ||
15430 | # This bug is HP SR number 8606223364. | ||
15431 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long int" >&5 | ||
15432 | $as_echo_n "checking size of long long int... " >&6; } | ||
15433 | if ${ac_cv_sizeof_long_long_int+:} false; then : | ||
15434 | $as_echo_n "(cached) " >&6 | ||
15435 | else | ||
15436 | if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long int))" "ac_cv_sizeof_long_long_int" "$ac_includes_default"; then : | ||
15437 | |||
15438 | else | ||
15439 | if test "$ac_cv_type_long_long_int" = yes; then | ||
15440 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
15441 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
15442 | as_fn_error 77 "cannot compute sizeof (long long int) | ||
15443 | See \`config.log' for more details" "$LINENO" 5; } | ||
15444 | else | ||
15445 | ac_cv_sizeof_long_long_int=0 | ||
15446 | fi | ||
15447 | fi | ||
15448 | |||
15449 | fi | ||
15450 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long_int" >&5 | ||
15451 | $as_echo "$ac_cv_sizeof_long_long_int" >&6; } | ||
15452 | |||
15453 | |||
15454 | |||
15455 | cat >>confdefs.h <<_ACEOF | ||
15456 | #define SIZEOF_LONG_LONG_INT $ac_cv_sizeof_long_long_int | ||
15457 | _ACEOF | ||
15458 | |||
15459 | |||
15460 | |||
15461 | # Sanity check long long for some platforms (AIX) | ||
15462 | if test "x$ac_cv_sizeof_long_long_int" = "x4" ; then | ||
15463 | ac_cv_sizeof_long_long_int=0 | ||
15464 | fi | ||
15465 | |||
15466 | # compute LLONG_MIN and LLONG_MAX if we don't know them. | ||
15467 | if test -z "$have_llong_max" && test -z "$have_long_long_max"; then | ||
15468 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for max value of long long" >&5 | ||
15469 | $as_echo_n "checking for max value of long long... " >&6; } | ||
15470 | if test "$cross_compiling" = yes; then : | ||
15471 | |||
15472 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking" >&5 | ||
15473 | $as_echo "$as_me: WARNING: cross compiling: not checking" >&2;} | ||
15474 | |||
15475 | |||
15476 | else | ||
15477 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15478 | /* end confdefs.h. */ | ||
15479 | |||
15480 | #include <stdio.h> | ||
15481 | #include <stdlib.h> | ||
15482 | /* Why is this so damn hard? */ | ||
15483 | #ifdef __GNUC__ | ||
15484 | # undef __GNUC__ | ||
15485 | #endif | ||
15486 | #define __USE_ISOC99 | ||
15487 | #include <limits.h> | ||
15488 | #define DATA "conftest.llminmax" | ||
15489 | #define my_abs(a) ((a) < 0 ? ((a) * -1) : (a)) | ||
15490 | |||
15491 | /* | ||
15492 | * printf in libc on some platforms (eg old Tru64) does not understand %lld so | ||
15493 | * we do this the hard way. | ||
15494 | */ | ||
15495 | static int | ||
15496 | fprint_ll(FILE *f, long long n) | ||
15497 | { | ||
15498 | unsigned int i; | ||
15499 | int l[sizeof(long long) * 8]; | ||
15500 | |||
15501 | if (n < 0) | ||
15502 | if (fprintf(f, "-") < 0) | ||
15503 | return -1; | ||
15504 | for (i = 0; n != 0; i++) { | ||
15505 | l[i] = my_abs(n % 10); | ||
15506 | n /= 10; | ||
15507 | } | ||
15508 | do { | ||
15509 | if (fprintf(f, "%d", l[--i]) < 0) | ||
15510 | return -1; | ||
15511 | } while (i != 0); | ||
15512 | if (fprintf(f, " ") < 0) | ||
15513 | return -1; | ||
15514 | return 0; | ||
15515 | } | ||
15516 | |||
15517 | int | ||
15518 | main () | ||
15519 | { | ||
15520 | |||
15521 | FILE *f; | ||
15522 | long long i, llmin, llmax = 0; | ||
15523 | |||
15524 | if((f = fopen(DATA,"w")) == NULL) | ||
15525 | exit(1); | ||
15526 | |||
15527 | #if defined(LLONG_MIN) && defined(LLONG_MAX) | ||
15528 | fprintf(stderr, "Using system header for LLONG_MIN and LLONG_MAX\n"); | ||
15529 | llmin = LLONG_MIN; | ||
15530 | llmax = LLONG_MAX; | ||
15531 | #else | ||
15532 | fprintf(stderr, "Calculating LLONG_MIN and LLONG_MAX\n"); | ||
15533 | /* This will work on one's complement and two's complement */ | ||
15534 | for (i = 1; i > llmax; i <<= 1, i++) | ||
15535 | llmax = i; | ||
15536 | llmin = llmax + 1LL; /* wrap */ | ||
15537 | #endif | ||
15538 | |||
15539 | /* Sanity check */ | ||
15540 | if (llmin + 1 < llmin || llmin - 1 < llmin || llmax + 1 > llmax | ||
15541 | || llmax - 1 > llmax || llmin == llmax || llmin == 0 | ||
15542 | || llmax == 0 || llmax < LONG_MAX || llmin > LONG_MIN) { | ||
15543 | fprintf(f, "unknown unknown\n"); | ||
15544 | exit(2); | ||
15545 | } | ||
15546 | |||
15547 | if (fprint_ll(f, llmin) < 0) | ||
15548 | exit(3); | ||
15549 | if (fprint_ll(f, llmax) < 0) | ||
15550 | exit(4); | ||
15551 | if (fclose(f) < 0) | ||
15552 | exit(5); | ||
15553 | exit(0); | ||
15554 | |||
15555 | ; | ||
15556 | return 0; | ||
15557 | } | ||
15558 | _ACEOF | ||
15559 | if ac_fn_c_try_run "$LINENO"; then : | ||
15560 | |||
15561 | llong_min=`$AWK '{print $1}' conftest.llminmax` | ||
15562 | llong_max=`$AWK '{print $2}' conftest.llminmax` | ||
15563 | |||
15564 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_max" >&5 | ||
15565 | $as_echo "$llong_max" >&6; } | ||
15566 | |||
15567 | cat >>confdefs.h <<_ACEOF | ||
15568 | #define LLONG_MAX ${llong_max}LL | ||
15569 | _ACEOF | ||
15570 | |||
15571 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for min value of long long" >&5 | ||
15572 | $as_echo_n "checking for min value of long long... " >&6; } | ||
15573 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $llong_min" >&5 | ||
15574 | $as_echo "$llong_min" >&6; } | ||
15575 | |||
15576 | cat >>confdefs.h <<_ACEOF | ||
15577 | #define LLONG_MIN ${llong_min}LL | ||
15578 | _ACEOF | ||
15579 | |||
15580 | |||
15581 | else | ||
15582 | |||
15583 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 | ||
15584 | $as_echo "not found" >&6; } | ||
15585 | |||
15586 | fi | ||
15587 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
15588 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
15589 | fi | ||
15590 | |||
15591 | fi | ||
15592 | |||
15593 | ac_fn_c_check_decl "$LINENO" "UINT32_MAX" "ac_cv_have_decl_UINT32_MAX" " | ||
15594 | #ifdef HAVE_SYS_LIMITS_H | ||
15595 | # include <sys/limits.h> | ||
15596 | #endif | ||
15597 | #ifdef HAVE_LIMITS_H | ||
15598 | # include <limits.h> | ||
15599 | #endif | ||
15600 | #ifdef HAVE_STDINT_H | ||
15601 | # include <stdint.h> | ||
15602 | #endif | ||
15603 | |||
15604 | " | ||
15605 | if test "x$ac_cv_have_decl_UINT32_MAX" = xyes; then : | ||
15606 | ac_have_decl=1 | ||
15607 | else | ||
15608 | ac_have_decl=0 | ||
15609 | fi | ||
15610 | |||
15611 | cat >>confdefs.h <<_ACEOF | ||
15612 | #define HAVE_DECL_UINT32_MAX $ac_have_decl | ||
15613 | _ACEOF | ||
15614 | |||
15615 | |||
15616 | # More checks for data types | ||
15617 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int type" >&5 | ||
15618 | $as_echo_n "checking for u_int type... " >&6; } | ||
15619 | if ${ac_cv_have_u_int+:} false; then : | ||
15620 | $as_echo_n "(cached) " >&6 | ||
15621 | else | ||
15622 | |||
15623 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15624 | /* end confdefs.h. */ | ||
15625 | #include <sys/types.h> | ||
15626 | int | ||
15627 | main () | ||
15628 | { | ||
15629 | u_int a; a = 1; | ||
15630 | ; | ||
15631 | return 0; | ||
15632 | } | ||
15633 | _ACEOF | ||
15634 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15635 | ac_cv_have_u_int="yes" | ||
15636 | else | ||
15637 | ac_cv_have_u_int="no" | ||
15638 | |||
15639 | fi | ||
15640 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15641 | |||
15642 | fi | ||
15643 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int" >&5 | ||
15644 | $as_echo "$ac_cv_have_u_int" >&6; } | ||
15645 | if test "x$ac_cv_have_u_int" = "xyes" ; then | ||
15646 | |||
15647 | $as_echo "#define HAVE_U_INT 1" >>confdefs.h | ||
15648 | |||
15649 | have_u_int=1 | ||
15650 | fi | ||
15651 | |||
15652 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types" >&5 | ||
15653 | $as_echo_n "checking for intXX_t types... " >&6; } | ||
15654 | if ${ac_cv_have_intxx_t+:} false; then : | ||
15655 | $as_echo_n "(cached) " >&6 | ||
15656 | else | ||
15657 | |||
15658 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15659 | /* end confdefs.h. */ | ||
15660 | #include <sys/types.h> | ||
15661 | int | ||
15662 | main () | ||
15663 | { | ||
15664 | int8_t a; int16_t b; int32_t c; a = b = c = 1; | ||
15665 | ; | ||
15666 | return 0; | ||
15667 | } | ||
15668 | _ACEOF | ||
15669 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15670 | ac_cv_have_intxx_t="yes" | ||
15671 | else | ||
15672 | ac_cv_have_intxx_t="no" | ||
15673 | |||
15674 | fi | ||
15675 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15676 | |||
15677 | fi | ||
15678 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_intxx_t" >&5 | ||
15679 | $as_echo "$ac_cv_have_intxx_t" >&6; } | ||
15680 | if test "x$ac_cv_have_intxx_t" = "xyes" ; then | ||
15681 | |||
15682 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
15683 | |||
15684 | have_intxx_t=1 | ||
15685 | fi | ||
15686 | |||
15687 | if (test -z "$have_intxx_t" && \ | ||
15688 | test "x$ac_cv_header_stdint_h" = "xyes") | ||
15689 | then | ||
15690 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t types in stdint.h" >&5 | ||
15691 | $as_echo_n "checking for intXX_t types in stdint.h... " >&6; } | ||
15692 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15693 | /* end confdefs.h. */ | ||
15694 | #include <stdint.h> | ||
15695 | int | ||
15696 | main () | ||
15697 | { | ||
15698 | int8_t a; int16_t b; int32_t c; a = b = c = 1; | ||
15699 | ; | ||
15700 | return 0; | ||
15701 | } | ||
15702 | _ACEOF | ||
15703 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15704 | |||
15705 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
15706 | |||
15707 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15708 | $as_echo "yes" >&6; } | ||
15709 | |||
15710 | else | ||
15711 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15712 | $as_echo "no" >&6; } | ||
15713 | |||
15714 | fi | ||
15715 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15716 | fi | ||
15717 | |||
15718 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for int64_t type" >&5 | ||
15719 | $as_echo_n "checking for int64_t type... " >&6; } | ||
15720 | if ${ac_cv_have_int64_t+:} false; then : | ||
15721 | $as_echo_n "(cached) " >&6 | ||
15722 | else | ||
15723 | |||
15724 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15725 | /* end confdefs.h. */ | ||
15726 | |||
15727 | #include <sys/types.h> | ||
15728 | #ifdef HAVE_STDINT_H | ||
15729 | # include <stdint.h> | ||
15730 | #endif | ||
15731 | #include <sys/socket.h> | ||
15732 | #ifdef HAVE_SYS_BITYPES_H | ||
15733 | # include <sys/bitypes.h> | ||
15734 | #endif | ||
15735 | |||
15736 | int | ||
15737 | main () | ||
15738 | { | ||
15739 | |||
15740 | int64_t a; a = 1; | ||
15741 | |||
15742 | ; | ||
15743 | return 0; | ||
15744 | } | ||
15745 | _ACEOF | ||
15746 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15747 | ac_cv_have_int64_t="yes" | ||
15748 | else | ||
15749 | ac_cv_have_int64_t="no" | ||
15750 | |||
15751 | fi | ||
15752 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15753 | |||
15754 | fi | ||
15755 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_int64_t" >&5 | ||
15756 | $as_echo "$ac_cv_have_int64_t" >&6; } | ||
15757 | if test "x$ac_cv_have_int64_t" = "xyes" ; then | ||
15758 | |||
15759 | $as_echo "#define HAVE_INT64_T 1" >>confdefs.h | ||
15760 | |||
15761 | fi | ||
15762 | |||
15763 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types" >&5 | ||
15764 | $as_echo_n "checking for u_intXX_t types... " >&6; } | ||
15765 | if ${ac_cv_have_u_intxx_t+:} false; then : | ||
15766 | $as_echo_n "(cached) " >&6 | ||
15767 | else | ||
15768 | |||
15769 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15770 | /* end confdefs.h. */ | ||
15771 | #include <sys/types.h> | ||
15772 | int | ||
15773 | main () | ||
15774 | { | ||
15775 | u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1; | ||
15776 | ; | ||
15777 | return 0; | ||
15778 | } | ||
15779 | _ACEOF | ||
15780 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15781 | ac_cv_have_u_intxx_t="yes" | ||
15782 | else | ||
15783 | ac_cv_have_u_intxx_t="no" | ||
15784 | |||
15785 | fi | ||
15786 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15787 | |||
15788 | fi | ||
15789 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_intxx_t" >&5 | ||
15790 | $as_echo "$ac_cv_have_u_intxx_t" >&6; } | ||
15791 | if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then | ||
15792 | |||
15793 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
15794 | |||
15795 | have_u_intxx_t=1 | ||
15796 | fi | ||
15797 | |||
15798 | if test -z "$have_u_intxx_t" ; then | ||
15799 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_intXX_t types in sys/socket.h" >&5 | ||
15800 | $as_echo_n "checking for u_intXX_t types in sys/socket.h... " >&6; } | ||
15801 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15802 | /* end confdefs.h. */ | ||
15803 | #include <sys/socket.h> | ||
15804 | int | ||
15805 | main () | ||
15806 | { | ||
15807 | u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1; | ||
15808 | ; | ||
15809 | return 0; | ||
15810 | } | ||
15811 | _ACEOF | ||
15812 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15813 | |||
15814 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
15815 | |||
15816 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15817 | $as_echo "yes" >&6; } | ||
15818 | |||
15819 | else | ||
15820 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15821 | $as_echo "no" >&6; } | ||
15822 | |||
15823 | fi | ||
15824 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15825 | fi | ||
15826 | |||
15827 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t types" >&5 | ||
15828 | $as_echo_n "checking for u_int64_t types... " >&6; } | ||
15829 | if ${ac_cv_have_u_int64_t+:} false; then : | ||
15830 | $as_echo_n "(cached) " >&6 | ||
15831 | else | ||
15832 | |||
15833 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15834 | /* end confdefs.h. */ | ||
15835 | #include <sys/types.h> | ||
15836 | int | ||
15837 | main () | ||
15838 | { | ||
15839 | u_int64_t a; a = 1; | ||
15840 | ; | ||
15841 | return 0; | ||
15842 | } | ||
15843 | _ACEOF | ||
15844 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15845 | ac_cv_have_u_int64_t="yes" | ||
15846 | else | ||
15847 | ac_cv_have_u_int64_t="no" | ||
15848 | |||
15849 | fi | ||
15850 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15851 | |||
15852 | fi | ||
15853 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_int64_t" >&5 | ||
15854 | $as_echo "$ac_cv_have_u_int64_t" >&6; } | ||
15855 | if test "x$ac_cv_have_u_int64_t" = "xyes" ; then | ||
15856 | |||
15857 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
15858 | |||
15859 | have_u_int64_t=1 | ||
15860 | fi | ||
15861 | |||
15862 | if (test -z "$have_u_int64_t" && \ | ||
15863 | test "x$ac_cv_header_sys_bitypes_h" = "xyes") | ||
15864 | then | ||
15865 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_int64_t type in sys/bitypes.h" >&5 | ||
15866 | $as_echo_n "checking for u_int64_t type in sys/bitypes.h... " >&6; } | ||
15867 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15868 | /* end confdefs.h. */ | ||
15869 | #include <sys/bitypes.h> | ||
15870 | int | ||
15871 | main () | ||
15872 | { | ||
15873 | u_int64_t a; a = 1 | ||
15874 | ; | ||
15875 | return 0; | ||
15876 | } | ||
15877 | _ACEOF | ||
15878 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15879 | |||
15880 | $as_echo "#define HAVE_U_INT64_T 1" >>confdefs.h | ||
15881 | |||
15882 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15883 | $as_echo "yes" >&6; } | ||
15884 | |||
15885 | else | ||
15886 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15887 | $as_echo "no" >&6; } | ||
15888 | |||
15889 | fi | ||
15890 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15891 | fi | ||
15892 | |||
15893 | if test -z "$have_u_intxx_t" ; then | ||
15894 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types" >&5 | ||
15895 | $as_echo_n "checking for uintXX_t types... " >&6; } | ||
15896 | if ${ac_cv_have_uintxx_t+:} false; then : | ||
15897 | $as_echo_n "(cached) " >&6 | ||
15898 | else | ||
15899 | |||
15900 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15901 | /* end confdefs.h. */ | ||
15902 | |||
15903 | #include <sys/types.h> | ||
15904 | |||
15905 | int | ||
15906 | main () | ||
15907 | { | ||
15908 | |||
15909 | uint8_t a; | ||
15910 | uint16_t b; | ||
15911 | uint32_t c; | ||
15912 | a = b = c = 1; | ||
15913 | |||
15914 | ; | ||
15915 | return 0; | ||
15916 | } | ||
15917 | _ACEOF | ||
15918 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15919 | ac_cv_have_uintxx_t="yes" | ||
15920 | else | ||
15921 | ac_cv_have_uintxx_t="no" | ||
15922 | |||
15923 | fi | ||
15924 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15925 | |||
15926 | fi | ||
15927 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_uintxx_t" >&5 | ||
15928 | $as_echo "$ac_cv_have_uintxx_t" >&6; } | ||
15929 | if test "x$ac_cv_have_uintxx_t" = "xyes" ; then | ||
15930 | |||
15931 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
15932 | |||
15933 | fi | ||
15934 | fi | ||
15935 | |||
15936 | if (test -z "$have_uintxx_t" && \ | ||
15937 | test "x$ac_cv_header_stdint_h" = "xyes") | ||
15938 | then | ||
15939 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in stdint.h" >&5 | ||
15940 | $as_echo_n "checking for uintXX_t types in stdint.h... " >&6; } | ||
15941 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15942 | /* end confdefs.h. */ | ||
15943 | #include <stdint.h> | ||
15944 | int | ||
15945 | main () | ||
15946 | { | ||
15947 | uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; | ||
15948 | ; | ||
15949 | return 0; | ||
15950 | } | ||
15951 | _ACEOF | ||
15952 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15953 | |||
15954 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
15955 | |||
15956 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15957 | $as_echo "yes" >&6; } | ||
15958 | |||
15959 | else | ||
15960 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15961 | $as_echo "no" >&6; } | ||
15962 | |||
15963 | fi | ||
15964 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15965 | fi | ||
15966 | |||
15967 | if (test -z "$have_uintxx_t" && \ | ||
15968 | test "x$ac_cv_header_inttypes_h" = "xyes") | ||
15969 | then | ||
15970 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintXX_t types in inttypes.h" >&5 | ||
15971 | $as_echo_n "checking for uintXX_t types in inttypes.h... " >&6; } | ||
15972 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
15973 | /* end confdefs.h. */ | ||
15974 | #include <inttypes.h> | ||
15975 | int | ||
15976 | main () | ||
15977 | { | ||
15978 | uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; | ||
15979 | ; | ||
15980 | return 0; | ||
15981 | } | ||
15982 | _ACEOF | ||
15983 | if ac_fn_c_try_compile "$LINENO"; then : | ||
15984 | |||
15985 | $as_echo "#define HAVE_UINTXX_T 1" >>confdefs.h | ||
15986 | |||
15987 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
15988 | $as_echo "yes" >&6; } | ||
15989 | |||
15990 | else | ||
15991 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
15992 | $as_echo "no" >&6; } | ||
15993 | |||
15994 | fi | ||
15995 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
15996 | fi | ||
15997 | |||
15998 | if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \ | ||
15999 | test "x$ac_cv_header_sys_bitypes_h" = "xyes") | ||
16000 | then | ||
16001 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intXX_t and u_intXX_t types in sys/bitypes.h" >&5 | ||
16002 | $as_echo_n "checking for intXX_t and u_intXX_t types in sys/bitypes.h... " >&6; } | ||
16003 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16004 | /* end confdefs.h. */ | ||
16005 | |||
16006 | #include <sys/bitypes.h> | ||
16007 | |||
16008 | int | ||
16009 | main () | ||
16010 | { | ||
16011 | |||
16012 | int8_t a; int16_t b; int32_t c; | ||
16013 | u_int8_t e; u_int16_t f; u_int32_t g; | ||
16014 | a = b = c = e = f = g = 1; | ||
16015 | |||
16016 | ; | ||
16017 | return 0; | ||
16018 | } | ||
16019 | _ACEOF | ||
16020 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16021 | |||
16022 | $as_echo "#define HAVE_U_INTXX_T 1" >>confdefs.h | ||
16023 | |||
16024 | $as_echo "#define HAVE_INTXX_T 1" >>confdefs.h | ||
16025 | |||
16026 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
16027 | $as_echo "yes" >&6; } | ||
16028 | |||
16029 | else | ||
16030 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16031 | $as_echo "no" >&6; } | ||
16032 | |||
16033 | fi | ||
16034 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16035 | fi | ||
16036 | |||
16037 | |||
16038 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for u_char" >&5 | ||
16039 | $as_echo_n "checking for u_char... " >&6; } | ||
16040 | if ${ac_cv_have_u_char+:} false; then : | ||
16041 | $as_echo_n "(cached) " >&6 | ||
16042 | else | ||
16043 | |||
16044 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16045 | /* end confdefs.h. */ | ||
16046 | #include <sys/types.h> | ||
16047 | int | ||
16048 | main () | ||
16049 | { | ||
16050 | u_char foo; foo = 125; | ||
16051 | ; | ||
16052 | return 0; | ||
16053 | } | ||
16054 | _ACEOF | ||
16055 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16056 | ac_cv_have_u_char="yes" | ||
16057 | else | ||
16058 | ac_cv_have_u_char="no" | ||
16059 | |||
16060 | fi | ||
16061 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16062 | |||
16063 | fi | ||
16064 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_u_char" >&5 | ||
16065 | $as_echo "$ac_cv_have_u_char" >&6; } | ||
16066 | if test "x$ac_cv_have_u_char" = "xyes" ; then | ||
16067 | |||
16068 | $as_echo "#define HAVE_U_CHAR 1" >>confdefs.h | ||
16069 | |||
16070 | fi | ||
16071 | |||
16072 | ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" " | ||
16073 | #include <sys/types.h> | ||
16074 | #ifdef HAVE_STDINT_H | ||
16075 | # include <stdint.h> | ||
16076 | #endif | ||
16077 | |||
16078 | " | ||
16079 | if test "x$ac_cv_type_intmax_t" = xyes; then : | ||
16080 | |||
16081 | cat >>confdefs.h <<_ACEOF | ||
16082 | #define HAVE_INTMAX_T 1 | ||
16083 | _ACEOF | ||
16084 | |||
16085 | |||
16086 | fi | ||
16087 | ac_fn_c_check_type "$LINENO" "uintmax_t" "ac_cv_type_uintmax_t" " | ||
16088 | #include <sys/types.h> | ||
16089 | #ifdef HAVE_STDINT_H | ||
16090 | # include <stdint.h> | ||
16091 | #endif | ||
16092 | |||
16093 | " | ||
16094 | if test "x$ac_cv_type_uintmax_t" = xyes; then : | ||
16095 | |||
16096 | cat >>confdefs.h <<_ACEOF | ||
16097 | #define HAVE_UINTMAX_T 1 | ||
16098 | _ACEOF | ||
16099 | |||
16100 | |||
16101 | fi | ||
16102 | |||
16103 | |||
16104 | |||
16105 | ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include <sys/types.h> | ||
16106 | #include <sys/socket.h> | ||
16107 | " | ||
16108 | if test "x$ac_cv_type_socklen_t" = xyes; then : | ||
16109 | |||
16110 | else | ||
16111 | |||
16112 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5 | ||
16113 | $as_echo_n "checking for socklen_t equivalent... " >&6; } | ||
16114 | if ${curl_cv_socklen_t_equiv+:} false; then : | ||
16115 | $as_echo_n "(cached) " >&6 | ||
16116 | else | ||
16117 | |||
16118 | # Systems have either "struct sockaddr *" or | ||
16119 | # "void *" as the second argument to getpeername | ||
16120 | curl_cv_socklen_t_equiv= | ||
16121 | for arg2 in "struct sockaddr" void; do | ||
16122 | for t in int size_t unsigned long "unsigned long"; do | ||
16123 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16124 | /* end confdefs.h. */ | ||
16125 | |||
16126 | #include <sys/types.h> | ||
16127 | #include <sys/socket.h> | ||
16128 | |||
16129 | int getpeername (int, $arg2 *, $t *); | ||
16130 | |||
16131 | int | ||
16132 | main () | ||
16133 | { | ||
16134 | |||
16135 | $t len; | ||
16136 | getpeername(0,0,&len); | ||
16137 | |||
16138 | ; | ||
16139 | return 0; | ||
16140 | } | ||
16141 | _ACEOF | ||
16142 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16143 | |||
16144 | curl_cv_socklen_t_equiv="$t" | ||
16145 | break | ||
16146 | |||
16147 | fi | ||
16148 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16149 | done | ||
16150 | done | ||
16151 | |||
16152 | if test "x$curl_cv_socklen_t_equiv" = x; then | ||
16153 | as_fn_error $? "Cannot find a type to use in place of socklen_t" "$LINENO" 5 | ||
16154 | fi | ||
16155 | |||
16156 | fi | ||
16157 | |||
16158 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_socklen_t_equiv" >&5 | ||
16159 | $as_echo "$curl_cv_socklen_t_equiv" >&6; } | ||
16160 | |||
16161 | cat >>confdefs.h <<_ACEOF | ||
16162 | #define socklen_t $curl_cv_socklen_t_equiv | ||
16163 | _ACEOF | ||
16164 | |||
16165 | fi | ||
16166 | |||
16167 | |||
16168 | |||
16169 | ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "#include <signal.h> | ||
16170 | " | ||
16171 | if test "x$ac_cv_type_sig_atomic_t" = xyes; then : | ||
16172 | |||
16173 | cat >>confdefs.h <<_ACEOF | ||
16174 | #define HAVE_SIG_ATOMIC_T 1 | ||
16175 | _ACEOF | ||
16176 | |||
16177 | |||
16178 | fi | ||
16179 | |||
16180 | ac_fn_c_check_type "$LINENO" "fsblkcnt_t" "ac_cv_type_fsblkcnt_t" " | ||
16181 | #include <sys/types.h> | ||
16182 | #ifdef HAVE_SYS_BITYPES_H | ||
16183 | #include <sys/bitypes.h> | ||
16184 | #endif | ||
16185 | #ifdef HAVE_SYS_STATFS_H | ||
16186 | #include <sys/statfs.h> | ||
16187 | #endif | ||
16188 | #ifdef HAVE_SYS_STATVFS_H | ||
16189 | #include <sys/statvfs.h> | ||
16190 | #endif | ||
16191 | |||
16192 | " | ||
16193 | if test "x$ac_cv_type_fsblkcnt_t" = xyes; then : | ||
16194 | |||
16195 | cat >>confdefs.h <<_ACEOF | ||
16196 | #define HAVE_FSBLKCNT_T 1 | ||
16197 | _ACEOF | ||
16198 | |||
16199 | |||
16200 | fi | ||
16201 | ac_fn_c_check_type "$LINENO" "fsfilcnt_t" "ac_cv_type_fsfilcnt_t" " | ||
16202 | #include <sys/types.h> | ||
16203 | #ifdef HAVE_SYS_BITYPES_H | ||
16204 | #include <sys/bitypes.h> | ||
16205 | #endif | ||
16206 | #ifdef HAVE_SYS_STATFS_H | ||
16207 | #include <sys/statfs.h> | ||
16208 | #endif | ||
16209 | #ifdef HAVE_SYS_STATVFS_H | ||
16210 | #include <sys/statvfs.h> | ||
16211 | #endif | ||
16212 | |||
16213 | " | ||
16214 | if test "x$ac_cv_type_fsfilcnt_t" = xyes; then : | ||
16215 | |||
16216 | cat >>confdefs.h <<_ACEOF | ||
16217 | #define HAVE_FSFILCNT_T 1 | ||
16218 | _ACEOF | ||
16219 | |||
16220 | |||
16221 | fi | ||
16222 | |||
16223 | |||
16224 | ac_fn_c_check_member "$LINENO" "struct statfs" "f_files" "ac_cv_member_struct_statfs_f_files" " | ||
16225 | #include <sys/param.h> | ||
16226 | #include <sys/types.h> | ||
16227 | #ifdef HAVE_SYS_BITYPES_H | ||
16228 | #include <sys/bitypes.h> | ||
16229 | #endif | ||
16230 | #ifdef HAVE_SYS_STATFS_H | ||
16231 | #include <sys/statfs.h> | ||
16232 | #endif | ||
16233 | #ifdef HAVE_SYS_STATVFS_H | ||
16234 | #include <sys/statvfs.h> | ||
16235 | #endif | ||
16236 | #ifdef HAVE_SYS_VFS_H | ||
16237 | #include <sys/vfs.h> | ||
16238 | #endif | ||
16239 | #ifdef HAVE_SYS_MOUNT_H | ||
16240 | #include <sys/mount.h> | ||
16241 | #endif | ||
16242 | |||
16243 | " | ||
16244 | if test "x$ac_cv_member_struct_statfs_f_files" = xyes; then : | ||
16245 | |||
16246 | cat >>confdefs.h <<_ACEOF | ||
16247 | #define HAVE_STRUCT_STATFS_F_FILES 1 | ||
16248 | _ACEOF | ||
16249 | |||
16250 | |||
16251 | fi | ||
16252 | ac_fn_c_check_member "$LINENO" "struct statfs" "f_flags" "ac_cv_member_struct_statfs_f_flags" " | ||
16253 | #include <sys/param.h> | ||
16254 | #include <sys/types.h> | ||
16255 | #ifdef HAVE_SYS_BITYPES_H | ||
16256 | #include <sys/bitypes.h> | ||
16257 | #endif | ||
16258 | #ifdef HAVE_SYS_STATFS_H | ||
16259 | #include <sys/statfs.h> | ||
16260 | #endif | ||
16261 | #ifdef HAVE_SYS_STATVFS_H | ||
16262 | #include <sys/statvfs.h> | ||
16263 | #endif | ||
16264 | #ifdef HAVE_SYS_VFS_H | ||
16265 | #include <sys/vfs.h> | ||
16266 | #endif | ||
16267 | #ifdef HAVE_SYS_MOUNT_H | ||
16268 | #include <sys/mount.h> | ||
16269 | #endif | ||
16270 | |||
16271 | " | ||
16272 | if test "x$ac_cv_member_struct_statfs_f_flags" = xyes; then : | ||
16273 | |||
16274 | cat >>confdefs.h <<_ACEOF | ||
16275 | #define HAVE_STRUCT_STATFS_F_FLAGS 1 | ||
16276 | _ACEOF | ||
16277 | |||
16278 | |||
16279 | fi | ||
16280 | |||
16281 | |||
16282 | |||
16283 | ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "#include <sys/types.h> | ||
16284 | #include <netinet/in.h> | ||
16285 | " | ||
16286 | if test "x$ac_cv_type_in_addr_t" = xyes; then : | ||
16287 | |||
16288 | cat >>confdefs.h <<_ACEOF | ||
16289 | #define HAVE_IN_ADDR_T 1 | ||
16290 | _ACEOF | ||
16291 | |||
16292 | |||
16293 | fi | ||
16294 | ac_fn_c_check_type "$LINENO" "in_port_t" "ac_cv_type_in_port_t" "#include <sys/types.h> | ||
16295 | #include <netinet/in.h> | ||
16296 | " | ||
16297 | if test "x$ac_cv_type_in_port_t" = xyes; then : | ||
16298 | |||
16299 | cat >>confdefs.h <<_ACEOF | ||
16300 | #define HAVE_IN_PORT_T 1 | ||
16301 | _ACEOF | ||
16302 | |||
16303 | |||
16304 | fi | ||
16305 | |||
16306 | |||
16307 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for size_t" >&5 | ||
16308 | $as_echo_n "checking for size_t... " >&6; } | ||
16309 | if ${ac_cv_have_size_t+:} false; then : | ||
16310 | $as_echo_n "(cached) " >&6 | ||
16311 | else | ||
16312 | |||
16313 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16314 | /* end confdefs.h. */ | ||
16315 | #include <sys/types.h> | ||
16316 | int | ||
16317 | main () | ||
16318 | { | ||
16319 | size_t foo; foo = 1235; | ||
16320 | ; | ||
16321 | return 0; | ||
16322 | } | ||
16323 | _ACEOF | ||
16324 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16325 | ac_cv_have_size_t="yes" | ||
16326 | else | ||
16327 | ac_cv_have_size_t="no" | ||
16328 | |||
16329 | fi | ||
16330 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16331 | |||
16332 | fi | ||
16333 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_size_t" >&5 | ||
16334 | $as_echo "$ac_cv_have_size_t" >&6; } | ||
16335 | if test "x$ac_cv_have_size_t" = "xyes" ; then | ||
16336 | |||
16337 | $as_echo "#define HAVE_SIZE_T 1" >>confdefs.h | ||
16338 | |||
16339 | fi | ||
16340 | |||
16341 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5 | ||
16342 | $as_echo_n "checking for ssize_t... " >&6; } | ||
16343 | if ${ac_cv_have_ssize_t+:} false; then : | ||
16344 | $as_echo_n "(cached) " >&6 | ||
16345 | else | ||
16346 | |||
16347 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16348 | /* end confdefs.h. */ | ||
16349 | #include <sys/types.h> | ||
16350 | int | ||
16351 | main () | ||
16352 | { | ||
16353 | ssize_t foo; foo = 1235; | ||
16354 | ; | ||
16355 | return 0; | ||
16356 | } | ||
16357 | _ACEOF | ||
16358 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16359 | ac_cv_have_ssize_t="yes" | ||
16360 | else | ||
16361 | ac_cv_have_ssize_t="no" | ||
16362 | |||
16363 | fi | ||
16364 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16365 | |||
16366 | fi | ||
16367 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ssize_t" >&5 | ||
16368 | $as_echo "$ac_cv_have_ssize_t" >&6; } | ||
16369 | if test "x$ac_cv_have_ssize_t" = "xyes" ; then | ||
16370 | |||
16371 | $as_echo "#define HAVE_SSIZE_T 1" >>confdefs.h | ||
16372 | |||
16373 | fi | ||
16374 | |||
16375 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5 | ||
16376 | $as_echo_n "checking for clock_t... " >&6; } | ||
16377 | if ${ac_cv_have_clock_t+:} false; then : | ||
16378 | $as_echo_n "(cached) " >&6 | ||
16379 | else | ||
16380 | |||
16381 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16382 | /* end confdefs.h. */ | ||
16383 | #include <time.h> | ||
16384 | int | ||
16385 | main () | ||
16386 | { | ||
16387 | clock_t foo; foo = 1235; | ||
16388 | ; | ||
16389 | return 0; | ||
16390 | } | ||
16391 | _ACEOF | ||
16392 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16393 | ac_cv_have_clock_t="yes" | ||
16394 | else | ||
16395 | ac_cv_have_clock_t="no" | ||
16396 | |||
16397 | fi | ||
16398 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16399 | |||
16400 | fi | ||
16401 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_clock_t" >&5 | ||
16402 | $as_echo "$ac_cv_have_clock_t" >&6; } | ||
16403 | if test "x$ac_cv_have_clock_t" = "xyes" ; then | ||
16404 | |||
16405 | $as_echo "#define HAVE_CLOCK_T 1" >>confdefs.h | ||
16406 | |||
16407 | fi | ||
16408 | |||
16409 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sa_family_t" >&5 | ||
16410 | $as_echo_n "checking for sa_family_t... " >&6; } | ||
16411 | if ${ac_cv_have_sa_family_t+:} false; then : | ||
16412 | $as_echo_n "(cached) " >&6 | ||
16413 | else | ||
16414 | |||
16415 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16416 | /* end confdefs.h. */ | ||
16417 | |||
16418 | #include <sys/types.h> | ||
16419 | #include <sys/socket.h> | ||
16420 | |||
16421 | int | ||
16422 | main () | ||
16423 | { | ||
16424 | sa_family_t foo; foo = 1235; | ||
16425 | ; | ||
16426 | return 0; | ||
16427 | } | ||
16428 | _ACEOF | ||
16429 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16430 | ac_cv_have_sa_family_t="yes" | ||
16431 | else | ||
16432 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16433 | /* end confdefs.h. */ | ||
16434 | |||
16435 | #include <sys/types.h> | ||
16436 | #include <sys/socket.h> | ||
16437 | #include <netinet/in.h> | ||
16438 | |||
16439 | int | ||
16440 | main () | ||
16441 | { | ||
16442 | sa_family_t foo; foo = 1235; | ||
16443 | ; | ||
16444 | return 0; | ||
16445 | } | ||
16446 | _ACEOF | ||
16447 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16448 | ac_cv_have_sa_family_t="yes" | ||
16449 | else | ||
16450 | ac_cv_have_sa_family_t="no" | ||
16451 | |||
16452 | fi | ||
16453 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16454 | |||
16455 | fi | ||
16456 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16457 | |||
16458 | fi | ||
16459 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sa_family_t" >&5 | ||
16460 | $as_echo "$ac_cv_have_sa_family_t" >&6; } | ||
16461 | if test "x$ac_cv_have_sa_family_t" = "xyes" ; then | ||
16462 | |||
16463 | $as_echo "#define HAVE_SA_FAMILY_T 1" >>confdefs.h | ||
16464 | |||
16465 | fi | ||
16466 | |||
16467 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pid_t" >&5 | ||
16468 | $as_echo_n "checking for pid_t... " >&6; } | ||
16469 | if ${ac_cv_have_pid_t+:} false; then : | ||
16470 | $as_echo_n "(cached) " >&6 | ||
16471 | else | ||
16472 | |||
16473 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16474 | /* end confdefs.h. */ | ||
16475 | #include <sys/types.h> | ||
16476 | int | ||
16477 | main () | ||
16478 | { | ||
16479 | pid_t foo; foo = 1235; | ||
16480 | ; | ||
16481 | return 0; | ||
16482 | } | ||
16483 | _ACEOF | ||
16484 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16485 | ac_cv_have_pid_t="yes" | ||
16486 | else | ||
16487 | ac_cv_have_pid_t="no" | ||
16488 | |||
16489 | fi | ||
16490 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16491 | |||
16492 | fi | ||
16493 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_pid_t" >&5 | ||
16494 | $as_echo "$ac_cv_have_pid_t" >&6; } | ||
16495 | if test "x$ac_cv_have_pid_t" = "xyes" ; then | ||
16496 | |||
16497 | $as_echo "#define HAVE_PID_T 1" >>confdefs.h | ||
16498 | |||
16499 | fi | ||
16500 | |||
16501 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mode_t" >&5 | ||
16502 | $as_echo_n "checking for mode_t... " >&6; } | ||
16503 | if ${ac_cv_have_mode_t+:} false; then : | ||
16504 | $as_echo_n "(cached) " >&6 | ||
16505 | else | ||
16506 | |||
16507 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16508 | /* end confdefs.h. */ | ||
16509 | #include <sys/types.h> | ||
16510 | int | ||
16511 | main () | ||
16512 | { | ||
16513 | mode_t foo; foo = 1235; | ||
16514 | ; | ||
16515 | return 0; | ||
16516 | } | ||
16517 | _ACEOF | ||
16518 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16519 | ac_cv_have_mode_t="yes" | ||
16520 | else | ||
16521 | ac_cv_have_mode_t="no" | ||
16522 | |||
16523 | fi | ||
16524 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16525 | |||
16526 | fi | ||
16527 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_mode_t" >&5 | ||
16528 | $as_echo "$ac_cv_have_mode_t" >&6; } | ||
16529 | if test "x$ac_cv_have_mode_t" = "xyes" ; then | ||
16530 | |||
16531 | $as_echo "#define HAVE_MODE_T 1" >>confdefs.h | ||
16532 | |||
16533 | fi | ||
16534 | |||
16535 | |||
16536 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_storage" >&5 | ||
16537 | $as_echo_n "checking for struct sockaddr_storage... " >&6; } | ||
16538 | if ${ac_cv_have_struct_sockaddr_storage+:} false; then : | ||
16539 | $as_echo_n "(cached) " >&6 | ||
16540 | else | ||
16541 | |||
16542 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16543 | /* end confdefs.h. */ | ||
16544 | |||
16545 | #include <sys/types.h> | ||
16546 | #include <sys/socket.h> | ||
16547 | |||
16548 | int | ||
16549 | main () | ||
16550 | { | ||
16551 | struct sockaddr_storage s; | ||
16552 | ; | ||
16553 | return 0; | ||
16554 | } | ||
16555 | _ACEOF | ||
16556 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16557 | ac_cv_have_struct_sockaddr_storage="yes" | ||
16558 | else | ||
16559 | ac_cv_have_struct_sockaddr_storage="no" | ||
16560 | |||
16561 | fi | ||
16562 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16563 | |||
16564 | fi | ||
16565 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_storage" >&5 | ||
16566 | $as_echo "$ac_cv_have_struct_sockaddr_storage" >&6; } | ||
16567 | if test "x$ac_cv_have_struct_sockaddr_storage" = "xyes" ; then | ||
16568 | |||
16569 | $as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h | ||
16570 | |||
16571 | fi | ||
16572 | |||
16573 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_in6" >&5 | ||
16574 | $as_echo_n "checking for struct sockaddr_in6... " >&6; } | ||
16575 | if ${ac_cv_have_struct_sockaddr_in6+:} false; then : | ||
16576 | $as_echo_n "(cached) " >&6 | ||
16577 | else | ||
16578 | |||
16579 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16580 | /* end confdefs.h. */ | ||
16581 | |||
16582 | #include <sys/types.h> | ||
16583 | #include <netinet/in.h> | ||
16584 | |||
16585 | int | ||
16586 | main () | ||
16587 | { | ||
16588 | struct sockaddr_in6 s; s.sin6_family = 0; | ||
16589 | ; | ||
16590 | return 0; | ||
16591 | } | ||
16592 | _ACEOF | ||
16593 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16594 | ac_cv_have_struct_sockaddr_in6="yes" | ||
16595 | else | ||
16596 | ac_cv_have_struct_sockaddr_in6="no" | ||
16597 | |||
16598 | fi | ||
16599 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16600 | |||
16601 | fi | ||
16602 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_sockaddr_in6" >&5 | ||
16603 | $as_echo "$ac_cv_have_struct_sockaddr_in6" >&6; } | ||
16604 | if test "x$ac_cv_have_struct_sockaddr_in6" = "xyes" ; then | ||
16605 | |||
16606 | $as_echo "#define HAVE_STRUCT_SOCKADDR_IN6 1" >>confdefs.h | ||
16607 | |||
16608 | fi | ||
16609 | |||
16610 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct in6_addr" >&5 | ||
16611 | $as_echo_n "checking for struct in6_addr... " >&6; } | ||
16612 | if ${ac_cv_have_struct_in6_addr+:} false; then : | ||
16613 | $as_echo_n "(cached) " >&6 | ||
16614 | else | ||
16615 | |||
16616 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16617 | /* end confdefs.h. */ | ||
16618 | |||
16619 | #include <sys/types.h> | ||
16620 | #include <netinet/in.h> | ||
16621 | |||
16622 | int | ||
16623 | main () | ||
16624 | { | ||
16625 | struct in6_addr s; s.s6_addr[0] = 0; | ||
16626 | ; | ||
16627 | return 0; | ||
16628 | } | ||
16629 | _ACEOF | ||
16630 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16631 | ac_cv_have_struct_in6_addr="yes" | ||
16632 | else | ||
16633 | ac_cv_have_struct_in6_addr="no" | ||
16634 | |||
16635 | fi | ||
16636 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16637 | |||
16638 | fi | ||
16639 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_in6_addr" >&5 | ||
16640 | $as_echo "$ac_cv_have_struct_in6_addr" >&6; } | ||
16641 | if test "x$ac_cv_have_struct_in6_addr" = "xyes" ; then | ||
16642 | |||
16643 | $as_echo "#define HAVE_STRUCT_IN6_ADDR 1" >>confdefs.h | ||
16644 | |||
16645 | |||
16646 | ac_fn_c_check_member "$LINENO" "struct sockaddr_in6" "sin6_scope_id" "ac_cv_member_struct_sockaddr_in6_sin6_scope_id" " | ||
16647 | #ifdef HAVE_SYS_TYPES_H | ||
16648 | #include <sys/types.h> | ||
16649 | #endif | ||
16650 | #include <netinet/in.h> | ||
16651 | |||
16652 | " | ||
16653 | if test "x$ac_cv_member_struct_sockaddr_in6_sin6_scope_id" = xyes; then : | ||
16654 | |||
16655 | cat >>confdefs.h <<_ACEOF | ||
16656 | #define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1 | ||
16657 | _ACEOF | ||
16658 | |||
16659 | |||
16660 | fi | ||
16661 | |||
16662 | fi | ||
16663 | |||
16664 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct addrinfo" >&5 | ||
16665 | $as_echo_n "checking for struct addrinfo... " >&6; } | ||
16666 | if ${ac_cv_have_struct_addrinfo+:} false; then : | ||
16667 | $as_echo_n "(cached) " >&6 | ||
16668 | else | ||
16669 | |||
16670 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16671 | /* end confdefs.h. */ | ||
16672 | |||
16673 | #include <sys/types.h> | ||
16674 | #include <sys/socket.h> | ||
16675 | #include <netdb.h> | ||
16676 | |||
16677 | int | ||
16678 | main () | ||
16679 | { | ||
16680 | struct addrinfo s; s.ai_flags = AI_PASSIVE; | ||
16681 | ; | ||
16682 | return 0; | ||
16683 | } | ||
16684 | _ACEOF | ||
16685 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16686 | ac_cv_have_struct_addrinfo="yes" | ||
16687 | else | ||
16688 | ac_cv_have_struct_addrinfo="no" | ||
16689 | |||
16690 | fi | ||
16691 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16692 | |||
16693 | fi | ||
16694 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_addrinfo" >&5 | ||
16695 | $as_echo "$ac_cv_have_struct_addrinfo" >&6; } | ||
16696 | if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then | ||
16697 | |||
16698 | $as_echo "#define HAVE_STRUCT_ADDRINFO 1" >>confdefs.h | ||
16699 | |||
16700 | fi | ||
16701 | |||
16702 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5 | ||
16703 | $as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } | ||
16704 | if ${ac_cv_header_time+:} false; then : | ||
16705 | $as_echo_n "(cached) " >&6 | ||
16706 | else | ||
16707 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16708 | /* end confdefs.h. */ | ||
16709 | #include <sys/types.h> | ||
16710 | #include <sys/time.h> | ||
16711 | #include <time.h> | ||
16712 | |||
16713 | int | ||
16714 | main () | ||
16715 | { | ||
16716 | if ((struct tm *) 0) | ||
16717 | return 0; | ||
16718 | ; | ||
16719 | return 0; | ||
16720 | } | ||
16721 | _ACEOF | ||
16722 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16723 | ac_cv_header_time=yes | ||
16724 | else | ||
16725 | ac_cv_header_time=no | ||
16726 | fi | ||
16727 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16728 | fi | ||
16729 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5 | ||
16730 | $as_echo "$ac_cv_header_time" >&6; } | ||
16731 | if test $ac_cv_header_time = yes; then | ||
16732 | |||
16733 | $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h | ||
16734 | |||
16735 | fi | ||
16736 | |||
16737 | |||
16738 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5 | ||
16739 | $as_echo_n "checking for struct timeval... " >&6; } | ||
16740 | if ${ac_cv_have_struct_timeval+:} false; then : | ||
16741 | $as_echo_n "(cached) " >&6 | ||
16742 | else | ||
16743 | |||
16744 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16745 | /* end confdefs.h. */ | ||
16746 | #include <sys/time.h> | ||
16747 | int | ||
16748 | main () | ||
16749 | { | ||
16750 | struct timeval tv; tv.tv_sec = 1; | ||
16751 | ; | ||
16752 | return 0; | ||
16753 | } | ||
16754 | _ACEOF | ||
16755 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16756 | ac_cv_have_struct_timeval="yes" | ||
16757 | else | ||
16758 | ac_cv_have_struct_timeval="no" | ||
16759 | |||
16760 | fi | ||
16761 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16762 | |||
16763 | fi | ||
16764 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_timeval" >&5 | ||
16765 | $as_echo "$ac_cv_have_struct_timeval" >&6; } | ||
16766 | if test "x$ac_cv_have_struct_timeval" = "xyes" ; then | ||
16767 | |||
16768 | $as_echo "#define HAVE_STRUCT_TIMEVAL 1" >>confdefs.h | ||
16769 | |||
16770 | have_struct_timeval=1 | ||
16771 | fi | ||
16772 | |||
16773 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec" >&5 | ||
16774 | $as_echo_n "checking for struct timespec... " >&6; } | ||
16775 | if ${ac_cv_have_struct_timespec+:} false; then : | ||
16776 | $as_echo_n "(cached) " >&6 | ||
16777 | else | ||
16778 | |||
16779 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16780 | /* end confdefs.h. */ | ||
16781 | |||
16782 | #ifdef TIME_WITH_SYS_TIME | ||
16783 | # include <sys/time.h> | ||
16784 | # include <time.h> | ||
16785 | #else | ||
16786 | # ifdef HAVE_SYS_TIME_H | ||
16787 | # include <sys/time.h> | ||
16788 | # else | ||
16789 | # include <time.h> | ||
16790 | # endif | ||
16791 | #endif | ||
16792 | |||
16793 | int | ||
16794 | main () | ||
16795 | { | ||
16796 | struct timespec ts; ts.tv_sec = 1; | ||
16797 | ; | ||
16798 | return 0; | ||
16799 | } | ||
16800 | _ACEOF | ||
16801 | if ac_fn_c_try_compile "$LINENO"; then : | ||
16802 | ac_cv_have_struct_timespec="yes" | ||
16803 | else | ||
16804 | ac_cv_have_struct_timespec="no" | ||
16805 | |||
16806 | fi | ||
16807 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
16808 | |||
16809 | fi | ||
16810 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_struct_timespec" >&5 | ||
16811 | $as_echo "$ac_cv_have_struct_timespec" >&6; } | ||
16812 | if test "x$ac_cv_have_struct_timespec" = "xyes" ; then | ||
16813 | |||
16814 | $as_echo "#define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h | ||
16815 | |||
16816 | have_struct_timespec=1 | ||
16817 | fi | ||
16818 | |||
16819 | # We need int64_t or else certain parts of the compile will fail. | ||
16820 | if test "x$ac_cv_have_int64_t" = "xno" && \ | ||
16821 | test "x$ac_cv_sizeof_long_int" != "x8" && \ | ||
16822 | test "x$ac_cv_sizeof_long_long_int" = "x0" ; then | ||
16823 | echo "OpenSSH requires int64_t support. Contact your vendor or install" | ||
16824 | echo "an alternative compiler (I.E., GCC) before continuing." | ||
16825 | echo "" | ||
16826 | exit 1; | ||
16827 | else | ||
16828 | if test "$cross_compiling" = yes; then : | ||
16829 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Assuming working snprintf()" >&5 | ||
16830 | $as_echo "$as_me: WARNING: cross compiling: Assuming working snprintf()" >&2;} | ||
16831 | |||
16832 | else | ||
16833 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16834 | /* end confdefs.h. */ | ||
16835 | |||
16836 | #include <stdio.h> | ||
16837 | #include <stdlib.h> | ||
16838 | #include <string.h> | ||
16839 | #ifdef HAVE_SNPRINTF | ||
16840 | main() | ||
16841 | { | ||
16842 | char buf[50]; | ||
16843 | char expected_out[50]; | ||
16844 | int mazsize = 50 ; | ||
16845 | #if (SIZEOF_LONG_INT == 8) | ||
16846 | long int num = 0x7fffffffffffffff; | ||
16847 | #else | ||
16848 | long long num = 0x7fffffffffffffffll; | ||
16849 | #endif | ||
16850 | strcpy(expected_out, "9223372036854775807"); | ||
16851 | snprintf(buf, mazsize, "%lld", num); | ||
16852 | if(strcmp(buf, expected_out) != 0) | ||
16853 | exit(1); | ||
16854 | exit(0); | ||
16855 | } | ||
16856 | #else | ||
16857 | main() { exit(0); } | ||
16858 | #endif | ||
16859 | |||
16860 | _ACEOF | ||
16861 | if ac_fn_c_try_run "$LINENO"; then : | ||
16862 | true | ||
16863 | else | ||
16864 | $as_echo "#define BROKEN_SNPRINTF 1" >>confdefs.h | ||
16865 | |||
16866 | fi | ||
16867 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
16868 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
16869 | fi | ||
16870 | |||
16871 | fi | ||
16872 | |||
16873 | |||
16874 | # look for field 'ut_host' in header 'utmp.h' | ||
16875 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
16876 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host | ||
16877 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmp.h" >&5 | ||
16878 | $as_echo_n "checking for ut_host field in utmp.h... " >&6; } | ||
16879 | if eval \${$ossh_varname+:} false; then : | ||
16880 | $as_echo_n "(cached) " >&6 | ||
16881 | else | ||
16882 | |||
16883 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16884 | /* end confdefs.h. */ | ||
16885 | #include <utmp.h> | ||
16886 | |||
16887 | _ACEOF | ||
16888 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
16889 | $EGREP "ut_host" >/dev/null 2>&1; then : | ||
16890 | eval "$ossh_varname=yes" | ||
16891 | else | ||
16892 | eval "$ossh_varname=no" | ||
16893 | fi | ||
16894 | rm -f conftest* | ||
16895 | |||
16896 | fi | ||
16897 | |||
16898 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
16899 | if test -n "`echo $ossh_varname`"; then | ||
16900 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
16901 | $as_echo "$ossh_result" >&6; } | ||
16902 | if test "x$ossh_result" = "xyes"; then | ||
16903 | |||
16904 | $as_echo "#define HAVE_HOST_IN_UTMP 1" >>confdefs.h | ||
16905 | |||
16906 | fi | ||
16907 | else | ||
16908 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16909 | $as_echo "no" >&6; } | ||
16910 | fi | ||
16911 | |||
16912 | |||
16913 | # look for field 'ut_host' in header 'utmpx.h' | ||
16914 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
16915 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_host | ||
16916 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_host field in utmpx.h" >&5 | ||
16917 | $as_echo_n "checking for ut_host field in utmpx.h... " >&6; } | ||
16918 | if eval \${$ossh_varname+:} false; then : | ||
16919 | $as_echo_n "(cached) " >&6 | ||
16920 | else | ||
16921 | |||
16922 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16923 | /* end confdefs.h. */ | ||
16924 | #include <utmpx.h> | ||
16925 | |||
16926 | _ACEOF | ||
16927 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
16928 | $EGREP "ut_host" >/dev/null 2>&1; then : | ||
16929 | eval "$ossh_varname=yes" | ||
16930 | else | ||
16931 | eval "$ossh_varname=no" | ||
16932 | fi | ||
16933 | rm -f conftest* | ||
16934 | |||
16935 | fi | ||
16936 | |||
16937 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
16938 | if test -n "`echo $ossh_varname`"; then | ||
16939 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
16940 | $as_echo "$ossh_result" >&6; } | ||
16941 | if test "x$ossh_result" = "xyes"; then | ||
16942 | |||
16943 | $as_echo "#define HAVE_HOST_IN_UTMPX 1" >>confdefs.h | ||
16944 | |||
16945 | fi | ||
16946 | else | ||
16947 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16948 | $as_echo "no" >&6; } | ||
16949 | fi | ||
16950 | |||
16951 | |||
16952 | # look for field 'syslen' in header 'utmpx.h' | ||
16953 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
16954 | ossh_varname="ossh_cv_$ossh_safe""_has_"syslen | ||
16955 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for syslen field in utmpx.h" >&5 | ||
16956 | $as_echo_n "checking for syslen field in utmpx.h... " >&6; } | ||
16957 | if eval \${$ossh_varname+:} false; then : | ||
16958 | $as_echo_n "(cached) " >&6 | ||
16959 | else | ||
16960 | |||
16961 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
16962 | /* end confdefs.h. */ | ||
16963 | #include <utmpx.h> | ||
16964 | |||
16965 | _ACEOF | ||
16966 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
16967 | $EGREP "syslen" >/dev/null 2>&1; then : | ||
16968 | eval "$ossh_varname=yes" | ||
16969 | else | ||
16970 | eval "$ossh_varname=no" | ||
16971 | fi | ||
16972 | rm -f conftest* | ||
16973 | |||
16974 | fi | ||
16975 | |||
16976 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
16977 | if test -n "`echo $ossh_varname`"; then | ||
16978 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
16979 | $as_echo "$ossh_result" >&6; } | ||
16980 | if test "x$ossh_result" = "xyes"; then | ||
16981 | |||
16982 | $as_echo "#define HAVE_SYSLEN_IN_UTMPX 1" >>confdefs.h | ||
16983 | |||
16984 | fi | ||
16985 | else | ||
16986 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
16987 | $as_echo "no" >&6; } | ||
16988 | fi | ||
16989 | |||
16990 | |||
16991 | # look for field 'ut_pid' in header 'utmp.h' | ||
16992 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
16993 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_pid | ||
16994 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_pid field in utmp.h" >&5 | ||
16995 | $as_echo_n "checking for ut_pid field in utmp.h... " >&6; } | ||
16996 | if eval \${$ossh_varname+:} false; then : | ||
16997 | $as_echo_n "(cached) " >&6 | ||
16998 | else | ||
16999 | |||
17000 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17001 | /* end confdefs.h. */ | ||
17002 | #include <utmp.h> | ||
17003 | |||
17004 | _ACEOF | ||
17005 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17006 | $EGREP "ut_pid" >/dev/null 2>&1; then : | ||
17007 | eval "$ossh_varname=yes" | ||
17008 | else | ||
17009 | eval "$ossh_varname=no" | ||
17010 | fi | ||
17011 | rm -f conftest* | ||
17012 | |||
17013 | fi | ||
17014 | |||
17015 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17016 | if test -n "`echo $ossh_varname`"; then | ||
17017 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17018 | $as_echo "$ossh_result" >&6; } | ||
17019 | if test "x$ossh_result" = "xyes"; then | ||
17020 | |||
17021 | $as_echo "#define HAVE_PID_IN_UTMP 1" >>confdefs.h | ||
17022 | |||
17023 | fi | ||
17024 | else | ||
17025 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17026 | $as_echo "no" >&6; } | ||
17027 | fi | ||
17028 | |||
17029 | |||
17030 | # look for field 'ut_type' in header 'utmp.h' | ||
17031 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17032 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type | ||
17033 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmp.h" >&5 | ||
17034 | $as_echo_n "checking for ut_type field in utmp.h... " >&6; } | ||
17035 | if eval \${$ossh_varname+:} false; then : | ||
17036 | $as_echo_n "(cached) " >&6 | ||
17037 | else | ||
17038 | |||
17039 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17040 | /* end confdefs.h. */ | ||
17041 | #include <utmp.h> | ||
17042 | |||
17043 | _ACEOF | ||
17044 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17045 | $EGREP "ut_type" >/dev/null 2>&1; then : | ||
17046 | eval "$ossh_varname=yes" | ||
17047 | else | ||
17048 | eval "$ossh_varname=no" | ||
17049 | fi | ||
17050 | rm -f conftest* | ||
17051 | |||
17052 | fi | ||
17053 | |||
17054 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17055 | if test -n "`echo $ossh_varname`"; then | ||
17056 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17057 | $as_echo "$ossh_result" >&6; } | ||
17058 | if test "x$ossh_result" = "xyes"; then | ||
17059 | |||
17060 | $as_echo "#define HAVE_TYPE_IN_UTMP 1" >>confdefs.h | ||
17061 | |||
17062 | fi | ||
17063 | else | ||
17064 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17065 | $as_echo "no" >&6; } | ||
17066 | fi | ||
17067 | |||
17068 | |||
17069 | # look for field 'ut_type' in header 'utmpx.h' | ||
17070 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17071 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_type | ||
17072 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_type field in utmpx.h" >&5 | ||
17073 | $as_echo_n "checking for ut_type field in utmpx.h... " >&6; } | ||
17074 | if eval \${$ossh_varname+:} false; then : | ||
17075 | $as_echo_n "(cached) " >&6 | ||
17076 | else | ||
17077 | |||
17078 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17079 | /* end confdefs.h. */ | ||
17080 | #include <utmpx.h> | ||
17081 | |||
17082 | _ACEOF | ||
17083 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17084 | $EGREP "ut_type" >/dev/null 2>&1; then : | ||
17085 | eval "$ossh_varname=yes" | ||
17086 | else | ||
17087 | eval "$ossh_varname=no" | ||
17088 | fi | ||
17089 | rm -f conftest* | ||
17090 | |||
17091 | fi | ||
17092 | |||
17093 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17094 | if test -n "`echo $ossh_varname`"; then | ||
17095 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17096 | $as_echo "$ossh_result" >&6; } | ||
17097 | if test "x$ossh_result" = "xyes"; then | ||
17098 | |||
17099 | $as_echo "#define HAVE_TYPE_IN_UTMPX 1" >>confdefs.h | ||
17100 | |||
17101 | fi | ||
17102 | else | ||
17103 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17104 | $as_echo "no" >&6; } | ||
17105 | fi | ||
17106 | |||
17107 | |||
17108 | # look for field 'ut_tv' in header 'utmp.h' | ||
17109 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17110 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv | ||
17111 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmp.h" >&5 | ||
17112 | $as_echo_n "checking for ut_tv field in utmp.h... " >&6; } | ||
17113 | if eval \${$ossh_varname+:} false; then : | ||
17114 | $as_echo_n "(cached) " >&6 | ||
17115 | else | ||
17116 | |||
17117 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17118 | /* end confdefs.h. */ | ||
17119 | #include <utmp.h> | ||
17120 | |||
17121 | _ACEOF | ||
17122 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17123 | $EGREP "ut_tv" >/dev/null 2>&1; then : | ||
17124 | eval "$ossh_varname=yes" | ||
17125 | else | ||
17126 | eval "$ossh_varname=no" | ||
17127 | fi | ||
17128 | rm -f conftest* | ||
17129 | |||
17130 | fi | ||
17131 | |||
17132 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17133 | if test -n "`echo $ossh_varname`"; then | ||
17134 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17135 | $as_echo "$ossh_result" >&6; } | ||
17136 | if test "x$ossh_result" = "xyes"; then | ||
17137 | |||
17138 | $as_echo "#define HAVE_TV_IN_UTMP 1" >>confdefs.h | ||
17139 | |||
17140 | fi | ||
17141 | else | ||
17142 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17143 | $as_echo "no" >&6; } | ||
17144 | fi | ||
17145 | |||
17146 | |||
17147 | # look for field 'ut_id' in header 'utmp.h' | ||
17148 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17149 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id | ||
17150 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmp.h" >&5 | ||
17151 | $as_echo_n "checking for ut_id field in utmp.h... " >&6; } | ||
17152 | if eval \${$ossh_varname+:} false; then : | ||
17153 | $as_echo_n "(cached) " >&6 | ||
17154 | else | ||
17155 | |||
17156 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17157 | /* end confdefs.h. */ | ||
17158 | #include <utmp.h> | ||
17159 | |||
17160 | _ACEOF | ||
17161 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17162 | $EGREP "ut_id" >/dev/null 2>&1; then : | ||
17163 | eval "$ossh_varname=yes" | ||
17164 | else | ||
17165 | eval "$ossh_varname=no" | ||
17166 | fi | ||
17167 | rm -f conftest* | ||
17168 | |||
17169 | fi | ||
17170 | |||
17171 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17172 | if test -n "`echo $ossh_varname`"; then | ||
17173 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17174 | $as_echo "$ossh_result" >&6; } | ||
17175 | if test "x$ossh_result" = "xyes"; then | ||
17176 | |||
17177 | $as_echo "#define HAVE_ID_IN_UTMP 1" >>confdefs.h | ||
17178 | |||
17179 | fi | ||
17180 | else | ||
17181 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17182 | $as_echo "no" >&6; } | ||
17183 | fi | ||
17184 | |||
17185 | |||
17186 | # look for field 'ut_id' in header 'utmpx.h' | ||
17187 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17188 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_id | ||
17189 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_id field in utmpx.h" >&5 | ||
17190 | $as_echo_n "checking for ut_id field in utmpx.h... " >&6; } | ||
17191 | if eval \${$ossh_varname+:} false; then : | ||
17192 | $as_echo_n "(cached) " >&6 | ||
17193 | else | ||
17194 | |||
17195 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17196 | /* end confdefs.h. */ | ||
17197 | #include <utmpx.h> | ||
17198 | |||
17199 | _ACEOF | ||
17200 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17201 | $EGREP "ut_id" >/dev/null 2>&1; then : | ||
17202 | eval "$ossh_varname=yes" | ||
17203 | else | ||
17204 | eval "$ossh_varname=no" | ||
17205 | fi | ||
17206 | rm -f conftest* | ||
17207 | |||
17208 | fi | ||
17209 | |||
17210 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17211 | if test -n "`echo $ossh_varname`"; then | ||
17212 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17213 | $as_echo "$ossh_result" >&6; } | ||
17214 | if test "x$ossh_result" = "xyes"; then | ||
17215 | |||
17216 | $as_echo "#define HAVE_ID_IN_UTMPX 1" >>confdefs.h | ||
17217 | |||
17218 | fi | ||
17219 | else | ||
17220 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17221 | $as_echo "no" >&6; } | ||
17222 | fi | ||
17223 | |||
17224 | |||
17225 | # look for field 'ut_addr' in header 'utmp.h' | ||
17226 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17227 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr | ||
17228 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmp.h" >&5 | ||
17229 | $as_echo_n "checking for ut_addr field in utmp.h... " >&6; } | ||
17230 | if eval \${$ossh_varname+:} false; then : | ||
17231 | $as_echo_n "(cached) " >&6 | ||
17232 | else | ||
17233 | |||
17234 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17235 | /* end confdefs.h. */ | ||
17236 | #include <utmp.h> | ||
17237 | |||
17238 | _ACEOF | ||
17239 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17240 | $EGREP "ut_addr" >/dev/null 2>&1; then : | ||
17241 | eval "$ossh_varname=yes" | ||
17242 | else | ||
17243 | eval "$ossh_varname=no" | ||
17244 | fi | ||
17245 | rm -f conftest* | ||
17246 | |||
17247 | fi | ||
17248 | |||
17249 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17250 | if test -n "`echo $ossh_varname`"; then | ||
17251 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17252 | $as_echo "$ossh_result" >&6; } | ||
17253 | if test "x$ossh_result" = "xyes"; then | ||
17254 | |||
17255 | $as_echo "#define HAVE_ADDR_IN_UTMP 1" >>confdefs.h | ||
17256 | |||
17257 | fi | ||
17258 | else | ||
17259 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17260 | $as_echo "no" >&6; } | ||
17261 | fi | ||
17262 | |||
17263 | |||
17264 | # look for field 'ut_addr' in header 'utmpx.h' | ||
17265 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17266 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr | ||
17267 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr field in utmpx.h" >&5 | ||
17268 | $as_echo_n "checking for ut_addr field in utmpx.h... " >&6; } | ||
17269 | if eval \${$ossh_varname+:} false; then : | ||
17270 | $as_echo_n "(cached) " >&6 | ||
17271 | else | ||
17272 | |||
17273 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17274 | /* end confdefs.h. */ | ||
17275 | #include <utmpx.h> | ||
17276 | |||
17277 | _ACEOF | ||
17278 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17279 | $EGREP "ut_addr" >/dev/null 2>&1; then : | ||
17280 | eval "$ossh_varname=yes" | ||
17281 | else | ||
17282 | eval "$ossh_varname=no" | ||
17283 | fi | ||
17284 | rm -f conftest* | ||
17285 | |||
17286 | fi | ||
17287 | |||
17288 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17289 | if test -n "`echo $ossh_varname`"; then | ||
17290 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17291 | $as_echo "$ossh_result" >&6; } | ||
17292 | if test "x$ossh_result" = "xyes"; then | ||
17293 | |||
17294 | $as_echo "#define HAVE_ADDR_IN_UTMPX 1" >>confdefs.h | ||
17295 | |||
17296 | fi | ||
17297 | else | ||
17298 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17299 | $as_echo "no" >&6; } | ||
17300 | fi | ||
17301 | |||
17302 | |||
17303 | # look for field 'ut_addr_v6' in header 'utmp.h' | ||
17304 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17305 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6 | ||
17306 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmp.h" >&5 | ||
17307 | $as_echo_n "checking for ut_addr_v6 field in utmp.h... " >&6; } | ||
17308 | if eval \${$ossh_varname+:} false; then : | ||
17309 | $as_echo_n "(cached) " >&6 | ||
17310 | else | ||
17311 | |||
17312 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17313 | /* end confdefs.h. */ | ||
17314 | #include <utmp.h> | ||
17315 | |||
17316 | _ACEOF | ||
17317 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17318 | $EGREP "ut_addr_v6" >/dev/null 2>&1; then : | ||
17319 | eval "$ossh_varname=yes" | ||
17320 | else | ||
17321 | eval "$ossh_varname=no" | ||
17322 | fi | ||
17323 | rm -f conftest* | ||
17324 | |||
17325 | fi | ||
17326 | |||
17327 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17328 | if test -n "`echo $ossh_varname`"; then | ||
17329 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17330 | $as_echo "$ossh_result" >&6; } | ||
17331 | if test "x$ossh_result" = "xyes"; then | ||
17332 | |||
17333 | $as_echo "#define HAVE_ADDR_V6_IN_UTMP 1" >>confdefs.h | ||
17334 | |||
17335 | fi | ||
17336 | else | ||
17337 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17338 | $as_echo "no" >&6; } | ||
17339 | fi | ||
17340 | |||
17341 | |||
17342 | # look for field 'ut_addr_v6' in header 'utmpx.h' | ||
17343 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17344 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_addr_v6 | ||
17345 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_addr_v6 field in utmpx.h" >&5 | ||
17346 | $as_echo_n "checking for ut_addr_v6 field in utmpx.h... " >&6; } | ||
17347 | if eval \${$ossh_varname+:} false; then : | ||
17348 | $as_echo_n "(cached) " >&6 | ||
17349 | else | ||
17350 | |||
17351 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17352 | /* end confdefs.h. */ | ||
17353 | #include <utmpx.h> | ||
17354 | |||
17355 | _ACEOF | ||
17356 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17357 | $EGREP "ut_addr_v6" >/dev/null 2>&1; then : | ||
17358 | eval "$ossh_varname=yes" | ||
17359 | else | ||
17360 | eval "$ossh_varname=no" | ||
17361 | fi | ||
17362 | rm -f conftest* | ||
17363 | |||
17364 | fi | ||
17365 | |||
17366 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17367 | if test -n "`echo $ossh_varname`"; then | ||
17368 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17369 | $as_echo "$ossh_result" >&6; } | ||
17370 | if test "x$ossh_result" = "xyes"; then | ||
17371 | |||
17372 | $as_echo "#define HAVE_ADDR_V6_IN_UTMPX 1" >>confdefs.h | ||
17373 | |||
17374 | fi | ||
17375 | else | ||
17376 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17377 | $as_echo "no" >&6; } | ||
17378 | fi | ||
17379 | |||
17380 | |||
17381 | # look for field 'ut_exit' in header 'utmp.h' | ||
17382 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17383 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_exit | ||
17384 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_exit field in utmp.h" >&5 | ||
17385 | $as_echo_n "checking for ut_exit field in utmp.h... " >&6; } | ||
17386 | if eval \${$ossh_varname+:} false; then : | ||
17387 | $as_echo_n "(cached) " >&6 | ||
17388 | else | ||
17389 | |||
17390 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17391 | /* end confdefs.h. */ | ||
17392 | #include <utmp.h> | ||
17393 | |||
17394 | _ACEOF | ||
17395 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17396 | $EGREP "ut_exit" >/dev/null 2>&1; then : | ||
17397 | eval "$ossh_varname=yes" | ||
17398 | else | ||
17399 | eval "$ossh_varname=no" | ||
17400 | fi | ||
17401 | rm -f conftest* | ||
17402 | |||
17403 | fi | ||
17404 | |||
17405 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17406 | if test -n "`echo $ossh_varname`"; then | ||
17407 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17408 | $as_echo "$ossh_result" >&6; } | ||
17409 | if test "x$ossh_result" = "xyes"; then | ||
17410 | |||
17411 | $as_echo "#define HAVE_EXIT_IN_UTMP 1" >>confdefs.h | ||
17412 | |||
17413 | fi | ||
17414 | else | ||
17415 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17416 | $as_echo "no" >&6; } | ||
17417 | fi | ||
17418 | |||
17419 | |||
17420 | # look for field 'ut_time' in header 'utmp.h' | ||
17421 | ossh_safe=`echo "utmp.h" | sed 'y%./+-%__p_%'` | ||
17422 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time | ||
17423 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmp.h" >&5 | ||
17424 | $as_echo_n "checking for ut_time field in utmp.h... " >&6; } | ||
17425 | if eval \${$ossh_varname+:} false; then : | ||
17426 | $as_echo_n "(cached) " >&6 | ||
17427 | else | ||
17428 | |||
17429 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17430 | /* end confdefs.h. */ | ||
17431 | #include <utmp.h> | ||
17432 | |||
17433 | _ACEOF | ||
17434 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17435 | $EGREP "ut_time" >/dev/null 2>&1; then : | ||
17436 | eval "$ossh_varname=yes" | ||
17437 | else | ||
17438 | eval "$ossh_varname=no" | ||
17439 | fi | ||
17440 | rm -f conftest* | ||
17441 | |||
17442 | fi | ||
17443 | |||
17444 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17445 | if test -n "`echo $ossh_varname`"; then | ||
17446 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17447 | $as_echo "$ossh_result" >&6; } | ||
17448 | if test "x$ossh_result" = "xyes"; then | ||
17449 | |||
17450 | $as_echo "#define HAVE_TIME_IN_UTMP 1" >>confdefs.h | ||
17451 | |||
17452 | fi | ||
17453 | else | ||
17454 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17455 | $as_echo "no" >&6; } | ||
17456 | fi | ||
17457 | |||
17458 | |||
17459 | # look for field 'ut_time' in header 'utmpx.h' | ||
17460 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17461 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_time | ||
17462 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_time field in utmpx.h" >&5 | ||
17463 | $as_echo_n "checking for ut_time field in utmpx.h... " >&6; } | ||
17464 | if eval \${$ossh_varname+:} false; then : | ||
17465 | $as_echo_n "(cached) " >&6 | ||
17466 | else | ||
17467 | |||
17468 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17469 | /* end confdefs.h. */ | ||
17470 | #include <utmpx.h> | ||
17471 | |||
17472 | _ACEOF | ||
17473 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17474 | $EGREP "ut_time" >/dev/null 2>&1; then : | ||
17475 | eval "$ossh_varname=yes" | ||
17476 | else | ||
17477 | eval "$ossh_varname=no" | ||
17478 | fi | ||
17479 | rm -f conftest* | ||
17480 | |||
17481 | fi | ||
17482 | |||
17483 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17484 | if test -n "`echo $ossh_varname`"; then | ||
17485 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17486 | $as_echo "$ossh_result" >&6; } | ||
17487 | if test "x$ossh_result" = "xyes"; then | ||
17488 | |||
17489 | $as_echo "#define HAVE_TIME_IN_UTMPX 1" >>confdefs.h | ||
17490 | |||
17491 | fi | ||
17492 | else | ||
17493 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17494 | $as_echo "no" >&6; } | ||
17495 | fi | ||
17496 | |||
17497 | |||
17498 | # look for field 'ut_tv' in header 'utmpx.h' | ||
17499 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17500 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_tv | ||
17501 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_tv field in utmpx.h" >&5 | ||
17502 | $as_echo_n "checking for ut_tv field in utmpx.h... " >&6; } | ||
17503 | if eval \${$ossh_varname+:} false; then : | ||
17504 | $as_echo_n "(cached) " >&6 | ||
17505 | else | ||
17506 | |||
17507 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17508 | /* end confdefs.h. */ | ||
17509 | #include <utmpx.h> | ||
17510 | |||
17511 | _ACEOF | ||
17512 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17513 | $EGREP "ut_tv" >/dev/null 2>&1; then : | ||
17514 | eval "$ossh_varname=yes" | ||
17515 | else | ||
17516 | eval "$ossh_varname=no" | ||
17517 | fi | ||
17518 | rm -f conftest* | ||
17519 | |||
17520 | fi | ||
17521 | |||
17522 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17523 | if test -n "`echo $ossh_varname`"; then | ||
17524 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17525 | $as_echo "$ossh_result" >&6; } | ||
17526 | if test "x$ossh_result" = "xyes"; then | ||
17527 | |||
17528 | $as_echo "#define HAVE_TV_IN_UTMPX 1" >>confdefs.h | ||
17529 | |||
17530 | fi | ||
17531 | else | ||
17532 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17533 | $as_echo "no" >&6; } | ||
17534 | fi | ||
17535 | |||
17536 | |||
17537 | # look for field 'ut_ss' in header 'utmpx.h' | ||
17538 | ossh_safe=`echo "utmpx.h" | sed 'y%./+-%__p_%'` | ||
17539 | ossh_varname="ossh_cv_$ossh_safe""_has_"ut_ss | ||
17540 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ut_ss field in utmpx.h" >&5 | ||
17541 | $as_echo_n "checking for ut_ss field in utmpx.h... " >&6; } | ||
17542 | if eval \${$ossh_varname+:} false; then : | ||
17543 | $as_echo_n "(cached) " >&6 | ||
17544 | else | ||
17545 | |||
17546 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17547 | /* end confdefs.h. */ | ||
17548 | #include <utmpx.h> | ||
17549 | |||
17550 | _ACEOF | ||
17551 | if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | | ||
17552 | $EGREP "ut_ss" >/dev/null 2>&1; then : | ||
17553 | eval "$ossh_varname=yes" | ||
17554 | else | ||
17555 | eval "$ossh_varname=no" | ||
17556 | fi | ||
17557 | rm -f conftest* | ||
17558 | |||
17559 | fi | ||
17560 | |||
17561 | ossh_result=`eval 'echo $'"$ossh_varname"` | ||
17562 | if test -n "`echo $ossh_varname`"; then | ||
17563 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ossh_result" >&5 | ||
17564 | $as_echo "$ossh_result" >&6; } | ||
17565 | if test "x$ossh_result" = "xyes"; then | ||
17566 | |||
17567 | $as_echo "#define HAVE_SS_IN_UTMPX 1" >>confdefs.h | ||
17568 | |||
17569 | fi | ||
17570 | else | ||
17571 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17572 | $as_echo "no" >&6; } | ||
17573 | fi | ||
17574 | |||
17575 | |||
17576 | ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default" | ||
17577 | if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then : | ||
17578 | |||
17579 | cat >>confdefs.h <<_ACEOF | ||
17580 | #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 | ||
17581 | _ACEOF | ||
17582 | |||
17583 | |||
17584 | fi | ||
17585 | |||
17586 | ac_fn_c_check_member "$LINENO" "struct stat" "st_mtim" "ac_cv_member_struct_stat_st_mtim" "$ac_includes_default" | ||
17587 | if test "x$ac_cv_member_struct_stat_st_mtim" = xyes; then : | ||
17588 | |||
17589 | cat >>confdefs.h <<_ACEOF | ||
17590 | #define HAVE_STRUCT_STAT_ST_MTIM 1 | ||
17591 | _ACEOF | ||
17592 | |||
17593 | |||
17594 | fi | ||
17595 | |||
17596 | ac_fn_c_check_member "$LINENO" "struct stat" "st_mtime" "ac_cv_member_struct_stat_st_mtime" "$ac_includes_default" | ||
17597 | if test "x$ac_cv_member_struct_stat_st_mtime" = xyes; then : | ||
17598 | |||
17599 | cat >>confdefs.h <<_ACEOF | ||
17600 | #define HAVE_STRUCT_STAT_ST_MTIME 1 | ||
17601 | _ACEOF | ||
17602 | |||
17603 | |||
17604 | fi | ||
17605 | |||
17606 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_gecos" "ac_cv_member_struct_passwd_pw_gecos" " | ||
17607 | #include <sys/types.h> | ||
17608 | #include <pwd.h> | ||
17609 | |||
17610 | " | ||
17611 | if test "x$ac_cv_member_struct_passwd_pw_gecos" = xyes; then : | ||
17612 | |||
17613 | cat >>confdefs.h <<_ACEOF | ||
17614 | #define HAVE_STRUCT_PASSWD_PW_GECOS 1 | ||
17615 | _ACEOF | ||
17616 | |||
17617 | |||
17618 | fi | ||
17619 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_class" "ac_cv_member_struct_passwd_pw_class" " | ||
17620 | #include <sys/types.h> | ||
17621 | #include <pwd.h> | ||
17622 | |||
17623 | " | ||
17624 | if test "x$ac_cv_member_struct_passwd_pw_class" = xyes; then : | ||
17625 | |||
17626 | cat >>confdefs.h <<_ACEOF | ||
17627 | #define HAVE_STRUCT_PASSWD_PW_CLASS 1 | ||
17628 | _ACEOF | ||
17629 | |||
17630 | |||
17631 | fi | ||
17632 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_change" "ac_cv_member_struct_passwd_pw_change" " | ||
17633 | #include <sys/types.h> | ||
17634 | #include <pwd.h> | ||
17635 | |||
17636 | " | ||
17637 | if test "x$ac_cv_member_struct_passwd_pw_change" = xyes; then : | ||
17638 | |||
17639 | cat >>confdefs.h <<_ACEOF | ||
17640 | #define HAVE_STRUCT_PASSWD_PW_CHANGE 1 | ||
17641 | _ACEOF | ||
17642 | |||
17643 | |||
17644 | fi | ||
17645 | ac_fn_c_check_member "$LINENO" "struct passwd" "pw_expire" "ac_cv_member_struct_passwd_pw_expire" " | ||
17646 | #include <sys/types.h> | ||
17647 | #include <pwd.h> | ||
17648 | |||
17649 | " | ||
17650 | if test "x$ac_cv_member_struct_passwd_pw_expire" = xyes; then : | ||
17651 | |||
17652 | cat >>confdefs.h <<_ACEOF | ||
17653 | #define HAVE_STRUCT_PASSWD_PW_EXPIRE 1 | ||
17654 | _ACEOF | ||
17655 | |||
17656 | |||
17657 | fi | ||
17658 | |||
17659 | |||
17660 | ac_fn_c_check_member "$LINENO" "struct __res_state" "retrans" "ac_cv_member_struct___res_state_retrans" " | ||
17661 | #include <stdio.h> | ||
17662 | #if HAVE_SYS_TYPES_H | ||
17663 | # include <sys/types.h> | ||
17664 | #endif | ||
17665 | #include <netinet/in.h> | ||
17666 | #include <arpa/nameser.h> | ||
17667 | #include <resolv.h> | ||
17668 | |||
17669 | " | ||
17670 | if test "x$ac_cv_member_struct___res_state_retrans" = xyes; then : | ||
17671 | |||
17672 | else | ||
17673 | |||
17674 | $as_echo "#define __res_state state" >>confdefs.h | ||
17675 | |||
17676 | fi | ||
17677 | |||
17678 | |||
17679 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ss_family field in struct sockaddr_storage" >&5 | ||
17680 | $as_echo_n "checking for ss_family field in struct sockaddr_storage... " >&6; } | ||
17681 | if ${ac_cv_have_ss_family_in_struct_ss+:} false; then : | ||
17682 | $as_echo_n "(cached) " >&6 | ||
17683 | else | ||
17684 | |||
17685 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17686 | /* end confdefs.h. */ | ||
17687 | |||
17688 | #include <sys/types.h> | ||
17689 | #include <sys/socket.h> | ||
17690 | |||
17691 | int | ||
17692 | main () | ||
17693 | { | ||
17694 | struct sockaddr_storage s; s.ss_family = 1; | ||
17695 | ; | ||
17696 | return 0; | ||
17697 | } | ||
17698 | _ACEOF | ||
17699 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17700 | ac_cv_have_ss_family_in_struct_ss="yes" | ||
17701 | else | ||
17702 | ac_cv_have_ss_family_in_struct_ss="no" | ||
17703 | fi | ||
17704 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17705 | |||
17706 | fi | ||
17707 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_ss_family_in_struct_ss" >&5 | ||
17708 | $as_echo "$ac_cv_have_ss_family_in_struct_ss" >&6; } | ||
17709 | if test "x$ac_cv_have_ss_family_in_struct_ss" = "xyes" ; then | ||
17710 | |||
17711 | $as_echo "#define HAVE_SS_FAMILY_IN_SS 1" >>confdefs.h | ||
17712 | |||
17713 | fi | ||
17714 | |||
17715 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __ss_family field in struct sockaddr_storage" >&5 | ||
17716 | $as_echo_n "checking for __ss_family field in struct sockaddr_storage... " >&6; } | ||
17717 | if ${ac_cv_have___ss_family_in_struct_ss+:} false; then : | ||
17718 | $as_echo_n "(cached) " >&6 | ||
17719 | else | ||
17720 | |||
17721 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17722 | /* end confdefs.h. */ | ||
17723 | |||
17724 | #include <sys/types.h> | ||
17725 | #include <sys/socket.h> | ||
17726 | |||
17727 | int | ||
17728 | main () | ||
17729 | { | ||
17730 | struct sockaddr_storage s; s.__ss_family = 1; | ||
17731 | ; | ||
17732 | return 0; | ||
17733 | } | ||
17734 | _ACEOF | ||
17735 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17736 | ac_cv_have___ss_family_in_struct_ss="yes" | ||
17737 | else | ||
17738 | ac_cv_have___ss_family_in_struct_ss="no" | ||
17739 | |||
17740 | fi | ||
17741 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17742 | |||
17743 | fi | ||
17744 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___ss_family_in_struct_ss" >&5 | ||
17745 | $as_echo "$ac_cv_have___ss_family_in_struct_ss" >&6; } | ||
17746 | if test "x$ac_cv_have___ss_family_in_struct_ss" = "xyes" ; then | ||
17747 | |||
17748 | $as_echo "#define HAVE___SS_FAMILY_IN_SS 1" >>confdefs.h | ||
17749 | |||
17750 | fi | ||
17751 | |||
17752 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_accrights field in struct msghdr" >&5 | ||
17753 | $as_echo_n "checking for msg_accrights field in struct msghdr... " >&6; } | ||
17754 | if ${ac_cv_have_accrights_in_msghdr+:} false; then : | ||
17755 | $as_echo_n "(cached) " >&6 | ||
17756 | else | ||
17757 | |||
17758 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17759 | /* end confdefs.h. */ | ||
17760 | |||
17761 | #include <sys/types.h> | ||
17762 | #include <sys/socket.h> | ||
17763 | #include <sys/uio.h> | ||
17764 | #include <stdlib.h> | ||
17765 | |||
17766 | int | ||
17767 | main () | ||
17768 | { | ||
17769 | |||
17770 | #ifdef msg_accrights | ||
17771 | #error "msg_accrights is a macro" | ||
17772 | exit(1); | ||
17773 | #endif | ||
17774 | struct msghdr m; | ||
17775 | m.msg_accrights = 0; | ||
17776 | exit(0); | ||
17777 | |||
17778 | ; | ||
17779 | return 0; | ||
17780 | } | ||
17781 | _ACEOF | ||
17782 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17783 | ac_cv_have_accrights_in_msghdr="yes" | ||
17784 | else | ||
17785 | ac_cv_have_accrights_in_msghdr="no" | ||
17786 | |||
17787 | fi | ||
17788 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17789 | |||
17790 | fi | ||
17791 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_accrights_in_msghdr" >&5 | ||
17792 | $as_echo "$ac_cv_have_accrights_in_msghdr" >&6; } | ||
17793 | if test "x$ac_cv_have_accrights_in_msghdr" = "xyes" ; then | ||
17794 | |||
17795 | $as_echo "#define HAVE_ACCRIGHTS_IN_MSGHDR 1" >>confdefs.h | ||
17796 | |||
17797 | fi | ||
17798 | |||
17799 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct statvfs.f_fsid is integral type" >&5 | ||
17800 | $as_echo_n "checking if struct statvfs.f_fsid is integral type... " >&6; } | ||
17801 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17802 | /* end confdefs.h. */ | ||
17803 | |||
17804 | #include <sys/param.h> | ||
17805 | #include <sys/stat.h> | ||
17806 | #ifdef HAVE_SYS_TIME_H | ||
17807 | # include <sys/time.h> | ||
17808 | #endif | ||
17809 | #ifdef HAVE_SYS_MOUNT_H | ||
17810 | #include <sys/mount.h> | ||
17811 | #endif | ||
17812 | #ifdef HAVE_SYS_STATVFS_H | ||
17813 | #include <sys/statvfs.h> | ||
17814 | #endif | ||
17815 | |||
17816 | int | ||
17817 | main () | ||
17818 | { | ||
17819 | struct statvfs s; s.f_fsid = 0; | ||
17820 | ; | ||
17821 | return 0; | ||
17822 | } | ||
17823 | _ACEOF | ||
17824 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17825 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
17826 | $as_echo "yes" >&6; } | ||
17827 | else | ||
17828 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17829 | $as_echo "no" >&6; } | ||
17830 | |||
17831 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsid_t has member val" >&5 | ||
17832 | $as_echo_n "checking if fsid_t has member val... " >&6; } | ||
17833 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17834 | /* end confdefs.h. */ | ||
17835 | |||
17836 | #include <sys/types.h> | ||
17837 | #include <sys/statvfs.h> | ||
17838 | |||
17839 | int | ||
17840 | main () | ||
17841 | { | ||
17842 | fsid_t t; t.val[0] = 0; | ||
17843 | ; | ||
17844 | return 0; | ||
17845 | } | ||
17846 | _ACEOF | ||
17847 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17848 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
17849 | $as_echo "yes" >&6; } | ||
17850 | |||
17851 | $as_echo "#define FSID_HAS_VAL 1" >>confdefs.h | ||
17852 | |||
17853 | else | ||
17854 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17855 | $as_echo "no" >&6; } | ||
17856 | fi | ||
17857 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17858 | |||
17859 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if f_fsid has member __val" >&5 | ||
17860 | $as_echo_n "checking if f_fsid has member __val... " >&6; } | ||
17861 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17862 | /* end confdefs.h. */ | ||
17863 | |||
17864 | #include <sys/types.h> | ||
17865 | #include <sys/statvfs.h> | ||
17866 | |||
17867 | int | ||
17868 | main () | ||
17869 | { | ||
17870 | fsid_t t; t.__val[0] = 0; | ||
17871 | ; | ||
17872 | return 0; | ||
17873 | } | ||
17874 | _ACEOF | ||
17875 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17876 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
17877 | $as_echo "yes" >&6; } | ||
17878 | |||
17879 | $as_echo "#define FSID_HAS___VAL 1" >>confdefs.h | ||
17880 | |||
17881 | else | ||
17882 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17883 | $as_echo "no" >&6; } | ||
17884 | fi | ||
17885 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17886 | |||
17887 | fi | ||
17888 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17889 | |||
17890 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for msg_control field in struct msghdr" >&5 | ||
17891 | $as_echo_n "checking for msg_control field in struct msghdr... " >&6; } | ||
17892 | if ${ac_cv_have_control_in_msghdr+:} false; then : | ||
17893 | $as_echo_n "(cached) " >&6 | ||
17894 | else | ||
17895 | |||
17896 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17897 | /* end confdefs.h. */ | ||
17898 | |||
17899 | #include <sys/types.h> | ||
17900 | #include <sys/socket.h> | ||
17901 | #include <sys/uio.h> | ||
17902 | #include <stdlib.h> | ||
17903 | |||
17904 | int | ||
17905 | main () | ||
17906 | { | ||
17907 | |||
17908 | #ifdef msg_control | ||
17909 | #error "msg_control is a macro" | ||
17910 | exit(1); | ||
17911 | #endif | ||
17912 | struct msghdr m; | ||
17913 | m.msg_control = 0; | ||
17914 | exit(0); | ||
17915 | |||
17916 | ; | ||
17917 | return 0; | ||
17918 | } | ||
17919 | _ACEOF | ||
17920 | if ac_fn_c_try_compile "$LINENO"; then : | ||
17921 | ac_cv_have_control_in_msghdr="yes" | ||
17922 | else | ||
17923 | ac_cv_have_control_in_msghdr="no" | ||
17924 | |||
17925 | fi | ||
17926 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
17927 | |||
17928 | fi | ||
17929 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_control_in_msghdr" >&5 | ||
17930 | $as_echo "$ac_cv_have_control_in_msghdr" >&6; } | ||
17931 | if test "x$ac_cv_have_control_in_msghdr" = "xyes" ; then | ||
17932 | |||
17933 | $as_echo "#define HAVE_CONTROL_IN_MSGHDR 1" >>confdefs.h | ||
17934 | |||
17935 | fi | ||
17936 | |||
17937 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines __progname" >&5 | ||
17938 | $as_echo_n "checking if libc defines __progname... " >&6; } | ||
17939 | if ${ac_cv_libc_defines___progname+:} false; then : | ||
17940 | $as_echo_n "(cached) " >&6 | ||
17941 | else | ||
17942 | |||
17943 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17944 | /* end confdefs.h. */ | ||
17945 | #include <stdio.h> | ||
17946 | int | ||
17947 | main () | ||
17948 | { | ||
17949 | extern char *__progname; printf("%s", __progname); | ||
17950 | ; | ||
17951 | return 0; | ||
17952 | } | ||
17953 | _ACEOF | ||
17954 | if ac_fn_c_try_link "$LINENO"; then : | ||
17955 | ac_cv_libc_defines___progname="yes" | ||
17956 | else | ||
17957 | ac_cv_libc_defines___progname="no" | ||
17958 | |||
17959 | fi | ||
17960 | rm -f core conftest.err conftest.$ac_objext \ | ||
17961 | conftest$ac_exeext conftest.$ac_ext | ||
17962 | |||
17963 | fi | ||
17964 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines___progname" >&5 | ||
17965 | $as_echo "$ac_cv_libc_defines___progname" >&6; } | ||
17966 | if test "x$ac_cv_libc_defines___progname" = "xyes" ; then | ||
17967 | |||
17968 | $as_echo "#define HAVE___PROGNAME 1" >>confdefs.h | ||
17969 | |||
17970 | fi | ||
17971 | |||
17972 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __FUNCTION__" >&5 | ||
17973 | $as_echo_n "checking whether $CC implements __FUNCTION__... " >&6; } | ||
17974 | if ${ac_cv_cc_implements___FUNCTION__+:} false; then : | ||
17975 | $as_echo_n "(cached) " >&6 | ||
17976 | else | ||
17977 | |||
17978 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
17979 | /* end confdefs.h. */ | ||
17980 | #include <stdio.h> | ||
17981 | int | ||
17982 | main () | ||
17983 | { | ||
17984 | printf("%s", __FUNCTION__); | ||
17985 | ; | ||
17986 | return 0; | ||
17987 | } | ||
17988 | _ACEOF | ||
17989 | if ac_fn_c_try_link "$LINENO"; then : | ||
17990 | ac_cv_cc_implements___FUNCTION__="yes" | ||
17991 | else | ||
17992 | ac_cv_cc_implements___FUNCTION__="no" | ||
17993 | |||
17994 | fi | ||
17995 | rm -f core conftest.err conftest.$ac_objext \ | ||
17996 | conftest$ac_exeext conftest.$ac_ext | ||
17997 | |||
17998 | fi | ||
17999 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___FUNCTION__" >&5 | ||
18000 | $as_echo "$ac_cv_cc_implements___FUNCTION__" >&6; } | ||
18001 | if test "x$ac_cv_cc_implements___FUNCTION__" = "xyes" ; then | ||
18002 | |||
18003 | $as_echo "#define HAVE___FUNCTION__ 1" >>confdefs.h | ||
18004 | |||
18005 | fi | ||
18006 | |||
18007 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __func__" >&5 | ||
18008 | $as_echo_n "checking whether $CC implements __func__... " >&6; } | ||
18009 | if ${ac_cv_cc_implements___func__+:} false; then : | ||
18010 | $as_echo_n "(cached) " >&6 | ||
18011 | else | ||
18012 | |||
18013 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18014 | /* end confdefs.h. */ | ||
18015 | #include <stdio.h> | ||
18016 | int | ||
18017 | main () | ||
18018 | { | ||
18019 | printf("%s", __func__); | ||
18020 | ; | ||
18021 | return 0; | ||
18022 | } | ||
18023 | _ACEOF | ||
18024 | if ac_fn_c_try_link "$LINENO"; then : | ||
18025 | ac_cv_cc_implements___func__="yes" | ||
18026 | else | ||
18027 | ac_cv_cc_implements___func__="no" | ||
18028 | |||
18029 | fi | ||
18030 | rm -f core conftest.err conftest.$ac_objext \ | ||
18031 | conftest$ac_exeext conftest.$ac_ext | ||
18032 | |||
18033 | fi | ||
18034 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_implements___func__" >&5 | ||
18035 | $as_echo "$ac_cv_cc_implements___func__" >&6; } | ||
18036 | if test "x$ac_cv_cc_implements___func__" = "xyes" ; then | ||
18037 | |||
18038 | $as_echo "#define HAVE___func__ 1" >>confdefs.h | ||
18039 | |||
18040 | fi | ||
18041 | |||
18042 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether va_copy exists" >&5 | ||
18043 | $as_echo_n "checking whether va_copy exists... " >&6; } | ||
18044 | if ${ac_cv_have_va_copy+:} false; then : | ||
18045 | $as_echo_n "(cached) " >&6 | ||
18046 | else | ||
18047 | |||
18048 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18049 | /* end confdefs.h. */ | ||
18050 | |||
18051 | #include <stdarg.h> | ||
18052 | va_list x,y; | ||
18053 | |||
18054 | int | ||
18055 | main () | ||
18056 | { | ||
18057 | va_copy(x,y); | ||
18058 | ; | ||
18059 | return 0; | ||
18060 | } | ||
18061 | _ACEOF | ||
18062 | if ac_fn_c_try_link "$LINENO"; then : | ||
18063 | ac_cv_have_va_copy="yes" | ||
18064 | else | ||
18065 | ac_cv_have_va_copy="no" | ||
18066 | |||
18067 | fi | ||
18068 | rm -f core conftest.err conftest.$ac_objext \ | ||
18069 | conftest$ac_exeext conftest.$ac_ext | ||
18070 | |||
18071 | fi | ||
18072 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_va_copy" >&5 | ||
18073 | $as_echo "$ac_cv_have_va_copy" >&6; } | ||
18074 | if test "x$ac_cv_have_va_copy" = "xyes" ; then | ||
18075 | |||
18076 | $as_echo "#define HAVE_VA_COPY 1" >>confdefs.h | ||
18077 | |||
18078 | fi | ||
18079 | |||
18080 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __va_copy exists" >&5 | ||
18081 | $as_echo_n "checking whether __va_copy exists... " >&6; } | ||
18082 | if ${ac_cv_have___va_copy+:} false; then : | ||
18083 | $as_echo_n "(cached) " >&6 | ||
18084 | else | ||
18085 | |||
18086 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18087 | /* end confdefs.h. */ | ||
18088 | |||
18089 | #include <stdarg.h> | ||
18090 | va_list x,y; | ||
18091 | |||
18092 | int | ||
18093 | main () | ||
18094 | { | ||
18095 | __va_copy(x,y); | ||
18096 | ; | ||
18097 | return 0; | ||
18098 | } | ||
18099 | _ACEOF | ||
18100 | if ac_fn_c_try_link "$LINENO"; then : | ||
18101 | ac_cv_have___va_copy="yes" | ||
18102 | else | ||
18103 | ac_cv_have___va_copy="no" | ||
18104 | |||
18105 | fi | ||
18106 | rm -f core conftest.err conftest.$ac_objext \ | ||
18107 | conftest$ac_exeext conftest.$ac_ext | ||
18108 | |||
18109 | fi | ||
18110 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have___va_copy" >&5 | ||
18111 | $as_echo "$ac_cv_have___va_copy" >&6; } | ||
18112 | if test "x$ac_cv_have___va_copy" = "xyes" ; then | ||
18113 | |||
18114 | $as_echo "#define HAVE___VA_COPY 1" >>confdefs.h | ||
18115 | |||
18116 | fi | ||
18117 | |||
18118 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getopt has optreset support" >&5 | ||
18119 | $as_echo_n "checking whether getopt has optreset support... " >&6; } | ||
18120 | if ${ac_cv_have_getopt_optreset+:} false; then : | ||
18121 | $as_echo_n "(cached) " >&6 | ||
18122 | else | ||
18123 | |||
18124 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18125 | /* end confdefs.h. */ | ||
18126 | #include <getopt.h> | ||
18127 | int | ||
18128 | main () | ||
18129 | { | ||
18130 | extern int optreset; optreset = 0; | ||
18131 | ; | ||
18132 | return 0; | ||
18133 | } | ||
18134 | _ACEOF | ||
18135 | if ac_fn_c_try_link "$LINENO"; then : | ||
18136 | ac_cv_have_getopt_optreset="yes" | ||
18137 | else | ||
18138 | ac_cv_have_getopt_optreset="no" | ||
18139 | |||
18140 | fi | ||
18141 | rm -f core conftest.err conftest.$ac_objext \ | ||
18142 | conftest$ac_exeext conftest.$ac_ext | ||
18143 | |||
18144 | fi | ||
18145 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getopt_optreset" >&5 | ||
18146 | $as_echo "$ac_cv_have_getopt_optreset" >&6; } | ||
18147 | if test "x$ac_cv_have_getopt_optreset" = "xyes" ; then | ||
18148 | |||
18149 | $as_echo "#define HAVE_GETOPT_OPTRESET 1" >>confdefs.h | ||
18150 | |||
18151 | fi | ||
18152 | |||
18153 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_errlist" >&5 | ||
18154 | $as_echo_n "checking if libc defines sys_errlist... " >&6; } | ||
18155 | if ${ac_cv_libc_defines_sys_errlist+:} false; then : | ||
18156 | $as_echo_n "(cached) " >&6 | ||
18157 | else | ||
18158 | |||
18159 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18160 | /* end confdefs.h. */ | ||
18161 | #include <stdio.h> | ||
18162 | int | ||
18163 | main () | ||
18164 | { | ||
18165 | extern const char *const sys_errlist[]; printf("%s", sys_errlist[0]); | ||
18166 | ; | ||
18167 | return 0; | ||
18168 | } | ||
18169 | _ACEOF | ||
18170 | if ac_fn_c_try_link "$LINENO"; then : | ||
18171 | ac_cv_libc_defines_sys_errlist="yes" | ||
18172 | else | ||
18173 | ac_cv_libc_defines_sys_errlist="no" | ||
18174 | |||
18175 | fi | ||
18176 | rm -f core conftest.err conftest.$ac_objext \ | ||
18177 | conftest$ac_exeext conftest.$ac_ext | ||
18178 | |||
18179 | fi | ||
18180 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_errlist" >&5 | ||
18181 | $as_echo "$ac_cv_libc_defines_sys_errlist" >&6; } | ||
18182 | if test "x$ac_cv_libc_defines_sys_errlist" = "xyes" ; then | ||
18183 | |||
18184 | $as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h | ||
18185 | |||
18186 | fi | ||
18187 | |||
18188 | |||
18189 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libc defines sys_nerr" >&5 | ||
18190 | $as_echo_n "checking if libc defines sys_nerr... " >&6; } | ||
18191 | if ${ac_cv_libc_defines_sys_nerr+:} false; then : | ||
18192 | $as_echo_n "(cached) " >&6 | ||
18193 | else | ||
18194 | |||
18195 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18196 | /* end confdefs.h. */ | ||
18197 | #include <stdio.h> | ||
18198 | int | ||
18199 | main () | ||
18200 | { | ||
18201 | extern int sys_nerr; printf("%i", sys_nerr); | ||
18202 | ; | ||
18203 | return 0; | ||
18204 | } | ||
18205 | _ACEOF | ||
18206 | if ac_fn_c_try_link "$LINENO"; then : | ||
18207 | ac_cv_libc_defines_sys_nerr="yes" | ||
18208 | else | ||
18209 | ac_cv_libc_defines_sys_nerr="no" | ||
18210 | |||
18211 | fi | ||
18212 | rm -f core conftest.err conftest.$ac_objext \ | ||
18213 | conftest$ac_exeext conftest.$ac_ext | ||
18214 | |||
18215 | fi | ||
18216 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libc_defines_sys_nerr" >&5 | ||
18217 | $as_echo "$ac_cv_libc_defines_sys_nerr" >&6; } | ||
18218 | if test "x$ac_cv_libc_defines_sys_nerr" = "xyes" ; then | ||
18219 | |||
18220 | $as_echo "#define HAVE_SYS_NERR 1" >>confdefs.h | ||
18221 | |||
18222 | fi | ||
18223 | |||
18224 | # Check libraries needed by DNS fingerprint support | ||
18225 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing getrrsetbyname" >&5 | ||
18226 | $as_echo_n "checking for library containing getrrsetbyname... " >&6; } | ||
18227 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
18228 | $as_echo_n "(cached) " >&6 | ||
18229 | else | ||
18230 | ac_func_search_save_LIBS=$LIBS | ||
18231 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18232 | /* end confdefs.h. */ | ||
18233 | |||
18234 | /* Override any GCC internal prototype to avoid an error. | ||
18235 | Use char because int might match the return type of a GCC | ||
18236 | builtin and then its argument prototype would still apply. */ | ||
18237 | #ifdef __cplusplus | ||
18238 | extern "C" | ||
18239 | #endif | ||
18240 | char getrrsetbyname (); | ||
18241 | int | ||
18242 | main () | ||
18243 | { | ||
18244 | return getrrsetbyname (); | ||
18245 | ; | ||
18246 | return 0; | ||
18247 | } | ||
18248 | _ACEOF | ||
18249 | for ac_lib in '' resolv; do | ||
18250 | if test -z "$ac_lib"; then | ||
18251 | ac_res="none required" | ||
18252 | else | ||
18253 | ac_res=-l$ac_lib | ||
18254 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
18255 | fi | ||
18256 | if ac_fn_c_try_link "$LINENO"; then : | ||
18257 | ac_cv_search_getrrsetbyname=$ac_res | ||
18258 | fi | ||
18259 | rm -f core conftest.err conftest.$ac_objext \ | ||
18260 | conftest$ac_exeext | ||
18261 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
18262 | break | ||
18263 | fi | ||
18264 | done | ||
18265 | if ${ac_cv_search_getrrsetbyname+:} false; then : | ||
18266 | |||
18267 | else | ||
18268 | ac_cv_search_getrrsetbyname=no | ||
18269 | fi | ||
18270 | rm conftest.$ac_ext | ||
18271 | LIBS=$ac_func_search_save_LIBS | ||
18272 | fi | ||
18273 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_getrrsetbyname" >&5 | ||
18274 | $as_echo "$ac_cv_search_getrrsetbyname" >&6; } | ||
18275 | ac_res=$ac_cv_search_getrrsetbyname | ||
18276 | if test "$ac_res" != no; then : | ||
18277 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
18278 | |||
18279 | $as_echo "#define HAVE_GETRRSETBYNAME 1" >>confdefs.h | ||
18280 | |||
18281 | else | ||
18282 | |||
18283 | # Needed by our getrrsetbyname() | ||
18284 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing res_query" >&5 | ||
18285 | $as_echo_n "checking for library containing res_query... " >&6; } | ||
18286 | if ${ac_cv_search_res_query+:} false; then : | ||
18287 | $as_echo_n "(cached) " >&6 | ||
18288 | else | ||
18289 | ac_func_search_save_LIBS=$LIBS | ||
18290 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18291 | /* end confdefs.h. */ | ||
18292 | |||
18293 | /* Override any GCC internal prototype to avoid an error. | ||
18294 | Use char because int might match the return type of a GCC | ||
18295 | builtin and then its argument prototype would still apply. */ | ||
18296 | #ifdef __cplusplus | ||
18297 | extern "C" | ||
18298 | #endif | ||
18299 | char res_query (); | ||
18300 | int | ||
18301 | main () | ||
18302 | { | ||
18303 | return res_query (); | ||
18304 | ; | ||
18305 | return 0; | ||
18306 | } | ||
18307 | _ACEOF | ||
18308 | for ac_lib in '' resolv; do | ||
18309 | if test -z "$ac_lib"; then | ||
18310 | ac_res="none required" | ||
18311 | else | ||
18312 | ac_res=-l$ac_lib | ||
18313 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
18314 | fi | ||
18315 | if ac_fn_c_try_link "$LINENO"; then : | ||
18316 | ac_cv_search_res_query=$ac_res | ||
18317 | fi | ||
18318 | rm -f core conftest.err conftest.$ac_objext \ | ||
18319 | conftest$ac_exeext | ||
18320 | if ${ac_cv_search_res_query+:} false; then : | ||
18321 | break | ||
18322 | fi | ||
18323 | done | ||
18324 | if ${ac_cv_search_res_query+:} false; then : | ||
18325 | |||
18326 | else | ||
18327 | ac_cv_search_res_query=no | ||
18328 | fi | ||
18329 | rm conftest.$ac_ext | ||
18330 | LIBS=$ac_func_search_save_LIBS | ||
18331 | fi | ||
18332 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_query" >&5 | ||
18333 | $as_echo "$ac_cv_search_res_query" >&6; } | ||
18334 | ac_res=$ac_cv_search_res_query | ||
18335 | if test "$ac_res" != no; then : | ||
18336 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
18337 | |||
18338 | fi | ||
18339 | |||
18340 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5 | ||
18341 | $as_echo_n "checking for library containing dn_expand... " >&6; } | ||
18342 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18343 | $as_echo_n "(cached) " >&6 | ||
18344 | else | ||
18345 | ac_func_search_save_LIBS=$LIBS | ||
18346 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18347 | /* end confdefs.h. */ | ||
18348 | |||
18349 | /* Override any GCC internal prototype to avoid an error. | ||
18350 | Use char because int might match the return type of a GCC | ||
18351 | builtin and then its argument prototype would still apply. */ | ||
18352 | #ifdef __cplusplus | ||
18353 | extern "C" | ||
18354 | #endif | ||
18355 | char dn_expand (); | ||
18356 | int | ||
18357 | main () | ||
18358 | { | ||
18359 | return dn_expand (); | ||
18360 | ; | ||
18361 | return 0; | ||
18362 | } | ||
18363 | _ACEOF | ||
18364 | for ac_lib in '' resolv; do | ||
18365 | if test -z "$ac_lib"; then | ||
18366 | ac_res="none required" | ||
18367 | else | ||
18368 | ac_res=-l$ac_lib | ||
18369 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
18370 | fi | ||
18371 | if ac_fn_c_try_link "$LINENO"; then : | ||
18372 | ac_cv_search_dn_expand=$ac_res | ||
18373 | fi | ||
18374 | rm -f core conftest.err conftest.$ac_objext \ | ||
18375 | conftest$ac_exeext | ||
18376 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18377 | break | ||
18378 | fi | ||
18379 | done | ||
18380 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18381 | |||
18382 | else | ||
18383 | ac_cv_search_dn_expand=no | ||
18384 | fi | ||
18385 | rm conftest.$ac_ext | ||
18386 | LIBS=$ac_func_search_save_LIBS | ||
18387 | fi | ||
18388 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5 | ||
18389 | $as_echo "$ac_cv_search_dn_expand" >&6; } | ||
18390 | ac_res=$ac_cv_search_dn_expand | ||
18391 | if test "$ac_res" != no; then : | ||
18392 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
18393 | |||
18394 | fi | ||
18395 | |||
18396 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if res_query will link" >&5 | ||
18397 | $as_echo_n "checking if res_query will link... " >&6; } | ||
18398 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18399 | /* end confdefs.h. */ | ||
18400 | |||
18401 | #include <sys/types.h> | ||
18402 | #include <netinet/in.h> | ||
18403 | #include <arpa/nameser.h> | ||
18404 | #include <netdb.h> | ||
18405 | #include <resolv.h> | ||
18406 | |||
18407 | int | ||
18408 | main () | ||
18409 | { | ||
18410 | |||
18411 | res_query (0, 0, 0, 0, 0); | ||
18412 | |||
18413 | ; | ||
18414 | return 0; | ||
18415 | } | ||
18416 | _ACEOF | ||
18417 | if ac_fn_c_try_link "$LINENO"; then : | ||
18418 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18419 | $as_echo "yes" >&6; } | ||
18420 | else | ||
18421 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18422 | $as_echo "no" >&6; } | ||
18423 | saved_LIBS="$LIBS" | ||
18424 | LIBS="$LIBS -lresolv" | ||
18425 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_query in -lresolv" >&5 | ||
18426 | $as_echo_n "checking for res_query in -lresolv... " >&6; } | ||
18427 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18428 | /* end confdefs.h. */ | ||
18429 | |||
18430 | #include <sys/types.h> | ||
18431 | #include <netinet/in.h> | ||
18432 | #include <arpa/nameser.h> | ||
18433 | #include <netdb.h> | ||
18434 | #include <resolv.h> | ||
18435 | |||
18436 | int | ||
18437 | main () | ||
18438 | { | ||
18439 | |||
18440 | res_query (0, 0, 0, 0, 0); | ||
18441 | |||
18442 | ; | ||
18443 | return 0; | ||
18444 | } | ||
18445 | _ACEOF | ||
18446 | if ac_fn_c_try_link "$LINENO"; then : | ||
18447 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18448 | $as_echo "yes" >&6; } | ||
18449 | else | ||
18450 | LIBS="$saved_LIBS" | ||
18451 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18452 | $as_echo "no" >&6; } | ||
18453 | fi | ||
18454 | rm -f core conftest.err conftest.$ac_objext \ | ||
18455 | conftest$ac_exeext conftest.$ac_ext | ||
18456 | |||
18457 | fi | ||
18458 | rm -f core conftest.err conftest.$ac_objext \ | ||
18459 | conftest$ac_exeext conftest.$ac_ext | ||
18460 | for ac_func in _getshort _getlong | ||
18461 | do : | ||
18462 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
18463 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
18464 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
18465 | cat >>confdefs.h <<_ACEOF | ||
18466 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
18467 | _ACEOF | ||
18468 | |||
18469 | fi | ||
18470 | done | ||
18471 | |||
18472 | ac_fn_c_check_decl "$LINENO" "_getshort" "ac_cv_have_decl__getshort" "#include <sys/types.h> | ||
18473 | #include <arpa/nameser.h> | ||
18474 | " | ||
18475 | if test "x$ac_cv_have_decl__getshort" = xyes; then : | ||
18476 | ac_have_decl=1 | ||
18477 | else | ||
18478 | ac_have_decl=0 | ||
18479 | fi | ||
18480 | |||
18481 | cat >>confdefs.h <<_ACEOF | ||
18482 | #define HAVE_DECL__GETSHORT $ac_have_decl | ||
18483 | _ACEOF | ||
18484 | ac_fn_c_check_decl "$LINENO" "_getlong" "ac_cv_have_decl__getlong" "#include <sys/types.h> | ||
18485 | #include <arpa/nameser.h> | ||
18486 | " | ||
18487 | if test "x$ac_cv_have_decl__getlong" = xyes; then : | ||
18488 | ac_have_decl=1 | ||
18489 | else | ||
18490 | ac_have_decl=0 | ||
18491 | fi | ||
18492 | |||
18493 | cat >>confdefs.h <<_ACEOF | ||
18494 | #define HAVE_DECL__GETLONG $ac_have_decl | ||
18495 | _ACEOF | ||
18496 | |||
18497 | ac_fn_c_check_member "$LINENO" "HEADER" "ad" "ac_cv_member_HEADER_ad" "#include <arpa/nameser.h> | ||
18498 | " | ||
18499 | if test "x$ac_cv_member_HEADER_ad" = xyes; then : | ||
18500 | |||
18501 | $as_echo "#define HAVE_HEADER_AD 1" >>confdefs.h | ||
18502 | |||
18503 | fi | ||
18504 | |||
18505 | |||
18506 | fi | ||
18507 | |||
18508 | |||
18509 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct __res_state _res is an extern" >&5 | ||
18510 | $as_echo_n "checking if struct __res_state _res is an extern... " >&6; } | ||
18511 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18512 | /* end confdefs.h. */ | ||
18513 | |||
18514 | #include <stdio.h> | ||
18515 | #if HAVE_SYS_TYPES_H | ||
18516 | # include <sys/types.h> | ||
18517 | #endif | ||
18518 | #include <netinet/in.h> | ||
18519 | #include <arpa/nameser.h> | ||
18520 | #include <resolv.h> | ||
18521 | extern struct __res_state _res; | ||
18522 | |||
18523 | int | ||
18524 | main () | ||
18525 | { | ||
18526 | |||
18527 | struct __res_state *volatile p = &_res; /* force resolution of _res */ | ||
18528 | return 0; | ||
18529 | |||
18530 | ; | ||
18531 | return 0; | ||
18532 | } | ||
18533 | _ACEOF | ||
18534 | if ac_fn_c_try_link "$LINENO"; then : | ||
18535 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18536 | $as_echo "yes" >&6; } | ||
18537 | |||
18538 | $as_echo "#define HAVE__RES_EXTERN 1" >>confdefs.h | ||
18539 | |||
18540 | |||
18541 | else | ||
18542 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18543 | $as_echo "no" >&6; } | ||
18544 | |||
18545 | fi | ||
18546 | rm -f core conftest.err conftest.$ac_objext \ | ||
18547 | conftest$ac_exeext conftest.$ac_ext | ||
18548 | |||
18549 | # Check whether user wants SELinux support | ||
18550 | SELINUX_MSG="no" | ||
18551 | LIBSELINUX="" | ||
18552 | |||
18553 | # Check whether --with-selinux was given. | ||
18554 | if test "${with_selinux+set}" = set; then : | ||
18555 | withval=$with_selinux; if test "x$withval" != "xno" ; then | ||
18556 | save_LIBS="$LIBS" | ||
18557 | |||
18558 | $as_echo "#define WITH_SELINUX 1" >>confdefs.h | ||
18559 | |||
18560 | SELINUX_MSG="yes" | ||
18561 | ac_fn_c_check_header_mongrel "$LINENO" "selinux/selinux.h" "ac_cv_header_selinux_selinux_h" "$ac_includes_default" | ||
18562 | if test "x$ac_cv_header_selinux_selinux_h" = xyes; then : | ||
18563 | |||
18564 | else | ||
18565 | as_fn_error $? "SELinux support requires selinux.h header" "$LINENO" 5 | ||
18566 | fi | ||
18567 | |||
18568 | |||
18569 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setexeccon in -lselinux" >&5 | ||
18570 | $as_echo_n "checking for setexeccon in -lselinux... " >&6; } | ||
18571 | if ${ac_cv_lib_selinux_setexeccon+:} false; then : | ||
18572 | $as_echo_n "(cached) " >&6 | ||
18573 | else | ||
18574 | ac_check_lib_save_LIBS=$LIBS | ||
18575 | LIBS="-lselinux $LIBS" | ||
18576 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18577 | /* end confdefs.h. */ | ||
18578 | |||
18579 | /* Override any GCC internal prototype to avoid an error. | ||
18580 | Use char because int might match the return type of a GCC | ||
18581 | builtin and then its argument prototype would still apply. */ | ||
18582 | #ifdef __cplusplus | ||
18583 | extern "C" | ||
18584 | #endif | ||
18585 | char setexeccon (); | ||
18586 | int | ||
18587 | main () | ||
18588 | { | ||
18589 | return setexeccon (); | ||
18590 | ; | ||
18591 | return 0; | ||
18592 | } | ||
18593 | _ACEOF | ||
18594 | if ac_fn_c_try_link "$LINENO"; then : | ||
18595 | ac_cv_lib_selinux_setexeccon=yes | ||
18596 | else | ||
18597 | ac_cv_lib_selinux_setexeccon=no | ||
18598 | fi | ||
18599 | rm -f core conftest.err conftest.$ac_objext \ | ||
18600 | conftest$ac_exeext conftest.$ac_ext | ||
18601 | LIBS=$ac_check_lib_save_LIBS | ||
18602 | fi | ||
18603 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_setexeccon" >&5 | ||
18604 | $as_echo "$ac_cv_lib_selinux_setexeccon" >&6; } | ||
18605 | if test "x$ac_cv_lib_selinux_setexeccon" = xyes; then : | ||
18606 | LIBSELINUX="-lselinux" | ||
18607 | LIBS="$LIBS -lselinux" | ||
18608 | |||
18609 | else | ||
18610 | as_fn_error $? "SELinux support requires libselinux library" "$LINENO" 5 | ||
18611 | fi | ||
18612 | |||
18613 | for ac_func in getseuserbyname get_default_context_with_level | ||
18614 | do : | ||
18615 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
18616 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
18617 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
18618 | cat >>confdefs.h <<_ACEOF | ||
18619 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
18620 | _ACEOF | ||
18621 | |||
18622 | fi | ||
18623 | done | ||
18624 | |||
18625 | LIBS="$save_LIBS $LIBSELINUX" | ||
18626 | fi | ||
18627 | |||
18628 | fi | ||
18629 | |||
18630 | |||
18631 | |||
18632 | # Check whether user wants Kerberos 5 support | ||
18633 | KRB5_MSG="no" | ||
18634 | |||
18635 | # Check whether --with-kerberos5 was given. | ||
18636 | if test "${with_kerberos5+set}" = set; then : | ||
18637 | withval=$with_kerberos5; if test "x$withval" != "xno" ; then | ||
18638 | if test "x$withval" = "xyes" ; then | ||
18639 | KRB5ROOT="/usr/local" | ||
18640 | else | ||
18641 | KRB5ROOT=${withval} | ||
18642 | fi | ||
18643 | |||
18644 | |||
18645 | $as_echo "#define KRB5 1" >>confdefs.h | ||
18646 | |||
18647 | KRB5_MSG="yes" | ||
18648 | |||
18649 | if test -n "$ac_tool_prefix"; then | ||
18650 | # Extract the first word of "${ac_tool_prefix}krb5-config", so it can be a program name with args. | ||
18651 | set dummy ${ac_tool_prefix}krb5-config; ac_word=$2 | ||
18652 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
18653 | $as_echo_n "checking for $ac_word... " >&6; } | ||
18654 | if ${ac_cv_path_KRB5CONF+:} false; then : | ||
18655 | $as_echo_n "(cached) " >&6 | ||
18656 | else | ||
18657 | case $KRB5CONF in | ||
18658 | [\\/]* | ?:[\\/]*) | ||
18659 | ac_cv_path_KRB5CONF="$KRB5CONF" # Let the user override the test with a path. | ||
18660 | ;; | ||
18661 | *) | ||
18662 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
18663 | as_dummy="$KRB5ROOT/bin:$PATH" | ||
18664 | for as_dir in $as_dummy | ||
18665 | do | ||
18666 | IFS=$as_save_IFS | ||
18667 | test -z "$as_dir" && as_dir=. | ||
18668 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
18669 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
18670 | ac_cv_path_KRB5CONF="$as_dir/$ac_word$ac_exec_ext" | ||
18671 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
18672 | break 2 | ||
18673 | fi | ||
18674 | done | ||
18675 | done | ||
18676 | IFS=$as_save_IFS | ||
18677 | |||
18678 | ;; | ||
18679 | esac | ||
18680 | fi | ||
18681 | KRB5CONF=$ac_cv_path_KRB5CONF | ||
18682 | if test -n "$KRB5CONF"; then | ||
18683 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $KRB5CONF" >&5 | ||
18684 | $as_echo "$KRB5CONF" >&6; } | ||
18685 | else | ||
18686 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18687 | $as_echo "no" >&6; } | ||
18688 | fi | ||
18689 | |||
18690 | |||
18691 | fi | ||
18692 | if test -z "$ac_cv_path_KRB5CONF"; then | ||
18693 | ac_pt_KRB5CONF=$KRB5CONF | ||
18694 | # Extract the first word of "krb5-config", so it can be a program name with args. | ||
18695 | set dummy krb5-config; ac_word=$2 | ||
18696 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
18697 | $as_echo_n "checking for $ac_word... " >&6; } | ||
18698 | if ${ac_cv_path_ac_pt_KRB5CONF+:} false; then : | ||
18699 | $as_echo_n "(cached) " >&6 | ||
18700 | else | ||
18701 | case $ac_pt_KRB5CONF in | ||
18702 | [\\/]* | ?:[\\/]*) | ||
18703 | ac_cv_path_ac_pt_KRB5CONF="$ac_pt_KRB5CONF" # Let the user override the test with a path. | ||
18704 | ;; | ||
18705 | *) | ||
18706 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
18707 | as_dummy="$KRB5ROOT/bin:$PATH" | ||
18708 | for as_dir in $as_dummy | ||
18709 | do | ||
18710 | IFS=$as_save_IFS | ||
18711 | test -z "$as_dir" && as_dir=. | ||
18712 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
18713 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
18714 | ac_cv_path_ac_pt_KRB5CONF="$as_dir/$ac_word$ac_exec_ext" | ||
18715 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
18716 | break 2 | ||
18717 | fi | ||
18718 | done | ||
18719 | done | ||
18720 | IFS=$as_save_IFS | ||
18721 | |||
18722 | ;; | ||
18723 | esac | ||
18724 | fi | ||
18725 | ac_pt_KRB5CONF=$ac_cv_path_ac_pt_KRB5CONF | ||
18726 | if test -n "$ac_pt_KRB5CONF"; then | ||
18727 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_KRB5CONF" >&5 | ||
18728 | $as_echo "$ac_pt_KRB5CONF" >&6; } | ||
18729 | else | ||
18730 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18731 | $as_echo "no" >&6; } | ||
18732 | fi | ||
18733 | |||
18734 | if test "x$ac_pt_KRB5CONF" = x; then | ||
18735 | KRB5CONF="$KRB5ROOT/bin/krb5-config" | ||
18736 | else | ||
18737 | case $cross_compiling:$ac_tool_warned in | ||
18738 | yes:) | ||
18739 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
18740 | $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
18741 | ac_tool_warned=yes ;; | ||
18742 | esac | ||
18743 | KRB5CONF=$ac_pt_KRB5CONF | ||
18744 | fi | ||
18745 | else | ||
18746 | KRB5CONF="$ac_cv_path_KRB5CONF" | ||
18747 | fi | ||
18748 | |||
18749 | if test -x $KRB5CONF ; then | ||
18750 | K5CFLAGS="`$KRB5CONF --cflags`" | ||
18751 | K5LIBS="`$KRB5CONF --libs`" | ||
18752 | CPPFLAGS="$CPPFLAGS $K5CFLAGS" | ||
18753 | |||
18754 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gssapi support" >&5 | ||
18755 | $as_echo_n "checking for gssapi support... " >&6; } | ||
18756 | if $KRB5CONF | grep gssapi >/dev/null ; then | ||
18757 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18758 | $as_echo "yes" >&6; } | ||
18759 | |||
18760 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
18761 | |||
18762 | GSSCFLAGS="`$KRB5CONF --cflags gssapi`" | ||
18763 | GSSLIBS="`$KRB5CONF --libs gssapi`" | ||
18764 | CPPFLAGS="$CPPFLAGS $GSSCFLAGS" | ||
18765 | else | ||
18766 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18767 | $as_echo "no" >&6; } | ||
18768 | fi | ||
18769 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5 | ||
18770 | $as_echo_n "checking whether we are using Heimdal... " >&6; } | ||
18771 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18772 | /* end confdefs.h. */ | ||
18773 | #include <krb5.h> | ||
18774 | |||
18775 | int | ||
18776 | main () | ||
18777 | { | ||
18778 | char *tmp = heimdal_version; | ||
18779 | ; | ||
18780 | return 0; | ||
18781 | } | ||
18782 | _ACEOF | ||
18783 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18784 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18785 | $as_echo "yes" >&6; } | ||
18786 | |||
18787 | $as_echo "#define HEIMDAL 1" >>confdefs.h | ||
18788 | |||
18789 | else | ||
18790 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18791 | $as_echo "no" >&6; } | ||
18792 | |||
18793 | fi | ||
18794 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18795 | else | ||
18796 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include" | ||
18797 | LDFLAGS="$LDFLAGS -L${KRB5ROOT}/lib" | ||
18798 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using Heimdal" >&5 | ||
18799 | $as_echo_n "checking whether we are using Heimdal... " >&6; } | ||
18800 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18801 | /* end confdefs.h. */ | ||
18802 | #include <krb5.h> | ||
18803 | |||
18804 | int | ||
18805 | main () | ||
18806 | { | ||
18807 | char *tmp = heimdal_version; | ||
18808 | ; | ||
18809 | return 0; | ||
18810 | } | ||
18811 | _ACEOF | ||
18812 | if ac_fn_c_try_compile "$LINENO"; then : | ||
18813 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
18814 | $as_echo "yes" >&6; } | ||
18815 | $as_echo "#define HEIMDAL 1" >>confdefs.h | ||
18816 | |||
18817 | K5LIBS="-lkrb5" | ||
18818 | K5LIBS="$K5LIBS -lcom_err -lasn1" | ||
18819 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for net_write in -lroken" >&5 | ||
18820 | $as_echo_n "checking for net_write in -lroken... " >&6; } | ||
18821 | if ${ac_cv_lib_roken_net_write+:} false; then : | ||
18822 | $as_echo_n "(cached) " >&6 | ||
18823 | else | ||
18824 | ac_check_lib_save_LIBS=$LIBS | ||
18825 | LIBS="-lroken $LIBS" | ||
18826 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18827 | /* end confdefs.h. */ | ||
18828 | |||
18829 | /* Override any GCC internal prototype to avoid an error. | ||
18830 | Use char because int might match the return type of a GCC | ||
18831 | builtin and then its argument prototype would still apply. */ | ||
18832 | #ifdef __cplusplus | ||
18833 | extern "C" | ||
18834 | #endif | ||
18835 | char net_write (); | ||
18836 | int | ||
18837 | main () | ||
18838 | { | ||
18839 | return net_write (); | ||
18840 | ; | ||
18841 | return 0; | ||
18842 | } | ||
18843 | _ACEOF | ||
18844 | if ac_fn_c_try_link "$LINENO"; then : | ||
18845 | ac_cv_lib_roken_net_write=yes | ||
18846 | else | ||
18847 | ac_cv_lib_roken_net_write=no | ||
18848 | fi | ||
18849 | rm -f core conftest.err conftest.$ac_objext \ | ||
18850 | conftest$ac_exeext conftest.$ac_ext | ||
18851 | LIBS=$ac_check_lib_save_LIBS | ||
18852 | fi | ||
18853 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_roken_net_write" >&5 | ||
18854 | $as_echo "$ac_cv_lib_roken_net_write" >&6; } | ||
18855 | if test "x$ac_cv_lib_roken_net_write" = xyes; then : | ||
18856 | K5LIBS="$K5LIBS -lroken" | ||
18857 | fi | ||
18858 | |||
18859 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for des_cbc_encrypt in -ldes" >&5 | ||
18860 | $as_echo_n "checking for des_cbc_encrypt in -ldes... " >&6; } | ||
18861 | if ${ac_cv_lib_des_des_cbc_encrypt+:} false; then : | ||
18862 | $as_echo_n "(cached) " >&6 | ||
18863 | else | ||
18864 | ac_check_lib_save_LIBS=$LIBS | ||
18865 | LIBS="-ldes $LIBS" | ||
18866 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18867 | /* end confdefs.h. */ | ||
18868 | |||
18869 | /* Override any GCC internal prototype to avoid an error. | ||
18870 | Use char because int might match the return type of a GCC | ||
18871 | builtin and then its argument prototype would still apply. */ | ||
18872 | #ifdef __cplusplus | ||
18873 | extern "C" | ||
18874 | #endif | ||
18875 | char des_cbc_encrypt (); | ||
18876 | int | ||
18877 | main () | ||
18878 | { | ||
18879 | return des_cbc_encrypt (); | ||
18880 | ; | ||
18881 | return 0; | ||
18882 | } | ||
18883 | _ACEOF | ||
18884 | if ac_fn_c_try_link "$LINENO"; then : | ||
18885 | ac_cv_lib_des_des_cbc_encrypt=yes | ||
18886 | else | ||
18887 | ac_cv_lib_des_des_cbc_encrypt=no | ||
18888 | fi | ||
18889 | rm -f core conftest.err conftest.$ac_objext \ | ||
18890 | conftest$ac_exeext conftest.$ac_ext | ||
18891 | LIBS=$ac_check_lib_save_LIBS | ||
18892 | fi | ||
18893 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_des_des_cbc_encrypt" >&5 | ||
18894 | $as_echo "$ac_cv_lib_des_des_cbc_encrypt" >&6; } | ||
18895 | if test "x$ac_cv_lib_des_des_cbc_encrypt" = xyes; then : | ||
18896 | K5LIBS="$K5LIBS -ldes" | ||
18897 | fi | ||
18898 | |||
18899 | |||
18900 | else | ||
18901 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18902 | $as_echo "no" >&6; } | ||
18903 | K5LIBS="-lkrb5 -lk5crypto -lcom_err" | ||
18904 | |||
18905 | fi | ||
18906 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
18907 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dn_expand" >&5 | ||
18908 | $as_echo_n "checking for library containing dn_expand... " >&6; } | ||
18909 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18910 | $as_echo_n "(cached) " >&6 | ||
18911 | else | ||
18912 | ac_func_search_save_LIBS=$LIBS | ||
18913 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18914 | /* end confdefs.h. */ | ||
18915 | |||
18916 | /* Override any GCC internal prototype to avoid an error. | ||
18917 | Use char because int might match the return type of a GCC | ||
18918 | builtin and then its argument prototype would still apply. */ | ||
18919 | #ifdef __cplusplus | ||
18920 | extern "C" | ||
18921 | #endif | ||
18922 | char dn_expand (); | ||
18923 | int | ||
18924 | main () | ||
18925 | { | ||
18926 | return dn_expand (); | ||
18927 | ; | ||
18928 | return 0; | ||
18929 | } | ||
18930 | _ACEOF | ||
18931 | for ac_lib in '' resolv; do | ||
18932 | if test -z "$ac_lib"; then | ||
18933 | ac_res="none required" | ||
18934 | else | ||
18935 | ac_res=-l$ac_lib | ||
18936 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
18937 | fi | ||
18938 | if ac_fn_c_try_link "$LINENO"; then : | ||
18939 | ac_cv_search_dn_expand=$ac_res | ||
18940 | fi | ||
18941 | rm -f core conftest.err conftest.$ac_objext \ | ||
18942 | conftest$ac_exeext | ||
18943 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18944 | break | ||
18945 | fi | ||
18946 | done | ||
18947 | if ${ac_cv_search_dn_expand+:} false; then : | ||
18948 | |||
18949 | else | ||
18950 | ac_cv_search_dn_expand=no | ||
18951 | fi | ||
18952 | rm conftest.$ac_ext | ||
18953 | LIBS=$ac_func_search_save_LIBS | ||
18954 | fi | ||
18955 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dn_expand" >&5 | ||
18956 | $as_echo "$ac_cv_search_dn_expand" >&6; } | ||
18957 | ac_res=$ac_cv_search_dn_expand | ||
18958 | if test "$ac_res" != no; then : | ||
18959 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
18960 | |||
18961 | fi | ||
18962 | |||
18963 | |||
18964 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi_krb5" >&5 | ||
18965 | $as_echo_n "checking for gss_init_sec_context in -lgssapi_krb5... " >&6; } | ||
18966 | if ${ac_cv_lib_gssapi_krb5_gss_init_sec_context+:} false; then : | ||
18967 | $as_echo_n "(cached) " >&6 | ||
18968 | else | ||
18969 | ac_check_lib_save_LIBS=$LIBS | ||
18970 | LIBS="-lgssapi_krb5 $LIBS" | ||
18971 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
18972 | /* end confdefs.h. */ | ||
18973 | |||
18974 | /* Override any GCC internal prototype to avoid an error. | ||
18975 | Use char because int might match the return type of a GCC | ||
18976 | builtin and then its argument prototype would still apply. */ | ||
18977 | #ifdef __cplusplus | ||
18978 | extern "C" | ||
18979 | #endif | ||
18980 | char gss_init_sec_context (); | ||
18981 | int | ||
18982 | main () | ||
18983 | { | ||
18984 | return gss_init_sec_context (); | ||
18985 | ; | ||
18986 | return 0; | ||
18987 | } | ||
18988 | _ACEOF | ||
18989 | if ac_fn_c_try_link "$LINENO"; then : | ||
18990 | ac_cv_lib_gssapi_krb5_gss_init_sec_context=yes | ||
18991 | else | ||
18992 | ac_cv_lib_gssapi_krb5_gss_init_sec_context=no | ||
18993 | fi | ||
18994 | rm -f core conftest.err conftest.$ac_objext \ | ||
18995 | conftest$ac_exeext conftest.$ac_ext | ||
18996 | LIBS=$ac_check_lib_save_LIBS | ||
18997 | fi | ||
18998 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&5 | ||
18999 | $as_echo "$ac_cv_lib_gssapi_krb5_gss_init_sec_context" >&6; } | ||
19000 | if test "x$ac_cv_lib_gssapi_krb5_gss_init_sec_context" = xyes; then : | ||
19001 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
19002 | |||
19003 | GSSLIBS="-lgssapi_krb5" | ||
19004 | else | ||
19005 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgssapi" >&5 | ||
19006 | $as_echo_n "checking for gss_init_sec_context in -lgssapi... " >&6; } | ||
19007 | if ${ac_cv_lib_gssapi_gss_init_sec_context+:} false; then : | ||
19008 | $as_echo_n "(cached) " >&6 | ||
19009 | else | ||
19010 | ac_check_lib_save_LIBS=$LIBS | ||
19011 | LIBS="-lgssapi $LIBS" | ||
19012 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19013 | /* end confdefs.h. */ | ||
19014 | |||
19015 | /* Override any GCC internal prototype to avoid an error. | ||
19016 | Use char because int might match the return type of a GCC | ||
19017 | builtin and then its argument prototype would still apply. */ | ||
19018 | #ifdef __cplusplus | ||
19019 | extern "C" | ||
19020 | #endif | ||
19021 | char gss_init_sec_context (); | ||
19022 | int | ||
19023 | main () | ||
19024 | { | ||
19025 | return gss_init_sec_context (); | ||
19026 | ; | ||
19027 | return 0; | ||
19028 | } | ||
19029 | _ACEOF | ||
19030 | if ac_fn_c_try_link "$LINENO"; then : | ||
19031 | ac_cv_lib_gssapi_gss_init_sec_context=yes | ||
19032 | else | ||
19033 | ac_cv_lib_gssapi_gss_init_sec_context=no | ||
19034 | fi | ||
19035 | rm -f core conftest.err conftest.$ac_objext \ | ||
19036 | conftest$ac_exeext conftest.$ac_ext | ||
19037 | LIBS=$ac_check_lib_save_LIBS | ||
19038 | fi | ||
19039 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gssapi_gss_init_sec_context" >&5 | ||
19040 | $as_echo "$ac_cv_lib_gssapi_gss_init_sec_context" >&6; } | ||
19041 | if test "x$ac_cv_lib_gssapi_gss_init_sec_context" = xyes; then : | ||
19042 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
19043 | |||
19044 | GSSLIBS="-lgssapi" | ||
19045 | else | ||
19046 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gss_init_sec_context in -lgss" >&5 | ||
19047 | $as_echo_n "checking for gss_init_sec_context in -lgss... " >&6; } | ||
19048 | if ${ac_cv_lib_gss_gss_init_sec_context+:} false; then : | ||
19049 | $as_echo_n "(cached) " >&6 | ||
19050 | else | ||
19051 | ac_check_lib_save_LIBS=$LIBS | ||
19052 | LIBS="-lgss $LIBS" | ||
19053 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19054 | /* end confdefs.h. */ | ||
19055 | |||
19056 | /* Override any GCC internal prototype to avoid an error. | ||
19057 | Use char because int might match the return type of a GCC | ||
19058 | builtin and then its argument prototype would still apply. */ | ||
19059 | #ifdef __cplusplus | ||
19060 | extern "C" | ||
19061 | #endif | ||
19062 | char gss_init_sec_context (); | ||
19063 | int | ||
19064 | main () | ||
19065 | { | ||
19066 | return gss_init_sec_context (); | ||
19067 | ; | ||
19068 | return 0; | ||
19069 | } | ||
19070 | _ACEOF | ||
19071 | if ac_fn_c_try_link "$LINENO"; then : | ||
19072 | ac_cv_lib_gss_gss_init_sec_context=yes | ||
19073 | else | ||
19074 | ac_cv_lib_gss_gss_init_sec_context=no | ||
19075 | fi | ||
19076 | rm -f core conftest.err conftest.$ac_objext \ | ||
19077 | conftest$ac_exeext conftest.$ac_ext | ||
19078 | LIBS=$ac_check_lib_save_LIBS | ||
19079 | fi | ||
19080 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gss_gss_init_sec_context" >&5 | ||
19081 | $as_echo "$ac_cv_lib_gss_gss_init_sec_context" >&6; } | ||
19082 | if test "x$ac_cv_lib_gss_gss_init_sec_context" = xyes; then : | ||
19083 | $as_echo "#define GSSAPI 1" >>confdefs.h | ||
19084 | |||
19085 | GSSLIBS="-lgss" | ||
19086 | else | ||
19087 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api library - build may fail" >&5 | ||
19088 | $as_echo "$as_me: WARNING: Cannot find any suitable gss-api library - build may fail" >&2;} | ||
19089 | fi | ||
19090 | |||
19091 | |||
19092 | fi | ||
19093 | |||
19094 | |||
19095 | fi | ||
19096 | |||
19097 | |||
19098 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default" | ||
19099 | if test "x$ac_cv_header_gssapi_h" = xyes; then : | ||
19100 | |||
19101 | else | ||
19102 | unset ac_cv_header_gssapi_h | ||
19103 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi" | ||
19104 | for ac_header in gssapi.h | ||
19105 | do : | ||
19106 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default" | ||
19107 | if test "x$ac_cv_header_gssapi_h" = xyes; then : | ||
19108 | cat >>confdefs.h <<_ACEOF | ||
19109 | #define HAVE_GSSAPI_H 1 | ||
19110 | _ACEOF | ||
19111 | |||
19112 | else | ||
19113 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find any suitable gss-api header - build may fail" >&5 | ||
19114 | $as_echo "$as_me: WARNING: Cannot find any suitable gss-api header - build may fail" >&2;} | ||
19115 | |||
19116 | fi | ||
19117 | |||
19118 | done | ||
19119 | |||
19120 | |||
19121 | |||
19122 | fi | ||
19123 | |||
19124 | |||
19125 | |||
19126 | oldCPP="$CPPFLAGS" | ||
19127 | CPPFLAGS="$CPPFLAGS -I${KRB5ROOT}/include/gssapi" | ||
19128 | ac_fn_c_check_header_mongrel "$LINENO" "gssapi_krb5.h" "ac_cv_header_gssapi_krb5_h" "$ac_includes_default" | ||
19129 | if test "x$ac_cv_header_gssapi_krb5_h" = xyes; then : | ||
19130 | |||
19131 | else | ||
19132 | CPPFLAGS="$oldCPP" | ||
19133 | fi | ||
19134 | |||
19135 | |||
19136 | |||
19137 | fi | ||
19138 | if test -n "${rpath_opt}" ; then | ||
19139 | LDFLAGS="$LDFLAGS ${rpath_opt}${KRB5ROOT}/lib" | ||
19140 | fi | ||
19141 | if test ! -z "$blibpath" ; then | ||
19142 | blibpath="$blibpath:${KRB5ROOT}/lib" | ||
19143 | fi | ||
19144 | |||
19145 | for ac_header in gssapi.h gssapi/gssapi.h | ||
19146 | do : | ||
19147 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
19148 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
19149 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
19150 | cat >>confdefs.h <<_ACEOF | ||
19151 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
19152 | _ACEOF | ||
19153 | |||
19154 | fi | ||
19155 | |||
19156 | done | ||
19157 | |||
19158 | for ac_header in gssapi_krb5.h gssapi/gssapi_krb5.h | ||
19159 | do : | ||
19160 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
19161 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
19162 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
19163 | cat >>confdefs.h <<_ACEOF | ||
19164 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
19165 | _ACEOF | ||
19166 | |||
19167 | fi | ||
19168 | |||
19169 | done | ||
19170 | |||
19171 | for ac_header in gssapi_generic.h gssapi/gssapi_generic.h | ||
19172 | do : | ||
19173 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | ||
19174 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | ||
19175 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | ||
19176 | cat >>confdefs.h <<_ACEOF | ||
19177 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | ||
19178 | _ACEOF | ||
19179 | |||
19180 | fi | ||
19181 | |||
19182 | done | ||
19183 | |||
19184 | |||
19185 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing k_hasafs" >&5 | ||
19186 | $as_echo_n "checking for library containing k_hasafs... " >&6; } | ||
19187 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
19188 | $as_echo_n "(cached) " >&6 | ||
19189 | else | ||
19190 | ac_func_search_save_LIBS=$LIBS | ||
19191 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19192 | /* end confdefs.h. */ | ||
19193 | |||
19194 | /* Override any GCC internal prototype to avoid an error. | ||
19195 | Use char because int might match the return type of a GCC | ||
19196 | builtin and then its argument prototype would still apply. */ | ||
19197 | #ifdef __cplusplus | ||
19198 | extern "C" | ||
19199 | #endif | ||
19200 | char k_hasafs (); | ||
19201 | int | ||
19202 | main () | ||
19203 | { | ||
19204 | return k_hasafs (); | ||
19205 | ; | ||
19206 | return 0; | ||
19207 | } | ||
19208 | _ACEOF | ||
19209 | for ac_lib in '' kafs; do | ||
19210 | if test -z "$ac_lib"; then | ||
19211 | ac_res="none required" | ||
19212 | else | ||
19213 | ac_res=-l$ac_lib | ||
19214 | LIBS="-l$ac_lib $ac_func_search_save_LIBS" | ||
19215 | fi | ||
19216 | if ac_fn_c_try_link "$LINENO"; then : | ||
19217 | ac_cv_search_k_hasafs=$ac_res | ||
19218 | fi | ||
19219 | rm -f core conftest.err conftest.$ac_objext \ | ||
19220 | conftest$ac_exeext | ||
19221 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
19222 | break | ||
19223 | fi | ||
19224 | done | ||
19225 | if ${ac_cv_search_k_hasafs+:} false; then : | ||
19226 | |||
19227 | else | ||
19228 | ac_cv_search_k_hasafs=no | ||
19229 | fi | ||
19230 | rm conftest.$ac_ext | ||
19231 | LIBS=$ac_func_search_save_LIBS | ||
19232 | fi | ||
19233 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_k_hasafs" >&5 | ||
19234 | $as_echo "$ac_cv_search_k_hasafs" >&6; } | ||
19235 | ac_res=$ac_cv_search_k_hasafs | ||
19236 | if test "$ac_res" != no; then : | ||
19237 | test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" | ||
19238 | |||
19239 | $as_echo "#define USE_AFS 1" >>confdefs.h | ||
19240 | |||
19241 | fi | ||
19242 | |||
19243 | |||
19244 | ac_fn_c_check_decl "$LINENO" "GSS_C_NT_HOSTBASED_SERVICE" "ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" " | ||
19245 | #ifdef HAVE_GSSAPI_H | ||
19246 | # include <gssapi.h> | ||
19247 | #elif defined(HAVE_GSSAPI_GSSAPI_H) | ||
19248 | # include <gssapi/gssapi.h> | ||
19249 | #endif | ||
19250 | |||
19251 | #ifdef HAVE_GSSAPI_GENERIC_H | ||
19252 | # include <gssapi_generic.h> | ||
19253 | #elif defined(HAVE_GSSAPI_GSSAPI_GENERIC_H) | ||
19254 | # include <gssapi/gssapi_generic.h> | ||
19255 | #endif | ||
19256 | |||
19257 | " | ||
19258 | if test "x$ac_cv_have_decl_GSS_C_NT_HOSTBASED_SERVICE" = xyes; then : | ||
19259 | ac_have_decl=1 | ||
19260 | else | ||
19261 | ac_have_decl=0 | ||
19262 | fi | ||
19263 | |||
19264 | cat >>confdefs.h <<_ACEOF | ||
19265 | #define HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE $ac_have_decl | ||
19266 | _ACEOF | ||
19267 | |||
19268 | saved_LIBS="$LIBS" | ||
19269 | LIBS="$LIBS $K5LIBS" | ||
19270 | for ac_func in krb5_cc_new_unique krb5_get_error_message krb5_free_error_message | ||
19271 | do : | ||
19272 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | ||
19273 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | ||
19274 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | ||
19275 | cat >>confdefs.h <<_ACEOF | ||
19276 | #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 | ||
19277 | _ACEOF | ||
19278 | |||
19279 | fi | ||
19280 | done | ||
19281 | |||
19282 | LIBS="$saved_LIBS" | ||
19283 | |||
19284 | fi | ||
19285 | |||
19286 | |||
19287 | fi | ||
19288 | |||
19289 | |||
19290 | |||
19291 | |||
19292 | # Looking for programs, paths and files | ||
19293 | |||
19294 | PRIVSEP_PATH=/var/empty | ||
19295 | |||
19296 | # Check whether --with-privsep-path was given. | ||
19297 | if test "${with_privsep_path+set}" = set; then : | ||
19298 | withval=$with_privsep_path; | ||
19299 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
19300 | test "x${withval}" != "xyes"; then | ||
19301 | PRIVSEP_PATH=$withval | ||
19302 | fi | ||
19303 | |||
19304 | |||
19305 | fi | ||
19306 | |||
19307 | |||
19308 | |||
19309 | |||
19310 | # Check whether --with-xauth was given. | ||
19311 | if test "${with_xauth+set}" = set; then : | ||
19312 | withval=$with_xauth; | ||
19313 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
19314 | test "x${withval}" != "xyes"; then | ||
19315 | xauth_path=$withval | ||
19316 | fi | ||
19317 | |||
19318 | else | ||
19319 | |||
19320 | TestPath="$PATH" | ||
19321 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/X/bin" | ||
19322 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/bin/X11" | ||
19323 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/X11R6/bin" | ||
19324 | TestPath="${TestPath}${PATH_SEPARATOR}/usr/openwin/bin" | ||
19325 | # Extract the first word of "xauth", so it can be a program name with args. | ||
19326 | set dummy xauth; ac_word=$2 | ||
19327 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
19328 | $as_echo_n "checking for $ac_word... " >&6; } | ||
19329 | if ${ac_cv_path_xauth_path+:} false; then : | ||
19330 | $as_echo_n "(cached) " >&6 | ||
19331 | else | ||
19332 | case $xauth_path in | ||
19333 | [\\/]* | ?:[\\/]*) | ||
19334 | ac_cv_path_xauth_path="$xauth_path" # Let the user override the test with a path. | ||
19335 | ;; | ||
19336 | *) | ||
19337 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
19338 | for as_dir in $TestPath | ||
19339 | do | ||
19340 | IFS=$as_save_IFS | ||
19341 | test -z "$as_dir" && as_dir=. | ||
19342 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
19343 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | ||
19344 | ac_cv_path_xauth_path="$as_dir/$ac_word$ac_exec_ext" | ||
19345 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
19346 | break 2 | ||
19347 | fi | ||
19348 | done | ||
19349 | done | ||
19350 | IFS=$as_save_IFS | ||
19351 | |||
19352 | ;; | ||
19353 | esac | ||
19354 | fi | ||
19355 | xauth_path=$ac_cv_path_xauth_path | ||
19356 | if test -n "$xauth_path"; then | ||
19357 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xauth_path" >&5 | ||
19358 | $as_echo "$xauth_path" >&6; } | ||
19359 | else | ||
19360 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
19361 | $as_echo "no" >&6; } | ||
19362 | fi | ||
19363 | |||
19364 | |||
19365 | if (test ! -z "$xauth_path" && test -x "/usr/openwin/bin/xauth") ; then | ||
19366 | xauth_path="/usr/openwin/bin/xauth" | ||
19367 | fi | ||
19368 | |||
19369 | |||
19370 | fi | ||
19371 | |||
19372 | |||
19373 | STRIP_OPT=-s | ||
19374 | # Check whether --enable-strip was given. | ||
19375 | if test "${enable_strip+set}" = set; then : | ||
19376 | enableval=$enable_strip; | ||
19377 | if test "x$enableval" = "xno" ; then | ||
19378 | STRIP_OPT= | ||
19379 | fi | ||
19380 | |||
19381 | |||
19382 | fi | ||
19383 | |||
19384 | |||
19385 | |||
19386 | if test -z "$xauth_path" ; then | ||
19387 | XAUTH_PATH="undefined" | ||
19388 | |||
19389 | else | ||
19390 | |||
19391 | cat >>confdefs.h <<_ACEOF | ||
19392 | #define XAUTH_PATH "$xauth_path" | ||
19393 | _ACEOF | ||
19394 | |||
19395 | XAUTH_PATH=$xauth_path | ||
19396 | |||
19397 | fi | ||
19398 | |||
19399 | # Check for mail directory | ||
19400 | |||
19401 | # Check whether --with-maildir was given. | ||
19402 | if test "${with_maildir+set}" = set; then : | ||
19403 | withval=$with_maildir; | ||
19404 | if test "X$withval" != X && test "x$withval" != xno && \ | ||
19405 | test "x${withval}" != xyes; then | ||
19406 | |||
19407 | cat >>confdefs.h <<_ACEOF | ||
19408 | #define MAIL_DIRECTORY "$withval" | ||
19409 | _ACEOF | ||
19410 | |||
19411 | fi | ||
19412 | |||
19413 | else | ||
19414 | |||
19415 | if test "X$maildir" != "X"; then | ||
19416 | cat >>confdefs.h <<_ACEOF | ||
19417 | #define MAIL_DIRECTORY "$maildir" | ||
19418 | _ACEOF | ||
19419 | |||
19420 | else | ||
19421 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking Discovering system mail directory" >&5 | ||
19422 | $as_echo_n "checking Discovering system mail directory... " >&6; } | ||
19423 | if test "$cross_compiling" = yes; then : | ||
19424 | |||
19425 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&5 | ||
19426 | $as_echo "$as_me: WARNING: cross compiling: use --with-maildir=/path/to/mail" >&2;} | ||
19427 | |||
19428 | |||
19429 | else | ||
19430 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19431 | /* end confdefs.h. */ | ||
19432 | |||
19433 | #include <stdio.h> | ||
19434 | #include <stdlib.h> | ||
19435 | #include <string.h> | ||
19436 | #ifdef HAVE_PATHS_H | ||
19437 | #include <paths.h> | ||
19438 | #endif | ||
19439 | #ifdef HAVE_MAILLOCK_H | ||
19440 | #include <maillock.h> | ||
19441 | #endif | ||
19442 | #define DATA "conftest.maildir" | ||
19443 | |||
19444 | int | ||
19445 | main () | ||
19446 | { | ||
19447 | |||
19448 | FILE *fd; | ||
19449 | int rc; | ||
19450 | |||
19451 | fd = fopen(DATA,"w"); | ||
19452 | if(fd == NULL) | ||
19453 | exit(1); | ||
19454 | |||
19455 | #if defined (_PATH_MAILDIR) | ||
19456 | if ((rc = fprintf(fd ,"_PATH_MAILDIR:%s\n", _PATH_MAILDIR)) <0) | ||
19457 | exit(1); | ||
19458 | #elif defined (MAILDIR) | ||
19459 | if ((rc = fprintf(fd ,"MAILDIR:%s\n", MAILDIR)) <0) | ||
19460 | exit(1); | ||
19461 | #elif defined (_PATH_MAIL) | ||
19462 | if ((rc = fprintf(fd ,"_PATH_MAIL:%s\n", _PATH_MAIL)) <0) | ||
19463 | exit(1); | ||
19464 | #else | ||
19465 | exit (2); | ||
19466 | #endif | ||
19467 | |||
19468 | exit(0); | ||
19469 | |||
19470 | ; | ||
19471 | return 0; | ||
19472 | } | ||
19473 | _ACEOF | ||
19474 | if ac_fn_c_try_run "$LINENO"; then : | ||
19475 | |||
19476 | maildir_what=`awk -F: '{print $1}' conftest.maildir` | ||
19477 | maildir=`awk -F: '{print $2}' conftest.maildir \ | ||
19478 | | sed 's|/$||'` | ||
19479 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: $maildir from $maildir_what" >&5 | ||
19480 | $as_echo "Using: $maildir from $maildir_what" >&6; } | ||
19481 | if test "x$maildir_what" != "x_PATH_MAILDIR"; then | ||
19482 | cat >>confdefs.h <<_ACEOF | ||
19483 | #define MAIL_DIRECTORY "$maildir" | ||
19484 | _ACEOF | ||
19485 | |||
19486 | fi | ||
19487 | |||
19488 | else | ||
19489 | |||
19490 | if test "X$ac_status" = "X2";then | ||
19491 | # our test program didn't find it. Default to /var/spool/mail | ||
19492 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using: default value of /var/spool/mail" >&5 | ||
19493 | $as_echo "Using: default value of /var/spool/mail" >&6; } | ||
19494 | cat >>confdefs.h <<_ACEOF | ||
19495 | #define MAIL_DIRECTORY "/var/spool/mail" | ||
19496 | _ACEOF | ||
19497 | |||
19498 | else | ||
19499 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: *** not found ***" >&5 | ||
19500 | $as_echo "*** not found ***" >&6; } | ||
19501 | fi | ||
19502 | |||
19503 | fi | ||
19504 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
19505 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
19506 | fi | ||
19507 | |||
19508 | fi | ||
19509 | |||
19510 | |||
19511 | fi | ||
19512 | # maildir | ||
19513 | |||
19514 | if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes"; then | ||
19515 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptmx test" >&5 | ||
19516 | $as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptmx test" >&2;} | ||
19517 | disable_ptmx_check=yes | ||
19518 | fi | ||
19519 | if test -z "$no_dev_ptmx" ; then | ||
19520 | if test "x$disable_ptmx_check" != "xyes" ; then | ||
19521 | as_ac_File=`$as_echo "ac_cv_file_"/dev/ptmx"" | $as_tr_sh` | ||
19522 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptmx\"" >&5 | ||
19523 | $as_echo_n "checking for \"/dev/ptmx\"... " >&6; } | ||
19524 | if eval \${$as_ac_File+:} false; then : | ||
19525 | $as_echo_n "(cached) " >&6 | ||
19526 | else | ||
19527 | test "$cross_compiling" = yes && | ||
19528 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
19529 | if test -r ""/dev/ptmx""; then | ||
19530 | eval "$as_ac_File=yes" | ||
19531 | else | ||
19532 | eval "$as_ac_File=no" | ||
19533 | fi | ||
19534 | fi | ||
19535 | eval ac_res=\$$as_ac_File | ||
19536 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
19537 | $as_echo "$ac_res" >&6; } | ||
19538 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
19539 | |||
19540 | |||
19541 | cat >>confdefs.h <<_ACEOF | ||
19542 | #define HAVE_DEV_PTMX 1 | ||
19543 | _ACEOF | ||
19544 | |||
19545 | have_dev_ptmx=1 | ||
19546 | |||
19547 | |||
19548 | fi | ||
19549 | |||
19550 | fi | ||
19551 | fi | ||
19552 | |||
19553 | if test ! -z "$cross_compiling" && test "x$cross_compiling" != "xyes"; then | ||
19554 | as_ac_File=`$as_echo "ac_cv_file_"/dev/ptc"" | $as_tr_sh` | ||
19555 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/ptc\"" >&5 | ||
19556 | $as_echo_n "checking for \"/dev/ptc\"... " >&6; } | ||
19557 | if eval \${$as_ac_File+:} false; then : | ||
19558 | $as_echo_n "(cached) " >&6 | ||
19559 | else | ||
19560 | test "$cross_compiling" = yes && | ||
19561 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
19562 | if test -r ""/dev/ptc""; then | ||
19563 | eval "$as_ac_File=yes" | ||
19564 | else | ||
19565 | eval "$as_ac_File=no" | ||
19566 | fi | ||
19567 | fi | ||
19568 | eval ac_res=\$$as_ac_File | ||
19569 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
19570 | $as_echo "$ac_res" >&6; } | ||
19571 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
19572 | |||
19573 | |||
19574 | cat >>confdefs.h <<_ACEOF | ||
19575 | #define HAVE_DEV_PTS_AND_PTC 1 | ||
19576 | _ACEOF | ||
19577 | |||
19578 | have_dev_ptc=1 | ||
19579 | |||
19580 | |||
19581 | fi | ||
19582 | |||
19583 | else | ||
19584 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: Disabling /dev/ptc test" >&5 | ||
19585 | $as_echo "$as_me: WARNING: cross compiling: Disabling /dev/ptc test" >&2;} | ||
19586 | fi | ||
19587 | |||
19588 | # Options from here on. Some of these are preset by platform above | ||
19589 | |||
19590 | # Check whether --with-mantype was given. | ||
19591 | if test "${with_mantype+set}" = set; then : | ||
19592 | withval=$with_mantype; | ||
19593 | case "$withval" in | ||
19594 | man|cat|doc) | ||
19595 | MANTYPE=$withval | ||
19596 | ;; | ||
19597 | *) | ||
19598 | as_fn_error $? "invalid man type: $withval" "$LINENO" 5 | ||
19599 | ;; | ||
19600 | esac | ||
19601 | |||
19602 | |||
19603 | fi | ||
19604 | |||
19605 | if test -z "$MANTYPE"; then | ||
19606 | if ${MANDOC} ${srcdir}/ssh.1 >/dev/null 2>&1; then | ||
19607 | MANTYPE=doc | ||
19608 | elif ${NROFF} -mdoc ${srcdir}/ssh.1 >/dev/null 2>&1; then | ||
19609 | MANTYPE=doc | ||
19610 | elif ${NROFF} -man ${srcdir}/ssh.1 >/dev/null 2>&1; then | ||
19611 | MANTYPE=man | ||
19612 | else | ||
19613 | MANTYPE=cat | ||
19614 | fi | ||
19615 | fi | ||
19616 | |||
19617 | if test "$MANTYPE" = "doc"; then | ||
19618 | mansubdir=man; | ||
19619 | else | ||
19620 | mansubdir=$MANTYPE; | ||
19621 | fi | ||
19622 | |||
19623 | |||
19624 | # Check whether to enable MD5 passwords | ||
19625 | MD5_MSG="no" | ||
19626 | |||
19627 | # Check whether --with-md5-passwords was given. | ||
19628 | if test "${with_md5_passwords+set}" = set; then : | ||
19629 | withval=$with_md5_passwords; | ||
19630 | if test "x$withval" != "xno" ; then | ||
19631 | |||
19632 | $as_echo "#define HAVE_MD5_PASSWORDS 1" >>confdefs.h | ||
19633 | |||
19634 | MD5_MSG="yes" | ||
19635 | fi | ||
19636 | |||
19637 | |||
19638 | fi | ||
19639 | |||
19640 | |||
19641 | # Whether to disable shadow password support | ||
19642 | |||
19643 | # Check whether --with-shadow was given. | ||
19644 | if test "${with_shadow+set}" = set; then : | ||
19645 | withval=$with_shadow; | ||
19646 | if test "x$withval" = "xno" ; then | ||
19647 | $as_echo "#define DISABLE_SHADOW 1" >>confdefs.h | ||
19648 | |||
19649 | disable_shadow=yes | ||
19650 | fi | ||
19651 | |||
19652 | |||
19653 | fi | ||
19654 | |||
19655 | |||
19656 | if test -z "$disable_shadow" ; then | ||
19657 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the systems has expire shadow information" >&5 | ||
19658 | $as_echo_n "checking if the systems has expire shadow information... " >&6; } | ||
19659 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19660 | /* end confdefs.h. */ | ||
19661 | |||
19662 | #include <sys/types.h> | ||
19663 | #include <shadow.h> | ||
19664 | struct spwd sp; | ||
19665 | |||
19666 | int | ||
19667 | main () | ||
19668 | { | ||
19669 | sp.sp_expire = sp.sp_lstchg = sp.sp_inact = 0; | ||
19670 | ; | ||
19671 | return 0; | ||
19672 | } | ||
19673 | _ACEOF | ||
19674 | if ac_fn_c_try_compile "$LINENO"; then : | ||
19675 | sp_expire_available=yes | ||
19676 | fi | ||
19677 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
19678 | |||
19679 | if test "x$sp_expire_available" = "xyes" ; then | ||
19680 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
19681 | $as_echo "yes" >&6; } | ||
19682 | |||
19683 | $as_echo "#define HAS_SHADOW_EXPIRE 1" >>confdefs.h | ||
19684 | |||
19685 | else | ||
19686 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
19687 | $as_echo "no" >&6; } | ||
19688 | fi | ||
19689 | fi | ||
19690 | |||
19691 | # Use ip address instead of hostname in $DISPLAY | ||
19692 | if test ! -z "$IPADDR_IN_DISPLAY" ; then | ||
19693 | DISPLAY_HACK_MSG="yes" | ||
19694 | |||
19695 | $as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h | ||
19696 | |||
19697 | else | ||
19698 | DISPLAY_HACK_MSG="no" | ||
19699 | |||
19700 | # Check whether --with-ipaddr-display was given. | ||
19701 | if test "${with_ipaddr_display+set}" = set; then : | ||
19702 | withval=$with_ipaddr_display; | ||
19703 | if test "x$withval" != "xno" ; then | ||
19704 | $as_echo "#define IPADDR_IN_DISPLAY 1" >>confdefs.h | ||
19705 | |||
19706 | DISPLAY_HACK_MSG="yes" | ||
19707 | fi | ||
19708 | |||
19709 | |||
19710 | fi | ||
19711 | |||
19712 | fi | ||
19713 | |||
19714 | # check for /etc/default/login and use it if present. | ||
19715 | # Check whether --enable-etc-default-login was given. | ||
19716 | if test "${enable_etc_default_login+set}" = set; then : | ||
19717 | enableval=$enable_etc_default_login; if test "x$enableval" = "xno"; then | ||
19718 | { $as_echo "$as_me:${as_lineno-$LINENO}: /etc/default/login handling disabled" >&5 | ||
19719 | $as_echo "$as_me: /etc/default/login handling disabled" >&6;} | ||
19720 | etc_default_login=no | ||
19721 | else | ||
19722 | etc_default_login=yes | ||
19723 | fi | ||
19724 | else | ||
19725 | if test ! -z "$cross_compiling" && test "x$cross_compiling" = "xyes"; | ||
19726 | then | ||
19727 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cross compiling: not checking /etc/default/login" >&5 | ||
19728 | $as_echo "$as_me: WARNING: cross compiling: not checking /etc/default/login" >&2;} | ||
19729 | etc_default_login=no | ||
19730 | else | ||
19731 | etc_default_login=yes | ||
19732 | fi | ||
19733 | |||
19734 | fi | ||
19735 | |||
19736 | |||
19737 | if test "x$etc_default_login" != "xno"; then | ||
19738 | as_ac_File=`$as_echo "ac_cv_file_"/etc/default/login"" | $as_tr_sh` | ||
19739 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/etc/default/login\"" >&5 | ||
19740 | $as_echo_n "checking for \"/etc/default/login\"... " >&6; } | ||
19741 | if eval \${$as_ac_File+:} false; then : | ||
19742 | $as_echo_n "(cached) " >&6 | ||
19743 | else | ||
19744 | test "$cross_compiling" = yes && | ||
19745 | as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 | ||
19746 | if test -r ""/etc/default/login""; then | ||
19747 | eval "$as_ac_File=yes" | ||
19748 | else | ||
19749 | eval "$as_ac_File=no" | ||
19750 | fi | ||
19751 | fi | ||
19752 | eval ac_res=\$$as_ac_File | ||
19753 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 | ||
19754 | $as_echo "$ac_res" >&6; } | ||
19755 | if eval test \"x\$"$as_ac_File"\" = x"yes"; then : | ||
19756 | external_path_file=/etc/default/login | ||
19757 | fi | ||
19758 | |||
19759 | if test "x$external_path_file" = "x/etc/default/login"; then | ||
19760 | |||
19761 | $as_echo "#define HAVE_ETC_DEFAULT_LOGIN 1" >>confdefs.h | ||
19762 | |||
19763 | fi | ||
19764 | fi | ||
19765 | |||
19766 | if test $ac_cv_func_login_getcapbool = "yes" && \ | ||
19767 | test $ac_cv_header_login_cap_h = "yes" ; then | ||
19768 | external_path_file=/etc/login.conf | ||
19769 | fi | ||
19770 | |||
19771 | # Whether to mess with the default path | ||
19772 | SERVER_PATH_MSG="(default)" | ||
19773 | |||
19774 | # Check whether --with-default-path was given. | ||
19775 | if test "${with_default_path+set}" = set; then : | ||
19776 | withval=$with_default_path; | ||
19777 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
19778 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
19779 | --with-default-path=PATH has no effect on this system. | ||
19780 | Edit /etc/login.conf instead." >&5 | ||
19781 | $as_echo "$as_me: WARNING: | ||
19782 | --with-default-path=PATH has no effect on this system. | ||
19783 | Edit /etc/login.conf instead." >&2;} | ||
19784 | elif test "x$withval" != "xno" ; then | ||
19785 | if test ! -z "$external_path_file" ; then | ||
19786 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
19787 | --with-default-path=PATH will only be used if PATH is not defined in | ||
19788 | $external_path_file ." >&5 | ||
19789 | $as_echo "$as_me: WARNING: | ||
19790 | --with-default-path=PATH will only be used if PATH is not defined in | ||
19791 | $external_path_file ." >&2;} | ||
19792 | fi | ||
19793 | user_path="$withval" | ||
19794 | SERVER_PATH_MSG="$withval" | ||
19795 | fi | ||
19796 | |||
19797 | else | ||
19798 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
19799 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Make sure the path to scp is in /etc/login.conf" >&5 | ||
19800 | $as_echo "$as_me: WARNING: Make sure the path to scp is in /etc/login.conf" >&2;} | ||
19801 | else | ||
19802 | if test ! -z "$external_path_file" ; then | ||
19803 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | ||
19804 | If PATH is defined in $external_path_file, ensure the path to scp is included, | ||
19805 | otherwise scp will not work." >&5 | ||
19806 | $as_echo "$as_me: WARNING: | ||
19807 | If PATH is defined in $external_path_file, ensure the path to scp is included, | ||
19808 | otherwise scp will not work." >&2;} | ||
19809 | fi | ||
19810 | if test "$cross_compiling" = yes; then : | ||
19811 | user_path="/usr/bin:/bin:/usr/sbin:/sbin" | ||
19812 | |||
19813 | else | ||
19814 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
19815 | /* end confdefs.h. */ | ||
19816 | |||
19817 | /* find out what STDPATH is */ | ||
19818 | #include <stdio.h> | ||
19819 | #include <stdlib.h> | ||
19820 | #ifdef HAVE_PATHS_H | ||
19821 | # include <paths.h> | ||
19822 | #endif | ||
19823 | #ifndef _PATH_STDPATH | ||
19824 | # ifdef _PATH_USERPATH /* Irix */ | ||
19825 | # define _PATH_STDPATH _PATH_USERPATH | ||
19826 | # else | ||
19827 | # define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin" | ||
19828 | # endif | ||
19829 | #endif | ||
19830 | #include <sys/types.h> | ||
19831 | #include <sys/stat.h> | ||
19832 | #include <fcntl.h> | ||
19833 | #define DATA "conftest.stdpath" | ||
19834 | |||
19835 | int | ||
19836 | main () | ||
19837 | { | ||
19838 | |||
19839 | FILE *fd; | ||
19840 | int rc; | ||
19841 | |||
19842 | fd = fopen(DATA,"w"); | ||
19843 | if(fd == NULL) | ||
19844 | exit(1); | ||
19845 | |||
19846 | if ((rc = fprintf(fd,"%s", _PATH_STDPATH)) < 0) | ||
19847 | exit(1); | ||
19848 | |||
19849 | exit(0); | ||
19850 | |||
19851 | ; | ||
19852 | return 0; | ||
19853 | } | ||
19854 | _ACEOF | ||
19855 | if ac_fn_c_try_run "$LINENO"; then : | ||
19856 | user_path=`cat conftest.stdpath` | ||
19857 | else | ||
19858 | user_path="/usr/bin:/bin:/usr/sbin:/sbin" | ||
19859 | fi | ||
19860 | rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ | ||
19861 | conftest.$ac_objext conftest.beam conftest.$ac_ext | ||
19862 | fi | ||
19863 | |||
19864 | # make sure $bindir is in USER_PATH so scp will work | ||
19865 | t_bindir="${bindir}" | ||
19866 | while echo "${t_bindir}" | egrep '\$\{|NONE/' >/dev/null 2>&1; do | ||
19867 | t_bindir=`eval echo ${t_bindir}` | ||
19868 | case $t_bindir in | ||
19869 | NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$prefix~"` ;; | ||
19870 | esac | ||
19871 | case $t_bindir in | ||
19872 | NONE/*) t_bindir=`echo $t_bindir | sed "s~NONE~$ac_default_prefix~"` ;; | ||
19873 | esac | ||
19874 | done | ||
19875 | echo $user_path | grep ":$t_bindir" > /dev/null 2>&1 | ||
19876 | if test $? -ne 0 ; then | ||
19877 | echo $user_path | grep "^$t_bindir" > /dev/null 2>&1 | ||
19878 | if test $? -ne 0 ; then | ||
19879 | user_path=$user_path:$t_bindir | ||
19880 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: Adding $t_bindir to USER_PATH so scp will work" >&5 | ||
19881 | $as_echo "Adding $t_bindir to USER_PATH so scp will work" >&6; } | ||
19882 | fi | ||
19883 | fi | ||
19884 | fi | ||
19885 | |||
19886 | fi | ||
19887 | |||
19888 | if test "x$external_path_file" != "x/etc/login.conf" ; then | ||
19889 | |||
19890 | cat >>confdefs.h <<_ACEOF | ||
19891 | #define USER_PATH "$user_path" | ||
19892 | _ACEOF | ||
19893 | |||
19894 | |||
19895 | fi | ||
19896 | |||
19897 | # Set superuser path separately to user path | ||
19898 | |||
19899 | # Check whether --with-superuser-path was given. | ||
19900 | if test "${with_superuser_path+set}" = set; then : | ||
19901 | withval=$with_superuser_path; | ||
19902 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
19903 | test "x${withval}" != "xyes"; then | ||
19904 | |||
19905 | cat >>confdefs.h <<_ACEOF | ||
19906 | #define SUPERUSER_PATH "$withval" | ||
19907 | _ACEOF | ||
19908 | |||
19909 | superuser_path=$withval | ||
19910 | fi | ||
19911 | |||
19912 | |||
19913 | fi | ||
19914 | |||
19915 | |||
19916 | |||
19917 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need to convert IPv4 in IPv6-mapped addresses" >&5 | ||
19918 | $as_echo_n "checking if we need to convert IPv4 in IPv6-mapped addresses... " >&6; } | ||
19919 | IPV4_IN6_HACK_MSG="no" | ||
19920 | |||
19921 | # Check whether --with-4in6 was given. | ||
19922 | if test "${with_4in6+set}" = set; then : | ||
19923 | withval=$with_4in6; | ||
19924 | if test "x$withval" != "xno" ; then | ||
19925 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
19926 | $as_echo "yes" >&6; } | ||
19927 | |||
19928 | $as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h | ||
19929 | |||
19930 | IPV4_IN6_HACK_MSG="yes" | ||
19931 | else | ||
19932 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
19933 | $as_echo "no" >&6; } | ||
19934 | fi | ||
19935 | |||
19936 | else | ||
19937 | |||
19938 | if test "x$inet6_default_4in6" = "xyes"; then | ||
19939 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (default)" >&5 | ||
19940 | $as_echo "yes (default)" >&6; } | ||
19941 | $as_echo "#define IPV4_IN_IPV6 1" >>confdefs.h | ||
19942 | |||
19943 | IPV4_IN6_HACK_MSG="yes" | ||
19944 | else | ||
19945 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (default)" >&5 | ||
19946 | $as_echo "no (default)" >&6; } | ||
19947 | fi | ||
19948 | |||
19949 | |||
19950 | fi | ||
19951 | |||
19952 | |||
19953 | # Whether to enable BSD auth support | ||
19954 | BSD_AUTH_MSG=no | ||
19955 | |||
19956 | # Check whether --with-bsd-auth was given. | ||
19957 | if test "${with_bsd_auth+set}" = set; then : | ||
19958 | withval=$with_bsd_auth; | ||
19959 | if test "x$withval" != "xno" ; then | ||
19960 | |||
19961 | $as_echo "#define BSD_AUTH 1" >>confdefs.h | ||
19962 | |||
19963 | BSD_AUTH_MSG=yes | ||
19964 | fi | ||
19965 | |||
19966 | |||
19967 | fi | ||
19968 | |||
19969 | |||
19970 | # Where to place sshd.pid | ||
19971 | piddir=/var/run | ||
19972 | # make sure the directory exists | ||
19973 | if test ! -d $piddir ; then | ||
19974 | piddir=`eval echo ${sysconfdir}` | ||
19975 | case $piddir in | ||
19976 | NONE/*) piddir=`echo $piddir | sed "s~NONE~$ac_default_prefix~"` ;; | ||
19977 | esac | ||
19978 | fi | ||
19979 | |||
19980 | |||
19981 | # Check whether --with-pid-dir was given. | ||
19982 | if test "${with_pid_dir+set}" = set; then : | ||
19983 | withval=$with_pid_dir; | ||
19984 | if test -n "$withval" && test "x$withval" != "xno" && \ | ||
19985 | test "x${withval}" != "xyes"; then | ||
19986 | piddir=$withval | ||
19987 | if test ! -d $piddir ; then | ||
19988 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** no $piddir directory on this system **" >&5 | ||
19989 | $as_echo "$as_me: WARNING: ** no $piddir directory on this system **" >&2;} | ||
19990 | fi | ||
19991 | fi | ||
19992 | |||
19993 | |||
19994 | fi | ||
19995 | |||
19996 | |||
19997 | |||
19998 | cat >>confdefs.h <<_ACEOF | ||
19999 | #define _PATH_SSH_PIDDIR "$piddir" | ||
20000 | _ACEOF | ||
20001 | |||
20002 | |||
20003 | |||
20004 | # Check whether --enable-lastlog was given. | ||
20005 | if test "${enable_lastlog+set}" = set; then : | ||
20006 | enableval=$enable_lastlog; | ||
20007 | if test "x$enableval" = "xno" ; then | ||
20008 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
20009 | |||
20010 | fi | ||
20011 | |||
20012 | |||
20013 | fi | ||
20014 | |||
20015 | # Check whether --enable-utmp was given. | ||
20016 | if test "${enable_utmp+set}" = set; then : | ||
20017 | enableval=$enable_utmp; | ||
20018 | if test "x$enableval" = "xno" ; then | ||
20019 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
20020 | |||
20021 | fi | ||
20022 | |||
20023 | |||
20024 | fi | ||
20025 | |||
20026 | # Check whether --enable-utmpx was given. | ||
20027 | if test "${enable_utmpx+set}" = set; then : | ||
20028 | enableval=$enable_utmpx; | ||
20029 | if test "x$enableval" = "xno" ; then | ||
20030 | |||
20031 | $as_echo "#define DISABLE_UTMPX 1" >>confdefs.h | ||
20032 | |||
20033 | fi | ||
20034 | |||
20035 | |||
20036 | fi | ||
20037 | |||
20038 | # Check whether --enable-wtmp was given. | ||
20039 | if test "${enable_wtmp+set}" = set; then : | ||
20040 | enableval=$enable_wtmp; | ||
20041 | if test "x$enableval" = "xno" ; then | ||
20042 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
20043 | |||
20044 | fi | ||
20045 | |||
20046 | |||
20047 | fi | ||
20048 | |||
20049 | # Check whether --enable-wtmpx was given. | ||
20050 | if test "${enable_wtmpx+set}" = set; then : | ||
20051 | enableval=$enable_wtmpx; | ||
20052 | if test "x$enableval" = "xno" ; then | ||
20053 | |||
20054 | $as_echo "#define DISABLE_WTMPX 1" >>confdefs.h | ||
20055 | |||
20056 | fi | ||
20057 | |||
20058 | |||
20059 | fi | ||
20060 | |||
20061 | # Check whether --enable-libutil was given. | ||
20062 | if test "${enable_libutil+set}" = set; then : | ||
20063 | enableval=$enable_libutil; | ||
20064 | if test "x$enableval" = "xno" ; then | ||
20065 | $as_echo "#define DISABLE_LOGIN 1" >>confdefs.h | ||
20066 | |||
20067 | fi | ||
20068 | |||
20069 | |||
20070 | fi | ||
20071 | |||
20072 | # Check whether --enable-pututline was given. | ||
20073 | if test "${enable_pututline+set}" = set; then : | ||
20074 | enableval=$enable_pututline; | ||
20075 | if test "x$enableval" = "xno" ; then | ||
20076 | |||
20077 | $as_echo "#define DISABLE_PUTUTLINE 1" >>confdefs.h | ||
20078 | |||
20079 | fi | ||
20080 | |||
20081 | |||
20082 | fi | ||
20083 | |||
20084 | # Check whether --enable-pututxline was given. | ||
20085 | if test "${enable_pututxline+set}" = set; then : | ||
20086 | enableval=$enable_pututxline; | ||
20087 | if test "x$enableval" = "xno" ; then | ||
20088 | |||
20089 | $as_echo "#define DISABLE_PUTUTXLINE 1" >>confdefs.h | ||
20090 | |||
20091 | fi | ||
20092 | |||
20093 | |||
20094 | fi | ||
20095 | |||
20096 | |||
20097 | # Check whether --with-lastlog was given. | ||
20098 | if test "${with_lastlog+set}" = set; then : | ||
20099 | withval=$with_lastlog; | ||
20100 | if test "x$withval" = "xno" ; then | ||
20101 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
20102 | |||
20103 | elif test -n "$withval" && test "x${withval}" != "xyes"; then | ||
20104 | conf_lastlog_location=$withval | ||
20105 | fi | ||
20106 | |||
20107 | |||
20108 | fi | ||
20109 | |||
20110 | |||
20111 | |||
20112 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines LASTLOG_FILE" >&5 | ||
20113 | $as_echo_n "checking if your system defines LASTLOG_FILE... " >&6; } | ||
20114 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
20115 | /* end confdefs.h. */ | ||
20116 | |||
20117 | #include <sys/types.h> | ||
20118 | #include <utmp.h> | ||
20119 | #ifdef HAVE_LASTLOG_H | ||
20120 | # include <lastlog.h> | ||
20121 | #endif | ||
20122 | #ifdef HAVE_PATHS_H | ||
20123 | # include <paths.h> | ||
20124 | #endif | ||
20125 | #ifdef HAVE_LOGIN_H | ||
20126 | # include <login.h> | ||
20127 | #endif | ||
20128 | |||
20129 | int | ||
20130 | main () | ||
20131 | { | ||
20132 | char *lastlog = LASTLOG_FILE; | ||
20133 | ; | ||
20134 | return 0; | ||
20135 | } | ||
20136 | _ACEOF | ||
20137 | if ac_fn_c_try_compile "$LINENO"; then : | ||
20138 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
20139 | $as_echo "yes" >&6; } | ||
20140 | else | ||
20141 | |||
20142 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20143 | $as_echo "no" >&6; } | ||
20144 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines _PATH_LASTLOG" >&5 | ||
20145 | $as_echo_n "checking if your system defines _PATH_LASTLOG... " >&6; } | ||
20146 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
20147 | /* end confdefs.h. */ | ||
20148 | |||
20149 | #include <sys/types.h> | ||
20150 | #include <utmp.h> | ||
20151 | #ifdef HAVE_LASTLOG_H | ||
20152 | # include <lastlog.h> | ||
20153 | #endif | ||
20154 | #ifdef HAVE_PATHS_H | ||
20155 | # include <paths.h> | ||
20156 | #endif | ||
20157 | |||
20158 | int | ||
20159 | main () | ||
20160 | { | ||
20161 | char *lastlog = _PATH_LASTLOG; | ||
20162 | ; | ||
20163 | return 0; | ||
20164 | } | ||
20165 | _ACEOF | ||
20166 | if ac_fn_c_try_compile "$LINENO"; then : | ||
20167 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
20168 | $as_echo "yes" >&6; } | ||
20169 | else | ||
20170 | |||
20171 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20172 | $as_echo "no" >&6; } | ||
20173 | system_lastlog_path=no | ||
20174 | |||
20175 | fi | ||
20176 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
20177 | |||
20178 | fi | ||
20179 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
20180 | |||
20181 | if test -z "$conf_lastlog_location"; then | ||
20182 | if test x"$system_lastlog_path" = x"no" ; then | ||
20183 | for f in /var/log/lastlog /usr/adm/lastlog /var/adm/lastlog /etc/security/lastlog ; do | ||
20184 | if (test -d "$f" || test -f "$f") ; then | ||
20185 | conf_lastlog_location=$f | ||
20186 | fi | ||
20187 | done | ||
20188 | if test -z "$conf_lastlog_location"; then | ||
20189 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ** Cannot find lastlog **" >&5 | ||
20190 | $as_echo "$as_me: WARNING: ** Cannot find lastlog **" >&2;} | ||
20191 | fi | ||
20192 | fi | ||
20193 | fi | ||
20194 | |||
20195 | if test -n "$conf_lastlog_location"; then | ||
20196 | |||
20197 | cat >>confdefs.h <<_ACEOF | ||
20198 | #define CONF_LASTLOG_FILE "$conf_lastlog_location" | ||
20199 | _ACEOF | ||
20200 | |||
20201 | fi | ||
20202 | |||
20203 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines UTMP_FILE" >&5 | ||
20204 | $as_echo_n "checking if your system defines UTMP_FILE... " >&6; } | ||
20205 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
20206 | /* end confdefs.h. */ | ||
20207 | |||
20208 | #include <sys/types.h> | ||
20209 | #include <utmp.h> | ||
20210 | #ifdef HAVE_PATHS_H | ||
20211 | # include <paths.h> | ||
20212 | #endif | ||
20213 | |||
20214 | int | ||
20215 | main () | ||
20216 | { | ||
20217 | char *utmp = UTMP_FILE; | ||
20218 | ; | ||
20219 | return 0; | ||
20220 | } | ||
20221 | _ACEOF | ||
20222 | if ac_fn_c_try_compile "$LINENO"; then : | ||
20223 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
20224 | $as_echo "yes" >&6; } | ||
20225 | else | ||
20226 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20227 | $as_echo "no" >&6; } | ||
20228 | system_utmp_path=no | ||
20229 | |||
20230 | fi | ||
20231 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
20232 | if test -z "$conf_utmp_location"; then | ||
20233 | if test x"$system_utmp_path" = x"no" ; then | ||
20234 | for f in /etc/utmp /usr/adm/utmp /var/run/utmp; do | ||
20235 | if test -f $f ; then | ||
20236 | conf_utmp_location=$f | ||
20237 | fi | ||
20238 | done | ||
20239 | if test -z "$conf_utmp_location"; then | ||
20240 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
20241 | |||
20242 | fi | ||
20243 | fi | ||
20244 | fi | ||
20245 | if test -n "$conf_utmp_location"; then | ||
20246 | |||
20247 | cat >>confdefs.h <<_ACEOF | ||
20248 | #define CONF_UTMP_FILE "$conf_utmp_location" | ||
20249 | _ACEOF | ||
20250 | |||
20251 | fi | ||
20252 | |||
20253 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMP_FILE" >&5 | ||
20254 | $as_echo_n "checking if your system defines WTMP_FILE... " >&6; } | ||
20255 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
20256 | /* end confdefs.h. */ | ||
20257 | |||
20258 | #include <sys/types.h> | ||
20259 | #include <utmp.h> | ||
20260 | #ifdef HAVE_PATHS_H | ||
20261 | # include <paths.h> | ||
20262 | #endif | ||
20263 | |||
20264 | int | ||
20265 | main () | ||
20266 | { | ||
20267 | char *wtmp = WTMP_FILE; | ||
20268 | ; | ||
20269 | return 0; | ||
20270 | } | ||
20271 | _ACEOF | ||
20272 | if ac_fn_c_try_compile "$LINENO"; then : | ||
20273 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
20274 | $as_echo "yes" >&6; } | ||
20275 | else | ||
20276 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20277 | $as_echo "no" >&6; } | ||
20278 | system_wtmp_path=no | ||
20279 | |||
20280 | fi | ||
20281 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
20282 | if test -z "$conf_wtmp_location"; then | ||
20283 | if test x"$system_wtmp_path" = x"no" ; then | ||
20284 | for f in /usr/adm/wtmp /var/log/wtmp; do | ||
20285 | if test -f $f ; then | ||
20286 | conf_wtmp_location=$f | ||
20287 | fi | ||
20288 | done | ||
20289 | if test -z "$conf_wtmp_location"; then | ||
20290 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
20291 | |||
20292 | fi | ||
20293 | fi | ||
20294 | fi | ||
20295 | if test -n "$conf_wtmp_location"; then | ||
20296 | |||
20297 | cat >>confdefs.h <<_ACEOF | ||
20298 | #define CONF_WTMP_FILE "$conf_wtmp_location" | ||
20299 | _ACEOF | ||
20300 | |||
20301 | fi | ||
20302 | |||
20303 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if your system defines WTMPX_FILE" >&5 | ||
20304 | $as_echo_n "checking if your system defines WTMPX_FILE... " >&6; } | ||
20305 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
20306 | /* end confdefs.h. */ | ||
20307 | |||
20308 | #include <sys/types.h> | ||
20309 | #include <utmp.h> | ||
20310 | #ifdef HAVE_UTMPX_H | ||
20311 | #include <utmpx.h> | ||
20312 | #endif | ||
20313 | #ifdef HAVE_PATHS_H | ||
20314 | # include <paths.h> | ||
20315 | #endif | ||
20316 | |||
20317 | int | ||
20318 | main () | ||
20319 | { | ||
20320 | char *wtmpx = WTMPX_FILE; | ||
20321 | ; | ||
20322 | return 0; | ||
20323 | } | ||
20324 | _ACEOF | ||
20325 | if ac_fn_c_try_compile "$LINENO"; then : | ||
20326 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
20327 | $as_echo "yes" >&6; } | ||
20328 | else | ||
20329 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20330 | $as_echo "no" >&6; } | ||
20331 | system_wtmpx_path=no | ||
20332 | |||
20333 | fi | ||
20334 | rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||
20335 | if test -z "$conf_wtmpx_location"; then | ||
20336 | if test x"$system_wtmpx_path" = x"no" ; then | ||
20337 | $as_echo "#define DISABLE_WTMPX 1" >>confdefs.h | ||
20338 | |||
20339 | fi | ||
20340 | else | ||
20341 | |||
20342 | cat >>confdefs.h <<_ACEOF | ||
20343 | #define CONF_WTMPX_FILE "$conf_wtmpx_location" | ||
20344 | _ACEOF | ||
20345 | |||
20346 | fi | ||
20347 | |||
20348 | |||
20349 | if test ! -z "$blibpath" ; then | ||
20350 | LDFLAGS="$LDFLAGS $blibflags$blibpath" | ||
20351 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&5 | ||
20352 | $as_echo "$as_me: WARNING: Please check and edit blibpath in LDFLAGS in Makefile" >&2;} | ||
20353 | fi | ||
20354 | |||
20355 | ac_fn_c_check_member "$LINENO" "struct lastlog" "ll_line" "ac_cv_member_struct_lastlog_ll_line" " | ||
20356 | #ifdef HAVE_SYS_TYPES_H | ||
20357 | #include <sys/types.h> | ||
20358 | #endif | ||
20359 | #ifdef HAVE_UTMP_H | ||
20360 | #include <utmp.h> | ||
20361 | #endif | ||
20362 | #ifdef HAVE_UTMPX_H | ||
20363 | #include <utmpx.h> | ||
20364 | #endif | ||
20365 | #ifdef HAVE_LASTLOG_H | ||
20366 | #include <lastlog.h> | ||
20367 | #endif | ||
20368 | |||
20369 | " | ||
20370 | if test "x$ac_cv_member_struct_lastlog_ll_line" = xyes; then : | ||
20371 | |||
20372 | else | ||
20373 | |||
20374 | if test x$SKIP_DISABLE_LASTLOG_DEFINE != "xyes" ; then | ||
20375 | $as_echo "#define DISABLE_LASTLOG 1" >>confdefs.h | ||
20376 | |||
20377 | fi | ||
20378 | |||
20379 | fi | ||
20380 | |||
20381 | |||
20382 | ac_fn_c_check_member "$LINENO" "struct utmp" "ut_line" "ac_cv_member_struct_utmp_ut_line" " | ||
20383 | #ifdef HAVE_SYS_TYPES_H | ||
20384 | #include <sys/types.h> | ||
20385 | #endif | ||
20386 | #ifdef HAVE_UTMP_H | ||
20387 | #include <utmp.h> | ||
20388 | #endif | ||
20389 | #ifdef HAVE_UTMPX_H | ||
20390 | #include <utmpx.h> | ||
20391 | #endif | ||
20392 | #ifdef HAVE_LASTLOG_H | ||
20393 | #include <lastlog.h> | ||
20394 | #endif | ||
20395 | |||
20396 | " | ||
20397 | if test "x$ac_cv_member_struct_utmp_ut_line" = xyes; then : | ||
20398 | |||
20399 | else | ||
20400 | |||
20401 | $as_echo "#define DISABLE_UTMP 1" >>confdefs.h | ||
20402 | |||
20403 | $as_echo "#define DISABLE_WTMP 1" >>confdefs.h | ||
20404 | |||
20405 | |||
20406 | fi | ||
20407 | |||
20408 | |||
20409 | CFLAGS="$CFLAGS $werror_flags" | ||
20410 | |||
20411 | if test "x$ac_cv_func_getaddrinfo" != "xyes" ; then | ||
20412 | TEST_SSH_IPV6=no | ||
20413 | else | ||
20414 | TEST_SSH_IPV6=yes | ||
20415 | fi | ||
20416 | ac_fn_c_check_decl "$LINENO" "BROKEN_GETADDRINFO" "ac_cv_have_decl_BROKEN_GETADDRINFO" "$ac_includes_default" | ||
20417 | if test "x$ac_cv_have_decl_BROKEN_GETADDRINFO" = xyes; then : | ||
20418 | TEST_SSH_IPV6=no | ||
20419 | fi | ||
20420 | |||
20421 | TEST_SSH_IPV6=$TEST_SSH_IPV6 | ||
20422 | |||
20423 | TEST_SSH_UTF8=$TEST_SSH_UTF8 | ||
20424 | |||
20425 | TEST_MALLOC_OPTIONS=$TEST_MALLOC_OPTIONS | ||
20426 | |||
20427 | UNSUPPORTED_ALGORITHMS=$unsupported_algorithms | ||
20428 | |||
20429 | DEPEND=$(cat $srcdir/.depend) | ||
20430 | |||
20431 | |||
20432 | CFLAGS="${CFLAGS} ${CFLAGS_AFTER}" | ||
20433 | LDFLAGS="${LDFLAGS} ${LDFLAGS_AFTER}" | ||
20434 | |||
20435 | # Make a copy of CFLAGS/LDFLAGS without PIE options. | ||
20436 | LDFLAGS_NOPIE=`echo "$LDFLAGS" | sed 's/ -pie//'` | ||
20437 | CFLAGS_NOPIE=`echo "$CFLAGS" | sed 's/ -fPIE//'` | ||
20438 | |||
20439 | |||
20440 | |||
20441 | |||
20442 | ac_config_files="$ac_config_files Makefile buildpkg.sh opensshd.init openssh.xml openbsd-compat/Makefile openbsd-compat/regress/Makefile survey.sh" | ||
20443 | |||
20444 | cat >confcache <<\_ACEOF | ||
20445 | # This file is a shell script that caches the results of configure | ||
20446 | # tests run on this system so they can be shared between configure | ||
20447 | # scripts and configure runs, see configure's option --config-cache. | ||
20448 | # It is not useful on other systems. If it contains results you don't | ||
20449 | # want to keep, you may remove or edit it. | ||
20450 | # | ||
20451 | # config.status only pays attention to the cache file if you give it | ||
20452 | # the --recheck option to rerun configure. | ||
20453 | # | ||
20454 | # `ac_cv_env_foo' variables (set or unset) will be overridden when | ||
20455 | # loading this file, other *unset* `ac_cv_foo' will be assigned the | ||
20456 | # following values. | ||
20457 | |||
20458 | _ACEOF | ||
20459 | |||
20460 | # The following way of writing the cache mishandles newlines in values, | ||
20461 | # but we know of no workaround that is simple, portable, and efficient. | ||
20462 | # So, we kill variables containing newlines. | ||
20463 | # Ultrix sh set writes to stderr and can't be redirected directly, | ||
20464 | # and sets the high bit in the cache file unless we assign to the vars. | ||
20465 | ( | ||
20466 | for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do | ||
20467 | eval ac_val=\$$ac_var | ||
20468 | case $ac_val in #( | ||
20469 | *${as_nl}*) | ||
20470 | case $ac_var in #( | ||
20471 | *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 | ||
20472 | $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | ||
20473 | esac | ||
20474 | case $ac_var in #( | ||
20475 | _ | IFS | as_nl) ;; #( | ||
20476 | BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( | ||
20477 | *) { eval $ac_var=; unset $ac_var;} ;; | ||
20478 | esac ;; | ||
20479 | esac | ||
20480 | done | ||
20481 | |||
20482 | (set) 2>&1 | | ||
20483 | case $as_nl`(ac_space=' '; set) 2>&1` in #( | ||
20484 | *${as_nl}ac_space=\ *) | ||
20485 | # `set' does not quote correctly, so add quotes: double-quote | ||
20486 | # substitution turns \\\\ into \\, and sed turns \\ into \. | ||
20487 | sed -n \ | ||
20488 | "s/'/'\\\\''/g; | ||
20489 | s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" | ||
20490 | ;; #( | ||
20491 | *) | ||
20492 | # `set' quotes correctly as required by POSIX, so do not add quotes. | ||
20493 | sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" | ||
20494 | ;; | ||
20495 | esac | | ||
20496 | sort | ||
20497 | ) | | ||
20498 | sed ' | ||
20499 | /^ac_cv_env_/b end | ||
20500 | t clear | ||
20501 | :clear | ||
20502 | s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ | ||
20503 | t end | ||
20504 | s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ | ||
20505 | :end' >>confcache | ||
20506 | if diff "$cache_file" confcache >/dev/null 2>&1; then :; else | ||
20507 | if test -w "$cache_file"; then | ||
20508 | if test "x$cache_file" != "x/dev/null"; then | ||
20509 | { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 | ||
20510 | $as_echo "$as_me: updating cache $cache_file" >&6;} | ||
20511 | if test ! -f "$cache_file" || test -h "$cache_file"; then | ||
20512 | cat confcache >"$cache_file" | ||
20513 | else | ||
20514 | case $cache_file in #( | ||
20515 | */* | ?:*) | ||
20516 | mv -f confcache "$cache_file"$$ && | ||
20517 | mv -f "$cache_file"$$ "$cache_file" ;; #( | ||
20518 | *) | ||
20519 | mv -f confcache "$cache_file" ;; | ||
20520 | esac | ||
20521 | fi | ||
20522 | fi | ||
20523 | else | ||
20524 | { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 | ||
20525 | $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} | ||
20526 | fi | ||
20527 | fi | ||
20528 | rm -f confcache | ||
20529 | |||
20530 | test "x$prefix" = xNONE && prefix=$ac_default_prefix | ||
20531 | # Let make expand exec_prefix. | ||
20532 | test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' | ||
20533 | |||
20534 | DEFS=-DHAVE_CONFIG_H | ||
20535 | |||
20536 | ac_libobjs= | ||
20537 | ac_ltlibobjs= | ||
20538 | U= | ||
20539 | for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue | ||
20540 | # 1. Remove the extension, and $U if already installed. | ||
20541 | ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' | ||
20542 | ac_i=`$as_echo "$ac_i" | sed "$ac_script"` | ||
20543 | # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR | ||
20544 | # will be set to the directory where LIBOBJS objects are built. | ||
20545 | as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" | ||
20546 | as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' | ||
20547 | done | ||
20548 | LIBOBJS=$ac_libobjs | ||
20549 | |||
20550 | LTLIBOBJS=$ac_ltlibobjs | ||
20551 | |||
20552 | |||
20553 | |||
20554 | |||
20555 | : "${CONFIG_STATUS=./config.status}" | ||
20556 | ac_write_fail=0 | ||
20557 | ac_clean_files_save=$ac_clean_files | ||
20558 | ac_clean_files="$ac_clean_files $CONFIG_STATUS" | ||
20559 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 | ||
20560 | $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} | ||
20561 | as_write_fail=0 | ||
20562 | cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 | ||
20563 | #! $SHELL | ||
20564 | # Generated by $as_me. | ||
20565 | # Run this file to recreate the current configuration. | ||
20566 | # Compiler output produced by configure, useful for debugging | ||
20567 | # configure, is in config.log if it exists. | ||
20568 | |||
20569 | debug=false | ||
20570 | ac_cs_recheck=false | ||
20571 | ac_cs_silent=false | ||
20572 | |||
20573 | SHELL=\${CONFIG_SHELL-$SHELL} | ||
20574 | export SHELL | ||
20575 | _ASEOF | ||
20576 | cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 | ||
20577 | ## -------------------- ## | ||
20578 | ## M4sh Initialization. ## | ||
20579 | ## -------------------- ## | ||
20580 | |||
20581 | # Be more Bourne compatible | ||
20582 | DUALCASE=1; export DUALCASE # for MKS sh | ||
20583 | if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : | ||
20584 | emulate sh | ||
20585 | NULLCMD=: | ||
20586 | # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which | ||
20587 | # is contrary to our usage. Disable this feature. | ||
20588 | alias -g '${1+"$@"}'='"$@"' | ||
20589 | setopt NO_GLOB_SUBST | ||
20590 | else | ||
20591 | case `(set -o) 2>/dev/null` in #( | ||
20592 | *posix*) : | ||
20593 | set -o posix ;; #( | ||
20594 | *) : | ||
20595 | ;; | ||
20596 | esac | ||
20597 | fi | ||
20598 | |||
20599 | |||
20600 | as_nl=' | ||
20601 | ' | ||
20602 | export as_nl | ||
20603 | # Printing a long string crashes Solaris 7 /usr/bin/printf. | ||
20604 | as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' | ||
20605 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo | ||
20606 | as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo | ||
20607 | # Prefer a ksh shell builtin over an external printf program on Solaris, | ||
20608 | # but without wasting forks for bash or zsh. | ||
20609 | if test -z "$BASH_VERSION$ZSH_VERSION" \ | ||
20610 | && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
20611 | as_echo='print -r --' | ||
20612 | as_echo_n='print -rn --' | ||
20613 | elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then | ||
20614 | as_echo='printf %s\n' | ||
20615 | as_echo_n='printf %s' | ||
20616 | else | ||
20617 | if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then | ||
20618 | as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' | ||
20619 | as_echo_n='/usr/ucb/echo -n' | ||
20620 | else | ||
20621 | as_echo_body='eval expr "X$1" : "X\\(.*\\)"' | ||
20622 | as_echo_n_body='eval | ||
20623 | arg=$1; | ||
20624 | case $arg in #( | ||
20625 | *"$as_nl"*) | ||
20626 | expr "X$arg" : "X\\(.*\\)$as_nl"; | ||
20627 | arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; | ||
20628 | esac; | ||
20629 | expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" | ||
20630 | ' | ||
20631 | export as_echo_n_body | ||
20632 | as_echo_n='sh -c $as_echo_n_body as_echo' | ||
20633 | fi | ||
20634 | export as_echo_body | ||
20635 | as_echo='sh -c $as_echo_body as_echo' | ||
20636 | fi | ||
20637 | |||
20638 | # The user is always right. | ||
20639 | if test "${PATH_SEPARATOR+set}" != set; then | ||
20640 | PATH_SEPARATOR=: | ||
20641 | (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { | ||
20642 | (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || | ||
20643 | PATH_SEPARATOR=';' | ||
20644 | } | ||
20645 | fi | ||
20646 | |||
20647 | |||
20648 | # IFS | ||
20649 | # We need space, tab and new line, in precisely that order. Quoting is | ||
20650 | # there to prevent editors from complaining about space-tab. | ||
20651 | # (If _AS_PATH_WALK were called with IFS unset, it would disable word | ||
20652 | # splitting by setting IFS to empty value.) | ||
20653 | IFS=" "" $as_nl" | ||
20654 | |||
20655 | # Find who we are. Look in the path if we contain no directory separator. | ||
20656 | as_myself= | ||
20657 | case $0 in #(( | ||
20658 | *[\\/]* ) as_myself=$0 ;; | ||
20659 | *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
20660 | for as_dir in $PATH | ||
20661 | do | ||
20662 | IFS=$as_save_IFS | ||
20663 | test -z "$as_dir" && as_dir=. | ||
20664 | test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break | ||
20665 | done | ||
20666 | IFS=$as_save_IFS | ||
20667 | |||
20668 | ;; | ||
20669 | esac | ||
20670 | # We did not find ourselves, most probably we were run as `sh COMMAND' | ||
20671 | # in which case we are not to be found in the path. | ||
20672 | if test "x$as_myself" = x; then | ||
20673 | as_myself=$0 | ||
20674 | fi | ||
20675 | if test ! -f "$as_myself"; then | ||
20676 | $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 | ||
20677 | exit 1 | ||
20678 | fi | ||
20679 | |||
20680 | # Unset variables that we do not need and which cause bugs (e.g. in | ||
20681 | # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" | ||
20682 | # suppresses any "Segmentation fault" message there. '((' could | ||
20683 | # trigger a bug in pdksh 5.2.14. | ||
20684 | for as_var in BASH_ENV ENV MAIL MAILPATH | ||
20685 | do eval test x\${$as_var+set} = xset \ | ||
20686 | && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : | ||
20687 | done | ||
20688 | PS1='$ ' | ||
20689 | PS2='> ' | ||
20690 | PS4='+ ' | ||
20691 | |||
20692 | # NLS nuisances. | ||
20693 | LC_ALL=C | ||
20694 | export LC_ALL | ||
20695 | LANGUAGE=C | ||
20696 | export LANGUAGE | ||
20697 | |||
20698 | # CDPATH. | ||
20699 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | ||
20700 | |||
20701 | |||
20702 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | ||
20703 | # ---------------------------------------- | ||
20704 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | ||
20705 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | ||
20706 | # script with STATUS, using 1 if that was 0. | ||
20707 | as_fn_error () | ||
20708 | { | ||
20709 | as_status=$1; test $as_status -eq 0 && as_status=1 | ||
20710 | if test "$4"; then | ||
20711 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | ||
20712 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | ||
20713 | fi | ||
20714 | $as_echo "$as_me: error: $2" >&2 | ||
20715 | as_fn_exit $as_status | ||
20716 | } # as_fn_error | ||
20717 | |||
20718 | |||
20719 | # as_fn_set_status STATUS | ||
20720 | # ----------------------- | ||
20721 | # Set $? to STATUS, without forking. | ||
20722 | as_fn_set_status () | ||
20723 | { | ||
20724 | return $1 | ||
20725 | } # as_fn_set_status | ||
20726 | |||
20727 | # as_fn_exit STATUS | ||
20728 | # ----------------- | ||
20729 | # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. | ||
20730 | as_fn_exit () | ||
20731 | { | ||
20732 | set +e | ||
20733 | as_fn_set_status $1 | ||
20734 | exit $1 | ||
20735 | } # as_fn_exit | ||
20736 | |||
20737 | # as_fn_unset VAR | ||
20738 | # --------------- | ||
20739 | # Portably unset VAR. | ||
20740 | as_fn_unset () | ||
20741 | { | ||
20742 | { eval $1=; unset $1;} | ||
20743 | } | ||
20744 | as_unset=as_fn_unset | ||
20745 | # as_fn_append VAR VALUE | ||
20746 | # ---------------------- | ||
20747 | # Append the text in VALUE to the end of the definition contained in VAR. Take | ||
20748 | # advantage of any shell optimizations that allow amortized linear growth over | ||
20749 | # repeated appends, instead of the typical quadratic growth present in naive | ||
20750 | # implementations. | ||
20751 | if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : | ||
20752 | eval 'as_fn_append () | ||
20753 | { | ||
20754 | eval $1+=\$2 | ||
20755 | }' | ||
20756 | else | ||
20757 | as_fn_append () | ||
20758 | { | ||
20759 | eval $1=\$$1\$2 | ||
20760 | } | ||
20761 | fi # as_fn_append | ||
20762 | |||
20763 | # as_fn_arith ARG... | ||
20764 | # ------------------ | ||
20765 | # Perform arithmetic evaluation on the ARGs, and store the result in the | ||
20766 | # global $as_val. Take advantage of shells that can avoid forks. The arguments | ||
20767 | # must be portable across $(()) and expr. | ||
20768 | if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : | ||
20769 | eval 'as_fn_arith () | ||
20770 | { | ||
20771 | as_val=$(( $* )) | ||
20772 | }' | ||
20773 | else | ||
20774 | as_fn_arith () | ||
20775 | { | ||
20776 | as_val=`expr "$@" || test $? -eq 1` | ||
20777 | } | ||
20778 | fi # as_fn_arith | ||
20779 | |||
20780 | |||
20781 | if expr a : '\(a\)' >/dev/null 2>&1 && | ||
20782 | test "X`expr 00001 : '.*\(...\)'`" = X001; then | ||
20783 | as_expr=expr | ||
20784 | else | ||
20785 | as_expr=false | ||
20786 | fi | ||
20787 | |||
20788 | if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then | ||
20789 | as_basename=basename | ||
20790 | else | ||
20791 | as_basename=false | ||
20792 | fi | ||
20793 | |||
20794 | if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then | ||
20795 | as_dirname=dirname | ||
20796 | else | ||
20797 | as_dirname=false | ||
20798 | fi | ||
20799 | |||
20800 | as_me=`$as_basename -- "$0" || | ||
20801 | $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ | ||
20802 | X"$0" : 'X\(//\)$' \| \ | ||
20803 | X"$0" : 'X\(/\)' \| . 2>/dev/null || | ||
20804 | $as_echo X/"$0" | | ||
20805 | sed '/^.*\/\([^/][^/]*\)\/*$/{ | ||
20806 | s//\1/ | ||
20807 | q | ||
20808 | } | ||
20809 | /^X\/\(\/\/\)$/{ | ||
20810 | s//\1/ | ||
20811 | q | ||
20812 | } | ||
20813 | /^X\/\(\/\).*/{ | ||
20814 | s//\1/ | ||
20815 | q | ||
20816 | } | ||
20817 | s/.*/./; q'` | ||
20818 | |||
20819 | # Avoid depending upon Character Ranges. | ||
20820 | as_cr_letters='abcdefghijklmnopqrstuvwxyz' | ||
20821 | as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' | ||
20822 | as_cr_Letters=$as_cr_letters$as_cr_LETTERS | ||
20823 | as_cr_digits='0123456789' | ||
20824 | as_cr_alnum=$as_cr_Letters$as_cr_digits | ||
20825 | |||
20826 | ECHO_C= ECHO_N= ECHO_T= | ||
20827 | case `echo -n x` in #((((( | ||
20828 | -n*) | ||
20829 | case `echo 'xy\c'` in | ||
20830 | *c*) ECHO_T=' ';; # ECHO_T is single tab character. | ||
20831 | xy) ECHO_C='\c';; | ||
20832 | *) echo `echo ksh88 bug on AIX 6.1` > /dev/null | ||
20833 | ECHO_T=' ';; | ||
20834 | esac;; | ||
20835 | *) | ||
20836 | ECHO_N='-n';; | ||
20837 | esac | ||
20838 | |||
20839 | rm -f conf$$ conf$$.exe conf$$.file | ||
20840 | if test -d conf$$.dir; then | ||
20841 | rm -f conf$$.dir/conf$$.file | ||
20842 | else | ||
20843 | rm -f conf$$.dir | ||
20844 | mkdir conf$$.dir 2>/dev/null | ||
20845 | fi | ||
20846 | if (echo >conf$$.file) 2>/dev/null; then | ||
20847 | if ln -s conf$$.file conf$$ 2>/dev/null; then | ||
20848 | as_ln_s='ln -s' | ||
20849 | # ... but there are two gotchas: | ||
20850 | # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. | ||
20851 | # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. | ||
20852 | # In both cases, we have to default to `cp -pR'. | ||
20853 | ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || | ||
20854 | as_ln_s='cp -pR' | ||
20855 | elif ln conf$$.file conf$$ 2>/dev/null; then | ||
20856 | as_ln_s=ln | ||
20857 | else | ||
20858 | as_ln_s='cp -pR' | ||
20859 | fi | ||
20860 | else | ||
20861 | as_ln_s='cp -pR' | ||
20862 | fi | ||
20863 | rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file | ||
20864 | rmdir conf$$.dir 2>/dev/null | ||
20865 | |||
20866 | |||
20867 | # as_fn_mkdir_p | ||
20868 | # ------------- | ||
20869 | # Create "$as_dir" as a directory, including parents if necessary. | ||
20870 | as_fn_mkdir_p () | ||
20871 | { | ||
20872 | |||
20873 | case $as_dir in #( | ||
20874 | -*) as_dir=./$as_dir;; | ||
20875 | esac | ||
20876 | test -d "$as_dir" || eval $as_mkdir_p || { | ||
20877 | as_dirs= | ||
20878 | while :; do | ||
20879 | case $as_dir in #( | ||
20880 | *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( | ||
20881 | *) as_qdir=$as_dir;; | ||
20882 | esac | ||
20883 | as_dirs="'$as_qdir' $as_dirs" | ||
20884 | as_dir=`$as_dirname -- "$as_dir" || | ||
20885 | $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
20886 | X"$as_dir" : 'X\(//\)[^/]' \| \ | ||
20887 | X"$as_dir" : 'X\(//\)$' \| \ | ||
20888 | X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || | ||
20889 | $as_echo X"$as_dir" | | ||
20890 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
20891 | s//\1/ | ||
20892 | q | ||
20893 | } | ||
20894 | /^X\(\/\/\)[^/].*/{ | ||
20895 | s//\1/ | ||
20896 | q | ||
20897 | } | ||
20898 | /^X\(\/\/\)$/{ | ||
20899 | s//\1/ | ||
20900 | q | ||
20901 | } | ||
20902 | /^X\(\/\).*/{ | ||
20903 | s//\1/ | ||
20904 | q | ||
20905 | } | ||
20906 | s/.*/./; q'` | ||
20907 | test -d "$as_dir" && break | ||
20908 | done | ||
20909 | test -z "$as_dirs" || eval "mkdir $as_dirs" | ||
20910 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | ||
20911 | |||
20912 | |||
20913 | } # as_fn_mkdir_p | ||
20914 | if mkdir -p . 2>/dev/null; then | ||
20915 | as_mkdir_p='mkdir -p "$as_dir"' | ||
20916 | else | ||
20917 | test -d ./-p && rmdir ./-p | ||
20918 | as_mkdir_p=false | ||
20919 | fi | ||
20920 | |||
20921 | |||
20922 | # as_fn_executable_p FILE | ||
20923 | # ----------------------- | ||
20924 | # Test if FILE is an executable regular file. | ||
20925 | as_fn_executable_p () | ||
20926 | { | ||
20927 | test -f "$1" && test -x "$1" | ||
20928 | } # as_fn_executable_p | ||
20929 | as_test_x='test -x' | ||
20930 | as_executable_p=as_fn_executable_p | ||
20931 | |||
20932 | # Sed expression to map a string onto a valid CPP name. | ||
20933 | as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" | ||
20934 | |||
20935 | # Sed expression to map a string onto a valid variable name. | ||
20936 | as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" | ||
20937 | |||
20938 | |||
20939 | exec 6>&1 | ||
20940 | ## ----------------------------------- ## | ||
20941 | ## Main body of $CONFIG_STATUS script. ## | ||
20942 | ## ----------------------------------- ## | ||
20943 | _ASEOF | ||
20944 | test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 | ||
20945 | |||
20946 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
20947 | # Save the log message, to keep $0 and so on meaningful, and to | ||
20948 | # report actual input values of CONFIG_FILES etc. instead of their | ||
20949 | # values after options handling. | ||
20950 | ac_log=" | ||
20951 | This file was extended by OpenSSH $as_me Portable, which was | ||
20952 | generated by GNU Autoconf 2.69. Invocation command line was | ||
20953 | |||
20954 | CONFIG_FILES = $CONFIG_FILES | ||
20955 | CONFIG_HEADERS = $CONFIG_HEADERS | ||
20956 | CONFIG_LINKS = $CONFIG_LINKS | ||
20957 | CONFIG_COMMANDS = $CONFIG_COMMANDS | ||
20958 | $ $0 $@ | ||
20959 | |||
20960 | on `(hostname || uname -n) 2>/dev/null | sed 1q` | ||
20961 | " | ||
20962 | |||
20963 | _ACEOF | ||
20964 | |||
20965 | case $ac_config_files in *" | ||
20966 | "*) set x $ac_config_files; shift; ac_config_files=$*;; | ||
20967 | esac | ||
20968 | |||
20969 | case $ac_config_headers in *" | ||
20970 | "*) set x $ac_config_headers; shift; ac_config_headers=$*;; | ||
20971 | esac | ||
20972 | |||
20973 | |||
20974 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
20975 | # Files that config.status was made for. | ||
20976 | config_files="$ac_config_files" | ||
20977 | config_headers="$ac_config_headers" | ||
20978 | |||
20979 | _ACEOF | ||
20980 | |||
20981 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
20982 | ac_cs_usage="\ | ||
20983 | \`$as_me' instantiates files and other configuration actions | ||
20984 | from templates according to the current configuration. Unless the files | ||
20985 | and actions are specified as TAGs, all are instantiated by default. | ||
20986 | |||
20987 | Usage: $0 [OPTION]... [TAG]... | ||
20988 | |||
20989 | -h, --help print this help, then exit | ||
20990 | -V, --version print version number and configuration settings, then exit | ||
20991 | --config print configuration, then exit | ||
20992 | -q, --quiet, --silent | ||
20993 | do not print progress messages | ||
20994 | -d, --debug don't remove temporary files | ||
20995 | --recheck update $as_me by reconfiguring in the same conditions | ||
20996 | --file=FILE[:TEMPLATE] | ||
20997 | instantiate the configuration file FILE | ||
20998 | --header=FILE[:TEMPLATE] | ||
20999 | instantiate the configuration header FILE | ||
21000 | |||
21001 | Configuration files: | ||
21002 | $config_files | ||
21003 | |||
21004 | Configuration headers: | ||
21005 | $config_headers | ||
21006 | |||
21007 | Report bugs to <openssh-unix-dev@mindrot.org>." | ||
21008 | |||
21009 | _ACEOF | ||
21010 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21011 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | ||
21012 | ac_cs_version="\\ | ||
21013 | OpenSSH config.status Portable | ||
21014 | configured by $0, generated by GNU Autoconf 2.69, | ||
21015 | with options \\"\$ac_cs_config\\" | ||
21016 | |||
21017 | Copyright (C) 2012 Free Software Foundation, Inc. | ||
21018 | This config.status script is free software; the Free Software Foundation | ||
21019 | gives unlimited permission to copy, distribute and modify it." | ||
21020 | |||
21021 | ac_pwd='$ac_pwd' | ||
21022 | srcdir='$srcdir' | ||
21023 | INSTALL='$INSTALL' | ||
21024 | MKDIR_P='$MKDIR_P' | ||
21025 | AWK='$AWK' | ||
21026 | test -n "\$AWK" || AWK=awk | ||
21027 | _ACEOF | ||
21028 | |||
21029 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21030 | # The default lists apply if the user does not specify any file. | ||
21031 | ac_need_defaults=: | ||
21032 | while test $# != 0 | ||
21033 | do | ||
21034 | case $1 in | ||
21035 | --*=?*) | ||
21036 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | ||
21037 | ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` | ||
21038 | ac_shift=: | ||
21039 | ;; | ||
21040 | --*=) | ||
21041 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | ||
21042 | ac_optarg= | ||
21043 | ac_shift=: | ||
21044 | ;; | ||
21045 | *) | ||
21046 | ac_option=$1 | ||
21047 | ac_optarg=$2 | ||
21048 | ac_shift=shift | ||
21049 | ;; | ||
21050 | esac | ||
21051 | |||
21052 | case $ac_option in | ||
21053 | # Handling of the options. | ||
21054 | -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) | ||
21055 | ac_cs_recheck=: ;; | ||
21056 | --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) | ||
21057 | $as_echo "$ac_cs_version"; exit ;; | ||
21058 | --config | --confi | --conf | --con | --co | --c ) | ||
21059 | $as_echo "$ac_cs_config"; exit ;; | ||
21060 | --debug | --debu | --deb | --de | --d | -d ) | ||
21061 | debug=: ;; | ||
21062 | --file | --fil | --fi | --f ) | ||
21063 | $ac_shift | ||
21064 | case $ac_optarg in | ||
21065 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
21066 | '') as_fn_error $? "missing file argument" ;; | ||
21067 | esac | ||
21068 | as_fn_append CONFIG_FILES " '$ac_optarg'" | ||
21069 | ac_need_defaults=false;; | ||
21070 | --header | --heade | --head | --hea ) | ||
21071 | $ac_shift | ||
21072 | case $ac_optarg in | ||
21073 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; | ||
21074 | esac | ||
21075 | as_fn_append CONFIG_HEADERS " '$ac_optarg'" | ||
21076 | ac_need_defaults=false;; | ||
21077 | --he | --h) | ||
21078 | # Conflict between --help and --header | ||
21079 | as_fn_error $? "ambiguous option: \`$1' | ||
21080 | Try \`$0 --help' for more information.";; | ||
21081 | --help | --hel | -h ) | ||
21082 | $as_echo "$ac_cs_usage"; exit ;; | ||
21083 | -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||
21084 | | -silent | --silent | --silen | --sile | --sil | --si | --s) | ||
21085 | ac_cs_silent=: ;; | ||
21086 | |||
21087 | # This is an error. | ||
21088 | -*) as_fn_error $? "unrecognized option: \`$1' | ||
21089 | Try \`$0 --help' for more information." ;; | ||
21090 | |||
21091 | *) as_fn_append ac_config_targets " $1" | ||
21092 | ac_need_defaults=false ;; | ||
21093 | |||
21094 | esac | ||
21095 | shift | ||
21096 | done | ||
21097 | |||
21098 | ac_configure_extra_args= | ||
21099 | |||
21100 | if $ac_cs_silent; then | ||
21101 | exec 6>/dev/null | ||
21102 | ac_configure_extra_args="$ac_configure_extra_args --silent" | ||
21103 | fi | ||
21104 | |||
21105 | _ACEOF | ||
21106 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21107 | if \$ac_cs_recheck; then | ||
21108 | set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion | ||
21109 | shift | ||
21110 | \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 | ||
21111 | CONFIG_SHELL='$SHELL' | ||
21112 | export CONFIG_SHELL | ||
21113 | exec "\$@" | ||
21114 | fi | ||
21115 | |||
21116 | _ACEOF | ||
21117 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21118 | exec 5>>config.log | ||
21119 | { | ||
21120 | echo | ||
21121 | sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX | ||
21122 | ## Running $as_me. ## | ||
21123 | _ASBOX | ||
21124 | $as_echo "$ac_log" | ||
21125 | } >&5 | ||
21126 | |||
21127 | _ACEOF | ||
21128 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21129 | _ACEOF | ||
21130 | |||
21131 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21132 | |||
21133 | # Handling of arguments. | ||
21134 | for ac_config_target in $ac_config_targets | ||
21135 | do | ||
21136 | case $ac_config_target in | ||
21137 | "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; | ||
21138 | "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; | ||
21139 | "buildpkg.sh") CONFIG_FILES="$CONFIG_FILES buildpkg.sh" ;; | ||
21140 | "opensshd.init") CONFIG_FILES="$CONFIG_FILES opensshd.init" ;; | ||
21141 | "openssh.xml") CONFIG_FILES="$CONFIG_FILES openssh.xml" ;; | ||
21142 | "openbsd-compat/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/Makefile" ;; | ||
21143 | "openbsd-compat/regress/Makefile") CONFIG_FILES="$CONFIG_FILES openbsd-compat/regress/Makefile" ;; | ||
21144 | "survey.sh") CONFIG_FILES="$CONFIG_FILES survey.sh" ;; | ||
21145 | |||
21146 | *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; | ||
21147 | esac | ||
21148 | done | ||
21149 | |||
21150 | |||
21151 | # If the user did not use the arguments to specify the items to instantiate, | ||
21152 | # then the envvar interface is used. Set only those that are not. | ||
21153 | # We use the long form for the default assignment because of an extremely | ||
21154 | # bizarre bug on SunOS 4.1.3. | ||
21155 | if $ac_need_defaults; then | ||
21156 | test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files | ||
21157 | test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers | ||
21158 | fi | ||
21159 | |||
21160 | # Have a temporary directory for convenience. Make it in the build tree | ||
21161 | # simply because there is no reason against having it here, and in addition, | ||
21162 | # creating and moving files from /tmp can sometimes cause problems. | ||
21163 | # Hook for its removal unless debugging. | ||
21164 | # Note that there is a small window in which the directory will not be cleaned: | ||
21165 | # after its creation but before its name has been assigned to `$tmp'. | ||
21166 | $debug || | ||
21167 | { | ||
21168 | tmp= ac_tmp= | ||
21169 | trap 'exit_status=$? | ||
21170 | : "${ac_tmp:=$tmp}" | ||
21171 | { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status | ||
21172 | ' 0 | ||
21173 | trap 'as_fn_exit 1' 1 2 13 15 | ||
21174 | } | ||
21175 | # Create a (secure) tmp directory for tmp files. | ||
21176 | |||
21177 | { | ||
21178 | tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && | ||
21179 | test -d "$tmp" | ||
21180 | } || | ||
21181 | { | ||
21182 | tmp=./conf$$-$RANDOM | ||
21183 | (umask 077 && mkdir "$tmp") | ||
21184 | } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 | ||
21185 | ac_tmp=$tmp | ||
21186 | |||
21187 | # Set up the scripts for CONFIG_FILES section. | ||
21188 | # No need to generate them if there are no CONFIG_FILES. | ||
21189 | # This happens for instance with `./config.status config.h'. | ||
21190 | if test -n "$CONFIG_FILES"; then | ||
21191 | |||
21192 | |||
21193 | ac_cr=`echo X | tr X '\015'` | ||
21194 | # On cygwin, bash can eat \r inside `` if the user requested igncr. | ||
21195 | # But we know of no other shell where ac_cr would be empty at this | ||
21196 | # point, so we can use a bashism as a fallback. | ||
21197 | if test "x$ac_cr" = x; then | ||
21198 | eval ac_cr=\$\'\\r\' | ||
21199 | fi | ||
21200 | ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` | ||
21201 | if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then | ||
21202 | ac_cs_awk_cr='\\r' | ||
21203 | else | ||
21204 | ac_cs_awk_cr=$ac_cr | ||
21205 | fi | ||
21206 | |||
21207 | echo 'BEGIN {' >"$ac_tmp/subs1.awk" && | ||
21208 | _ACEOF | ||
21209 | |||
21210 | |||
21211 | { | ||
21212 | echo "cat >conf$$subs.awk <<_ACEOF" && | ||
21213 | echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && | ||
21214 | echo "_ACEOF" | ||
21215 | } >conf$$subs.sh || | ||
21216 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
21217 | ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` | ||
21218 | ac_delim='%!_!# ' | ||
21219 | for ac_last_try in false false false false false :; do | ||
21220 | . ./conf$$subs.sh || | ||
21221 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
21222 | |||
21223 | ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` | ||
21224 | if test $ac_delim_n = $ac_delim_num; then | ||
21225 | break | ||
21226 | elif $ac_last_try; then | ||
21227 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | ||
21228 | else | ||
21229 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | ||
21230 | fi | ||
21231 | done | ||
21232 | rm -f conf$$subs.sh | ||
21233 | |||
21234 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21235 | cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && | ||
21236 | _ACEOF | ||
21237 | sed -n ' | ||
21238 | h | ||
21239 | s/^/S["/; s/!.*/"]=/ | ||
21240 | p | ||
21241 | g | ||
21242 | s/^[^!]*!// | ||
21243 | :repl | ||
21244 | t repl | ||
21245 | s/'"$ac_delim"'$// | ||
21246 | t delim | ||
21247 | :nl | ||
21248 | h | ||
21249 | s/\(.\{148\}\)..*/\1/ | ||
21250 | t more1 | ||
21251 | s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ | ||
21252 | p | ||
21253 | n | ||
21254 | b repl | ||
21255 | :more1 | ||
21256 | s/["\\]/\\&/g; s/^/"/; s/$/"\\/ | ||
21257 | p | ||
21258 | g | ||
21259 | s/.\{148\}// | ||
21260 | t nl | ||
21261 | :delim | ||
21262 | h | ||
21263 | s/\(.\{148\}\)..*/\1/ | ||
21264 | t more2 | ||
21265 | s/["\\]/\\&/g; s/^/"/; s/$/"/ | ||
21266 | p | ||
21267 | b | ||
21268 | :more2 | ||
21269 | s/["\\]/\\&/g; s/^/"/; s/$/"\\/ | ||
21270 | p | ||
21271 | g | ||
21272 | s/.\{148\}// | ||
21273 | t delim | ||
21274 | ' <conf$$subs.awk | sed ' | ||
21275 | /^[^""]/{ | ||
21276 | N | ||
21277 | s/\n// | ||
21278 | } | ||
21279 | ' >>$CONFIG_STATUS || ac_write_fail=1 | ||
21280 | rm -f conf$$subs.awk | ||
21281 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21282 | _ACAWK | ||
21283 | cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && | ||
21284 | for (key in S) S_is_set[key] = 1 | ||
21285 | FS = "" | ||
21286 | |||
21287 | } | ||
21288 | { | ||
21289 | line = $ 0 | ||
21290 | nfields = split(line, field, "@") | ||
21291 | substed = 0 | ||
21292 | len = length(field[1]) | ||
21293 | for (i = 2; i < nfields; i++) { | ||
21294 | key = field[i] | ||
21295 | keylen = length(key) | ||
21296 | if (S_is_set[key]) { | ||
21297 | value = S[key] | ||
21298 | line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) | ||
21299 | len += length(value) + length(field[++i]) | ||
21300 | substed = 1 | ||
21301 | } else | ||
21302 | len += 1 + keylen | ||
21303 | } | ||
21304 | |||
21305 | print line | ||
21306 | } | ||
21307 | |||
21308 | _ACAWK | ||
21309 | _ACEOF | ||
21310 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21311 | if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then | ||
21312 | sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" | ||
21313 | else | ||
21314 | cat | ||
21315 | fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ | ||
21316 | || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 | ||
21317 | _ACEOF | ||
21318 | |||
21319 | # VPATH may cause trouble with some makes, so we remove sole $(srcdir), | ||
21320 | # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and | ||
21321 | # trailing colons and then remove the whole line if VPATH becomes empty | ||
21322 | # (actually we leave an empty line to preserve line numbers). | ||
21323 | if test "x$srcdir" = x.; then | ||
21324 | ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ | ||
21325 | h | ||
21326 | s/// | ||
21327 | s/^/:/ | ||
21328 | s/[ ]*$/:/ | ||
21329 | s/:\$(srcdir):/:/g | ||
21330 | s/:\${srcdir}:/:/g | ||
21331 | s/:@srcdir@:/:/g | ||
21332 | s/^:*// | ||
21333 | s/:*$// | ||
21334 | x | ||
21335 | s/\(=[ ]*\).*/\1/ | ||
21336 | G | ||
21337 | s/\n// | ||
21338 | s/^[^=]*=[ ]*$// | ||
21339 | }' | ||
21340 | fi | ||
21341 | |||
21342 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21343 | fi # test -n "$CONFIG_FILES" | ||
21344 | |||
21345 | # Set up the scripts for CONFIG_HEADERS section. | ||
21346 | # No need to generate them if there are no CONFIG_HEADERS. | ||
21347 | # This happens for instance with `./config.status Makefile'. | ||
21348 | if test -n "$CONFIG_HEADERS"; then | ||
21349 | cat >"$ac_tmp/defines.awk" <<\_ACAWK || | ||
21350 | BEGIN { | ||
21351 | _ACEOF | ||
21352 | |||
21353 | # Transform confdefs.h into an awk script `defines.awk', embedded as | ||
21354 | # here-document in config.status, that substitutes the proper values into | ||
21355 | # config.h.in to produce config.h. | ||
21356 | |||
21357 | # Create a delimiter string that does not exist in confdefs.h, to ease | ||
21358 | # handling of long lines. | ||
21359 | ac_delim='%!_!# ' | ||
21360 | for ac_last_try in false false :; do | ||
21361 | ac_tt=`sed -n "/$ac_delim/p" confdefs.h` | ||
21362 | if test -z "$ac_tt"; then | ||
21363 | break | ||
21364 | elif $ac_last_try; then | ||
21365 | as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 | ||
21366 | else | ||
21367 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | ||
21368 | fi | ||
21369 | done | ||
21370 | |||
21371 | # For the awk script, D is an array of macro values keyed by name, | ||
21372 | # likewise P contains macro parameters if any. Preserve backslash | ||
21373 | # newline sequences. | ||
21374 | |||
21375 | ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* | ||
21376 | sed -n ' | ||
21377 | s/.\{148\}/&'"$ac_delim"'/g | ||
21378 | t rset | ||
21379 | :rset | ||
21380 | s/^[ ]*#[ ]*define[ ][ ]*/ / | ||
21381 | t def | ||
21382 | d | ||
21383 | :def | ||
21384 | s/\\$// | ||
21385 | t bsnl | ||
21386 | s/["\\]/\\&/g | ||
21387 | s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ | ||
21388 | D["\1"]=" \3"/p | ||
21389 | s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p | ||
21390 | d | ||
21391 | :bsnl | ||
21392 | s/["\\]/\\&/g | ||
21393 | s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ | ||
21394 | D["\1"]=" \3\\\\\\n"\\/p | ||
21395 | t cont | ||
21396 | s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p | ||
21397 | t cont | ||
21398 | d | ||
21399 | :cont | ||
21400 | n | ||
21401 | s/.\{148\}/&'"$ac_delim"'/g | ||
21402 | t clear | ||
21403 | :clear | ||
21404 | s/\\$// | ||
21405 | t bsnlc | ||
21406 | s/["\\]/\\&/g; s/^/"/; s/$/"/p | ||
21407 | d | ||
21408 | :bsnlc | ||
21409 | s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p | ||
21410 | b cont | ||
21411 | ' <confdefs.h | sed ' | ||
21412 | s/'"$ac_delim"'/"\\\ | ||
21413 | "/g' >>$CONFIG_STATUS || ac_write_fail=1 | ||
21414 | |||
21415 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21416 | for (key in D) D_is_set[key] = 1 | ||
21417 | FS = "" | ||
21418 | } | ||
21419 | /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { | ||
21420 | line = \$ 0 | ||
21421 | split(line, arg, " ") | ||
21422 | if (arg[1] == "#") { | ||
21423 | defundef = arg[2] | ||
21424 | mac1 = arg[3] | ||
21425 | } else { | ||
21426 | defundef = substr(arg[1], 2) | ||
21427 | mac1 = arg[2] | ||
21428 | } | ||
21429 | split(mac1, mac2, "(") #) | ||
21430 | macro = mac2[1] | ||
21431 | prefix = substr(line, 1, index(line, defundef) - 1) | ||
21432 | if (D_is_set[macro]) { | ||
21433 | # Preserve the white space surrounding the "#". | ||
21434 | print prefix "define", macro P[macro] D[macro] | ||
21435 | next | ||
21436 | } else { | ||
21437 | # Replace #undef with comments. This is necessary, for example, | ||
21438 | # in the case of _POSIX_SOURCE, which is predefined and required | ||
21439 | # on some systems where configure will not decide to define it. | ||
21440 | if (defundef == "undef") { | ||
21441 | print "/*", prefix defundef, macro, "*/" | ||
21442 | next | ||
21443 | } | ||
21444 | } | ||
21445 | } | ||
21446 | { print } | ||
21447 | _ACAWK | ||
21448 | _ACEOF | ||
21449 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21450 | as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 | ||
21451 | fi # test -n "$CONFIG_HEADERS" | ||
21452 | |||
21453 | |||
21454 | eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " | ||
21455 | shift | ||
21456 | for ac_tag | ||
21457 | do | ||
21458 | case $ac_tag in | ||
21459 | :[FHLC]) ac_mode=$ac_tag; continue;; | ||
21460 | esac | ||
21461 | case $ac_mode$ac_tag in | ||
21462 | :[FHL]*:*);; | ||
21463 | :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; | ||
21464 | :[FH]-) ac_tag=-:-;; | ||
21465 | :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; | ||
21466 | esac | ||
21467 | ac_save_IFS=$IFS | ||
21468 | IFS=: | ||
21469 | set x $ac_tag | ||
21470 | IFS=$ac_save_IFS | ||
21471 | shift | ||
21472 | ac_file=$1 | ||
21473 | shift | ||
21474 | |||
21475 | case $ac_mode in | ||
21476 | :L) ac_source=$1;; | ||
21477 | :[FH]) | ||
21478 | ac_file_inputs= | ||
21479 | for ac_f | ||
21480 | do | ||
21481 | case $ac_f in | ||
21482 | -) ac_f="$ac_tmp/stdin";; | ||
21483 | *) # Look for the file first in the build tree, then in the source tree | ||
21484 | # (if the path is not absolute). The absolute path cannot be DOS-style, | ||
21485 | # because $ac_f cannot contain `:'. | ||
21486 | test -f "$ac_f" || | ||
21487 | case $ac_f in | ||
21488 | [\\/$]*) false;; | ||
21489 | *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; | ||
21490 | esac || | ||
21491 | as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; | ||
21492 | esac | ||
21493 | case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac | ||
21494 | as_fn_append ac_file_inputs " '$ac_f'" | ||
21495 | done | ||
21496 | |||
21497 | # Let's still pretend it is `configure' which instantiates (i.e., don't | ||
21498 | # use $as_me), people would be surprised to read: | ||
21499 | # /* config.h. Generated by config.status. */ | ||
21500 | configure_input='Generated from '` | ||
21501 | $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' | ||
21502 | `' by configure.' | ||
21503 | if test x"$ac_file" != x-; then | ||
21504 | configure_input="$ac_file. $configure_input" | ||
21505 | { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 | ||
21506 | $as_echo "$as_me: creating $ac_file" >&6;} | ||
21507 | fi | ||
21508 | # Neutralize special characters interpreted by sed in replacement strings. | ||
21509 | case $configure_input in #( | ||
21510 | *\&* | *\|* | *\\* ) | ||
21511 | ac_sed_conf_input=`$as_echo "$configure_input" | | ||
21512 | sed 's/[\\\\&|]/\\\\&/g'`;; #( | ||
21513 | *) ac_sed_conf_input=$configure_input;; | ||
21514 | esac | ||
21515 | |||
21516 | case $ac_tag in | ||
21517 | *:-:* | *:-) cat >"$ac_tmp/stdin" \ | ||
21518 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; | ||
21519 | esac | ||
21520 | ;; | ||
21521 | esac | ||
21522 | |||
21523 | ac_dir=`$as_dirname -- "$ac_file" || | ||
21524 | $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ | ||
21525 | X"$ac_file" : 'X\(//\)[^/]' \| \ | ||
21526 | X"$ac_file" : 'X\(//\)$' \| \ | ||
21527 | X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || | ||
21528 | $as_echo X"$ac_file" | | ||
21529 | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ | ||
21530 | s//\1/ | ||
21531 | q | ||
21532 | } | ||
21533 | /^X\(\/\/\)[^/].*/{ | ||
21534 | s//\1/ | ||
21535 | q | ||
21536 | } | ||
21537 | /^X\(\/\/\)$/{ | ||
21538 | s//\1/ | ||
21539 | q | ||
21540 | } | ||
21541 | /^X\(\/\).*/{ | ||
21542 | s//\1/ | ||
21543 | q | ||
21544 | } | ||
21545 | s/.*/./; q'` | ||
21546 | as_dir="$ac_dir"; as_fn_mkdir_p | ||
21547 | ac_builddir=. | ||
21548 | |||
21549 | case "$ac_dir" in | ||
21550 | .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
21551 | *) | ||
21552 | ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` | ||
21553 | # A ".." for each directory in $ac_dir_suffix. | ||
21554 | ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` | ||
21555 | case $ac_top_builddir_sub in | ||
21556 | "") ac_top_builddir_sub=. ac_top_build_prefix= ;; | ||
21557 | *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; | ||
21558 | esac ;; | ||
21559 | esac | ||
21560 | ac_abs_top_builddir=$ac_pwd | ||
21561 | ac_abs_builddir=$ac_pwd$ac_dir_suffix | ||
21562 | # for backward compatibility: | ||
21563 | ac_top_builddir=$ac_top_build_prefix | ||
21564 | |||
21565 | case $srcdir in | ||
21566 | .) # We are building in place. | ||
21567 | ac_srcdir=. | ||
21568 | ac_top_srcdir=$ac_top_builddir_sub | ||
21569 | ac_abs_top_srcdir=$ac_pwd ;; | ||
21570 | [\\/]* | ?:[\\/]* ) # Absolute name. | ||
21571 | ac_srcdir=$srcdir$ac_dir_suffix; | ||
21572 | ac_top_srcdir=$srcdir | ||
21573 | ac_abs_top_srcdir=$srcdir ;; | ||
21574 | *) # Relative name. | ||
21575 | ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix | ||
21576 | ac_top_srcdir=$ac_top_build_prefix$srcdir | ||
21577 | ac_abs_top_srcdir=$ac_pwd/$srcdir ;; | ||
21578 | esac | ||
21579 | ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix | ||
21580 | |||
21581 | |||
21582 | case $ac_mode in | ||
21583 | :F) | ||
21584 | # | ||
21585 | # CONFIG_FILE | ||
21586 | # | ||
21587 | |||
21588 | case $INSTALL in | ||
21589 | [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; | ||
21590 | *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; | ||
21591 | esac | ||
21592 | ac_MKDIR_P=$MKDIR_P | ||
21593 | case $MKDIR_P in | ||
21594 | [\\/$]* | ?:[\\/]* ) ;; | ||
21595 | */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; | ||
21596 | esac | ||
21597 | _ACEOF | ||
21598 | |||
21599 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21600 | # If the template does not know about datarootdir, expand it. | ||
21601 | # FIXME: This hack should be removed a few years after 2.60. | ||
21602 | ac_datarootdir_hack=; ac_datarootdir_seen= | ||
21603 | ac_sed_dataroot=' | ||
21604 | /datarootdir/ { | ||
21605 | p | ||
21606 | q | ||
21607 | } | ||
21608 | /@datadir@/p | ||
21609 | /@docdir@/p | ||
21610 | /@infodir@/p | ||
21611 | /@localedir@/p | ||
21612 | /@mandir@/p' | ||
21613 | case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in | ||
21614 | *datarootdir*) ac_datarootdir_seen=yes;; | ||
21615 | *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) | ||
21616 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 | ||
21617 | $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} | ||
21618 | _ACEOF | ||
21619 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21620 | ac_datarootdir_hack=' | ||
21621 | s&@datadir@&$datadir&g | ||
21622 | s&@docdir@&$docdir&g | ||
21623 | s&@infodir@&$infodir&g | ||
21624 | s&@localedir@&$localedir&g | ||
21625 | s&@mandir@&$mandir&g | ||
21626 | s&\\\${datarootdir}&$datarootdir&g' ;; | ||
21627 | esac | ||
21628 | _ACEOF | ||
21629 | |||
21630 | # Neutralize VPATH when `$srcdir' = `.'. | ||
21631 | # Shell code in configure.ac might set extrasub. | ||
21632 | # FIXME: do we really want to maintain this feature? | ||
21633 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||
21634 | ac_sed_extra="$ac_vpsub | ||
21635 | $extrasub | ||
21636 | _ACEOF | ||
21637 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||
21638 | :t | ||
21639 | /@[a-zA-Z_][a-zA-Z_0-9]*@/!b | ||
21640 | s|@configure_input@|$ac_sed_conf_input|;t t | ||
21641 | s&@top_builddir@&$ac_top_builddir_sub&;t t | ||
21642 | s&@top_build_prefix@&$ac_top_build_prefix&;t t | ||
21643 | s&@srcdir@&$ac_srcdir&;t t | ||
21644 | s&@abs_srcdir@&$ac_abs_srcdir&;t t | ||
21645 | s&@top_srcdir@&$ac_top_srcdir&;t t | ||
21646 | s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t | ||
21647 | s&@builddir@&$ac_builddir&;t t | ||
21648 | s&@abs_builddir@&$ac_abs_builddir&;t t | ||
21649 | s&@abs_top_builddir@&$ac_abs_top_builddir&;t t | ||
21650 | s&@INSTALL@&$ac_INSTALL&;t t | ||
21651 | s&@MKDIR_P@&$ac_MKDIR_P&;t t | ||
21652 | $ac_datarootdir_hack | ||
21653 | " | ||
21654 | eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ | ||
21655 | >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
21656 | |||
21657 | test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && | ||
21658 | { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && | ||
21659 | { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ | ||
21660 | "$ac_tmp/out"`; test -z "$ac_out"; } && | ||
21661 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' | ||
21662 | which seems to be undefined. Please make sure it is defined" >&5 | ||
21663 | $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' | ||
21664 | which seems to be undefined. Please make sure it is defined" >&2;} | ||
21665 | |||
21666 | rm -f "$ac_tmp/stdin" | ||
21667 | case $ac_file in | ||
21668 | -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; | ||
21669 | *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; | ||
21670 | esac \ | ||
21671 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
21672 | ;; | ||
21673 | :H) | ||
21674 | # | ||
21675 | # CONFIG_HEADER | ||
21676 | # | ||
21677 | if test x"$ac_file" != x-; then | ||
21678 | { | ||
21679 | $as_echo "/* $configure_input */" \ | ||
21680 | && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" | ||
21681 | } >"$ac_tmp/config.h" \ | ||
21682 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
21683 | if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then | ||
21684 | { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 | ||
21685 | $as_echo "$as_me: $ac_file is unchanged" >&6;} | ||
21686 | else | ||
21687 | rm -f "$ac_file" | ||
21688 | mv "$ac_tmp/config.h" "$ac_file" \ | ||
21689 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | ||
21690 | fi | ||
21691 | else | ||
21692 | $as_echo "/* $configure_input */" \ | ||
21693 | && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ | ||
21694 | || as_fn_error $? "could not create -" "$LINENO" 5 | ||
21695 | fi | ||
21696 | ;; | ||
21697 | |||
21698 | |||
21699 | esac | ||
21700 | |||
21701 | done # for ac_tag | ||
21702 | |||
21703 | |||
21704 | as_fn_exit 0 | ||
21705 | _ACEOF | ||
21706 | ac_clean_files=$ac_clean_files_save | ||
21707 | |||
21708 | test $ac_write_fail = 0 || | ||
21709 | as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 | ||
21710 | |||
21711 | |||
21712 | # configure is writing to config.log, and then calls config.status. | ||
21713 | # config.status does its own redirection, appending to config.log. | ||
21714 | # Unfortunately, on DOS this fails, as config.log is still kept open | ||
21715 | # by configure, so config.status won't be able to write to it; its | ||
21716 | # output is simply discarded. So we exec the FD to /dev/null, | ||
21717 | # effectively closing config.log, so it can be properly (re)opened and | ||
21718 | # appended to by config.status. When coming back to configure, we | ||
21719 | # need to make the FD available again. | ||
21720 | if test "$no_create" != yes; then | ||
21721 | ac_cs_success=: | ||
21722 | ac_config_status_args= | ||
21723 | test "$silent" = yes && | ||
21724 | ac_config_status_args="$ac_config_status_args --quiet" | ||
21725 | exec 5>/dev/null | ||
21726 | $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false | ||
21727 | exec 5>>config.log | ||
21728 | # Use ||, not &&, to avoid exiting from the if with $? = 1, which | ||
21729 | # would make configure fail if this is the last instruction. | ||
21730 | $ac_cs_success || as_fn_exit 1 | ||
21731 | fi | ||
21732 | if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then | ||
21733 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 | ||
21734 | $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} | ||
21735 | fi | ||
21736 | |||
21737 | |||
21738 | # Print summary of options | ||
21739 | |||
21740 | # Someone please show me a better way :) | ||
21741 | A=`eval echo ${prefix}` ; A=`eval echo ${A}` | ||
21742 | B=`eval echo ${bindir}` ; B=`eval echo ${B}` | ||
21743 | C=`eval echo ${sbindir}` ; C=`eval echo ${C}` | ||
21744 | D=`eval echo ${sysconfdir}` ; D=`eval echo ${D}` | ||
21745 | E=`eval echo ${libexecdir}/ssh-askpass` ; E=`eval echo ${E}` | ||
21746 | F=`eval echo ${mandir}/${mansubdir}X` ; F=`eval echo ${F}` | ||
21747 | G=`eval echo ${piddir}` ; G=`eval echo ${G}` | ||
21748 | H=`eval echo ${PRIVSEP_PATH}` ; H=`eval echo ${H}` | ||
21749 | I=`eval echo ${user_path}` ; I=`eval echo ${I}` | ||
21750 | J=`eval echo ${superuser_path}` ; J=`eval echo ${J}` | ||
21751 | |||
21752 | echo "" | ||
21753 | echo "OpenSSH has been configured with the following options:" | ||
21754 | echo " User binaries: $B" | ||
21755 | echo " System binaries: $C" | ||
21756 | echo " Configuration files: $D" | ||
21757 | echo " Askpass program: $E" | ||
21758 | echo " Manual pages: $F" | ||
21759 | echo " PID file: $G" | ||
21760 | echo " Privilege separation chroot path: $H" | ||
21761 | if test "x$external_path_file" = "x/etc/login.conf" ; then | ||
21762 | echo " At runtime, sshd will use the path defined in $external_path_file" | ||
21763 | echo " Make sure the path to scp is present, otherwise scp will not work" | ||
21764 | else | ||
21765 | echo " sshd default user PATH: $I" | ||
21766 | if test ! -z "$external_path_file"; then | ||
21767 | echo " (If PATH is set in $external_path_file it will be used instead. If" | ||
21768 | echo " used, ensure the path to scp is present, otherwise scp will not work.)" | ||
21769 | fi | ||
21770 | fi | ||
21771 | if test ! -z "$superuser_path" ; then | ||
21772 | echo " sshd superuser user PATH: $J" | ||
21773 | fi | ||
21774 | echo " Manpage format: $MANTYPE" | ||
21775 | echo " PAM support: $PAM_MSG" | ||
21776 | echo " OSF SIA support: $SIA_MSG" | ||
21777 | echo " KerberosV support: $KRB5_MSG" | ||
21778 | echo " SELinux support: $SELINUX_MSG" | ||
21779 | echo " MD5 password support: $MD5_MSG" | ||
21780 | echo " libedit support: $LIBEDIT_MSG" | ||
21781 | echo " libldns support: $LDNS_MSG" | ||
21782 | echo " Solaris process contract support: $SPC_MSG" | ||
21783 | echo " Solaris project support: $SP_MSG" | ||
21784 | echo " Solaris privilege support: $SPP_MSG" | ||
21785 | echo " IP address in \$DISPLAY hack: $DISPLAY_HACK_MSG" | ||
21786 | echo " Translate v4 in v6 hack: $IPV4_IN6_HACK_MSG" | ||
21787 | echo " BSD Auth support: $BSD_AUTH_MSG" | ||
21788 | echo " Random number source: $RAND_MSG" | ||
21789 | echo " Privsep sandbox style: $SANDBOX_STYLE" | ||
21790 | echo " PKCS#11 support: $enable_pkcs11" | ||
21791 | echo " U2F/FIDO support: $enable_sk" | ||
21792 | |||
21793 | echo "" | ||
21794 | |||
21795 | echo " Host: ${host}" | ||
21796 | echo " Compiler: ${CC}" | ||
21797 | echo " Compiler flags: ${CFLAGS}" | ||
21798 | echo "Preprocessor flags: ${CPPFLAGS}" | ||
21799 | echo " Linker flags: ${LDFLAGS}" | ||
21800 | echo " Libraries: ${LIBS}" | ||
21801 | if test ! -z "${SSHDLIBS}"; then | ||
21802 | echo " +for sshd: ${SSHDLIBS}" | ||
21803 | fi | ||
21804 | |||
21805 | echo "" | ||
21806 | |||
21807 | if test "x$MAKE_PACKAGE_SUPPORTED" = "xyes" ; then | ||
21808 | echo "SVR4 style packages are supported with \"make package\"" | ||
21809 | echo "" | ||
21810 | fi | ||
21811 | |||
21812 | if test "x$PAM_MSG" = "xyes" ; then | ||
21813 | echo "PAM is enabled. You may need to install a PAM control file " | ||
21814 | echo "for sshd, otherwise password authentication may fail. " | ||
21815 | echo "Example PAM control files can be found in the contrib/ " | ||
21816 | echo "subdirectory" | ||
21817 | echo "" | ||
21818 | fi | ||
21819 | |||
21820 | if test ! -z "$NO_PEERCHECK" ; then | ||
21821 | echo "WARNING: the operating system that you are using does not" | ||
21822 | echo "appear to support getpeereid(), getpeerucred() or the" | ||
21823 | echo "SO_PEERCRED getsockopt() option. These facilities are used to" | ||
21824 | echo "enforce security checks to prevent unauthorised connections to" | ||
21825 | echo "ssh-agent. Their absence increases the risk that a malicious" | ||
21826 | echo "user can connect to your agent." | ||
21827 | echo "" | ||
21828 | fi | ||
21829 | |||
21830 | if test "$AUDIT_MODULE" = "bsm" ; then | ||
21831 | echo "WARNING: BSM audit support is currently considered EXPERIMENTAL." | ||
21832 | echo "See the Solaris section in README.platform for details." | ||
21833 | fi | ||
diff --git a/moduli.0 b/moduli.0 new file mode 100644 index 000000000..dbbac1830 --- /dev/null +++ b/moduli.0 | |||
@@ -0,0 +1,74 @@ | |||
1 | MODULI(5) File Formats Manual MODULI(5) | ||
2 | |||
3 | NAME | ||
4 | moduli M-bM-^@M-^S Diffie-Hellman moduli | ||
5 | |||
6 | DESCRIPTION | ||
7 | The /etc/moduli file contains prime numbers and generators for use by | ||
8 | sshd(8) in the Diffie-Hellman Group Exchange key exchange method. | ||
9 | |||
10 | New moduli may be generated with ssh-keygen(1) using a two-step process. | ||
11 | An initial candidate generation pass, using ssh-keygen -G, calculates | ||
12 | numbers that are likely to be useful. A second primality testing pass, | ||
13 | using ssh-keygen -T, provides a high degree of assurance that the numbers | ||
14 | are prime and are safe for use in Diffie-Hellman operations by sshd(8). | ||
15 | This moduli format is used as the output from each pass. | ||
16 | |||
17 | The file consists of newline-separated records, one per modulus, | ||
18 | containing seven space-separated fields. These fields are as follows: | ||
19 | |||
20 | timestamp The time that the modulus was last processed as | ||
21 | YYYYMMDDHHMMSS. | ||
22 | |||
23 | type Decimal number specifying the internal structure of | ||
24 | the prime modulus. Supported types are: | ||
25 | |||
26 | 0 Unknown, not tested. | ||
27 | 2 "Safe" prime; (p-1)/2 is also prime. | ||
28 | 4 Sophie Germain; 2p+1 is also prime. | ||
29 | |||
30 | Moduli candidates initially produced by ssh-keygen(1) | ||
31 | are Sophie Germain primes (type 4). Further primality | ||
32 | testing with ssh-keygen(1) produces safe prime moduli | ||
33 | (type 2) that are ready for use in sshd(8). Other | ||
34 | types are not used by OpenSSH. | ||
35 | |||
36 | tests Decimal number indicating the type of primality tests | ||
37 | that the number has been subjected to represented as a | ||
38 | bitmask of the following values: | ||
39 | |||
40 | 0x00 Not tested. | ||
41 | 0x01 Composite number 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 | |||
66 | SEE ALSO | ||
67 | ssh-keygen(1), sshd(8) | ||
68 | |||
69 | STANDARDS | ||
70 | M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for | ||
71 | the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006, | ||
72 | 2006. | ||
73 | |||
74 | OpenBSD 6.8 September 26, 2012 OpenBSD 6.8 | ||
@@ -0,0 +1,186 @@ | |||
1 | SCP(1) General Commands Manual SCP(1) | ||
2 | |||
3 | NAME | ||
4 | scp M-bM-^@M-^S OpenSSH secure file copy | ||
5 | |||
6 | SYNOPSIS | ||
7 | scp [-346ABCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file] | ||
8 | [-J destination] [-l limit] [-o ssh_option] [-P port] [-S program] | ||
9 | source ... target | ||
10 | |||
11 | DESCRIPTION | ||
12 | scp copies files between hosts on a network. It uses ssh(1) for data | ||
13 | transfer, and uses the same authentication and provides the same security | ||
14 | as ssh(1). scp will ask for passwords or passphrases if they are needed | ||
15 | for authentication. | ||
16 | |||
17 | The source and target may be specified as a local pathname, a remote host | ||
18 | with optional path in the form [user@]host:[path], or a URI in the form | ||
19 | scp://[user@]host[:port][/path]. Local file names can be made explicit | ||
20 | using absolute or relative pathnames to avoid scp treating file names | ||
21 | containing M-bM-^@M-^X:M-bM-^@M-^Y as host specifiers. | ||
22 | |||
23 | When copying between two remote hosts, if the URI format is used, a port | ||
24 | may only be specified on the target if the -3 option is used. | ||
25 | |||
26 | The options are as follows: | ||
27 | |||
28 | -3 Copies between two remote hosts are transferred through the local | ||
29 | host. Without this option the data is copied directly between | ||
30 | the two remote hosts. Note that this option disables the | ||
31 | progress meter and selects batch mode for the second host, since | ||
32 | scp cannot ask for passwords or passphrases for both hosts. | ||
33 | |||
34 | -4 Forces scp to use IPv4 addresses only. | ||
35 | |||
36 | -6 Forces scp to use IPv6 addresses only. | ||
37 | |||
38 | -A Allows forwarding of ssh-agent(1) to the remote system. The | ||
39 | default is not to forward an authentication agent. | ||
40 | |||
41 | -B Selects batch mode (prevents asking for passwords or | ||
42 | passphrases). | ||
43 | |||
44 | -C Compression enable. Passes the -C flag to ssh(1) to enable | ||
45 | compression. | ||
46 | |||
47 | -c cipher | ||
48 | Selects the cipher to use for encrypting the data transfer. This | ||
49 | option is directly passed to ssh(1). | ||
50 | |||
51 | -F ssh_config | ||
52 | Specifies an alternative per-user configuration file for ssh. | ||
53 | This option is directly passed to ssh(1). | ||
54 | |||
55 | -i identity_file | ||
56 | Selects the file from which the identity (private key) for public | ||
57 | key authentication is read. This option is directly passed to | ||
58 | ssh(1). | ||
59 | |||
60 | -J destination | ||
61 | Connect to the target host by first making an scp connection to | ||
62 | the jump host described by destination and then establishing a | ||
63 | TCP forwarding to the ultimate destination from there. Multiple | ||
64 | jump hops may be specified separated by comma characters. This | ||
65 | is a shortcut to specify a ProxyJump configuration directive. | ||
66 | This option is directly passed to ssh(1). | ||
67 | |||
68 | -l limit | ||
69 | Limits the used bandwidth, specified in Kbit/s. | ||
70 | |||
71 | -o ssh_option | ||
72 | Can be used to pass options to ssh in the format used in | ||
73 | ssh_config(5). This is useful for specifying options for which | ||
74 | there is no separate scp command-line flag. For full details of | ||
75 | the options listed below, and their possible values, see | ||
76 | ssh_config(5). | ||
77 | |||
78 | AddressFamily | ||
79 | BatchMode | ||
80 | BindAddress | ||
81 | BindInterface | ||
82 | CanonicalDomains | ||
83 | CanonicalizeFallbackLocal | ||
84 | CanonicalizeHostname | ||
85 | CanonicalizeMaxDots | ||
86 | CanonicalizePermittedCNAMEs | ||
87 | CASignatureAlgorithms | ||
88 | CertificateFile | ||
89 | ChallengeResponseAuthentication | ||
90 | CheckHostIP | ||
91 | Ciphers | ||
92 | Compression | ||
93 | ConnectionAttempts | ||
94 | ConnectTimeout | ||
95 | ControlMaster | ||
96 | ControlPath | ||
97 | ControlPersist | ||
98 | GlobalKnownHostsFile | ||
99 | GSSAPIAuthentication | ||
100 | GSSAPIDelegateCredentials | ||
101 | HashKnownHosts | ||
102 | Host | ||
103 | HostbasedAuthentication | ||
104 | HostbasedKeyTypes | ||
105 | HostKeyAlgorithms | ||
106 | HostKeyAlias | ||
107 | Hostname | ||
108 | IdentitiesOnly | ||
109 | IdentityAgent | ||
110 | IdentityFile | ||
111 | IPQoS | ||
112 | KbdInteractiveAuthentication | ||
113 | KbdInteractiveDevices | ||
114 | KexAlgorithms | ||
115 | LogLevel | ||
116 | MACs | ||
117 | NoHostAuthenticationForLocalhost | ||
118 | NumberOfPasswordPrompts | ||
119 | PasswordAuthentication | ||
120 | PKCS11Provider | ||
121 | Port | ||
122 | PreferredAuthentications | ||
123 | ProxyCommand | ||
124 | ProxyJump | ||
125 | PubkeyAcceptedKeyTypes | ||
126 | PubkeyAuthentication | ||
127 | RekeyLimit | ||
128 | SendEnv | ||
129 | ServerAliveInterval | ||
130 | ServerAliveCountMax | ||
131 | SetEnv | ||
132 | StrictHostKeyChecking | ||
133 | TCPKeepAlive | ||
134 | UpdateHostKeys | ||
135 | User | ||
136 | UserKnownHostsFile | ||
137 | VerifyHostKeyDNS | ||
138 | |||
139 | -P port | ||
140 | Specifies the port to connect to on the remote host. Note that | ||
141 | this option is written with a capital M-bM-^@M-^XPM-bM-^@M-^Y, because -p is already | ||
142 | reserved for preserving the times and modes of the file. | ||
143 | |||
144 | -p Preserves modification times, access times, and modes from the | ||
145 | original file. | ||
146 | |||
147 | -q Quiet mode: disables the progress meter as well as warning and | ||
148 | diagnostic messages from ssh(1). | ||
149 | |||
150 | -r Recursively copy entire directories. Note that scp follows | ||
151 | symbolic links encountered in the tree traversal. | ||
152 | |||
153 | -S program | ||
154 | Name of program to use for the encrypted connection. The program | ||
155 | must understand ssh(1) options. | ||
156 | |||
157 | -T Disable strict filename checking. By default when copying files | ||
158 | from a remote host to a local directory scp checks that the | ||
159 | received filenames match those requested on the command-line to | ||
160 | prevent the remote end from sending unexpected or unwanted files. | ||
161 | Because of differences in how various operating systems and | ||
162 | shells interpret filename wildcards, these checks may cause | ||
163 | wanted files to be rejected. This option disables these checks | ||
164 | at the expense of fully trusting that the server will not send | ||
165 | unexpected filenames. | ||
166 | |||
167 | -v Verbose mode. Causes scp and ssh(1) to print debugging messages | ||
168 | about their progress. This is helpful in debugging connection, | ||
169 | authentication, and configuration problems. | ||
170 | |||
171 | EXIT STATUS | ||
172 | The scp utility exitsM-BM- 0 on success, andM-BM- >0 if an error occurs. | ||
173 | |||
174 | SEE ALSO | ||
175 | sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh_config(5), | ||
176 | sshd(8) | ||
177 | |||
178 | HISTORY | ||
179 | scp is based on the rcp program in BSD source code from the Regents of | ||
180 | the University of California. | ||
181 | |||
182 | AUTHORS | ||
183 | Timo Rinne <tri@iki.fi> | ||
184 | Tatu Ylonen <ylo@cs.hut.fi> | ||
185 | |||
186 | OpenBSD 6.8 August 3, 2020 OpenBSD 6.8 | ||
diff --git a/sftp-server.0 b/sftp-server.0 new file mode 100644 index 000000000..36c5f846f --- /dev/null +++ b/sftp-server.0 | |||
@@ -0,0 +1,98 @@ | |||
1 | SFTP-SERVER(8) System Manager's Manual SFTP-SERVER(8) | ||
2 | |||
3 | NAME | ||
4 | sftp-server M-bM-^@M-^S OpenSSH SFTP server subsystem | ||
5 | |||
6 | SYNOPSIS | ||
7 | sftp-server [-ehR] [-d start_directory] [-f log_facility] [-l log_level] | ||
8 | [-P denied_requests] [-p allowed_requests] [-u umask] | ||
9 | sftp-server -Q protocol_feature | ||
10 | |||
11 | DESCRIPTION | ||
12 | sftp-server is a program that speaks the server side of SFTP protocol to | ||
13 | stdout and expects client requests from stdin. sftp-server is not | ||
14 | intended to be called directly, but from sshd(8) using the Subsystem | ||
15 | option. | ||
16 | |||
17 | Command-line flags to sftp-server should be specified in the Subsystem | ||
18 | declaration. See sshd_config(5) for more information. | ||
19 | |||
20 | Valid options are: | ||
21 | |||
22 | -d start_directory | ||
23 | specifies an alternate starting directory for users. The | ||
24 | pathname may contain the following tokens that are expanded at | ||
25 | runtime: %% is replaced by a literal '%', %d is replaced by the | ||
26 | home directory of the user being authenticated, and %u is | ||
27 | replaced by the username of that user. The default is to use the | ||
28 | user's home directory. This option is useful in conjunction with | ||
29 | the sshd_config(5) ChrootDirectory option. | ||
30 | |||
31 | -e Causes sftp-server to print logging information to stderr instead | ||
32 | of syslog for debugging. | ||
33 | |||
34 | -f log_facility | ||
35 | Specifies the facility code that is used when logging messages | ||
36 | from sftp-server. The possible values are: DAEMON, USER, AUTH, | ||
37 | LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. | ||
38 | The default is AUTH. | ||
39 | |||
40 | -h Displays sftp-server usage information. | ||
41 | |||
42 | -l log_level | ||
43 | Specifies which messages will be logged by sftp-server. The | ||
44 | possible values are: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, | ||
45 | DEBUG1, DEBUG2, and DEBUG3. INFO and VERBOSE log transactions | ||
46 | that sftp-server performs on behalf of the client. DEBUG and | ||
47 | DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify higher | ||
48 | levels of debugging output. The default is ERROR. | ||
49 | |||
50 | -P denied_requests | ||
51 | Specify a comma-separated list of SFTP protocol requests that are | ||
52 | banned by the server. sftp-server will reply to any denied | ||
53 | request with a failure. The -Q flag can be used to determine the | ||
54 | supported request types. If both denied and allowed lists are | ||
55 | specified, then the denied list is applied before the allowed | ||
56 | list. | ||
57 | |||
58 | -p allowed_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 | allowed list will be logged and replied to with a failure | ||
62 | message. | ||
63 | |||
64 | Care must be taken when using this feature to ensure that | ||
65 | requests made implicitly by SFTP clients are permitted. | ||
66 | |||
67 | -Q protocol_feature | ||
68 | Query protocol features supported by sftp-server. At present the | ||
69 | only feature that may be queried is M-bM-^@M-^\requestsM-bM-^@M-^], which may be used | ||
70 | to deny or allow specific requests (flags -P and -p | ||
71 | respectively). | ||
72 | |||
73 | -R Places this instance of sftp-server into a read-only mode. | ||
74 | Attempts to open files for writing, as well as other operations | ||
75 | that change the state of the filesystem, will be denied. | ||
76 | |||
77 | -u umask | ||
78 | Sets an explicit umask(2) to be applied to newly-created files | ||
79 | and directories, instead of the user's default mask. | ||
80 | |||
81 | On some systems, sftp-server must be able to access /dev/log for logging | ||
82 | to work, and use of sftp-server in a chroot configuration therefore | ||
83 | requires that syslogd(8) establish a logging socket inside the chroot | ||
84 | directory. | ||
85 | |||
86 | SEE ALSO | ||
87 | sftp(1), ssh(1), sshd_config(5), sshd(8) | ||
88 | |||
89 | T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh- | ||
90 | filexfer-02.txt, October 2001, work in progress material. | ||
91 | |||
92 | HISTORY | ||
93 | sftp-server first appeared in OpenBSD 2.8. | ||
94 | |||
95 | AUTHORS | ||
96 | Markus Friedl <markus@openbsd.org> | ||
97 | |||
98 | OpenBSD 6.8 June 22, 2020 OpenBSD 6.8 | ||
@@ -0,0 +1,402 @@ | |||
1 | SFTP(1) General Commands Manual SFTP(1) | ||
2 | |||
3 | NAME | ||
4 | sftp M-bM-^@M-^S OpenSSH secure file transfer | ||
5 | |||
6 | SYNOPSIS | ||
7 | sftp [-46AaCfNpqrv] [-B buffer_size] [-b batchfile] [-c cipher] | ||
8 | [-D sftp_server_path] [-F ssh_config] [-i identity_file] | ||
9 | [-J destination] [-l limit] [-o ssh_option] [-P port] | ||
10 | [-R num_requests] [-S program] [-s subsystem | sftp_server] | ||
11 | destination | ||
12 | |||
13 | DESCRIPTION | ||
14 | sftp is a file transfer program, similar to ftp(1), which performs all | ||
15 | operations over an encrypted ssh(1) transport. It may also use many | ||
16 | features of ssh, such as public key authentication and compression. | ||
17 | |||
18 | The destination may be specified either as [user@]host[:path] or as a URI | ||
19 | in the form sftp://[user@]host[:port][/path]. | ||
20 | |||
21 | If the destination includes a path and it is not a directory, sftp will | ||
22 | retrieve files automatically if a non-interactive authentication method | ||
23 | is used; otherwise it will do so after successful interactive | ||
24 | authentication. | ||
25 | |||
26 | If no path is specified, or if the path is a directory, sftp will log in | ||
27 | to the specified host and enter interactive command mode, changing to the | ||
28 | remote directory if one was specified. An optional trailing slash can be | ||
29 | used to force the path to be interpreted as a directory. | ||
30 | |||
31 | Since the destination formats use colon characters to delimit host names | ||
32 | from path names or port numbers, IPv6 addresses must be enclosed in | ||
33 | square brackets to avoid ambiguity. | ||
34 | |||
35 | The options are as follows: | ||
36 | |||
37 | -4 Forces sftp to use IPv4 addresses only. | ||
38 | |||
39 | -6 Forces sftp to use IPv6 addresses only. | ||
40 | |||
41 | -A Allows forwarding of ssh-agent(1) to the remote system. The | ||
42 | default is not to forward an authentication agent. | ||
43 | |||
44 | -a Attempt to continue interrupted transfers rather than overwriting | ||
45 | existing partial or complete copies of files. If the partial | ||
46 | contents differ from those being transferred, then the resultant | ||
47 | file is likely to be corrupt. | ||
48 | |||
49 | -B buffer_size | ||
50 | Specify the size of the buffer that sftp uses when transferring | ||
51 | files. Larger buffers require fewer round trips at the cost of | ||
52 | higher memory consumption. The default is 32768 bytes. | ||
53 | |||
54 | -b batchfile | ||
55 | Batch mode reads a series of commands from an input batchfile | ||
56 | instead of stdin. Since it lacks user interaction it should be | ||
57 | used in conjunction with non-interactive authentication to | ||
58 | obviate the need to enter a password at connection time (see | ||
59 | sshd(8) and ssh-keygen(1) for details). | ||
60 | |||
61 | A batchfile of M-bM-^@M-^X-M-bM-^@M-^Y may be used to indicate standard input. sftp | ||
62 | will abort if any of the following commands fail: get, put, | ||
63 | reget, reput, rename, ln, rm, mkdir, chdir, ls, lchdir, chmod, | ||
64 | chown, chgrp, lpwd, df, symlink, and lmkdir. | ||
65 | |||
66 | Termination on error can be suppressed on a command by command | ||
67 | basis by prefixing the command with a M-bM-^@M-^X-M-bM-^@M-^Y character (for example, | ||
68 | -rm /tmp/blah*). Echo of the command may be suppressed by | ||
69 | prefixing the command with a M-bM-^@M-^X@M-bM-^@M-^Y character. These two prefixes | ||
70 | may be combined in any order, for example -@ls /bsd. | ||
71 | |||
72 | -C Enables compression (via ssh's -C flag). | ||
73 | |||
74 | -c cipher | ||
75 | Selects the cipher to use for encrypting the data transfers. | ||
76 | This option is directly passed to ssh(1). | ||
77 | |||
78 | -D sftp_server_path | ||
79 | Connect directly to a local sftp server (rather than via ssh(1)). | ||
80 | This option may be useful in debugging the client and server. | ||
81 | |||
82 | -F ssh_config | ||
83 | Specifies an alternative per-user configuration file for ssh(1). | ||
84 | This option is directly passed to ssh(1). | ||
85 | |||
86 | -f Requests that files be flushed to disk immediately after | ||
87 | transfer. When uploading files, this feature is only enabled if | ||
88 | the server implements the "fsync@openssh.com" extension. | ||
89 | |||
90 | -i identity_file | ||
91 | Selects the file from which the identity (private key) for public | ||
92 | key authentication is read. This option is directly passed to | ||
93 | ssh(1). | ||
94 | |||
95 | -J destination | ||
96 | Connect to the target host by first making an sftp connection to | ||
97 | the jump host described by destination and then establishing a | ||
98 | TCP forwarding to the ultimate destination from there. Multiple | ||
99 | jump hops may be specified separated by comma characters. This | ||
100 | is a shortcut to specify a ProxyJump configuration directive. | ||
101 | This option is directly passed to ssh(1). | ||
102 | |||
103 | -l limit | ||
104 | Limits the used bandwidth, specified in Kbit/s. | ||
105 | |||
106 | -N Disables quiet mode, e.g. to override the implicit quiet mode set | ||
107 | by the -b flag. | ||
108 | |||
109 | -o ssh_option | ||
110 | Can be used to pass options to ssh in the format used in | ||
111 | ssh_config(5). This is useful for specifying options for which | ||
112 | there is no separate sftp command-line flag. For example, to | ||
113 | specify an alternate port use: sftp -oPort=24. For full details | ||
114 | of the options listed below, and their possible values, see | ||
115 | ssh_config(5). | ||
116 | |||
117 | AddressFamily | ||
118 | BatchMode | ||
119 | BindAddress | ||
120 | BindInterface | ||
121 | CanonicalDomains | ||
122 | CanonicalizeFallbackLocal | ||
123 | CanonicalizeHostname | ||
124 | CanonicalizeMaxDots | ||
125 | CanonicalizePermittedCNAMEs | ||
126 | CASignatureAlgorithms | ||
127 | CertificateFile | ||
128 | ChallengeResponseAuthentication | ||
129 | CheckHostIP | ||
130 | Ciphers | ||
131 | Compression | ||
132 | ConnectionAttempts | ||
133 | ConnectTimeout | ||
134 | ControlMaster | ||
135 | ControlPath | ||
136 | ControlPersist | ||
137 | GlobalKnownHostsFile | ||
138 | GSSAPIAuthentication | ||
139 | GSSAPIDelegateCredentials | ||
140 | HashKnownHosts | ||
141 | Host | ||
142 | HostbasedAuthentication | ||
143 | HostbasedKeyTypes | ||
144 | HostKeyAlgorithms | ||
145 | HostKeyAlias | ||
146 | Hostname | ||
147 | IdentitiesOnly | ||
148 | IdentityAgent | ||
149 | IdentityFile | ||
150 | IPQoS | ||
151 | KbdInteractiveAuthentication | ||
152 | KbdInteractiveDevices | ||
153 | KexAlgorithms | ||
154 | LogLevel | ||
155 | MACs | ||
156 | NoHostAuthenticationForLocalhost | ||
157 | NumberOfPasswordPrompts | ||
158 | PasswordAuthentication | ||
159 | PKCS11Provider | ||
160 | Port | ||
161 | PreferredAuthentications | ||
162 | ProxyCommand | ||
163 | ProxyJump | ||
164 | PubkeyAcceptedKeyTypes | ||
165 | PubkeyAuthentication | ||
166 | RekeyLimit | ||
167 | SendEnv | ||
168 | ServerAliveInterval | ||
169 | ServerAliveCountMax | ||
170 | SetEnv | ||
171 | StrictHostKeyChecking | ||
172 | TCPKeepAlive | ||
173 | UpdateHostKeys | ||
174 | User | ||
175 | UserKnownHostsFile | ||
176 | VerifyHostKeyDNS | ||
177 | |||
178 | -P port | ||
179 | Specifies the port to connect to on the remote host. | ||
180 | |||
181 | -p Preserves modification times, access times, and modes from the | ||
182 | original files transferred. | ||
183 | |||
184 | -q Quiet mode: disables the progress meter as well as warning and | ||
185 | diagnostic messages from ssh(1). | ||
186 | |||
187 | -R num_requests | ||
188 | Specify how many requests may be outstanding at any one time. | ||
189 | Increasing this may slightly improve file transfer speed but will | ||
190 | increase memory usage. The default is 64 outstanding requests. | ||
191 | |||
192 | -r Recursively copy entire directories when uploading and | ||
193 | downloading. Note that sftp does not follow symbolic links | ||
194 | encountered in the tree traversal. | ||
195 | |||
196 | -S program | ||
197 | Name of the program to use for the encrypted connection. The | ||
198 | program must understand ssh(1) options. | ||
199 | |||
200 | -s subsystem | sftp_server | ||
201 | Specifies the SSH2 subsystem or the path for an sftp server on | ||
202 | the remote host. A path is useful when the remote sshd(8) does | ||
203 | not have an sftp subsystem configured. | ||
204 | |||
205 | -v Raise logging level. This option is also passed to ssh. | ||
206 | |||
207 | INTERACTIVE COMMANDS | ||
208 | Once in interactive mode, sftp understands a set of commands similar to | ||
209 | those of ftp(1). Commands are case insensitive. Pathnames that contain | ||
210 | spaces must be enclosed in quotes. Any special characters contained | ||
211 | within pathnames that are recognized by glob(3) must be escaped with | ||
212 | backslashes (M-bM-^@M-^X\M-bM-^@M-^Y). | ||
213 | |||
214 | bye Quit sftp. | ||
215 | |||
216 | cd [path] | ||
217 | Change remote directory to path. If path is not specified, then | ||
218 | change directory to the one the session started in. | ||
219 | |||
220 | chgrp [-h] grp path | ||
221 | Change group of file path to grp. If the -h flag is specified, | ||
222 | then symlinks will not be followed. path may contain glob(7) | ||
223 | characters and may match multiple files. grp must be a numeric | ||
224 | GID. | ||
225 | |||
226 | chmod [-h] mode path | ||
227 | Change permissions of file path to mode. If the -h flag is | ||
228 | specified, then symlinks will not be followed. path may contain | ||
229 | glob(7) characters and may match multiple files. | ||
230 | |||
231 | chown [-h] own path | ||
232 | Change owner of file path to own. If the -h flag is specified, | ||
233 | then symlinks will not be followed. path may contain glob(7) | ||
234 | characters and may match multiple files. own must be a numeric | ||
235 | UID. | ||
236 | |||
237 | df [-hi] [path] | ||
238 | Display usage information for the filesystem holding the current | ||
239 | directory (or path if specified). If the -h flag is specified, | ||
240 | the capacity information will be displayed using "human-readable" | ||
241 | suffixes. The -i flag requests display of inode information in | ||
242 | addition to capacity information. This command is only supported | ||
243 | on servers that implement the M-bM-^@M-^\statvfs@openssh.comM-bM-^@M-^] extension. | ||
244 | |||
245 | exit Quit sftp. | ||
246 | |||
247 | get [-afpR] remote-path [local-path] | ||
248 | Retrieve the remote-path and store it on the local machine. If | ||
249 | the local path name is not specified, it is given the same name | ||
250 | it has on the remote machine. remote-path may contain glob(7) | ||
251 | characters and may match multiple files. If it does and | ||
252 | local-path is specified, then local-path must specify a | ||
253 | directory. | ||
254 | |||
255 | If the -a flag is specified, then attempt to resume partial | ||
256 | transfers of existing files. Note that resumption assumes that | ||
257 | any partial copy of the local file matches the remote copy. If | ||
258 | the remote file contents differ from the partial local copy then | ||
259 | the resultant file is likely to be corrupt. | ||
260 | |||
261 | If the -f flag is specified, then fsync(2) will be called after | ||
262 | the file transfer has completed to flush the file to disk. | ||
263 | |||
264 | If the -p flag is specified, then full file permissions and | ||
265 | access times are copied too. | ||
266 | |||
267 | If the -R flag is specified then directories will be copied | ||
268 | recursively. Note that sftp does not follow symbolic links when | ||
269 | performing recursive transfers. | ||
270 | |||
271 | help Display help text. | ||
272 | |||
273 | lcd [path] | ||
274 | Change local directory to path. If path is not specified, then | ||
275 | change directory to the local user's home directory. | ||
276 | |||
277 | lls [ls-options [path]] | ||
278 | Display local directory listing of either path or current | ||
279 | directory if path is not specified. ls-options may contain any | ||
280 | flags supported by the local system's ls(1) command. path may | ||
281 | contain glob(7) characters and may match multiple files. | ||
282 | |||
283 | lmkdir path | ||
284 | Create local directory specified by path. | ||
285 | |||
286 | ln [-s] oldpath newpath | ||
287 | Create a link from oldpath to newpath. If the -s flag is | ||
288 | specified the created link is a symbolic link, otherwise it is a | ||
289 | hard link. | ||
290 | |||
291 | lpwd Print local working directory. | ||
292 | |||
293 | ls [-1afhlnrSt] [path] | ||
294 | Display a remote directory listing of either path or the current | ||
295 | directory if path is not specified. path may contain glob(7) | ||
296 | characters and may match multiple files. | ||
297 | |||
298 | The following flags are recognized and alter the behaviour of ls | ||
299 | accordingly: | ||
300 | |||
301 | -1 Produce single columnar output. | ||
302 | |||
303 | -a List files beginning with a dot (M-bM-^@M-^X.M-bM-^@M-^Y). | ||
304 | |||
305 | -f Do not sort the listing. The default sort order is | ||
306 | lexicographical. | ||
307 | |||
308 | -h When used with a long format option, use unit suffixes: | ||
309 | Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte, | ||
310 | and Exabyte in order to reduce the number of digits to | ||
311 | four or fewer using powers of 2 for sizes (K=1024, | ||
312 | M=1048576, etc.). | ||
313 | |||
314 | -l Display additional details including permissions and | ||
315 | ownership information. | ||
316 | |||
317 | -n Produce a long listing with user and group information | ||
318 | presented numerically. | ||
319 | |||
320 | -r Reverse the sort order of the listing. | ||
321 | |||
322 | -S Sort the listing by file size. | ||
323 | |||
324 | -t Sort the listing by last modification time. | ||
325 | |||
326 | lumask umask | ||
327 | Set local umask to umask. | ||
328 | |||
329 | mkdir path | ||
330 | Create remote directory specified by path. | ||
331 | |||
332 | progress | ||
333 | Toggle display of progress meter. | ||
334 | |||
335 | put [-afpR] local-path [remote-path] | ||
336 | Upload local-path and store it on the remote machine. If the | ||
337 | remote path name is not specified, it is given the same name it | ||
338 | has on the local machine. local-path may contain glob(7) | ||
339 | characters and may match multiple files. If it does and | ||
340 | remote-path is specified, then remote-path must specify a | ||
341 | directory. | ||
342 | |||
343 | If the -a flag is specified, then attempt to resume partial | ||
344 | transfers of existing files. Note that resumption assumes that | ||
345 | any partial copy of the remote file matches the local copy. If | ||
346 | the local file contents differ from the remote local copy then | ||
347 | the resultant file is likely to be corrupt. | ||
348 | |||
349 | If the -f flag is specified, then a request will be sent to the | ||
350 | server to call fsync(2) after the file has been transferred. | ||
351 | Note that this is only supported by servers that implement the | ||
352 | "fsync@openssh.com" extension. | ||
353 | |||
354 | If the -p flag is specified, then full file permissions and | ||
355 | access times are copied too. | ||
356 | |||
357 | If the -R flag is specified then directories will be copied | ||
358 | recursively. Note that sftp does not follow symbolic links when | ||
359 | performing recursive transfers. | ||
360 | |||
361 | pwd Display remote working directory. | ||
362 | |||
363 | quit Quit sftp. | ||
364 | |||
365 | reget [-fpR] remote-path [local-path] | ||
366 | Resume download of remote-path. Equivalent to get with the -a | ||
367 | flag set. | ||
368 | |||
369 | reput [-fpR] local-path [remote-path] | ||
370 | Resume upload of local-path. Equivalent to put with the -a flag | ||
371 | set. | ||
372 | |||
373 | rename oldpath newpath | ||
374 | Rename remote file from oldpath to newpath. | ||
375 | |||
376 | rm path | ||
377 | Delete remote file specified by path. | ||
378 | |||
379 | rmdir path | ||
380 | Remove remote directory specified by path. | ||
381 | |||
382 | symlink oldpath newpath | ||
383 | Create a symbolic link from oldpath to newpath. | ||
384 | |||
385 | version | ||
386 | Display the sftp protocol version. | ||
387 | |||
388 | !command | ||
389 | Execute command in local shell. | ||
390 | |||
391 | ! Escape to local shell. | ||
392 | |||
393 | ? Synonym for help. | ||
394 | |||
395 | SEE ALSO | ||
396 | ftp(1), ls(1), scp(1), ssh(1), ssh-add(1), ssh-keygen(1), ssh_config(5), | ||
397 | glob(7), sftp-server(8), sshd(8) | ||
398 | |||
399 | T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh- | ||
400 | filexfer-00.txt, January 2001, work in progress material. | ||
401 | |||
402 | OpenBSD 6.8 August 3, 2020 OpenBSD 6.8 | ||
diff --git a/ssh-add.0 b/ssh-add.0 new file mode 100644 index 000000000..d73af0f43 --- /dev/null +++ b/ssh-add.0 | |||
@@ -0,0 +1,152 @@ | |||
1 | SSH-ADD(1) General Commands Manual SSH-ADD(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-add M-bM-^@M-^S adds private key identities to the OpenSSH authentication agent | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-add [-cDdKkLlqvXx] [-E fingerprint_hash] [-S provider] [-t life] | ||
8 | [file ...] | ||
9 | ssh-add -s pkcs11 | ||
10 | ssh-add -e pkcs11 | ||
11 | ssh-add -T pubkey ... | ||
12 | |||
13 | DESCRIPTION | ||
14 | ssh-add adds private key identities to the authentication agent, | ||
15 | ssh-agent(1). When run without arguments, it adds the files | ||
16 | ~/.ssh/id_rsa, ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ecdsa_sk, | ||
17 | ~/.ssh/id_ed25519, and ~/.ssh/id_ed25519_sk. After loading a private | ||
18 | key, ssh-add will try to load corresponding certificate information from | ||
19 | the filename obtained by appending -cert.pub to the name of the private | ||
20 | key file. Alternative file names can be given on the command line. | ||
21 | |||
22 | If any file requires a passphrase, ssh-add asks for the passphrase from | ||
23 | the user. The passphrase is read from the user's tty. ssh-add retries | ||
24 | the last passphrase if multiple identity files are given. | ||
25 | |||
26 | The authentication agent must be running and the SSH_AUTH_SOCK | ||
27 | environment variable must contain the name of its socket for ssh-add to | ||
28 | work. | ||
29 | |||
30 | The options are as follows: | ||
31 | |||
32 | -c Indicates that added identities should be subject to confirmation | ||
33 | before being used for authentication. Confirmation is performed | ||
34 | by ssh-askpass(1). Successful confirmation is signaled by a zero | ||
35 | exit status from ssh-askpass(1), rather than text entered into | ||
36 | the requester. | ||
37 | |||
38 | -D Deletes all identities from the agent. | ||
39 | |||
40 | -d Instead of adding identities, removes identities from the agent. | ||
41 | If ssh-add has been run without arguments, the keys for the | ||
42 | default identities and their corresponding certificates will be | ||
43 | removed. Otherwise, the argument list will be interpreted as a | ||
44 | list of paths to public key files to specify keys and | ||
45 | certificates to be removed from the agent. If no public key is | ||
46 | found at a given path, ssh-add will append .pub and retry. If | ||
47 | the argument list consists of M-bM-^@M-^\-M-bM-^@M-^] then ssh-add will read public | ||
48 | keys to be removed from standard input. | ||
49 | |||
50 | -E fingerprint_hash | ||
51 | Specifies the hash algorithm used when displaying key | ||
52 | fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The | ||
53 | default is M-bM-^@M-^\sha256M-bM-^@M-^]. | ||
54 | |||
55 | -e pkcs11 | ||
56 | Remove keys provided by the PKCS#11 shared library pkcs11. | ||
57 | |||
58 | -K Load resident keys from a FIDO authenticator. | ||
59 | |||
60 | -k When loading keys into or deleting keys from the agent, process | ||
61 | plain private keys only and skip certificates. | ||
62 | |||
63 | -L Lists public key parameters of all identities currently | ||
64 | represented by the agent. | ||
65 | |||
66 | -l Lists fingerprints of all identities currently represented by the | ||
67 | agent. | ||
68 | |||
69 | -q Be quiet after a successful operation. | ||
70 | |||
71 | -S provider | ||
72 | Specifies a path to a library that will be used when adding FIDO | ||
73 | authenticator-hosted keys, overriding the default of using the | ||
74 | internal USB HID support. | ||
75 | |||
76 | -s pkcs11 | ||
77 | Add keys provided by the PKCS#11 shared library pkcs11. | ||
78 | |||
79 | -T pubkey ... | ||
80 | Tests whether the private keys that correspond to the specified | ||
81 | pubkey files are usable by performing sign and verify operations | ||
82 | on each. | ||
83 | |||
84 | -t life | ||
85 | Set a maximum lifetime when adding identities to an agent. The | ||
86 | lifetime may be specified in seconds or in a time format | ||
87 | specified in sshd_config(5). | ||
88 | |||
89 | -v Verbose mode. Causes ssh-add to print debugging messages about | ||
90 | its progress. This is helpful in debugging problems. Multiple | ||
91 | -v options increase the verbosity. The maximum is 3. | ||
92 | |||
93 | -X Unlock the agent. | ||
94 | |||
95 | -x Lock the agent with a password. | ||
96 | |||
97 | ENVIRONMENT | ||
98 | DISPLAY, SSH_ASKPASS and SSH_ASKPASS_REQUIRE | ||
99 | If ssh-add needs a passphrase, it will read the passphrase from | ||
100 | the current terminal if it was run from a terminal. If ssh-add | ||
101 | does not have a terminal associated with it but DISPLAY and | ||
102 | SSH_ASKPASS are set, it will execute the program specified by | ||
103 | SSH_ASKPASS (by default M-bM-^@M-^\ssh-askpassM-bM-^@M-^]) and open an X11 window to | ||
104 | read the passphrase. This is particularly useful when calling | ||
105 | ssh-add from a .xsession or related script. | ||
106 | |||
107 | SSH_ASKPASS_REQUIRE allows further control over the use of an | ||
108 | askpass program. If this variable is set to M-bM-^@M-^\neverM-bM-^@M-^] then ssh-add | ||
109 | will never attempt to use one. If it is set to M-bM-^@M-^\preferM-bM-^@M-^], then | ||
110 | ssh-add will prefer to use the askpass program instead of the TTY | ||
111 | when requesting passwords. Finally, if the variable is set to | ||
112 | M-bM-^@M-^\forceM-bM-^@M-^], then the askpass program will be used for all passphrase | ||
113 | input regardless of whether DISPLAY is set. | ||
114 | |||
115 | SSH_AUTH_SOCK | ||
116 | Identifies the path of a UNIX-domain socket used to communicate | ||
117 | with the agent. | ||
118 | |||
119 | SSH_SK_PROVIDER | ||
120 | Specifies a path to a library that will be used when loading any | ||
121 | FIDO authenticator-hosted keys, overriding the default of using | ||
122 | the built-in USB HID support. | ||
123 | |||
124 | FILES | ||
125 | ~/.ssh/id_dsa | ||
126 | ~/.ssh/id_ecdsa | ||
127 | ~/.ssh/id_ecdsa_sk | ||
128 | ~/.ssh/id_ed25519 | ||
129 | ~/.ssh/id_ed25519_sk | ||
130 | ~/.ssh/id_rsa | ||
131 | Contains the DSA, ECDSA, authenticator-hosted ECDSA, Ed25519, | ||
132 | authenticator-hosted Ed25519 or RSA authentication identity of | ||
133 | the user. | ||
134 | |||
135 | Identity files should not be readable by anyone but the user. Note that | ||
136 | ssh-add ignores identity files if they are accessible by others. | ||
137 | |||
138 | EXIT STATUS | ||
139 | Exit status is 0 on success, 1 if the specified command fails, and 2 if | ||
140 | ssh-add is unable to contact the authentication agent. | ||
141 | |||
142 | SEE ALSO | ||
143 | ssh(1), ssh-agent(1), ssh-askpass(1), ssh-keygen(1), sshd(8) | ||
144 | |||
145 | AUTHORS | ||
146 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
147 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
148 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
149 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
150 | versions 1.5 and 2.0. | ||
151 | |||
152 | OpenBSD 6.8 July 14, 2020 OpenBSD 6.8 | ||
diff --git a/ssh-agent.0 b/ssh-agent.0 new file mode 100644 index 000000000..71dddc27c --- /dev/null +++ b/ssh-agent.0 | |||
@@ -0,0 +1,119 @@ | |||
1 | SSH-AGENT(1) General Commands Manual SSH-AGENT(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-agent M-bM-^@M-^S OpenSSH authentication agent | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash] | ||
8 | [-P allowed_providers] [-t life] | ||
9 | ssh-agent [-a bind_address] [-E fingerprint_hash] [-P allowed_providers] | ||
10 | [-t life] command [arg ...] | ||
11 | ssh-agent [-c | -s] -k | ||
12 | |||
13 | DESCRIPTION | ||
14 | ssh-agent is a program to hold private keys used for public key | ||
15 | authentication. Through use of environment variables the agent can be | ||
16 | located and automatically used for authentication when logging in to | ||
17 | other machines using ssh(1). | ||
18 | |||
19 | The options are as follows: | ||
20 | |||
21 | -a bind_address | ||
22 | Bind the agent to the UNIX-domain socket bind_address. The | ||
23 | default is $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>. | ||
24 | |||
25 | -c Generate C-shell commands on stdout. This is the default if | ||
26 | SHELL looks like it's a csh style of shell. | ||
27 | |||
28 | -D Foreground mode. When this option is specified ssh-agent will | ||
29 | not fork. | ||
30 | |||
31 | -d Debug mode. When this option is specified ssh-agent will not | ||
32 | fork and will write debug information to standard error. | ||
33 | |||
34 | -E fingerprint_hash | ||
35 | Specifies the hash algorithm used when displaying key | ||
36 | fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The | ||
37 | default is M-bM-^@M-^\sha256M-bM-^@M-^]. | ||
38 | |||
39 | -k Kill the current agent (given by the SSH_AGENT_PID environment | ||
40 | variable). | ||
41 | |||
42 | -P allowed_providers | ||
43 | Specify a pattern-list of acceptable paths for PKCS#11 provider | ||
44 | and FIDO authenticator middleware shared libraries that may be | ||
45 | used with the -S or -s options to ssh-add(1). Libraries that do | ||
46 | not match the pattern list will be refused. See PATTERNS in | ||
47 | ssh_config(5) for a description of pattern-list syntax. The | ||
48 | default list is M-bM-^@M-^\/usr/lib/*,/usr/local/lib/*M-bM-^@M-^]. | ||
49 | |||
50 | -s Generate Bourne shell commands on stdout. This is the default if | ||
51 | SHELL does not look like it's a csh style of shell. | ||
52 | |||
53 | -t life | ||
54 | Set a default value for the maximum lifetime of identities added | ||
55 | to the agent. The lifetime may be specified in seconds or in a | ||
56 | time format specified in sshd_config(5). A lifetime specified | ||
57 | for an identity with ssh-add(1) overrides this value. Without | ||
58 | this option the default maximum lifetime is forever. | ||
59 | |||
60 | command [arg ...] | ||
61 | If a command (and optional arguments) is given, this is executed | ||
62 | as a subprocess of the agent. The agent exits automatically when | ||
63 | the command given on the command line terminates. | ||
64 | |||
65 | There are two main ways to get an agent set up. The first is at the | ||
66 | start of an X session, where all other windows or programs are started as | ||
67 | children of the ssh-agent program. The agent starts a command under | ||
68 | which its environment variables are exported, for example ssh-agent xterm | ||
69 | &. When the command terminates, so does the agent. | ||
70 | |||
71 | The second method is used for a login session. When ssh-agent is | ||
72 | started, it prints the shell commands required to set its environment | ||
73 | variables, which in turn can be evaluated in the calling shell, for | ||
74 | example eval `ssh-agent -s`. | ||
75 | |||
76 | In both cases, ssh(1) looks at these environment variables and uses them | ||
77 | to establish a connection to the agent. | ||
78 | |||
79 | The agent initially does not have any private keys. Keys are added using | ||
80 | ssh-add(1) or by ssh(1) when AddKeysToAgent is set in ssh_config(5). | ||
81 | Multiple identities may be stored in ssh-agent concurrently and ssh(1) | ||
82 | will automatically use them if present. ssh-add(1) is also used to | ||
83 | remove keys from ssh-agent and to query the keys that are held in one. | ||
84 | |||
85 | Connections to ssh-agent may be forwarded from further remote hosts using | ||
86 | the -A option to ssh(1) (but see the caveats documented therein), | ||
87 | avoiding the need for authentication data to be stored on other machines. | ||
88 | Authentication passphrases and private keys never go over the network: | ||
89 | the connection to the agent is forwarded over SSH remote connections and | ||
90 | the result is returned to the requester, allowing the user access to | ||
91 | their identities anywhere in the network in a secure fashion. | ||
92 | |||
93 | ENVIRONMENT | ||
94 | SSH_AGENT_PID When ssh-agent starts, it stores the name of the agent's | ||
95 | process ID (PID) in this variable. | ||
96 | |||
97 | SSH_AUTH_SOCK When ssh-agent starts, it creates a UNIX-domain socket and | ||
98 | stores its pathname in this variable. It is accessible | ||
99 | only to the current user, but is easily abused by root or | ||
100 | another instance of the same user. | ||
101 | |||
102 | FILES | ||
103 | $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid> | ||
104 | UNIX-domain sockets used to contain the connection to the | ||
105 | authentication agent. These sockets should only be readable by | ||
106 | the owner. The sockets should get automatically removed when the | ||
107 | agent exits. | ||
108 | |||
109 | SEE ALSO | ||
110 | ssh(1), ssh-add(1), ssh-keygen(1), ssh_config(5), sshd(8) | ||
111 | |||
112 | AUTHORS | ||
113 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
114 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
115 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
116 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
117 | versions 1.5 and 2.0. | ||
118 | |||
119 | OpenBSD 6.8 June 22, 2020 OpenBSD 6.8 | ||
diff --git a/ssh-keygen.0 b/ssh-keygen.0 new file mode 100644 index 000000000..111eb9e08 --- /dev/null +++ b/ssh-keygen.0 | |||
@@ -0,0 +1,809 @@ | |||
1 | SSH-KEYGEN(1) General Commands Manual SSH-KEYGEN(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-keygen M-bM-^@M-^S OpenSSH authentication key utility | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keygen [-q] [-a rounds] [-b bits] [-C comment] [-f output_keyfile] | ||
8 | [-m format] [-N new_passphrase] [-O option] | ||
9 | [-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa] | ||
10 | [-w provider] | ||
11 | ssh-keygen -p [-a rounds] [-f keyfile] [-m format] [-N new_passphrase] | ||
12 | [-P old_passphrase] | ||
13 | ssh-keygen -i [-f input_keyfile] [-m key_format] | ||
14 | ssh-keygen -e [-f input_keyfile] [-m key_format] | ||
15 | ssh-keygen -y [-f input_keyfile] | ||
16 | ssh-keygen -c [-a rounds] [-C comment] [-f keyfile] [-P passphrase] | ||
17 | ssh-keygen -l [-v] [-E fingerprint_hash] [-f input_keyfile] | ||
18 | ssh-keygen -B [-f input_keyfile] | ||
19 | ssh-keygen -D pkcs11 | ||
20 | ssh-keygen -F hostname [-lv] [-f known_hosts_file] | ||
21 | ssh-keygen -H [-f known_hosts_file] | ||
22 | ssh-keygen -K [-a rounds] [-w provider] | ||
23 | ssh-keygen -R hostname [-f known_hosts_file] | ||
24 | ssh-keygen -r hostname [-g] [-f input_keyfile] | ||
25 | ssh-keygen -M generate [-O option] output_file | ||
26 | ssh-keygen -M screen [-f input_file] [-O option] output_file | ||
27 | ssh-keygen -I certificate_identity -s ca_key [-hU] [-D pkcs11_provider] | ||
28 | [-n principals] [-O option] [-V validity_interval] | ||
29 | [-z serial_number] file ... | ||
30 | ssh-keygen -L [-f input_keyfile] | ||
31 | ssh-keygen -A [-a rounds] [-f prefix_path] | ||
32 | ssh-keygen -k -f krl_file [-u] [-s ca_public] [-z version_number] | ||
33 | file ... | ||
34 | ssh-keygen -Q [-l] -f krl_file file ... | ||
35 | ssh-keygen -Y find-principals -s signature_file -f allowed_signers_file | ||
36 | ssh-keygen -Y check-novalidate -n namespace -s signature_file | ||
37 | ssh-keygen -Y sign -f key_file -n namespace file ... | ||
38 | ssh-keygen -Y verify -f allowed_signers_file -I signer_identity | ||
39 | -n namespace -s signature_file [-r revocation_file] | ||
40 | |||
41 | DESCRIPTION | ||
42 | ssh-keygen generates, manages and converts authentication keys for | ||
43 | ssh(1). ssh-keygen can create keys for use by SSH protocol version 2. | ||
44 | |||
45 | The type of key to be generated is specified with the -t option. If | ||
46 | invoked without any arguments, ssh-keygen will generate an RSA key. | ||
47 | |||
48 | ssh-keygen is also used to generate groups for use in Diffie-Hellman | ||
49 | group exchange (DH-GEX). See the MODULI GENERATION section for details. | ||
50 | |||
51 | Finally, ssh-keygen can be used to generate and update Key Revocation | ||
52 | Lists, and to test whether given keys have been revoked by one. See the | ||
53 | KEY REVOCATION LISTS section for details. | ||
54 | |||
55 | Normally each user wishing to use SSH with public key authentication runs | ||
56 | this once to create the authentication key in ~/.ssh/id_dsa, | ||
57 | ~/.ssh/id_ecdsa, ~/.ssh/id_ecdsa_sk, ~/.ssh/id_ed25519, | ||
58 | ~/.ssh/id_ed25519_sk or ~/.ssh/id_rsa. Additionally, the system | ||
59 | administrator may use this to generate host keys, as seen in /etc/rc. | ||
60 | |||
61 | Normally this program generates the key and asks for a file in which to | ||
62 | store the private key. The public key is stored in a file with the same | ||
63 | name but M-bM-^@M-^\.pubM-bM-^@M-^] appended. The program also asks for a passphrase. The | ||
64 | passphrase may be empty to indicate no passphrase (host keys must have an | ||
65 | empty passphrase), or it may be a string of arbitrary length. A | ||
66 | passphrase is similar to a password, except it can be a phrase with a | ||
67 | series of words, punctuation, numbers, whitespace, or any string of | ||
68 | characters you want. Good passphrases are 10-30 characters long, are not | ||
69 | simple sentences or otherwise easily guessable (English prose has only | ||
70 | 1-2 bits of entropy per character, and provides very bad passphrases), | ||
71 | and contain a mix of upper and lowercase letters, numbers, and non- | ||
72 | alphanumeric characters. The passphrase can be changed later by using | ||
73 | the -p option. | ||
74 | |||
75 | There is no way to recover a lost passphrase. If the passphrase is lost | ||
76 | or forgotten, a new key must be generated and the corresponding public | ||
77 | key copied to other machines. | ||
78 | |||
79 | ssh-keygen will by default write keys in an OpenSSH-specific format. | ||
80 | This format is preferred as it offers better protection for keys at rest | ||
81 | as well as allowing storage of key comments within the private key file | ||
82 | itself. The key comment may be useful to help identify the key. The | ||
83 | comment is initialized to M-bM-^@M-^\user@hostM-bM-^@M-^] when the key is created, but can be | ||
84 | changed using the -c option. | ||
85 | |||
86 | It is still possible for ssh-keygen to write the previously-used PEM | ||
87 | format private keys using the -m flag. This may be used when generating | ||
88 | new keys, and existing new-format keys may be converted using this option | ||
89 | in conjunction with the -p (change passphrase) flag. | ||
90 | |||
91 | After a key is generated, ssh-keygen will ask where the keys should be | ||
92 | placed to be activated. | ||
93 | |||
94 | The options are as follows: | ||
95 | |||
96 | -A For each of the key types (rsa, dsa, ecdsa and ed25519) for which | ||
97 | host keys do not exist, generate the host keys with the default | ||
98 | key file path, an empty passphrase, default bits for the key | ||
99 | type, and default comment. If -f has also been specified, its | ||
100 | argument is used as a prefix to the default path for the | ||
101 | resulting host key files. This is used by /etc/rc to generate | ||
102 | new host keys. | ||
103 | |||
104 | -a rounds | ||
105 | When saving a private key, this option specifies the number of | ||
106 | KDF (key derivation function) rounds used. Higher numbers result | ||
107 | in slower passphrase verification and increased resistance to | ||
108 | brute-force password cracking (should the keys be stolen). The | ||
109 | default is 16 rounds. | ||
110 | |||
111 | -B Show the bubblebabble digest of specified private or public key | ||
112 | file. | ||
113 | |||
114 | -b bits | ||
115 | Specifies the number of bits in the key to create. For RSA keys, | ||
116 | the minimum size is 1024 bits and the default is 3072 bits. | ||
117 | Generally, 3072 bits is considered sufficient. DSA keys must be | ||
118 | exactly 1024 bits as specified by FIPS 186-2. For ECDSA keys, | ||
119 | the -b flag determines the key length by selecting from one of | ||
120 | three elliptic curve sizes: 256, 384 or 521 bits. Attempting to | ||
121 | use bit lengths other than these three values for ECDSA keys will | ||
122 | fail. ECDSA-SK, Ed25519 and Ed25519-SK keys have a fixed length | ||
123 | and the -b flag will be ignored. | ||
124 | |||
125 | -C comment | ||
126 | Provides a new comment. | ||
127 | |||
128 | -c Requests changing the comment in the private and public key | ||
129 | files. The program will prompt for the file containing the | ||
130 | private keys, for the passphrase if the key has one, and for the | ||
131 | new comment. | ||
132 | |||
133 | -D pkcs11 | ||
134 | Download the public keys provided by the PKCS#11 shared library | ||
135 | pkcs11. When used in combination with -s, this option indicates | ||
136 | that a CA key resides in a PKCS#11 token (see the CERTIFICATES | ||
137 | section for details). | ||
138 | |||
139 | -E fingerprint_hash | ||
140 | Specifies the hash algorithm used when displaying key | ||
141 | fingerprints. Valid options are: M-bM-^@M-^\md5M-bM-^@M-^] and M-bM-^@M-^\sha256M-bM-^@M-^]. The | ||
142 | default is M-bM-^@M-^\sha256M-bM-^@M-^]. | ||
143 | |||
144 | -e This option will read a private or public OpenSSH key file and | ||
145 | print to stdout a public key in one of the formats specified by | ||
146 | the -m option. The default export format is M-bM-^@M-^\RFC4716M-bM-^@M-^]. This | ||
147 | option allows exporting OpenSSH keys for use by other programs, | ||
148 | including several commercial SSH implementations. | ||
149 | |||
150 | -F hostname | [hostname]:port | ||
151 | Search for the specified hostname (with optional port number) in | ||
152 | a known_hosts file, listing any occurrences found. This option | ||
153 | is useful to find hashed host names or addresses and may also be | ||
154 | used in conjunction with the -H option to print found keys in a | ||
155 | hashed format. | ||
156 | |||
157 | -f filename | ||
158 | Specifies the filename of the key file. | ||
159 | |||
160 | -g Use generic DNS format when printing fingerprint resource records | ||
161 | using the -r command. | ||
162 | |||
163 | -H Hash a known_hosts file. This replaces all hostnames and | ||
164 | addresses with hashed representations within the specified file; | ||
165 | the original content is moved to a file with a .old suffix. | ||
166 | These hashes may be used normally by ssh and sshd, but they do | ||
167 | not reveal identifying information should the file's contents be | ||
168 | disclosed. This option will not modify existing hashed hostnames | ||
169 | and is therefore safe to use on files that mix hashed and non- | ||
170 | hashed names. | ||
171 | |||
172 | -h When signing a key, create a host certificate instead of a user | ||
173 | certificate. Please see the CERTIFICATES section for details. | ||
174 | |||
175 | -I certificate_identity | ||
176 | Specify the key identity when signing a public key. Please see | ||
177 | the CERTIFICATES section for details. | ||
178 | |||
179 | -i This option will read an unencrypted private (or public) key file | ||
180 | in the format specified by the -m option and print an OpenSSH | ||
181 | compatible private (or public) key to stdout. This option allows | ||
182 | importing keys from other software, including several commercial | ||
183 | SSH implementations. The default import format is M-bM-^@M-^\RFC4716M-bM-^@M-^]. | ||
184 | |||
185 | -K Download resident keys from a FIDO authenticator. Public and | ||
186 | private key files will be written to the current directory for | ||
187 | each downloaded key. If multiple FIDO authenticators are | ||
188 | attached, keys will be downloaded from the first touched | ||
189 | authenticator. | ||
190 | |||
191 | -k Generate a KRL file. In this mode, ssh-keygen will generate a | ||
192 | KRL file at the location specified via the -f flag that revokes | ||
193 | every key or certificate presented on the command line. | ||
194 | Keys/certificates to be revoked may be specified by public key | ||
195 | file or using the format described in the KEY REVOCATION LISTS | ||
196 | section. | ||
197 | |||
198 | -L Prints the contents of one or more certificates. | ||
199 | |||
200 | -l Show fingerprint of specified public key file. For RSA and DSA | ||
201 | keys ssh-keygen tries to find the matching public key file and | ||
202 | prints its fingerprint. If combined with -v, a visual ASCII art | ||
203 | representation of the key is supplied with the fingerprint. | ||
204 | |||
205 | -M generate | ||
206 | Generate candidate Diffie-Hellman Group Exchange (DH-GEX) | ||
207 | parameters for eventual use by the | ||
208 | M-bM-^@M-^Xdiffie-hellman-group-exchange-*M-bM-^@M-^Y key exchange methods. The | ||
209 | numbers generated by this operation must be further screened | ||
210 | before use. See the MODULI GENERATION section for more | ||
211 | information. | ||
212 | |||
213 | -M screen | ||
214 | Screen candidate parameters for Diffie-Hellman Group Exchange. | ||
215 | This will accept a list of candidate numbers and test that they | ||
216 | are safe (Sophie Germain) primes with acceptable group | ||
217 | generators. The results of this operation may be added to the | ||
218 | /etc/moduli file. See the MODULI GENERATION section for more | ||
219 | information. | ||
220 | |||
221 | -m key_format | ||
222 | Specify a key format for key generation, the -i (import), -e | ||
223 | (export) conversion options, and the -p change passphrase | ||
224 | operation. The latter may be used to convert between OpenSSH | ||
225 | private key and PEM private key formats. The supported key | ||
226 | formats are: M-bM-^@M-^\RFC4716M-bM-^@M-^] (RFC 4716/SSH2 public or private key), | ||
227 | M-bM-^@M-^\PKCS8M-bM-^@M-^] (PKCS8 public or private key) or M-bM-^@M-^\PEMM-bM-^@M-^] (PEM public key). | ||
228 | By default OpenSSH will write newly-generated private keys in its | ||
229 | own format, but when converting public keys for export the | ||
230 | default format is M-bM-^@M-^\RFC4716M-bM-^@M-^]. Setting a format of M-bM-^@M-^\PEMM-bM-^@M-^] when | ||
231 | generating or updating a supported private key type will cause | ||
232 | the key to be stored in the legacy PEM private key format. | ||
233 | |||
234 | -N new_passphrase | ||
235 | Provides the new passphrase. | ||
236 | |||
237 | -n principals | ||
238 | Specify one or more principals (user or host names) to be | ||
239 | included in a certificate when signing a key. Multiple | ||
240 | principals may be specified, separated by commas. Please see the | ||
241 | CERTIFICATES section for details. | ||
242 | |||
243 | -O option | ||
244 | Specify a key/value option. These are specific to the operation | ||
245 | that ssh-keygen has been requested to perform. | ||
246 | |||
247 | When signing certificates, one of the options listed in the | ||
248 | CERTIFICATES section may be specified here. | ||
249 | |||
250 | When performing moduli generation or screening, one of the | ||
251 | options listed in the MODULI GENERATION section may be specified. | ||
252 | |||
253 | When generating a key that will be hosted on a FIDO | ||
254 | authenticator, this flag may be used to specify key-specific | ||
255 | options. Those supported at present are: | ||
256 | |||
257 | application | ||
258 | Override the default FIDO application/origin string of | ||
259 | M-bM-^@M-^\ssh:M-bM-^@M-^]. This may be useful when generating host or | ||
260 | domain-specific resident keys. The specified application | ||
261 | string must begin with M-bM-^@M-^\ssh:M-bM-^@M-^]. | ||
262 | |||
263 | challenge=path | ||
264 | Specifies a path to a challenge string that will be | ||
265 | passed to the FIDO token during key generation. The | ||
266 | challenge string may be used as part of an out-of-band | ||
267 | protocol for key enrollment (a random challenge is used | ||
268 | by default). | ||
269 | |||
270 | device Explicitly specify a fido(4) device to use, rather than | ||
271 | letting the token middleware select one. | ||
272 | |||
273 | no-touch-required | ||
274 | Indicate that the generated private key should not | ||
275 | require touch events (user presence) when making | ||
276 | signatures. Note that sshd(8) will refuse such | ||
277 | signatures by default, unless overridden via an | ||
278 | authorized_keys option. | ||
279 | |||
280 | resident | ||
281 | Indicate that the key should be stored on the FIDO | ||
282 | authenticator itself. Resident keys may be supported on | ||
283 | FIDO2 tokens and typically require that a PIN be set on | ||
284 | the token prior to generation. Resident keys may be | ||
285 | loaded off the token using ssh-add(1). | ||
286 | |||
287 | user A username to be associated with a resident key, | ||
288 | overriding the empty default username. Specifying a | ||
289 | username may be useful when generating multiple resident | ||
290 | keys for the same application name. | ||
291 | |||
292 | verify-required | ||
293 | Indicate that this private key should require user | ||
294 | verification for each signature. Not all FIDO tokens | ||
295 | support this option. Currently PIN authentication is the | ||
296 | only supported verification method, but other methods may | ||
297 | be supported in the future. | ||
298 | |||
299 | write-attestation=path | ||
300 | May be used at key generation time to record the | ||
301 | attestation data returned from FIDO tokens during key | ||
302 | generation. Please note that this information is | ||
303 | potentially sensitive. By default, this information is | ||
304 | discarded. | ||
305 | |||
306 | The -O option may be specified multiple times. | ||
307 | |||
308 | -P passphrase | ||
309 | Provides the (old) passphrase. | ||
310 | |||
311 | -p Requests changing the passphrase of a private key file instead of | ||
312 | creating a new private key. The program will prompt for the file | ||
313 | containing the private key, for the old passphrase, and twice for | ||
314 | the new passphrase. | ||
315 | |||
316 | -Q Test whether keys have been revoked in a KRL. If the -l option | ||
317 | is also specified then the contents of the KRL will be printed. | ||
318 | |||
319 | -q Silence ssh-keygen. | ||
320 | |||
321 | -R hostname | [hostname]:port | ||
322 | Removes all keys belonging to the specified hostname (with | ||
323 | optional port number) from a known_hosts file. This option is | ||
324 | useful to delete hashed hosts (see the -H option above). | ||
325 | |||
326 | -r hostname | ||
327 | Print the SSHFP fingerprint resource record named hostname for | ||
328 | the specified public key file. | ||
329 | |||
330 | -s ca_key | ||
331 | Certify (sign) a public key using the specified CA key. Please | ||
332 | see the CERTIFICATES section for details. | ||
333 | |||
334 | When generating a KRL, -s specifies a path to a CA public key | ||
335 | file used to revoke certificates directly by key ID or serial | ||
336 | number. See the KEY REVOCATION LISTS section for details. | ||
337 | |||
338 | -t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa | ||
339 | Specifies the type of key to create. The possible values are | ||
340 | M-bM-^@M-^\dsaM-bM-^@M-^], M-bM-^@M-^\ecdsaM-bM-^@M-^], M-bM-^@M-^\ecdsa-skM-bM-^@M-^], M-bM-^@M-^\ed25519M-bM-^@M-^], M-bM-^@M-^\ed25519-skM-bM-^@M-^], or M-bM-^@M-^\rsaM-bM-^@M-^]. | ||
341 | |||
342 | This flag may also be used to specify the desired signature type | ||
343 | when signing certificates using an RSA CA key. The available RSA | ||
344 | signature variants are M-bM-^@M-^\ssh-rsaM-bM-^@M-^] (SHA1 signatures, not | ||
345 | recommended), M-bM-^@M-^\rsa-sha2-256M-bM-^@M-^], and M-bM-^@M-^\rsa-sha2-512M-bM-^@M-^] (the default). | ||
346 | |||
347 | -U When used in combination with -s, this option indicates that a CA | ||
348 | key resides in a ssh-agent(1). See the CERTIFICATES section for | ||
349 | more information. | ||
350 | |||
351 | -u Update a KRL. When specified with -k, keys listed via the | ||
352 | command line are added to the existing KRL rather than a new KRL | ||
353 | being created. | ||
354 | |||
355 | -V validity_interval | ||
356 | Specify a validity interval when signing a certificate. A | ||
357 | validity interval may consist of a single time, indicating that | ||
358 | the certificate is valid beginning now and expiring at that time, | ||
359 | or may consist of two times separated by a colon to indicate an | ||
360 | explicit time interval. | ||
361 | |||
362 | The start time may be specified as the string M-bM-^@M-^\alwaysM-bM-^@M-^] to | ||
363 | indicate the certificate has no specified start time, a date in | ||
364 | YYYYMMDD format, a time in YYYYMMDDHHMM[SS] format, a relative | ||
365 | time (to the current time) consisting of a minus sign followed by | ||
366 | an interval in the format described in the TIME FORMATS section | ||
367 | of sshd_config(5). | ||
368 | |||
369 | The end time may be specified as a YYYYMMDD date, a | ||
370 | YYYYMMDDHHMM[SS] time, a relative time starting with a plus | ||
371 | character or the string M-bM-^@M-^\foreverM-bM-^@M-^] to indicate that the | ||
372 | certificate has no expiry date. | ||
373 | |||
374 | For example: M-bM-^@M-^\+52w1dM-bM-^@M-^] (valid from now to 52 weeks and one day | ||
375 | from now), M-bM-^@M-^\-4w:+4wM-bM-^@M-^] (valid from four weeks ago to four weeks | ||
376 | from now), M-bM-^@M-^\20100101123000:20110101123000M-bM-^@M-^] (valid from 12:30 PM, | ||
377 | January 1st, 2010 to 12:30 PM, January 1st, 2011), M-bM-^@M-^\-1d:20110101M-bM-^@M-^] | ||
378 | (valid from yesterday to midnight, January 1st, 2011). | ||
379 | M-bM-^@M-^\-1m:foreverM-bM-^@M-^] (valid from one minute ago and never expiring). | ||
380 | |||
381 | -v Verbose mode. Causes ssh-keygen to print debugging messages | ||
382 | about its progress. This is helpful for debugging moduli | ||
383 | generation. Multiple -v options increase the verbosity. The | ||
384 | maximum is 3. | ||
385 | |||
386 | -w provider | ||
387 | Specifies a path to a library that will be used when creating | ||
388 | FIDO authenticator-hosted keys, overriding the default of using | ||
389 | the internal USB HID support. | ||
390 | |||
391 | -Y find-principals | ||
392 | Find the principal(s) associated with the public key of a | ||
393 | signature, provided using the -s flag in an authorized signers | ||
394 | file provided using the -f flag. The format of the allowed | ||
395 | signers file is documented in the ALLOWED SIGNERS section below. | ||
396 | If one or more matching principals are found, they are returned | ||
397 | on standard output. | ||
398 | |||
399 | -Y check-novalidate | ||
400 | Checks that a signature generated using ssh-keygen -Y sign has a | ||
401 | valid structure. This does not validate if a signature comes | ||
402 | from an authorized signer. When testing a signature, ssh-keygen | ||
403 | accepts a message on standard input and a signature namespace | ||
404 | using -n. A file containing the corresponding signature must | ||
405 | also be supplied using the -s flag. Successful testing of the | ||
406 | signature is signalled by ssh-keygen returning a zero exit | ||
407 | status. | ||
408 | |||
409 | -Y sign | ||
410 | Cryptographically sign a file or some data using a SSH key. When | ||
411 | signing, ssh-keygen accepts zero or more files to sign on the | ||
412 | command-line - if no files are specified then ssh-keygen will | ||
413 | sign data presented on standard input. Signatures are written to | ||
414 | the path of the input file with M-bM-^@M-^\.sigM-bM-^@M-^] appended, or to standard | ||
415 | output if the message to be signed was read from standard input. | ||
416 | |||
417 | The key used for signing is specified using the -f option and may | ||
418 | refer to either a private key, or a public key with the private | ||
419 | half available via ssh-agent(1). An additional signature | ||
420 | namespace, used to prevent signature confusion across different | ||
421 | domains of use (e.g. file signing vs email signing) must be | ||
422 | provided via the -n flag. Namespaces are arbitrary strings, and | ||
423 | may include: M-bM-^@M-^\fileM-bM-^@M-^] for file signing, M-bM-^@M-^\emailM-bM-^@M-^] for email signing. | ||
424 | For custom uses, it is recommended to use names following a | ||
425 | NAMESPACE@YOUR.DOMAIN pattern to generate unambiguous namespaces. | ||
426 | |||
427 | -Y verify | ||
428 | Request to verify a signature generated using ssh-keygen -Y sign | ||
429 | as described above. When verifying a signature, ssh-keygen | ||
430 | accepts a message on standard input and a signature namespace | ||
431 | using -n. A file containing the corresponding signature must | ||
432 | also be supplied using the -s flag, along with the identity of | ||
433 | the signer using -I and a list of allowed signers via the -f | ||
434 | flag. The format of the allowed signers file is documented in | ||
435 | the ALLOWED SIGNERS section below. A file containing revoked | ||
436 | keys can be passed using the -r flag. The revocation file may be | ||
437 | a KRL or a one-per-line list of public keys. Successful | ||
438 | verification by an authorized signer is signalled by ssh-keygen | ||
439 | returning a zero exit status. | ||
440 | |||
441 | -y This option will read a private OpenSSH format file and print an | ||
442 | OpenSSH public key to stdout. | ||
443 | |||
444 | -z serial_number | ||
445 | Specifies a serial number to be embedded in the certificate to | ||
446 | distinguish this certificate from others from the same CA. If | ||
447 | the serial_number is prefixed with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the | ||
448 | serial number will be incremented for each certificate signed on | ||
449 | a single command-line. The default serial number is zero. | ||
450 | |||
451 | When generating a KRL, the -z flag is used to specify a KRL | ||
452 | version number. | ||
453 | |||
454 | MODULI GENERATION | ||
455 | ssh-keygen may be used to generate groups for the Diffie-Hellman Group | ||
456 | Exchange (DH-GEX) protocol. Generating these groups is a two-step | ||
457 | process: first, candidate primes are generated using a fast, but memory | ||
458 | intensive process. These candidate primes are then tested for | ||
459 | suitability (a CPU-intensive process). | ||
460 | |||
461 | Generation of primes is performed using the -M generate option. The | ||
462 | desired length of the primes may be specified by the -O bits option. For | ||
463 | example: | ||
464 | |||
465 | # ssh-keygen -M generate -O bits=2048 moduli-2048.candidates | ||
466 | |||
467 | By default, the search for primes begins at a random point in the desired | ||
468 | length range. This may be overridden using the -O start option, which | ||
469 | specifies a different start point (in hex). | ||
470 | |||
471 | Once a set of candidates have been generated, they must be screened for | ||
472 | suitability. This may be performed using the -M screen option. In this | ||
473 | mode ssh-keygen will read candidates from standard input (or a file | ||
474 | specified using the -f option). For example: | ||
475 | |||
476 | # ssh-keygen -M screen -f moduli-2048.candidates moduli-2048 | ||
477 | |||
478 | By default, each candidate will be subjected to 100 primality tests. | ||
479 | This may be overridden using the -O prime-tests option. The DH generator | ||
480 | value will be chosen automatically for the prime under consideration. If | ||
481 | a specific generator is desired, it may be requested using the -O | ||
482 | generator option. Valid generator values are 2, 3, and 5. | ||
483 | |||
484 | Screened DH groups may be installed in /etc/moduli. It is important that | ||
485 | this file contains moduli of a range of bit lengths and that both ends of | ||
486 | a connection share common moduli. | ||
487 | |||
488 | A number of options are available for moduli generation and screening via | ||
489 | the -O flag: | ||
490 | |||
491 | lines=number | ||
492 | Exit after screening the specified number of lines while | ||
493 | performing DH candidate screening. | ||
494 | |||
495 | start-line=line-number | ||
496 | Start screening at the specified line number while performing DH | ||
497 | candidate screening. | ||
498 | |||
499 | checkpoint=filename | ||
500 | Write the last line processed to the specified file while | ||
501 | performing DH candidate screening. This will be used to skip | ||
502 | lines in the input file that have already been processed if the | ||
503 | job is restarted. | ||
504 | |||
505 | memory=mbytes | ||
506 | Specify the amount of memory to use (in megabytes) when | ||
507 | generating candidate moduli for DH-GEX. | ||
508 | |||
509 | start=hex-value | ||
510 | Specify start point (in hex) when generating candidate moduli for | ||
511 | DH-GEX. | ||
512 | |||
513 | generator=value | ||
514 | Specify desired generator (in decimal) when testing candidate | ||
515 | moduli for DH-GEX. | ||
516 | |||
517 | CERTIFICATES | ||
518 | ssh-keygen supports signing of keys to produce certificates that may be | ||
519 | used for user or host authentication. Certificates consist of a public | ||
520 | key, some identity information, zero or more principal (user or host) | ||
521 | names and a set of options that are signed by a Certification Authority | ||
522 | (CA) key. Clients or servers may then trust only the CA key and verify | ||
523 | its signature on a certificate rather than trusting many user/host keys. | ||
524 | Note that OpenSSH certificates are a different, and much simpler, format | ||
525 | to the X.509 certificates used in ssl(8). | ||
526 | |||
527 | ssh-keygen supports two types of certificates: user and host. User | ||
528 | certificates authenticate users to servers, whereas host certificates | ||
529 | authenticate server hosts to users. To generate a user certificate: | ||
530 | |||
531 | $ ssh-keygen -s /path/to/ca_key -I key_id /path/to/user_key.pub | ||
532 | |||
533 | The resultant certificate will be placed in /path/to/user_key-cert.pub. | ||
534 | A host certificate requires the -h option: | ||
535 | |||
536 | $ ssh-keygen -s /path/to/ca_key -I key_id -h /path/to/host_key.pub | ||
537 | |||
538 | The host certificate will be output to /path/to/host_key-cert.pub. | ||
539 | |||
540 | It is possible to sign using a CA key stored in a PKCS#11 token by | ||
541 | providing the token library using -D and identifying the CA key by | ||
542 | providing its public half as an argument to -s: | ||
543 | |||
544 | $ ssh-keygen -s ca_key.pub -D libpkcs11.so -I key_id user_key.pub | ||
545 | |||
546 | Similarly, it is possible for the CA key to be hosted in a ssh-agent(1). | ||
547 | This is indicated by the -U flag and, again, the CA key must be | ||
548 | identified by its public half. | ||
549 | |||
550 | $ ssh-keygen -Us ca_key.pub -I key_id user_key.pub | ||
551 | |||
552 | In all cases, key_id is a "key identifier" that is logged by the server | ||
553 | when the certificate is used for authentication. | ||
554 | |||
555 | Certificates may be limited to be valid for a set of principal | ||
556 | (user/host) names. By default, generated certificates are valid for all | ||
557 | users or hosts. To generate a certificate for a specified set of | ||
558 | principals: | ||
559 | |||
560 | $ ssh-keygen -s ca_key -I key_id -n user1,user2 user_key.pub | ||
561 | $ ssh-keygen -s ca_key -I key_id -h -n host.domain host_key.pub | ||
562 | |||
563 | Additional limitations on the validity and use of user certificates may | ||
564 | be specified through certificate options. A certificate option may | ||
565 | disable features of the SSH session, may be valid only when presented | ||
566 | from particular source addresses or may force the use of a specific | ||
567 | command. | ||
568 | |||
569 | The options that are valid for user certificates are: | ||
570 | |||
571 | clear Clear all enabled permissions. This is useful for clearing the | ||
572 | default set of permissions so permissions may be added | ||
573 | individually. | ||
574 | |||
575 | critical:name[=contents] | ||
576 | extension:name[=contents] | ||
577 | Includes an arbitrary certificate critical option or extension. | ||
578 | The specified name should include a domain suffix, e.g. | ||
579 | M-bM-^@M-^\name@example.comM-bM-^@M-^]. If contents is specified then it is included | ||
580 | as the contents of the extension/option encoded as a string, | ||
581 | otherwise the extension/option is created with no contents | ||
582 | (usually indicating a flag). Extensions may be ignored by a | ||
583 | client or server that does not recognise them, whereas unknown | ||
584 | critical options will cause the certificate to be refused. | ||
585 | |||
586 | force-command=command | ||
587 | Forces the execution of command instead of any shell or command | ||
588 | specified by the user when the certificate is used for | ||
589 | authentication. | ||
590 | |||
591 | no-agent-forwarding | ||
592 | Disable ssh-agent(1) forwarding (permitted by default). | ||
593 | |||
594 | no-port-forwarding | ||
595 | Disable port forwarding (permitted by default). | ||
596 | |||
597 | no-pty Disable PTY allocation (permitted by default). | ||
598 | |||
599 | no-user-rc | ||
600 | Disable execution of ~/.ssh/rc by sshd(8) (permitted by default). | ||
601 | |||
602 | no-x11-forwarding | ||
603 | Disable X11 forwarding (permitted by default). | ||
604 | |||
605 | permit-agent-forwarding | ||
606 | Allows ssh-agent(1) forwarding. | ||
607 | |||
608 | permit-port-forwarding | ||
609 | Allows port forwarding. | ||
610 | |||
611 | permit-pty | ||
612 | Allows PTY allocation. | ||
613 | |||
614 | permit-user-rc | ||
615 | Allows execution of ~/.ssh/rc by sshd(8). | ||
616 | |||
617 | permit-X11-forwarding | ||
618 | Allows X11 forwarding. | ||
619 | |||
620 | no-touch-required | ||
621 | Do not require signatures made using this key include | ||
622 | demonstration of user presence (e.g. by having the user touch the | ||
623 | authenticator). This option only makes sense for the FIDO | ||
624 | authenticator algorithms ecdsa-sk and ed25519-sk. | ||
625 | |||
626 | source-address=address_list | ||
627 | Restrict the source addresses from which the certificate is | ||
628 | considered valid. The address_list is a comma-separated list of | ||
629 | one or more address/netmask pairs in CIDR format. | ||
630 | |||
631 | verify-required | ||
632 | Require signatures made using this key indicate that the user was | ||
633 | first verified. This option only makes sense for the FIDO | ||
634 | authenticator algorithms ecdsa-sk and ed25519-sk. Currently PIN | ||
635 | authentication is the only supported verification method, but | ||
636 | other methods may be supported in the future. | ||
637 | |||
638 | At present, no standard options are valid for host keys. | ||
639 | |||
640 | Finally, certificates may be defined with a validity lifetime. The -V | ||
641 | option allows specification of certificate start and end times. A | ||
642 | certificate that is presented at a time outside this range will not be | ||
643 | considered valid. By default, certificates are valid from UNIX Epoch to | ||
644 | the distant future. | ||
645 | |||
646 | For certificates to be used for user or host authentication, the CA | ||
647 | public key must be trusted by sshd(8) or ssh(1). Please refer to those | ||
648 | manual pages for details. | ||
649 | |||
650 | KEY REVOCATION LISTS | ||
651 | ssh-keygen is able to manage OpenSSH format Key Revocation Lists (KRLs). | ||
652 | These binary files specify keys or certificates to be revoked using a | ||
653 | compact format, taking as little as one bit per certificate if they are | ||
654 | being revoked by serial number. | ||
655 | |||
656 | KRLs may be generated using the -k flag. This option reads one or more | ||
657 | files from the command line and generates a new KRL. The files may | ||
658 | either contain a KRL specification (see below) or public keys, listed one | ||
659 | per line. Plain public keys are revoked by listing their hash or | ||
660 | contents in the KRL and certificates revoked by serial number or key ID | ||
661 | (if the serial is zero or not available). | ||
662 | |||
663 | Revoking keys using a KRL specification offers explicit control over the | ||
664 | types of record used to revoke keys and may be used to directly revoke | ||
665 | certificates by serial number or key ID without having the complete | ||
666 | original certificate on hand. A KRL specification consists of lines | ||
667 | containing one of the following directives followed by a colon and some | ||
668 | directive-specific information. | ||
669 | |||
670 | serial: serial_number[-serial_number] | ||
671 | Revokes a certificate with the specified serial number. Serial | ||
672 | numbers are 64-bit values, not including zero and may be | ||
673 | expressed in decimal, hex or octal. If two serial numbers are | ||
674 | specified separated by a hyphen, then the range of serial numbers | ||
675 | including and between each is revoked. The CA key must have been | ||
676 | specified on the ssh-keygen command line using the -s option. | ||
677 | |||
678 | id: key_id | ||
679 | Revokes a certificate with the specified key ID string. The CA | ||
680 | key must have been specified on the ssh-keygen command line using | ||
681 | the -s option. | ||
682 | |||
683 | key: public_key | ||
684 | Revokes the specified key. If a certificate is listed, then it | ||
685 | is revoked as a plain public key. | ||
686 | |||
687 | sha1: public_key | ||
688 | Revokes the specified key by including its SHA1 hash in the KRL. | ||
689 | |||
690 | sha256: public_key | ||
691 | Revokes the specified key by including its SHA256 hash in the | ||
692 | KRL. KRLs that revoke keys by SHA256 hash are not supported by | ||
693 | OpenSSH versions prior to 7.9. | ||
694 | |||
695 | hash: fingerprint | ||
696 | Revokes a key using a fingerprint hash, as obtained from a | ||
697 | sshd(8) authentication log message or the ssh-keygen -l flag. | ||
698 | Only SHA256 fingerprints are supported here and resultant KRLs | ||
699 | are not supported by OpenSSH versions prior to 7.9. | ||
700 | |||
701 | KRLs may be updated using the -u flag in addition to -k. When this | ||
702 | option is specified, keys listed via the command line are merged into the | ||
703 | KRL, adding to those already there. | ||
704 | |||
705 | It is also possible, given a KRL, to test whether it revokes a particular | ||
706 | key (or keys). The -Q flag will query an existing KRL, testing each key | ||
707 | specified on the command line. If any key listed on the command line has | ||
708 | been revoked (or an error encountered) then ssh-keygen will exit with a | ||
709 | non-zero exit status. A zero exit status will only be returned if no key | ||
710 | was revoked. | ||
711 | |||
712 | ALLOWED SIGNERS | ||
713 | When verifying signatures, ssh-keygen uses a simple list of identities | ||
714 | and keys to determine whether a signature comes from an authorized | ||
715 | source. This "allowed signers" file uses a format patterned after the | ||
716 | AUTHORIZED_KEYS FILE FORMAT described in sshd(8). Each line of the file | ||
717 | contains the following space-separated fields: principals, options, | ||
718 | keytype, base64-encoded key. Empty lines and lines starting with a M-bM-^@M-^X#M-bM-^@M-^Y | ||
719 | are ignored as comments. | ||
720 | |||
721 | The principals field is a pattern-list (See PATTERNS in ssh_config(5)) | ||
722 | consisting of one or more comma-separated USER@DOMAIN identity patterns | ||
723 | that are accepted for signing. When verifying, the identity presented | ||
724 | via the -I option must match a principals pattern in order for the | ||
725 | corresponding key to be considered acceptable for verification. | ||
726 | |||
727 | The options (if present) consist of comma-separated option | ||
728 | specifications. No spaces are permitted, except within double quotes. | ||
729 | The following option specifications are supported (note that option | ||
730 | keywords are case-insensitive): | ||
731 | |||
732 | cert-authority | ||
733 | Indicates that this key is accepted as a certificate authority | ||
734 | (CA) and that certificates signed by this CA may be accepted for | ||
735 | verification. | ||
736 | |||
737 | namespaces="namespace-list" | ||
738 | Specifies a pattern-list of namespaces that are accepted for this | ||
739 | key. If this option is present, the signature namespace embedded | ||
740 | in the signature object and presented on the verification | ||
741 | command-line must match the specified list before the key will be | ||
742 | considered acceptable. | ||
743 | |||
744 | When verifying signatures made by certificates, the expected principal | ||
745 | name must match both the principals pattern in the allowed signers file | ||
746 | and the principals embedded in the certificate itself. | ||
747 | |||
748 | An example allowed signers file: | ||
749 | |||
750 | # Comments allowed at start of line | ||
751 | user1@example.com,user2@example.com ssh-rsa AAAAX1... | ||
752 | # A certificate authority, trusted for all principals in a domain. | ||
753 | *@example.com cert-authority ssh-ed25519 AAAB4... | ||
754 | # A key that is accepted only for file signing. | ||
755 | user2@example.com namespaces="file" ssh-ed25519 AAA41... | ||
756 | |||
757 | ENVIRONMENT | ||
758 | SSH_SK_PROVIDER | ||
759 | Specifies a path to a library that will be used when loading any | ||
760 | FIDO authenticator-hosted keys, overriding the default of using | ||
761 | the built-in USB HID support. | ||
762 | |||
763 | FILES | ||
764 | ~/.ssh/id_dsa | ||
765 | ~/.ssh/id_ecdsa | ||
766 | ~/.ssh/id_ecdsa_sk | ||
767 | ~/.ssh/id_ed25519 | ||
768 | ~/.ssh/id_ed25519_sk | ||
769 | ~/.ssh/id_rsa | ||
770 | Contains the DSA, ECDSA, authenticator-hosted ECDSA, Ed25519, | ||
771 | authenticator-hosted Ed25519 or RSA authentication identity of | ||
772 | the user. This file should not be readable by anyone but the | ||
773 | user. It is possible to specify a passphrase when generating the | ||
774 | key; that passphrase will be used to encrypt the private part of | ||
775 | this file using 128-bit AES. This file is not automatically | ||
776 | accessed by ssh-keygen but it is offered as the default file for | ||
777 | the private key. ssh(1) will read this file when a login attempt | ||
778 | is made. | ||
779 | |||
780 | ~/.ssh/id_dsa.pub | ||
781 | ~/.ssh/id_ecdsa.pub | ||
782 | ~/.ssh/id_ecdsa_sk.pub | ||
783 | ~/.ssh/id_ed25519.pub | ||
784 | ~/.ssh/id_ed25519_sk.pub | ||
785 | ~/.ssh/id_rsa.pub | ||
786 | Contains the DSA, ECDSA, authenticator-hosted ECDSA, Ed25519, | ||
787 | authenticator-hosted Ed25519 or RSA public key for | ||
788 | authentication. The contents of this file should be added to | ||
789 | ~/.ssh/authorized_keys on all machines where the user wishes to | ||
790 | log in using public key authentication. There is no need to keep | ||
791 | the contents of this file secret. | ||
792 | |||
793 | /etc/moduli | ||
794 | Contains Diffie-Hellman groups used for DH-GEX. The file format | ||
795 | is described in moduli(5). | ||
796 | |||
797 | SEE ALSO | ||
798 | ssh(1), ssh-add(1), ssh-agent(1), moduli(5), sshd(8) | ||
799 | |||
800 | The Secure Shell (SSH) Public Key File Format, RFC 4716, 2006. | ||
801 | |||
802 | AUTHORS | ||
803 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
804 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
805 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
806 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
807 | versions 1.5 and 2.0. | ||
808 | |||
809 | OpenBSD 6.8 September 9, 2020 OpenBSD 6.8 | ||
diff --git a/ssh-keyscan.0 b/ssh-keyscan.0 new file mode 100644 index 000000000..1a5fefcbf --- /dev/null +++ b/ssh-keyscan.0 | |||
@@ -0,0 +1,96 @@ | |||
1 | SSH-KEYSCAN(1) General Commands Manual SSH-KEYSCAN(1) | ||
2 | |||
3 | NAME | ||
4 | ssh-keyscan M-bM-^@M-^S gather SSH public keys from servers | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keyscan [-46cDHv] [-f file] [-p port] [-T timeout] [-t type] | ||
8 | [host | addrlist namelist] | ||
9 | |||
10 | DESCRIPTION | ||
11 | ssh-keyscan is a utility for gathering the public SSH host keys of a | ||
12 | number of hosts. It was designed to aid in building and verifying | ||
13 | ssh_known_hosts files, 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 | |||
71 | FILES | ||
72 | /etc/ssh/ssh_known_hosts | ||
73 | |||
74 | EXAMPLES | ||
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 | |||
85 | SEE ALSO | ||
86 | ssh(1), sshd(8) | ||
87 | |||
88 | Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints, RFC | ||
89 | 4255, 2006. | ||
90 | |||
91 | AUTHORS | ||
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 | |||
96 | OpenBSD 6.8 November 30, 2019 OpenBSD 6.8 | ||
diff --git a/ssh-keysign.0 b/ssh-keysign.0 new file mode 100644 index 000000000..b4ec3cc64 --- /dev/null +++ b/ssh-keysign.0 | |||
@@ -0,0 +1,52 @@ | |||
1 | SSH-KEYSIGN(8) System Manager's Manual SSH-KEYSIGN(8) | ||
2 | |||
3 | NAME | ||
4 | ssh-keysign M-bM-^@M-^S OpenSSH helper for host-based authentication | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-keysign | ||
8 | |||
9 | DESCRIPTION | ||
10 | ssh-keysign is used by ssh(1) to access the local host keys and generate | ||
11 | the digital signature required during host-based authentication. | ||
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 | |||
21 | FILES | ||
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 | |||
43 | SEE ALSO | ||
44 | ssh(1), ssh-keygen(1), ssh_config(5), sshd(8) | ||
45 | |||
46 | HISTORY | ||
47 | ssh-keysign first appeared in OpenBSD 3.2. | ||
48 | |||
49 | AUTHORS | ||
50 | Markus Friedl <markus@openbsd.org> | ||
51 | |||
52 | OpenBSD 6.8 November 30, 2019 OpenBSD 6.8 | ||
diff --git a/ssh-pkcs11-helper.0 b/ssh-pkcs11-helper.0 new file mode 100644 index 000000000..973b551a5 --- /dev/null +++ b/ssh-pkcs11-helper.0 | |||
@@ -0,0 +1,35 @@ | |||
1 | SSH-PKCS11-HELPER(8) System Manager's Manual SSH-PKCS11-HELPER(8) | ||
2 | |||
3 | NAME | ||
4 | ssh-pkcs11-helper M-bM-^@M-^S OpenSSH helper for PKCS#11 support | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-pkcs11-helper [-v] | ||
8 | |||
9 | DESCRIPTION | ||
10 | ssh-pkcs11-helper is used by ssh-agent(1) to access keys provided by a | ||
11 | PKCS#11 token. | ||
12 | |||
13 | ssh-pkcs11-helper is not intended to be invoked by the user, but from | ||
14 | ssh-agent(1). | ||
15 | |||
16 | A single option is supported: | ||
17 | |||
18 | -v Verbose mode. Causes ssh-pkcs11-helper to print debugging | ||
19 | messages about its progress. This is helpful in debugging | ||
20 | problems. Multiple -v options increase the verbosity. The | ||
21 | maximum is 3. | ||
22 | |||
23 | Note that ssh-agent(1) will automatically pass the -v flag to | ||
24 | ssh-pkcs11-helper when it has itself been placed in debug mode. | ||
25 | |||
26 | SEE ALSO | ||
27 | ssh(1), ssh-add(1), ssh-agent(1) | ||
28 | |||
29 | HISTORY | ||
30 | ssh-pkcs11-helper first appeared in OpenBSD 4.7. | ||
31 | |||
32 | AUTHORS | ||
33 | Markus Friedl <markus@openbsd.org> | ||
34 | |||
35 | OpenBSD 6.8 November 30, 2019 OpenBSD 6.8 | ||
diff --git a/ssh-sk-helper.0 b/ssh-sk-helper.0 new file mode 100644 index 000000000..091f00e74 --- /dev/null +++ b/ssh-sk-helper.0 | |||
@@ -0,0 +1,34 @@ | |||
1 | SSH-SK-HELPER(8) System Manager's Manual SSH-SK-HELPER(8) | ||
2 | |||
3 | NAME | ||
4 | ssh-sk-helper M-bM-^@M-^S OpenSSH helper for FIDO authenticator support | ||
5 | |||
6 | SYNOPSIS | ||
7 | ssh-sk-helper [-v] | ||
8 | |||
9 | DESCRIPTION | ||
10 | ssh-sk-helper is used by ssh-agent(1) to access keys provided by a FIDO | ||
11 | authenticator. | ||
12 | |||
13 | ssh-sk-helper is not intended to be invoked by the user, but from | ||
14 | ssh-agent(1). | ||
15 | |||
16 | A single option is supported: | ||
17 | |||
18 | -v Verbose mode. Causes ssh-sk-helper to print debugging messages | ||
19 | about its progress. This is helpful in debugging problems. | ||
20 | Multiple -v options increase the verbosity. The maximum is 3. | ||
21 | |||
22 | Note that ssh-agent(1) will automatically pass the -v flag to | ||
23 | ssh-sk-helper when it has itself been placed in debug mode. | ||
24 | |||
25 | SEE ALSO | ||
26 | ssh(1), ssh-add(1), ssh-agent(1) | ||
27 | |||
28 | HISTORY | ||
29 | ssh-sk-helper first appeared in OpenBSD 6.7. | ||
30 | |||
31 | AUTHORS | ||
32 | Damien Miller <djm@openbsd.org> | ||
33 | |||
34 | OpenBSD 6.8 December 21, 2019 OpenBSD 6.8 | ||
@@ -0,0 +1,1002 @@ | |||
1 | SSH(1) General Commands Manual SSH(1) | ||
2 | |||
3 | NAME | ||
4 | ssh M-bM-^@M-^S OpenSSH remote login client | ||
5 | |||
6 | SYNOPSIS | ||
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 | |||
15 | DESCRIPTION | ||
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 connections from an authentication agent | ||
37 | such as ssh-agent(1). This can also be specified on a per-host | ||
38 | basis in a configuration 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. A safer alternative may be to use a jump host (see | ||
47 | -J). | ||
48 | |||
49 | -a Disables forwarding of the authentication agent connection. | ||
50 | |||
51 | -B bind_interface | ||
52 | Bind to the address of bind_interface before attempting to | ||
53 | connect to the destination host. This is only useful on systems | ||
54 | with more than one address. | ||
55 | |||
56 | -b bind_address | ||
57 | Use bind_address on the local machine as the source address of | ||
58 | the connection. Only useful on systems with more than one | ||
59 | address. | ||
60 | |||
61 | -C Requests compression of all data (including stdin, stdout, | ||
62 | stderr, and data for forwarded X11, TCP and UNIX-domain | ||
63 | connections). The compression algorithm is the same used by | ||
64 | gzip(1). Compression is desirable on modem lines and other slow | ||
65 | connections, but will only slow down things on fast networks. | ||
66 | The default value can be set on a host-by-host basis in the | ||
67 | configuration files; see the Compression option. | ||
68 | |||
69 | -c cipher_spec | ||
70 | Selects the cipher specification for encrypting the session. | ||
71 | cipher_spec is a comma-separated list of ciphers listed in order | ||
72 | of preference. See the Ciphers keyword in ssh_config(5) for more | ||
73 | information. | ||
74 | |||
75 | -D [bind_address:]port | ||
76 | Specifies a local M-bM-^@M-^\dynamicM-bM-^@M-^] application-level port forwarding. | ||
77 | This works by allocating a socket to listen to port on the local | ||
78 | side, optionally bound to the specified bind_address. Whenever a | ||
79 | connection is made to this port, the connection is forwarded over | ||
80 | the secure channel, and the application protocol is then used to | ||
81 | determine where to connect to from the remote machine. Currently | ||
82 | the SOCKS4 and SOCKS5 protocols are supported, and ssh will act | ||
83 | as a SOCKS server. Only root can forward privileged ports. | ||
84 | Dynamic port forwardings can also be specified in the | ||
85 | configuration file. | ||
86 | |||
87 | IPv6 addresses can be specified by enclosing the address in | ||
88 | square brackets. Only the superuser can forward privileged | ||
89 | ports. By default, the local port is bound in accordance with | ||
90 | the GatewayPorts setting. However, an explicit bind_address may | ||
91 | be used to bind the connection to a specific address. The | ||
92 | bind_address of M-bM-^@M-^\localhostM-bM-^@M-^] indicates that the listening port be | ||
93 | bound for local use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates | ||
94 | that the port should be available from all interfaces. | ||
95 | |||
96 | -E log_file | ||
97 | Append debug logs to log_file instead of standard error. | ||
98 | |||
99 | -e escape_char | ||
100 | Sets the escape character for sessions with a pty (default: M-bM-^@M-^X~M-bM-^@M-^Y). | ||
101 | The escape character is only recognized at the beginning of a | ||
102 | line. The escape character followed by a dot (M-bM-^@M-^X.M-bM-^@M-^Y) closes the | ||
103 | connection; followed by control-Z suspends the connection; and | ||
104 | followed by itself sends the escape character once. Setting the | ||
105 | character to M-bM-^@M-^\noneM-bM-^@M-^] disables any escapes and makes the session | ||
106 | fully transparent. | ||
107 | |||
108 | -F configfile | ||
109 | Specifies an alternative per-user configuration file. If a | ||
110 | configuration file is given on the command line, the system-wide | ||
111 | configuration file (/etc/ssh/ssh_config) will be ignored. The | ||
112 | default for the per-user configuration file is ~/.ssh/config. If | ||
113 | set to M-bM-^@M-^\noneM-bM-^@M-^], no configuration files will be read. | ||
114 | |||
115 | -f Requests ssh to go to background just before command execution. | ||
116 | This is useful if ssh is going to ask for passwords or | ||
117 | passphrases, but the user wants it in the background. This | ||
118 | implies -n. The recommended way to start X11 programs at a | ||
119 | remote site is with something like ssh -f host xterm. | ||
120 | |||
121 | If the ExitOnForwardFailure configuration option is set to M-bM-^@M-^\yesM-bM-^@M-^], | ||
122 | then a client started with -f will wait for all remote port | ||
123 | forwards to be successfully established before placing itself in | ||
124 | the background. | ||
125 | |||
126 | -G Causes ssh to print its configuration after evaluating Host and | ||
127 | Match blocks and exit. | ||
128 | |||
129 | -g Allows remote hosts to connect to local forwarded ports. If used | ||
130 | on a multiplexed connection, then this option must be specified | ||
131 | on the master process. | ||
132 | |||
133 | -I pkcs11 | ||
134 | Specify the PKCS#11 shared library ssh should use to communicate | ||
135 | with a PKCS#11 token providing keys for user authentication. | ||
136 | |||
137 | -i identity_file | ||
138 | Selects a file from which the identity (private key) for public | ||
139 | key authentication is read. The default is ~/.ssh/id_dsa, | ||
140 | ~/.ssh/id_ecdsa, ~/.ssh/id_ecdsa_sk, ~/.ssh/id_ed25519, | ||
141 | ~/.ssh/id_ed25519_sk and ~/.ssh/id_rsa. Identity files may also | ||
142 | be specified on a per-host basis in the configuration file. It | ||
143 | is possible to have multiple -i options (and multiple identities | ||
144 | specified in configuration files). If no certificates have been | ||
145 | explicitly specified by the CertificateFile directive, ssh will | ||
146 | also try to load certificate information from the filename | ||
147 | obtained by appending -cert.pub to identity filenames. | ||
148 | |||
149 | -J destination | ||
150 | Connect to the target host by first making a ssh connection to | ||
151 | the jump host described by destination and then establishing a | ||
152 | TCP forwarding to the ultimate destination from there. Multiple | ||
153 | jump hops may be specified separated by comma characters. This | ||
154 | is a shortcut to specify a ProxyJump configuration directive. | ||
155 | Note that configuration directives supplied on the command-line | ||
156 | generally apply to the destination host and not any specified | ||
157 | jump hosts. Use ~/.ssh/config to specify configuration for jump | ||
158 | hosts. | ||
159 | |||
160 | -K Enables GSSAPI-based authentication and forwarding (delegation) | ||
161 | of GSSAPI credentials to the server. | ||
162 | |||
163 | -k Disables forwarding (delegation) of GSSAPI credentials to the | ||
164 | server. | ||
165 | |||
166 | -L [bind_address:]port:host:hostport | ||
167 | -L [bind_address:]port:remote_socket | ||
168 | -L local_socket:host:hostport | ||
169 | -L local_socket:remote_socket | ||
170 | Specifies that connections to the given TCP port or Unix socket | ||
171 | on the local (client) host are to be forwarded to the given host | ||
172 | and port, or Unix socket, on the remote side. This works by | ||
173 | allocating a socket to listen to either a TCP port on the local | ||
174 | side, optionally bound to the specified bind_address, or to a | ||
175 | Unix socket. Whenever a connection is made to the local port or | ||
176 | socket, the connection is forwarded over the secure channel, and | ||
177 | a connection is made to either host port hostport, or the Unix | ||
178 | socket remote_socket, from the remote machine. | ||
179 | |||
180 | Port forwardings can also be specified in the configuration file. | ||
181 | Only the superuser can forward privileged ports. IPv6 addresses | ||
182 | can be specified by enclosing the address in square brackets. | ||
183 | |||
184 | By default, the local port is bound in accordance with the | ||
185 | GatewayPorts setting. However, an explicit bind_address may be | ||
186 | used to bind the connection to a specific address. The | ||
187 | bind_address of M-bM-^@M-^\localhostM-bM-^@M-^] indicates that the listening port be | ||
188 | bound for local use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates | ||
189 | that the port should be available from all interfaces. | ||
190 | |||
191 | -l login_name | ||
192 | Specifies the user to log in as on the remote machine. This also | ||
193 | may be specified on a per-host basis in the configuration file. | ||
194 | |||
195 | -M Places the ssh client into M-bM-^@M-^\masterM-bM-^@M-^] mode for connection sharing. | ||
196 | Multiple -M options places ssh into M-bM-^@M-^\masterM-bM-^@M-^] mode but with | ||
197 | confirmation required using ssh-askpass(1) before each operation | ||
198 | that changes the multiplexing state (e.g. opening a new session). | ||
199 | Refer to the description of ControlMaster in ssh_config(5) for | ||
200 | details. | ||
201 | |||
202 | -m mac_spec | ||
203 | A comma-separated list of MAC (message authentication code) | ||
204 | algorithms, specified in order of preference. See the MACs | ||
205 | keyword for more information. | ||
206 | |||
207 | -N Do not execute a remote command. This is useful for just | ||
208 | forwarding ports. | ||
209 | |||
210 | -n Redirects stdin from /dev/null (actually, prevents reading from | ||
211 | stdin). This must be used when ssh is run in the background. A | ||
212 | common trick is to use this to run X11 programs on a remote | ||
213 | machine. For example, ssh -n shadows.cs.hut.fi emacs & will | ||
214 | start an emacs on shadows.cs.hut.fi, and the X11 connection will | ||
215 | be automatically forwarded over an encrypted channel. The ssh | ||
216 | program will be put in the background. (This does not work if | ||
217 | ssh needs to ask for a password or passphrase; see also the -f | ||
218 | option.) | ||
219 | |||
220 | -O ctl_cmd | ||
221 | Control an active connection multiplexing master process. When | ||
222 | the -O option is specified, the ctl_cmd argument is interpreted | ||
223 | and passed to the master process. Valid commands are: M-bM-^@M-^\checkM-bM-^@M-^] | ||
224 | (check that the master process is running), M-bM-^@M-^\forwardM-bM-^@M-^] (request | ||
225 | forwardings without command execution), M-bM-^@M-^\cancelM-bM-^@M-^] (cancel | ||
226 | forwardings), M-bM-^@M-^\exitM-bM-^@M-^] (request the master to exit), and M-bM-^@M-^\stopM-bM-^@M-^] | ||
227 | (request the master to stop accepting further multiplexing | ||
228 | requests). | ||
229 | |||
230 | -o option | ||
231 | Can be used to give options in the format used in the | ||
232 | configuration file. This is useful for specifying options for | ||
233 | which there is no separate command-line flag. For full details | ||
234 | of the options listed below, and their possible values, see | ||
235 | ssh_config(5). | ||
236 | |||
237 | AddKeysToAgent | ||
238 | AddressFamily | ||
239 | BatchMode | ||
240 | BindAddress | ||
241 | CanonicalDomains | ||
242 | CanonicalizeFallbackLocal | ||
243 | CanonicalizeHostname | ||
244 | CanonicalizeMaxDots | ||
245 | CanonicalizePermittedCNAMEs | ||
246 | CASignatureAlgorithms | ||
247 | CertificateFile | ||
248 | ChallengeResponseAuthentication | ||
249 | CheckHostIP | ||
250 | Ciphers | ||
251 | ClearAllForwardings | ||
252 | Compression | ||
253 | ConnectionAttempts | ||
254 | ConnectTimeout | ||
255 | ControlMaster | ||
256 | ControlPath | ||
257 | ControlPersist | ||
258 | DynamicForward | ||
259 | EscapeChar | ||
260 | ExitOnForwardFailure | ||
261 | FingerprintHash | ||
262 | ForwardAgent | ||
263 | ForwardX11 | ||
264 | ForwardX11Timeout | ||
265 | ForwardX11Trusted | ||
266 | GatewayPorts | ||
267 | GlobalKnownHostsFile | ||
268 | GSSAPIAuthentication | ||
269 | GSSAPIDelegateCredentials | ||
270 | HashKnownHosts | ||
271 | Host | ||
272 | HostbasedAuthentication | ||
273 | HostbasedKeyTypes | ||
274 | HostKeyAlgorithms | ||
275 | HostKeyAlias | ||
276 | Hostname | ||
277 | IdentitiesOnly | ||
278 | IdentityAgent | ||
279 | IdentityFile | ||
280 | IPQoS | ||
281 | KbdInteractiveAuthentication | ||
282 | KbdInteractiveDevices | ||
283 | KexAlgorithms | ||
284 | LocalCommand | ||
285 | LocalForward | ||
286 | LogLevel | ||
287 | MACs | ||
288 | Match | ||
289 | NoHostAuthenticationForLocalhost | ||
290 | NumberOfPasswordPrompts | ||
291 | PasswordAuthentication | ||
292 | PermitLocalCommand | ||
293 | PKCS11Provider | ||
294 | Port | ||
295 | PreferredAuthentications | ||
296 | ProxyCommand | ||
297 | ProxyJump | ||
298 | ProxyUseFdpass | ||
299 | PubkeyAcceptedKeyTypes | ||
300 | PubkeyAuthentication | ||
301 | RekeyLimit | ||
302 | RemoteCommand | ||
303 | RemoteForward | ||
304 | RequestTTY | ||
305 | SendEnv | ||
306 | ServerAliveInterval | ||
307 | ServerAliveCountMax | ||
308 | SetEnv | ||
309 | StreamLocalBindMask | ||
310 | StreamLocalBindUnlink | ||
311 | StrictHostKeyChecking | ||
312 | TCPKeepAlive | ||
313 | Tunnel | ||
314 | TunnelDevice | ||
315 | UpdateHostKeys | ||
316 | User | ||
317 | UserKnownHostsFile | ||
318 | VerifyHostKeyDNS | ||
319 | VisualHostKey | ||
320 | XAuthLocation | ||
321 | |||
322 | -p port | ||
323 | Port to connect to on the remote host. This can be specified on | ||
324 | a per-host basis in the configuration file. | ||
325 | |||
326 | -Q query_option | ||
327 | Queries ssh for the algorithms supported for the specified | ||
328 | version 2. The available features are: cipher (supported | ||
329 | symmetric ciphers), cipher-auth (supported symmetric ciphers that | ||
330 | support authenticated encryption), help (supported query terms | ||
331 | for use with the -Q flag), mac (supported message integrity | ||
332 | codes), kex (key exchange algorithms), key (key types), key-cert | ||
333 | (certificate key types), key-plain (non-certificate key types), | ||
334 | key-sig (all key types and signature algorithms), | ||
335 | protocol-version (supported SSH protocol versions), and sig | ||
336 | (supported signature algorithms). Alternatively, any keyword | ||
337 | from ssh_config(5) or sshd_config(5) that takes an algorithm list | ||
338 | may be used as an alias for the corresponding query_option. | ||
339 | |||
340 | -q Quiet mode. Causes most warning and diagnostic messages to be | ||
341 | suppressed. | ||
342 | |||
343 | -R [bind_address:]port:host:hostport | ||
344 | -R [bind_address:]port:local_socket | ||
345 | -R remote_socket:host:hostport | ||
346 | -R remote_socket:local_socket | ||
347 | -R [bind_address:]port | ||
348 | Specifies that connections to the given TCP port or Unix socket | ||
349 | on the remote (server) host are to be forwarded to the local | ||
350 | side. | ||
351 | |||
352 | This works by allocating a socket to listen to either a TCP port | ||
353 | or to a Unix socket on the remote side. Whenever a connection is | ||
354 | made to this port or Unix socket, the connection is forwarded | ||
355 | over the secure channel, and a connection is made from the local | ||
356 | machine to either an explicit destination specified by host port | ||
357 | hostport, or local_socket, or, if no explicit destination was | ||
358 | specified, ssh will act as a SOCKS 4/5 proxy and forward | ||
359 | connections to the destinations requested by the remote SOCKS | ||
360 | client. | ||
361 | |||
362 | Port forwardings can also be specified in the configuration file. | ||
363 | Privileged ports can be forwarded only when logging in as root on | ||
364 | the remote machine. IPv6 addresses can be specified by enclosing | ||
365 | the address in square brackets. | ||
366 | |||
367 | By default, TCP listening sockets on the server will be bound to | ||
368 | the loopback interface only. This may be overridden by | ||
369 | specifying a bind_address. An empty bind_address, or the address | ||
370 | M-bM-^@M-^X*M-bM-^@M-^Y, indicates that the remote socket should listen on all | ||
371 | interfaces. Specifying a remote bind_address will only succeed | ||
372 | if the server's GatewayPorts option is enabled (see | ||
373 | sshd_config(5)). | ||
374 | |||
375 | If the port argument is M-bM-^@M-^X0M-bM-^@M-^Y, the listen port will be dynamically | ||
376 | allocated on the server and reported to the client at run time. | ||
377 | When used together with -O forward the allocated port will be | ||
378 | printed to the standard output. | ||
379 | |||
380 | -S ctl_path | ||
381 | Specifies the location of a control socket for connection | ||
382 | sharing, or the string M-bM-^@M-^\noneM-bM-^@M-^] to disable connection sharing. | ||
383 | Refer to the description of ControlPath and ControlMaster in | ||
384 | ssh_config(5) for details. | ||
385 | |||
386 | -s May be used to request invocation of a subsystem on the remote | ||
387 | system. Subsystems facilitate the use of SSH as a secure | ||
388 | transport for other applications (e.g. sftp(1)). The subsystem | ||
389 | is specified as the remote command. | ||
390 | |||
391 | -T Disable pseudo-terminal allocation. | ||
392 | |||
393 | -t Force pseudo-terminal allocation. This can be used to execute | ||
394 | arbitrary screen-based programs on a remote machine, which can be | ||
395 | very useful, e.g. when implementing menu services. Multiple -t | ||
396 | options force tty allocation, even if ssh has no local tty. | ||
397 | |||
398 | -V Display the version number and exit. | ||
399 | |||
400 | -v Verbose mode. Causes ssh to print debugging messages about its | ||
401 | progress. This is helpful in debugging connection, | ||
402 | authentication, and configuration problems. Multiple -v options | ||
403 | increase the verbosity. The maximum is 3. | ||
404 | |||
405 | -W host:port | ||
406 | Requests that standard input and output on the client be | ||
407 | forwarded to host on port over the secure channel. Implies -N, | ||
408 | -T, ExitOnForwardFailure and ClearAllForwardings, though these | ||
409 | can be overridden in the configuration file or using -o command | ||
410 | line options. | ||
411 | |||
412 | -w local_tun[:remote_tun] | ||
413 | Requests tunnel device forwarding with the specified tun(4) | ||
414 | devices between the client (local_tun) and the server | ||
415 | (remote_tun). | ||
416 | |||
417 | The devices may be specified by numerical ID or the keyword | ||
418 | M-bM-^@M-^\anyM-bM-^@M-^], which uses the next available tunnel device. If | ||
419 | remote_tun is not specified, it defaults to M-bM-^@M-^\anyM-bM-^@M-^]. See also the | ||
420 | Tunnel and TunnelDevice directives in ssh_config(5). | ||
421 | |||
422 | If the Tunnel directive is unset, it will be set to the default | ||
423 | tunnel mode, which is M-bM-^@M-^\point-to-pointM-bM-^@M-^]. If a different Tunnel | ||
424 | forwarding mode it desired, then it should be specified before | ||
425 | -w. | ||
426 | |||
427 | -X Enables X11 forwarding. This can also be specified on a per-host | ||
428 | basis in a configuration file. | ||
429 | |||
430 | X11 forwarding should be enabled with caution. Users with the | ||
431 | ability to bypass file permissions on the remote host (for the | ||
432 | user's X authorization database) can access the local X11 display | ||
433 | through the forwarded connection. An attacker may then be able | ||
434 | to perform activities such as keystroke monitoring. | ||
435 | |||
436 | For this reason, X11 forwarding is subjected to X11 SECURITY | ||
437 | extension restrictions by default. Please refer to the ssh -Y | ||
438 | option and the ForwardX11Trusted directive in ssh_config(5) for | ||
439 | more information. | ||
440 | |||
441 | -x Disables X11 forwarding. | ||
442 | |||
443 | -Y Enables trusted X11 forwarding. Trusted X11 forwardings are not | ||
444 | subjected to the X11 SECURITY extension controls. | ||
445 | |||
446 | -y Send log information using the syslog(3) system module. By | ||
447 | default this information is sent to stderr. | ||
448 | |||
449 | ssh may additionally obtain configuration data from a per-user | ||
450 | configuration file and a system-wide configuration file. The file format | ||
451 | and configuration options are described in ssh_config(5). | ||
452 | |||
453 | AUTHENTICATION | ||
454 | The OpenSSH SSH client supports SSH protocol 2. | ||
455 | |||
456 | The methods available for authentication are: GSSAPI-based | ||
457 | authentication, host-based authentication, public key authentication, | ||
458 | challenge-response authentication, and password authentication. | ||
459 | Authentication methods are tried in the order specified above, though | ||
460 | PreferredAuthentications can be used to change the default order. | ||
461 | |||
462 | Host-based authentication works as follows: If the machine the user logs | ||
463 | in from is listed in /etc/hosts.equiv or /etc/shosts.equiv on the remote | ||
464 | machine, the user is non-root and the user names are the same on both | ||
465 | sides, or if the files ~/.rhosts or ~/.shosts exist in the user's home | ||
466 | directory on the remote machine and contain a line containing the name of | ||
467 | the client machine and the name of the user on that machine, the user is | ||
468 | considered for login. Additionally, the server must be able to verify | ||
469 | the client's host key (see the description of /etc/ssh/ssh_known_hosts | ||
470 | and ~/.ssh/known_hosts, below) for login to be permitted. This | ||
471 | authentication method closes security holes due to IP spoofing, DNS | ||
472 | spoofing, and routing spoofing. [Note to the administrator: | ||
473 | /etc/hosts.equiv, ~/.rhosts, and the rlogin/rsh protocol in general, are | ||
474 | inherently insecure and should be disabled if security is desired.] | ||
475 | |||
476 | Public key authentication works as follows: The scheme is based on | ||
477 | public-key cryptography, using cryptosystems where encryption and | ||
478 | decryption are done using separate keys, and it is unfeasible to derive | ||
479 | the decryption key from the encryption key. The idea is that each user | ||
480 | creates a public/private key pair for authentication purposes. The | ||
481 | server knows the public key, and only the user knows the private key. | ||
482 | ssh implements public key authentication protocol automatically, using | ||
483 | one of the DSA, ECDSA, Ed25519 or RSA algorithms. The HISTORY section of | ||
484 | ssl(8) contains a brief discussion of the DSA and RSA algorithms. | ||
485 | |||
486 | The file ~/.ssh/authorized_keys lists the public keys that are permitted | ||
487 | for logging in. When the user logs in, the ssh program tells the server | ||
488 | which key pair it would like to use for authentication. The client | ||
489 | proves that it has access to the private key and the server checks that | ||
490 | the corresponding public key is authorized to accept the account. | ||
491 | |||
492 | The server may inform the client of errors that prevented public key | ||
493 | authentication from succeeding after authentication completes using a | ||
494 | different method. These may be viewed by increasing the LogLevel to | ||
495 | DEBUG or higher (e.g. by using the -v flag). | ||
496 | |||
497 | The user creates his/her key pair by running ssh-keygen(1). This stores | ||
498 | the private key in ~/.ssh/id_dsa (DSA), ~/.ssh/id_ecdsa (ECDSA), | ||
499 | ~/.ssh/id_ecdsa_sk (authenticator-hosted ECDSA), ~/.ssh/id_ed25519 | ||
500 | (Ed25519), ~/.ssh/id_ed25519_sk (authenticator-hosted Ed25519), or | ||
501 | ~/.ssh/id_rsa (RSA) and stores the public key in ~/.ssh/id_dsa.pub (DSA), | ||
502 | ~/.ssh/id_ecdsa.pub (ECDSA), ~/.ssh/id_ecdsa_sk.pub (authenticator-hosted | ||
503 | ECDSA), ~/.ssh/id_ed25519.pub (Ed25519), ~/.ssh/id_ed25519_sk.pub | ||
504 | (authenticator-hosted Ed25519), or ~/.ssh/id_rsa.pub (RSA) in the user's | ||
505 | home directory. The user should then copy the public key to | ||
506 | ~/.ssh/authorized_keys in his/her home directory on the remote machine. | ||
507 | The authorized_keys file corresponds to the conventional ~/.rhosts file, | ||
508 | and has one key per line, though the lines can be very long. After this, | ||
509 | the user can log in without giving the password. | ||
510 | |||
511 | A variation on public key authentication is available in the form of | ||
512 | certificate authentication: instead of a set of public/private keys, | ||
513 | signed certificates are used. This has the advantage that a single | ||
514 | trusted certification authority can be used in place of many | ||
515 | public/private keys. See the CERTIFICATES section of ssh-keygen(1) for | ||
516 | more information. | ||
517 | |||
518 | The most convenient way to use public key or certificate authentication | ||
519 | may be with an authentication agent. See ssh-agent(1) and (optionally) | ||
520 | the AddKeysToAgent directive in ssh_config(5) for more information. | ||
521 | |||
522 | Challenge-response authentication works as follows: The server sends an | ||
523 | arbitrary "challenge" text, and prompts for a response. Examples of | ||
524 | challenge-response authentication include BSD Authentication (see | ||
525 | login.conf(5)) and PAM (some non-OpenBSD systems). | ||
526 | |||
527 | Finally, if other authentication methods fail, ssh prompts the user for a | ||
528 | password. The password is sent to the remote host for checking; however, | ||
529 | since all communications are encrypted, the password cannot be seen by | ||
530 | someone listening on the network. | ||
531 | |||
532 | ssh automatically maintains and checks a database containing | ||
533 | identification for all hosts it has ever been used with. Host keys are | ||
534 | stored in ~/.ssh/known_hosts in the user's home directory. Additionally, | ||
535 | the file /etc/ssh/ssh_known_hosts is automatically checked for known | ||
536 | hosts. Any new hosts are automatically added to the user's file. If a | ||
537 | host's identification ever changes, ssh warns about this and disables | ||
538 | password authentication to prevent server spoofing or man-in-the-middle | ||
539 | attacks, which could otherwise be used to circumvent the encryption. The | ||
540 | StrictHostKeyChecking option can be used to control logins to machines | ||
541 | whose host key is not known or has changed. | ||
542 | |||
543 | When the user's identity has been accepted by the server, the server | ||
544 | either executes the given command in a non-interactive session or, if no | ||
545 | command has been specified, logs into the machine and gives the user a | ||
546 | normal shell as an interactive session. All communication with the | ||
547 | remote command or shell will be automatically encrypted. | ||
548 | |||
549 | If an interactive session is requested ssh by default will only request a | ||
550 | pseudo-terminal (pty) for interactive sessions when the client has one. | ||
551 | The flags -T and -t can be used to override this behaviour. | ||
552 | |||
553 | If a pseudo-terminal has been allocated the user may use the escape | ||
554 | characters noted below. | ||
555 | |||
556 | If no pseudo-terminal has been allocated, the session is transparent and | ||
557 | can be used to reliably transfer binary data. On most systems, setting | ||
558 | the escape character to M-bM-^@M-^\noneM-bM-^@M-^] will also make the session transparent | ||
559 | even if a tty is used. | ||
560 | |||
561 | The session terminates when the command or shell on the remote machine | ||
562 | exits and all X11 and TCP connections have been closed. | ||
563 | |||
564 | ESCAPE CHARACTERS | ||
565 | When a pseudo-terminal has been requested, ssh supports a number of | ||
566 | functions through the use of an escape character. | ||
567 | |||
568 | A single tilde character can be sent as ~~ or by following the tilde by a | ||
569 | character other than those described below. The escape character must | ||
570 | always follow a newline to be interpreted as special. The escape | ||
571 | character can be changed in configuration files using the EscapeChar | ||
572 | configuration directive or on the command line by the -e option. | ||
573 | |||
574 | The supported escapes (assuming the default M-bM-^@M-^X~M-bM-^@M-^Y) are: | ||
575 | |||
576 | ~. Disconnect. | ||
577 | |||
578 | ~^Z Background ssh. | ||
579 | |||
580 | ~# List forwarded connections. | ||
581 | |||
582 | ~& Background ssh at logout when waiting for forwarded connection / | ||
583 | X11 sessions to terminate. | ||
584 | |||
585 | ~? Display a list of escape characters. | ||
586 | |||
587 | ~B Send a BREAK to the remote system (only useful if the peer | ||
588 | supports it). | ||
589 | |||
590 | ~C Open command line. Currently this allows the addition of port | ||
591 | forwardings using the -L, -R and -D options (see above). It also | ||
592 | allows the cancellation of existing port-forwardings with | ||
593 | -KL[bind_address:]port for local, -KR[bind_address:]port for | ||
594 | remote and -KD[bind_address:]port for dynamic port-forwardings. | ||
595 | !command allows the user to execute a local command if the | ||
596 | PermitLocalCommand option is enabled in ssh_config(5). Basic | ||
597 | help is available, using the -h option. | ||
598 | |||
599 | ~R Request rekeying of the connection (only useful if the peer | ||
600 | supports it). | ||
601 | |||
602 | ~V Decrease the verbosity (LogLevel) when errors are being written | ||
603 | to stderr. | ||
604 | |||
605 | ~v Increase the verbosity (LogLevel) when errors are being written | ||
606 | to stderr. | ||
607 | |||
608 | TCP FORWARDING | ||
609 | Forwarding of arbitrary TCP connections over a secure channel can be | ||
610 | specified either on the command line or in a configuration file. One | ||
611 | possible application of TCP forwarding is a secure connection to a mail | ||
612 | server; another is going through firewalls. | ||
613 | |||
614 | In the example below, we look at encrypting communication for an IRC | ||
615 | client, even though the IRC server it connects to does not directly | ||
616 | support encrypted communication. This works as follows: the user | ||
617 | connects to the remote host using ssh, specifying the ports to be used to | ||
618 | forward the connection. After that it is possible to start the program | ||
619 | locally, and ssh will encrypt and forward the connection to the remote | ||
620 | server. | ||
621 | |||
622 | The following example tunnels an IRC session from the client to an IRC | ||
623 | server at M-bM-^@M-^\server.example.comM-bM-^@M-^], joining channel M-bM-^@M-^\#usersM-bM-^@M-^], nickname | ||
624 | M-bM-^@M-^\pinkyM-bM-^@M-^], using the standard IRC port, 6667: | ||
625 | |||
626 | $ ssh -f -L 6667:localhost:6667 server.example.com sleep 10 | ||
627 | $ irc -c '#users' pinky IRC/127.0.0.1 | ||
628 | |||
629 | The -f option backgrounds ssh and the remote command M-bM-^@M-^\sleep 10M-bM-^@M-^] is | ||
630 | specified to allow an amount of time (10 seconds, in the example) to | ||
631 | start the program which is going to use the tunnel. If no connections | ||
632 | are made within the time specified, ssh will exit. | ||
633 | |||
634 | X11 FORWARDING | ||
635 | If the ForwardX11 variable is set to M-bM-^@M-^\yesM-bM-^@M-^] (or see the description of the | ||
636 | -X, -x, and -Y options above) and the user is using X11 (the DISPLAY | ||
637 | environment variable is set), the connection to the X11 display is | ||
638 | automatically forwarded to the remote side in such a way that any X11 | ||
639 | programs started from the shell (or command) will go through the | ||
640 | encrypted channel, and the connection to the real X server will be made | ||
641 | from the local machine. The user should not manually set DISPLAY. | ||
642 | Forwarding of X11 connections can be configured on the command line or in | ||
643 | configuration files. | ||
644 | |||
645 | The DISPLAY value set by ssh will point to the server machine, but with a | ||
646 | display number greater than zero. This is normal, and happens because | ||
647 | ssh creates a M-bM-^@M-^\proxyM-bM-^@M-^] X server on the server machine for forwarding the | ||
648 | connections over the encrypted channel. | ||
649 | |||
650 | ssh will also automatically set up Xauthority data on the server machine. | ||
651 | For this purpose, it will generate a random authorization cookie, store | ||
652 | it in Xauthority on the server, and verify that any forwarded connections | ||
653 | carry this cookie and replace it by the real cookie when the connection | ||
654 | is opened. The real authentication cookie is never sent to the server | ||
655 | machine (and no cookies are sent in the plain). | ||
656 | |||
657 | If the ForwardAgent variable is set to M-bM-^@M-^\yesM-bM-^@M-^] (or see the description of | ||
658 | the -A and -a options above) and the user is using an authentication | ||
659 | agent, the connection to the agent is automatically forwarded to the | ||
660 | remote side. | ||
661 | |||
662 | VERIFYING HOST KEYS | ||
663 | When connecting to a server for the first time, a fingerprint of the | ||
664 | server's public key is presented to the user (unless the option | ||
665 | StrictHostKeyChecking has been disabled). Fingerprints can be determined | ||
666 | using ssh-keygen(1): | ||
667 | |||
668 | $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key | ||
669 | |||
670 | If the fingerprint is already known, it can be matched and the key can be | ||
671 | accepted or rejected. If only legacy (MD5) fingerprints for the server | ||
672 | are available, the ssh-keygen(1) -E option may be used to downgrade the | ||
673 | fingerprint algorithm to match. | ||
674 | |||
675 | Because of the difficulty of comparing host keys just by looking at | ||
676 | fingerprint strings, there is also support to compare host keys visually, | ||
677 | using random art. By setting the VisualHostKey option to M-bM-^@M-^\yesM-bM-^@M-^], a small | ||
678 | ASCII graphic gets displayed on every login to a server, no matter if the | ||
679 | session itself is interactive or not. By learning the pattern a known | ||
680 | server produces, a user can easily find out that the host key has changed | ||
681 | when a completely different pattern is displayed. Because these patterns | ||
682 | are not unambiguous however, a pattern that looks similar to the pattern | ||
683 | remembered only gives a good probability that the host key is the same, | ||
684 | not guaranteed proof. | ||
685 | |||
686 | To get a listing of the fingerprints along with their random art for all | ||
687 | known hosts, the following command line can be used: | ||
688 | |||
689 | $ ssh-keygen -lv -f ~/.ssh/known_hosts | ||
690 | |||
691 | If the fingerprint is unknown, an alternative method of verification is | ||
692 | available: SSH fingerprints verified by DNS. An additional resource | ||
693 | record (RR), SSHFP, is added to a zonefile and the connecting client is | ||
694 | able to match the fingerprint with that of the key presented. | ||
695 | |||
696 | In this example, we are connecting a client to a server, | ||
697 | M-bM-^@M-^\host.example.comM-bM-^@M-^]. The SSHFP resource records should first be added to | ||
698 | the zonefile for host.example.com: | ||
699 | |||
700 | $ ssh-keygen -r host.example.com. | ||
701 | |||
702 | The output lines will have to be added to the zonefile. To check that | ||
703 | the zone is answering fingerprint queries: | ||
704 | |||
705 | $ dig -t SSHFP host.example.com | ||
706 | |||
707 | Finally the client connects: | ||
708 | |||
709 | $ ssh -o "VerifyHostKeyDNS ask" host.example.com | ||
710 | [...] | ||
711 | Matching host key fingerprint found in DNS. | ||
712 | Are you sure you want to continue connecting (yes/no)? | ||
713 | |||
714 | See the VerifyHostKeyDNS option in ssh_config(5) for more information. | ||
715 | |||
716 | SSH-BASED VIRTUAL PRIVATE NETWORKS | ||
717 | ssh contains support for Virtual Private Network (VPN) tunnelling using | ||
718 | the tun(4) network pseudo-device, allowing two networks to be joined | ||
719 | securely. The sshd_config(5) configuration option PermitTunnel controls | ||
720 | whether the server supports this, and at what level (layer 2 or 3 | ||
721 | traffic). | ||
722 | |||
723 | The following example would connect client network 10.0.50.0/24 with | ||
724 | remote network 10.0.99.0/24 using a point-to-point connection from | ||
725 | 10.1.1.1 to 10.1.1.2, provided that the SSH server running on the gateway | ||
726 | to the remote network, at 192.168.1.15, allows it. | ||
727 | |||
728 | On the client: | ||
729 | |||
730 | # ssh -f -w 0:1 192.168.1.15 true | ||
731 | # ifconfig tun0 10.1.1.1 10.1.1.2 netmask 255.255.255.252 | ||
732 | # route add 10.0.99.0/24 10.1.1.2 | ||
733 | |||
734 | On the server: | ||
735 | |||
736 | # ifconfig tun1 10.1.1.2 10.1.1.1 netmask 255.255.255.252 | ||
737 | # route add 10.0.50.0/24 10.1.1.1 | ||
738 | |||
739 | Client access may be more finely tuned via the /root/.ssh/authorized_keys | ||
740 | file (see below) and the PermitRootLogin server option. The following | ||
741 | entry would permit connections on tun(4) device 1 from user M-bM-^@M-^\janeM-bM-^@M-^] and on | ||
742 | tun device 2 from user M-bM-^@M-^\johnM-bM-^@M-^], if PermitRootLogin is set to | ||
743 | M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^]: | ||
744 | |||
745 | tunnel="1",command="sh /etc/netstart tun1" ssh-rsa ... jane | ||
746 | tunnel="2",command="sh /etc/netstart tun2" ssh-rsa ... john | ||
747 | |||
748 | Since an SSH-based setup entails a fair amount of overhead, it may be | ||
749 | more suited to temporary setups, such as for wireless VPNs. More | ||
750 | permanent VPNs are better provided by tools such as ipsecctl(8) and | ||
751 | isakmpd(8). | ||
752 | |||
753 | ENVIRONMENT | ||
754 | ssh will normally set the following environment variables: | ||
755 | |||
756 | DISPLAY The DISPLAY variable indicates the location of the | ||
757 | X11 server. It is automatically set by ssh to | ||
758 | point to a value of the form M-bM-^@M-^\hostname:nM-bM-^@M-^], where | ||
759 | M-bM-^@M-^\hostnameM-bM-^@M-^] indicates the host where the shell runs, | ||
760 | and M-bM-^@M-^XnM-bM-^@M-^Y is an integer M-bM-^IM-% 1. ssh uses this special | ||
761 | value to forward X11 connections over the secure | ||
762 | channel. The user should normally not set DISPLAY | ||
763 | explicitly, as that will render the X11 connection | ||
764 | insecure (and will require the user to manually | ||
765 | copy any required authorization cookies). | ||
766 | |||
767 | HOME Set to the path of the user's home directory. | ||
768 | |||
769 | LOGNAME Synonym for USER; set for compatibility with | ||
770 | systems that use this variable. | ||
771 | |||
772 | MAIL Set to the path of the user's mailbox. | ||
773 | |||
774 | PATH Set to the default PATH, as specified when | ||
775 | compiling ssh. | ||
776 | |||
777 | SSH_ASKPASS If ssh needs a passphrase, it will read the | ||
778 | passphrase from the current terminal if it was run | ||
779 | from a terminal. If ssh does not have a terminal | ||
780 | associated with it but DISPLAY and SSH_ASKPASS are | ||
781 | set, it will execute the program specified by | ||
782 | SSH_ASKPASS and open an X11 window to read the | ||
783 | passphrase. This is particularly useful when | ||
784 | calling ssh from a .xsession or related script. | ||
785 | (Note that on some machines it may be necessary to | ||
786 | redirect the input from /dev/null to make this | ||
787 | work.) | ||
788 | |||
789 | SSH_ASKPASS_REQUIRE Allows further control over the use of an askpass | ||
790 | program. If this variable is set to M-bM-^@M-^\neverM-bM-^@M-^] then | ||
791 | ssh will never attempt to use one. If it is set to | ||
792 | M-bM-^@M-^\preferM-bM-^@M-^], then ssh will prefer to use the askpass | ||
793 | program instead of the TTY when requesting | ||
794 | passwords. Finally, if the variable is set to | ||
795 | M-bM-^@M-^\forceM-bM-^@M-^], then the askpass program will be used for | ||
796 | all passphrase input regardless of whether DISPLAY | ||
797 | is set. | ||
798 | |||
799 | SSH_AUTH_SOCK Identifies the path of a UNIX-domain socket used to | ||
800 | communicate with the agent. | ||
801 | |||
802 | SSH_CONNECTION Identifies the client and server ends of the | ||
803 | connection. The variable contains four space- | ||
804 | separated values: client IP address, client port | ||
805 | number, server IP address, and server port number. | ||
806 | |||
807 | SSH_ORIGINAL_COMMAND This variable contains the original command line if | ||
808 | a forced command is executed. It can be used to | ||
809 | extract the original arguments. | ||
810 | |||
811 | SSH_TTY This is set to the name of the tty (path to the | ||
812 | device) associated with the current shell or | ||
813 | command. If the current session has no tty, this | ||
814 | variable is not set. | ||
815 | |||
816 | SSH_TUNNEL Optionally set by sshd(8) to contain the interface | ||
817 | names assigned if tunnel forwarding was requested | ||
818 | by the client. | ||
819 | |||
820 | SSH_USER_AUTH Optionally set by sshd(8), this variable may | ||
821 | contain a pathname to a file that lists the | ||
822 | authentication methods successfully used when the | ||
823 | session was established, including any public keys | ||
824 | that were used. | ||
825 | |||
826 | TZ This variable is set to indicate the present time | ||
827 | zone if it was set when the daemon was started | ||
828 | (i.e. the daemon passes the value on to new | ||
829 | connections). | ||
830 | |||
831 | USER Set to the name of the user logging in. | ||
832 | |||
833 | Additionally, ssh reads ~/.ssh/environment, and adds lines of the format | ||
834 | M-bM-^@M-^\VARNAME=valueM-bM-^@M-^] to the environment if the file exists and users are | ||
835 | allowed to change their environment. For more information, see the | ||
836 | PermitUserEnvironment option in sshd_config(5). | ||
837 | |||
838 | FILES | ||
839 | ~/.rhosts | ||
840 | This file is used for host-based authentication (see above). On | ||
841 | some machines this file may need to be world-readable if the | ||
842 | user's home directory is on an NFS partition, because sshd(8) | ||
843 | reads it as root. Additionally, this file must be owned by the | ||
844 | user, and must not have write permissions for anyone else. The | ||
845 | recommended permission for most machines is read/write for the | ||
846 | user, and not accessible by others. | ||
847 | |||
848 | ~/.shosts | ||
849 | This file is used in exactly the same way as .rhosts, but allows | ||
850 | host-based authentication without permitting login with | ||
851 | rlogin/rsh. | ||
852 | |||
853 | ~/.ssh/ | ||
854 | This directory is the default location for all user-specific | ||
855 | configuration and authentication information. There is no | ||
856 | general requirement to keep the entire contents of this directory | ||
857 | secret, but the recommended permissions are read/write/execute | ||
858 | for the user, and not accessible by others. | ||
859 | |||
860 | ~/.ssh/authorized_keys | ||
861 | Lists the public keys (DSA, ECDSA, Ed25519, RSA) that can be used | ||
862 | for logging in as this user. The format of this file is | ||
863 | described in the sshd(8) manual page. This file is not highly | ||
864 | sensitive, but the recommended permissions are read/write for the | ||
865 | user, and not accessible by others. | ||
866 | |||
867 | ~/.ssh/config | ||
868 | This is the per-user configuration file. The file format and | ||
869 | configuration options are described in ssh_config(5). Because of | ||
870 | the potential for abuse, this file must have strict permissions: | ||
871 | read/write for the user, and not writable by others. | ||
872 | |||
873 | ~/.ssh/environment | ||
874 | Contains additional definitions for environment variables; see | ||
875 | ENVIRONMENT, above. | ||
876 | |||
877 | ~/.ssh/id_dsa | ||
878 | ~/.ssh/id_ecdsa | ||
879 | ~/.ssh/id_ecdsa_sk | ||
880 | ~/.ssh/id_ed25519 | ||
881 | ~/.ssh/id_ed25519_sk | ||
882 | ~/.ssh/id_rsa | ||
883 | Contains the private key for authentication. These files contain | ||
884 | sensitive data and should be readable by the user but not | ||
885 | accessible by others (read/write/execute). ssh will simply | ||
886 | ignore a private key file if it is accessible by others. It is | ||
887 | possible to specify a passphrase when generating the key which | ||
888 | will be used to encrypt the sensitive part of this file using | ||
889 | AES-128. | ||
890 | |||
891 | ~/.ssh/id_dsa.pub | ||
892 | ~/.ssh/id_ecdsa.pub | ||
893 | ~/.ssh/id_ecdsa_sk.pub | ||
894 | ~/.ssh/id_ed25519.pub | ||
895 | ~/.ssh/id_ed25519_sk.pub | ||
896 | ~/.ssh/id_rsa.pub | ||
897 | Contains the public key for authentication. These files are not | ||
898 | sensitive and can (but need not) be readable by anyone. | ||
899 | |||
900 | ~/.ssh/known_hosts | ||
901 | Contains a list of host keys for all hosts the user has logged | ||
902 | into that are not already in the systemwide list of known host | ||
903 | keys. See sshd(8) for further details of the format of this | ||
904 | file. | ||
905 | |||
906 | ~/.ssh/rc | ||
907 | Commands in this file are executed by ssh when the user logs in, | ||
908 | just before the user's shell (or command) is started. See the | ||
909 | sshd(8) manual page for more information. | ||
910 | |||
911 | /etc/hosts.equiv | ||
912 | This file is for host-based authentication (see above). It | ||
913 | should only be writable by root. | ||
914 | |||
915 | /etc/shosts.equiv | ||
916 | This file is used in exactly the same way as hosts.equiv, but | ||
917 | allows host-based authentication without permitting login with | ||
918 | rlogin/rsh. | ||
919 | |||
920 | /etc/ssh/ssh_config | ||
921 | Systemwide configuration file. The file format and configuration | ||
922 | options are described in ssh_config(5). | ||
923 | |||
924 | /etc/ssh/ssh_host_key | ||
925 | /etc/ssh/ssh_host_dsa_key | ||
926 | /etc/ssh/ssh_host_ecdsa_key | ||
927 | /etc/ssh/ssh_host_ed25519_key | ||
928 | /etc/ssh/ssh_host_rsa_key | ||
929 | These files contain the private parts of the host keys and are | ||
930 | used for host-based authentication. | ||
931 | |||
932 | /etc/ssh/ssh_known_hosts | ||
933 | Systemwide list of known host keys. This file should be prepared | ||
934 | by the system administrator to contain the public host keys of | ||
935 | all machines in the organization. It should be world-readable. | ||
936 | See sshd(8) for further details of the format of this file. | ||
937 | |||
938 | /etc/ssh/sshrc | ||
939 | Commands in this file are executed by ssh when the user logs in, | ||
940 | just before the user's shell (or command) is started. See the | ||
941 | sshd(8) manual page for more information. | ||
942 | |||
943 | EXIT STATUS | ||
944 | ssh exits with the exit status of the remote command or with 255 if an | ||
945 | error occurred. | ||
946 | |||
947 | SEE ALSO | ||
948 | scp(1), sftp(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh-keyscan(1), | ||
949 | tun(4), ssh_config(5), ssh-keysign(8), sshd(8) | ||
950 | |||
951 | STANDARDS | ||
952 | S. Lehtinen and C. Lonvick, The Secure Shell (SSH) Protocol Assigned | ||
953 | Numbers, RFC 4250, January 2006. | ||
954 | |||
955 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Protocol Architecture, | ||
956 | RFC 4251, January 2006. | ||
957 | |||
958 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Authentication Protocol, | ||
959 | RFC 4252, January 2006. | ||
960 | |||
961 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Transport Layer | ||
962 | Protocol, RFC 4253, January 2006. | ||
963 | |||
964 | T. Ylonen and C. Lonvick, The Secure Shell (SSH) Connection Protocol, RFC | ||
965 | 4254, January 2006. | ||
966 | |||
967 | J. Schlyter and W. Griffin, Using DNS to Securely Publish Secure Shell | ||
968 | (SSH) Key Fingerprints, RFC 4255, January 2006. | ||
969 | |||
970 | F. Cusack and M. Forssen, Generic Message Exchange Authentication for the | ||
971 | Secure Shell Protocol (SSH), RFC 4256, January 2006. | ||
972 | |||
973 | J. Galbraith and P. Remaker, The Secure Shell (SSH) Session Channel Break | ||
974 | Extension, RFC 4335, January 2006. | ||
975 | |||
976 | M. Bellare, T. Kohno, and C. Namprempre, The Secure Shell (SSH) Transport | ||
977 | Layer Encryption Modes, RFC 4344, January 2006. | ||
978 | |||
979 | B. Harris, Improved Arcfour Modes for the Secure Shell (SSH) Transport | ||
980 | Layer Protocol, RFC 4345, January 2006. | ||
981 | |||
982 | M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for | ||
983 | the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006. | ||
984 | |||
985 | J. Galbraith and R. Thayer, The Secure Shell (SSH) Public Key File | ||
986 | Format, RFC 4716, November 2006. | ||
987 | |||
988 | D. Stebila and J. Green, Elliptic Curve Algorithm Integration in the | ||
989 | Secure Shell Transport Layer, RFC 5656, December 2009. | ||
990 | |||
991 | A. Perrig and D. Song, Hash Visualization: a New Technique to improve | ||
992 | Real-World Security, 1999, International Workshop on Cryptographic | ||
993 | Techniques and E-Commerce (CrypTEC '99). | ||
994 | |||
995 | AUTHORS | ||
996 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
997 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
998 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
999 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
1000 | versions 1.5 and 2.0. | ||
1001 | |||
1002 | OpenBSD 6.8 July 15, 2020 OpenBSD 6.8 | ||
diff --git a/ssh_config.0 b/ssh_config.0 new file mode 100644 index 000000000..ae98748d2 --- /dev/null +++ b/ssh_config.0 | |||
@@ -0,0 +1,1194 @@ | |||
1 | SSH_CONFIG(5) File Formats Manual SSH_CONFIG(5) | ||
2 | |||
3 | NAME | ||
4 | ssh_config M-bM-^@M-^S OpenSSH client configuration file | ||
5 | |||
6 | DESCRIPTION | ||
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, final, | ||
58 | exec, host, originalhost, user, and localuser. The all criteria | ||
59 | must appear alone or immediately after canonical or final. Other | ||
60 | criteria may be combined arbitrarily. All criteria but all, | ||
61 | canonical, and final require an argument. Criteria may be | ||
62 | negated by prepending an 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. | ||
68 | |||
69 | The final keyword requests that the configuration be re-parsed | ||
70 | (regardless of whether CanonicalizeHostname is enabled), and | ||
71 | matches only during this final pass. If CanonicalizeHostname is | ||
72 | enabled, then canonical and final match during the same pass. | ||
73 | |||
74 | The exec keyword executes the specified command under the user's | ||
75 | shell. If the command returns a zero exit status then the | ||
76 | condition is considered true. Commands containing whitespace | ||
77 | characters must be quoted. Arguments to exec accept the tokens | ||
78 | described in the TOKENS section. | ||
79 | |||
80 | The other keywords' criteria must be single entries or comma- | ||
81 | separated lists and may use the wildcard and negation operators | ||
82 | described in the PATTERNS section. The criteria for the host | ||
83 | keyword are matched against the target hostname, after any | ||
84 | substitution by the Hostname or CanonicalizeHostname options. | ||
85 | The originalhost keyword matches against the hostname as it was | ||
86 | specified on the command-line. The user keyword matches against | ||
87 | the target username on the remote host. The localuser keyword | ||
88 | matches against the name of the local user running ssh(1) (this | ||
89 | keyword may be useful in system-wide ssh_config files). | ||
90 | |||
91 | AddKeysToAgent | ||
92 | Specifies whether keys should be automatically added to a running | ||
93 | ssh-agent(1). If this option is set to yes and a key is loaded | ||
94 | from a file, the key and its passphrase are added to the agent | ||
95 | with the default lifetime, as if by ssh-add(1). If this option | ||
96 | is set to ask, ssh(1) will require confirmation using the | ||
97 | SSH_ASKPASS program before adding a key (see ssh-add(1) for | ||
98 | details). If this option is set to confirm, each use of the key | ||
99 | must be confirmed, as if the -c option was specified to | ||
100 | ssh-add(1). If this option is set to no, no keys are added to | ||
101 | the agent. Alternately, this option may be specified as a time | ||
102 | interval using the format described in the TIME FORMATS section | ||
103 | of sshd_config(5) to specify the key's lifetime in ssh-agent(1), | ||
104 | after which it will automatically be removed. The argument must | ||
105 | be no (the default), yes, confirm (optionally followed by a time | ||
106 | interval), ask or a time interval. | ||
107 | |||
108 | AddressFamily | ||
109 | Specifies which address family to use when connecting. Valid | ||
110 | arguments are any (the default), inet (use IPv4 only), or inet6 | ||
111 | (use IPv6 only). | ||
112 | |||
113 | BatchMode | ||
114 | If set to yes, user interaction such as password prompts and host | ||
115 | key confirmation requests will be disabled. This option is | ||
116 | useful in scripts and other batch jobs where no user is present | ||
117 | to interact with ssh(1). The argument must be yes or no (the | ||
118 | default). | ||
119 | |||
120 | BindAddress | ||
121 | Use the specified address on the local machine as the source | ||
122 | address of the connection. Only useful on systems with more than | ||
123 | one address. | ||
124 | |||
125 | BindInterface | ||
126 | Use the address of the specified interface on the local machine | ||
127 | as the source address of the connection. | ||
128 | |||
129 | CanonicalDomains | ||
130 | When CanonicalizeHostname is enabled, this option specifies the | ||
131 | list of domain suffixes in which to search for the specified | ||
132 | destination host. | ||
133 | |||
134 | CanonicalizeFallbackLocal | ||
135 | Specifies whether to fail with an error when hostname | ||
136 | canonicalization fails. The default, yes, will attempt to look | ||
137 | up the unqualified hostname using the system resolver's search | ||
138 | rules. A value of no will cause ssh(1) to fail instantly if | ||
139 | CanonicalizeHostname is enabled and the target hostname cannot be | ||
140 | found in any of the domains specified by CanonicalDomains. | ||
141 | |||
142 | CanonicalizeHostname | ||
143 | Controls whether explicit hostname canonicalization is performed. | ||
144 | The default, no, is not to perform any name rewriting and let the | ||
145 | system resolver handle all hostname lookups. If set to yes then, | ||
146 | for connections that do not use a ProxyCommand or ProxyJump, | ||
147 | ssh(1) will attempt to canonicalize the hostname specified on the | ||
148 | command line using the CanonicalDomains suffixes and | ||
149 | CanonicalizePermittedCNAMEs rules. If CanonicalizeHostname is | ||
150 | set to always, then canonicalization is applied to proxied | ||
151 | connections too. | ||
152 | |||
153 | If this option is enabled, then the configuration files are | ||
154 | processed again using the new target name to pick up any new | ||
155 | configuration in matching Host and Match stanzas. | ||
156 | |||
157 | CanonicalizeMaxDots | ||
158 | Specifies the maximum number of dot characters in a hostname | ||
159 | before canonicalization is disabled. The default, 1, allows a | ||
160 | single dot (i.e. hostname.subdomain). | ||
161 | |||
162 | CanonicalizePermittedCNAMEs | ||
163 | Specifies rules to determine whether CNAMEs should be followed | ||
164 | when canonicalizing hostnames. The rules consist of one or more | ||
165 | arguments of source_domain_list:target_domain_list, where | ||
166 | source_domain_list is a pattern-list of domains that may follow | ||
167 | CNAMEs in canonicalization, and target_domain_list is a pattern- | ||
168 | list of domains that they may resolve to. | ||
169 | |||
170 | For example, "*.a.example.com:*.b.example.com,*.c.example.com" | ||
171 | will allow hostnames matching "*.a.example.com" to be | ||
172 | canonicalized to names in the "*.b.example.com" or | ||
173 | "*.c.example.com" domains. | ||
174 | |||
175 | CASignatureAlgorithms | ||
176 | Specifies which algorithms are allowed for signing of | ||
177 | certificates by certificate authorities (CAs). The default is: | ||
178 | |||
179 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
180 | ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
181 | |||
182 | ssh(1) will not accept host certificates signed using algorithms | ||
183 | other than those specified. | ||
184 | |||
185 | CertificateFile | ||
186 | Specifies a file from which the user's certificate is read. A | ||
187 | corresponding private key must be provided separately in order to | ||
188 | use this certificate either from an IdentityFile directive or -i | ||
189 | flag to ssh(1), via ssh-agent(1), or via a PKCS11Provider or | ||
190 | SecurityKeyProvider. | ||
191 | |||
192 | Arguments to CertificateFile may use the tilde syntax to refer to | ||
193 | a user's home directory, the tokens described in the TOKENS | ||
194 | section and environment variables as described in the ENVIRONMENT | ||
195 | VARIABLES section. | ||
196 | |||
197 | It is possible to have multiple certificate files specified in | ||
198 | configuration files; these certificates will be tried in | ||
199 | sequence. Multiple CertificateFile directives will add to the | ||
200 | list of certificates used for authentication. | ||
201 | |||
202 | ChallengeResponseAuthentication | ||
203 | Specifies whether to use challenge-response authentication. The | ||
204 | argument to this keyword must be yes (the default) or no. | ||
205 | |||
206 | CheckHostIP | ||
207 | If set to yes (the default), ssh(1) will additionally check the | ||
208 | host IP address in the known_hosts file. This allows it to | ||
209 | detect if a host key changed due to DNS spoofing and will add | ||
210 | addresses of destination hosts to ~/.ssh/known_hosts in the | ||
211 | process, regardless of the setting of StrictHostKeyChecking. If | ||
212 | the option is set to no, the check will not be executed. | ||
213 | |||
214 | Ciphers | ||
215 | Specifies the ciphers allowed and their order of preference. | ||
216 | Multiple ciphers must be comma-separated. If the specified list | ||
217 | begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified ciphers will be | ||
218 | appended to the default set instead of replacing them. If the | ||
219 | specified list begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified | ||
220 | ciphers (including wildcards) will be removed from the default | ||
221 | set instead of replacing them. If the specified list begins with | ||
222 | a M-bM-^@M-^X^M-bM-^@M-^Y character, then the specified ciphers will be placed at the | ||
223 | head of the default set. | ||
224 | |||
225 | The supported ciphers are: | ||
226 | |||
227 | 3des-cbc | ||
228 | aes128-cbc | ||
229 | aes192-cbc | ||
230 | aes256-cbc | ||
231 | aes128-ctr | ||
232 | aes192-ctr | ||
233 | aes256-ctr | ||
234 | aes128-gcm@openssh.com | ||
235 | aes256-gcm@openssh.com | ||
236 | chacha20-poly1305@openssh.com | ||
237 | |||
238 | The default is: | ||
239 | |||
240 | chacha20-poly1305@openssh.com, | ||
241 | aes128-ctr,aes192-ctr,aes256-ctr, | ||
242 | aes128-gcm@openssh.com,aes256-gcm@openssh.com | ||
243 | |||
244 | The list of available ciphers may also be obtained using "ssh -Q | ||
245 | cipher". | ||
246 | |||
247 | ClearAllForwardings | ||
248 | Specifies that all local, remote, and dynamic port forwardings | ||
249 | specified in the configuration files or on the command line be | ||
250 | cleared. This option is primarily useful when used from the | ||
251 | ssh(1) command line to clear port forwardings set in | ||
252 | configuration files, and is automatically set by scp(1) and | ||
253 | sftp(1). The argument must be yes or no (the default). | ||
254 | |||
255 | Compression | ||
256 | Specifies whether to use compression. The argument must be yes | ||
257 | or no (the default). | ||
258 | |||
259 | ConnectionAttempts | ||
260 | Specifies the number of tries (one per second) to make before | ||
261 | exiting. The argument must be an integer. This may be useful in | ||
262 | scripts if the connection sometimes fails. The default is 1. | ||
263 | |||
264 | ConnectTimeout | ||
265 | Specifies the timeout (in seconds) used when connecting to the | ||
266 | SSH server, instead of using the default system TCP timeout. | ||
267 | This timeout is applied both to establishing the connection and | ||
268 | to performing the initial SSH protocol handshake and key | ||
269 | exchange. | ||
270 | |||
271 | ControlMaster | ||
272 | Enables the sharing of multiple sessions over a single network | ||
273 | connection. When set to yes, ssh(1) will listen for connections | ||
274 | on a control socket specified using the ControlPath argument. | ||
275 | Additional sessions can connect to this socket using the same | ||
276 | ControlPath with ControlMaster set to no (the default). These | ||
277 | sessions will try to reuse the master instance's network | ||
278 | connection rather than initiating new ones, but will fall back to | ||
279 | connecting normally if the control socket does not exist, or is | ||
280 | not listening. | ||
281 | |||
282 | Setting this to ask will cause ssh(1) to listen for control | ||
283 | connections, but require confirmation using ssh-askpass(1). If | ||
284 | the ControlPath cannot be opened, ssh(1) will continue without | ||
285 | connecting to a master instance. | ||
286 | |||
287 | X11 and ssh-agent(1) forwarding is supported over these | ||
288 | multiplexed connections, however the display and agent forwarded | ||
289 | will be the one belonging to the master connection i.e. it is not | ||
290 | possible to forward multiple displays or agents. | ||
291 | |||
292 | Two additional options allow for opportunistic multiplexing: try | ||
293 | to use a master connection but fall back to creating a new one if | ||
294 | one does not already exist. These options are: auto and autoask. | ||
295 | The latter requires confirmation like the ask option. | ||
296 | |||
297 | ControlPath | ||
298 | Specify the path to the control socket used for connection | ||
299 | sharing as described in the ControlMaster section above or the | ||
300 | string none to disable connection sharing. Arguments to | ||
301 | ControlPath may use the tilde syntax to refer to a user's home | ||
302 | directory, the tokens described in the TOKENS section and | ||
303 | environment variables as described in the ENVIRONMENT VARIABLES | ||
304 | section. It is recommended that any ControlPath used for | ||
305 | opportunistic connection sharing include at least %h, %p, and %r | ||
306 | (or alternatively %C) and be placed in a directory that is not | ||
307 | writable by other users. This ensures that shared connections | ||
308 | are uniquely identified. | ||
309 | |||
310 | ControlPersist | ||
311 | When used in conjunction with ControlMaster, specifies that the | ||
312 | master connection should remain open in the background (waiting | ||
313 | for future client connections) after the initial client | ||
314 | connection has been closed. If set to no (the default), then the | ||
315 | master connection will not be placed into the background, and | ||
316 | will close as soon as the initial client connection is closed. | ||
317 | If set to yes or 0, then the master connection will remain in the | ||
318 | background indefinitely (until killed or closed via a mechanism | ||
319 | such as the "ssh -O exit"). If set to a time in seconds, or a | ||
320 | time in any of the formats documented in sshd_config(5), then the | ||
321 | backgrounded master connection will automatically terminate after | ||
322 | it has remained idle (with no client connections) for the | ||
323 | specified time. | ||
324 | |||
325 | DynamicForward | ||
326 | Specifies that a TCP port on the local machine be forwarded over | ||
327 | the secure channel, and the application protocol is then used to | ||
328 | determine where to connect to from the remote machine. | ||
329 | |||
330 | The argument must be [bind_address:]port. IPv6 addresses can be | ||
331 | specified by enclosing addresses in square brackets. By default, | ||
332 | the local port is bound in accordance with the GatewayPorts | ||
333 | setting. However, an explicit bind_address may be used to bind | ||
334 | the connection to a specific address. The bind_address of | ||
335 | localhost indicates that the listening port be bound for local | ||
336 | use only, while an empty address or M-bM-^@M-^X*M-bM-^@M-^Y indicates that the port | ||
337 | should be available from all interfaces. | ||
338 | |||
339 | Currently the SOCKS4 and SOCKS5 protocols are supported, and | ||
340 | ssh(1) will act as a SOCKS server. Multiple forwardings may be | ||
341 | specified, and additional forwardings can be given on the command | ||
342 | line. Only the superuser can forward privileged ports. | ||
343 | |||
344 | EnableSSHKeysign | ||
345 | Setting this option to yes in the global client configuration | ||
346 | file /etc/ssh/ssh_config enables the use of the helper program | ||
347 | ssh-keysign(8) during HostbasedAuthentication. The argument must | ||
348 | be yes or no (the default). This option should be placed in the | ||
349 | non-hostspecific section. See ssh-keysign(8) for more | ||
350 | information. | ||
351 | |||
352 | EscapeChar | ||
353 | Sets the escape character (default: M-bM-^@M-^X~M-bM-^@M-^Y). The escape character | ||
354 | can also be set on the command line. The argument should be a | ||
355 | single character, M-bM-^@M-^X^M-bM-^@M-^Y followed by a letter, or none to disable | ||
356 | the escape character entirely (making the connection transparent | ||
357 | for binary data). | ||
358 | |||
359 | ExitOnForwardFailure | ||
360 | Specifies whether ssh(1) should terminate the connection if it | ||
361 | cannot set up all requested dynamic, tunnel, local, and remote | ||
362 | port forwardings, (e.g. if either end is unable to bind and | ||
363 | listen on a specified port). Note that ExitOnForwardFailure does | ||
364 | not apply to connections made over port forwardings and will not, | ||
365 | for example, cause ssh(1) to exit if TCP connections to the | ||
366 | ultimate forwarding destination fail. The argument must be yes | ||
367 | or no (the default). | ||
368 | |||
369 | FingerprintHash | ||
370 | Specifies the hash algorithm used when displaying key | ||
371 | fingerprints. Valid options are: md5 and sha256 (the default). | ||
372 | |||
373 | ForwardAgent | ||
374 | Specifies whether the connection to the authentication agent (if | ||
375 | any) will be forwarded to the remote machine. The argument may | ||
376 | be yes, no (the default), an explicit path to an agent socket or | ||
377 | the name of an environment variable (beginning with M-bM-^@M-^X$M-bM-^@M-^Y) in which | ||
378 | to find the path. | ||
379 | |||
380 | Agent forwarding should be enabled with caution. Users with the | ||
381 | ability to bypass file permissions on the remote host (for the | ||
382 | agent's Unix-domain socket) can access the local agent through | ||
383 | the forwarded connection. An attacker cannot obtain key material | ||
384 | from the agent, however they can perform operations on the keys | ||
385 | that enable them to authenticate using the identities loaded into | ||
386 | the agent. | ||
387 | |||
388 | ForwardX11 | ||
389 | Specifies whether X11 connections will be automatically | ||
390 | redirected over the secure channel and DISPLAY set. The argument | ||
391 | must be yes or no (the default). | ||
392 | |||
393 | X11 forwarding should be enabled with caution. Users with the | ||
394 | ability to bypass file permissions on the remote host (for the | ||
395 | user's X11 authorization database) can access the local X11 | ||
396 | display through the forwarded connection. An attacker may then | ||
397 | be able to perform activities such as keystroke monitoring if the | ||
398 | ForwardX11Trusted option is also enabled. | ||
399 | |||
400 | ForwardX11Timeout | ||
401 | Specify a timeout for untrusted X11 forwarding using the format | ||
402 | described in the TIME FORMATS section of sshd_config(5). X11 | ||
403 | connections received by ssh(1) after this time will be refused. | ||
404 | Setting ForwardX11Timeout to zero will disable the timeout and | ||
405 | permit X11 forwarding for the life of the connection. The | ||
406 | default is to disable untrusted X11 forwarding after twenty | ||
407 | minutes has elapsed. | ||
408 | |||
409 | ForwardX11Trusted | ||
410 | If this option is set to yes, remote X11 clients will have full | ||
411 | access to the original X11 display. | ||
412 | |||
413 | If this option is set to no (the default), remote X11 clients | ||
414 | will be considered untrusted and prevented from stealing or | ||
415 | tampering with data belonging to trusted X11 clients. | ||
416 | Furthermore, the xauth(1) token used for the session will be set | ||
417 | to expire after 20 minutes. Remote clients will be refused | ||
418 | access after this time. | ||
419 | |||
420 | See the X11 SECURITY extension specification for full details on | ||
421 | the restrictions imposed on untrusted clients. | ||
422 | |||
423 | GatewayPorts | ||
424 | Specifies whether remote hosts are allowed to connect to local | ||
425 | forwarded ports. By default, ssh(1) binds local port forwardings | ||
426 | to the loopback address. This prevents other remote hosts from | ||
427 | connecting to forwarded ports. GatewayPorts can be used to | ||
428 | specify that ssh should bind local port forwardings to the | ||
429 | wildcard address, thus allowing remote hosts to connect to | ||
430 | forwarded ports. The argument must be yes or no (the default). | ||
431 | |||
432 | GlobalKnownHostsFile | ||
433 | Specifies one or more files to use for the global host key | ||
434 | database, separated by whitespace. The default is | ||
435 | /etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2. | ||
436 | |||
437 | GSSAPIAuthentication | ||
438 | Specifies whether user authentication based on GSSAPI is allowed. | ||
439 | The default is no. | ||
440 | |||
441 | GSSAPIDelegateCredentials | ||
442 | Forward (delegate) credentials to the server. The default is no. | ||
443 | |||
444 | HashKnownHosts | ||
445 | Indicates that ssh(1) should hash host names and addresses when | ||
446 | they are added to ~/.ssh/known_hosts. These hashed names may be | ||
447 | used normally by ssh(1) and sshd(8), but they do not visually | ||
448 | reveal identifying information if the file's contents are | ||
449 | disclosed. The default is no. Note that existing names and | ||
450 | addresses in known hosts files will not be converted | ||
451 | automatically, but may be manually hashed using ssh-keygen(1). | ||
452 | |||
453 | HostbasedAuthentication | ||
454 | Specifies whether to try rhosts based authentication with public | ||
455 | key authentication. The argument must be yes or no (the | ||
456 | default). | ||
457 | |||
458 | HostbasedKeyTypes | ||
459 | Specifies the key types that will be used for hostbased | ||
460 | authentication as a comma-separated list of patterns. | ||
461 | Alternately if the specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, | ||
462 | then the specified key types will be appended to the default set | ||
463 | instead of replacing them. If the specified list begins with a | ||
464 | M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards) | ||
465 | will be removed from the default set instead of replacing them. | ||
466 | If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the | ||
467 | specified key types will be placed at the head of the default | ||
468 | set. The default for this option is: | ||
469 | |||
470 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
471 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
472 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
473 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
474 | ssh-ed25519-cert-v01@openssh.com, | ||
475 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
476 | rsa-sha2-512-cert-v01@openssh.com, | ||
477 | rsa-sha2-256-cert-v01@openssh.com, | ||
478 | ssh-rsa-cert-v01@openssh.com, | ||
479 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
480 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
481 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
482 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
483 | |||
484 | The -Q option of ssh(1) may be used to list supported key types. | ||
485 | |||
486 | HostKeyAlgorithms | ||
487 | Specifies the host key algorithms that the client wants to use in | ||
488 | order of preference. Alternately if the specified list begins | ||
489 | with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified key types will be | ||
490 | appended to the default set instead of replacing them. If the | ||
491 | specified list begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified | ||
492 | key types (including wildcards) will be removed from the default | ||
493 | set instead of replacing them. If the specified list begins with | ||
494 | a M-bM-^@M-^X^M-bM-^@M-^Y character, then the specified key types will be placed at | ||
495 | the head of the default set. The default for this option is: | ||
496 | |||
497 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
498 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
499 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
500 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
501 | ssh-ed25519-cert-v01@openssh.com, | ||
502 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
503 | rsa-sha2-512-cert-v01@openssh.com, | ||
504 | rsa-sha2-256-cert-v01@openssh.com, | ||
505 | ssh-rsa-cert-v01@openssh.com, | ||
506 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
507 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
508 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
509 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
510 | |||
511 | If hostkeys are known for the destination host then this default | ||
512 | is modified to prefer their algorithms. | ||
513 | |||
514 | The list of available key types may also be obtained using "ssh | ||
515 | -Q HostKeyAlgorithms". | ||
516 | |||
517 | HostKeyAlias | ||
518 | Specifies an alias that should be used instead of the real host | ||
519 | name when looking up or saving the host key in the host key | ||
520 | database files and when validating host certificates. This | ||
521 | option is useful for tunneling SSH connections or for multiple | ||
522 | servers running on a single host. | ||
523 | |||
524 | Hostname | ||
525 | Specifies the real host name to log into. This can be used to | ||
526 | specify nicknames or abbreviations for hosts. Arguments to | ||
527 | Hostname accept the tokens described in the TOKENS section. | ||
528 | Numeric IP addresses are also permitted (both on the command line | ||
529 | and in Hostname specifications). The default is the name given | ||
530 | on the command line. | ||
531 | |||
532 | IdentitiesOnly | ||
533 | Specifies that ssh(1) should only use the configured | ||
534 | authentication identity and certificate files (either the default | ||
535 | files, or those explicitly configured in the ssh_config files or | ||
536 | passed on the ssh(1) command-line), even if ssh-agent(1) or a | ||
537 | PKCS11Provider or SecurityKeyProvider offers more identities. | ||
538 | The argument to this keyword must be yes or no (the default). | ||
539 | This option is intended for situations where ssh-agent offers | ||
540 | many different identities. | ||
541 | |||
542 | IdentityAgent | ||
543 | Specifies the UNIX-domain socket used to communicate with the | ||
544 | authentication agent. | ||
545 | |||
546 | This option overrides the SSH_AUTH_SOCK environment variable and | ||
547 | can be used to select a specific agent. Setting the socket name | ||
548 | to none disables the use of an authentication agent. If the | ||
549 | string "SSH_AUTH_SOCK" is specified, the location of the socket | ||
550 | will be read from the SSH_AUTH_SOCK environment variable. | ||
551 | Otherwise if the specified value begins with a M-bM-^@M-^X$M-bM-^@M-^Y character, | ||
552 | then it will be treated as an environment variable containing the | ||
553 | location of the socket. | ||
554 | |||
555 | Arguments to IdentityAgent may use the tilde syntax to refer to a | ||
556 | user's home directory, the tokens described in the TOKENS section | ||
557 | and environment variables as described in the ENVIRONMENT | ||
558 | VARIABLES section. | ||
559 | |||
560 | IdentityFile | ||
561 | Specifies a file from which the user's DSA, ECDSA, authenticator- | ||
562 | hosted ECDSA, Ed25519, authenticator-hosted Ed25519 or RSA | ||
563 | authentication identity is read. The default is ~/.ssh/id_dsa, | ||
564 | ~/.ssh/id_ecdsa, ~/.ssh/id_ecdsa_sk, ~/.ssh/id_ed25519, | ||
565 | ~/.ssh/id_ed25519_sk and ~/.ssh/id_rsa. Additionally, any | ||
566 | identities represented by the authentication agent will be used | ||
567 | for authentication unless IdentitiesOnly is set. If no | ||
568 | certificates have been explicitly specified by CertificateFile, | ||
569 | ssh(1) will try to load certificate information from the filename | ||
570 | obtained by appending -cert.pub to the path of a specified | ||
571 | IdentityFile. | ||
572 | |||
573 | Arguments to IdentityFile may use the tilde syntax to refer to a | ||
574 | user's home directory or the tokens described in the TOKENS | ||
575 | section. | ||
576 | |||
577 | It is possible to have multiple identity files specified in | ||
578 | configuration files; all these identities will be tried in | ||
579 | sequence. Multiple IdentityFile directives will add to the list | ||
580 | of identities tried (this behaviour differs from that of other | ||
581 | configuration directives). | ||
582 | |||
583 | IdentityFile may be used in conjunction with IdentitiesOnly to | ||
584 | select which identities in an agent are offered during | ||
585 | authentication. IdentityFile may also be used in conjunction | ||
586 | with CertificateFile in order to provide any certificate also | ||
587 | needed for authentication with the identity. | ||
588 | |||
589 | IgnoreUnknown | ||
590 | Specifies a pattern-list of unknown options to be ignored if they | ||
591 | are encountered in configuration parsing. This may be used to | ||
592 | suppress errors if ssh_config contains options that are | ||
593 | unrecognised by ssh(1). It is recommended that IgnoreUnknown be | ||
594 | listed early in the configuration file as it will not be applied | ||
595 | to unknown options that appear before it. | ||
596 | |||
597 | Include | ||
598 | Include the specified configuration file(s). Multiple pathnames | ||
599 | may be specified and each pathname may contain glob(7) wildcards | ||
600 | and, for user configurations, shell-like M-bM-^@M-^X~M-bM-^@M-^Y references to user | ||
601 | home directories. Wildcards will be expanded and processed in | ||
602 | lexical order. Files without absolute paths are assumed to be in | ||
603 | ~/.ssh if included in a user configuration file or /etc/ssh if | ||
604 | included from the system configuration file. Include directive | ||
605 | may appear inside a Match or Host block to perform conditional | ||
606 | inclusion. | ||
607 | |||
608 | IPQoS Specifies the IPv4 type-of-service or DSCP class for connections. | ||
609 | Accepted values are af11, af12, af13, af21, af22, af23, af31, | ||
610 | af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, cs4, cs5, cs6, | ||
611 | cs7, ef, le, lowdelay, throughput, reliability, a numeric value, | ||
612 | or none to use the operating system default. This option may | ||
613 | take one or two arguments, separated by whitespace. If one | ||
614 | argument is specified, it is used as the packet class | ||
615 | unconditionally. If two values are specified, the first is | ||
616 | automatically selected for interactive sessions and the second | ||
617 | for non-interactive sessions. The default is af21 (Low-Latency | ||
618 | Data) for interactive sessions and cs1 (Lower Effort) for non- | ||
619 | interactive sessions. | ||
620 | |||
621 | KbdInteractiveAuthentication | ||
622 | Specifies whether to use keyboard-interactive authentication. | ||
623 | The argument to this keyword must be yes (the default) or no. | ||
624 | |||
625 | KbdInteractiveDevices | ||
626 | Specifies the list of methods to use in keyboard-interactive | ||
627 | authentication. Multiple method names must be comma-separated. | ||
628 | The default is to use the server specified list. The methods | ||
629 | available vary depending on what the server supports. For an | ||
630 | OpenSSH server, it may be zero or more of: bsdauth and pam. | ||
631 | |||
632 | KexAlgorithms | ||
633 | Specifies the available KEX (Key Exchange) algorithms. Multiple | ||
634 | algorithms must be comma-separated. If the specified list begins | ||
635 | with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified methods will be appended | ||
636 | to the default set instead of replacing them. If the specified | ||
637 | list begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified methods | ||
638 | (including wildcards) will be removed from the default set | ||
639 | instead of replacing them. If the specified list begins with a | ||
640 | M-bM-^@M-^X^M-bM-^@M-^Y character, then the specified methods will be placed at the | ||
641 | head of the default set. The default is: | ||
642 | |||
643 | curve25519-sha256,curve25519-sha256@libssh.org, | ||
644 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | ||
645 | diffie-hellman-group-exchange-sha256, | ||
646 | diffie-hellman-group16-sha512, | ||
647 | diffie-hellman-group18-sha512, | ||
648 | diffie-hellman-group14-sha256 | ||
649 | |||
650 | The list of available key exchange algorithms may also be | ||
651 | obtained using "ssh -Q kex". | ||
652 | |||
653 | LocalCommand | ||
654 | Specifies a command to execute on the local machine after | ||
655 | successfully connecting to the server. The command string | ||
656 | extends to the end of the line, and is executed with the user's | ||
657 | shell. Arguments to LocalCommand accept the tokens described in | ||
658 | the TOKENS section. | ||
659 | |||
660 | The command is run synchronously and does not have access to the | ||
661 | session of the ssh(1) that spawned it. It should not be used for | ||
662 | interactive commands. | ||
663 | |||
664 | This directive is ignored unless PermitLocalCommand has been | ||
665 | enabled. | ||
666 | |||
667 | LocalForward | ||
668 | Specifies that a TCP port on the local machine be forwarded over | ||
669 | the secure channel to the specified host and port from the remote | ||
670 | machine. The first argument specifies the listener and may be | ||
671 | [bind_address:]port or a Unix domain socket path. The second | ||
672 | argument is the destination and may be host:hostport or a Unix | ||
673 | domain socket path if the remote host supports it. | ||
674 | |||
675 | IPv6 addresses can be specified by enclosing addresses in square | ||
676 | brackets. Multiple forwardings may be specified, and additional | ||
677 | forwardings can be given on the command line. Only the superuser | ||
678 | can forward privileged ports. By default, the local port is | ||
679 | bound in accordance with the GatewayPorts setting. However, an | ||
680 | explicit bind_address may be used to bind the connection to a | ||
681 | specific address. The bind_address of localhost indicates that | ||
682 | the listening port be bound for local use only, while an empty | ||
683 | address or M-bM-^@M-^X*M-bM-^@M-^Y indicates that the port should be available from | ||
684 | all interfaces. Unix domain socket paths may use the tokens | ||
685 | described in the TOKENS section and environment variables as | ||
686 | described in the ENVIRONMENT VARIABLES section. | ||
687 | |||
688 | LogLevel | ||
689 | Gives the verbosity level that is used when logging messages from | ||
690 | ssh(1). The possible values are: QUIET, FATAL, ERROR, INFO, | ||
691 | VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO. | ||
692 | DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify | ||
693 | higher levels of verbose output. | ||
694 | |||
695 | MACs Specifies the MAC (message authentication code) algorithms in | ||
696 | order of preference. The MAC algorithm is used for data | ||
697 | integrity protection. Multiple algorithms must be comma- | ||
698 | separated. If the specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, | ||
699 | then the specified algorithms will be appended to the default set | ||
700 | instead of replacing them. If the specified list begins with a | ||
701 | M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified algorithms (including | ||
702 | wildcards) will be removed from the default set instead of | ||
703 | replacing them. If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y | ||
704 | character, then the specified algorithms will be placed at the | ||
705 | head of the default set. | ||
706 | |||
707 | The algorithms that contain "-etm" calculate the MAC after | ||
708 | encryption (encrypt-then-mac). These are considered safer and | ||
709 | their use recommended. | ||
710 | |||
711 | The default is: | ||
712 | |||
713 | umac-64-etm@openssh.com,umac-128-etm@openssh.com, | ||
714 | hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, | ||
715 | hmac-sha1-etm@openssh.com, | ||
716 | umac-64@openssh.com,umac-128@openssh.com, | ||
717 | hmac-sha2-256,hmac-sha2-512,hmac-sha1 | ||
718 | |||
719 | The list of available MAC algorithms may also be obtained using | ||
720 | "ssh -Q mac". | ||
721 | |||
722 | NoHostAuthenticationForLocalhost | ||
723 | Disable host authentication for localhost (loopback addresses). | ||
724 | The argument to this keyword must be yes or no (the default). | ||
725 | |||
726 | NumberOfPasswordPrompts | ||
727 | Specifies the number of password prompts before giving up. The | ||
728 | argument to this keyword must be an integer. The default is 3. | ||
729 | |||
730 | PasswordAuthentication | ||
731 | Specifies whether to use password authentication. The argument | ||
732 | to this keyword must be yes (the default) or no. | ||
733 | |||
734 | PermitLocalCommand | ||
735 | Allow local command execution via the LocalCommand option or | ||
736 | using the !command escape sequence in ssh(1). The argument must | ||
737 | be yes or no (the default). | ||
738 | |||
739 | PKCS11Provider | ||
740 | Specifies which PKCS#11 provider to use or none to indicate that | ||
741 | no provider should be used (the default). The argument to this | ||
742 | keyword is a path to the PKCS#11 shared library ssh(1) should use | ||
743 | to communicate with a PKCS#11 token providing keys for user | ||
744 | authentication. | ||
745 | |||
746 | Port Specifies the port number to connect on the remote host. The | ||
747 | default is 22. | ||
748 | |||
749 | PreferredAuthentications | ||
750 | Specifies the order in which the client should try authentication | ||
751 | methods. This allows a client to prefer one method (e.g. | ||
752 | keyboard-interactive) over another method (e.g. password). The | ||
753 | default is: | ||
754 | |||
755 | gssapi-with-mic,hostbased,publickey, | ||
756 | keyboard-interactive,password | ||
757 | |||
758 | ProxyCommand | ||
759 | Specifies the command to use to connect to the server. The | ||
760 | command string extends to the end of the line, and is executed | ||
761 | using the user's shell M-bM-^@M-^XexecM-bM-^@M-^Y directive to avoid a lingering | ||
762 | shell process. | ||
763 | |||
764 | Arguments to ProxyCommand accept the tokens described in the | ||
765 | TOKENS section. The command can be basically anything, and | ||
766 | should read from its standard input and write to its standard | ||
767 | output. It should eventually connect an sshd(8) server running | ||
768 | on some machine, or execute sshd -i somewhere. Host key | ||
769 | management will be done using the Hostname of the host being | ||
770 | connected (defaulting to the name typed by the user). Setting | ||
771 | the command to none disables this option entirely. Note that | ||
772 | CheckHostIP is not available for connects with a proxy command. | ||
773 | |||
774 | This directive is useful in conjunction with nc(1) and its proxy | ||
775 | support. For example, the following directive would connect via | ||
776 | an HTTP proxy at 192.0.2.0: | ||
777 | |||
778 | ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p | ||
779 | |||
780 | ProxyJump | ||
781 | Specifies one or more jump proxies as either [user@]host[:port] | ||
782 | or an ssh URI. Multiple proxies may be separated by comma | ||
783 | characters and will be visited sequentially. Setting this option | ||
784 | will cause ssh(1) to connect to the target host by first making a | ||
785 | ssh(1) connection to the specified ProxyJump host and then | ||
786 | establishing a TCP forwarding to the ultimate target from there. | ||
787 | |||
788 | Note that this option will compete with the ProxyCommand option - | ||
789 | whichever is specified first will prevent later instances of the | ||
790 | other from taking effect. | ||
791 | |||
792 | Note also that the configuration for the destination host (either | ||
793 | supplied via the command-line or the configuration file) is not | ||
794 | generally applied to jump hosts. ~/.ssh/config should be used if | ||
795 | specific configuration is required for jump hosts. | ||
796 | |||
797 | ProxyUseFdpass | ||
798 | Specifies that ProxyCommand will pass a connected file descriptor | ||
799 | back to ssh(1) instead of continuing to execute and pass data. | ||
800 | The default is no. | ||
801 | |||
802 | PubkeyAcceptedKeyTypes | ||
803 | Specifies the key types that will be used for public key | ||
804 | authentication as a comma-separated list of patterns. If the | ||
805 | specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the key types | ||
806 | after it will be appended to the default instead of replacing it. | ||
807 | If the specified list begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the | ||
808 | specified key types (including wildcards) will be removed from | ||
809 | the default set instead of replacing them. If the specified list | ||
810 | begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the specified key types will be | ||
811 | placed at the head of the default set. The default for this | ||
812 | option is: | ||
813 | |||
814 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
815 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
816 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
817 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
818 | ssh-ed25519-cert-v01@openssh.com, | ||
819 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
820 | rsa-sha2-512-cert-v01@openssh.com, | ||
821 | rsa-sha2-256-cert-v01@openssh.com, | ||
822 | ssh-rsa-cert-v01@openssh.com, | ||
823 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
824 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
825 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
826 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
827 | |||
828 | The list of available key types may also be obtained using "ssh | ||
829 | -Q PubkeyAcceptedKeyTypes". | ||
830 | |||
831 | PubkeyAuthentication | ||
832 | Specifies whether to try public key authentication. The argument | ||
833 | to this keyword must be yes (the default) or no. | ||
834 | |||
835 | RekeyLimit | ||
836 | Specifies the maximum amount of data that may be transmitted | ||
837 | before the session key is renegotiated, optionally followed a | ||
838 | maximum amount of time that may pass before the session key is | ||
839 | renegotiated. The first argument is specified in bytes and may | ||
840 | 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, | ||
841 | Megabytes, or Gigabytes, respectively. The default is between | ||
842 | M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second | ||
843 | value is specified in seconds and may use any of the units | ||
844 | documented in the TIME FORMATS section of sshd_config(5). The | ||
845 | default value for RekeyLimit is default none, which means that | ||
846 | rekeying is performed after the cipher's default amount of data | ||
847 | has been sent or received and no time based rekeying is done. | ||
848 | |||
849 | RemoteCommand | ||
850 | Specifies a command to execute on the remote machine after | ||
851 | successfully connecting to the server. The command string | ||
852 | extends to the end of the line, and is executed with the user's | ||
853 | shell. Arguments to RemoteCommand accept the tokens described in | ||
854 | the TOKENS section. | ||
855 | |||
856 | RemoteForward | ||
857 | Specifies that a TCP port on the remote machine be forwarded over | ||
858 | the secure channel. The remote port may either be forwarded to a | ||
859 | specified host and port from the local machine, or may act as a | ||
860 | SOCKS 4/5 proxy that allows a remote client to connect to | ||
861 | arbitrary destinations from the local machine. The first | ||
862 | argument is the listening specification and may be | ||
863 | [bind_address:]port or, if the remote host supports it, a Unix | ||
864 | domain socket path. If forwarding to a specific destination then | ||
865 | the second argument must be host:hostport or a Unix domain socket | ||
866 | path, otherwise if no destination argument is specified then the | ||
867 | remote forwarding will be established as a SOCKS proxy. | ||
868 | |||
869 | IPv6 addresses can be specified by enclosing addresses in square | ||
870 | brackets. Multiple forwardings may be specified, and additional | ||
871 | forwardings can be given on the command line. Privileged ports | ||
872 | can be forwarded only when logging in as root on the remote | ||
873 | machine. Unix domain socket paths may use the tokens described | ||
874 | in the TOKENS section and environment variables as described in | ||
875 | the ENVIRONMENT VARIABLES section. | ||
876 | |||
877 | If the port argument is 0, the listen port will be dynamically | ||
878 | allocated on the server and reported to the client at run time. | ||
879 | |||
880 | If the bind_address is not specified, the default is to only bind | ||
881 | to loopback addresses. If the bind_address is M-bM-^@M-^X*M-bM-^@M-^Y or an empty | ||
882 | string, then the forwarding is requested to listen on all | ||
883 | interfaces. Specifying a remote bind_address will only succeed | ||
884 | if the server's GatewayPorts option is enabled (see | ||
885 | sshd_config(5)). | ||
886 | |||
887 | RequestTTY | ||
888 | Specifies whether to request a pseudo-tty for the session. The | ||
889 | argument may be one of: no (never request a TTY), yes (always | ||
890 | request a TTY when standard input is a TTY), force (always | ||
891 | request a TTY) or auto (request a TTY when opening a login | ||
892 | session). This option mirrors the -t and -T flags for ssh(1). | ||
893 | |||
894 | RevokedHostKeys | ||
895 | Specifies revoked host public keys. Keys listed in this file | ||
896 | will be refused for host authentication. Note that if this file | ||
897 | does not exist or is not readable, then host authentication will | ||
898 | be refused for all hosts. Keys may be specified as a text file, | ||
899 | listing one public key per line, or as an OpenSSH Key Revocation | ||
900 | List (KRL) as generated by ssh-keygen(1). For more information | ||
901 | on KRLs, see the KEY REVOCATION LISTS section in ssh-keygen(1). | ||
902 | |||
903 | SecurityKeyProvider | ||
904 | Specifies a path to a library that will be used when loading any | ||
905 | FIDO authenticator-hosted keys, overriding the default of using | ||
906 | the built-in USB HID support. | ||
907 | |||
908 | If the specified value begins with a M-bM-^@M-^X$M-bM-^@M-^Y character, then it will | ||
909 | be treated as an environment variable containing the path to the | ||
910 | library. | ||
911 | |||
912 | SendEnv | ||
913 | Specifies what variables from the local environ(7) should be sent | ||
914 | to the server. The server must also support it, and the server | ||
915 | must be configured to accept these environment variables. Note | ||
916 | that the TERM environment variable is always sent whenever a | ||
917 | pseudo-terminal is requested as it is required by the protocol. | ||
918 | Refer to AcceptEnv in sshd_config(5) for how to configure the | ||
919 | server. Variables are specified by name, which may contain | ||
920 | wildcard characters. Multiple environment variables may be | ||
921 | separated by whitespace or spread across multiple SendEnv | ||
922 | directives. | ||
923 | |||
924 | See PATTERNS for more information on patterns. | ||
925 | |||
926 | It is possible to clear previously set SendEnv variable names by | ||
927 | prefixing patterns with -. The default is not to send any | ||
928 | environment variables. | ||
929 | |||
930 | ServerAliveCountMax | ||
931 | Sets the number of server alive messages (see below) which may be | ||
932 | sent without ssh(1) receiving any messages back from the server. | ||
933 | If this threshold is reached while server alive messages are | ||
934 | being sent, ssh will disconnect from the server, terminating the | ||
935 | session. It is important to note that the use of server alive | ||
936 | messages is very different from TCPKeepAlive (below). The server | ||
937 | alive messages are sent through the encrypted channel and | ||
938 | therefore will not be spoofable. The TCP keepalive option | ||
939 | enabled by TCPKeepAlive is spoofable. The server alive mechanism | ||
940 | is valuable when the client or server depend on knowing when a | ||
941 | connection has become unresponsive. | ||
942 | |||
943 | The default value is 3. If, for example, ServerAliveInterval | ||
944 | (see below) is set to 15 and ServerAliveCountMax is left at the | ||
945 | default, if the server becomes unresponsive, ssh will disconnect | ||
946 | after approximately 45 seconds. | ||
947 | |||
948 | ServerAliveInterval | ||
949 | Sets a timeout interval in seconds after which if no data has | ||
950 | been received from the server, ssh(1) will send a message through | ||
951 | the encrypted channel to request a response from the server. The | ||
952 | default is 0, indicating that these messages will not be sent to | ||
953 | the server. | ||
954 | |||
955 | SetEnv Directly specify one or more environment variables and their | ||
956 | contents to be sent to the server. Similarly to SendEnv, the | ||
957 | server must be prepared to accept the environment variable. | ||
958 | |||
959 | StreamLocalBindMask | ||
960 | Sets the octal file creation mode mask (umask) used when creating | ||
961 | a Unix-domain socket file for local or remote port forwarding. | ||
962 | This option is only used for port forwarding to a Unix-domain | ||
963 | socket file. | ||
964 | |||
965 | The default value is 0177, which creates a Unix-domain socket | ||
966 | file that is readable and writable only by the owner. Note that | ||
967 | not all operating systems honor the file mode on Unix-domain | ||
968 | socket files. | ||
969 | |||
970 | StreamLocalBindUnlink | ||
971 | Specifies whether to remove an existing Unix-domain socket file | ||
972 | for local or remote port forwarding before creating a new one. | ||
973 | If the socket file already exists and StreamLocalBindUnlink is | ||
974 | not enabled, ssh will be unable to forward the port to the Unix- | ||
975 | domain socket file. This option is only used for port forwarding | ||
976 | to a Unix-domain socket file. | ||
977 | |||
978 | The argument must be yes or no (the default). | ||
979 | |||
980 | StrictHostKeyChecking | ||
981 | If this flag is set to yes, ssh(1) will never automatically add | ||
982 | host keys to the ~/.ssh/known_hosts file, and refuses to connect | ||
983 | to hosts whose host key has changed. This provides maximum | ||
984 | protection against man-in-the-middle (MITM) attacks, though it | ||
985 | can be annoying when the /etc/ssh/ssh_known_hosts file is poorly | ||
986 | maintained or when connections to new hosts are frequently made. | ||
987 | This option forces the user to manually add all new hosts. | ||
988 | |||
989 | If this flag is set to M-bM-^@M-^\accept-newM-bM-^@M-^] then ssh will automatically | ||
990 | add new host keys to the user known hosts files, but will not | ||
991 | permit connections to hosts with changed host keys. If this flag | ||
992 | is set to M-bM-^@M-^\noM-bM-^@M-^] or M-bM-^@M-^\offM-bM-^@M-^], ssh will automatically add new host keys | ||
993 | to the user known hosts files and allow connections to hosts with | ||
994 | changed hostkeys to proceed, subject to some restrictions. If | ||
995 | this flag is set to ask (the default), new host keys will be | ||
996 | added to the user known host files only after the user has | ||
997 | confirmed that is what they really want to do, and ssh will | ||
998 | refuse to connect to hosts whose host key has changed. The host | ||
999 | keys of known hosts will be verified automatically in all cases. | ||
1000 | |||
1001 | SyslogFacility | ||
1002 | Gives the facility code that is used when logging messages from | ||
1003 | ssh(1). The possible values are: DAEMON, USER, AUTH, LOCAL0, | ||
1004 | LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The | ||
1005 | default is USER. | ||
1006 | |||
1007 | TCPKeepAlive | ||
1008 | Specifies whether the system should send TCP keepalive messages | ||
1009 | to the other side. If they are sent, death of the connection or | ||
1010 | crash of one of the machines will be properly noticed. However, | ||
1011 | this means that connections will die if the route is down | ||
1012 | temporarily, and some people find it annoying. | ||
1013 | |||
1014 | The default is yes (to send TCP keepalive messages), and the | ||
1015 | client will notice if the network goes down or the remote host | ||
1016 | dies. This is important in scripts, and many users want it too. | ||
1017 | |||
1018 | To disable TCP keepalive messages, the value should be set to no. | ||
1019 | See also ServerAliveInterval for protocol-level keepalives. | ||
1020 | |||
1021 | Tunnel Request tun(4) device forwarding between the client and the | ||
1022 | server. The argument must be yes, point-to-point (layer 3), | ||
1023 | ethernet (layer 2), or no (the default). Specifying yes requests | ||
1024 | the default tunnel mode, which is point-to-point. | ||
1025 | |||
1026 | TunnelDevice | ||
1027 | Specifies the tun(4) devices to open on the client (local_tun) | ||
1028 | and the server (remote_tun). | ||
1029 | |||
1030 | The argument must be local_tun[:remote_tun]. The devices may be | ||
1031 | specified by numerical ID or the keyword any, which uses the next | ||
1032 | available tunnel device. If remote_tun is not specified, it | ||
1033 | defaults to any. The default is any:any. | ||
1034 | |||
1035 | UpdateHostKeys | ||
1036 | Specifies whether ssh(1) should accept notifications of | ||
1037 | additional hostkeys from the server sent after authentication has | ||
1038 | completed and add them to UserKnownHostsFile. The argument must | ||
1039 | be yes, no or ask. This option allows learning alternate | ||
1040 | hostkeys for a server and supports graceful key rotation by | ||
1041 | allowing a server to send replacement public keys before old ones | ||
1042 | are removed. Additional hostkeys are only accepted if the key | ||
1043 | used to authenticate the host was already trusted or explicitly | ||
1044 | accepted by the user. | ||
1045 | |||
1046 | UpdateHostKeys is enabled by default if the user has not | ||
1047 | overridden the default UserKnownHostsFile setting, otherwise | ||
1048 | UpdateHostKeys will be set to ask. | ||
1049 | |||
1050 | If UpdateHostKeys is set to ask, then the user is asked to | ||
1051 | confirm the modifications to the known_hosts file. Confirmation | ||
1052 | is currently incompatible with ControlPersist, and will be | ||
1053 | disabled if it is enabled. | ||
1054 | |||
1055 | Presently, only sshd(8) from OpenSSH 6.8 and greater support the | ||
1056 | "hostkeys@openssh.com" protocol extension used to inform the | ||
1057 | client of all the server's hostkeys. | ||
1058 | |||
1059 | User Specifies the user to log in as. This can be useful when a | ||
1060 | different user name is used on different machines. This saves | ||
1061 | the trouble of having to remember to give the user name on the | ||
1062 | command line. | ||
1063 | |||
1064 | UserKnownHostsFile | ||
1065 | Specifies one or more files to use for the user host key | ||
1066 | database, separated by whitespace. Each filename may use tilde | ||
1067 | notation to refer to the user's home directory, the tokens | ||
1068 | described in the TOKENS section and environment variables as | ||
1069 | described in the ENVIRONMENT VARIABLES section. The default is | ||
1070 | ~/.ssh/known_hosts, ~/.ssh/known_hosts2. | ||
1071 | |||
1072 | VerifyHostKeyDNS | ||
1073 | Specifies whether to verify the remote key using DNS and SSHFP | ||
1074 | resource records. If this option is set to yes, the client will | ||
1075 | implicitly trust keys that match a secure fingerprint from DNS. | ||
1076 | Insecure fingerprints will be handled as if this option was set | ||
1077 | to ask. If this option is set to ask, information on fingerprint | ||
1078 | match will be displayed, but the user will still need to confirm | ||
1079 | new host keys according to the StrictHostKeyChecking option. The | ||
1080 | default is no. | ||
1081 | |||
1082 | See also VERIFYING HOST KEYS in ssh(1). | ||
1083 | |||
1084 | VisualHostKey | ||
1085 | If this flag is set to yes, an ASCII art representation of the | ||
1086 | remote host key fingerprint is printed in addition to the | ||
1087 | fingerprint string at login and for unknown host keys. If this | ||
1088 | flag is set to no (the default), no fingerprint strings are | ||
1089 | printed at login and only the fingerprint string will be printed | ||
1090 | for unknown host keys. | ||
1091 | |||
1092 | XAuthLocation | ||
1093 | Specifies the full pathname of the xauth(1) program. The default | ||
1094 | is /usr/X11R6/bin/xauth. | ||
1095 | |||
1096 | PATTERNS | ||
1097 | A pattern consists of zero or more non-whitespace characters, M-bM-^@M-^X*M-bM-^@M-^Y (a | ||
1098 | wildcard that matches zero or more characters), or M-bM-^@M-^X?M-bM-^@M-^Y (a wildcard that | ||
1099 | matches exactly one character). For example, to specify a set of | ||
1100 | declarations for any host in the ".co.uk" set of domains, the following | ||
1101 | pattern could be used: | ||
1102 | |||
1103 | Host *.co.uk | ||
1104 | |||
1105 | The following pattern would match any host in the 192.168.0.[0-9] network | ||
1106 | range: | ||
1107 | |||
1108 | Host 192.168.0.? | ||
1109 | |||
1110 | A pattern-list is a comma-separated list of patterns. Patterns within | ||
1111 | pattern-lists may be negated by preceding them with an exclamation mark | ||
1112 | (M-bM-^@M-^X!M-bM-^@M-^Y). For example, to allow a key to be used from anywhere within an | ||
1113 | organization except from the "dialup" pool, the following entry (in | ||
1114 | authorized_keys) could be used: | ||
1115 | |||
1116 | from="!*.dialup.example.com,*.example.com" | ||
1117 | |||
1118 | Note that a negated match will never produce a positive result by itself. | ||
1119 | For example, attempting to match "host3" against the following pattern- | ||
1120 | list will fail: | ||
1121 | |||
1122 | from="!host1,!host2" | ||
1123 | |||
1124 | The solution here is to include a term that will yield a positive match, | ||
1125 | such as a wildcard: | ||
1126 | |||
1127 | from="!host1,!host2,*" | ||
1128 | |||
1129 | TOKENS | ||
1130 | Arguments to some keywords can make use of tokens, which are expanded at | ||
1131 | runtime: | ||
1132 | |||
1133 | %% A literal M-bM-^@M-^X%M-bM-^@M-^Y. | ||
1134 | %C Hash of %l%h%p%r. | ||
1135 | %d Local user's home directory. | ||
1136 | %h The remote hostname. | ||
1137 | %i The local user ID. | ||
1138 | %k The host key alias if specified, otherwise the orignal remote | ||
1139 | hostname given on the command line. | ||
1140 | %L The local hostname. | ||
1141 | %l The local hostname, including the domain name. | ||
1142 | %n The original remote hostname, as given on the command line. | ||
1143 | %p The remote port. | ||
1144 | %r The remote username. | ||
1145 | %T The local tun(4) or tap(4) network interface assigned if | ||
1146 | tunnel forwarding was requested, or "NONE" otherwise. | ||
1147 | %u The local username. | ||
1148 | |||
1149 | CertificateFile, ControlPath, IdentityAgent, IdentityFile, LocalForward, | ||
1150 | Match exec, RemoteCommand, RemoteForward, and UserKnownHostsFile accept | ||
1151 | the tokens %%, %C, %d, %h, %i, %L, %l, %n, %p, %r, and %u. | ||
1152 | |||
1153 | Hostname accepts the tokens %% and %h. | ||
1154 | |||
1155 | LocalCommand accepts all tokens. | ||
1156 | |||
1157 | ProxyCommand accepts the tokens %%, %h, %n, %p, and %r. | ||
1158 | |||
1159 | ENVIRONMENT VARIABLES | ||
1160 | Arguments to some keywords can be expanded at runtime from environment | ||
1161 | variables on the client by enclosing them in ${}, for example | ||
1162 | ${HOME}/.ssh would refer to the user's .ssh directory. If a specified | ||
1163 | environment variable does not exist then an error will be returned and | ||
1164 | the setting for that keyword will be ignored. | ||
1165 | |||
1166 | The keywords CertificateFile, ControlPath, IdentityAgent, IdentityFile | ||
1167 | and UserKnownHostsFile support environment variables. The keywords | ||
1168 | LocalForward and RemoteForward support environment variables only for | ||
1169 | Unix domain socket paths. | ||
1170 | |||
1171 | FILES | ||
1172 | ~/.ssh/config | ||
1173 | This is the per-user configuration file. The format of this file | ||
1174 | is described above. This file is used by the SSH client. | ||
1175 | Because of the potential for abuse, this file must have strict | ||
1176 | permissions: read/write for the user, and not writable by others. | ||
1177 | |||
1178 | /etc/ssh/ssh_config | ||
1179 | Systemwide configuration file. This file provides defaults for | ||
1180 | those values that are not specified in the user's configuration | ||
1181 | file, and for those users who do not have a configuration file. | ||
1182 | This file must be world-readable. | ||
1183 | |||
1184 | SEE ALSO | ||
1185 | ssh(1) | ||
1186 | |||
1187 | AUTHORS | ||
1188 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
1189 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
1190 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
1191 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
1192 | versions 1.5 and 2.0. | ||
1193 | |||
1194 | OpenBSD 6.8 August 11, 2020 OpenBSD 6.8 | ||
@@ -0,0 +1,672 @@ | |||
1 | SSHD(8) System Manager's Manual SSHD(8) | ||
2 | |||
3 | NAME | ||
4 | sshd M-bM-^@M-^S OpenSSH daemon | ||
5 | |||
6 | SYNOPSIS | ||
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 | |||
11 | DESCRIPTION | ||
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 | |||
126 | AUTHENTICATION | ||
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 secrecy 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. The client selects | ||
134 | the encryption algorithm to use from those offered by the server. | ||
135 | Additionally, session integrity is provided through a cryptographic | ||
136 | message authentication code (MAC). | ||
137 | |||
138 | Finally, the server and the client enter an authentication dialog. The | ||
139 | client tries to authenticate itself using host-based authentication, | ||
140 | public key authentication, challenge-response authentication, or password | ||
141 | authentication. | ||
142 | |||
143 | Regardless of the authentication type, the account is checked to ensure | ||
144 | that it is accessible. An account is not accessible if it is locked, | ||
145 | listed in DenyUsers or its group is listed in DenyGroups . The | ||
146 | definition of a locked account is system dependent. Some platforms have | ||
147 | their own account database (eg AIX) and some modify the passwd field ( | ||
148 | 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 | ||
149 | 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 | ||
150 | Linuxes). If there is a requirement to disable password authentication | ||
151 | for the account while allowing still public-key, then the passwd field | ||
152 | 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 ). | ||
153 | |||
154 | If the client successfully authenticates itself, a dialog for preparing | ||
155 | the session is entered. At this time the client may request things like | ||
156 | allocating a pseudo-tty, forwarding X11 connections, forwarding TCP | ||
157 | connections, or forwarding the authentication agent connection over the | ||
158 | secure channel. | ||
159 | |||
160 | After this, the client either requests a shell or execution of a command. | ||
161 | The sides then enter session mode. In this mode, either side may send | ||
162 | data at any time, and such data is forwarded to/from the shell or command | ||
163 | on the server side, and the user terminal in the client side. | ||
164 | |||
165 | When the user program terminates and all forwarded X11 and other | ||
166 | connections have been closed, the server sends command exit status to the | ||
167 | client, and both sides exit. | ||
168 | |||
169 | LOGIN PROCESS | ||
170 | When a user successfully logs in, sshd does the following: | ||
171 | |||
172 | 1. If the login is on a tty, and no command has been specified, | ||
173 | prints last login time and /etc/motd (unless prevented in the | ||
174 | configuration file or by ~/.hushlogin; see the FILES section). | ||
175 | |||
176 | 2. If the login is on a tty, records login time. | ||
177 | |||
178 | 3. Checks /etc/nologin; if it exists, prints contents and quits | ||
179 | (unless root). | ||
180 | |||
181 | 4. Changes to run with normal user privileges. | ||
182 | |||
183 | 5. Sets up basic environment. | ||
184 | |||
185 | 6. Reads the file ~/.ssh/environment, if it exists, and users are | ||
186 | allowed to change their environment. See the | ||
187 | PermitUserEnvironment option in sshd_config(5). | ||
188 | |||
189 | 7. Changes to user's home directory. | ||
190 | |||
191 | 8. If ~/.ssh/rc exists and the sshd_config(5) PermitUserRC option | ||
192 | is set, runs it; else if /etc/ssh/sshrc exists, runs it; | ||
193 | otherwise runs xauth. The M-bM-^@M-^\rcM-bM-^@M-^] files are given the X11 | ||
194 | authentication protocol and cookie in standard input. See | ||
195 | SSHRC, below. | ||
196 | |||
197 | 9. Runs user's shell or command. All commands are run under the | ||
198 | user's login shell as specified in the system password | ||
199 | database. | ||
200 | |||
201 | SSHRC | ||
202 | If the file ~/.ssh/rc exists, sh(1) runs it after reading the environment | ||
203 | files but before starting the user's shell or command. It must not | ||
204 | produce any output on stdout; stderr must be used instead. If X11 | ||
205 | forwarding is in use, it will receive the "proto cookie" pair in its | ||
206 | standard input (and DISPLAY in its environment). The script must call | ||
207 | xauth(1) because sshd will not run xauth automatically to add X11 | ||
208 | cookies. | ||
209 | |||
210 | The primary purpose of this file is to run any initialization routines | ||
211 | which may be needed before the user's home directory becomes accessible; | ||
212 | AFS is a particular example of such an environment. | ||
213 | |||
214 | This file will probably contain some initialization code followed by | ||
215 | something similar to: | ||
216 | |||
217 | if read proto cookie && [ -n "$DISPLAY" ]; then | ||
218 | if [ `echo $DISPLAY | cut -c1-10` = 'localhost:' ]; then | ||
219 | # X11UseLocalhost=yes | ||
220 | echo add unix:`echo $DISPLAY | | ||
221 | cut -c11-` $proto $cookie | ||
222 | else | ||
223 | # X11UseLocalhost=no | ||
224 | echo add $DISPLAY $proto $cookie | ||
225 | fi | xauth -q - | ||
226 | fi | ||
227 | |||
228 | If this file does not exist, /etc/ssh/sshrc is run, and if that does not | ||
229 | exist either, xauth is used to add the cookie. | ||
230 | |||
231 | AUTHORIZED_KEYS FILE FORMAT | ||
232 | AuthorizedKeysFile specifies the files containing public keys for public | ||
233 | key authentication; if this option is not specified, the default is | ||
234 | ~/.ssh/authorized_keys and ~/.ssh/authorized_keys2. Each line of the | ||
235 | file contains one key (empty lines and lines starting with a M-bM-^@M-^X#M-bM-^@M-^Y are | ||
236 | ignored as comments). Public keys consist of the following space- | ||
237 | separated fields: options, keytype, base64-encoded key, comment. The | ||
238 | options field is optional. The supported key types are: | ||
239 | |||
240 | sk-ecdsa-sha2-nistp256@openssh.com | ||
241 | ecdsa-sha2-nistp256 | ||
242 | ecdsa-sha2-nistp384 | ||
243 | ecdsa-sha2-nistp521 | ||
244 | sk-ssh-ed25519@openssh.com | ||
245 | ssh-ed25519 | ||
246 | ssh-dss | ||
247 | ssh-rsa | ||
248 | |||
249 | The comment field is not used for anything (but may be convenient for the | ||
250 | user to identify the key). | ||
251 | |||
252 | Note that lines in this file can be several hundred bytes long (because | ||
253 | of the size of the public key encoding) up to a limit of 8 kilobytes, | ||
254 | which permits RSA keys up to 16 kilobits. You don't want to type them | ||
255 | in; instead, copy the id_dsa.pub, id_ecdsa.pub, id_ecdsa_sk.pub, | ||
256 | id_ed25519.pub, id_ed25519_sk.pub, or the id_rsa.pub file and edit it. | ||
257 | |||
258 | sshd enforces a minimum RSA key modulus size of 1024 bits. | ||
259 | |||
260 | The options (if present) consist of comma-separated option | ||
261 | specifications. No spaces are permitted, except within double quotes. | ||
262 | The following option specifications are supported (note that option | ||
263 | keywords are case-insensitive): | ||
264 | |||
265 | agent-forwarding | ||
266 | Enable authentication agent forwarding previously disabled by the | ||
267 | restrict option. | ||
268 | |||
269 | cert-authority | ||
270 | Specifies that the listed key is a certification authority (CA) | ||
271 | that is trusted to validate signed certificates for user | ||
272 | authentication. | ||
273 | |||
274 | Certificates may encode access restrictions similar to these key | ||
275 | options. If both certificate restrictions and key options are | ||
276 | present, the most restrictive union of the two is applied. | ||
277 | |||
278 | command="command" | ||
279 | Specifies that the command is executed whenever this key is used | ||
280 | for authentication. The command supplied by the user (if any) is | ||
281 | ignored. The command is run on a pty if the client requests a | ||
282 | pty; otherwise it is run without a tty. If an 8-bit clean | ||
283 | channel is required, one must not request a pty or should specify | ||
284 | no-pty. A quote may be included in the command by quoting it | ||
285 | with a backslash. | ||
286 | |||
287 | This option might be useful to restrict certain public keys to | ||
288 | perform just a specific operation. An example might be a key | ||
289 | that permits remote backups but nothing else. Note that the | ||
290 | client may specify TCP and/or X11 forwarding unless they are | ||
291 | explicitly prohibited, e.g. using the restrict key option. | ||
292 | |||
293 | The command originally supplied by the client is available in the | ||
294 | SSH_ORIGINAL_COMMAND environment variable. Note that this option | ||
295 | applies to shell, command or subsystem execution. Also note that | ||
296 | this command may be superseded by a sshd_config(5) ForceCommand | ||
297 | directive. | ||
298 | |||
299 | If a command is specified and a forced-command is embedded in a | ||
300 | certificate used for authentication, then the certificate will be | ||
301 | accepted only if the two commands are identical. | ||
302 | |||
303 | environment="NAME=value" | ||
304 | Specifies that the string is to be added to the environment when | ||
305 | logging in using this key. Environment variables set this way | ||
306 | override other default environment values. Multiple options of | ||
307 | this type are permitted. Environment processing is disabled by | ||
308 | default and is controlled via the PermitUserEnvironment option. | ||
309 | |||
310 | expiry-time="timespec" | ||
311 | Specifies a time after which the key will not be accepted. The | ||
312 | time may be specified as a YYYYMMDD date or a YYYYMMDDHHMM[SS] | ||
313 | time in the system time-zone. | ||
314 | |||
315 | from="pattern-list" | ||
316 | Specifies that in addition to public key authentication, either | ||
317 | the canonical name of the remote host or its IP address must be | ||
318 | present in the comma-separated list of patterns. See PATTERNS in | ||
319 | ssh_config(5) for more information on patterns. | ||
320 | |||
321 | In addition to the wildcard matching that may be applied to | ||
322 | hostnames or addresses, a from stanza may match IP addresses | ||
323 | using CIDR address/masklen notation. | ||
324 | |||
325 | The purpose of this option is to optionally increase security: | ||
326 | public key authentication by itself does not trust the network or | ||
327 | name servers or anything (but the key); however, if somebody | ||
328 | somehow steals the key, the key permits an intruder to log in | ||
329 | from anywhere in the world. This additional option makes using a | ||
330 | stolen key more difficult (name servers and/or routers would have | ||
331 | to be compromised in addition to just the key). | ||
332 | |||
333 | no-agent-forwarding | ||
334 | Forbids authentication agent forwarding when this key is used for | ||
335 | authentication. | ||
336 | |||
337 | no-port-forwarding | ||
338 | Forbids TCP forwarding when this key is used for authentication. | ||
339 | Any port forward requests by the client will return an error. | ||
340 | This might be used, e.g. in connection with the command option. | ||
341 | |||
342 | no-pty Prevents tty allocation (a request to allocate a pty will fail). | ||
343 | |||
344 | no-user-rc | ||
345 | Disables execution of ~/.ssh/rc. | ||
346 | |||
347 | no-X11-forwarding | ||
348 | Forbids X11 forwarding when this key is used for authentication. | ||
349 | Any X11 forward requests by the client will return an error. | ||
350 | |||
351 | permitlisten="[host:]port" | ||
352 | Limit remote port forwarding with the ssh(1) -R option such that | ||
353 | it may only listen on the specified host (optional) and port. | ||
354 | IPv6 addresses can be specified by enclosing the address in | ||
355 | square brackets. Multiple permitlisten options may be applied | ||
356 | separated by commas. Hostnames may include wildcards as | ||
357 | described in the PATTERNS section in ssh_config(5). A port | ||
358 | specification of * matches any port. Note that the setting of | ||
359 | GatewayPorts may further restrict listen addresses. Note that | ||
360 | ssh(1) will send a hostname of M-bM-^@M-^\localhostM-bM-^@M-^] if a listen host was | ||
361 | not specified when the forwarding was requested, and that this | ||
362 | name is treated differently to the explicit localhost addresses | ||
363 | M-bM-^@M-^\127.0.0.1M-bM-^@M-^] and M-bM-^@M-^\::1M-bM-^@M-^]. | ||
364 | |||
365 | permitopen="host:port" | ||
366 | Limit local port forwarding with the ssh(1) -L option such that | ||
367 | it may only connect to the specified host and port. IPv6 | ||
368 | addresses can be specified by enclosing the address in square | ||
369 | brackets. Multiple permitopen options may be applied separated | ||
370 | by commas. No pattern matching or name lookup is performed on | ||
371 | the specified hostnames, they must be literal host names and/or | ||
372 | addresses. A port specification of * matches any port. | ||
373 | |||
374 | port-forwarding | ||
375 | Enable port forwarding previously disabled by the restrict | ||
376 | option. | ||
377 | |||
378 | principals="principals" | ||
379 | On a cert-authority line, specifies allowed principals for | ||
380 | certificate authentication as a comma-separated list. At least | ||
381 | one name from the list must appear in the certificate's list of | ||
382 | principals for the certificate to be accepted. This option is | ||
383 | ignored for keys that are not marked as trusted certificate | ||
384 | signers using the cert-authority option. | ||
385 | |||
386 | pty Permits tty allocation previously disabled by the restrict | ||
387 | option. | ||
388 | |||
389 | no-touch-required | ||
390 | Do not require demonstration of user presence for signatures made | ||
391 | using this key. This option only makes sense for the FIDO | ||
392 | authenticator algorithms ecdsa-sk and ed25519-sk. | ||
393 | |||
394 | verify-required | ||
395 | Require that signatures made using this key attest that they | ||
396 | verified the user, e.g. via a PIN. This option only makes sense | ||
397 | for the FIDO authenticator algorithms ecdsa-sk and ed25519-sk. | ||
398 | |||
399 | restrict | ||
400 | Enable all restrictions, i.e. disable port, agent and X11 | ||
401 | forwarding, as well as disabling PTY allocation and execution of | ||
402 | ~/.ssh/rc. If any future restriction capabilities are added to | ||
403 | authorized_keys files they will be included in this set. | ||
404 | |||
405 | tunnel="n" | ||
406 | Force a tun(4) device on the server. Without this option, the | ||
407 | next available device will be used if the client requests a | ||
408 | tunnel. | ||
409 | |||
410 | user-rc | ||
411 | Enables execution of ~/.ssh/rc previously disabled by the | ||
412 | restrict option. | ||
413 | |||
414 | X11-forwarding | ||
415 | Permits X11 forwarding previously disabled by the restrict | ||
416 | option. | ||
417 | |||
418 | An example authorized_keys file: | ||
419 | |||
420 | # Comments allowed at start of line | ||
421 | ssh-rsa AAAAB3Nza...LiPk== user@example.net | ||
422 | from="*.sales.example.net,!pc.sales.example.net" ssh-rsa | ||
423 | AAAAB2...19Q== john@example.net | ||
424 | command="dump /home",no-pty,no-port-forwarding ssh-rsa | ||
425 | AAAAC3...51R== example.net | ||
426 | permitopen="192.0.2.1:80",permitopen="192.0.2.2:25" ssh-rsa | ||
427 | AAAAB5...21S== | ||
428 | permitlisten="localhost:8080",permitopen="localhost:22000" ssh-rsa | ||
429 | AAAAB5...21S== | ||
430 | tunnel="0",command="sh /etc/netstart tun0" ssh-rsa AAAA...== | ||
431 | jane@example.net | ||
432 | restrict,command="uptime" ssh-rsa AAAA1C8...32Tv== | ||
433 | user@example.net | ||
434 | restrict,pty,command="nethack" ssh-rsa AAAA1f8...IrrC5== | ||
435 | user@example.net | ||
436 | no-touch-required sk-ecdsa-sha2-nistp256@openssh.com AAAAInN...Ko== | ||
437 | user@example.net | ||
438 | |||
439 | SSH_KNOWN_HOSTS FILE FORMAT | ||
440 | The /etc/ssh/ssh_known_hosts and ~/.ssh/known_hosts files contain host | ||
441 | public keys for all known hosts. The global file should be prepared by | ||
442 | the administrator (optional), and the per-user file is maintained | ||
443 | automatically: whenever the user connects to an unknown host, its key is | ||
444 | added to the per-user file. | ||
445 | |||
446 | Each line in these files contains the following fields: markers | ||
447 | (optional), hostnames, keytype, base64-encoded key, comment. The fields | ||
448 | are separated by spaces. | ||
449 | |||
450 | The marker is optional, but if it is present then it must be one of | ||
451 | M-bM-^@M-^\@cert-authorityM-bM-^@M-^], to indicate that the line contains a certification | ||
452 | authority (CA) key, or M-bM-^@M-^\@revokedM-bM-^@M-^], to indicate that the key contained on | ||
453 | the line is revoked and must not ever be accepted. Only one marker | ||
454 | should be used on a key line. | ||
455 | |||
456 | 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 | ||
457 | wildcards); each pattern in turn is matched against the host name. When | ||
458 | sshd is authenticating a client, such as when using | ||
459 | HostbasedAuthentication, this will be the canonical client host name. | ||
460 | When ssh(1) is authenticating a server, this will be the host name given | ||
461 | by the user, the value of the ssh(1) HostkeyAlias if it was specified, or | ||
462 | the canonical server hostname if the ssh(1) CanonicalizeHostname option | ||
463 | was used. | ||
464 | |||
465 | A pattern may also be preceded by M-bM-^@M-^X!M-bM-^@M-^Y to indicate negation: if the host | ||
466 | name matches a negated pattern, it is not accepted (by that line) even if | ||
467 | it matched another pattern on the line. A hostname or address may | ||
468 | 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 | ||
469 | and a non-standard port number. | ||
470 | |||
471 | Alternately, hostnames may be stored in a hashed form which hides host | ||
472 | names and addresses should the file's contents be disclosed. Hashed | ||
473 | hostnames start with a M-bM-^@M-^X|M-bM-^@M-^Y character. Only one hashed hostname may | ||
474 | appear on a single line and none of the above negation or wildcard | ||
475 | operators may be applied. | ||
476 | |||
477 | The keytype and base64-encoded key are taken directly from the host key; | ||
478 | they can be obtained, for example, from /etc/ssh/ssh_host_rsa_key.pub. | ||
479 | The optional comment field continues to the end of the line, and is not | ||
480 | used. | ||
481 | |||
482 | Lines starting with M-bM-^@M-^X#M-bM-^@M-^Y and empty lines are ignored as comments. | ||
483 | |||
484 | When performing host authentication, authentication is accepted if any | ||
485 | matching line has the proper key; either one that matches exactly or, if | ||
486 | the server has presented a certificate for authentication, the key of the | ||
487 | certification authority that signed the certificate. For a key to be | ||
488 | trusted as a certification authority, it must use the M-bM-^@M-^\@cert-authorityM-bM-^@M-^] | ||
489 | marker described above. | ||
490 | |||
491 | The known hosts file also provides a facility to mark keys as revoked, | ||
492 | for example when it is known that the associated private key has been | ||
493 | stolen. Revoked keys are specified by including the M-bM-^@M-^\@revokedM-bM-^@M-^] marker at | ||
494 | the beginning of the key line, and are never accepted for authentication | ||
495 | or as certification authorities, but instead will produce a warning from | ||
496 | ssh(1) when they are encountered. | ||
497 | |||
498 | It is permissible (but not recommended) to have several lines or | ||
499 | different host keys for the same names. This will inevitably happen when | ||
500 | short forms of host names from different domains are put in the file. It | ||
501 | is possible that the files contain conflicting information; | ||
502 | authentication is accepted if valid information can be found from either | ||
503 | file. | ||
504 | |||
505 | Note that the lines in these files are typically hundreds of characters | ||
506 | long, and you definitely don't want to type in the host keys by hand. | ||
507 | Rather, generate them by a script, ssh-keyscan(1) or by taking, for | ||
508 | example, /etc/ssh/ssh_host_rsa_key.pub and adding the host names at the | ||
509 | front. ssh-keygen(1) also offers some basic automated editing for | ||
510 | ~/.ssh/known_hosts including removing hosts matching a host name and | ||
511 | converting all host names to their hashed representations. | ||
512 | |||
513 | An example ssh_known_hosts file: | ||
514 | |||
515 | # Comments allowed at start of line | ||
516 | closenet,...,192.0.2.53 1024 37 159...93 closenet.example.net | ||
517 | cvs.example.net,192.0.2.10 ssh-rsa AAAA1234.....= | ||
518 | # A hashed hostname | ||
519 | |1|JfKTdBh7rNbXkVAQCRp4OQoPfmI=|USECr3SWf1JUPsms5AqfD5QfxkM= ssh-rsa | ||
520 | AAAA1234.....= | ||
521 | # A revoked key | ||
522 | @revoked * ssh-rsa AAAAB5W... | ||
523 | # A CA key, accepted for any host in *.mydomain.com or *.mydomain.org | ||
524 | @cert-authority *.mydomain.org,*.mydomain.com ssh-rsa AAAAB5W... | ||
525 | |||
526 | FILES | ||
527 | ~/.hushlogin | ||
528 | This file is used to suppress printing the last login time and | ||
529 | /etc/motd, if PrintLastLog and PrintMotd, respectively, are | ||
530 | enabled. It does not suppress printing of the banner specified | ||
531 | by Banner. | ||
532 | |||
533 | ~/.rhosts | ||
534 | This file is used for host-based authentication (see ssh(1) for | ||
535 | more information). On some machines this file may need to be | ||
536 | world-readable if the user's home directory is on an NFS | ||
537 | partition, because sshd reads it as root. Additionally, this | ||
538 | file must be owned by the user, and must not have write | ||
539 | permissions for anyone else. The recommended permission for most | ||
540 | machines is read/write for the user, and not accessible by | ||
541 | others. | ||
542 | |||
543 | ~/.shosts | ||
544 | This file is used in exactly the same way as .rhosts, but allows | ||
545 | host-based authentication without permitting login with | ||
546 | rlogin/rsh. | ||
547 | |||
548 | ~/.ssh/ | ||
549 | This directory is the default location for all user-specific | ||
550 | configuration and authentication information. There is no | ||
551 | general requirement to keep the entire contents of this directory | ||
552 | secret, but the recommended permissions are read/write/execute | ||
553 | for the user, and not accessible by others. | ||
554 | |||
555 | ~/.ssh/authorized_keys | ||
556 | Lists the public keys (DSA, ECDSA, Ed25519, RSA) that can be used | ||
557 | for logging in as this user. The format of this file is | ||
558 | described above. The content of the file is not highly | ||
559 | sensitive, but the recommended permissions are read/write for the | ||
560 | user, and not accessible by others. | ||
561 | |||
562 | If this file, the ~/.ssh directory, or the user's home directory | ||
563 | are writable by other users, then the file could be modified or | ||
564 | replaced by unauthorized users. In this case, sshd will not | ||
565 | allow it to be used unless the StrictModes option has been set to | ||
566 | M-bM-^@M-^\noM-bM-^@M-^]. | ||
567 | |||
568 | ~/.ssh/environment | ||
569 | This file is read into the environment at login (if it exists). | ||
570 | It can only contain empty lines, comment lines (that start with | ||
571 | M-bM-^@M-^X#M-bM-^@M-^Y), and assignment lines of the form name=value. The file | ||
572 | should be writable only by the user; it need not be readable by | ||
573 | anyone else. Environment processing is disabled by default and | ||
574 | is controlled via the PermitUserEnvironment option. | ||
575 | |||
576 | ~/.ssh/known_hosts | ||
577 | Contains a list of host keys for all hosts the user has logged | ||
578 | into that are not already in the systemwide list of known host | ||
579 | keys. The format of this file is described above. This file | ||
580 | should be writable only by root/the owner and can, but need not | ||
581 | be, world-readable. | ||
582 | |||
583 | ~/.ssh/rc | ||
584 | Contains initialization routines to be run before the user's home | ||
585 | directory becomes accessible. This file should be writable only | ||
586 | by the user, and need not be readable by anyone else. | ||
587 | |||
588 | /etc/hosts.equiv | ||
589 | This file is for host-based authentication (see ssh(1)). It | ||
590 | should only be writable by root. | ||
591 | |||
592 | /etc/moduli | ||
593 | Contains Diffie-Hellman groups used for the "Diffie-Hellman Group | ||
594 | Exchange" key exchange method. The file format is described in | ||
595 | moduli(5). If no usable groups are found in this file then fixed | ||
596 | internal groups will be used. | ||
597 | |||
598 | /etc/motd | ||
599 | See motd(5). | ||
600 | |||
601 | /etc/nologin | ||
602 | If this file exists, sshd refuses to let anyone except root log | ||
603 | in. The contents of the file are displayed to anyone trying to | ||
604 | log in, and non-root connections are refused. The file should be | ||
605 | world-readable. | ||
606 | |||
607 | /etc/shosts.equiv | ||
608 | This file is used in exactly the same way as hosts.equiv, but | ||
609 | allows host-based authentication without permitting login with | ||
610 | rlogin/rsh. | ||
611 | |||
612 | /etc/ssh/ssh_host_ecdsa_key | ||
613 | /etc/ssh/ssh_host_ed25519_key | ||
614 | /etc/ssh/ssh_host_rsa_key | ||
615 | These files contain the private parts of the host keys. These | ||
616 | files should only be owned by root, readable only by root, and | ||
617 | not accessible to others. Note that sshd does not start if these | ||
618 | files are group/world-accessible. | ||
619 | |||
620 | /etc/ssh/ssh_host_ecdsa_key.pub | ||
621 | /etc/ssh/ssh_host_ed25519_key.pub | ||
622 | /etc/ssh/ssh_host_rsa_key.pub | ||
623 | These files contain the public parts of the host keys. These | ||
624 | files should be world-readable but writable only by root. Their | ||
625 | contents should match the respective private parts. These files | ||
626 | are not really used for anything; they are provided for the | ||
627 | convenience of the user so their contents can be copied to known | ||
628 | hosts files. These files are created using ssh-keygen(1). | ||
629 | |||
630 | /etc/ssh/ssh_known_hosts | ||
631 | Systemwide list of known host keys. This file should be prepared | ||
632 | by the system administrator to contain the public host keys of | ||
633 | all machines in the organization. The format of this file is | ||
634 | described above. This file should be writable only by root/the | ||
635 | owner and should be world-readable. | ||
636 | |||
637 | /etc/ssh/sshd_config | ||
638 | Contains configuration data for sshd. The file format and | ||
639 | configuration options are described in sshd_config(5). | ||
640 | |||
641 | /etc/ssh/sshrc | ||
642 | Similar to ~/.ssh/rc, it can be used to specify machine-specific | ||
643 | login-time initializations globally. This file should be | ||
644 | writable only by root, and should be world-readable. | ||
645 | |||
646 | /var/empty | ||
647 | chroot(2) directory used by sshd during privilege separation in | ||
648 | the pre-authentication phase. The directory should not contain | ||
649 | any files and must be owned by root and not group or world- | ||
650 | writable. | ||
651 | |||
652 | /var/run/sshd.pid | ||
653 | Contains the process ID of the sshd listening for connections (if | ||
654 | there are several daemons running concurrently for different | ||
655 | ports, this contains the process ID of the one started last). | ||
656 | The content of this file is not sensitive; it can be world- | ||
657 | readable. | ||
658 | |||
659 | SEE ALSO | ||
660 | scp(1), sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), | ||
661 | ssh-keyscan(1), chroot(2), login.conf(5), moduli(5), sshd_config(5), | ||
662 | inetd(8), sftp-server(8) | ||
663 | |||
664 | AUTHORS | ||
665 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
666 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
667 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
668 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
669 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | ||
670 | for privilege separation. | ||
671 | |||
672 | OpenBSD 6.8 August 27, 2020 OpenBSD 6.8 | ||
diff --git a/sshd_config.0 b/sshd_config.0 new file mode 100644 index 000000000..8132c3f15 --- /dev/null +++ b/sshd_config.0 | |||
@@ -0,0 +1,1153 @@ | |||
1 | SSHD_CONFIG(5) File Formats Manual SSHD_CONFIG(5) | ||
2 | |||
3 | NAME | ||
4 | sshd_config M-bM-^@M-^S OpenSSH daemon configuration file | ||
5 | |||
6 | DESCRIPTION | ||
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 groups directives are processed in the | ||
49 | following order: DenyGroups, AllowGroups. | ||
50 | |||
51 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
52 | |||
53 | AllowStreamLocalForwarding | ||
54 | Specifies whether StreamLocal (Unix-domain socket) forwarding is | ||
55 | permitted. The available options are yes (the default) or all to | ||
56 | allow StreamLocal forwarding, no to prevent all StreamLocal | ||
57 | forwarding, local to allow local (from the perspective of ssh(1)) | ||
58 | forwarding only or remote to allow remote forwarding only. Note | ||
59 | that disabling StreamLocal forwarding does not improve security | ||
60 | unless users are also denied shell access, as they can always | ||
61 | install their own forwarders. | ||
62 | |||
63 | AllowTcpForwarding | ||
64 | Specifies whether TCP forwarding is permitted. The available | ||
65 | options are yes (the default) or all to allow TCP forwarding, no | ||
66 | to prevent all TCP forwarding, local to allow local (from the | ||
67 | perspective of ssh(1)) forwarding only or remote to allow remote | ||
68 | forwarding only. Note that disabling TCP forwarding does not | ||
69 | improve security unless users are also denied shell access, as | ||
70 | they can always install their own forwarders. | ||
71 | |||
72 | AllowUsers | ||
73 | This keyword can be followed by a list of user name patterns, | ||
74 | separated by spaces. If specified, login is allowed only for | ||
75 | user names that match one of the patterns. Only user names are | ||
76 | valid; a numerical user ID is not recognized. By default, login | ||
77 | is allowed for all users. If the pattern takes the form | ||
78 | USER@HOST then USER and HOST are separately checked, restricting | ||
79 | logins to particular users from particular hosts. HOST criteria | ||
80 | may additionally contain addresses to match in CIDR | ||
81 | address/masklen format. The allow/deny users directives are | ||
82 | processed in the following order: DenyUsers, AllowUsers. | ||
83 | |||
84 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
85 | |||
86 | AuthenticationMethods | ||
87 | Specifies the authentication methods that must be successfully | ||
88 | completed for a user to be granted access. This option must be | ||
89 | followed by one or more lists of comma-separated authentication | ||
90 | method names, or by the single string any to indicate the default | ||
91 | behaviour of accepting any single authentication method. If the | ||
92 | default is overridden, then successful authentication requires | ||
93 | completion of every method in at least one of these lists. | ||
94 | |||
95 | For example, "publickey,password publickey,keyboard-interactive" | ||
96 | would require the user to complete public key authentication, | ||
97 | followed by either password or keyboard interactive | ||
98 | authentication. Only methods that are next in one or more lists | ||
99 | are offered at each stage, so for this example it would not be | ||
100 | possible to attempt password or keyboard-interactive | ||
101 | authentication before public key. | ||
102 | |||
103 | For keyboard interactive authentication it is also possible to | ||
104 | restrict authentication to a specific device by appending a colon | ||
105 | followed by the device identifier bsdauth or pam. depending on | ||
106 | the server configuration. For example, | ||
107 | "keyboard-interactive:bsdauth" would restrict keyboard | ||
108 | interactive authentication to the bsdauth device. | ||
109 | |||
110 | If the publickey method is listed more than once, sshd(8) | ||
111 | verifies that keys that have been used successfully are not | ||
112 | reused for subsequent authentications. For example, | ||
113 | "publickey,publickey" requires successful authentication using | ||
114 | two different public keys. | ||
115 | |||
116 | Note that each authentication method listed should also be | ||
117 | explicitly enabled in the configuration. | ||
118 | |||
119 | The available authentication methods are: "gssapi-with-mic", | ||
120 | "hostbased", "keyboard-interactive", "none" (used for access to | ||
121 | password-less accounts when PermitEmptyPasswords is enabled), | ||
122 | "password" and "publickey". | ||
123 | |||
124 | AuthorizedKeysCommand | ||
125 | Specifies a program to be used to look up the user's public keys. | ||
126 | The program must be owned by root, not writable by group or | ||
127 | others and specified by an absolute path. Arguments to | ||
128 | AuthorizedKeysCommand accept the tokens described in the TOKENS | ||
129 | section. If no arguments are specified then the username of the | ||
130 | target user is used. | ||
131 | |||
132 | The program should produce on standard output zero or more lines | ||
133 | of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)). | ||
134 | AuthorizedKeysCommand is tried after the usual AuthorizedKeysFile | ||
135 | files and will not be executed if a matching key is found there. | ||
136 | By default, no AuthorizedKeysCommand is run. | ||
137 | |||
138 | AuthorizedKeysCommandUser | ||
139 | Specifies the user under whose account the AuthorizedKeysCommand | ||
140 | is run. It is recommended to use a dedicated user that has no | ||
141 | other role on the host than running authorized keys commands. If | ||
142 | AuthorizedKeysCommand is specified but AuthorizedKeysCommandUser | ||
143 | is not, then sshd(8) will refuse to start. | ||
144 | |||
145 | AuthorizedKeysFile | ||
146 | Specifies the file that contains the public keys used for user | ||
147 | authentication. The format is described in the AUTHORIZED_KEYS | ||
148 | FILE FORMAT section of sshd(8). Arguments to AuthorizedKeysFile | ||
149 | accept the tokens described in the TOKENS section. After | ||
150 | expansion, AuthorizedKeysFile is taken to be an absolute path or | ||
151 | one relative to the user's home directory. Multiple files may be | ||
152 | listed, separated by whitespace. Alternately this option may be | ||
153 | set to none to skip checking for user keys in files. The default | ||
154 | is ".ssh/authorized_keys .ssh/authorized_keys2". | ||
155 | |||
156 | AuthorizedPrincipalsCommand | ||
157 | Specifies a program to be used to generate the list of allowed | ||
158 | certificate principals as per AuthorizedPrincipalsFile. The | ||
159 | program must be owned by root, not writable by group or others | ||
160 | and specified by an absolute path. Arguments to | ||
161 | AuthorizedPrincipalsCommand accept the tokens described in the | ||
162 | TOKENS section. If no arguments are specified then the username | ||
163 | of the target user is used. | ||
164 | |||
165 | The program should produce on standard output zero or more lines | ||
166 | of AuthorizedPrincipalsFile output. If either | ||
167 | AuthorizedPrincipalsCommand or AuthorizedPrincipalsFile is | ||
168 | specified, then certificates offered by the client for | ||
169 | authentication must contain a principal that is listed. By | ||
170 | default, no AuthorizedPrincipalsCommand is run. | ||
171 | |||
172 | AuthorizedPrincipalsCommandUser | ||
173 | Specifies the user under whose account the | ||
174 | AuthorizedPrincipalsCommand is run. It is recommended to use a | ||
175 | dedicated user that has no other role on the host than running | ||
176 | authorized principals commands. If AuthorizedPrincipalsCommand | ||
177 | is specified but AuthorizedPrincipalsCommandUser is not, then | ||
178 | sshd(8) will refuse to start. | ||
179 | |||
180 | AuthorizedPrincipalsFile | ||
181 | Specifies a file that lists principal names that are accepted for | ||
182 | certificate authentication. When using certificates signed by a | ||
183 | key listed in TrustedUserCAKeys, this file lists names, one of | ||
184 | which must appear in the certificate for it to be accepted for | ||
185 | authentication. Names are listed one per line preceded by key | ||
186 | options (as described in AUTHORIZED_KEYS FILE FORMAT in sshd(8)). | ||
187 | Empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are ignored. | ||
188 | |||
189 | Arguments to AuthorizedPrincipalsFile accept the tokens described | ||
190 | in the TOKENS section. After expansion, AuthorizedPrincipalsFile | ||
191 | is taken to be an absolute path or one relative to the user's | ||
192 | home directory. The default is none, i.e. not to use a | ||
193 | principals file M-bM-^@M-^S in this case, the username of the user must | ||
194 | appear in a certificate's principals list for it to be accepted. | ||
195 | |||
196 | Note that AuthorizedPrincipalsFile is only used when | ||
197 | authentication proceeds using a CA listed in TrustedUserCAKeys | ||
198 | and is not consulted for certification authorities trusted via | ||
199 | ~/.ssh/authorized_keys, though the principals= key option offers | ||
200 | a similar facility (see sshd(8) for details). | ||
201 | |||
202 | Banner The contents of the specified file are sent to the remote user | ||
203 | before authentication is allowed. If the argument is none then | ||
204 | no banner is displayed. By default, no banner is displayed. | ||
205 | |||
206 | CASignatureAlgorithms | ||
207 | Specifies which algorithms are allowed for signing of | ||
208 | certificates by certificate authorities (CAs). The default is: | ||
209 | |||
210 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
211 | ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
212 | |||
213 | Certificates signed using other algorithms will not be accepted | ||
214 | for public key or host-based authentication. | ||
215 | |||
216 | ChallengeResponseAuthentication | ||
217 | Specifies whether challenge-response authentication is allowed | ||
218 | (e.g. via PAM or through authentication styles supported in | ||
219 | login.conf(5)) The default is yes. | ||
220 | |||
221 | ChrootDirectory | ||
222 | Specifies the pathname of a directory to chroot(2) to after | ||
223 | authentication. At session startup sshd(8) checks that all | ||
224 | components of the pathname are root-owned directories which are | ||
225 | not writable by any other user or group. After the chroot, | ||
226 | sshd(8) changes the working directory to the user's home | ||
227 | directory. Arguments to ChrootDirectory accept the tokens | ||
228 | described in the TOKENS section. | ||
229 | |||
230 | The ChrootDirectory must contain the necessary files and | ||
231 | directories to support the user's session. For an interactive | ||
232 | session this requires at least a shell, typically sh(1), and | ||
233 | basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4), | ||
234 | stderr(4), and tty(4) devices. For file transfer sessions using | ||
235 | SFTP no additional configuration of the environment is necessary | ||
236 | if the in-process sftp-server is used, though sessions which use | ||
237 | logging may require /dev/log inside the chroot directory on some | ||
238 | operating systems (see sftp-server(8) for details). | ||
239 | |||
240 | For safety, it is very important that the directory hierarchy be | ||
241 | prevented from modification by other processes on the system | ||
242 | (especially those outside the jail). Misconfiguration can lead | ||
243 | to unsafe environments which sshd(8) cannot detect. | ||
244 | |||
245 | The default is none, indicating not to chroot(2). | ||
246 | |||
247 | Ciphers | ||
248 | Specifies the ciphers allowed. Multiple ciphers must be comma- | ||
249 | separated. If the specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, | ||
250 | then the specified ciphers will be appended to the default set | ||
251 | instead of replacing them. If the specified list begins with a | ||
252 | M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified ciphers (including wildcards) | ||
253 | will be removed from the default set instead of replacing them. | ||
254 | If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the | ||
255 | specified ciphers will be placed at the head of the default set. | ||
256 | |||
257 | The supported ciphers are: | ||
258 | |||
259 | 3des-cbc | ||
260 | aes128-cbc | ||
261 | aes192-cbc | ||
262 | aes256-cbc | ||
263 | aes128-ctr | ||
264 | aes192-ctr | ||
265 | aes256-ctr | ||
266 | aes128-gcm@openssh.com | ||
267 | aes256-gcm@openssh.com | ||
268 | chacha20-poly1305@openssh.com | ||
269 | |||
270 | The default is: | ||
271 | |||
272 | chacha20-poly1305@openssh.com, | ||
273 | aes128-ctr,aes192-ctr,aes256-ctr, | ||
274 | aes128-gcm@openssh.com,aes256-gcm@openssh.com | ||
275 | |||
276 | The list of available ciphers may also be obtained using "ssh -Q | ||
277 | cipher". | ||
278 | |||
279 | ClientAliveCountMax | ||
280 | Sets the number of client alive messages which may be sent | ||
281 | without sshd(8) receiving any messages back from the client. If | ||
282 | this threshold is reached while client alive messages are being | ||
283 | sent, sshd will disconnect the client, terminating the session. | ||
284 | It is important to note that the use of client alive messages is | ||
285 | very different from TCPKeepAlive. The client alive messages are | ||
286 | sent through the encrypted channel and therefore will not be | ||
287 | spoofable. The TCP keepalive option enabled by TCPKeepAlive is | ||
288 | spoofable. The client alive mechanism is valuable when the | ||
289 | client or server depend on knowing when a connection has become | ||
290 | unresponsive. | ||
291 | |||
292 | The default value is 3. If ClientAliveInterval is set to 15, and | ||
293 | ClientAliveCountMax is left at the default, unresponsive SSH | ||
294 | clients will be disconnected after approximately 45 seconds. | ||
295 | Setting a zero ClientAliveCountMax disables connection | ||
296 | termination. | ||
297 | |||
298 | ClientAliveInterval | ||
299 | Sets a timeout interval in seconds after which if no data has | ||
300 | been received from the client, sshd(8) will send a message | ||
301 | through the encrypted channel to request a response from the | ||
302 | client. The default is 0, indicating that these messages will | ||
303 | not be sent to the client. | ||
304 | |||
305 | Compression | ||
306 | Specifies whether compression is enabled after the user has | ||
307 | authenticated successfully. The argument must be yes, delayed (a | ||
308 | legacy synonym for yes) or no. The default is yes. | ||
309 | |||
310 | DenyGroups | ||
311 | This keyword can be followed by a list of group name patterns, | ||
312 | separated by spaces. Login is disallowed for users whose primary | ||
313 | group or supplementary group list matches one of the patterns. | ||
314 | Only group names are valid; a numerical group ID is not | ||
315 | recognized. By default, login is allowed for all groups. The | ||
316 | allow/deny groups directives are processed in the following | ||
317 | order: DenyGroups, AllowGroups. | ||
318 | |||
319 | See PATTERNS in ssh_config(5) for more information on patterns. | ||
320 | |||
321 | DenyUsers | ||
322 | This keyword can be followed by a list of user name patterns, | ||
323 | separated by spaces. Login is disallowed for user names that | ||
324 | match one of the patterns. Only user names are valid; a | ||
325 | numerical user ID is not recognized. By default, login is | ||
326 | allowed for all users. If the pattern takes the form USER@HOST | ||
327 | then USER and HOST are separately checked, restricting logins to | ||
328 | particular users from particular hosts. HOST criteria may | ||
329 | additionally contain addresses to match in CIDR address/masklen | ||
330 | format. The allow/deny users directives are processed in the | ||
331 | following order: DenyUsers, AllowUsers. | ||
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 list 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 list 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 | If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the | ||
402 | specified key types will be placed at the head of the default | ||
403 | set. The default for this option is: | ||
404 | |||
405 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
406 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
407 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
408 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
409 | ssh-ed25519-cert-v01@openssh.com, | ||
410 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
411 | rsa-sha2-512-cert-v01@openssh.com, | ||
412 | rsa-sha2-256-cert-v01@openssh.com, | ||
413 | ssh-rsa-cert-v01@openssh.com, | ||
414 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
415 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
416 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
417 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
418 | |||
419 | The list of available key types may also be obtained using "ssh | ||
420 | -Q HostbasedAcceptedKeyTypes". | ||
421 | |||
422 | HostbasedAuthentication | ||
423 | Specifies whether rhosts or /etc/hosts.equiv authentication | ||
424 | together with successful public key client host authentication is | ||
425 | allowed (host-based authentication). The default is no. | ||
426 | |||
427 | HostbasedUsesNameFromPacketOnly | ||
428 | Specifies whether or not the server will attempt to perform a | ||
429 | reverse name lookup when matching the name in the ~/.shosts, | ||
430 | ~/.rhosts, and /etc/hosts.equiv files during | ||
431 | HostbasedAuthentication. A setting of yes means that sshd(8) | ||
432 | uses the name supplied by the client rather than attempting to | ||
433 | resolve the name from the TCP connection itself. The default is | ||
434 | no. | ||
435 | |||
436 | HostCertificate | ||
437 | Specifies a file containing a public host certificate. The | ||
438 | certificate's public key must match a private host key already | ||
439 | specified by HostKey. The default behaviour of sshd(8) is not to | ||
440 | load any certificates. | ||
441 | |||
442 | HostKey | ||
443 | Specifies a file containing a private host key used by SSH. The | ||
444 | defaults are /etc/ssh/ssh_host_ecdsa_key, | ||
445 | /etc/ssh/ssh_host_ed25519_key and /etc/ssh/ssh_host_rsa_key. | ||
446 | |||
447 | Note that sshd(8) will refuse to use a file if it is group/world- | ||
448 | accessible and that the HostKeyAlgorithms option restricts which | ||
449 | of the keys are actually used by sshd(8). | ||
450 | |||
451 | It is possible to have multiple host key files. It is also | ||
452 | possible to specify public host key files instead. In this case | ||
453 | operations on the private key will be delegated to an | ||
454 | ssh-agent(1). | ||
455 | |||
456 | HostKeyAgent | ||
457 | Identifies the UNIX-domain socket used to communicate with an | ||
458 | agent that has access to the private host keys. If the string | ||
459 | "SSH_AUTH_SOCK" is specified, the location of the socket will be | ||
460 | read from the SSH_AUTH_SOCK environment variable. | ||
461 | |||
462 | HostKeyAlgorithms | ||
463 | Specifies the host key algorithms that the server offers. The | ||
464 | default for this option is: | ||
465 | |||
466 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
467 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
468 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
469 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
470 | ssh-ed25519-cert-v01@openssh.com, | ||
471 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
472 | rsa-sha2-512-cert-v01@openssh.com, | ||
473 | 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 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
477 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
478 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
479 | |||
480 | The list of available key types may also be obtained using "ssh | ||
481 | -Q HostKeyAlgorithms". | ||
482 | |||
483 | IgnoreRhosts | ||
484 | Specifies whether to ignore per-user .rhosts and .shosts files | ||
485 | during HostbasedAuthentication. The system-wide /etc/hosts.equiv | ||
486 | and /etc/shosts.equiv are still used regardless of this setting. | ||
487 | |||
488 | Accepted values are yes (the default) to ignore all per-user | ||
489 | files, shosts-only to allow the use of .shosts but to ignore | ||
490 | .rhosts or no to allow both .shosts and rhosts. | ||
491 | |||
492 | IgnoreUserKnownHosts | ||
493 | Specifies whether sshd(8) should ignore the user's | ||
494 | ~/.ssh/known_hosts during HostbasedAuthentication and use only | ||
495 | the system-wide known hosts file /etc/ssh/known_hosts. The | ||
496 | default is M-bM-^@M-^\noM-bM-^@M-^]. | ||
497 | |||
498 | Include | ||
499 | Include the specified configuration file(s). Multiple pathnames | ||
500 | may be specified and each pathname may contain glob(7) wildcards | ||
501 | that will be expanded and processed in lexical order. Files | ||
502 | without absolute paths are assumed to be in /etc/ssh. An Include | ||
503 | directive may appear inside a Match block to perform conditional | ||
504 | inclusion. | ||
505 | |||
506 | IPQoS Specifies the IPv4 type-of-service or DSCP class for the | ||
507 | connection. Accepted values are af11, af12, af13, af21, af22, | ||
508 | af23, af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, | ||
509 | cs4, cs5, cs6, cs7, ef, le, lowdelay, throughput, reliability, a | ||
510 | numeric value, or none to use the operating system default. This | ||
511 | option may take one or two arguments, separated by whitespace. | ||
512 | If one argument is specified, it is used as the packet class | ||
513 | unconditionally. If two values are specified, the first is | ||
514 | automatically selected for interactive sessions and the second | ||
515 | for non-interactive sessions. The default is af21 (Low-Latency | ||
516 | Data) for interactive sessions and cs1 (Lower Effort) for non- | ||
517 | interactive sessions. | ||
518 | |||
519 | KbdInteractiveAuthentication | ||
520 | Specifies whether to allow keyboard-interactive authentication. | ||
521 | The argument to this keyword must be yes or no. The default is | ||
522 | to use whatever value ChallengeResponseAuthentication is set to | ||
523 | (by default yes). | ||
524 | |||
525 | KerberosAuthentication | ||
526 | Specifies whether the password provided by the user for | ||
527 | PasswordAuthentication will be validated through the Kerberos | ||
528 | KDC. To use this option, the server needs a Kerberos servtab | ||
529 | which allows the verification of the KDC's identity. The default | ||
530 | is no. | ||
531 | |||
532 | KerberosGetAFSToken | ||
533 | If AFS is active and the user has a Kerberos 5 TGT, attempt to | ||
534 | acquire an AFS token before accessing the user's home directory. | ||
535 | The default is no. | ||
536 | |||
537 | KerberosOrLocalPasswd | ||
538 | If password authentication through Kerberos fails then the | ||
539 | password will be validated via any additional local mechanism | ||
540 | such as /etc/passwd. The default is yes. | ||
541 | |||
542 | KerberosTicketCleanup | ||
543 | Specifies whether to automatically destroy the user's ticket | ||
544 | cache file on logout. The default is yes. | ||
545 | |||
546 | KexAlgorithms | ||
547 | Specifies the available KEX (Key Exchange) algorithms. Multiple | ||
548 | algorithms must be comma-separated. Alternately if the specified | ||
549 | list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified methods will | ||
550 | be appended to the default set instead of replacing them. If the | ||
551 | specified list begins with a M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified | ||
552 | methods (including wildcards) will be removed from the default | ||
553 | set instead of replacing them. If the specified list begins with | ||
554 | a M-bM-^@M-^X^M-bM-^@M-^Y character, then the specified methods will be placed at the | ||
555 | head of the default set. The supported algorithms are: | ||
556 | |||
557 | curve25519-sha256 | ||
558 | curve25519-sha256@libssh.org | ||
559 | diffie-hellman-group1-sha1 | ||
560 | diffie-hellman-group14-sha1 | ||
561 | diffie-hellman-group14-sha256 | ||
562 | diffie-hellman-group16-sha512 | ||
563 | diffie-hellman-group18-sha512 | ||
564 | diffie-hellman-group-exchange-sha1 | ||
565 | diffie-hellman-group-exchange-sha256 | ||
566 | ecdh-sha2-nistp256 | ||
567 | ecdh-sha2-nistp384 | ||
568 | ecdh-sha2-nistp521 | ||
569 | sntrup4591761x25519-sha512@tinyssh.org | ||
570 | |||
571 | The default is: | ||
572 | |||
573 | curve25519-sha256,curve25519-sha256@libssh.org, | ||
574 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | ||
575 | diffie-hellman-group-exchange-sha256, | ||
576 | diffie-hellman-group16-sha512,diffie-hellman-group18-sha512, | ||
577 | diffie-hellman-group14-sha256 | ||
578 | |||
579 | The list of available key exchange algorithms may also be | ||
580 | obtained using "ssh -Q KexAlgorithms". | ||
581 | |||
582 | ListenAddress | ||
583 | Specifies the local addresses sshd(8) should listen on. The | ||
584 | following forms may be used: | ||
585 | |||
586 | ListenAddress hostname|address [rdomain domain] | ||
587 | ListenAddress hostname:port [rdomain domain] | ||
588 | ListenAddress IPv4_address:port [rdomain domain] | ||
589 | ListenAddress [hostname|address]:port [rdomain domain] | ||
590 | |||
591 | The optional rdomain qualifier requests sshd(8) listen in an | ||
592 | explicit routing domain. If port is not specified, sshd will | ||
593 | listen on the address and all Port options specified. The | ||
594 | default is to listen on all local addresses on the current | ||
595 | default routing domain. Multiple ListenAddress options are | ||
596 | permitted. For more information on routing domains, see | ||
597 | rdomain(4). | ||
598 | |||
599 | LoginGraceTime | ||
600 | The server disconnects after this time if the user has not | ||
601 | successfully logged in. If the value is 0, there is no time | ||
602 | limit. The default is 120 seconds. | ||
603 | |||
604 | LogLevel | ||
605 | Gives the verbosity level that is used when logging messages from | ||
606 | sshd(8). The possible values are: QUIET, FATAL, ERROR, INFO, | ||
607 | VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3. The default is INFO. | ||
608 | DEBUG and DEBUG1 are equivalent. DEBUG2 and DEBUG3 each specify | ||
609 | higher levels of debugging output. Logging with a DEBUG level | ||
610 | violates the privacy of users and is not recommended. | ||
611 | |||
612 | MACs Specifies the available MAC (message authentication code) | ||
613 | algorithms. The MAC algorithm is used for data integrity | ||
614 | protection. Multiple algorithms must be comma-separated. If the | ||
615 | specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, then the specified | ||
616 | algorithms will be appended to the default set instead of | ||
617 | replacing them. If the specified list begins with a M-bM-^@M-^X-M-bM-^@M-^Y | ||
618 | character, then the specified algorithms (including wildcards) | ||
619 | will be removed from the default set instead of replacing them. | ||
620 | If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the | ||
621 | specified algorithms will be placed at the head of the default | ||
622 | set. | ||
623 | |||
624 | The algorithms that contain "-etm" calculate the MAC after | ||
625 | encryption (encrypt-then-mac). These are considered safer and | ||
626 | their use recommended. The supported MACs are: | ||
627 | |||
628 | hmac-md5 | ||
629 | hmac-md5-96 | ||
630 | hmac-sha1 | ||
631 | hmac-sha1-96 | ||
632 | hmac-sha2-256 | ||
633 | hmac-sha2-512 | ||
634 | umac-64@openssh.com | ||
635 | umac-128@openssh.com | ||
636 | hmac-md5-etm@openssh.com | ||
637 | hmac-md5-96-etm@openssh.com | ||
638 | hmac-sha1-etm@openssh.com | ||
639 | hmac-sha1-96-etm@openssh.com | ||
640 | hmac-sha2-256-etm@openssh.com | ||
641 | hmac-sha2-512-etm@openssh.com | ||
642 | umac-64-etm@openssh.com | ||
643 | umac-128-etm@openssh.com | ||
644 | |||
645 | The default is: | ||
646 | |||
647 | umac-64-etm@openssh.com,umac-128-etm@openssh.com, | ||
648 | hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, | ||
649 | hmac-sha1-etm@openssh.com, | ||
650 | umac-64@openssh.com,umac-128@openssh.com, | ||
651 | hmac-sha2-256,hmac-sha2-512,hmac-sha1 | ||
652 | |||
653 | The list of available MAC algorithms may also be obtained using | ||
654 | "ssh -Q mac". | ||
655 | |||
656 | Match Introduces a conditional block. If all of the criteria on the | ||
657 | Match line are satisfied, the keywords on the following lines | ||
658 | override those set in the global section of the config file, | ||
659 | until either another Match line or the end of the file. If a | ||
660 | keyword appears in multiple Match blocks that are satisfied, only | ||
661 | the first instance of the keyword is applied. | ||
662 | |||
663 | The arguments to Match are one or more criteria-pattern pairs or | ||
664 | the single token All which matches all criteria. The available | ||
665 | criteria are User, Group, Host, LocalAddress, LocalPort, RDomain, | ||
666 | and Address (with RDomain representing the rdomain(4) on which | ||
667 | the connection was received). | ||
668 | |||
669 | The match patterns may consist of single entries or comma- | ||
670 | separated lists and may use the wildcard and negation operators | ||
671 | described in the PATTERNS section of ssh_config(5). | ||
672 | |||
673 | The patterns in an Address criteria may additionally contain | ||
674 | addresses to match in CIDR address/masklen format, such as | ||
675 | 192.0.2.0/24 or 2001:db8::/32. Note that the mask length | ||
676 | provided must be consistent with the address - it is an error to | ||
677 | specify a mask length that is too long for the address or one | ||
678 | with bits set in this host portion of the address. For example, | ||
679 | 192.0.2.0/33 and 192.0.2.0/8, respectively. | ||
680 | |||
681 | Only a subset of keywords may be used on the lines following a | ||
682 | Match keyword. Available keywords are AcceptEnv, | ||
683 | AllowAgentForwarding, AllowGroups, AllowStreamLocalForwarding, | ||
684 | AllowTcpForwarding, AllowUsers, AuthenticationMethods, | ||
685 | AuthorizedKeysCommand, AuthorizedKeysCommandUser, | ||
686 | AuthorizedKeysFile, AuthorizedPrincipalsCommand, | ||
687 | AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile, | ||
688 | Banner, ChrootDirectory, ClientAliveCountMax, | ||
689 | ClientAliveInterval, DenyGroups, DenyUsers, ForceCommand, | ||
690 | GatewayPorts, GSSAPIAuthentication, HostbasedAcceptedKeyTypes, | ||
691 | HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, | ||
692 | IgnoreRhosts, Include, IPQoS, KbdInteractiveAuthentication, | ||
693 | KerberosAuthentication, LogLevel, MaxAuthTries, MaxSessions, | ||
694 | PasswordAuthentication, PermitEmptyPasswords, PermitListen, | ||
695 | PermitOpen, PermitRootLogin, PermitTTY, PermitTunnel, | ||
696 | PermitUserRC, PubkeyAcceptedKeyTypes, PubkeyAuthentication, | ||
697 | RekeyLimit, RevokedKeys, RDomain, SetEnv, StreamLocalBindMask, | ||
698 | StreamLocalBindUnlink, TrustedUserCAKeys, X11DisplayOffset, | ||
699 | X11Forwarding and X11UseLocalhost. | ||
700 | |||
701 | MaxAuthTries | ||
702 | Specifies the maximum number of authentication attempts permitted | ||
703 | per connection. Once the number of failures reaches half this | ||
704 | value, additional failures are logged. The default is 6. | ||
705 | |||
706 | MaxSessions | ||
707 | Specifies the maximum number of open shell, login or subsystem | ||
708 | (e.g. sftp) sessions permitted per network connection. Multiple | ||
709 | sessions may be established by clients that support connection | ||
710 | multiplexing. Setting MaxSessions to 1 will effectively disable | ||
711 | session multiplexing, whereas setting it to 0 will prevent all | ||
712 | shell, login and subsystem sessions while still permitting | ||
713 | forwarding. The default is 10. | ||
714 | |||
715 | MaxStartups | ||
716 | Specifies the maximum number of concurrent unauthenticated | ||
717 | connections to the SSH daemon. Additional connections will be | ||
718 | dropped until authentication succeeds or the LoginGraceTime | ||
719 | expires for a connection. The default is 10:30:100. | ||
720 | |||
721 | Alternatively, random early drop can be enabled by specifying the | ||
722 | three colon separated values start:rate:full (e.g. "10:30:60"). | ||
723 | sshd(8) will refuse connection attempts with a probability of | ||
724 | rate/100 (30%) if there are currently start (10) unauthenticated | ||
725 | connections. The probability increases linearly and all | ||
726 | connection attempts are refused if the number of unauthenticated | ||
727 | connections reaches full (60). | ||
728 | |||
729 | PasswordAuthentication | ||
730 | Specifies whether password authentication is allowed. The | ||
731 | default is yes. | ||
732 | |||
733 | PermitEmptyPasswords | ||
734 | When password authentication is allowed, it specifies whether the | ||
735 | server allows login to accounts with empty password strings. The | ||
736 | default is no. | ||
737 | |||
738 | PermitListen | ||
739 | Specifies the addresses/ports on which a remote TCP port | ||
740 | forwarding may listen. The listen specification must be one of | ||
741 | the following forms: | ||
742 | |||
743 | PermitListen port | ||
744 | PermitListen host:port | ||
745 | |||
746 | Multiple permissions may be specified by separating them with | ||
747 | whitespace. An argument of any can be used to remove all | ||
748 | restrictions and permit any listen requests. An argument of none | ||
749 | can be used to prohibit all listen requests. The host name may | ||
750 | contain wildcards as described in the PATTERNS section in | ||
751 | ssh_config(5). The wildcard M-bM-^@M-^X*M-bM-^@M-^Y can also be used in place of a | ||
752 | port number to allow all ports. By default all port forwarding | ||
753 | listen requests are permitted. Note that the GatewayPorts option | ||
754 | may further restrict which addresses may be listened on. Note | ||
755 | also that ssh(1) will request a listen host of M-bM-^@M-^\localhostM-bM-^@M-^] if no | ||
756 | listen host was specifically requested, and this name is treated | ||
757 | differently to explicit localhost addresses of M-bM-^@M-^\127.0.0.1M-bM-^@M-^] and | ||
758 | M-bM-^@M-^\::1M-bM-^@M-^]. | ||
759 | |||
760 | PermitOpen | ||
761 | Specifies the destinations to which TCP port forwarding is | ||
762 | permitted. The forwarding specification must be one of the | ||
763 | following forms: | ||
764 | |||
765 | PermitOpen host:port | ||
766 | PermitOpen IPv4_addr:port | ||
767 | PermitOpen [IPv6_addr]:port | ||
768 | |||
769 | Multiple forwards may be specified by separating them with | ||
770 | whitespace. An argument of any can be used to remove all | ||
771 | restrictions and permit any forwarding requests. An argument of | ||
772 | none can be used to prohibit all forwarding requests. The | ||
773 | wildcard M-bM-^@M-^X*M-bM-^@M-^Y can be used for host or port to allow all hosts or | ||
774 | ports respectively. Otherwise, no pattern matching or address | ||
775 | lookups are performed on supplied names. By default all port | ||
776 | forwarding requests are permitted. | ||
777 | |||
778 | PermitRootLogin | ||
779 | Specifies whether root can log in using ssh(1). The argument | ||
780 | must be yes, prohibit-password, forced-commands-only, or no. The | ||
781 | default is prohibit-password. | ||
782 | |||
783 | If this option is set to prohibit-password (or its deprecated | ||
784 | alias, without-password), password and keyboard-interactive | ||
785 | authentication are disabled for root. | ||
786 | |||
787 | If this option is set to forced-commands-only, root login with | ||
788 | public key authentication will be allowed, but only if the | ||
789 | command option has been specified (which may be useful for taking | ||
790 | remote backups even if root login is normally not allowed). All | ||
791 | other authentication methods are disabled for root. | ||
792 | |||
793 | If this option is set to no, root is not allowed to log in. | ||
794 | |||
795 | PermitTTY | ||
796 | Specifies whether pty(4) allocation is permitted. The default is | ||
797 | yes. | ||
798 | |||
799 | PermitTunnel | ||
800 | Specifies whether tun(4) device forwarding is allowed. The | ||
801 | argument must be yes, point-to-point (layer 3), ethernet (layer | ||
802 | 2), or no. Specifying yes permits both point-to-point and | ||
803 | ethernet. The default is no. | ||
804 | |||
805 | Independent of this setting, the permissions of the selected | ||
806 | tun(4) device must allow access to the user. | ||
807 | |||
808 | PermitUserEnvironment | ||
809 | Specifies whether ~/.ssh/environment and environment= options in | ||
810 | ~/.ssh/authorized_keys are processed by sshd(8). Valid options | ||
811 | are yes, no or a pattern-list specifying which environment | ||
812 | variable names to accept (for example "LANG,LC_*"). The default | ||
813 | is no. Enabling environment processing may enable users to | ||
814 | bypass access restrictions in some configurations using | ||
815 | mechanisms such as LD_PRELOAD. | ||
816 | |||
817 | PermitUserRC | ||
818 | Specifies whether any ~/.ssh/rc file is executed. The default is | ||
819 | yes. | ||
820 | |||
821 | PidFile | ||
822 | Specifies the file that contains the process ID of the SSH | ||
823 | daemon, or none to not write one. The default is | ||
824 | /var/run/sshd.pid. | ||
825 | |||
826 | Port Specifies the port number that sshd(8) listens on. The default | ||
827 | is 22. Multiple options of this type are permitted. See also | ||
828 | ListenAddress. | ||
829 | |||
830 | PrintLastLog | ||
831 | Specifies whether sshd(8) should print the date and time of the | ||
832 | last user login when a user logs in interactively. The default | ||
833 | is yes. | ||
834 | |||
835 | PrintMotd | ||
836 | Specifies whether sshd(8) should print /etc/motd when a user logs | ||
837 | in interactively. (On some systems it is also printed by the | ||
838 | shell, /etc/profile, or equivalent.) The default is yes. | ||
839 | |||
840 | PubkeyAcceptedKeyTypes | ||
841 | Specifies the key types that will be accepted for public key | ||
842 | authentication as a list of comma-separated patterns. | ||
843 | Alternately if the specified list begins with a M-bM-^@M-^X+M-bM-^@M-^Y character, | ||
844 | then the specified key types will be appended to the default set | ||
845 | instead of replacing them. If the specified list begins with a | ||
846 | M-bM-^@M-^X-M-bM-^@M-^Y character, then the specified key types (including wildcards) | ||
847 | will be removed from the default set instead of replacing them. | ||
848 | If the specified list begins with a M-bM-^@M-^X^M-bM-^@M-^Y character, then the | ||
849 | specified key types will be placed at the head of the default | ||
850 | set. The default for this option is: | ||
851 | |||
852 | ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
853 | ecdsa-sha2-nistp384-cert-v01@openssh.com, | ||
854 | ecdsa-sha2-nistp521-cert-v01@openssh.com, | ||
855 | sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, | ||
856 | ssh-ed25519-cert-v01@openssh.com, | ||
857 | sk-ssh-ed25519-cert-v01@openssh.com, | ||
858 | rsa-sha2-512-cert-v01@openssh.com, | ||
859 | rsa-sha2-256-cert-v01@openssh.com, | ||
860 | ssh-rsa-cert-v01@openssh.com, | ||
861 | ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, | ||
862 | sk-ecdsa-sha2-nistp256@openssh.com, | ||
863 | ssh-ed25519,sk-ssh-ed25519@openssh.com, | ||
864 | rsa-sha2-512,rsa-sha2-256,ssh-rsa | ||
865 | |||
866 | The list of available key types may also be obtained using "ssh | ||
867 | -Q PubkeyAcceptedKeyTypes". | ||
868 | |||
869 | PubkeyAuthOptions | ||
870 | Sets one or more public key authentication options. The | ||
871 | supported keywords are: none (the default; indicating no | ||
872 | additional options are enabled), touch-required and | ||
873 | verify-required. | ||
874 | |||
875 | The touch-required option causes public key authentication using | ||
876 | a FIDO authenticator algorithm (i.e. ecdsa-sk or ed25519-sk) to | ||
877 | always require the signature to attest that a physically present | ||
878 | user explicitly confirmed the authentication (usually by touching | ||
879 | the authenticator). By default, sshd(8) requires user presence | ||
880 | unless overridden with an authorized_keys option. The | ||
881 | touch-required flag disables this override. | ||
882 | |||
883 | The verify-required option requires a FIDO key signature attest | ||
884 | that the user was verified, e.g. via a PIN. | ||
885 | |||
886 | Neither the touch-required or verify-required options have any | ||
887 | effect for other, non-FIDO, public key types. | ||
888 | |||
889 | PubkeyAuthentication | ||
890 | Specifies whether public key authentication is allowed. The | ||
891 | default is yes. | ||
892 | |||
893 | RekeyLimit | ||
894 | Specifies the maximum amount of data that may be transmitted | ||
895 | before the session key is renegotiated, optionally followed a | ||
896 | maximum amount of time that may pass before the session key is | ||
897 | renegotiated. The first argument is specified in bytes and may | ||
898 | 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, | ||
899 | Megabytes, or Gigabytes, respectively. The default is between | ||
900 | M-bM-^@M-^X1GM-bM-^@M-^Y and M-bM-^@M-^X4GM-bM-^@M-^Y, depending on the cipher. The optional second | ||
901 | value is specified in seconds and may use any of the units | ||
902 | documented in the TIME FORMATS section. The default value for | ||
903 | RekeyLimit is default none, which means that rekeying is | ||
904 | performed after the cipher's default amount of data has been sent | ||
905 | or received and no time based rekeying is done. | ||
906 | |||
907 | RevokedKeys | ||
908 | Specifies revoked public keys file, or none to not use one. Keys | ||
909 | listed in this file will be refused for public key | ||
910 | authentication. Note that if this file is not readable, then | ||
911 | public key authentication will be refused for all users. Keys | ||
912 | may be specified as a text file, listing one public key per line, | ||
913 | or as an OpenSSH Key Revocation List (KRL) as generated by | ||
914 | ssh-keygen(1). For more information on KRLs, see the KEY | ||
915 | REVOCATION LISTS section in ssh-keygen(1). | ||
916 | |||
917 | RDomain | ||
918 | Specifies an explicit routing domain that is applied after | ||
919 | authentication has completed. The user session, as well and any | ||
920 | forwarded or listening IP sockets, will be bound to this | ||
921 | rdomain(4). If the routing domain is set to %D, then the domain | ||
922 | in which the incoming connection was received will be applied. | ||
923 | |||
924 | SecurityKeyProvider | ||
925 | Specifies a path to a library that will be used when loading FIDO | ||
926 | authenticator-hosted keys, overriding the default of using the | ||
927 | built-in USB HID support. | ||
928 | |||
929 | SetEnv Specifies one or more environment variables to set in child | ||
930 | sessions started by sshd(8) as M-bM-^@M-^\NAME=VALUEM-bM-^@M-^]. The environment | ||
931 | value may be quoted (e.g. if it contains whitespace characters). | ||
932 | Environment variables set by SetEnv override the default | ||
933 | environment and any variables specified by the user via AcceptEnv | ||
934 | or PermitUserEnvironment. | ||
935 | |||
936 | StreamLocalBindMask | ||
937 | Sets the octal file creation mode mask (umask) used when creating | ||
938 | a Unix-domain socket file for local or remote port forwarding. | ||
939 | This option is only used for port forwarding to a Unix-domain | ||
940 | socket file. | ||
941 | |||
942 | The default value is 0177, which creates a Unix-domain socket | ||
943 | file that is readable and writable only by the owner. Note that | ||
944 | not all operating systems honor the file mode on Unix-domain | ||
945 | socket files. | ||
946 | |||
947 | StreamLocalBindUnlink | ||
948 | Specifies whether to remove an existing Unix-domain socket file | ||
949 | for local or remote port forwarding before creating a new one. | ||
950 | If the socket file already exists and StreamLocalBindUnlink is | ||
951 | not enabled, sshd will be unable to forward the port to the Unix- | ||
952 | domain socket file. This option is only used for port forwarding | ||
953 | to a Unix-domain socket file. | ||
954 | |||
955 | The argument must be yes or no. The default is no. | ||
956 | |||
957 | StrictModes | ||
958 | Specifies whether sshd(8) should check file modes and ownership | ||
959 | of the user's files and home directory before accepting login. | ||
960 | This is normally desirable because novices sometimes accidentally | ||
961 | leave their directory or files world-writable. The default is | ||
962 | yes. Note that this does not apply to ChrootDirectory, whose | ||
963 | permissions and ownership are checked unconditionally. | ||
964 | |||
965 | Subsystem | ||
966 | Configures an external subsystem (e.g. file transfer daemon). | ||
967 | Arguments should be a subsystem name and a command (with optional | ||
968 | arguments) to execute upon subsystem request. | ||
969 | |||
970 | The command sftp-server implements the SFTP file transfer | ||
971 | subsystem. | ||
972 | |||
973 | Alternately the name internal-sftp implements an in-process SFTP | ||
974 | server. This may simplify configurations using ChrootDirectory | ||
975 | to force a different filesystem root on clients. | ||
976 | |||
977 | By default no subsystems are defined. | ||
978 | |||
979 | SyslogFacility | ||
980 | Gives the facility code that is used when logging messages from | ||
981 | sshd(8). The possible values are: DAEMON, USER, AUTH, LOCAL0, | ||
982 | LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The | ||
983 | default is AUTH. | ||
984 | |||
985 | TCPKeepAlive | ||
986 | Specifies whether the system should send TCP keepalive messages | ||
987 | to the other side. If they are sent, death of the connection or | ||
988 | crash of one of the machines will be properly noticed. However, | ||
989 | this means that connections will die if the route is down | ||
990 | temporarily, and some people find it annoying. On the other | ||
991 | hand, if TCP keepalives are not sent, sessions may hang | ||
992 | indefinitely on the server, leaving "ghost" users and consuming | ||
993 | server resources. | ||
994 | |||
995 | The default is yes (to send TCP keepalive messages), and the | ||
996 | server will notice if the network goes down or the client host | ||
997 | crashes. This avoids infinitely hanging sessions. | ||
998 | |||
999 | To disable TCP keepalive messages, the value should be set to no. | ||
1000 | |||
1001 | TrustedUserCAKeys | ||
1002 | Specifies a file containing public keys of certificate | ||
1003 | authorities that are trusted to sign user certificates for | ||
1004 | authentication, or none to not use one. Keys are listed one per | ||
1005 | line; empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. If | ||
1006 | a certificate is presented for authentication and has its signing | ||
1007 | CA key listed in this file, then it may be used for | ||
1008 | authentication for any user listed in the certificate's | ||
1009 | principals list. Note that certificates that lack a list of | ||
1010 | principals will not be permitted for authentication using | ||
1011 | TrustedUserCAKeys. For more details on certificates, see the | ||
1012 | CERTIFICATES section in ssh-keygen(1). | ||
1013 | |||
1014 | UseDNS Specifies whether sshd(8) should look up the remote host name, | ||
1015 | and to check that the resolved host name for the remote IP | ||
1016 | address maps back to the very same IP address. | ||
1017 | |||
1018 | If this option is set to no (the default) then only addresses and | ||
1019 | not host names may be used in ~/.ssh/authorized_keys from and | ||
1020 | sshd_config Match Host directives. | ||
1021 | |||
1022 | UsePAM Enables the Pluggable Authentication Module interface. If set to | ||
1023 | yes this will enable PAM authentication using | ||
1024 | ChallengeResponseAuthentication and PasswordAuthentication in | ||
1025 | addition to PAM account and session module processing for all | ||
1026 | authentication types. | ||
1027 | |||
1028 | Because PAM challenge-response authentication usually serves an | ||
1029 | equivalent role to password authentication, you should disable | ||
1030 | either PasswordAuthentication or ChallengeResponseAuthentication. | ||
1031 | |||
1032 | If UsePAM is enabled, you will not be able to run sshd(8) as a | ||
1033 | non-root user. The default is no. | ||
1034 | |||
1035 | VersionAddendum | ||
1036 | Optionally specifies additional text to append to the SSH | ||
1037 | protocol banner sent by the server upon connection. The default | ||
1038 | is none. | ||
1039 | |||
1040 | X11DisplayOffset | ||
1041 | Specifies the first display number available for sshd(8)'s X11 | ||
1042 | forwarding. This prevents sshd from interfering with real X11 | ||
1043 | servers. The default is 10. | ||
1044 | |||
1045 | X11Forwarding | ||
1046 | Specifies whether X11 forwarding is permitted. The argument must | ||
1047 | be yes or no. The default is no. | ||
1048 | |||
1049 | When X11 forwarding is enabled, there may be additional exposure | ||
1050 | to the server and to client displays if the sshd(8) proxy display | ||
1051 | is configured to listen on the wildcard address (see | ||
1052 | X11UseLocalhost), though this is not the default. Additionally, | ||
1053 | the authentication spoofing and authentication data verification | ||
1054 | and substitution occur on the client side. The security risk of | ||
1055 | using X11 forwarding is that the client's X11 display server may | ||
1056 | be exposed to attack when the SSH client requests forwarding (see | ||
1057 | the warnings for ForwardX11 in ssh_config(5)). A system | ||
1058 | administrator may have a stance in which they want to protect | ||
1059 | clients that may expose themselves to attack by unwittingly | ||
1060 | requesting X11 forwarding, which can warrant a no setting. | ||
1061 | |||
1062 | Note that disabling X11 forwarding does not prevent users from | ||
1063 | forwarding X11 traffic, as users can always install their own | ||
1064 | forwarders. | ||
1065 | |||
1066 | X11UseLocalhost | ||
1067 | Specifies whether sshd(8) should bind the X11 forwarding server | ||
1068 | to the loopback address or to the wildcard address. By default, | ||
1069 | sshd binds the forwarding server to the loopback address and sets | ||
1070 | the hostname part of the DISPLAY environment variable to | ||
1071 | localhost. This prevents remote hosts from connecting to the | ||
1072 | proxy display. However, some older X11 clients may not function | ||
1073 | with this configuration. X11UseLocalhost may be set to no to | ||
1074 | specify that the forwarding server should be bound to the | ||
1075 | wildcard address. The argument must be yes or no. The default | ||
1076 | is yes. | ||
1077 | |||
1078 | XAuthLocation | ||
1079 | Specifies the full pathname of the xauth(1) program, or none to | ||
1080 | not use one. The default is /usr/X11R6/bin/xauth. | ||
1081 | |||
1082 | TIME FORMATS | ||
1083 | sshd(8) command-line arguments and configuration file options that | ||
1084 | specify time may be expressed using a sequence of the form: | ||
1085 | time[qualifier], where time is a positive integer value and qualifier is | ||
1086 | one of the following: | ||
1087 | |||
1088 | M-bM-^_M-(noneM-bM-^_M-) seconds | ||
1089 | s | S seconds | ||
1090 | m | M minutes | ||
1091 | h | H hours | ||
1092 | d | D days | ||
1093 | w | W weeks | ||
1094 | |||
1095 | Each member of the sequence is added together to calculate the total time | ||
1096 | value. | ||
1097 | |||
1098 | Time format examples: | ||
1099 | |||
1100 | 600 600 seconds (10 minutes) | ||
1101 | 10m 10 minutes | ||
1102 | 1h30m 1 hour 30 minutes (90 minutes) | ||
1103 | |||
1104 | TOKENS | ||
1105 | Arguments to some keywords can make use of tokens, which are expanded at | ||
1106 | runtime: | ||
1107 | |||
1108 | %% A literal M-bM-^@M-^X%M-bM-^@M-^Y. | ||
1109 | %D The routing domain in which the incoming connection was | ||
1110 | received. | ||
1111 | %F The fingerprint of the CA key. | ||
1112 | %f The fingerprint of the key or certificate. | ||
1113 | %h The home directory of the user. | ||
1114 | %i The key ID in the certificate. | ||
1115 | %K The base64-encoded CA key. | ||
1116 | %k The base64-encoded key or certificate for authentication. | ||
1117 | %s The serial number of the certificate. | ||
1118 | %T The type of the CA key. | ||
1119 | %t The key or certificate type. | ||
1120 | %U The numeric user ID of the target user. | ||
1121 | %u The username. | ||
1122 | |||
1123 | AuthorizedKeysCommand accepts the tokens %%, %f, %h, %k, %t, %U, and %u. | ||
1124 | |||
1125 | AuthorizedKeysFile accepts the tokens %%, %h, %U, and %u. | ||
1126 | |||
1127 | AuthorizedPrincipalsCommand accepts the tokens %%, %F, %f, %h, %i, %K, | ||
1128 | %k, %s, %T, %t, %U, and %u. | ||
1129 | |||
1130 | AuthorizedPrincipalsFile accepts the tokens %%, %h, %U, and %u. | ||
1131 | |||
1132 | ChrootDirectory accepts the tokens %%, %h, %U, and %u. | ||
1133 | |||
1134 | RoutingDomain accepts the token %D. | ||
1135 | |||
1136 | FILES | ||
1137 | /etc/ssh/sshd_config | ||
1138 | Contains configuration data for sshd(8). This file should be | ||
1139 | writable by root only, but it is recommended (though not | ||
1140 | necessary) that it be world-readable. | ||
1141 | |||
1142 | SEE ALSO | ||
1143 | sftp-server(8), sshd(8) | ||
1144 | |||
1145 | AUTHORS | ||
1146 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | ||
1147 | Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo | ||
1148 | de Raadt and Dug Song removed many bugs, re-added newer features and | ||
1149 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | ||
1150 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | ||
1151 | for privilege separation. | ||
1152 | |||
1153 | OpenBSD 6.8 August 27, 2020 OpenBSD 6.8 | ||