summaryrefslogtreecommitdiffstats
path: root/testsuites/libtests/termios06/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/libtests/termios06/init.c')
-rw-r--r--testsuites/libtests/termios06/init.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/testsuites/libtests/termios06/init.c b/testsuites/libtests/termios06/init.c
index 10b5d014f5..37ec1f7951 100644
--- a/testsuites/libtests/termios06/init.c
+++ b/testsuites/libtests/termios06/init.c
@@ -89,10 +89,35 @@ void set_discipline(void)
void ioctl_it(void)
{
int rc;
+ struct termios t;
puts( "ioctl(" TERMIOS_TEST_DRIVER_DEVICE_NAME ") - OK " );
rc = ioctl( Test_fd, 0xFFFF, NULL );
rtems_test_assert( rc == 0 );
+
+ puts( "tcgetattr(" TERMIOS_TEST_DRIVER_DEVICE_NAME ") - OK " );
+ rc = tcgetattr( Test_fd, &t );
+ rtems_test_assert( rc == 0 );
+
+ puts( "Turn on flow control on output - OK" );
+ t.c_iflag |= IXON;
+ rc = tcsetattr( Test_fd, TCSANOW, &t );
+ rtems_test_assert( rc == 0 );
+
+ puts( "Turn off flow control on output - OK" );
+ t.c_iflag &= ~IXON;
+ rc = tcsetattr( Test_fd, TCSANOW, &t );
+ rtems_test_assert( rc == 0 );
+
+ puts( "Turn on flow control on input - OK" );
+ t.c_iflag |= IXOFF;
+ rc = tcsetattr( Test_fd, TCSANOW, &t );
+ rtems_test_assert( rc == 0 );
+
+ puts( "Turn off flow control on input - OK" );
+ t.c_iflag &= ~IXOFF;
+ rc = tcsetattr( Test_fd, TCSANOW, &t );
+ rtems_test_assert( rc == 0 );
}
void close_it(void)