UI_UTIL_read_pw() misinterpreted the values returned from UI functions.
authorRichard Levitte <levitte@openssl.org>
Mon, 13 Jan 2003 14:17:43 +0000 (14:17 +0000)
committerRichard Levitte <levitte@openssl.org>
Mon, 13 Jan 2003 14:17:43 +0000 (14:17 +0000)
PR: 456

crypto/ui/ui_util.c

index ee9730d..46bc8c1 100644 (file)
@@ -78,12 +78,14 @@ int UI_UTIL_read_pw(char *buf,char *buff,int size,const char *prompt,int verify)
        if (ui)
                {
                ok = UI_add_input_string(ui,prompt,0,buf,0,size-1);
-               if (ok == 0 && verify)
+               if (ok >= 0 && verify)
                        ok = UI_add_verify_string(ui,prompt,0,buff,0,size-1,
                                buf);
-               if (ok == 0)
+               if (ok >= 0)
                        ok=UI_process(ui);
                UI_free(ui);
                }
+       if (ok > 0)
+               ok = 0;
        return(ok);
        }