X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=charfuncs.c;h=c8a140ff2ff45686cac6804c522a83e033a70e62;hb=a047e3e158d560af079bec920460711d8222317c;hp=de68b661ae222d3e1f1e2b2716d9e53690c3eb14;hpb=62078c1601192c2594b954a122ac44a0c319c9bd;p=onak.git diff --git a/charfuncs.c b/charfuncs.c index de68b66..c8a140f 100644 --- a/charfuncs.c +++ b/charfuncs.c @@ -6,6 +6,7 @@ * Copyright 2002 Project Purple */ +#include #include #include #include @@ -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); +}