Do not allow parameter 255 to be registered 71/80871/3
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 14 Mar 2019 15:15:11 +0000 (16:15 +0100)
committerRobert Varga <nite@hq.sk>
Tue, 19 Mar 2019 13:38:57 +0000 (13:38 +0000)
Codepoint 255 is claimed by draft-ietf-idr-ext-opt-param and needs
special treatment. Do not allow it to be registered.

Change-Id: I0cdd8f95569ce1b48796c4552b2c90379aa34873
JIRA: BGPCEP-868
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
bgp/parser-spi/src/main/java/org/opendaylight/protocol/bgp/parser/spi/pojo/SimpleParameterRegistry.java

index 01a82a34529e466901327aabae42a0448040b005..07bff4b06eb1638487f7d06e7e6d8454d0e52bc1 100644 (file)
@@ -26,7 +26,8 @@ final class SimpleParameterRegistry implements ParameterRegistry {
             new HandlerRegistry<>();
 
     Registration registerParameterParser(final int messageType, final ParameterParser parser) {
-        checkArgument(messageType >= 0 && messageType <= Values.UNSIGNED_BYTE_MAX_VALUE);
+        // 255 is explicitly excluded because it is handled in OPEN message parser
+        checkArgument(messageType >= 0 && messageType < Values.UNSIGNED_BYTE_MAX_VALUE);
         return this.handlers.registerParser(messageType, parser);
     }