SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    RE: Section 4.1 clarifications




    Michael,

    The integer representation was discussed a long time ago on the list and it was decided that decimal should be allowed as it might be copied from some human readable tables. I would hate to make this type of changes this late.


    Regards,
    Julo



    "Michael Krueger" <michael.krueger@windriver.com>

    04/25/2002 09:05 PM
    Please respond to "Michael Krueger"

           
            To:        Julian Satran/Haifa/IBM@IBMIL
            cc:        <ips@ece.cmu.edu>
            Subject:        RE: Section 4.1 clarifications

           


    Thanks for your reply; please see my comments below.

    > (2)  Because '+' and '-' are valid characters for values, I suggest
    > that it be made explicit whether or not signed binary items are
    > allowed.  For what it's worth, I've been assuming that all binary
    > items are unsigned and signs are not valid characters in said items.
    >
    > +++ I will do specify unsigned integers +++

    I think it would also be good to disallow '+' signs on unsigned quantities,
    e.g., "+45" is not a valid character representation of an unsigned integer.

    Since I wrote these up, I have realized that the definition of "binary item"
    in the spec is problematic.  I believe a distinction must be made between
    numeric constants and binary items.  As written, the spec allows a binary
    item of up to 255 bytes (unless otherwise specified) to be encoded in
    decimal, hexadecimal, or base 64.  Because decimal encoding is allowed for
    binary items in general, this implies that conforming implementations must
    always be capable of converting up to 615 digits of decimal representation
    into up to 255 bytes of binary data, or in the case of Kerberos support, for
    example, up to 157,827 digits of decimal representation into up to 65,536
    bytes of binary data!  I doubt this is what was intended.

    To eliminate this ambiguity, I suggest amending my definitions as follows:

    >    literal string:    string described by regular expression
    >                       "[][a-zA-Z0-9 .-+@_:]*"
    >
    >    Boolean constant:  Boolean constant described by regular
    >                       expression "Yes|No" (was called "Boolean
    >                       value")
    >
    >    decimal constant:  unsigned decimal constant described by regular
    >                       expression "[0-9]+"
    >
    >    hex constant:      unsigned hexadecimal constant described by
    >                       regular expression "0[xX][0-9a-zA-Z]+"
    >
    >    base-64 constant:  unsigned base-64 constant described by regular
    >                       expression "0b[A-Za-z0-9+/=]+"

    Add:
        numeric constant:  decimal constant or hex constant, the decoded
                           value of which must not exceed 4 bytes unless
                           otherwise specified

    >    binary item:       decimal constant, hex constant, or base-64
    >                       constant

    Change to:
        binary item:       hex constant or base-64 constant, the decoded
                           value of which must not exceed 255 bytes
                           unless otherwise specified

    >    literal list:      one or more literal strings separated by
    >                       commas
    >
    >    numeric range:     two binary items separated by a tilde

    Change to:
        numeric range:     two numeric constants separated by a tilde

    >    value:             literal string, Boolean constant, binary item,
    >                       literal list, or a numeric range (under this
    >                       definition of "value," the delimiters ',' and
    >                       '~' must be added to the list of valid
    >                       characters, along with '/' and '=')

    Change to:
        value:             literal string, Boolean constant, numeric
                           constant, binary item, literal list, or
                           numeric range (under this definition of
                           "value," the delimiters ',' and '~' must be

                            added to the list of valid characters, along
                           with '/' and '=')

    > +++ I will add those +++

    Thank you!

    Michael

    --
    Michael J. Krueger              mailto:michael.krueger@windriver.com
    Wind River Networks                         http://www.windriver.com
    500 Wind River Way                               phone: 510-749-2130
    Alameda, CA  94501                                 fax: 510-749-2010





Home

Last updated: Thu Apr 25 17:18:27 2002
9794 messages in chronological order