aboutsummaryrefslogtreecommitdiff
path: root/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c
diff options
context:
space:
mode:
Diffstat (limited to 'riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c')
-rw-r--r--riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c b/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c
new file mode 100644
index 0000000..f39cd2a
--- /dev/null
+++ b/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/out_put.c
@@ -0,0 +1,23 @@
+#include <unistd.h>
+#include "str_defs.h"
+
+static char buf_space[256];
+static int buf_pos;
+
+void out_flush() /*EXTRACT_INCL*/ {
+ const_io((int(*)())write, 1, buf_space, buf_pos);
+ buf_pos=0;
+}
+
+void out_char(char ch) /*EXTRACT_INCL*/ {
+ if (buf_pos == sizeof(buf_space)) out_flush();
+ buf_space[buf_pos] = ch;
+ buf_pos++;
+}
+
+void out_puts(char *s) /*EXTRACT_INCL*/ {
+ while (*s) {
+ out_char(*s);
+ ++s;
+ }
+}