Fix source where indent will not be able to cope
[oweals/openssl.git] / crypto / ui / ui_lib.c
index ac0100808f5d862280017d1eb6b241d3a1979f00..41bc926ca4c6ec15a2901d3177a89bbbd5e68540 100644 (file)
@@ -431,6 +431,8 @@ char *UI_construct_prompt(UI *ui, const char *object_desc,
                len += sizeof(prompt3) - 1;
 
                prompt = (char *)OPENSSL_malloc(len + 1);
+               if (prompt == NULL)
+                       return NULL;
                BUF_strlcpy(prompt, prompt1, len + 1);
                BUF_strlcat(prompt, object_desc, len + 1);
                if (object_name)
@@ -693,6 +695,17 @@ 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)
@@ -733,6 +746,14 @@ 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)
@@ -897,9 +918,9 @@ int UI_set_result(UI *ui, UI_STRING *uis, const char *result)
                                break;
                                }
                        }
+               }
        default:
                break;
                }
-               }
        return 0;
        }