diff options
author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2005-11-20 12:23:18 +0900 |
---|---|---|
committer | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2005-11-20 12:23:18 +0900 |
commit | df9890c31a1a447254f39e40c3fd81ad6547945b (patch) | |
tree | bf432d75796112d86d102fe721bdce93e6ad6901 /net/ipv6/udp.c | |
parent | a305989386e402f48b216786a5c8cf440b33bdad (diff) | |
download | kernel-crypto-df9890c31a1a447254f39e40c3fd81ad6547945b.tar.gz kernel-crypto-df9890c31a1a447254f39e40c3fd81ad6547945b.tar.xz kernel-crypto-df9890c31a1a447254f39e40c3fd81ad6547945b.zip |
[IPV6]: Fix sending extension headers before and including routing header.
Based on suggestion from Masahide Nakamura <nakam@linux-ipv6.org>.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'net/ipv6/udp.c')
-rw-r--r-- | net/ipv6/udp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index bf9519341fd..e2b87cc68b7 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -778,7 +778,9 @@ do_udp_sendmsg: } if (opt == NULL) opt = np->opt; - opt = fl6_merge_options(&opt_space, flowlabel, opt); + if (flowlabel) + opt = fl6_merge_options(&opt_space, flowlabel, opt); + opt = ipv6_fixup_options(&opt_space, opt); fl->proto = IPPROTO_UDP; ipv6_addr_copy(&fl->fl6_dst, daddr); |