Tomasz Pala [Fri, 5 Aug 2016 17:19:46 +0000 (19:19 +0200)]
when MULTICAST is specified, use it's value literal
- this allows configurations like MULTICAST="off allmulticast on",
when no MULTICAST provided, do not disable it on VLAN interfaces
Krzysztof Mazur [Thu, 26 Nov 2015 08:21:44 +0000 (09:21 +0100)]
fix daemon --fork uses
Recent rewrite of the daemon function (the commit 8714ffa414c8f182efa0bddf96486d99b89651bd: "daemon: rewrite $@ to
modify command, use runuser instead of su) broke support for --fork
without --makepid. Previously shells's '&' have been used to fork a new
process. Now the '&' is dropped. The --fork uses setsid to run a program
in a new session. The setsid forks only if the current process is a
group leader (the progess group is equal to the process pid), which is
not true. As a result the new process is not forked and initlog waits
for deamon to stop (infinitely). With --makepid everything works because
the makepid helper performs fork (using shell's '&').
Because the --makepid implies --fork, fix it by always using makepid
helper when --fork is used, and use /dev/null as pid file if --makepid
is not used.
---
Hi Elan,
I've just found another bug in rc-scripts after recent updates. The
"/etc/init.d/vsftpd start" stopped working. The initlog (PID 19735)
just forks, and starts a /usr/bin/setsid, which just execs to vsftpd
(without fork), and the initlog infinitely waits for vsftpd stop die:
Krzysztof Mazur [Sat, 21 Nov 2015 12:38:35 +0000 (13:38 +0100)]
pidofproc: fix checking if pidfile was specified
The commit 2ec0a78e657d8df42c4f3f23ee9a8d26a5acf1aa
(pidofproc: do not fallback, if pidfile was specified)
always disabled the fallback, not only if pidfile was specified.
If pidfile is not specified, the pidfile variable is still initialized
to "$base.pid", and is non-empty. Fix it by checking if the pidfile
argument is non-empty.
Mariusz Mazur [Thu, 22 Jan 2015 15:39:12 +0000 (16:39 +0100)]
Fix bonding and actually enable ETHTOOL_OPTS
1. Applying ETHTOOL_OPTS was inside a code block only run for bond
slaves. This is now fixed.
2. Dependency on 'ifenslave' for bonding device configuration was
dropped. Use iproute2 instead.
3. ifup/ifdown behavior for bondX and enslaved devices was fixed. Both
commands should be symmetrical: running 'ifdown SOMEIF; ifup SOMEIF'
should get SOMEIF as close to what its state was before ifdown as is
possible. This was very not the case.
Mariusz Mazur [Thu, 22 Jan 2015 14:16:17 +0000 (15:16 +0100)]
Allow overriding of vlan base device name
Now it's possible to, say, call all your vlan interfaces vlan.1, vlan.2,
vlan.N (or lan.X, pub.Y) regardless of the name of the physical
interface handling a given vlan.
Elan Ruusamäe [Thu, 27 Mar 2014 22:57:00 +0000 (00:57 +0200)]
handle only firmware add requests
with handling all hotplug events, we ran into some kind of race condition
which resulted only one of the two bnx2 devices to appear working:
[ 16.425932] bnx2: Firmware file "bnx2/bnx2-rv2p-06-6.0.15.fw" is invalid
after inspecting bnx2.c sourcecode, appears that this error is printed only if
firmware file is too short and the firmware itself is and has always been 5696
bytes (in pld packages).
internally in firmware loader, the race appeared as:
+ '[' ! -e /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/0000:03:00.0/firmware/0000:03:00.0/loading ']'
+ '[' -e /lib/firmware/updates/3.4.83-1/bnx2/bnx2-rv2p-06-6.0.15.fw ']'
+ continue
+ '[' -e /lib/firmware/updates/bnx2/bnx2-rv2p-06-6.0.15.fw ']'
+ continue
+ '[' -e /lib/firmware/3.4.83-1/bnx2/bnx2-rv2p-06-6.0.15.fw ']'
+ >/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/0000:03:00.0/firmware/0000:03:00.0/loading
+ echo 1
+ >/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/0000:03:00.0/firmware/0000:03:00.0/data
+ cat /lib/firmware/3.4.83-1/bnx2/bnx2-rv2p-06-6.0.15.fw
/lib/firmware/firmware-loader.sh[29]: cat: <stdout>: No such device
Jan Rękorajski [Mon, 11 Nov 2013 11:00:52 +0000 (12:00 +0100)]
Drop support for utmpx/wtmpx
There was never any difference between regular and "extended" utmp/wtmp
file on linux. Some programs (like last from util-linux 2.24, or systemd)
have no knowledge about them, and keeping those files supported in PLD
is useless pain.
Elan Ruusamäe [Wed, 17 Jul 2013 20:52:15 +0000 (20:52 +0000)]
add apply_sysctl() to load sysctl parameters
uses systemd-sysctl(8) to load, if present, otherwise
loads files in same way as systemd-sysctl(8):
/usr/lib/sysctl.d, /run/sysctl.d, /etc/sysctl.d, /etc/sysctl.conf
where matching files from .d files are not loaded