Bug#725344: python-nemu: incompatible with recent /bin/ip

2013-10-09 Thread Martín Ferrari
Julien,

On 04/10/13 14:36, Julien Muchembled wrote:

 Nemu depends on /bin/ip to get addresses of interfaces:
   ip -o addr list
 
 But recent iproute/iproute2 does not show link information anymore,
 making Nemu fail with following traceback:

Thanks for reporting this! I will incorporate your patch and release a
new version, asap.


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#725344: python-nemu: incompatible with recent /bin/ip

2013-10-04 Thread Julien Muchembled
Package: python-nemu
Version: 0.1-1
Severity: grave
Tags: patch upstream
Justification: renders package unusable

Nemu depends on /bin/ip to get addresses of interfaces:
  ip -o addr list

But recent iproute/iproute2 does not show link information anymore,
making Nemu fail with following traceback:

Traceback (most recent call last):
  File /usr/lib/python2.7/dist-packages/nemu/protocol.py, line 272, in run
cmd[0](cmd[1], *cmd[2])
  File /usr/lib/python2.7/dist-packages/nemu/protocol.py, line 480, in 
do_ADDR_ADD
nemu.iproute.add_addr(ifnr, a)
  File /usr/lib/python2.7/dist-packages/nemu/iproute.py, line 461, in add_addr
addresses = get_addr_data()[1][ifname]
  File /usr/lib/python2.7/dist-packages/nemu/iproute.py, line 440, in 
get_addr_data
bynam[name].append(_parse_ip_addr(match.group(4)))
KeyError: 'lo'


iproute 20120521 is the latest version that lists addresses in expected format. 
So this bug does not affect Wheezy.

Attached patch fixes parsing of /bin/ip output.

-- System Information:
Debian Release: 7.0
  APT prefers unstable
  APT policy: (900, 'unstable'), (400, 'testing'), (300, 'experimental'), (200, 
'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.10.10+ (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages python-nemu depends on:
ii  bridge-utils1.5-6
ii  iproute 1:3.11.0-1
ii  procps  1:3.3.4-2
ii  python  2.7.3-5
ii  python-passfd   0.2-1
ii  python-unshare  0.1-2

python-nemu recommends no packages.

Versions of packages python-nemu suggests:
ii  xauth  1:1.0.7-1

-- no debconf information
--- src/nemu/iproute.py	2012-04-02 05:00:00.0 +0200
+++ src/nemu/iproute.py	2013-10-04 13:46:16.318263897 +0200
@@ -434,9 +434,10 @@
 raise RuntimeError(Invalid `ip' command output)
 idx = int(match.group(1))
 name = match.group(2)
-if match.group(3):
+if name not in bynam:
 bynam[name] = byidx[idx] = []
-continue # link info
+if match.group(3): # BBB: old iproute also shows link info
+continue
 bynam[name].append(_parse_ip_addr(match.group(4)))
 return byidx, bynam