*/
#include "des_locl.h"
+#include <openssl/ui.h>
int des_read_password(des_cblock *key, const char *prompt, int verify)
{
int ok;
char buf[BUFSIZ],buff[BUFSIZ];
+ UI *ui;
- if ((ok=des_read_pw(buf,buff,BUFSIZ,prompt,verify)) == 0)
+ ui = UI_new();
+ UI_add_input_string(ui,prompt,0,buf,0,BUFSIZ-1);
+ if (verify)
+ UI_add_verify_string(ui,prompt,0,buff,0,BUFSIZ-1,buf);
+ if ((ok=UI_process(ui)) == 0)
des_string_to_key(buf,key);
+ UI_free(ui);
memset(buf,0,BUFSIZ);
memset(buff,0,BUFSIZ);
return(ok);
{
int ok;
char buf[BUFSIZ],buff[BUFSIZ];
+ UI *ui;
- if ((ok=des_read_pw(buf,buff,BUFSIZ,prompt,verify)) == 0)
+ ui = UI_new();
+ UI_add_input_string(ui,prompt,0,buf,0,BUFSIZ-1);
+ if (verify)
+ UI_add_verify_string(ui,prompt,0,buff,0,BUFSIZ-1,buf);
+ if ((ok=UI_process(ui)) == 0)
des_string_to_2keys(buf,key1,key2);
+ UI_free(ui);
memset(buf,0,BUFSIZ);
memset(buff,0,BUFSIZ);
return(ok);