@@ -180,6 +180,13 @@ typedef unsigned int u_int;
|
180 | 180 | # include <fcntl.h> |
181 | 181 | #endif |
182 | 182 | |
| 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 | + |
183 | 190 | #undef PROG |
184 | 191 | #define PROG s_client_main |
185 | 192 | |
@@ -1792,17 +1799,16 @@ int MAIN(int argc, char **argv)
|
1792 | 1799 | tv.tv_usec = 0; |
1793 | 1800 | i = select(width, (void *)&readfds, (void *)&writefds, |
1794 | 1801 | NULL, &tv); |
1795 | | -# if defined(OPENSSL_SYS_WINCE) || defined(OPENSSL_SYS_MSDOS) |
1796 | | -if (!i && (!_kbhit() || !read_tty)) |
1797 | | -continue; |
1798 | | -# else |
| 1802 | +#if defined(OPENSSL_USE_STD_INPUT_HANDLE) |
1799 | 1803 | if (!i && (!((_kbhit()) |
1800 | 1804 | || (WAIT_OBJECT_0 == |
1801 | 1805 | WaitForSingleObject(GetStdHandle |
1802 | 1806 | (STD_INPUT_HANDLE), |
1803 | 1807 | 0))) |
1804 | 1808 | || !read_tty)) |
1805 | 1809 | continue; |
| 1810 | +#else |
| 1811 | +if(!i && (!_kbhit() || !read_tty) ) continue; |
1806 | 1812 | # endif |
1807 | 1813 | } else |
1808 | 1814 | i = select(width, (void *)&readfds, (void *)&writefds, |
@@ -2004,12 +2010,12 @@ int MAIN(int argc, char **argv)
|
2004 | 2010 | } |
2005 | 2011 | } |
2006 | 2012 | #if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) |
2007 | | -# if defined(OPENSSL_SYS_WINCE) || defined(OPENSSL_SYS_MSDOS) |
2008 | | -else if (_kbhit()) |
2009 | | -# else |
| 2013 | +#if defined(OPENSSL_USE_STD_INPUT_HANDLE) |
2010 | 2014 | else if ((_kbhit()) |
2011 | 2015 | || (WAIT_OBJECT_0 == |
2012 | 2016 | WaitForSingleObject(GetStdHandle(STD_INPUT_HANDLE), 0))) |
| 2017 | +#else |
| 2018 | +else if (_kbhit()) |
2013 | 2019 | # endif |
2014 | 2020 | #elif defined (OPENSSL_SYS_NETWARE) |
2015 | 2021 | else if (_kbhit()) |
|