XACE: Change access modes for some device-related requests.
Opening a device is not really "reading" it. Requests that globally configure a device should require "manage" access.
This commit is contained in:
@@ -1295,7 +1295,7 @@ DoSetModifierMapping(ClientPtr client, KeyCode *inputMap,
|
||||
}
|
||||
}
|
||||
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixSetAttrAccess);
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixManageAccess);
|
||||
if (rc != Success)
|
||||
return rc;
|
||||
|
||||
@@ -1435,7 +1435,7 @@ ProcChangeKeyboardMapping(ClientPtr client)
|
||||
|
||||
for (pDev = inputInfo.devices; pDev; pDev = pDev->next) {
|
||||
if ((pDev->coreEvents || pDev == inputInfo.keyboard) && pDev->key) {
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixSetAttrAccess);
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixManageAccess);
|
||||
if (rc != Success)
|
||||
return rc;
|
||||
}
|
||||
@@ -1472,7 +1472,7 @@ DoSetPointerMapping(ClientPtr client, DeviceIntPtr device, BYTE *map, int n)
|
||||
|
||||
for (dev = inputInfo.devices; dev; dev = dev->next) {
|
||||
if ((dev->coreEvents || dev == inputInfo.pointer) && dev->button) {
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, dev, DixSetAttrAccess);
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, dev, DixManageAccess);
|
||||
if (rc != Success)
|
||||
return rc;
|
||||
}
|
||||
@@ -1810,7 +1810,7 @@ ProcChangeKeyboardControl (ClientPtr client)
|
||||
for (pDev = inputInfo.devices; pDev; pDev = pDev->next) {
|
||||
if ((pDev->coreEvents || pDev == inputInfo.keyboard) &&
|
||||
pDev->kbdfeed && pDev->kbdfeed->CtrlProc) {
|
||||
ret = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixSetAttrAccess);
|
||||
ret = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixManageAccess);
|
||||
if (ret != Success)
|
||||
return ret;
|
||||
}
|
||||
@@ -1961,7 +1961,7 @@ ProcChangePointerControl(ClientPtr client)
|
||||
for (mouse = inputInfo.devices; mouse; mouse = mouse->next) {
|
||||
if ((mouse->coreEvents || mouse == inputInfo.pointer) &&
|
||||
mouse->ptrfeed && mouse->ptrfeed->CtrlProc) {
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, mouse, DixSetAttrAccess);
|
||||
rc = XaceHook(XACE_DEVICE_ACCESS, client, mouse, DixManageAccess);
|
||||
if (rc != Success)
|
||||
return rc;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user