#ifndef _AV_KILL_CONNECTION_H_ #define _AV_KILL_CONNECTION_H_ #ifndef __cplusplus #error("This file should be compiled with C++ compiler") #endif #include "AV_types.h" #include #define CONNECTION_HTTP_SINGLETHREAD 0x01 #define CONNECTION_HTTP_MULTITHREAD 0x02 #define CONNECTION_HTTP_STREAMING 0x03 #define CONNECTION_RTSP 0x04 #define CONNECTION_MMS 0x05 #define CONNECTION_ED2K 0x06 #define CONNECTION_ED2K_UDP 0x07 #define CONNECTION_ED2K_CHEAT42 0x08 #define CONNECTION_ED2K_CHEAT44 0x09 #define CONNECTION_ED2K_CHEAT_ACK 0x10 #define CONNECTION_FTP 0x11 #define CONNECTION_SMTP 0x12 #define CONNECTION_POP3 0x13 #define CONNECTION_IMAP 0x14 #define CONNECTION_RTMP 0x15 #define HITTED_HTTP_REQUEST 0x01 #define HITTED_HTTP_DATA 0x02 #define HITTED_ED2K_PLAIN 0x03 #define HITTED_ED2K_CRYPT 0x04 #define HITTED_HTTP_REQUEST_STATIC 0x05 #define HITTED_HTTP_DATA_STATIC 0x06 #define HITTED_FTP_CONTROL_FILENAME 0x11 #define HITTED_FTP_CONTROL_TRANSFER 0x12 #define HITTED_FTP_DATA_S2C 0x13 #define HITTED_FTP_DATA_C2S 0x14 #define HITTED_FTP_CONTROL_STATIC 0x15 #define HITTED_FTP_DATA_STATIC 0x16 #define HITTED_SMTP_DATA 0x22 #define HITTED_POP3_DATA 0x26 #define HITTED_IMAP_DATA 0x2a #define HITTED_RTMP_REQUEST 0x30 #define HITTED_RTMP_DATA 0x31 extern screen_stat_handle_t g_av_stat_handle; struct AV_block_info { int connection_type; //define in CONNECTION_** int hitted_phase; //define in HITTED_** PROG_ID_t pid; UINT64 filesize; //file size,fill 0 while NOT acquired. UINT64 range; //program start offset, fill -1 while NOT acquired. UCHAR file_type; //define in AV_character.h FILE_** }; #define AVK_OPT_URL 0x01 #define AVK_OPT_RTSP_SESSION_ID 0x02 #define AVK_OPT_RTSP_UA 0x03 int AV_kill_connection(struct streaminfo *stream, struct ip *packet, const struct AV_block_info *kill_info, const struct opt_unit_t* block_opt, int opt_num); int AV_kill_init(int max_thread_num); int AV_pollution_file(PROG_ID_t pid,UINT file_hdr_size,UINT file_pkt_size); #endif