xserver: Branch 'XACE-SELINUX' - 39 commits

Eamon Walsh ewalsh at kemper.freedesktop.org
Mon Oct 15 19:43:02 PDT 2007


 XTrap/xtrapdi.c                       |   36 ++++++++++
 Xext/EVI.c                            |   29 +++-----
 Xext/appgroup.c                       |   38 ++++++++---
 Xext/bigreq.c                         |   22 ++----
 Xext/cup.c                            |   41 ++++-------
 Xext/dpms.c                           |   35 ++++++----
 Xext/fontcache.c                      |   29 +++++---
 Xext/mbuf.c                           |   35 +++++++++-
 Xext/mitmisc.c                        |   24 ++----
 Xext/panoramiX.c                      |   14 ++++
 Xext/saver.c                          |   26 +++++--
 Xext/shape.c                          |   32 +++++++--
 Xext/shm.c                            |   23 ++++++
 Xext/sync.c                           |   40 +++++++++++
 Xext/xcmisc.c                         |   24 +++---
 Xext/xevie.c                          |   15 ++++
 Xext/xf86bigfont.c                    |   24 ++----
 Xext/xprint.c                         |   64 ++++++++++++++++++
 Xext/xres.c                           |   14 +++-
 Xext/xtest.c                          |   28 ++++----
 Xext/xvmain.c                         |   53 +++++++++++++++
 Xext/xvmc.c                           |   29 ++++++++
 Xi/extinit.c                          |  117 ++++++++++++++++++++++++++++++++++
 composite/compext.c                   |   20 +++++
 damageext/damageext.c                 |   21 +++++-
 dbe/dbe.c                             |   21 ++++++
 hw/darwin/quartz/applewm.c            |   41 +++++++++++
 hw/darwin/quartz/pseudoramiX.c        |   14 ++++
 hw/darwin/quartz/xpr/appledri.c       |   29 ++++++++
 hw/dmx/dmx.c                          |   40 +++++++++++
 hw/xfree86/dixmods/extmod/xf86dga2.c  |   68 +++++++++++++++++++
 hw/xfree86/dixmods/extmod/xf86misc.c  |   46 +++++++++++++
 hw/xfree86/dixmods/extmod/xf86vmode.c |   67 +++++++++++++++++++
 hw/xfree86/dri/xf86dri.c              |   38 ++++++++++-
 hw/xwin/winwindowswm.c                |   31 ++++++++-
 randr/randr.c                         |   68 +++++++++++++++++++
 randr/rrxinerama.c                    |   26 ++++++-
 record/record.c                       |   20 +++++
 render/render.c                       |   90 ++++++++++++++++++++++++++
 xfixes/xfixes.c                       |   78 ++++++++++++++++++++++
 xkb/xkb.c                             |   63 +++++++++++++++++-
 41 files changed, 1393 insertions(+), 180 deletions(-)

New commits:
commit 853ea337bdad17f8f6ec7d940de14ce2cbbbf93e
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 22:13:02 2007 -0400

    registry: Register XvMC extension protocol names.

diff --git a/Xext/xvmc.c b/Xext/xvmc.c
index 7ae8cc0..a1e0ed1 100644
--- a/Xext/xvmc.c
+++ b/Xext/xvmc.c
@@ -16,6 +16,7 @@
 #include "scrnintstr.h"
 #include "extnsionst.h"
 #include "servermd.h"
+#include "registry.h"
 #include <X11/Xfuncproto.h>
 #include "xvdix.h"
 #include <X11/extensions/XvMC.h>
@@ -700,6 +701,34 @@ XvMCExtensionInit(void)
    XvMCReqCode = extEntry->base;
    XvMCEventBase = extEntry->eventBase;
    XvMCErrorBase = extEntry->errorBase;
+
+    RegisterRequestName(XvMCReqCode, xvmc_QueryVersion,
+			XvMCName ":QueryVersion");
+    RegisterRequestName(XvMCReqCode, xvmc_ListSurfaceTypes,
+			XvMCName ":ListSurfaceTypes");
+    RegisterRequestName(XvMCReqCode, xvmc_CreateContext,
+			XvMCName ":CreateContext");
+    RegisterRequestName(XvMCReqCode, xvmc_DestroyContext,
+			XvMCName ":DestroyContext");
+    RegisterRequestName(XvMCReqCode, xvmc_CreateSurface,
+			XvMCName ":CreateSurface");
+    RegisterRequestName(XvMCReqCode, xvmc_DestroySurface,
+			XvMCName ":DestroySurface");
+    RegisterRequestName(XvMCReqCode, xvmc_CreateSubpicture,
+			XvMCName ":CreateSubpicture");
+    RegisterRequestName(XvMCReqCode, xvmc_DestroySubpicture,
+			XvMCName ":DestroySubpicture");
+    RegisterRequestName(XvMCReqCode, xvmc_ListSubpictureTypes,
+			XvMCName ":ListSubpictureTypes");
+    RegisterRequestName(XvMCReqCode, xvmc_GetDRInfo,
+			XvMCName ":GetDRInfo");
+
+    RegisterErrorName(XvMCErrorBase + XvMCBadContext,
+		      XvMCName ":BadContext");
+    RegisterErrorName(XvMCErrorBase + XvMCBadSurface,
+		      XvMCName ":BadSurface");
+    RegisterErrorName(XvMCErrorBase + XvMCBadSubpicture,
+		      XvMCName ":BadSubpicture");
 }
 
 static Bool
commit 58c3240fcbec23aad122e1c340f6bb6d3b18f779
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 22:09:47 2007 -0400

    registry: Register MIT-SCREEN-SAVER extension protocol names.

diff --git a/Xext/saver.c b/Xext/saver.c
index d282173..eff9325 100644
--- a/Xext/saver.c
+++ b/Xext/saver.c
@@ -49,6 +49,7 @@ in this Software without prior written authorization from the X Consortium.
 #include "cursorstr.h"
 #include "colormapst.h"
 #include "xace.h"
+#include "registry.h"
 #ifdef PANORAMIX
 #include "panoramiX.h"
 #include "panoramiXsrv.h"
@@ -62,9 +63,6 @@ in this Software without prior written authorization from the X Consortium.
 
 #include "modinit.h"
 
-#if 0
-static unsigned char ScreenSaverReqCode = 0;
-#endif
 static int ScreenSaverEventBase = 0;
 
 static DISPATCH_PROC(ProcScreenSaverQueryInfo);
@@ -274,12 +272,26 @@ ScreenSaverExtensionInit(INITARGS)
 				 ProcScreenSaverDispatch, SProcScreenSaverDispatch,
 				 ScreenSaverResetProc, StandardMinorOpcode)))
     {
-#if 0
-	ScreenSaverReqCode = (unsigned char)extEntry->base;
-#endif
 	ScreenSaverEventBase = extEntry->eventBase;
 	EventSwapVector[ScreenSaverEventBase] = (EventSwapPtr) SScreenSaverNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_ScreenSaverQueryVersion,
+			ScreenSaverName ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_ScreenSaverQueryInfo,
+			ScreenSaverName ":QueryInfo");
+    RegisterRequestName(extEntry->base, X_ScreenSaverSelectInput,
+			ScreenSaverName ":SelectInput");
+    RegisterRequestName(extEntry->base, X_ScreenSaverSetAttributes,
+			ScreenSaverName ":SetAttributes");
+    RegisterRequestName(extEntry->base, X_ScreenSaverUnsetAttributes,
+			ScreenSaverName ":UnsetAttributes");
+    RegisterRequestName(extEntry->base, X_ScreenSaverSuspend,
+			ScreenSaverName ":Suspend");
+
+    RegisterEventName(ScreenSaverEventBase + ScreenSaverNotify,
+		      ScreenSaverName ":Notify");
 }
 
 /*ARGSUSED*/
commit 4e274e90e16b1d954391e1af3e2074fb10f70ee7
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 22:04:20 2007 -0400

    registry: Register SHAPE extension protocol names.

diff --git a/Xext/shape.c b/Xext/shape.c
index 0f49f73..12ab53a 100644
--- a/Xext/shape.c
+++ b/Xext/shape.c
@@ -43,6 +43,7 @@ in this Software without prior written authorization from The Open Group.
 #include "dixstruct.h"
 #include "resource.h"
 #include "opaque.h"
+#include "registry.h"
 #define _SHAPE_SERVER_	/* don't want Xlib structures */
 #include <X11/extensions/shapestr.h>
 #include "regionstr.h"
@@ -111,9 +112,6 @@ static DISPATCH_PROC(SProcShapeSelectInput);
 #include "panoramiXsrv.h"
 #endif
 
-#if 0
-static unsigned char ShapeReqCode = 0;
-#endif
 static int ShapeEventBase = 0;
 static RESTYPE ClientType, EventType; /* resource types for event masks */
 
@@ -154,12 +152,32 @@ ShapeExtensionInit(void)
 				 ProcShapeDispatch, SProcShapeDispatch,
 				 ShapeResetProc, StandardMinorOpcode)))
     {
-#if 0
-	ShapeReqCode = (unsigned char)extEntry->base;
-#endif
 	ShapeEventBase = extEntry->eventBase;
 	EventSwapVector[ShapeEventBase] = (EventSwapPtr) SShapeNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_ShapeQueryVersion,
+			SHAPENAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_ShapeRectangles,
+			SHAPENAME ":Rectangles");
+    RegisterRequestName(extEntry->base, X_ShapeMask,
+			SHAPENAME ":Mask");
+    RegisterRequestName(extEntry->base, X_ShapeCombine,
+			SHAPENAME ":Combine");
+    RegisterRequestName(extEntry->base, X_ShapeOffset,
+			SHAPENAME ":Offset");
+    RegisterRequestName(extEntry->base, X_ShapeQueryExtents,
+			SHAPENAME ":QueryExtents");
+    RegisterRequestName(extEntry->base, X_ShapeSelectInput,
+			SHAPENAME ":SelectInput");
+    RegisterRequestName(extEntry->base, X_ShapeInputSelected,
+			SHAPENAME ":InputSelected");
+    RegisterRequestName(extEntry->base, X_ShapeGetRectangles,
+			SHAPENAME ":GetRectangles");
+
+    RegisterEventName(ShapeEventBase + ShapeNotify,
+		      SHAPENAME ":Notify");
 }
 
 /*ARGSUSED*/
commit 9f597f6c87e0b14cc382d8e5929e42f822db4329
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 22:01:20 2007 -0400

    registry: Register SYNC extension protocol names.

diff --git a/Xext/sync.c b/Xext/sync.c
index 81b0cc4..750e0db 100644
--- a/Xext/sync.c
+++ b/Xext/sync.c
@@ -67,6 +67,7 @@ PERFORMANCE OF THIS SOFTWARE.
 #include "dixstruct.h"
 #include "resource.h"
 #include "opaque.h"
+#include "registry.h"
 #define _SYNC_SERVER
 #include <X11/extensions/sync.h>
 #include <X11/extensions/syncstr.h>
@@ -2411,6 +2412,45 @@ SyncExtensionInit(INITARGS)
     fprintf(stderr, "Sync Extension %d.%d\n",
 	    SYNC_MAJOR_VERSION, SYNC_MINOR_VERSION);
 #endif
+
+    RegisterRequestName(extEntry->base, X_SyncInitialize,
+			SYNC_NAME ":Initialize");
+    RegisterRequestName(extEntry->base, X_SyncListSystemCounters,
+			SYNC_NAME ":ListSystemCounters");
+    RegisterRequestName(extEntry->base, X_SyncCreateCounter,
+			SYNC_NAME ":CreateCounter");
+    RegisterRequestName(extEntry->base, X_SyncSetCounter,
+			SYNC_NAME ":SetCounter");
+    RegisterRequestName(extEntry->base, X_SyncChangeCounter,
+			SYNC_NAME ":ChangeCounter");
+    RegisterRequestName(extEntry->base, X_SyncQueryCounter,
+			SYNC_NAME ":QueryCounter");
+    RegisterRequestName(extEntry->base, X_SyncDestroyCounter,
+			SYNC_NAME ":DestroyCounter");
+    RegisterRequestName(extEntry->base, X_SyncAwait,
+			SYNC_NAME ":Await");
+    RegisterRequestName(extEntry->base, X_SyncCreateAlarm,
+			SYNC_NAME ":CreateAlarm");
+    RegisterRequestName(extEntry->base, X_SyncChangeAlarm,
+			SYNC_NAME ":ChangeAlarm");
+    RegisterRequestName(extEntry->base, X_SyncQueryAlarm,
+			SYNC_NAME ":QueryAlarm");
+    RegisterRequestName(extEntry->base, X_SyncDestroyAlarm,
+			SYNC_NAME ":DestroyAlarm");
+    RegisterRequestName(extEntry->base, X_SyncSetPriority,
+			SYNC_NAME ":SetPriority");
+    RegisterRequestName(extEntry->base, X_SyncGetPriority,
+			SYNC_NAME ":GetPriority");
+
+    RegisterEventName(SyncEventBase + XSyncCounterNotify,
+		      SYNC_NAME ":CounterNotify");
+    RegisterEventName(SyncEventBase + XSyncAlarmNotify,
+		      SYNC_NAME ":AlarmNotify");
+
+    RegisterErrorName(SyncErrorBase + XSyncBadCounter,
+		      SYNC_NAME ":BadCounter");
+    RegisterErrorName(SyncErrorBase + XSyncBadAlarm,
+		      SYNC_NAME ":BadAlarm");
 }
 
 
commit b504678ba5407a6fd8d47d051305f7c3d5606dfe
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:54:25 2007 -0400

    registry: Register APPGROUP extension protocol names.

diff --git a/Xext/appgroup.c b/Xext/appgroup.c
index c40782d..4fb4020 100644
--- a/Xext/appgroup.c
+++ b/Xext/appgroup.c
@@ -39,6 +39,7 @@ from The Open Group.
 #include "windowstr.h"
 #include "colormapst.h"
 #include "servermd.h"
+#include "registry.h"
 #define _XAG_SERVER_
 #include <X11/extensions/Xagstr.h>
 #include "xacestr.h"
