annotate configure.ac @ 1790:42745af83b7d

Introduce extra delay before closing unauthenticated sessions To make it harder for attackers, introduce a delay to keep an unauthenticated session open a bit longer, thus blocking a connection slot until after the delay. Without this, while there is a limit on the amount of attempts an attacker can make at the same time (MAX_UNAUTH_PER_IP), the time taken by dropbear to handle one attempt is still short and thus for each of the allowed parallel attempts many attempts can be chained one after the other. The attempt rate is then: "MAX_UNAUTH_PER_IP / <process time of one attempt>". With the delay, this rate becomes: "MAX_UNAUTH_PER_IP / UNAUTH_CLOSE_DELAY".
author Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
date Wed, 15 Feb 2017 13:53:04 +0100
parents d5680e12ac33
children 8dc43b30c6bf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
1 # -*- Autoconf -*-
28
45ee5ffd6ea0 Mention that autoheader should also be run
Matt Johnston <matt@ucc.asn.au>
parents: 4
diff changeset
2 # Process this file with autoconf and autoheader to produce a configure script.
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
3
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
4 # This Autoconf file was cobbled from various locations. In particular, a bunch
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
5 # of the platform checks have been taken straight from OpenSSH's configure.ac
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
6 # Huge thanks to them for dealing with the horrible platform-specifics :)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
7
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
8 AC_PREREQ(2.59)
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
9 AC_INIT
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
10 AC_CONFIG_SRCDIR(buffer.c)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
11
1530
63fa53d3b6c7 print hg revid
Matt Johnston <matt@ucc.asn.au>
parents: 1511
diff changeset
12 # Record which revision is being built
1564
86e4995bbedf more portable for `which hg` test
Matt Johnston <matt@ucc.asn.au>
parents: 1559
diff changeset
13 if test -s "`which hg`" && test -d "$srcdir/.hg"; then
1530
63fa53d3b6c7 print hg revid
Matt Johnston <matt@ucc.asn.au>
parents: 1511
diff changeset
14 hgrev=`hg id -i -R "$srcdir"`
1558
2f64cb3d3007 - #if not #ifdef for DROPBEAR_FUZZ
Matt Johnston <matt@ucc.asn.au>
parents: 1557
diff changeset
15 AC_MSG_NOTICE([Source directory Mercurial base revision $hgrev])
1530
63fa53d3b6c7 print hg revid
Matt Johnston <matt@ucc.asn.au>
parents: 1511
diff changeset
16 fi
63fa53d3b6c7 print hg revid
Matt Johnston <matt@ucc.asn.au>
parents: 1511
diff changeset
17
1573
ee7a546e3e6d Fix CFLAGS for configure
Matt Johnston <matt@ucc.asn.au>
parents: 1564
diff changeset
18 ORIGCFLAGS="$CFLAGS"
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
19 # Checks for programs.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
20 AC_PROG_CC
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
21
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
22 if test -z "$LD" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
23 LD=$CC
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
24 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
25 AC_SUBST(LD)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
26
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
27 AC_DEFUN(DB_TRYADDCFLAGS,
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
28 [{
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
29 OLDFLAGS="$CFLAGS"
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
30 TESTFLAGS="$1"
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
31 CFLAGS="$CFLAGS $TESTFLAGS"
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
32 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
33 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
34 [AC_MSG_NOTICE([Not setting $TESTFLAGS]); CFLAGS="$OLDFLAGS" ]
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
35 )
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
36 }])
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
37
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
38 # set compile flags prior to other tests
1573
ee7a546e3e6d Fix CFLAGS for configure
Matt Johnston <matt@ucc.asn.au>
parents: 1564
diff changeset
39 if test -z "$ORIGCFLAGS" && test "$GCC" = "yes"; then
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
40 AC_MSG_NOTICE(No \$CFLAGS set... using "-Os -W -Wall" for GCC)
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
41 CFLAGS="-Os -W -Wall"
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
42 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
43
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
44 AC_MSG_NOTICE([Checking if compiler '$CC' supports -Wno-pointer-sign])
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
45 DB_TRYADDCFLAGS([-Wno-pointer-sign])
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
46
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
47 AC_MSG_NOTICE([Checking if compiler '$CC' supports -fno-strict-overflow])
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
48 DB_TRYADDCFLAGS([-fno-strict-overflow])
1416
33d90d219e03 Compile with -fno-strict-overflow if possible.
Matt Johnston <matt@ucc.asn.au>
parents: 1407
diff changeset
49
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
50 STATIC=0
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
51 AC_ARG_ENABLE(static,
1447
8f88f4290b22 document --enable-static in place of STATIC=1
Matt Johnston <matt@ucc.asn.au>
parents: 1446
diff changeset
52 [ --enable-static Build static binaries],
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
53 [
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
54 if test "x$enableval" = "xyes"; then
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
55 STATIC=1
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
56 AC_MSG_NOTICE(Static Build)
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
57 fi
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
58 ], [])
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
59 AC_SUBST(STATIC)
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
60
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
61 hardenbuild=1
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
62 AC_ARG_ENABLE(harden,
1444
bfed37d12d90 improve configure --help alignment
Matt Johnston <matt@ucc.asn.au>
parents: 1429
diff changeset
63 [ --disable-harden Don't set hardened build flags],
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
64 [
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
65 if test "x$enableval" = "xno"; then
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
66 hardenbuild=0
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
67 AC_MSG_NOTICE(Disabling hardened build flags)
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
68 fi
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
69 ], [])
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
70
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
71 if test "$hardenbuild" -eq 1; then
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
72 AC_MSG_NOTICE(Checking for available hardened build flags:)
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
73 # relocation flags don't make sense for static builds
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
74 if test "$STATIC" -ne 1; then
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
75 # pie
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
76 DB_TRYADDCFLAGS([-fPIE])
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
77
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
78 OLDLDFLAGS="$LDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
79 TESTFLAGS="-Wl,-pie"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
80 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
81 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
82 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
83 [
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
84 LDFLAGS="$OLDLDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
85 TESTFLAGS="-pie"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
86 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
87 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
88 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
89 [AC_MSG_NOTICE([Not setting $TESTFLAGS]); LDFLAGS="$OLDLDFLAGS" ]
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
90 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
91 ]
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
92 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
93 # readonly elf relocation sections (relro)
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
94 OLDLDFLAGS="$LDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
95 TESTFLAGS="-Wl,-z,now -Wl,-z,relro"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
96 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
97 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
98 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
99 [AC_MSG_NOTICE([Not setting $TESTFLAGS]); LDFLAGS="$OLDLDFLAGS" ]
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
100 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
101 fi # non-static
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
102 # stack protector. -strong is good but only in gcc 4.9 or later
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
103 OLDCFLAGS="$CFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
104 TESTFLAGS="-fstack-protector-strong"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
105 CFLAGS="$CFLAGS $TESTFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
106 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
107 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
108 [
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
109 CFLAGS="$OLDCFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
110 TESTFLAGS="-fstack-protector --param=ssp-buffer-size=4"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
111 CFLAGS="$CFLAGS $TESTFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
112 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
113 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
114 [AC_MSG_NOTICE([Not setting $TESTFLAGS]); CFLAGS="$OLDCFLAGS" ]
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
115 )
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
116 ]
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
117 )
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
118 # FORTIFY_SOURCE
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
119 DB_TRYADDCFLAGS([-D_FORTIFY_SOURCE=2])
1505
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
120
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
121 # Spectre v2 mitigations
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
122 DB_TRYADDCFLAGS([-mfunction-return=thunk])
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
123 DB_TRYADDCFLAGS([-mindirect-branch=thunk])
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
124
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
125 fi
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
126
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
127 # large file support is useful for scp
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
128 AC_SYS_LARGEFILE
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
129
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
130 # Host specific options
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
131 # this isn't a definitive list of hosts, they are just added as required
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
132 AC_CANONICAL_HOST
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
133
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
134 case "$host" in
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
135
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
136 *-*-linux*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
137 no_ptmx_check=1
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
138 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
139
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
140 *-*-solaris*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
141 CFLAGS="$CFLAGS -I/usr/local/include"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
142 LDFLAGS="$LDFLAGS -L/usr/local/lib -R/usr/local/lib"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
143 conf_lastlog_location="/var/adm/lastlog"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
144 AC_MSG_CHECKING(for obsolete utmp and wtmp in solaris2.x)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
145 sol2ver=`echo "$host"| sed -e 's/.*[[0-9]]\.//'`
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
146 if test "$sol2ver" -ge 8; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
147 AC_MSG_RESULT(yes)
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
148 AC_DEFINE(DISABLE_UTMP,1,Disable utmp)
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
149 AC_DEFINE(DISABLE_WTMP,1,Disable wtmp)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
150 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
151 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
152 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
153 AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
154 AC_CHECK_LIB(nsl, yp_match, LIBS="$LIBS -lnsl")
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
155 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
156
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
157 *-*-aix*)
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
158 AC_DEFINE(AIX,1,Using AIX)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
159 # OpenSSH thinks it's broken. If it isn't, let me know.
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
160 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
161 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
162
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
163 *-*-hpux*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
164 LIBS="$LIBS -lsec"
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
165 # It's probably broken.
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
166 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
167 ;;
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
168 *-dec-osf*)
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
169 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
170 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
171 esac
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
172
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
173 AC_CHECK_TOOL(AR, ar, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
174 AC_CHECK_TOOL(RANLIB, ranlib, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
175 AC_CHECK_TOOL(STRIP, strip, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
176 AC_CHECK_TOOL(INSTALL, install, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
177
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
178 dnl Can't use login() or logout() with uclibc
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
179 AC_CHECK_DECL(__UCLIBC__,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
180 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
181 no_loginfunc_check=1
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
182 AC_MSG_NOTICE([Using uClibc - login() and logout() probably don't work, so we won't use them.])
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
183 ],,)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
184
1186
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
185 dnl We test for crypt() specially. On Linux (and others?) it resides in libcrypt
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
186 dnl but we don't want link all binaries to -lcrypt, just dropbear server.
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
187 dnl OS X doesn't need -lcrypt
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
188 AC_CHECK_FUNC(crypt, found_crypt_func=here)
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
189 AC_CHECK_LIB(crypt, crypt,
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
190 [
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
191 CRYPTLIB="-lcrypt"
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
192 found_crypt_func=here
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
193 ])
519
a1b7c6cdd48a Only use -lcrypt for Dropbear server binary
Matt Johnston <matt@ucc.asn.au>
parents: 461
diff changeset
194 AC_SUBST(CRYPTLIB)
1193
da1ed4fcdc4a The '==' comparision operator is not defined by POSIX, use '=' instead
Juergen Daubert <jue@jue.li>
parents: 1186
diff changeset
195 if test "t$found_crypt_func" = there; then
1186
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
196 AC_DEFINE(HAVE_CRYPT, 1, [crypt() function])
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
197 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
198
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
199 # Check if zlib is needed
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
200 AC_ARG_WITH(zlib,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
201 [ --with-zlib=PATH Use zlib in PATH],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
202 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
203 # option is given
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
204 if test -d "$withval/lib"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
205 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
206 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
207 LDFLAGS="-L${withval} ${LDFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
208 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
209 if test -d "$withval/include"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
210 CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
211 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
212 CPPFLAGS="-I${withval} ${CPPFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
213 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
214 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
215 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
216
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
217 AC_ARG_ENABLE(zlib,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
218 [ --disable-zlib Don't include zlib support],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
219 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
220 if test "x$enableval" = "xno"; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
221 AC_DEFINE(DISABLE_ZLIB,1,Use zlib)
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
222 AC_MSG_NOTICE(Disabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
223 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
224 AC_CHECK_LIB(z, deflate, , AC_MSG_ERROR([*** zlib missing - install first or check config.log ***]))
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
225 AC_MSG_NOTICE(Enabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
226 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
227 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
228 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
229 # if not disabled, check for zlib
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
230 AC_CHECK_LIB(z, deflate, , AC_MSG_ERROR([*** zlib missing - install first or check config.log ***]))
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
231 AC_MSG_NOTICE(Enabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
232 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
233 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
234
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
235 # Check if pam is needed
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
236 AC_ARG_WITH(pam,
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
237 [ --with-pam=PATH Use pam in PATH],
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
238 [
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
239 # option is given
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
240 if test -d "$withval/lib"; then
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
241 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
242 else
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
243 LDFLAGS="-L${withval} ${LDFLAGS}"
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
244 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
245 if test -d "$withval/include"; then
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
246 CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
247 else
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
248 CPPFLAGS="-I${withval} ${CPPFLAGS}"
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
249 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
250 ]
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
251 )
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
252
122
cb7ef2f63bf0 propagate of f51a272341ee12268fe7028bc2f2bad66c603069 and ab35ee4292ea910d4871c3609d6100fe34300720 from branch 'matt.dbclient.rez' to 'matt.dbclient.work'
Matt Johnston <matt@ucc.asn.au>
parents: 119
diff changeset
253
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
254 AC_ARG_ENABLE(pam,
1444
bfed37d12d90 improve configure --help alignment
Matt Johnston <matt@ucc.asn.au>
parents: 1429
diff changeset
255 [ --enable-pam Try to include PAM support],
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
256 [
122
cb7ef2f63bf0 propagate of f51a272341ee12268fe7028bc2f2bad66c603069 and ab35ee4292ea910d4871c3609d6100fe34300720 from branch 'matt.dbclient.rez' to 'matt.dbclient.work'
Matt Johnston <matt@ucc.asn.au>
parents: 119
diff changeset
257 if test "x$enableval" = "xyes"; then
cb7ef2f63bf0 propagate of f51a272341ee12268fe7028bc2f2bad66c603069 and ab35ee4292ea910d4871c3609d6100fe34300720 from branch 'matt.dbclient.rez' to 'matt.dbclient.work'
Matt Johnston <matt@ucc.asn.au>
parents: 119
diff changeset
258 AC_CHECK_LIB(pam, pam_authenticate, , AC_MSG_ERROR([*** PAM missing - install first or check config.log ***]))
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
259 AC_MSG_NOTICE(Enabling PAM)
573
d3ea8b9672f0 - Test for pam_fail_delay() function in configure
Matt Johnston <matt@ucc.asn.au>
parents: 519
diff changeset
260 AC_CHECK_FUNCS(pam_fail_delay)
122
cb7ef2f63bf0 propagate of f51a272341ee12268fe7028bc2f2bad66c603069 and ab35ee4292ea910d4871c3609d6100fe34300720 from branch 'matt.dbclient.rez' to 'matt.dbclient.work'
Matt Johnston <matt@ucc.asn.au>
parents: 119
diff changeset
261 else
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
262 AC_DEFINE(DISABLE_PAM,1,Use PAM)
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
263 AC_MSG_NOTICE(Disabling PAM)
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
264 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
265 ],
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
266 [
122
cb7ef2f63bf0 propagate of f51a272341ee12268fe7028bc2f2bad66c603069 and ab35ee4292ea910d4871c3609d6100fe34300720 from branch 'matt.dbclient.rez' to 'matt.dbclient.work'
Matt Johnston <matt@ucc.asn.au>
parents: 119
diff changeset
267 # disable it by default
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
268 AC_DEFINE(DISABLE_PAM,1,Use PAM)
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
269 AC_MSG_NOTICE(Disabling PAM)
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
270 ]
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
271 )
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
272
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
273 AC_ARG_ENABLE(openpty,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
274 [ --disable-openpty Don't use openpty, use alternative method],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
275 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
276 if test "x$enableval" = "xno"; then
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
277 AC_MSG_NOTICE(Not using openpty)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
278 else
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
279 AC_MSG_NOTICE(Using openpty if available)
1462
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
280 AC_SEARCH_LIBS(openpty, util, [dropbear_cv_func_have_openpty=yes])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
281 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
282 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
283 [
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
284 AC_MSG_NOTICE(Using openpty if available)
1462
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
285 AC_SEARCH_LIBS(openpty, util, [dropbear_cv_func_have_openpty=yes])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
286 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
287 )
1462
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
288
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
289 if test "x$dropbear_cv_func_have_openpty" = "xyes"; then
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
290 AC_DEFINE(HAVE_OPENPTY,,Have openpty() function)
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
291 no_ptc_check=yes
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
292 no_ptmx_check=yes
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
293 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
294
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
295 AC_ARG_ENABLE(syslog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
296 [ --disable-syslog Don't include syslog support],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
297 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
298 if test "x$enableval" = "xno"; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
299 AC_DEFINE(DISABLE_SYSLOG,1,Using syslog)
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
300 AC_MSG_NOTICE(Disabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
301 else
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
302 AC_MSG_NOTICE(Enabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
303 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
304 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
305 [
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
306 AC_MSG_NOTICE(Enabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
307 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
308 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
309
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
310 AC_ARG_ENABLE(shadow,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
311 [ --disable-shadow Don't use shadow passwords (if available)],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
312 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
313 if test "x$enableval" = "xno"; then
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
314 AC_MSG_NOTICE(Not using shadow passwords)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
315 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
316 AC_CHECK_HEADERS([shadow.h])
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
317 AC_MSG_NOTICE(Using shadow passwords if available)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
318 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
319 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
320 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
321 AC_CHECK_HEADERS([shadow.h])
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
322 AC_MSG_NOTICE(Using shadow passwords if available)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
323 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
324 )
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
325
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
326 AC_ARG_ENABLE(plugin,
1694
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
327 [ --enable-plugin Enable support for External Public Key Authentication plug-in],
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
328 [
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
329 AC_DEFINE(DROPBEAR_PLUGIN, 1, External Public Key Authentication)
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
330 AC_MSG_NOTICE(Enabling support for External Public Key Authentication)
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
331 DROPBEAR_PLUGIN=1
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
332 ],
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
333 [
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
334 AC_DEFINE(DROPBEAR_PLUGIN, 0, External Public Key Authentication)
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
335 DROPBEAR_PLUGIN=0
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
336 ]
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
337
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
338 )
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
339 AC_SUBST(DROPBEAR_PLUGIN)
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
340
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
341 AC_ARG_ENABLE(fuzz,
1559
92c93b4a3646 Fix to be able to compile normal(ish) binaries with --enable-fuzz
Matt Johnston <matt@ucc.asn.au>
parents: 1558
diff changeset
342 [ --enable-fuzz Build fuzzing. Not recommended for deployment.],
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
343 [
1668
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
344 if test "x$enableval" = "xyes"; then
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
345 AC_DEFINE(DROPBEAR_FUZZ, 1, Fuzzing)
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
346 AC_MSG_NOTICE(Enabling fuzzing)
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
347 DROPBEAR_FUZZ=1
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
348 # libfuzzer needs linking with c++ libraries
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
349 AC_PROG_CXX
1756
d5680e12ac33 Move fuzzing code to fuzz/ subdirectory, improve Makefile.in
Matt Johnston <matt@ucc.asn.au>
parents: 1725
diff changeset
350 mkdir -pv fuzz
1668
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
351 else
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
352 AC_DEFINE(DROPBEAR_FUZZ, 0, Fuzzing)
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
353 AC_MSG_NOTICE(Disabling fuzzing)
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
354 DROPBEAR_FUZZ=0
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
355 fi
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
356 ],
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
357 [
1558
2f64cb3d3007 - #if not #ifdef for DROPBEAR_FUZZ
Matt Johnston <matt@ucc.asn.au>
parents: 1557
diff changeset
358 AC_DEFINE(DROPBEAR_FUZZ, 0, Fuzzing)
1668
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
359 AC_MSG_NOTICE(Disabling fuzzing)
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
360 DROPBEAR_FUZZ=0
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
361 ]
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
362
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
363 )
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
364 AC_SUBST(DROPBEAR_FUZZ)
1582
68abf717328d set up CXX for fuzzing build
Matt Johnston <matt@ucc.asn.au>
parents: 1573
diff changeset
365 AC_SUBST(CXX)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
366
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
367 # Checks for header files.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
368 AC_HEADER_STDC
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
369 AC_HEADER_SYS_WAIT
1550
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
370 AC_CHECK_HEADERS([netinet/in.h netinet/tcp.h \
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
371 crypt.h \
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
372 pty.h libutil.h libgen.h inttypes.h stropts.h utmp.h \
1426
89f8c5960527 test for linux/pkt-sched.h rather than SO_PRIORITY
Matt Johnston <matt@ucc.asn.au>
parents: 1416
diff changeset
373 utmpx.h lastlog.h paths.h util.h netdb.h security/pam_appl.h \
1698
f966834f0f9c Use Linux getrandom() to ensure random device is initialised
Matt Johnston <matt@ucc.asn.au>
parents: 1694
diff changeset
374 pam/pam_appl.h netinet/in_systm.h sys/uio.h linux/pkt_sched.h \
f966834f0f9c Use Linux getrandom() to ensure random device is initialised
Matt Johnston <matt@ucc.asn.au>
parents: 1694
diff changeset
375 sys/random.h])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
376
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
377 # Checks for typedefs, structures, and compiler characteristics.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
378 AC_C_CONST
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
379 AC_TYPE_UID_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
380 AC_TYPE_MODE_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
381 AC_TYPE_PID_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
382 AC_TYPE_SIZE_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
383 AC_HEADER_TIME
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
384
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
385 AC_CHECK_TYPES([uint8_t, u_int8_t, uint16_t, u_int16_t, uint32_t, u_int32_t])
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
386 AC_CHECK_TYPES([struct sockaddr_storage])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
387 AC_CHECK_TYPE([socklen_t], ,[
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
388 AC_MSG_CHECKING([for socklen_t equivalent])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
389 AC_CACHE_VAL([curl_cv_socklen_t_equiv],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
390 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
391 # Systems have either "struct sockaddr *" or
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
392 # "void *" as the second argument to getpeername
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
393 curl_cv_socklen_t_equiv=
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
394 for arg2 in "struct sockaddr" void; do
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
395 for t in int size_t unsigned long "unsigned long"; do
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
396 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
397 #include <sys/types.h>
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
398 #include <sys/socket.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
399
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
400 int getpeername (int, $arg2 *, $t *);
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
401 ]],[[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
402 $t len;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
403 getpeername(0,0,&len);
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
404 ]])],[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
405 curl_cv_socklen_t_equiv="$t"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
406 break
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
407 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
408 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
409 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
410
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
411 if test "x$curl_cv_socklen_t_equiv" = x; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
412 AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
413 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
414 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
415 AC_MSG_RESULT($curl_cv_socklen_t_equiv)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
416 AC_DEFINE_UNQUOTED(socklen_t, $curl_cv_socklen_t_equiv,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
417 [type to use in place of socklen_t if not defined])],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
418 [#include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
419 #include <sys/socket.h>])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
420
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
421 # for the fake-rfc2553 stuff - straight from OpenSSH
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
422
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
423 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_have_struct_sockaddr_storage, [
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
424 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
425 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
426 #include <sys/socket.h>
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
427 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
428 [[ if (sizeof(struct sockaddr_storage)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
429 [ ac_cv_have_struct_sockaddr_storage="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
430 [ ac_cv_have_struct_sockaddr_storage="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
431 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
432 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
433 if test "x$ac_cv_have_struct_sockaddr_storage" = "xyes" ; then
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
434 AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE)
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
435 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
436
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
437 AC_CACHE_CHECK([for struct sockaddr_in6], ac_cv_have_struct_sockaddr_in6, [
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
438 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
439 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
440 #include <netinet/in.h>
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
441 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
442 [[ if (sizeof(struct sockaddr_in6)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
443 [ ac_cv_have_struct_sockaddr_in6="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
444 [ ac_cv_have_struct_sockaddr_in6="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
445 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
446 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
447 if test "x$ac_cv_have_struct_sockaddr_in6" = "xyes" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
448 AC_DEFINE(HAVE_STRUCT_SOCKADDR_IN6,1,Have struct sockaddr_in6)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
449 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
450
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
451 AC_CACHE_CHECK([for struct in6_addr], ac_cv_have_struct_in6_addr, [
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
452 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
453 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
454 #include <netinet/in.h>
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
455 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
456 [[ if (sizeof(struct in6_addr)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
457 [ ac_cv_have_struct_in6_addr="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
458 [ ac_cv_have_struct_in6_addr="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
459 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
460 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
461 if test "x$ac_cv_have_struct_in6_addr" = "xyes" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
462 AC_DEFINE(HAVE_STRUCT_IN6_ADDR,1,Have struct in6_addr)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
463 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
464
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
465 AC_CACHE_CHECK([for struct addrinfo], ac_cv_have_struct_addrinfo, [
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
466 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
467 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
468 #include <sys/socket.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
469 #include <netdb.h>
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
470 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
471 [[ if (sizeof(struct addrinfo)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
472 [ ac_cv_have_struct_addrinfo="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
473 [ ac_cv_have_struct_addrinfo="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
474 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
475 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
476 if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
477 AC_DEFINE(HAVE_STRUCT_ADDRINFO,1,Have struct addrinfo)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
478 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
479
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
480
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
481 # IRIX has a const char return value for gai_strerror()
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
482 AC_CHECK_FUNCS(gai_strerror,[
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
483 AC_DEFINE(HAVE_GAI_STRERROR)
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
484 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
485 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
486 #include <sys/socket.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
487 #include <netdb.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
488
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
489 const char *gai_strerror(int);]],[[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
490 char *str;
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
491
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
492 str = gai_strerror(0);]])],[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
493 AC_DEFINE(HAVE_CONST_GAI_STRERROR_PROTO, 1,
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
494 [Define if gai_strerror() returns const char *])])])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
495
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
496 # for loginrec.c
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
497
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
498 AC_CHECK_MEMBERS([struct utmp.ut_host, struct utmp.ut_pid, struct utmp.ut_type, struct utmp.ut_tv, struct utmp.ut_id, struct utmp.ut_addr, struct utmp.ut_addr_v6, struct utmp.ut_exit, struct utmp.ut_time],,,[
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
499 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
500 #if HAVE_UTMP_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
501 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
502 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
503 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
504
335
e17f0333c21e Another stab at getting ss_family happy on older glibc
Matt Johnston <matt@ucc.asn.au>
parents: 321
diff changeset
505 AC_CHECK_MEMBERS([struct utmpx.ut_host, struct utmpx.ut_syslen, struct utmpx.ut_type, struct utmpx.ut_id, struct utmpx.ut_addr, struct utmpx.ut_addr_v6, struct utmpx.ut_time, struct utmpx.ut_tv],,,[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
506 #include <sys/types.h>
262
a3a68c25035e * workaround for systems such as glibc 2.1 that have
Matt Johnston <matt@ucc.asn.au>
parents: 254
diff changeset
507 #include <sys/socket.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
508 #if HAVE_UTMPX_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
509 #include <utmpx.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
510 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
511 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
512
336
2dd116db1956 Can't check for ss_family without #including sys/socket.h
Matt Johnston <matt@ucc.asn.au>
parents: 335
diff changeset
513 AC_CHECK_MEMBERS([struct sockaddr_storage.ss_family],,,[
2dd116db1956 Can't check for ss_family without #including sys/socket.h
Matt Johnston <matt@ucc.asn.au>
parents: 335
diff changeset
514 #include <sys/types.h>
2dd116db1956 Can't check for ss_family without #including sys/socket.h
Matt Johnston <matt@ucc.asn.au>
parents: 335
diff changeset
515 #include <sys/socket.h>
2dd116db1956 Can't check for ss_family without #including sys/socket.h
Matt Johnston <matt@ucc.asn.au>
parents: 335
diff changeset
516 ])
335
e17f0333c21e Another stab at getting ss_family happy on older glibc
Matt Johnston <matt@ucc.asn.au>
parents: 321
diff changeset
517
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
518 AC_CHECK_FUNCS(endutent getutent getutid getutline pututline setutent)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
519 AC_CHECK_FUNCS(utmpname)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
520 AC_CHECK_FUNCS(endutxent getutxent getutxid getutxline pututxline )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
521 AC_CHECK_FUNCS(setutxent utmpxname)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
522 AC_CHECK_FUNCS(logout updwtmp logwtmp)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
523
1622
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
524 # POSIX monotonic time
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
525 AC_CHECK_FUNCS(clock_gettime)
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
526
928
7cd89d4e0335 Add new monotonic_now() wrapper so that timeouts are unaffected by
Matt Johnston <matt@ucc.asn.au>
parents: 898
diff changeset
527 # OS X monotonic time
7cd89d4e0335 Add new monotonic_now() wrapper so that timeouts are unaffected by
Matt Johnston <matt@ucc.asn.au>
parents: 898
diff changeset
528 AC_CHECK_HEADERS([mach/mach_time.h])
7cd89d4e0335 Add new monotonic_now() wrapper so that timeouts are unaffected by
Matt Johnston <matt@ucc.asn.au>
parents: 898
diff changeset
529 AC_CHECK_FUNCS(mach_absolute_time)
7cd89d4e0335 Add new monotonic_now() wrapper so that timeouts are unaffected by
Matt Johnston <matt@ucc.asn.au>
parents: 898
diff changeset
530
1698
f966834f0f9c Use Linux getrandom() to ensure random device is initialised
Matt Johnston <matt@ucc.asn.au>
parents: 1694
diff changeset
531 AC_CHECK_FUNCS(explicit_bzero memset_s getrandom)
1280
94d4038bb34c Use memset_s or explicit_bzero
Matt Johnston <matt@ucc.asn.au>
parents: 1193
diff changeset
532
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
533 AC_ARG_ENABLE(bundled-libtom,
829
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
534 [ --enable-bundled-libtom Force using bundled libtomcrypt/libtommath even if a system version exists.
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
535 --disable-bundled-libtom Force using system libtomcrypt/libtommath, fail if it does not exist.
1694
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
536 Default is to use system if available, otherwise bundled.
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
537 Dropbear requires system libtommath >= 1.2.0 and libtomcrypt >= 1.18.0],
829
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
538 [
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
539 if test "x$enableval" = "xyes"; then
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
540 BUNDLED_LIBTOM=1
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
541 AC_MSG_NOTICE(Forcing bundled libtom*)
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
542 else
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
543 BUNDLED_LIBTOM=0
1692
1051e4eea25a Update LibTomMath to 1.2.0 (#84)
Steffen Jaeckel <s@jaeckel.eu>
parents: 1668
diff changeset
544 AC_CHECK_LIB(tommath, mp_to_ubin, LIBTOM_LIBS="-ltommath $LIBTOM_LIBS",
1694
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
545 [AC_MSG_ERROR([Missing/old system libtommath and --disable-bundled-libtom was specified])] )
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
546 AC_CHECK_LIB(tomcrypt, poly1305_init, LIBTOM_LIBS="-ltomcrypt $LIBTOM_LIBS",
39534eedf429 Mention libtom version requirements, check for poly1305 in libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 1692
diff changeset
547 [AC_MSG_ERROR([Missing/old system libtomcrypt and --disable-bundled-libtom was specified])] )
829
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
548 fi
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
549 ],
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
550 [
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
551 BUNDLED_LIBTOM=0
1692
1051e4eea25a Update LibTomMath to 1.2.0 (#84)
Steffen Jaeckel <s@jaeckel.eu>
parents: 1668
diff changeset
552 AC_CHECK_LIB(tommath, mp_to_ubin, LIBTOM_LIBS="-ltommath $LIBTOM_LIBS", BUNDLED_LIBTOM=1)
1725
a139fe25f919 check for poly1305_init in other libtomcrypt configure test
Matt Johnston <matt@ucc.asn.au>
parents: 1698
diff changeset
553 AC_CHECK_LIB(tomcrypt, poly1305_init, LIBTOM_LIBS="-ltomcrypt $LIBTOM_LIBS", BUNDLED_LIBTOM=1)
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
554 ]
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
555 )
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
556
587
1151059c5eff Work properly again with bundled libtom*. autoconf is a hassle.
Matt Johnston <matt@ucc.asn.au>
parents: 585
diff changeset
557 if test $BUNDLED_LIBTOM = 1 ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
558 AC_DEFINE(BUNDLED_LIBTOM,1,Use bundled libtom)
587
1151059c5eff Work properly again with bundled libtom*. autoconf is a hassle.
Matt Johnston <matt@ucc.asn.au>
parents: 585
diff changeset
559 fi
1151059c5eff Work properly again with bundled libtom*. autoconf is a hassle.
Matt Johnston <matt@ucc.asn.au>
parents: 585
diff changeset
560
898
4f1988cb79ce Fix building with system libtomcrypt/libtommath
Matt Johnston <matt@ucc.asn.au>
parents: 866
diff changeset
561 AC_SUBST(LIBTOM_LIBS)
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
562 AC_SUBST(BUNDLED_LIBTOM)
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
563
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
564 dnl Added from OpenSSH 3.6.1p2's configure.ac
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
565
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
566 dnl allow user to disable some login recording features
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
567 AC_ARG_ENABLE(lastlog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
568 [ --disable-lastlog Disable use of lastlog even if detected [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
569 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
570 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
571 AC_DEFINE(DISABLE_LASTLOG,1,Disable use of lastlog())
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
572 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
573 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
574 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
575 AC_ARG_ENABLE(utmp,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
576 [ --disable-utmp Disable use of utmp even if detected [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
577 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
578 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
579 AC_DEFINE(DISABLE_UTMP,1,Disable use of utmp)
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
580 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
581 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
582 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
583 AC_ARG_ENABLE(utmpx,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
584 [ --disable-utmpx Disable use of utmpx even if detected [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
585 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
586 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
587 AC_DEFINE(DISABLE_UTMPX,1,Disable use of utmpx)
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
588 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
589 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
590 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
591 AC_ARG_ENABLE(wtmp,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
592 [ --disable-wtmp Disable use of wtmp even if detected [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
593 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
594 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
595 AC_DEFINE(DISABLE_WTMP,1,Disable use of wtmp)
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
596 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
597 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
598 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
599 AC_ARG_ENABLE(wtmpx,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
600 [ --disable-wtmpx Disable use of wtmpx even if detected [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
601 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
602 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
603 AC_DEFINE(DISABLE_WTMPX,1,Disable use of wtmpx)
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
604 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
605 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
606 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
607 AC_ARG_ENABLE(loginfunc,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
608 [ --disable-loginfunc Disable use of login() etc. [no]],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
609 [ no_loginfunc_check=1
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
610 AC_MSG_NOTICE([Not using login() etc]) ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
611 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
612 AC_ARG_ENABLE(pututline,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
613 [ --disable-pututline Disable use of pututline() etc. ([uw]tmp) [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
614 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
615 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
616 AC_DEFINE(DISABLE_PUTUTLINE,1,Disable use of pututline())
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
617 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
618 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
619 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
620 AC_ARG_ENABLE(pututxline,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
621 [ --disable-pututxline Disable use of pututxline() etc. ([uw]tmpx) [no]],
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
622 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
623 if test "x$enableval" = "xno" ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
624 AC_DEFINE(DISABLE_PUTUTXLINE,1,Disable use of pututxline())
1397
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
625 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
626 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
627 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
628 AC_ARG_WITH(lastlog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
629 [ --with-lastlog=FILE|DIR specify lastlog location [common locations]],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
630 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
631 if test "x$withval" = "xno" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
632 AC_DEFINE(DISABLE_LASTLOG)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
633 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
634 conf_lastlog_location=$withval
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
635 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
636 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
637 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
638
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
639 if test -z "$no_loginfunc_check"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
640 dnl Checks for libutil functions (login(), logout() etc, not openpty() )
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
641 AC_SEARCH_LIBS(login, util bsd, [AC_DEFINE(HAVE_LOGIN,1,[Have login() function])])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
642 AC_CHECK_FUNCS(logout updwtmp logwtmp)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
643 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
644
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
645 dnl lastlog, [uw]tmpx? detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
646 dnl NOTE: set the paths in the platform section to avoid the
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
647 dnl need for command-line parameters
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
648 dnl lastlog and [uw]tmp are subject to a file search if all else fails
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
649
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
650 dnl lastlog detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
651 dnl NOTE: the code itself will detect if lastlog is a directory
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
652 AC_MSG_CHECKING([if your system defines LASTLOG_FILE])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
653 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
654 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
655 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
656 #ifdef HAVE_LASTLOG_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
657 # include <lastlog.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
658 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
659 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
660 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
661 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
662 #ifdef HAVE_LOGIN_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
663 # include <login.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
664 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
665 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
666 [[ char *lastlog = LASTLOG_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
667 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
668 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
669 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
670 AC_MSG_CHECKING([if your system defines _PATH_LASTLOG])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
671 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
672 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
673 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
674 #ifdef HAVE_LASTLOG_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
675 # include <lastlog.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
676 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
677 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
678 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
679 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
680 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
681 [[ char *lastlog = _PATH_LASTLOG; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
682 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
683 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
684 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
685 system_lastlog_path=no
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
686 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
687 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
688 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
689
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
690 if test -z "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
691 if test x"$system_lastlog_path" = x"no" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
692 for f in /var/log/lastlog /usr/adm/lastlog /var/adm/lastlog /etc/security/lastlog ; do
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
693 if (test -d "$f" || test -f "$f") ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
694 conf_lastlog_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
695 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
696 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
697 if test -z "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
698 AC_MSG_WARN([** Cannot find lastlog **])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
699 dnl Don't define DISABLE_LASTLOG - that means we don't try wtmp/wtmpx
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
700 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
701 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
702 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
703
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
704 if test -n "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
705 AC_DEFINE_UNQUOTED(CONF_LASTLOG_FILE, "$conf_lastlog_location", lastlog file location)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
706 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
707
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
708 dnl utmp detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
709 AC_MSG_CHECKING([if your system defines UTMP_FILE])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
710 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
711 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
712 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
713 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
714 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
715 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
716 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
717 [[ char *utmp = UTMP_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
718 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
719 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
720 system_utmp_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
721 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
722 if test -z "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
723 if test x"$system_utmp_path" = x"no" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
724 for f in /etc/utmp /usr/adm/utmp /var/run/utmp; do
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
725 if test -f $f ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
726 conf_utmp_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
727 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
728 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
729 if test -z "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
730 AC_DEFINE(DISABLE_UTMP)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
731 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
732 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
733 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
734 if test -n "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
735 AC_DEFINE_UNQUOTED(CONF_UTMP_FILE, "$conf_utmp_location", utmp file location)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
736 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
737
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
738 dnl wtmp detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
739 AC_MSG_CHECKING([if your system defines WTMP_FILE])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
740 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
741 #include <sys/types.h>
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
742 #ifdef HAVE_UTMP_H
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
743 # include <utmp.h>
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
744 #endif
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
745 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
746 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
747 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
748 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
749 [[ char *wtmp = WTMP_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
750 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
751 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
752 system_wtmp_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
753 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
754 if test -z "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
755 if test x"$system_wtmp_path" = x"no" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
756 for f in /usr/adm/wtmp /var/log/wtmp; do
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
757 if test -f $f ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
758 conf_wtmp_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
759 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
760 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
761 if test -z "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
762 AC_DEFINE(DISABLE_WTMP)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
763 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
764 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
765 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
766 if test -n "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
767 AC_DEFINE_UNQUOTED(CONF_WTMP_FILE, "$conf_wtmp_location", wtmp file location)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
768 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
769
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
770
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
771 dnl utmpx detection - I don't know any system so perverse as to require
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
772 dnl utmpx, but not define UTMPX_FILE (ditto wtmpx.) No doubt it's out
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
773 dnl there, though.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
774 AC_MSG_CHECKING([if your system defines UTMPX_FILE])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
775 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
776 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
777 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
778 #ifdef HAVE_UTMPX_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
779 #include <utmpx.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
780 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
781 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
782 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
783 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
784 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
785 [[ char *utmpx = UTMPX_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
786 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
787 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
788 system_utmpx_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
789 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
790 if test -z "$conf_utmpx_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
791 if test x"$system_utmpx_path" = x"no" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
792 AC_DEFINE(DISABLE_UTMPX)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
793 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
794 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
795 AC_DEFINE_UNQUOTED(CONF_UTMPX_FILE, "$conf_utmpx_location", utmpx file location)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
796 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
797
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
798 dnl wtmpx detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
799 AC_MSG_CHECKING([if your system defines WTMPX_FILE])
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
800 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
801 #include <sys/types.h>
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
802 #ifdef HAVE_UTMP_H
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
803 # include <utmp.h>
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
804 #endif
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
805 #ifdef HAVE_UTMPX_H
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
806 # include <utmpx.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
807 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
808 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
809 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
810 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
811 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
812 [[ char *wtmpx = WTMPX_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
813 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
814 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
815 system_wtmpx_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
816 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
817 if test -z "$conf_wtmpx_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
818 if test x"$system_wtmpx_path" = x"no" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
819 AC_DEFINE(DISABLE_WTMPX)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
820 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
821 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
822 AC_DEFINE_UNQUOTED(CONF_WTMPX_FILE, "$conf_wtmpx_location", wtmpx file location)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
823 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
824
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
825 # Checks for library functions.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
826 AC_PROG_GCC_TRADITIONAL
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
827 AC_FUNC_MEMCMP
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
828 AC_FUNC_SELECT_ARGTYPES
1550
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
829 AC_CHECK_FUNCS([getpass getspnam getusershell putenv])
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
830 AC_CHECK_FUNCS([clearenv strlcpy strlcat daemon basename _getpty getaddrinfo ])
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
831 AC_CHECK_FUNCS([freeaddrinfo getnameinfo fork writev getgrouplist])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
832
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
833 AC_SEARCH_LIBS(basename, gen, AC_DEFINE(HAVE_BASENAME))
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
834
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
835 # Solaris needs ptmx
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
836 if test -z "$no_ptmx_check" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
837 if test x"$cross_compiling" = x"no" ; then
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
838 if test -e /dev/ptmx ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
839 AC_DEFINE(USE_DEV_PTMX,1,Use /dev/ptmx)
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
840 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
841 else
431
126687f635dc Quote some message in configure
Matt Johnston <matt@ucc.asn.au>
parents: 417
diff changeset
842 AC_MSG_NOTICE([Not checking for /dev/ptmx, we're cross-compiling])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
843 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
844 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
845
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
846 if test -z "$no_ptc_check" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
847 if test x"$cross_compiling" = x"no" ; then
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
848 if test -e /dev/ptc ; then
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
849 AC_DEFINE(HAVE_DEV_PTS_AND_PTC,1,Use /dev/ptc & /dev/pts)
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
850 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
851 else
431
126687f635dc Quote some message in configure
Matt Johnston <matt@ucc.asn.au>
parents: 417
diff changeset
852 AC_MSG_NOTICE([Not checking for /dev/ptc & /dev/pts since we're cross-compiling])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
853 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
854 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
855
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
856 AC_EXEEXT
366
59531221b846 Fix up separate-directory building for libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 336
diff changeset
857
998
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
858 if test $BUNDLED_LIBTOM = 1 ; then
1473
67bcd5fa40c6 generate list of libtomcrypt directories automatically
Matt Johnston <matt@ucc.asn.au>
parents: 1469
diff changeset
859 (cd $srcdir; find libtomcrypt -type d) | xargs mkdir -pv
998
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
860 LIBTOM_FILES="libtomcrypt/Makefile libtommath/Makefile"
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
861 fi
1473
67bcd5fa40c6 generate list of libtomcrypt directories automatically
Matt Johnston <matt@ucc.asn.au>
parents: 1469
diff changeset
862
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
863 AC_CONFIG_HEADER(config.h)
998
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
864 AC_CONFIG_FILES(Makefile $LIBTOM_FILES)
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
865 AC_OUTPUT
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
866
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
867 AC_MSG_NOTICE()
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
868 if test $BUNDLED_LIBTOM = 1 ; then
1159
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
869 AC_MSG_NOTICE([Using bundled libtomcrypt and libtommath])
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
870 else
1159
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
871 AC_MSG_NOTICE([Using system libtomcrypt and libtommath])
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
872 fi
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
873
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
874
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
875 if test "x$ac_cv_func_getpass" != xyes; then
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
876 AC_MSG_NOTICE()
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
877 AC_MSG_NOTICE([getpass() not available, dbclient will only have public-key authentication])
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
878 fi
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
879
1186
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
880 if test "t$found_crypt_func" != there; then
1159
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
881 AC_MSG_NOTICE()
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
882 AC_MSG_NOTICE([crypt() not available, dropbear server will not have password authentication])
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
883 fi
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
884
321
fa9c45d09727 change AC_MSG_RESULT to AC_MSG_NOTICE in configure.in, add AC_SYS_LARGEFILE
Matt Johnston <matt@ucc.asn.au>
parents: 262
diff changeset
885 AC_MSG_NOTICE()
1667
986126448688 Update remaining advise to edit options.h
Alexander Dahl <ada@thorsis.com>
parents: 1654
diff changeset
886 AC_MSG_NOTICE([Now edit localoptions.h to choose features.])