From 9da69ac6c16e008c72ec8fda2d34b1036cdbfde3 Mon Sep 17 00:00:00 2001 From: Corey Farrell <git@cfware.com> Date: Sat, 18 Nov 2017 20:50:48 -0500 Subject: [PATCH] iostream: Fix ast_iostream_printf declaration. This adds the printf attribute and changes 'fmt' from 'const void *' to 'const char *'. This resolves a warning from some compiler for vsnprintf needing a literal string for format. Change-Id: I71c33a8262590042ee451e1146760c10bb22fb78 --- include/asterisk/iostream.h | 3 ++- main/iostream.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/include/asterisk/iostream.h b/include/asterisk/iostream.h index c641ffb373..e9816ac9b1 100644 --- a/include/asterisk/iostream.h +++ b/include/asterisk/iostream.h @@ -109,7 +109,8 @@ ssize_t ast_iostream_read(struct ast_iostream *stream, void *buf, size_t count); ssize_t ast_iostream_gets(struct ast_iostream *stream, char *buf, size_t count); ssize_t ast_iostream_discard(struct ast_iostream *stream, size_t count); ssize_t ast_iostream_write(struct ast_iostream *stream, const void *buf, size_t count); -ssize_t ast_iostream_printf(struct ast_iostream *stream, const void *fmt, ...); +ssize_t __attribute__((format(printf, 2, 3))) ast_iostream_printf( + struct ast_iostream *stream, const char *fmt, ...); struct ast_iostream* ast_iostream_from_fd(int *fd); int ast_iostream_start_tls(struct ast_iostream **stream, SSL_CTX *ctx, int client); diff --git a/main/iostream.c b/main/iostream.c index 2a2601d380..d91863319b 100644 --- a/main/iostream.c +++ b/main/iostream.c @@ -443,7 +443,7 @@ ssize_t ast_iostream_write(struct ast_iostream *stream, const void *buf, size_t } } -ssize_t ast_iostream_printf(struct ast_iostream *stream, const void *fmt, ...) +ssize_t ast_iostream_printf(struct ast_iostream *stream, const char *fmt, ...) { char sbuf[512], *buf = sbuf; int len, len2, ret = -1; -- GitLab