1*5e7646d2SAndroid Build Coastguard Workerdnl 2*5e7646d2SAndroid Build Coastguard Workerdnl Networking stuff for CUPS. 3*5e7646d2SAndroid Build Coastguard Workerdnl 4*5e7646d2SAndroid Build Coastguard Workerdnl Copyright 2007-2016 by Apple Inc. 5*5e7646d2SAndroid Build Coastguard Workerdnl Copyright 1997-2005 by Easy Software Products, all rights reserved. 6*5e7646d2SAndroid Build Coastguard Workerdnl 7*5e7646d2SAndroid Build Coastguard Workerdnl Licensed under Apache License v2.0. See the file "LICENSE" for more information. 8*5e7646d2SAndroid Build Coastguard Workerdnl 9*5e7646d2SAndroid Build Coastguard Worker 10*5e7646d2SAndroid Build Coastguard WorkerAC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H),,[ 11*5e7646d2SAndroid Build Coastguard Worker#include <sys/socket.h> 12*5e7646d2SAndroid Build Coastguard Worker#include <netinet/in.h> 13*5e7646d2SAndroid Build Coastguard Worker#include <arpa/inet.h> 14*5e7646d2SAndroid Build Coastguard Worker#include <netinet/in_systm.h> 15*5e7646d2SAndroid Build Coastguard Worker#include <netinet/ip.h>]) 16*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(socket, socket) 17*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(gethostbyaddr, nsl) 18*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(getifaddrs, nsl, AC_DEFINE(HAVE_GETIFADDRS)) 19*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(hstrerror, nsl socket resolv, AC_DEFINE(HAVE_HSTRERROR)) 20*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(rresvport_af, nsl, AC_DEFINE(HAVE_RRESVPORT_AF)) 21*5e7646d2SAndroid Build Coastguard WorkerAC_SEARCH_LIBS(__res_init, resolv bind, AC_DEFINE(HAVE_RES_INIT), 22*5e7646d2SAndroid Build Coastguard Worker AC_SEARCH_LIBS(res_9_init, resolv bind, AC_DEFINE(HAVE_RES_INIT), 23*5e7646d2SAndroid Build Coastguard Worker AC_SEARCH_LIBS(res_init, resolv bind, AC_DEFINE(HAVE_RES_INIT)))) 24*5e7646d2SAndroid Build Coastguard Worker 25*5e7646d2SAndroid Build Coastguard Worker# Tru64 5.1b leaks file descriptors with these functions; disable until 26*5e7646d2SAndroid Build Coastguard Worker# we can come up with a test for this... 27*5e7646d2SAndroid Build Coastguard Workerif test "$host_os_name" != "osf1"; then 28*5e7646d2SAndroid Build Coastguard Worker AC_SEARCH_LIBS(getaddrinfo, nsl, AC_DEFINE(HAVE_GETADDRINFO)) 29*5e7646d2SAndroid Build Coastguard Worker AC_SEARCH_LIBS(getnameinfo, nsl, AC_DEFINE(HAVE_GETNAMEINFO)) 30*5e7646d2SAndroid Build Coastguard Workerfi 31*5e7646d2SAndroid Build Coastguard Worker 32*5e7646d2SAndroid Build Coastguard WorkerAC_CHECK_MEMBER(struct sockaddr.sa_len,,, [#include <sys/socket.h>]) 33*5e7646d2SAndroid Build Coastguard WorkerAC_CHECK_HEADER(sys/sockio.h, AC_DEFINE(HAVE_SYS_SOCKIO_H)) 34*5e7646d2SAndroid Build Coastguard Worker 35*5e7646d2SAndroid Build Coastguard WorkerCUPS_DEFAULT_DOMAINSOCKET="" 36*5e7646d2SAndroid Build Coastguard Worker 37*5e7646d2SAndroid Build Coastguard Workerdnl Domain socket support... 38*5e7646d2SAndroid Build Coastguard WorkerAC_ARG_WITH(domainsocket, [ --with-domainsocket set unix domain socket name], 39*5e7646d2SAndroid Build Coastguard Worker default_domainsocket="$withval", 40*5e7646d2SAndroid Build Coastguard Worker default_domainsocket="") 41*5e7646d2SAndroid Build Coastguard Worker 42*5e7646d2SAndroid Build Coastguard Workerif test x$enable_domainsocket != xno -a x$default_domainsocket != xno; then 43*5e7646d2SAndroid Build Coastguard Worker if test "x$default_domainsocket" = x; then 44*5e7646d2SAndroid Build Coastguard Worker case "$host_os_name" in 45*5e7646d2SAndroid Build Coastguard Worker darwin*) 46*5e7646d2SAndroid Build Coastguard Worker # Darwin and macOS do their own thing... 47*5e7646d2SAndroid Build Coastguard Worker CUPS_DEFAULT_DOMAINSOCKET="$localstatedir/run/cupsd" 48*5e7646d2SAndroid Build Coastguard Worker ;; 49*5e7646d2SAndroid Build Coastguard Worker *) 50*5e7646d2SAndroid Build Coastguard Worker # All others use FHS standard... 51*5e7646d2SAndroid Build Coastguard Worker CUPS_DEFAULT_DOMAINSOCKET="$CUPS_STATEDIR/cups.sock" 52*5e7646d2SAndroid Build Coastguard Worker ;; 53*5e7646d2SAndroid Build Coastguard Worker esac 54*5e7646d2SAndroid Build Coastguard Worker else 55*5e7646d2SAndroid Build Coastguard Worker CUPS_DEFAULT_DOMAINSOCKET="$default_domainsocket" 56*5e7646d2SAndroid Build Coastguard Worker fi 57*5e7646d2SAndroid Build Coastguard Worker 58*5e7646d2SAndroid Build Coastguard Worker CUPS_LISTEN_DOMAINSOCKET="Listen $CUPS_DEFAULT_DOMAINSOCKET" 59*5e7646d2SAndroid Build Coastguard Worker 60*5e7646d2SAndroid Build Coastguard Worker AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DOMAINSOCKET, "$CUPS_DEFAULT_DOMAINSOCKET") 61*5e7646d2SAndroid Build Coastguard Workerelse 62*5e7646d2SAndroid Build Coastguard Worker CUPS_LISTEN_DOMAINSOCKET="" 63*5e7646d2SAndroid Build Coastguard Workerfi 64*5e7646d2SAndroid Build Coastguard Worker 65*5e7646d2SAndroid Build Coastguard WorkerAC_SUBST(CUPS_DEFAULT_DOMAINSOCKET) 66*5e7646d2SAndroid Build Coastguard WorkerAC_SUBST(CUPS_LISTEN_DOMAINSOCKET) 67