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)
615
615
by tcp. Feel free to propose better solution.
616
616
--ANK (980728)
617
617
*/
618
- if (np -> rxopt .all )
618
+ if (np -> rxopt .all && sk -> sk_state != DCCP_LISTEN )
619
619
opt_skb = skb_clone_and_charge_r (skb , sk );
620
620
621
621
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)
1503
1503
by tcp. Feel free to propose better solution.
1504
1504
--ANK (980728)
1505
1505
*/
1506
- if (np -> rxopt .all )
1506
+ if (np -> rxopt .all && sk -> sk_state != TCP_LISTEN )
1507
1507
opt_skb = skb_clone_and_charge_r (skb , sk );
1508
1508
1509
1509
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)
1541
1541
if (nsk != sk ) {
1542
1542
if (tcp_child_process (sk , nsk , skb ))
1543
1543
goto reset ;
1544
- if (opt_skb )
1545
- __kfree_skb (opt_skb );
1546
1544
return 0 ;
1547
1545
}
1548
1546
} else
You can’t perform that action at this time.
0 commit comments