chiark / gitweb /
Import gnupg2_2.1.18-8~deb9u1.debian.tar.bz2
[gnupg2.git] / patches / 0073-dirmngr-Fix-final-close-of-LISTEN_FD.patch
1 From: NIIBE Yutaka <gniibe@fsij.org>
2 Date: Tue, 18 Apr 2017 09:04:11 +0900
3 Subject: dirmngr: Fix final close of LISTEN_FD.
4
5 * dirmngr/dirmngr.c (handle_connections): Close LISTEN_FD.
6
7 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
8 (cherry picked from commit 4b2581dc0ea1d03e70023bb0748aa0c21c0a2173)
9 ---
10  dirmngr/dirmngr.c | 8 ++++----
11  1 file changed, 4 insertions(+), 4 deletions(-)
12
13 diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
14 index 31d3ca2..513e2a6 100644
15 --- a/dirmngr/dirmngr.c
16 +++ b/dirmngr/dirmngr.c
17 @@ -1905,7 +1905,6 @@ handle_connections (assuan_fd_t listen_fd)
18  #endif
19    struct sockaddr_un paddr;
20    socklen_t plen = sizeof( paddr );
21 -  gnupg_fd_t fd;
22    int nfd, ret;
23    fd_set fdset, read_fdset;
24    int saved_errno;
25 @@ -2030,6 +2029,8 @@ handle_connections (assuan_fd_t listen_fd)
26  
27        if (FD_ISSET (FD2INT (listen_fd), &read_fdset))
28         {
29 +          gnupg_fd_t fd;
30 +
31            plen = sizeof paddr;
32           fd = INT2FD (npth_accept (FD2INT(listen_fd),
33                                     (struct sockaddr *)&paddr, &plen));
34 @@ -2058,7 +2059,6 @@ handle_connections (assuan_fd_t listen_fd)
35                  }
36               npth_setname_np (thread, threadname);
37              }
38 -          fd = GNUPG_INVALID_FD;
39         }
40      }
41  
42 @@ -2067,8 +2067,8 @@ handle_connections (assuan_fd_t listen_fd)
43      close (my_inotify_fd);
44  #endif /*HAVE_INOTIFY_INIT*/
45    npth_attr_destroy (&tattr);
46 -  if (listen_fd != -1)
47 -    assuan_sock_close (fd);
48 +  if (listen_fd != GNUPG_INVALID_FD)
49 +    assuan_sock_close (listen_fd);
50    cleanup ();
51    log_info ("%s %s stopped\n", strusage(11), strusage(13));
52  }