Assume TERMIOS is default, remove TERMIO on all Linux.

The rationale for this move is that TERMIOS is default, supported by
POSIX-1.2001, and most definitely on Linux.  For a few other systems,
TERMIO may still be the termnial interface of preference, so we keep
-DTERMIO on those in Configure.

crypto/ui/ui_openssl.c is simplified in this regard, and will define
TERMIOS for all systems except a select few exceptions.
Reviewed-by: Matt Caswell <matt@openssl.org>

(cherry picked from commit 64e6bf64b3)

Conflicts:
	Configure
	crypto/ui/ui_openssl.c
This commit is contained in:
Richard Levitte
2015-02-12 11:41:48 +01:00
parent 681da86ebb
commit 458a55af16
2 changed files with 87 additions and 93 deletions

View File

@@ -185,43 +185,37 @@
/*
* There are 5 types of terminal interface supported, TERMIO, TERMIOS, VMS,
* MSDOS and SGTTY
* MSDOS and SGTTY.
*
* If someone defines one of the macros TERMIO, TERMIOS or SGTTY, it will
* remain respected. Otherwise, we default to TERMIOS except for a few
* systems that require something different.
*
* Note: we do not use SGTTY unless it's defined by the configuration. We
* may eventually opt to remove it's use entirely.
*/
#if defined(__sgi) && !defined(TERMIOS)
# define TERMIOS
# undef TERMIO
# undef SGTTY
#endif
#if !defined(TERMIOS) && !defined(TERMIO) && !defined(SGTTY)
#if defined(linux) && !defined(TERMIO)
# undef TERMIOS
# define TERMIO
# undef SGTTY
#endif
# if defined(_LIBC)
# undef TERMIOS
# define TERMIO
# undef SGTTY
/*
* We know that VMS, MSDOS, VXWORKS, NETWARE use entirely other mechanisms.
* MAC_OS_GUSI_SOURCE should probably go away, but that needs to be confirmed.
*/
# elif !defined(OPENSSL_SYS_VMS) \
&& !defined(OPENSSL_SYS_MSDOS) \
&& !defined(OPENSSL_SYS_MACINTOSH_CLASSIC) \
&& !defined(MAC_OS_GUSI_SOURCE) \
&& !defined(OPENSSL_SYS_VXWORKS) \
&& !defined(OPENSSL_SYS_NETWARE)
# define TERMIOS
# undef TERMIO
# undef SGTTY
# endif
#ifdef _LIBC
# undef TERMIOS
# define TERMIO
# undef SGTTY
#endif
#if !defined(TERMIO) && !defined(TERMIOS) && !defined(OPENSSL_SYS_VMS) && !defined(OPENSSL_SYS_MSDOS) && !defined(OPENSSL_SYS_MACINTOSH_CLASSIC) && !defined(MAC_OS_GUSI_SOURCE)
# undef TERMIOS
# undef TERMIO
# define SGTTY
#endif
#if defined(OPENSSL_SYS_VXWORKS)
# undef TERMIOS
# undef TERMIO
# undef SGTTY
#endif
#if defined(OPENSSL_SYS_NETWARE)
# undef TERMIOS
# undef TERMIO
# undef SGTTY
#endif
#ifdef TERMIOS