Fix printf problems with high ascii characters after r413586 (1.8).

In r413586 (1.8) various casts were added to silence gcc 4.10 warnings.
Those fixes included things like:

    -out += sprintf(out, "%%%02X", (unsigned char) *ptr);
    +out += sprintf(out, "%%%02X", (unsigned) *ptr);

That works for low ascii characters, but for the high range that yields
e.g. FFFFFFC3 when C3 is expected.

This changeset:
- fixes those casts to use the 'hh' unsigned char modifier instead
- consistently uses %02x instead of %2.2x (or other non-standard usage)
- adds a few 'h' modifiers in various places
- fixes a 'replcaes' typo
- dev/urandon typo (in 13+ patch)

Review: https://reviewboard.asterisk.org/r/4263/

ASTERISK-24619 #close
Reported by: Stefan27 (on IRC)
........

Merged revisions 429673 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 429674 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 429675 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@429683 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Walter Doekes 2014-12-17 10:23:32 +00:00
parent c4cc668ba9
commit 8b6ecc449c
25 changed files with 88 additions and 90 deletions

View File

@ -269,7 +269,7 @@ static const char* octStrToString
if (bufsiz > 1) buffer[1] = '\0';
for (i = 0; i < numocts; i++) {
if (i < bufsiz - 1) {
sprintf (lbuf, "%02x", (unsigned)data[i]);
sprintf (lbuf, "%02hhx", (unsigned char)data[i]);
strcat (&buffer[(i*2)+1], lbuf);
}
else break;

View File

@ -1456,7 +1456,7 @@ static void dump_message(char *type, char *vname, unsigned char *buf, int buflen
int x;
printf("%s %s: [ ", type, vname);
for (x = 0; x < buflen; x++)
printf("%02x ", buf[x]);
printf("%02hhx ", buf[x]);
printf("]\n");
}
#endif

View File

@ -87,9 +87,8 @@ static int cpeid_exec(struct ast_channel *chan, const char *idata)
res = ast_adsi_get_cpeid(chan, cpeid, 0);
if (res > 0) {
gotcpeid = 1;
ast_verb(3, "Got CPEID of '%02x:%02x:%02x:%02x' on '%s'\n",
(unsigned)cpeid[0], (unsigned)cpeid[1], (unsigned)cpeid[2],
(unsigned)cpeid[3], ast_channel_name(chan));
ast_verb(3, "Got CPEID of '%02hhx:%02hhx:%02hhx:%02hhx' on '%s'\n",
cpeid[0], cpeid[1], cpeid[2], cpeid[3], ast_channel_name(chan));
}
if (res > -1) {
strcpy(data[1], "Measuring CPE...");
@ -103,9 +102,8 @@ static int cpeid_exec(struct ast_channel *chan, const char *idata)
}
if (res > -1) {
if (gotcpeid)
snprintf(data[1], 80, "CPEID: %02x:%02x:%02x:%02x",
(unsigned)cpeid[0], (unsigned)cpeid[1],
(unsigned)cpeid[2], (unsigned)cpeid[3]);
snprintf(data[1], 80, "CPEID: %02hhx:%02hhx:%02hhx:%02hhx",
cpeid[0], cpeid[1], cpeid[2], cpeid[3]);
else
strcpy(data[1], "CPEID Unknown");
if (gotgeometry)

View File

@ -1425,7 +1425,9 @@ static int osp_uuid2str(
int res;
if ((uuid != NULL) && (bufsize > OSP_SIZE_UUIDSTR)) {
snprintf(buffer, bufsize, "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x",
snprintf(buffer, bufsize, "%02hhx%02hhx%02hhx%02hhx-%02hhx%02hhx-"
"%02hhx%02hhx-%02hhx%02hhx-"
"%02hhx%02hhx%02hhx%02hhx%02hhx%02hhx",
uuid[0], uuid[1], uuid[2], uuid[3], uuid[4], uuid[5], uuid[6], uuid[7],
uuid[8], uuid[9], uuid[10], uuid[11], uuid[12], uuid[13], uuid[14], uuid[15]);
res = OSP_OK;

View File

@ -783,7 +783,7 @@ static void sms_log(sms_t * h, char status)
unsigned char n;
if (h->mr >= 0) {
snprintf(mrs, sizeof(mrs), "%02X", (unsigned)h->mr);
snprintf(mrs, sizeof(mrs), "%02hhX", (unsigned char)h->mr);
}
snprintf(line, sizeof(line), "%s %c%c%c%s %s %s %s ",
isodate(time(NULL), buf, sizeof(buf)),
@ -1016,7 +1016,7 @@ static void sms_writefile(sms_t * h)
unsigned int p;
fprintf(o, "udh#");
for (p = 0; p < h->udhl; p++) {
fprintf(o, "%02X", (unsigned)h->udh[p]);
fprintf(o, "%02hhX", (unsigned char)h->udh[p]);
}
fprintf(o, "\n");
}
@ -1049,7 +1049,7 @@ static void sms_writefile(sms_t * h)
if (p == h->udl) { /* can write in ucs-1 hex */
fprintf(o, "ud#");
for (p = 0; p < h->udl; p++) {
fprintf(o, "%02X", (unsigned)h->ud[p]);
fprintf(o, "%02hhX", (unsigned char)h->ud[p]);
}
fprintf(o, "\n");
} else { /* write in UCS-2 */
@ -1140,7 +1140,7 @@ static unsigned char sms_handleincoming (sms_t * h)
return 0xFF; /* duh! */
}
} else {
ast_log(LOG_WARNING, "Unknown message type %02X\n", (unsigned)h->imsg[2]);
ast_log(LOG_WARNING, "Unknown message type %02hhX\n", h->imsg[2]);
return 0xFF;
}
} else { /* client */
@ -1163,7 +1163,7 @@ static unsigned char sms_handleincoming (sms_t * h)
return 0xFF; /* duh! */
}
} else {
ast_log(LOG_WARNING, "Unknown message type %02X\n", (unsigned)h->imsg[2]);
ast_log(LOG_WARNING, "Unknown message type %02hhX\n", h->imsg[2]);
return 0xFF;
}
}
@ -1245,7 +1245,7 @@ static char *sms_hexdump(unsigned char buf[], int size, char *s /* destination *
int f;
for (p = s, f = 0; f < size && f < MAX_DEBUG_LEN; f++, p += 3) {
sprintf(p, "%02X ", (unsigned)buf[f]);
sprintf(p, "%02hhX ", (unsigned char)buf[f]);
}
return(s);
}
@ -1483,7 +1483,7 @@ static void sms_debug (int dir, sms_t *h)
int n = (dir == DIR_RX) ? h->ibytep : msg[1] + 2;
int q = 0;
while (q < n && q < 30) {
sprintf(p, " %02X", (unsigned)msg[q++]);
sprintf(p, " %02hhX", msg[q++]);
p += 3;
}
if (q < n) {

View File

@ -387,7 +387,7 @@ static int (*iax2_regfunk)(const char *username, int onoff) = NULL;
break; \
\
for (idx = 0; idx < 16; idx++) \
sprintf(digest + (idx << 1), "%2.2x", (unsigned) key[idx]); \
sprintf(digest + (idx << 1), "%02hhx", (unsigned char) key[idx]); \
\
ast_log(LOG_NOTICE, msg " IAX_COMMAND_RTKEY to rotate key to '%s'\n", digest); \
} while(0)
@ -6442,7 +6442,7 @@ static int decode_frame(ast_aes_decrypt_key *dcx, struct ast_iax2_full_hdr *fh,
padding = 16 + (workspace[15] & 0x0f);
if (iaxdebug)
ast_debug(1, "Decoding full frame with length %d (padding = %d) (15=%02x)\n", *datalen, padding, (unsigned)workspace[15]);
ast_debug(1, "Decoding full frame with length %d (padding = %d) (15=%02hhx)\n", *datalen, padding, workspace[15]);
if (*datalen < padding + sizeof(struct ast_iax2_full_hdr))
return -1;
@ -6489,7 +6489,7 @@ static int encrypt_frame(ast_aes_encrypt_key *ecx, struct ast_iax2_full_hdr *fh,
workspace[15] &= 0xf0;
workspace[15] |= (padding & 0xf);
if (iaxdebug)
ast_debug(1, "Encoding full frame %d/%d with length %d + %d padding (15=%02x)\n", fh->type, fh->csub, *datalen, padding, (unsigned)workspace[15]);
ast_debug(1, "Encoding full frame %d/%d with length %d + %d padding (15=%02hhx)\n", fh->type, fh->csub, *datalen, padding, workspace[15]);
*datalen += padding;
memcpy_encrypt(efh->encdata, workspace, *datalen - sizeof(struct ast_iax2_full_enc_hdr), ecx);
if (*datalen >= 32 + sizeof(struct ast_iax2_full_enc_hdr))
@ -8207,7 +8207,7 @@ static int authenticate_verify(struct chan_iax2_pvt *p, struct iax_ies *ies)
MD5Final(digest, &md5);
/* If they support md5, authenticate with it. */
for (x=0;x<16;x++)
sprintf(requeststr + (x << 1), "%2.2x", (unsigned)digest[x]); /* safe */
sprintf(requeststr + (x << 1), "%02hhx", digest[x]); /* safe */
if (!strcasecmp(requeststr, md5secret)) {
res = 0;
break;
@ -8339,7 +8339,7 @@ static int register_verify(int callno, struct ast_sockaddr *addr, struct iax_ies
MD5Update(&md5, (unsigned char *)tmppw, strlen(tmppw));
MD5Final(digest, &md5);
for (x=0;x<16;x++)
sprintf(requeststr + (x << 1), "%2.2x", (unsigned)digest[x]); /* safe */
sprintf(requeststr + (x << 1), "%02hhx", digest[x]); /* safe */
if (!strcasecmp(requeststr, md5secret))
break;
}
@ -8423,7 +8423,7 @@ static int authenticate(const char *challenge, const char *secret, const char *k
MD5Final(digest, &md5);
/* If they support md5, authenticate with it. */
for (x=0;x<16;x++)
sprintf(digres + (x << 1), "%2.2x", (unsigned)digest[x]); /* safe */
sprintf(digres + (x << 1), "%02hhx", digest[x]); /* safe */
if (pvt) {
build_encryption_keys(digest, pvt);
}

View File

@ -7541,7 +7541,7 @@ static int misdn_write(struct ast_channel *ast, struct ast_frame *frame)
ast_debug(1, "write2mISDN %p %d bytes: ", p, frame->samples);
for (i = 0; i < max; i++) {
ast_debug(1, "%2.2x ", ((char *) frame->data.ptr)[i]);
ast_debug(1, "%02hhx ", ((unsigned char *) frame->data.ptr)[i]);
}
}
#endif

View File

@ -8378,7 +8378,7 @@ static struct ast_frame *sip_rtp_read(struct ast_channel *ast, struct sip_pvt *p
}
ast_str_append(&out, 0, " -> ");
for (i = 0; i < f->datalen; i++) {
ast_str_append(&out, 0, "%02X ", (unsigned)arr[i]);
ast_str_append(&out, 0, "%02hhX ", arr[i]);
}
ast_verb(0, "%s\n", ast_str_buffer(out));
ast_free(out);
@ -23604,7 +23604,7 @@ static void handle_response_refer(struct sip_pvt *p, int resp, const char *rest,
theoretically possible. */
if (resp < 299) { /* 1xx cases don't get here */
ast_log(LOG_WARNING, "SIP transfer to %s had unxpected 2xx response (%d), confusion is possible. \n", p->refer->refer_to, resp);
ast_log(LOG_WARNING, "SIP transfer to %s had unexpected 2xx response (%d), confusion is possible. \n", p->refer->refer_to, resp);
} else {
ast_log(LOG_WARNING, "SIP transfer to %s with response (%d). \n", p->refer->refer_to, resp);
}

View File

@ -935,7 +935,7 @@ static void send_raw_client(int size, const unsigned char *data, struct sockaddr
ast_inet_ntoa(addr_ourip->sin_addr), (int) size,
ast_inet_ntoa(addr_to->sin_addr));
for (tmp = 0; tmp < size; tmp++)
ast_verb(0, "%.2x ", (unsigned char) data[tmp]);
ast_verb(0, "%02hhx ", data[tmp]);
ast_verb(0, "\n******************************************\n");
}
@ -974,7 +974,7 @@ static void send_client(int size, const unsigned char *data, struct unistimsessi
/*#ifdef DUMP_PACKET */
if (unistimdebug) {
ast_verb(0, "Sending datas with seq #0x%.4x Using slot #%d :\n", (unsigned)pte->seq_server, buf_pos);
ast_verb(0, "Sending datas with seq #0x%04x Using slot #%d :\n", (unsigned)pte->seq_server, buf_pos);
}
/*#endif */
send_raw_client(pte->wsabufsend[buf_pos].len, pte->wsabufsend[buf_pos].buf, &(pte->sin),
@ -1130,7 +1130,7 @@ static void send_icon(unsigned char pos, unsigned char status, struct unistimses
{
BUFFSEND;
if (unistimdebug) {
ast_verb(0, "Sending icon pos %d with status 0x%.2x\n", pos, (unsigned)status);
ast_verb(0, "Sending icon pos %d with status 0x%02hhx\n", pos, status);
}
memcpy(buffsend + SIZE_HEADER, packet_send_icon, sizeof(packet_send_icon));
buffsend[9] = pos;
@ -1150,7 +1150,7 @@ static void send_expansion_icon(unsigned char pos, unsigned char status, struct
{
BUFFSEND;
if (unistimdebug) {
ast_verb(0, "Sending expansion icon pos %d with status 0x%.2x\n", pos, (unsigned)status);
ast_verb(0, "Sending expansion icon pos %d with status 0x%02hhx\n", pos, status);
}
memcpy(buffsend + SIZE_HEADER, packet_send_expansion_icon, sizeof(packet_send_expansion_icon));
buffsend[10] = pos;
@ -1262,7 +1262,7 @@ send_favorite(unsigned char pos, unsigned char status, struct unistimsession *pt
int i;
if (unistimdebug) {
ast_verb(0, "Sending favorite pos %d with status 0x%.2x\n", pos, (unsigned)status);
ast_verb(0, "Sending favorite pos %d with status 0x%02hhx\n", pos, status);
}
memcpy(buffsend + SIZE_HEADER, packet_send_favorite, sizeof(packet_send_favorite));
buffsend[10] = pos;
@ -1539,7 +1539,7 @@ static int send_retransmit(struct unistimsession *pte)
i < pte->last_buf_available; i++) {
if (i < 0) {
ast_log(LOG_WARNING,
"Asked to retransmit an ACKed slot ! last_buf_available=%d, seq_server = #0x%.4x last_seq_ack = #0x%.4x\n",
"Asked to retransmit an ACKed slot ! last_buf_available=%d, seq_server = #0x%04x last_seq_ack = #0x%04x\n",
pte->last_buf_available, (unsigned)pte->seq_server, (unsigned)pte->last_seq_ack);
continue;
}
@ -1549,7 +1549,7 @@ static int send_retransmit(struct unistimsession *pte)
unsigned short seq;
seq = ntohs(sbuf[1]);
ast_verb(0, "Retransmit slot #%d (seq=#0x%.4x), last ack was #0x%.4x\n", i,
ast_verb(0, "Retransmit slot #%d (seq=#0x%04x), last ack was #0x%04x\n", i,
(unsigned)seq, (unsigned)pte->last_seq_ack);
}
send_raw_client(pte->wsabufsend[i].len, pte->wsabufsend[i].buf, &pte->sin,
@ -2062,7 +2062,7 @@ static void rcv_mac_addr(struct unistimsession *pte, const unsigned char *buf)
char addrmac[19];
int res = 0;
for (tmp = 15; tmp < 15 + SIZE_HEADER; tmp++) {
sprintf(&addrmac[i], "%.2x", (unsigned) buf[tmp]);
sprintf(&addrmac[i], "%02hhx", buf[tmp]);
i += 2;
}
if (unistimdebug) {
@ -4484,7 +4484,7 @@ static void process_request(int size, unsigned char *buf, struct unistimsession
char keycode = buf[13];
if (unistimdebug) {
ast_verb(0, "Expansion key pressed: keycode = 0x%.2x - current state: %s\n", (unsigned)keycode,
ast_verb(0, "Expansion key pressed: keycode = 0x%02hhx - current state: %s\n", (unsigned char)keycode,
ptestate_tostr(pte->state));
}
}
@ -4492,7 +4492,7 @@ static void process_request(int size, unsigned char *buf, struct unistimsession
char keycode = buf[13];
if (unistimdebug) {
ast_verb(0, "Key pressed: keycode = 0x%.2x - current state: %s\n", (unsigned)keycode,
ast_verb(0, "Key pressed: keycode = 0x%02hhx - current state: %s\n", (unsigned char)keycode,
ptestate_tostr(pte->state));
}
if (keycode == KEY_MUTE) {
@ -4660,15 +4660,14 @@ static void parsing(int size, unsigned char *buf, struct unistimsession *pte,
return;
}
if (buf[5] != 2) {
ast_log(LOG_NOTICE, "%s Wrong direction : got 0x%.2x expected 0x02\n", tmpbuf,
(unsigned)buf[5]);
ast_log(LOG_NOTICE, "%s Wrong direction : got 0x%02hhx expected 0x02\n", tmpbuf, buf[5]);
return;
}
seq = ntohs(sbuf[1]);
if (buf[4] == 1) {
ast_mutex_lock(&pte->lock);
if (unistimdebug) {
ast_verb(0, "ACK received for packet #0x%.4x\n", (unsigned)seq);
ast_verb(0, "ACK received for packet #0x%04x\n", (unsigned)seq);
}
pte->nb_retransmit = 0;
@ -4684,7 +4683,7 @@ static void parsing(int size, unsigned char *buf, struct unistimsession *pte,
pte->last_seq_ack = 0;
} else {
ast_log(LOG_NOTICE,
"%s Warning : ACK received for an already ACKed packet : #0x%.4x we are at #0x%.4x\n",
"%s Warning : ACK received for an already ACKed packet : #0x%04x we are at #0x%04x\n",
tmpbuf, (unsigned)seq, (unsigned)pte->last_seq_ack);
}
ast_mutex_unlock(&pte->lock);
@ -4692,13 +4691,13 @@ static void parsing(int size, unsigned char *buf, struct unistimsession *pte,
}
if (pte->seq_server < seq) {
ast_log(LOG_NOTICE,
"%s Error : ACK received for a non-existent packet : #0x%.4x\n",
"%s Error : ACK received for a non-existent packet : #0x%04x\n",
tmpbuf, (unsigned)pte->seq_server);
ast_mutex_unlock(&pte->lock);
return;
}
if (unistimdebug) {
ast_verb(0, "%s ACK gap : Received ACK #0x%.4x, previous was #0x%.4x\n",
ast_verb(0, "%s ACK gap : Received ACK #0x%04x, previous was #0x%04x\n",
tmpbuf, (unsigned)seq, (unsigned)pte->last_seq_ack);
}
pte->last_seq_ack = seq;
@ -4722,7 +4721,7 @@ static void parsing(int size, unsigned char *buf, struct unistimsession *pte,
}
if (pte->seq_phone > seq) {
ast_log(LOG_NOTICE,
"%s Warning : received a retransmitted packet : #0x%.4x (we are at #0x%.4x)\n",
"%s Warning : received a retransmitted packet : #0x%04x (we are at #0x%04x)\n",
tmpbuf, (unsigned)seq, (unsigned)pte->seq_phone);
/* BUG ? pte->device->seq_phone = seq; */
/* Send ACK */
@ -4732,29 +4731,28 @@ static void parsing(int size, unsigned char *buf, struct unistimsession *pte,
return;
}
ast_log(LOG_NOTICE,
"%s Warning : we lost a packet : received #0x%.4x (we are at #0x%.4x)\n",
"%s Warning : we lost a packet : received #0x%04x (we are at #0x%04x)\n",
tmpbuf, (unsigned)seq, (unsigned)pte->seq_phone);
return;
}
if (buf[4] == 0) {
ast_log(LOG_NOTICE, "%s Retransmit request for packet #0x%.4x\n", tmpbuf, (unsigned)seq);
ast_log(LOG_NOTICE, "%s Retransmit request for packet #0x%04x\n", tmpbuf, (unsigned)seq);
if (pte->last_seq_ack > seq) {
ast_log(LOG_NOTICE,
"%s Error : received a request for an already ACKed packet : #0x%.4x\n",
"%s Error : received a request for an already ACKed packet : #0x%04x\n",
tmpbuf, (unsigned)pte->last_seq_ack);
return;
}
if (pte->seq_server < seq) {
ast_log(LOG_NOTICE,
"%s Error : received a request for a non-existent packet : #0x%.4x\n",
"%s Error : received a request for a non-existent packet : #0x%04x\n",
tmpbuf, (unsigned)pte->seq_server);
return;
}
send_retransmit(pte);
return;
}
ast_log(LOG_NOTICE, "%s Unknown request : got 0x%.2x expected 0x00,0x01 or 0x02\n",
tmpbuf, (unsigned)buf[4]);
ast_log(LOG_NOTICE, "%s Unknown request : got 0x%02hhx expected 0x00,0x01 or 0x02\n", tmpbuf, buf[4]);
return;
}
@ -5096,7 +5094,7 @@ static int unistimsock_read(int *id, int fd, short events, void *ignore)
dw_num_bytes_rcvd, ast_inet_ntoa(addr_from.sin_addr), tmp);
for (dw_num_bytes_rcvdd = 0; dw_num_bytes_rcvdd < dw_num_bytes_rcvd;
dw_num_bytes_rcvdd++)
ast_verb(0, "%.2x ", (unsigned char) buff[dw_num_bytes_rcvdd]);
ast_verb(0, "%02hhx ", buff[dw_num_bytes_rcvdd]);
ast_verb(0, "\n******************************************\n");
#endif

View File

@ -111,7 +111,7 @@ static void dump_string_hex(char *output, int maxlen, void *value, int len)
int i = 0;
while (len-- && (i + 1) * 4 < maxlen) {
sprintf(output + (4 * i), "\\x%2.2x", (unsigned)*((unsigned char *)value + i));
sprintf(output + (4 * i), "\\x%02hhx", *((unsigned char *)value + i));
i++;
}
}

View File

@ -293,7 +293,7 @@ static void enc_ie_call_id(unsigned char **ntmode, msg_t *msg, char *callid, int
i = 0;
while(i < callid_len)
{
if (MISDN_IE_DEBG) printf(debug+(i*3), " %02x", callid[i]);
if (MISDN_IE_DEBG) printf(debug+(i*3), " %02hhx", (unsigned char)callid[i]);
i++;
}
@ -339,7 +339,7 @@ static void dec_ie_call_id(unsigned char *p, Q931_info_t *qi, char *callid, int
i = 0;
while(i < *callid_len)
{
if (MISDN_IE_DEBG) printf(debug+(i*3), " %02x", callid[i]);
if (MISDN_IE_DEBG) printf(debug+(i*3), " %02hhx", (unsigned char)callid[i]);
i++;
}
@ -745,7 +745,7 @@ static void enc_ie_channel_id(unsigned char **ntmode, msg_t *msg, int exclusive,
p[0] = IE_CHANNEL_ID;
p[1] = l;
p[2] = 0x80 + 0x20 + 0x03;
/* if (MISDN_IE_DEBG) printf("%02x\n", p[2]); */
/* if (MISDN_IE_DEBG) printf("%02hhx\n", p[2]); */
return; /* end */
}
l = 3;
@ -759,7 +759,7 @@ static void enc_ie_channel_id(unsigned char **ntmode, msg_t *msg, int exclusive,
p[2] = 0x80 + 0x20 + (exclusive<<3) + 0x01;
p[3] = 0x80 + 3; /* CCITT, Number, B-type */
p[4] = 0x80 + channel;
/* if (MISDN_IE_DEBG) printf("%02x %02x %02x\n", p[2], p[3], p[4]); */
/* if (MISDN_IE_DEBG) printf("%02hhx %02hhx %02hhx\n", p[2], p[3], p[4]); */
}
}
@ -849,7 +849,7 @@ static void dec_ie_channel_id(unsigned char *p, Q931_info_t *qi, int *exclusive,
printf("%s: ERROR: PRI interface channel out of range (%d).\n", __FUNCTION__, *channel);
return;
}
/* if (MISDN_IE_DEBG) printf("%02x %02x %02x\n", p[1], p[2], p[3]); */
/* if (MISDN_IE_DEBG) printf("%02hhx %02hhx %02hhx\n", p[1], p[2], p[3]); */
}
if (MISDN_IE_DEBG) printf(" exclusive=%d channel=%d\n", *exclusive, *channel);
@ -1342,7 +1342,7 @@ static void enc_ie_useruser(unsigned char **ntmode, msg_t *msg, int protocol, ch
char debug[768];
for (i = 0; i < user_len; ++i) {
sprintf(debug + (i * 3), " %02x", user[i]);
sprintf(debug + (i * 3), " %02hhx", (unsigned char)user[i]);
}
debug[i * 3] = 0;
printf(" protocol=%d user-user%s\n", protocol, debug);
@ -1387,7 +1387,7 @@ static void dec_ie_useruser(unsigned char *p, Q931_info_t *qi, int *protocol, ch
char debug[768];
for (i = 0; i < *user_len; ++i) {
sprintf(debug + (i * 3), " %02x", user[i]);
sprintf(debug + (i * 3), " %02hhx", (unsigned char)user[i]);
}
debug[i * 3] = 0;
printf(" protocol=%d user-user%s\n", *protocol, debug);

View File

@ -754,15 +754,15 @@ static void sig_pri_set_subaddress(struct ast_party_subaddress *ast_subaddress,
ptr = cnum;
len = pri_subaddress->length - 1; /* -1 account for zero based indexing */
for (x = 0; x < len; ++x) {
ptr += sprintf(ptr, "%02x", (unsigned)pri_subaddress->data[x]);
ptr += sprintf(ptr, "%02hhx", (unsigned char)pri_subaddress->data[x]);
}
if (pri_subaddress->odd_even_indicator) {
/* ODD */
sprintf(ptr, "%01x", (unsigned)((pri_subaddress->data[len]) >> 4));
sprintf(ptr, "%01hhx", (unsigned char)((pri_subaddress->data[len]) >> 4));
} else {
/* EVEN */
sprintf(ptr, "%02x", (unsigned)pri_subaddress->data[len]);
sprintf(ptr, "%02hhx", (unsigned char)pri_subaddress->data[len]);
}
ast_subaddress->str = cnum;
}
@ -8083,7 +8083,7 @@ int sig_pri_call(struct sig_pri_chan *p, struct ast_channel *ast, const char *rd
if (p->pri->facilityenable)
pri_facility_enable(p->pri->pri);
ast_verb(3, "Requested transfer capability: 0x%.2x - %s\n", (unsigned)ast_channel_transfercapability(ast), ast_transfercapability2str(ast_channel_transfercapability(ast)));
ast_verb(3, "Requested transfer capability: 0x%02hx - %s\n", ast_channel_transfercapability(ast), ast_transfercapability2str(ast_channel_transfercapability(ast)));
dp_strip = 0;
pridialplan = p->pri->dialplan - 1;
if (pridialplan == -2 || pridialplan == -3) { /* compute dynamically */

View File

@ -209,9 +209,9 @@ void dump_buf(struct fbuf_t *b)
if (i != 0)
ast_log(LOG_WARNING, "%s\n", buf);
memset(buf, '\0', sizeof(buf));
sprintf(buf, "%04x: ", i);
sprintf(buf, "%04x: ", (unsigned)i);
}
sprintf(buf + 6 + x*3, "%02x ", b->data[i]);
sprintf(buf + 6 + x*3, "%02hhx ", b->data[i]);
if (i > 31 && i < last2lines)
i = last2lines - 1;
}
@ -1056,7 +1056,7 @@ static int h264_decap(struct fbuf_t *b, uint8_t *data, int len)
}
/* first of all, check if the packet has F == 0 */
if (data[0] & 0x80) {
ast_log(LOG_WARNING, "--- forbidden packet; nal: %02x\n",
ast_log(LOG_WARNING, "--- forbidden packet; nal: %02hhx\n",
data[0]);
return 1;
}

View File

@ -1030,8 +1030,8 @@ static int http_body_check_chunk_sync(struct ast_tcptls_session_instance *ser)
return -1;
}
if (chunk_sync[0] != 0x0D || chunk_sync[1] != 0x0A) {
ast_log(LOG_WARNING, "HTTP chunk sync bytes wrong (0x%02X, 0x%02X)\n",
(unsigned) chunk_sync[0], (unsigned) chunk_sync[1]);
ast_log(LOG_WARNING, "HTTP chunk sync bytes wrong (0x%02hhX, 0x%02hhX)\n",
(unsigned char) chunk_sync[0], (unsigned char) chunk_sync[1]);
return -1;
}

View File

@ -334,7 +334,7 @@ static int printdigest(const unsigned char *d)
char buf[256]; /* large enough so we don't have to worry */
for (pos = 0, x = 0; x < 16; x++)
pos += sprintf(buf + pos, " %02x", (unsigned)*d++);
pos += sprintf(buf + pos, " %02hhx", *d++);
ast_debug(1, "Unexpected signature:%s\n", buf);

View File

@ -3212,7 +3212,7 @@ static int authenticate(struct mansession *s, const struct message *m)
MD5Update(&md5, (unsigned char *) user->secret, strlen(user->secret));
MD5Final(digest, &md5);
for (x = 0; x < 16; x++)
len += sprintf(md5key + len, "%2.2x", (unsigned)digest[x]);
len += sprintf(md5key + len, "%02hhx", digest[x]);
if (!strcmp(md5key, key)) {
error = 0;
} else {

View File

@ -520,7 +520,7 @@ static int udptl_rx_packet(struct ast_udptl *s, uint8_t *buf, unsigned int len)
#if 0
fprintf(stderr, "FEC: ");
for (j = 0; j < s->rx[x].fec_len[i]; j++)
fprintf(stderr, "%02X ", data[j]);
fprintf(stderr, "%02hhX ", data[j]);
fprintf(stderr, "\n");
#endif
}

View File

@ -251,7 +251,7 @@ void ast_md5_hash(char *output, const char *input)
MD5Final(digest, &md5);
ptr = output;
for (x = 0; x < 16; x++)
ptr += sprintf(ptr, "%2.2x", (unsigned)digest[x]);
ptr += sprintf(ptr, "%02hhx", digest[x]);
}
/*! \brief Produce 40 char SHA1 hash of value. */
@ -269,7 +269,7 @@ void ast_sha1_hash(char *output, const char *input)
SHA1Result(&sha, Message_Digest);
ptr = output;
for (x = 0; x < 20; x++)
ptr += sprintf(ptr, "%2.2x", (unsigned)Message_Digest[x]);
ptr += sprintf(ptr, "%02hhx", Message_Digest[x]);
}
/*! \brief Produce a 20 byte SHA1 hash of value. */
@ -420,7 +420,7 @@ char *ast_uri_encode(const char *string, char *outbuf, int buflen, struct ast_fl
if (out - outbuf >= buflen - 3) {
break;
}
out += sprintf(out, "%%%02X", (unsigned) *ptr);
out += sprintf(out, "%%%02hhX", (unsigned char) *ptr);
} else {
*out = *ptr; /* Continue copying the string */
out++;
@ -2701,10 +2701,10 @@ char *ast_eid_to_str(char *s, int maxlen, struct ast_eid *eid)
}
} else {
for (x = 0; x < 5; x++) {
sprintf(s, "%02x:", (unsigned)eid->eid[x]);
sprintf(s, "%02hhx:", eid->eid[x]);
s += 3;
}
sprintf(s, "%02x", (unsigned)eid->eid[5]);
sprintf(s, "%02hhx", eid->eid[5]);
}
return os;
}

View File

@ -109,7 +109,7 @@ static void generate_uuid(struct ast_uuid *uuid)
* or /dev/urandom not existing on systems in this age is next to none.
*/
/* XXX Currently, we only protect this call if the user has no /dev/urandon on their system.
/* XXX Currently, we only protect this call if the user has no /dev/urandom on their system.
* If it turns out that there are issues with UUID generation despite the presence of
* /dev/urandom, then we may need to make the locking/unlocking unconditional.
*/

View File

@ -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", (unsigned)eid->eid[x]);
sprintf(s, "%02hhX", (unsigned char)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)((unsigned char *)value)[x]);
snprintf(iv + (x << 1), 3, "%02hhx", ((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;x<len;x++) {
snprintf(output + strlen(output), maxlen - strlen(output) - 1, "%02x ", (unsigned)u[x]);
snprintf(output + strlen(output), maxlen - strlen(output) - 1, "%02hhx ", u[x]);
}
strncat(output + strlen(output), "]", maxlen - strlen(output) - 1);
}
@ -464,7 +464,7 @@ void dundi_showframe(struct dundi_hdr *fhi, int rx, struct sockaddr_in *sin, int
} else {
class = commands[(int)(fhi->cmdresp & 0x3f)];
}
snprintf(subclass2, (int)sizeof(subclass2), "%02x", (unsigned)fhi->cmdflags);
snprintf(subclass2, (int)sizeof(subclass2), "%02hhx", (unsigned char)fhi->cmdflags);
subclass = subclass2;
snprintf(tmp, (int)sizeof(tmp),
"%s-Frame -- OSeqno: %3.3d ISeqno: %3.3d Type: %s (%s)\n",

View File

@ -532,7 +532,7 @@ static void md52sum(char *sum, unsigned char *md5)
{
int x;
for (x = 0; x < 16; x++) {
sum += sprintf(sum, "%02x", (unsigned)*(md5++));
sum += sprintf(sum, "%02hhx", *(md5++));
}
}

View File

@ -799,9 +799,9 @@ static void *do_pktccops(void *data)
if ((idx = ast_poll_fd_index(pfds, nfds, cmts->sfd)) > -1 && (pfds[idx].revents & POLLIN)) {
len = cops_getmsg(cmts->sfd, recmsg);
if (len > 0) {
ast_debug(3, "COPS: got from %s:\n Header: versflag=0x%.2x opcode=%i clienttype=0x%.4x msglength=%u\n",
cmts->name, (unsigned)recmsg->verflag,
recmsg->opcode, (unsigned)recmsg->clienttype, recmsg->length);
ast_debug(3, "COPS: got from %s:\n Header: versflag=0x%02hhx opcode=%i clienttype=0x%04hx msglength=%u\n",
cmts->name, recmsg->verflag,
recmsg->opcode, recmsg->clienttype, recmsg->length);
if (recmsg->object != NULL) {
pobject = recmsg->object;
while (pobject != NULL) {

View File

@ -1347,7 +1347,7 @@ static int ast_rtp_dtls_set_configuration(struct ast_rtp_instance *instance, con
}
for (i = 0; i < size; i++) {
sprintf(local_fingerprint, "%.2X:", (unsigned)fingerprint[i]);
sprintf(local_fingerprint, "%02hhX:", fingerprint[i]);
local_fingerprint += 3;
}
@ -1509,7 +1509,7 @@ static void ast_rtp_dtls_set_fingerprint(struct ast_rtp_instance *instance, enum
rtp->remote_hash = hash;
while ((value = strsep(&tmp, ":")) && (pos != (EVP_MAX_MD_SIZE - 1))) {
sscanf(value, "%02x", (unsigned int*)&rtp->remote_fingerprint[pos++]);
sscanf(value, "%02hhx", &rtp->remote_fingerprint[pos++]);
}
}

View File

@ -723,7 +723,7 @@ static int manager_login(char *hostname)
MD5Update(&md5, (unsigned char *)pass, strlen(pass));
MD5Final(digest, &md5);
for (x=0; x<16; x++)
len += sprintf(md5key + len, "%2.2x", digest[x]);
len += sprintf(md5key + len, "%02hhx", digest[x]);
manager_action("Login",
"AuthType: MD5\r\n"
"Username: %s\r\n"

View File

@ -390,14 +390,14 @@ static void rxqcheck (char *dir, char *queue, char *process)
{
for (n = 0, x = 0; x < udl; x++)
{
sprintf (tmp + n, "%02X", ud[x]);
sprintf (tmp + n, "%02hX", ud[x]);
n += 2;
}
setenv ("ud8", tmp, 1);
}
for (n = 0, x = 0; x < udl; x++)
{
sprintf (tmp + n, "%04X", ud[x]);
sprintf (tmp + n, "%04hX", ud[x]);
n += 4;
}
setenv ("ud16", tmp, 1);
@ -730,13 +730,13 @@ main (int argc, const char *argv[])
{ /* use one byte hex */
fprintf (f, "ud#");
for (p = 0; p < udl; p++)
fprintf (f, "%02X", ud[p]);
fprintf (f, "%02hX", ud[p]);
}
} else
{ /* use two byte hex */
fprintf (f, "ud##");
for (p = 0; p < udl; p++)
fprintf (f, "%04X", ud[p]);
fprintf (f, "%04hX", ud[p]);
}
fprintf (f, "\n");
}