]> the.earth.li Git - onak.git/blobdiff - charfuncs.c
Create an initial database when installing the package.
[onak.git] / charfuncs.c
index de68b661ae222d3e1f1e2b2716d9e53690c3eb14..c8a140ff2ff45686cac6804c522a83e033a70e62 100644 (file)
@@ -6,6 +6,7 @@
  * Copyright 2002 Project Purple
  */
 
+#include <stdio.h>
 #include <sys/types.h>
 #include <sys/uio.h>
 #include <unistd.h>
@@ -21,7 +22,7 @@
 int buffer_fetchchar(void *ctx, size_t count, unsigned char *c)
 {
        struct buffer_ctx *buf = NULL;
-       int i;
+       size_t i;
        
        buf = (struct buffer_ctx *) ctx;
        for (i = 0; i < count; i++) {
@@ -45,7 +46,7 @@ int buffer_putchar(void *ctx, size_t count, unsigned char *c)
 {
        struct buffer_ctx *buf = NULL;
        size_t newsize = 0;
-       int i;
+       size_t i;
        
        buf = (struct buffer_ctx *) ctx;
 
@@ -79,3 +80,19 @@ int file_putchar(void *fd, size_t count, unsigned char *c)
 {
        return !(write( *(int *) fd, c, count));
 }
+
+/**
+ *     stdin_getchar - Gets a char from stdin.
+ */
+int stdin_getchar(void *ctx, size_t count, unsigned char *c)
+{
+       return (fread(c, 1, count, stdin) != count);
+}
+
+/**
+ *     stdout_putchar - Puts a char to stdout.
+ */
+int stdout_putchar(void *ctx, size_t count, unsigned char *c)
+{
+       return (fwrite(c, 1, count, stdout) != count);
+}