1dat_registry_list_prDoivriedcetrsA(c3cDeAsTs)Transport Libdraatr_yreFguinscttriyo_nlsist_providers(3DAT)
2
3
4

NAME

6       dat_registry_list_providers  -  obtain  a  list of available pProviders
7       from the Static Registry
8

SYNOPSIS

10       typedef struct dat_provider_info {
11           char ia_name[DAT_NAME_MAX_LENGTH];
12           DAT_UINT32      dapl_version_major;
13           DAT_UINT32      dapl_version_minor;
14           DAT_BOOLEAN     is_thread_safe;
15           } DAT_PROVIDER_INFO;
16
17       cc [ flag... ] file... -ldat [ library... ]
18       #include <dat/udat.h>
19
20       DAT_RETURN
21           dat_registry_list_providers (
22           IN    DAT_COUNT          max_to_return,
23           OUT   DAT_COUNT          *number_entries,
24           OUT   DAT_PROVIDER_INFO  *(dat_provider_list[])
25           )
26
27

PARAMETERS

29       max_to_return        Maximum number of entries that can be returned  to
30                            the Consumer in the dat_provider_list.
31
32
33       number_entries       The  actual number of entries returned to the Con‐
34                            sumer in the dat_provider_list  if  successful  or
35                            the number of Providers available.
36
37
38       dat_provider_list    Points  to  an array of DAT_PROVIDER_INFO pointers
39                            supplied by the Consumer. Each Provider's informa‐
40                            tion will be copied to the destination specified.
41
42

DESCRIPTION

44       The  dat_registry_list_providers()  function  allows  the  Consumer  to
45       obtain a list of available Providers  from  the  Static  Registry.  The
46       information provided is the Interface Adapter name, the uDAPL/kDAPL API
47       version supported, and whether the provided version is thread-safe. The
48       Consumer  can examine the attributes to determine which (if any) Inter‐
49       face Adapters it wants to open. This operation has  no  effect  on  the
50       Registry itself.
51
52
53       The  Registry  can open an IA using a Provider whose dapl_version_minor
54       is larger than the one the  Consumer  requests  if  no  Provider  entry
55       matches  exactly.  Therefore, Consumers should expect that an IA can be
56       opened successfully as long as at least one Provider entry returned  by
57       dat_registry_list_providers()  matches the ia_name, dapl_version_major,
58       and is_thread_safe fields exactly, and has a dapl_version_minor that is
59       equal to or greater than the version requested.
60
61
62       If  the  operation is successful, the returned value is DAT_SUCCESS and
63       number_entries indicates the number of entries filled by  the  registry
64       in dat_provider_list.
65
66
67       If  the  operation  is  not successful, then number_entries returns the
68       number of entries in the registry. Consumers can  use  this  return  to
69       allocate  dat_provider_list large enough for the registry entries. This
70       number is just a snapshot at the time of the call and may be changed by
71       the time of the next call. If the operation is not successful, then the
72       content of dat_provider_list is not defined.
73
74
75       If dat_provider_list is too small, including pointing to NULL  for  the
76       registry   entries,   then   the   operation   fails  with  the  return
77       DAT_INVALID_PARAMETER.
78

RETURN VALUES

80       DAT_SUCCESS              The operation was successful.
81
82
83       DAT_INVALID_PARAMETER    Invalid      parameter.      For      example,
84                                dat_provider_list is too small or NULL.
85
86
87       DAT_INTERNAL_ERROR       Internal  error.  The  DAT  static registry is
88                                missing.
89
90

USAGE

92       DAT_NAME_MAX_LENGTH includes the null character for string termination.
93

ATTRIBUTES

95       See attributes(5) for descriptions of the following attributes:
96
97
98
99
100       ┌─────────────────────────────┬─────────────────────────────┐
101       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
102       ├─────────────────────────────┼─────────────────────────────┤
103       │Interface Stability          │Standard: uDAPL, 1.1, 1.2    │
104       ├─────────────────────────────┼─────────────────────────────┤
105       │MT-Level                     │Safe                         │
106       └─────────────────────────────┴─────────────────────────────┘
107

SEE ALSO

109       libdat(3LIB), attributes(5)
110
111
112
113SunOS 5.11                        16 Jul 2004dat_registry_list_providers(3DAT)
Impressum