Most of this work centers around gssd, however a few items I did tree wide. It's been compile tested with both gcc & clang on x86_64 & arm32 and runtime tested on x86_64. Doug Nazar (10): gssd: Refcount struct clnt_info to protect multithread usage Update to libevent 2.x apis. gssd: Cleanup on exit to support valgrind. gssd: gssd_k5_err_msg() returns a strdup'd msg. Use free() to release. gssd: Fix locking for machine principal list gssd: Add a few debug statements to help track client_info lifetimes. gssd: Lookup local hostname when srchost is '*' gssd: We never use the nocache param of gssd_check_if_cc_exists() Cleanup printf format attribute handling and fix format strings Fix various clang warnings. aclocal/libevent.m4 | 6 +- configure.ac | 6 +- support/include/compiler.h | 14 + support/include/xcommon.h | 12 +- support/include/xlog.h | 20 +- support/nfs/xcommon.c | 2 + support/nfsidmap/gums.c | 2 + support/nfsidmap/libnfsidmap.c | 8 +- support/nfsidmap/nfsidmap.h | 10 +- support/nfsidmap/nfsidmap_common.c | 1 + support/nfsidmap/nss.c | 4 +- support/nfsidmap/regex.c | 6 +- support/nfsidmap/static.c | 1 + support/nfsidmap/umich_ldap.c | 10 +- tools/locktest/testlk.c | 6 +- utils/exportfs/exportfs.c | 5 +- utils/gssd/err_util.h | 4 +- utils/gssd/gss_names.c | 9 +- utils/gssd/gss_util.c | 2 +- utils/gssd/gssd.c | 165 ++++++++--- utils/gssd/gssd.h | 10 +- utils/gssd/gssd_proc.c | 14 +- utils/gssd/krb5_util.c | 422 +++++++++++++++++------------ utils/gssd/krb5_util.h | 16 +- utils/gssd/svcgssd.c | 4 +- utils/gssd/svcgssd_proc.c | 9 +- utils/idmapd/idmapd.c | 65 +++-- utils/mount/network.c | 4 +- utils/mount/stropts.c | 2 - utils/mountd/cache.c | 2 +- utils/nfsdcld/cld-internal.h | 2 +- utils/nfsdcld/nfsdcld.c | 29 +- utils/nfsdcld/sqlite.c | 1 - utils/nfsdcltrack/sqlite.c | 2 +- utils/nfsidmap/nfsidmap.c | 3 +- 35 files changed, 536 insertions(+), 342 deletions(-) create mode 100644 support/include/compiler.h -- 2.26.2