pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

security/heimdal update to v7.5.0 - See TODO file.



Module Name:	pkgsrc-wip
Committed By:	Sevan Janiyan <venture37%geeklan.co.uk@localhost>
Pushed By:	sevan
Date:		Wed Dec 26 21:18:35 2018 +0000
Changeset:	78bba0bdba769c365b0cafcbbb2925ee14f41bfc

Added Files:
	heimdal/DESCR
	heimdal/Makefile
	heimdal/PLIST
	heimdal/PLIST.OpenBSD
	heimdal/TODO
	heimdal/buildlink3.mk
	heimdal/builtin.mk
	heimdal/distinfo
	heimdal/files/kadmind.sh
	heimdal/files/kcm.sh
	heimdal/files/kdc.sh
	heimdal/files/kpasswdd.sh
	heimdal/files/krb5-config
	heimdal/options.mk
	heimdal/patches/patch-lib_libedit_configure

Log Message:
security/heimdal update to v7.5.0 - See TODO file.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=78bba0bdba769c365b0cafcbbb2925ee14f41bfc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 heimdal/DESCR                               |   11 +
 heimdal/Makefile                            |  136 +++
 heimdal/PLIST                               | 1213 +++++++++++++++++++++++++++
 heimdal/PLIST.OpenBSD                       |    2 +
 heimdal/TODO                                |    4 +
 heimdal/buildlink3.mk                       |   32 +
 heimdal/builtin.mk                          |  136 +++
 heimdal/distinfo                            |    7 +
 heimdal/files/kadmind.sh                    |   33 +
 heimdal/files/kcm.sh                        |   18 +
 heimdal/files/kdc.sh                        |   18 +
 heimdal/files/kpasswdd.sh                   |   33 +
 heimdal/files/krb5-config                   |  107 +++
 heimdal/options.mk                          |   66 ++
 heimdal/patches/patch-lib_libedit_configure |  159 ++++
 15 files changed, 1975 insertions(+)

