mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 03:36:19 +00:00
[NETFILTER]: Rename skb_ip_make_writable() to skb_make_writable()
There is nothing IPv4-specific in it. In fact, it was already used by IPv6, too... Upcoming nfnetlink_queue code will use it for any kind of packet. Signed-off-by: Harald Welte <laforge@netfilter.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
373ac73595
commit
089af26c70
15 changed files with 25 additions and 25 deletions
|
@ -193,6 +193,11 @@ extern void nf_ct_attach(struct sk_buff *, struct sk_buff *);
|
|||
/* FIXME: Before cache is ever used, this must be implemented for real. */
|
||||
extern void nf_invalidate_cache(int pf);
|
||||
|
||||
/* Call this before modifying an existing packet: ensures it is
|
||||
modifiable and linear to the point you care about (writable_len).
|
||||
Returns true or false. */
|
||||
extern int skb_make_writable(struct sk_buff **pskb, unsigned int writable_len);
|
||||
|
||||
#else /* !CONFIG_NETFILTER */
|
||||
#define NF_HOOK(pf, hook, skb, indev, outdev, okfn) (okfn)(skb)
|
||||
static inline void nf_ct_attach(struct sk_buff *new, struct sk_buff *skb) {}
|
||||
|
|
|
@ -80,11 +80,6 @@ enum nf_ip_hook_priorities {
|
|||
#ifdef __KERNEL__
|
||||
extern int ip_route_me_harder(struct sk_buff **pskb);
|
||||
|
||||
/* Call this before modifying an existing IP packet: ensures it is
|
||||
modifiable and linear to the point you care about (writable_len).
|
||||
Returns true or false. */
|
||||
extern int skb_ip_make_writable(struct sk_buff **pskb,
|
||||
unsigned int writable_len);
|
||||
#endif /*__KERNEL__*/
|
||||
|
||||
#endif /*__LINUX_IP_NETFILTER_H*/
|
||||
|
|
|
@ -512,8 +512,9 @@ int ip_route_me_harder(struct sk_buff **pskb)
|
|||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(ip_route_me_harder);
|
||||
#endif /*CONFIG_INET*/
|
||||
|
||||
int skb_ip_make_writable(struct sk_buff **pskb, unsigned int writable_len)
|
||||
int skb_make_writable(struct sk_buff **pskb, unsigned int writable_len)
|
||||
{
|
||||
struct sk_buff *nskb;
|
||||
|
||||
|
@ -540,8 +541,7 @@ copy_skb:
|
|||
*pskb = nskb;
|
||||
return 1;
|
||||
}
|
||||
EXPORT_SYMBOL(skb_ip_make_writable);
|
||||
#endif /*CONFIG_INET*/
|
||||
EXPORT_SYMBOL(skb_make_writable);
|
||||
|
||||
/* Internal logging interface, which relies on the real
|
||||
LOG target modules */
|
||||
|
|
|
@ -359,7 +359,7 @@ manip_pkt(u_int16_t proto,
|
|||
struct iphdr *iph;
|
||||
struct ip_nat_protocol *p;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, iphdroff + sizeof(*iph)))
|
||||
if (!skb_make_writable(pskb, iphdroff + sizeof(*iph)))
|
||||
return 0;
|
||||
|
||||
iph = (void *)(*pskb)->data + iphdroff;
|
||||
|
@ -431,7 +431,7 @@ int icmp_reply_translation(struct sk_buff **pskb,
|
|||
struct ip_conntrack_tuple inner, target;
|
||||
int hdrlen = (*pskb)->nh.iph->ihl * 4;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, hdrlen + sizeof(*inside)))
|
||||
if (!skb_make_writable(pskb, hdrlen + sizeof(*inside)))
|
||||
return 0;
|
||||
|
||||
inside = (void *)(*pskb)->data + (*pskb)->nh.iph->ihl*4;
|
||||
|
|
|
@ -168,7 +168,7 @@ ip_nat_mangle_tcp_packet(struct sk_buff **pskb,
|
|||
struct tcphdr *tcph;
|
||||
int datalen;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->len))
|
||||
if (!skb_make_writable(pskb, (*pskb)->len))
|
||||
return 0;
|
||||
|
||||
if (rep_len > match_len
|
||||
|
@ -228,7 +228,7 @@ ip_nat_mangle_udp_packet(struct sk_buff **pskb,
|
|||
match_offset + match_len)
|
||||
return 0;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->len))
|
||||
if (!skb_make_writable(pskb, (*pskb)->len))
|
||||
return 0;
|
||||
|
||||
if (rep_len > match_len
|
||||
|
@ -315,7 +315,7 @@ ip_nat_sack_adjust(struct sk_buff **pskb,
|
|||
optoff = (*pskb)->nh.iph->ihl*4 + sizeof(struct tcphdr);
|
||||
optend = (*pskb)->nh.iph->ihl*4 + tcph->doff*4;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, optend))
|
||||
if (!skb_make_writable(pskb, optend))
|
||||
return 0;
|
||||
|
||||
dir = CTINFO2DIR(ctinfo);
|
||||
|
@ -363,7 +363,7 @@ ip_nat_seq_adjust(struct sk_buff **pskb,
|
|||
this_way = &ct->nat.info.seq[dir];
|
||||
other_way = &ct->nat.info.seq[!dir];
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->nh.iph->ihl*4+sizeof(*tcph)))
|
||||
if (!skb_make_writable(pskb, (*pskb)->nh.iph->ihl*4+sizeof(*tcph)))
|
||||
return 0;
|
||||
|
||||
tcph = (void *)(*pskb)->data + (*pskb)->nh.iph->ihl*4;
|
||||
|
|
|
@ -62,7 +62,7 @@ icmp_manip_pkt(struct sk_buff **pskb,
|
|||
struct icmphdr *hdr;
|
||||
unsigned int hdroff = iphdroff + iph->ihl*4;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, hdroff + sizeof(*hdr)))
|
||||
if (!skb_make_writable(pskb, hdroff + sizeof(*hdr)))
|
||||
return 0;
|
||||
|
||||
hdr = (struct icmphdr *)((*pskb)->data + hdroff);
|
||||
|
|
|
@ -103,7 +103,7 @@ tcp_manip_pkt(struct sk_buff **pskb,
|
|||
if ((*pskb)->len >= hdroff + sizeof(struct tcphdr))
|
||||
hdrsize = sizeof(struct tcphdr);
|
||||
|
||||
if (!skb_ip_make_writable(pskb, hdroff + hdrsize))
|
||||
if (!skb_make_writable(pskb, hdroff + hdrsize))
|
||||
return 0;
|
||||
|
||||
iph = (struct iphdr *)((*pskb)->data + iphdroff);
|
||||
|
|
|
@ -94,7 +94,7 @@ udp_manip_pkt(struct sk_buff **pskb,
|
|||
u32 oldip, newip;
|
||||
u16 *portptr, newport;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, hdroff + sizeof(*hdr)))
|
||||
if (!skb_make_writable(pskb, hdroff + sizeof(*hdr)))
|
||||
return 0;
|
||||
|
||||
iph = (struct iphdr *)((*pskb)->data + iphdroff);
|
||||
|
|
|
@ -1275,7 +1275,7 @@ static int help(struct sk_buff **pskb,
|
|||
return NF_DROP;
|
||||
}
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->len))
|
||||
if (!skb_make_writable(pskb, (*pskb)->len))
|
||||
return NF_DROP;
|
||||
|
||||
spin_lock_bh(&snmp_lock);
|
||||
|
|
|
@ -388,7 +388,7 @@ ipq_mangle_ipv4(ipq_verdict_msg_t *v, struct ipq_queue_entry *e)
|
|||
}
|
||||
skb_put(e->skb, diff);
|
||||
}
|
||||
if (!skb_ip_make_writable(&e->skb, v->data_len))
|
||||
if (!skb_make_writable(&e->skb, v->data_len))
|
||||
return -ENOMEM;
|
||||
memcpy(e->skb->data, v->payload, v->data_len);
|
||||
e->skb->ip_summed = CHECKSUM_NONE;
|
||||
|
|
|
@ -39,7 +39,7 @@ target(struct sk_buff **pskb,
|
|||
if (((*pskb)->nh.iph->tos & IPT_DSCP_MASK) != sh_dscp) {
|
||||
u_int16_t diffs[2];
|
||||
|
||||
if (!skb_ip_make_writable(pskb, sizeof(struct iphdr)))
|
||||
if (!skb_make_writable(pskb, sizeof(struct iphdr)))
|
||||
return NF_DROP;
|
||||
|
||||
diffs[0] = htons((*pskb)->nh.iph->tos) ^ 0xFFFF;
|
||||
|
|
|
@ -31,7 +31,7 @@ set_ect_ip(struct sk_buff **pskb, const struct ipt_ECN_info *einfo)
|
|||
!= (einfo->ip_ect & IPT_ECN_IP_MASK)) {
|
||||
u_int16_t diffs[2];
|
||||
|
||||
if (!skb_ip_make_writable(pskb, sizeof(struct iphdr)))
|
||||
if (!skb_make_writable(pskb, sizeof(struct iphdr)))
|
||||
return 0;
|
||||
|
||||
diffs[0] = htons((*pskb)->nh.iph->tos) ^ 0xFFFF;
|
||||
|
@ -66,7 +66,7 @@ set_ect_tcp(struct sk_buff **pskb, const struct ipt_ECN_info *einfo, int inward)
|
|||
tcph->cwr == einfo->proto.tcp.cwr)))
|
||||
return 1;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->nh.iph->ihl*4+sizeof(*tcph)))
|
||||
if (!skb_make_writable(pskb, (*pskb)->nh.iph->ihl*4+sizeof(*tcph)))
|
||||
return 0;
|
||||
tcph = (void *)(*pskb)->nh.iph + (*pskb)->nh.iph->ihl*4;
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ ipt_tcpmss_target(struct sk_buff **pskb,
|
|||
unsigned int i;
|
||||
u_int8_t *opt;
|
||||
|
||||
if (!skb_ip_make_writable(pskb, (*pskb)->len))
|
||||
if (!skb_make_writable(pskb, (*pskb)->len))
|
||||
return NF_DROP;
|
||||
|
||||
if ((*pskb)->ip_summed == CHECKSUM_HW &&
|
||||
|
|
|
@ -33,7 +33,7 @@ target(struct sk_buff **pskb,
|
|||
if (((*pskb)->nh.iph->tos & IPTOS_TOS_MASK) != tosinfo->tos) {
|
||||
u_int16_t diffs[2];
|
||||
|
||||
if (!skb_ip_make_writable(pskb, sizeof(struct iphdr)))
|
||||
if (!skb_make_writable(pskb, sizeof(struct iphdr)))
|
||||
return NF_DROP;
|
||||
|
||||
diffs[0] = htons((*pskb)->nh.iph->tos) ^ 0xFFFF;
|
||||
|
|
|
@ -384,7 +384,7 @@ ipq_mangle_ipv6(ipq_verdict_msg_t *v, struct ipq_queue_entry *e)
|
|||
}
|
||||
skb_put(e->skb, diff);
|
||||
}
|
||||
if (!skb_ip_make_writable(&e->skb, v->data_len))
|
||||
if (!skb_make_writable(&e->skb, v->data_len))
|
||||
return -ENOMEM;
|
||||
memcpy(e->skb->data, v->payload, v->data_len);
|
||||
e->skb->ip_summed = CHECKSUM_NONE;
|
||||
|
|
Loading…
Reference in a new issue