Summary:ASTERISK-19838: From Header has capital A in userpart Anonymous if CALLERID(pres)=unavailable, RFC uses lower case anonymous
Reporter:Antti Yrjölä (ayrjola)Labels:
Date Opened:2012-05-04 01:05:17Date Closed:2012-09-24 17:15:27
Versions: Frequency of
Environment:Linux, Debian 32-bitAttachments:( 0) chan_sip_patch_ASTERISK-19838.patch
Description:When setting CALLERID(pres)=unavailable in dialplan, sip message contains header From: "Anonymous" <sip:Anonymous@anonymous.invalid>. RFC uses header From: "Anonymous" <sip:anonymous@anonymous.invalid>, so userpart should be lower case a.
Comments:By: David Woolley (davidw) 2012-05-04 05:01:03.892-0500

Which RFC?  Are you sure this is normative?

By: Antti Yrjölä (ayrjola) 2012-05-04 06:31:37.823-0500

In RFC 3261, From. There is only definition about display that display name should be "Anonymous", but only that userpart and domain should be valid URI but meaningless. In RFC 3325 all examples define uri as sip:anonymous@anonymous.invalid. And in general PBX systems that I have seen uses lower case a in URI.

And in asterisk chan_sip.c there are already few places that uses lower case a:
line 10858: const char *anonymous_string = "\"Anonymous\" <sip:anonymous@anonymous.invalid>";
line 15056: if (!strncasecmp(uri, "sip:anonymous@anonymous.invalid", 31))

So if using CALLERID(pres)=unavailable I would expect same kind of From URI formating.

Problem is in lines 11957 - 11958 CALLERID_UNKNOWN is defined as Anonymous and same value is set to userpart on line 11958.

By: Matt Jordan (mjordan) 2012-05-04 08:38:06.273-0500

This is hardly mandated by the RFC.  I certainly don't mind this changing, but its something that a system should be prepared to handle in any case.

Would you like to provide a patch for this?

By: Antti Yrjölä (ayrjola) 2012-05-07 05:59:25.432-0500

I have patch ready and I have signed license agreement and waiting confirmation. So as soon as that comes through I will upload patch.

By: Matt Jordan (mjordan) 2012-06-22 08:49:20.884-0500

Please be sure to hit the 'send back' button when you've entered feedback - otherwise, we aren't aware that you've updated the issue :-)