Direct Access Transport Library Functions
datregistrylistproviders(3DAT)
NAME
datregistrylistproviders - obtain a list of available
pProviders from the Static Registry
SYNOPSIS
typedef struct datproviderinfo {
char ianame[DATNAMEMAXLENGTH];
DATUINT32 daplversionmajor;
DATUINT32 daplversionminor;
DATBOLEAN isthreadsafe;
} DATPROVIDERINFO;
cc [ flag... ] file... -ldat [ library... ]
#include
DATRETURN
datregistrylistproviders (
IN DATCOUNT maxtoreturn,
OUT DATCOUNT *numberentries,
OUT DATPROVIDERINFO *(datproviderlist[])
)
PARAMETERS
maxtoreturn Maximum number of entries that can be
returned to the Consumer in the
datproviderlist.
numberentries The actual number of entries returned
to the Consumer in the
datproviderlist if successful or the
number of Providers available.
datproviderlist Points to an array of DATPROVIDERINFO
pointers supplied by the Consumer. Each
Provider's information will be copied
to the destination specified.
DESCRIPTION
The datregistrylistproviders() function allows the Consu-
mer to obtain a list of available Providers from the Static
Registry. The information provided is the Interface Adapter
name, the uDAPL/kDAPL API version supported, and whether the
provided version is thread-safe. The Consumer can examine
the attributes to determine which (if any) Interface
Adapters it wants to open. This operation has no effect on
the Registry itself.
SunOS 5.11 Last change: 16 Jul 2004 1
Direct Access Transport Library Functions
datregistrylistproviders(3DAT)
The Registry can open an IA using a Provider whose
daplversionminor is larger than the one the Consumer
requests if no Provider entry matches exactly. Therefore,
Consumers should expect that an IA can be opened success-
fully as long as at least one Provider entry returned by
datregistrylistproviders() matches the ianame,
daplversionmajor, and isthreadsafe fields exactly, and
has a daplversionminor that is equal to or greater than
the version requested.
If the operation is successful, the returned value is
DATSUCES and numberentries indicates the number of
entries filled by the registry in datproviderlist.
If the operation is not successful, then numberentries
returns the number of entries in the registry. Consumers can
use this return to allocate datproviderlist large enough
for the registry entries. This number is just a snapshot at
the time of the call and may be changed by the time of the
next call. If the operation is not successful, then the con-
tent of datproviderlist is not defined.
If datproviderlist is too small, including pointing to
NUL for the registry entries, then the operation fails with
the return DATINVALIDPARAMETER.
RETURN VALUES
DATSUCES The operation was successful.
DATINVALIDPARAMETER Invalid parameter. For example,
datproviderlist is too small or
NUL.
DATINTERNALEROR Internal error. The DAT static
registry is missing.
USAGE
DATNAMEMAXLENGTH includes the null character for string
termination.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
SunOS 5.11 Last change: 16 Jul 2004 2
Direct Access Transport Library Functions
datregistrylistproviders(3DAT)
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Standard: uDAPL, 1.1, 1.2
MT-Level Safe
SEE ALSO
libdat(3LIB), attributes(5)
SunOS 5.11 Last change: 16 Jul 2004 3
Direct Access Transport Library Functions
datregistrylistproviders(3DAT)
SunOS 5.11 Last change: 16 Jul 2004 4
|