34 lines
1.1 KiB
Diff
34 lines
1.1 KiB
Diff
diff --git a/net/ipv4/netfilter/nf_nat_snmp_basic.c b/net/ipv4/netfilter/nf_nat_snmp_basic.c
|
|
index c8ac57f..7f7d847 100644
|
|
--- a/net/ipv4/netfilter/nf_nat_snmp_basic.c
|
|
+++ b/net/ipv4/netfilter/nf_nat_snmp_basic.c
|
|
@@ -1196,7 +1196,7 @@ static int snmp_translate(struct nf_conn
|
|
|
|
if (!snmp_parse_mangle((unsigned char *)udph + sizeof(struct udphdr),
|
|
paylen, &map, &udph->check)) {
|
|
- net_warn_ratelimited("bsalg: parser failed\n");
|
|
+ nf_ct_helper_log(skb, ct, "parser failed\n");
|
|
return NF_DROP;
|
|
}
|
|
return NF_ACCEPT;
|
|
@@ -1230,13 +1230,14 @@ static int help(struct sk_buff *skb, uns
|
|
* can mess around with the payload.
|
|
*/
|
|
if (ntohs(udph->len) != skb->len - (iph->ihl << 2)) {
|
|
- net_warn_ratelimited("SNMP: dropping malformed packet src=%pI4 dst=%pI4\n",
|
|
- &iph->saddr, &iph->daddr);
|
|
- return NF_DROP;
|
|
+ nf_ct_helper_log(skb, ct, "dropping malformed packet\n");
|
|
+ return NF_DROP;;
|
|
}
|
|
|
|
- if (!skb_make_writable(skb, skb->len))
|
|
- return NF_DROP;
|
|
+ if (!skb_make_writable(skb, skb->len)) {
|
|
+ nf_ct_helper_log(skb, ct, "cannot mangle packet");
|
|
+ return NF_DROP;
|
|
+ }
|
|
|
|
spin_lock_bh(&snmp_lock);
|
|
ret = snmp_translate(ct, ctinfo, skb);
|