Your message dated Sat, 23 Jan 2016 13:57:15 +0000
with message-id <1453557435.1835.52.ca...@adam-barratt.org.uk>
and subject line 8.3 point release cleanup
has caused the Debian Bug report #809824,
regarding jessie-pu: package drbd-utils/8.9.2~rc1-2+deb8u1
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 ow...@bugs.debian.org
immediately.)


-- 
809824: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809824
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: jessie
User: release.debian....@packages.debian.org
Usertags: pu

Dear Release Team,

I would like to update drbd-utils in Jessie to fix the IPv6-specific 
issue outlined in #808315. The issue is fixed by backporting a commit 
from upstream's git. The change is also present in 8.9.5-1 currently in 
unstable. A full source debdiff is attached.

Regards,
Apollon
diff -Nru drbd-utils-8.9.2~rc1/debian/changelog 
drbd-utils-8.9.2~rc1/debian/changelog
--- drbd-utils-8.9.2~rc1/debian/changelog       2014-11-23 17:40:27.000000000 
+0200
+++ drbd-utils-8.9.2~rc1/debian/changelog       2016-01-04 14:36:03.000000000 
+0200
@@ -1,3 +1,9 @@
+drbd-utils (8.9.2~rc1-2+deb8u1) jessie; urgency=medium
+
+  * Fix drbdadm adjust with IPv6 peer addresses (Closes: #808315)
+
+ -- Apollon Oikonomopoulos <apoi...@debian.org>  Mon, 04 Jan 2016 14:23:24 
+0200
+
 drbd-utils (8.9.2~rc1-2) unstable; urgency=medium
 
   * Build-Depend on docbook-xml to avoid fetching the docbook DTDs from the
diff -Nru drbd-utils-8.9.2~rc1/debian/gbp.conf 
drbd-utils-8.9.2~rc1/debian/gbp.conf
--- drbd-utils-8.9.2~rc1/debian/gbp.conf        2014-11-23 11:40:38.000000000 
+0200
+++ drbd-utils-8.9.2~rc1/debian/gbp.conf        2016-01-04 14:23:00.000000000 
+0200
@@ -1,3 +1,7 @@
+[buildpackage]
+dist = jessie
+
 [DEFAULT]
+debian-branch = debian/stable/jessie
 sign-tags = True
 pristine-tar = True
diff -Nru drbd-utils-8.9.2~rc1/debian/patches/fix-ipv6-address-output 
drbd-utils-8.9.2~rc1/debian/patches/fix-ipv6-address-output
--- drbd-utils-8.9.2~rc1/debian/patches/fix-ipv6-address-output 1970-01-01 
02:00:00.000000000 +0200
+++ drbd-utils-8.9.2~rc1/debian/patches/fix-ipv6-address-output 2016-01-04 
14:19:56.000000000 +0200
@@ -0,0 +1,100 @@
+commit 9186b8e0fd8b76553b87d0a64b4a071c09b255c5
+Author: Lars Ellenberg <lars.ellenb...@linbit.com>
+Date:   Mon Dec 14 17:34:46 2015 +0100
+
+    drbdsetup: show: fix ipv6 address output
+    
+    Code restructuring introduced a bug using some character buffer
+    both as target and source of an sprintf().
+    
+    While at it, use getnameinfo rather than inet_ntop,
+    we want to include the scope in the output (if any).
+
+diff --git a/user/v84/config_flags.c b/user/v84/config_flags.c
+index 3b0303f..c6f867e 100644
+--- a/user/v84/config_flags.c
++++ b/user/v84/config_flags.c
+@@ -526,10 +526,16 @@ void sprint_address(char *buffer, void *address, int 
addr_len)
+                      inet_ntoa(a.addr4.sin_addr),
+                      ntohs(a.addr4.sin_port));
+       } else if (a.addr.sa_family == AF_INET6) {
+-              sprintf(buffer, "%s [%s]:%d",
+-                     af_to_str(a.addr6.sin6_family),
+-                     inet_ntop(a.addr6.sin6_family, &a.addr6.sin6_addr, 
buffer, INET6_ADDRSTRLEN),
+-                     ntohs(a.addr6.sin6_port));
++              char buf2[ADDRESS_STR_MAX];
++              int n;
++              buf2[0] = 0;
++              getnameinfo(&a.addr, addr_len, buf2, sizeof(buf2),
++                      NULL, 0, NI_NUMERICHOST|NI_NUMERICSERV);
++              n = snprintf(buffer, ADDRESS_STR_MAX, "%s [%s]:%d",
++                      af_to_str(a.addr6.sin6_family), buf2,
++                      ntohs(a.addr6.sin6_port));
++              assert(n > 0);
++              assert(n < ADDRESS_STR_MAX); /* there should be no need to 
truncate */
+       } else {
+               sprintf(buffer, "[unknown af=%d, len=%d]", a.addr.sa_family, 
addr_len);
+       }
+@@ -537,8 +543,7 @@ void sprint_address(char *buffer, void *address, int 
addr_len)
+ 
+ static const char *get_address(struct context_def *ctx, struct field_def 
*field, struct nlattr *nla)
+ {
+-      static char buffer[INET6_ADDRSTRLEN];
+-
++      static char buffer[ADDRESS_STR_MAX];
+       sprint_address(buffer, nla_data(nla), nla_len(nla));
+ 
+       return buffer;
+diff --git a/user/v84/config_flags.h b/user/v84/config_flags.h
+index 4d6919e..4e34c3b 100644
+--- a/user/v84/config_flags.h
++++ b/user/v84/config_flags.h
+@@ -60,6 +60,8 @@ extern const char *double_quote_string(const char *str);
+ 
+ /* Also used by argument processing in drbdsetup */
+ extern int nla_put_address(struct msg_buff *msg, int attrtype, const char 
*arg);
++/* INET6_ADDRSTRLEN + 'ipv6 []:54321 + possible scope + some */
++#define ADDRESS_STR_MAX 256
+ extern void sprint_address(char *buffer, void *address, int addr_len);
+ extern int get_af_ssocks(int warn_and_use_default);
+ 
+diff --git a/user/v84/drbdsetup.c b/user/v84/drbdsetup.c
+index 247866e..8a4c5da 100644
+--- a/user/v84/drbdsetup.c
++++ b/user/v84/drbdsetup.c
+@@ -1538,8 +1538,7 @@ static int generic_get_cmd(const struct drbd_cmd *cm, 
int argc, char **argv)
+ 
+ static void show_address(void* address, int addr_len)
+ {
+-      char buffer[INET6_ADDRSTRLEN];
+-
++      char buffer[ADDRESS_STR_MAX];
+       sprint_address(buffer, address, addr_len);
+       printI("address\t\t\t%s;\n", buffer);
+ }
+diff --git a/user/v9/drbdsetup.c b/user/v9/drbdsetup.c
+index 27a5bb6..33d39dc 100644
+--- a/user/v9/drbdsetup.c
++++ b/user/v9/drbdsetup.c
+@@ -2499,11 +2499,17 @@ static char *address_str(char *buffer, void* address, 
int addr_len)
+                        ntohs(a.addr4.sin_port));
+               return buffer;
+       } else if (a.addr.sa_family == AF_INET6) {
+-              char buffer2[INET6_ADDRSTRLEN];
+-              snprintf(buffer, ADDRESS_STR_MAX, "%s:[%s]:%u",
+-                      af_to_str(a.addr6.sin6_family),
+-                      inet_ntop(a.addr6.sin6_family, &a.addr6.sin6_addr, 
buffer2, INET6_ADDRSTRLEN),
++              char buf2[ADDRESS_STR_MAX];
++              int n;
++              buf2[0] = 0;
++              /* inet_ntop does not include scope info */
++              getnameinfo(&a.addr, addr_len, buf2, sizeof(buf2),
++                      NULL, 0, NI_NUMERICHOST|NI_NUMERICSERV);
++              n = snprintf(buffer, ADDRESS_STR_MAX, "%s:[%s]:%u",
++                      af_to_str(a.addr6.sin6_family), buf2,
+                       ntohs(a.addr6.sin6_port));
++              assert(n > 0);
++              assert(n < ADDRESS_STR_MAX); /* there should be no need to 
truncate */
+               return buffer;
+       } else
+               return NULL;
diff -Nru drbd-utils-8.9.2~rc1/debian/patches/series 
drbd-utils-8.9.2~rc1/debian/patches/series
--- drbd-utils-8.9.2~rc1/debian/patches/series  2014-11-23 12:43:33.000000000 
+0200
+++ drbd-utils-8.9.2~rc1/debian/patches/series  2016-01-04 14:20:02.000000000 
+0200
@@ -5,3 +5,4 @@
 add-lsb-description.patch
 initscript-remove-path.patch
 fix-8.4-manpages
+fix-ipv6-address-output

--- End Message ---
--- Begin Message ---
Version: 8.3

Hi,

The updates referred to in these bugs were included in today's 8.3
Jessie point release.

Regards,

Adam

--- End Message ---

Reply via email to