pcicmp.h
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 111 行
H
111 行
#ifndef __PCICMP_H
#define __PCICMP_H
#ifdef __NETINET_IP_ICMP_H
#error Cannot include both <netinet/ip_icmp.h> and pcicmp.h
#endif
#include <sys/packon.h>
struct icmp_unused {
BYTE type;
BYTE code;
WORD checksum;
DWORD unused;
in_Header ip;
BYTE spares [8];
};
struct icmp_pointer {
BYTE type;
BYTE code;
WORD checksum;
BYTE pointer;
BYTE unused [3];
in_Header ip;
};
struct icmp_ip {
BYTE type;
BYTE code;
WORD checksum;
DWORD ipaddr; /* redirect gateway */
in_Header ip; /* original ip-header */
};
struct icmp_echo {
BYTE type;
BYTE code;
WORD checksum;
WORD identifier;
WORD sequence;
DWORD index;
};
struct icmp_timestamp {
BYTE type;
BYTE code;
WORD checksum;
WORD identifier;
WORD sequence;
DWORD original; /* original timestamp */
DWORD receive; /* receive timestamp */
DWORD transmit; /* transmit timestamp */
};
struct icmp_info {
BYTE type;
BYTE code;
WORD checksum;
WORD identifier;
WORD sequence;
};
struct icmp_addr_mask {
BYTE type;
BYTE code;
WORD checksum;
WORD identifier;
WORD sequence;
DWORD mask;
};
struct icmp_traceroute {
BYTE type;
BYTE code;
WORD checksum;
WORD identifier;
WORD unused;
WORD outbound_hop;
WORD return_hop;
DWORD link_speed;
DWORD link_mtu;
};
typedef union icmp_pkt {
struct icmp_unused unused;
struct icmp_pointer pointer;
struct icmp_ip ip;
struct icmp_echo echo;
struct icmp_timestamp timestamp;
struct icmp_info info;
struct icmp_addr_mask mask;
struct icmp_traceroute tracert;
} ICMP_PKT;
#include <sys/packoff.h>
extern const char *icmp_type_str [ICMP_MAXTYPE+1];
extern const char *icmp_unreach_str [16];
extern const char *icmp_redirect_str [4];
extern const char *icmp_exceed_str [2];
extern DWORD _chk_ping (DWORD host, DWORD *ping_num);
extern void *icmp_Format (DWORD host);
extern void icmp_handler (const in_Header *ip, BOOL broadcast);
extern void icmp_unreach (const in_Header *ip, int code);
extern void icmp_timexceed (const in_Header *ip, const void *mac_dest);
extern void icmp_redirect (const char *value);
extern void icmp_mask_req (void);
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?