• Home
  • Raw
  • Download

Lines Matching full:engine

10 /* We need to use some engine deprecated APIs */
18 * Shared libraries implementing ENGINEs for use by the "dynamic" ENGINE
23 /* Our ENGINE handlers */
24 static int dynamic_init(ENGINE *e);
25 static int dynamic_finish(ENGINE *e);
26 static int dynamic_ctrl(ENGINE *e, int cmd, long i, void *p,
31 static int dynamic_load(ENGINE *e, dynamic_data_ctx *ctx);
41 /* The constants used when creating the ENGINE */
43 static const char *engine_dynamic_name = "Dynamic engine loading support";
47 "Specifies the path to the new ENGINE shared library",
55 "Specifies an ENGINE id name for loading",
59 "Whether to add a loaded ENGINE to the internal list (0=no,1=yes,2=mandatory)",
71 "Load up the ENGINE specified by other settings",
77 * Loading code stores state inside the ENGINE structure via the "ex_data"
82 /* The DSO object we load that supplies the ENGINE code */
89 * The function pointer to the engine-binding shared library function
96 /* If non-NULL, stipulates the 'id' of the ENGINE to be loaded */
99 * If non-zero, a successfully loaded ENGINE should be added to the
100 * internal ENGINE list. If 2, the add must succeed or the entire load
106 /* The symbol name for the "initialise ENGINE structure" function */
130 * whether a "first-use" occurs before the ENGINE is freed, we have a memory
132 * we don't want a dynamic_data_ctx in *all* ENGINE structures of all types
134 * a "free" handler and that will get called if an ENGINE is being destroyed
152 * Construct the per-ENGINE context. We create it blindly and then use a lock
157 static int dynamic_set_data_ctx(ENGINE *e, dynamic_data_ctx **ctx) in dynamic_set_data_ctx()
200 * This function retrieves the context structure from an ENGINE's "ex_data",
203 static dynamic_data_ctx *dynamic_get_data_ctx(ENGINE *e) in dynamic_get_data_ctx()
208 * Create and register the ENGINE ex_data, and associate our "free" in dynamic_get_data_ctx()
210 * an ENGINE goes underground. in dynamic_get_data_ctx()
240 static ENGINE *engine_dynamic(void) in engine_dynamic()
242 ENGINE *ret = ENGINE_new(); in engine_dynamic()
260 ENGINE *toadd = engine_dynamic(); in engine_load_dynamic_int()
279 static int dynamic_init(ENGINE *e) in dynamic_init()
282 * We always return failure - the "dynamic" engine itself can't be used in dynamic_init()
288 static int dynamic_finish(ENGINE *e) in dynamic_finish()
297 static int dynamic_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void)) in dynamic_ctrl()
307 /* All our control commands require the ENGINE to be uninitialised */ in dynamic_ctrl()
407 * an engine that is built for openssl 1.1.x will cause a fatal
411 * as an indication that the engine will be incompatible.
424 static int dynamic_load(ENGINE *e, dynamic_data_ctx *ctx) in dynamic_load()
426 ENGINE cpy; in dynamic_load()
473 * old. Also fail if this is engine for openssl 1.1.x. in dynamic_load()
486 * First binary copy the ENGINE structure so that we can roll back if the in dynamic_load()
489 memcpy(&cpy, e, sizeof(ENGINE)); in dynamic_load()
493 * engine.h, much of this would be simplified if each area of code in dynamic_load()
501 * Now that we've loaded the dynamic engine, make sure no "dynamic" in dynamic_load()
502 * ENGINE elements will show through. in dynamic_load()
506 /* Try to bind the ENGINE onto our own ENGINE structure */ in dynamic_load()
515 /* Copy the original ENGINE structure back */ in dynamic_load()
516 memcpy(e, &cpy, sizeof(ENGINE)); in dynamic_load()
519 /* Do we try to add this ENGINE to the internal list too? */ in dynamic_load()
528 * the ENGINE has changed. in dynamic_load()