Brett Tate wrote:
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?

Funny - this just came up in another conversation I was having.
It was pointed out to me that the 3261 ABNF for the sip URI is probably derived from RFC-2396 which has since been obsoleted by RFC-3986. RFC-3987 explicitly allows the [ ] notation for IPv6.

So yeah, the URL syntax should probably be corrected.

        Thanks,
        Paul

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
_______________________________________________
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