xace: remove the special-cased "ignore" functionality from the property code.
There will be no more faking of Success to hide things. XACE does not provide polyinstantiation.
This commit is contained in:
@@ -20,11 +20,6 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
#ifndef _XACE_H
|
#ifndef _XACE_H
|
||||||
#define _XACE_H
|
#define _XACE_H
|
||||||
|
|
||||||
/* Special value used for ignore operation. This is a deprecated feature
|
|
||||||
* only for Security extension support. Do not use in new code.
|
|
||||||
*/
|
|
||||||
#define XaceIgnoreError BadRequest
|
|
||||||
|
|
||||||
#ifdef XACE
|
#ifdef XACE
|
||||||
|
|
||||||
#define XACE_EXTENSION_NAME "XAccessControlExtension"
|
#define XACE_EXTENSION_NAME "XAccessControlExtension"
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ ProcRotateProperties(ClientPtr client)
|
|||||||
if (rc != Success) {
|
if (rc != Success) {
|
||||||
DEALLOCATE_LOCAL(props);
|
DEALLOCATE_LOCAL(props);
|
||||||
client->errorValue = atoms[i];
|
client->errorValue = atoms[i];
|
||||||
return (rc == XaceIgnoreError) ? Success : rc;
|
return rc;
|
||||||
}
|
}
|
||||||
props[i] = pProp;
|
props[i] = pProp;
|
||||||
}
|
}
|
||||||
@@ -282,7 +282,7 @@ dixChangeWindowProperty(ClientPtr pClient, WindowPtr pWin, Atom property,
|
|||||||
xfree(data);
|
xfree(data);
|
||||||
xfree(pProp);
|
xfree(pProp);
|
||||||
pClient->errorValue = property;
|
pClient->errorValue = property;
|
||||||
return (rc == XaceIgnoreError) ? Success : rc;
|
return rc;
|
||||||
}
|
}
|
||||||
pProp->next = pWin->optional->userProps;
|
pProp->next = pWin->optional->userProps;
|
||||||
pWin->optional->userProps = pProp;
|
pWin->optional->userProps = pProp;
|
||||||
@@ -293,7 +293,7 @@ dixChangeWindowProperty(ClientPtr pClient, WindowPtr pWin, Atom property,
|
|||||||
DixWriteAccess);
|
DixWriteAccess);
|
||||||
if (rc != Success) {
|
if (rc != Success) {
|
||||||
pClient->errorValue = property;
|
pClient->errorValue = property;
|
||||||
return (rc == XaceIgnoreError) ? Success : rc;
|
return rc;
|
||||||
}
|
}
|
||||||
/* To append or prepend to a property the request format and type
|
/* To append or prepend to a property the request format and type
|
||||||
must match those of the already defined property. The
|
must match those of the already defined property. The
|
||||||
@@ -499,8 +499,7 @@ ProcGetProperty(ClientPtr client)
|
|||||||
rc = XaceHook(XACE_PROPERTY_ACCESS, client, pWin, pProp, access_mode);
|
rc = XaceHook(XACE_PROPERTY_ACCESS, client, pWin, pProp, access_mode);
|
||||||
if (rc != Success) {
|
if (rc != Success) {
|
||||||
client->errorValue = stuff->property;
|
client->errorValue = stuff->property;
|
||||||
return (rc == XaceIgnoreError) ?
|
return rc;
|
||||||
NullPropertyReply(client, pProp->type, pProp->format, &reply) : rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If the request type and actual type don't match. Return the
|
/* If the request type and actual type don't match. Return the
|
||||||
@@ -641,7 +640,7 @@ ProcDeleteProperty(ClientPtr client)
|
|||||||
FindProperty(pWin, stuff->property), DixDestroyAccess);
|
FindProperty(pWin, stuff->property), DixDestroyAccess);
|
||||||
if (result != Success) {
|
if (result != Success) {
|
||||||
client->errorValue = stuff->property;
|
client->errorValue = stuff->property;
|
||||||
return (result == XaceIgnoreError) ? Success : result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
result = DeleteProperty(pWin, stuff->property);
|
result = DeleteProperty(pWin, stuff->property);
|
||||||
|
|||||||
Reference in New Issue
Block a user