mirror of
https://github.com/openssl/openssl.git
synced 2025-04-06 20:20:50 +08:00
In UI_OpenSSL's open(), generate an error on unknown errno
TTY_get() sometimes surprises us with new errno values to determine if we have a controling terminal or not. This generated error is a helpful tool to figure out that this was what happened and what the unknown value is. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/2043)
This commit is contained in:
parent
57c0f378b8
commit
4984448648
@ -52,6 +52,7 @@ static ERR_STRING_DATA ERR_str_libraries[] = {
|
||||
{ERR_PACK(ERR_LIB_TS, 0, 0), "time stamp routines"},
|
||||
{ERR_PACK(ERR_LIB_ENGINE, 0, 0), "engine routines"},
|
||||
{ERR_PACK(ERR_LIB_OCSP, 0, 0), "OCSP routines"},
|
||||
{ERR_PACK(ERR_LIB_UI, 0, 0), "UI routines"},
|
||||
{ERR_PACK(ERR_LIB_FIPS, 0, 0), "FIPS routines"},
|
||||
{ERR_PACK(ERR_LIB_CMS, 0, 0), "CMS routines"},
|
||||
{ERR_PACK(ERR_LIB_HMAC, 0, 0), "HMAC routines"},
|
||||
|
@ -21,6 +21,7 @@
|
||||
static ERR_STRING_DATA UI_str_functs[] = {
|
||||
{ERR_FUNC(UI_F_GENERAL_ALLOCATE_BOOLEAN), "general_allocate_boolean"},
|
||||
{ERR_FUNC(UI_F_GENERAL_ALLOCATE_PROMPT), "general_allocate_prompt"},
|
||||
{ERR_FUNC(UI_F_OPEN_CONSOLE), "open_console"},
|
||||
{ERR_FUNC(UI_F_UI_CREATE_METHOD), "UI_create_method"},
|
||||
{ERR_FUNC(UI_F_UI_CTRL), "UI_ctrl"},
|
||||
{ERR_FUNC(UI_F_UI_DUP_ERROR_STRING), "UI_dup_error_string"},
|
||||
@ -45,6 +46,8 @@ static ERR_STRING_DATA UI_str_reasons[] = {
|
||||
{ERR_REASON(UI_R_RESULT_TOO_LARGE), "result too large"},
|
||||
{ERR_REASON(UI_R_RESULT_TOO_SMALL), "result too small"},
|
||||
{ERR_REASON(UI_R_UNKNOWN_CONTROL_COMMAND), "unknown control command"},
|
||||
{ERR_REASON(UI_R_UNKNOWN_TTYGET_ERRNO_VALUE),
|
||||
"unknown ttyget errno value"},
|
||||
{0, NULL}
|
||||
};
|
||||
|
||||
|
@ -8,6 +8,7 @@
|
||||
*/
|
||||
|
||||
#include <openssl/e_os2.h>
|
||||
#include <openssl/err.h>
|
||||
|
||||
/*
|
||||
* need for #define _POSIX_C_SOURCE arises whenever you pass -ansi to gcc
|
||||
@ -428,7 +429,14 @@ static int open_console(UI *ui)
|
||||
is_a_tty = 0;
|
||||
else
|
||||
# endif
|
||||
return 0;
|
||||
{
|
||||
char tmp_num[10];
|
||||
BIO_snprintf(tmp_num, sizeof(tmp_num) - 1, "%d", errno);
|
||||
UIerr(UI_F_OPEN_CONSOLE, UI_R_UNKNOWN_TTYGET_ERRNO_VALUE);
|
||||
ERR_add_error_data(2, "errno=", tmp_num);
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef OPENSSL_SYS_VMS
|
||||
|
@ -341,6 +341,7 @@ int ERR_load_UI_strings(void);
|
||||
/* Function codes. */
|
||||
# define UI_F_GENERAL_ALLOCATE_BOOLEAN 108
|
||||
# define UI_F_GENERAL_ALLOCATE_PROMPT 109
|
||||
# define UI_F_OPEN_CONSOLE 114
|
||||
# define UI_F_UI_CREATE_METHOD 112
|
||||
# define UI_F_UI_CTRL 111
|
||||
# define UI_F_UI_DUP_ERROR_STRING 101
|
||||
@ -362,6 +363,7 @@ int ERR_load_UI_strings(void);
|
||||
# define UI_R_RESULT_TOO_LARGE 100
|
||||
# define UI_R_RESULT_TOO_SMALL 101
|
||||
# define UI_R_UNKNOWN_CONTROL_COMMAND 106
|
||||
# define UI_R_UNKNOWN_TTYGET_ERRNO_VALUE 108
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user