diffs:
diff --git a/heimdal/DESCR b/heimdal/DESCR
new file mode 100644
index 0000000000..99134b3953
--- /dev/null
+++ b/heimdal/DESCR
@@ -0,0 +1,11 @@
+Heimdal is a free implementation of Kerberos 5.
+
+Kerberos is a system for authenticating users and services on a network.
+It is built upon the assumption that the network is "unsafe".  Kerberos
+is a trusted third-party service.  That means that there is a third
+party (the Kerberos server) that is trusted by all the entities on the
+network (users and services, usually called "principals").  All
+principals share a secret password (or key) with the Kerberos server and
+this enables principals to verify that the messages from the Kerberos
+server are authentic.  Thus trusting the Kerberos server, users and
+services can authenticate each other.
diff --git a/heimdal/Makefile b/heimdal/Makefile
new file mode 100644
index 0000000000..7c44aa4d04
--- /dev/null
+++ b/heimdal/Makefile
@@ -0,0 +1,136 @@
+# $NetBSD: Makefile,v 1.129 2018/12/09 18:52:07 adam Exp $
+
+DISTNAME=	heimdal-7.5.0
+CATEGORIES=	security
+MASTER_SITES=	${MASTER_SITE_GITHUB:=heimdal/}
+GITHUB_PROJECT= heimdal
+GITHUB_RELEASE= ${DISTNAME}
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://www.h5l.org/
+COMMENT=	Kerberos 5 implementation
+LICENSE=	modified-bsd
+
+CONFLICTS+=	arla-[0-9]*
+CONFLICTS+=	mit-krb5-[0-9]*
+CONFLICTS+=	openafs-[0-9]*
+CONFLICTS+=	gss-[0-9]*
+CONFLICTS+=	kth-krb4-[0-9]*
+
+MAKE_JOBS_SAFE=	no
+
+USE_LIBTOOL=		yes
+USE_TOOLS+=		bison flex:run
+PKGCONFIG_OVERRIDE+=	tools/heimdal-gssapi.pc.in
+MAKE_ENV+=		INSTALL_CATPAGES=no
+
+.include "../../mk/bsd.prefs.mk"
+.include "options.mk"
+
+HEIMDAL_HDB_DIR=	${VARBASE}/heimdal
+
+GNU_CONFIGURE=		yes
+CONFIGURE_ARGS+=	--enable-kcm
+CONFIGURE_ARGS+=	--enable-pthread-support
+CONFIGURE_ARGS+=	--includedir=${PREFIX}/include/krb5
+CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+=	--with-hdbdir=${HEIMDAL_HDB_DIR}
+CONFIGURE_ARGS+=	--with-openssl=${SSLBASE:Q}
+CONFIGURE_ARGS+=	--with-sqlite3=${BUILDLINK_PREFIX.sqlite3}
+CONFIGURE_ARGS+=	--without-x
+CONFIGURE_ARGS+=	${ABI:D--with-mips-abi=${ABI}}
+CONFIGURE_ENV+=		COMPILE_ET=no	# build Heimdal's compile_et(1)
+# XXX Grand Central Dispatch is broken in 1.4
+CONFIGURE_ENV+=		ac_cv_funclib_dispatch_async_f=no
+
+.include "../../mk/bdb.buildlink3.mk"
+
+# XXX Don't detect db1 when a newer version is available; otherwise build fails
+.if ${BDB_TYPE} != "db1"
+CONFIGURE_ENV+=		ac_cv_funclib_dbopen=no
+.endif
+
+CFLAGS.Darwin+=		-DBIND_8_COMPAT
+
+# Newer illumos has extended functions in glob(3C) but it's easier to
+# say it doesn't for simpler PLIST.glob handling.
+CONFIGURE_ENV.SunOS+=	ac_cv_func_glob_working=no
+
+# Though Solaris has a <vis.h> header, it does something very unrelated
+# to the BSD <vis.h> header.
+CONFIGURE_ENV.SunOS+=	ac_cv_header_vis_h=no
+
+.include "../../mk/readline.buildlink3.mk"
+
+.if ${READLINE_TYPE} == "readline"
+CONFIGURE_ARGS+=	--with-readline=${BUILDLINK_PREFIX.editlinereadline}
+.elif ${READLINE_TYPE} == "editline"
+CONFIGURE_ARGS+=	--with-libedit=${BUILDLINK_PREFIX.editlinereadline}
+.endif
+
+PLIST_VARS+=		glob vis
+.if ${OPSYS} == "SunOS"
+PLIST.vis=	yes
+PLIST.glob=	yes
+.endif
+
+# Linux does not have include/vis.h and expected include/glob.h.
+.if ${OPSYS} == "Linux"
+PLIST.vis=	yes
+PLIST.glob=	yes
+# Without this I get undefined references to pthread_getspecific
+PTHREAD_AUTO_VARS=	yes
+.endif
+
+PLIST_VARS+=		afskauth hcrypto
+.if ${OPSYS} == "IRIX"
+PLIST.afskauth=		yes
+.endif
+
+OWN_DIRS_PERMS=		${HEIMDAL_HDB_DIR} ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
+SPECIAL_PERMS+=		${PREFIX}/bin/otp ${SETUID_ROOT_PERMS}
+SPECIAL_PERMS=		${PREFIX}/bin/${KRB5_PREFIX}su ${SETUID_ROOT_PERMS}
+RCD_SCRIPTS=		kadmind kcm kdc kpasswdd
+INFO_FILES=		yes
+
+TEST_TARGET=		check
+
+# remove manpages conficting with OpenSSL keeping only the important ones
+pre-configure:
+	cd ${WRKSRC}/doc/doxyout/hcrypto && \
+	${GREP} -e /hcrypto_ -e /page_ manpages > manpages.new && \
+	mv manpages.new manpages
+
+# Avoid 'cat: cannot open ./localefiles: No such file or directory'
+pre-build:
+	${TOUCH} ${WRKSRC}/po/localefiles
+
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+CHECK_BUILTIN.openssl:=	yes
+.include "../../security/openssl/builtin.mk"
+CHECK_BUILTIN.openssl:=no
+.if ${MACHINE_PLATFORM:MNetBSD-[1-3]*} != "" || \
+    (${OPSYS} == "SunOS" && !empty(USE_BUILTIN.openssl:Myes) &&	\
+		!empty(BUILTIN_LIB_FOUND.crypto:M[Nn][Oo]))
+PLIST.hcrypto=		yes
+.endif
+
+.if ${OPSYS} == "MirBSD"
+.if !empty(USE_BUILTIN.openssl:Myes)
+PLIST.hcrypto=		yes
+.endif
+PLIST.vis=		yes
+# all of the tools need to link against pthread, force it.
+PTHREAD_AUTO_VARS=	yes
+.endif
+
+.if ${OPSYS} == "Minix"
+# all of the tools need to link against pthread, force it.
+PTHREAD_AUTO_VARS=	yes
+.endif
+
+.include "../../mk/termcap.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/readline.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/heimdal/PLIST b/heimdal/PLIST
new file mode 100644
index 0000000000..4b8ff094b5
--- /dev/null
+++ b/heimdal/PLIST
@@ -0,0 +1,1213 @@
+@comment $NetBSD$
+bin/afslog
+bin/bsearch
+bin/gsstool
+bin/heimtools
+bin/hxtool
+bin/idn-lookup
+bin/kadmin
+bin/kdestroy
+bin/kf
+bin/kgetcred
+bin/kinit
+bin/klist
+bin/kpasswd
+bin/krb5-config
+bin/kswitch
+bin/ktutil
+bin/otp
+bin/otpprint
+bin/pagsh
+bin/string2key
+bin/su
+bin/verify_krb5_conf
+include/krb5/asn1-common.h
+include/krb5/asn1_err.h
+include/krb5/base64.h
+include/krb5/cms_asn1.h
+include/krb5/com_err.h
+include/krb5/com_right.h
+include/krb5/crmf_asn1.h
+include/krb5/der-private.h
+include/krb5/der-protos.h
+include/krb5/der.h
+include/krb5/digest_asn1.h
+include/krb5/getarg.h
+include/krb5/gssapi.h
+include/krb5/gssapi/gkrb5_err.h
+include/krb5/gssapi/gssapi.h
+include/krb5/gssapi/gssapi_krb5.h
+include/krb5/gssapi/gssapi_ntlm.h
+include/krb5/gssapi/gssapi_oid.h
+include/krb5/gssapi/gssapi_spnego.h
+${PLIST.hcrypto}include/krb5/hcrypto/aes.h
+${PLIST.hcrypto}include/krb5/hcrypto/bn.h
+${PLIST.hcrypto}include/krb5/hcrypto/des.h
+${PLIST.hcrypto}include/krb5/hcrypto/dh.h
+${PLIST.hcrypto}include/krb5/hcrypto/dsa.h
+${PLIST.hcrypto}include/krb5/hcrypto/ec.h
+${PLIST.hcrypto}include/krb5/hcrypto/ecdh.h
+${PLIST.hcrypto}include/krb5/hcrypto/ecdsa.h
+${PLIST.hcrypto}include/krb5/hcrypto/engine.h
+${PLIST.hcrypto}include/krb5/hcrypto/evp-cc.h
+${PLIST.hcrypto}include/krb5/hcrypto/evp-hcrypto.h
+${PLIST.hcrypto}include/krb5/hcrypto/evp-openssl.h
+${PLIST.hcrypto}include/krb5/hcrypto/evp-pkcs11.h
+${PLIST.hcrypto}include/krb5/hcrypto/evp.h
+${PLIST.hcrypto}include/krb5/hcrypto/hmac.h
+${PLIST.hcrypto}include/krb5/hcrypto/md2.h
+${PLIST.hcrypto}include/krb5/hcrypto/md4.h
+${PLIST.hcrypto}include/krb5/hcrypto/md5.h
+${PLIST.hcrypto}include/krb5/hcrypto/pkcs12.h
+${PLIST.hcrypto}include/krb5/hcrypto/rand.h
+${PLIST.hcrypto}include/krb5/hcrypto/rc2.h
+${PLIST.hcrypto}include/krb5/hcrypto/rc4.h
+${PLIST.hcrypto}include/krb5/hcrypto/rsa.h
+${PLIST.hcrypto}include/krb5/hcrypto/sha.h
+${PLIST.hcrypto}include/krb5/hcrypto/ui.h
+${PLIST.hcrypto}include/krb5/hcrypto/undef.h
+include/krb5/hdb-protos.h
+include/krb5/hdb.h
+include/krb5/hdb_asn1.h
+include/krb5/hdb_err.h
+include/krb5/heim-ipc.h
+include/krb5/heim_asn1.h
+include/krb5/heim_err.h
+include/krb5/heimbase.h
+include/krb5/heimntlm-protos.h
+include/krb5/heimntlm.h
+include/krb5/hex.h
+include/krb5/hx509-protos.h
+include/krb5/hx509.h
+include/krb5/hx509_err.h
+include/krb5/k524_err.h
+include/krb5/kadm5/admin.h
+include/krb5/kadm5/kadm5-private.h
+include/krb5/kadm5/kadm5-protos.h
+include/krb5/kadm5/kadm5-pwcheck.h
+include/krb5/kadm5/kadm5_err.h
+include/krb5/kadm5/private.h
+include/krb5/kafs.h
+include/krb5/kdc-protos.h
+include/krb5/kdc.h
+include/krb5/krb5-protos.h
+include/krb5/krb5-types.h
+include/krb5/krb5.h
+include/krb5/krb5/an2ln_plugin.h
+include/krb5/krb5/ccache_plugin.h
+include/krb5/krb5/db_plugin.h
+include/krb5/krb5/locate_plugin.h
+include/krb5/krb5/send_to_kdc_plugin.h
+include/krb5/krb5/windc_plugin.h
+include/krb5/krb5_asn1.h
+include/krb5/krb5_ccapi.h
+include/krb5/krb5_err.h
+include/krb5/kx509_asn1.h
+include/krb5/ntlm_err.h
+include/krb5/ocsp_asn1.h
+include/krb5/otp.h
+include/krb5/parse_bytes.h
+include/krb5/parse_time.h
+include/krb5/parse_units.h
+include/krb5/pkcs10_asn1.h
+include/krb5/pkcs12_asn1.h
+include/krb5/pkcs8_asn1.h
+include/krb5/pkcs9_asn1.h
+include/krb5/pkinit_asn1.h
+include/krb5/resolve.h
+include/krb5/rfc2459_asn1.h
+include/krb5/roken-common.h
+include/krb5/roken.h
+include/krb5/rtbl.h
+include/krb5/sl.h
+include/krb5/wind.h
+include/krb5/wind_err.h
+include/krb5/xdbm.h
+info/heimdal.info
+info/hx509.info
+lib/libasn1.la
+lib/libcom_err.la
+lib/libgssapi.la
+${PLIST.hcrypto}lib/libhcrypto.la
+lib/libhdb.la
+lib/libheimbase.la
+lib/libheimntlm.la
+lib/libhx509.la
+lib/libkadm5clnt.la
+lib/libkadm5srv.la
+lib/libkafs.la
+lib/libkdc.la
+lib/libkrb5.la
+lib/libotp.la
+lib/libroken.la
+lib/libsl.la
+lib/libwind.la
+lib/pkgconfig/heimdal-gssapi.pc
+lib/pkgconfig/heimdal-kadm-client.pc
+lib/pkgconfig/heimdal-kadm-server.pc
+lib/pkgconfig/heimdal-krb5.pc
+lib/pkgconfig/kadm-client.pc
+lib/pkgconfig/kadm-server.pc
+lib/pkgconfig/kafs.pc
+lib/pkgconfig/krb5-gssapi.pc
+lib/pkgconfig/krb5.pc
+lib/windc.la
+libexec/digest-service
+libexec/heimdal/asn1_compile
+libexec/heimdal/asn1_print
+libexec/heimdal/slc
+libexec/hprop
+libexec/hpropd
+libexec/ipropd-master
+libexec/ipropd-slave
+libexec/kadmind
+libexec/kcm
+libexec/kdc
+libexec/kdigest
+libexec/kfd
+libexec/kimpersonate
+libexec/kpasswdd
+man/man1/afslog.1
+man/man1/bsearch.1
+man/man1/kadmin.1
+man/man1/kdestroy.1
+man/man1/kf.1
+man/man1/kgetcred.1
+man/man1/kinit.1
+man/man1/klist.1
+man/man1/kpasswd.1
+man/man1/krb5-config.1
+man/man1/kswitch.1
+man/man1/ktutil.1
+man/man1/otp.1
+man/man1/otpprint.1
+man/man1/pagsh.1
+man/man1/su.1
+man/man3/HDB.3
+man/man3/arg_printusage.3
+man/man3/data.3
+man/man3/ecalloc.3
+man/man3/emalloc.3
+man/man3/eread.3
+man/man3/erealloc.3
+man/man3/esetenv.3
+man/man3/estrdup.3
+man/man3/ewrite.3
+man/man3/getarg.3
+man/man3/gss_accept_sec_context.3
+man/man3/gss_acquire_cred.3
+man/man3/gss_add_cred.3
+man/man3/gss_add_oid_set_member.3
+man/man3/gss_canonicalize_name.3
+man/man3/gss_compare_name.3
+man/man3/gss_context_time.3
+man/man3/gss_create_empty_oid_set.3
+man/man3/gss_delete_sec_context.3
+man/man3/gss_display_name.3
+man/man3/gss_display_status.3
+man/man3/gss_duplicate_name.3
+man/man3/gss_export_name.3
+man/man3/gss_export_sec_context.3
+man/man3/gss_get_mic.3
+man/man3/gss_import_name.3
+man/man3/gss_import_sec_context.3
+man/man3/gss_indicate_mechs.3
+man/man3/gss_init_sec_context.3
+man/man3/gss_inquire_attrs_for_mech.3
+man/man3/gss_inquire_context.3
+man/man3/gss_inquire_cred.3
+man/man3/gss_inquire_cred_by_mech.3
+man/man3/gss_inquire_mechs_for_name.3
+man/man3/gss_inquire_names_for_mech.3
+man/man3/gss_inquire_saslname_for_mech.3
+man/man3/gss_krb5_ccache_name.3
+man/man3/gss_krb5_compat_des3_mic.3
+man/man3/gss_krb5_copy_ccache.3
+man/man3/gss_krb5_get_tkt_flags.3
+man/man3/gss_krb5_import_ccache.3
+man/man3/gss_krb5_import_cred.3
+man/man3/gss_oid_equal.3
+man/man3/gss_process_context_token.3
+man/man3/gss_release_buffer.3
+man/man3/gss_release_cred.3
+man/man3/gss_release_iov_buffer.3
+man/man3/gss_release_name.3
+man/man3/gss_release_oid_set.3
+man/man3/gss_seal.3
+man/man3/gss_sign.3
+man/man3/gss_test_oid_set_member.3
+man/man3/gss_unseal.3
+man/man3/gss_unwrap.3
+man/man3/gss_unwrap_iov.3
+man/man3/gss_verify.3
+man/man3/gss_verify_mic.3
+man/man3/gss_wrap.3
+man/man3/gss_wrap_iov.3
+man/man3/gss_wrap_iov_length.3
+man/man3/gss_wrap_size_limit.3
+man/man3/gssapi.3
+man/man3/gssapi_mechs_intro.3
+man/man3/gssapi_services_intro.3
+man/man3/gsskrb5_extract_authz_data_from_sec_context.3
+man/man3/gsskrb5_register_acceptor_identity.3
+man/man3/hcrypto_core.3
+man/man3/hcrypto_des.3
+man/man3/hcrypto_dh.3
+man/man3/hcrypto_evp.3
+man/man3/hcrypto_misc.3
+man/man3/hcrypto_rand.3
+man/man3/hcrypto_rsa.3
+man/man3/hdb__del.3
+man/man3/hdb__get.3
+man/man3/hdb__put.3
+man/man3/hdb_auth_status.3
+man/man3/hdb_check_constrained_delegation.3
+man/man3/hdb_check_pkinit_ms_upn_match.3
+man/man3/hdb_check_s4u2self.3
+man/man3/hdb_close.3
+man/man3/hdb_destroy.3
+man/man3/hdb_entry_ex.3
+man/man3/hdb_fetch_kvno.3
+man/man3/hdb_firstkey.3
+man/man3/hdb_free.3
+man/man3/hdb_get_realms.3
+man/man3/hdb_lock.3
+man/man3/hdb_name.3
+man/man3/hdb_nextkey.3
+man/man3/hdb_open.3
+man/man3/hdb_password.3
+man/man3/hdb_remove.3
+man/man3/hdb_rename.3
+man/man3/hdb_store.3
+man/man3/hdb_unlock.3
+man/man3/heim_ntlm_build_ntlm1_master.3
+man/man3/heim_ntlm_build_ntlm2_master.3
+man/man3/heim_ntlm_calculate_lm2.3
+man/man3/heim_ntlm_calculate_ntlm1.3
+man/man3/heim_ntlm_calculate_ntlm2.3
+man/man3/heim_ntlm_decode_targetinfo.3
+man/man3/heim_ntlm_encode_targetinfo.3
+man/man3/heim_ntlm_encode_type1.3
+man/man3/heim_ntlm_encode_type2.3
+man/man3/heim_ntlm_encode_type3.3
+man/man3/heim_ntlm_free_buf.3
+man/man3/heim_ntlm_free_targetinfo.3
+man/man3/heim_ntlm_free_type1.3
+man/man3/heim_ntlm_free_type2.3
+man/man3/heim_ntlm_free_type3.3
+man/man3/heim_ntlm_keyex_unwrap.3
+man/man3/heim_ntlm_nt_key.3
+man/man3/heim_ntlm_ntlmv2_key.3
+man/man3/heim_ntlm_verify_ntlm2.3
+man/man3/heimbase.3
+man/man3/hx509.3
+man/man3/hx509_bitstring_print.3
+man/man3/hx509_ca.3
+man/man3/hx509_ca_sign.3
+man/man3/hx509_ca_sign_self.3
+man/man3/hx509_ca_tbs_add_crl_dp_uri.3
+man/man3/hx509_ca_tbs_add_eku.3
+man/man3/hx509_ca_tbs_add_san_hostname.3
+man/man3/hx509_ca_tbs_add_san_jid.3
+man/man3/hx509_ca_tbs_add_san_ms_upn.3
+man/man3/hx509_ca_tbs_add_san_otherName.3
+man/man3/hx509_ca_tbs_add_san_pkinit.3
+man/man3/hx509_ca_tbs_add_san_rfc822name.3
+man/man3/hx509_ca_tbs_free.3
+man/man3/hx509_ca_tbs_init.3
+man/man3/hx509_ca_tbs_set_ca.3
+man/man3/hx509_ca_tbs_set_domaincontroller.3
+man/man3/hx509_ca_tbs_set_notAfter.3
+man/man3/hx509_ca_tbs_set_notAfter_lifetime.3
+man/man3/hx509_ca_tbs_set_notBefore.3
+man/man3/hx509_ca_tbs_set_proxy.3
+man/man3/hx509_ca_tbs_set_serialnumber.3
+man/man3/hx509_ca_tbs_set_signature_algorithm.3
+man/man3/hx509_ca_tbs_set_spki.3
+man/man3/hx509_ca_tbs_set_subject.3
+man/man3/hx509_ca_tbs_set_template.3
+man/man3/hx509_ca_tbs_set_unique.3
+man/man3/hx509_ca_tbs_subject_expand.3
+man/man3/hx509_ca_tbs_template_units.3
+man/man3/hx509_cert.3
+man/man3/hx509_cert_binary.3
+man/man3/hx509_cert_check_eku.3
+man/man3/hx509_cert_cmp.3
+man/man3/hx509_cert_find_subjectAltName_otherName.3
+man/man3/hx509_cert_free.3
+man/man3/hx509_cert_get_SPKI.3
+man/man3/hx509_cert_get_SPKI_AlgorithmIdentifier.3
+man/man3/hx509_cert_get_attribute.3
+man/man3/hx509_cert_get_base_subject.3
+man/man3/hx509_cert_get_friendly_name.3
+man/man3/hx509_cert_get_issuer.3
+man/man3/hx509_cert_get_issuer_unique_id.3
+man/man3/hx509_cert_get_notAfter.3
+man/man3/hx509_cert_get_notBefore.3
+man/man3/hx509_cert_get_serialnumber.3
+man/man3/hx509_cert_get_subject.3
+man/man3/hx509_cert_get_subject_unique_id.3
+man/man3/hx509_cert_init.3
+man/man3/hx509_cert_init_data.3
+man/man3/hx509_cert_keyusage_print.3
+man/man3/hx509_cert_ref.3
+man/man3/hx509_cert_set_friendly_name.3
+man/man3/hx509_certs_add.3
+man/man3/hx509_certs_append.3
+man/man3/hx509_certs_end_seq.3
+man/man3/hx509_certs_filter.3
+man/man3/hx509_certs_find.3
+man/man3/hx509_certs_free.3
+man/man3/hx509_certs_info.3
+man/man3/hx509_certs_init.3
+man/man3/hx509_certs_iter_f.3
+man/man3/hx509_certs_merge.3
+man/man3/hx509_certs_next_cert.3
+man/man3/hx509_certs_start_seq.3
+man/man3/hx509_certs_store.3
+man/man3/hx509_ci_print_names.3
+man/man3/hx509_clear_error_string.3
+man/man3/hx509_cms.3
+man/man3/hx509_cms_create_signed_1.3
+man/man3/hx509_cms_envelope_1.3
+man/man3/hx509_cms_unenvelope.3
+man/man3/hx509_cms_unwrap_ContentInfo.3
+man/man3/hx509_cms_verify_signed.3
+man/man3/hx509_cms_wrap_ContentInfo.3
+man/man3/hx509_context_free.3
+man/man3/hx509_context_init.3
+man/man3/hx509_context_set_missing_revoke.3
+man/man3/hx509_crl_add_revoked_certs.3
+man/man3/hx509_crl_alloc.3
+man/man3/hx509_crl_free.3
+man/man3/hx509_crl_lifetime.3
+man/man3/hx509_crl_sign.3
+man/man3/hx509_crypto.3
+man/man3/hx509_env.3
+man/man3/hx509_env_add.3
+man/man3/hx509_env_add_binding.3
+man/man3/hx509_env_find.3
+man/man3/hx509_env_find_binding.3
+man/man3/hx509_env_free.3
+man/man3/hx509_env_lfind.3
+man/man3/hx509_err.3
+man/man3/hx509_error.3
+man/man3/hx509_free_error_string.3
+man/man3/hx509_free_octet_string_list.3
+man/man3/hx509_general_name_unparse.3
+man/man3/hx509_get_error_string.3
+man/man3/hx509_get_one_cert.3
+man/man3/hx509_keyset.3
+man/man3/hx509_lock.3
+man/man3/hx509_misc.3
+man/man3/hx509_name.3
+man/man3/hx509_name_binary.3
+man/man3/hx509_name_cmp.3
+man/man3/hx509_name_copy.3
+man/man3/hx509_name_expand.3
+man/man3/hx509_name_free.3
+man/man3/hx509_name_is_null_p.3
+man/man3/hx509_name_to_Name.3
+man/man3/hx509_name_to_string.3
+man/man3/hx509_ocsp_request.3
+man/man3/hx509_ocsp_verify.3
+man/man3/hx509_oid_print.3
+man/man3/hx509_oid_sprint.3
+man/man3/hx509_parse_name.3
+man/man3/hx509_peer.3
+man/man3/hx509_peer_info_add_cms_alg.3
+man/man3/hx509_peer_info_alloc.3
+man/man3/hx509_peer_info_free.3
+man/man3/hx509_peer_info_set_cert.3
+man/man3/hx509_peer_info_set_cms_algs.3
+man/man3/hx509_print.3
+man/man3/hx509_print_cert.3
+man/man3/hx509_print_stdout.3
+man/man3/hx509_query.3
+man/man3/hx509_query_alloc.3
+man/man3/hx509_query_free.3
+man/man3/hx509_query_match_cmp_func.3
+man/man3/hx509_query_match_eku.3
+man/man3/hx509_query_match_friendly_name.3
+man/man3/hx509_query_match_issuer_serial.3
+man/man3/hx509_query_match_option.3
+man/man3/hx509_query_statistic_file.3
+man/man3/hx509_query_unparse_stats.3
+man/man3/hx509_revoke.3
+man/man3/hx509_revoke_add_crl.3
+man/man3/hx509_revoke_add_ocsp.3
+man/man3/hx509_revoke_free.3
+man/man3/hx509_revoke_init.3
+man/man3/hx509_revoke_ocsp_print.3
+man/man3/hx509_revoke_verify.3
+man/man3/hx509_set_error_string.3
+man/man3/hx509_set_error_stringv.3
+man/man3/hx509_unparse_der_name.3
+man/man3/hx509_validate_cert.3
+man/man3/hx509_validate_ctx_add_flags.3
+man/man3/hx509_validate_ctx_free.3
+man/man3/hx509_validate_ctx_init.3
+man/man3/hx509_validate_ctx_set_print.3
+man/man3/hx509_verify.3
+man/man3/hx509_verify_attach_anchors.3
+man/man3/hx509_verify_attach_revoke.3
+man/man3/hx509_verify_ctx_f_allow_default_trustanchors.3
+man/man3/hx509_verify_destroy_ctx.3
+man/man3/hx509_verify_hostname.3
+man/man3/hx509_verify_init_ctx.3
+man/man3/hx509_verify_path.3
+man/man3/hx509_verify_set_max_depth.3
+man/man3/hx509_verify_set_proxy_certificate.3
+man/man3/hx509_verify_set_strict_rfc3280_verification.3
+man/man3/hx509_verify_set_time.3
+man/man3/hx509_verify_signature.3
+man/man3/hx509_xfree.3
+man/man3/internal_v_smechname.3
+man/man3/k_afs_cell_of_file.3
+man/man3/k_hasafs.3
+man/man3/k_hasafs_recheck.3
+man/man3/k_pioctl.3
+man/man3/k_setpag.3
+man/man3/k_unlog.3
+man/man3/kadm5_add_passwd_quality_verifier.3
+man/man3/kadm5_check_password_quality.3
+man/man3/kadm5_pwcheck.3
+man/man3/kadm5_setup_passwd_quality_check.3
+man/man3/kafs.3
+man/man3/kafs_set_verbose.3
+man/man3/kafs_settoken.3
+man/man3/kafs_settoken5.3
+man/man3/kafs_settoken_rxkad.3
+man/man3/krb5.3
+man/man3/krb524_convert_creds_kdc.3
+man/man3/krb524_convert_creds_kdc_ccache.3
+man/man3/krb5_425_conv_principal.3
+man/man3/krb5_425_conv_principal_ext.3
+man/man3/krb5_524_conv_principal.3
+man/man3/krb5_abort.3
+man/man3/krb5_abortx.3
+man/man3/krb5_acc_ops.3
+man/man3/krb5_acl_match_file.3
+man/man3/krb5_acl_match_string.3
+man/man3/krb5_add_et_list.3
+man/man3/krb5_add_extra_addresses.3
+man/man3/krb5_add_ignore_addresses.3
+man/man3/krb5_addlog_dest.3
+man/man3/krb5_addlog_func.3
+man/man3/krb5_addr2sockaddr.3
+man/man3/krb5_address.3
+man/man3/krb5_address_compare.3
+man/man3/krb5_address_order.3
+man/man3/krb5_address_prefixlen_boundary.3
+man/man3/krb5_address_search.3
+man/man3/krb5_afslog.3
+man/man3/krb5_afslog_uid.3
+man/man3/krb5_allow_weak_crypto.3
+man/man3/krb5_aname_to_localname.3
+man/man3/krb5_anyaddr.3
+man/man3/krb5_appdefault.3
+man/man3/krb5_appdefault_boolean.3
+man/man3/krb5_appdefault_string.3
+man/man3/krb5_appdefault_time.3
+man/man3/krb5_append_addresses.3
+man/man3/krb5_auth.3
+man/man3/krb5_auth_con_addflags.3
+man/man3/krb5_auth_con_free.3
+man/man3/krb5_auth_con_genaddrs.3
+man/man3/krb5_auth_con_generatelocalsubkey.3
+man/man3/krb5_auth_con_getaddrs.3
+man/man3/krb5_auth_con_getauthenticator.3
+man/man3/krb5_auth_con_getflags.3
+man/man3/krb5_auth_con_getkey.3
+man/man3/krb5_auth_con_getlocalsubkey.3
+man/man3/krb5_auth_con_getrcache.3
+man/man3/krb5_auth_con_getremotesubkey.3
+man/man3/krb5_auth_con_getuserkey.3
+man/man3/krb5_auth_con_init.3
+man/man3/krb5_auth_con_initivector.3
+man/man3/krb5_auth_con_removeflags.3
+man/man3/krb5_auth_con_setaddrs.3
+man/man3/krb5_auth_con_setaddrs_from_fd.3
+man/man3/krb5_auth_con_setflags.3
+man/man3/krb5_auth_con_setivector.3
+man/man3/krb5_auth_con_setkey.3
+man/man3/krb5_auth_con_setlocalsubkey.3
+man/man3/krb5_auth_con_setrcache.3
+man/man3/krb5_auth_con_setremotesubkey.3
+man/man3/krb5_auth_con_setuserkey.3
+man/man3/krb5_auth_context.3
+man/man3/krb5_auth_getcksumtype.3
+man/man3/krb5_auth_getkeytype.3
+man/man3/krb5_auth_getlocalseqnumber.3
+man/man3/krb5_auth_getremoteseqnumber.3
+man/man3/krb5_auth_setcksumtype.3
+man/man3/krb5_auth_setkeytype.3
+man/man3/krb5_auth_setlocalseqnumber.3
+man/man3/krb5_auth_setremoteseqnumber.3
+man/man3/krb5_build_ap_req.3
+man/man3/krb5_build_principal.3
+man/man3/krb5_build_principal_ext.3
+man/man3/krb5_build_principal_va.3
+man/man3/krb5_build_principal_va_ext.3
+man/man3/krb5_c_block_size.3
+man/man3/krb5_c_checksum_length.3
+man/man3/krb5_c_decrypt.3
+man/man3/krb5_c_encrypt.3
+man/man3/krb5_c_encrypt_length.3
+man/man3/krb5_c_enctype_compare.3
+man/man3/krb5_c_get_checksum.3
+man/man3/krb5_c_is_coll_proof_cksum.3
+man/man3/krb5_c_is_keyed_cksum.3
+man/man3/krb5_c_keylength.3
+man/man3/krb5_c_make_checksum.3
+man/man3/krb5_c_make_random_key.3
+man/man3/krb5_c_set_checksum.3
+man/man3/krb5_c_valid_cksumtype.3
+man/man3/krb5_c_valid_enctype.3
+man/man3/krb5_c_verify_checksum.3
+man/man3/krb5_cc_cache_end_seq_get.3
+man/man3/krb5_cc_cache_get_first.3
+man/man3/krb5_cc_cache_match.3
+man/man3/krb5_cc_cache_next.3
+man/man3/krb5_cc_clear_mcred.3
+man/man3/krb5_cc_close.3
+man/man3/krb5_cc_copy_cache.3
+man/man3/krb5_cc_copy_creds.3
+man/man3/krb5_cc_copy_match_f.3
+man/man3/krb5_cc_default.3
+man/man3/krb5_cc_default_name.3
+man/man3/krb5_cc_destroy.3
+man/man3/krb5_cc_end_seq_get.3
+man/man3/krb5_cc_gen_new.3
+man/man3/krb5_cc_get_config.3
+man/man3/krb5_cc_get_flags.3
+man/man3/krb5_cc_get_friendly_name.3
+man/man3/krb5_cc_get_full_name.3
+man/man3/krb5_cc_get_kdc_offset.3
+man/man3/krb5_cc_get_lifetime.3
+man/man3/krb5_cc_get_name.3
+man/man3/krb5_cc_get_ops.3
+man/man3/krb5_cc_get_prefix_ops.3
+man/man3/krb5_cc_get_principal.3
+man/man3/krb5_cc_get_type.3
+man/man3/krb5_cc_get_version.3
+man/man3/krb5_cc_initialize.3
+man/man3/krb5_cc_last_change_time.3
+man/man3/krb5_cc_move.3
+man/man3/krb5_cc_new_unique.3
+man/man3/krb5_cc_next_cred.3
+man/man3/krb5_cc_register.3
+man/man3/krb5_cc_remove_cred.3
+man/man3/krb5_cc_resolve.3
+man/man3/krb5_cc_retrieve_cred.3
+man/man3/krb5_cc_set_config.3
+man/man3/krb5_cc_set_default_name.3
+man/man3/krb5_cc_set_flags.3
+man/man3/krb5_cc_set_friendly_name.3
+man/man3/krb5_cc_set_kdc_offset.3
+man/man3/krb5_cc_start_seq_get.3
+man/man3/krb5_cc_store_cred.3
+man/man3/krb5_cc_support_switch.3
+man/man3/krb5_cc_switch.3
+man/man3/krb5_ccache.3
+man/man3/krb5_ccache_intro.3
+man/man3/krb5_cccol_cursor_free.3
+man/man3/krb5_cccol_cursor_new.3
+man/man3/krb5_cccol_cursor_next.3
+man/man3/krb5_cccol_last_change_time.3
+man/man3/krb5_change_password.3
+man/man3/krb5_check_transited.3
+man/man3/krb5_check_transited_realms.3
+man/man3/krb5_checksum.3
+man/man3/krb5_checksum_disable.3
+man/man3/krb5_checksum_is_collision_proof.3
+man/man3/krb5_checksum_is_keyed.3
+man/man3/krb5_checksumsize.3
+man/man3/krb5_cksumtype_to_enctype.3
+man/man3/krb5_cksumtype_valid.3
+man/man3/krb5_clear_error_message.3
+man/man3/krb5_clear_error_string.3
+man/man3/krb5_closelog.3
+man/man3/krb5_compare_creds.3
+man/man3/krb5_config_file_free.3
+man/man3/krb5_config_free_strings.3
+man/man3/krb5_config_get_bool.3
+man/man3/krb5_config_get_bool_default.3
+man/man3/krb5_config_get_list.3
+man/man3/krb5_config_get_string.3
+man/man3/krb5_config_get_string_default.3
+man/man3/krb5_config_get_strings.3
+man/man3/krb5_config_get_time.3
+man/man3/krb5_config_get_time_default.3
+man/man3/krb5_config_parse_file_multi.3
+man/man3/krb5_config_parse_string_multi.3
+man/man3/krb5_config_vget_bool.3
+man/man3/krb5_config_vget_bool_default.3
+man/man3/krb5_config_vget_list.3
+man/man3/krb5_config_vget_string.3
+man/man3/krb5_config_vget_string_default.3
+man/man3/krb5_config_vget_strings.3
+man/man3/krb5_config_vget_time.3
+man/man3/krb5_config_vget_time_default.3
+man/man3/krb5_context.3
+man/man3/krb5_copy_address.3
+man/man3/krb5_copy_addresses.3
+man/man3/krb5_copy_checksum.3
+man/man3/krb5_copy_context.3
+man/man3/krb5_copy_creds.3
+man/man3/krb5_copy_creds_contents.3
+man/man3/krb5_copy_data.3
+man/man3/krb5_copy_host_realm.3
+man/man3/krb5_copy_keyblock.3
+man/man3/krb5_copy_keyblock_contents.3
+man/man3/krb5_copy_principal.3
+man/man3/krb5_copy_ticket.3
+man/man3/krb5_create_checksum.3
+man/man3/krb5_create_checksum_iov.3
+man/man3/krb5_credential.3
+man/man3/krb5_creds.3
+man/man3/krb5_creds_get_ticket_flags.3
+man/man3/krb5_crypto.3
+man/man3/krb5_crypto_destroy.3
+man/man3/krb5_crypto_fx_cf2.3
+man/man3/krb5_crypto_get_checksum_type.3
+man/man3/krb5_crypto_getblocksize.3
+man/man3/krb5_crypto_getconfoundersize.3
+man/man3/krb5_crypto_getenctype.3
+man/man3/krb5_crypto_getpadsize.3
+man/man3/krb5_crypto_init.3
+man/man3/krb5_crypto_iov.3
+man/man3/krb5_crypto_overhead.3
+man/man3/krb5_data_alloc.3
+man/man3/krb5_data_cmp.3
+man/man3/krb5_data_copy.3
+man/man3/krb5_data_ct_cmp.3
+man/man3/krb5_data_free.3
+man/man3/krb5_data_realloc.3
+man/man3/krb5_data_zero.3
+man/man3/krb5_dcc_ops.3
+man/man3/krb5_decrypt.3
+man/man3/krb5_decrypt_EncryptedData.3
+man/man3/krb5_decrypt_iov_ivec.3
+man/man3/krb5_decrypt_ivec.3
+man/man3/krb5_decrypt_ticket.3
+man/man3/krb5_deprecated.3
+man/man3/krb5_digest.3
+man/man3/krb5_digest_alloc.3
+man/man3/krb5_digest_free.3
+man/man3/krb5_digest_get_a1_hash.3
+man/man3/krb5_digest_get_client_binding.3
+man/man3/krb5_digest_get_identifier.3
+man/man3/krb5_digest_get_opaque.3
+man/man3/krb5_digest_get_responseData.3
+man/man3/krb5_digest_get_rsp.3
+man/man3/krb5_digest_get_server_nonce.3
+man/man3/krb5_digest_get_tickets.3
+man/man3/krb5_digest_init_request.3
+man/man3/krb5_digest_probe.3
+man/man3/krb5_digest_request.3
+man/man3/krb5_digest_set_authentication_user.3
+man/man3/krb5_digest_set_authid.3
+man/man3/krb5_digest_set_client_nonce.3
+man/man3/krb5_digest_set_digest.3
+man/man3/krb5_digest_set_hostname.3
+man/man3/krb5_digest_set_identifier.3
+man/man3/krb5_digest_set_method.3
+man/man3/krb5_digest_set_nonceCount.3
+man/man3/krb5_digest_set_opaque.3
+man/man3/krb5_digest_set_qop.3
+man/man3/krb5_digest_set_realm.3
+man/man3/krb5_digest_set_server_cb.3
+man/man3/krb5_digest_set_server_nonce.3
+man/man3/krb5_digest_set_type.3
+man/man3/krb5_digest_set_uri.3
+man/man3/krb5_digest_set_username.3
+man/man3/krb5_domain_x500_decode.3
+man/man3/krb5_domain_x500_encode.3
+man/man3/krb5_eai_to_heim_errno.3
+man/man3/krb5_encrypt.3
+man/man3/krb5_encrypt_EncryptedData.3
+man/man3/krb5_encrypt_iov_ivec.3
+man/man3/krb5_encrypt_ivec.3
+man/man3/krb5_enctype_disable.3
+man/man3/krb5_enctype_enable.3
+man/man3/krb5_enctype_keysize.3
+man/man3/krb5_enctype_to_string.3
+man/man3/krb5_enctype_valid.3
+man/man3/krb5_enctypes_compatible_keys.3
+man/man3/krb5_err.3
+man/man3/krb5_error.3
+man/man3/krb5_error_from_rd_error.3
+man/man3/krb5_errx.3
+man/man3/krb5_expand_hostname.3
+man/man3/krb5_expand_hostname_realms.3
+man/man3/krb5_fcc_ops.3
+man/man3/krb5_fileformats.3
+man/man3/krb5_find_padata.3
+man/man3/krb5_format_time.3
+man/man3/krb5_free_address.3
+man/man3/krb5_free_addresses.3
+man/man3/krb5_free_authenticator.3
+man/man3/krb5_free_checksum.3
+man/man3/krb5_free_checksum_contents.3
+man/man3/krb5_free_config_files.3
+man/man3/krb5_free_context.3
+man/man3/krb5_free_cred_contents.3
+man/man3/krb5_free_creds.3
+man/man3/krb5_free_creds_contents.3
+man/man3/krb5_free_data.3
+man/man3/krb5_free_data_contents.3
+man/man3/krb5_free_error.3
+man/man3/krb5_free_error_contents.3
+man/man3/krb5_free_error_message.3
+man/man3/krb5_free_error_string.3
+man/man3/krb5_free_host_realm.3
+man/man3/krb5_free_kdc_rep.3
+man/man3/krb5_free_keyblock.3
+man/man3/krb5_free_keyblock_contents.3
+man/man3/krb5_free_krbhst.3
+man/man3/krb5_free_principal.3
+man/man3/krb5_free_salt.3
+man/man3/krb5_free_ticket.3
+man/man3/krb5_free_unparsed_name.3
+man/man3/krb5_fwd_tgt_creds.3
+man/man3/krb5_generate_random.3
+man/man3/krb5_generate_random_block.3
+man/man3/krb5_generate_subkey.3
+man/man3/krb5_generate_subkey_extended.3
+man/man3/krb5_get_all_client_addrs.3
+man/man3/krb5_get_all_server_addrs.3
+man/man3/krb5_get_cred_from_kdc.3
+man/man3/krb5_get_cred_from_kdc_opt.3
+man/man3/krb5_get_credentials.3
+man/man3/krb5_get_credentials_with_flags.3
+man/man3/krb5_get_creds.3
+man/man3/krb5_get_creds_opt_add_options.3
+man/man3/krb5_get_creds_opt_alloc.3
+man/man3/krb5_get_creds_opt_free.3
+man/man3/krb5_get_creds_opt_set_enctype.3
+man/man3/krb5_get_creds_opt_set_impersonate.3
+man/man3/krb5_get_creds_opt_set_options.3
+man/man3/krb5_get_creds_opt_set_ticket.3
+man/man3/krb5_get_default_config_files.3
+man/man3/krb5_get_default_in_tkt_etypes.3
+man/man3/krb5_get_default_principal.3
+man/man3/krb5_get_default_realm.3
+man/man3/krb5_get_default_realms.3
+man/man3/krb5_get_dns_canonicalize_hostname.3
+man/man3/krb5_get_dns_canonize_hostname.3
+man/man3/krb5_get_err_text.3
+man/man3/krb5_get_error_message.3
+man/man3/krb5_get_error_string.3
+man/man3/krb5_get_extra_addresses.3
+man/man3/krb5_get_fcache_version.3
+man/man3/krb5_get_forwarded_creds.3
+man/man3/krb5_get_host_realm.3
+man/man3/krb5_get_ignore_addresses.3
+man/man3/krb5_get_in_cred.3
+man/man3/krb5_get_in_tkt.3
+man/man3/krb5_get_in_tkt_with_keytab.3
+man/man3/krb5_get_in_tkt_with_password.3
+man/man3/krb5_get_in_tkt_with_skey.3
+man/man3/krb5_get_init_creds.3
+man/man3/krb5_get_init_creds_keyblock.3
+man/man3/krb5_get_init_creds_keytab.3
+man/man3/krb5_get_init_creds_opt.3
+man/man3/krb5_get_init_creds_opt_alloc.3
+man/man3/krb5_get_init_creds_opt_free.3
+man/man3/krb5_get_init_creds_opt_get_error.3
+man/man3/krb5_get_init_creds_opt_init.3
+man/man3/krb5_get_init_creds_opt_set_address_list.3
+man/man3/krb5_get_init_creds_opt_set_addressless.3
+man/man3/krb5_get_init_creds_opt_set_anonymous.3
+man/man3/krb5_get_init_creds_opt_set_canonicalize.3
+man/man3/krb5_get_init_creds_opt_set_default_flags.3
+man/man3/krb5_get_init_creds_opt_set_etype_list.3
+man/man3/krb5_get_init_creds_opt_set_forwardable.3
+man/man3/krb5_get_init_creds_opt_set_pa_password.3
+man/man3/krb5_get_init_creds_opt_set_paq_request.3
+man/man3/krb5_get_init_creds_opt_set_preauth_list.3
+man/man3/krb5_get_init_creds_opt_set_proxiable.3
+man/man3/krb5_get_init_creds_opt_set_renew_life.3
+man/man3/krb5_get_init_creds_opt_set_salt.3
+man/man3/krb5_get_init_creds_opt_set_tkt_life.3
+man/man3/krb5_get_init_creds_opt_set_win2k.3
+man/man3/krb5_get_init_creds_password.3
+man/man3/krb5_get_kdc_cred.3
+man/man3/krb5_get_kdc_sec_offset.3
+man/man3/krb5_get_krb524hst.3
+man/man3/krb5_get_krb_admin_hst.3
+man/man3/krb5_get_krb_changepw_hst.3
+man/man3/krb5_get_krbhst.3
+man/man3/krb5_get_max_time_skew.3
+man/man3/krb5_get_pw_salt.3
+man/man3/krb5_get_renewed_creds.3
+man/man3/krb5_get_server_rcache.3
+man/man3/krb5_get_use_admin_kdc.3
+man/man3/krb5_get_validated_creds.3
+man/man3/krb5_get_warn_dest.3
+man/man3/krb5_get_wrapped_length.3
+man/man3/krb5_getportbyname.3
+man/man3/krb5_h_addr2addr.3
+man/man3/krb5_h_addr2sockaddr.3
+man/man3/krb5_h_errno_to_heim_errno.3
+man/man3/krb5_hmac.3
+man/man3/krb5_init_context.3
+man/man3/krb5_init_creds_free.3
+man/man3/krb5_init_creds_get.3
+man/man3/krb5_init_creds_get_error.3
+man/man3/krb5_init_creds_init.3
+man/man3/krb5_init_creds_intro.3
+man/man3/krb5_init_creds_set_keytab.3
+man/man3/krb5_init_creds_set_password.3
+man/man3/krb5_init_creds_set_service.3
+man/man3/krb5_init_creds_step.3
+man/man3/krb5_init_ets.3
+man/man3/krb5_initlog.3
+man/man3/krb5_introduction.3
+man/man3/krb5_is_config_principal.3
+man/man3/krb5_is_enctype_weak.3
+man/man3/krb5_is_thread_safe.3
+man/man3/krb5_kerberos_enctypes.3
+man/man3/krb5_keyblock_get_enctype.3
+man/man3/krb5_keyblock_init.3
+man/man3/krb5_keyblock_zero.3
+man/man3/krb5_keytab.3
+man/man3/krb5_keytab_intro.3
+man/man3/krb5_keytab_key_proc.3
+man/man3/krb5_keytype_to_enctypes.3
+man/man3/krb5_keytype_to_enctypes_default.3
+man/man3/krb5_keytype_to_string.3
+man/man3/krb5_krbhst_format_string.3
+man/man3/krb5_krbhst_free.3
+man/man3/krb5_krbhst_get_addrinfo.3
+man/man3/krb5_krbhst_init.3
+man/man3/krb5_krbhst_init_flags.3
+man/man3/krb5_krbhst_next.3
+man/man3/krb5_krbhst_next_as_string.3
+man/man3/krb5_krbhst_reset.3
+man/man3/krb5_kt_add_entry.3
+man/man3/krb5_kt_close.3
+man/man3/krb5_kt_compare.3
+man/man3/krb5_kt_copy_entry_contents.3
+man/man3/krb5_kt_default.3
+man/man3/krb5_kt_default_modify_name.3
+man/man3/krb5_kt_default_name.3
+man/man3/krb5_kt_destroy.3
+man/man3/krb5_kt_end_seq_get.3
+man/man3/krb5_kt_free_entry.3
+man/man3/krb5_kt_get_entry.3
+man/man3/krb5_kt_get_full_name.3
+man/man3/krb5_kt_get_name.3
+man/man3/krb5_kt_get_type.3
+man/man3/krb5_kt_have_content.3
+man/man3/krb5_kt_next_entry.3
+man/man3/krb5_kt_read_service_key.3
+man/man3/krb5_kt_register.3
+man/man3/krb5_kt_remove_entry.3
+man/man3/krb5_kt_resolve.3
+man/man3/krb5_kt_start_seq_get.3
+man/man3/krb5_kuserok.3
+man/man3/krb5_log.3
+man/man3/krb5_log_msg.3
+man/man3/krb5_make_addrport.3
+man/man3/krb5_make_principal.3
+man/man3/krb5_max_sockaddr_size.3
+man/man3/krb5_mcc_ops.3
+man/man3/krb5_mk_priv.3
+man/man3/krb5_mk_rep.3
+man/man3/krb5_mk_rep_exact.3
+man/man3/krb5_mk_rep_extended.3
+man/man3/krb5_mk_req.3
+man/man3/krb5_mk_req_exact.3
+man/man3/krb5_mk_req_extended.3
+man/man3/krb5_mk_safe.3
+man/man3/krb5_openlog.3
+man/man3/krb5_pac.3
+man/man3/krb5_pac_get_buffer.3
+man/man3/krb5_pac_verify.3
+man/man3/krb5_padata_add.3
+man/man3/krb5_parse_address.3
+man/man3/krb5_parse_name.3
+man/man3/krb5_parse_name_flags.3
+man/man3/krb5_parse_nametype.3
+man/man3/krb5_passwd_result_to_string.3
+man/man3/krb5_password_key_proc.3
+man/man3/krb5_plugin_register.3
+man/man3/krb5_prepend_config_files.3
+man/man3/krb5_prepend_config_files_default.3
+man/man3/krb5_princ_realm.3
+man/man3/krb5_princ_set_realm.3
+man/man3/krb5_principal.3
+man/man3/krb5_principal_compare.3
+man/man3/krb5_principal_compare_any_realm.3
+man/man3/krb5_principal_get_comp_string.3
+man/man3/krb5_principal_get_num_comp.3
+man/man3/krb5_principal_get_realm.3
+man/man3/krb5_principal_get_type.3
+man/man3/krb5_principal_intro.3
+man/man3/krb5_principal_is_gss_hostbased_service.3
+man/man3/krb5_principal_is_krbtgt.3
+man/man3/krb5_principal_is_lkdc.3
+man/man3/krb5_principal_is_null.3
+man/man3/krb5_principal_is_pku2u.3
+man/man3/krb5_principal_is_root_krbtgt.3
+man/man3/krb5_principal_match.3
+man/man3/krb5_principal_set_realm.3
+man/man3/krb5_principal_set_type.3
+man/man3/krb5_print_address.3
+man/man3/krb5_prompt.3
+man/man3/krb5_prompter_posix.3
+man/man3/krb5_pwcheck.3
+man/man3/krb5_random_to_key.3
+man/man3/krb5_rc_close.3
+man/man3/krb5_rc_default.3
+man/man3/krb5_rc_default_name.3
+man/man3/krb5_rc_default_type.3
+man/man3/krb5_rc_destroy.3
+man/man3/krb5_rc_expunge.3
+man/man3/krb5_rc_get_lifespan.3
+man/man3/krb5_rc_get_name.3
+man/man3/krb5_rc_get_type.3
+man/man3/krb5_rc_initialize.3
+man/man3/krb5_rc_recover.3
+man/man3/krb5_rc_resolve.3
+man/man3/krb5_rc_resolve_full.3
+man/man3/krb5_rc_resolve_type.3
+man/man3/krb5_rc_store.3
+man/man3/krb5_rcache.3
+man/man3/krb5_rd_error.3
+man/man3/krb5_rd_priv.3
+man/man3/krb5_rd_rep.3
+man/man3/krb5_rd_req.3
+man/man3/krb5_rd_req_ctx.3
+man/man3/krb5_rd_req_in_ctx_alloc.3
+man/man3/krb5_rd_req_in_set_keytab.3
+man/man3/krb5_rd_req_in_set_pac_check.3
+man/man3/krb5_rd_req_out_ctx_free.3
+man/man3/krb5_rd_req_out_get_server.3
+man/man3/krb5_rd_req_with_keyblock.3
+man/man3/krb5_rd_safe.3
+man/man3/krb5_realm_compare.3
+man/man3/krb5_realm_is_lkdc.3
+man/man3/krb5_ret_address.3
+man/man3/krb5_ret_addrs.3
+man/man3/krb5_ret_authdata.3
+man/man3/krb5_ret_creds.3
+man/man3/krb5_ret_creds_tag.3
+man/man3/krb5_ret_data.3
+man/man3/krb5_ret_int16.3
+man/man3/krb5_ret_int32.3
+man/man3/krb5_ret_int64.3
+man/man3/krb5_ret_int8.3
+man/man3/krb5_ret_keyblock.3
+man/man3/krb5_ret_principal.3
+man/man3/krb5_ret_string.3
+man/man3/krb5_ret_stringz.3
+man/man3/krb5_ret_times.3
+man/man3/krb5_ret_uint16.3
+man/man3/krb5_ret_uint32.3
+man/man3/krb5_ret_uint64.3
+man/man3/krb5_ret_uint8.3
+man/man3/krb5_set_config_files.3
+man/man3/krb5_set_default_in_tkt_etypes.3
+man/man3/krb5_set_default_realm.3
+man/man3/krb5_set_dns_canonicalize_hostname.3
+man/man3/krb5_set_dns_canonize_hostname.3
+man/man3/krb5_set_error_message.3
+man/man3/krb5_set_error_string.3
+man/man3/krb5_set_extra_addresses.3
+man/man3/krb5_set_fcache_version.3
+man/man3/krb5_set_home_dir_access.3
+man/man3/krb5_set_ignore_addresses.3
+man/man3/krb5_set_kdc_sec_offset.3
+man/man3/krb5_set_max_time_skew.3
+man/man3/krb5_set_password.3
+man/man3/krb5_set_password_using_ccache.3
+man/man3/krb5_set_real_time.3
+man/man3/krb5_set_use_admin_kdc.3
+man/man3/krb5_set_warn_dest.3
+man/man3/krb5_sname_to_principal.3
+man/man3/krb5_sock_to_principal.3
+man/man3/krb5_sockaddr2address.3
+man/man3/krb5_sockaddr2port.3
+man/man3/krb5_sockaddr_uninteresting.3
+man/man3/krb5_storage.3
+man/man3/krb5_storage_clear_flags.3
+man/man3/krb5_storage_emem.3
+man/man3/krb5_storage_free.3
+man/man3/krb5_storage_from_data.3
+man/man3/krb5_storage_from_fd.3
+man/man3/krb5_storage_from_mem.3
+man/man3/krb5_storage_from_readonly_mem.3
+man/man3/krb5_storage_from_socket.3
+man/man3/krb5_storage_fsync.3
+man/man3/krb5_storage_get_byteorder.3
+man/man3/krb5_storage_get_eof_code.3
+man/man3/krb5_storage_is_flags.3
+man/man3/krb5_storage_read.3
+man/man3/krb5_storage_seek.3
+man/man3/krb5_storage_set_byteorder.3
+man/man3/krb5_storage_set_eof_code.3
+man/man3/krb5_storage_set_flags.3
+man/man3/krb5_storage_set_max_alloc.3
+man/man3/krb5_storage_to_data.3
+man/man3/krb5_storage_truncate.3
+man/man3/krb5_storage_write.3
+man/man3/krb5_store_address.3
+man/man3/krb5_store_addrs.3
+man/man3/krb5_store_authdata.3
+man/man3/krb5_store_creds.3
+man/man3/krb5_store_creds_tag.3
+man/man3/krb5_store_data.3
+man/man3/krb5_store_int16.3
+man/man3/krb5_store_int32.3
+man/man3/krb5_store_int64.3
+man/man3/krb5_store_int8.3
+man/man3/krb5_store_keyblock.3
+man/man3/krb5_store_principal.3
+man/man3/krb5_store_string.3
+man/man3/krb5_store_stringz.3
+man/man3/krb5_store_times.3
+man/man3/krb5_store_uint16.3
+man/man3/krb5_store_uint32.3
+man/man3/krb5_store_uint64.3
+man/man3/krb5_store_uint8.3
+man/man3/krb5_string_to_deltat.3
+man/man3/krb5_string_to_enctype.3
+man/man3/krb5_string_to_key.3
+man/man3/krb5_string_to_key_data.3
+man/man3/krb5_string_to_key_data_salt.3
+man/man3/krb5_string_to_key_data_salt_opaque.3
+man/man3/krb5_string_to_key_salt.3
+man/man3/krb5_string_to_key_salt_opaque.3
+man/man3/krb5_string_to_keytype.3
+man/man3/krb5_support.3
+man/man3/krb5_ticket.3
+man/man3/krb5_ticket_get_authorization_data_type.3
+man/man3/krb5_ticket_get_client.3
+man/man3/krb5_ticket_get_endtime.3
+man/man3/krb5_ticket_get_flags.3
+man/man3/krb5_ticket_get_server.3
+man/man3/krb5_timeofday.3
+man/man3/krb5_unparse_name.3
+man/man3/krb5_unparse_name_fixed.3
+man/man3/krb5_unparse_name_fixed_flags.3
+man/man3/krb5_unparse_name_fixed_short.3
+man/man3/krb5_unparse_name_flags.3
+man/man3/krb5_unparse_name_short.3
+man/man3/krb5_us_timeofday.3
+man/man3/krb5_v4compat.3
+man/man3/krb5_vabort.3
+man/man3/krb5_verify_ap_req.3
+man/man3/krb5_verify_checksum.3
+man/man3/krb5_verify_checksum_iov.3
+man/man3/krb5_verify_init_creds.3
+man/man3/krb5_verify_init_creds_opt_init.3
+man/man3/krb5_verify_init_creds_opt_set_ap_req_nofail.3
+man/man3/krb5_verify_opt_alloc.3
+man/man3/krb5_verify_opt_free.3
+man/man3/krb5_verify_opt_init.3
+man/man3/krb5_verify_opt_set_ccache.3
+man/man3/krb5_verify_opt_set_flags.3
+man/man3/krb5_verify_opt_set_keytab.3
+man/man3/krb5_verify_opt_set_secure.3
+man/man3/krb5_verify_opt_set_service.3
+man/man3/krb5_verify_user.3
+man/man3/krb5_verify_user_lrealm.3
+man/man3/krb5_verify_user_opt.3
+man/man3/krb5_verr.3
+man/man3/krb5_verrx.3
+man/man3/krb5_vlog.3
+man/man3/krb5_vlog_msg.3
+man/man3/krb5_vprepend_error_message.3
+man/man3/krb5_vset_error_message.3
+man/man3/krb5_vset_error_string.3
+man/man3/krb5_vwarn.3
+man/man3/krb5_vwarnx.3
+man/man3/krb5_warn.3
+man/man3/krb5_warnx.3
+man/man3/krb5plugin_an2ln_ftable_desc.3
+man/man3/krb5plugin_db_ftable_desc.3
+man/man3/krb5plugin_kuserok_ftable_desc.3
+man/man3/krb_afslog.3
+man/man3/krb_afslog_uid.3
+man/man3/length.3
+man/man3/ntlm_buf.3
+man/man3/ntlm_core.3
+man/man3/ntlm_type1.3
+man/man3/ntlm_type2.3
+man/man3/ntlm_type3.3
+man/man3/page_ca.3
+man/man3/page_cert.3
+man/man3/page_cms.3
+man/man3/page_des.3
+man/man3/page_dh.3
+man/man3/page_env.3
+man/man3/page_error.3
+man/man3/page_evp.3
+man/man3/page_keyset.3
+man/man3/page_lock.3
+man/man3/page_name.3
+man/man3/page_peer.3
+man/man3/page_print.3
+man/man3/page_rand.3
+man/man3/page_revoke.3
+man/man3/page_rsa.3
+man/man3/parse_time.3
+man/man3/print_time_table.3
+man/man3/rtbl.3
+man/man3/rtbl_add_column.3
+man/man3/rtbl_add_column_by_id.3
+man/man3/rtbl_add_column_entry.3
+man/man3/rtbl_add_column_entry_by_id.3
+man/man3/rtbl_create.3
+man/man3/rtbl_destroy.3
+man/man3/rtbl_format.3
+man/man3/rtbl_get_flags.3
+man/man3/rtbl_new_row.3
+man/man3/rtbl_set_column_affix_by_id.3
+man/man3/rtbl_set_column_prefix.3
+man/man3/rtbl_set_flags.3
+man/man3/rtbl_set_prefix.3
+man/man3/rtbl_set_separator.3
+man/man3/unparse_time.3
+man/man3/unparse_time_approx.3
+man/man3/wind.3
+man/man3/wind_profile.3
+man/man3/wind_punycode_label_toascii.3
+man/man3/wind_stringprep.3
+man/man3/wind_ucs2read.3
+man/man3/wind_ucs2utf8.3
+man/man3/wind_ucs2utf8_length.3
+man/man3/wind_ucs2write.3
+man/man3/wind_ucs4utf8.3
+man/man3/wind_ucs4utf8_length.3
+man/man3/wind_utf8ucs2.3
+man/man3/wind_utf8ucs2_length.3
+man/man3/wind_utf8ucs4.3
+man/man3/wind_utf8ucs4_length.3
+man/man5/krb5.conf.5
+man/man5/mech.5
+man/man5/qop.5
+man/man7/krb5-plugin.7
+man/man8/hprop.8
+man/man8/hpropd.8
+man/man8/iprop-log.8
+man/man8/iprop.8
+man/man8/ipropd-master.8
+man/man8/ipropd-slave.8
+man/man8/kadmind.8
+man/man8/kcm.8
+man/man8/kdc.8
+man/man8/kdigest.8
+man/man8/kerberos.8
+man/man8/kfd.8
+man/man8/kimpersonate.8
+man/man8/kpasswdd.8
+man/man8/kstash.8
+man/man8/string2key.8
+man/man8/verify_krb5_conf.8
+sbin/iprop-log
+sbin/kstash
+@pkgdir include/krb5/roken
diff --git a/heimdal/PLIST.OpenBSD b/heimdal/PLIST.OpenBSD
new file mode 100644
index 0000000000..2bbc9c323b
--- /dev/null
+++ b/heimdal/PLIST.OpenBSD
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST.OpenBSD,v 1.2 2014/09/22 11:55:37 joerg Exp $
+lib/libheimedit.la
diff --git a/heimdal/TODO b/heimdal/TODO
new file mode 100644
index 0000000000..3624850ee9
--- /dev/null
+++ b/heimdal/TODO
@@ -0,0 +1,4 @@
+In NetBSD-HEAD, hcrypto components are installed and the PLIST check fails.
+Are glob, vis and afskauth redundant now?
+Handle su which comes with Heimdal.
+Port remaining patches if applicable.
diff --git a/heimdal/buildlink3.mk b/heimdal/buildlink3.mk
new file mode 100644
index 0000000000..b41f123401
--- /dev/null
+++ b/heimdal/buildlink3.mk
@@ -0,0 +1,32 @@
+# $NetBSD: buildlink3.mk,v 1.57 2018/12/09 18:52:07 adam Exp $
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+BUILDLINK_TREE+=	heimdal
+
+.if !defined(HEIMDAL_BUILDLINK3_MK)
+HEIMDAL_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.heimdal+=	heimdal>=0.4e
+BUILDLINK_ABI_DEPENDS.heimdal+=	heimdal>=1.5.3nb19
+BUILDLINK_PKGSRCDIR.heimdal?=	../../security/heimdal
+BUILDLINK_INCDIRS.heimdal?=	include/krb5
+
+pkgbase := heimdal
+.include "../../mk/pkg-build-options.mk"
+
+.if !empty(PKG_BUILD_OPTIONS.heimdal:Mldap)
+.  include "../../databases/openldap-client/buildlink3.mk"
+.endif
+.include "../../security/openssl/buildlink3.mk"
+
+CHECK_BUILTIN.heimdal:=	yes
+.include "../../security/heimdal/builtin.mk"
+CHECK_BUILTIN.heimdal:=	no
+.if !empty(USE_BUILTIN.heimdal:M[nN][oO])
+.include "../../databases/sqlite3/buildlink3.mk"
+.include "../../mk/bdb.buildlink3.mk"
+.endif
+.endif # HEIMDAL_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-heimdal
diff --git a/heimdal/builtin.mk b/heimdal/builtin.mk
new file mode 100644
index 0000000000..569efb0f15
--- /dev/null
+++ b/heimdal/builtin.mk
@@ -0,0 +1,136 @@
+# $NetBSD: builtin.mk,v 1.15 2014/02/22 09:50:47 obache Exp $
+
+BUILTIN_PKG:=	heimdal
+
+BUILTIN_FIND_HEADERS_VAR:=		H_HEIMDAL
+BUILTIN_FIND_HEADERS.H_HEIMDAL=		krb5/krb5.h krb5.h
+BUILTIN_FIND_GREP.H_HEIMDAL=		heimdal_version
+BUILTIN_FIND_FILES_VAR:=		SH_KRB5_CONFIG
+BUILTIN_FIND_FILES.SH_KRB5_CONFIG=	/usr/bin/krb5-config
+BUILTIN_FIND_GREP.SH_KRB5_CONFIG=	^[ 	]*--version)
+
+.include "../../mk/buildlink3/bsd.builtin.mk"
+
+###
+### Determine if there is a built-in implementation of the package and
+### set IS_BUILTIN.<pkg> appropriately ("yes" or "no").
+###
+.if !defined(IS_BUILTIN.heimdal)
+IS_BUILTIN.heimdal=	no
+.  if empty(H_HEIMDAL:M__nonexistent__) && empty(H_HEIMDAL:M${LOCALBASE}/*)
+IS_BUILTIN.heimdal=	yes
+.  endif
+.endif
+MAKEVARS+=	IS_BUILTIN.heimdal
+
+###
+### If there is a built-in implementation, then set BUILTIN_PKG.<pkg> to
+### a package name to represent the built-in package.
+###
+.if !defined(BUILTIN_PKG.heimdal) && \
+    !empty(IS_BUILTIN.heimdal:M[yY][eE][sS])
+.  if empty(SH_KRB5_CONFIG:M__nonexistent__)
+BUILTIN_VERSION.heimdal!=	${SH_KRB5_CONFIG} --version |		\
+				${AWK} '{ print $$2; exit }'
+.  else
+#
+# heimdal<=0.6.x doesn't have a method of checking files to discover
+# the version number of the software.  Match up heimdal versions with
+# OS versions for an approximate determination of the heimdal version.
+#
+_BLTN_HEIMDAL_VERSIONS=	0.6.3  0.6.2  0.6.1  0.6  0.5  0.4e  0.3f  0.3e
+_BLTN_HEIMDAL_0.6.3=	NetBSD-2.* NetBSD-[3-9]*-*
+_BLTN_HEIMDAL_0.6.2=	# empty
+_BLTN_HEIMDAL_0.6.1=	NetBSD-1.6[U-Z]-* NetBSD-1.6Z*-*
+_BLTN_HEIMDAL_0.6=	NetBSD-1.6[U-Z]-* NetBSD-1.6Z*-*
+_BLTN_HEIMDAL_0.5=	NetBSD-1.6[I-T]-*
+_BLTN_HEIMDAL_0.4e=	NetBSD-1.6[A-H]-*				\
+			NetBSD-1.6-* NetBSD-1.6_*-* NetBSD-1.6.*-*	\
+			NetBSD-1.5[YZ]-* NetBSD-1.5Z*-*
+_BLTN_HEIMDAL_0.3f=	NetBSD-1.5X-*
+_BLTN_HEIMDAL_0.3e=	NetBSD-1.5[UVW]-*				\
+			NetBSD-1.5.*-*
+.    for _heimdal_version_ in ${_BLTN_HEIMDAL_VERSIONS}
+.      for _pattern_ in ${_BLTN_HEIMDAL_${_heimdal_version_}}
+.        if !empty(MACHINE_PLATFORM:M${_pattern_})
+BUILTIN_VERSION.heimdal?=	${_heimdal_version_}
+.        endif
+.      endfor
+.    endfor
+BUILTIN_VERSION.heimdal?=	0.2t
+.  endif
+BUILTIN_PKG.heimdal=		heimdal-${BUILTIN_VERSION.heimdal}
+.endif
+MAKEVARS+=	BUILTIN_PKG.heimdal
+
+###
+### Determine whether we should use the built-in implementation if it
+### exists, and set USE_BUILTIN.<pkg> appropriate ("yes" or "no").
+###
+.if !defined(USE_BUILTIN.heimdal)
+.  if ${PREFER.heimdal} == "pkgsrc"
+USE_BUILTIN.heimdal=	no
+.  else
+USE_BUILTIN.heimdal=	${IS_BUILTIN.heimdal}
+.    if !empty(USE_BUILTIN.heimdal:M[yY][eE][sS])
+CHECK_BUILTIN.openssl:=	yes
+.      include "../../security/openssl/builtin.mk"
+CHECK_BUILTIN.openssl:=	no
+.      if !empty(USE_BUILTIN.openssl:M[Nn][Oo])
+USE_BUILTIN.heimdal=	no
+.      endif
+.    endif
+.    if defined(BUILTIN_PKG.heimdal) && \
+        !empty(IS_BUILTIN.heimdal:M[yY][eE][sS])
+USE_BUILTIN.heimdal?=	yes
+.      for _dep_ in ${BUILDLINK_API_DEPENDS.heimdal}
+.        if !empty(USE_BUILTIN.heimdal:M[yY][eE][sS])
+USE_BUILTIN.heimdal!=							\
+	if ${PKG_ADMIN} pmatch ${_dep_:Q} ${BUILTIN_PKG.heimdal:Q}; then \
+		${ECHO} yes;						\
+	else								\
+		${ECHO} no;						\
+	fi
+.        endif
+.      endfor
+.    endif
+.  endif  # PREFER.heimdal
+.endif
+MAKEVARS+=	USE_BUILTIN.heimdal
+
+###
+### The section below only applies if we are not including this file
+### solely to determine whether a built-in implementation exists.
+###
+CHECK_BUILTIN.heimdal?=	no
+.if !empty(CHECK_BUILTIN.heimdal:M[nN][oO])
+
+.  if !empty(USE_BUILTIN.heimdal:M[nN][oO])
+BUILDLINK_API_DEPENDS.heimdal+=	heimdal>=0.6
+
+KRB5_CONFIG?=	${BUILDLINK_PREFIX.heimdal}/bin/krb5-config
+CONFIGURE_ENV+=	KRB5_CONFIG=${KRB5_CONFIG:Q}
+MAKE_ENV+=	KRB5_CONFIG=${KRB5_CONFIG:Q}
+.  endif
+
+.  if !empty(USE_BUILTIN.heimdal:M[yY][eE][sS])
+.    if !empty(SH_KRB5_CONFIG:M__nonexistent__)
+BUILDLINK_TARGETS+=	fake-krb5-config
+
+fake-krb5-config:
+	${_PKG_SILENT}${_PKG_DEBUG} \
+	src=../../security/heimdal/files/krb5-config \
+        dst=${BUILDLINK_DIR}/bin/krb5-config; \
+	${SED} -e s/@HEIMDAL_VERSION@/${BUILTIN_VERSION.heimdal}/ \
+	    $${src} >$${dst}; \
+	${CHMOD} a+x $${dst}
+
+KRB5_CONFIG?=	${BUILDLINK_DIR}/bin/krb5-config
+.    else
+KRB5_CONFIG?=	${SH_KRB5_CONFIG}
+.    endif
+CONFIGURE_ENV+=	KRB5_CONFIG=${KRB5_CONFIG:Q}
+MAKE_ENV+=	KRB5_CONFIG=${KRB5_CONFIG:Q}
+.  endif
+
+.endif	# CHECK_BUILTIN.heimdal
diff --git a/heimdal/distinfo b/heimdal/distinfo
new file mode 100644
index 0000000000..253b88d79d
--- /dev/null
+++ b/heimdal/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.46 2018/11/27 23:36:00 sevan Exp $
+
+SHA1 (heimdal-7.5.0.tar.gz) = 6c891e7ac0c39de10f894a1680a52fb219453e2f
+RMD160 (heimdal-7.5.0.tar.gz) = e056d1ce93d783fdc321ad02f373e363bce47d9e
+SHA512 (heimdal-7.5.0.tar.gz) = 6d1ad77e795df786680b5e68e2bfefee27bd0207eab507295d7af7053135de9c9ebb517d2c0235bc3a7d50945e18044515f0d76c0899b6b74aa839f1f3e5b131
+Size (heimdal-7.5.0.tar.gz) = 10071281 bytes
+SHA1 (patch-lib_libedit_configure) = c16317b2a05f1ce22121f4ada8696e3721861a5e
diff --git a/heimdal/files/kadmind.sh b/heimdal/files/kadmind.sh
new file mode 100644
index 0000000000..4639d75dd9
--- /dev/null
+++ b/heimdal/files/kadmind.sh
@@ -0,0 +1,33 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: kadmind.sh,v 1.2 2005/12/21 04:17:49 jlam Exp $
+#
+# PROVIDE: kadmind
+# REQUIRE: NETWORKING
+# BEFORE:  SERVERS
+
+. /etc/rc.subr
+
+name="kadmind"
+rcvar=$name
+command="@PREFIX@/libexec/${name}"
+command_args="& sleep 2"
+required_files="@PKG_SYSCONFDIR@/krb5.conf"
+required_vars="kdc"
+
+# load_rc_config_var() from /etc/rc.subr on the netbsd-3 branch, for
+# the benefit of platforms with older versions of /etc/rc.subr.
+#
+load_rc_config_var()
+{
+	eval $(eval '(
+		load_rc_config '$1' >/dev/null;
+		if [ -n "${'$2'}" -o "${'$2'-UNSET}" != "UNSET" ]; then
+			echo '$2'=\'\''${'$2'}\'\'';
+		fi
+	)' )
+}
+
+load_rc_config $name
+load_rc_config_var kdc kdc
+run_rc_command "$1"
diff --git a/heimdal/files/kcm.sh b/heimdal/files/kcm.sh
new file mode 100644
index 0000000000..21bd4e9e40
--- /dev/null
+++ b/heimdal/files/kcm.sh
@@ -0,0 +1,18 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: kcm.sh,v 1.1 2005/10/26 15:12:45 jlam Exp $
+#
+# PROVIDE: kcm
+# REQUIRE: NETWORKING
+# BEFORE:  SERVERS
+
+. /etc/rc.subr
+
+name="kcm"
+rcvar=$name
+command="@PREFIX@/libexec/${name}"
+command_args="--detach"
+required_files="@PKG_SYSCONFDIR@/krb5.conf"
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/heimdal/files/kdc.sh b/heimdal/files/kdc.sh
new file mode 100644
index 0000000000..ae26e81a9a
--- /dev/null
+++ b/heimdal/files/kdc.sh
@@ -0,0 +1,18 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: kdc.sh,v 1.3 2005/10/26 15:12:45 jlam Exp $
+#
+# PROVIDE: kdc
+# REQUIRE: NETWORKING
+# BEFORE:  SERVERS
+
+. /etc/rc.subr
+
+name="kdc"
+rcvar=$name
+command="@PREFIX@/libexec/${name}"
+command_args="--detach"
+required_files="@PKG_SYSCONFDIR@/krb5.conf"
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/heimdal/files/kpasswdd.sh b/heimdal/files/kpasswdd.sh
new file mode 100644
index 0000000000..1202c14b63
--- /dev/null
+++ b/heimdal/files/kpasswdd.sh
@@ -0,0 +1,33 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: kpasswdd.sh,v 1.2 2005/12/21 04:17:49 jlam Exp $
+#
+# PROVIDE: kpasswdd
+# REQUIRE: NETWORKING
+# BEFORE:  SERVERS
+
+. /etc/rc.subr
+
+name="kpasswdd"
+rcvar=$name
+command="@PREFIX@/libexec/${name}"
+command_args="& sleep 2"
+required_files="@PKG_SYSCONFDIR@/krb5.conf"
+required_vars="kdc"
+
+# load_rc_config_var() from /etc/rc.subr on the netbsd-3 branch, for
+# the benefit of platforms with older versions of /etc/rc.subr.
+#
+load_rc_config_var()
+{
+	eval $(eval '(
+		load_rc_config '$1' >/dev/null;
+		if [ -n "${'$2'}" -o "${'$2'-UNSET}" != "UNSET" ]; then
+			echo '$2'=\'\''${'$2'}\'\'';
+		fi
+	)' )
+}
+
+load_rc_config $name
+load_rc_config_var kdc kdc
+run_rc_command "$1"
diff --git a/heimdal/files/krb5-config b/heimdal/files/krb5-config
new file mode 100755
index 0000000000..644f75fffa
--- /dev/null
+++ b/heimdal/files/krb5-config
@@ -0,0 +1,107 @@
+#!/bin/sh
+# Heimdal: krb5-config.in,v 1.9 2002/09/09 22:29:06 joda Exp 
+# $NetBSD: krb5-config,v 1.2 2007/06/15 19:03:16 joerg Exp $
+
+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 "heimdal @HEIMDAL_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
+    ;;
+  *)
+    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"
+    exit $usage_exit
+fi
+
+if test "$prefix" = ""; then
+  prefix=/usr
+fi
+if test "$exec_prefix" = ""; then
+  exec_prefix=/usr
+fi
+
+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/usr/lib"
+    case $library in
+    gssapi)
+	lib_flags="$lib_flags -lgssapi"
+	;;
+    kadm-client)
+	lib_flags="$lib_flags -lkadm5clnt"
+	;;
+    kadm-server)
+	lib_flags="$lib_flags -lkadm5srv"
+	;;
+    esac
+    lib_flags="$lib_flags -lkrb5 -lasn1 -ldes -lroken"
+    lib_flags="$lib_flags -lcrypto -lcom_err"
+    echo $lib_flags
+fi
+if test "$do_cflags" = "yes"; then
+    echo "-I/usr/include/gssapi -I/usr/include/krb5"
+fi
+
+exit 0
diff --git a/heimdal/options.mk b/heimdal/options.mk
new file mode 100644
index 0000000000..9002a7efc0
--- /dev/null
+++ b/heimdal/options.mk
@@ -0,0 +1,66 @@
+# $NetBSD: options.mk,v 1.3 2011/07/08 09:49:21 adam Exp $
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.heimdal
+PKG_SUPPORTED_OPTIONS=	inet6 kerberos-prefix-cmds ldap
+PKG_SUGGESTED_OPTIONS=	inet6
+
+.include "../../mk/bsd.options.mk"
+
+###
+### IPv6 support.
+###
+.if !empty(PKG_OPTIONS:Minet6)
+CONFIGURE_ARGS+=	--with-ipv6
+.else
+CONFIGURE_ARGS+=	--without-ipv6
+.endif
+
+###
+### Support using LDAP as a KDC backend.
+###
+PLIST_VARS+=		ldap
+.if !empty(PKG_OPTIONS:Mldap)
+.  include "../../databases/openldap-client/buildlink3.mk"
+CONFIGURE_ARGS+=	--with-openldap=${BUILDLINK_PREFIX.openldap-client}
+PLIST.ldap=		yes
+INSTALLATION_DIRS+=	share/examples/heimdal
+
+post-install: heimdal-ldap-schema
+heimdal-ldap-schema:
+	${INSTALL_DATA} ${WRKSRC}/lib/hdb/hdb.schema			\
+		${DESTDIR}${PREFIX}/share/examples/heimdal
+.endif
+
+###
+### Rename some of Heimdal's applications so they won't conflict with
+### other packages.
+###
+.if !empty(PKG_OPTIONS:Mkerberos-prefix-cmds)
+KRB5_PREFIX=		k
+HEIMDAL_TRANSFORM=	s/^ftp/${KRB5_PREFIX}&/;			\
+			s/^login/${KRB5_PREFIX}&/;			\
+			s/^${KRB5_PREFIX}login.access/login.access/;	\
+			s/^rcp/${KRB5_PREFIX}&/;			\
+			s/^rsh/${KRB5_PREFIX}&/;			\
+			s/^su/${KRB5_PREFIX}&/;				\
+			s/^telnet/${KRB5_PREFIX}&/
+.else
+KRB5_PREFIX=		# empty
+HEIMDAL_TRANSFORM=	s/^ftp/k&/
+.endif
+
+PLIST_SUBST+=		KRB5_PREFIX=${KRB5_PREFIX:Q}
+CONFIGURE_ARGS+=	--program-transform-name=${HEIMDAL_TRANSFORM:Q}
+#
+# Fix some places in the Heimdal sources that don't point to the correct
+# Kerberized binaries when exec'ing programs.
+#
+SUBST_CLASSES+=		heimdal
+SUBST_STAGE.heimdal=	pre-configure
+SUBST_FILES.heimdal=	appl/rcp/rcp.c appl/rcp/rcp_locl.h
+SUBST_FILES.heimdal+=	appl/rsh/rsh_locl.h
+SUBST_FILES.heimdal+=	appl/telnet/telnetd/telnetd.h
+SUBST_SED.heimdal=	-e "/RSH_PROGRAM/s,rsh,${KRB5_PREFIX}rsh,g"
+SUBST_SED.heimdal+=	-e "/PATH_RSH/s,\"/usr/bin/rsh\",BINDIR \"${KRB5_PREFIX}rsh\",g"
+SUBST_SED.heimdal+=	-e "/PATH_RSH/s,/rsh,/${KRB5_PREFIX}rsh,g"
+SUBST_SED.heimdal+=	-e "/PATH_LOGIN/s,/login,/${KRB5_PREFIX}login,g"
diff --git a/heimdal/patches/patch-lib_libedit_configure b/heimdal/patches/patch-lib_libedit_configure
new file mode 100644
index 0000000000..1ef8aa9ab9
--- /dev/null
+++ b/heimdal/patches/patch-lib_libedit_configure
@@ -0,0 +1,159 @@
+$NetBSD$
+
+Include termcap in the termcap test
+Support Minix
+
+--- lib/libedit/configure.orig	2018-12-26 19:14:51.625069299 +0000
++++ lib/libedit/configure
+@@ -5140,7 +5140,7 @@ else
+     lt_cv_sys_max_cmd_len=8192;
+     ;;
+ 
+-  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
++  bitrig* | darwin* | dragonfly* | freebsd* | minix* | netbsd* | openbsd*)
+     # This has been around since 386BSD, at least.  Likely further.
+     if test -x /sbin/sysctl; then
+       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+@@ -5609,12 +5609,8 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu 
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+-netbsd*)
+-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+-  else
+-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
+-  fi
++netbsd* | minix*)
++  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
+   ;;
+ 
+ newos6*)
+@@ -9284,14 +9280,13 @@ _LT_EOF
+       fi
+       ;;
+ 
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+-	wlarc=
+-      else
+-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+-      fi
++    netbsd* | minix*)
++      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++      archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++      hardcode_direct=yes
++      hardcode_shlibpath_var=no
++      output_verbose_link_cmd=func_echo_all
+       ;;
+ 
+     solaris*)
+@@ -9975,15 +9970,13 @@ $as_echo "$lt_cv_irix_exported_symbol" >
+       esac
+       ;;
+ 
+-    netbsd*)
+-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+-	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+-      else
+-	archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
+-      fi
+-      hardcode_libdir_flag_spec='-R$libdir'
++    netbsd* | minix*)
++      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++      archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+       hardcode_direct=yes
+       hardcode_shlibpath_var=no
++      output_verbose_link_cmd=func_echo_all
+       ;;
+ 
+     newsos6)
+@@ -11090,6 +11083,18 @@ fi
+   dynamic_linker='GNU/Linux ld.so'
+   ;;
+ 
++minix*)
++  version_type=linux
++  need_lib_prefix=no
++  need_version=no
++  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
++  soname_spec='${libname}${release}${shared_ext}$major'
++  dynamic_linker='Minix ld.elf_so'
++  shlibpath_var=LD_LIBRARY_PATH
++  shlibpath_overrides_runpath=yes
++  hardcode_into_libs=yes
++  ;;
++
+ netbsd*)
+   version_type=sunos
+   need_lib_prefix=no
+@@ -12429,7 +12434,50 @@ test -n "$NROFF" || NROFF="/bin/false"
+ 
+ 
+ 
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
++$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
++if test "${ac_cv_lib_curses_termcap+set}" = set; then :
++  $as_echo_n "(cached) " >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-ltermcap  $LIBS"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
+ 
++/* Override any GCC internal prototype to avoid an error.
++   Use char because int might match the return type of a GCC
++   builtin and then its argument prototype would still apply.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++char tgetent ();
++int
++main ()
++{
++return tgetent ();
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++  ac_cv_lib_termcap_tgetent=yes
++else
++  ac_cv_lib_termcap_tgetent=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
++$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
++if test "x$ac_cv_lib_termcap_tgetent" = x""yes; then :
++  cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBTERMCAP 1
++_ACEOF
++
++  LIBS="-ltermcap $LIBS"
++
++else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
+ $as_echo_n "checking for tgetent in -lcurses... " >&6; }
+ if ${ac_cv_lib_curses_tgetent+:} false; then :
+@@ -12518,12 +12566,12 @@ _ACEOF
+   LIBS="-lncurses $LIBS"
+ 
+ else
+-  as_fn_error $? "libcurses or libncurses are required!" "$LINENO" 5
++  as_fn_error $? "libtermcap, libcurses or libncurses are required!" "$LINENO" 5
+ fi
+ 
+ fi
+ 
+-
++fi
+ 
+ # Checks for header files.
+ ac_header_dirent=no


Home | Main Index | Thread Index | Old Index