diff options
author | Steven Barth <cyrus@openwrt.org> | 2015-01-06 23:40:24 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2015-01-07 13:08:43 +0100 |
commit | 58b0957c48506083addde7a302ce82225002eb2f (patch) | |
tree | d3743f763f7af997af72d992ae2364fdb086d390 /src/erec.c | |
parent | 95af7f0a4c87894ef818f248845e1954fa780bec (diff) |
erec: use stdio vasprintf instead of gmp_vasprintf
Use stdio's vasprintf instead of gmp_vasprintf which is not part
of the mini-gmp function subset. Furthermore convert the only
gmp-specific user and allow the compiler to verify format-strings.
Signed-off-by: Steven Barth <cyrus@openwrt.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/erec.c')
-rw-r--r-- | src/erec.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -44,6 +44,7 @@ static void erec_destroy(struct error_record *erec) xfree(erec); } +__attribute__((format(printf, 3, 0))) struct error_record *erec_vcreate(enum error_record_types type, const struct location *loc, const char *fmt, va_list ap) @@ -55,10 +56,13 @@ struct error_record *erec_vcreate(enum error_record_types type, erec->num_locations = 0; erec_add_location(erec, loc); - gmp_vasprintf(&erec->msg, fmt, ap); + if (vasprintf(&erec->msg, fmt, ap) < 0) + erec->msg = NULL; + return erec; } +__attribute__((format(printf, 3, 4))) struct error_record *erec_create(enum error_record_types type, const struct location *loc, const char *fmt, ...) |