ipv6: fold sockcm_cookie into ipcm6_cookie
ipcm_cookie includes sockcm_cookie. Do the same for ipcm6_cookie. This reduces the number of arguments that need to be passed around, applies ipcm6_init to all cookie fields at once and reduces code differentiation between ipv4 and ipv6. Signed-off-by: Willem de Bruijn <willemb@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
657a066702
commit
5fdaa88dfe
@@ -430,7 +430,6 @@ static void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info,
|
||||
struct icmp6hdr tmp_hdr;
|
||||
struct flowi6 fl6;
|
||||
struct icmpv6_msg msg;
|
||||
struct sockcm_cookie sockc_unused = {0};
|
||||
struct ipcm6_cookie ipc6;
|
||||
int iif = 0;
|
||||
int addr_type = 0;
|
||||
@@ -573,7 +572,7 @@ static void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info,
|
||||
len + sizeof(struct icmp6hdr),
|
||||
sizeof(struct icmp6hdr),
|
||||
&ipc6, &fl6, (struct rt6_info *)dst,
|
||||
MSG_DONTWAIT, &sockc_unused)) {
|
||||
MSG_DONTWAIT)) {
|
||||
ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTERRORS);
|
||||
ip6_flush_pending_frames(sk);
|
||||
} else {
|
||||
@@ -677,7 +676,6 @@ static void icmpv6_echo_reply(struct sk_buff *skb)
|
||||
struct dst_entry *dst;
|
||||
struct ipcm6_cookie ipc6;
|
||||
u32 mark = IP6_REPLY_MARK(net, skb->mark);
|
||||
struct sockcm_cookie sockc_unused = {0};
|
||||
|
||||
saddr = &ipv6_hdr(skb)->daddr;
|
||||
|
||||
@@ -731,8 +729,7 @@ static void icmpv6_echo_reply(struct sk_buff *skb)
|
||||
if (ip6_append_data(sk, icmpv6_getfrag, &msg,
|
||||
skb->len + sizeof(struct icmp6hdr),
|
||||
sizeof(struct icmp6hdr), &ipc6, &fl6,
|
||||
(struct rt6_info *)dst, MSG_DONTWAIT,
|
||||
&sockc_unused)) {
|
||||
(struct rt6_info *)dst, MSG_DONTWAIT)) {
|
||||
__ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTERRORS);
|
||||
ip6_flush_pending_frames(sk);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user