From ca9d3b8ac9ca191ff1ceb04cacb17ca527cf7bea Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Sun, 15 Feb 2009 20:56:27 +0000 Subject: Fix a number of problems with ast_sched_report(). 1) It had numerous coding guidelines violations with regards to formatting. 2) It allocated memory using ast_calloc() that was never freed. 3) It didn't check for failure from the allocation. 4) It used sprintf() and strcat() to build the result, doing zero checking to prevent writing past the end of the provided buffer. The function also lacks API documentation, but that has not been addressed in this commit. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@175829 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- include/asterisk/sched.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'include/asterisk') diff --git a/include/asterisk/sched.h b/include/asterisk/sched.h index f9e1ca5d2..564453ae2 100644 --- a/include/asterisk/sched.h +++ b/include/asterisk/sched.h @@ -147,13 +147,12 @@ void sched_context_destroy(struct sched_context *c); typedef int (*ast_sched_cb)(const void *data); #define AST_SCHED_CB(a) ((ast_sched_cb)(a)) -struct ast_cb_names -{ +struct ast_cb_names { int numassocs; char *list[10]; ast_sched_cb cblist[10]; }; -char *ast_sched_report(struct sched_context *con, char *buf, int bufsiz, struct ast_cb_names *cbnames); +void ast_sched_report(struct sched_context *con, struct ast_str **buf, struct ast_cb_names *cbnames); /*! \brief Adds a scheduled event * Schedule an event to take place at some point in the future. callback -- cgit v1.2.3