[PATCH xserver 02/24] Xext/xselinux: Warning fixes
Keith Packard
keithp at keithp.com
Sun Sep 20 23:16:13 PDT 2015
There's a 'const char *' adventure here that I'm mostly ignoring; some
client information gets const poisoned. Worked around by adding a
couple of casts. Ick.
Added an _X_ATTRIBUTE_PRINTF to SELinuxLog.
Ignore a couple of unused return values.
Signed-off-by: Keith Packard <keithp at keithp.com>
---
Xext/xselinux_hooks.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/Xext/xselinux_hooks.c b/Xext/xselinux_hooks.c
index 48219a9..e69bfe7 100644
--- a/Xext/xselinux_hooks.c
+++ b/Xext/xselinux_hooks.c
@@ -147,7 +147,7 @@ SELinuxLabelClient(ClientPtr client)
strncpy(subj->command, cmdname, COMMAND_LEN - 1);
if (!cached)
- free(cmdname); /* const char * */
+ free((void *) cmdname); /* const char * */
}
finish:
@@ -295,6 +295,9 @@ SELinuxAudit(void *auditdata,
}
static int
+SELinuxLog(int type, const char *fmt, ...) _X_ATTRIBUTE_PRINTF(2, 3);
+
+static int
SELinuxLog(int type, const char *fmt, ...)
{
va_list ap;
@@ -316,6 +319,7 @@ SELinuxLog(int type, const char *fmt, ...)
va_start(ap, fmt);
vsnprintf(buf, MAX_AUDIT_MESSAGE_LENGTH, fmt, ap);
rc = audit_log_user_avc_message(audit_fd, aut, buf, NULL, NULL, NULL, 0);
+ (void) rc;
va_end(ap);
LogMessageVerb(X_WARNING, 0, "%s", buf);
return 0;
@@ -476,7 +480,7 @@ SELinuxExtension(CallbackListPtr *pcbl, void *unused, void *calldata)
}
/* Perform the security check */
- auditdata.extension = rec->ext->name;
+ auditdata.extension = (char *) rec->ext->name;
rc = SELinuxDoCheck(subj, obj, SECCLASS_X_EXTENSION, rec->access_mode,
&auditdata);
if (rc != Success)
--
2.5.0
More information about the xorg-devel
mailing list