On Tue, May 8, 2012 at 3:22 PM, Oon-Ee Ng <ngoonee.talk@gmail.com> wrote:
I do in fact get exit code 3 when running the ExecStart line by hand, and removing -w seems to take care of it. -w seems to wait for link detection, but it seems anything it returns (in the above case I got 3 because I'm currently on wireless and have no LAN to test it on) would cause an error? The rc.d script doesn't seem to use -w, so I'm wondering why that was inserted for the service file.
We'd like to consider the network.target to be up only once we have connected to the network (so that other services can rely on this). I only fixed this up as it was buggy when I found it, but it might be that this behavior is not desired at all (I don't use this stuff). How would you expect this to work? For your reference: commit 2bc3e1ae6053a645dd49ea4e0aad2ccee173de20 Author: Tom Gundersen <teg@jklm.no> Date: Tue Apr 17 18:31:12 2012 +0200 systemd: wait for network to come up We need to make sure no the systemd services are only considered started when the network is actually up. Otherwise, things relying on the network don't know when they can start. This means that we need to use Type=forking or Type=oneshot, and in the case of ifplugd we must daemonize and wait for the daemon to be ready before we continue. Also do some minor cleanup: - don't include env files that are not used - don't ignore return values Signed-off-by: Tom Gundersen <teg@jklm.no> commit 9ca70682a77b48b79317277944dafff5faa00f6e Author: Tom Gundersen <teg@jklm.no> Date: Tue Apr 17 18:28:40 2012 +0200 systemd: pull in network.target It is not enough to order ourselves Before network target, we must also make sure it is pulled in. This means that anything that needs the network to be up before they start can order themselves After=network.target. Signed-off-by: Tom Gundersen <teg@jklm.no>