diff options
author | rwatson <rwatson@FreeBSD.org> | 2009-04-23 11:51:53 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2009-04-23 11:51:53 +0000 |
commit | ccc05d4c7fc358ca3cc8339274b58835f1ba153b (patch) | |
tree | 00a3b8317138c3f76378e3a6003faf4f48043892 /sys/net/if_var.h | |
parent | bf5b2167ac0cacf1ff816efc0f73ed8e20386341 (diff) | |
download | FreeBSD-src-ccc05d4c7fc358ca3cc8339274b58835f1ba153b.zip FreeBSD-src-ccc05d4c7fc358ca3cc8339274b58835f1ba153b.tar.gz |
During if_detach(), invoke if_dead() to set the ifnet's function
pointers to "dead" implementations that no-op rather than invoking
the device driver. This would generally be unexpected and
possibly quite badly handled by most device drivers after
if_detach() has completed.
Reviewed by: bms
MFC after: 3 weeks
Diffstat (limited to 'sys/net/if_var.h')
-rw-r--r-- | sys/net/if_var.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/net/if_var.h b/sys/net/if_var.h index 26b2747..4078f8f 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -753,6 +753,7 @@ int if_addmulti(struct ifnet *, struct sockaddr *, struct ifmultiaddr **); int if_allmulti(struct ifnet *, int); struct ifnet* if_alloc(u_char); void if_attach(struct ifnet *); +void if_dead(struct ifnet *); int if_delmulti(struct ifnet *, struct sockaddr *); void if_delmulti_ifma(struct ifmultiaddr *); void if_detach(struct ifnet *); |