On 17-06-10 07:02 PM, David Miller wrote:

@@ -173,7 +173,8 @@ int ip_build_and_send_pkt(struct sk_buff *skb, const struct 
sock *sk,
        }
skb->priority = sk->sk_priority;
-       skb->mark = sk->sk_mark;
+       if (!skb->mark)
+               skb->mark = sk->sk_mark;

Maybe this should both be "inet_request_mark()"?


Challenge is making of a synack requires a new allocated skb;
and sk is a listening socket - which should/has a mark of
0 meaning at ip_build_and_send_pkt() it overrides
the value already set on the skb->mark.

cheers,
jamal

Also, Lorenzo, please review.


Reply via email to