The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=ee3960cba1068e12fb032a68c46d74841d9edab3
commit ee3960cba1068e12fb032a68c46d74841d9edab3 Author: Cy Schubert <c...@freebsd.org> AuthorDate: 2025-06-05 04:18:38 +0000 Commit: Cy Schubert <c...@freebsd.org> CommitDate: 2025-06-16 02:49:35 +0000 krb5: Add build plumbing Add tne necessary Makefiles and header files to facilitate building MIT KRB5 as part of buildworld. Nothing will build until the WITH_MITKRB5/MK_MITKRB5 option has been plumbed in Makefile.inc1. Before any changes to Makefile.inc1 are made to enable MIT KRB5, additional commits to other affected software will need to be committed. krb5/Makefile was inspired by kerberos5/Makefile. The Makefiles in krb5/util and krb5/lib were inspired by those in lib/libc and in lib/ncurses. Differential revision: https://reviews.freebsd.org/D50695 Sponsored by: The FreeBSD Foundation --- krb5/Makefile | 7 + krb5/Makefile.et | 22 + krb5/Makefile.inc | 45 + krb5/README | 13 + krb5/include/Makefile | 73 ++ krb5/include/Makefile.inc | 10 + krb5/include/autoconf.h | 768 ++++++++++++++ krb5/include/gssapi/Makefile | 30 + krb5/include/gssrpc/Makefile | 33 + krb5/include/gssrpc/types.h | 130 +++ krb5/include/krb5/Makefile | 29 + krb5/include/krb5_private/Makefile | 43 + krb5/include/osconf.h | 141 +++ krb5/lib/Makefile | 14 + krb5/lib/Makefile.inc | 16 + krb5/lib/apputils/Makefile | 31 + krb5/lib/crypto/Makefile | 51 + krb5/lib/crypto/builtin/Makefile.inc | 25 + krb5/lib/crypto/builtin/aes/Makefile.inc | 14 + krb5/lib/crypto/builtin/camellia/Makefile.inc | 12 + krb5/lib/crypto/builtin/des/Makefile.inc | 22 + krb5/lib/crypto/builtin/enc_provider/Makefile.inc | 17 + krb5/lib/crypto/builtin/hash_provider/Makefile.inc | 15 + krb5/lib/crypto/builtin/md4/Makefile.inc | 12 + krb5/lib/crypto/builtin/md5/Makefile.inc | 12 + krb5/lib/crypto/builtin/sha1/Makefile.inc | 12 + krb5/lib/crypto/builtin/sha2/Makefile.inc | 13 + krb5/lib/crypto/krb/Makefile.inc | 65 ++ krb5/lib/crypto/openssl/Makefile.inc | 21 + krb5/lib/crypto/openssl/des/Makefile.inc | 12 + krb5/lib/crypto/openssl/enc_provider/Makefile.inc | 25 + krb5/lib/crypto/openssl/hash_provider/Makefile.inc | 12 + krb5/lib/gssapi/Makefile | 48 + krb5/lib/gssapi/errmap.h | 274 +++++ krb5/lib/gssapi/error_map.h | 112 ++ krb5/lib/gssapi/generic/Makefile.et | 30 + krb5/lib/gssapi/generic/Makefile.inc | 55 + krb5/lib/gssapi/krb5/Makefile.et | 30 + krb5/lib/gssapi/krb5/Makefile.inc | 72 ++ krb5/lib/gssapi/mechglue/Makefile.inc | 74 ++ krb5/lib/gssapi/spnego/Makefile.inc | 14 + krb5/lib/kadm5clnt/Makefile | 97 ++ krb5/lib/kadm5clnt/clnt/Makefile.inc | 17 + krb5/lib/kadm5srv/Makefile | 107 ++ krb5/lib/kadm5srv/srv/Makefile.inc | 25 + krb5/lib/kadmin_common/Makefile | 47 + krb5/lib/kdb/Makefile | 66 ++ krb5/lib/kprop_util/Makefile | 28 + krb5/lib/krad/Makefile | 39 + krb5/lib/krb5/Makefile | 75 ++ krb5/lib/krb5/asn.1/Makefile.inc | 14 + krb5/lib/krb5/ccache/Makefile.inc | 30 + krb5/lib/krb5/docs/Makefile.inc | 1069 ++++++++++++++++++++ krb5/lib/krb5/error_tables/Makefile.inc | 146 +++ krb5/lib/krb5/keytab/Makefile.inc | 20 + krb5/lib/krb5/krb/Makefile.inc | 123 +++ krb5/lib/krb5/os/Makefile.inc | 56 + krb5/lib/krb5/rcache/Makefile.inc | 17 + krb5/lib/krb5/unicode/Makefile.inc | 14 + krb5/lib/rpc/Makefile | 85 ++ krb5/libexec/Makefile | 16 + krb5/libexec/Makefile.inc | 12 + krb5/libexec/kadmind/Makefile | 49 + krb5/libexec/kdc/Makefile | 84 ++ krb5/libexec/kprop/Makefile | 33 + krb5/libexec/kpropd/Makefile | 33 + krb5/libexec/kproplog/Makefile | 31 + krb5/plugins/Makefile | 19 + krb5/plugins/Makefile.inc | 16 + krb5/plugins/audit/Makefile | 28 + krb5/plugins/k5tls/Makefile | 33 + krb5/plugins/kdb/Makefile | 15 + krb5/plugins/kdb/Makefile.inc | 10 + krb5/plugins/kdb/db2/Makefile | 65 ++ krb5/plugins/kdb/db2/libdb2/Makefile.inc | 15 + krb5/plugins/kdb/db2/libdb2/btree/Makefile.inc | 24 + krb5/plugins/kdb/db2/libdb2/db/Makefile.inc | 12 + krb5/plugins/kdb/db2/libdb2/hash/Makefile.inc | 19 + krb5/plugins/kdb/db2/libdb2/include/Makefile.inc | 21 + krb5/plugins/kdb/db2/libdb2/mpool/Makefile.inc | 12 + krb5/plugins/kdb/db2/libdb2/recno/Makefile.inc | 19 + krb5/plugins/preauth/Makefile | 14 + krb5/plugins/preauth/Makefile.inc | 13 + krb5/plugins/preauth/otp/Makefile | 30 + krb5/plugins/preauth/pkinit/Makefile | 38 + krb5/plugins/preauth/spake/Makefile | 42 + krb5/plugins/preauth/test/Makefile | 33 + krb5/usr.bin/Makefile | 14 + krb5/usr.bin/Makefile.inc | 12 + krb5/usr.bin/gss-client/Makefile | 30 + krb5/usr.bin/kadmin/Makefile | 43 + krb5/usr.bin/kdestroy/Makefile | 35 + krb5/usr.bin/kinit/Makefile | 37 + krb5/usr.bin/klist/Makefile | 35 + krb5/usr.bin/kpasswd/Makefile | 37 + krb5/usr.bin/ksu/Makefile | 44 + krb5/usr.bin/kswitch/Makefile | 35 + krb5/usr.bin/ktutil/Makefile | 43 + krb5/usr.bin/kvno/Makefile | 35 + krb5/usr.bin/sclient/Makefile | 35 + krb5/usr.bin/sim_client/Makefile | 25 + krb5/usr.sbin/Makefile | 16 + krb5/usr.sbin/Makefile.inc | 12 + krb5/usr.sbin/gss-server/Makefile | 30 + krb5/usr.sbin/kadmin.local/Makefile | 31 + krb5/usr.sbin/kdb5_util/Makefile | 75 ++ krb5/usr.sbin/sim_server/Makefile | 26 + krb5/usr.sbin/sserver/Makefile | 37 + krb5/util/Makefile | 17 + krb5/util/Makefile.inc | 13 + krb5/util/build-tools/Makefile | 32 + krb5/util/build-tools/krb5-config.sh | 263 +++++ krb5/util/compile_et/Makefile | 38 + krb5/util/et/Makefile | 47 + krb5/util/profile/Makefile | 78 ++ krb5/util/ss/Makefile | 89 ++ krb5/util/support/Makefile | 48 + krb5/util/verto/Makefile | 49 + share/mk/bsd.libnames.mk | 13 + share/mk/src.libnames.mk | 81 +- 120 files changed, 6717 insertions(+), 3 deletions(-) diff --git a/krb5/Makefile b/krb5/Makefile new file mode 100644 index 000000000000..c49601990c4a --- /dev/null +++ b/krb5/Makefile @@ -0,0 +1,7 @@ +SUBDIR= util .WAIT \ + include .WAIT \ + lib .WAIT\ + plugins libexec usr.bin usr.sbin +# SUBDIR_PARALLEL= + +.include <bsd.subdir.mk> diff --git a/krb5/Makefile.et b/krb5/Makefile.et new file mode 100644 index 000000000000..b89e17857675 --- /dev/null +++ b/krb5/Makefile.et @@ -0,0 +1,22 @@ +# +# SPDX-License-Idendifier: BSD-2-Clause +# +# Copyright (c) 2025 FreeBSD Foundation +# +# This sofware was developed by Cy Schubert <c...@freebsd.org> +# under sponsorship from the FreeBSD Foundation. +# + +.et.h: + rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.c et-h-${.PREFIX}.h + cp ${.ALLSRC} et-h-${.PREFIX}.et + ${COMPILE_ET} et-h-${.PREFIX}.et + mv et-h-${.PREFIX}.h ${.PREFIX}.h + rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.h + +.et.c: + rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c et-c-${.PREFIX}.h + cp ${.ALLSRC} et-c-${.PREFIX}.et + ${COMPILE_ET} et-c-${.PREFIX}.et + mv et-c-${.PREFIX}.c ${.PREFIX}.c + rm -f et-h-${.PREFIX}.et et-h-${.PREFIX}.c diff --git a/krb5/Makefile.inc b/krb5/Makefile.inc new file mode 100644 index 000000000000..52910c3ebe4a --- /dev/null +++ b/krb5/Makefile.inc @@ -0,0 +1,45 @@ +# +# SPDX-License-Idendifier: BSD-2-Clause +# +# Copyright (c) 2025 FreeBSD Foundation +# +# This sofware was developed by Cy Schubert <c...@freebsd.org> +# under sponsorship from the FreeBSD Foundation. +# + +.include <src.opts.mk> + +# MIT KRB5 uses KRB5_DIR. Heimdal uses KRB5DIR. +KRB5_SRCTOP= ${SRCTOP}/krb5 +KRB5_DIR= ${SRCTOP}/crypto/krb5/src +KRB5_ETDIR?= ${DESTDIR}/usr/share/et +KRB5_SRCLIBDIR= ${KRB5_DIR}/lib + +KRB5_OBJTOP= ${OBJTOP}/krb5 +KRB5_OBJHDR= ${OBJTOP}/include +COMPILE_ET= compile_et -d ${KRB5_DIR}/util/et --textdomain mit-krb5 +MAKE_COMMANDS= ${KRB5_OBJTOP}/util/ss/mk_cmds + +# There are no WARNS levels for this. +CFLAGS+= -Wno-deprecated-non-prototype \ + -Wno-macro-redefined \ + -Wno-unused-parameter + +WARNS?= 1 + +KRB5RCTMPDIR= /var/tmp +KRB5PREFIX= /usr +KRB5_EXEC_PREFIX= /usr +KRB5_BINDIR= /usr/bin +KRB5_LIBDIR= /usr/lib +KRB5_SBINDIR= /usr/sbin +KRB5_MODULEDIR= /usr/lib/krb5/plugins +KRB5_GSSMODULEDIR= /usr/lib/gss +KRB5_LOCALEDIR= /usr/share/locale +KRB5_DOCSDIR= ${SHAREDIR}/doc/krb5 +KRB5_HTMLDOCSDIR= ${KRB5_DOCSDIR}/html +KRB5_LOCALSTATEDIR= /var +KRB5_RUNSTATEDIR= /var/run +KRB5_SYSCONFDIR= /etc +KRB5_DYNOBJEXT= .so +KRB5_SYSCONFCONF= /etc/krb5.conf diff --git a/krb5/README b/krb5/README new file mode 100644 index 000000000000..95a4beb2c98f --- /dev/null +++ b/krb5/README @@ -0,0 +1,13 @@ +This subtree is world-exportable, as it does not contain any +cryptographic code. + +At the time of writing, it did not even contain source code, only +Makefiles and headers. + +Please maintain this "exportable" status quo. + +Thanks! + +Cy Schubert +c...@freebsd.org +2023-08-09 diff --git a/krb5/include/Makefile b/krb5/include/Makefile new file mode 100644 index 000000000000..ee086e1ea07d --- /dev/null +++ b/krb5/include/Makefile @@ -0,0 +1,73 @@ +# +# SPDX-License-Idendifier: BSD-2-Clause +# +# Copyright (c) 2025 FreeBSD Foundation +# +# This sofware was developed by Cy Schubert <c...@freebsd.org> +# under sponsorship from the FreeBSD Foundation. +# + +PACKAGE= krb5 + +.include <src.opts.mk> + +.include "../Makefile.inc" + +SUBDIR= krb5_private krb5 gssrpc gssapi + +SUBDIR_PARALLEL= + +.include <bsd.subdir.mk> + +INCSGROUPS= INCS COM_ERR VERTO GSSAPI_KRB5 + +INCSDIR= ${INCLUDEDIR} + +.PATH: ${KRB5_DIR}/include + +INCS= kdb.h \ + krad.h \ + krb5.h + +GSSAPI_KRB5DIR= ${INCLUDEDIR}/gssapi_krb5/gssapi +GSSAPI_KRB5= gssapi.h + +CLEANFILES= osconf.new + +# XXX The output of this needs to be verified against the osconf.h I created +# It is only used to verify osconf.h has not changed +osconf.h: + cat ./osconf.hin | sed -e "s\"@KRB5RCTMPDIR\"${KRB5RCTMPDIR}\"" -e "s\"@PREFIX\"${KRB5PREFIX}\"" -e "s\"@EXEC_PREFIX\"${KRB5_EXEC_PREFIX}\"" -e "s\"@BINDIR\"${KRB5_BINDIR}\"" -e "s\"@LIBDIR\"${KRB5_LIBDIR}\"" -e "s\"@SBINDIR\"${KRB5_SBINDIR}\"" -e "s\"@MODULEDIR\"${KRB5_MODULEDIR}\"" -e "s\"@GSSMODULEDIR\"${KRB5_GSSMODULEDIR}\"" -e "s\"@LOCALSTATEDIR\"${KRB5_LOCALSTATEDIR}\"" -e "s\"@RUNSTATEDIR\"${KRB5_RUNSTATEDIR}\"" -e "s\"@SYSCONFDIR\"${KRB5_SYSCONFDIR}\"" -e "s\"@DYNOBJEXT\"${KRB5_DYNOBJEXT}\"" -e "s\"@SYSCONFCONF\":${KRB5_SYSCONFCONF}\"" > osconf.new + sh ${MOVEIFCHANGED} osconf.new osconf.h + +rebuild-error-tables: ${K5_ET_HEADERS} + +force: + +stage_includes: copies +installincludes: copies +SDESTDIR?= ${SYSROOT:U${DESTDIR}} + +.PHONY: force rebuild-error-tables osconf.h + +.PATH: ${KRB5_DIR}/util/et +COM_ERRDIR= ${INCLUDEDIR} +COM_ERR= com_err.h + +.PATH: ${KRB5_DIR}/util/verto +VERTODIR= ${INCLUDEDIR} +VERTO= verto-module.h \ + verto.h + +.PATH: ${KRB5_DIR}/include/krb5 + +copies: + cd ${KRB5_DIR}/include; \ + ${INSTALL} -C ${TAG_ARGS:D${TAG_ARGS},dev} -o ${BINOWN} -g ${BINGRP} -m444 ${INCS} ${SDESTDIR}${INCLUDEDIR} + cd ${KRB5_DIR}/util/et; \ + ${INSTALL} -C ${TAG_ARGS:D${TAG_ARGS},dev} -o ${BINOWN} -g ${BINGRP} -m444 ${COM_ERR} ${SDESTDIR}${INCLUDEDIR} + cd ${KRB5_DIR}/util/verto; \ + ${INSTALL} -C ${TAG_ARGS:D${TAG_ARGS},dev} -o ${BINOWN} -g ${BINGRP} -m444 ${VERTO} ${SDESTDIR}${INCLUDEDIR} + + +.include <bsd.prog.mk> diff --git a/krb5/include/Makefile.inc b/krb5/include/Makefile.inc new file mode 100644 index 000000000000..56c36b7539f7 --- /dev/null +++ b/krb5/include/Makefile.inc @@ -0,0 +1,10 @@ +# +# SPDX-License-Idendifier: BSD-2-Clause +# +# Copyright (c) 2025 FreeBSD Foundation +# +# This sofware was developed by Cy Schubert <c...@freebsd.org> +# under sponsorship from the FreeBSD Foundation. +# + +.include "../Makefile.inc" diff --git a/krb5/include/autoconf.h b/krb5/include/autoconf.h new file mode 100644 index 000000000000..24039611c7e7 --- /dev/null +++ b/krb5/include/autoconf.h @@ -0,0 +1,768 @@ +/* include/autoconf.h. Generated from autoconf.h.in by configure. */ +/* include/autoconf.h.in. Generated from configure.ac by autoheader. */ + + +#ifndef KRB5_AUTOCONF_H +#define KRB5_AUTOCONF_H + +#include <sys/types.h> +#include <machine/param.h> + + +/* Define if AES-NI support is enabled */ +/* #undef AESNI */ + +/* Define if socket can't be bound to 0.0.0.0 */ +/* #undef BROKEN_STREAMS_SOCKETS */ + +/* Define if va_list objects can be simply copied by assignment. */ +/* #undef CAN_COPY_VA_LIST */ + +/* Define to reduce code size even if it means more cpu usage */ +/* #undef CONFIG_SMALL */ + +/* Define if __attribute__((constructor)) works */ +#define CONSTRUCTOR_ATTR_WORKS 1 + +/* Define to use OpenSSL crypto library */ +#define CRYPTO_OPENSSL 1 + +/* Define to default ccache name */ +#define DEFCCNAME "FILE:/tmp/krb5cc_%{uid}" + +/* Define to default client keytab name */ +#define DEFCKTNAME "FILE:/var/krb5/user/%{euid}/client.keytab" + +/* Define to default keytab name */ +#define DEFKTNAME "FILE:/etc/krb5.keytab" + +/* Define if library initialization should be delayed until first use */ +#define DELAY_INITIALIZER 1 + +/* Define if __attribute__((destructor)) works */ +#define DESTRUCTOR_ATTR_WORKS 1 + +/* Define to disable PKINIT plugin support */ +/* #undef DISABLE_PKINIT */ + +/* Define if LDAP KDB support within the Kerberos library (mainly ASN.1 code) + should be enabled. */ +/* #undef ENABLE_LDAP */ + +/* Define if translation functions should be used. */ +/* #undef ENABLE_NLS */ + +/* Define if thread support enabled */ +#define ENABLE_THREADS 1 + +/* Define as return type of endrpcent */ +#define ENDRPCENT_TYPE void + +/* Define to the type of elements in the array set by `getgroups'. Usually + this is either `int' or `gid_t'. */ +#define GETGROUPS_T gid_t + +/* Define if gethostbyname_r returns int rather than struct hostent * */ +#define GETHOSTBYNAME_R_RETURNS_INT 1 + +/* Type of getpeername second argument. */ +#define GETPEERNAME_ARG3_TYPE GETSOCKNAME_ARG3_TYPE + +/* Define if getpwnam_r exists but takes only 4 arguments (e.g., POSIX draft 6 + implementations like some Solaris releases). */ +/* #undef GETPWNAM_R_4_ARGS */ + +/* Define if getpwnam_r returns an int */ +#define GETPWNAM_R_RETURNS_INT 1 + +/* Define if getpwuid_r exists but takes only 4 arguments (e.g., POSIX draft 6 + implementations like some Solaris releases). */ +/* #undef GETPWUID_R_4_ARGS */ + +/* Define if getservbyname_r returns int rather than struct servent * */ +#define GETSERVBYNAME_R_RETURNS_INT 1 + +/* Type of pointer target for argument 3 to getsockname */ +#define GETSOCKNAME_ARG3_TYPE socklen_t + +/* Define if gmtime_r returns int instead of struct tm pointer, as on old + HP-UX systems. */ +/* #undef GMTIME_R_RETURNS_INT */ + +/* Define if va_copy macro or function is available. */ +#define HAS_VA_COPY 1 + +/* Define to 1 if you have the `access' function. */ +#define HAVE_ACCESS 1 + +/* Define to 1 if you have the <alloca.h> header file. */ +/* #undef HAVE_ALLOCA_H */ + +/* Define to 1 if you have the <arpa/inet.h> header file. */ +#define HAVE_ARPA_INET_H 1 + +/* Define to 1 if you have the `bswap16' function. */ +/* #undef HAVE_BSWAP16 */ + +/* Define to 1 if you have the `bswap64' function. */ +/* #undef HAVE_BSWAP64 */ + +/* Define to 1 if bswap_16 is available via byteswap.h */ +/* #undef HAVE_BSWAP_16 */ + +/* Define to 1 if bswap_64 is available via byteswap.h */ +/* #undef HAVE_BSWAP_64 */ + +/* Define if bt_rseq is available, for recursive btree traversal. */ +#define HAVE_BT_RSEQ 1 + +/* Define to 1 if you have the <byteswap.h> header file. */ +/* #undef HAVE_BYTESWAP_H */ + +/* Define to 1 if you have the `chmod' function. */ +#define HAVE_CHMOD 1 + +/* Define if cmocka library is available. */ +/* #undef HAVE_CMOCKA */ + +/* Define to 1 if you have the `compile' function. */ +/* #undef HAVE_COMPILE */ + +/* Define if com_err has compatible gettext support */ +#define HAVE_COM_ERR_INTL 1 + +/* Define to 1 if you have the <cpuid.h> header file. */ +/* #undef HAVE_CPUID_H */ + +/* Define to 1 if you have the `daemon' function. */ +#define HAVE_DAEMON 1 + +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you + don't. */ +#define HAVE_DECL_STRERROR_R 1 + +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the <dlfcn.h> header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the `dn_skipname' function. */ +#define HAVE_DN_SKIPNAME 1 + +/* Define to 1 if you have the <endian.h> header file. */ +#define HAVE_ENDIAN_H 1 + +/* Define to 1 if you have the <errno.h> header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if you have the `EVP_PKEY_get_bn_param' function. */ +#define HAVE_EVP_PKEY_GET_BN_PARAM 1 + +/* Define to 1 if you have the `explicit_bzero' function. */ +#define HAVE_EXPLICIT_BZERO 1 + +/* Define to 1 if you have the `explicit_memset' function. */ +/* #undef HAVE_EXPLICIT_MEMSET */ + +/* Define to 1 if you have the `fchmod' function. */ +#define HAVE_FCHMOD 1 + +/* Define to 1 if you have the <fcntl.h> header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fnmatch' function. */ +#define HAVE_FNMATCH 1 + +/* Define to 1 if you have the <fnmatch.h> header file. */ +#define HAVE_FNMATCH_H 1 + +/* Define if you have the getaddrinfo function */ +#define HAVE_GETADDRINFO 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getenv' function. */ +#define HAVE_GETENV 1 + +/* Define to 1 if you have the `geteuid' function. */ +#define HAVE_GETEUID 1 + +/* Define if gethostbyname_r exists and its return type is known */ +#define HAVE_GETHOSTBYNAME_R 1 + +/* Define to 1 if you have the `getnameinfo' function. */ +#define HAVE_GETNAMEINFO 1 + +/* Define if system getopt should be used. */ +#define HAVE_GETOPT 1 + +/* Define if system getopt_long should be used. */ +#define HAVE_GETOPT_LONG 1 + +/* Define if getpwnam_r is available and useful. */ +#define HAVE_GETPWNAM_R 1 + +/* Define if getpwuid_r is available and useful. */ +#define HAVE_GETPWUID_R 1 + +/* Define to 1 if you have the `getresgid' function. */ +#define HAVE_GETRESGID 1 + +/* Define to 1 if you have the `getresuid' function. */ +#define HAVE_GETRESUID 1 + +/* Define if getservbyname_r exists and its return type is known */ +#define HAVE_GETSERVBYNAME_R 1 + +/* Have the gettimeofday function */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the `getusershell' function. */ +#define HAVE_GETUSERSHELL 1 + +/* Define to 1 if you have the `gmtime_r' function. */ +#define HAVE_GMTIME_R 1 + +/* Define to 1 if you have the <ifaddrs.h> header file. */ +#define HAVE_IFADDRS_H 1 + +/* Define to 1 if you have the `inet_ntop' function. */ +#define HAVE_INET_NTOP 1 + +/* Define to 1 if you have the `inet_pton' function. */ +#define HAVE_INET_PTON 1 + +/* Define to 1 if the system has the type `int16_t'. */ +#define HAVE_INT16_T 1 + +/* Define to 1 if the system has the type `int32_t'. */ +#define HAVE_INT32_T 1 + +/* Define to 1 if the system has the type `int8_t'. */ +#define HAVE_INT8_T 1 + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the <keyutils.h> header file. */ +/* #undef HAVE_KEYUTILS_H */ + +/* Define to 1 if you have the <lber.h> header file. */ +/* #undef HAVE_LBER_H */ + +/* Define to 1 if you have the <ldap.h> header file. */ +/* #undef HAVE_LDAP_H */ + +/* Define to 1 if you have the `crypto' library (-lcrypto). */ +#define HAVE_LIBCRYPTO 1 + +/* Define if building with libedit. */ +#define HAVE_LIBEDIT 1 + +/* Define to 1 if you have the `nsl' library (-lnsl). */ +/* #undef HAVE_LIBNSL */ + +/* Define to 1 if you have the `resolv' library (-lresolv). */ +/* #undef HAVE_LIBRESOLV */ + +/* Define to 1 if you have the `socket' library (-lsocket). */ +/* #undef HAVE_LIBSOCKET */ + +/* Define if the util library is available */ +#define HAVE_LIBUTIL 1 + +/* Define to 1 if you have the <limits.h> header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the `localtime_r' function. */ +#define HAVE_LOCALTIME_R 1 + +/* Define to 1 if you have the <machine/byte_order.h> header file. */ +/* #undef HAVE_MACHINE_BYTE_ORDER_H */ + +/* Define to 1 if you have the <machine/endian.h> header file. */ +#define HAVE_MACHINE_ENDIAN_H 1 + +/* Define to 1 if you have the <memory.h> header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mkstemp' function. */ +#define HAVE_MKSTEMP 1 + +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the <netdb.h> header file. */ +#define HAVE_NETDB_H 1 + +/* Define if netdb.h declares h_errno */ +#define HAVE_NETDB_H_H_ERRNO 1 + +/* Define to 1 if you have the <netinet/in.h> header file. */ +#define HAVE_NETINET_IN_H 1 + +/* Define to 1 if you have the `ns_initparse' function. */ +#define HAVE_NS_INITPARSE 1 + +/* Define to 1 if you have the `ns_name_uncompress' function. */ +#define HAVE_NS_NAME_UNCOMPRESS 1 + +/* Define to 1 if you have the <paths.h> header file. */ +#define HAVE_PATHS_H 1 + +/* Define if persistent keyrings are supported */ +/* #undef HAVE_PERSISTENT_KEYRING */ + +/* Define to 1 if you have the <poll.h> header file. */ +#define HAVE_POLL_H 1 + +/* Define if #pragma weak references work */ +#define HAVE_PRAGMA_WEAK_REF 1 + +/* Define if you have POSIX threads libraries and header files. */ +#define HAVE_PTHREAD 1 + +/* Define to 1 if you have the `pthread_once' function. */ +#define HAVE_PTHREAD_ONCE 1 + +/* Have PTHREAD_PRIO_INHERIT. */ +#define HAVE_PTHREAD_PRIO_INHERIT 1 + +/* Define to 1 if you have the `pthread_rwlock_init' function. */ +#define HAVE_PTHREAD_RWLOCK_INIT 1 + +/* Define if pthread_rwlock_init is provided in the thread library. */ +#define HAVE_PTHREAD_RWLOCK_INIT_IN_THREAD_LIB 1 + +/* Define to 1 if you have the <pwd.h> header file. */ +#define HAVE_PWD_H 1 + +/* Define if building with GNU Readline. */ +/* #undef HAVE_READLINE */ + +/* Define if regcomp exists and functions */ +#define HAVE_REGCOMP 1 + +/* Define to 1 if you have the `regexec' function. */ +#define HAVE_REGEXEC 1 + +/* Define to 1 if you have the <regexpr.h> header file. */ +/* #undef HAVE_REGEXPR_H */ + +/* Define to 1 if you have the <regex.h> header file. */ +#define HAVE_REGEX_H 1 + +/* Define to 1 if you have the `res_nclose' function. */ +#define HAVE_RES_NCLOSE 1 + +/* Define to 1 if you have the `res_ndestroy' function. */ +#define HAVE_RES_NDESTROY 1 + +/* Define to 1 if you have the `res_ninit' function. */ +#define HAVE_RES_NINIT 1 + +/* Define to 1 if you have the `res_nsearch' function. */ +#define HAVE_RES_NSEARCH 1 + +/* Define to 1 if you have the `res_search' function */ +#define HAVE_RES_SEARCH 1 + +/* Define to 1 if you have the `re_comp' function. */ +/* #undef HAVE_RE_COMP */ + +/* Define to 1 if you have the `re_exec' function. */ +/* #undef HAVE_RE_EXEC */ + +/* Define to 1 if you have the <sasl/sasl.h> header file. */ +/* #undef HAVE_SASL_SASL_H */ + +/* Define if struct sockaddr contains sa_len */ +#define HAVE_SA_LEN 1 + +/* Define to 1 if you have the `secure_getenv' function. */ +#define HAVE_SECURE_GETENV 1 + +/* Define to 1 if you have the `setegid' function. */ +#define HAVE_SETEGID 1 + +/* Define to 1 if you have the `setenv' function. */ +#define HAVE_SETENV 1 + +/* Define to 1 if you have the `seteuid' function. */ +#define HAVE_SETEUID 1 + +/* Define if setluid provided in OSF/1 security library */ +/* #undef HAVE_SETLUID */ + +/* Define to 1 if you have the `setregid' function. */ +#define HAVE_SETREGID 1 + +/* Define to 1 if you have the `setresgid' function. */ +#define HAVE_SETRESGID 1 + +/* Define to 1 if you have the `setresuid' function. */ +#define HAVE_SETRESUID 1 + +/* Define to 1 if you have the `setreuid' function. */ +#define HAVE_SETREUID 1 + +/* Define to 1 if you have the `setsid' function. */ +#define HAVE_SETSID 1 + +/* Define to 1 if you have the `setvbuf' function. */ +#define HAVE_SETVBUF 1 + +/* Define if there is a socklen_t type. If not, probably use size_t */ +#define HAVE_SOCKLEN_T 1 + +/* Define to 1 if you have the `srand' function. */ +#define HAVE_SRAND 1 + +/* Define to 1 if you have the `srand48' function. */ +#define HAVE_SRAND48 1 + +/* Define to 1 if you have the `srandom' function. */ +#define HAVE_SRANDOM 1 + +/* Define to 1 if the system has the type `ssize_t'. */ +#define HAVE_SSIZE_T 1 + +/* Define to 1 if you have the `stat' function. */ +#define HAVE_STAT 1 + +/* Define to 1 if you have the <stddef.h> header file. */ +#define HAVE_STDDEF_H 1 + +/* Define to 1 if you have the <stdint.h> header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `step' function. */ +/* #undef HAVE_STEP */ + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the `strerror_r' function. */ +#define HAVE_STRERROR_R 1 + +/* Define to 1 if you have the <strings.h> header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* Define to 1 if you have the `strptime' function. */ +#define HAVE_STRPTIME 1 + +/* Define to 1 if the system has the type `struct cmsghdr'. */ +#define HAVE_STRUCT_CMSGHDR 1 + +/* Define if there is a struct if_laddrconf. */ +/* #undef HAVE_STRUCT_IF_LADDRCONF */ + +/* Define to 1 if the system has the type `struct in6_pktinfo'. */ +#define HAVE_STRUCT_IN6_PKTINFO 1 + +/* Define to 1 if the system has the type `struct in_pktinfo'. */ +/* #undef HAVE_STRUCT_IN_PKTINFO */ + +/* Define if there is a struct lifconf. */ +/* #undef HAVE_STRUCT_LIFCONF */ + +/* Define to 1 if the system has the type `struct rt_msghdr'. */ +#define HAVE_STRUCT_RT_MSGHDR 1 + +/* Define to 1 if the system has the type `struct sockaddr_storage'. */ +#define HAVE_STRUCT_SOCKADDR_STORAGE 1 + +/* Define to 1 if `st_mtimensec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_MTIMENSEC 1 + +/* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 1 + +/* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 + +/* Define to 1 if you have the <sys/bswap.h> header file. */ +/* #undef HAVE_SYS_BSWAP_H */ + +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define if sys_errlist in libc */ +#define HAVE_SYS_ERRLIST 1 + +/* Define to 1 if you have the <sys/file.h> header file. */ +#define HAVE_SYS_FILE_H 1 + +/* Define to 1 if you have the <sys/filio.h> header file. */ +#define HAVE_SYS_FILIO_H 1 + +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the <sys/param.h> header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the <sys/select.h> header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the <sys/socket.h> header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the <sys/sockio.h> header file. */ +#define HAVE_SYS_SOCKIO_H 1 + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/time.h> header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the <sys/uio.h> header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have the `timegm' function. */ +#define HAVE_TIMEGM 1 + +/* Define to 1 if you have the <time.h> header file. */ +#define HAVE_TIME_H 1 + +/* Define to 1 if you have the <unistd.h> header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `unsetenv' function. */ +#define HAVE_UNSETENV 1 + +/* Define to 1 if the system has the type `u_char'. */ +#define HAVE_U_CHAR 1 + +/* Define to 1 if the system has the type `u_int'. */ +#define HAVE_U_INT 1 + +/* Define to 1 if the system has the type `u_int16_t'. */ +#define HAVE_U_INT16_T 1 + +/* Define to 1 if the system has the type `u_int32_t'. */ +#define HAVE_U_INT32_T 1 + +/* Define to 1 if the system has the type `u_int8_t'. */ +#define HAVE_U_INT8_T 1 + +/* Define to 1 if the system has the type `u_long'. */ +#define HAVE_U_LONG 1 + +/* Define to 1 if you have the `vasprintf' function. */ +#define HAVE_VASPRINTF 1 + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the `vsprintf' function. */ +#define HAVE_VSPRINTF 1 + +/* Define to 1 if the system has the type `__int128_t'. */ +#define HAVE___INT128_T 1 + +/* Define to 1 if the system has the type `__uint128_t'. */ +#define HAVE___UINT128_T 1 + +/* Define if errno.h declares perror */ +/* #undef HDR_HAS_PERROR */ + +/* May need to be defined to enable IPv6 support, for example on IRIX */ +/* #undef INET6 */ + +/* Define if MIT Project Athena default configuration should be used */ +/* #undef KRB5_ATHENA_COMPAT */ + +/* Define for DNS support of locating realms and KDCs */ +#define KRB5_DNS_LOOKUP 1 + +/* Define to enable DNS lookups of Kerberos realm names */ +/* #undef KRB5_DNS_LOOKUP_REALM */ + +/* Define if the KDC should return only vague error codes to clients */ +/* #undef KRBCONF_VAGUE_ERRORS */ + +/* define if the system header files are missing prototype for daemon() */ +#define NEED_DAEMON_PROTO 1 + +/* Define if in6addr_any is not defined in libc */ +/* #undef NEED_INSIXADDR_ANY */ + +/* define if the system header files are missing prototype for + ss_execute_command() */ +/* #undef NEED_SS_EXECUTE_COMMAND_PROTO */ + +/* define if the system header files are missing prototype for strptime() */ +/* #undef NEED_STRPTIME_PROTO */ + +/* define if the system header files are missing prototype for swab() */ +/* #undef NEED_SWAB_PROTO */ + *** 6711 LINES SKIPPED ***