summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTerry Wilson <twilson@digium.com>2008-03-18 15:43:34 +0000
committerTerry Wilson <twilson@digium.com>2008-03-18 15:43:34 +0000
commitb02bc230af68d05df171a0a099d6c3d94168ab64 (patch)
treea07721daf3a91733bc3e073bab0697333d426e21 /include
parent760fc3403c7355fa05bc1b7470405239aad7af8e (diff)
Go through and fix a bunch of places where character strings were being interpreted as format strings. Most of these changes are solely to make compiling with -Wsecurity and -Wformat=2 happy, and were not
actual problems, per se. I also added format attributes to any printf wrapper functions I found that didn't have them. -Wsecurity and -Wmissing-format-attribute added to --enable-dev-mode. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/astobj.h2
-rw-r--r--include/asterisk/strings.h2
-rw-r--r--include/asterisk/utils.h2
-rw-r--r--include/jitterbuf.h2
4 files changed, 5 insertions, 3 deletions
diff --git a/include/asterisk/astobj.h b/include/asterisk/astobj.h
index cca463f42..1d302d38a 100644
--- a/include/asterisk/astobj.h
+++ b/include/asterisk/astobj.h
@@ -810,7 +810,7 @@ extern "C" {
* descriptor.
*/
#define ASTOBJ_CONTAINER_DUMP(fd,s,slen,container) \
- ASTOBJ_CONTAINER_TRAVERSE(container, 1, do { ASTOBJ_DUMP(s,slen,iterator); ast_cli(fd, s); } while(0))
+ ASTOBJ_CONTAINER_TRAVERSE(container, 1, do { ASTOBJ_DUMP(s,slen,iterator); ast_cli(fd, "%s", s); } while(0))
#if defined(__cplusplus) || defined(c_plusplus)
}
diff --git a/include/asterisk/strings.h b/include/asterisk/strings.h
index 2c49cc054..226c7bb67 100644
--- a/include/asterisk/strings.h
+++ b/include/asterisk/strings.h
@@ -218,7 +218,7 @@ int ast_build_string(char **buffer, size_t *space, const char *fmt, ...) __attri
\param fmt printf-style format string
\param ap varargs list of arguments for format
*/
-int ast_build_string_va(char **buffer, size_t *space, const char *fmt, va_list ap);
+int ast_build_string_va(char **buffer, size_t *space, const char *fmt, va_list ap) __attribute__((format (printf, 3, 0)));
/*!
* \brief Make sure something is true.
diff --git a/include/asterisk/utils.h b/include/asterisk/utils.h
index a9c8d5f0c..be7d3fbfd 100644
--- a/include/asterisk/utils.h
+++ b/include/asterisk/utils.h
@@ -554,6 +554,7 @@ char * attribute_malloc _ast_strndup(const char *str, size_t len, const char *fi
_ast_asprintf((ret), __FILE__, __LINE__, __PRETTY_FUNCTION__, fmt, __VA_ARGS__)
AST_INLINE_API(
+__attribute__((format (printf, 5, 6)))
int _ast_asprintf(char **ret, const char *file, int lineno, const char *func, const char *fmt, ...),
{
int res;
@@ -580,6 +581,7 @@ int _ast_asprintf(char **ret, const char *file, int lineno, const char *func, co
_ast_vasprintf((ret), __FILE__, __LINE__, __PRETTY_FUNCTION__, (fmt), (ap))
AST_INLINE_API(
+__attribute__((format (printf, 5, 0)))
int _ast_vasprintf(char **ret, const char *file, int lineno, const char *func, const char *fmt, va_list ap),
{
int res;
diff --git a/include/jitterbuf.h b/include/jitterbuf.h
index 2a6045f05..00f26e21c 100644
--- a/include/jitterbuf.h
+++ b/include/jitterbuf.h
@@ -163,7 +163,7 @@ enum jb_return_code jb_getinfo(jitterbuf *jb, jb_info *stats);
/*! \brief set jitterbuf conf */
enum jb_return_code jb_setconf(jitterbuf *jb, jb_conf *conf);
-typedef void (*jb_output_function_t)(const char *fmt, ...);
+typedef void __attribute__((format (printf, 1, 2))) (*jb_output_function_t)(const char *fmt, ...);
void jb_setoutput(jb_output_function_t err, jb_output_function_t warn, jb_output_function_t dbg);
#ifdef __cplusplus