Package: ipac-ng Version: 1.31-4 Severity: grave
I've attached a patch (this is the "modified" diff from the original source distribution) to fix an issue with ipac-ng when trying to use accounting that involves ports(with tcp and/or udp). Currently ipac-ng is broken as it cannot deal with ports due to a library load issue. This cropped up as a result of the sarge to etch upgrade and appears to be related to the change in the iptables libraries.
The summary of the change is the use of RTLD_LAZY instead of RTLD_NOW in the ipac-ng-1.31/agents/iptables/iptables.c file.
There are two references and I've changed them both to use LAZY. I've actually modified the sf1193721.dpatch file in debian/patches/ as this is the file that really fixes a bunch of other issues as well.
Without this fix, ipac-ng is completely broken and will _NOT_ even start if your config file has port matches for udp/tcp protocols.
This patch fixes the issue and ipac-ng runs perfectly for me (as it used to on sarge).
Please incorporate this (this exact fix can also be backported to the 1.27-5 branch in case 1.31-4 cannot be bumped into stable, which I think should happen!).
The attached diff can be diffed with the previous diff from the source to get the exact changes I've made. Hopefully they are self explanatory.
They are: ########################### $zdiff ipac-ng_1.31-4.diff.gz ipac-ng_1.31-4.diff.gz-ORIG 698c698 < @@ -0,0 +1,4847 @@ ---
@@ -0,0 +1,4845 @@
947,948c947 < +- if (dlopen(path, RTLD_NOW)) { < ++ if (dlopen(path, RTLD_LAZY)) { ---
+ if (dlopen(path, RTLD_NOW)) {
1071,1072c1070 < +- if (dlopen(path, RTLD_NOW)) { < ++ if (dlopen(path, RTLD_LAZY)) { ---
+ if (dlopen(path, RTLD_NOW)) {
########################### Please forward this upstream. Thanks. Narayanan.
ipac-ng_1.31-4.diff.gz
Description: ipac-ng patch (diff modification)