xref: /linux/tools/lib/vsprintf.c (revision 182c2909e22d8a3ec39f8a4530fa19867cbd989b)
1 #include <sys/types.h>
2 #include <linux/kernel.h>
3 #include <stdio.h>
4 
5 int vscnprintf(char *buf, size_t size, const char *fmt, va_list args)
6 {
7        int i = vsnprintf(buf, size, fmt, args);
8        ssize_t ssize = size;
9 
10        return (i >= ssize) ? (ssize - 1) : i;
11 }
12 
13 int scnprintf(char * buf, size_t size, const char * fmt, ...)
14 {
15        ssize_t ssize = size;
16        va_list args;
17        int i;
18 
19        va_start(args, fmt);
20        i = vsnprintf(buf, size, fmt, args);
21        va_end(args);
22 
23        return (i >= ssize) ? (ssize - 1) : i;
24 }
25