SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    iSCSI NDT: Nameprep additions



    
    Kaladhar-
    
    Here are some modifications to make to the NDT doc to
    add nameprep.  For now, these changes will assume that
    nameprep will become an RFC before we do; if this is
    a problem, we will do some more cut-and-paste later.
    
    --
    Mark
    
    
    Replace:
    
        3. iSCSI names must be transcribable by humans.  iSCSI names should  
           be kept as simple as possible, and should not use more than a  
           few special characters.  They must also be case-insensitive, and  
           cannot include white space.   
    
    With:
    
        3. iSCSI names must be transcribable by humans.  iSCSI names should  
           be kept as simple as possible, and should not use more than a  
           few special characters.  They must provide for the use of
           international character sets, and must not allow the use of
           different names that would be identical except for their case.
           Whitespace characters must not be allowed.
    
    Replace:
    
       The iSCSI Name may be displayed by user interfaces, but is generally  
       uninterpreted and used as an opaque, case-sensitive string for  
       comparison with other iSCSI Name values.
    
    With:  
    
       The iSCSI Name may be displayed by user interfaces, but is generally  
       uninterpreted and used as an opaque string for comparison with other
       iSCSI Name values.   
     
    Replace:
    
    
       An iSCSI name can be any Unicode character string with the following  
       properties:   
         
        - it is in Normalization Form C (see Unicode Standard Annex #15,  
           "Unicode Normalization Forms" at  
           http://www.unicode.org/unicode/reports/15)   
          
        - it contains only the ASCII dash character ('-'=U+002d) or the   
        ASCII dot character ('.'=U+002e) or is in one of the following   
        Unicode General Categories:   
         
                 a) Lu (Letter, Uppercase)   
                 b) Ll (Letter, Lowercase)   
                 c) Lt (Letter, Titlecase)   
                 d) Lm (Letter, Modifier)   
                 e) Lo (Letter, Other)   
                 f) Nd (Number, Decimal Digit)   
                 g) Nl (Number, Letter)   
         
                 h) No (Number, Other)   
             
        - when encoded in UTF-8, it is no more than 255 bytes   
         
       In particular, white space, punctuation (except as noted), marks and  
       symbols are not allowed. 
    
    
    
    With:
    
       An iSCSI name can be any Unicode character string with the following  
       properties:   
         
        - it is in Normalization Form C (see Unicode Standard Annex #15,  
           "Unicode Normalization Forms" at  
           http://www.unicode.org/unicode/reports/15)   
    
        - it contains only the following types of characters:
    
             - ASCII dash character ('-'=U+002d)  
             - ASCII dot character ('.'=U+002e)
             - Any character allowed by the output of the nameprep
               process
    
        - when encoded in UTF-8, it is no more than 255 bytes   
    
       The output of the nameprep process is described in [NAMEPREP].  Nameprep
       is a method designed by the Internationalized Domain Name (IDN) working
       group to translate human-typed strings into a format that can be compared
       as opaque strings, and does not include punctuation, spacing, dicritical
       marks, or other characters that could get in the way of transcribability.
       It also converts everything into its equivalent of lower case.
    
       Note that in most cases, the nameprep process does not need to be
       implemented:
    
       - If the names are just generated using lower-case (in any
         character set) plus digits, no normalization is required.
    
       - If the names are generated from some other all-ASCII string,
         tolower() normalizes and isalnum() verifies.
    
       - If the names are generated from more general, internationalized
         text, either the equivalent of tolower() and isalnum() appropriate
         to the character set may be used, or the full nameprep procedure
         can be used.
    


Home

Last updated: Wed Sep 05 01:17:11 2001
6343 messages in chronological order