My experience is the following:
Line 109 in t_msgbuilder.c:
len += USER_AGENT_LEN + CRLF_LEN; ==> ser crashes when I send the special invite!
*len += USER_AGENT_LEN + CRLF_LEN; ==> ser doesn't crash but logs this in /val/log/messages: Feb 6 15:48:24 obelix /usr/local/sbin/ser[6985]: ERROR: t_build_and_send_CANCEL: cannot allocate memory
hope my explanation is a little bit clearer now: i also downloaded ftp://ftp.berlios.de/pub/ser/0.8.10/src/ser-0.8.10_src.tar.gz and this tarball contains: *len += USER_AGENT_LEN + CRLF_LEN;
regards, klaus
-----Original Message----- From: Jan Janak [mailto:J.Janak@sh.cvut.cz] Sent: Thursday, February 06, 2003 4:19 PM To: Klaus Darilion Cc: serusers@lists.iptel.org Subject: Re: [Serusers] ser crashes
Hello,
On 06-02 16:02, Klaus Darilion wrote:
Thank you, the path to the modules was the problem!
Now ser runs also as self compiled version and doesnt
crash. I didn't
had to change the source because the source code available
to download
is already corrected. To proof your guess I inserted the
error again (
len+=) and than it crashes again.
ser-0.8.10_src.tar.gz has this bug too.
Conclusion: with the source code version from 0.8.10 ser
doesn't crash
anymore. Nevertheless, /var/log/messages shows an error
message when I
send my special invite:
Feb 6 15:48:24 obelix /usr/local/sbin/ser[6985]: ERROR: t_build_and_send_CANCEL: cannot allocate memory
That's the bug I told you about, AFAIK it is caused by the missing dereference operator in t_msgbuilder.c. See my previous email for description how to fix it. (rewrite len+= to *len+=, recompile and reinstall).
regards, Jan.
On 06-02 16:25, Klaus Darilion wrote:
My experience is the following:
Line 109 in t_msgbuilder.c:
len += USER_AGENT_LEN + CRLF_LEN;
==> ser crashes when I send the special invite!
*len += USER_AGENT_LEN + CRLF_LEN;
==> ser doesn't crash but logs this in /val/log/messages: Feb 6 15:48:24 obelix /usr/local/sbin/ser[6985]: ERROR: t_build_and_send_CANCEL: cannot allocate memory
hope my explanation is a little bit clearer now: i also downloaded ftp://ftp.berlios.de/pub/ser/0.8.10/src/ser-0.8.10_src.tar.gz and this tarball contains: *len += USER_AGENT_LEN + CRLF_LEN;
That's another line, look at line 103:
len+=((hdr->body.s+hdr->body.len ) - hdr->name.s ) + CRLF_LEN; This should be changed to:
*len+=((hdr->body.s+hdr->body.len ) - hdr->name.s ) + CRLF_LEN; regards, Jan.