|
@@ -128,13 +128,13 @@ static bool icmp_new(struct nf_conn *ct, const struct sk_buff *skb,
|
|
|
/* Returns conntrack if it dealt with ICMP, and filled in skb fields */
|
|
|
static int
|
|
|
icmp_error_message(struct net *net, struct nf_conn *tmpl, struct sk_buff *skb,
|
|
|
- enum ip_conntrack_info *ctinfo,
|
|
|
unsigned int hooknum)
|
|
|
{
|
|
|
struct nf_conntrack_tuple innertuple, origtuple;
|
|
|
const struct nf_conntrack_l4proto *innerproto;
|
|
|
const struct nf_conntrack_tuple_hash *h;
|
|
|
const struct nf_conntrack_zone *zone;
|
|
|
+ enum ip_conntrack_info ctinfo;
|
|
|
struct nf_conntrack_zone tmp;
|
|
|
|
|
|
NF_CT_ASSERT(skb->nfct == NULL);
|
|
@@ -160,7 +160,7 @@ icmp_error_message(struct net *net, struct nf_conn *tmpl, struct sk_buff *skb,
|
|
|
return -NF_ACCEPT;
|
|
|
}
|
|
|
|
|
|
- *ctinfo = IP_CT_RELATED;
|
|
|
+ ctinfo = IP_CT_RELATED;
|
|
|
|
|
|
h = nf_conntrack_find_get(net, zone, &innertuple);
|
|
|
if (!h) {
|
|
@@ -169,11 +169,11 @@ icmp_error_message(struct net *net, struct nf_conn *tmpl, struct sk_buff *skb,
|
|
|
}
|
|
|
|
|
|
if (NF_CT_DIRECTION(h) == IP_CT_DIR_REPLY)
|
|
|
- *ctinfo += IP_CT_IS_REPLY;
|
|
|
+ ctinfo += IP_CT_IS_REPLY;
|
|
|
|
|
|
/* Update skb to refer to this connection */
|
|
|
skb->nfct = &nf_ct_tuplehash_to_ctrack(h)->ct_general;
|
|
|
- skb->nfctinfo = *ctinfo;
|
|
|
+ skb->nfctinfo = ctinfo;
|
|
|
return NF_ACCEPT;
|
|
|
}
|
|
|
|
|
@@ -181,7 +181,7 @@ icmp_error_message(struct net *net, struct nf_conn *tmpl, struct sk_buff *skb,
|
|
|
static int
|
|
|
icmp_error(struct net *net, struct nf_conn *tmpl,
|
|
|
struct sk_buff *skb, unsigned int dataoff,
|
|
|
- enum ip_conntrack_info *ctinfo, u_int8_t pf, unsigned int hooknum)
|
|
|
+ u8 pf, unsigned int hooknum)
|
|
|
{
|
|
|
const struct icmphdr *icmph;
|
|
|
struct icmphdr _ih;
|
|
@@ -225,7 +225,7 @@ icmp_error(struct net *net, struct nf_conn *tmpl,
|
|
|
icmph->type != ICMP_REDIRECT)
|
|
|
return NF_ACCEPT;
|
|
|
|
|
|
- return icmp_error_message(net, tmpl, skb, ctinfo, hooknum);
|
|
|
+ return icmp_error_message(net, tmpl, skb, hooknum);
|
|
|
}
|
|
|
|
|
|
#if IS_ENABLED(CONFIG_NF_CT_NETLINK)
|