diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-10-01 15:55:30 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1999-10-01 15:55:30 +0000 |
commit | 3cad2919622e6dbab273fdf772b8bf33653553b9 (patch) | |
tree | dc9f24f199588064adfd02795c924e7946976bd9 /c/src/exec | |
parent | changed version to 19990930 (diff) | |
download | rtems-3cad2919622e6dbab273fdf772b8bf33653553b9.tar.bz2 |
Addition of more functionality by Eric Norum to support GNU readline.
Diffstat (limited to 'c/src/exec')
-rw-r--r-- | c/src/exec/libcsupport/src/tcflow.c | 33 | ||||
-rw-r--r-- | c/src/exec/libcsupport/src/tcflush.c | 33 | ||||
-rw-r--r-- | c/src/exec/libcsupport/src/tcsetattr.c | 13 |
3 files changed, 77 insertions, 2 deletions
diff --git a/c/src/exec/libcsupport/src/tcflow.c b/c/src/exec/libcsupport/src/tcflow.c new file mode 100644 index 0000000000..bbe60d94be --- /dev/null +++ b/c/src/exec/libcsupport/src/tcflow.c @@ -0,0 +1,33 @@ +/* + * tcflow() - POSIX 1003.1b 7.2.2 - Line Control Functions + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include <rtems.h> +#if defined(RTEMS_NEWLIB) + +#include <sys/types.h> +#include <sys/stat.h> +#include <errno.h> +#include <termios.h> +/* #include <sys/ioctl.h> */ + +int ioctl(); + +#include <rtems/libio.h> + +int tcflow (int fd, int action) +{ + return 0; +} + +#endif diff --git a/c/src/exec/libcsupport/src/tcflush.c b/c/src/exec/libcsupport/src/tcflush.c new file mode 100644 index 0000000000..3a14eba129 --- /dev/null +++ b/c/src/exec/libcsupport/src/tcflush.c @@ -0,0 +1,33 @@ +/* + * tcflush() - POSIX 1003.1b 7.2.2 - Line Control Functions + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include <rtems.h> +#if defined(RTEMS_NEWLIB) + +#include <sys/types.h> +#include <sys/stat.h> +#include <errno.h> +#include <termios.h> +/* #include <sys/ioctl.h> */ + +int ioctl(); + +#include <rtems/libio.h> + +int tcflush (int fd, int queue) +{ + return 0; +} + +#endif diff --git a/c/src/exec/libcsupport/src/tcsetattr.c b/c/src/exec/libcsupport/src/tcsetattr.c index cc1ca205a5..a769ff250f 100644 --- a/c/src/exec/libcsupport/src/tcsetattr.c +++ b/c/src/exec/libcsupport/src/tcsetattr.c @@ -32,9 +32,18 @@ int tcsetattr( struct termios *tp ) { - if ( opt != TCSANOW ) + switch (opt) { + default: set_errno_and_return_minus_one( ENOTSUP ); - return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp ); + case TCSADRAIN: + if (ioctl( fd, RTEMS_IO_TCDRAIN, NULL ) < 0) + return -1; + /* + * Fall through to.... + */ + case TCSANOW: + return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp ); + } } #endif |