Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Oct 2015 21:19:49 +0000 (UTC)
From:      Michael Tuexen <tuexen@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r290023 - head/sys/netinet
Message-ID:  <201510262119.t9QLJnLn015927@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tuexen
Date: Mon Oct 26 21:19:49 2015
New Revision: 290023
URL: https://svnweb.freebsd.org/changeset/base/290023

Log:
  When processing a cookie, any mismatch in port numbers or the vtag results
  in failing the check.
  This fixes https://github.com/nplab/ETSI-SCTP-Conformance-Testsuite/blob/master/sctp-imh-tests/sctp-imh-i-3-3.pkt
  
  MFC after: 1 week

Modified:
  head/sys/netinet/sctp_input.c

Modified: head/sys/netinet/sctp_input.c
==============================================================================
--- head/sys/netinet/sctp_input.c	Mon Oct 26 21:03:20 2015	(r290022)
+++ head/sys/netinet/sctp_input.c	Mon Oct 26 21:19:49 2015	(r290023)
@@ -2435,8 +2435,8 @@ sctp_handle_cookie_echo(struct mbuf *m, 
 	cookie_offset = offset + sizeof(struct sctp_chunkhdr);
 	cookie_len = ntohs(cp->ch.chunk_length);
 
-	if ((cookie->peerport != sh->src_port) &&
-	    (cookie->myport != sh->dest_port) &&
+	if ((cookie->peerport != sh->src_port) ||
+	    (cookie->myport != sh->dest_port) ||
 	    (cookie->my_vtag != sh->v_tag)) {
 		/*
 		 * invalid ports or bad tag.  Note that we always leave the



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201510262119.t9QLJnLn015927>