Hello again, HA! I was doing something incorrectly! I have corrected test and have the simple multipart and multipart from the problematic message parsing okay. So. I am off to look for problem higher up. James. On 7 February 2014 11:16, James Coleman <james.coleman at openmindnetworks.com>wrote: > Hello, > > I have been looking into pjsip handling of multipart. > I have added tests in multipart_test.c and msg_err_test.c. > > 1. > > The multipart_test originally has one test in it. > That test multipart contains 4 parts with boundary "12345" and the last > part has a nested multipart with 2 parts with boundary "6789". > The message I have problem with is much simpler; it contains 2 parts with > boundary "boundary1". > I cannot get any form of simpler message to work. > In fact if I edit a Body or subbody Epilogue/Prolog of the original test > then the test fails!? > > e.g. quite simple: > > { > /* Content-type */ > "multipart", "mixed", "12345", > > /* Body: */ > "\r\n" > "--12345\r\n" > "Content-Type: my/text\r\n" > "\r\n" > "Header and body\r\n" > "--12345\r\n" > "Content-Type: my/text\r\n" > "\r\n" > "Header and body again\r\n" > "--12345--", > > &verify1 > }, > The test fails with that. Test outputs: > 11:09:51.858 err: verify_part rc=-20 > 11:09:51.858 ..ERROR(-240) > > Should the multipart_test handle that okay? > > 2. > > For the INVITE below the msg_err_test doesn't parse it. > If the lines between the first Content-Type: and the following > Content-Length: are removed then parse test works. > (i.e. the Subject:, Contribution-ID:, Proxy-Authorization: lines) > > > I'd appreciate it if anyone with experience with pjsip and multipart > messages could comment. > I'm just getting familiar with pjsip so I could be doing something > incorrectly. > > Thanks! > > James. > > > On 5 February 2014 19:29, James Coleman < > james.coleman at openmindnetworks.com> wrote: > >> Hello, >> >> I have an INVITE with multipart content which is causing some trouble. >> INVITE comes to clearwater IMS which uses pjsip. >> Getting a core dump in sip_multipart.c:multipart_clone_data >> >> >> I have added a chunk from our INVITE to pjsip-test multipart. >> It doesn't like that. "..ERROR(-200)" and "Peak memory size=40 MB" >> >> I have also added a simpler multipart to pjsip-test from this old problem >> report: >> http://trac.pjsip.org/repos/ticket/1070 >> It doesn't like that either. >> >> Am I doing something wrong here? >> Perhaps someone with pjsip lib experience can say if I'm doing something >> silly! >> Please see attached patch. >> svn diff pjsip/src/test/multipart_test.c >multipart_test_add_INVITE.patch >> >> Hmmm, if I build latest svn trunk pjsip then make pjsip-test doesn't >> result in multipart tests running ? >> I'd appreciate any help! :-7 >> >> Thanks! >> >> James. >> >> >> The INVITE from clearwater bono log: (with some munging of host and phone >> numbers) >> >> 04-02-2014 12:45:17.017 Verbose pjsip: tcps0x7f73b40d TCP connection >> closed >> 04-02-2014 12:45:17.017 Verbose pjsip: tcps0x7f73b40d TCP transport >> destroyed with reason 70016: End of file (PJ_EEOF) >> 04-02-2014 12:45:26.726 Verbose stack.cpp:200: RX 2169 bytes Request msg >> INVITE/cseq=1 (rdata0x7f73b4092a98) from UDP 88.888.888.888:16399: >> --start msg-- >> >> INVITE sip:+888888888888 at openims.test;user=phone SIP/2.0^M >> Call-ID: 7rn78PURzC at 888.888.888.888^M >> CSeq: 1 INVITE^M >> From: <sip:+888889999999@xxxxxxxxxxxx>;tag=Bsn78PUSzC^M >> To: <sip:+888888888888 at openims.test;user=phone>^M >> Via: SIP/2.0/UDP >> 888.888.888.888:5060;branch=z9hG4bK89c6df1ba8b54f300f0400b952d16259353036;rport^M >> Max-Forwards: 70^M >> Contact: <sip:+888889999999 at 888.888.888.888 >> :5060;transport=udp>;+sip.instance="<urn:uuid:ee388fc4-f9e1-3dd6-90d8-48c2947787fb>";+g.oma.sip-im;+g.3gpp.iari-ref="urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.geopush"^M >> Accept-Contact: >> *;+g.oma.sip-im;+g.3gpp.iari-ref="urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.geopush"^M >> Allow: INVITE,UPDATE,ACK,CANCEL,BYE,NOTIFY,OPTIONS,MESSAGE,REFER^M >> Route: >> <sip:888.88.88.88:5060;transport=udp;lr>,<sip:888-88-88-88:5054;transport=tcp;lr;orig>^M >> P-Preferred-Identity: <sip:+888889999999 at openims.test>^M >> User-Agent: IM-client/OMA1.0 Neusoft-Silta-RCSe-client/2.0.1344.33_TR^M >> Content-Type: multipart/mixed;boundary=boundary1^M >> Subject: Amazeballs or ?^M >> Contribution-ID: d9d5ea4a46d8e0180393a3e7cd0cdda2^M >> Proxy-Authorization: Digest username="+888889999999 at openims.test >> ",uri="sip:+888888888888 at openims.test >> ;user=phone",algorithm=MD5,realm="openims.test",nc=00000002,nonce="6728054437e0f19d",response="f7b30628a50eff6cfff1cbf4441b25cb",cnonce="1391517852372",qop=auth^M >> Content-Length: 791^M >> ^M >> --boundary1^M >> Content-Type: application/sdp^M >> Content-Length: 343^M >> ^M >> v=0^M >> o=- 3600506724 3600506724 IN IP4 888.888.888.888^M >> s=-^M >> c=IN IP4 888.888.888.888^M >> t=0 0^M >> m=message 9 TCP/MSRP *^M >> a=path:msrp://888.888.888.888:7777/1391517924073;tcp^M >> a=setup:active^M >> a=accept-types:message/cpim application/im-iscomposing+xml^M >> a=accept-wrapped-types:text/plain message/imdn+xml >> application/rcspushlocation+xml^M >> a=sendrecv^M >> ^M >> --boundary1^M >> Content-Type: message/cpim^M >> Content-Length: 300^M >> ^M >> From: <sip:anonymous@anonymous.invalid>^M >> To: <sip:anonymous at anonymous.invalid>^M >> NS: imdn <urn:ietf:params:imdn>^M >> imdn.Message-ID: Msg6rn78PUQzC^M >> DateTime: 2014-02-04T12:45:24.000Z^M >> imdn.Disposition-Notification: positive-delivery, display^M >> ^M >> Content-type: text/plain; charset=utf-8^M >> ^M >> Amazeballs or ?^M >> --boundary1-- >> >> >> > -- <http://openmindnetworks.com/mobile-operators> <http://www.linkedin.com/company/76647?trk=fc_badge> openmindnetworks.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20140207/0ec2b789/attachment-0001.html>