[Search] [txt|pdfized|bibtex] [Tracker] [WG] [Email] [Nits]
Versions: 00 01 02 03 04 05 06 07 08 09 10 11
NETWORK WORKING GROUP                                        N. Williams
Internet-Draft                                                       Sun
Expires: July 2, 2005                                       January 2005
Namespace Considerations and Registries for GSS-API Extensions
draft-ietf-kitten-gssapi-extensions-iana-00.txt
By submitting this Internet-Draft, I certify that any applicable
patent or other IPR claims of which I am aware have been disclosed,
and any of which I become aware will be disclosed, in accordance with
This Internet-Draft will expire on July 2, 2005.
This document describes the ways in which the GSS-API may be extended
and directs the creation of IANA registries for various GSS-API
namespaces.
Williams                  Expires July 2, 2005                  [Page 1]
Internet-Draft           GSS IANA Instructions              January 2005
1.  Conventions used in this document  . . . . . . . . . . . . . .  3
3.  Extensions to the GSS-API  . . . . . . . . . . . . . . . . . .  3
4.  Generic GSS-API Namespaces . . . . . . . . . . . . . . . . . .  3
5.  Language Binding-Specific GSS-API Namespaces . . . . . . . . .  4
6.  Extension-Specific GSS-API Namespaces  . . . . . . . . . . . .  4
7.  Registration Form(s) . . . . . . . . . . . . . . . . . . . . .  4
8.  Initial Namespace Registrations  . . . . . . . . . . . . . . .  6
10. Normative  . . . . . . . . . . . . . . . . . . . . . . . . . .  6
Author's Address . . . . . . . . . . . . . . . . . . . . . . .  6
Intellectual Property and Copyright Statements . . . . . . . .  7
There is a need for generic and mechanism-specific extensions to the
Generic Security Services Application Programming Interface
(GSS-API).  As such extensions are designed and standardized, both at
the IETF and elsewhere, there is a non-trivial risk of namespace
pollution and conflicts.  To avoid this we set out guidelines for
extending the GSS-API and create IANA registries of GSS-API
The registration of name prefixes and constant value ranges is
allowed so as to save the IANA the trouble of registering every
GSS-API name and constant, and to allow for reservation of portions
of some GSS namespaces for private extensions or extensions which
lack IETF Standards-Track extensions.
3.  Extensions to the GSS-API
Extensions to the GSS-API can be categorized as follows:
o  Generic
o  Implementation-specific
o  Mechanism-specific
o  Language binding-specific
o  Any combination of two or all three of the last three
Extensions to the GSS-API may be purely semantic, without effect on
the GSS-API's namespaces.  Or they may introduce new functions,
constants, types, etc...; these clearly affect the GSS-API
Extensions that affect the GSS-API namespaces should be registered
with the IANA.
4.  Generic GSS-API Namespaces
All the function, constant and type names, as well as all the
constant values specified in the base GSS-API specification for the
basic generic GSS-API namespace.
The generic GSS-API namespaces are:
o  Type names
o  Function names
o  Constant names for each type
o  Constant values for each type
o  Mechanism OIDs
o  Name Type OIDs
o  Mechanism Attribute OIDs (see [EXTENDED-INQUIRY])
5.  Language Binding-Specific GSS-API Namespaces
<Add text; discuss header, module, library, class, method namespaces
and whatever else comes up that is language-specific and appropriate
for registration with the IANA.>
6.  Extension-Specific GSS-API Namespaces
Extensions to the GSS-API may create additional namespaces.
Instructions to the IANA should included for the handling of such
7.  Registration Form(s)
Registrations for GSS-API namespaces SHALL take the following form:
+----------------------+----------------------+---------------------+
| Registration Field   | Possible Values      | Description         |
| Registration type    | 'Individual',        | Indicates whether   |
|                      | 'Prefix', 'Range'    | this entry reserves |
|                      |                      | a given symbol name |
|                      |                      | or constant value   |
|                      |                      | or whether it       |
|                      |                      | reserves an entire  |
|                      |                      | sub-namespace (the  |
|                      |                      | name is a "prefix") |
|                      |                      | range.              |
| Bindings             | 'Generic',           | Indicates the       |
|                      | 'C-bindings',        | language bindings   |
|                      | 'Java', 'C#', etc... | that this           |
|                      |                      | registration is     |
|                      |                      | for, or, if         |
|                      |                      | 'Generic', that     |
|                      |                      | this is an entry    |
|                      |                      | for the generic     |
|                      |                      | GSS-API, not        |
|                      |                      | specific to any     |
|                      |                      | programming         |
|                      |                      | language.           |
| Object Type          | 'Symbol',            | Indicates whether   |
|                      | 'Constant-Value'     | this registration   |
|                      |                      | is for a symbol     |
|                      |                      | (e.g., function,    |
|                      |                      | constant name(s))   |
|                      |                      | or constant value.  |
| Object Programming   | 'Data-Type',         | Indicates the type  |
| Type                 | 'Function',          | of the object(s)    |
|                      | 'Method', 'Integer', | whose symbolic name |
|                      | 'String', 'OID'      | or constant value   |
|                      |                      | is this entry       |
|                      |                      | registers.          |
| Object Name          | <Symbol name or name | The name(s) of      |
|                      | prefix>              | symbols or values   |
|                      |                      | being registered.   |
| Object Value         | <Constant value> or  | [Only for           |
|                      | <constant value      | Constant-Value      |
|                      | range>               | registrations.] The |
|                      |                      | value(s)            |
|                      |                      | registered.         |
| Description          | <Text>               | Description of      |
|                      |                      | object(s) being     |
| Reference            | <Reference>          | Reference to        |
|                      |                      | document that       |
|                      |                      | describes the       |
| Status               | 'Standards-Track',   |                     |
|                      | 'Informational',     |                     |
|                      | 'Experimental',      |                     |
|                      | 'Obsolete'           |                     |
The IANA should create a single GSS-API namespace registry, or
multiple registries, one for symbolic names and one for constant
values, or it may create a registry per-programming language, at its
Entries in these registries should consist of all the fields from
their corresponding registration entries.
Entries SHOULD be sorted by object type, proggamming language, symbol
<Add text on guidelines for IANA consideration of registration
applications, particularly with respect to entries lacking normative
references, "magic" entries (e.g., special values of 'time' types
which indicate something other than absolute or relative time, such
as GSS_C_INDEFINITE), expert review requirements (if any) for
registrations lacking normative references, etc....>
8.  Initial Namespace Registrations
<Add registration entries for namespaces (name prefixes) for RFC2743/
RFC2744/RFC2853.>
<Add registration entries for private namespaces (name prefixes) for
implementation- and/or platform-specific extensions.>
This document has no security considerations.
10  Normative
[EXTENDED-INQUIRY]
Williams, N., "Extended Generic Security Service Mechanism
Inquiry APIs",
draft-ietf-kitten-extended-mech-inquiry-00.txt (work in
progress).
[RFC2743]  Linn, J., "Generic Security Service Application Program
Interface Version 2, Update 1", RFC 2743, January 2000.
[RFC2744]  Wray, J., "Generic Security Service API Version 2 :
C-bindings", RFC 2744, January 2000.
Nicolas Williams
5300 Riata Trace Ct
Austin, TX  78727
EMail: Nicolas.Williams@sun.com
Disclaimer of Validity