Originally committed as revision 22665 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.6
@@ -24,7 +24,7 @@ | |||||
#include <stdint.h> | #include <stdint.h> | ||||
#include "avformat.h" | #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); | void ff_program_add_stream_index(AVFormatContext *ac, int progid, unsigned int idx); | ||||
@@ -120,8 +120,7 @@ ff_rdt_calc_response_and_checksum(char response[41], char chksum[9], | |||||
buf[8 + i] ^= xor_table[i]; | buf[8 + i] ^= xor_table[i]; | ||||
av_md5_sum(zres, buf, 64); | 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 */ | /* add tail */ | ||||
strcpy (response + 32, "01d0a8e3"); | strcpy (response + 32, "01d0a8e3"); | ||||
@@ -201,7 +201,7 @@ static char *extradata2config(AVCodecContext *c) | |||||
return NULL; | return NULL; | ||||
} | } | ||||
memcpy(config, "; config=", 9); | 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; | config[9 + c->extradata_size * 2] = 0; | ||||
return config; | return config; | ||||
@@ -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; | 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', | '4', '5', '6', '7', | ||||
'8', '9', 'A', 'B', | '8', '9', 'A', 'B', | ||||
'C', 'D', 'E', 'F' }; | '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++) { | for(i = 0; i < s; i++) { | ||||
buff[i * 2] = hex_table[src[i] >> 4]; | buff[i * 2] = hex_table[src[i] >> 4]; | ||||