Use non-blocking and raw mode for test with CAIF character devices

This commit is contained in:
Marcel Holtmann 2010-01-28 16:48:33 +01:00
parent c25347dc7e
commit bcad38ceff
1 changed files with 11 additions and 2 deletions

View File

@ -28,6 +28,7 @@
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <termios.h>
#include <glib.h>
#include <glib/gprintf.h>
@ -41,14 +42,22 @@ static GMainLoop *mainloop;
static int do_open(void)
{
struct termios ti;
int fd;
fd = open("/dev/chnlat10", O_RDWR);
fd = open("/dev/chnlat11", O_RDWR | O_NOCTTY | O_NONBLOCK);
if (fd < 0) {
g_printerr("Open of chnlat10 failed (%d)\n", errno);
g_printerr("Open of chnlat11 failed (%d)\n", errno);
return -EIO;
}
/* Switch TTY to raw mode */
memset(&ti, 0, sizeof(ti));
cfmakeraw(&ti);
tcflush(fd, TCIOFLUSH);
tcsetattr(fd, TCSANOW, &ti);
return fd;
}