Cleaning out my mailbox, I found this orphaned message that might have been
overlooked (no followup and no voting). Was there a reason not to
apply this 2 line safety check?

See ya...

d.c.

**>Date: Thu, 29 Jan 2004 12:15:30 +0100
**>From: "Jakob Dalsgaard" <[EMAIL PROTECTED]>
**>To: <devel@kannel.org>
**>Subject: Patch to remove: PANIC: wap/cookies.c:349: add_cookie_to_cache:
**>     Assertion `sm -> cookies != NUL
**>
**>To Kannel Development
**>
**>I've been experiencing a panic from the wapbox saying:
**>
**>2004-01-28 15:57:07 [1059] [7] DEBUG: Caching cookie (Set-Cookie: 
**>WEBTRENDS_ID=212.99.225.2-12986640.29615535;Path=/)
**>2004-01-28 15:57:07 [1059] [7] DEBUG: get_header_value: Value 
**>(WEBTRENDS_ID=212.99.225.2-12986640.29615535;Path=/)
**>2004-01-28 15:57:07 [1059] [7] ERROR: have_cookie: Null argument(s) - no 
**>Cookie list, Cookie or both
**>2004-01-28 15:57:07 [1059] [7] PANIC: wap/cookies.c:349: 
**>add_cookie_to_cache: Assertion `sm -> cookies != NULL' failed.
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x80c33b0]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x80776ea]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x8076e92]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x8051f0a]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x8052b26]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox [0x80b8a55]
**>2004-01-28 15:57:07 [1059] [7] PANIC: /lib/i686/libpthread.so.0 [0x400a6faf]
**>2004-01-28 15:57:07 [1059] [7] PANIC: 
**>/home/SEM/opt/kannel-cvs/sbin/wapbox(__clone+0x3a) [0x420e790a]
**>
**>And since I'm about to find out where to put my header rewriting stuff, 
**>I thought I'd take a look at why I got this error first.
**>
**>It seems that, when connecting to my Tomcat Webapp, the wapbox tries to 
**>check if there is a cookie, before the WSPMachine->cookies list has been 
**>created, resulting in a fatal error when the cookie is being added. The 
**>section of code in wap-appl.c that starts all this is:
**>
**>#ifdef ENABLE_COOKIES
**>       if (session_id != -1)
**>           /* DAVI if (get_cookies(url, headers, 
**>find_session_machine_by_id(session_id)) == -1) */
**>           if (get_cookies(headers, 
**>find_session_machine_by_id(session_id)) == -1)
**>               error(0, "WSP: Failed to extract cookies");
**>#endif
**>
**>So it would seem that if the session is created (session_id != -1) then 
**>the application assumes that the session machine has a properly 
**>initialized cookies list. This is however not always the case. Perhaps 
**>the proper place to correct this would be in the create_machine function 
**>-- but a quick fix is to check if the state machine has a cookies != 
**>NULL -- whether this is correct, I do not know. Furthermore the "sm" 
**>variable has previously been initialized to contain 
**>find_session_machine_by_id(session_id); and session_id has not been 
**>changed at this point; my version is thus:
**>
**>#ifdef ENABLE_COOKIES
**>       if (session_id != -1)
**>           /* DAVI if (get_cookies(url, headers, 
**>find_session_machine_by_id(session_id)) == -1) */
**>           /* Verify that WSPMachine was found and has a cookies list */
**>           if (sm != NULL && sm -> cookies != NULL && 
**>get_cookies(headers, sm) == -1)
**>               error(0, "WSP: Failed to extract cookies");
**>#endif
**>
**>A "cvs diff -u gw/wap-appl.c" is attached to this email.
**>
**>If someone else is having these problems - this patch might help them...
**>
**>/Jakob
**>
**>-- 
**>Med venlig hilsen/Best regards
**>
**>Jakob Dalsgaard
**>
**>=================================
**>
**>Cyber Com Group A/S
**>Mail: [EMAIL PROTECTED]
**>Web:  http://www.cybercomgroup.com
**>GSM:  +45 2948 3803
**>
**>###########################################
**>
**>This message has been scanned by F-Secure Anti-Virus for Microsoft Exchange.
**>For more information, connect to http://www.F-Secure.com/

Index: gw/wap-appl.c
===================================================================
RCS file: /home/cvs/gateway/gw/wap-appl.c,v
retrieving revision 1.103
diff -u -r1.103 wap-appl.c
--- gw/wap-appl.c       22 Jan 2004 14:08:24 -0000      1.103
+++ gw/wap-appl.c       29 Jan 2004 11:12:03 -0000
@@ -823,7 +823,8 @@
 #ifdef ENABLE_COOKIES
         if (session_id != -1)
             /* DAVI if (get_cookies(url, headers, 
find_session_machine_by_id(session_id)) == -1) */
-            if (get_cookies(headers, find_session_machine_by_id(session_id)) 
== -1)
+            /* Verify that WSPMachine was found and has a cookies list */
+            if (sm != NULL && sm -> cookies != NULL && get_cookies(headers, 
sm) == -1)
                 error(0, "WSP: Failed to extract cookies");
 #endif
 

Reply via email to