PreviousNext

sec_key_mgmt_get_next_key(3sec)

Retrieves successive keys from the local key storage

Synopsis

#include <dce/keymgmt.h>

void sec_key_mgmt_get_next_key(
void *cursor,
idl_char **
principal_name,
unsigned32 *
key_vno,
void **
keydata,
error_status_t *
status);

Parameters

Input

cursor
A pointer to the current cursor position in the local key storage. The cursor position is set via the routine sec_key_mgmt_initialize_cursor( ).

Output

principal_name
A pointer to a character string indicating the name of the principal associated with the extracted key. Free the storage for the principal name with the free( ) function.

key_vno
The version number of the extracted key.

keydata
A pointer to a value of type sec_passwd_rec_t. The storage for keydata is allocated dynamically, so the returned pointer actually indicates a pointer to the key value. The storage for this data may be freed with the sec_key_mgmt_free_key( ) function.

status
A pointer to the completion status. On successful completion, the routine returns error_status_ok. Otherwise, it returns an error.

Description
The sec_key_mgmt_get_next_key( ) routine extracts the key pointed to by the cursor in the local key store and updates the cursor to point to the next key. By repeatedly calling this routine you can scan all the keys in the local store.

Files

/usr/lib/dce/keymgmt.idl
The idl file from which dce/keymgmt.h was derived.

Errors

The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.

sec_key_mgmt_e_key_unavailable
The requested key is not present.

sec_key_mgmt_e_unauthorized
The caller is not authorized to perform the operation.

sec_s_no_memory
Unable to allocate memory.

error_status_ok
The call was successful.

Related Information
Functions:

sec_intro(3sec)

sec_key_mgmt_get_key(3sec)

sec_key_mgmt_initialize_cursor(3sec)