real.c File Reference

Include dependency graph for real.c:


Defines

#define XOR_TABLE_LEN   37
#define BE_32(x)   GetDWBE(x)
#define LE_32(x)   GetDWLE(x)
#define BE_16(x)   GetWBE(x)
#define LE_16(x)   GetWLE(x)
#define BE_32C(x, y)   do {uint32_t in=y; *(uint32_t *)(x)=GetDWBE(&in);} while(0)
#define LE_32C(x, y)   do {uint32_t in=y; *(uint32_t *)(x)=GetDWLE(&in);} while(0)
#define MAX(x, y)   ((x>y) ? x : y)
#define MAX_DESC_BUF   (20 * 1024 * 1024)
 maximum size of the rtsp description, must be < INT_MAX

Functions

static void hash (char *field, char *param)
static void call_hash (char *key, char *challenge, unsigned int len)
static void calc_response (char *result, char *field)
static void calc_response_string (char *result, char *challenge)
static void real_calc_response_and_checksum (char *response, char *chksum, char *challenge)
static int select_mlti_data (const char *mlti_chunk, int mlti_size, int selection, char **out)
static rmff_header_treal_parse_sdp (char *data, char **stream_rules, uint32_t bandwidth)
int real_get_rdt_chunk_header (rtsp_client_t *rtsp_session, rmff_pheader_t *ph)
int real_get_rdt_chunk (rtsp_client_t *rtsp_session, rmff_pheader_t *ph, unsigned char **buffer)
rmff_header_treal_setup_and_get_header (rtsp_client_t *rtsp_session, int bandwidth)

Variables

static const unsigned char xor_table []

Define Documentation

#define BE_16 (  )     GetWBE(x)

#define BE_32 (  )     GetDWBE(x)

#define BE_32C ( x,
 )     do {uint32_t in=y; *(uint32_t *)(x)=GetDWBE(&in);} while(0)

#define LE_16 (  )     GetWLE(x)

#define LE_32 (  )     GetDWLE(x)

Referenced by calc_response(), call_hash(), and hash().

#define LE_32C ( x,
 )     do {uint32_t in=y; *(uint32_t *)(x)=GetDWLE(&in);} while(0)

Referenced by call_hash(), and hash().

#define MAX ( x,
 )     ((x>y) ? x : y)

Referenced by real_parse_sdp().

#define MAX_DESC_BUF   (20 * 1024 * 1024)

maximum size of the rtsp description, must be < INT_MAX

Referenced by real_setup_and_get_header().

#define XOR_TABLE_LEN   37


Function Documentation

static void calc_response ( char *  result,
char *  field 
) [static]

References call_hash(), i, LE_32, and lprintf().

Referenced by calc_response_string().

static void calc_response_string ( char *  result,
char *  challenge 
) [static]

References a, b, calc_response(), call_hash(), and i.

Referenced by real_calc_response_and_checksum().

static void call_hash ( char *  key,
char *  challenge,
unsigned int  len 
) [static]

References a, b, c, hash(), LE_32, LE_32C, and lprintf().

Referenced by calc_response(), and calc_response_string().

static void hash ( char *  field,
char *  param 
) [static]

References a, b, c, LE_32, LE_32C, and lprintf().

Referenced by call_hash().

static void real_calc_response_and_checksum ( char *  response,
char *  chksum,
char *  challenge 
) [static]

int real_get_rdt_chunk ( rtsp_client_t rtsp_session,
rmff_pheader_t ph,
unsigned char **  buffer 
)

int real_get_rdt_chunk_header ( rtsp_client_t rtsp_session,
rmff_pheader_t ph 
)

static rmff_header_t* real_parse_sdp ( char *  data,
char **  stream_rules,
uint32_t  bandwidth 
) [static]

rmff_header_t* real_setup_and_get_header ( rtsp_client_t rtsp_session,
int  bandwidth 
)

static int select_mlti_data ( const char *  mlti_chunk,
int  mlti_size,
int  selection,
char **  out 
) [static]

References BE_16, BE_32, i, lprintf(), and size.

Referenced by real_parse_sdp().


Variable Documentation

const unsigned char xor_table[] [static]

Initial value:

 {
    0x05, 0x18, 0x74, 0xd0, 0x0d, 0x09, 0x02, 0x53,
    0xc0, 0x01, 0x05, 0x05, 0x67, 0x03, 0x19, 0x70,
    0x08, 0x27, 0x66, 0x10, 0x10, 0x72, 0x08, 0x09,
    0x63, 0x11, 0x03, 0x71, 0x08, 0x08, 0x70, 0x02,
    0x10, 0x57, 0x05, 0x18, 0x54, 0x00, 0x00, 0x00 }

Referenced by real_calc_response_and_checksum().


Generated on Tue May 25 08:05:08 2010 for VLC by  doxygen 1.5.6