[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r4755 - in glibc-package/trunk/debian: . patches/hurd-i386



Author: sthibault
Date: 2011-06-27 21:01:35 +0000 (Mon, 27 Jun 2011)
New Revision: 4755

Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff
Log:
patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff: Do not call getauth(),
use the __USEPORT() cache macro instead. This should fix zsh FTBFS with
duplicate getproc() symbol.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2011-06-27 20:39:33 UTC (rev 4754)
+++ glibc-package/trunk/debian/changelog	2011-06-27 21:01:35 UTC (rev 4755)
@@ -3,6 +3,9 @@
   [ Samuel Thibault ]
   * Add patches/hurd-i386/submitted-ldsodefs.h.diff to fix loading binaries
     with GNU/Hurd-specific extensions, disabled for now.
+  * patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff: Do not call getauth(),
+    use the __USEPORT() cache macro instead. This should fix zsh FTBFS with
+    duplicate getproc() symbol.
 
   [ Aurelien Jarno ]
   * Add patches/any/cvs-addmntent.diff to correctly report errors status in 

Modified: glibc-package/trunk/debian/patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff	2011-06-27 20:39:33 UTC (rev 4754)
+++ glibc-package/trunk/debian/patches/hurd-i386/local-sendmsg-SCM_RIGHTS.diff	2011-06-27 21:01:35 UTC (rev 4755)
@@ -16,7 +16,7 @@
     This file is part of the GNU C Library.
  
     The GNU C Library is free software; you can redistribute it and/or
-@@ -33,13 +33,35 @@
+@@ -33,13 +33,33 @@
    addr_port_t aport;
    char *data = NULL;
    mach_msg_type_number_t len = 0;
@@ -32,8 +32,6 @@
 +  int nfds, *fds;
 +  int i, j;
 +
-+  auth_t auth;
-+
 +  error_t reauthenticate (mach_port_t port, mach_port_t *result)
 +    {
 +      error_t err;
@@ -44,9 +42,9 @@
 +      while (err == EINTR);
 +      if (!err)
 +	do
-+	  err = __auth_user_authenticate (auth,
++	  err = __USEPORT (AUTH, __auth_user_authenticate (port,
 +					  ref, MACH_MSG_TYPE_MAKE_SEND,
-+					  result);
++					  result));
 +	while (err == EINTR);
 +      __mach_port_destroy (__mach_task_self (), ref);
 +      return err;
@@ -54,14 +52,13 @@
  
    /* Find the total number of bytes to be read.  */
    amount = 0;
-@@ -136,6 +158,86 @@
+@@ -136,6 +156,85 @@
      message->msg_controllen = clen;
    memcpy (message->msg_control, cdata, message->msg_controllen);
  
 +  /* SCM_RIGHTS ports.  */
 +  if (nports > 0)
 +    {
-+      auth = getauth ();
 +      newports = __alloca (nports * sizeof (mach_port_t));
 +
 +      /* Reauthenticate all ports here.  */


Reply to: