man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: July 2014
 
 

dat_registry_add_provider(3DAT)

Name

dat_registry_add_provider - declare the Provider with the Dynamic Registry

Synopsis

cc [ flag… ] file–ldat [ library… ] 
#include <dat/udat.h>

DAT_RETURN
    dat_registry_add_provider (
    IN    const DAT_PROVIDER          *provider,
    IN    const DAT_PROVIDER_INFO     *provider_info
    )

Parameters

provider

Self-description of a Provider.

provider_info

Attributes of the Provider.

Description

The Provider declares itself with the Dynamic Registry. Note that the caller can choose to register itself multiple times, for example once for each port. The choice of what to virtualize is up to the Provider. Each registration provides an Interface Adapter to DAT. Each Provider must have a unique name.

The same IA Name cannot be added multiple times. An attempt to register the same IA Name again results in an error with the return value DAT_PROVIDER_ALREADY_REGISTERED.

The contents of provider_info must be the same as those the Consumer uses in the call to dat_ia_open(3DAT) directly, or the ones provided indirectly defined by the header files with which the Consumer compiled.

Return Values

DAT_SUCCESS

The operation was successful.

DAT_INSUFFICIENT_RESOURCES

The maximum number of Providers was already registered.

DAT_INVALID_PARAMETER

Invalid parameter.

DAT_PROVIDER_ALREADY_REGISTERED

Invalid or nonunique name.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Standard
uDAPL, 1.1, 1.2

See Also

dat_ia_open(3DAT), libdat(3LIB), attributes(5)