Index: fusl/src/termios/cfsetospeed.c |
diff --git a/fusl/src/termios/cfsetospeed.c b/fusl/src/termios/cfsetospeed.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..80c790f1fda1b2046a8746d6b4e2b436ab95ac0c |
--- /dev/null |
+++ b/fusl/src/termios/cfsetospeed.c |
@@ -0,0 +1,22 @@ |
+#include <termios.h> |
+#include <sys/ioctl.h> |
+#include <errno.h> |
+#include "libc.h" |
+ |
+int cfsetospeed(struct termios *tio, speed_t speed) |
+{ |
+ if (speed & ~CBAUD) { |
+ errno = EINVAL; |
+ return -1; |
+ } |
+ tio->c_cflag &= ~CBAUD; |
+ tio->c_cflag |= speed; |
+ return 0; |
+} |
+ |
+int cfsetispeed(struct termios *tio, speed_t speed) |
+{ |
+ return speed ? cfsetospeed(tio, speed) : 0; |
+} |
+ |
+weak_alias(cfsetospeed, cfsetspeed); |