Package: ffproxy Version: 1.6-12.1 Severity: serious Tags: patch X-Debbugs-Cc: Chris Hofstaedtler <z...@debian.org>
Hi! We just noticed segfaults while running ffproxy on our lab systems, when we have DNS resolve issues (say a bogus entry from /etc/resolv.conf). While debugging this I realized the original fix for the type change was wrong, so my fix was subsequently also wrong. The attached patch against the unpacked source should fix the type mismatch and fixes the segfaults for us. Thanks, Guillem
diff --git c/debian/patches/08_fix_variables_declaration_conflicts i/debian/patches/08_fix_variables_declaration_conflicts index c179c56..93b7bfc 100644 --- c/debian/patches/08_fix_variables_declaration_conflicts +++ i/debian/patches/08_fix_variables_declaration_conflicts @@ -1,8 +1,10 @@ Description: Fix conflicting declarations of some variables -Author: Emmanuel Bouthenot <kol...@debian.org> +Author: Guillem Jover <gjo...@sipwise.com> Bug-Debian: https://bugs.debian.org/688462 +Bug-Debian: https://bugs.debian.org/1074954 +Origin: vendor Forwarded: no -Last-Update: 2019-02-18 +Last-Update: 2024-11-26 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ --- a/dbs.h @@ -17,9 +19,36 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ -extern char *e_post; -extern char *e_fil; -extern char *e_nic; -+extern struct msg *e_inv; -+extern struct msg *e_res; -+extern struct msg *e_con; -+extern struct msg *e_post; -+extern struct msg *e_fil; -+extern struct msg *e_nic; ++extern struct msg e_inv; ++extern struct msg e_res; ++extern struct msg e_con; ++extern struct msg e_post; ++extern struct msg e_fil; ++extern struct msg e_nic; +--- a/msg.c ++++ b/msg.c +@@ -46,19 +46,19 @@ err_msg(int s, struct req * r, int m) + + switch (m) { + case E_INV: +- p = e_inv; ++ p = e_inv.c; + break; + case E_RES: +- p = e_res; ++ p = e_res.c; + break; + case E_CON: +- p = e_con; ++ p = e_con.c; + break; + case E_POST: +- p = e_post; ++ p = e_post.c; + break; + case E_FIL: +- p = e_fil; ++ p = e_fil.c; + break; + } + diff --git c/debian/patches/fix-incompat-ptr-types.patch i/debian/patches/fix-incompat-ptr-types.patch deleted file mode 100644 index 42f3f48..0000000 --- c/debian/patches/fix-incompat-ptr-types.patch +++ /dev/null @@ -1,40 +0,0 @@ -Author: Guillem Jover <gjo...@sipwise.com> -Description: Fix incompatible pointer type asssignment - We cannot assign a struct into a char *, even if the first member is a char *. - Instead assign that member into the variable. -Origin: vendor -Bug-Debian: https://bugs.debian.org/1074954 -Forwarded: no -Last-Update: 2024-09-16 - ---- - msg.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - ---- a/msg.c -+++ b/msg.c -@@ -46,19 +46,19 @@ err_msg(int s, struct req * r, int m) - - switch (m) { - case E_INV: -- p = e_inv; -+ p = e_inv->c; - break; - case E_RES: -- p = e_res; -+ p = e_res->c; - break; - case E_CON: -- p = e_con; -+ p = e_con->c; - break; - case E_POST: -- p = e_post; -+ p = e_post->c; - break; - case E_FIL: -- p = e_fil; -+ p = e_fil->c; - break; - } - diff --git c/debian/patches/series i/debian/patches/series index 983d3b6..1da3530 100644 --- c/debian/patches/series +++ i/debian/patches/series @@ -7,4 +7,3 @@ 06_handle-multibytes-headers 07_fix_segfault_syslog_logrequests 08_fix_variables_declaration_conflicts -fix-incompat-ptr-types.patch