summaryrefslogtreecommitdiff
path: root/libdde-linux26/contrib/include/linux/tty_flip.h
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2013-07-27 22:15:01 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2013-07-27 22:15:01 +0000
commit7996a3d79d55b7f879dfd62e202bbfe2963718d3 (patch)
tree8d9f6759fec4099b9be503c11c7ed174f7204980 /libdde-linux26/contrib/include/linux/tty_flip.h
parent4fbe7358c7747a9165f776eb19addbb9baf7def2 (diff)
really properly move files
Diffstat (limited to 'libdde-linux26/contrib/include/linux/tty_flip.h')
-rw-r--r--libdde-linux26/contrib/include/linux/tty_flip.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/libdde-linux26/contrib/include/linux/tty_flip.h b/libdde-linux26/contrib/include/linux/tty_flip.h
new file mode 100644
index 00000000..eb677cf5
--- /dev/null
+++ b/libdde-linux26/contrib/include/linux/tty_flip.h
@@ -0,0 +1,23 @@
+#ifndef _LINUX_TTY_FLIP_H
+#define _LINUX_TTY_FLIP_H
+
+extern int tty_buffer_request_room(struct tty_struct *tty, size_t size);
+extern int tty_insert_flip_string(struct tty_struct *tty, const unsigned char *chars, size_t size);
+extern int tty_insert_flip_string_flags(struct tty_struct *tty, const unsigned char *chars, const char *flags, size_t size);
+extern int tty_prepare_flip_string(struct tty_struct *tty, unsigned char **chars, size_t size);
+extern int tty_prepare_flip_string_flags(struct tty_struct *tty, unsigned char **chars, char **flags, size_t size);
+void tty_schedule_flip(struct tty_struct *tty);
+
+static inline int tty_insert_flip_char(struct tty_struct *tty,
+ unsigned char ch, char flag)
+{
+ struct tty_buffer *tb = tty->buf.tail;
+ if (tb && tb->used < tb->size) {
+ tb->flag_buf_ptr[tb->used] = flag;
+ tb->char_buf_ptr[tb->used++] = ch;
+ return 1;
+ }
+ return tty_insert_flip_string_flags(tty, &ch, &flag, 1);
+}
+
+#endif /* _LINUX_TTY_FLIP_H */