3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/***********************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncAUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync******************************************************************/
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifndef DIX_REGISTRY_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define DIX_REGISTRY_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/*
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Result returned from any unsuccessful lookup
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define XREGISTRY_UNKNOWN "<unknown>"
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include "resource.h"
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include "extnsionst.h"
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#if defined(XSELINUX) || defined(RES)
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#define X_REGISTRY_RESOURCE 1
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#endif
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#if defined(XSELINUX) || defined(XCSECURITY) || defined(XSERVER_DTRACE)
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#define X_REGISTRY_REQUEST 1
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync#endif
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* Internal string registry - for auditing, debugging, security, etc. */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifdef X_REGISTRY_RESOURCE
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* Functions used by the X-Resource extension */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT void RegisterResourceName(RESTYPE type, const char *name);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT const char *LookupResourceName(RESTYPE rtype);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifdef X_REGISTRY_REQUEST
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT void RegisterExtensionNames(ExtensionEntry * ext);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/*
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lookup functions. The returned string must not be modified or freed.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT const char *LookupMajorName(int major);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT const char *LookupRequestName(int major, int minor);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT const char *LookupEventName(int event);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT const char *LookupErrorName(int error);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/*
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Setup and teardown
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT void dixResetRegistry(void);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT void dixFreeRegistry(void);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern _X_EXPORT void dixCloseRegistry(void);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* DIX_REGISTRY_H */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync