[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: #1132: Allowing IP addresses as path-identiites - Poll result
In <1131012091.20050914143605@xxxxxxxxx> Bill McQuillan <McQuilWP@xxxxxxxxx> writes:
>On Wed, 2005-09-14, Charles Lindsey wrote:
>> No, there is no need for that. Every <label> has to begin with ALPHA (and
>> that was in RFC 1035), so if you see anything with just digits and "."s
>> in it, it is either an <IPv4address> or it is a syntax error.
>Actually RFC 1035 was superceded by RFC 1123 section 2.1 which states that
>each label except the TLD may be all-numeric.
Except that I see nothing in RFC 1123 that says the TLD is to be treated
differently. Frank found a nice syntax for <hostname> in RFC 2396, but its
successor RFC 3986 has removed that, and refers you instead to RFC 1034
plus RFC 1123. So it would seem that there is nowhere any standard syntax
for what a domain name looks like, although "everybody" (TINE) seems to
know what it is.
There is also the interesting question whether you are allowed two "-"s
in succession. Apparently you are, so I have incorporated that (and
allowed it in <bareword> too for good measure).
So here now are the two versions of my syntax, incporporating various
changes from recent discussions. There are still possibilities to simplify
them in the direction of Frank's version, or even Harald's. However, life
would be simpler if we could have some views on which of my two
alternatives we want to use for further progress (i.e. do we want to be
able to distinguish <source-identity>s from <path-identity>s by the
presence of .SEEN/.MATCH/.MISMATCH, or somesuch)?
[1st version of syntax, following the usage of POSTED and
MISMATCH in the present USEFOR.]
path = "Path" ":" SP [FWS] *( path-entry "!" [FWS]) tail-entry [FWS] CRLF
path-entry = path-identity *( "!" path-identity ) [ "!" "POSTED" ]
[ "!" [ source-identity [ "!" "MISMATCH" ] ] ]
path-identity = fqdn / bareword
fqdn = 1*( label "." ) toplabel
label = alphanum / alphanum *( alphanum / "-" ) alphanum
toplabel = ALPHA / ALPHA *( alphanum / "-" ) alphanum
alphanum = ALPHA / DIGIT
bareword = ALPHA / ALPHA *( alphanum / [ "-" / "_" ] ) alphanum )
tail-entry = fqdn / bareword
source-identity = fqdn / IP-address / bareword
IP-address = IPv4address / IPv6address ; see [RFC 3986]
[2nd version of syntax, making <source-identity>s readily
distinguishable from <path-identity>s.]
path = "Path" ":" SP [FWS] *( path-entry "!" [FWS]) tail-entry [FWS] CRLF
path-entry = path-identity *( "!" path-identity )[ "!" "POSTED" ]
[ "!" [ path-source ] ]
path-identity = fqdn / bareword
fqdn = 1*( label "." ) toplabel
label = alphanum / alphanum *( alphanum / "-" ) alphanum
toplabel = ALPHA / ALPHA *( alphanum / "-" ) alphanum
alphanum = ALPHA / DIGIT
bareword = ALPHA / ALPHA *( alphanum / [ "-" / "_" ] ) alphanum )
tail-entry = fqdn / bareword
path-source = source-identity ( ".SEEN" / ".MATCH" / ".MISMATCH" )
source-identity = fqdn / IP-address / bareword
IP-address = IPv4address / IPv6address ; see [RFC 3986]
--
Charles H. Lindsey ---------At Home, doing my own thing------------------------
Tel: +44 161 436 6131 Fax: +44 161 436 6133 Web: http://www.cs.man.ac.uk/~chl
Email: chl@xxxxxxxxxxxxxxxx Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K.
PGP: 2C15F1A9 Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5