The BGP-AD Update Message is not decoded and is displayed as "Malformed Packet".
Summary
When BGP-AD update message is captured, it is not decoded and is treated as a "Malformed packet".
(It seems that BugFix was done at #6122 (closed) in the past. But, looks like it hasn't been fixed in the current version.)
Steps to reproduce
When displaying the update message of BGP-AD captured in the VPLS environment.
What is the current bug behavior?
Border Gateway Protocol - UPDATE Message
Marker: ffffffffffffffffffffffffffffffff
Length: 102
Type: UPDATE Message (2)
Withdrawn Routes Length: 0
Total Path Attribute Length: 79
Path attributes
Path Attribute - ORIGIN: INCOMPLETE
Flags: 0x40, Transitive, Well-known, Complete
0... .... = Optional: Not set
.1.. .... = Transitive: Set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: ORIGIN (1)
Length: 1
Origin: INCOMPLETE (2)
Path Attribute - AS_PATH: empty
Flags: 0x40, Transitive, Well-known, Complete
0... .... = Optional: Not set
.1.. .... = Transitive: Set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: AS_PATH (2)
Length: 0
Path Attribute - MULTI_EXIT_DISC: 0
Flags: 0x80, Optional, Non-transitive, Complete
1... .... = Optional: Set
.0.. .... = Transitive: Not set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: MULTI_EXIT_DISC (4)
Length: 4
Multiple exit discriminator: 0
Path Attribute - LOCAL_PREF: 100
Flags: 0x40, Transitive, Well-known, Complete
0... .... = Optional: Not set
.1.. .... = Transitive: Set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: LOCAL_PREF (5)
Length: 4
Local preference: 100
Path Attribute - EXTENDED_COMMUNITIES
Flags: 0xc0, Optional, Transitive, Complete
1... .... = Optional: Set
.1.. .... = Transitive: Set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: EXTENDED_COMMUNITIES (16)
Length: 16
Carried extended communities: (2 communities)
Path Attribute - CLUSTER_LIST: 100.0.0.7
Flags: 0x80, Optional, Non-transitive, Complete
1... .... = Optional: Set
.0.. .... = Transitive: Not set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: CLUSTER_LIST (10)
Length: 4
Cluster List: 100.0.0.7
Path Attribute - ORIGINATOR_ID: 100.0.0.1
Flags: 0x80, Optional, Non-transitive, Complete
1... .... = Optional: Set
.0.. .... = Transitive: Not set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: ORIGINATOR_ID (9)
Length: 4
Originator identifier: 100.0.0.1
Path Attribute - MP_REACH_NLRI
Flags: 0x80, Optional, Non-transitive, Complete
1... .... = Optional: Set
.0.. .... = Transitive: Not set
..0. .... = Partial: Not set
...0 .... = Extended-Length: Not set
.... 0000 = Unused: 0x0
Type Code: MP_REACH_NLRI (14)
Length: 22
Address family identifier (AFI): Layer-2 VPN (25)
Subsequent address family identifier (SAFI): VPLS (65)
Next hop: 64000001
IPv4 Address: 100.0.0.1
[Expert Info (Error/Malformed): Unknown Next Hop length (4 bytes)]
[Unknown Next Hop length (4 bytes)]
[Severity level: Error]
[Group: Malformed]
Number of Subnetwork points of attachment (SNPA): 0
Network Layer Reachability Information (NLRI)
Length: 24576
RD: Unknown (0x0025) RD type
CE-ID: 0
[Malformed Packet: BGP]
[Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
[Malformed Packet (Exception occurred)]
[Severity level: Error]
[Group: Malformed]
What is the expected correct behavior?
Should be displayed in a format that conforms to RFC4761 and RFC6074.
Sample capture file
Relevant logs and/or screenshots
Build information
3.6.1 (v3.6.1-0-ga0a473c7c1ba)
Compiled (64-bit) using Microsoft Visual Studio 2019 (VC++ 14.29, build 30138),
with Qt 5.15.2, with libpcap, with GLib 2.66.4, with zlib 1.2.11, with Lua
5.2.4, with GnuTLS 3.6.3 and PKCS #11 support, with Gcrypt 1.8.3, with MIT
Kerberos, with MaxMind DB resolver, with nghttp2 1.44.0, with brotli, with LZ4,
with Zstandard, with Snappy, with libxml2 2.9.10, with libsmi 0.4.8, with
QtMultimedia, with automatic updates using WinSparkle 0.5.7, with AirPcap, with
SpeexDSP (using bundled resampler), with Minizip.
Running on 64-bit Windows 10 (20H2), build 19042, with Intel(R) Core(TM)
i5-5200U CPU @ 2.20GHz (with SSE4.2), with 8106 MB of physical memory, with GLib
2.66.4, with Qt 5.15.2, with Npcap version 1.55, based on libpcap version
1.10.2-PRE-GIT, with c-ares 1.17.0, with GnuTLS 3.6.3, with Gcrypt 1.8.3, with
nghttp2 1.44.0, with brotli 1.0.9, with LZ4 1.9.3, with Zstandard 1.4.0, without
AirPcap, with light display mode, without HiDPI, with
LC_TYPE=Japanese_Japan.utf8, binary plugins supported (21 loaded).
Edited by Hiroyasu Watanabe