Fix s_client/s_server waiting for stdin on Windows
authorMatt Caswell <matt@openssl.org>
Fri, 20 May 2016 10:53:26 +0000 (11:53 +0100)
committerMatt Caswell <matt@openssl.org>
Fri, 27 May 2016 14:18:46 +0000 (15:18 +0100)
commit75dd6c1a39c4e73de7d8d782adb7008645248f50
treee5c004d97e12eb00ba6e51e4938905b861788c74
parent384f08dc76e4df2c004042bd9b1bad60f98c281f
Fix s_client/s_server waiting for stdin on Windows

On Windows we were using the function _kbhit() to determine whether there
was input waiting in stdin for us to read. Actually all this does is work
out whether there is a keyboard press event waiting to be processed in the
input buffer. This only seems to work in a standard Windows console (not
Msys console) and also doesn't work if you redirect the input from some
other source (as we do in TLSProxy tests). This commit changes things to
work differently depending on whether we are on the Windows console or not.

RT#4255

Reviewed-by: Richard Levitte <levitte@openssl.org>
apps/apps.c
apps/apps.h
apps/s_client.c
apps/s_server.c