diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-01 18:22:39 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-01 18:22:39 +0000 |
commit | ea96823f2626e2a4178eec54f8a78a666d376ac1 (patch) | |
tree | d6fd63606de3355d2e0f7bb2ab751116095a1451 /utils/astman.c | |
parent | 1c4fdfd503883d806ba05da5d0e9156b54a4d51b (diff) |
fix a bunch of potential problems found by gcc 4.3.x, primarily bare strings being passed to printf()-like functions and ignored results from read()/write() and friends
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@153337 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'utils/astman.c')
-rw-r--r-- | utils/astman.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/utils/astman.c b/utils/astman.c index f259f6884..757421725 100644 --- a/utils/astman.c +++ b/utils/astman.c @@ -144,10 +144,14 @@ static void fdprintf(int fd, char *fmt, ...) { char stuff[4096]; va_list ap; + int res; + va_start(ap, fmt); vsnprintf(stuff, sizeof(stuff), fmt, ap); va_end(ap); - write(fd, stuff, strlen(stuff)); + if ((res = write(fd, stuff, strlen(stuff))) < 0) { + fprintf(stderr, "write() failed: %s\n", strerror(errno)); + } } static char *get_header(struct message *m, char *var) @@ -398,13 +402,16 @@ static int manager_action(char *action, char *fmt, ...) struct ast_mansession *s; char tmp[4096]; va_list ap; + int res; s = &session; fdprintf(s->fd, "Action: %s\r\n", action); va_start(ap, fmt); vsnprintf(tmp, sizeof(tmp), fmt, ap); va_end(ap); - write(s->fd, tmp, strlen(tmp)); + if ((res = write(s->fd, tmp, strlen(tmp))) < 0) { + fprintf(stderr, "write() failed: %s\n", strerror(errno)); + } fdprintf(s->fd, "\r\n"); return 0; } |