• Home
  • Raw
  • Download

Lines Matching refs:provider

23 - internal provider routines
27 #include "internal/provider.h"
61 /* Return pointer to the provider's context */
68 int (*cb)(OSSL_PROVIDER *provider,
79 /* Thin wrappers around calls to the provider */
94 int ossl_provider_set_operation_bit(OSSL_PROVIDER *provider, size_t bitnum);
95 int ossl_provider_test_operation_bit(OSSL_PROVIDER *provider, size_t bitnum,
106 to handle a provider, regardless of if it's built in to the
107 application or the OpenSSL libraries, or if it's a loadable provider
109 Instances of this type are commonly referred to as "provider objects".
111 A provider object is always stored in a set of provider objects
124 ossl_provider_find() finds an existing provider object in the provider
130 The provider object it finds has its reference count incremented.
132 ossl_provider_new() creates a new provider object named I<name> and
133 stores it in the provider object store, unless there already is one
141 The reference count of a newly created provider object will always
144 If I<init_function> is NULL, the provider is assumed to be a
147 If I<init_function> isn't NULL, the provider is assumed to be built
153 ossl_provider_up_ref() increments the provider object I<prov>'s
156 ossl_provider_free() decrements the provider object I<prov>'s
157 reference count; when it drops to zero, the provider object is assumed
162 ossl_provider_set_fallback() marks an available provider I<prov> as
164 Note that after this call, the provider object pointer that was
168 provider module given the provider object I<prov>.
170 the path from the provider name and the default module directory (more
174 provider I<prov> is registered in.
176 ossl_provider_add_parameter() adds a global parameter for the provider
179 provider will use the name to find the value it wants.
180 Only text parameters can be given, and it's up to the provider to
183 ossl_provider_set_child() marks this provider as a child of a provider in the
185 the provider's B<OSSL_provider_init> function.
187 ossl_provider_get_parent() obtains the handle on the parent provider.
190 provider. If I<activate> is nonzero then the parent provider is also activated.
193 provider. If I<deactivate> is nonzero then the parent provider is also
200 ossl_provider_activate() "activates" the provider for the given
201 provider object I<prov> by incrementing its activation count, flagging
221 If I<upcalls> is nonzero then, if this is a child provider, upcalls to the
223 then the provider will only be activated if it is a child provider. Otherwise
226 ossl_provider_deactivate() "deactivates" the provider for the given
227 provider object I<prov> by decrementing its activation count. When
232 ossl_provider_add_to_store() adds the provider I<prov> to the provider store and
234 of fallback providers, unless I<retain_fallbacks> is true. If a provider of the
237 pointer to the provider of the given name that is now in the store. The
239 reference to the provider that should be used is passed back in the
242 ossl_provider_ctx() returns a context created by the provider.
243 Outside of the provider, it's completely opaque, but it needs to be
244 passed back to some of the provider functions.
246 ossl_provider_get0_dispatch() returns the dispatch table that the provider
267 ossl_provider_teardown() calls the provider's I<teardown> function, if
268 the provider has one.
270 ossl_provider_gettable_params() calls the provider's I<gettable_params>
271 function, if the provider has one.
273 parameters that the provider has for the provider object.
275 ossl_provider_get_params() calls the provider's parameter request
280 ossl_provider_get_capabilities() calls the provider's I<get_capabilities> function,
281 if the provider has one. It provides the name of the I<capability> and a
283 the provider. The callback gets passed OSSL_PARAM details about the capability as
286 ossl_provider_query_operation() calls the provider's
287 I<query_operation> function, if the provider has one.
291 ossl_provider_unquery_operation() informs the provider that the result of
296 in a bitstring that's internal to I<provider>.
299 is set (1) or not (0) in the internal I<provider> bitstring, and sets
305 passed to the provider's B<OSSL_provider_init> function.
308 context about provider creation or removal events for the child library context
313 Locating a provider module happens as follows:
321 Otherwise, use the provider object's name as module path, with
334 provider module.
342 provider object (I<OSSL_PROVIDER>) on success, or NULL on error.
370 I<OSSL_PARAM> array if this function is available in the provider,
374 If this function isn't available in the provider, 0 is returned.
380 If this function isn't available in the provider or the provider does not
385 L<OSSL_PROVIDER(3)>, L<provider(7)>, L<openssl(1)>