#include <limits.h>
#include <locale.h>
#include <regex.h>
+#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <signal.h>
void printerr(int ret, char *prefix);
char *makepath(char *dir, char *name);
+#undef dprintf
+int
+dprintf(int fd, const char *fmt, ...)
+{
+ char buf[BUFSIZ];
+ int r;
+ va_list ap;
+
+ va_start(ap, fmt);
+ r = vsnprintf(buf, sizeof(buf), fmt, ap);
+ if (r > 0)
+ write(fd, buf, r);
+ va_end(ap);
+ return r;
+}
+
void *
xmalloc(size_t size)
{