summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorguenther <>2014-08-06 04:28:21 +0000
committerguenther <>2014-08-06 04:28:21 +0000
commitf86d186e644fa5e36cc86ef4f3ffd187ba66c9ff (patch)
treee24b3ccfcb353214ef74bbf7371c238ad5ba7eda
parent533b9cb6fe0524c31a25d947f525c859b4c84ff9 (diff)
downloadopenbsd-f86d186e644fa5e36cc86ef4f3ffd187ba66c9ff.tar.gz
openbsd-f86d186e644fa5e36cc86ef4f3ffd187ba66c9ff.tar.bz2
openbsd-f86d186e644fa5e36cc86ef4f3ffd187ba66c9ff.zip
Correct error checks in EVP_read_pw_string_min(): UI_add_input_string()
and UI_add_verify_string() return -1 (and maybe -2?) on failure and >=0 on success, instead of always zero on success problem reported by Mark Patruck (mark (at) wrapped.cx) ok miod@
-rw-r--r--src/lib/libcrypto/evp/evp_key.c6
-rw-r--r--src/lib/libssl/src/crypto/evp/evp_key.c6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/lib/libcrypto/evp/evp_key.c b/src/lib/libcrypto/evp/evp_key.c
index 2873a888bd..1493ca9103 100644
--- a/src/lib/libcrypto/evp/evp_key.c
+++ b/src/lib/libcrypto/evp/evp_key.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: evp_key.c,v 1.19 2014/07/23 04:44:56 miod Exp $ */ 1/* $OpenBSD: evp_key.c,v 1.20 2014/08/06 04:28:21 guenther Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -106,11 +106,11 @@ EVP_read_pw_string_min(char *buf, int min, int len, const char *prompt,
106 if (ui == NULL) 106 if (ui == NULL)
107 return -1; 107 return -1;
108 if (UI_add_input_string(ui, prompt, 0, buf, min, 108 if (UI_add_input_string(ui, prompt, 0, buf, min,
109 (len >= BUFSIZ) ? BUFSIZ - 1 : len) != 0) 109 (len >= BUFSIZ) ? BUFSIZ - 1 : len) < 0)
110 return -1; 110 return -1;
111 if (verify) { 111 if (verify) {
112 if (UI_add_verify_string(ui, prompt, 0, buff, min, 112 if (UI_add_verify_string(ui, prompt, 0, buff, min,
113 (len >= BUFSIZ) ? BUFSIZ - 1 : len, buf) != 0) 113 (len >= BUFSIZ) ? BUFSIZ - 1 : len, buf) < 0)
114 return -1; 114 return -1;
115 } 115 }
116 ret = UI_process(ui); 116 ret = UI_process(ui);
diff --git a/src/lib/libssl/src/crypto/evp/evp_key.c b/src/lib/libssl/src/crypto/evp/evp_key.c
index 2873a888bd..1493ca9103 100644
--- a/src/lib/libssl/src/crypto/evp/evp_key.c
+++ b/src/lib/libssl/src/crypto/evp/evp_key.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: evp_key.c,v 1.19 2014/07/23 04:44:56 miod Exp $ */ 1/* $OpenBSD: evp_key.c,v 1.20 2014/08/06 04:28:21 guenther Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -106,11 +106,11 @@ EVP_read_pw_string_min(char *buf, int min, int len, const char *prompt,
106 if (ui == NULL) 106 if (ui == NULL)
107 return -1; 107 return -1;
108 if (UI_add_input_string(ui, prompt, 0, buf, min, 108 if (UI_add_input_string(ui, prompt, 0, buf, min,
109 (len >= BUFSIZ) ? BUFSIZ - 1 : len) != 0) 109 (len >= BUFSIZ) ? BUFSIZ - 1 : len) < 0)
110 return -1; 110 return -1;
111 if (verify) { 111 if (verify) {
112 if (UI_add_verify_string(ui, prompt, 0, buff, min, 112 if (UI_add_verify_string(ui, prompt, 0, buff, min,
113 (len >= BUFSIZ) ? BUFSIZ - 1 : len, buf) != 0) 113 (len >= BUFSIZ) ? BUFSIZ - 1 : len, buf) < 0)
114 return -1; 114 return -1;
115 } 115 }
116 ret = UI_process(ui); 116 ret = UI_process(ui);