From a1187fff744cf407c010fb52a482950d958dbf02 Mon Sep 17 00:00:00 2001 From: laforge Date: Mon, 6 Aug 2001 18:50:21 +0000 Subject: - added patch to support statically linking of iptables - iptables-save/-restore is no longer experimental --- ip6tables.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'ip6tables.c') diff --git a/ip6tables.c b/ip6tables.c index 2160950..2d13f3a 100644 --- a/ip6tables.c +++ b/ip6tables.c @@ -684,6 +684,7 @@ find_match(const char *name, enum ip6t_tryload tryload) break; } +#ifndef NO_SHARED_LIBS if (!ptr && tryload != DONT_LOAD) { char path[sizeof(IP6T_LIB_DIR) + sizeof("/libip6t_.so") + strlen(name)]; @@ -701,6 +702,14 @@ find_match(const char *name, enum ip6t_tryload tryload) exit_error(PARAMETER_PROBLEM, "Couldn't load match `%s'\n", name); } +#else + if (ptr && !ptr->loaded) { + if (tryload != DONT_LOAD) + ptr->loaded = 1; + else + ptr = NULL; + } +#endif if (ptr) ptr->used = 1; @@ -881,6 +890,7 @@ find_target(const char *name, enum ip6t_tryload tryload) break; } +#ifndef NO_SHARED_LIBS if (!ptr && tryload != DONT_LOAD) { char path[sizeof(IP6T_LIB_DIR) + sizeof("/libip6t_.so") + strlen(name)]; @@ -898,6 +908,14 @@ find_target(const char *name, enum ip6t_tryload tryload) "Couldn't load target `%s'%s\n", name, dlerror()); } +#else + if (ptr && !ptr->loaded) { + if (tryload != DONT_LOAD) + ptr->loaded = 1; + else + ptr = NULL; + } +#endif if (ptr) ptr->used = 1; -- cgit v1.2.3