summaryrefslogtreecommitdiffstats
path: root/contrib/nvi/clib/vsnprintf.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/nvi/clib/vsnprintf.c')
-rw-r--r--contrib/nvi/clib/vsnprintf.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/contrib/nvi/clib/vsnprintf.c b/contrib/nvi/clib/vsnprintf.c
new file mode 100644
index 0000000..a1b013a
--- /dev/null
+++ b/contrib/nvi/clib/vsnprintf.c
@@ -0,0 +1,31 @@
+#include "config.h"
+
+#include <sys/types.h>
+
+#include <stdio.h>
+
+#ifdef __STDC__
+#include <stdarg.h>
+#else
+#include <varargs.h>
+#endif
+
+/*
+ * PUBLIC: #ifndef HAVE_VSNPRINTF
+ * PUBLIC: int vsnprintf __P((char *, size_t, const char *, ...));
+ * PUBLIC: #endif
+ */
+int
+vsnprintf(str, n, fmt, ap)
+ char *str;
+ size_t n;
+ const char *fmt;
+ va_list ap;
+{
+#ifdef SPRINTF_RET_CHARPNT
+ (void)vsprintf(str, fmt, ap);
+ return (strlen(str));
+#else
+ return (vsprintf(str, fmt, ap));
+#endif
+}
OpenPOWER on IntegriCloud