summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@medozas.de>2010-06-07 12:00:24 +0200
committerJan Engelhardt <jengelh@medozas.de>2010-06-07 12:00:24 +0200
commit11c2dd54b69e06ae3f35dea130ecba3df3859243 (patch)
tree7be48a673e07551b1d38dbbf0fef157d8753d2ff
parent0cb675b8f18c4b074d4c69461638820708e98100 (diff)
xtables: remove xtables_set_revision function
Since iptables uses its own copies of the header files anyway where the revision field is exposed, there is no reach to access name[] beyond its size. Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
-rw-r--r--configure.ac2
-rw-r--r--include/xtables.h.in1
-rw-r--r--ip6tables.c8
-rw-r--r--iptables.c11
-rw-r--r--xtables.c8
5 files changed, 8 insertions, 22 deletions
diff --git a/configure.ac b/configure.ac
index ba723bf3..dd74a895 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@
AC_INIT([iptables], [1.4.8])
# See libtool.info "Libtool's versioning system"
-libxtables_vcurrent=4
+libxtables_vcurrent=5
libxtables_vage=0
AC_CONFIG_HEADERS([config.h])
diff --git a/include/xtables.h.in b/include/xtables.h.in
index 788ad7de..2d7df322 100644
--- a/include/xtables.h.in
+++ b/include/xtables.h.in
@@ -216,7 +216,6 @@ extern void *xtables_realloc(void *, size_t);
extern int xtables_insmod(const char *, const char *, bool);
extern int xtables_load_ko(const char *, bool);
extern int xtables_set_params(struct xtables_globals *xtp);
-extern void xtables_set_revision(char *name, u_int8_t revision);
extern void xtables_free_opts(int reset_offset);
extern struct option *xtables_merge_options(struct option *oldopts,
const struct option *newopts, unsigned int *option_offset);
diff --git a/ip6tables.c b/ip6tables.c
index 2fff21bf..6c5d124c 100644
--- a/ip6tables.c
+++ b/ip6tables.c
@@ -1558,8 +1558,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
target->t = xtables_calloc(1, size);
target->t->u.target_size = size;
strcpy(target->t->u.user.name, jumpto);
- xtables_set_revision(target->t->u.user.name,
- target->revision);
+ target->t->u.user.revision = target->revision;
if (target->init != NULL)
target->init(target->t);
opts = xtables_merge_options(opts,
@@ -1611,7 +1610,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
m->m = xtables_calloc(1, size);
m->m->u.match_size = size;
strcpy(m->m->u.user.name, m->name);
- xtables_set_revision(m->m->u.user.name, m->revision);
+ m->m->u.user.revision = m->revision;
if (m->init != NULL)
m->init(m->m);
if (m != m->next)
@@ -1759,8 +1758,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
m->m = xtables_calloc(1, size);
m->m->u.match_size = size;
strcpy(m->m->u.user.name, m->name);
- xtables_set_revision(m->m->u.user.name,
- m->revision);
+ m->m->u.user.revision = m->revision;
if (m->init != NULL)
m->init(m->m);
diff --git a/iptables.c b/iptables.c
index efe993e1..19f6d4fe 100644
--- a/iptables.c
+++ b/iptables.c
@@ -1573,8 +1573,7 @@ int do_command(int argc, char *argv[], char **table, struct iptc_handle **handle
target->t = xtables_calloc(1, size);
target->t->u.target_size = size;
strcpy(target->t->u.user.name, jumpto);
- xtables_set_revision(target->t->u.user.name,
- target->revision);
+ target->t->u.user.revision = target->revision;
if (target->init != NULL)
target->init(target->t);
opts = xtables_merge_options(opts,
@@ -1632,7 +1631,7 @@ int do_command(int argc, char *argv[], char **table, struct iptc_handle **handle
m->m = xtables_calloc(1, size);
m->m->u.match_size = size;
strcpy(m->m->u.user.name, m->name);
- xtables_set_revision(m->m->u.user.name, m->revision);
+ m->m->u.user.revision = m->revision;
if (m->init != NULL)
m->init(m->m);
if (m != m->next) {
@@ -1787,8 +1786,7 @@ int do_command(int argc, char *argv[], char **table, struct iptc_handle **handle
m->m = xtables_calloc(1, size);
m->m->u.match_size = size;
strcpy(m->m->u.user.name, m->name);
- xtables_set_revision(m->m->u.user.name,
- m->revision);
+ m->m->u.user.revision = m->revision;
if (m->init != NULL)
m->init(m->m);
@@ -1947,8 +1945,7 @@ int do_command(int argc, char *argv[], char **table, struct iptc_handle **handle
target->t->u.target_size = size;
strcpy(target->t->u.user.name, jumpto);
if (!iptc_is_chain(jumpto, *handle))
- xtables_set_revision(target->t->u.user.name,
- target->revision);
+ target->t->u.user.revision = target->revision;
if (target->init != NULL)
target->init(target->t);
}
diff --git a/xtables.c b/xtables.c
index b4c4f6b3..ed082f3f 100644
--- a/xtables.c
+++ b/xtables.c
@@ -114,14 +114,6 @@ struct option *xtables_merge_options(struct option *oldopts,
return merge;
}
-void xtables_set_revision(char *name, u_int8_t revision)
-{
- /* Old kernel sources don't have ".revision" field,
- * but we stole a byte from name. */
- name[XT_FUNCTION_MAXNAMELEN - 2] = '\0';
- name[XT_FUNCTION_MAXNAMELEN - 1] = revision;
-}
-
/**
* xtables_afinfo - protocol family dependent information
* @kmod: kernel module basename (e.g. "ip_tables")