Annotation of embedaddon/ntp/libntp/snprintf.c, revision 1.1
1.1 ! misho 1: #include <config.h>
! 2:
! 3: #if !HAVE_SNPRINTF
! 4: #include <sys/types.h>
! 5:
! 6: #ifdef __STDC__
! 7: #include <stdarg.h>
! 8: #else
! 9: #include <varargs.h>
! 10: #endif
! 11: #include <stdio.h>
! 12:
! 13: #include "l_stdlib.h"
! 14:
! 15: #ifdef __STDC__
! 16: int snprintf(char *str, size_t n, const char *fmt, ...)
! 17: #else
! 18: int snprintf(str, n, fmt, va_alist)
! 19: char *str;
! 20: size_t n;
! 21: const char *fmt;
! 22: va_dcl
! 23: #endif
! 24: {
! 25: va_list ap;
! 26: int rval;
! 27: #ifdef VSPRINTF_CHARSTAR
! 28: char *rp;
! 29: #endif
! 30: #ifdef __STDC__
! 31: va_start(ap, fmt);
! 32: #else
! 33: va_start(ap);
! 34: #endif
! 35: #ifdef VSPRINTF_CHARSTAR
! 36: rp = vsprintf(str, fmt, ap);
! 37: va_end(ap);
! 38: return (strlen(rp));
! 39: #else
! 40: rval = vsprintf(str, fmt, ap);
! 41: va_end(ap);
! 42: return (rval);
! 43: #endif
! 44: }
! 45:
! 46: int
! 47: vsnprintf(
! 48: char *str,
! 49: size_t n,
! 50: const char *fmt,
! 51: va_list ap
! 52: )
! 53: {
! 54: #ifdef VSPRINTF_CHARSTAR
! 55: return (strlen(vsprintf(str, fmt, ap)));
! 56: #else
! 57: return (vsprintf(str, fmt, ap));
! 58: #endif
! 59: }
! 60: #else
! 61: int snprintf_bs;
! 62: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>