Skip to content
This repository was archived by the owner on Apr 22, 2023. It is now read-only.

Commit a43219b

Browse files
Shigeki OhtsuJulien Gilli
Shigeki Ohtsu
authored and
Julien Gilli
committed
openssl: fix keypress requirement in apps on win32
reapply b910613 PR: #9451 PR-URL: #9451 Reviewed-By: Julien Gilli <[email protected]>
1 parent b5a37e5 commit a43219b

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

deps/openssl/openssl/apps/s_client.c

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,13 @@ typedef unsigned int u_int;
180180
# include <fcntl.h>
181181
#endif
182182

183+
/* Use Windows API with STD_INPUT_HANDLE when checking for input?
184+
Don't look at OPENSSL_SYS_MSDOS for this, since it is always defined if
185+
OPENSSL_SYS_WINDOWS is defined */
186+
#if defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYS_WINCE) && defined(STD_INPUT_HANDLE)
187+
#define OPENSSL_USE_STD_INPUT_HANDLE
188+
#endif
189+
183190
#undef PROG
184191
#define PROG s_client_main
185192

@@ -1583,17 +1590,16 @@ int MAIN(int argc, char **argv)
15831590
tv.tv_usec = 0;
15841591
i = select(width, (void *)&readfds, (void *)&writefds,
15851592
NULL, &tv);
1586-
# if defined(OPENSSL_SYS_WINCE) || defined(OPENSSL_SYS_MSDOS)
1587-
if (!i && (!_kbhit() || !read_tty))
1588-
continue;
1589-
# else
1593+
#if defined(OPENSSL_USE_STD_INPUT_HANDLE)
15901594
if (!i && (!((_kbhit())
15911595
|| (WAIT_OBJECT_0 ==
15921596
WaitForSingleObject(GetStdHandle
15931597
(STD_INPUT_HANDLE),
15941598
0)))
15951599
|| !read_tty))
15961600
continue;
1601+
#else
1602+
if(!i && (!_kbhit() || !read_tty) ) continue;
15971603
# endif
15981604
} else
15991605
i = select(width, (void *)&readfds, (void *)&writefds,
@@ -1792,12 +1798,12 @@ int MAIN(int argc, char **argv)
17921798
}
17931799
}
17941800
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS)
1795-
# if defined(OPENSSL_SYS_WINCE) || defined(OPENSSL_SYS_MSDOS)
1796-
else if (_kbhit())
1797-
# else
1801+
#if defined(OPENSSL_USE_STD_INPUT_HANDLE)
17981802
else if ((_kbhit())
17991803
|| (WAIT_OBJECT_0 ==
18001804
WaitForSingleObject(GetStdHandle(STD_INPUT_HANDLE), 0)))
1805+
#else
1806+
else if (_kbhit())
18011807
# endif
18021808
#elif defined (OPENSSL_SYS_NETWARE)
18031809
else if (_kbhit())

0 commit comments

Comments
 (0)