]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/network/networkd-ipv4ll.c
sd-ipv4ll: rework callbacks
authorTom Gundersen <teg@jklm.no>
Thu, 20 Aug 2015 09:40:10 +0000 (11:40 +0200)
committerTom Gundersen <teg@jklm.no>
Fri, 18 Sep 2015 13:14:43 +0000 (15:14 +0200)
commitb45e4eb679ad0c9a77c4fe6e404c8842d4097fdb
treef3e3c5ded72ac5fe0e182452c59a5bd4086d704b
parent5707940ed31272d44ba2dcf0a74a3024256d2875
sd-ipv4ll: rework callbacks

Firstly, no longer distinguish between STOP and INIT states.

Secondly, do not trigger STOP events when calls to sd_ipv4ll_*() fail. The
caller is the one who would receive the event and will already know that the
call to sd_ipv4ll_*() has failed, so it is redundant.

STOP events will now only be triggered by calling sd_ipv4ll_stop() explicitly
or by some internal error in the library triggered by receiving a packet or
an expiring timeout (i.e., any error that would otherwise not be reported
back to the consumer of the library).

Lastly, follow CODING_STYLE and always return NULL on unref. Protect from
objects being destroyed in callbacks accordingly.
src/libsystemd-network/sd-ipv4ll.c
src/libsystemd-network/test-ipv4ll.c
src/network/networkd-ipv4ll.c