]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/netfilter/xt_dscp.c
netfilter: xtables: slightly better error reporting
[net-next-2.6.git] / net / netfilter / xt_dscp.c
index 0280d3a8c16172bc924f53b233c4527fe6b1e7b0..9db51fddbdb82fc24080eb2591375eadbd94c0be 100644 (file)
@@ -6,7 +6,7 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 #include <linux/module.h>
 #include <linux/skbuff.h>
 #include <linux/ip.h>
@@ -42,23 +42,23 @@ dscp_mt6(const struct sk_buff *skb, const struct xt_match_param *par)
        return (dscp == info->dscp) ^ !!info->invert;
 }
 
-static bool dscp_mt_check(const struct xt_mtchk_param *par)
+static int dscp_mt_check(const struct xt_mtchk_param *par)
 {
        const struct xt_dscp_info *info = par->matchinfo;
 
        if (info->dscp > XT_DSCP_MAX) {
-               printk(KERN_ERR "xt_dscp: dscp %x out of range\n", info->dscp);
-               return false;
+               pr_info("dscp %x out of range\n", info->dscp);
+               return -EDOM;
        }
 
-       return true;
+       return 0;
 }
 
 static bool tos_mt(const struct sk_buff *skb, const struct xt_match_param *par)
 {
        const struct xt_tos_match_info *info = par->matchinfo;
 
-       if (par->match->family == NFPROTO_IPV4)
+       if (par->family == NFPROTO_IPV4)
                return ((ip_hdr(skb)->tos & info->tos_mask) ==
                       info->tos_value) ^ !!info->invert;
        else