[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sip] Open Issue ID#100 - case sensitivity of URL parameter values



Unfortunately, making it CS somewhat contradicts the general rule in Section 6.5
for headers:

"Unless otherwise stated, parameter names, parameter values and tokens
are case-insensitive.  Values expressed as quoted strings are
case-sensitive."

The transport parameter doesn't use quotation marks and is similar to the
various token parameter values, e.g., in Contact the action parameter, or the
Call-Info purpose values, etc.), so that anything but CI would be yet another
special case.

While I sympathize with the efficiency argument, I suspect that the difference
is small between

if (strcmp(*transport, "udp") == 0) {
  t = UDP;
}
else if (strcmp(*transport, "tcp") == 0} {
  t = TCP;
}

for the "fast path" and adding an additional "slow path" 

else if (strcasecmp(*transport, "udp") == 0) {
  t = UDP;
}
etc.

adam.roach@ericsson.com wrote:
> 
> > -----Original Message-----
> > From: Jonathan Rosenberg [mailto:jdrosen@dynamicsoft.com]
> 
> [On the topic of transport paramters to SIP URIs)
> 
> > Interpretations appear to be mixed. Technically, the correct answer as
> > written is that they are CS. The reason is that the BNF says
> > that quoted
> > values are CI *unless stated otherwise*. Well, we did state otherwise.
> > However, this is a subtletly that is easily missed.
> 
> I'd argue to keep it as-is: that is, case *sensitive*. Add clarifying
> text to the definition of the SIP URL. SIP already has some interesting
> performance implications for high-agregation nodes. I'd prefer that
> any remaining parsing issues be resolved towards reduction of processing
> speed.
> 
> Interoperability is still top of my list, though, which is why
> I'll ask everyone present: does anyone have an implementation that
> sends out transports with uppercase letters?
>

_______________________________________________
Sip mailing list
Sip@ietf.org
http://www.ietf.org/mailman/listinfo/sip