Looks good to me.

--Glenn

Gary Winiger wrote:
> I'm sponsoring this case for myself.  It updates the PSARC/2005/259
> "Layered Trusted Solaris Label Interfaces" str_to_label(3tsol) function.
>
> The commitment level remains Committed.  A Patch release binding is requested.
> A full diff marked man page is in the case directory.
>
> The timer is set for 10 June, 2009.
>
> Gary..
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Background:
> ==========
> str_to_label() is the Committed interface to translate strings to various
> type of labels in Solaris Trusted Extensions.  The implementation is a
> client side in libtsol(3LIB), which for label translation services call
> the labeld(1M) service.  labeld in turn implements a set of algorithms
> which parse strings based on rules define in label_encodings(4).
> For MAC_LABEL type labels, a set of supplemental rules called the
> ACCREDITATION RANGE: are defined.  str_to_label() does not provide an
> interface that takes these rules into account.  There is a Project Private
> interface to check against the accreditation range.  A recent request
> for a Committed interface lead to RFE 6845609 "str_to_label(3) should be
> able to verify if the label is within the accreditation range"
>
> Proposal:
> ========
> Provide for optional checking if the string being translated is acceptable
> to the accreditation range rules.  A new error code, M_OUTSIDE_AR, will be
> returned if the resulting str_to_label() translation is not in the
> label_encodings(4) defined accreditation range and a new flag, L_CHECK_AR,
> is passed in.
>
> str_to_label(3TSOL):
>
>      int str_to_label(const char *string, m_label_t **label,
>             const m_label_type_t label_type, uint_t flags, int *error);
>
> DESCRIPTION
>      The str_to_label() function is a simple  function  to  parse
>      human readable strings into labels of the requested type.
>
> [ . . . ]
>
>      If flags  is  L_DEFAULT,  the  previously  parsed  label  is
>      replaced  and  the  parsing algorithm makes a best effort to
>      imply a valid label from the elements of string.
>
> +    If flags contains L_CHECK_AR logically or-ed with another value,
> +    the resulting label will be checked to ensure that it is within
> +    the "Accreditation Range" of the DIA encodings schema.  This flag
> +    is only interpreted for MAC_LABEL label types.
>
> [ . . . ]
>
> ERRORS
>      The str_to_label() function will fail if:
>
>      EINVAL     Invalid parameter.  M_BAD_STRING  indicates  that
>               string could not be parsed. M_BAD_LABEL indicates
> |               that the label passed in was in error.  M_OUTSIDE_AR
> +               indicates that the resulting label is not within the
> +               "Accreditation Range" specified in the DIA encodings
> +               schema.
>   


Reply via email to