Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/netinet/raw_ip.c,v retrieving revision 1.45 retrieving revision 1.46 diff -u -p -r1.45 -r1.46 --- src/sys/netinet/raw_ip.c 1999/07/09 22:57:20 1.45 +++ src/sys/netinet/raw_ip.c 1999/09/13 12:15:55 1.46 @@ -1,4 +1,4 @@ -/* $NetBSD: raw_ip.c,v 1.45 1999/07/09 22:57:20 thorpej Exp $ */ +/* $NetBSD: raw_ip.c,v 1.46 1999/09/13 12:15:55 itojun Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -463,7 +463,8 @@ rip_usrreq(so, req, m, nam, control, p) inp = sotoinpcb(so); inp->inp_ip.ip_p = (long)nam; #ifdef IPSEC - error = ipsec_init_policy(&inp->inp_sp); + if ((error = ipsec_init_policy(&inp->inp_sp)) != 0) + in_pcbdetach(inp); #endif /*IPSEC*/ break;