| 1234567891011121314151617181920212223242526272829303132 | 
							- #include "common.h"
 
- int vasprintf(char **bufp, const char *fmt, va_list va)
 
- {
 
-     va_list va2;
 
-     int len;
 
-     char *buf;
 
-     va_copy(va2, va);
 
-     len = vsnprintf(NULL, 0, fmt, va2);
 
-     va_end(va2);
 
-     buf = malloc(len+1);
 
-     if (buf)
 
- 	len = vsnprintf(buf, len+1, fmt, va);
 
-     *bufp = buf;
 
-     return len;
 
- }
 
- int asprintf(char **bufp, const char *fmt, ...)
 
- {
 
-     va_list va;
 
-     int len;
 
-     va_start(va, fmt);
 
-     len = vasprintf(bufp, fmt, va);
 
-     va_end(va);
 
-     return len;
 
- }
 
 
  |