Your message dated Wed, 15 Mar 2017 20:27:21 +0000 with message-id <E1coFVx-0005zO-3p@respighi.debian.org> and subject line unblock netcat-openbsd has caused the Debian Bug report #857697, regarding unblock: netcat-openbsd/1.130-3 to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 857697: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=857697 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: unblock: netcat-openbsd/1.130-3
- From: Guilhem Moulin <guilhem@guilhem.org>
- Date: Tue, 14 Mar 2017 03:38:16 +0100
- Message-id: <[🔎] 20170314023816.3rdbmvmkmcwmfmzz@localhost.localdomain>
Package: release.debian.org Severity: normal User: release.debian.org@packages.debian.org Usertags: unblock Please unblock package netcat-openbsd Since 1.110 nc(1) no longer shutdown network sockets when stdin closes. This is a deliberate upstream decision, which can be reverted with the new ‘-N’ flag [0]. For better compatibility with GNU netcat we've added a quit timer (defaulting to -q0 since 1.89-4) to quit immediately after EOF. However our patch wasn't modified properly, and the upstream's new behavior with respect to shutdown(2) lead to a regression in 1.130-1 and 1.130-2. I'd like to upload 1.130-3 to Stretch as the regression affects libvirt and QEMU users which use nc(1) to talk to remote hypervisor sockets, cf. #854292. Since 1.130-3 nc(1) defaults to ‘-q-1’ (matching upstream's behavior), and ‘-q0’ is a mere alias for ‘-N’ (it was a no-op before). Furthermore the new patch is also simpler, so we're reducing our delta with upstream :-). Debdiff enclosed. unblock netcat-openbsd/1.130-3 -- Guilhem. [0] http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/nc/netcat.c?rev=1.111&content-type=text/x-cvsweb-markup [1] https://anonscm.debian.org/cgit/collab-maint/netcat-openbsd.git/tree/debian/patches/0005-quit-timer.patchdiff -Nru netcat-openbsd-1.130/debian/changelog netcat-openbsd-1.130/debian/changelog --- netcat-openbsd-1.130/debian/changelog 2017-01-26 09:51:13.000000000 +0100 +++ netcat-openbsd-1.130/debian/changelog 2017-03-06 09:48:36.000000000 +0100 @@ -1,3 +1,12 @@ +netcat-openbsd (1.130-3) unstable; urgency=medium + + * Change defaults from "-q0" to "-q-1" to match upstream defaults since the + introduction of flag "-N" in version 1.110. Passing a non-negative value + to "-q" now implies "-N"; in particular, "-q0" is now a mere alias for + "-N". (Closes: #854292) + + -- Guilhem Moulin <guilhem@guilhem.org> Fri, 03 Mar 2017 20:32:55 +0100 + netcat-openbsd (1.130-2) unstable; urgency=medium * Fix handling of delayed exit option (Closes: #849192, LP: #1656785) diff -Nru netcat-openbsd-1.130/debian/patches/0005-quit-timer.patch netcat-openbsd-1.130/debian/patches/0005-quit-timer.patch --- netcat-openbsd-1.130/debian/patches/0005-quit-timer.patch 2017-01-26 09:51:13.000000000 +0100 +++ netcat-openbsd-1.130/debian/patches/0005-quit-timer.patch 2017-03-06 09:45:02.000000000 +0100 @@ -19,14 +19,19 @@ .Op Fl s Ar source .Op Fl T Ar toskeyword .Op Fl V Ar rtable -@@ -171,6 +172,10 @@ Proxy authentication is only supported for HTTP CONNECT proxies at present. +@@ -171,6 +172,15 @@ Proxy authentication is only supported for HTTP CONNECT proxies at present. Specifies the source port .Nm should use, subject to privilege restrictions and availability. +.It Fl q Ar seconds -+after EOF on stdin, wait the specified number of seconds and then quit. If ++after EOF on stdin, wait the specified number of +.Ar seconds -+is negative, wait forever. ++and then quit. If ++.Ar seconds ++is negative, wait forever (default). Specifying a non-negative ++.Ar seconds ++implies ++.Fl N . .It Fl r Specifies that source and/or destination ports should be chosen randomly instead of sequentially within a range or in the order that the system @@ -38,21 +43,20 @@ int nflag; /* Don't do name look up */ char *Pflag; /* Proxy username */ char *pflag; /* Localport flag */ -+int qflag = 0; /* Quit after some secs */ ++int qflag = -1; /* Quit after some secs */ int rflag; /* Random ports flag */ char *sflag; /* Source Address */ int tflag; /* Telnet Emulation */ -@@ -171,6 +172,9 @@ ssize_t fillbuf(int, unsigned char *, size_t *); +@@ -171,6 +172,8 @@ ssize_t fillbuf(int, unsigned char *, size_t *); static int connect_with_timeout(int fd, const struct sockaddr *sa, socklen_t salen, int ctimeout); -+int quit_fd = -1; +static void quit(); + int main(int argc, char *argv[]) { -@@ -195,7 +199,7 @@ main(int argc, char *argv[]) +@@ -195,7 +198,7 @@ main(int argc, char *argv[]) signal(SIGPIPE, SIG_IGN); while ((ch = getopt(argc, argv, @@ -61,7 +65,7 @@ switch (ch) { case '4': family = AF_INET; -@@ -248,6 +252,11 @@ main(int argc, char *argv[]) +@@ -248,6 +251,13 @@ main(int argc, char *argv[]) case 'p': pflag = optarg; break; @@ -69,49 +73,43 @@ + qflag = strtonum(optarg, INT_MIN, INT_MAX, &errstr); + if (errstr) + errx(1, "quit timer %s: %s", errstr, optarg); ++ if (qflag >= 0) ++ Nflag = 1; + break; case 'r': rflag = 1; break; -@@ -917,19 +926,31 @@ readwrite(int net_fd) - /* both inputs are gone, buffers are empty, we are done */ +@@ -918,18 +928,26 @@ readwrite(int net_fd) if (pfd[POLL_STDIN].fd == -1 && pfd[POLL_NETIN].fd == -1 && stdinbufpos == 0 && netinbufpos == 0) { -- close(net_fd); + close(net_fd); - return; -+ if (qflag == 0) { -+ close(net_fd); ++ if (qflag <= 0) + return; -+ } + goto delay_exit; } /* both outputs are gone, we can't continue */ if (pfd[POLL_NETOUT].fd == -1 && pfd[POLL_STDOUT].fd == -1) { -- close(net_fd); + close(net_fd); - return; -+ if (qflag == 0) { -+ close(net_fd); ++ if (qflag <= 0) + return; -+ } + goto delay_exit; } /* listen and net in gone, queues empty, done */ if (lflag && pfd[POLL_NETIN].fd == -1 && stdinbufpos == 0 && netinbufpos == 0) { -- close(net_fd); + close(net_fd); - return; -+ if (qflag == 0) { -+ close(net_fd); ++ if (qflag <= 0) + return; -+ } +delay_exit: -+ quit_fd = net_fd; + signal(SIGALRM, quit); + alarm(qflag); } /* poll */ -@@ -1436,6 +1457,7 @@ help(void) +@@ -1436,6 +1454,7 @@ help(void) \t-O length TCP send buffer length\n\ \t-P proxyuser\tUsername for proxy authentication\n\ \t-p port\t Specify local port for remote connects\n\ @@ -119,7 +117,7 @@ \t-r Randomize remote ports\n\ \t-S Enable the TCP MD5 signature option\n\ \t-s addr\t Local source address\n\ -@@ -1458,9 +1480,21 @@ usage(int ret) +@@ -1458,9 +1477,18 @@ usage(int ret) { fprintf(stderr, "usage: nc [-46CDdFhklNnrStUuvz] [-I length] [-i interval] [-O length]\n" @@ -138,8 +136,5 @@ + */ +static void quit() +{ -+ if (quit_fd >= 0) -+ close(quit_fd); -+ -+ exit(0); ++ exit(0); +}Attachment: signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
- To: 857697-done@bugs.debian.org
- Subject: unblock netcat-openbsd
- From: Emilio Pozuelo Monfort <pochu@respighi.debian.org>
- Date: Wed, 15 Mar 2017 20:27:21 +0000
- Message-id: <E1coFVx-0005zO-3p@respighi.debian.org>
Unblocked.
--- End Message ---