From d937176b3481cd970c24fba3eddbe098a1fe564f Mon Sep 17 00:00:00 2001 From: mlaier Date: Thu, 26 Feb 2004 04:27:55 +0000 Subject: Bring eventhandler callbacks for pf. This enables pf to track dynamic address changes on interfaces (dailup) with the "on ()"-syntax. This also brings hooks in anticipation of tracking cloned interfaces, which will be in future versions of pf. Approved by: bms(mentor) --- sys/netinet/in.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'sys/netinet') diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 187ed93..1873ae4 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -363,6 +363,8 @@ in_control(so, cmd, data, ifp, td) (struct sockaddr_in *) &ifr->ifr_addr, 1); if (error != 0 && iaIsNew) break; + if (error == 0) + EVENTHANDLER_INVOKE(ifaddr_event, ifp); return (0); case SIOCSIFNETMASK: @@ -405,6 +407,8 @@ in_control(so, cmd, data, ifp, td) if ((ifp->if_flags & IFF_BROADCAST) && (ifra->ifra_broadaddr.sin_family == AF_INET)) ia->ia_broadaddr = ifra->ifra_broadaddr; + if (error == 0) + EVENTHANDLER_INVOKE(ifaddr_event, ifp); return (error); case SIOCDIFADDR: @@ -427,6 +431,7 @@ in_control(so, cmd, data, ifp, td) in_pcbpurgeif0(&ripcbinfo, ifp); in_pcbpurgeif0(&udbinfo, ifp); } + EVENTHANDLER_INVOKE(ifaddr_event, ifp); error = 0; break; -- cgit v1.1