FS#76147 - [ifplugd] daemon crashes upon plug/unplug event

Attached to Project: Arch Linux
Opened by Ralf M (rbm78bln) - Saturday, 08 October 2022, 22:27 GMT
Last edited by Buggy McBugFace (bugbot) - Saturday, 25 November 2023, 20:17 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Felix Yan (felixonmars)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
When plugging or unplugging the network cable of a monitored interface, the daemon crashes with the following syslog entries:
Sep 28 14:12:07 navi ifplugd(eth0)[726]: ifplugd 0.28 initializing, using NETLINK device monitoring.
Sep 28 14:12:07 navi ifplugd(eth0)[726]: Using interface eth0/6C:24:08:xx:xx:xx with driver <r8152> (version: v1.12.13)
Sep 28 14:12:28 navi ifplugd(eth0)[726]: Using detection mode: SIOCETHTOOL
Sep 28 14:12:28 navi ifplugd(eth0)[726]: NLAPI: Packet too small or truncated!
Sep 28 14:12:28 navi ifplugd(eth0)[726]: Exiting.
The action script does not get executed.

This is a well-known bug:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=704495
https://unix.stackexchange.com/questions/222254/new-kernel-does-not-automatically-reconnect-to-network

Patch file and updated PKGBUILD are attached to this ticket.

Additional info:
* package version: 0.28-16
* command line: ifplugd -i eth0 --run=/bin/echo
* link to upstream bug report: see above

Steps to reproduce:
* run the daemon: ifplugd -i eth0 --run=/bin/echo
* plug or unplug the network cable
* find the messages mentioned above in your syslog
* the process has terminated and the network interface not not being monitored anymore.
This task depends upon

Closed by  Buggy McBugFace (bugbot)
Saturday, 25 November 2023, 20:17 GMT
Reason for closing:  Moved
Additional comments about closing:  https://gitlab.archlinux.org/archlinux/p ackaging/packages/ifplugd/issues/1
Comment by Toolybird (Toolybird) - Sunday, 09 October 2022, 04:46 GMT
This Arch pkg is orphaned i.e. no maintainer. Upstream is dead. I'm surprised anyone still uses it when the functionality is basically "built-in" to more modern network managers. The only optional dependant is "netctl" whose maintainer is not an official Arch packager [1]. Therefore it should probably be dropped to the AUR.

[1] https://bugs.archlinux.org/task/75836#comment210996
Comment by Ralf M (rbm78bln) - Sunday, 09 October 2022, 09:38 GMT
Well, the reason for still using it is simple:

* When you try to trigger up/down *scripts* using systemd-netword, you basically have two options
-- extra/ifplugd: minimalistic, well tested, mature piece of code, very traditional, yet a bit old fashioned
-- aur/networkd-dispatcher: much more modern, but far too bulky for tiny systems as it requires python and sadly not really a part of arch linux.
* You'll need either option for tasks like for example disabling WiFi when wired ethernet becomes available. (i.e. one interface influences another one)
* ifplugd can even be used as a minimal network manager on its own
* ifplugd package needs little to (almost) no attention, so no real reason to remove it now
-- yes, upstream is dead, hence the tiny patch supplied.
* NetworkManager has mixed popularity and is huge as well

Actually looking into the arch forums, you'll find quiete a few users having this package running, even though it's rarely ever the reason why people are seeking help. I was surprised about that myself.

Loading...