File tree Expand file tree Collapse file tree 2 files changed +2
-4
lines changed Expand file tree Collapse file tree 2 files changed +2
-4
lines changed Original file line number Diff line number Diff line change @@ -615,7 +615,7 @@ static int dccp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
615615 by tcp. Feel free to propose better solution.
616616 --ANK (980728)
617617 */
618- if (np -> rxopt .all )
618+ if (np -> rxopt .all && sk -> sk_state != DCCP_LISTEN )
619619 opt_skb = skb_clone_and_charge_r (skb , sk );
620620
621621 if (sk -> sk_state == DCCP_OPEN ) { /* Fast path */
Original file line number Diff line number Diff line change @@ -1503,7 +1503,7 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
15031503 by tcp. Feel free to propose better solution.
15041504 --ANK (980728)
15051505 */
1506- if (np -> rxopt .all )
1506+ if (np -> rxopt .all && sk -> sk_state != TCP_LISTEN )
15071507 opt_skb = skb_clone_and_charge_r (skb , sk );
15081508
15091509 if (sk -> sk_state == TCP_ESTABLISHED ) { /* Fast path */
@@ -1541,8 +1541,6 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
15411541 if (nsk != sk ) {
15421542 if (tcp_child_process (sk , nsk , skb ))
15431543 goto reset ;
1544- if (opt_skb )
1545- __kfree_skb (opt_skb );
15461544 return 0 ;
15471545 }
15481546 } else
You can’t perform that action at this time.
0 commit comments