From 99998196017ef38ec88459b50605aa20f628788b Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Mon, 12 Dec 2011 16:49:33 -0800 Subject: [PATCH] Constify string for authorization protocol names gcc was warning from storing string constants in a char *name field: auth.c:64:1: warning: initialization discards qualifiers from pointer target type auth.c:72:1: warning: initialization discards qualifiers from pointer target type auth.c:81:1: warning: initialization discards qualifiers from pointer target type Making the field const requires changing AuthorizationFromID to take a const char ** pointer for the name argument which it sets to point to the matching name entry. Changing that argument requires changing its sole caller in the security extension to pass the address of a const char * variable to it, which it can do, since the only thing it does with the returned name is to pass it back to the RemoveAuthorization function that already expects a const char *name. Signed-off-by: Alan Coopersmith Reviewed-by: Jamey Sharp Reviewed-by: Peter Hutterer --- Xext/security.c | 3 ++- include/os.h | 2 +- os/auth.c | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Xext/security.c b/Xext/security.c index 6fc1eafdd..63892aa85 100644 --- a/Xext/security.c +++ b/Xext/security.c @@ -171,7 +171,8 @@ SecurityDeleteAuthorization( { SecurityAuthorizationPtr pAuth = (SecurityAuthorizationPtr)value; unsigned short name_len, data_len; - char *name, *data; + const char *name; + char *data; int status; int i; OtherClientsPtr pEventClient; diff --git a/include/os.h b/include/os.h index 1fd5367c4..0b5024156 100644 --- a/include/os.h +++ b/include/os.h @@ -405,7 +405,7 @@ extern _X_EXPORT void InitAuthorization(char * /*filename*/); extern _X_EXPORT int AuthorizationFromID ( XID id, unsigned short *name_lenp, - char **namep, + const char **namep, unsigned short *data_lenp, char **datap); diff --git a/os/auth.c b/os/auth.c index 768575139..9d36249f2 100644 --- a/os/auth.c +++ b/os/auth.c @@ -48,7 +48,7 @@ from The Open Group. struct protocol { unsigned short name_length; - char *name; + const char *name; AuthAddCFunc Add; /* new authorization data */ AuthCheckFunc Check; /* verify client authorization data */ AuthRstCFunc Reset; /* delete all authorization data entries */ @@ -236,7 +236,7 @@ int AuthorizationFromID ( XID id, unsigned short *name_lenp, - char **namep, + const char **namep, unsigned short *data_lenp, char **datap) {