ip.h

来自「基于51的单片机的PPP协议实现」· C头文件 代码 · 共 62 行

H
62
字号
/*/////////////////////////////////////////////////////////////////////////////

File Name : IP.h

Author : Rene Trenado

Location : Motorola Applications Lab, Baja California

Date Created : September 2000

Current Revision : 0.0

Notes : Definitions for the IP implementation

/////////////////////////////////////////////////////////////////////////////*/
#ifndef __IP_H
#define __IP_H

#include "Notation.h"

typedef struct {
	BYTE	Version_HLen;
	BYTE	Service;
   	BYTE	LengthUpper;
	BYTE	Length;
	WORD	ID;
	WORD	Frag;
	BYTE	TTL;
	BYTE	Protocol;
	WORD	Checksum;
	BYTE	SourceAddress [4];
	BYTE	DestAddress [4];
	BYTE	Payload [64];
} IPDatagram;

extern IPDatagram *ip_in;
extern IPDatagram *ip_out;

typedef enum { RAW_SERIAL = 1, SLIP, PPP, PARALLEL, ETHERNET } INTERFACE;

#define TCP	0x06
#define UDP	0x11
#define ICMP	0x01


#define PUSH_NONE	0x00
#define PUSH_ICMP	0x01
#define PUSH_UDP	0x02
#define PUSH_TCP	0x04

extern BYTE IPAddress[4];


//////////////////////////////////////////////////////////
// IP Exported Functions
//////////////////////////////////////////////////////////
BYTE	IPCompare	(BYTE *IPOne);
DWORD	IPCheckSum	(BYTE *Data, WORD Size);
void	IPBindAdapter	(INTERFACE Interface);
void	IPInit (void);
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?