@ -3767,50 +3767,6 @@ void av_pkt_dump_log2(void *avcl, int level, AVPacket *pkt, int dump_payload,
pkt_dump_internal ( avcl , NULL , level , pkt , dump_payload , st - > time_base ) ;
}
/**
* Percent encode part of an URL string according to RFC 3986.
*
* @ param component portion of an URL ( e . g . protocol , hostname , path ) to
* percent - encode . This will be percent - encoded in place .
* @ param allowed string containing the allowed characters which must not be
* encoded . It may be NULL if there are no such characters .
* @ param component_size size in bytes of the component buffer
*/
static void percent_encode_url ( char * component , size_t component_size ,
const char * allowed )
{
char enc [ MAX_URL_SIZE ] , c ;
int enc_len = 0 ;
char * src = component ;
while ( c = * src ) {
if ( isalnum ( c ) | | strchr ( " -._~% " , c ) | |
( allowed & & strchr ( allowed , c ) ) ) {
if ( enc_len + 1 < MAX_URL_SIZE )
enc [ enc_len ] = c ;
else
break ;
enc_len + + ;
} else {
if ( enc_len + 3 < MAX_URL_SIZE )
snprintf ( & enc [ enc_len ] , 4 , " %%%02x " , c ) ;
else
break ;
enc_len + = 3 ;
}
src + + ;
}
enc [ enc_len + + ] = ' \0 ' ;
if ( enc_len < = component_size ) {
av_strlcpy ( component , enc , component_size ) ;
} else {
av_log ( NULL , AV_LOG_ERROR ,
" Skipping percent-encoding for string '%s' since buffer is too small \n " ,
component ) ;
}
}
void av_url_split ( char * proto , int proto_size ,
char * authorization , int authorization_size ,
char * hostname , int hostname_size ,
@ -3874,9 +3830,6 @@ void av_url_split(char *proto, int proto_size,
av_strlcpy ( hostname , p ,
FFMIN ( ls + 1 - p , hostname_size ) ) ;
}
percent_encode_url ( hostname , hostname_size , NULL ) ;
percent_encode_url ( path , path_size , " /? " ) ;
}
char * ff_data_to_hex ( char * buff , const uint8_t * src , int s , int lowercase )