summaryrefslogtreecommitdiffstats
path: root/arp.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 /arp.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 'arp.c')
-rw-r--r--arp.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/arp.c b/arp.c
index 71431dc8..8935ea65 100644
--- a/arp.c
+++ b/arp.c
@@ -52,9 +52,10 @@ handle_arp_failure(struct interface *iface)
add_timeout_sec(DHCP_ARP_FAIL, start_interface, iface);
}
-void
-handle_arp_packet(struct interface *iface)
+static void
+handle_arp_packet(void *arg)
{
+ struct interface *iface = arg;
struct arphdr reply;
uint32_t reply_s;
uint32_t reply_t;
@@ -123,8 +124,9 @@ handle_arp_packet(struct interface *iface)
}
void
-send_arp_announce(struct interface *iface)
+send_arp_announce(void *arg)
{
+ struct interface *iface = arg;
struct if_state *state = iface->state;
struct timeval tv;
@@ -167,8 +169,9 @@ send_arp_announce(struct interface *iface)
}
void
-send_arp_probe(struct interface *iface)
+send_arp_probe(void *arg)
{
+ struct interface *iface = arg;
struct if_state *state = iface->state;
struct in_addr addr;
struct timeval tv;