@@ -762,14 +763,35 @@ static void XagCallClientStateChange(
 void
 XagExtensionInit(INITARGS)
 {
-    if (AddExtension (XAGNAME,
-		      0,
-		      XagNumberErrors,
-		      ProcXagDispatch,
-		      SProcXagDispatch,
-		      XagResetProc,
-		      StandardMinorOpcode)) {
+    ExtensionEntry *extEntry;
+
+    if ((extEntry = AddExtension (XAGNAME,
+				  0,
+				  XagNumberErrors,
+				  ProcXagDispatch,
+				  SProcXagDispatch,
+				  XagResetProc,
+				  StandardMinorOpcode))) {
 	RT_APPGROUP = CreateNewResourceType (XagAppGroupFree);
 	XaceRegisterCallback(XACE_AUTH_AVAIL, XagCallClientStateChange, NULL);
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_XagQueryVersion,
+			XAGNAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_XagCreate,
+			XAGNAME ":Create");
+    RegisterRequestName(extEntry->base, X_XagDestroy,
+			XAGNAME ":Destroy");
+    RegisterRequestName(extEntry->base, X_XagGetAttr,
+			XAGNAME ":GetAttr");
+    RegisterRequestName(extEntry->base, X_XagQuery,
+			XAGNAME ":Query");
+    RegisterRequestName(extEntry->base, X_XagCreateAssoc,
+			XAGNAME ":CreateAssoc");
+    RegisterRequestName(extEntry->base, X_XagDestroyAssoc,
+			XAGNAME ":DestroyAssoc");
+
+    RegisterErrorName(extEntry->errorBase + XagBadAppGroup,
+			XAGNAME ":BadAppGroup");
 }
commit 6ec35a8cf539c900b334dd6df146b394f54e3706
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:46:56 2007 -0400

    registry: Register BigRequests extension protocol names.

diff --git a/Xext/bigreq.c b/Xext/bigreq.c
index d388790..6303f38 100644
--- a/Xext/bigreq.c
+++ b/Xext/bigreq.c
@@ -37,14 +37,11 @@ from The Open Group.
 #include "os.h"
 #include "dixstruct.h"
 #include "extnsionst.h"
+#include "registry.h"
 #include <X11/extensions/bigreqstr.h>
 #include "opaque.h"
 #include "modinit.h"
 
-#if 0
-static unsigned char XBigReqCode;
-#endif
-
 static void BigReqResetProc(
     ExtensionEntry * /* extEntry */
 );
@@ -54,18 +51,15 @@ static DISPATCH_PROC(ProcBigReqDispatch);
 void
 BigReqExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
 
-    if ((extEntry = AddExtension(XBigReqExtensionName, 0, 0,
-				 ProcBigReqDispatch, ProcBigReqDispatch,
-				 BigReqResetProc, StandardMinorOpcode)) != 0)
-	XBigReqCode = (unsigned char)extEntry->base;
-#else
-    (void) AddExtension(XBigReqExtensionName, 0, 0,
-			ProcBigReqDispatch, ProcBigReqDispatch,
-			BigReqResetProc, StandardMinorOpcode);
-#endif
+    if (!(extEntry = AddExtension(XBigReqExtensionName, 0, 0,
+				  ProcBigReqDispatch, ProcBigReqDispatch,
+				  BigReqResetProc, StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_BigReqEnable,
+			XBigReqExtensionName ":Enable");
 }
 
 /*ARGSUSED*/
commit 1254cc399c53eadcc32eeabf69990ed2526c7ae0
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:43:06 2007 -0400

    registry: Register Fontcache extension protocol names.

diff --git a/Xext/fontcache.c b/Xext/fontcache.c
index c54340b..9fae2d7 100644
--- a/Xext/fontcache.c
+++ b/Xext/fontcache.c
@@ -42,6 +42,7 @@
 #include "scrnintstr.h"
 #include "inputstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define _FONTCACHE_SERVER_
 #include <X11/extensions/fontcacheP.h>
 #include <X11/extensions/fontcachstr.h>
@@ -67,28 +68,34 @@ static DISPATCH_PROC(SProcFontCacheGetCacheStatistics);
 static DISPATCH_PROC(SProcFontCacheQueryVersion);
 static DISPATCH_PROC(SProcFontCacheChangeCacheSettings);
 
-#if 0
-static unsigned char FontCacheReqCode = 0;
-#endif
-
 void
 FontCacheExtensionInit(INITARGS)
 {
     ExtensionEntry* extEntry;
 
-    if (
+    if (!
 	(extEntry = AddExtension(FONTCACHENAME,
 				FontCacheNumberEvents,
 				FontCacheNumberErrors,
 				ProcFontCacheDispatch,
 				SProcFontCacheDispatch,
 				FontCacheResetProc,
-				StandardMinorOpcode))) {
-#if 0
-	FontCacheReqCode = (unsigned char)extEntry->base;
-#endif
-	miscErrorBase = extEntry->errorBase;
-    }
+				StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_FontCacheQueryVersion,
+			FONTCACHENAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_FontCacheGetCacheSettings,
+			FONTCACHENAME ":GetCacheSettings");
+    RegisterRequestName(extEntry->base, X_FontCacheChangeCacheSettings,
+			FONTCACHENAME ":ChangeCacheSettings");
+    RegisterRequestName(extEntry->base, X_FontCacheGetCacheStatistics,
+			FONTCACHENAME ":GetCacheStatistics");
+
+    RegisterErrorName(extEntry->errorBase + FontCacheBadProtocol,
+		      FONTCACHENAME ":BadProtocol");
+    RegisterErrorName(extEntry->errorBase + FontCacheCannotAllocMemory,
+		      FONTCACHENAME ":CannotAllocMemory");
 }
 
 /*ARGSUSED*/
commit e987648cf2c21dcbd77dd9a71793090a48e4f521
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:38:56 2007 -0400

    registry: Register EVI extension protocol names.

diff --git a/Xext/EVI.c b/Xext/EVI.c
index 8fe3481..b6752c0 100644
--- a/Xext/EVI.c
+++ b/Xext/EVI.c
@@ -30,14 +30,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #include "dixstruct.h"
 #include "extnsionst.h"
 #include "dix.h"
+#include "registry.h"
 #define _XEVI_SERVER_
 #include <X11/extensions/XEVIstr.h>
 #include "EVIstruct.h"
 #include "modinit.h"
 
-#if 0
-static unsigned char XEVIReqCode = 0;
-#endif
 static EviPrivPtr eviPriv;
 
 static int
@@ -182,19 +180,18 @@ EVIResetProc(ExtensionEntry *extEntry)
 void
 EVIExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
 
-    if ((extEntry = AddExtension(EVINAME, 0, 0,
-				ProcEVIDispatch,
-				SProcEVIDispatch,
-				EVIResetProc, StandardMinorOpcode))) {
-	XEVIReqCode = (unsigned char)extEntry->base;
-#else
-    if (AddExtension(EVINAME, 0, 0,
-		     ProcEVIDispatch, SProcEVIDispatch,
-		     EVIResetProc, StandardMinorOpcode)) {
-#endif
-	eviPriv = eviDDXInit();
-    }
+    if (!(extEntry = AddExtension(EVINAME, 0, 0,
+				  ProcEVIDispatch,
+				  SProcEVIDispatch,
+				  EVIResetProc, StandardMinorOpcode)))
+	return;
+
+    eviPriv = eviDDXInit();
+
+    RegisterRequestName(extEntry->base, X_EVIQueryVersion,
+			EVINAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_EVIGetVisualInfo,
+			EVINAME ":GetVisualInfo");
 }
commit f6226d3bfe1515058e2092e8662ae87825501209
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:35:12 2007 -0400

    registry: Register TOG-CUP extension protocol names.

diff --git a/Xext/cup.c b/Xext/cup.c
index b544a75..4adfc61 100644
--- a/Xext/cup.c
+++ b/Xext/cup.c
@@ -39,6 +39,7 @@ in this Software without prior written authorization from The Open Group.
 #include "scrnintstr.h"
 #include "servermd.h"
 #include "swapreq.h"
+#include "registry.h"
 #define _XCUP_SERVER_
 #include <X11/extensions/Xcupstr.h>
 #include <X11/Xfuncproto.h>
@@ -51,11 +52,6 @@ static int		ProcDispatch(ClientPtr client);
 static int              SProcDispatch(ClientPtr client);
 static void		ResetProc(ExtensionEntry* extEntry);
 
-#if 0
-static unsigned char	ReqCode = 0;
-static int		ErrorBase;
-#endif
-
 #if defined(WIN32) || defined(TESTWIN32)
 #define HAVE_SPECIAL_DESKTOP_COLORS
 #endif
@@ -128,30 +124,25 @@ static xColorItem citems[] = {
 void
 XcupExtensionInit (INITARGS)
 {
-#if 0
     ExtensionEntry* extEntry;
 
-    if ((extEntry = AddExtension (XCUPNAME,
-				0,
-				XcupNumberErrors,
-				ProcDispatch,
-				SProcDispatch,
-				ResetProc,
-				StandardMinorOpcode))) {
-	ReqCode = (unsigned char)extEntry->base;
-	ErrorBase = extEntry->errorBase;
-    }
-#else
-    (void) AddExtension (XCUPNAME,
-			0,
-			XcupNumberErrors,
-			ProcDispatch,
-			SProcDispatch,
-			ResetProc,
-			StandardMinorOpcode);
-#endif
+    if (!(extEntry = AddExtension (XCUPNAME,
+				   0,
+				   XcupNumberErrors,
+				   ProcDispatch,
+				   SProcDispatch,
+				   ResetProc,
+				   StandardMinorOpcode)))
+	return;
 
     /* PC servers initialize the desktop colors (citems) here! */
+
+    RegisterRequestName(extEntry->base, X_XcupQueryVersion,
+			XCUPNAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_XcupGetReservedColormapEntries,
+			XCUPNAME ":GetReservedColormapEntries");
+    RegisterRequestName(extEntry->base, X_XcupStoreColors,
+			XCUPNAME ":StoreColors");
 }
 
 /*ARGSUSED*/
commit 7e182a5d89d618e20dcc77850131690733322d39
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:13:39 2007 -0400

    registry: Register MIT-MISC extension protocol names.

diff --git a/Xext/mitmisc.c b/Xext/mitmisc.c
index 924b880..0b23152 100644
--- a/Xext/mitmisc.c
+++ b/Xext/mitmisc.c
@@ -38,14 +38,11 @@ in this Software without prior written authorization from The Open Group.
 #include "os.h"
 #include "dixstruct.h"
 #include "extnsionst.h"
+#include "registry.h"
 #define _MITMISC_SERVER_
 #include <X11/extensions/mitmiscstr.h>
 #include "modinit.h"
 
-#if 0
-static unsigned char MITReqCode;
-#endif
-
 static void MITResetProc(
     ExtensionEntry * /* extEntry */
 );
@@ -60,18 +57,17 @@ static DISPATCH_PROC(SProcMITSetBugMode);
 void
 MITMiscExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
 
-    if ((extEntry = AddExtension(MITMISCNAME, 0, 0,
-				 ProcMITDispatch, SProcMITDispatch,
-				 MITResetProc, StandardMinorOpcode)) != 0)
-	MITReqCode = (unsigned char)extEntry->base;
-#else
-    (void) AddExtension(MITMISCNAME, 0, 0,
-			ProcMITDispatch, SProcMITDispatch,
-			MITResetProc, StandardMinorOpcode);
-#endif
+    if (!(extEntry = AddExtension(MITMISCNAME, 0, 0,
+				  ProcMITDispatch, SProcMITDispatch,
+				  MITResetProc, StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_MITSetBugMode,
+			MITMISCNAME ":SetBugMode");
+    RegisterRequestName(extEntry->base, X_MITGetBugMode,
+			MITMISCNAME ":GetBugMode");
 }
 
 /*ARGSUSED*/
commit 32f6171862461d17ebea58a2fb6ddd16ac71358c
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:10:14 2007 -0400

    registry: Register XF86Bigfont extension protocol names.

diff --git a/Xext/xf86bigfont.c b/Xext/xf86bigfont.c
index 29f07a6..a8af43d 100644
--- a/Xext/xf86bigfont.c
+++ b/Xext/xf86bigfont.c
@@ -71,6 +71,7 @@
 #include "gcstruct.h"
 #include "dixfontstr.h"
 #include "extnsionst.h"
+#include "registry.h"
 
 #define _XF86BIGFONT_SERVER_
 #include <X11/extensions/xf86bigfstr.h>
@@ -86,10 +87,6 @@ static DISPATCH_PROC(SProcXF86BigfontDispatch);
 static DISPATCH_PROC(SProcXF86BigfontQueryVersion);
 static DISPATCH_PROC(SProcXF86BigfontQueryFont);
 
-#if 0
-static unsigned char XF86BigfontReqCode;
-#endif
-
 #ifdef HAS_SHM
 
 /* A random signature, transmitted to the clients so they can verify that the
@@ -149,7 +146,6 @@ CheckForShmSyscall(void)
 void
 XFree86BigfontExtensionInit()
 {
-#if 0
     ExtensionEntry* extEntry;
 
     if ((extEntry = AddExtension(XF86BIGFONTNAME,
@@ -159,16 +155,6 @@ XFree86BigfontExtensionInit()
 				 SProcXF86BigfontDispatch,
 				 XF86BigfontResetProc,
 				 StandardMinorOpcode))) {
-	XF86BigfontReqCode = (unsigned char) extEntry->base;
-#else
-    if (AddExtension(XF86BIGFONTNAME,
-		     XF86BigfontNumberEvents,
-		     XF86BigfontNumberErrors,
-		     ProcXF86BigfontDispatch,
-		     SProcXF86BigfontDispatch,
-		     XF86BigfontResetProc,
-		     StandardMinorOpcode)) {
-#endif
 #ifdef HAS_SHM
 #ifdef MUST_CHECK_FOR_SHM_SYSCALL
 	/*
@@ -200,7 +186,13 @@ XFree86BigfontExtensionInit()
 # endif
 #endif
 #endif
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_XF86BigfontQueryVersion,
+			XF86BIGFONTNAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_XF86BigfontQueryFont,
+			XF86BIGFONTNAME ":QueryFont");
 }
 
 
commit 12766c5b5ffdab95255a63b2c8421ee773fd43b5
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 21:00:46 2007 -0400

    registry: Register Xv extension protocol names.

diff --git a/Xext/xvmain.c b/Xext/xvmain.c
index a2fc108..b3449b4 100644
--- a/Xext/xvmain.c
+++ b/Xext/xvmain.c
@@ -92,6 +92,7 @@ SOFTWARE.
 #include "resource.h"
 #include "opaque.h"
 #include "input.h"
+#include "registry.h"
 
 #define GLOBAL
 
@@ -195,6 +196,58 @@ XvExtensionInit(void)
 
       (void)MakeAtom(XvName, strlen(XvName), xTrue);
 
+      RegisterRequestName(XvReqCode, xv_QueryExtension,
+			  XvName ":QueryExtension");
+      RegisterRequestName(XvReqCode, xv_QueryAdaptors,
+			  XvName ":QueryAdaptors");
+      RegisterRequestName(XvReqCode, xv_QueryEncodings,
+			  XvName ":QueryEncodings");
+      RegisterRequestName(XvReqCode, xv_GrabPort,
+			  XvName ":GrabPort");
+      RegisterRequestName(XvReqCode, xv_UngrabPort,
+			  XvName ":UngrabPort");
+      RegisterRequestName(XvReqCode, xv_PutVideo,
+			  XvName ":PutVideo");
+      RegisterRequestName(XvReqCode, xv_PutStill,
+			  XvName ":PutStill");
+      RegisterRequestName(XvReqCode, xv_GetVideo,
+			  XvName ":GetVideo");
+      RegisterRequestName(XvReqCode, xv_GetStill,
+			  XvName ":GetStill");
+      RegisterRequestName(XvReqCode, xv_StopVideo,
+			  XvName ":StopVideo");
+      RegisterRequestName(XvReqCode, xv_SelectVideoNotify,
+			  XvName ":SelectVideoNotify");
+      RegisterRequestName(XvReqCode, xv_SelectPortNotify,
+			  XvName ":SelectPortNotify");
+      RegisterRequestName(XvReqCode, xv_QueryBestSize,
+			  XvName ":QueryBestSize");
+      RegisterRequestName(XvReqCode, xv_SetPortAttribute,
+			  XvName ":SetPortAttribute");
+      RegisterRequestName(XvReqCode, xv_GetPortAttribute,
+			  XvName ":GetPortAttribute");
+      RegisterRequestName(XvReqCode, xv_QueryPortAttributes,
+			  XvName ":QueryPortAttributes");
+      RegisterRequestName(XvReqCode, xv_ListImageFormats,
+			  XvName ":ListImageFormats");
+      RegisterRequestName(XvReqCode, xv_QueryImageAttributes,
+			  XvName ":QueryImageAttributes");
+      RegisterRequestName(XvReqCode, xv_PutImage,
+			  XvName ":PutImage");
+      RegisterRequestName(XvReqCode, xv_ShmPutImage,
+			  XvName ":ShmPutImage");
+
+      RegisterEventName(XvEventBase + XvVideoNotify,
+			XvName ":VideoNotify");
+      RegisterEventName(XvEventBase + XvPortNotify,
+			XvName ":PortNotify");
+
+      RegisterErrorName(XvErrorBase + XvBadPort,
+			XvName ":BadPort");
+      RegisterErrorName(XvErrorBase + XvBadEncoding,
+			XvName ":BadEncoding");
+      RegisterErrorName(XvErrorBase + XvBadControl,
+			XvName ":BadControl");
     }
 }
 
commit 35ae03871af88b2f420dd83448011a077852d7a0
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 20:50:26 2007 -0400

    registry: Register XC-MISC extension protocol names.

diff --git a/Xext/xcmisc.c b/Xext/xcmisc.c
index d9a7f10..ba0402c 100644
--- a/Xext/xcmisc.c
+++ b/Xext/xcmisc.c
@@ -39,6 +39,7 @@ from The Open Group.
 #include "dixstruct.h"
 #include "extnsionst.h"
 #include "swaprep.h"
+#include "registry.h"
 #include <X11/extensions/xcmiscstr.h>
 #include "modinit.h"
 
@@ -48,10 +49,6 @@ from The Open Group.
 #define UINT32_MAX 0xffffffffU
 #endif
 
-#if 0
-static unsigned char XCMiscCode;
-#endif
-
 static void XCMiscResetProc(
     ExtensionEntry * /* extEntry */
 );
@@ -68,18 +65,19 @@ static DISPATCH_PROC(SProcXCMiscGetXIDRange);
 void
 XCMiscExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
 
-    if ((extEntry = AddExtension(XCMiscExtensionName, 0, 0,
+    if (!(extEntry = AddExtension(XCMiscExtensionName, 0, 0,
 				ProcXCMiscDispatch, SProcXCMiscDispatch,
-				XCMiscResetProc, StandardMinorOpcode)) != 0)
-	XCMiscCode = (unsigned char)extEntry->base;
-#else
-    (void) AddExtension(XCMiscExtensionName, 0, 0,
-			ProcXCMiscDispatch, SProcXCMiscDispatch,
-			XCMiscResetProc, StandardMinorOpcode);
-#endif
+				XCMiscResetProc, StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_XCMiscGetVersion,
+			XCMiscExtensionName ":GetVersion");
+    RegisterRequestName(extEntry->base, X_XCMiscGetXIDRange,
+			XCMiscExtensionName ":GetXIDRange");
+    RegisterRequestName(extEntry->base, X_XCMiscGetXIDList,
+			XCMiscExtensionName ":GetXIDList");
 }
 
 /*ARGSUSED*/
commit 32fe282d5b8306514d641e15bc6d9fd4ab360977
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 20:45:18 2007 -0400

    registry: Register XTest extension protocol names.

diff --git a/Xext/xtest.c b/Xext/xtest.c
index 79c53b4..3895a00 100644
--- a/Xext/xtest.c
+++ b/Xext/xtest.c
@@ -42,6 +42,7 @@ from The Open Group.
 #include "scrnintstr.h"
 #include "dixevents.h"
 #include "sleepuntil.h"
+#include "registry.h"
 #define _XTEST_SERVER_
 #include <X11/extensions/XTest.h>
 #include <X11/extensions/xteststr.h>
@@ -53,10 +54,6 @@ from The Open Group.
 
 #include "modinit.h"
 
-#if 0
-static unsigned char XTestReqCode;
-#endif
-
 #ifdef XINPUT
 extern int DeviceValuator;
 #endif /* XINPUT */
@@ -88,18 +85,21 @@ static DISPATCH_PROC(SProcXTestGrabControl);
 void
 XTestExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
 
-    if ((extEntry = AddExtension(XTestExtensionName, 0, 0,
-				 ProcXTestDispatch, SProcXTestDispatch,
-				 XTestResetProc, StandardMinorOpcode)) != 0)
-	XTestReqCode = (unsigned char)extEntry->base;
-#else
-    (void) AddExtension(XTestExtensionName, 0, 0,
-			ProcXTestDispatch, SProcXTestDispatch,
-			XTestResetProc, StandardMinorOpcode);
-#endif
+    if (!(extEntry = AddExtension(XTestExtensionName, 0, 0,
+				  ProcXTestDispatch, SProcXTestDispatch,
+				  XTestResetProc, StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_XTestGetVersion,
+			XTestExtensionName ":GetVersion");
+    RegisterRequestName(extEntry->base, X_XTestCompareCursor,
+			XTestExtensionName ":CompareCursor");
+    RegisterRequestName(extEntry->base, X_XTestFakeInput,
+			XTestExtensionName ":FakeInput");
+    RegisterRequestName(extEntry->base, X_XTestGrabControl,
+			XTestExtensionName ":GrabControl");
 }
 
 /*ARGSUSED*/
commit 3877faf7d9fe00ed634077e38a198ae4b91a2bb4
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 20:35:13 2007 -0400

    registry: Register Multibuffer extension protocol names.

diff --git a/Xext/mbuf.c b/Xext/mbuf.c
index ee2ef64..701af66 100644
--- a/Xext/mbuf.c
+++ b/Xext/mbuf.c
@@ -43,6 +43,7 @@ in this Software without prior written authorization from The Open Group.
 #include "resource.h"
 #include "opaque.h"
 #include "sleepuntil.h"
+#include "registry.h"
 #define _MULTIBUF_SERVER_	/* don't want Xlib structures */
 #include <X11/extensions/multibufst.h>
 
@@ -254,7 +255,39 @@ MultibufferExtensionInit()
 	MultibufferErrorBase = extEntry->errorBase;
 	EventSwapVector[MultibufferEventBase + MultibufferClobberNotify] = (EventSwapPtr) SClobberNotifyEvent;
 	EventSwapVector[MultibufferEventBase + MultibufferUpdateNotify] = (EventSwapPtr) SUpdateNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_MbufGetBufferVersion,
+			MULTIBUFFER_PROTOCOL_NAME ":GetBufferVersion");
+    RegisterRequestName(extEntry->base, X_MbufCreateImageBuffers,
+			MULTIBUFFER_PROTOCOL_NAME ":CreateImageBuffers");
+    RegisterRequestName(extEntry->base, X_MbufDestroyImageBuffers,
+			MULTIBUFFER_PROTOCOL_NAME ":DestroyImageBuffers");
+    RegisterRequestName(extEntry->base, X_MbufDisplayImageBuffers,
+			MULTIBUFFER_PROTOCOL_NAME ":DisplayImageBuffers");
+    RegisterRequestName(extEntry->base, X_MbufSetMBufferAttributes,
+			MULTIBUFFER_PROTOCOL_NAME ":SetMBufferAttributes");
+    RegisterRequestName(extEntry->base, X_MbufGetMBufferAttributes,
+			MULTIBUFFER_PROTOCOL_NAME ":GetMBufferAttributes");
+    RegisterRequestName(extEntry->base, X_MbufSetBufferAttributes,
+			MULTIBUFFER_PROTOCOL_NAME ":SetBufferAttributes");
+    RegisterRequestName(extEntry->base, X_MbufGetBufferAttributes,
+			MULTIBUFFER_PROTOCOL_NAME ":GetBufferAttributes");
+    RegisterRequestName(extEntry->base, X_MbufGetBufferInfo,
+			MULTIBUFFER_PROTOCOL_NAME ":GetBufferInfo");
+    RegisterRequestName(extEntry->base, X_MbufCreateStereoWindow,
+			MULTIBUFFER_PROTOCOL_NAME ":CreateStereoWindow");
+    RegisterRequestName(extEntry->base, X_MbufClearImageBufferArea,
+			MULTIBUFFER_PROTOCOL_NAME ":ClearImageBufferArea");
+
+    RegisterEventName(MultibufferEventBase + MultibufferClobberNotify,
+		      MULTIBUFFER_PROTOCOL_NAME ":ClobberNotify");
+    RegisterEventName(MultibufferEventBase + MultibufferUpdateNotify,
+		      MULTIBUFFER_PROTOCOL_NAME ":UpdateNotify");
+
+    RegisterErrorName(MultibufferErrorBase + BadBuffer,
+		      MULTIBUFFER_PROTOCOL_NAME ":BadBuffer");
 }
 
 /*ARGSUSED*/
commit 16764a2d299c7c0c98002aadd52ab4a1a36758c3
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 20:29:23 2007 -0400

    registry: Register DPMS extension protocol names.

diff --git a/Xext/dpms.c b/Xext/dpms.c
index 97622cb..613493a 100644
--- a/Xext/dpms.c
+++ b/Xext/dpms.c
@@ -44,15 +44,13 @@ Equipment Corporation.
 #include "dixstruct.h"
 #include "extnsionst.h"
 #include "opaque.h"
+#include "registry.h"
 #define DPMS_SERVER
 #include <X11/extensions/dpms.h>
 #include <X11/extensions/dpmsstr.h>
 #include "dpmsproc.h"
 #include "modinit.h"
 
-#if 0
-static unsigned char DPMSCode;
-#endif
 static DISPATCH_PROC(ProcDPMSDispatch);
 static DISPATCH_PROC(SProcDPMSDispatch);
 static DISPATCH_PROC(ProcDPMSGetVersion);
@@ -76,18 +74,29 @@ static void DPMSResetProc(ExtensionEntry* extEntry);
 void
 DPMSExtensionInit(INITARGS)
 {
-#if 0
     ExtensionEntry *extEntry;
     
-    if ((extEntry = AddExtension(DPMSExtensionName, 0, 0,
-				ProcDPMSDispatch, SProcDPMSDispatch,
-				DPMSResetProc, StandardMinorOpcode)))
-	DPMSCode = (unsigned char)extEntry->base;
-#else
-    (void) AddExtension(DPMSExtensionName, 0, 0,
-			ProcDPMSDispatch, SProcDPMSDispatch,
-			DPMSResetProc, StandardMinorOpcode);
-#endif
+    if (!(extEntry = AddExtension(DPMSExtensionName, 0, 0,
+				  ProcDPMSDispatch, SProcDPMSDispatch,
+				  DPMSResetProc, StandardMinorOpcode)))
+	return;
+
+    RegisterRequestName(extEntry->base, X_DPMSGetVersion,
+			DPMSExtensionName ":GetVersion");
+    RegisterRequestName(extEntry->base, X_DPMSCapable,
+			DPMSExtensionName ":Capable");
+    RegisterRequestName(extEntry->base, X_DPMSGetTimeouts,
+			DPMSExtensionName ":GetTimeouts");
+    RegisterRequestName(extEntry->base, X_DPMSSetTimeouts,
+			DPMSExtensionName ":SetTimeouts");
+    RegisterRequestName(extEntry->base, X_DPMSEnable,
+			DPMSExtensionName ":Enable");
+    RegisterRequestName(extEntry->base, X_DPMSDisable,
+			DPMSExtensionName ":Disable");
+    RegisterRequestName(extEntry->base, X_DPMSForceLevel,
+			DPMSExtensionName ":ForceLevel");
+    RegisterRequestName(extEntry->base, X_DPMSInfo,
+			DPMSExtensionName ":Info");
 }
 
 /*ARGSUSED*/
commit f077578e42eee424b0e534774574c84af9d6f85b
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:43:02 2007 -0400

    registry: Register XPrint extension protocol names.

diff --git a/Xext/xprint.c b/Xext/xprint.c
index ef51118..48559dd 100644
--- a/Xext/xprint.c
+++ b/Xext/xprint.c
@@ -80,6 +80,7 @@ copyright holders.
 #include "pixmapstr.h"
 #include "extnsionst.h"
 #include "dixstruct.h"
+#include "registry.h"
 #include <X11/Xatom.h>
 #include <X11/extensions/Print.h>
 #include <X11/extensions/Printstr.h>
@@ -310,6 +311,69 @@ XpExtensionInit(INITARGS)
 	    screenInfo.screens[i]->CloseScreen = XpCloseScreen;
 	}
     }
+
+    RegisterRequestName(XpReqCode, X_PrintQueryVersion,
+			XP_PRINTNAME ":QueryVersion");
+    RegisterRequestName(XpReqCode, X_PrintGetPrinterList,
+			XP_PRINTNAME ":GetPrinterList");
+    RegisterRequestName(XpReqCode, X_PrintCreateContext,
+			XP_PRINTNAME ":CreateContext");
+    RegisterRequestName(XpReqCode, X_PrintSetContext,
+			XP_PRINTNAME ":SetContext");
+    RegisterRequestName(XpReqCode, X_PrintGetContext,
+			XP_PRINTNAME ":GetContext");
+    RegisterRequestName(XpReqCode, X_PrintDestroyContext,
+			XP_PRINTNAME ":DestroyContext");
+    RegisterRequestName(XpReqCode, X_PrintGetContextScreen,
+			XP_PRINTNAME ":GetContextScreen");
+    RegisterRequestName(XpReqCode, X_PrintStartJob,
+			XP_PRINTNAME ":StartJob");
+    RegisterRequestName(XpReqCode, X_PrintEndJob,
+			XP_PRINTNAME ":EndJob");
+    RegisterRequestName(XpReqCode, X_PrintStartDoc,
+			XP_PRINTNAME ":StartDoc");
+    RegisterRequestName(XpReqCode, X_PrintEndDoc,
+			XP_PRINTNAME ":EndDoc");
+    RegisterRequestName(XpReqCode, X_PrintPutDocumentData,
+			XP_PRINTNAME ":PutDocumentData");
+    RegisterRequestName(XpReqCode, X_PrintGetDocumentData,
+			XP_PRINTNAME ":GetDocumentData");
+    RegisterRequestName(XpReqCode, X_PrintStartPage,
+			XP_PRINTNAME ":StartPage");
+    RegisterRequestName(XpReqCode, X_PrintEndPage,
+			XP_PRINTNAME ":EndPage");
+    RegisterRequestName(XpReqCode, X_PrintSelectInput,
+			XP_PRINTNAME ":SelectInput");
+    RegisterRequestName(XpReqCode, X_PrintInputSelected,
+			XP_PRINTNAME ":InputSelected");
+    RegisterRequestName(XpReqCode, X_PrintGetAttributes,
+			XP_PRINTNAME ":GetAttributes");
+    RegisterRequestName(XpReqCode, X_PrintSetAttributes,
+			XP_PRINTNAME ":SetAttributes");
+    RegisterRequestName(XpReqCode, X_PrintGetOneAttribute,
+			XP_PRINTNAME ":GetOneAttribute");
+    RegisterRequestName(XpReqCode, X_PrintRehashPrinterList,
+			XP_PRINTNAME ":RehashPrinterList");
+    RegisterRequestName(XpReqCode, X_PrintGetPageDimensions,
+			XP_PRINTNAME ":GetPageDimensions");
+    RegisterRequestName(XpReqCode, X_PrintQueryScreens,
+			XP_PRINTNAME ":QueryScreens");
+    RegisterRequestName(XpReqCode, X_PrintSetImageResolution,
+			XP_PRINTNAME ":SetImageResolution");
+    RegisterRequestName(XpReqCode, X_PrintGetImageResolution,
+			XP_PRINTNAME ":GetImageResolution");
+
+    RegisterEventName(XpEventBase + XPPrintNotify,
+		      XP_PRINTNAME ":PrintNotify");
+    RegisterEventName(XpEventBase + XPAttributeNotify,
+		      XP_PRINTNAME ":AttributeNotify");
+
+    RegisterErrorName(XpErrorBase + XPBadContext,
+		      XP_PRINTNAME ":BadContext");
+    RegisterErrorName(XpErrorBase + XPBadSequence,
+		      XP_PRINTNAME ":BadSequence");
+    RegisterErrorName(XpErrorBase + XPBadResourceID,
+		      XP_PRINTNAME ":BadResourceID");
 }
 
 static void
commit 5c8b1a91726817816d20faefad21c7a68ab634cc
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:35:04 2007 -0400

    registry: Register Resource extension protocol names.

diff --git a/Xext/xres.c b/Xext/xres.c
index 3660260..e78176e 100644
--- a/Xext/xres.c
+++ b/Xext/xres.c
@@ -17,6 +17,7 @@
 #include "dixstruct.h"
 #include "extnsionst.h"
 #include "swaprep.h"
+#include "registry.h"
 #include <X11/extensions/XResproto.h>
 #include "pixmapstr.h"
 #include "windowstr.h"
@@ -388,7 +389,18 @@ SProcResDispatch (ClientPtr client)
 void
 ResExtensionInit(INITARGS)
 {
-    (void) AddExtension(XRES_NAME, 0, 0,
+    ExtensionEntry *extEntry;
+
+    extEntry = AddExtension(XRES_NAME, 0, 0,
                             ProcResDispatch, SProcResDispatch,
                             ResResetProc, StandardMinorOpcode);
+
+    RegisterRequestName(extEntry->base, X_XResQueryVersion,
+			XRES_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_XResQueryClients,
+			XRES_NAME ":QueryClients");
+    RegisterRequestName(extEntry->base, X_XResQueryClientResources,
+			XRES_NAME ":QueryClientResources");
+    RegisterRequestName(extEntry->base, X_XResQueryClientPixmapBytes,
+			XRES_NAME ":QueryClientPixmapBytes");
 }
commit 48891d5696f56711f23743cb03be39cf6b26c522
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:32:01 2007 -0400

    registry: Register EVIE extension protocol names.

diff --git a/Xext/xevie.c b/Xext/xevie.c
index 7dd67bb..8dc1678 100644
--- a/Xext/xevie.c
+++ b/Xext/xevie.c
@@ -45,6 +45,7 @@ of the copyright holder.
 #include "colormapst.h"
 #include "scrnintstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define  _XEVIE_SERVER_
 #include <X11/extensions/Xeviestr.h>
 #include <X11/Xfuncproto.h>
@@ -146,9 +147,21 @@ XevieExtensionInit (void)
 				StandardMinorOpcode))) {
 	ReqCode = (unsigned char)extEntry->base;
 	ErrorBase = extEntry->errorBase;
-    }
+    } else
+	return;
 
     /* PC servers initialize the desktop colors (citems) here! */
