
At the risk of stating the obvious, the other bug here is that it's not escaping /all/ XML text content in a manner suitable for XML. On 7/09/25 12:34, Job Snijders via NANOG wrote:
Dear Martin,
On Sun, Sep 07, 2025 at 01:25:34PM +0300, Martin Tonusoo via NANOG wrote:
Meta(AS 32934) recently sent a cease NOTIFICATION message to its neighbors on AMS-IX and Piter-IX which had a "<0b>maintenance" string on the RFC 9003 "Shutdown Communication" field. In other words, the "Shutdown Communication" field contained "0b 6d 61 69 6e 74 65 6e 61 6e 63 65". At least on Junos(tested with versions 21.4R3-S3.4, 23.2R2-S4.5 and 25.2R1.9), calling the "get-bgp-summary-information" or "get-bgp-neighbor-information" RPCs using NETCONF returns the string containing the control character and this in turn means that libraries parsing the XML fail as 0x0b(vertical tab) is not in the allowed character range of XML 1.0: https://www.w3.org/TR/xml/#charsets
Who is to blame here? Junos, for returning invalid characters in its NETCONF response? Older versions of Junos incorrectly interpret the first byte of the Shutdown Communication as a character in the message, instead as the length field. The format is described here: https://datatracker.ietf.org/doc/html/rfc9003#section-2
Try upgrading to a newer Junos. For more information go here: https://prsearch.juniper.net/problemreport/PR1652786
Kind regards,
Job - Author of RFC 8203 and RFC 9003 _______________________________________________ NANOG mailing list https://lists.nanog.org/archives/list/nanog@lists.nanog.org/message/W6BZIQRQ...