亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? print-bgp.c

?? TCPDUMP的C語言源代碼,是在數據鏈路層的應用
?? C
?? 第 1 頁 / 共 5 頁
字號:
/* * Copyright (C) 1999 WIDE Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * 3. Neither the name of the project nor the names of its contributors *    may be used to endorse or promote products derived from this software *    without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * Extensively modified by Hannes Gredler (hannes@juniper.net) for more * complete BGP support. */#ifdef HAVE_CONFIG_H#include "config.h"#endif#ifndef lintstatic const char rcsid[] _U_ =     "@(#) $Header: /tcpdump/master/tcpdump/print-bgp.c,v 1.117.2.1 2007-12-08 10:08:07 hannes Exp $";#endif#include <tcpdump-stdinc.h>#include <stdio.h>#include <string.h>#include "interface.h"#include "decode_prefix.h"#include "addrtoname.h"#include "extract.h"#include "bgp.h"#include "af.h"#include "l2vpn.h"struct bgp {	u_int8_t bgp_marker[16];	u_int16_t bgp_len;	u_int8_t bgp_type;};#define BGP_SIZE		19	/* unaligned */#define BGP_OPEN		1#define BGP_UPDATE		2#define BGP_NOTIFICATION	3#define BGP_KEEPALIVE		4#define BGP_ROUTE_REFRESH       5static struct tok bgp_msg_values[] = {    { BGP_OPEN,                 "Open"},    { BGP_UPDATE,               "Update"},    { BGP_NOTIFICATION,         "Notification"},    { BGP_KEEPALIVE,            "Keepalive"},    { BGP_ROUTE_REFRESH,        "Route Refresh"},    { 0, NULL}};struct bgp_open {	u_int8_t bgpo_marker[16];	u_int16_t bgpo_len;	u_int8_t bgpo_type;	u_int8_t bgpo_version;	u_int16_t bgpo_myas;	u_int16_t bgpo_holdtime;	u_int32_t bgpo_id;	u_int8_t bgpo_optlen;	/* options should follow */};#define BGP_OPEN_SIZE		29	/* unaligned */struct bgp_opt {	u_int8_t bgpopt_type;	u_int8_t bgpopt_len;	/* variable length */};#define BGP_OPT_SIZE		2	/* some compilers may pad to 4 bytes */#define BGP_UPDATE_MINSIZE      23struct bgp_notification {	u_int8_t bgpn_marker[16];	u_int16_t bgpn_len;	u_int8_t bgpn_type;	u_int8_t bgpn_major;	u_int8_t bgpn_minor;};#define BGP_NOTIFICATION_SIZE		21	/* unaligned */struct bgp_route_refresh {    u_int8_t  bgp_marker[16];    u_int16_t len;    u_int8_t  type;    u_int8_t  afi[2]; /* the compiler messes this structure up               */    u_int8_t  res;    /* when doing misaligned sequences of int8 and int16   */    u_int8_t  safi;   /* afi should be int16 - so we have to access it using */};                    /* EXTRACT_16BITS(&bgp_route_refresh->afi) (sigh)      */ #define BGP_ROUTE_REFRESH_SIZE          23struct bgp_attr {	u_int8_t bgpa_flags;	u_int8_t bgpa_type;	union {		u_int8_t len;		u_int16_t elen;	} bgpa_len;#define bgp_attr_len(p) \	(((p)->bgpa_flags & 0x10) ? \		EXTRACT_16BITS(&(p)->bgpa_len.elen) : (p)->bgpa_len.len)#define bgp_attr_off(p) \	(((p)->bgpa_flags & 0x10) ? 4 : 3)};#define BGPTYPE_ORIGIN			1#define BGPTYPE_AS_PATH			2#define BGPTYPE_NEXT_HOP		3#define BGPTYPE_MULTI_EXIT_DISC		4#define BGPTYPE_LOCAL_PREF		5#define BGPTYPE_ATOMIC_AGGREGATE	6#define BGPTYPE_AGGREGATOR		7#define	BGPTYPE_COMMUNITIES		8	/* RFC1997 */#define	BGPTYPE_ORIGINATOR_ID		9	/* RFC1998 */#define	BGPTYPE_CLUSTER_LIST		10	/* RFC1998 */#define	BGPTYPE_DPA			11	/* draft-ietf-idr-bgp-dpa */#define	BGPTYPE_ADVERTISERS		12	/* RFC1863 */#define	BGPTYPE_RCID_PATH		13	/* RFC1863 */#define BGPTYPE_MP_REACH_NLRI		14	/* RFC2283 */#define BGPTYPE_MP_UNREACH_NLRI		15	/* RFC2283 */#define BGPTYPE_EXTD_COMMUNITIES        16      /* draft-ietf-idr-bgp-ext-communities */#define BGPTYPE_AS4_PATH	        17      /* RFC4893 */#define BGPTYPE_AGGREGATOR4		18      /* RFC4893 */#define BGPTYPE_PMSI_TUNNEL             22      /* draft-ietf-l3vpn-2547bis-mcast-bgp-02.txt */#define BGPTYPE_ATTR_SET               128      /* draft-marques-ppvpn-ibgp */#define BGP_MP_NLRI_MINSIZE              3       /* End of RIB Marker detection */static struct tok bgp_attr_values[] = {    { BGPTYPE_ORIGIN,           "Origin"},    { BGPTYPE_AS_PATH,          "AS Path"},    { BGPTYPE_AS4_PATH,         "AS4 Path"},    { BGPTYPE_NEXT_HOP,         "Next Hop"},    { BGPTYPE_MULTI_EXIT_DISC,  "Multi Exit Discriminator"},    { BGPTYPE_LOCAL_PREF,       "Local Preference"},    { BGPTYPE_ATOMIC_AGGREGATE, "Atomic Aggregate"},    { BGPTYPE_AGGREGATOR,       "Aggregator"},    { BGPTYPE_AGGREGATOR4,      "Aggregator4"},    { BGPTYPE_COMMUNITIES,      "Community"},    { BGPTYPE_ORIGINATOR_ID,    "Originator ID"},    { BGPTYPE_CLUSTER_LIST,     "Cluster List"},    { BGPTYPE_DPA,              "DPA"},    { BGPTYPE_ADVERTISERS,      "Advertisers"},    { BGPTYPE_RCID_PATH,        "RCID Path / Cluster ID"},    { BGPTYPE_MP_REACH_NLRI,    "Multi-Protocol Reach NLRI"},    { BGPTYPE_MP_UNREACH_NLRI,  "Multi-Protocol Unreach NLRI"},    { BGPTYPE_EXTD_COMMUNITIES, "Extended Community"},    { BGPTYPE_PMSI_TUNNEL,      "PMSI Tunnel"},    { BGPTYPE_ATTR_SET,         "Attribute Set"},    { 255,                      "Reserved for development"},    { 0, NULL}};#define BGP_AS_SET             1#define BGP_AS_SEQUENCE        2#define BGP_CONFED_AS_SEQUENCE 3 /* draft-ietf-idr-rfc3065bis-01 */#define BGP_CONFED_AS_SET      4 /* draft-ietf-idr-rfc3065bis-01  */#define BGP_AS_SEG_TYPE_MIN    BGP_AS_SET#define BGP_AS_SEG_TYPE_MAX    BGP_CONFED_AS_SETstatic struct tok bgp_as_path_segment_open_values[] = {    { BGP_AS_SEQUENCE,         ""},    { BGP_AS_SET,              "{ "},    { BGP_CONFED_AS_SEQUENCE,  "( "},    { BGP_CONFED_AS_SET,       "({ "},    { 0, NULL}};static struct tok bgp_as_path_segment_close_values[] = {    { BGP_AS_SEQUENCE,         ""},    { BGP_AS_SET,              "}"},    { BGP_CONFED_AS_SEQUENCE,  ")"},    { BGP_CONFED_AS_SET,       "})"},    { 0, NULL}};#define BGP_OPT_AUTH                    1#define BGP_OPT_CAP                     2static struct tok bgp_opt_values[] = {    { BGP_OPT_AUTH,             "Authentication Information"},    { BGP_OPT_CAP,              "Capabilities Advertisement"},    { 0, NULL}};#define BGP_CAPCODE_MP                  1#define BGP_CAPCODE_RR                  2#define BGP_CAPCODE_ORF                 3 /* XXX */#define BGP_CAPCODE_RESTART            64 /* draft-ietf-idr-restart-05  */#define BGP_CAPCODE_AS_NEW             65 /* XXX */#define BGP_CAPCODE_DYN_CAP            67 /* XXX */#define BGP_CAPCODE_RR_CISCO          128static struct tok bgp_capcode_values[] = {    { BGP_CAPCODE_MP,           "Multiprotocol Extensions"},    { BGP_CAPCODE_RR,           "Route Refresh"},    { BGP_CAPCODE_ORF,          "Cooperative Route Filtering"},    { BGP_CAPCODE_RESTART,      "Graceful Restart"},    { BGP_CAPCODE_AS_NEW,       "32-Bit AS Number"},    { BGP_CAPCODE_DYN_CAP,      "Dynamic Capability"},    { BGP_CAPCODE_RR_CISCO,     "Route Refresh (Cisco)"},    { 0, NULL}};#define BGP_NOTIFY_MAJOR_MSG            1#define BGP_NOTIFY_MAJOR_OPEN           2#define BGP_NOTIFY_MAJOR_UPDATE         3#define BGP_NOTIFY_MAJOR_HOLDTIME       4#define BGP_NOTIFY_MAJOR_FSM            5#define BGP_NOTIFY_MAJOR_CEASE          6#define BGP_NOTIFY_MAJOR_CAP            7static struct tok bgp_notify_major_values[] = {    { BGP_NOTIFY_MAJOR_MSG,     "Message Header Error"},    { BGP_NOTIFY_MAJOR_OPEN,    "OPEN Message Error"},    { BGP_NOTIFY_MAJOR_UPDATE,  "UPDATE Message Error"},    { BGP_NOTIFY_MAJOR_HOLDTIME,"Hold Timer Expired"},    { BGP_NOTIFY_MAJOR_FSM,     "Finite State Machine Error"},    { BGP_NOTIFY_MAJOR_CEASE,   "Cease"},    { BGP_NOTIFY_MAJOR_CAP,     "Capability Message Error"},    { 0, NULL}};/* draft-ietf-idr-cease-subcode-02 */#define BGP_NOTIFY_MINOR_CEASE_MAXPRFX  1static struct tok bgp_notify_minor_cease_values[] = {    { BGP_NOTIFY_MINOR_CEASE_MAXPRFX, "Maximum Number of Prefixes Reached"},    { 2,                        "Administratively Shutdown"},    { 3,                        "Peer Unconfigured"},    { 4,                        "Administratively Reset"},    { 5,                        "Connection Rejected"},    { 6,                        "Other Configuration Change"},    { 7,                        "Connection Collision Resolution"},    { 0, NULL}};static struct tok bgp_notify_minor_msg_values[] = {    { 1,                        "Connection Not Synchronized"},    { 2,                        "Bad Message Length"},    { 3,                        "Bad Message Type"},    { 0, NULL}};static struct tok bgp_notify_minor_open_values[] = {    { 1,                        "Unsupported Version Number"},    { 2,                        "Bad Peer AS"},    { 3,                        "Bad BGP Identifier"},    { 4,                        "Unsupported Optional Parameter"},    { 5,                        "Authentication Failure"},    { 6,                        "Unacceptable Hold Time"},    { 7,                        "Capability Message Error"},    { 0, NULL}};static struct tok bgp_notify_minor_update_values[] = {    { 1,                        "Malformed Attribute List"},    { 2,                        "Unrecognized Well-known Attribute"},    { 3,                        "Missing Well-known Attribute"},    { 4,                        "Attribute Flags Error"},    { 5,                        "Attribute Length Error"},    { 6,                        "Invalid ORIGIN Attribute"},    { 7,                        "AS Routing Loop"},    { 8,                        "Invalid NEXT_HOP Attribute"},    { 9,                        "Optional Attribute Error"},    { 10,                       "Invalid Network Field"},    { 11,                       "Malformed AS_PATH"},    { 0, NULL}};static struct tok bgp_notify_minor_cap_values[] = {    { 1,                        "Invalid Action Value" },    { 2,                        "Invalid Capability Length" },    { 3,                        "Malformed Capability Value" },    { 4,                        "Unsupported Capability Code" },    { 0, NULL }};static struct tok bgp_origin_values[] = {    { 0,                        "IGP"},    { 1,                        "EGP"},    { 2,                        "Incomplete"},    { 0, NULL}};#define BGP_PMSI_TUNNEL_RSVP_P2MP 1#define BGP_PMSI_TUNNEL_LDP_P2MP  2#define BGP_PMSI_TUNNEL_PIM_SSM   3#define BGP_PMSI_TUNNEL_PIM_SM    4#define BGP_PMSI_TUNNEL_PIM_BIDIR 5#define BGP_PMSI_TUNNEL_INGRESS   6#define BGP_PMSI_TUNNEL_LDP_MP2MP 7static struct tok bgp_pmsi_tunnel_values[] = {    { BGP_PMSI_TUNNEL_RSVP_P2MP, "RSVP-TE P2MP LSP"},    { BGP_PMSI_TUNNEL_LDP_P2MP, "LDP P2MP LSP"},    { BGP_PMSI_TUNNEL_PIM_SSM, "PIM-SSM Tree"},    { BGP_PMSI_TUNNEL_PIM_SM, "PIM-SM Tree"},    { BGP_PMSI_TUNNEL_PIM_BIDIR, "PIM-Bidir Tree"},    { BGP_PMSI_TUNNEL_INGRESS, "Ingress Replication"},    { BGP_PMSI_TUNNEL_LDP_MP2MP, "LDP MP2MP LSP"},    { 0, NULL}};static struct tok bgp_pmsi_flag_values[] = {    { 0x01, "Leaf Information required"},    { 0, NULL}};/* Subsequent address family identifier, RFC2283 section 7 */#define SAFNUM_RES                      0#define SAFNUM_UNICAST                  1#define SAFNUM_MULTICAST                2#define SAFNUM_UNIMULTICAST             3/* labeled BGP RFC3107 */#define SAFNUM_LABUNICAST               4/* draft-ietf-l3vpn-2547bis-mcast-bgp-02.txt */#define SAFNUM_MULTICAST_VPN            5#define SAFNUM_TUNNEL                   64 /* XXX */#define SAFNUM_VPLS                     65 /* XXX */#define SAFNUM_MDT                      66 /* XXX *//* Section 4.3.4 of draft-rosen-rfc2547bis-03.txt  */#define SAFNUM_VPNUNICAST               128#define SAFNUM_VPNMULTICAST             129#define SAFNUM_VPNUNIMULTICAST          130/* draft-marques-ppvpn-rt-constrain-01.txt */#define SAFNUM_RT_ROUTING_INFO          132#define BGP_VPN_RD_LEN                  8static struct tok bgp_safi_values[] = {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩亚洲综合在线| 精品久久久久香蕉网| 国产精品自拍在线| 亚洲人成小说网站色在线| 日韩一区二区免费电影| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 日韩一区精品字幕| 亚洲欧洲av色图| 久久久另类综合| 日韩免费电影网站| 欧美日韩亚洲不卡| 91视视频在线观看入口直接观看www | 99国产精品久久| 久久不见久久见中文字幕免费| 夜夜嗨av一区二区三区四季av| 国产喂奶挤奶一区二区三区 | 亚洲色图第一区| 国产欧美一区二区三区沐欲| 欧美一区二区久久久| 色婷婷综合久久久中文一区二区 | 亚洲va国产天堂va久久en| 国产精品全国免费观看高清| 欧美xingq一区二区| 欧美日本在线一区| 欧美性猛交xxxx黑人交| 91小视频免费观看| 99精品久久99久久久久| 粗大黑人巨茎大战欧美成人| 国产精品一色哟哟哟| 激情综合网天天干| 久久99精品久久久| 美女脱光内衣内裤视频久久网站 | 精品免费99久久| 日韩欧美专区在线| 4438x成人网最大色成网站| 欧美三级视频在线| 欧美久久婷婷综合色| 欧美人妖巨大在线| 欧美一区二区视频在线观看| 4438x亚洲最大成人网| 欧美一区二区三区在线观看视频 | 成人久久18免费网站麻豆 | 久久69国产一区二区蜜臀| 裸体一区二区三区| 蜜桃视频在线观看一区二区| 久久97超碰国产精品超碰| 国产呦萝稀缺另类资源| 成人午夜免费电影| 日本韩国精品一区二区在线观看| 日本精品视频一区二区三区| 欧美日本在线看| 日韩欧美视频一区| 国产片一区二区三区| 国产精品久久久久影院老司 | 7777精品伊人久久久大香线蕉经典版下载| 在线观看欧美精品| 欧美理论在线播放| 精品久久久久一区| 国产精品久久久一区麻豆最新章节| 亚洲色图在线看| 91久久精品一区二区二区| 欧美日韩在线三级| 欧美电影免费观看高清完整版在| 精品福利二区三区| 中文字幕一区二区三| 五月天中文字幕一区二区| 韩国女主播成人在线| av电影在线观看完整版一区二区| 欧美色偷偷大香| 精品久久久久久亚洲综合网| 日韩一区在线免费观看| 午夜视频在线观看一区二区 | 亚洲高清免费视频| 激情综合色综合久久| 91看片淫黄大片一级在线观看| 欧美日韩一区视频| 欧美国产视频在线| 午夜精品久久久久影视| 国产一区二区精品久久| 色哟哟日韩精品| 精品久久久久香蕉网| 伊人婷婷欧美激情| 国产精品一卡二卡| 欧美日韩一区精品| 国产色爱av资源综合区| 亚洲高清一区二区三区| 盗摄精品av一区二区三区| 欧美日韩一二三| 国产精品色哟哟| 日本不卡一二三| 91在线看国产| 国产亚洲精久久久久久| 日韩电影免费在线观看网站| 北条麻妃国产九九精品视频| 日韩一区二区三区高清免费看看| 亚洲日本va午夜在线电影| 免费欧美日韩国产三级电影| 91在线视频免费91| 久久久久久久久久久久久女国产乱| 亚洲一区二区三区四区在线| 粉嫩欧美一区二区三区高清影视| 日韩一级高清毛片| 一区二区激情视频| 99视频精品在线| 国产校园另类小说区| 免费欧美日韩国产三级电影| 欧美唯美清纯偷拍| 亚洲欧美日韩在线不卡| 国产成人精品一区二| 欧美一区二区三区在线电影| 亚洲午夜免费电影| 91最新地址在线播放| 中文字幕欧美激情| 国产精品18久久久久久久久| 91精品国产欧美一区二区成人| 樱花草国产18久久久久| 99精品视频一区二区| 国产欧美一区二区三区在线老狼| 久久精品二区亚洲w码| 欧美美女激情18p| 午夜av区久久| 欧美日韩一二区| 午夜影院久久久| 欧美另类videos死尸| 天堂在线亚洲视频| 欧美高清激情brazzers| 亚洲午夜久久久久中文字幕久| 欧亚一区二区三区| 一区二区三区不卡视频在线观看| 91国在线观看| 玉米视频成人免费看| 欧美三日本三级三级在线播放| 一区二区三区欧美在线观看| 色婷婷av一区二区三区软件 | 亚洲老妇xxxxxx| 色88888久久久久久影院野外| 亚洲欧美日韩国产另类专区| 91美女片黄在线观看| 亚洲欧美日韩久久| 91久久一区二区| 亚洲成av人片观看| 欧美一级在线观看| 久久99国产精品久久99| 久久精品综合网| 不卡的av网站| 一区二区理论电影在线观看| 欧美性猛交xxxxxx富婆| 三级精品在线观看| 亚洲精品在线三区| 懂色av一区二区在线播放| 国产精品嫩草99a| 日本高清免费不卡视频| 天堂av在线一区| 亚洲精品在线免费播放| eeuss影院一区二区三区| 亚洲综合激情小说| 欧美日韩国产三级| 国产一区欧美日韩| 亚洲乱码国产乱码精品精小说| 欧美亚洲日本国产| 日本在线观看不卡视频| 久久久久久久网| 在线观看中文字幕不卡| 欧美日韩一区国产| 极品美女销魂一区二区三区| 国产精品久久久久久久岛一牛影视| 色综合天天综合| 日本视频中文字幕一区二区三区| 久久久无码精品亚洲日韩按摩| www.欧美.com| 日韩精品一二三| 国产精品久久久久桃色tv| 欧美日韩亚洲国产综合| 国产成人高清视频| 亚洲一区二区三区免费视频| 久久综合精品国产一区二区三区| jlzzjlzz欧美大全| 日本va欧美va瓶| 亚洲男人的天堂网| 久久免费视频一区| 欧美日韩三级视频| 大陆成人av片| 麻豆91精品91久久久的内涵| 日韩美女精品在线| 久久综合五月天婷婷伊人| 欧洲一区在线电影| 成人免费黄色在线| 久久国产乱子精品免费女| 一区二区三区在线观看国产| 久久久青草青青国产亚洲免观| 欧美三级在线看| 北条麻妃一区二区三区| 极品美女销魂一区二区三区 | 亚洲成av人片在www色猫咪| 国产精品区一区二区三区| 91精品国产综合久久精品图片| av激情综合网| 国产传媒日韩欧美成人| 日韩福利视频导航| 亚洲一区二区高清|