+
+    RegisterRequestName(ReqCode, X_XevieQueryVersion,
+			XEVIENAME ":QueryVersion");
+    RegisterRequestName(ReqCode, X_XevieStart,
+			XEVIENAME ":Start");
+    RegisterRequestName(ReqCode, X_XevieEnd,
+			XEVIENAME ":End");
+    RegisterRequestName(ReqCode, X_XevieSend,
+			XEVIENAME ":Send");
+    RegisterRequestName(ReqCode, X_XevieSelectInput,
+			XEVIENAME ":SelectInput");
 }
 
 /*ARGSUSED*/
commit 2c9646ad4e65bb061d910c9e2b1a8a978f21fa17
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:18:03 2007 -0400

    registry: Register SHM extension protocol names.

diff --git a/Xext/shm.c b/Xext/shm.c
index ee4c340..56a944b 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -59,6 +59,7 @@ in this Software without prior written authorization from The Open Group.
 #include "servermd.h"
 #include "shmint.h"
 #include "xace.h"
+#include "registry.h"
 #define _XSHM_SERVER_
 #include <X11/extensions/shmstr.h>
 #include <X11/Xfuncproto.h>
@@ -246,7 +247,27 @@ ShmExtensionInit(INITARGS)
 	ShmCompletionCode = extEntry->eventBase;
 	BadShmSegCode = extEntry->errorBase;
 	EventSwapVector[ShmCompletionCode] = (EventSwapPtr) SShmCompletionEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(ShmReqCode, X_ShmQueryVersion,
+			SHMNAME ":QueryVersion");
+    RegisterRequestName(ShmReqCode, X_ShmAttach,
+			SHMNAME ":Attach");
+    RegisterRequestName(ShmReqCode, X_ShmDetach,
+			SHMNAME ":Detach");
+    RegisterRequestName(ShmReqCode, X_ShmPutImage,
+			SHMNAME ":PutImage");
+    RegisterRequestName(ShmReqCode, X_ShmGetImage,
+			SHMNAME ":GetImage");
+    RegisterRequestName(ShmReqCode, X_ShmCreatePixmap,
+			SHMNAME ":CreatePixmap");
+
+    RegisterEventName(extEntry->eventBase + ShmCompletion,
+		      SHMNAME ":Completion");
+
+    RegisterErrorName(extEntry->errorBase + BadShmSeg,
+		      SHMNAME ":BadShmSeg");
 }
 
 /*ARGSUSED*/
