Greetings,
 
Mike's interpretation looks correct.  Is this something that should be
fixed?  If so, should the fix be placed within
draft-ietf-sip-ipv6-abnf-fix?
 
Thanks,
Brett


________________________________

        From: [email protected] [mailto:[email protected]] On
Behalf Of Szilagyi, Mike
        Sent: Thursday, December 18, 2008 10:53 AM
        To: [email protected]
        Subject: [Sip] Question regarding conflicting grammar for IPV6
SIP URI andRFC 3986
        
        

        RFC 3986 defines the following grammar for a URI:

         

           URI           = scheme ":" hier-part [ "?" query ] [ "#"
fragment ]

         

           hier-part     = "//" authority path-abempty

                         / path-absolute

                         / path-rootless

                         / path-empty

         

        A SIP URI falls into the 'path-rootless' rule:

         

           path-rootless = segment-nz *( "/" segment )

         

           segment-nz    = 1*pchar

         

           pchar         = unreserved / pct-encoded / sub-delims / ":" /
"@"

         

           pct-encoded   = "%" HEXDIG HEXDIG
         
           unreserved    = ALPHA / DIGIT / "-" / "." / "_" / "~"

         

           sub-delims    = "!" / "$" / "&" / "'" / "(" / ")"
                         / "*" / "+" / "," / ";" / "="

         

        path-rootless does not allow "[" or "]" characters, so the
SIP-URI grammar for IPV6 violates RFC 3986 grammar.

         

        SIP-URI          =  "sip:" [ userinfo ] hostport

                            uri-parameters [ headers ]

         

        hostport         =  host [ ":" port ]

        host             =  hostname / IPv4address / IPv6reference

        hostname         =  *( domainlabel "." ) toplabel [ "." ]

        domainlabel      =  alphanum

                            / alphanum *( alphanum / "-" ) alphanum

        toplabel         =  ALPHA / ALPHA *( alphanum / "-" ) alphanum

        IPv4address    =  1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "."
1*3DIGIT

        IPv6reference  =  "[" IPv6address "]"  <-- *** violates RFC 3986
***

        IPv6address    =  hexpart [ ":" IPv4address ]

        hexpart        =  hexseq / hexseq "::" [ hexseq ] / "::" [
hexseq ]

        hexseq         =  hex4 *( ":" hex4)

        hex4           =  1*4HEXDIG

        port           =  1*DIGIT

         

         

        These, though valid SIP URIs are not valid URIs:

         

            <sip:[2001:db8::10]>

            <sip:cal...@[2001:db8::1]>

         

        Has this already been addressed?

         

        Regards,

        Mike

_______________________________________________
Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email protected] for questions on current sip
Use [email protected] for new developments on the application of sip

Reply via email to