Fix UI leak in apps.
[openssl.git] / apps / apps.h
index 7fbd41769b0e9aad1c0535ecda4db7ba2f02a0fc..7f3903478ff4211a3a057fd6162cd50173b6f178 100644 (file)
@@ -123,16 +123,18 @@ extern BIO *bio_err;
 #    ifdef _O_BINARY
 #      define apps_startup() \
                _fmode=_O_BINARY; do_pipe_sig(); CRYPTO_malloc_init(); \
-               OpenSSL_add_all_algorithms(); ENGINE_load_builtin_engines()
+               OpenSSL_add_all_algorithms(); ENGINE_load_builtin_engines(); \
+                setup_ui_method();
 #    else
 #      define apps_startup() \
                _fmode=O_BINARY; do_pipe_sig(); CRYPTO_malloc_init(); \
-               OpenSSL_add_all_algorithms(); ENGINE_load_builtin_engines()
+               OpenSSL_add_all_algorithms(); ENGINE_load_builtin_engines(); \
+                setup_ui_method();
 #    endif
 #  else
 #    define apps_startup() \
                do_pipe_sig(); OpenSSL_add_all_algorithms(); \
-               ENGINE_load_builtin_engines()
+               ENGINE_load_builtin_engines(); setup_ui_method();
 #  endif
 #endif
 
@@ -152,6 +154,9 @@ typedef struct pw_cb_data
 int password_callback(char *buf, int bufsiz, int verify,
        PW_CB_DATA *cb_data);
 
+int setup_ui_method();
+void destroy_ui_method();
+
 int should_retry(int i);
 int args_from_file(char *file, int *argc, char **argv[]);
 int str2fmt(char *s);