commit 8964c6d8e14ae47798762191e359b2bf138ca32e
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:10:51 2007 -0400

    registry: Register RENDER extension protocol names.

diff --git a/render/render.c b/render/render.c
index 40d5add..fe50dd2 100644
--- a/render/render.c
+++ b/render/render.c
@@ -40,6 +40,7 @@
 #include "colormapst.h"
 #include "extnsionst.h"
 #include "servermd.h"
+#include "registry.h"
 #include <X11/extensions/render.h>
 #include <X11/extensions/renderproto.h>
 #include "picturestr.h"
@@ -262,6 +263,95 @@ RenderExtensionInit (void)
     RenderReqCode = (CARD8) extEntry->base;
 #endif
     RenderErrBase = extEntry->errorBase;
+
+    RegisterRequestName(extEntry->base, X_RenderQueryVersion,
+			RENDER_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_RenderQueryPictFormats,
+			RENDER_NAME ":QueryPictFormats");
+    RegisterRequestName(extEntry->base, X_RenderQueryPictIndexValues,
+			RENDER_NAME ":QueryPictIndexValues");
+    RegisterRequestName(extEntry->base, X_RenderQueryDithers,
+			RENDER_NAME ":QueryDithers");
+    RegisterRequestName(extEntry->base, X_RenderCreatePicture,
+			RENDER_NAME ":CreatePicture");
+    RegisterRequestName(extEntry->base, X_RenderChangePicture,
+			RENDER_NAME ":ChangePicture");
+    RegisterRequestName(extEntry->base, X_RenderSetPictureClipRectangles,
+			RENDER_NAME ":SetPictureClipRectangles");
+    RegisterRequestName(extEntry->base, X_RenderFreePicture,
+			RENDER_NAME ":FreePicture");
+    RegisterRequestName(extEntry->base, X_RenderComposite,
+			RENDER_NAME ":Composite");
+    RegisterRequestName(extEntry->base, X_RenderScale,
+			RENDER_NAME ":Scale");
+    RegisterRequestName(extEntry->base, X_RenderTrapezoids,
+			RENDER_NAME ":Trapezoids");
+    RegisterRequestName(extEntry->base, X_RenderTriangles,
+			RENDER_NAME ":Triangles");
+    RegisterRequestName(extEntry->base, X_RenderTriStrip,
+			RENDER_NAME ":TriStrip");
+    RegisterRequestName(extEntry->base, X_RenderTriFan,
+			RENDER_NAME ":TriFan");
+    RegisterRequestName(extEntry->base, X_RenderColorTrapezoids,
+			RENDER_NAME ":ColorTrapezoids");
+    RegisterRequestName(extEntry->base, X_RenderColorTriangles,
+			RENDER_NAME ":ColorTriangles");
+    RegisterRequestName(extEntry->base, X_RenderCreateGlyphSet,
+			RENDER_NAME ":CreateGlyphSet");
+    RegisterRequestName(extEntry->base, X_RenderReferenceGlyphSet,
+			RENDER_NAME ":ReferenceGlyphSet");
+    RegisterRequestName(extEntry->base, X_RenderFreeGlyphSet,
+			RENDER_NAME ":FreeGlyphSet");
+    RegisterRequestName(extEntry->base, X_RenderAddGlyphs,
+			RENDER_NAME ":AddGlyphs");
+    RegisterRequestName(extEntry->base, X_RenderAddGlyphsFromPicture,
+			RENDER_NAME ":AddGlyphsFromPicture");
+    RegisterRequestName(extEntry->base, X_RenderFreeGlyphs,
+			RENDER_NAME ":FreeGlyphs");
+    RegisterRequestName(extEntry->base, X_RenderCompositeGlyphs8,
+			RENDER_NAME ":CompositeGlyphs8");
+    RegisterRequestName(extEntry->base, X_RenderCompositeGlyphs16,
+			RENDER_NAME ":CompositeGlyphs16");
+    RegisterRequestName(extEntry->base, X_RenderCompositeGlyphs32,
+			RENDER_NAME ":CompositeGlyphs32");
+    RegisterRequestName(extEntry->base, X_RenderFillRectangles,
+			RENDER_NAME ":FillRectangles");
+    /* 0.5 */
+    RegisterRequestName(extEntry->base, X_RenderCreateCursor,
+			RENDER_NAME ":CreateCursor");
+    /* 0.6 */
+    RegisterRequestName(extEntry->base, X_RenderSetPictureTransform,
+			RENDER_NAME ":SetPictureTransform");
+    RegisterRequestName(extEntry->base, X_RenderQueryFilters,
+			RENDER_NAME ":QueryFilters");
+    RegisterRequestName(extEntry->base, X_RenderSetPictureFilter,
+			RENDER_NAME ":SetPictureFilter");
+    /* 0.8 */
+    RegisterRequestName(extEntry->base, X_RenderCreateAnimCursor,
+			RENDER_NAME ":CreateAnimCursor");
+    /* 0.9 */
+    RegisterRequestName(extEntry->base, X_RenderAddTraps,
+			RENDER_NAME ":AddTraps");
+    /* 0.10 */
+    RegisterRequestName(extEntry->base, X_RenderCreateSolidFill,
+			RENDER_NAME ":CreateSolidFill");
+    RegisterRequestName(extEntry->base, X_RenderCreateLinearGradient,
+			RENDER_NAME ":CreateLinearGradient");
+    RegisterRequestName(extEntry->base, X_RenderCreateRadialGradient,
+			RENDER_NAME ":CreateRadialGradient");
+    RegisterRequestName(extEntry->base, X_RenderCreateConicalGradient,
+			RENDER_NAME ":CreateConicalGradient");
+
+    RegisterErrorName(RenderErrBase + BadPictFormat,
+		      RENDER_NAME ":BadPictFormat");
+    RegisterErrorName(RenderErrBase + BadPicture,
+		      RENDER_NAME ":BadPicture");
+    RegisterErrorName(RenderErrBase + BadPictOp,
+		      RENDER_NAME ":BadPictOp");
+    RegisterErrorName(RenderErrBase + BadGlyphSet,
+		      RENDER_NAME ":BadGlyphSet");
+    RegisterErrorName(RenderErrBase + BadGlyph,
+		      RENDER_NAME ":BadGlyph");
 }
 
 static void
commit c827db57e4d9ca14c82b099dcfc9b7a0c0b5ba0a
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 19:06:01 2007 -0400

    registry: Register RANDR extension protocol names.

diff --git a/randr/randr.c b/randr/randr.c
index bc2b995..d5b9819 100644
--- a/randr/randr.c
+++ b/randr/randr.c
@@ -32,6 +32,7 @@
 #endif
 
 #include "randrstr.h"
+#include "registry.h"
 
 /* From render.h */
 #ifndef SubPixelUnknown
@@ -351,6 +352,73 @@ RRExtensionInit (void)
 #ifdef PANORAMIX
     RRXineramaExtensionInit();
 #endif
+
+    RegisterRequestName(extEntry->base, X_RRQueryVersion,
+			RANDR_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_RROldGetScreenInfo,
+			RANDR_NAME ":OldGetScreenInfo");
+    RegisterRequestName(extEntry->base, X_RR1_0SetScreenConfig,
+			RANDR_NAME ":1_0SetScreenConfig");
+    RegisterRequestName(extEntry->base, X_RRSetScreenConfig,
+			RANDR_NAME ":SetScreenConfig");
+    RegisterRequestName(extEntry->base, X_RROldScreenChangeSelectInput,
+			RANDR_NAME ":OldScreenChangeSelectInput");
+    RegisterRequestName(extEntry->base, X_RRSelectInput,
+			RANDR_NAME ":SelectInput");
+    RegisterRequestName(extEntry->base, X_RRGetScreenInfo,
+			RANDR_NAME ":GetScreenInfo");
+    /* V1.2 additions */
+    RegisterRequestName(extEntry->base, X_RRGetScreenSizeRange,
+			RANDR_NAME ":GetScreenSizeRange");
+    RegisterRequestName(extEntry->base, X_RRSetScreenSize,
+			RANDR_NAME ":SetScreenSize");
+    RegisterRequestName(extEntry->base, X_RRGetScreenResources,
+			RANDR_NAME ":GetScreenResources");
+    RegisterRequestName(extEntry->base, X_RRGetOutputInfo,
+			RANDR_NAME ":GetOutputInfo");
+    RegisterRequestName(extEntry->base, X_RRListOutputProperties,
+			RANDR_NAME ":ListOutputProperties");
+    RegisterRequestName(extEntry->base, X_RRQueryOutputProperty,
+			RANDR_NAME ":QueryOutputProperty");
+    RegisterRequestName(extEntry->base, X_RRConfigureOutputProperty,
+			RANDR_NAME ":ConfigureOutputProperty");
+    RegisterRequestName(extEntry->base, X_RRChangeOutputProperty,
+			RANDR_NAME ":ChangeOutputProperty");
+    RegisterRequestName(extEntry->base, X_RRDeleteOutputProperty,
+			RANDR_NAME ":DeleteOutputProperty");
+    RegisterRequestName(extEntry->base, X_RRGetOutputProperty,
+			RANDR_NAME ":GetOutputProperty");
+    RegisterRequestName(extEntry->base, X_RRCreateMode,
+			RANDR_NAME ":CreateMode");
+    RegisterRequestName(extEntry->base, X_RRDestroyMode,
+			RANDR_NAME ":DestroyMode");
+    RegisterRequestName(extEntry->base, X_RRAddOutputMode,
+			RANDR_NAME ":AddOutputMode");
+    RegisterRequestName(extEntry->base, X_RRDeleteOutputMode,
+			RANDR_NAME ":DeleteOutputMode");
+    RegisterRequestName(extEntry->base, X_RRGetCrtcInfo,
+			RANDR_NAME ":GetCrtcInfo");
+    RegisterRequestName(extEntry->base, X_RRSetCrtcConfig,
+			RANDR_NAME ":SetCrtcConfig");
+    RegisterRequestName(extEntry->base, X_RRGetCrtcGammaSize,
+			RANDR_NAME ":GetCrtcGammaSize");
+    RegisterRequestName(extEntry->base, X_RRGetCrtcGamma,
+			RANDR_NAME ":GetCrtcGamma");
+    RegisterRequestName(extEntry->base, X_RRSetCrtcGamma,
+			RANDR_NAME ":SetCrtcGamma");
+
+    RegisterEventName(RREventBase + RRScreenChangeNotify,
+		      RANDR_NAME ":ScreenChangeNotify");
+    /* V1.2 additions */
+    RegisterEventName(RREventBase + RRNotify,
+		      RANDR_NAME ":Notify");
+
+    RegisterErrorName(RRErrorBase + BadRROutput,
+		      RANDR_NAME ":BadRROutput");
+    RegisterErrorName(RRErrorBase + BadRRCrtc,
+		      RANDR_NAME ":BadRRCrtc");
+    RegisterErrorName(RRErrorBase + BadRRMode,
+		      RANDR_NAME ":BadRRMode");
 }
 
 static int
