Branch: refs/heads/3.4 Home: https://github.com/OpenSIPS/opensips Commit: e4236b5786b8e1d5468132b8f66dfba02883b02f https://github.com/OpenSIPS/opensips/commit/e4236b5786b8e1d5468132b8f66dfba02883b02f Author: Bogdan-Andrei Iancu <bog...@opensips.org> Date: 2023-09-14 (Thu, 14 Sep 2023)
Changed paths: M modules/b2b_entities/dlg.c Log Message: ----------- [b2b_entities] Proper handling of overlaping transactions As per RFC3261, Section 14.2 : A UAS that receives a second INVITE before it sends the final response to a first INVITE with a lower CSeq sequence number on the same dialog MUST return a 500 (Server Internal Error) response to the second INVITE and MUST include a Retry-After header field with a randomly chosen value of between 0 and 10 seconds. A UAS that receives an INVITE on a dialog while an INVITE it had sent on that dialog is in progress MUST return a 491 (Request Pending) response to the received INVITE. Changes: * 491 is now generated when receiving a request while already having an outbound one - the old code was generating 491 upon receiving a request while having another INCOMING one :-/ * generate the 500 reply when receiving a new request while handing another incoming one. (cherry picked from commit c4032f94f3993d1b62a0483eaae3ac0bd6c7c358) _______________________________________________ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel