Author: melifaro
Date: Mon Oct  6 11:15:11 2014
New Revision: 272609
URL: https://svnweb.freebsd.org/changeset/base/272609

Log:
  Fix O_TCPOPTS processing.
  
  Obtained from:        luigi

Modified:
  head/sys/netpfil/ipfw/ip_fw2.c

Modified: head/sys/netpfil/ipfw/ip_fw2.c
==============================================================================
--- head/sys/netpfil/ipfw/ip_fw2.c      Mon Oct  6 11:05:56 2014        
(r272608)
+++ head/sys/netpfil/ipfw/ip_fw2.c      Mon Oct  6 11:15:11 2014        
(r272609)
@@ -1722,9 +1722,13 @@ do {                                                     
        \
                                break;
 
                        case O_TCPOPTS:
-                               PULLUP_LEN(hlen, ulp, (TCP(ulp)->th_off << 2));
-                               match = (proto == IPPROTO_TCP && offset == 0 &&
-                                   tcpopts_match(TCP(ulp), cmd));
+                               if (proto == IPPROTO_TCP && ulp != NULL) {
+                                       PULLUP_LEN(hlen, ulp,
+                                           (TCP(ulp)->th_off << 2));
+                                       match = (proto == IPPROTO_TCP &&
+                                           offset == 0 &&
+                                           tcpopts_match(TCP(ulp), cmd));
+                               }
                                break;
 
                        case O_TCPSEQ:
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to