Closed alistairking closed 5 years ago
When processing some super old (circa 2000) MRT data, I came across some records that libparsebgp (correctly) determined were invalid, but our legacy libbgpdump-based parser could parse them.
After checking the bgpdump code I found that they had some workarounds for a bug in an old version of Quagga that omitted the peer information: https://github.com/CAIDA/bgpstream/blob/master/lib/bgpdump/bgpdump_lib.c#L657 https://github.com/CAIDA/bgpstream/blob/master/lib/bgpdump/bgpdump_lib.c#L741
Example file with this type of broken data: http://data.ris.ripe.net/rrc01/2000.11/updates.20001126.0002.gz
When processing some super old (circa 2000) MRT data, I came across some records that libparsebgp (correctly) determined were invalid, but our legacy libbgpdump-based parser could parse them.
After checking the bgpdump code I found that they had some workarounds for a bug in an old version of Quagga that omitted the peer information: https://github.com/CAIDA/bgpstream/blob/master/lib/bgpdump/bgpdump_lib.c#L657 https://github.com/CAIDA/bgpstream/blob/master/lib/bgpdump/bgpdump_lib.c#L741
Example file with this type of broken data: http://data.ris.ripe.net/rrc01/2000.11/updates.20001126.0002.gz