ospf_pkt.h
来自「TCP-IP红宝书源代码」· C头文件 代码 · 共 62 行
H
62 行
/* ospf_pkt.h */
/* OSPF packet format */
struct ospf {
unsigned char ospf_version; /* Version Number */
unsigned char ospf_type; /* Packet Type */
unsigned short ospf_len; /* Packet Length */
unsigned long ospf_rid; /* Router Identifier */
unsigned long ospf_aid; /* Area Identifier */
unsigned short ospf_cksum; /* Check Sum */
unsigned short ospf_authtype; /* Authentication Type */
unsigned char ospf_auth[AUTHLEN]; /* Authentication Field */
unsigned char ospf_data[1];
};
#define MINHDRLEN 24 /* OSPF base header length */
/* OSPF Packet Types */
#define T_HELLO 1 /* Hello packet */
#define T_DATADESC 2 /* Database Description */
#define T_LSREQ 3 /* Link State Request */
#define T_LSUPDATE 4 /* Link State Update */
#define T_LSACK 5 /* Link State Acknowledgement */
/* OSPF Authentication Types */
#define AU_NONE 0 /* No Authentication */
#define AU_PASSWD 1 /* Simple Password */
/* OSPF Hello Packet */
struct ospf_hello {
unsigned long oh_netmask; /* Network Mask */
unsigned short oh_hintv; /* Hello Interval (seconds) */
unsigned char oh_opts; /* Options */
unsigned char oh_prio; /* Sender's Router Priority */
unsigned long oh_rdintv; /* Seconds Before Declare Dead */
unsigned long oh_drid; /* Designated Router ID */
unsigned long oh_brid; /* Backup Designated Router ID */
unsigned long oh_neighbor[1]; /* Living Neighbors */
};
#define MINHELLOLEN (MINHDRLEN + 20)
/* OSPF Database Description Packet */
struct ospf_dd {
unsigned short dd_mbz; /* Must Be Zero */
unsigned char dd_opts; /* Options */
unsigned char dd_control; /* Control Bits (DDC_* below) */
unsigned long dd_seq; /* Sequence Number */
struct ospf_lss dd_lss[1]; /* Link State Advertisements */
};
#define MINDDLEN (MINHDRLEN + 8)
#define DDC_INIT 0x04 /* Initial Sequence */
#define DDC_MORE 0x02 /* More to follow */
#define DDC_MSTR 0x01 /* This Router is Master */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?