+ switch (stopbits) {
+ case 1:
+ break;
+ case 2:
+ term.c_cflag |= CSTOPB;
+ default:
+ return SIGROK_ERR;
+ }
+
+ term.c_cflag &= ~(IXON | IXOFF | CRTSCTS);
+ switch (flowcontrol) {
+ case 2:
+ term.c_cflag |= IXON | IXOFF;
+ break;
+ case 1:
+ term.c_cflag |= CRTSCTS;
+ default:
+ return SIGROK_ERR;
+ }
+
+ term.c_iflag &= ~(IGNPAR | PARODD | PARENB);
+ switch (parity) {
+ case 0:
+ term.c_iflag |= IGNPAR;
+ break;
+ case 1:
+ term.c_iflag |= PARENB;
+ break;
+ case 2:
+ term.c_iflag |= PARENB | PARODD;
+ break;
+ default:
+ return SIGROK_ERR;
+ }
+