From 765c7494b3dac62207e6cd57fb839997e237f292 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Fri, 16 Jul 2010 11:58:26 +0300 Subject: Moving to 2.13.2. --- missing/vprintf.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 missing/vprintf.c (limited to 'missing/vprintf.c') diff --git a/missing/vprintf.c b/missing/vprintf.c new file mode 100644 index 00000000..dea4ca86 --- /dev/null +++ b/missing/vprintf.c @@ -0,0 +1,54 @@ +#include +#include + +#ifndef BUFSIZ +#include +#endif + +#ifndef va_dcl +#include +#endif + +int +vsprintf(str, fmt, ap) + char *str, *fmt; + va_list ap; +{ + FILE f; + int len; + + f._flag = _IOWRT+_IOSTRG; + f._ptr = (char *)str; /* My copy of BSD stdio.h has this as (char *) + * with a comment that it should be + * (unsigned char *). Since this code is + * intended for use on a vanilla BSD system, + * we'll stick with (char *) for now. + */ + f._cnt = 32767; + len = _doprnt(fmt, ap, &f); + *f._ptr = 0; + return (len); +} + +int +vfprintf(iop, fmt, ap) + FILE *iop; + char *fmt; + va_list ap; +{ + int len; + + len = _doprnt(fmt, ap, iop); + return (ferror(iop) ? EOF : len); +} + +int +vprintf(fmt, ap) + char *fmt; + va_list ap; +{ + int len; + + len = _doprnt(fmt, ap, stdout); + return (ferror(stdout) ? EOF : len); +} -- cgit v1.2.3