Hi, patch commited to meta-data branch.
Alexander Malysh wrote: > Hi again, > > seems the fix is also really simple :) Please try attached patch. > > Giulio Harding wrote: > >> Ok, I've just reproduced Kyriacos' problem - it seems to be an issue >> with MT HTTP POST with the TLV HTTP header set. >> >> This is Kannel from the meta_data branch, with a couple of site- >> specific patches (though they shouldn't have any effect - I get the >> same results as Kyriacos does, and he's not using our patches) >> >> Kannel bearerbox version `cvs-20080121'. Build `Jan 24 2008 >> 20:04:12', compiler `3.4.6 20060404 (Red Hat 3.4.6-9)'. System Linux, >> release 2.6.9-67.plus.c4smp, version #1 SMP Mon Nov 26 17:09:43 EST >> 2007, machine i686. Hostname kang.adl.mnetcorporation.com, IP >> 10.0.0.25. Libxml version 2.6.16. Using OpenSSL 0.9.7a Feb 19 2003. >> Using native malloc. >> >> I'm using Kyriacos' mblox TLV configuration (see his post on 27 >> November 2007) >> >> Using the following POST (run with php from commandline) >> >> <?php >> >> $post="POST /cgi-bin/sendsms HTTP/1.1 >> Host: localhost:13189 >> X-Kannel-Username: xxx >> X-Kannel-Password: xxx >> X-Kannel-SMSC: mbloxdirectplus >> X-Kannel-From: test >> X-Kannel-To: xxx >> X-Kannel-DLR-Mask: 31 >> X-Kannel-DLR-Url: http://127.0.0.1/dlr?smsc-id=%i&status=%d&answer=% >> A&to=%P&from=%p&ts=%t&o=%o&I=%I >> X-Kannel-Meta-Data: ?smpp?MBbilling=0&MBoperator=50503 >> Content-Type: text/plain >> Content-Length: 74 >> >> let me know if you are still there now though cause i was hoping you >> were. >> >> "; >> >> $h=fsockopen('localhost','13189'); >> stream_set_timeout($h, 1); >> fwrite($h,$post); >> for($a=0,$r='';!$a;){ >> $b=fread($h,1024); >> $r.=$b; >> $a=(($b=='')?1:0); >> } >> fclose($h); >> $c=$c+1; >> >> ?> >> >> If the POST is made with X-Kannel-Meta-Data present, smsbox panics >> like so: >> >> ... >> 2008-01-24 23:30:20 [6178] [3] INFO: smsbox: Got HTTP request </cgi- >> bin/sendsms> from <127.0.0.1> >> 2008-01-24 23:30:20 [6178] [3] INFO: sendsms used by <xxx> >> 2008-01-24 23:30:20 [6178] [3] INFO: sendsms sender:<xxx:test> >> (127.0.0.1) to:<xxx> msg:<let me know if you are still there now >> though cause i was hoping you were.> >> 2008-01-24 23:30:20 [6178] [3] DEBUG: Stored UUID afd59b9f-5771-496d- >> bc02-66151ef95e6d >> 2008-01-24 23:30:20 [6178] [3] DEBUG: message length 74, sending 1 >> messages >> 2008-01-24 23:30:20 [6178] [3] PANIC: gwlib/octstr.c:2491: >> seems_valid_real: Assertion `ostr->data[ostr->len] == '\0'' failed. >> (Called from gwlib/octstr.c:324:octstr_destroy.) >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox(gw_panic >> +0x9e) [0x8080632] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox >> [0x8081314] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox >> (octstr_destroy+0x25) [0x80819d9] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox >> [0x80597e5] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox >> [0x805a14d] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /opt/kannel/sbin/smsbox >> [0x807805b] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /lib/tls/libpthread.so.0 >> [0x9cf3cc] >> 2008-01-24 23:30:20 [6178] [3] PANIC: /lib/tls/libc.so.6(__clone >> +0x5e) [0x7391ae] >> >> If the POST is made with X-Kannel-Meta-Data removed, everything works >> fine. >> >> MTs sent via GET with meta-data parameter included work fine. >> >> Amongst the many tests that Kyriacos and I have done, we saw some >> different behaviour, including smsbox crashing with nothing output to >> its log (it just disappears!), to different panics, like this one >> that Kyriacos sent a little earlier: >> >> 6454403-2008-01-22 12:56:25 [11220] [3] INFO: sendsms sender:<test: >> 44777> (10.10.3.27) to:<xxx> msg:<SMART Plan Subscription: $9.99 per >> month for 100 credits. Send Y to accept, STOP to end, for help txt >> HELP or 1-888-218-4144 T&C + More at www.SmartLogos.tv> >> 6454663-2008-01-22 12:56:25 [11220] [3] DEBUG: Stored UUID ebb82188- >> da6c-449a-9b42-11dc143d748a >> 6454751-2008-01-22 12:56:25 [11220] [3] DEBUG: message length 157, >> sending 1 messages >> 6454829-2008-01-22 12:56:25 [11220] [3] ERROR: Start marker was >> damaged for area 0xe5d2b08 >> 6454912-2008-01-22 12:56:25 [11220] [3] ERROR: Could not find area >> information. >> 6454984:2008-01-22 12:56:25 [11220] [3] PANIC: gwlib/octstr.c:2472: >> seems_valid_real: Assertion `gw_check_is_allocated(ostr)' failed. >> (Called from gwlib/octstr.c:324:octstr_destroy.) >> 6455159:2008-01-22 12:56:25 [11220] [3] PANIC: /usr/local/sbin/smsbox >> (gw_panic+0xdc) [0x808ae9c] >> 6455248:2008-01-22 12:56:25 [11220] [3] PANIC: /usr/local/sbin/smsbox >> [0x808b628] >> 6455322:2008-01-22 12:56:25 [11220] [3] PANIC: /usr/local/sbin/smsbox >> (octstr_destroy+0x26) [0x808dc46] >> 6455417:2008-01-22 12:56:25 [11220] [3] PANIC: /usr/local/sbin/smsbox >> [0x8059493] >> 6455491:2008-01-22 12:56:25 [11220] [3] PANIC: /usr/local/sbin/smsbox >> [0x8080b6e] >> 6455565:2008-01-22 12:56:25 [11220] [3] PANIC: /lib/tls/i686/cmov/ >> libpthread.so.0 [0xb7ed8240] >> 6455652:2008-01-22 12:56:25 [11220] [3] PANIC: /lib/tls/i686/cmov/ >> libc.so.6(__clone+0x5e) [0xb7d533de] >> >> Hope this is enough information to track down the bug! Unfortunately, >> I'm still not up to scratch with tracing execution in GDB, so I can't >> quite track down where those bad octstr_destroys are being called >> from :( >> >> Thanks, >> >> >> On 23/01/2008, at 9:42 PM, Kyriacos Sakkas wrote: >> >>> >>> >>> Founf some PANIC lines is smsbox.log >>> >>> >>> >>> >>> Kyriacos Sakkas wrote: >>>> My stability issues are in HTTP in both directions it would seem. >>>> I get >>>> no detailed error messages but it appears that smsbox dies after >>>> either >>>> forwarding more than 2-3 MOs to my app, or after it receives more >>>> than >>>> 2-3 MTs from my app. It then gets regenerated, but seems unable to >>>> talk >>>> properly to bearerbox. Unfortunately the logs show nearly nothing >>>> so I >>>> do not have something more detailed to share. >>>> >>>> Do you have another way of reading custom TLV values from DLR >>>> messages? >>>> The only thing I know that does it is the meta-data patches, and I >>>> need >>>> to have that functionality urgently, so for me there seems to be no >>>> other option, than to get it to work. >>>> >>>> Kyriacos >> >> -- >> Giulio Harding >> Systems Administrator >> >> m.Net Corporation >> Level 2, 8 Leigh Street >> Adelaide SA 5000, Australia >> >> Tel: +61 8 8210 2041 >> Fax: +61 8 8211 9620 >> Mobile: 0432 876 733 >> Yahoo: giulio.harding >> MSN: [EMAIL PROTECTED] >> >> http://www.mnetcorporation.com > -- Thanks, Alex
