]>
Commit | Line | Data |
---|---|---|
ef416fc2 | 1 | dnl |
724e1819 | 2 | dnl TLS stuff for CUPS. |
ef416fc2 | 3 | dnl |
fa26ab95 | 4 | dnl Copyright 2007-2019 by Apple Inc. |
724e1819 | 5 | dnl Copyright 1997-2007 by Easy Software Products, all rights reserved. |
ef416fc2 | 6 | dnl |
e3101897 | 7 | dnl Licensed under Apache License v2.0. See the file "LICENSE" for more information. |
ef416fc2 | 8 | dnl |
9 | ||
bf3816c7 | 10 | AC_ARG_ENABLE(ssl, [ --disable-ssl disable SSL/TLS support]) |
ef416fc2 | 11 | AC_ARG_ENABLE(cdsassl, [ --enable-cdsassl use CDSA for SSL/TLS support, default=first]) |
12 | AC_ARG_ENABLE(gnutls, [ --enable-gnutls use GNU TLS for SSL/TLS support, default=second]) | |
ef416fc2 | 13 | |
14 | SSLFLAGS="" | |
15 | SSLLIBS="" | |
f8b3a85b | 16 | have_ssl=0 |
56138cae | 17 | CUPS_SERVERKEYCHAIN="" |
ef416fc2 | 18 | |
19 | if test x$enable_ssl != xno; then | |
20 | dnl Look for CDSA... | |
0268488e | 21 | if test $have_ssl = 0 -a "x$enable_cdsassl" != "xno"; then |
105922ec | 22 | if test $host_os_name = darwin; then |
b86bc4cf | 23 | AC_CHECK_HEADER(Security/SecureTransport.h, [ |
f8b3a85b | 24 | have_ssl=1 |
b86bc4cf | 25 | AC_DEFINE(HAVE_SSL) |
26 | AC_DEFINE(HAVE_CDSASSL) | |
56138cae | 27 | CUPS_SERVERKEYCHAIN="/Library/Keychains/System.keychain" |
b86bc4cf | 28 | |
29 | dnl Check for the various security headers... | |
7cf5915e MS |
30 | AC_CHECK_HEADER(Security/SecCertificate.h, |
31 | AC_DEFINE(HAVE_SECCERTIFICATE_H)) | |
0268488e MS |
32 | AC_CHECK_HEADER(Security/SecItem.h, |
33 | AC_DEFINE(HAVE_SECITEM_H)) | |
b86bc4cf | 34 | AC_CHECK_HEADER(Security/SecPolicy.h, |
fa26ab95 | 35 | AC_DEFINE(HAVE_SECPOLICY_H))]) |
ef416fc2 | 36 | fi |
37 | fi | |
38 | ||
39 | dnl Then look for GNU TLS... | |
0268488e | 40 | if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKGCONFIG" != x; then |
cffefbac | 41 | AC_PATH_TOOL(LIBGNUTLSCONFIG,libgnutls-config) |
f11a948a | 42 | if $PKGCONFIG --exists gnutls; then |
eac3a0a0 MS |
43 | have_ssl=1 |
44 | SSLLIBS=`$PKGCONFIG --libs gnutls` | |
45 | SSLFLAGS=`$PKGCONFIG --cflags gnutls` | |
46 | AC_DEFINE(HAVE_SSL) | |
47 | AC_DEFINE(HAVE_GNUTLS) | |
c7017ecc | 48 | elif test "x$LIBGNUTLSCONFIG" != x; then |
eac3a0a0 MS |
49 | have_ssl=1 |
50 | SSLLIBS=`$LIBGNUTLSCONFIG --libs` | |
51 | SSLFLAGS=`$LIBGNUTLSCONFIG --cflags` | |
52 | AC_DEFINE(HAVE_SSL) | |
53 | AC_DEFINE(HAVE_GNUTLS) | |
6d2f911b MS |
54 | fi |
55 | ||
56 | if test $have_ssl = 1; then | |
56138cae | 57 | CUPS_SERVERKEYCHAIN="ssl" |
9483577f MS |
58 | |
59 | SAVELIBS="$LIBS" | |
60 | LIBS="$LIBS $SSLLIBS" | |
61 | AC_CHECK_FUNC(gnutls_transport_set_pull_timeout_function, AC_DEFINE(HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION)) | |
19ba6878 | 62 | AC_CHECK_FUNC(gnutls_priority_set_direct, AC_DEFINE(HAVE_GNUTLS_PRIORITY_SET_DIRECT)) |
9483577f | 63 | LIBS="$SAVELIBS" |
f301802f | 64 | fi |
ef416fc2 | 65 | fi |
ef416fc2 | 66 | fi |
67 | ||
eac3a0a0 | 68 | IPPALIASES="http" |
f8b3a85b | 69 | if test $have_ssl = 1; then |
f301802f | 70 | AC_MSG_RESULT([ Using SSLLIBS="$SSLLIBS"]) |
71 | AC_MSG_RESULT([ Using SSLFLAGS="$SSLFLAGS"]) | |
eac3a0a0 | 72 | IPPALIASES="http https ipps" |
724e1819 | 73 | elif test x$enable_cdsa = xyes -o x$enable_gnutls = xyes; then |
0268488e | 74 | AC_MSG_ERROR([Unable to enable SSL support.]) |
f301802f | 75 | fi |
76 | ||
56138cae | 77 | AC_SUBST(CUPS_SERVERKEYCHAIN) |
eac3a0a0 | 78 | AC_SUBST(IPPALIASES) |
ef416fc2 | 79 | AC_SUBST(SSLFLAGS) |
80 | AC_SUBST(SSLLIBS) | |
81 | ||
82 | EXPORT_SSLLIBS="$SSLLIBS" | |
83 | AC_SUBST(EXPORT_SSLLIBS) |