summaryrefslogtreecommitdiffstats
path: root/proxy
diff options
context:
space:
mode:
authorSimo Sorce <simo@redhat.com>2013-03-14 13:38:47 -0400
committerSimo Sorce <simo@redhat.com>2013-03-14 13:42:50 -0400
commit149c8346588e98949ca15ef98634a5b8e37a0be6 (patch)
treea2fb021cb9d92ea772e3bfc945d214444bd533af /proxy
parent472b7b49ed79f65f1e94c47bb58fb41f709eb287 (diff)
Use gssrpc instead of system rpc
This avoids issues with libraris like libtirpc as gssrpc renames all the symbols to avoid clashes with system libraries.
Diffstat (limited to 'proxy')
-rw-r--r--proxy/Makefile.am2
-rw-r--r--proxy/configure.ac9
-rw-r--r--proxy/rpcgen/gp_rpc.h2
-rw-r--r--proxy/rpcgen/gss_proxy.h2
4 files changed, 10 insertions, 5 deletions
diff --git a/proxy/Makefile.am b/proxy/Makefile.am
index e1adef0..4c2e514 100644
--- a/proxy/Makefile.am
+++ b/proxy/Makefile.am
@@ -79,7 +79,7 @@ AM_CPPFLAGS = \
EXTRA_DIST = build/config.rpath
-GSS_PROXY_LIBS = $(POPT_LIBS) $(KRB5_LIBS) $(VERTO_LIBS) $(INI_LIBS) $(GSSAPI_LIBS)
+GSS_PROXY_LIBS = $(POPT_LIBS) $(KRB5_LIBS) $(VERTO_LIBS) $(INI_LIBS) $(GSSAPI_LIBS) $(GSSRPC_LIBS)
if BUILD_SELINUX
GSS_PROXY_LIBS += $(SELINUX_LIBS)
diff --git a/proxy/configure.ac b/proxy/configure.ac
index b953b14..5c12414 100644
--- a/proxy/configure.ac
+++ b/proxy/configure.ac
@@ -96,8 +96,6 @@ LIBS="$PTHREAD_LIBS $LIBS"
LIBS="$PTHREAD_CFLAGS $CFLAGS"
CC="$PTHREAD_CC"
-AC_CHECK_HEADERS([rpc/rpc.h],,[AC_MSG_ERROR([Could not find rpc headers])])
-
AC_CHECK_HEADERS([gssapi/gssapi.h],,[AC_MSG_ERROR([Could not find GSSAPI headers])])
AC_PATH_PROG(KRB5_CONFIG, krb5-config, failed)
if test x$KRB5_CONFIG = xfailed; then
@@ -116,6 +114,13 @@ AC_CHECK_LIB(gssapi_krb5, gss_export_cred,,
AC_SUBST([GSSAPI_CFLAGS])
AC_SUBST([GSSAPI_LIBS])
+AC_CHECK_HEADERS([gssrpc/rpc.h],,[AC_MSG_ERROR([Could not find GSSRPC headers])])
+GSSRPC_LIBS="-lgssrpc"
+AC_CHECK_LIB(gssrpc, gssrpc_xdrmem_create,,
+ [AC_MSG_ERROR([Failed to find GSSRPC symbols])],
+ [$GSSRPC_LIBS])
+AC_SUBST([GSSRPC_LIBS])
+
WITH_INITSCRIPT
if test x$initscript = xsystemd; then
WITH_SYSTEMD_UNIT_DIR
diff --git a/proxy/rpcgen/gp_rpc.h b/proxy/rpcgen/gp_rpc.h
index a21a60f..14e0a9e 100644
--- a/proxy/rpcgen/gp_rpc.h
+++ b/proxy/rpcgen/gp_rpc.h
@@ -6,7 +6,7 @@
#ifndef _GP_RPC_H_RPCGEN
#define _GP_RPC_H_RPCGEN
-#include <rpc/rpc.h>
+#include <rpcgen/gp_xdr.h>
#ifdef __cplusplus
diff --git a/proxy/rpcgen/gss_proxy.h b/proxy/rpcgen/gss_proxy.h
index 281c225..0bc8361 100644
--- a/proxy/rpcgen/gss_proxy.h
+++ b/proxy/rpcgen/gss_proxy.h
@@ -6,7 +6,7 @@
#ifndef _GSS_PROXY_H_RPCGEN
#define _GSS_PROXY_H_RPCGEN
-#include <rpc/rpc.h>
+#include <rpcgen/gp_xdr.h>
#ifdef __cplusplus