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.

Attachment: ipac-ng_1.31-4.diff.gz
Description: ipac-ng patch (diff modification)

Reply via email to