Add xasprintf() and xvasprintf().
[oweals/tinc.git] / lib / xalloc.h
index 3579efceb95e1260ca73478446585cf3dad6f2f1..51f99bdfd2d322544999c685f01f7800b8ae040c 100644 (file)
@@ -18,9 +18,12 @@ extern char *const xalloc_msg_memory_exhausted;
 /* FIXME: describe */
 extern void (*xalloc_fail_func) ();
 
-void *xmalloc PARAMS ((size_t n));
-void *xmalloc_and_zero PARAMS ((size_t n));
+void *xmalloc PARAMS ((size_t n)) __attribute__ ((__malloc__));
+void *xmalloc_and_zero PARAMS ((size_t n)) __attribute__ ((__malloc__));
 void *xcalloc PARAMS ((size_t n, size_t s));
-void *xrealloc PARAMS ((void *p, size_t n));
+void *xrealloc PARAMS ((void *p, size_t n)) __attribute__ ((__malloc__));
 
-char *xstrdup PARAMS ((char *s));
+char *xstrdup PARAMS ((const char *s)) __attribute__ ((__malloc__));
+
+extern int xasprintf(char **strp, const char *fmt, ...);
+extern int xvasprintf(char **strp, const char *fmt, va_list ap);