X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=linux_termios.c;h=3630e5758ae355ff823237a5ca39acda2cee8257;hb=2e0437c28e272ff6c64c58d9b032986979289fae;hp=7c1540a2ddb4e0450a4d1e4c5b66b985a263fb6c;hpb=970f279ae4767819a816573ae354813d37d5091d;p=libserialport.git diff --git a/linux_termios.c b/linux_termios.c index 7c1540a..3630e57 100644 --- a/linux_termios.c +++ b/linux_termios.c @@ -33,40 +33,42 @@ * TCSETX/TCGETX ioctls used with struct termiox, others do not. */ +#include +#include #include #include "linux_termios.h" -SP_PRIV int get_termios_get_ioctl(void) +SP_PRIV unsigned long get_termios_get_ioctl(void) { -#ifdef HAVE_TERMIOS2 +#ifdef HAVE_STRUCT_TERMIOS2 return TCGETS2; #else return TCGETS; #endif } -SP_PRIV int get_termios_set_ioctl(void) +SP_PRIV unsigned long get_termios_set_ioctl(void) { -#ifdef HAVE_TERMIOS2 +#ifdef HAVE_STRUCT_TERMIOS2 return TCSETS2; #else return TCSETS; #endif } -SP_PRIV int get_termios_size(void) +SP_PRIV size_t get_termios_size(void) { -#ifdef HAVE_TERMIOS2 +#ifdef HAVE_STRUCT_TERMIOS2 return sizeof(struct termios2); #else return sizeof(struct termios); #endif } -#if defined(HAVE_TERMIOS_SPEED) || defined(HAVE_TERMIOS2_SPEED) +#if (defined(HAVE_TERMIOS_SPEED) || defined(HAVE_TERMIOS2_SPEED)) && HAVE_DECL_BOTHER SP_PRIV int get_termios_speed(void *data) { -#ifdef HAVE_TERMIOS2 +#ifdef HAVE_STRUCT_TERMIOS2 struct termios2 *term = (struct termios2 *) data; #else struct termios *term = (struct termios *) data; @@ -79,7 +81,7 @@ SP_PRIV int get_termios_speed(void *data) SP_PRIV void set_termios_speed(void *data, int speed) { -#ifdef HAVE_TERMIOS2 +#ifdef HAVE_STRUCT_TERMIOS2 struct termios2 *term = (struct termios2 *) data; #else struct termios *term = (struct termios *) data; @@ -90,8 +92,8 @@ SP_PRIV void set_termios_speed(void *data, int speed) } #endif -#ifdef HAVE_TERMIOX -SP_PRIV int get_termiox_size(void) +#ifdef HAVE_STRUCT_TERMIOX +SP_PRIV size_t get_termiox_size(void) { return sizeof(struct termiox); }