ip6_output.c (1e0d69a9cc9172d7896c2113f983a74f6e8ff303) | ip6_output.c (89bc7848a91bc99532f5c21b2885472ba710f249) |
---|---|
1/* 2 * IPv6 output functions 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * 8 * Based on linux/net/ipv4/ip_output.c --- 570 unchanged lines hidden (view full) --- 579 if (mtu < IPV6_MIN_MTU) 580 mtu = IPV6_MIN_MTU; 581 } 582 583 if (np && np->frag_size < mtu) { 584 if (np->frag_size) 585 mtu = np->frag_size; 586 } | 1/* 2 * IPv6 output functions 3 * Linux INET6 implementation 4 * 5 * Authors: 6 * Pedro Roque <roque@di.fc.ul.pt> 7 * 8 * Based on linux/net/ipv4/ip_output.c --- 570 unchanged lines hidden (view full) --- 579 if (mtu < IPV6_MIN_MTU) 580 mtu = IPV6_MIN_MTU; 581 } 582 583 if (np && np->frag_size < mtu) { 584 if (np->frag_size) 585 mtu = np->frag_size; 586 } |
587 if (mtu < hlen + sizeof(struct frag_hdr) + 8) 588 goto fail_toobig; |
|
587 mtu -= hlen + sizeof(struct frag_hdr); 588 589 frag_id = ipv6_select_ident(net, &ipv6_hdr(skb)->daddr, 590 &ipv6_hdr(skb)->saddr); 591 592 hroom = LL_RESERVED_SPACE(rt->dst.dev); 593 if (skb_has_frag_list(skb)) { 594 int first_len = skb_pagelen(skb); --- 1182 unchanged lines hidden --- | 589 mtu -= hlen + sizeof(struct frag_hdr); 590 591 frag_id = ipv6_select_ident(net, &ipv6_hdr(skb)->daddr, 592 &ipv6_hdr(skb)->saddr); 593 594 hroom = LL_RESERVED_SPACE(rt->dst.dev); 595 if (skb_has_frag_list(skb)) { 596 int first_len = skb_pagelen(skb); --- 1182 unchanged lines hidden --- |