X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fcommon%2Fserial.c;h=f887194b8a7179d269d74ef0b7af39ac55e80356;hb=af51a7718eb22e9630107af814db6ae9f179a969;hp=4ac342f06d9b6e63273a34ecdfa4aa4bf3279bac;hpb=86c02e6554061bf84b5fb7893e5837d26534a6d8;p=libsigrok.git diff --git a/hardware/common/serial.c b/hardware/common/serial.c index 4ac342f0..f887194b 100644 --- a/hardware/common/serial.c +++ b/hardware/common/serial.c @@ -1,5 +1,5 @@ /* - * This file is part of the sigrok project. + * This file is part of the libsigrok project. * * Copyright (C) 2010-2012 Bert Vermeulen * Copyright (C) 2010-2012 Uwe Hermann @@ -589,8 +589,12 @@ SR_PRIV int serial_set_params(struct sr_serial_dev_inst *serial, int baudrate, return SR_ERR; } - /* Do not translate carriage return to newline on input. */ - term.c_iflag &= ~(ICRNL); + /* Turn off all serial port cooking. */ + term.c_iflag &= ~(ISTRIP | INLCR | ICRNL); + term.c_oflag &= ~(ONLCR | OCRNL | ONOCR); +#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) + term.c_oflag &= ~OFILL; +#endif /* Disable canonical mode, and don't echo input characters. */ term.c_lflag &= ~(ICANON | ECHO);