Module Name: src Committed By: ozaki-r Date: Wed Nov 9 03:33:30 UTC 2016
Modified Files: src/sys/netinet: tcp_subr.c Log Message: Cleanup/KNF tcp6_mtudisc No functional change. To generate a diff of this commit: cvs rdiff -u -r1.266 -r1.267 src/sys/netinet/tcp_subr.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/netinet/tcp_subr.c diff -u src/sys/netinet/tcp_subr.c:1.266 src/sys/netinet/tcp_subr.c:1.267 --- src/sys/netinet/tcp_subr.c:1.266 Fri Jun 10 13:27:16 2016 +++ src/sys/netinet/tcp_subr.c Wed Nov 9 03:33:30 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_subr.c,v 1.266 2016/06/10 13:27:16 ozaki-r Exp $ */ +/* $NetBSD: tcp_subr.c,v 1.267 2016/11/09 03:33:30 ozaki-r Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -91,7 +91,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: tcp_subr.c,v 1.266 2016/06/10 13:27:16 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tcp_subr.c,v 1.267 2016/11/09 03:33:30 ozaki-r Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -1822,39 +1822,42 @@ void tcp6_mtudisc(struct in6pcb *in6p, int errno) { struct tcpcb *tp = in6totcpcb(in6p); - struct rtentry *rt = in6_pcbrtentry(in6p); + struct rtentry *rt; - if (tp != 0) { - if (rt != 0) { - /* - * If this was not a host route, remove and realloc. - */ - if ((rt->rt_flags & RTF_HOST) == 0) { - in6_rtchange(in6p, errno); - if ((rt = in6_pcbrtentry(in6p)) == 0) - return; - } + if (tp == NULL) + return; - /* - * Slow start out of the error condition. We - * use the MTU because we know it's smaller - * than the previously transmitted segment. - * - * Note: This is more conservative than the - * suggestion in draft-floyd-incr-init-win-03. - */ - if (rt->rt_rmx.rmx_mtu != 0) - tp->snd_cwnd = - TCP_INITIAL_WINDOW(tcp_init_win, - rt->rt_rmx.rmx_mtu); + rt = in6_pcbrtentry(in6p); + if (rt != NULL) { + /* + * If this was not a host route, remove and realloc. + */ + if ((rt->rt_flags & RTF_HOST) == 0) { + in6_rtchange(in6p, errno); + rt = in6_pcbrtentry(in6p); + if (rt == NULL) + return; } /* - * Resend unacknowledged packets. + * Slow start out of the error condition. We + * use the MTU because we know it's smaller + * than the previously transmitted segment. + * + * Note: This is more conservative than the + * suggestion in draft-floyd-incr-init-win-03. */ - tp->snd_nxt = tp->sack_newdata = tp->snd_una; - tcp_output(tp); + if (rt->rt_rmx.rmx_mtu != 0) { + tp->snd_cwnd = TCP_INITIAL_WINDOW(tcp_init_win, + rt->rt_rmx.rmx_mtu); + } } + + /* + * Resend unacknowledged packets. + */ + tp->snd_nxt = tp->sack_newdata = tp->snd_una; + tcp_output(tp); } #endif /* INET6 */