forked from pool/libtirpc
1be34e3c8c
- 001-tirpc-features.patch: update with official git version - 002-old-automake.patch: re-add for SLES11 - 003-fix-gssapi.patch: try to fix the disable-gssapi option correct OBS-URL: https://build.opensuse.org/request/show/305881 OBS-URL: https://build.opensuse.org/package/show/Base:System/libtirpc?expand=0&rev=44
142 lines
3.4 KiB
Diff
142 lines
3.4 KiB
Diff
diff --git a/.gitignore b/.gitignore
|
|
index b7814a3..fad274f 100644
|
|
--- a/.gitignore
|
|
+++ b/.gitignore
|
|
@@ -34,6 +34,8 @@ libtirpc.pc
|
|
lib*.a
|
|
src/libtirpc.la
|
|
src/libtirpc_la-*.lo
|
|
+tirpc/stamp-h2
|
|
+tirpc/tirpc-features.h
|
|
# generic editor backup et al
|
|
*~
|
|
.stgitmail.txt
|
|
diff --git a/Makefile.am b/Makefile.am
|
|
index 2bf725c..2bce3b0 100644
|
|
--- a/Makefile.am
|
|
+++ b/Makefile.am
|
|
@@ -4,9 +4,11 @@ ACLOCAL_AMFLAGS = -I m4
|
|
noinst_HEADERS = tirpc/reentrant.h \
|
|
tirpc/getpeereid.h \
|
|
tirpc/libc_private.h \
|
|
- tirpc/un-namespace.h
|
|
+ tirpc/un-namespace.h \
|
|
+ tirpc/tirpc-features.h.in
|
|
|
|
nobase_include_HEADERS = tirpc/netconfig.h \
|
|
+ tirpc/tirpc-features.h \
|
|
tirpc/rpcsvc/crypt.x \
|
|
tirpc/rpcsvc/crypt.h \
|
|
tirpc/rpc/xdr.h \
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 711b054..290c635 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -10,6 +10,7 @@ AC_ARG_ENABLE(gssapi,
|
|
AM_CONDITIONAL(GSS, test "x$enable_gssapi" = xyes)
|
|
|
|
if test "x$enable_gssapi" = xyes; then
|
|
+ AC_DEFINE([HAVE_GSSAPI], [1], [Define to 1 if GSSAPI is enabled])
|
|
GSSAPI_CFLAGS=`krb5-config --cflags gssapi`
|
|
GSSAPI_LIBS=`krb5-config --libs gssapi`
|
|
AC_SUBST([GSSAPI_CFLAGS])
|
|
@@ -41,7 +42,7 @@ AC_ARG_ENABLE(symvers,
|
|
AM_CONDITIONAL(SYMVERS, test "x$enable_symvers" = xyes)
|
|
|
|
AC_PROG_CC
|
|
-AC_CONFIG_HEADERS([config.h])
|
|
+AC_CONFIG_HEADERS([config.h tirpc/tirpc-features.h])
|
|
AC_PROG_LIBTOOL
|
|
AC_HEADER_DIRENT
|
|
AC_PREFIX_DEFAULT(/usr)
|
|
diff --git a/src/svc_auth_gss.c b/src/svc_auth_gss.c
|
|
index d95eae1..e0a5c6a 100644
|
|
--- a/src/svc_auth_gss.c
|
|
+++ b/src/svc_auth_gss.c
|
|
@@ -34,8 +34,11 @@
|
|
|
|
*/
|
|
|
|
-#include <sys/types.h>
|
|
+#ifdef HAVE_CONFIG_H
|
|
+#include "config.h"
|
|
+#endif
|
|
|
|
+#include <sys/types.h>
|
|
#include <unistd.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
diff --git a/tirpc/rpc/rpc.h b/tirpc/rpc/rpc.h
|
|
index 1dbb391..8f37454 100644
|
|
--- a/tirpc/rpc/rpc.h
|
|
+++ b/tirpc/rpc/rpc.h
|
|
@@ -35,6 +35,8 @@
|
|
#ifndef _TIRPC_RPC_H
|
|
#define _TIRPC_RPC_H
|
|
|
|
+#include <tirpc-features.h>
|
|
+
|
|
#include <rpc/types.h> /* some typedefs */
|
|
#include <sys/socket.h>
|
|
#include <netinet/in.h>
|
|
@@ -60,7 +62,7 @@
|
|
#include <rpc/auth_des.h> /* protocol for des style cred */
|
|
#endif /* HAVE_AUTHDES */
|
|
|
|
-#ifdef HAVE_RPCSEC_GSS
|
|
+#ifdef HAVE_GSSAPI
|
|
#include <rpc/auth_gss.h> /* RPCSEC_GSS */
|
|
#endif
|
|
|
|
diff --git a/tirpc/rpc/svc_auth.h b/tirpc/rpc/svc_auth.h
|
|
index 44b38bf..dbd8cc9 100644
|
|
--- a/tirpc/rpc/svc_auth.h
|
|
+++ b/tirpc/rpc/svc_auth.h
|
|
@@ -41,6 +41,10 @@
|
|
#ifndef _RPC_SVC_AUTH_H
|
|
#define _RPC_SVC_AUTH_H
|
|
|
|
+#include <tirpc-features.h>
|
|
+
|
|
+#ifdef HAVE_GSSAPI
|
|
+
|
|
#include <rpc/rpcsec_gss.h>
|
|
|
|
typedef struct {
|
|
@@ -51,6 +55,8 @@ typedef struct {
|
|
u_int seq_num;
|
|
} svc_rpc_gss_parms_t;
|
|
|
|
+#endif /* HAVE_GSSAPI */
|
|
+
|
|
/*
|
|
* Interface to server-side authentication flavors.
|
|
*/
|
|
@@ -63,8 +69,10 @@ typedef struct SVCAUTH {
|
|
int (*svc_ah_destroy)(struct SVCAUTH *);
|
|
} *svc_ah_ops;
|
|
caddr_t svc_ah_private;
|
|
+#ifdef HAVE_GSSAPI
|
|
svc_rpc_gss_parms_t svc_gss_params;
|
|
rpc_gss_rawcred_t raw_cred;
|
|
+#endif
|
|
} SVCAUTH;
|
|
|
|
#define SVCAUTH_WRAP(auth, xdrs, xfunc, xwhere) \
|
|
diff --git a/tirpc/tirpc-features.h.in b/tirpc/tirpc-features.h.in
|
|
new file mode 100644
|
|
index 0000000..72e18bc
|
|
--- /dev/null
|
|
+++ b/tirpc/tirpc-features.h.in
|
|
@@ -0,0 +1,10 @@
|
|
+#ifndef _TIRPC_FEATURES_H
|
|
+#define _TIRPC_FEATURES_H
|
|
+
|
|
+/* Define to 1 if DES authentication is enabled */
|
|
+#undef HAVE_AUTHDES
|
|
+
|
|
+/* Define to 1 if GSSAPI is enabled */
|
|
+#undef HAVE_GSSAPI
|
|
+
|
|
+#endif /* _TIRPC_FEATURES_H */
|