From: Dr. Stephen Henson Date: Thu, 17 May 2001 11:47:08 +0000 (+0000) Subject: Fix for new UI functions under Win32. X-Git-Tag: OpenSSL_0_9_6c~182^2~152 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=b49a5b2dc02545b137101797cacb060ae19c264a;p=oweals%2Fopenssl.git Fix for new UI functions under Win32. For some unknown reason fopen("con", "w") is the only way to make this work. Using "r+" and "w+" causes the fopen call to fail and the fallback (using stdin) doesn't work because writing to stdin fails. --- diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c index 3555ae6275..abf223b5d1 100644 --- a/crypto/ui/ui_openssl.c +++ b/crypto/ui/ui_openssl.c @@ -430,7 +430,10 @@ static int open_console(UI *ui) is_a_tty = 1; #ifdef OPENSSL_SYS_MSDOS - if ((tty=fopen("con","w+")) == NULL) + /* For some bizarre reason this call to fopen() on Windows + * fails if the mode is "w+" or "r+", whereas "w" works fine. + */ + if ((tty=fopen("con","w")) == NULL) tty=stdin; #elif defined(OPENSSL_SYS_MACINTOSH_CLASSIC) tty=stdin;