commit 20db50b4c44a14f7eeac2b1de17ada68482521da
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:56:59 2007 -0400

    registry: Register DAMAGE extension protocol names.

diff --git a/damageext/damageext.c b/damageext/damageext.c
index 517c72d..ac2198b 100755
--- a/damageext/damageext.c
+++ b/damageext/damageext.c
@@ -25,6 +25,7 @@
 #endif
 
 #include "damageextint.h"
+#include "registry.h"
 
 static unsigned char	DamageReqCode;
 static int		DamageEventBase;
@@ -526,5 +527,23 @@ DamageExtensionInit(void)
 	DamageErrorBase = extEntry->errorBase;
 	EventSwapVector[DamageEventBase + XDamageNotify] =
 			(EventSwapPtr) SDamageNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(DamageReqCode, X_DamageQueryVersion,
+			DAMAGE_NAME ":QueryVersion");
+    RegisterRequestName(DamageReqCode, X_DamageCreate,
+			DAMAGE_NAME ":Create");
+    RegisterRequestName(DamageReqCode, X_DamageDestroy,
+			DAMAGE_NAME ":Destroy");
+    RegisterRequestName(DamageReqCode, X_DamageSubtract,
+			DAMAGE_NAME ":Subtract");
+    RegisterRequestName(DamageReqCode, X_DamageAdd,
+			DAMAGE_NAME ":Add");
+
+    RegisterEventName(DamageEventBase + XDamageNotify,
+			DAMAGE_NAME ":Notify");
+
+    RegisterErrorName(extEntry->errorBase + BadDamage,
+			DAMAGE_NAME ":BadDamage");
 }
commit b38a91993364aa80cfd99721e319e1458d9fb760
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:50:06 2007 -0400

    registry: Register XTrap extension protocol names.

diff --git a/XTrap/xtrapdi.c b/XTrap/xtrapdi.c
index efad36f..734922c 100644
--- a/XTrap/xtrapdi.c
+++ b/XTrap/xtrapdi.c
@@ -62,6 +62,7 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #include "misc.h"               /* Server swapping macros */
 #include "dixstruct.h"          /* Server ClientRec definitions */
 #include "resource.h"           /* Used with the MakeAtom call */
+#include "registry.h"
 #ifdef PC
 # include "scrintst.h"          /* Screen struct */
 # include "extnsist.h"
@@ -463,6 +464,41 @@ void DEC_XTRAPInit()
         XETrap_avail.data.xtrap_revision);
 #endif
 
+    RegisterRequestName(extEntry->base, XETrap_Reset,
+			XTrapExtName ":Reset");
+    RegisterRequestName(extEntry->base, XETrap_GetAvailable,
+			XTrapExtName ":GetAvailable");
+    RegisterRequestName(extEntry->base, XETrap_Config,
+			XTrapExtName ":Config");
+    RegisterRequestName(extEntry->base, XETrap_StartTrap,
+			XTrapExtName ":StartTrap");
+    RegisterRequestName(extEntry->base, XETrap_StopTrap,
+			XTrapExtName ":StopTrap");
+    RegisterRequestName(extEntry->base, XETrap_GetCurrent,
+			XTrapExtName ":GetCurrent");
+    RegisterRequestName(extEntry->base, XETrap_GetStatistics,
+			XTrapExtName ":GetStatistics");
+#ifndef _XINPUT
+    RegisterRequestName(extEntry->base, XETrap_SimulateXEvent,
+			XTrapExtName ":SimulateXEvent");
+#endif
+    RegisterRequestName(extEntry->base, XETrap_GetVersion,
+			XTrapExtName ":GetVersion");
+    RegisterRequestName(extEntry->base, XETrap_GetLastInpTime,
+			XTrapExtName ":GetLastInpTime");
+
+    RegisterEventName(extEntry->eventBase, XTrapExtName ":Event");
+
+    RegisterErrorName(extEntry->errorBase + BadIO,
+			XTrapExtName ":BadIO");
+    RegisterErrorName(extEntry->errorBase + BadStatistics,
+			XTrapExtName ":BadStatistics");
+    RegisterErrorName(extEntry->errorBase + BadDevices,
+			XTrapExtName ":BadDevices");
+    RegisterErrorName(extEntry->errorBase + BadScreen,
+			XTrapExtName ":BadScreen");
+    RegisterErrorName(extEntry->errorBase + BadSwapReq,
+			XTrapExtName ":BadSwapReq");
     return;
 }
 
commit 106758893b68033f14f69c4ee6591fb6a149ba37
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:31:40 2007 -0400

    registry: Register XFixes extension protocol names.

diff --git a/xfixes/xfixes.c b/xfixes/xfixes.c
index 0db4989..ccce7b9 100755
--- a/xfixes/xfixes.c
+++ b/xfixes/xfixes.c
@@ -45,6 +45,7 @@
 #endif
 
 #include "xfixesint.h"
+#include "registry.h"
 
 /*
  * Must use these instead of the constants from xfixeswire.h.  They advertise
@@ -257,5 +258,80 @@ XFixesExtensionInit(void)
 	    (EventSwapPtr) SXFixesSelectionNotifyEvent;
 	EventSwapVector[XFixesEventBase + XFixesCursorNotify] =
 	    (EventSwapPtr) SXFixesCursorNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(XFixesReqCode, X_XFixesQueryVersion,
+			XFIXES_NAME ":QueryVersion");
+    RegisterRequestName(XFixesReqCode, X_XFixesChangeSaveSet,
+			XFIXES_NAME ":ChangeSaveSet");
+    RegisterRequestName(XFixesReqCode, X_XFixesSelectSelectionInput,
+			XFIXES_NAME ":SelectSelectionInput");
+    RegisterRequestName(XFixesReqCode, X_XFixesSelectCursorInput,
+			XFIXES_NAME ":SelectCursorInput");
+    RegisterRequestName(XFixesReqCode, X_XFixesGetCursorImage,
+			XFIXES_NAME ":GetCursorImage");
+    /*************** Version 2 ******************/
+    RegisterRequestName(XFixesReqCode, X_XFixesCreateRegion,
+			XFIXES_NAME ":CreateRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesCreateRegionFromBitmap,
+			XFIXES_NAME ":CreateRegionFromBitmap");
+    RegisterRequestName(XFixesReqCode, X_XFixesCreateRegionFromWindow,
+			XFIXES_NAME ":CreateRegionFromWindow");
+    RegisterRequestName(XFixesReqCode, X_XFixesCreateRegionFromGC,
+			XFIXES_NAME ":CreateRegionFromGC");
+    RegisterRequestName(XFixesReqCode, X_XFixesCreateRegionFromPicture,
+			XFIXES_NAME ":CreateRegionFromPicture");
+    RegisterRequestName(XFixesReqCode, X_XFixesDestroyRegion,
+			XFIXES_NAME ":DestroyRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSetRegion,
+			XFIXES_NAME ":SetRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesCopyRegion,
+			XFIXES_NAME ":CopyRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesUnionRegion,
+			XFIXES_NAME ":UnionRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesIntersectRegion,
+			XFIXES_NAME ":IntersectRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSubtractRegion,
+			XFIXES_NAME ":SubtractRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesInvertRegion,
+			XFIXES_NAME ":InvertRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesTranslateRegion,
+			XFIXES_NAME ":TranslateRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesRegionExtents,
+			XFIXES_NAME ":RegionExtents");
+    RegisterRequestName(XFixesReqCode, X_XFixesFetchRegion,
+			XFIXES_NAME ":FetchRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSetGCClipRegion,
+			XFIXES_NAME ":SetGCClipRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSetWindowShapeRegion,
+			XFIXES_NAME ":SetWindowShapeRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSetPictureClipRegion,
+			XFIXES_NAME ":SetPictureClipRegion");
+    RegisterRequestName(XFixesReqCode, X_XFixesSetCursorName,
+			XFIXES_NAME ":SetCursorName");
+    RegisterRequestName(XFixesReqCode, X_XFixesGetCursorName,
+			XFIXES_NAME ":GetCursorName");
+    RegisterRequestName(XFixesReqCode, X_XFixesGetCursorImageAndName,
+			XFIXES_NAME ":GetCursorImageAndName");
+    RegisterRequestName(XFixesReqCode, X_XFixesChangeCursor,
+			XFIXES_NAME ":ChangeCursor");
+    RegisterRequestName(XFixesReqCode, X_XFixesChangeCursorByName,
+			XFIXES_NAME ":ChangeCursorByName");
+    /*************** Version 3 ******************/
+    RegisterRequestName(XFixesReqCode, X_XFixesExpandRegion,
+			XFIXES_NAME ":ExpandRegion");
+    /*************** Version 4 ******************/
+    RegisterRequestName(XFixesReqCode, X_XFixesHideCursor,
+			XFIXES_NAME ":HideCursor");
+    RegisterRequestName(XFixesReqCode, X_XFixesShowCursor,
+			XFIXES_NAME ":ShowCursor");
+
+    RegisterEventName(XFixesEventBase + XFixesSelectionNotify,
+			XFIXES_NAME ":SelectionNotify");
+    RegisterEventName(XFixesEventBase + XFixesCursorNotify,
+			XFIXES_NAME ":CursorNotify");
+
+    RegisterErrorName(XFixesErrorBase + BadRegion,
+			XFIXES_NAME ":BadRegion");
 }
commit ea09c9acc8f0d5577f54c864ff88b7f03d93b2f4
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:25:12 2007 -0400

    registry: Register Record extension protocol names.

diff --git a/record/record.c b/record/record.c
index 2e65e67..5772baf 100644
--- a/record/record.c
+++ b/record/record.c
@@ -43,6 +43,7 @@ and Jim Haggerty of Metheus.
 #include <X11/extensions/recordstr.h>
 #include "set.h"
 #include "swaprep.h"
+#include "registry.h"
 
 #include <stdio.h>
 #include <assert.h>
@@ -2965,5 +2966,24 @@ RecordExtensionInit(void)
     }
     RecordErrorBase = extentry->errorBase;
 
+    RegisterRequestName(extentry->base, X_RecordQueryVersion,
+			RECORD_NAME ":QueryVersion");
+    RegisterRequestName(extentry->base, X_RecordCreateContext,
+			RECORD_NAME ":CreateContext");
+    RegisterRequestName(extentry->base, X_RecordRegisterClients,
+			RECORD_NAME ":RegisterClients");
+    RegisterRequestName(extentry->base, X_RecordUnregisterClients,
+			RECORD_NAME ":UnregisterClients");
+    RegisterRequestName(extentry->base, X_RecordGetContext,
+			RECORD_NAME ":GetContext");
+    RegisterRequestName(extentry->base, X_RecordEnableContext,
+			RECORD_NAME ":EnableContext");
+    RegisterRequestName(extentry->base, X_RecordDisableContext,
+			RECORD_NAME ":DisableContext");
+    RegisterRequestName(extentry->base, X_RecordFreeContext,
+			RECORD_NAME ":FreeContext");
+
+    RegisterErrorName(RecordErrorBase + XRecordBadContext,
+			RECORD_NAME ":BadContext");
 } /* RecordExtensionInit */
 
commit 2e1e5be1d9067816525aa13a1d818e8ca6899599
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:18:57 2007 -0400

    registry: Register DBE extension protocol names.

diff --git a/dbe/dbe.c b/dbe/dbe.c
index 8175a35..a872544 100644
--- a/dbe/dbe.c
+++ b/dbe/dbe.c
@@ -51,6 +51,7 @@
 #include "extnsionst.h"
 #include "gcstruct.h"
 #include "dixstruct.h"
+#include "registry.h"
 #define NEED_DBE_PROTOCOL
 #include "dbestruct.h"
 #include "midbe.h"
@@ -1747,5 +1748,25 @@ DbeExtensionInit(void)
 
     dbeErrorBase = extEntry->errorBase;
 
+    RegisterRequestName(extEntry->base, X_DbeGetVersion,
+			DBE_PROTOCOL_NAME ":GetVersion");
+    RegisterRequestName(extEntry->base, X_DbeAllocateBackBufferName,
+			DBE_PROTOCOL_NAME ":AllocateBackBufferName");
+    RegisterRequestName(extEntry->base, X_DbeDeallocateBackBufferName,
+			DBE_PROTOCOL_NAME ":DeallocateBackBufferName");
+    RegisterRequestName(extEntry->base, X_DbeSwapBuffers,
+			DBE_PROTOCOL_NAME ":SwapBuffers");
+    RegisterRequestName(extEntry->base, X_DbeBeginIdiom,
+			DBE_PROTOCOL_NAME ":BeginIdiom");
+    RegisterRequestName(extEntry->base, X_DbeEndIdiom,
+			DBE_PROTOCOL_NAME ":EndIdiom");
+    RegisterRequestName(extEntry->base, X_DbeGetVisualInfo,
+			DBE_PROTOCOL_NAME ":GetVisualInfo");
+    RegisterRequestName(extEntry->base, X_DbeGetBackBufferAttributes,
+			DBE_PROTOCOL_NAME ":GetBackBufferAttributes");
+
+    RegisterErrorName(dbeErrorBase + DbeBadBuffer,
+		      DBE_PROTOCOL_NAME ":BadBuffer");
+
 } /* DbeExtensionInit() */
 
commit 4c3285c883cc50a91bc5262bbc9d073d816f860a
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 18:04:47 2007 -0400

    registry: Register WINDOWSWM extension protocol names.

diff --git a/hw/xwin/winwindowswm.c b/hw/xwin/winwindowswm.c
index e1994de..1356465 100755
--- a/hw/xwin/winwindowswm.c
+++ b/hw/xwin/winwindowswm.c
@@ -41,6 +41,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "scrnintstr.h"
 #include "servermd.h"
 #include "swaprep.h"
+#include "registry.h"
 #define _WINDOWSWM_SERVER_
 #include "windowswmstr.h"
 
@@ -105,7 +106,35 @@ winWindowsWMExtensionInit ()
       WMErrorBase = extEntry->errorBase;
       WMEventBase = extEntry->eventBase;
       EventSwapVector[WMEventBase] = (EventSwapPtr) SNotifyEvent;
