Package Details: python2-ethtool 0.11-2

Git Clone URL: https://aur.archlinux.org/python2-ethtool.git (read-only)
Package Base: python2-ethtool
Description: python bindings for the ethtool kernel interface
Upstream URL: https://fedorahosted.org/python-ethtool/
Licenses: GPL2
Submitter: JonnyJD
Maintainer: JonnyJD
Last Packager: JonnyJD
Votes: 5
Popularity: 0.000082
First Submitted: 2012-02-25 00:02
Last Updated: 2015-10-21 10:56

Latest Comments

JonnyJD commented on 2015-10-21 10:59

Sorry, that comment a week ago must have been made when the Arch mail server had problems. I never received a mail about it.

Anyways, I fixed it with a condensed but commented patch:
https://aur.archlinux.org/cgit/aur.git/tree/libnl3.2.26_net_if.patch?h=python2-ethtool
See https://github.com/thom311/libnl/pull/73 for what happened.
short: libnl 3.2.26 broke the build.

All users compiling python2-ethtools 0.11-2 have to upgrade to libnl 3.2.26. If you don't want to, then use the previous build (found in the git repo of this package).

billyburly commented on 2015-10-21 00:52

Got it working based on some info from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=797250

Here's a copy of the PKGBUILD I used: http://pastebin.com/Z8aDhYLs

RemoteAdmin commented on 2015-10-13 19:08

Compiling fails with multiple errors at:
gcc -pthread -DNDEBUG -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -fPIC -DVERSION="0.11" -I/usr/include/libnl3 -I/usr/include/python2.7 -c python-ethtool/ethtool.c -o build/temp.linux-x86_64-2.7/python-ethtool/ethtool.o

python-ethtool/ethtool.c: In function ‘get_active_devices’:
python-ethtool/ethtool.c:65:61: error: ‘IFF_UP’ undeclared (first use in this function)
if (!PySequence_Contains(list, str) && (ifa->ifa_flags & (IFF_UP))) {
^
python-ethtool/ethtool.c:65:61: note: each undeclared identifier is reported only once for each function it appears in
python-ethtool/ethtool.c: In function ‘get_hwaddress’:
python-ethtool/ethtool.c:117:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_ipaddress’:
python-ethtool/ethtool.c:159:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_flags’:
python-ethtool/ethtool.c:286:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_netmask’:
python-ethtool/ethtool.c:318:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_broadcast’:
python-ethtool/ethtool.c:358:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_module’:
python-ethtool/ethtool.c:399:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘get_businfo’:
python-ethtool/ethtool.c:469:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘send_command’:
python-ethtool/ethtool.c:509:15: error: storage size of ‘ifr’ isn’t known
struct ifreq ifr;
^
python-ethtool/ethtool.c: In function ‘initethtool’:
python-ethtool/ethtool.c:916:39: error: ‘IFF_UP’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_UP", IFF_UP); /* Interface is up. */
^
python-ethtool/ethtool.c:917:46: error: ‘IFF_BROADCAST’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_BROADCAST", IFF_BROADCAST); /* Broadcast address valid. */
^
python-ethtool/ethtool.c:918:42: error: ‘IFF_DEBUG’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_DEBUG", IFF_DEBUG); /* Turn on debugging. */
^
python-ethtool/ethtool.c:919:45: error: ‘IFF_LOOPBACK’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_LOOPBACK", IFF_LOOPBACK); /* Is a loopback net */
^
python-ethtool/ethtool.c:920:48: error: ‘IFF_POINTOPOINT’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_POINTOPOINT", IFF_POINTOPOINT); /* Is a point-to-point link */
^
python-ethtool/ethtool.c:921:47: error: ‘IFF_NOTRAILERS’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_NOTRAILERS", IFF_NOTRAILERS); /* Avoid use of trailers */
^
python-ethtool/ethtool.c:922:44: error: ‘IFF_RUNNING’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_RUNNING", IFF_RUNNING); /* Resources allocated */
^
python-ethtool/ethtool.c:923:42: error: ‘IFF_NOARP’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_NOARP", IFF_NOARP); /* No address resolution protocol. */
^
python-ethtool/ethtool.c:924:44: error: ‘IFF_PROMISC’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_PROMISC", IFF_PROMISC); /* Receive all packets. */
^
python-ethtool/ethtool.c:925:45: error: ‘IFF_ALLMULTI’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_ALLMULTI", IFF_ALLMULTI); /* Receive all multicast packets. */
^
python-ethtool/ethtool.c:926:43: error: ‘IFF_MASTER’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_MASTER", IFF_MASTER); /* Master of a load balancer. */
^
python-ethtool/ethtool.c:927:42: error: ‘IFF_SLAVE’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_SLAVE", IFF_SLAVE); /* Slave of a load balancer. */
^
python-ethtool/ethtool.c:928:46: error: ‘IFF_MULTICAST’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_MULTICAST", IFF_MULTICAST); /* Supports multicast. */
^
python-ethtool/ethtool.c:929:44: error: ‘IFF_PORTSEL’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_PORTSEL", IFF_PORTSEL); /* Can set media type. */
^
python-ethtool/ethtool.c:930:46: error: ‘IFF_AUTOMEDIA’ undeclared (first use in this function)
PyModule_AddIntConstant(m, "IFF_AUTOMEDIA", IFF_AUTOMEDIA); /* Auto media select active. */