| From bdf01a581d58eb5340e9238d143dbcac9db5b11c Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Sat, 30 Jan 2016 19:29:45 +0000 |
| Subject: [PATCH] check for nss.h |
| |
| nss.h may not available on all libc implementations, e.g. musl does not |
| have this header, this patch detects nss.h presence and defines the data |
| types that are required if nss.h is missing on platform |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| Upstream-Status: Pending |
| |
| configure.ac | 2 +- |
| src/nss.c | 11 +++++++++++ |
| 2 files changed, 12 insertions(+), 1 deletion(-) |
| |
| diff --git a/configure.ac b/configure.ac |
| index aa66bc6..ce19b07 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -71,7 +71,7 @@ AC_PROG_LIBTOOL |
| |
| # Checks for header files. |
| AC_HEADER_STDC |
| -AC_CHECK_HEADERS([arpa/inet.h fcntl.h inttypes.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h nss.h sys/ioctl.h]) |
| +AC_CHECK_HEADERS([arpa/inet.h fcntl.h inttypes.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h nss.h sys/ioctl.h nss.h]) |
| |
| # Checks for typedefs, structures, and compiler characteristics. |
| AC_C_CONST |
| diff --git a/src/nss.c b/src/nss.c |
| index e48e315..406733b 100644 |
| --- a/src/nss.c |
| +++ b/src/nss.c |
| @@ -29,7 +29,18 @@ |
| #include <assert.h> |
| #include <netdb.h> |
| #include <sys/socket.h> |
| +#ifdef HAVE_NSS_H |
| #include <nss.h> |
| +#else |
| +enum nss_status { |
| + NSS_STATUS_TRYAGAIN = -2, |
| + NSS_STATUS_UNAVAIL, |
| + NSS_STATUS_NOTFOUND, |
| + NSS_STATUS_SUCCESS, |
| + NSS_STATUS_RETURN |
| +}; |
| +#endif |
| + |
| #include <stdio.h> |
| #include <stdlib.h> |
| |
| -- |
| 2.7.0 |
| |