diff options
Diffstat (limited to 'crypto/heimdal/tools')
-rw-r--r-- | crypto/heimdal/tools/Makefile.am | 54 | ||||
-rw-r--r-- | crypto/heimdal/tools/Makefile.in | 899 | ||||
-rw-r--r-- | crypto/heimdal/tools/heimdal-gssapi.pc.in | 14 | ||||
-rwxr-xr-x | crypto/heimdal/tools/kdc-log-analyze.pl | 549 | ||||
-rw-r--r-- | crypto/heimdal/tools/krb5-config.1 | 88 | ||||
-rwxr-xr-x | crypto/heimdal/tools/krb5-config.in | 148 |
6 files changed, 1752 insertions, 0 deletions
diff --git a/crypto/heimdal/tools/Makefile.am b/crypto/heimdal/tools/Makefile.am new file mode 100644 index 0000000..36eed71 --- /dev/null +++ b/crypto/heimdal/tools/Makefile.am @@ -0,0 +1,54 @@ +# $Id$ + +include $(top_srcdir)/Makefile.am.common + +bin_SCRIPTS = krb5-config + +pkgconfigdir = $(libdir)/pkgconfig + +pkgconfig_DATA = heimdal-gssapi.pc + +man_MANS = krb5-config.1 + +if PKINIT +LIB_pkinit = -lhx509 +endif + +subst = sed -e "s!@PACKAGE\@!$(PACKAGE)!g" \ + -e "s!@VERSION\@!$(VERSION)!g" \ + -e "s!@prefix\@!$(prefix)!g" \ + -e "s!@exec_prefix\@!$(exec_prefix)!g" \ + -e "s!@libdir\@!$(libdir)!g" \ + -e "s!@includedir\@!$(includedir)!g" \ + -e "s!@PTHREAD_LIBADD\@!$(PTHREAD_LIBADD)!g" \ + -e "s!@LIB_crypt\@!$(LIB_crypt)!g" \ + -e "s!@LIB_dbopen\@!$(LIB_dbopen)!g" \ + -e "s!@INCLUDE_hcrypto\@!$(INCLUDE_hcrypto)!g" \ + -e "s!@LIB_hcrypto_appl\@!$(LIB_hcrypto_appl)!g" \ + -e "s!@LIB_dlopen\@!$(LIB_dlopen)!g" \ + -e "s!@LIB_door_create\@!$(LIB_door_create)!g" \ + -e "s!@LIB_pkinit\@!$(LIB_pkinit)!g" \ + -e "s!@LIBS\@!$(LIBS)!g" + +krb5-config: krb5-config.in + $(subst) $(srcdir)/krb5-config.in > $@.new + mv $@.new $@ + chmod +x $@ + +heimdal-gssapi.pc: heimdal-gssapi.pc.in + $(subst) $(srcdir)/heimdal-gssapi.pc.in > $@.new + mv $@.new $@ + +EXTRA_DIST = \ + NTMakefile \ + $(man_MANS) \ + krb5-config.in \ + heimdal-gssapi.pc.in \ + kdc-log-analyze.pl + +CLEANFILES = \ + krb5-config \ + krb5-config.new \ + heimdal-gssapi.pc \ + heimdal-gssapi.pc.new + diff --git a/crypto/heimdal/tools/Makefile.in b/crypto/heimdal/tools/Makefile.in new file mode 100644 index 0000000..d66e04e --- /dev/null +++ b/crypto/heimdal/tools/Makefile.in @@ -0,0 +1,899 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# $Id$ + +# $Id$ + +# $Id$ + + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(top_srcdir)/Makefile.am.common \ + $(top_srcdir)/cf/Makefile.am.common +subdir = tools +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/cf/aix.m4 \ + $(top_srcdir)/cf/auth-modules.m4 \ + $(top_srcdir)/cf/broken-getaddrinfo.m4 \ + $(top_srcdir)/cf/broken-glob.m4 \ + $(top_srcdir)/cf/broken-realloc.m4 \ + $(top_srcdir)/cf/broken-snprintf.m4 $(top_srcdir)/cf/broken.m4 \ + $(top_srcdir)/cf/broken2.m4 $(top_srcdir)/cf/c-attribute.m4 \ + $(top_srcdir)/cf/capabilities.m4 \ + $(top_srcdir)/cf/check-compile-et.m4 \ + $(top_srcdir)/cf/check-getpwnam_r-posix.m4 \ + $(top_srcdir)/cf/check-man.m4 \ + $(top_srcdir)/cf/check-netinet-ip-and-tcp.m4 \ + $(top_srcdir)/cf/check-type-extra.m4 \ + $(top_srcdir)/cf/check-var.m4 $(top_srcdir)/cf/check-x.m4 \ + $(top_srcdir)/cf/check-xau.m4 $(top_srcdir)/cf/crypto.m4 \ + $(top_srcdir)/cf/db.m4 $(top_srcdir)/cf/destdirs.m4 \ + $(top_srcdir)/cf/dispatch.m4 $(top_srcdir)/cf/dlopen.m4 \ + $(top_srcdir)/cf/find-func-no-libs.m4 \ + $(top_srcdir)/cf/find-func-no-libs2.m4 \ + $(top_srcdir)/cf/find-func.m4 \ + $(top_srcdir)/cf/find-if-not-broken.m4 \ + $(top_srcdir)/cf/framework-security.m4 \ + $(top_srcdir)/cf/have-struct-field.m4 \ + $(top_srcdir)/cf/have-type.m4 $(top_srcdir)/cf/irix.m4 \ + $(top_srcdir)/cf/krb-bigendian.m4 \ + $(top_srcdir)/cf/krb-func-getlogin.m4 \ + $(top_srcdir)/cf/krb-ipv6.m4 $(top_srcdir)/cf/krb-prog-ln-s.m4 \ + $(top_srcdir)/cf/krb-readline.m4 \ + $(top_srcdir)/cf/krb-struct-spwd.m4 \ + $(top_srcdir)/cf/krb-struct-winsize.m4 \ + $(top_srcdir)/cf/largefile.m4 $(top_srcdir)/cf/libtool.m4 \ + $(top_srcdir)/cf/ltoptions.m4 $(top_srcdir)/cf/ltsugar.m4 \ + $(top_srcdir)/cf/ltversion.m4 $(top_srcdir)/cf/lt~obsolete.m4 \ + $(top_srcdir)/cf/mips-abi.m4 $(top_srcdir)/cf/misc.m4 \ + $(top_srcdir)/cf/need-proto.m4 $(top_srcdir)/cf/osfc2.m4 \ + $(top_srcdir)/cf/otp.m4 $(top_srcdir)/cf/pkg.m4 \ + $(top_srcdir)/cf/proto-compat.m4 $(top_srcdir)/cf/pthreads.m4 \ + $(top_srcdir)/cf/resolv.m4 $(top_srcdir)/cf/retsigtype.m4 \ + $(top_srcdir)/cf/roken-frag.m4 \ + $(top_srcdir)/cf/socket-wrapper.m4 $(top_srcdir)/cf/sunos.m4 \ + $(top_srcdir)/cf/telnet.m4 $(top_srcdir)/cf/test-package.m4 \ + $(top_srcdir)/cf/version-script.m4 $(top_srcdir)/cf/wflags.m4 \ + $(top_srcdir)/cf/win32.m4 $(top_srcdir)/cf/with-all.m4 \ + $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/include/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" \ + "$(DESTDIR)$(pkgconfigdir)" +SCRIPTS = $(bin_SCRIPTS) +SOURCES = +DIST_SOURCES = +man1dir = $(mandir)/man1 +MANS = $(man_MANS) +DATA = $(pkgconfig_DATA) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AIX_EXTRA_KAFS = @AIX_EXTRA_KAFS@ +AMTAR = @AMTAR@ +AR = @AR@ +ASN1_COMPILE = @ASN1_COMPILE@ +ASN1_COMPILE_DEP = @ASN1_COMPILE_DEP@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CANONICAL_HOST = @CANONICAL_HOST@ +CAPNG_CFLAGS = @CAPNG_CFLAGS@ +CAPNG_LIBS = @CAPNG_LIBS@ +CATMAN = @CATMAN@ +CATMANEXT = @CATMANEXT@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +COMPILE_ET = @COMPILE_ET@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DBHEADER = @DBHEADER@ +DBLIB = @DBLIB@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DIR_com_err = @DIR_com_err@ +DIR_hcrypto = @DIR_hcrypto@ +DIR_hdbdir = @DIR_hdbdir@ +DIR_roken = @DIR_roken@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +GROFF = @GROFF@ +INCLUDES_roken = @INCLUDES_roken@ +INCLUDE_hcrypto = @INCLUDE_hcrypto@ +INCLUDE_hesiod = @INCLUDE_hesiod@ +INCLUDE_krb4 = @INCLUDE_krb4@ +INCLUDE_libedit = @INCLUDE_libedit@ +INCLUDE_libintl = @INCLUDE_libintl@ +INCLUDE_openldap = @INCLUDE_openldap@ +INCLUDE_readline = @INCLUDE_readline@ +INCLUDE_sqlite3 = @INCLUDE_sqlite3@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LDFLAGS_VERSION_SCRIPT = @LDFLAGS_VERSION_SCRIPT@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +LIBADD_roken = @LIBADD_roken@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIB_AUTH_SUBDIRS = @LIB_AUTH_SUBDIRS@ +LIB_NDBM = @LIB_NDBM@ +LIB_XauFileName = @LIB_XauFileName@ +LIB_XauReadAuth = @LIB_XauReadAuth@ +LIB_XauWriteAuth = @LIB_XauWriteAuth@ +LIB_bswap16 = @LIB_bswap16@ +LIB_bswap32 = @LIB_bswap32@ +LIB_com_err = @LIB_com_err@ +LIB_com_err_a = @LIB_com_err_a@ +LIB_com_err_so = @LIB_com_err_so@ +LIB_crypt = @LIB_crypt@ +LIB_db_create = @LIB_db_create@ +LIB_dbm_firstkey = @LIB_dbm_firstkey@ +LIB_dbopen = @LIB_dbopen@ +LIB_dispatch_async_f = @LIB_dispatch_async_f@ +LIB_dlopen = @LIB_dlopen@ +LIB_dn_expand = @LIB_dn_expand@ +LIB_dns_search = @LIB_dns_search@ +LIB_door_create = @LIB_door_create@ +LIB_freeaddrinfo = @LIB_freeaddrinfo@ +LIB_gai_strerror = @LIB_gai_strerror@ +LIB_getaddrinfo = @LIB_getaddrinfo@ +LIB_gethostbyname = @LIB_gethostbyname@ +LIB_gethostbyname2 = @LIB_gethostbyname2@ +LIB_getnameinfo = @LIB_getnameinfo@ +LIB_getpwnam_r = @LIB_getpwnam_r@ +LIB_getsockopt = @LIB_getsockopt@ +LIB_hcrypto = @LIB_hcrypto@ +LIB_hcrypto_a = @LIB_hcrypto_a@ +LIB_hcrypto_appl = @LIB_hcrypto_appl@ +LIB_hcrypto_so = @LIB_hcrypto_so@ +LIB_hesiod = @LIB_hesiod@ +LIB_hstrerror = @LIB_hstrerror@ +LIB_kdb = @LIB_kdb@ +LIB_krb4 = @LIB_krb4@ +LIB_libedit = @LIB_libedit@ +LIB_libintl = @LIB_libintl@ +LIB_loadquery = @LIB_loadquery@ +LIB_logout = @LIB_logout@ +LIB_logwtmp = @LIB_logwtmp@ +LIB_openldap = @LIB_openldap@ +LIB_openpty = @LIB_openpty@ +LIB_otp = @LIB_otp@ +LIB_pidfile = @LIB_pidfile@ +LIB_readline = @LIB_readline@ +LIB_res_ndestroy = @LIB_res_ndestroy@ +LIB_res_nsearch = @LIB_res_nsearch@ +LIB_res_search = @LIB_res_search@ +LIB_roken = @LIB_roken@ +LIB_security = @LIB_security@ +LIB_setsockopt = @LIB_setsockopt@ +LIB_socket = @LIB_socket@ +LIB_sqlite3 = @LIB_sqlite3@ +LIB_syslog = @LIB_syslog@ +LIB_tgetent = @LIB_tgetent@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +NO_AFS = @NO_AFS@ +NROFF = @NROFF@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ +PTHREAD_LDADD = @PTHREAD_LDADD@ +PTHREAD_LIBADD = @PTHREAD_LIBADD@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SLC = @SLC@ +SLC_DEP = @SLC_DEP@ +STRIP = @STRIP@ +VERSION = @VERSION@ +VERSIONING = @VERSIONING@ +WFLAGS = @WFLAGS@ +WFLAGS_NOIMPLICITINT = @WFLAGS_NOIMPLICITINT@ +WFLAGS_NOUNUSED = @WFLAGS_NOUNUSED@ +XMKMF = @XMKMF@ +X_CFLAGS = @X_CFLAGS@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_LIBS = @X_LIBS@ +X_PRE_LIBS = @X_PRE_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dpagaix_cflags = @dpagaix_cflags@ +dpagaix_ldadd = @dpagaix_ldadd@ +dpagaix_ldflags = @dpagaix_ldflags@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +subdirs = @subdirs@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUFFIXES = .et .h .x .z .hx .1 .3 .5 .8 .cat1 .cat3 .cat5 .cat8 +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include +AM_CPPFLAGS = $(INCLUDES_roken) +@do_roken_rename_TRUE@ROKEN_RENAME = -DROKEN_RENAME +AM_CFLAGS = $(WFLAGS) +CP = cp +buildinclude = $(top_builddir)/include +LIB_el_init = @LIB_el_init@ +LIB_getattr = @LIB_getattr@ +LIB_getpwent_r = @LIB_getpwent_r@ +LIB_odm_initialize = @LIB_odm_initialize@ +LIB_setpcred = @LIB_setpcred@ +HESIODLIB = @HESIODLIB@ +HESIODINCLUDE = @HESIODINCLUDE@ +libexec_heimdaldir = $(libexecdir)/heimdal +NROFF_MAN = groff -mandoc -Tascii +LIB_kafs = $(top_builddir)/lib/kafs/libkafs.la $(AIX_EXTRA_KAFS) +@KRB5_TRUE@LIB_krb5 = $(top_builddir)/lib/krb5/libkrb5.la \ +@KRB5_TRUE@ $(top_builddir)/lib/asn1/libasn1.la + +@KRB5_TRUE@LIB_gssapi = $(top_builddir)/lib/gssapi/libgssapi.la +LIB_heimbase = $(top_builddir)/base/libheimbase.la +@DCE_TRUE@LIB_kdfs = $(top_builddir)/lib/kdfs/libkdfs.la +bin_SCRIPTS = krb5-config +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = heimdal-gssapi.pc +man_MANS = krb5-config.1 +@PKINIT_TRUE@LIB_pkinit = -lhx509 +subst = sed -e "s!@PACKAGE\@!$(PACKAGE)!g" \ + -e "s!@VERSION\@!$(VERSION)!g" \ + -e "s!@prefix\@!$(prefix)!g" \ + -e "s!@exec_prefix\@!$(exec_prefix)!g" \ + -e "s!@libdir\@!$(libdir)!g" \ + -e "s!@includedir\@!$(includedir)!g" \ + -e "s!@PTHREAD_LIBADD\@!$(PTHREAD_LIBADD)!g" \ + -e "s!@LIB_crypt\@!$(LIB_crypt)!g" \ + -e "s!@LIB_dbopen\@!$(LIB_dbopen)!g" \ + -e "s!@INCLUDE_hcrypto\@!$(INCLUDE_hcrypto)!g" \ + -e "s!@LIB_hcrypto_appl\@!$(LIB_hcrypto_appl)!g" \ + -e "s!@LIB_dlopen\@!$(LIB_dlopen)!g" \ + -e "s!@LIB_door_create\@!$(LIB_door_create)!g" \ + -e "s!@LIB_pkinit\@!$(LIB_pkinit)!g" \ + -e "s!@LIBS\@!$(LIBS)!g" + +EXTRA_DIST = \ + NTMakefile \ + $(man_MANS) \ + krb5-config.in \ + heimdal-gssapi.pc.in \ + kdc-log-analyze.pl + +CLEANFILES = \ + krb5-config \ + krb5-config.new \ + heimdal-gssapi.pc \ + heimdal-gssapi.pc.new + +all: all-am + +.SUFFIXES: +.SUFFIXES: .et .h .x .z .hx .1 .3 .5 .8 .cat1 .cat3 .cat5 .cat8 .c +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/Makefile.am.common $(top_srcdir)/cf/Makefile.am.common $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign tools/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-binSCRIPTS: $(bin_SCRIPTS) + @$(NORMAL_INSTALL) + test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" + @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-binSCRIPTS: + @$(NORMAL_UNINSTALL) + @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-man1: $(man_MANS) + @$(NORMAL_INSTALL) + test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" + @list=''; test -n "$(man1dir)" || exit 0; \ + { for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | while read p; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; echo "$$p"; \ + done | \ + sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ + sed 'N;N;s,\n, ,g' | { \ + list=; while read file base inst; do \ + if test "$$base" = "$$inst"; then list="$$list $$file"; else \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ + fi; \ + done; \ + for i in $$list; do echo "$$i"; done | $(am__base_list) | \ + while read files; do \ + test -z "$$files" || { \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ + done; } + +uninstall-man1: + @$(NORMAL_UNINSTALL) + @list=''; test -n "$(man1dir)" || exit 0; \ + files=`{ for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ + test -z "$$files" || { \ + echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(man1dir)" && rm -f $$files; } +install-pkgconfigDATA: $(pkgconfig_DATA) + @$(NORMAL_INSTALL) + test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ + done + +uninstall-pkgconfigDATA: + @$(NORMAL_UNINSTALL) + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files +tags: TAGS +TAGS: + +ctags: CTAGS +CTAGS: + + +distdir: $(DISTFILES) + @list='$(MANS)'; if test -n "$$list"; then \ + list=`for p in $$list; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ + if test -n "$$list" && \ + grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ + echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ + grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ + echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ + echo " typically \`make maintainer-clean' will remove them" >&2; \ + exit 1; \ + else :; fi; \ + else :; fi + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-hook +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-local +check: check-am +all-am: Makefile $(SCRIPTS) $(MANS) $(DATA) all-local +installdirs: + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(pkgconfigdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-man install-pkgconfigDATA + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) install-data-hook +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-binSCRIPTS + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) install-exec-hook +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: install-man1 + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binSCRIPTS uninstall-man \ + uninstall-pkgconfigDATA + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) uninstall-hook +uninstall-man: uninstall-man1 + +.MAKE: check-am install-am install-data-am install-exec-am \ + install-strip uninstall-am + +.PHONY: all all-am all-local check check-am check-local clean \ + clean-generic clean-libtool dist-hook distclean \ + distclean-generic distclean-libtool distdir dvi dvi-am html \ + html-am info info-am install install-am install-binSCRIPTS \ + install-data install-data-am install-data-hook install-dvi \ + install-dvi-am install-exec install-exec-am install-exec-hook \ + install-html install-html-am install-info install-info-am \ + install-man install-man1 install-pdf install-pdf-am \ + install-pkgconfigDATA install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ + uninstall-binSCRIPTS uninstall-hook uninstall-man \ + uninstall-man1 uninstall-pkgconfigDATA + + +install-suid-programs: + @foo='$(bin_SUIDS)'; \ + for file in $$foo; do \ + x=$(DESTDIR)$(bindir)/$$file; \ + if chown 0:0 $$x && chmod u+s $$x; then :; else \ + echo "*"; \ + echo "* Failed to install $$x setuid root"; \ + echo "*"; \ + fi; done + +install-exec-hook: install-suid-programs + +install-build-headers:: $(include_HEADERS) $(dist_include_HEADERS) $(nodist_include_HEADERS) $(build_HEADERZ) $(nobase_include_HEADERS) + @foo='$(include_HEADERS) $(dist_include_HEADERS) $(nodist_include_HEADERS) $(build_HEADERZ)'; \ + for f in $$foo; do \ + f=`basename $$f`; \ + if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \ + else file="$$f"; fi; \ + if cmp -s $$file $(buildinclude)/$$f 2> /dev/null ; then \ + : ; else \ + echo " $(CP) $$file $(buildinclude)/$$f"; \ + $(CP) $$file $(buildinclude)/$$f; \ + fi ; \ + done ; \ + foo='$(nobase_include_HEADERS)'; \ + for f in $$foo; do \ + if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \ + else file="$$f"; fi; \ + $(mkdir_p) $(buildinclude)/`dirname $$f` ; \ + if cmp -s $$file $(buildinclude)/$$f 2> /dev/null ; then \ + : ; else \ + echo " $(CP) $$file $(buildinclude)/$$f"; \ + $(CP) $$file $(buildinclude)/$$f; \ + fi ; \ + done + +all-local: install-build-headers + +check-local:: + @if test '$(CHECK_LOCAL)' = "no-check-local"; then \ + foo=''; elif test '$(CHECK_LOCAL)'; then \ + foo='$(CHECK_LOCAL)'; else \ + foo='$(PROGRAMS)'; fi; \ + if test "$$foo"; then \ + failed=0; all=0; \ + for i in $$foo; do \ + all=`expr $$all + 1`; \ + if (./$$i --version && ./$$i --help) > /dev/null 2>&1; then \ + echo "PASS: $$i"; \ + else \ + echo "FAIL: $$i"; \ + failed=`expr $$failed + 1`; \ + fi; \ + done; \ + if test "$$failed" -eq 0; then \ + banner="All $$all tests passed"; \ + else \ + banner="$$failed of $$all tests failed"; \ + fi; \ + dashes=`echo "$$banner" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + echo "$$dashes"; \ + test "$$failed" -eq 0 || exit 1; \ + fi + +.x.c: + @cmp -s $< $@ 2> /dev/null || cp $< $@ + +.hx.h: + @cmp -s $< $@ 2> /dev/null || cp $< $@ +#NROFF_MAN = nroff -man +.1.cat1: + $(NROFF_MAN) $< > $@ +.3.cat3: + $(NROFF_MAN) $< > $@ +.5.cat5: + $(NROFF_MAN) $< > $@ +.8.cat8: + $(NROFF_MAN) $< > $@ + +dist-cat1-mans: + @foo='$(man1_MANS)'; \ + bar='$(man_MANS)'; \ + for i in $$bar; do \ + case $$i in \ + *.1) foo="$$foo $$i";; \ + esac; done ;\ + for i in $$foo; do \ + x=`echo $$i | sed 's/\.[^.]*$$/.cat1/'`; \ + echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \ + $(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \ + done + +dist-cat3-mans: + @foo='$(man3_MANS)'; \ + bar='$(man_MANS)'; \ + for i in $$bar; do \ + case $$i in \ + *.3) foo="$$foo $$i";; \ + esac; done ;\ + for i in $$foo; do \ + x=`echo $$i | sed 's/\.[^.]*$$/.cat3/'`; \ + echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \ + $(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \ + done + +dist-cat5-mans: + @foo='$(man5_MANS)'; \ + bar='$(man_MANS)'; \ + for i in $$bar; do \ + case $$i in \ + *.5) foo="$$foo $$i";; \ + esac; done ;\ + for i in $$foo; do \ + x=`echo $$i | sed 's/\.[^.]*$$/.cat5/'`; \ + echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \ + $(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \ + done + +dist-cat8-mans: + @foo='$(man8_MANS)'; \ + bar='$(man_MANS)'; \ + for i in $$bar; do \ + case $$i in \ + *.8) foo="$$foo $$i";; \ + esac; done ;\ + for i in $$foo; do \ + x=`echo $$i | sed 's/\.[^.]*$$/.cat8/'`; \ + echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \ + $(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \ + done + +dist-hook: dist-cat1-mans dist-cat3-mans dist-cat5-mans dist-cat8-mans + +install-cat-mans: + $(SHELL) $(top_srcdir)/cf/install-catman.sh install "$(INSTALL_DATA)" "$(mkinstalldirs)" "$(srcdir)" "$(DESTDIR)$(mandir)" '$(CATMANEXT)' $(man_MANS) $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS) + +uninstall-cat-mans: + $(SHELL) $(top_srcdir)/cf/install-catman.sh uninstall "$(INSTALL_DATA)" "$(mkinstalldirs)" "$(srcdir)" "$(DESTDIR)$(mandir)" '$(CATMANEXT)' $(man_MANS) $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS) + +install-data-hook: install-cat-mans +uninstall-hook: uninstall-cat-mans + +.et.h: + $(COMPILE_ET) $< +.et.c: + $(COMPILE_ET) $< + +# +# Useful target for debugging +# + +check-valgrind: + tobjdir=`cd $(top_builddir) && pwd` ; \ + tsrcdir=`cd $(top_srcdir) && pwd` ; \ + env TESTS_ENVIRONMENT="$${tsrcdir}/cf/maybe-valgrind.sh -s $${tsrcdir} -o $${tobjdir}" make check + +# +# Target to please samba build farm, builds distfiles in-tree. +# Will break when automake changes... +# + +distdir-in-tree: $(DISTFILES) $(INFO_DEPS) + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" != .; then \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) distdir-in-tree) ; \ + fi ; \ + done + +krb5-config: krb5-config.in + $(subst) $(srcdir)/krb5-config.in > $@.new + mv $@.new $@ + chmod +x $@ + +heimdal-gssapi.pc: heimdal-gssapi.pc.in + $(subst) $(srcdir)/heimdal-gssapi.pc.in > $@.new + mv $@.new $@ + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/crypto/heimdal/tools/heimdal-gssapi.pc.in b/crypto/heimdal/tools/heimdal-gssapi.pc.in new file mode 100644 index 0000000..1d8f235 --- /dev/null +++ b/crypto/heimdal/tools/heimdal-gssapi.pc.in @@ -0,0 +1,14 @@ +# $Id$ +prefix=@prefix@ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: @PACKAGE@ +Description: Heimdal is an implementation of Kerberos 5, freely available under a three clause BSD style license. +Version: @VERSION@ +URL: http://www.pdc.kth.se/heimdal/ +#Requires: foo = 1.3.1 +#Conflicts: bar <= 4.5 +Libs: -L${libdir} -lgssapi -lheimntlm -lkrb5 @LIB_pkinit@ -lcom_err @LIB_hcrypto_appl@ -lasn1 -lwind -lroken @LIB_crypt@ @LIB_dlopen@ @LIB_door_create@ @LIBS@ +Cflags: -I${includedir} diff --git a/crypto/heimdal/tools/kdc-log-analyze.pl b/crypto/heimdal/tools/kdc-log-analyze.pl new file mode 100755 index 0000000..6692bf4 --- /dev/null +++ b/crypto/heimdal/tools/kdc-log-analyze.pl @@ -0,0 +1,549 @@ +#! /usr/pkg/bin/perl +# -*- mode: perl; perl-indent-level: 8 -*- +# +# Copyright (c) 2003 Kungliga Tekniska Högskolan +# (Royal Institute of Technology, Stockholm, Sweden). +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 3. Neither the name of the Institute nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $Id$ +# +# kdc-log-analyze - Analyze a KDC log file and give a report on the contents +# +# Note: The parts you want likely want to customize are the variable $notlocal, +# the array @local_network_re and the array @local_realms. +# +# Idea and implemetion for MIT Kerberos was done first by +# Ken Hornstein <kenh@cmf.nrl.navy.mil>, this program wouldn't exists +# without his help. +# + +use strict; +use Sys::Hostname; + +my $notlocal = 'not SU'; +my @local_realms = ( "SU.SE" ); +my @local_networks_re = + ( + "130\.237", + "193\.11\.3[0-9]\.", + "130.242.128", + "2001:6b0:5:" + ); + +my $as_req = 0; +my %as_req_addr; +my %as_req_addr_nonlocal; +my %as_req_client; +my %as_req_server; +my %addr_uses_des; +my %princ_uses_des; +my $five24_req = 0; +my %five24_req_addr; +my %five24_req_addr_nonlocal; +my %five24_req_server; +my %five24_req_client; +my $as_req_successful = 0; +my $as_req_error = 0; +my $no_such_princ = 0; +my %no_such_princ_princ; +my %no_such_princ_addr; +my %no_such_princ_addr_nonlocal; +my $as_req_etype_odd = 0; +my %bw_addr; +my $pa_alt_princ_request = 0; +my $pa_alt_princ_verify = 0; +my $tgs_req = 0; +my %tgs_req_addr; +my %tgs_req_addr_nonlocal; +my %tgs_req_client; +my %tgs_req_server; +my $tgs_xrealm_out = 0; +my %tgs_xrealm_out_realm; +my %tgs_xrealm_out_princ; +my $tgs_xrealm_in = 0; +my %tgs_xrealm_in_realm; +my %tgs_xrealm_in_princ; +my %enctype_session; +my %enctype_ticket; +my $restarts = 0; +my $forward_non_forward = 0; +my $v4_req = 0; +my %v4_req_addr; +my %v4_req_addr_nonlocal; +my $v4_cross = 0; +my %v4_cross_realm; +my $v5_cross = 0; +my %v5_cross_realm; +my $referrals = 0; +my %referral_princ; +my %referral_realm; +my %strange_tcp_data; +my $http_malformed = 0; +my %http_malformed_addr; +my $http_non_kdc = 0; +my %http_non_kdc_addr; +my $tcp_conn_timeout = 0; +my %tcp_conn_timeout_addr; +my $failed_processing = 0; +my %failed_processing_addr; +my $connection_closed = 0; +my %connection_closed_addr; +my $pa_failed = 0; +my %pa_failed_princ; +my %pa_failed_addr; +my %ip; + +$ip{'4'} = $ip{'6'} = 0; + +while (<>) { + process_line($_); +} + +print "Kerberos KDC Log Report for ", + hostname, " on ", scalar localtime, "\n\n"; + +print "General Statistics\n\n"; + +print "\tNumber of IPv4 requests: $ip{'4'}\n"; +print "\tNumber of IPv6 requests: $ip{'6'}\n\n"; + +print "\tNumber of restarts: $restarts\n"; +print "\tNumber of V4 requests: $v4_req\n"; +if ($v4_req > 0) { + print "\tTop ten IP addresses performing V4 requests:\n"; + topten(\%v4_req_addr); +} +if (int(keys %v4_req_addr_nonlocal) > 0) { + print "\tTop ten $notlocal IP addresses performing V4 requests:\n"; + topten(\%v4_req_addr_nonlocal); + +} +print "\n"; + +print "\tNumber of V4 cross realms (krb4 and 524) requests: $v4_cross\n"; +if ($v4_cross > 0) { + print "\tTop ten realms performing V4 cross requests:\n"; + topten(\%v4_cross_realm); +} +print "\n"; + +print "\tNumber of V45 cross realms requests: $v5_cross\n"; +if ($v5_cross > 0) { + print "\tTop ten realms performing V4 cross requests:\n"; + topten(\%v5_cross_realm); +} +print "\n"; + +print "\tNumber of failed lookups: $no_such_princ\n"; +if ($no_such_princ > 0) { + print "\tTop ten IP addresses failing to find principal:\n"; + topten(\%no_such_princ_addr); + print "\tTop ten $notlocal IP addresses failing find principal:\n"; + topten(\%no_such_princ_addr_nonlocal); + print "\tTop ten failed to find principals\n"; + topten(\%no_such_princ_princ); +} +print "\n"; + +print "\tBandwidth pigs:\n"; +topten(\%bw_addr); +print "\n"; + +print "\tStrange TCP data clients: ", int(keys %strange_tcp_data),"\n"; +topten(\%strange_tcp_data); +print "\n"; + +print "\tTimeout waiting on TCP requests: ", $tcp_conn_timeout,"\n"; +if ($tcp_conn_timeout > 0) { + print "\tTop ten TCP timeout request clients\n"; + topten(\%tcp_conn_timeout_addr); +} +print "\n"; + +print "\tFailed processing requests: ", $failed_processing,"\n"; +if ($failed_processing > 0) { + print "\tTop ten failed processing request clients\n"; + topten(\%failed_processing_addr); +} +print "\n"; + +print "\tConnection closed requests: ", $connection_closed,"\n"; +if ($connection_closed > 0) { + print "\tTop ten connection closed request clients\n"; + topten(\%connection_closed_addr); +} +print "\n"; + +print "\tMalformed HTTP requests: ", $http_malformed,"\n"; +if ($http_malformed > 0) { + print "\tTop ten malformed HTTP request clients\n"; + topten(\%http_malformed_addr); +} +print "\n"; + +print "\tHTTP non kdc requests: ", $http_non_kdc,"\n"; +if ($http_non_kdc > 0) { + print "\tTop ten HTTP non KDC request clients\n"; + topten(\%http_non_kdc_addr); +} +print "\n"; + +print "Report on AS_REQ requests\n\n"; +print "Overall AS_REQ statistics\n\n"; + +print "\tTotal number: $as_req\n"; + +print "\nAS_REQ client/server statistics\n\n"; + +print "\tDistinct IP Addresses performing requests: ", + int(keys %as_req_addr),"\n"; +print "\tOverall top ten IP addresses\n"; +topten(\%as_req_addr); + +print "\tDistinct non-local ($notlocal) IP Addresses performing requests: ", + int(keys %as_req_addr_nonlocal), "\n"; +print "\tTop ten non-local ($notlocal) IP address:\n"; +topten(\%as_req_addr_nonlocal); + +print "\n\tPreauth failed for for: ", $pa_failed, " requests\n"; +if ($pa_failed) { + print "\tPreauth failed top ten IP addresses:\n"; + topten(\%pa_failed_addr); + print "\tPreauth failed top ten principals:\n"; + topten(\%pa_failed_princ); +} + +print "\n\tDistinct clients performing requests: ", + int(keys %as_req_client), "\n"; +print "\tTop ten clients:\n"; +topten(\%as_req_client); + +print "\tDistinct services requested: ", int(keys %as_req_server), "\n"; +print "\tTop ten requested services:\n"; +topten(\%as_req_server); + +print "\n\n\nReport on TGS_REQ requests:\n\n"; +print "Overall TGS_REQ statistics\n\n"; +print "\tTotal number: $tgs_req\n"; + +print "\nTGS_REQ client/server statistics\n\n"; +print "\tDistinct IP addresses performing requests: ", + int(keys %tgs_req_addr), "\n"; +print "\tOverall top ten IP addresses\n"; +topten(\%tgs_req_addr); + +print "\tDistinct non-local ($notlocal) IP Addresses performing requests: ", + int(keys %tgs_req_addr_nonlocal), "\n"; +print "\tTop ten non-local ($notlocal) IP address:\n"; +topten(\%tgs_req_addr_nonlocal); + +print "\tDistinct clients performing requests: ", + int(keys %tgs_req_client), "\n"; +print "\tTop ten clients:\n"; +topten(\%tgs_req_client); + +print "\tDistinct services requested: ", int(keys %tgs_req_server), "\n"; +print "\tTop ten requested services:\n"; +topten(\%tgs_req_server); + +print "\n\n\nReport on 524_REQ requests:\n\n"; + +print "\t524_REQ client/server statistics\n\n"; + +print "\tDistinct IP Addresses performing requests: ", + int(keys %five24_req_addr),"\n"; +print "\tOverall top ten IP addresses\n"; +topten(\%five24_req_addr); + +print "\tDistinct non-local ($notlocal) IP Addresses performing requests: ", + int(keys %five24_req_addr_nonlocal), "\n"; +print "\tTop ten non-local ($notlocal) IP address:\n"; +topten(\%five24_req_addr_nonlocal); + +print "\tDistinct clients performing requests: ", int(keys %five24_req_client), "\n"; +print "\tTop ten clients:\n"; +topten(\%five24_req_client); + +print "\tDistinct services requested: ", int(keys %five24_req_server), "\n"; +print "\tTop ten requested services:\n"; +topten(\%five24_req_server); +print "\n"; + +print "Cross realm statistics\n\n"; + +print "\tNumber of cross-realm tgs out: $tgs_xrealm_out\n"; +if ($tgs_xrealm_out > 0) { + print "\tTop ten realms used for out cross-realm:\n"; + topten(\%tgs_xrealm_out_realm); + print "\tTop ten principals use out cross-realm:\n"; + topten(\%tgs_xrealm_out_princ); +} +print "\tNumber of cross-realm tgs in: $tgs_xrealm_in\n"; +if ($tgs_xrealm_in > 0) { + print "\tTop ten realms used for in cross-realm:\n"; + topten(\%tgs_xrealm_in_realm); + print "\tTop ten principals use in cross-realm:\n"; + topten(\%tgs_xrealm_in_princ); +} + +print "\n\nReport on referral:\n\n"; + +print "\tNumber of referrals: $referrals\n"; +if ($referrals > 0) { + print "\tTop ten referral-ed principals:\n"; + topten(\%referral_princ); + print "\tTop ten to realm referrals:\n"; + topten(\%referral_realm); +} + +print "\n\nEnctype Statistics:\n\n"; +print "\tTop ten session enctypes:\n"; +topten(\%enctype_session); +print "\tTop ten ticket enctypes:\n"; +topten(\%enctype_ticket); + +print "\tDistinct IP addresses using DES: ", int(keys %addr_uses_des), "\n"; +print "\tTop IP addresses using DES:\n"; +topten(\%addr_uses_des); +print "\tDistinct principals using DES: ", int(keys %princ_uses_des), "\n"; +print "\tTop ten principals using DES:\n"; +topten(\%princ_uses_des); + +print "\n"; + +printf("Requests to forward non-forwardable ticket: $forward_non_forward\n"); + + +exit 0; + +my $last_addr = ""; +my $last_principal = ""; + +sub process_line { + local($_) = @_; + # + # Eat these lines that are output as a result of startup (but + # log the number of restarts) + # + if (/AS-REQ \(krb4\) (.*) from IPv([46]):([0-9\.:a-fA-F]+) for krbtgt.*$/){ + $v4_req++; + $v4_req_addr{$3}++; + $v4_req_addr_nonlocal{$3}++ if (!islocaladdr($3)); + $last_addr = $3; + $last_principal = $1; + $ip{$2}++; + } elsif (/AS-REQ (.*) from IPv([46]):([0-9\.:a-fA-F]+) for (.*)$/) { + $as_req++; + $as_req_client{$1}++; + $as_req_server{$4}++; + $as_req_addr{$3}++; + $as_req_addr_nonlocal{$3}++ if (!islocaladdr($3)); + $last_addr = $3; + $last_principal = $1; + $ip{$2}++; + } elsif (/TGS-REQ \(krb4\)/) { + #Nothing + } elsif (/TGS-REQ (.+) from IPv([46]):([0-9\.:a-fA-F]+) for (.*?)( \[.*\]){0,1}$/) { + $tgs_req++; + $tgs_req_client{$1}++; + $tgs_req_server{$4}++; + $tgs_req_addr{$3}++; + $tgs_req_addr_nonlocal{$3}++ if (!islocaladdr($3)); + $last_addr = $3; + $last_principal = $1; + $ip{$2}++; + + my $source = $1; + my $dest = $4; + + if (!islocalrealm($source)) { + $tgs_xrealm_in++; + $tgs_xrealm_in_princ{$source}++; + if ($source =~ /[^@]+@([^@]+)/ ) { + $tgs_xrealm_in_realm{$1}++; + } + } + if ($dest =~ /krbtgt\/([^@]+)@[^@]+/) { + if (!islocalrealm($1)) { + $tgs_xrealm_out++; + $tgs_xrealm_out_realm{$1}++; + $tgs_xrealm_out_princ{$source}++; + } + } + } elsif (/524-REQ (.*) from IPv([46]):([0-9\.:a-fA-F]+) for (.*)$/) { + $five24_req++; + $five24_req_client{$1}++; + $five24_req_server{$4}++; + $five24_req_addr{$3}++; + $five24_req_addr_nonlocal{$3}++ if (!islocaladdr($3)); + $last_addr = $3; + $last_principal = $1; + $ip{$2}++; + } elsif (/TCP data of strange type from IPv[46]:([0-9\.:a-fA-F]+)/) { + $strange_tcp_data{$1}++; + } elsif (/Lookup (.*) failed: No such entry in the database/) { + $no_such_princ++; + $no_such_princ_addr{$last_addr}++; + $no_such_princ_addr_nonlocal{$last_addr}++ if (!islocaladdr($last_addr)); + $no_such_princ_princ{$1}++; + } elsif (/Lookup .* succeeded$/) { + # Nothing + } elsif (/Malformed HTTP request from IPv[46]:([0-9\.:a-fA-F]+)$/) { + $http_malformed++; + $http_malformed_addr{$1}++; + } elsif (/TCP-connection from IPv[46]:([0-9\.:a-fA-F]+) expired after [0-9]+ bytes/) { + $tcp_conn_timeout++; + $tcp_conn_timeout_addr{$1}++; + } elsif (/Failed processing [0-9]+ byte request from IPv[46]:([0-9\.:a-fA-F]+)/) { + $failed_processing++; + $failed_processing_addr{$1}++; + } elsif (/connection closed before end of data after [0-9]+ bytes from IPv[46]:([0-9\.:a-fA-F]+)/) { + $connection_closed++; + $connection_closed_addr{$1}++; + } elsif (/HTTP request from IPv[46]:([0-9\.:a-fA-F]+) is non KDC request/) { + $http_non_kdc++; + $http_non_kdc_addr{$1}++; + } elsif (/returning a referral to realm (.*) for server (.*) that was not found/) { + $referrals++; + $referral_princ{$2}++; + $referral_realm{$1}++; + } elsif (/krb4 Cross-realm (.*) -> (.*) disabled/) { + $v4_cross++; + $v4_cross_realm{$1."->".$2}++; + } elsif (/524 cross-realm (.*) -> (.*) disabled/) { + $v4_cross++; + $v4_cross_realm{$1."->".$2}++; + } elsif (/cross-realm (.*) -> (.*): no transit through realm (.*)/) { + } elsif (/cross-realm (.*) -> (.*) via \[([^\]]+)\]/) { + $v5_cross++; + $v5_cross_realm{$1."->".$2}++; + } elsif (/cross-realm (.*) -> (.*)/) { + $v5_cross++; + $v5_cross_realm{$1."->".$2}++; + } elsif (/sending ([0-9]+) bytes to IPv[46]:([0-9\.:a-fA-F]+)/) { + $bw_addr{$2} += $1; + } elsif (/Using ([-a-z0-9]+)\/([-a-z0-9]+)/) { + $enctype_ticket{$1}++; + $enctype_session{$2}++; + + my $ticket = $1; + my $session = $2; + + if ($ticket =~ /des-cbc-(crc|md4|md5)/) { + $addr_uses_des{$last_addr}++; + $princ_uses_des{$last_principal}++; + } + + } elsif (/Failed to decrypt PA-DATA -- (.+)$/) { + $pa_failed++; + $pa_failed_princ{$last_principal}++; + $pa_failed_addr{$last_addr}++; + + } elsif (/Request to forward non-forwardable ticket/) { + $forward_non_forward++; + } elsif (/HTTP request:/) { + } elsif (/krb_rd_req: Incorrect network address/) { + } elsif (/krb_rd_req: Ticket expired \(krb_rd_req\)/) { + } elsif (/Ticket expired \(.*\)/) { + } elsif (/krb_rd_req: Can't decode authenticator \(krb_rd_req\)/) { + } elsif (/Request from wrong address/) { + # XXX + } elsif (/UNKNOWN --/) { + # XXX + } elsif (/Too large time skew -- (.*)$/) { + # XXX + } elsif (/No PA-ENC-TIMESTAMP --/) { + # XXX + } elsif (/Looking for pa-data --/) { + # XXX + } elsif (/Pre-authentication succeded -- (.+)$/) { + # XXX + } elsif (/Bad request for ([,a-zA-Z0-9]+) ticket/) { + # XXX + } elsif (/Failed to verify AP-REQ: Ticket expired/) { + # XXX + } elsif (/Client not found in database:/) { + # XXX + } elsif (/Server not found in database \(krb4\)/) { + } elsif (/Server not found in database:/) { + # XXX + } elsif (/newsyslog.*logfile turned over/) { + # Nothing + } elsif (/Requested flags:/) { + # Nothing + } elsif (/shutting down/) { + # Nothing + } elsif (/listening on IP/) { + # Nothing + } elsif (/commencing operation/) { + $restarts++; + } + # + # Log it if we didn't parse the line + # + else { + print "Unknown log file line: $_"; + } +} + +sub topten { + my ($list) = @_; + my @keys; + + my $key; + + @keys = (sort {$$list{$b} <=> $$list{$a}} (keys %{$list})); + splice @keys, 10; + + foreach $key (@keys) { + print "\t\t$key - $$list{$key}\n"; + } +} + +sub islocaladdr (\$) { + my ($addr) = @_; + my $net; + + foreach $net (@local_networks_re) { + return 1 if ($addr =~ /$net/); + } + return 0; +} + +sub islocalrealm (\$) { + my ($princ) = @_; + my $realm; + + foreach $realm (@local_realms) { + return 1 if ($princ eq $realm); + return 1 if ($princ =~ /[^@]+\@${realm}/); + } + return 0; +} diff --git a/crypto/heimdal/tools/krb5-config.1 b/crypto/heimdal/tools/krb5-config.1 new file mode 100644 index 0000000..6d004b5 --- /dev/null +++ b/crypto/heimdal/tools/krb5-config.1 @@ -0,0 +1,88 @@ +.\" Copyright (c) 2000 - 2001 Kungliga Tekniska Högskolan +.\" (Royal Institute of Technology, Stockholm, Sweden). +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" 3. Neither the name of the Institute nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd November 30, 2000 +.Dt KRB5-CONFIG 1 +.Os HEIMDAL +.Sh NAME +.Nm krb5-config +.Nd "give information on how to link code against Heimdal libraries" +.Sh SYNOPSIS +.Nm +.Op Fl Fl prefix Ns Op = Ns Ar dir +.Op Fl Fl exec-prefix Ns Op = Ns Ar dir +.Op Fl Fl libs +.Op Fl Fl cflags +.Op Ar libraries +.Sh DESCRIPTION +.Nm +tells the application programmer what special flags to use to compile +and link programs against the libraries installed by Heimdal. +.Pp +Options supported: +.Bl -tag -width Ds +.It Fl Fl prefix Ns Op = Ns Ar dir +Print the prefix if no +.Ar dir +is specified, otherwise set prefix to +.Ar dir . +.It Fl Fl exec-prefix Ns Op = Ns Ar dir +Print the exec-prefix if no +.Ar dir +is specified, otherwise set exec-prefix to +.Ar dir . +.It Fl Fl libs +Output the set of libraries that should be linked against. +.It Fl Fl cflags +Output the set of flags to give to the C compiler when using the +Heimdal libraries. +.El +.Pp +By default +.Nm +will output the set of flags and libraries to be used by a normal +program using the krb5 API. The user can also supply a library to be +used, the supported ones are: +.Bl -tag -width Ds +.It krb5 +(the default) +.It gssapi +use the krb5 gssapi mechanism +.It kadm-client +use the client-side kadmin libraries +.It kadm-server +use the server-side kadmin libraries +.El +.Sh SEE ALSO +.Xr cc 1 +.Sh HISTORY +.Nm +appeared in Heimdal 0.3d. diff --git a/crypto/heimdal/tools/krb5-config.in b/crypto/heimdal/tools/krb5-config.in new file mode 100755 index 0000000..8bbbf80 --- /dev/null +++ b/crypto/heimdal/tools/krb5-config.in @@ -0,0 +1,148 @@ +#!/bin/sh +# +# Copyright (c) 2000 - 2008 Kungliga Tekniska Högskolan +# (Royal Institute of Technology, Stockholm, Sweden). +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 3. Neither the name of the Institute nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# + +do_libs=no +do_cflags=no +do_usage=no +print_prefix=no +print_exec_prefix=no +library=krb5 + +if test $# -eq 0; then + do_usage=yes + usage_exit=1 +fi + +for i in $*; do + case $i in + --help) + do_usage=yes + usage_exit=0 + ;; + --version) + echo "@PACKAGE@ @VERSION@" + exit 0 + ;; + --prefix=*) + prefix=`echo $i | sed 's/^--prefix=//'` + ;; + --prefix) + print_prefix=yes + ;; + --exec-prefix=*) + exec_prefix=`echo $i | sed 's/^--exec-prefix=//'` + ;; + --exec-prefix) + print_exec_prefix=yes + ;; + --libs) + do_libs=yes + ;; + --cflags) + do_cflags=yes + ;; + krb5) + library=krb5 + ;; + gssapi) + library=gssapi + ;; + kadm-client) + library=kadm-client + ;; + kadm-server) + library=kadm-server + ;; + kafs) + library=kafs + ;; + *) + echo "unknown option: $i" + exit 1 + ;; + esac +done + +if test "$do_usage" = "yes"; then + echo "usage: $0 [options] [libraries]" + echo "options: [--prefix[=dir]] [--exec-prefix[=dir]] [--libs] [--cflags]" + echo "libraries: krb5 gssapi kadm-client kadm-server kafs" + exit $usage_exit +fi + +if test "$prefix" = ""; then + prefix=@prefix@ +fi +if test "$exec_prefix" = ""; then + exec_prefix=@exec_prefix@ +fi + +libdir=@libdir@ +includedir=@includedir@ + +if test "$print_prefix" = "yes"; then + echo $prefix +fi + +if test "$print_exec_prefix" = "yes"; then + echo $exec_prefix +fi + +if test "$do_libs" = "yes"; then + lib_flags="-L${libdir}" + case $library in + gssapi) + lib_flags="$lib_flags -lgssapi -lheimntlm" + ;; + kadm-client) + lib_flags="$lib_flags -lkadm5clnt" + ;; + kadm-server) + lib_flags="$lib_flags -lkadm5srv @LIB_dbopen@" + ;; + kafs) + lib_flags="$lib_flags -lkafs" + ;; + esac + lib_flags="$lib_flags -lkrb5 @LIB_pkinit@ -lcom_err" + lib_flags="$lib_flags @LIB_hcrypto_appl@ -lasn1 -lwind -lroken" + lib_flags="$lib_flags @LIB_crypt@ @PTHREAD_LIBADD@ @LIB_dlopen@" + lib_flags="$lib_flags @LIB_door_create@ @LIBS@" + echo $lib_flags +fi +if test "$do_cflags" = "yes"; then + echo "-I${includedir} @INCLUDE_hcrypto@" +fi + +exit 0 |