From 66ffa994e9b82f27382549fab182f973de690f4c Mon Sep 17 00:00:00 2001 From: Duncan Laurie Date: Sun, 19 Mar 2006 21:20:42 +0000 Subject: [PATCH] better handling of termios header file --- ipmitool/configure.in | 9 ++++++++- ipmitool/lib/ipmi_sol.c | 9 +++++++-- ipmitool/lib/ipmi_tsol.c | 13 ++++++------- 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/ipmitool/configure.in b/ipmitool/configure.in index 440efeb..0c34156 100644 --- a/ipmitool/configure.in +++ b/ipmitool/configure.in @@ -18,7 +18,7 @@ AC_CHECK_PROG([RPMBUILD], [rpmbuild], [rpmbuild], [rpm]) AC_CHECK_PROG([SED], [sed], [sed]) AC_HEADER_STDC -AC_CHECK_HEADERS([stdlib.h string.h sys/ioctl.h sys/stat.h unistd.h paths.h termios.h]) +AC_CHECK_HEADERS([stdlib.h string.h sys/ioctl.h sys/stat.h unistd.h paths.h]) AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h sys/socket.h]) AC_CHECK_HEADERS([sys/byteorder.h byteswap.h]) @@ -197,6 +197,13 @@ AC_CHECK_HEADER([linux/ipmi.h], [Define to 1 if you have the header file.])], [echo "** Unable to find OpenIPMI header files. Using internal version."])]) +dnl look for termios header file +AC_CHECK_HEADER([termios.h], + [AC_DEFINE(HAVE_TERMIOS_H, [1], [Define to 1 if you have .])], + [AC_CHECK_HEADER([sys/termios.h], + [AC_DEFINE(HAVE_SYS_TERMIOS_H, [1], [Define to 1 if you have .])], + [echo "** Unable to find termios header file."])]) + dnl set RPM distro tag for use in RPM name AC_ARG_WITH([rpm-distro], [AC_HELP_STRING([--with-rpm-distro=DISTRO], diff --git a/ipmitool/lib/ipmi_sol.c b/ipmitool/lib/ipmi_sol.c index 31d93c4..b7e6555 100644 --- a/ipmitool/lib/ipmi_sol.c +++ b/ipmitool/lib/ipmi_sol.c @@ -42,8 +42,13 @@ #include #include +#include -#include +#if defined(HAVE_TERMIOS_H) +# include +#elif defined (HAVE_SYS_TERMIOS_H) +# include +#endif #include #include @@ -99,7 +104,7 @@ ipmi_get_sol_info( struct ipmi_rq req; uint8_t data[4]; - memset(&req, 0, sizeof(req)); + memset(&req, 0, sizeof(req)); req.msg.netfn = IPMI_NETFN_TRANSPORT; req.msg.cmd = IMPI_GET_SOL_CONFIG_PARAMETERS; req.msg.data_len = 4; diff --git a/ipmitool/lib/ipmi_tsol.c b/ipmitool/lib/ipmi_tsol.c index a585cfc..e5f5a89 100644 --- a/ipmitool/lib/ipmi_tsol.c +++ b/ipmitool/lib/ipmi_tsol.c @@ -48,13 +48,14 @@ #include #include #include - -#ifdef __linux__ + +#include + +#if defined(HAVE_TERMIOS_H) # include -//# include -#else +#elif defined (HAVE_SYS_TERMIOS_H) # include -#endif +#endif #include #include @@ -64,8 +65,6 @@ #include #include -#include - static struct timeval _start_keepalive; static struct termios _saved_tio; static struct winsize _saved_winsize;