-    }
+    } else
+      return;
+
+  RegisterRequestName(WMReqCode, X_WindowsWMQueryVersion,
+		      WINDOWSWMNAME ":QueryVersion");
+  RegisterRequestName(WMReqCode, X_WindowsWMFrameGetRect,
+		      WINDOWSWMNAME ":FrameGetRect");
+  RegisterRequestName(WMReqCode, X_WindowsWMFrameDraw,
+		      WINDOWSWMNAME ":FrameDraw");
+  RegisterRequestName(WMReqCode, X_WindowsWMFrameSetTitle,
+		      WINDOWSWMNAME ":FrameSetTitle");
+  RegisterRequestName(WMReqCode, X_WindowsWMDisableUpdate,
+		      WINDOWSWMNAME ":DisableUpdate");
+  RegisterRequestName(WMReqCode, X_WindowsWMReenableUpdate,
+		      WINDOWSWMNAME ":ReenableUpdate");
+  RegisterRequestName(WMReqCode, X_WindowsWMSelectInput,
+		      WINDOWSWMNAME ":SelectInput");
+  RegisterRequestName(WMReqCode, X_WindowsWMSetFrontProcess,
+		      WINDOWSWMNAME ":SetFrontProcess");
+
+  RegisterEventName(WMEventBase + WindowsWMControllerNotify,
+		    WINDOWSWMNAME ":ControllerNotify");
+  RegisterEventName(WMEventBase + WindowsWMActivationNotify,
+		    WINDOWSWMNAME ":ActivationNotify");
+
+  RegisterErrorName(WMErrorBase + WindowsWMClientNotLocal,
+		    WINDOWSWMNAME ":ClientNotLocal");
+  RegisterErrorName(WMErrorBase + WindowsWMOperationNotSupported,
+		    WINDOWSWMNAME ":OperationNotSupported");
 }
 
 /*ARGSUSED*/
commit 3815284e899b61731b6a63c4ba14c5d773e24eb6
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 17:57:59 2007 -0400

    registry: Register XF86DGA extension protocol names.

diff --git a/hw/xfree86/dixmods/extmod/xf86dga2.c b/hw/xfree86/dixmods/extmod/xf86dga2.c
index 295e05e..3b866c7 100644
--- a/hw/xfree86/dixmods/extmod/xf86dga2.c
+++ b/hw/xfree86/dixmods/extmod/xf86dga2.c
@@ -22,6 +22,7 @@
 #include "cursorstr.h"
 #include "scrnintstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define _XF86DGA_SERVER_
 #include <X11/extensions/xf86dga.h>
 #include <X11/extensions/xf86dgastr.h>
@@ -99,7 +100,72 @@ XFree86DGAExtensionInit(INITARGS)
 	DGAEventBase = extEntry->eventBase;
 	for (i = KeyPress; i <= MotionNotify; i++)
 	    SetCriticalEvent (DGAEventBase + i);
-    }
+    } else
+	return;
+
+    RegisterRequestName(DGAReqCode, X_XF86DGAQueryVersion,
+			XF86DGANAME ":QueryVersion");
+    RegisterRequestName(DGAReqCode, X_XF86DGAGetVideoLL,
+			XF86DGANAME ":GetVideoLL");
+    RegisterRequestName(DGAReqCode, X_XF86DGADirectVideo,
+			XF86DGANAME ":DirectVideo");
+    RegisterRequestName(DGAReqCode, X_XF86DGAGetViewPortSize,
+			XF86DGANAME ":GetViewPortSize");
+    RegisterRequestName(DGAReqCode, X_XF86DGASetViewPort,
+			XF86DGANAME ":SetViewPort");
+    RegisterRequestName(DGAReqCode, X_XF86DGAGetVidPage,
+			XF86DGANAME ":GetVidPage");
+    RegisterRequestName(DGAReqCode, X_XF86DGASetVidPage,
+			XF86DGANAME ":SetVidPage");
+    RegisterRequestName(DGAReqCode, X_XF86DGAInstallColormap,
+			XF86DGANAME ":InstallColormap");
+    RegisterRequestName(DGAReqCode, X_XF86DGAQueryDirectVideo,
+			XF86DGANAME ":QueryDirectVideo");
+    RegisterRequestName(DGAReqCode, X_XF86DGAViewPortChanged,
+			XF86DGANAME ":ViewPortChanged");
+    RegisterRequestName(DGAReqCode, X_XDGAQueryModes,
+			XF86DGANAME ":QueryModes");
+    RegisterRequestName(DGAReqCode, X_XDGASetMode,
+			XF86DGANAME ":SetMode");
+    RegisterRequestName(DGAReqCode, X_XDGASetViewport,
+			XF86DGANAME ":SetViewport");
+    RegisterRequestName(DGAReqCode, X_XDGAInstallColormap,
+			XF86DGANAME ":InstallColormap");
+    RegisterRequestName(DGAReqCode, X_XDGASelectInput,
+			XF86DGANAME ":SelectInput");
+    RegisterRequestName(DGAReqCode, X_XDGAFillRectangle,
+			XF86DGANAME ":FillRectangle");
+    RegisterRequestName(DGAReqCode, X_XDGACopyArea,
+			XF86DGANAME ":CopyArea");
+    RegisterRequestName(DGAReqCode, X_XDGACopyTransparentArea,
+			XF86DGANAME ":CopyTransparentArea");
+    RegisterRequestName(DGAReqCode, X_XDGAGetViewportStatus,
+			XF86DGANAME ":GetViewportStatus");
+    RegisterRequestName(DGAReqCode, X_XDGASync,
+			XF86DGANAME ":Sync");
+    RegisterRequestName(DGAReqCode, X_XDGAOpenFramebuffer,
+			XF86DGANAME ":OpenFramebuffer");
+    RegisterRequestName(DGAReqCode, X_XDGACloseFramebuffer,
+			XF86DGANAME ":CloseFramebuffer");
+    RegisterRequestName(DGAReqCode, X_XDGASetClientVersion,
+			XF86DGANAME ":SetClientVersion");
+    RegisterRequestName(DGAReqCode, X_XDGAChangePixmapMode,
+			XF86DGANAME ":ChangePixmapMode");
+    RegisterRequestName(DGAReqCode, X_XDGACreateColormap,
+			XF86DGANAME ":CreateColormap");
+
+    /* 7 Events: Don't know where they are defined. EFW */
+
+    RegisterErrorName(extEntry->errorBase + XF86DGAClientNotLocal,
+		      XF86DGANAME ":ClientNotLocal");
+    RegisterErrorName(extEntry->errorBase + XF86DGANoDirectVideoMode,
+		      XF86DGANAME ":NoDirectVideoMode");
+    RegisterErrorName(extEntry->errorBase + XF86DGAScreenNotActive,
+		      XF86DGANAME ":ScreenNotActive");
+    RegisterErrorName(extEntry->errorBase + XF86DGADirectNotActivated,
+		      XF86DGANAME ":DirectNotActivated");
+    RegisterErrorName(extEntry->errorBase + XF86DGAOperationNotSupported,
+		      XF86DGANAME ":OperationNotSupported");
 }
 
 
commit 2cd1b32b77e0ceeaccb3f01c4ac13a97c557668c
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 17:37:58 2007 -0400

    registry: Register XF86Misc extension protocol names.

diff --git a/hw/xfree86/dixmods/extmod/xf86misc.c b/hw/xfree86/dixmods/extmod/xf86misc.c
index 66278a2..274b1d3 100644
--- a/hw/xfree86/dixmods/extmod/xf86misc.c
+++ b/hw/xfree86/dixmods/extmod/xf86misc.c
@@ -19,6 +19,7 @@
 #include "scrnintstr.h"
 #include "inputstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define _XF86MISC_SERVER_
 #undef _XF86MISC_SAVER_COMPAT_
 #include <X11/extensions/xf86mscstr.h>
@@ -137,7 +138,50 @@ XFree86MiscExtensionInit(void)
 	XF86MiscReqCode = (unsigned char)extEntry->base;
 #endif
 	miscErrorBase = extEntry->errorBase;
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_XF86MiscQueryVersion,
+			XF86MISCNAME ":QueryVersion");
+#ifdef _XF86MISC_SAVER_COMPAT_
+    RegisterRequestName(extEntry->base, X_XF86MiscGetSaver,
+			XF86MISCNAME ":GetSaver");
+    RegisterRequestName(extEntry->base, X_XF86MiscSetSaver,
+			XF86MISCNAME ":SetSaver");
+#endif
+    RegisterRequestName(extEntry->base, X_XF86MiscGetMouseSettings,
+			XF86MISCNAME ":GetMouseSettings");
+    RegisterRequestName(extEntry->base, X_XF86MiscGetKbdSettings,
+			XF86MISCNAME ":GetKbdSettings");
+    RegisterRequestName(extEntry->base, X_XF86MiscSetMouseSettings,
+			XF86MISCNAME ":SetMouseSettings");
+    RegisterRequestName(extEntry->base, X_XF86MiscSetKbdSettings,
+			XF86MISCNAME ":SetKbdSettings");
+    RegisterRequestName(extEntry->base, X_XF86MiscSetGrabKeysState,
+			XF86MISCNAME ":SetGrabKeysState");
+    RegisterRequestName(extEntry->base, X_XF86MiscSetClientVersion,
+			XF86MISCNAME ":SetClientVersion");
+    RegisterRequestName(extEntry->base, X_XF86MiscGetFilePaths,
+			XF86MISCNAME ":GetFilePaths");
+    RegisterRequestName(extEntry->base, X_XF86MiscPassMessage,
+			XF86MISCNAME ":PassMessage");
+
+    RegisterErrorName(extEntry->errorBase + XF86MiscBadMouseProtocol,
+			XF86MISCNAME ":BadMouseProtocol");
+    RegisterErrorName(extEntry->errorBase + XF86MiscBadMouseBaudRate,
+			XF86MISCNAME ":BadMouseBaudRate");
+    RegisterErrorName(extEntry->errorBase + XF86MiscBadMouseFlags,
+			XF86MISCNAME ":BadMouseFlags");
+    RegisterErrorName(extEntry->errorBase + XF86MiscBadMouseCombo,
+			XF86MISCNAME ":BadMouseCombo");
+    RegisterErrorName(extEntry->errorBase + XF86MiscBadKbdType,
+			XF86MISCNAME ":BadKbdType");
+    RegisterErrorName(extEntry->errorBase + XF86MiscModInDevDisabled,
+			XF86MISCNAME ":ModInDevDisabled");
+    RegisterErrorName(extEntry->errorBase + XF86MiscModInDevClientNotLocal,
+			XF86MISCNAME ":ModInDevClientNotLocal");
+    RegisterErrorName(extEntry->errorBase + XF86MiscNoModule,
+			XF86MISCNAME ":NoModule");
 }
 
 /*ARGSUSED*/
commit 960677e876c068400fb45e1764bb5470cd8c389f
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 17:30:00 2007 -0400

    registry: Register XF86VidMode extension protocol names.

diff --git a/hw/xfree86/dixmods/extmod/xf86vmode.c b/hw/xfree86/dixmods/extmod/xf86vmode.c
index fa32848..2ad681c 100644
--- a/hw/xfree86/dixmods/extmod/xf86vmode.c
+++ b/hw/xfree86/dixmods/extmod/xf86vmode.c
@@ -43,6 +43,7 @@ from Kaleb S. KEITHLEY
 #include "extnsionst.h"
 #include "scrnintstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define _XF86VIDMODE_SERVER_
 #include <X11/extensions/xf86vmstr.h>
 #include "swaprep.h"
@@ -209,7 +210,71 @@ XFree86VidModeExtensionInit(void)
 	XF86VidModeEventBase = extEntry->eventBase;
 	EventSwapVector[XF86VidModeEventBase] = (EventSwapPtr)SXF86VidModeNotifyEvent;
 #endif
-    }
+    } else
+	return;
+
+    RegisterRequestName(extEntry->base, X_XF86VidModeQueryVersion,
+			XF86VIDMODENAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetModeLine,
+			XF86VIDMODENAME ":GetModeLine");
+    RegisterRequestName(extEntry->base, X_XF86VidModeModModeLine,
+			XF86VIDMODENAME ":ModModeLine");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSwitchMode,
+			XF86VIDMODENAME ":SwitchMode");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetMonitor,
+			XF86VIDMODENAME ":GetMonitor");
+    RegisterRequestName(extEntry->base, X_XF86VidModeLockModeSwitch,
+			XF86VIDMODENAME ":LockModeSwitch");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetAllModeLines,
+			XF86VIDMODENAME ":GetAllModeLines");
+    RegisterRequestName(extEntry->base, X_XF86VidModeAddModeLine,
+			XF86VIDMODENAME ":AddModeLine");
+    RegisterRequestName(extEntry->base, X_XF86VidModeDeleteModeLine,
+			XF86VIDMODENAME ":DeleteModeLine");
+    RegisterRequestName(extEntry->base, X_XF86VidModeValidateModeLine,
+			XF86VIDMODENAME ":ValidateModeLine");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSwitchToMode,
+			XF86VIDMODENAME ":SwitchToMode");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetViewPort,
+			XF86VIDMODENAME ":GetViewPort");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSetViewPort,
+			XF86VIDMODENAME ":SetViewPort");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetDotClocks,
+			XF86VIDMODENAME ":GetDotClocks");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSetClientVersion,
+			XF86VIDMODENAME ":SetClientVersion");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSetGamma,
+			XF86VIDMODENAME ":SetGamma");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetGamma,
+			XF86VIDMODENAME ":GetGamma");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetGammaRamp,
+			XF86VIDMODENAME ":GetGammaRamp");
+    RegisterRequestName(extEntry->base, X_XF86VidModeSetGammaRamp,
+			XF86VIDMODENAME ":SetGammaRamp");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetGammaRampSize,
+			XF86VIDMODENAME ":GetGammaRampSize");
+    RegisterRequestName(extEntry->base, X_XF86VidModeGetPermissions,
+			XF86VIDMODENAME ":GetPermissions");
+
+#ifdef XF86VIDMODE_EVENTS
+    RegisterEventName(extEntry->eventBase + XF86VidModeNotify,
+		      XF86VIDMODENAME ":Notify");
+#endif
+
+    RegisterErrorName(extEntry->errorBase + XF86VidModeBadClock,
+		      XF86VIDMODENAME ":BadClock");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeBadHTimings,
+		      XF86VIDMODENAME ":BadHTimings");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeBadVTimings,
+		      XF86VIDMODENAME ":BadVTimings");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeModeUnsuitable,
+		      XF86VIDMODENAME ":ModeUnsuitable");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeExtensionDisabled,
+		      XF86VIDMODENAME ":ExtensionDisabled");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeClientNotLocal,
+		      XF86VIDMODENAME ":ClientNotLocal");
+    RegisterErrorName(extEntry->errorBase + XF86VidModeZoomLocked,
+		      XF86VIDMODENAME ":ZoomLocked");
 }
 
 /*ARGSUSED*/
commit b7786724080fd3928ef7b8c294346661d7ffd90b
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 17:15:34 2007 -0400

    registry: Register XF86DRI extension protocol names.

diff --git a/hw/xfree86/dri/xf86dri.c b/hw/xfree86/dri/xf86dri.c
index fdf0e99..c658421 100644
--- a/hw/xfree86/dri/xf86dri.c
+++ b/hw/xfree86/dri/xf86dri.c
@@ -53,6 +53,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "cursorstr.h"
 #include "scrnintstr.h"
 #include "servermd.h"
+#include "registry.h"
 #define _XF86DRI_SERVER_
 #include "xf86dristr.h"
 #include "swaprep.h"
