1*4882a593Smuzhiyun /*********************************************************** 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 4*4882a593Smuzhiyun IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 5*4882a593Smuzhiyun FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 6*4882a593Smuzhiyun AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 7*4882a593Smuzhiyun AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 8*4882a593Smuzhiyun CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun ******************************************************************/ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #ifndef DIX_REGISTRY_H 13*4882a593Smuzhiyun #define DIX_REGISTRY_H 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun /* 16*4882a593Smuzhiyun * Result returned from any unsuccessful lookup 17*4882a593Smuzhiyun */ 18*4882a593Smuzhiyun #define XREGISTRY_UNKNOWN "<unknown>" 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #include "resource.h" 21*4882a593Smuzhiyun #include "extnsionst.h" 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #if defined(XSELINUX) || defined(RES) 24*4882a593Smuzhiyun #define X_REGISTRY_RESOURCE 1 25*4882a593Smuzhiyun #endif 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #if defined(XSELINUX) || defined(XCSECURITY) || defined(XSERVER_DTRACE) 28*4882a593Smuzhiyun #define X_REGISTRY_REQUEST 1 29*4882a593Smuzhiyun #endif 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun /* Internal string registry - for auditing, debugging, security, etc. */ 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #ifdef X_REGISTRY_RESOURCE 34*4882a593Smuzhiyun /* Functions used by the X-Resource extension */ 35*4882a593Smuzhiyun extern _X_EXPORT void RegisterResourceName(RESTYPE type, const char *name); 36*4882a593Smuzhiyun extern _X_EXPORT const char *LookupResourceName(RESTYPE rtype); 37*4882a593Smuzhiyun #endif 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun #ifdef X_REGISTRY_REQUEST 40*4882a593Smuzhiyun extern _X_EXPORT void RegisterExtensionNames(ExtensionEntry * ext); 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun /* 43*4882a593Smuzhiyun * Lookup functions. The returned string must not be modified or freed. 44*4882a593Smuzhiyun */ 45*4882a593Smuzhiyun extern _X_EXPORT const char *LookupMajorName(int major); 46*4882a593Smuzhiyun extern _X_EXPORT const char *LookupRequestName(int major, int minor); 47*4882a593Smuzhiyun extern _X_EXPORT const char *LookupEventName(int event); 48*4882a593Smuzhiyun extern _X_EXPORT const char *LookupErrorName(int error); 49*4882a593Smuzhiyun #endif 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun /* 52*4882a593Smuzhiyun * Setup and teardown 53*4882a593Smuzhiyun */ 54*4882a593Smuzhiyun extern _X_EXPORT void dixResetRegistry(void); 55*4882a593Smuzhiyun extern _X_EXPORT void dixFreeRegistry(void); 56*4882a593Smuzhiyun extern _X_EXPORT void dixCloseRegistry(void); 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun #endif /* DIX_REGISTRY_H */ 59