annotate configure.ac @ 1798:8dc43b30c6bf

Define _GNU_SOURCE properly, other header fixes This lets -std=c89 build for gcc 8.4.0
author Matt Johnston <matt@ucc.asn.au>
date Thu, 04 Mar 2021 21:03:02 +0800
parents d5680e12ac33
children 7dc92355a986
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
1798
8dc43b30c6bf Define _GNU_SOURCE properly, other header fixes
Matt Johnston <matt@ucc.asn.au>
parents: 1756
diff changeset
50 # needed for various extensions. define early before autoconf tests
8dc43b30c6bf Define _GNU_SOURCE properly, other header fixes
Matt Johnston <matt@ucc.asn.au>
parents: 1756
diff changeset
51 AC_DEFINE([_GNU_SOURCE], [], [Use GNU extensions if glibc])
8dc43b30c6bf Define _GNU_SOURCE properly, other header fixes
Matt Johnston <matt@ucc.asn.au>
parents: 1756
diff changeset
52
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
53 STATIC=0
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
54 AC_ARG_ENABLE(static,
1447
8f88f4290b22 document --enable-static in place of STATIC=1
Matt Johnston <matt@ucc.asn.au>
parents: 1446
diff changeset
55 [ --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
56 [
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
57 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
58 STATIC=1
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
59 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
60 fi
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
61 ], [])
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
62 AC_SUBST(STATIC)
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
63
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
64 hardenbuild=1
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
65 AC_ARG_ENABLE(harden,
1444
bfed37d12d90 improve configure --help alignment
Matt Johnston <matt@ucc.asn.au>
parents: 1429
diff changeset
66 [ --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
67 [
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
68 if test "x$enableval" = "xno"; then
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
69 hardenbuild=0
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
70 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
71 fi
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
72 ], [])
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
73
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
74 if test "$hardenbuild" -eq 1; then
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
75 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
76 # 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
77 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
78 # pie
1469
51043e868f55 Test for -Wno-pointer-sign, move CFLAGS tests into a macro
Matt Johnston <matt@ucc.asn.au>
parents: 1463
diff changeset
79 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
80
1446
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
81 OLDLDFLAGS="$LDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
82 TESTFLAGS="-Wl,-pie"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
83 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
84 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
85 [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
86 [
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
87 LDFLAGS="$OLDLDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
88 TESTFLAGS="-pie"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
89 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
90 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
91 [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
92 [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
93 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
94 ]
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
95 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
96 # 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
97 OLDLDFLAGS="$LDFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
98 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
99 LDFLAGS="$LDFLAGS $TESTFLAGS"
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
100 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
101 [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
102 [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
103 )
b8764eee6bdb add --enable-static configure argument. disable conflicting harden flags
Matt Johnston <matt@ucc.asn.au>
parents: 1444
diff changeset
104 fi # non-static
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
105 # 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
106 OLDCFLAGS="$CFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
107 TESTFLAGS="-fstack-protector-strong"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
108 CFLAGS="$CFLAGS $TESTFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
109 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
110 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
111 [
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
112 CFLAGS="$OLDCFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
113 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
114 CFLAGS="$CFLAGS $TESTFLAGS"
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
115 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
116 [AC_MSG_NOTICE([Setting $TESTFLAGS])],
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
117 [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
118 )
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
119 ]
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
120 )
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
121 # 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
122 DB_TRYADDCFLAGS([-D_FORTIFY_SOURCE=2])
1505
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
123
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
124 # Spectre v2 mitigations
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
125 DB_TRYADDCFLAGS([-mfunction-return=thunk])
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
126 DB_TRYADDCFLAGS([-mindirect-branch=thunk])
55120acb9994 Add Spectre v2 mitigations for GCC (#54)
Loganaden Velvindron <logan@hackers.mu>
parents: 1490
diff changeset
127
1427
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
128 fi
f0e262a46d4e set hardened compiler/linker flags by default
Matt Johnston <matt@ucc.asn.au>
parents: 1426
diff changeset
129
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
130 # 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
131 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
132
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
133 # Host specific options
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
134 # 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
135 AC_CANONICAL_HOST
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
136
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
137 case "$host" in
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 *-*-linux*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
140 no_ptmx_check=1
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
141 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
142
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
143 *-*-solaris*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
144 CFLAGS="$CFLAGS -I/usr/local/include"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
145 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
146 conf_lastlog_location="/var/adm/lastlog"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
147 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
148 sol2ver=`echo "$host"| sed -e 's/.*[[0-9]]\.//'`
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
149 if test "$sol2ver" -ge 8; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
150 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
151 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
152 AC_DEFINE(DISABLE_WTMP,1,Disable wtmp)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
153 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
154 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
155 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
156 AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
157 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
158 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
159
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
160 *-*-aix*)
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
161 AC_DEFINE(AIX,1,Using AIX)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
162 # 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
163 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
164 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
165
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
166 *-*-hpux*)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
167 LIBS="$LIBS -lsec"
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
168 # 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
169 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
170 ;;
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
171 *-dec-osf*)
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
172 AC_DEFINE(BROKEN_GETADDRINFO,1,Broken getaddrinfo)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
173 ;;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
174 esac
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
175
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
176 AC_CHECK_TOOL(AR, ar, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
177 AC_CHECK_TOOL(RANLIB, ranlib, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
178 AC_CHECK_TOOL(STRIP, strip, :)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
179 AC_CHECK_TOOL(INSTALL, install, :)
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 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
182 AC_CHECK_DECL(__UCLIBC__,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
183 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
184 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
185 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
186 ],,)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
187
1186
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
188 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
189 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
190 dnl OS X doesn't need -lcrypt
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
191 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
192 AC_CHECK_LIB(crypt, crypt,
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
193 [
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
194 CRYPTLIB="-lcrypt"
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
195 found_crypt_func=here
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
196 ])
519
a1b7c6cdd48a Only use -lcrypt for Dropbear server binary
Matt Johnston <matt@ucc.asn.au>
parents: 461
diff changeset
197 AC_SUBST(CRYPTLIB)
1193
da1ed4fcdc4a The '==' comparision operator is not defined by POSIX, use '=' instead
Juergen Daubert <jue@jue.li>
parents: 1186
diff changeset
198 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
199 AC_DEFINE(HAVE_CRYPT, 1, [crypt() function])
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
200 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
201
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
202 # Check if zlib is needed
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
203 AC_ARG_WITH(zlib,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
204 [ --with-zlib=PATH Use zlib in PATH],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
205 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
206 # option is given
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
207 if test -d "$withval/lib"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
208 LDFLAGS="-L${withval}/lib ${LDFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
209 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
210 LDFLAGS="-L${withval} ${LDFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
211 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
212 if test -d "$withval/include"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
213 CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
214 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
215 CPPFLAGS="-I${withval} ${CPPFLAGS}"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
216 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
217 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
218 )
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 AC_ARG_ENABLE(zlib,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
221 [ --disable-zlib Don't include zlib support],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
222 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
223 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
224 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
225 AC_MSG_NOTICE(Disabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
226 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
227 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
228 AC_MSG_NOTICE(Enabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
229 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
230 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
231 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
232 # if not disabled, check for zlib
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
233 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
234 AC_MSG_NOTICE(Enabling zlib)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
235 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
236 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
237
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
238 # 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
239 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
240 [ --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
241 [
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
242 # option is given
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
243 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
244 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
245 else
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
246 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
247 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
248 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
249 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
250 else
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
251 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
252 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
253 ]
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
254 )
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
255
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
256
57
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
257 AC_ARG_ENABLE(pam,
1444
bfed37d12d90 improve configure --help alignment
Matt Johnston <matt@ucc.asn.au>
parents: 1429
diff changeset
258 [ --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
259 [
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
260 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
261 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
262 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
263 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
264 else
1399
47a3a3cb7d45 Set configure #defines to 1. Escape some strings for m4
Matt Johnston <matt@ucc.asn.au>
parents: 1397
diff changeset
265 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
266 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
267 fi
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
268 ],
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
269 [
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
270 # 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
271 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
272 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
273 ]
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
274 )
3b2a5a1c4347 svr-authpam code merged and works. needs tidying a log
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
275
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
276 AC_ARG_ENABLE(openpty,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
277 [ --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
278 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
279 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
280 AC_MSG_NOTICE(Not using openpty)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
281 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
282 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
283 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
284 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
285 ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
286 [
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
287 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
288 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
289 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
290 )
1462
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
291
e017e46b1434 configure: add a variable to allow openpty check to be cached
Eric Bénard <eric@eukrea.com>
parents: 1447
diff changeset
292 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
293 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
294 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
295 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
296 fi
4
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 AC_ARG_ENABLE(syslog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
299 [ --disable-syslog Don't include syslog support],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
300 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
301 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
302 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
303 AC_MSG_NOTICE(Disabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
304 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
305 AC_MSG_NOTICE(Enabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
306 fi
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 [
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
309 AC_MSG_NOTICE(Enabling syslog)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
310 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
311 )
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 AC_ARG_ENABLE(shadow,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
314 [ --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
315 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
316 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
317 AC_MSG_NOTICE(Not using shadow passwords)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
318 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
319 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
320 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
321 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
322 ],
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 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
325 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
326 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
327 )
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
328
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
329 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
330 [ --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
331 [
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
332 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
333 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
334 DROPBEAR_PLUGIN=1
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
335 ],
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
336 [
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
337 AC_DEFINE(DROPBEAR_PLUGIN, 0, External Public Key Authentication)
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
338 DROPBEAR_PLUGIN=0
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
339 ]
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
340
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
341 )
1654
cc0fc5131c5c Rename EPKA -> Plugin
Matt Johnston <matt@ucc.asn.au>
parents: 1653
diff changeset
342 AC_SUBST(DROPBEAR_PLUGIN)
1653
76189c9ffea2 External Public-Key Authentication API (#72)
fabriziobertocci <fabriziobertocci@gmail.com>
parents: 1623
diff changeset
343
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
344 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
345 [ --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
346 [
1668
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
347 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
348 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
349 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
350 DROPBEAR_FUZZ=1
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
351 # 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
352 AC_PROG_CXX
1756
d5680e12ac33 Move fuzzing code to fuzz/ subdirectory, improve Makefile.in
Matt Johnston <matt@ucc.asn.au>
parents: 1725
diff changeset
353 mkdir -pv fuzz
1668
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
354 else
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
355 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
356 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
357 DROPBEAR_FUZZ=0
49cb3cf4bd6f When explicitly passing --disable-fuzz to ./configure fuzz was actually
Alexander Dahl <ada@thorsis.com>
parents: 1667
diff changeset
358 fi
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
359 ],
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
360 [
1558
2f64cb3d3007 - #if not #ifdef for DROPBEAR_FUZZ
Matt Johnston <matt@ucc.asn.au>
parents: 1557
diff changeset
361 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
362 AC_MSG_NOTICE(Disabling fuzzing)
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
363 DROPBEAR_FUZZ=0
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
364 ]
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
365
1347
b28624698130 copy over some fuzzing code from AFL branch
Matt Johnston <matt@ucc.asn.au>
parents: 1280
diff changeset
366 )
1356
3677a510f545 add wrapfd. improve fuzzer in makefile
Matt Johnston <matt@ucc.asn.au>
parents: 1347
diff changeset
367 AC_SUBST(DROPBEAR_FUZZ)
1582
68abf717328d set up CXX for fuzzing build
Matt Johnston <matt@ucc.asn.au>
parents: 1573
diff changeset
368 AC_SUBST(CXX)
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
369
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
370 # Checks for header files.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
371 AC_HEADER_STDC
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
372 AC_HEADER_SYS_WAIT
1550
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
373 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
374 crypt.h \
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
375 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
376 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
377 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
378 sys/random.h])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
379
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
380 # Checks for typedefs, structures, and compiler characteristics.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
381 AC_C_CONST
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
382 AC_TYPE_UID_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
383 AC_TYPE_MODE_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
384 AC_TYPE_PID_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
385 AC_TYPE_SIZE_T
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
386 AC_HEADER_TIME
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
387
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
388 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
389 AC_CHECK_TYPES([struct sockaddr_storage])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
390 AC_CHECK_TYPE([socklen_t], ,[
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
391 AC_MSG_CHECKING([for socklen_t equivalent])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
392 AC_CACHE_VAL([curl_cv_socklen_t_equiv],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
393 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
394 # Systems have either "struct sockaddr *" or
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
395 # "void *" as the second argument to getpeername
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
396 curl_cv_socklen_t_equiv=
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
397 for arg2 in "struct sockaddr" void; do
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
398 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
399 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
400 #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
401 #include <sys/socket.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
402
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
403 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
404 ]],[[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
405 $t len;
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
406 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
407 ]])],[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
408 curl_cv_socklen_t_equiv="$t"
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
409 break
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 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
412 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
413
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
414 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
415 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
416 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
417 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
418 AC_MSG_RESULT($curl_cv_socklen_t_equiv)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
419 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
420 [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
421 [#include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
422 #include <sys/socket.h>])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
423
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
424 # for the fake-rfc2553 stuff - straight from OpenSSH
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
425
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
426 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
427 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
428 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
429 #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
430 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
431 [[ if (sizeof(struct sockaddr_storage)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
432 [ ac_cv_have_struct_sockaddr_storage="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
433 [ ac_cv_have_struct_sockaddr_storage="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
434 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
435 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
436 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
437 AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE)
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
438 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
439
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
440 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
441 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
442 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
443 #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
444 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
445 [[ if (sizeof(struct sockaddr_in6)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
446 [ ac_cv_have_struct_sockaddr_in6="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
447 [ ac_cv_have_struct_sockaddr_in6="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
448 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
449 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
450 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
451 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
452 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
453
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
454 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
455 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
456 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
457 #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
458 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
459 [[ if (sizeof(struct in6_addr)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
460 [ ac_cv_have_struct_in6_addr="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
461 [ ac_cv_have_struct_in6_addr="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
462 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
463 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
464 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
465 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
466 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
467
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
468 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
469 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
470 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
471 #include <sys/socket.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
472 #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
473 ]],
1088
f2a3570b5110 Test struct existance against sizeof() operator
Gaël PORTAY <gael.portay@gmail.com>
parents: 1033
diff changeset
474 [[ if (sizeof(struct addrinfo)) return 0 ]])],
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
475 [ ac_cv_have_struct_addrinfo="yes" ],
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
476 [ ac_cv_have_struct_addrinfo="no" ]
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
477 )
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
478 ])
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
479 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
480 AC_DEFINE(HAVE_STRUCT_ADDRINFO,1,Have struct addrinfo)
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
481 fi
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
482
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
483
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
484 # IRIX has a const char return value for gai_strerror()
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
485 AC_CHECK_FUNCS(gai_strerror,[
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
486 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
487 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
488 #include <sys/types.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
489 #include <sys/socket.h>
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
490 #include <netdb.h>
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 const char *gai_strerror(int);]],[[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
493 char *str;
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
494
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
495 str = gai_strerror(0);]])],[
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
496 AC_DEFINE(HAVE_CONST_GAI_STRERROR_PROTO, 1,
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
497 [Define if gai_strerror() returns const char *])])])
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
498
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
499 # for loginrec.c
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
500
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
501 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
502 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
503 #if HAVE_UTMP_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
504 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
505 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
506 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
507
335
e17f0333c21e Another stab at getting ss_family happy on older glibc
Matt Johnston <matt@ucc.asn.au>
parents: 321
diff changeset
508 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
509 #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
510 #include <sys/socket.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
511 #if HAVE_UTMPX_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
512 #include <utmpx.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
513 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
514 ])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
515
336
2dd116db1956 Can't check for ss_family without #including sys/socket.h
Matt Johnston <matt@ucc.asn.au>
parents: 335
diff changeset
516 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
517 #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
518 #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
519 ])
335
e17f0333c21e Another stab at getting ss_family happy on older glibc
Matt Johnston <matt@ucc.asn.au>
parents: 321
diff changeset
520
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
521 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
522 AC_CHECK_FUNCS(utmpname)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
523 AC_CHECK_FUNCS(endutxent getutxent getutxid getutxline pututxline )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
524 AC_CHECK_FUNCS(setutxent utmpxname)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
525 AC_CHECK_FUNCS(logout updwtmp logwtmp)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
526
1622
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
527 # POSIX monotonic time
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
528 AC_CHECK_FUNCS(clock_gettime)
e11ed628708b - Add adaptive authentication failure delay
Matt Johnston <matt@ucc.asn.au>
parents: 1582
diff changeset
529
928
7cd89d4e0335 Add new monotonic_now() wrapper so that timeouts are unaffected by
Matt Johnston <matt@ucc.asn.au>
parents: 898
diff changeset
530 # 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
531 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
532 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
533
1698
f966834f0f9c Use Linux getrandom() to ensure random device is initialised
Matt Johnston <matt@ucc.asn.au>
parents: 1694
diff changeset
534 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
535
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
536 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
537 [ --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
538 --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
539 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
540 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
541 [
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
542 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
543 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
544 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
545 else
4cf61252dfc3 Make --disable-bundled-libtom work, based on patch from Mike Frysinger
Matt Johnston <matt@ucc.asn.au>
parents: 800
diff changeset
546 BUNDLED_LIBTOM=0
1692
1051e4eea25a Update LibTomMath to 1.2.0 (#84)
Steffen Jaeckel <s@jaeckel.eu>
parents: 1668
diff changeset
547 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
548 [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
549 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
550 [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
551 fi
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
552 ],
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
553 [
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
554 BUNDLED_LIBTOM=0
1692
1051e4eea25a Update LibTomMath to 1.2.0 (#84)
Steffen Jaeckel <s@jaeckel.eu>
parents: 1668
diff changeset
555 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
556 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
557 ]
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
558 )
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
559
587
1151059c5eff Work properly again with bundled libtom*. autoconf is a hassle.
Matt Johnston <matt@ucc.asn.au>
parents: 585
diff changeset
560 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
561 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
562 fi
1151059c5eff Work properly again with bundled libtom*. autoconf is a hassle.
Matt Johnston <matt@ucc.asn.au>
parents: 585
diff changeset
563
898
4f1988cb79ce Fix building with system libtomcrypt/libtommath
Matt Johnston <matt@ucc.asn.au>
parents: 866
diff changeset
564 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
565 AC_SUBST(BUNDLED_LIBTOM)
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
566
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
567 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
568
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
569 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
570 AC_ARG_ENABLE(lastlog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
571 [ --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
572 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
573 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
574 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
575 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
576 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
577 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
578 AC_ARG_ENABLE(utmp,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
579 [ --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
580 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
581 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
582 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
583 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
584 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
585 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
586 AC_ARG_ENABLE(utmpx,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
587 [ --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
588 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
589 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
590 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
591 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
592 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
593 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
594 AC_ARG_ENABLE(wtmp,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
595 [ --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
596 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
597 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
598 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
599 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
600 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
601 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
602 AC_ARG_ENABLE(wtmpx,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
603 [ --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
604 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
605 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
606 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
607 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
608 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
609 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
610 AC_ARG_ENABLE(loginfunc,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
611 [ --disable-loginfunc Disable use of login() etc. [no]],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
612 [ 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
613 AC_MSG_NOTICE([Not using login() etc]) ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
614 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
615 AC_ARG_ENABLE(pututline,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
616 [ --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
617 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
618 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
619 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
620 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
621 ]
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
622 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
623 AC_ARG_ENABLE(pututxline,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
624 [ --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
625 [
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
626 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
627 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
628 fi
18c0b0e450ff Fix configure options using AC_ARG_ENABLE
Stefan Hauser <stefan@shauser.net>
parents: 1280
diff changeset
629 ]
4
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 AC_ARG_WITH(lastlog,
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
632 [ --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
633 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
634 if test "x$withval" = "xno" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
635 AC_DEFINE(DISABLE_LASTLOG)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
636 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
637 conf_lastlog_location=$withval
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
638 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
639 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
640 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
641
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
642 if test -z "$no_loginfunc_check"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
643 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
644 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
645 AC_CHECK_FUNCS(logout updwtmp logwtmp)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
646 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
647
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
648 dnl lastlog, [uw]tmpx? detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
649 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
650 dnl need for command-line parameters
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
651 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
652
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
653 dnl lastlog detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
654 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
655 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
656 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
657 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
658 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
659 #ifdef HAVE_LASTLOG_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
660 # include <lastlog.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_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
663 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
664 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
665 #ifdef HAVE_LOGIN_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
666 # include <login.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
667 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
668 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
669 [[ char *lastlog = LASTLOG_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
670 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
671 [
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
672 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
673 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
674 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
675 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
676 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
677 #ifdef HAVE_LASTLOG_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
678 # include <lastlog.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
679 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
680 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
681 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
682 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
683 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
684 [[ char *lastlog = _PATH_LASTLOG; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
685 [ AC_MSG_RESULT(yes) ],
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 AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
688 system_lastlog_path=no
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 ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
691 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
692
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
693 if test -z "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
694 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
695 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
696 if (test -d "$f" || test -f "$f") ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
697 conf_lastlog_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
698 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
699 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
700 if test -z "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
701 AC_MSG_WARN([** Cannot find lastlog **])
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
702 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
703 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
704 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
705 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
706
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
707 if test -n "$conf_lastlog_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
708 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
709 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
710
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
711 dnl utmp detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
712 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
713 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
714 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
715 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
716 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
717 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
718 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
719 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
720 [[ char *utmp = UTMP_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
721 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
722 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
723 system_utmp_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
724 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
725 if test -z "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
726 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
727 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
728 if test -f $f ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
729 conf_utmp_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
730 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
731 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
732 if test -z "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
733 AC_DEFINE(DISABLE_UTMP)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
734 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
735 fi
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 if test -n "$conf_utmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
738 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
739 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
740
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
741 dnl wtmp detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
742 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
743 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
744 #include <sys/types.h>
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
745 #ifdef HAVE_UTMP_H
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
746 # include <utmp.h>
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
747 #endif
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
748 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
749 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
750 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
751 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
752 [[ char *wtmp = WTMP_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
753 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
754 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
755 system_wtmp_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
756 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
757 if test -z "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
758 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
759 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
760 if test -f $f ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
761 conf_wtmp_location=$f
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
762 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
763 done
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
764 if test -z "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
765 AC_DEFINE(DISABLE_WTMP)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
766 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
767 fi
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 if test -n "$conf_wtmp_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
770 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
771 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
772
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
773
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
774 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
775 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
776 dnl there, though.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
777 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
778 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
779 #include <sys/types.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
780 #include <utmp.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
781 #ifdef HAVE_UTMPX_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
782 #include <utmpx.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
783 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
784 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
785 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
786 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
787 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
788 [[ char *utmpx = UTMPX_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
789 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
790 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
791 system_utmpx_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
792 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
793 if test -z "$conf_utmpx_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
794 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
795 AC_DEFINE(DISABLE_UTMPX)
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 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
798 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
799 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
800
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
801 dnl wtmpx detection
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
802 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
803 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
804 #include <sys/types.h>
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
805 #ifdef HAVE_UTMP_H
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
806 # include <utmp.h>
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
807 #endif
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
808 #ifdef HAVE_UTMPX_H
865
39d872718d4b Try and fix utmp handling
Matt Johnston <matt@ucc.asn.au>
parents: 864
diff changeset
809 # include <utmpx.h>
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
810 #endif
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
811 #ifdef HAVE_PATHS_H
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
812 # include <paths.h>
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
813 #endif
856
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
814 ]],
f56c41030c15 Replace some deprecated macros with other ones, from Daniel Richard G.
Matt Johnston <matt@ucc.asn.au>
parents: 835
diff changeset
815 [[ char *wtmpx = WTMPX_FILE; ]])],
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
816 [ AC_MSG_RESULT(yes) ],
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
817 [ AC_MSG_RESULT(no)
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
818 system_wtmpx_path=no ]
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
819 )
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
820 if test -z "$conf_wtmpx_location"; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
821 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
822 AC_DEFINE(DISABLE_WTMPX)
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 else
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
825 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
826 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
827
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
828 # Checks for library functions.
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
829 AC_PROG_GCC_TRADITIONAL
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
830 AC_FUNC_MEMCMP
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
831 AC_FUNC_SELECT_ARGTYPES
1550
93a3726a36d6 Remove unused tests for headers and functions
Matt Johnston <matt@ucc.asn.au>
parents: 1505
diff changeset
832 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
833 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
834 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
835
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
836 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
837
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
838 # Solaris needs ptmx
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
839 if test -z "$no_ptmx_check" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
840 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
841 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
842 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
843 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
844 else
431
126687f635dc Quote some message in configure
Matt Johnston <matt@ucc.asn.au>
parents: 417
diff changeset
845 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
846 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
847 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
848
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
849 if test -z "$no_ptc_check" ; then
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
850 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
851 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
852 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
853 fi
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
854 else
431
126687f635dc Quote some message in configure
Matt Johnston <matt@ucc.asn.au>
parents: 417
diff changeset
855 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
856 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
857 fi
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
858
67
86725004a0ea fake-rfc stuff
Matt Johnston <matt@ucc.asn.au>
parents: 28
diff changeset
859 AC_EXEEXT
366
59531221b846 Fix up separate-directory building for libtomcrypt
Matt Johnston <matt@ucc.asn.au>
parents: 336
diff changeset
860
998
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
861 if test $BUNDLED_LIBTOM = 1 ; then
1473
67bcd5fa40c6 generate list of libtomcrypt directories automatically
Matt Johnston <matt@ucc.asn.au>
parents: 1469
diff changeset
862 (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
863 LIBTOM_FILES="libtomcrypt/Makefile libtommath/Makefile"
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
864 fi
1473
67bcd5fa40c6 generate list of libtomcrypt directories automatically
Matt Johnston <matt@ucc.asn.au>
parents: 1469
diff changeset
865
4
fe6bca95afa7 Makefile.in contains updated files required
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
866 AC_CONFIG_HEADER(config.h)
998
3a32727986ee Allow configure with libtomcrypt/libtommath directories missing
Elan Ruusamäe <glen@delfi.ee>
parents: 928
diff changeset
867 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
868 AC_OUTPUT
585
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
869
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
870 AC_MSG_NOTICE()
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
871 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
872 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
873 else
1159
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
874 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
875 fi
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
876
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
877
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
878 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
879 AC_MSG_NOTICE()
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
880 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
881 fi
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
882
1186
a4ce76e6fb63 Another attempt at test for crypt()
Matt Johnston <matt@ucc.asn.au>
parents: 1185
diff changeset
883 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
884 AC_MSG_NOTICE()
f567a4152c14 Test for crypt() rather than crypt.h
Matt Johnston <matt@ucc.asn.au>
parents: 1158
diff changeset
885 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
886 fi
d194db6f9453 Use system libtomcrypt/libtommath if available. Doesn't currently
Matt Johnston <matt@ucc.asn.au>
parents: 573
diff changeset
887
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
888 AC_MSG_NOTICE()
1667
986126448688 Update remaining advise to edit options.h
Alexander Dahl <ada@thorsis.com>
parents: 1654
diff changeset
889 AC_MSG_NOTICE([Now edit localoptions.h to choose features.])