Module Name: src Committed By: christos Date: Thu Oct 3 20:27:55 UTC 2013
Modified Files: src/sys/netinet6: ip6_output.c Log Message: check sockopt_get() error, from logan. To generate a diff of this commit: cvs rdiff -u -r1.154 -r1.155 src/sys/netinet6/ip6_output.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/netinet6/ip6_output.c diff -u src/sys/netinet6/ip6_output.c:1.154 src/sys/netinet6/ip6_output.c:1.155 --- src/sys/netinet6/ip6_output.c:1.154 Sat Jun 29 17:06:58 2013 +++ src/sys/netinet6/ip6_output.c Thu Oct 3 16:27:55 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: ip6_output.c,v 1.154 2013/06/29 21:06:58 rmind Exp $ */ +/* $NetBSD: ip6_output.c,v 1.155 2013/10/03 20:27:55 christos Exp $ */ /* $KAME: ip6_output.c,v 1.172 2001/03/25 09:55:56 itojun Exp $ */ /* @@ -62,7 +62,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ip6_output.c,v 1.154 2013/06/29 21:06:58 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ip6_output.c,v 1.155 2013/10/03 20:27:55 christos Exp $"); #include "opt_inet.h" #include "opt_inet6.h" @@ -1594,7 +1594,11 @@ else \ break; } - sockopt_get(sopt, optbuf, optbuflen); + error = sockopt_get(sopt, optbuf, optbuflen); + if (error) { + free(optbuf, M_IP6OPT); + break; + } optp = &in6p->in6p_outputopts; error = ip6_pcbopt(optname, optbuf, optbuflen, optp, kauth_cred_get(), uproto);