@@ -112,7 +113,42 @@ XFree86DRIExtensionInit(void)
 				 StandardMinorOpcode))) {
 	DRIReqCode = (unsigned char)extEntry->base;
 	DRIErrorBase = extEntry->errorBase;
-    }
+    } else
+	return;
+
+    RegisterRequestName(DRIReqCode, X_XF86DRIQueryVersion,
+			XF86DRINAME ":QueryVersion");
+    RegisterRequestName(DRIReqCode, X_XF86DRIQueryDirectRenderingCapable,
+			XF86DRINAME ":QueryDirectRenderingCapable");
+    RegisterRequestName(DRIReqCode, X_XF86DRIOpenConnection,
+			XF86DRINAME ":OpenConnection");
+    RegisterRequestName(DRIReqCode, X_XF86DRICloseConnection,
+			XF86DRINAME ":CloseConnection");
+    RegisterRequestName(DRIReqCode, X_XF86DRIGetClientDriverName,
+			XF86DRINAME ":GetClientDriverName");
+    RegisterRequestName(DRIReqCode, X_XF86DRICreateContext,
+			XF86DRINAME ":CreateContext");
+    RegisterRequestName(DRIReqCode, X_XF86DRIDestroyContext,
+			XF86DRINAME ":DestroyContext");
+    RegisterRequestName(DRIReqCode, X_XF86DRICreateDrawable,
+			XF86DRINAME ":CreateDrawable");
+    RegisterRequestName(DRIReqCode, X_XF86DRIDestroyDrawable,
+			XF86DRINAME ":DestroyDrawable");
+    RegisterRequestName(DRIReqCode, X_XF86DRIGetDrawableInfo,
+			XF86DRINAME ":GetDrawableInfo");
+    RegisterRequestName(DRIReqCode, X_XF86DRIGetDeviceInfo,
+			XF86DRINAME ":GetDeviceInfo");
+    RegisterRequestName(DRIReqCode, X_XF86DRIAuthConnection,
+			XF86DRINAME ":AuthConnection");
+    RegisterRequestName(DRIReqCode, X_XF86DRIOpenFullScreen,
+			XF86DRINAME ":OpenFullScreen");
+    RegisterRequestName(DRIReqCode, X_XF86DRICloseFullScreen,
+			XF86DRINAME ":CloseFullScreen");
+
+    RegisterErrorName(DRIErrorBase + XF86DRIClientNotLocal,
+		      XF86DRINAME ":ClientNotLocal");
+    RegisterErrorName(DRIErrorBase + XF86DRIOperationNotSupported,
+		      XF86DRINAME ":OperationNotSupported");
 }
 
 /*ARGSUSED*/
commit eee46b4681ec55297604b0425705f2b18381f7ca
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 17:06:22 2007 -0400

    registry: Register APPLEWM extension protocol names.

diff --git a/hw/darwin/quartz/applewm.c b/hw/darwin/quartz/applewm.c
index d3c26ed..8b9f1ee 100644
--- a/hw/darwin/quartz/applewm.c
+++ b/hw/darwin/quartz/applewm.c
@@ -42,6 +42,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "servermd.h"
 #include "swaprep.h"
 #include "propertyst.h"
+#include "registry.h"
 #include <X11/Xatom.h>
 #include "darwin.h"
 #define _APPLEWM_SERVER_
@@ -127,7 +128,45 @@ AppleWMExtensionInit(
         WMEventBase = extEntry->eventBase;
         EventSwapVector[WMEventBase] = (EventSwapPtr) SNotifyEvent;
         appleWMProcs = procsPtr;
-    }
+    } else
+	return;
+
+    RegisterRequestName(WMReqCode, X_AppleWMQueryVersion,
+			APPLEWMNAME ":QueryVersion");
+    RegisterRequestName(WMReqCode, X_AppleWMFrameGetRect,
+			APPLEWMNAME ":FrameGetRect");
+    RegisterRequestName(WMReqCode, X_AppleWMFrameHitTest,
+			APPLEWMNAME ":FrameHitTest");
+    RegisterRequestName(WMReqCode, X_AppleWMFrameDraw,
+			APPLEWMNAME ":FrameDraw");
+    RegisterRequestName(WMReqCode, X_AppleWMDisableUpdate,
+			APPLEWMNAME ":DisableUpdate");
+    RegisterRequestName(WMReqCode, X_AppleWMReenableUpdate,
+			APPLEWMNAME ":ReenableUpdate");
+    RegisterRequestName(WMReqCode, X_AppleWMSelectInput,
+			APPLEWMNAME ":SelectInput");
+    RegisterRequestName(WMReqCode, X_AppleWMSetWindowMenuCheck,
+			APPLEWMNAME ":SetWindowMenuCheck");
+    RegisterRequestName(WMReqCode, X_AppleWMSetFrontProcess,
+			APPLEWMNAME ":SetFrontProcess");
+    RegisterRequestName(WMReqCode, X_AppleWMSetWindowLevel,
+			APPLEWMNAME ":SetWindowLevel");
+    RegisterRequestName(WMReqCode, X_AppleWMSetCanQuit,
+			APPLEWMNAME ":SetCanQuit");
+    RegisterRequestName(WMReqCode, X_AppleWMSetWindowMenu,
+			APPLEWMNAME ":SetWindowMenu");
+
+    RegisterEventName(WMEventBase + AppleWMControllerNotify,
+		      APPLEWMNAME ":ControllerNotify");
+    RegisterEventName(WMEventBase + AppleWMActivationNotify,
+		      APPLEWMNAME ":ActivationNotify");
+    RegisterEventName(WMEventBase + AppleWMPasteboardNotify,
+		      APPLEWMNAME ":PasteboardNotify");
+
+    RegisterErrorName(WMErrorBase + AppleWMClientNotLocal,
+		      APPLEWMNAME ":ClientNotLocal");
+    RegisterErrorName(WMErrorBase + AppleWMOperationNotSupported,
+		      APPLEWMNAME ":OperationNotSupported");
 }
 
 /*ARGSUSED*/
commit b9f5ab98c8dea36dcce1ad15fd2e059a77e77c39
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 16:18:37 2007 -0400

    registry: Register XINERAMA extension protocol names.

diff --git a/Xext/panoramiX.c b/Xext/panoramiX.c
index 26c2809..1ba0c4d 100644
--- a/Xext/panoramiX.c
+++ b/Xext/panoramiX.c
@@ -53,6 +53,7 @@ Equipment Corporation.
 #include "globals.h"
 #include "servermd.h"
 #include "resource.h"
+#include "registry.h"
 #ifdef RENDER
 #include "picturestr.h"
 #endif
@@ -589,6 +590,19 @@ void PanoramiXExtensionInit(int argc, char *argv[])
 #ifdef RENDER
     PanoramiXRenderInit ();
 #endif
+
+    RegisterRequestName(extEntry->base, X_PanoramiXQueryVersion,
+			PANORAMIX_PROTOCOL_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetState,
+			PANORAMIX_PROTOCOL_NAME ":GetState");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenCount,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenCount");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenSize,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenSize");
+    RegisterRequestName(extEntry->base, X_XineramaIsActive,
+			PANORAMIX_PROTOCOL_NAME ":IsActive");
+    RegisterRequestName(extEntry->base, X_XineramaQueryScreens,
+			PANORAMIX_PROTOCOL_NAME ":QueryScreens");
 }
 
 extern Bool CreateConnectionBlock(void);
diff --git a/hw/darwin/quartz/pseudoramiX.c b/hw/darwin/quartz/pseudoramiX.c
index 787601b..cdd4fff 100644
--- a/hw/darwin/quartz/pseudoramiX.c
+++ b/hw/darwin/quartz/pseudoramiX.c
@@ -42,6 +42,7 @@ Equipment Corporation.
 #include "window.h"
 #include <X11/extensions/panoramiXproto.h>
 #include "globals.h"
+#include "registry.h"
 
 extern int noPseudoramiXExtension;
 extern int noPanoramiXExtension;
@@ -147,6 +148,19 @@ void PseudoramiXExtensionInit(int argc, char *argv[])
                PANORAMIX_PROTOCOL_NAME);
         return;
     }
+
+    RegisterRequestName(extEntry->base, X_PanoramiXQueryVersion,
+			PANORAMIX_PROTOCOL_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetState,
+			PANORAMIX_PROTOCOL_NAME ":GetState");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenCount,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenCount");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenSize,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenSize");
+    RegisterRequestName(extEntry->base, X_XineramaIsActive,
+			PANORAMIX_PROTOCOL_NAME ":IsActive");
+    RegisterRequestName(extEntry->base, X_XineramaQueryScreens,
+			PANORAMIX_PROTOCOL_NAME ":QueryScreens");
 }
 
 
diff --git a/randr/rrxinerama.c b/randr/rrxinerama.c
index 896f61f..c499802 100644
--- a/randr/rrxinerama.c
+++ b/randr/rrxinerama.c
@@ -71,6 +71,7 @@
 #include "randrstr.h"
 #include "swaprep.h"
 #include <X11/extensions/panoramiXproto.h>
+#include "registry.h"
 
 #define RR_XINERAMA_MAJOR_VERSION   1
 #define RR_XINERAMA_MINOR_VERSION   1
@@ -423,6 +424,8 @@ RRXineramaResetProc(ExtensionEntry* extEntry)
 void
 RRXineramaExtensionInit(void)
 {
+    ExtensionEntry *extEntry;
+
 #ifdef PANORAMIX
     if(!noPanoramiXExtension)
 	return;
@@ -436,9 +439,22 @@ RRXineramaExtensionInit(void)
     if (screenInfo.numScreens > 1)
 	return;
 
-    (void) AddExtension(PANORAMIX_PROTOCOL_NAME, 0,0,
-			ProcRRXineramaDispatch,
-			SProcRRXineramaDispatch,
-			RRXineramaResetProc,
-			StandardMinorOpcode);
+    extEntry = AddExtension(PANORAMIX_PROTOCOL_NAME, 0, 0,
+			    ProcRRXineramaDispatch,
+			    SProcRRXineramaDispatch,
+			    RRXineramaResetProc,
+			    StandardMinorOpcode);
+
+    RegisterRequestName(extEntry->base, X_PanoramiXQueryVersion,
+			PANORAMIX_PROTOCOL_NAME ":QueryVersion");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetState,
+			PANORAMIX_PROTOCOL_NAME ":GetState");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenCount,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenCount");
+    RegisterRequestName(extEntry->base, X_PanoramiXGetScreenSize,
+			PANORAMIX_PROTOCOL_NAME ":GetScreenSize");
+    RegisterRequestName(extEntry->base, X_XineramaIsActive,
+			PANORAMIX_PROTOCOL_NAME ":IsActive");
+    RegisterRequestName(extEntry->base, X_XineramaQueryScreens,
+			PANORAMIX_PROTOCOL_NAME ":QueryScreens");
 }
commit 3464b419230c6d17e940d967b567c5d2cb22d232
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 15:45:12 2007 -0400

    registry: Register APPLEDRI extension protocol names.

diff --git a/hw/darwin/quartz/xpr/appledri.c b/hw/darwin/quartz/xpr/appledri.c
index 70b7400..d9690fd 100644
--- a/hw/darwin/quartz/xpr/appledri.c
+++ b/hw/darwin/quartz/xpr/appledri.c
@@ -53,6 +53,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "swaprep.h"
 #include "dri.h"
 #include "dristruct.h"
+#include "registry.h"
 
 static int DRIErrorBase = 0;
 
@@ -92,7 +93,33 @@ AppleDRIExtensionInit(void)
         DRIErrorBase = extEntry->errorBase;
         DRIEventBase = extEntry->eventBase;
         EventSwapVector[DRIEventBase] = (EventSwapPtr) SNotifyEvent;
-    }
+    } else
+	return;
+
+    RegisterRequestName(DRIReqCode, X_AppleDRIQueryVersion,
+			APPLEDRINAME ":QueryVersion");
+    RegisterRequestName(DRIReqCode, X_AppleDRIQueryDirectRenderingCapable,
+			APPLEDRINAME ":QueryDirectRenderingCapable");
+    RegisterRequestName(DRIReqCode, X_AppleDRICreateSurface,
+			APPLEDRINAME ":CreateSurface");
+    RegisterRequestName(DRIReqCode, X_AppleDRIDestroySurface,
+			APPLEDRINAME ":DestroySurface");
+    RegisterRequestName(DRIReqCode, X_AppleDRIAuthConnection,
+			APPLEDRINAME ":AuthConnection");
+
+    RegisterEventName(DRIEventBase + AppleDRIObsoleteEvent1,
+		      APPLEDRINAME ":ObsoleteEvent1");
+    RegisterEventName(DRIEventBase + AppleDRIObsoleteEvent2,
+		      APPLEDRINAME ":ObsoleteEvent2");
+    RegisterEventName(DRIEventBase + AppleDRIObsoleteEvent3,
+		      APPLEDRINAME ":ObsoleteEvent3");
+    RegisterEventName(DRIEventBase + AppleDRISurfaceNotify,
+		      APPLEDRINAME ":SurfaceNotify");
+
+    RegisterErrorName(DRIEventBase + AppleDRIClientNotLocal,
+		      APPLEDRINAME ":ClientNotLocal");
+    RegisterErrorName(DRIEventBase + AppleDRIOperationNotSupported,
+		      APPLEDRINAME ":OperationNotSupported");
 }
 
 /*ARGSUSED*/
commit 32f3f5a1e7654f8bb43ea16b9227b3994e616739
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 15:32:17 2007 -0400

    registry: Register DMX extension protocol names.

diff --git a/hw/dmx/dmx.c b/hw/dmx/dmx.c
index 24d1620..a4d6beb 100644
--- a/hw/dmx/dmx.c
+++ b/hw/dmx/dmx.c
@@ -54,6 +54,7 @@
 #define EXTENSION_PROC_ARGS void *
 #include "extnsionst.h"
 #include "opaque.h"
+#include "registry.h"
 
 #include "dmxextension.h"
 #include <X11/extensions/dmxproto.h>
@@ -126,6 +127,45 @@ void DMXExtensionInit(void)
                                  ProcDMXDispatch, SProcDMXDispatch,
                                  DMXResetProc, StandardMinorOpcode)))
 	DMXCode = extEntry->base;
