summaryrefslogtreecommitdiff
path: root/Cryptlib/OpenSSL/crypto/ui/ui_lib.c
diff options
context:
space:
mode:
Diffstat (limited to 'Cryptlib/OpenSSL/crypto/ui/ui_lib.c')
-rw-r--r--Cryptlib/OpenSSL/crypto/ui/ui_lib.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/Cryptlib/OpenSSL/crypto/ui/ui_lib.c b/Cryptlib/OpenSSL/crypto/ui/ui_lib.c
index 84d65cb3..5ddd7317 100644
--- a/Cryptlib/OpenSSL/crypto/ui/ui_lib.c
+++ b/Cryptlib/OpenSSL/crypto/ui/ui_lib.c
@@ -655,6 +655,20 @@ int UI_method_set_closer(UI_METHOD *method, int (*closer) (UI *ui))
return -1;
}
+int UI_method_set_prompt_constructor(UI_METHOD *method,
+ char *(*prompt_constructor) (UI *ui,
+ const char
+ *object_desc,
+ const char
+ *object_name))
+{
+ if (method) {
+ method->ui_construct_prompt = prompt_constructor;
+ return 0;
+ } else
+ return -1;
+}
+
int (*UI_method_get_opener(UI_METHOD *method)) (UI *) {
if (method)
return method->ui_open_session;
@@ -690,6 +704,15 @@ int (*UI_method_get_closer(UI_METHOD *method)) (UI *) {
return NULL;
}
+char *(*UI_method_get_prompt_constructor(UI_METHOD *method)) (UI *,
+ const char *,
+ const char *) {
+ if (method)
+ return method->ui_construct_prompt;
+ else
+ return NULL;
+}
+
enum UI_string_types UI_get_string_type(UI_STRING *uis)
{
if (!uis)