diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2015-11-09 05:12:59 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2015-11-09 05:12:59 +0000 |
commit | 26c046fbc57d53136b4fb3b5e0d18298318125d4 (patch) | |
tree | 0397d2184e7fba8a51f7fb9a6fc01a82d0748411 /nss/lib/dbm/src/snprintf.c | |
parent | c416b91e36567df4ec765a495c5a6ca6a1853f58 (diff) | |
download | nss-26c046fbc57d53136b4fb3b5e0d18298318125d4.tar.gz |
nss-3.21nss-3.21
Diffstat (limited to 'nss/lib/dbm/src/snprintf.c')
-rw-r--r-- | nss/lib/dbm/src/snprintf.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/nss/lib/dbm/src/snprintf.c b/nss/lib/dbm/src/snprintf.c new file mode 100644 index 0000000..377a8d8 --- /dev/null +++ b/nss/lib/dbm/src/snprintf.c @@ -0,0 +1,51 @@ +#ifndef HAVE_SNPRINTF + +#include <sys/types.h> +#include <stddef.h> +#include <stdio.h> + +#include "prtypes.h" + +#include <ncompat.h> + +#include <stdarg.h> + +int +snprintf(char *str, size_t n, const char *fmt, ...) +{ + va_list ap; +#ifdef VSPRINTF_CHARSTAR + char *rp; +#else + int rval; +#endif + va_start(ap, fmt); +#ifdef VSPRINTF_CHARSTAR + rp = vsprintf(str, fmt, ap); + va_end(ap); + return (strlen(rp)); +#else + rval = vsprintf(str, fmt, ap); + va_end(ap); + return (rval); +#endif +} + +int +vsnprintf(str, n, fmt, ap) + char *str; + size_t n; + const char *fmt; + va_list ap; +{ +#ifdef VSPRINTF_CHARSTAR + return (strlen(vsprintf(str, fmt, ap))); +#else + return (vsprintf(str, fmt, ap)); +#endif +} + +#endif /* HAVE_SNPRINTF */ + +/* Some compilers don't like an empty source file. */ +static int dummy = 0; |