📄 mplsni.h
字号:
#ifndef MPLSNI_H
#define MPLSNI_H
#include "mpls.h"
#include "mplsmpue.h"
#include "mx_ax_bx.h"
#include "_noalign.h"
typedef unsigned char MacAddr[6];
#ifndef NI_MAX
#define NI_MAX ( unsigned short )256
#endif
#define HopLen sizeof(HopLspSetDel_t)
#define ErLen sizeof(ErLspSetDel_t)
#ifndef MAX_BUFFER_UNIT
#define MAX_BUFFER_UNIT ( unsigned short )4096
#endif
/***************************************************************************
NOTE:本数据结构为SB、PP板的Network Interface驱动用数据结构
****************************************************************************/
#if 0
typedef struct{
unsigned char RowStatus; /* info about one net interface */
char ni_name[30]; /* domain name of interface */
unsigned char ni_cardid; /* 0~50为LIC板;51~100为SB板;作为INDEX */
unsigned short ni_ifindex; /* 仅用于MPLS用于全局标识 */
unsigned short ni_ninum; /* network interface number */
unsigned short ni_logicnum; /* Logic Number */
unsigned short ni_type; /* ARP,FR,PP,LANI */
unsigned short ni_vpi; /* PP协议处理板端的VPI */
unsigned short ni_vci; /* PP协议处理板端的VCI */
unsigned short ni_lvpi; /* MPLS 路由通道的低端VPI */
unsigned short ni_lvci; /* MPLS 路由通道的低端VCI */
unsigned char ni_lcardtype; /* MPLS 路由通道的低端VCI的板子类型 */
unsigned char ni_state; /* interface states: NIS_ above */
unsigned char ni_ifindextype; /* 虚端口类型 ERESS,BACKBONE */
unsigned long ni_ip; /* IP address for this interface */
unsigned long ni_net; /* network IP address */
unsigned long ni_subnet; /* subnetwork IP address */
unsigned long ni_mask; /* IP subnet mask for interface */
unsigned long ni_brc; /* IP broadcast address */
unsigned long ni_nbrc; /* IP net broadcast address */
unsigned short ni_mtu; /* max transfer unit (bytes) */
unsigned char ni_hwtype; /* hardware type */
MacAddr ni_ha; /* hardware address */
MacAddr ni_hb; /* hardware broadcast address */
/* MacAddr ni_mcahb; */
}MPLS_PACK struct_netifTable;
#endif
typedef struct{
unsigned char RowStatus; //0 /* info about one net interface */
char ni_name[30]; //1/* domain name of interface */
unsigned char ni_ppmod; //2 /*pp module number */
unsigned short ni_ifindex; //3 /* 仅用于MPLS用于全局标识 */
unsigned short ni_ninum; //4 /* network interface number */
unsigned short ni_logicnum; //5/* Logic Number */
unsigned short ni_type; //6/* ARP,FR,PP,LANI */
unsigned short ni_vpi; //7 /* PP协议处理板端的VPI */
unsigned short ni_vci; //8 /* PP协议处理板端的VCI */
unsigned short ni_lvpi; //9 /* MPLS 路由通道的低端VPI */
unsigned short ni_lvci; //10 /* MPLS 路由通道的低端VCI */
unsigned char ni_lcardtype; //11 /* MPLS 路由通道的低端VCI的板子类型 */
unsigned char ni_lvpm; //12 /* LIC virtual port module */
unsigned char ni_ifindextype; //13 /* 虚端口类型 ERESS,BACKBONE */
unsigned long ni_ip; //14 /* IP address for this interface */
unsigned long ni_net; //15 /* network IP address */
unsigned long ni_vpnid; //16 /* VPN id */
unsigned long ni_mask; //17 /* IP subnet mask for interface */
unsigned long ni_brc; //18 /* IP broadcast address */
unsigned long ni_rd; //19 /* vrf RD */
unsigned short ni_mtu; //20 /* max transfer unit (bytes) */
unsigned char ni_loopback; //21 /* loopback interface */
MacAddr ni_ha; //22 /* hardware address */
MacAddr ni_hb; //23 /* hardware broadcast address */
// MacAddr ni_mcahb;
USHORT ni_rdmode; //24 Route Distinguisher mode :0--2:4 1--4:2
ULONG ni_adminsubfield; //25 Administrator subfield
}struct_netifTable;
typedef struct {
unsigned short NiCfgNum; /* actual configing number of ni */
struct_netifTable ni[NI_MAX];
}MPLS_PACK Stnetifdata;
typedef struct {
unsigned short begindex;
}MPLS_PACK MIB_MANICFG_REQ;
typedef struct {
unsigned char Result; /* if succeed then 0, if failed then other value */
unsigned char EndFlag; /*BOOL*/ /* end :1 continue : 0 */
unsigned short AckIndex;
unsigned long Len;
unsigned char Buffer[ MAX_BUFFER_UNIT ];
}MPLS_PACK MIB_MANICFG_ACK;
typedef struct{
unsigned short num;
MIB_MPLSCONFIG_ACK mplsModule[MAX_ROUTE_CARDS];
}MPLS_PACK mplsPort_t;
#include"_restore.h"
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -