From 7470578520e90b6402b2509cd0c51fd4fd84849f Mon Sep 17 00:00:00 2001 From: Brent Collins Date: Thu, 7 May 2015 15:10:19 -0400 Subject: [PATCH] shm: Fix xselinux resource initialization for xinerama pixmaps This is necessary to avoid a NULL pointer deference when the pixmap is used later. [ajax: massaged commit message, fixed it to compile] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89748 Reviewed-by: Adam Jackson Signed-off-by: Brent Collins --- Xext/shm.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Xext/shm.c b/Xext/shm.c index 52d997425..b359a9035 100644 --- a/Xext/shm.c +++ b/Xext/shm.c @@ -971,6 +971,12 @@ ProcPanoramiXShmCreatePixmap(ClientPtr client) stuff->offset); if (pMap) { + result = XaceHook(XACE_RESOURCE_ACCESS, client, stuff->pid, + RT_PIXMAP, pMap, RT_NONE, NULL, DixCreateAccess); + if (result != Success) { + pDraw->pScreen->DestroyPixmap(pMap); + return result; + } dixSetPrivate(&pMap->devPrivates, shmPixmapPrivateKey, shmdesc); shmdesc->refcnt++; pMap->drawable.serialNumber = NEXT_SERIAL_NUMBER;