Pre-Submission Checklist

Type Of Change

Checklist:

Description

Currently, if a sip message contains multiple Contacts or just 2, let's say

Contact: <sip:bob0@example.com>;expires=3600,<sip:bob1@example.com>;expires=3600,<sip:bob2@example.com>;expires=3600
Contact: <sip:bob3@example.com>;expires=3600,<sip:bob4@example.com>;expires=3600,<sip:bob5@example.com>;expires=3600

contacts are stored in the reversed order, ie bob2, bob1,bob0 and bob5,bob4,bob3.

This can be seen with a simple config file such as:

#kamailio.cfg
...
request_route {
    ...
	xlog("L_INFO", "Contact headers: $hfl(Contact)\n");
	xlog("L_INFO", "Contact headers 0: $(hfl(Contact)[0])\n");
	xlog("L_INFO", "Contact headers 1: $(hfl(Contact)[1])\n");
	xlog("L_INFO", "Contact headers 2: $(hfl(Contact)[2])\n");
	xlog("L_INFO", "Contact headers 3: $(hfl(Contact)[3])\n");
	xlog("L_INFO", "Contact headers 4: $(hfl(Contact)[4])\n");
	xlog("L_INFO", "Contact headers 5: $(hfl(Contact)[5])\n");
	xlog("L_INFO", "Contact headers 6: $(hfl(Contact)[6])\n");
	xlog("L_INFO", "Contact headers 7: $(hfl(Contact)[7])\n");
	xlog("L_INFO", "Contact headers -1: $(hfl(Contact)[-1])\n");
	xlog("L_INFO", "Contact headers -2: $(hfl(Contact)[-2])\n");
	xlog("L_INFO", "Contact headers -3: $(hfl(Contact)[-3])\n");
	xlog("L_INFO", "Contact headers -4: $(hfl(Contact)[-4])\n");
	xlog("L_INFO", "Contact headers -5: $(hfl(Contact)[-5])\n");
	xlog("L_INFO", "Contact headers -6: $(hfl(Contact)[-6])\n");

that prints in the log all the contacts reversed:

Contact headers: <sip:bob2@example.com>;expires=3600
Contact headers 0: <sip:bob2@example.com>;expires=3600
Contact headers 1: <sip:bob1@example.com>;expires=3600
Contact headers 2: <sip:bob0@example.com>;expires=3600
Contact headers 3: <sip:bob5@example.com>;expires=3600
Contact headers 4: <sip:bob4@example.com>;expires=3600
Contact headers 5: <sip:bob3@example.com>;expires=3600
Contact headers 6: <null>
Contact headers 7: <null>
Contact headers -1: <sip:bob3@example.com>;expires=3600
Contact headers -2: <sip:bob4@example.com>;expires=3600
Contact headers -3: <sip:bob5@example.com>;expires=3600
Contact headers -4: <sip:bob0@example.com>;expires=3600
Contact headers -5: <sip:bob1@example.com>;expires=3600
Contact headers -6: <sip:bob2@example.com>;expires=3600

This PR fixes and produces:

Contact headers: <sip:bob0@example.com>;expires=3600
Contact headers 0: <sip:bob0@example.com>;expires=3600
Contact headers 1: <sip:bob1@example.com>;expires=3600
Contact headers 2: <sip:bob2@example.com>;expires=3600
Contact headers 3: <sip:bob3@example.com>;expires=3600
Contact headers 4: <sip:bob4@example.com>;expires=3600
Contact headers 5: <sip:bob5@example.com>;expires=3600
Contact headers 6: <null>
Contact headers 7: <null>
Contact headers -1: <null>
Contact headers -2: <sip:bob5@example.com>;expires=3600
Contact headers -3: <sip:bob4@example.com>;expires=3600
Contact headers -4: <sip:bob3@example.com>;expires=3600
Contact headers -5: <sip:bob2@example.com>;expires=3600
Contact headers -6: <sip:bob1@example.com>;expires=3600

The contact headers -1: <null> if fixed via #3697.


You can view, comment on, or merge this pull request online at:

  https://github.com/kamailio/kamailio/pull/3698

Commit Summary

File Changes

(1 file)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <kamailio/kamailio/pull/3698@github.com>