diff options
author | Markus Friedl <markus@cvs.openbsd.org> | 2007-09-17 09:33:58 +0000 |
---|---|---|
committer | Markus Friedl <markus@cvs.openbsd.org> | 2007-09-17 09:33:58 +0000 |
commit | 8f82691bcfa20cce4a067410ac59a3efcd073e78 (patch) | |
tree | 839d4e3fe620295917507cb42fe7962e78eb2e7f /sys/netinet | |
parent | 5c2bd4e040646f212484a6bc318cb1ee3e40d23c (diff) |
remove backpointer from ifa to ifp if an address gets delete; fixes
panics in ip_freemoptions(); ok claudio, henning, mpf
Diffstat (limited to 'sys/netinet')
-rw-r--r-- | sys/netinet/in.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 1f638951e15..caf4e22c196 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -1,4 +1,4 @@ -/* $OpenBSD: in.c,v 1.49 2007/07/20 19:00:35 claudio Exp $ */ +/* $OpenBSD: in.c,v 1.50 2007/09/17 09:33:57 markus Exp $ */ /* $NetBSD: in.c,v 1.26 1996/02/13 23:41:39 christos Exp $ */ /* @@ -452,6 +452,8 @@ cleanup: in_delmulti(ia->ia_allhosts); ia->ia_allhosts = NULL; } + /* remove backpointer, since ifp may die before ia */ + ia->ia_ifp = NULL; IFAFREE((&ia->ia_ifa)); dohooks(ifp->if_addrhooks, 0); splx(s); |