Lines Matching +full:up +full:- +full:counting
1 .\" -*- mode: troff; coding: utf-8 -*-
58 .TH ENGINE_ADD 3ossl 2025-09-30 3.5.4 OpenSSL
102 \&\- ENGINE cryptographic module support
238 reference-counted mechanism to allow them to be dynamically loaded in and
245 \& RSA_METHOD \- for providing alternative RSA implementations
247 \& \- similarly for other OpenSSL APIs
248 \& EVP_CIPHER \- potentially multiple cipher algorithms (indexed by \*(Aqnid\*(Aq)
249 \& EVP_DIGEST \- potentially multiple hash algorithms (indexed by \*(Aqnid\*(Aq)
250 \& key\-loading \- loading public and/or private EVP_PKEY keys
252 .SS "Reference counting and handles"
253 .IX Subsection "Reference counting and handles"
255 treated as handles \- i.e. not only as pointers, but also as references to
260 ENGINE objects have two levels of reference-counting to match the way in
262 inherently a \fBstructural\fR reference \- a structural reference is required
273 implicitly contains a structural reference as well \- however to avoid
274 difficult-to-find programming bugs, it is recommended to treat the two
283 iterating across OpenSSL's internal linked-list of loaded
292 released by a corresponding to call to the \fBENGINE_free()\fR function \- the
293 ENGINE object itself will only actually be cleaned up and deallocated when
298 structural reference will internally obtain another reference \- typically
301 OpenSSL's internal list is \fBENGINE_add()\fR \- if this function returns success,
308 ENGINE list \- they will return a new structural reference to the next (or
339 algorithm-specific types in OpenSSL, such as RSA, DSA, EVP_CIPHER_CTX, etc.
357 will operate with a NULL ENGINE handle \- this usually equates to using the
366 also cache another reference to speed up processing future queries (without
372 instead the only way for the state table to return a non-NULL ENGINE to the
377 indexed by 'nid', these flags and cached-responses are distinct for each 'nid'
386 "visible" ENGINEs from which it has to operate \- at start-up, this list is
391 made visible to OpenSSL \- this is controlled by calling the various "load"
395 the program and loaded into memory at run-time) does not mean they are
396 "registered" or called into use by OpenSSL automatically \- that behaviour
400 OpenSSL automatically use at run-time any ENGINE that is able to
401 successfully initialise \- i.e. to assume that this corresponds to
406 source code to openssl's built-in utilities as guides.
419 OpenSSL should use its built-in software as per usual. The following code
449 \&\fIAutomatically using built-in ENGINE implementations\fR
453 OpenSSL \- if there is an ENGINE that implements it and can be initialised,
463 That's all that's required. Eg. the next time OpenSSL tries to set up an
472 OpenSSL. This mechanism is entirely based on the use of name-value pairs
491 smart-card identifiers, passwords to initialise protected devices,
498 this in the descriptions attached to built-in control commands and/or in
504 name of the ENGINE it wishes to use, a table of string-pairs for use before
506 the string-pairs used for control commands consist of a command "name"
507 followed by the command "parameter" \- the parameter could be NULL in some
520 \& while (pre_num\-\-) {
522 \& fprintf(stderr, "Failed command (%s \- %s:%s)\en", engine_id,
539 \& while (post_num\-\-) {
541 \& fprintf(stderr, "Failed command (%s \- %s:%s)\en", engine_id,
555 relax the semantics of the function \- if set nonzero it will only return
564 It is possible to discover at run-time the names, numerical-ids, descriptions
596 handler (and thus, it must have supplied one), so it is up to the ENGINE to
622 description. ENGINE_CTRL_GET_FLAGS returns a bitwise-OR'd mask of the following
633 informational to the caller \- this flag will prevent the command being usable
634 for any higher-level ENGINE functions such as \fBENGINE_ctrl_cmd_string()\fR.
635 "INTERNAL" commands are not intended to be exposed to text-based configuration
641 might query various ENGINEs to see if they implement "FOO_GET_VENDOR_LOGO_GIF" \-
642 and ENGINE could therefore decide whether or not to support this "foo"\-specific
649 Ignored in set-user-ID and set-group-ID programs.
733 Copyright 2002\-2024 The OpenSSL Project Authors. All Rights Reserved.