From abd3e4040bd76058d0148884879858894258fb9f Mon Sep 17 00:00:00 2001 From: Kinsey Moore Date: Fri, 9 May 2014 22:49:26 +0000 Subject: Allow Asterisk to compile under GCC 4.10 This resolves a large number of compiler warnings from GCC 4.10 which cause the build to fail under dev mode. The vast majority are signed/unsigned mismatches in printf-style format strings. ........ Merged revisions 413586 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 413587 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 413588 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@413589 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- pbx/dundi-parser.c | 8 ++++---- pbx/pbx_config.c | 2 +- pbx/pbx_dundi.c | 10 +++++----- 3 files changed, 10 insertions(+), 10 deletions(-) (limited to 'pbx') diff --git a/pbx/dundi-parser.c b/pbx/dundi-parser.c index 48f17107f..ca219fd1e 100644 --- a/pbx/dundi-parser.c +++ b/pbx/dundi-parser.c @@ -61,7 +61,7 @@ char *dundi_eid_to_str_short(char *s, int maxlen, dundi_eid *eid) *s = '\0'; } else { for (x=0;x<6;x++) { - sprintf(s, "%02X", eid->eid[x]); + sprintf(s, "%02X", (unsigned)eid->eid[x]); s += 2; } } @@ -320,7 +320,7 @@ static void dump_encrypted(char *output, int maxlen, void *value, int len) if ((len > 16) && !(len % 16)) { /* Build up IV */ for (x=0;x<16;x++) { - snprintf(iv + (x << 1), 3, "%02x", ((unsigned char *)value)[x]); + snprintf(iv + (x << 1), 3, "%02x", (unsigned)((unsigned char *)value)[x]); } snprintf(output, maxlen, "[IV %s] %d encrypted blocks\n", iv, len / 16); } else @@ -334,7 +334,7 @@ static void dump_raw(char *output, int maxlen, void *value, int len) output[maxlen - 1] = '\0'; strcpy(output, "[ "); for (x=0;xcmdresp & 0x3f)]; } - snprintf(subclass2, (int)sizeof(subclass2), "%02x", fhi->cmdflags); + snprintf(subclass2, (int)sizeof(subclass2), "%02x", (unsigned)fhi->cmdflags); subclass = subclass2; snprintf(tmp, (int)sizeof(tmp), "%s-Frame -- OSeqno: %3.3d ISeqno: %3.3d Type: %s (%s)\n", diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c index b3cc211b0..478d3ce54 100644 --- a/pbx/pbx_config.c +++ b/pbx/pbx_config.c @@ -538,7 +538,7 @@ static char *complete_dialplan_remove_extension(struct ast_cli_args *a) /* XXX lock e ? */ priority = NULL; while ( !ret && (priority = ast_walk_extension_priorities(e, priority)) ) { - snprintf(buffer, sizeof(buffer), "%u", ast_get_extension_priority(priority)); + snprintf(buffer, sizeof(buffer), "%d", ast_get_extension_priority(priority)); if (partial_match(buffer, a->word, len) && ++which > a->n) /* n-th match */ ret = strdup(buffer); } diff --git a/pbx/pbx_dundi.c b/pbx/pbx_dundi.c index 1d9ea840c..d3e81a8d1 100644 --- a/pbx/pbx_dundi.c +++ b/pbx/pbx_dundi.c @@ -926,7 +926,7 @@ static int cache_save(dundi_eid *eidpeer, struct dundi_request *req, int start, /* Skip anything with an illegal pipe in it */ if (strchr(req->dr[x].dest, '|')) continue; - snprintf(data + strlen(data), sizeof(data) - strlen(data), "%d/%d/%d/%s/%s|", + snprintf(data + strlen(data), sizeof(data) - strlen(data), "%u/%d/%d/%s/%s|", req->dr[x].flags, req->dr[x].weight, req->dr[x].techint, req->dr[x].dest, dundi_eid_to_str_short(eidpeer_str, sizeof(eidpeer_str), &req->dr[x].eid)); } @@ -1185,7 +1185,7 @@ static int cache_lookup_internal(time_t now, struct dundi_request *req, char *ke if (expiration > 0) { ast_debug(1, "Found cache expiring in %d seconds!\n", expiration); ptr += length + 1; - while((sscanf(ptr, "%30d/%30d/%30d/%n", &(flags.flags), &weight, &tech, &length) == 3)) { + while((sscanf(ptr, "%30d/%30d/%30d/%n", (int *)&(flags.flags), &weight, &tech, &length) == 3)) { ptr += length; term = strchr(ptr, '|'); if (term) { @@ -1255,7 +1255,7 @@ static int cache_lookup(struct dundi_request *req, dundi_eid *peer_eid, uint32_t ast_eid_to_str(eid_str_full, sizeof(eid_str_full), peer_eid); snprintf(key, sizeof(key), "%s/%s/%s/e%08x", eid_str, req->number, req->dcontext, crc); res |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); - snprintf(key, sizeof(key), "%s/%s/%s/e%08x", eid_str, req->number, req->dcontext, 0); + snprintf(key, sizeof(key), "%s/%s/%s/e%08x", eid_str, req->number, req->dcontext, (unsigned)0); res |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); snprintf(key, sizeof(key), "%s/%s/%s/r%s", eid_str, req->number, req->dcontext, eidroot_str); res |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); @@ -1270,7 +1270,7 @@ static int cache_lookup(struct dundi_request *req, dundi_eid *peer_eid, uint32_t /* Check for hints */ snprintf(key, sizeof(key), "hint/%s/%s/%s/e%08x", eid_str, tmp, req->dcontext, crc); res2 |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); - snprintf(key, sizeof(key), "hint/%s/%s/%s/e%08x", eid_str, tmp, req->dcontext, 0); + snprintf(key, sizeof(key), "hint/%s/%s/%s/e%08x", eid_str, tmp, req->dcontext, (unsigned)0); res2 |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); snprintf(key, sizeof(key), "hint/%s/%s/%s/r%s", eid_str, tmp, req->dcontext, eidroot_str); res2 |= cache_lookup_internal(now, req, key, eid_str_full, lowexpiration); @@ -2967,7 +2967,7 @@ static char *dundi_show_cache(struct ast_cli_entry *e, int cmd, struct ast_cli_a ptr = db_entry->data + length + 1; - if ((sscanf(ptr, "%30d/%30d/%30d/%n", &(flags.flags), &weight, &tech, &length) != 3)) { + if ((sscanf(ptr, "%30u/%30d/%30d/%n", &(flags.flags), &weight, &tech, &length) != 3)) { continue; } -- cgit v1.2.3