summaryrefslogtreecommitdiffstats
path: root/ipv4ll.c
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2008-09-03 16:49:28 +0000
committerRoy Marples <roy@marples.name>2008-09-03 16:49:28 +0000
commitf43e585355e50bd2e7021380db6fc792662f76be (patch)
treed81565b32d67516b6ae178bcdbff09bda3251b45 /ipv4ll.c
parentf0c98483e7369f2df38edc352433239fa24f6a2f (diff)
downloaddhcpcd-f43e585355e50bd2e7021380db6fc792662f76be.tar.xz
Add a control socket so that interfaces can be dynamically re-set.
This requires the event loop argument being changed to void * so we can send arguments other than an interface.
Diffstat (limited to 'ipv4ll.c')
-rw-r--r--ipv4ll.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/ipv4ll.c b/ipv4ll.c
index 3e8786f0..c7b0586a 100644
--- a/ipv4ll.c
+++ b/ipv4ll.c
@@ -73,8 +73,10 @@ make_ipv4ll_lease(uint32_t old_addr)
}
void
-start_ipv4ll(struct interface *iface)
+start_ipv4ll(void *arg)
{
+ struct interface *iface = arg;
+
iface->state->probes = 0;
iface->state->claims = 0;
if (iface->addr.s_addr) {
@@ -94,8 +96,9 @@ start_ipv4ll(struct interface *iface)
}
void
-handle_ipv4ll_failure(struct interface *iface)
+handle_ipv4ll_failure(void *arg)
{
+ struct interface *iface = arg;
time_t up;
if (iface->state->fail.s_addr == iface->state->lease.addr.s_addr) {