Folks,
There is a bug in ser, which results in different hashes to be generated if some of the fields participating in hash generation has extra spaces before value in reply that were not present in request, i.e.:
request: From: vasia_pupkin@1.2.3.4
reply: From: vasia_pupkin@1.2.3.4
This leads to matching failure and as a result causes useless retransmition, if tm module is used. For example, Vovida's SIP stack is found to be guilty in inserting extra spaces into reply's headers (which isn't really prohibited by the RFC).
Attached little patch should fix the problem. It would be nice to have it integrated into the next release.
Thanks!
-Maxim
It's already changed on CVS -- hdr->body points to body beginning, whatever LWS are ahead of it.
-jiri
At 09:01 PM 2/9/2003, jh@lohi.eng.song.fi wrote:
Maxim Sobolev writes:
Attached little patch should fix the problem. It would be nice to have it integrated into the next release.
i think it would be better to fix the parser so that it would delete leading white space from headers.
-- juha
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Jiri Kuthan http://iptel.org/~jiri/
At 08:36 PM 2/9/2003, Maxim Sobolev wrote:
Folks,
There is a bug in ser, which results in different hashes to be generated if some of the fields participating in hash generation has extra spaces before value in reply that were not present in request, i.e.:
request: From: vasia_pupkin@1.2.3.4
reply: From: vasia_pupkin@1.2.3.4
This leads to matching failure and as a result causes useless retransmition, if tm module is used.
I guess that if there is a reply-matching failure, it has some other reason. Reply matching is based on value of topmost branch in Via and does not depend on From. Hash calculation is only used for request processing.
For example, Vovida's SIP stack is found to be guilty in inserting extra spaces into reply's headers (which isn't really prohibited by the RFC).
Attached little patch should fix the problem. It would be nice to have it integrated into the next release.
Parser in the next release is changed to set hdr->body to its real beginning and skip LWS. (on CVS now) Nevertheless, I guess that is not related to the issue you observed.
-Jiri