Previous section.

Common Security: CDSA and CSSM
Copyright © 1997 The Open Group

NAME

DL_DbCreate

SYNOPSIS

CSSM_DB_HANDLE CSSMDLI DL_DbCreate
    (CSSM_DL_HANDLE DLHandle,
    const char *DbName,
    const CSSM_NET_ADDRESS_PTR DbLocation,
    const CSSM_DBINFO_PTR DBInfo,
    const CSSM_DB_ACCESS_TYPE_PTR AccessRequest,
    const CSSM_DB_USER_AUTHENTICATION_PTR UserAuthentication,
    const void *OpenParameters)

DESCRIPTION

This function creates and opens a new data store. The name of the new data store is specified by the input parameter DbName. The record schema for the data store is specified in the DBINFO structure. The newly created data store is opened under the specified access mode. If user authentication credentials are required, they must be provided. Also, additional open parameters may be required and are supplied in the OpenParameters.

PARAMETERS

DLHandle (input)

The handle that describes the add-in data storage library module used to perform this function.

DbName (input)

The logical name for the new data store.

DbLocation (input/optional)

A pointer to a network address directly or indirectly identifying the location of the storage service process. If the input is NULL, the module can determine a storage service process and its location based on the DbName (for existing data stores) or can assume a default storage service process location. If the DbName does not distinguish the storage service process and a default cannot be assumed, the service cannot be performed and the operation fails.

DBInfo (input)

A pointer to a structure describing the format/schema of each record type that will be stored in the new data store. If the schema definition does not specify the CSSM pre-defined attribute name "PrintName" and "Alias", these attributes are added by the DL module with the minimum associated storage size.

AccessRequest (input)

An indicator of the requested access mode for the data store, such as read-only or read-write.

UserAuthentication (input/optional)

The caller's credential as required for obtaining access to the data store. If no credentials are required for the specified data store, then user authentication must be NULL.

OpenParameters (input/optional)

A pointer to a module-specific set of parameters required to open the data store.

RETURN VALUE

A handle to the newly created, open data store. When NULL is returned, an error has occurred. Use CSSM_GetError to obtain the error code.

ERRORS

CSSM_DL_INVALID_DL_HANDLE

Invalid DL handle.

CSSM_DL_INVALID_AUTHENTICATION

Caller is not authorized for the operation.

CSSM_DL_INVALID_DBINFO

Invalid meta information for the schema.

CSSM_DL_DB_CREATE_FAIL

Create caused an exception.

CSSM_REGISTRY_ERROR

Unable to add-update registry entry.

CSSM_DL_INVALID_CSP_HANDLE

Invalid default CSP handle (integrity signing).

CSSM_DL_MEMORY_ERROR

Error in allocating memory.

SEE ALSO

DL_DbOpen, DL_DbClose, DL_DbDelete

Why not acquire a nicely bound hard copy?
Click here to return to the publication details or order a copy of this publication.
You should also read the legal notice explaining the terms and conditions relating to the CDSA documentation.

Contents Next section Index