diff --git a/[refs] b/[refs] index d9704c7c6b12..455d9d681707 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 15e83ed78864d0625e87a85f09b297c0919a4797 +refs/heads/master: d7fd1b5747fff3bde92777bcaf705d98ae6f8b6f diff --git a/trunk/net/ipv4/tcp.c b/trunk/net/ipv4/tcp.c index 6596b4feeddc..49d0d2b8900c 100644 --- a/trunk/net/ipv4/tcp.c +++ b/trunk/net/ipv4/tcp.c @@ -2999,6 +2999,7 @@ int tcp_md5_hash_skb_data(struct tcp_md5sig_pool *hp, const unsigned head_data_len = skb_headlen(skb) > header_len ? skb_headlen(skb) - header_len : 0; const struct skb_shared_info *shi = skb_shinfo(skb); + struct sk_buff *frag_iter; sg_init_table(&sg, 1); @@ -3013,6 +3014,10 @@ int tcp_md5_hash_skb_data(struct tcp_md5sig_pool *hp, return 1; } + skb_walk_frags(skb, frag_iter) + if (tcp_md5_hash_skb_data(hp, frag_iter, 0)) + return 1; + return 0; }