RE: Re: Issue 281: Backward compatibility problem
From: Adrangi, Farid (farid.adrangiintel.com)
Date: Tue, 7 Dec 2004 13:28:35 -0500 (EST)
Hi Jari,
I think my previous response did not get posted .... So, One more try!

I agree with your proposal - it provides more flexibility.    

BR,
Farid

> -----Original Message-----
> From: Jari Arkko [mailto:jari.arkko [at] piuha.net] 
> Sent: Tuesday, December 07, 2004 2:58 AM
> To: Adrangi, Farid; Bernard Aboba
> Cc: eap [at] frascone.com
> Subject: Re: [eap] Re: Issue 281: Backward compatibility problem
> 
> 
> Bernard, Farid,
> 
> >> 2) Modify the grammar to allow the NAIRealms to be placed 
> >>    anywhere after displayable message.
> >
> > I'd prefer this.  It's more consistent with RFC 3748, as well 
> > as existing implementations.
> 
> I would prefer #2 as well.
> 
> > identity-request-data = [ displayable-string ] %0x00 [ 
> Network-Info ]   
> > 
> > displayable-string    = *CHAR
> > 
> > Network-Info          = *OCTET ["," "NAIRealms=" realm-list 
> "," ] *OCTET
> 
> The general approach is correct, but I'd prefer making the
> NAIRealms data start with either directly after the NUL character
> or after a comma -- not always with a comma. How about this:
> 
> Network-Info     =   "NAIRealms=" realm-list
> Network-Info     =/  1*OCTET ",NAIRealms=" realm-list
> Network-Info     =/  "NAIRealms=" realm-list "," 1*OCTET
> Network-Info     =/  1*OCTET ",NAIRealms=" realm-list "," 1*OCTET
> 
> Note that this still allows multiple %0x00's to be present
> at various places. For instance, the following would all be
> legal
> 
>      foo\0NAIRealms=snaap.com
>      bar\0NAIRealms=fryyp.com\0\0\0\0
>      foobar\0\0\0\0,NAIRealms=example.com
>      \0APQuality=0,NAIRealms=arkko.com
> 
> > realm-list            = realm /
> >                         ( realm-list ";" realm )
> > 
> > The "OCTET" and "CHAR" rules are defined in [RFC2234] and 
> the "realm"
> > rule is defined in [rfc2486bis].
> > 
> > A sample hex dump of an EAP-Request/Identity packet is shown below.
> > 
> >       01                        ; Code: Request
> >       00                        ; Identifier: 0
> >       00 43                     ; Length: 67 octets
> >       01                        ; Type: Identity
> >       48 65 6c 6c 6f 00 2C 4e   ; 
> "Hello\0,NAIRealms=example.com;mnc014.
> >       41 49 52 65 61 6c 6d 73   ; mcc310.3gppnetwork.org,"
> >       3d 69 73 70 2e 65 78 61
> >       6d 70 6c 65 2e 63 6f 6d
> >       3b 6d 6e 63 30 31 34 2e
> >       6d 63 63 33 31 30 2e 33
> >       67 70 70 6e 65 74 77 6f
> >       72 6b 2e 6f 72 67 2C
> 
> Ok otherwise but I'd prefer getting rid of the "," after
> "\0".
> 
> > The Network-Info can contain NAIRealms list in addition to 
> proprietary
> > information. The proprietary information can be placed 
> before or after
> > NAIRealms list.  To extract NAIRelams list, an 
> implementation can parse
> > the data after a NUL and look for "NAIRealms=" and then 
> check whether
> > the previous character was a comma.  Once "NAIRealms=" immediately
> > followed by a comma is found, the implementation can read the realms
> > until it encounters a comma character.
> 
> Slightly revised:
> 
>    The Network-Info can contain NAIRealms list in addition to 
> proprietary
>    information. The proprietary information can be placed 
> before or after
>    NAIRealms list.  To extract NAIRelams list, an 
> implementation either
>    finds the "NAIRealms=" immediately after the NUL or seeks 
> forward to
>    find ",NAIRealms" somewhere in the string. The realms data 
> ends either
>    at first "," or at the end of the string, whichever comes first.
> 
> --Jari
> 

Results generated by Tiger Technologies using MHonArc.