+    else
+	return;
+
+    RegisterRequestName(DMXCode, X_DMXQueryVersion,
+			DMX_EXTENSION_NAME ":DMXQueryVersion");
+    RegisterRequestName(DMXCode, X_DMXGetScreenCount,
+			DMX_EXTENSION_NAME ":DMXGetScreenCount");
+    RegisterRequestName(DMXCode, X_DMXGetScreenInformationDEPRECATED,
+			DMX_EXTENSION_NAME ":DMXGetScreenInfoDEPRECATED");
+    RegisterRequestName(DMXCode, X_DMXGetWindowAttributes,
+			DMX_EXTENSION_NAME ":DMXGetWindowAttributes");
+    RegisterRequestName(DMXCode, X_DMXGetInputCount,
+			DMX_EXTENSION_NAME ":DMXGetInputCount");
+    RegisterRequestName(DMXCode, X_DMXGetInputAttributes,
+			DMX_EXTENSION_NAME ":DMXGetInputAttributes");
+    RegisterRequestName(DMXCode, X_DMXForceWindowCreationDEPRECATED,
+			DMX_EXTENSION_NAME ":DMXForceWindowCreationDEPRECATED");
+    RegisterRequestName(DMXCode, X_DMXReconfigureScreenDEPRECATED,
+			DMX_EXTENSION_NAME ":DMXReconfigureScreenDEPRECATED");
+    RegisterRequestName(DMXCode, X_DMXSync,
+			DMX_EXTENSION_NAME ":DMXSync");
+    RegisterRequestName(DMXCode, X_DMXForceWindowCreation,
+			DMX_EXTENSION_NAME ":DMXForceWindowCreation");
+    RegisterRequestName(DMXCode, X_DMXGetScreenAttributes,
+			DMX_EXTENSION_NAME ":DMXGetScreenAttributes");
+    RegisterRequestName(DMXCode, X_DMXChangeScreensAttributes,
+			DMX_EXTENSION_NAME ":DMXChangeScreensAttributes");
+    RegisterRequestName(DMXCode, X_DMXAddScreen,
+			DMX_EXTENSION_NAME ":DMXAddScreen");
+    RegisterRequestName(DMXCode, X_DMXRemoveScreen,
+			DMX_EXTENSION_NAME ":DMXRemoveScreen");
+    RegisterRequestName(DMXCode, X_DMXGetDesktopAttributes,
+			DMX_EXTENSION_NAME ":DMXGetDesktopAttributes");
+    RegisterRequestName(DMXCode, X_DMXChangeDesktopAttributes,
+			DMX_EXTENSION_NAME ":DMXChangeDesktopAttributes");
+    RegisterRequestName(DMXCode, X_DMXAddInput,
+			DMX_EXTENSION_NAME ":DMXAddInput");
+    RegisterRequestName(DMXCode, X_DMXRemoveInput,
+			DMX_EXTENSION_NAME ":DMXRemoveInput");
 }
 
 static void dmxSetScreenAttribute(int bit, DMXScreenAttributesPtr attr,
commit 166ef972febc00c665e1d5aeb68e75d7bbcf9879
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 15:22:02 2007 -0400

    registry: Register composite extension protocol names.

diff --git a/composite/compext.c b/composite/compext.c
index 2918556..98adabb 100644
--- a/composite/compext.c
+++ b/composite/compext.c
@@ -46,6 +46,7 @@
 
 #include "compint.h"
 #include "xace.h"
+#include "registry.h"
 
 #define SERVER_COMPOSITE_MAJOR	0
 #define SERVER_COMPOSITE_MINOR	4
@@ -754,4 +755,23 @@ CompositeExtensionInit (void)
 
     /* Initialization succeeded */
     noCompositeExtension = FALSE;
+
+    RegisterRequestName(CompositeReqCode, X_CompositeQueryVersion,
+			COMPOSITE_NAME ":CompositeQueryVersion");
+    RegisterRequestName(CompositeReqCode, X_CompositeRedirectWindow,
+			COMPOSITE_NAME ":CompositeRedirectWindow");
+    RegisterRequestName(CompositeReqCode, X_CompositeRedirectSubwindows,
+			COMPOSITE_NAME ":CompositeRedirectSubwindows");
+    RegisterRequestName(CompositeReqCode, X_CompositeUnredirectWindow,
+			COMPOSITE_NAME ":CompositeUnredirectWindow");
+    RegisterRequestName(CompositeReqCode, X_CompositeUnredirectSubwindows,
+			COMPOSITE_NAME ":CompositeUnredirectSubwindows");
+    RegisterRequestName(CompositeReqCode, X_CompositeCreateRegionFromBorderClip,
+			COMPOSITE_NAME ":CompositeCreateRegionFromBorderClip");
+    RegisterRequestName(CompositeReqCode, X_CompositeNameWindowPixmap,
+			COMPOSITE_NAME ":CompositeNameWindowPixmap");
+    RegisterRequestName(CompositeReqCode, X_CompositeGetOverlayWindow,
+			COMPOSITE_NAME ":CompositeGetOverlayWindow");
+    RegisterRequestName(CompositeReqCode, X_CompositeReleaseOverlayWindow,
+			COMPOSITE_NAME ":CompositeReleaseOverlayWindow");
 }
commit a5cf3f21f712e46dbf9bca289e67be75f2b531d3
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 14:27:32 2007 -0400

    registry: Register XKB extension protocol names.

diff --git a/xkb/xkb.c b/xkb/xkb.c
index 9efdfb6..63576c2 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -35,6 +35,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #include <X11/Xproto.h>
 #include "misc.h"
 #include "inputstr.h"
+#include "registry.h"
 #define	XKBSRV_NEED_FILE_FUNCS
 #include <xkbsrv.h>
 #include "extnsionst.h"
@@ -6226,8 +6227,62 @@ XkbExtensionInit(void)
 	XkbErrorBase = (unsigned char)extEntry->errorBase;
 	XkbKeyboardErrorCode = XkbErrorBase+XkbKeyboard;
 	RT_XKBCLIENT = CreateNewResourceType(XkbClientGone);
-    }
-    return;
+    } else
+	return;
+
+    RegisterRequestName(XkbReqCode, X_kbUseExtension,
+			XkbName ":UseExtension");
+    RegisterRequestName(XkbReqCode, X_kbSelectEvents,
+			XkbName ":SelectEvents");
+    RegisterRequestName(XkbReqCode, X_kbBell,
+			XkbName ":Bell");
+    RegisterRequestName(XkbReqCode, X_kbGetState,
+			XkbName ":GetState");
+    RegisterRequestName(XkbReqCode, X_kbLatchLockState,
+			XkbName ":LatchLockState");
+    RegisterRequestName(XkbReqCode, X_kbGetControls,
+			XkbName ":GetControls");
+    RegisterRequestName(XkbReqCode, X_kbSetControls,
+			XkbName ":SetControls");
+    RegisterRequestName(XkbReqCode, X_kbGetMap,
+			XkbName ":GetMap");
+    RegisterRequestName(XkbReqCode, X_kbSetMap,
+			XkbName ":SetMap");
+    RegisterRequestName(XkbReqCode, X_kbGetCompatMap,
+			XkbName ":GetCompatMap");
+    RegisterRequestName(XkbReqCode, X_kbSetCompatMap,
+			XkbName ":SetCompatMap");
+    RegisterRequestName(XkbReqCode, X_kbGetIndicatorState,
+			XkbName ":GetIndicatorState");
+    RegisterRequestName(XkbReqCode, X_kbGetIndicatorMap,
+			XkbName ":GetIndicatorMap");
+    RegisterRequestName(XkbReqCode, X_kbSetIndicatorMap,
+			XkbName ":SetIndicatorMap");
+    RegisterRequestName(XkbReqCode, X_kbGetNamedIndicator,
+			XkbName ":GetNamedIndicator");
+    RegisterRequestName(XkbReqCode, X_kbSetNamedIndicator,
+			XkbName ":SetNamedIndicator");
+    RegisterRequestName(XkbReqCode, X_kbGetNames,
+			XkbName ":GetNames");
+    RegisterRequestName(XkbReqCode, X_kbSetNames,
+			XkbName ":SetNames");
+    RegisterRequestName(XkbReqCode, X_kbGetGeometry,
+			XkbName ":GetGeometry");
+    RegisterRequestName(XkbReqCode, X_kbSetGeometry,
+			XkbName ":SetGeometry");
+    RegisterRequestName(XkbReqCode, X_kbPerClientFlags,
+			XkbName ":PerClientFlags");
+    RegisterRequestName(XkbReqCode, X_kbListComponents,
+			XkbName ":ListComponents");
+    RegisterRequestName(XkbReqCode, X_kbGetKbdByName,
+			XkbName ":GetKbdByName");
+    RegisterRequestName(XkbReqCode, X_kbGetDeviceInfo,
+			XkbName ":GetDeviceInfo");
+    RegisterRequestName(XkbReqCode, X_kbSetDeviceInfo,
+			XkbName ":SetDeviceInfo");
+    RegisterRequestName(XkbReqCode, X_kbSetDebuggingFlags,
+			XkbName ":SetDebuggingFlags");
+
+    RegisterEventName(extEntry->eventBase, XkbName ":EventCode");
+    RegisterErrorName(extEntry->errorBase, XkbName ":Keyboard");
 }
-
-
commit 5277a6ff589b5ddb475b90e1aaf5dbd9172d9711
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Mon Oct 15 13:38:35 2007 -0400

    registry: Register Input extension protocol names.

diff --git a/Xi/extinit.c b/Xi/extinit.c
index 1a435ed..bf5ebd2 100644
--- a/Xi/extinit.c
+++ b/Xi/extinit.c
@@ -69,6 +69,7 @@ SOFTWARE.
 #include "extinit.h"
 #include "exglobals.h"
 #include "swaprep.h"
+#include "registry.h"
 
 /* modules local to Xi */
 #include "allowev.h"
@@ -936,6 +937,7 @@ XInputExtensionInit(void)
 	AllExtensionVersions[IReqCode - 128] = thisversion;
 	MakeDeviceTypeAtoms();
 	RT_INPUTCLIENT = CreateNewResourceType((DeleteType) InputClientGone);
+	RegisterResourceName(RT_INPUTCLIENT, "INPUTCLIENT");
 	FixExtensionEvents(extEntry);
 	ReplySwapVector[IReqCode] = (ReplySwapPtr) SReplyIDispatch;
 	EventSwapVector[DeviceValuator] = SEventIDispatch;
@@ -957,4 +959,119 @@ XInputExtensionInit(void)
     } else {
 	FatalError("IExtensionInit: AddExtensions failed\n");
     }
+
+    RegisterRequestName(IReqCode, X_GetExtensionVersion,
+			INAME ":GetExtensionVersion");
+    RegisterRequestName(IReqCode, X_ListInputDevices,
+			INAME ":ListInputDevices");
+    RegisterRequestName(IReqCode, X_OpenDevice,
+			INAME ":OpenDevice");
+    RegisterRequestName(IReqCode, X_CloseDevice,
+			INAME ":CloseDevice");
+    RegisterRequestName(IReqCode, X_SetDeviceMode,
+			INAME ":SetDeviceMode");
+    RegisterRequestName(IReqCode, X_SelectExtensionEvent,
+			INAME ":SelectExtensionEvent");
+    RegisterRequestName(IReqCode, X_GetSelectedExtensionEvents,
+			INAME ":GetSelectedExtensionEvents");
+    RegisterRequestName(IReqCode, X_ChangeDeviceDontPropagateList,
+			INAME ":ChangeDeviceDontPropagateList");
+    RegisterRequestName(IReqCode, X_GetDeviceDontPropagateList,
+			INAME ":GetDeviceDontPropagageList");
+    RegisterRequestName(IReqCode, X_GetDeviceMotionEvents,
+			INAME ":GetDeviceMotionEvents");
+    RegisterRequestName(IReqCode, X_ChangeKeyboardDevice,
+			INAME ":ChangeKeyboardDevice");
+    RegisterRequestName(IReqCode, X_ChangePointerDevice,
+			INAME ":ChangePointerDevice");
+    RegisterRequestName(IReqCode, X_GrabDevice,
+			INAME ":GrabDevice");
+    RegisterRequestName(IReqCode, X_UngrabDevice,
+			INAME ":UngrabDevice");
+    RegisterRequestName(IReqCode, X_GrabDeviceKey,
+			INAME ":GrabDeviceKey");
+    RegisterRequestName(IReqCode, X_UngrabDeviceKey,
+			INAME ":UngrabDeviceKey");
+    RegisterRequestName(IReqCode, X_GrabDeviceButton,
+			INAME ":GrabDeviceButton");
+    RegisterRequestName(IReqCode, X_UngrabDeviceButton,
+			INAME ":UngrabDeviceButton");
+    RegisterRequestName(IReqCode, X_AllowDeviceEvents,
+			INAME ":AllowDeviceEvents");
+    RegisterRequestName(IReqCode, X_GetDeviceFocus,
+			INAME ":GetDeviceFocus");
+    RegisterRequestName(IReqCode, X_SetDeviceFocus,
+			INAME ":SetDeviceFocus");
+    RegisterRequestName(IReqCode, X_GetFeedbackControl,
+			INAME ":GetFeedbackControl");
+    RegisterRequestName(IReqCode, X_ChangeFeedbackControl,
+			INAME ":ChangeFeedbackControl");
+    RegisterRequestName(IReqCode, X_GetDeviceKeyMapping,
+			INAME ":GetDeviceKeyMapping");
+    RegisterRequestName(IReqCode, X_ChangeDeviceKeyMapping,
+			INAME ":ChangeDeviceKeyMapping");
+    RegisterRequestName(IReqCode, X_GetDeviceModifierMapping,
+			INAME ":GetDeviceModifierMapping");
+    RegisterRequestName(IReqCode, X_SetDeviceModifierMapping,
+			INAME ":SetDeviceModifierMapping");
+    RegisterRequestName(IReqCode, X_GetDeviceButtonMapping,
+			INAME ":GetDeviceButtonMapping");
+    RegisterRequestName(IReqCode, X_SetDeviceButtonMapping,
+			INAME ":SetDeviceButtonMapping");
+    RegisterRequestName(IReqCode, X_QueryDeviceState,
+			INAME ":QueryDeviceState");
+    RegisterRequestName(IReqCode, X_SendExtensionEvent,
+			INAME ":SendExtensionEvent");
+    RegisterRequestName(IReqCode, X_DeviceBell,
+			INAME ":DeviceBell");
+    RegisterRequestName(IReqCode, X_SetDeviceValuators,
+			INAME ":SetDeviceValuators");
+    RegisterRequestName(IReqCode, X_GetDeviceControl,
+			INAME ":GetDeviceControl");
+    RegisterRequestName(IReqCode, X_ChangeDeviceControl,
+			INAME ":ChangeDeviceControl");
+
+    RegisterEventName(extEntry->eventBase + XI_DeviceValuator,
+		      INAME ":DeviceValuator");
+    RegisterEventName(extEntry->eventBase + XI_DeviceKeyPress,
+		      INAME ":DeviceKeyPress");
+    RegisterEventName(extEntry->eventBase + XI_DeviceKeyRelease,
+		      INAME ":DeviceKeyRelease");
+    RegisterEventName(extEntry->eventBase + XI_DeviceButtonPress,
+		      INAME ":DeviceButtonPress");
+    RegisterEventName(extEntry->eventBase + XI_DeviceButtonRelease,
+		      INAME ":DeviceButtonRelease");
+    RegisterEventName(extEntry->eventBase + XI_DeviceMotionNotify,
+		      INAME ":DeviceMotionNotify");
+    RegisterEventName(extEntry->eventBase + XI_DeviceFocusIn,
+		      INAME ":DeviceFocusIn");
+    RegisterEventName(extEntry->eventBase + XI_DeviceFocusOut,
+		      INAME ":DeviceFocusOut");
+    RegisterEventName(extEntry->eventBase + XI_ProximityIn,
+		      INAME ":ProximityIn");
+    RegisterEventName(extEntry->eventBase + XI_ProximityOut,
+		      INAME ":ProximityOut");
+    RegisterEventName(extEntry->eventBase + XI_DeviceStateNotify,
+		      INAME ":DeviceStateNotify");
+    RegisterEventName(extEntry->eventBase + XI_DeviceMappingNotify,
+		      INAME ":DeviceMappingNotify");
+    RegisterEventName(extEntry->eventBase + XI_ChangeDeviceNotify,
+		      INAME ":ChangeDeviceNotify");
+    RegisterEventName(extEntry->eventBase + XI_DeviceKeystateNotify,
+		      INAME ":DeviceKeystateNotify");
+    RegisterEventName(extEntry->eventBase + XI_DeviceButtonstateNotify,
+		      INAME ":DeviceButtonstateNotify");
+    RegisterEventName(extEntry->eventBase + XI_DevicePresenceNotify,
+		      INAME ":DevicePresenceNotify");
+
+    RegisterErrorName(extEntry->errorBase + XI_BadDevice,
+		      INAME ":BadDevice");
+    RegisterErrorName(extEntry->errorBase + XI_BadEvent,
+		      INAME ":BadEvent");
+    RegisterErrorName(extEntry->errorBase + XI_BadMode,
+		      INAME ":BadMode");
+    RegisterErrorName(extEntry->errorBase + XI_DeviceBusy,
+		      INAME ":DeviceBusy");
+    RegisterErrorName(extEntry->errorBase + XI_BadClass,
+		      INAME ":BadClass");
 }


More information about the xorg-commit mailing list