git-spawni-reauth
authorGNU Libc Maintainers <debian-glibc@lists.debian.org>
Sun, 10 Jul 2022 20:29:34 +0000 (21:29 +0100)
committerAurelien Jarno <aurel32@debian.org>
Sun, 10 Jul 2022 20:29:34 +0000 (21:29 +0100)
Committed for 2.36

commit eff158b75dee466ac0c37a17b2165072ee0b7aeb
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date:   Thu May 5 02:14:43 2022 +0200

    hurd spawni: Fix reauthenticating closed fds

    When an fd is closed, the port cell remains, but the port becomes
    MACH_PORT_NULL, so we have to guard against it.

Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name git-spawni-reauth.diff

sysdeps/mach/hurd/spawni.c

index d3eb5abcf00e1b234d71a97f24c13a94c1eb5fb1..95ec3f893f8e04d48366ed7a170853a2757ca3b8 100644 (file)
@@ -154,7 +154,7 @@ __spawni (pid_t *pid, const char *file,
      reauthenticated, or was newly opened on behalf of the child.  */
   error_t reauthenticate_fd (int fd)
     {
-      if (dtable_cells[fd] != NULL)
+      if (dtable_cells[fd] != NULL && dtable[fd] != MACH_PORT_NULL)
        {
          file_t newfile;
          mach_port_t ref = __mach_reply_port ();