ODROID-U3 xorg-server debian package fork :
[deb_xorg-server.git] / debian / patches / CVE-2014-8xxx / 0031-glx-Length-checking-for-non-generated-single-request.patch
index 496f108e7a9de652475f4bd44e66825d804d33be..793a62a1b7539936756757af87d0e674ac701ff7 100644 (file)
@@ -25,11 +25,9 @@ Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
  glx/singlepixswap.c                |   34 ++++++++++++++++++++++++----
  5 files changed, 95 insertions(+), 29 deletions(-)
 
-Index: xorg-server-1.15.1/glx/indirect_texture_compression.c
-===================================================================
---- xorg-server-1.15.1.orig/glx/indirect_texture_compression.c 2014-12-04 11:56:48.021535287 -0500
-+++ xorg-server-1.15.1/glx/indirect_texture_compression.c      2014-12-04 11:56:48.017535262 -0500
-@@ -43,6 +43,8 @@
+--- a/glx/indirect_texture_compression.c
++++ b/glx/indirect_texture_compression.c
+@@ -43,6 +43,8 @@ __glXDisp_GetCompressedTexImage(struct _
      __GLXcontext *const cx = __glXForceCurrent(cl, req->contextTag, &error);
      ClientPtr client = cl->client;
  
@@ -38,7 +36,7 @@ Index: xorg-server-1.15.1/glx/indirect_texture_compression.c
      pc += __GLX_SINGLE_HDR_SIZE;
      if (cx != NULL) {
          const GLenum target = *(GLenum *) (pc + 0);
-@@ -85,6 +87,8 @@
+@@ -85,6 +87,8 @@ __glXDispSwap_GetCompressedTexImage(stru
          __glXForceCurrent(cl, bswap_32(req->contextTag), &error);
      ClientPtr client = cl->client;
  
@@ -47,10 +45,8 @@ Index: xorg-server-1.15.1/glx/indirect_texture_compression.c
      pc += __GLX_SINGLE_HDR_SIZE;
      if (cx != NULL) {
          const GLenum target = (GLenum) bswap_32(*(int *) (pc + 0));
-Index: xorg-server-1.15.1/glx/single2.c
-===================================================================
---- xorg-server-1.15.1.orig/glx/single2.c      2014-12-04 11:56:48.021535287 -0500
-+++ xorg-server-1.15.1/glx/single2.c   2014-12-04 11:56:48.017535262 -0500
+--- a/glx/single2.c
++++ b/glx/single2.c
 @@ -45,11 +45,14 @@
  int
  __glXDisp_FeedbackBuffer(__GLXclientState * cl, GLbyte * pc)
@@ -66,7 +62,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -76,10 +79,13 @@
+@@ -76,10 +79,13 @@ __glXDisp_FeedbackBuffer(__GLXclientStat
  int
  __glXDisp_SelectBuffer(__GLXclientState * cl, GLbyte * pc)
  {
@@ -80,7 +76,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -104,7 +110,7 @@
+@@ -104,7 +110,7 @@ __glXDisp_SelectBuffer(__GLXclientState
  int
  __glXDisp_RenderMode(__GLXclientState * cl, GLbyte * pc)
  {
@@ -89,7 +85,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      xGLXRenderModeReply reply;
      __GLXcontext *cx;
      GLint nitems = 0, retBytes = 0, retval, newModeCheck;
-@@ -112,6 +118,8 @@
+@@ -112,6 +118,8 @@ __glXDisp_RenderMode(__GLXclientState *
      GLenum newMode;
      int error;
  
@@ -98,7 +94,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -188,7 +196,6 @@
+@@ -188,7 +196,6 @@ __glXDisp_RenderMode(__GLXclientState *
       ** selection array, as per the API for glRenderMode itself.
       */
   noChangeAllowed:;
@@ -106,7 +102,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      reply = (xGLXRenderModeReply) {
          .type = X_Reply,
          .sequenceNumber = client->sequence,
-@@ -207,9 +214,12 @@
+@@ -207,9 +214,12 @@ __glXDisp_RenderMode(__GLXclientState *
  int
  __glXDisp_Flush(__GLXclientState * cl, GLbyte * pc)
  {
@@ -119,7 +115,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -223,10 +233,12 @@
+@@ -223,10 +233,12 @@ __glXDisp_Flush(__GLXclientState * cl, G
  int
  __glXDisp_Finish(__GLXclientState * cl, GLbyte * pc)
  {
@@ -133,7 +129,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -317,7 +329,7 @@
+@@ -317,7 +329,7 @@ __glXcombine_strings(const char *cext_st
  int
  DoGetString(__GLXclientState * cl, GLbyte * pc, GLboolean need_swap)
  {
@@ -142,7 +138,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      __GLXcontext *cx;
      GLenum name;
      const char *string;
-@@ -327,6 +339,8 @@
+@@ -327,6 +339,8 @@ DoGetString(__GLXclientState * cl, GLbyt
      char *buf = NULL, *buf1 = NULL;
      GLint length = 0;
  
@@ -151,7 +147,7 @@ Index: xorg-server-1.15.1/glx/single2.c
      /* If the client has the opposite byte order, swap the contextTag and
       * the name.
       */
-@@ -343,7 +357,6 @@
+@@ -343,7 +357,6 @@ DoGetString(__GLXclientState * cl, GLbyt
      pc += __GLX_SINGLE_HDR_SIZE;
      name = *(GLenum *) (pc + 0);
      string = (const char *) glGetString(name);
@@ -159,10 +155,8 @@ Index: xorg-server-1.15.1/glx/single2.c
  
      if (string == NULL)
          string = "";
-Index: xorg-server-1.15.1/glx/single2swap.c
-===================================================================
---- xorg-server-1.15.1.orig/glx/single2swap.c  2014-12-04 11:56:48.021535287 -0500
-+++ xorg-server-1.15.1/glx/single2swap.c       2014-12-04 11:56:48.017535262 -0500
+--- a/glx/single2swap.c
++++ b/glx/single2swap.c
 @@ -41,6 +41,7 @@
  int
  __glXDispSwap_FeedbackBuffer(__GLXclientState * cl, GLbyte * pc)
@@ -171,7 +165,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      GLsizei size;
      GLenum type;
  
-@@ -48,6 +49,8 @@
+@@ -48,6 +49,8 @@ __glXDispSwap_FeedbackBuffer(__GLXclient
      __GLXcontext *cx;
      int error;
  
@@ -180,7 +174,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -77,12 +80,15 @@
+@@ -77,12 +80,15 @@ __glXDispSwap_FeedbackBuffer(__GLXclient
  int
  __glXDispSwap_SelectBuffer(__GLXclientState * cl, GLbyte * pc)
  {
@@ -196,7 +190,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -109,7 +115,7 @@
+@@ -109,7 +115,7 @@ __glXDispSwap_SelectBuffer(__GLXclientSt
  int
  __glXDispSwap_RenderMode(__GLXclientState * cl, GLbyte * pc)
  {
@@ -205,7 +199,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLXcontext *cx;
      xGLXRenderModeReply reply;
      GLint nitems = 0, retBytes = 0, retval, newModeCheck;
-@@ -120,6 +126,8 @@
+@@ -120,6 +126,8 @@ __glXDispSwap_RenderMode(__GLXclientStat
      __GLX_DECLARE_SWAP_ARRAY_VARIABLES;
      int error;
  
@@ -214,7 +208,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -200,7 +208,6 @@
+@@ -200,7 +208,6 @@ __glXDispSwap_RenderMode(__GLXclientStat
       ** selection array, as per the API for glRenderMode itself.
       */
   noChangeAllowed:;
@@ -222,7 +216,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      reply = (xGLXRenderModeReply) {
          .type = X_Reply,
          .sequenceNumber = client->sequence,
-@@ -224,11 +231,14 @@
+@@ -224,11 +231,14 @@ __glXDispSwap_RenderMode(__GLXclientStat
  int
  __glXDispSwap_Flush(__GLXclientState * cl, GLbyte * pc)
  {
@@ -237,7 +231,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -243,12 +253,14 @@
+@@ -243,12 +253,14 @@ __glXDispSwap_Flush(__GLXclientState * c
  int
  __glXDispSwap_Finish(__GLXclientState * cl, GLbyte * pc)
  {
@@ -253,7 +247,7 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -260,7 +272,6 @@
+@@ -260,7 +272,6 @@ __glXDispSwap_Finish(__GLXclientState *
      cx->hasUnflushedCommands = GL_FALSE;
  
      /* Send empty reply packet to indicate finish is finished */
@@ -261,11 +255,9 @@ Index: xorg-server-1.15.1/glx/single2swap.c
      __GLX_BEGIN_REPLY(0);
      __GLX_PUT_RETVAL(0);
      __GLX_SWAP_REPLY_HEADER();
-Index: xorg-server-1.15.1/glx/singlepix.c
-===================================================================
---- xorg-server-1.15.1.orig/glx/singlepix.c    2014-12-04 11:56:48.021535287 -0500
-+++ xorg-server-1.15.1/glx/singlepix.c 2014-12-04 11:56:48.017535262 -0500
-@@ -51,6 +51,8 @@
+--- a/glx/singlepix.c
++++ b/glx/singlepix.c
+@@ -51,6 +51,8 @@ __glXDisp_ReadPixels(__GLXclientState *
      int error;
      char *answer, answerBuffer[200];
  
@@ -274,7 +266,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -100,6 +102,8 @@
+@@ -100,6 +102,8 @@ __glXDisp_GetTexImage(__GLXclientState *
      char *answer, answerBuffer[200];
      GLint width = 0, height = 0, depth = 1;
  
@@ -283,7 +275,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -157,6 +161,8 @@
+@@ -157,6 +161,8 @@ __glXDisp_GetPolygonStipple(__GLXclientS
      GLubyte answerBuffer[200];
      char *answer;
  
@@ -292,7 +284,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
          return error;
-@@ -217,15 +223,13 @@
+@@ -217,15 +223,13 @@ GetSeparableFilter(__GLXclientState * cl
      compsize = __glGetTexImage_size(target, 1, format, type, width, 1, 1);
      compsize2 = __glGetTexImage_size(target, 1, format, type, height, 1, 1);
  
@@ -311,7 +303,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      __glXClearErrorOccured();
      glGetSeparableFilter(*(GLenum *) (pc + 0), *(GLenum *) (pc + 4),
                           *(GLenum *) (pc + 8), answer, answer + compsize, NULL);
-@@ -249,7 +253,8 @@
+@@ -249,7 +253,8 @@ int
  __glXDisp_GetSeparableFilter(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -321,7 +313,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetSeparableFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -257,7 +262,8 @@
+@@ -257,7 +262,8 @@ int
  __glXDisp_GetSeparableFilterEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -331,7 +323,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetSeparableFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -323,7 +329,8 @@
+@@ -323,7 +329,8 @@ int
  __glXDisp_GetConvolutionFilter(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -341,7 +333,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetConvolutionFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -331,7 +338,8 @@
+@@ -331,7 +338,8 @@ int
  __glXDisp_GetConvolutionFilterEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -351,7 +343,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetConvolutionFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -390,7 +398,8 @@
+@@ -390,7 +398,8 @@ int
  __glXDisp_GetHistogram(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -361,7 +353,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetHistogram(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -398,7 +407,8 @@
+@@ -398,7 +407,8 @@ int
  __glXDisp_GetHistogramEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -371,7 +363,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetHistogram(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -450,7 +460,8 @@
+@@ -450,7 +460,8 @@ int
  __glXDisp_GetMinmax(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -381,7 +373,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetMinmax(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -458,7 +469,8 @@
+@@ -458,7 +469,8 @@ int
  __glXDisp_GetMinmaxEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -391,7 +383,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetMinmax(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -517,7 +529,8 @@
+@@ -517,7 +529,8 @@ int
  __glXDisp_GetColorTable(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -401,7 +393,7 @@ Index: xorg-server-1.15.1/glx/singlepix.c
      return GetColorTable(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -525,6 +538,7 @@
+@@ -525,6 +538,7 @@ int
  __glXDisp_GetColorTableSGI(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -410,11 +402,9 @@ Index: xorg-server-1.15.1/glx/singlepix.c
 +    REQUEST_FIXED_SIZE(xGLXVendorPrivateReq, 16);
      return GetColorTable(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
-Index: xorg-server-1.15.1/glx/singlepixswap.c
-===================================================================
---- xorg-server-1.15.1.orig/glx/singlepixswap.c        2014-12-04 11:56:48.021535287 -0500
-+++ xorg-server-1.15.1/glx/singlepixswap.c     2014-12-04 11:56:48.017535262 -0500
-@@ -53,6 +53,8 @@
+--- a/glx/singlepixswap.c
++++ b/glx/singlepixswap.c
+@@ -53,6 +53,8 @@ __glXDispSwap_ReadPixels(__GLXclientStat
      int error;
      char *answer, answerBuffer[200];
  
@@ -423,7 +413,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -114,6 +116,8 @@
+@@ -114,6 +116,8 @@ __glXDispSwap_GetTexImage(__GLXclientSta
      char *answer, answerBuffer[200];
      GLint width = 0, height = 0, depth = 1;
  
@@ -432,7 +422,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -184,6 +188,8 @@
+@@ -184,6 +188,8 @@ __glXDispSwap_GetPolygonStipple(__GLXcli
  
      __GLX_DECLARE_SWAP_VARIABLES;
  
@@ -441,7 +431,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      __GLX_SWAP_INT(&((xGLXSingleReq *) pc)->contextTag);
      cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
      if (!cx) {
-@@ -251,15 +257,13 @@
+@@ -251,15 +257,13 @@ GetSeparableFilter(__GLXclientState * cl
      compsize = __glGetTexImage_size(target, 1, format, type, width, 1, 1);
      compsize2 = __glGetTexImage_size(target, 1, format, type, height, 1, 1);
  
@@ -460,7 +450,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      __glXClearErrorOccured();
      glGetSeparableFilter(*(GLenum *) (pc + 0), *(GLenum *) (pc + 4),
                           *(GLenum *) (pc + 8), answer, answer + compsize, NULL);
-@@ -285,7 +289,9 @@
+@@ -285,7 +289,9 @@ int
  __glXDispSwap_GetSeparableFilter(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -470,7 +460,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetSeparableFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -293,7 +299,9 @@
+@@ -293,7 +299,9 @@ int
  __glXDispSwap_GetSeparableFilterEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -480,7 +470,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetSeparableFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -367,7 +375,9 @@
+@@ -367,7 +375,9 @@ int
  __glXDispSwap_GetConvolutionFilter(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -490,7 +480,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetConvolutionFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -375,7 +385,9 @@
+@@ -375,7 +385,9 @@ int
  __glXDispSwap_GetConvolutionFilterEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -500,7 +490,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetConvolutionFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -441,7 +453,9 @@
+@@ -441,7 +453,9 @@ int
  __glXDispSwap_GetHistogram(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -510,7 +500,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetHistogram(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -449,7 +463,9 @@
+@@ -449,7 +463,9 @@ int
  __glXDispSwap_GetHistogramEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -520,7 +510,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetHistogram(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -507,7 +523,9 @@
+@@ -507,7 +523,9 @@ int
  __glXDispSwap_GetMinmax(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -530,7 +520,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetMinmax(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -515,7 +533,9 @@
+@@ -515,7 +533,9 @@ int
  __glXDispSwap_GetMinmaxEXT(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
@@ -540,7 +530,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetMinmax(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
  }
  
-@@ -581,7 +601,9 @@
+@@ -581,7 +601,9 @@ int
  __glXDispSwap_GetColorTable(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
@@ -550,7 +540,7 @@ Index: xorg-server-1.15.1/glx/singlepixswap.c
      return GetColorTable(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
  }
  
-@@ -589,6 +611,8 @@
+@@ -589,6 +611,8 @@ int
  __glXDispSwap_GetColorTableSGI(__GLXclientState * cl, GLbyte * pc)
  {
      const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);