?? message.h
字號:
#ifndef MESSAGE_H
#define MESSAGE_H
#include "peer.h"
int int_to_char(int i, unsigned char c[4]); // 將整型變量i的四個字節存放到數組c中
int char_to_int(unsigned char c[4]); // 將數組c中的四個字節轉換為一個整型數
// 以下函數創建各個類型的消息
int create_handshake_msg(char *info_hash,char *peer_id,Peer *peer);
int create_keep_alive_msg(Peer *peer);
int create_chock_interested_msg(int type,Peer *peer);
int create_have_msg(int index,Peer *peer);
int create_bitfield_msg(char *bitfield,int bitfield_len,Peer *peer);
int create_request_msg(int index,int begin,int length,Peer *peer);
int create_piece_msg(int index,int begin,char *block,int b_len,Peer *peer);
int create_cancel_msg(int index,int begin,int length,Peer *peer);
int create_port_msg(int port,Peer *peer);
// 打印消息緩沖區中的消息, 用于調試
int print_msg_buffer(unsigned char *buffer, int len);
// 為發送have消息作準備,have消息較為特殊,它要發送給所有peer
int prepare_send_have_msg();
// 判斷緩沖區中是否存放了一個完整的消息
int is_complete_message(unsigned char *buff,unsigned int len,int *ok_len);
// 處理收到的消息,接收緩沖區中存放著一個完整的消息
int parse_response(Peer *peer);
// 處理受到的消息,接收緩沖區中除了存放一個完整的消息外,還有不完整的消息
int parse_response_uncomplete_msg(Peer *p,int ok_len);
// 創建響應消息
int create_response_message(Peer *peer);
// 即將與peer斷開時,丟棄發送緩沖區中的消息
void discard_send_buffer(Peer *peer);
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -