[openssl-dev] [openssl.org #3526] [Patch] Removed the dependency on the obsolete TERMIO.h for linux 32 and 64bits.

Richard Levitte via RT rt at openssl.org
Thu Feb 12 22:54:20 UTC 2015


Hi,

sorry for taking half a year to respond...

I'm looking at this change, and it occurs to me that there are some Linux
configuration lines that you didn't affect. linux-ppc, linux-alpha-gcc and a
few more. Was that on purpose or was it a mistake? If it was a mistake, I
assume -DTERMIO should change to -DTERMIOS on them as well.

On Thu Sep 11 11:59:24 2014, nik_89 at xroutine.net wrote:
>
> Operating System : Linux 32 and 64bits.
> Version of OpenSSL : 1.0.1i
>
>
> TERMIO is an obsolete header file that is not even in vanilla glibc
> anymore. The TERMIOS header file is fully backward compatible with the
> TERMIO struct so it is safe to use that instead. This prevents systems
> that dropped altogether the termio.h "glue" header from having nasty
> errors when compiling.
> ---
> Configure | 24 ++++++++++++------------
> crypto/ui/ui_openssl.c | 2 --
> 2 files changed, 12 insertions(+), 14 deletions(-)
>
> diff --git a/Configure b/Configure
> index 36844b7..7b2d5d7 100755
> --- a/Configure
> +++ b/Configure
> @@ -345,23 +345,23 @@ my %table=(
> ####
> # *-generic* is endian-neutral target, but ./config is free to
> # throw in -D[BL]_ENDIAN, whichever appropriate...
> -"linux-generic32","gcc:-DTERMIO -O3 -fomit-frame-pointer
> -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT
> DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-generic32","gcc:-DTERMIOS -O3 -fomit-frame-pointer
> -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT
> DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> "linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1
> DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> # It's believed that majority of ARM toolchains predefine appropriate
> -march.
> # If you compiler does not, do complement config command line with
> one!
> -"linux-armv4", "gcc:-DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG
> RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL
> BF_PTR:${armv4_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-armv4", "gcc:-DTERMIOS -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG
> RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL
> BF_PTR:${armv4_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> #### IA-32 targets...
> -"linux-ia32-icc", "icc:-DL_ENDIAN -DTERMIO -O2
> -no_cpprt::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-
> KPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer
> -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer
> -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_asm}:a.out",
> +"linux-ia32-icc", "icc:-DL_ENDIAN -DTERMIOS -O2
> -no_cpprt::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-
> KPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-elf", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer
> -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-aout", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer
> -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des}
> ${x86_gcc_opts}:${x86_asm}:a.out",
> ####
> -"linux-generic64","gcc:-DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-ppc64", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-
> fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> -"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL
> DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall
> -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK
> DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall
> -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK
> DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> -"linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT
> DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-
> m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> -"linux64-s390x", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-
> m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> +"linux-generic64","gcc:-DTERMIOS -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-ppc64", "gcc:-m64 -DB_ENDIAN -DTERMIOS -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-
> fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> +"linux-ia64", "gcc:-DL_ENDIAN -DTERMIOS -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL
> DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIOS -O2 -Wall
> -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK
> DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIOS -O2 -Wall
> -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK
> DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-
> fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> +"linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIOS -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT
> DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-
> m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> +"linux64-s390x", "gcc:-m64 -DB_ENDIAN -DTERMIOS -O3
> -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK
> DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-
> m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
> #### So called "highgprs" target for z/Architecture CPUs
> # "Highgprs" is kernel feature first implemented in Linux 2.6.32, see
> # /proc/cpuinfo. The idea is to preserve most significant bits of
> diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c
> index a38c758..91e1ae0 100644
> --- a/crypto/ui/ui_openssl.c
> +++ b/crypto/ui/ui_openssl.c
> @@ -191,8 +191,6 @@
> #endif
>
> #if defined(linux) && !defined(TERMIO)
> -# undef TERMIOS
> -# define TERMIO
> # undef SGTTY
> #endif
>


--
Richard Levitte
levitte at openssl.org



More information about the openssl-dev mailing list