iptables compatiablity
New iptables 1.4.0 has some library names changed from libipt to libxt. It is prefferable also to open libxt_ first, as newer "style". Signed-off-by: Denys Fedoryshchenko <nuclearcat@nuclearcat.com> Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
This commit is contained in:
parent
eeee367d91
commit
53c017880b
24
tc/m_ipt.c
24
tc/m_ipt.c
|
|
@ -68,6 +68,13 @@ register_target(struct iptables_target *me)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
xtables_register_target(struct iptables_target *me)
|
||||||
|
{
|
||||||
|
me->next = t_list;
|
||||||
|
t_list = me;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
exit_tryhelp(int status)
|
exit_tryhelp(int status)
|
||||||
{
|
{
|
||||||
|
|
@ -248,11 +255,24 @@ get_target_name(const char *name)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sprintf(path, "%s/libipt_%s.so",lib_dir, new_name);
|
/* try libxt_xx first */
|
||||||
|
sprintf(path, "%s/libxt_%s.so", lib_dir, new_name);
|
||||||
handle = dlopen(path, RTLD_LAZY);
|
handle = dlopen(path, RTLD_LAZY);
|
||||||
if (!handle) {
|
if (!handle) {
|
||||||
sprintf(path, lib_dir, "/libipt_%s.so", lname);
|
/* try libipt_xx next */
|
||||||
|
sprintf(path, "%s/libipt_%s.so", lib_dir, new_name);
|
||||||
handle = dlopen(path, RTLD_LAZY);
|
handle = dlopen(path, RTLD_LAZY);
|
||||||
|
|
||||||
|
if (!handle) {
|
||||||
|
sprintf(path, "%s/libxt_%s.so", lib_dir , lname);
|
||||||
|
handle = dlopen(path, RTLD_LAZY);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!handle) {
|
||||||
|
sprintf(path, "%s/libipt_%s.so", lib_dir , lname);
|
||||||
|
handle = dlopen(path, RTLD_LAZY);
|
||||||
|
}
|
||||||
|
/* ok, lets give up .. */
|
||||||
if (!handle) {
|
if (!handle) {
|
||||||
fputs(dlerror(), stderr);
|
fputs(dlerror(), stderr);
|
||||||
printf("\n");
|
printf("\n");
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue