Code

Added __attribute__((format(printf, ...))) where appropriate.
[sysdb.git] / src / include / utils / strbuf.h
index 96b4f86bee3aa8937899a9af08314f9fa5866860..5e9913d1d6217a8753ebc131933ab0c93910f38c 100644 (file)
@@ -74,9 +74,11 @@ sdb_strbuf_destroy(sdb_strbuf_t *strbuf);
  *  - a negative value on error
  */
 ssize_t
-sdb_strbuf_vappend(sdb_strbuf_t *strbuf, const char *fmt, va_list ap);
+sdb_strbuf_vappend(sdb_strbuf_t *strbuf, const char *fmt, va_list ap)
+               __attribute__((format(printf, 2, 0)));
 ssize_t
-sdb_strbuf_append(sdb_strbuf_t *strbuf, const char *fmt, ...);
+sdb_strbuf_append(sdb_strbuf_t *strbuf, const char *fmt, ...)
+               __attribute__((format(printf, 2, 3)));
 
 /*
  * sdb_strbuf_vsprintf, sdb_strbuf_sprintf:
@@ -90,9 +92,11 @@ sdb_strbuf_append(sdb_strbuf_t *strbuf, const char *fmt, ...);
  *  - a negative value on error
  */
 ssize_t
-sdb_strbuf_vsprintf(sdb_strbuf_t *strbuf, const char *fmt, va_list ap);
+sdb_strbuf_vsprintf(sdb_strbuf_t *strbuf, const char *fmt, va_list ap)
+               __attribute__((format(printf, 2, 0)));
 ssize_t
-sdb_strbuf_sprintf(sdb_strbuf_t *strbuf, const char *fmt, ...);
+sdb_strbuf_sprintf(sdb_strbuf_t *strbuf, const char *fmt, ...)
+               __attribute__((format(printf, 2, 3)));
 
 /*
  * sdb_strbuf_memcpy, sdb_strbuf_memappend:
@@ -166,6 +170,15 @@ sdb_strbuf_string(sdb_strbuf_t *strbuf);
 size_t
 sdb_strbuf_len(sdb_strbuf_t *strbuf);
 
+/*
+ * sdb_strbuf_cap:
+ * Returns the current capacity of the string buffer. It describes the max
+ * length of the buffer's content (including terminating nul byte) that may be
+ * stored in the buffer without resizing it.
+ */
+size_t
+sdb_strbuf_cap(sdb_strbuf_t *strbuf);
+
 #ifdef __cplusplus
 } /* extern "C" */
 #endif