diff options
author | Alan Coopersmith <alan.coopersmith@sun.com> | 2007-08-17 15:29:16 -0700 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@sun.com> | 2007-08-17 15:29:47 -0700 |
commit | 23fbd5292d356067e85e1eec4eb4f743532b0503 (patch) | |
tree | 3255e7d3429dba3fc13d9e98eeabcedf9fa75ebf | |
parent | 6a32a96d8df184c3ace4847beb48fdcb846d2286 (diff) |
Actually build Secure RPC authentication support (missed in modularization)
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | include/dix-config.h.in | 3 | ||||
-rw-r--r-- | os/Makefile.am | 6 | ||||
-rw-r--r-- | os/rpcauth.c | 16 |
4 files changed, 17 insertions, 9 deletions
diff --git a/configure.ac b/configure.ac index 41cc10369..f0ede7589 100644 --- a/configure.ac +++ b/configure.ac @@ -597,6 +597,7 @@ XTRANS_CONNECTION_FLAGS # Secure RPC detection macro from xtrans.m4 XTRANS_SECURE_RPC_FLAGS +AM_CONDITIONAL(SECURE_RPC, [test "x$SECURE_RPC" = xyes]) AM_CONDITIONAL(INT10_VM86, [test "x$INT10" = xvm86]) AM_CONDITIONAL(INT10_X86EMU, [test "x$INT10" = xx86emu]) diff --git a/include/dix-config.h.in b/include/dix-config.h.in index ad97605a5..69fab5e53 100644 --- a/include/dix-config.h.in +++ b/include/dix-config.h.in @@ -282,6 +282,9 @@ /* Support MIT-SCREEN-SAVER extension */ #undef SCREENSAVER +/* Support Secure RPC ("SUN-DES-1") authentication for X11 clients */ +#undef SECURE_RPC + /* Use a lock to prevent multiple servers on a display */ #undef SERVER_LOCK diff --git a/os/Makefile.am b/os/Makefile.am index 53b2d7f0c..d2a989782 100644 --- a/os/Makefile.am +++ b/os/Makefile.am @@ -3,9 +3,9 @@ noinst_LTLIBRARIES = libos.la libcwrapper.la AM_CFLAGS = $(DIX_CFLAGS) # FIXME: Add support for these in configure.ac -SECURERPC_SRCS = rpcauth.c INTERNALMALLOC_SRCS = xalloc.c +SECURERPC_SRCS = rpcauth.c XCSECURITY_SRCS = secauth.c XDMCP_SRCS = xdmcp.c STRLCAT_SRCS = strlcat.c strlcpy.c @@ -28,6 +28,10 @@ libos_la_SOURCES = \ xprintf.c \ $(XORG_SRCS) +if SECURE_RPC +libos_la_SOURCES += $(SECURERPC_SRCS) +endif + if XCSECURITY libos_la_SOURCES += $(XCSECURITY_SRCS) endif diff --git a/os/rpcauth.c b/os/rpcauth.c index 603844aee..3451ac18b 100644 --- a/os/rpcauth.c +++ b/os/rpcauth.c @@ -39,7 +39,7 @@ from The Open Group. #ifdef SECURE_RPC #include <X11/X.h> -#include "Xauth.h" +#include <X11/Xauth.h> #include "misc.h" #include "os.h" #include "dixstruct.h" @@ -135,7 +135,7 @@ CheckNetName ( static char rpc_error[MAXNETNAMELEN+50]; -XID +_X_HIDDEN XID SecureRPCCheck (unsigned short data_length, char *data, ClientPtr client, char **reason) { @@ -159,14 +159,14 @@ SecureRPCCheck (unsigned short data_length, char *data, return (XID) ~0L; } -void +_X_HIDDEN void SecureRPCInit (void) { if (rpc_id == ~0L) AddAuthorization (9, "SUN-DES-1", 0, (char *) 0); } -int +_X_HIDDEN int SecureRPCAdd (unsigned short data_length, char *data, XID id) { if (data_length) @@ -175,26 +175,26 @@ SecureRPCAdd (unsigned short data_length, char *data, XID id) return 1; } -int +_X_HIDDEN int SecureRPCReset (void) { rpc_id = (XID) ~0L; return 1; } -XID +_X_HIDDEN XID SecureRPCToID (unsigned short data_length, char *data) { return rpc_id; } -int +_X_HIDDEN int SecureRPCFromID (XID id, unsigned short *data_lenp, char **datap) { return 0; } -int +_X_HIDDEN int SecureRPCRemove (unsigned short data_length, char *data) { return 0; |