iptables: improve iptables listing output of xt_id match
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 24 Jan 2016 18:01:40 +0000 (18:01 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 24 Jan 2016 18:01:40 +0000 (18:01 +0000)
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 48478

package/network/utils/iptables/Makefile
package/network/utils/iptables/patches/500-add-xt_id-match.patch

index e5bca40c7ee7464514e35f4568026c18319245b3..1c1a6842ba36420372017702e6d305660b53970f 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2006-2013 OpenWrt.org
+# Copyright (C) 2006-2016 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=iptables
 PKG_VERSION:=1.4.21
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://www.netfilter.org/projects/iptables/files \
index 94762f0ab7ab7e2a12241012b2eb31123ffbf1d4..0964f0175f1d6b8e2c067d20840a25547ffddadd 100644 (file)
@@ -1,6 +1,6 @@
 --- /dev/null
 +++ b/extensions/libxt_id.c
-@@ -0,0 +1,45 @@
+@@ -0,0 +1,55 @@
 +/* Shared library add-on to iptables to add id match support. */
 +
 +#include <stdio.h>
 +      XTOPT_TABLEEND,
 +};
 +
++static void
++id_print(const void *ip, const struct xt_entry_match *match, int numeric)
++{
++      struct xt_id_info *idinfo = (void *)match->data;
++
++      printf(" ID:%08lx", idinfo->id);
++}
++
++
 +/* Saves the union ipt_matchinfo in parsable form to stdout. */
 +static void
 +id_save(const void *ip, const struct xt_entry_match *match)
 +{
 +      struct xt_id_info *idinfo = (void *)match->data;
 +
-+      printf(" --id %lu", idinfo->id);
++      printf(" --id 0x%lx", idinfo->id);
 +}
 +
 +static struct xtables_match id_match = {
@@ -37,6 +46,7 @@
 +      .version        = XTABLES_VERSION,
 +      .size           = XT_ALIGN(sizeof(struct xt_id_info)),
 +      .userspacesize  = XT_ALIGN(sizeof(struct xt_id_info)),
++      .print          = id_print,
 +      .save           = id_save,
 +      .x6_parse       = xtables_option_parse,
 +      .x6_options     = id_opts,