From ddbeb95447d237bd82a2234d15561ae2eeb88a4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Thu, 25 Mar 2010 07:13:20 +0000 Subject: [PATCH] Add a lowercase parameter to ff_data_to_hex Originally committed as revision 22665 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/internal.h | 2 +- libavformat/rdt.c | 3 +-- libavformat/sdp.c | 2 +- libavformat/utils.c | 9 +++++++-- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/libavformat/internal.h b/libavformat/internal.h index 1110ce8312..822b7c6eba 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -24,7 +24,7 @@ #include #include "avformat.h" -char *ff_data_to_hex(char *buf, const uint8_t *src, int size); +char *ff_data_to_hex(char *buf, const uint8_t *src, int size, int lowercase); void ff_program_add_stream_index(AVFormatContext *ac, int progid, unsigned int idx); diff --git a/libavformat/rdt.c b/libavformat/rdt.c index fa909e6023..0a390614c2 100644 --- a/libavformat/rdt.c +++ b/libavformat/rdt.c @@ -120,8 +120,7 @@ ff_rdt_calc_response_and_checksum(char response[41], char chksum[9], buf[8 + i] ^= xor_table[i]; av_md5_sum(zres, buf, 64); - ff_data_to_hex(response, zres, 16); - for (i=0;i<32;i++) response[i] = tolower(response[i]); + ff_data_to_hex(response, zres, 16, 1); /* add tail */ strcpy (response + 32, "01d0a8e3"); diff --git a/libavformat/sdp.c b/libavformat/sdp.c index 37f92ff316..d48a5df950 100644 --- a/libavformat/sdp.c +++ b/libavformat/sdp.c @@ -201,7 +201,7 @@ static char *extradata2config(AVCodecContext *c) return NULL; } memcpy(config, "; config=", 9); - ff_data_to_hex(config + 9, c->extradata, c->extradata_size); + ff_data_to_hex(config + 9, c->extradata, c->extradata_size, 0); config[9 + c->extradata_size * 2] = 0; return config; diff --git a/libavformat/utils.c b/libavformat/utils.c index db1dc14bb6..dbcdab18c3 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -3464,13 +3464,18 @@ void ff_url_split(char *proto, int proto_size, } } -char *ff_data_to_hex(char *buff, const uint8_t *src, int s) +char *ff_data_to_hex(char *buff, const uint8_t *src, int s, int lowercase) { int i; - static const char hex_table[16] = { '0', '1', '2', '3', + static const char hex_table_uc[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; + static const char hex_table_lc[16] = { '0', '1', '2', '3', + '4', '5', '6', '7', + '8', '9', 'a', 'b', + 'c', 'd', 'e', 'f' }; + const char *hex_table = lowercase ? hex_table_lc : hex_table_uc; for(i = 0; i < s; i++) { buff[i * 2] = hex_table[src[i] >> 4];