Previous section.

DCE 1.1: Authentication and Security Services
Copyright © 1997 The Open Group

NAME

<dce/keymgmt.h>-Header for sec_key_mgmt API.

SYNOPSIS

#include <dce/keymgmt.h>

DESCRIPTION

Data Types

The following data types (listed in alphabetical order) are used in the sec_key_mgmt API.

idl_byte sec_passwd_des_key_t[8]

Indicates a DES key, represented in big/big-endian order (see Mapping Mixed Bit/Byte-Sequences to Integers ).

enum sec_passwd_type_t

Indicates key type. The currently registered values are:

sec_passwd_none

Indicates that no key type is present.

sec_passwd_plain

Indicates that the key is plaintext (that is, unencrypted).

sec_passwd_des

Indicates that the key is DES-encrypted.

struct sec_passwd_rec_t

Indicates a password. It contains the following fields:

unsigned32 version_number

Version number.

idl_char *pepper

A character string, to be appended to the password (key.plain) before an encryption key is derived from it.

struct key

A structure representing the actual password. It contains the following fields:

sec_passwd_type_t key_type

Indicates the kind of password contained in tagged_union.

union tagged_union

Indicates the actual password. It contains the following fields:

(No password is present)

(No password is present if key_type = sec_passwd_none.)

idl_char *plain

A plaintext (that is, unencrypted) password (this option occurs if key_type = sec_passwd_plain).

sec_passwd_des_key_t des_key

A DES-encrypted password (this option occurs if key_type = sec_passwd_des).

unsigned32 sec_key_mgmt_authn_service

Indicates the authentication service in use. The currently registered values are:

rpc_c_authn_none

No authentication.

rpc_c_authn_dce_secret

DCE secret key authentication, as specified in

Status Codes

The following status codes (listed in alphabetical order) are used in the sec_key_mgmt API.

error_status_ok

The call was successful.

sec_key_mgmt_e_authn_invalid

Requested authentication service not valid.

sec_key_mgmt_e_auth_unavailable

Authentication service is unavailable.

sec_key_mgmt_e_key_unavailable

Principal's current key is unavailable.

sec_key_mgmt_e_key_unsupported

Requested key type is not supported.

sec_key_mgmt_e_key_version_ex

Key with specified version number already exists in key store.

sec_key_mgmt_e_not_implemented

Unwilling to perform requested operation (or, colloquially, requested operation has "not been implemented").

sec_key_mgmt_e_unauthorized

Caller has insufficient authorisation to perform operation.

sec_login_s_no_memory

A memory allocation error occurred.

sec_rgy_object_not_found

No principal was found with the given name.

sec_rgy_server_unavailable

The RS server is unavailable.

sec_s_no_key_seed

Initialisation of random number generator has not been accomplished.

sec_s_no_memory

Unable to allocate memory.

Please note that the html version of this specification may contain formatting aberrations. The definitive version is available as an electronic publication on CD-ROM from The Open Group.

Contents Next section Index