Hi kamailio dev:
I am writing a module to implement some features, my version
is 4.1.2, I am not sure if it is a known issue, I found:
1. When I get a INVITE request with from/to like
from:"display"
<aaa@sip.com>, then I call tm's
new_dlg_uas with the sip req, now the dlg's rem_uri set as
value: "display"
<aaa@sip.com>;
2. After that, when I need use the dlg to send BYE with tm's
req_within with the above saved dlg, the print_to function
will check the rem_uri's first value if "<" or not, now my
uri has display name, so the outgoing BYE's to header becomes
to:<"display"
<aaa@sip.com>>, is it wrong? Should
we check the last char in the rem_uri as ">"?
The detail code is :
static inline char* print_to(char* w, dlg_t* dialog, struct
cell* t)
{
t->to.s = w;
t->to.len = TO_LEN + dialog->rem_uri.len + CRLF_LEN
+ ((dialog->rem_uri.s[0]!='<')?2:0);
memapp(w, TO, TO_LEN);
if(dialog->rem_uri.s[0]!='<') memapp(w, "<", 1);
memapp(w, dialog->rem_uri.s, dialog->rem_uri.len);
if(dialog->rem_uri.s[0]!='<') memapp(w, ">",
1);
....