"etherpuppet -s 9999 -C -i eth0" returns help text

Bug #1632555 reported by xanth
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Raspbian
Fix Released
Undecided
Unassigned
etherpuppet (Debian)
Fix Released
Unknown
etherpuppet (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

etherpuppet command line that works on other platforms returns help text when used under raspbian.

actual behavior:
# etherpuppet -s 9999 -C -i eth0
Usage: etherpuppet {-s port|-c targetip:port} [-B|-S|-M <arg>] [-C] -i iface
       etherpuppet -m {-s port|-c targetip:port} [-I ifname]
-s <port> : listen on TCP port <port>
-c <IP>:<port> : connect to <IP>:<port>
-i <iface> : vampirize interface <iface>
-I <ifname> : choose the name of the virtual interface
-m : master mode
-B : do not use any BPF. Etherpuppet may see its own traffic!
-S : build BPF filter with SSH_CONNECTION environment variable
-M src:sp,dst:dp : BPF filter manual configuration
-C : don't copy real interface parameters to virtual interface
-d : increase debug level (can be used more than once)

The same command line works on an Ubuntu 16.04 with the same release version but different arch and on a Tomato Shibby 138 router.

Expected behavior:
# etherpuppet -s 9999 -C -i eth0
  Waiting for connection on port 9999...

Additional information:
# uname -a
Linux pi 4.4.21+ #911 Thu Sep 15 14:17:52 BST 2016 armv6l GNU/Linux
# ldd /usr/bin/etherpuppet
 /usr/lib/arm-linux-gnueabihf/libarmmem.so (0xb6f3b000)
 libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6de5000)
 /lib/arm-linux-gnueabihf/ld-linux.so.3 => /lib/ld-linux-armhf.so.3 (0x7f5fa000)
# dpkg -s libc6 | grep ^Version
Version: 2.19-18+deb8u6
# dpkg -s raspi-copies-and-fills | grep ^Version
Version: 0.5-1

Hardware:
# cat /proc/cpuinfo | grep Revision
Revision : 000e

strace:
http://pastebin.com/FgCQCawT

Revision history for this message
Psi-Jack (erenfro) wrote :

I can confirm that this bug definitely is occurring specifically on Raspbian. Debian and Ubuntu do not exhibit this issue, and the OP's initial bug is completely valid.

Revision history for this message
xanth (ubuntu-hi) wrote :

I downloaded the rasbian stretch source and ran gcc -o etherpuppet etherpuppet.c
The results were the same.
The originating site seems to be damaged so I downloaded the archive.org source file from 6/29/13 (https://web-beta.archive.org/web/20130629074057/http://hg.secdev.org/etherpuppet/raw-file/tip/etherpuppet.c) and ran gcc -o etherpuppet etherpuppet.c
The results were as they should be, Waiting for connection on port 9999...

The diff between the broken raspbian source file and the working upstream from 6/29/13 was:

diff etherpuppet-0.3/etherpuppet.c secdev.org/etherpuppet.c
230c230,231
< char c, *p, *ip, *manual_bpf_arg;
---
> int c;
> char *p, *ip, *manual_bpf_arg;

Revision history for this message
peter green (plugwash) wrote :

This bug will affect any Debian/Ubuntu/etc system which uses unsigned chars. i386 and amd64 systems are not affected.

I will be uploading a fix to raspbian soon.

Changed in etherpuppet (Debian):
status: Unknown → New
Changed in etherpuppet (Debian):
status: New → Fix Released
peter green (plugwash)
Changed in raspbian:
status: New → Fix Released
Changed in etherpuppet (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.