connman: add xtables_version to fix xtables API change

After upgrade iptables to a newer version, some of its API are changed.
Therefore we add related fixes to the current connman.

Currently we don't upgrade connman since kernel.org still doesn't work
and we could not fetch the newer sources.

(From OE-Core rev: 36ae6edda4d4169c88eb3d34a090f9cd82534630)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Dongxiao Xu
2011-10-26 10:09:16 +08:00
committed by Richard Purdie
parent 0a4d877b8b
commit 2ddf05fe88
2 changed files with 66 additions and 1 deletions

View File

@@ -0,0 +1,64 @@
xtables_merge_options API change, fix its calling in connman.
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Upstream-Status: Backport
diff -ruN connman-0.75-orig//src/iptables.c connman-0.75/src/iptables.c
--- connman-0.75-orig//src/iptables.c 2011-02-22 12:16:25.000000000 +0800
+++ connman-0.75/src/iptables.c 2011-10-26 09:21:33.941164000 +0800
@@ -1089,7 +1089,11 @@
if (xt_t->init != NULL)
xt_t->init(xt_t->t);
iptables_globals.opts =
- xtables_merge_options(iptables_globals.opts,
+ xtables_merge_options(
+#if XTABLES_VERSION_CODE > 5
+ iptables_globals.orig_opts,
+#endif
+ iptables_globals.opts,
xt_t->extra_opts,
&xt_t->option_offset);
if (iptables_globals.opts == NULL)
@@ -1113,7 +1117,11 @@
xt_m->init(xt_m->m);
if (xt_m != xt_m->next) {
iptables_globals.opts =
- xtables_merge_options(iptables_globals.opts,
+ xtables_merge_options(
+#if XTABLES_VERSION_CODE > 5
+ iptables_globals.orig_opts,
+#endif
+ iptables_globals.opts,
xt_m->extra_opts,
&xt_m->option_offset);
if (iptables_globals.opts == NULL)
diff -ruN connman-0.75-orig//tools/iptables-test.c connman-0.75/tools/iptables-test.c
--- connman-0.75-orig//tools/iptables-test.c 2011-02-22 12:16:25.000000000 +0800
+++ connman-0.75/tools/iptables-test.c 2011-10-26 09:23:25.701164000 +0800
@@ -1076,7 +1076,11 @@
if (xt_t->init != NULL)
xt_t->init(xt_t->t);
connman_iptables_globals.opts =
- xtables_merge_options(connman_iptables_globals.opts,
+ xtables_merge_options(
+#if XTABLES_VERSION_CODE > 5
+ connman_iptables_globals.orig_opts,
+#endif
+ connman_iptables_globals.opts,
xt_t->extra_opts,
&xt_t->option_offset);
if (connman_iptables_globals.opts == NULL)
@@ -1102,7 +1106,11 @@
xt_m->init(xt_m->m);
if (xt_m != xt_m->next) {
connman_iptables_globals.opts =
- xtables_merge_options(connman_iptables_globals.opts,
+ xtables_merge_options(
+#if XTABLES_VERSION_CODE > 5
+ connman_iptables_globals.orig_opts,
+#endif
+ connman_iptables_globals.opts,
xt_m->extra_opts,
&xt_m->option_offset);
if (connman_iptables_globals.opts == NULL)

View File

@@ -1,5 +1,5 @@
require connman.inc
PR = "r1"
PR = "r2"
EXTRA_OECONF += "\
ac_cv_path_WPASUPPLICANT=/usr/sbin/wpa_supplicant \
@@ -21,6 +21,7 @@ EXTRA_OECONF += "\
SRC_URI = "\
${KERNELORG_MIRROR}/linux/network/connman/connman-${PV}.tar.gz \
file://add_xuser_dbus_permission.patch \
file://xtables_version.patch \
file://connman \
"