?? emac.h
字號(hào):
#ifndef EMAC
#define EMAC
extern void emac_init(void);
typedef struct {
unsigned address;
unsigned size;
} rbd_list;
#define LISTLENGTH 20
#define MAXFRAME ( ( 1522 >> 2 ) + 1 )
#define TYPE_ARP 0x0806
#define TYPE_IP 0x0800
#define SWAP16(x) ( ((x&0xff) << 8) | (x >> 8) )
#define FCOUNT 36000
#define HI_HALF(c) ( c>>4 )
#define LO_HALF(c) ( c&0xF )
#define TO_ASCII(c) ( c>9?(c-10+'A'):(c+'0') )
#define ASCII_HI(c) ( TO_ASCII( HI_HALF(c) ) )
#define ASCII_LO(c) ( TO_ASCII( LO_HALF(c) ) )
enum arp_op { REQUEST=1, REPLY };
typedef struct arp_packet{
unsigned char dstAddr[6]; //ethernet header, dst MAC
unsigned char srcAddr[6]; //src MAC
unsigned short frameLen; //frame type or length
unsigned short hardware; //type of network
unsigned short protocol; //type of protocol
unsigned char hlen; //mac address length
unsigned char plen; //ip length
unsigned short operation; //1:request, 2:repy
unsigned char sendHA[6]; //sender MAC
unsigned char sendIP[4]; //sender IP
unsigned char targetHA[6]; //target MAC
unsigned char targetIP[4]; //target IP
unsigned char stuff[18]; //stuff code
} arp_packet;
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -