xace: export XaceRegisterCallback() and XaceDeleteCallback()
Allow drivers to use Xace as a clean way for retrieving property updates. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
parent
45eb1a0af3
commit
850da1ad5f
12
Xext/xace.c
12
Xext/xace.c
|
@ -280,3 +280,15 @@ XaceIsLocal(ClientPtr client)
|
|||
{
|
||||
return ClientIsLocal(client);
|
||||
}
|
||||
|
||||
Bool
|
||||
XaceRegisterCallback(int hook, CallbackProcPtr callback, void *data)
|
||||
{
|
||||
return AddCallback(XaceHooks+(hook), callback, data);
|
||||
}
|
||||
|
||||
Bool
|
||||
XaceDeleteCallback(int hook, CallbackProcPtr callback, void *data)
|
||||
{
|
||||
return DeleteCallback(XaceHooks+(hook), callback, data);
|
||||
}
|
||||
|
|
17
Xext/xace.h
17
Xext/xace.h
|
@ -56,6 +56,12 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
|
||||
extern CallbackListPtr XaceHooks[XACE_NUM_HOOKS];
|
||||
|
||||
/* Entry point for hook functions. Called by Xserver.
|
||||
* Required by several modules
|
||||
*/
|
||||
_X_EXPORT Bool XaceRegisterCallback(int hook, CallbackProcPtr callback, void *data);
|
||||
_X_EXPORT Bool XaceDeleteCallback(int hook, CallbackProcPtr callback, void *data);
|
||||
|
||||
/* determine whether any callbacks are present for the XACE hook */
|
||||
int XaceHookIsSet(int hook);
|
||||
|
||||
|
@ -88,16 +94,7 @@ int XaceHookScreensaverAccess(ClientPtr client, ScreenPtr screen, Mask access_mo
|
|||
int XaceHookAuthAvail(ClientPtr client, XID authId);
|
||||
int XaceHookKeyAvail(xEventPtr ev, DeviceIntPtr dev, int count);
|
||||
|
||||
|
||||
/* Register a callback for a given hook.
|
||||
*/
|
||||
#define XaceRegisterCallback(hook,callback,data) \
|
||||
AddCallback(XaceHooks+(hook), callback, data)
|
||||
|
||||
/* Unregister an existing callback for a given hook.
|
||||
*/
|
||||
#define XaceDeleteCallback(hook,callback,data) \
|
||||
DeleteCallback(XaceHooks+(hook), callback, data)
|
||||
/* Register / unregister a callback for a given hook. */
|
||||
|
||||
/* XTrans wrappers for use by security modules
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue