configure: use proper CONFIG_ prefix for asprintf/vasprintf
[fio.git] / oslib / asprintf.c
CommitLineData
44e8e956
BVA
1#include <stdarg.h>
2#include <stdio.h>
3#include <stdlib.h>
4#include "oslib/asprintf.h"
5
cb3b6806 6#ifndef CONFIG_HAVE_VASPRINTF
44e8e956
BVA
7int vasprintf(char **strp, const char *fmt, va_list ap)
8{
9 va_list ap_copy;
10 char *str;
11 int len;
12
13#ifdef va_copy
14 va_copy(ap_copy, ap);
15#else
16 __va_copy(ap_copy, ap);
17#endif
18 len = vsnprintf(NULL, 0, fmt, ap_copy);
19 va_end(ap_copy);
20
21 if (len < 0)
22 return len;
23
24 len++;
25 str = malloc(len);
26 *strp = str;
27 return str ? vsnprintf(str, len, fmt, ap) : -1;
28}
29#endif
30
cb3b6806 31#ifndef CONFIG_HAVE_ASPRINTF
44e8e956
BVA
32int asprintf(char **strp, const char *fmt, ...)
33{
34 va_list arg;
35 int done;
36
37 va_start(arg, fmt);
38 done = vasprintf(strp, fmt, arg);
39 va_end(arg);
40
41 return done;
42}
43#endif