diff options
| author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2006-09-13 23:01:28 -0400 |
|---|---|---|
| committer | David S. Miller <davem@sunset.davemloft.net> | 2006-09-18 02:21:07 -0400 |
| commit | e012d51cbc41c5e603d7850c82acb0dad9e450dd (patch) | |
| tree | 90dbb35873b853725a4de13cfe16990430a5d6aa | |
| parent | b552216ff1340a056aa0e12da68203902ae81d2c (diff) | |
[IPV6]: Fix tclass setting for raw sockets.
np->cork.tclass is used only in cork'ed context.
Otherwise, np->tclass should be used.
Bug#7096 reported by Remi Denis-Courmont <rdenis@simphalempin.com>.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | net/ipv6/icmp.c | 4 | ||||
| -rw-r--r-- | net/ipv6/raw.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c index 3d6e9a351150..356a8a7ef22a 100644 --- a/net/ipv6/icmp.c +++ b/net/ipv6/icmp.c | |||
| @@ -401,7 +401,7 @@ void icmpv6_send(struct sk_buff *skb, int type, int code, __u32 info, | |||
| 401 | if (hlimit < 0) | 401 | if (hlimit < 0) |
| 402 | hlimit = ipv6_get_hoplimit(dst->dev); | 402 | hlimit = ipv6_get_hoplimit(dst->dev); |
| 403 | 403 | ||
| 404 | tclass = np->cork.tclass; | 404 | tclass = np->tclass; |
| 405 | if (tclass < 0) | 405 | if (tclass < 0) |
| 406 | tclass = 0; | 406 | tclass = 0; |
| 407 | 407 | ||
| @@ -497,7 +497,7 @@ static void icmpv6_echo_reply(struct sk_buff *skb) | |||
| 497 | if (hlimit < 0) | 497 | if (hlimit < 0) |
| 498 | hlimit = ipv6_get_hoplimit(dst->dev); | 498 | hlimit = ipv6_get_hoplimit(dst->dev); |
| 499 | 499 | ||
| 500 | tclass = np->cork.tclass; | 500 | tclass = np->tclass; |
| 501 | if (tclass < 0) | 501 | if (tclass < 0) |
| 502 | tclass = 0; | 502 | tclass = 0; |
| 503 | 503 | ||
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c index d57e61ce4a7d..15b862d8acab 100644 --- a/net/ipv6/raw.c +++ b/net/ipv6/raw.c | |||
| @@ -781,7 +781,7 @@ static int rawv6_sendmsg(struct kiocb *iocb, struct sock *sk, | |||
| 781 | } | 781 | } |
| 782 | 782 | ||
| 783 | if (tclass < 0) { | 783 | if (tclass < 0) { |
| 784 | tclass = np->cork.tclass; | 784 | tclass = np->tclass; |
| 785 | if (tclass < 0) | 785 | if (tclass < 0) |
| 786 | tclass = 0; | 786 | tclass = 0; |
| 787 | } | 787 | } |
