changeset 2967:bde943da371e draft

Change ipv6_freeaddr into a macro for a minor size improvement.
author Roy Marples <roy@marples.name>
date Fri, 27 Feb 2015 20:55:38 +0000
parents 3166c9323fc3
children 3e5c08cc4798
files ipv6.c ipv6.h
diffstat 2 files changed, 5 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/ipv6.c	Fri Feb 27 20:40:17 2015 +0000
+++ b/ipv6.c	Fri Feb 27 20:55:38 2015 +0000
@@ -824,14 +824,6 @@
 }
 
 void
-ipv6_freeaddr(struct ipv6_addr *ap)
-{
-
-	eloop_q_timeout_delete(ap->iface->ctx->eloop, 0, NULL, ap);
-	free(ap);
-}
-
-void
 ipv6_freedrop_addrs(struct ipv6_addrhead *addrs, int drop,
     const struct interface *ifd)
 {
--- a/ipv6.h	Fri Feb 27 20:40:17 2015 +0000
+++ b/ipv6.h	Fri Feb 27 20:55:38 2015 +0000
@@ -252,7 +252,11 @@
     const struct in6_addr *, short);
 #define ipv6_linklocal(ifp) ipv6_iffindaddr((ifp), NULL)
 int ipv6_addlinklocalcallback(struct interface *, void (*)(void *), void *);
-void ipv6_freeaddr(struct ipv6_addr *);
+//void ipv6_freeaddr(struct ipv6_addr *);
+#define ipv6_freeaddr(ap) do { \
+	eloop_q_timeout_delete((ap)->iface->ctx->eloop, 0, NULL, (ap)); \
+	free(ap); \
+	} while (0)
 void ipv6_freedrop(struct interface *, int);
 #define ipv6_free(ifp) ipv6_freedrop((ifp), 0)
 #define ipv6_drop(ifp) ipv6_freedrop((ifp), 2)