diff --git a/Xext/security.c b/Xext/security.c index d1f0df9e4..6a9c3d509 100644 --- a/Xext/security.c +++ b/Xext/security.c @@ -31,6 +31,7 @@ in this Software without prior written authorization from The Open Group. #include "dix/dix_priv.h" #include "dix/registry_priv.h" #include "os/audit.h" +#include "os/auth.h" #include "scrnintstr.h" #include "inputstr.h" diff --git a/dix/main.c b/dix/main.c index ef322eaff..36771a280 100644 --- a/dix/main.c +++ b/dix/main.c @@ -87,6 +87,7 @@ Equipment Corporation. #include "dix/dix_priv.h" #include "dix/registry_priv.h" #include "os/audit.h" +#include "os/auth.h" #include "os/cmdline.h" #include "scrnintstr.h" diff --git a/hw/xwin/winauth.c b/hw/xwin/winauth.c index 8d151c36a..5bc5a7316 100644 --- a/hw/xwin/winauth.c +++ b/hw/xwin/winauth.c @@ -62,7 +62,7 @@ static xcb_auth_info_t auth_info; */ #ifndef XCSECURITY -static XID +XID GenerateAuthorization(unsigned name_length, const char *name, unsigned data_length, diff --git a/include/os.h b/include/os.h index 47dbe175e..c4e27a4cb 100644 --- a/include/os.h +++ b/include/os.h @@ -320,9 +320,6 @@ OsAbort(void) extern _X_EXPORT Bool PrivsElevated(void); -extern _X_EXPORT void -CheckUserAuthorization(void); - extern _X_EXPORT int AddHost(ClientPtr /*client */ , int /*family */ , @@ -378,53 +375,6 @@ DefineSelf(int /*fd */ ); #ifdef XDMCP extern _X_EXPORT void AugmentSelf(void *from, int len); - -extern _X_EXPORT void -RegisterAuthorizations(void); -#endif - -extern _X_EXPORT void -InitAuthorization(const char * /*filename */ ); - -/* extern int LoadAuthorization(void); */ - -extern _X_EXPORT int -AuthorizationFromID(XID id, - unsigned short *name_lenp, - const char **namep, - unsigned short *data_lenp, char **datap); - -extern _X_EXPORT XID -CheckAuthorization(unsigned int /*namelength */ , - const char * /*name */ , - unsigned int /*datalength */ , - const char * /*data */ , - ClientPtr /*client */ , - const char ** /*reason */ - ); - -extern _X_EXPORT void -ResetAuthorization(void); - -extern _X_EXPORT int -RemoveAuthorization(unsigned short name_length, - const char *name, - unsigned short data_length, const char *data); - -extern _X_EXPORT int -AddAuthorization(unsigned int /*name_length */ , - const char * /*name */ , - unsigned int /*data_length */ , - char * /*data */ ); - -#ifdef XCSECURITY -extern _X_EXPORT XID -GenerateAuthorization(unsigned int /* name_length */ , - const char * /* name */ , - unsigned int /* data_length */ , - const char * /* data */ , - unsigned int * /* data_length_return */ , - char ** /* data_return */ ); #endif extern _X_EXPORT int diff --git a/os/auth.h b/os/auth.h index 177282be5..baad9fda9 100644 --- a/os/auth.h +++ b/os/auth.h @@ -53,4 +53,40 @@ void DisableLocalAccess(void); void LocalAccessScopeUser(void); +void InitAuthorization(const char *filename); + +int AuthorizationFromID(XID id, + unsigned short *name_lenp, + const char **namep, + unsigned short *data_lenp, char **datap); + +XID CheckAuthorization(unsigned int namelength, + const char *name, + unsigned int datalength, + const char *data, + ClientPtr client, + const char **reason); + +void ResetAuthorization(void); + +int RemoveAuthorization(unsigned short name_length, + const char *name, + unsigned short data_length, const char *data); + +int AddAuthorization(unsigned int name_length, + const char *name, + unsigned int data_length, + char *data); + +XID GenerateAuthorization(unsigned int name_length, + const char *name, + unsigned int data_length, + const char *data, + unsigned int *data_length_return, + char **data_return); + +void RegisterAuthorizations(void); + +void CheckUserAuthorization(void); + #endif /* _XSERVER_OS_AUTH_H */ diff --git a/os/rpcauth.c b/os/rpcauth.c index c531a54e8..d3d4e4bd8 100644 --- a/os/rpcauth.c +++ b/os/rpcauth.c @@ -39,6 +39,9 @@ from The Open Group. #include #include + +#include "os/auth.h" + #include "misc.h" #include "os.h" #include "osdep.h" diff --git a/os/xdmauth.c b/os/xdmauth.c index cffd70ad0..21b79e943 100644 --- a/os/xdmauth.c +++ b/os/xdmauth.c @@ -43,6 +43,9 @@ from The Open Group. #define TRANS_SERVER #define TRANS_REOPEN #include + +#include "os/auth.h" + #include "os.h" #include "osdep.h" #include "xdmcp.h" diff --git a/os/xdmcp.c b/os/xdmcp.c index 2a62e9a28..edf69590b 100644 --- a/os/xdmcp.c +++ b/os/xdmcp.c @@ -39,6 +39,9 @@ #include #include #include + +#include "os/auth.h" + #include "misc.h" #include "osdep.h" #include "xdmcp.h"