bgpcep.git
3 years agoUpdate to RFC 8664 (PCEP Segment Routing) 07/91507/5
Olivier Dugeon [Tue, 21 Jul 2020 13:48:15 +0000 (15:48 +0200)]
Update to RFC 8664 (PCEP Segment Routing)

As per RFC 8664, this commit introduces following changes:
 - Add Flags N & X to SR PCE Capability
 - Add Ipv6 Local Nai Type and rename SID Type to NAI Type (NT) in
   odl-pcep-segment-routing-yang
 - Change IANA type (=36) for SR-ERO and SR-RRO to be the default value in
   pcep-segment-routing-app-config.yang instead of Legacy Type values
 - Update yang model revision
 - Turn IANA Type as the defaut for Segement Routing parser registration
 - Mark deprecated all IANA Type configuration (this will be removed in next
   release after Aluminium)
 - Add extra verifications to AbstractSrSubobjectParser Java Class and support
   for Ipv6Local NAI
 - Update accordingly Segment Routing Junit Tests

JIRA: BGPCEP-882
Change-Id: Ic6dc01329af87a317154f742d7e698cc9d752df0
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdded JSON and XML payloads tabs with RFC 8040 URL 21/90921/7
Aman [Sun, 5 Jul 2020 10:20:59 +0000 (15:50 +0530)]
Added JSON and XML payloads tabs with RFC 8040 URL

Modified docs/pcep/pcep-user-guide-running-pcep.rst by adding JSON,XML examples with corresponding sphinx tab

Change-Id: I63c308e723b7dbc79571128a405c2402b4cbe370
Signed-off-by: Aman <170030039@iitdh.ac.in>
3 years agoNew Committers Addition. 09/91609/8
Venkatrangan Govindarajan [Fri, 24 Jul 2020 06:53:11 +0000 (12:23 +0530)]
New Committers Addition.

- Ajay and Olivier have been approved as committers to bgpcep
- This Patch adds their details to INFO.yaml

Signed-off-by: Venkatrangan Govindarajan <vgovindarajan@luminanetworks.com>
Change-Id: I13a4c0085160ef860272465a221296338b38fcd1

3 years agoHandle the case of empty optional capabilities 85/91685/6
Robert Varga [Mon, 27 Jul 2020 17:02:56 +0000 (19:02 +0200)]
Handle the case of empty optional capabilities

Empty lists are being squashed to null, hence use nonnull to acquire
an empty list back.

JIRA: BGPCEP-915
Change-Id: I6483160e3637d3901e9a1f840cef03dd817b5523
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoProcess open mesage more defensively 61/91761/2
Robert Varga [Wed, 29 Jul 2020 15:52:04 +0000 (17:52 +0200)]
Process open mesage more defensively

We are already handling documented exceptions, but we may end up
ignoring a runtime exceptions. Add a defensive catch.

JIRA: BGPCEP-915
Change-Id: I921395d9a36fd7fcadfeef882d181abc10db2b13
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdded JSON and XML payloads tabs with RFC 8040 URL 53/91353/6
Aman [Fri, 17 Jul 2020 06:07:07 +0000 (11:37 +0530)]
Added JSON and XML payloads tabs with RFC 8040 URL

Modified docs/pcep/pcep-user-guide-session-statistics.rst by adding JSON,XML examples with corresponding sphinx tabs

Change-Id: I6656b025b0693bfae5fbb9b1534deab70ce4daf4
Signed-off-by: Aman <170030039@iitdh.ac.in>
3 years agoAdded JSON and XML payloads tabs with RFC 8040 URL 19/90919/9
Aman [Fri, 3 Jul 2020 19:22:13 +0000 (00:52 +0530)]
Added JSON and XML payloads tabs with RFC 8040 URL

Modified docs/pcep/pcep-user-guide-active-stateful-pce.rst by adding JSON,XML examples with corresponding sphinx tabs

Change-Id: I902e0799a9231cddb14fe225c31e3144acb49c8a
Signed-off-by: Aman <170030039@iitdh.ac.in>
3 years agoAdded JSON and XML payloads tabs with RFC 8040 URL 02/91402/6
Aman [Sat, 18 Jul 2020 06:34:10 +0000 (12:04 +0530)]
Added JSON and XML payloads tabs with RFC 8040 URL

Modified docs/pcep/pcep-user-guide-test-tools.rst by adding JSON,XML examples with corresponding sphinx tab

Change-Id: Iff6fba06627c8718b1584341532365b6da9590a1
Signed-off-by: Aman <170030039@iitdh.ac.in>
3 years agoUpdate Statefuful & Initiated yang models 99/91499/3
Olivier Dugeon [Tue, 21 Jul 2020 07:08:16 +0000 (09:08 +0200)]
Update Statefuful & Initiated yang models

Yang models pcep/ietf-stateful/src/main/yang/odl-pcep-ietf-initiated.yang
and pcep/ietf-stateful/src/main/yang/odl-pcep-ietf-stateful.yang have been
updated for conformity to RFC 8231 (Stateful) and RFC 8281 (Initiated).

The main modification concerns the replacement of the 'symbolic-path-name-tlv'
by the 'lsp-object' in the PcRep & PcReq message.

Revision number has been updated accordingly.

JIRA: BGPCEP-882
Change-Id: I4509384624fcdad8ffa93e2eb83697ac90556418
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
3 years agoPcep Stateful & Initiated renaming 72/91372/4
Olivier Dugeon [Fri, 17 Jul 2020 11:37:12 +0000 (13:37 +0200)]
Pcep Stateful & Initiated renaming

This is the first part of compliancy to RFC8231 (Stateful) & RFC8281
(Initiated). It removes mention to old draft in various package name,
class name, yange model name ... as follow:
 - Rename Stateful07 -> Stateful
 - Rename Initiated00 -> Initiated
 - CrabbeInitiated -> Initiated

JIRA: BGPCEP-882
Change-Id: I4a9a7faa08e1a681fda8a01ed28a9ccf61af6cc1
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
3 years agoBump odlparent/yangtools/mdsal/controller 72/91672/1
Robert Varga [Mon, 27 Jul 2020 00:10:57 +0000 (02:10 +0200)]
Bump odlparent/yangtools/mdsal/controller

Adopt upstream versions:
- odlparent-7.0.5
- yangtools-5.0.5
- mdsal-6.0.4
- controller-2.0.3

Change-Id: I670c67139a35dae446c378f376add25df84f499a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdd an explanatory messages around TCP-MD5 16/91516/1
Robert Varga [Wed, 22 Jul 2020 08:33:11 +0000 (10:33 +0200)]
Add an explanatory messages around TCP-MD5

Just pointing to epoll unavailabality reason is not enough, we
should also explain that the user can get PCEP working without
TCP/MD5 keys.

JIRA: BGPCEP-916
Change-Id: I95d5d087f99a29a6d823041e40a841b2f0367be8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove use of ModuleInfoBackedContext 33/91433/1
Robert Varga [Sun, 19 Jul 2020 15:56:13 +0000 (17:56 +0200)]
Remove use of ModuleInfoBackedContext

We do not need this class anymore, remove uneeded operations on it.

Change-Id: I768d00c01c1d08d29452ea94083a115e46263305
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix translation warnings 17/91417/1
Robert Varga [Sat, 18 Jul 2020 13:49:22 +0000 (15:49 +0200)]
Fix translation warnings

Fixup use of deprecated methods a bit.

Change-Id: I8285748f517718cf9f512bc78dfcf35c8893e87b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAttach sources to test-jar 14/91414/1
Robert Varga [Sat, 18 Jul 2020 10:41:13 +0000 (12:41 +0200)]
Attach sources to test-jar

Building test-jars without also attaching sources make them painful
to use. Make sure we attach sources.

Change-Id: I2fc110cb8b7037c7b8b71251ca910fcf4c6be7ac
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix Path Computation Crashes 91/91091/4
Olivier Dugeon [Fri, 10 Jul 2020 12:28:57 +0000 (14:28 +0200)]
Fix Path Computation Crashes

If Path Computation is called with unknown graph, PCEP session crashes
due to path computation creation error. This patch checks that path
computation is valid and reply with PcErr message for PcReq or PcError
for RPC call.

JIRA: BGPCEP-911
Change-Id: I5fa6919db058c97ada4b69077630101d6f02c4f7
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix Unreserved Bandwidth verification in algo 03/91203/4
Olivier Dugeon [Fri, 10 Jul 2020 15:21:03 +0000 (17:21 +0200)]
Fix Unreserved Bandwidth verification in algo

Path Computation Algorithms assume that Unreserved Bandwidth values are
ordered by Class-Type priority which could be wrong. This patch set correct
this issue by searching the correct Unreserved Bandwidth value that corresponds
to the Class-Type instead of directly addressing the Unreserved Bandwidth list
with the Class-Type as index.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: I02c03c18cfe2eee2451f05739bf6df9ce6995a38
(cherry picked from commit 0d9eadca7b948a6090130de51f80eac845afbf9d)

3 years agoFix wrong SR-NAI type for Path Computation 94/91094/3
Olivier Dugeon [Fri, 10 Jul 2020 13:53:02 +0000 (15:53 +0200)]
Fix wrong SR-NAI type for Path Computation

When computing a segment path for PcInitiate message, the Path Computation
Algorithms produce an SR-ERO composed by Node-SIDs (NAI Type = 1 or 2).
However, routers expect a SR-ERO composed by Adjacency-SIDs (NAI Type = 3 or 4)
with M-Flag set to 1. Indeed, Node SID NAI is only valid for loose path while
Path Computation determines strict path.

This patch set change NAI (1/2) by NAI (3/4) in the SR-ERO computed by the
Path Computation Algorithms.

JIRA: BGPCEP-913

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: Ia57b0475d764830a671f785e7444aaf37007adeb

3 years agoDo not fail on warnings for docs-linkcheck 90/91190/2
Thanh Ha [Fri, 10 Jul 2020 14:55:12 +0000 (10:55 -0400)]
Do not fail on warnings for docs-linkcheck

This is a workaround due to sphinx-tabs being incompatible with the
Sphinx linkchecker which throws a warning. We mainly use linkchecker
to catch broken links so we don't really need to fail on warnings as
the main "docs" builder will still fail for warning level issues so
this is a reasonable workaround.

Signed-off-by: Thanh Ha <zxiiro@gmail.com>
Change-Id: Ia3b8425133ffb83f6adddd9e584deffb2b887222

3 years agoPrevent deadlock when updating PCEP stats when Tx chain fails 68/89968/4
Ajay Lele [Tue, 26 May 2020 18:05:10 +0000 (11:05 -0700)]
Prevent deadlock when updating PCEP stats when Tx chain fails

Multiple threads are blocked on TopologyStatsProviderImpl
instance lock which is held from TopologyStatsProviderImpl#unbind()
which in turn is waiting for delete transaction commit
future to complete. The transaction chain has failed but
the callback TopologyStatsProviderImpl#onTransactionChainFailed()
is blocked on lock held by earlier thread, thus creating a deadlock.
Patch avoids this by registering callback on delete transaction
commit future instead of the blocking call.

JIRA: BGPCEP-901
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Change-Id: I4a65b3dd00fb6f1255bf6eeb8b5f1d03f3b3a182

3 years agoUse read 4 bytes in TE Metric case 09/90809/3
Robert Varga [Mon, 29 Jun 2020 14:25:11 +0000 (16:25 +0200)]
Use read 4 bytes in TE Metric case

https://tools.ietf.org/html/rfc7752#section-3.3.2.3 requires the
field to have 4 bytes. Do not allow smaller values by using exacting
ByteBufUtils.readUint32().

Change-Id: I2e3604d4717b77a66b037ed35369c1d195ad2c94
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdd INFO.yaml for bgpcep 20/91220/1
Anil Belur [Sat, 11 Jul 2020 02:50:53 +0000 (12:50 +1000)]
Add INFO.yaml for bgpcep

Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
Change-Id: I92186a421d53980b02242fa33f9b51954c77e189

3 years agoFix Graph documentation 81/91081/1
Olivier Dugeon [Fri, 10 Jul 2020 07:28:32 +0000 (09:28 +0200)]
Fix Graph documentation

Graph users guide references the wrong key 'graph-type' instead of
'domain-scope'.

JIRA: BGPCEP-912

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: Iece3992efa1908c9ab04721a1b1671a7e8a5ed74

3 years agoTake advantage of {Integer,Long}.BYTES 08/90808/1
Robert Varga [Mon, 29 Jun 2020 13:42:57 +0000 (15:42 +0200)]
Take advantage of {Integer,Long}.BYTES

Rather than diving ourselves, take advantage of Java 8+ constants
exposed as .BYTES.

Change-Id: Iac822ef173fe7f40abed754e26d6563feeeb912d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFurther deprecation removal 00/90800/2
Robert Varga [Mon, 29 Jun 2020 07:15:25 +0000 (09:15 +0200)]
Further deprecation removal

This makes another pass at warnings, eliminating unneeded conversions
in a few places.

Change-Id: I9b19289e104be890afbe0f0525b6efaba2bf4e55
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate from legacy IetfInetUtils methods 99/90799/1
Robert Varga [Mon, 29 Jun 2020 07:07:57 +0000 (09:07 +0200)]
Migrate from legacy IetfInetUtils methods

Plain migration towards new types.

Change-Id: Iddbbe671b2eedd80cde4c8ab9fbc7c65869981eb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in pcep 98/90798/1
Robert Varga [Mon, 29 Jun 2020 05:20:47 +0000 (07:20 +0200)]
Cleanup deprecation warnings in pcep

Eliminate some leftovers from codegen change.

Change-Id: Ieecc76abeb58bd910893f5935c0ca99756d9177a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bmp 97/90797/1
Robert Varga [Mon, 29 Jun 2020 04:44:00 +0000 (06:44 +0200)]
Cleanup deprecation warnings in bmp

Eliminate some leftovers from codegen change.

Change-Id: Iaeaa0a1d2ae1903865d13b9ba0ab1bb6fbecd6c9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse predictable map in test 96/90796/1
Robert Varga [Mon, 29 Jun 2020 04:39:13 +0000 (06:39 +0200)]
Use predictable map in test

UnrecognizedAttributesSerializerTest fails sporadically due to
Map's order instability. Use ImmutableMap, which guarantees iteration
order.

Change-Id: Idb0a42e72e82975799ace19c56619d6c87364100
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/testtool 95/90795/1
Robert Varga [Sun, 28 Jun 2020 17:37:41 +0000 (19:37 +0200)]
Cleanup deprecation warnings in bgp/testtool

Eliminate some leftovers from codegen change.

Change-Id: I0c6ff683263500bf34e551c3b9c37ff81b2ba9b5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/rib-spi 94/90794/1
Robert Varga [Sun, 28 Jun 2020 17:37:32 +0000 (19:37 +0200)]
Cleanup deprecation warnings in bgp/rib-spi

Eliminate some leftovers from codegen change.

Change-Id: I14a8d2b32f0cdcab5fdbdcb81e9a2191b2aa992a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/rib-impl 93/90793/1
Robert Varga [Sun, 28 Jun 2020 15:32:16 +0000 (17:32 +0200)]
Cleanup deprecation warnings in bgp/rib-impl

Eliminate some leftovers from codegen change.

Change-Id: I9a6ab0a13e406c194c7267fd99ed77616a5c7815
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/parser-spi 92/90792/1
Robert Varga [Sun, 28 Jun 2020 15:11:45 +0000 (17:11 +0200)]
Cleanup deprecation warnings in bgp/parser-spi

Eliminate some leftovers from codegen change.

Change-Id: I2e7dfc74ef4639e52bfa8887836e9e6c2c9b290e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/parser-mock 91/90791/1
Robert Varga [Sun, 28 Jun 2020 15:08:43 +0000 (17:08 +0200)]
Cleanup deprecation warnings in bgp/parser-mock

Eliminate some leftovers from codegen change.

Change-Id: I4b9e46887d427a00f845b297618b86a5d2cd6f10
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/parser-impl 90/90790/1
Robert Varga [Sun, 28 Jun 2020 15:07:02 +0000 (17:07 +0200)]
Cleanup deprecation warnings in bgp/parser-impl

Eliminate some leftovers from codegen change.

Change-Id: I83b17bfd00475ea40bb5eab4bfa1d25f70d88cd2
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/openconfig-state 89/90789/1
Robert Varga [Sun, 28 Jun 2020 04:08:26 +0000 (06:08 +0200)]
Cleanup deprecation warnings in bgp/openconfig-state

Eliminate some leftovers from codegen change.

Change-Id: I232ac497b2007a8a916b00ca6fe623e8d4f6e2fb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/linkstate 88/90788/1
Robert Varga [Sat, 27 Jun 2020 13:39:42 +0000 (15:39 +0200)]
Cleanup deprecation warnings in bgp/extensions/linkstate

Eliminate some leftovers from codegen change.

Change-Id: I4cf923b1e5c538f445892c68b46e78a12794daf4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/mvpn 87/90787/1
Robert Varga [Sat, 27 Jun 2020 13:28:04 +0000 (15:28 +0200)]
Cleanup deprecation warnings in bgp/extensions/mvpn

Eliminate some leftovers from codegen change.

Change-Id: I3c061694f3213de288a99ca95f71acddfb3698e5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/labeled-unicast 86/90786/1
Robert Varga [Sat, 27 Jun 2020 13:24:55 +0000 (15:24 +0200)]
Cleanup deprecation warnings in bgp/extensions/labeled-unicast

Eliminate some leftovers from codegen change.

Change-Id: I4599e8239c49e5b7d9c1f9643e7a14f58080e923
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/l3vpn 84/90784/1
Robert Varga [Sat, 27 Jun 2020 09:29:56 +0000 (11:29 +0200)]
Cleanup deprecation warnings in bgp/extensions/l3vpn

Eliminate some leftovers from codegen change.

Change-Id: I6f81e7a59020f512c68a9cddb84c78bd5c33d275
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/inet 83/90783/1
Robert Varga [Sat, 27 Jun 2020 09:21:28 +0000 (11:21 +0200)]
Cleanup deprecation warnings in bgp/extensions/inet

Eliminate some leftovers from codegen change.

Change-Id: I3bc180b1f965f9a5854e2d8b6454ed315cca72c8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/flowspec 82/90782/1
Robert Varga [Sat, 27 Jun 2020 09:17:17 +0000 (11:17 +0200)]
Cleanup deprecation warnings in bgp/extensions/flowspec

Eliminate some leftovers from codegen change.

Change-Id: Id91adbb2704739d3467ecb3f1a47894366798697
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/extensions/evpn 81/90781/1
Robert Varga [Sat, 27 Jun 2020 09:17:06 +0000 (11:17 +0200)]
Cleanup deprecation warnings in bgp/extensions/evpn

Eliminate some leftovers from codegen change.

Change-Id: I10a6898e73e85c8f7d1564651b90566237e231d1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup deprecation warnings in bgp/cli 80/90780/1
Robert Varga [Sat, 27 Jun 2020 08:56:57 +0000 (10:56 +0200)]
Cleanup deprecation warnings in bgp/cli

Eliminate some leftovers from codegen change.

Change-Id: I9eb2744f9b4dbc0d535c998d1e70048caca22d17
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoClean up MRI project references, take 2 03/90603/2
Robert Varga [Tue, 23 Jun 2020 09:54:29 +0000 (11:54 +0200)]
Clean up MRI project references, take 2

With most of the dependencies cleaned up, sweep the remaining
features to use version ranges to refer to MRI features.

Change-Id: I4af8d4b209a731d29219cdc0ed82edeca711047c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup MRI feature dependencies 07/89707/12
Robert Varga [Tue, 12 May 2020 15:28:44 +0000 (17:28 +0200)]
Cleanup MRI feature dependencies

Make sure we use ranged references to most MRI features. Also clean up
packaging of our artifacts, removing most bundle duplicates and unneeded
references.

Change-Id: I1524fce0b5ef18ad0ec8468af304dd6bf1cc98da
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix RIB activation 41/90441/1
Robert Varga [Sun, 14 Jun 2020 12:40:45 +0000 (14:40 +0200)]
Fix RIB activation

We now have a separate CodecsRegistry component, make sure we inject
that instead of codec/schema combo.

Change-Id: I277e40fb90b1140d9c59ff492024db0361845716
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoIntegrate controller-2.0.2 07/90407/1
Robert Varga [Thu, 11 Jun 2020 21:44:28 +0000 (23:44 +0200)]
Integrate controller-2.0.2

This bumps versions to the following:
- odlparent-7.0.3
- yangtools-5.0.3
- mdsal-6.0.2
- controller-2.0.2

Change-Id: I972cb3205f00e389e06a1fb53bc12bc8d8e6576a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove superfluous units specification 58/90358/1
Robert Varga [Tue, 9 Jun 2020 14:02:55 +0000 (16:02 +0200)]
Remove superfluous units specification

Units are defined in the base type, there is no need to define
them in the leaf.

JIRA: BGPCEP-907
Change-Id: I285db487de6807ccfe380914b88137f360d71e75
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse IetfInetUtil for IpAddressNoZone formatting 24/90324/1
Robert Varga [Sun, 7 Jun 2020 10:28:34 +0000 (12:28 +0200)]
Use IetfInetUtil for IpAddressNoZone formatting

Rather than going through InetAddress.getHostAddress(), use
provided utilities to instantiate IpAddressNoZone more efficiently.
Fixes the following splat:

java.lang.IllegalArgumentException: Cannot create IpAddress from 2001:db8:1000:0:0:0:0:10%0
    at org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddressNoZoneBuilder.getDefaultInstance(IpAddressNoZoneBuilder.java:26) ~[bundleFile:?]
    at org.opendaylight.bgpcep.pcep.topology.provider.AbstractTopologySessionListener.onSessionUp(AbstractTopologySessionListener.java:165) ~[bundleFile:?]
    at org.opendaylight.protocol.pcep.impl.PCEPSessionImpl.sessionUp(PCEPSessionImpl.java:377) [bundleFile:?]
    at org.opendaylight.protocol.pcep.impl.PCEPSessionImpl.handlerAdded(PCEPSessionImpl.java:425) [bundleFile:?]
    at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:971) [bundleFile:4.1.48.Final]

Change-Id: Ifa13691b0487755de112cee7dea57cde50427972
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix NPE in BMP 39/90239/2
Robert Varga [Thu, 4 Jun 2020 03:07:37 +0000 (05:07 +0200)]
Fix NPE in BMP

Empty lists are being squashed to nulls now, make sure we account
for this this possiblity. Fixes the following splat:

java.lang.NullPointerException: null
at org.opendaylight.protocol.bmp.impl.app.BmpRouterPeerImpl.setPeerTables(BmpRouterPeerImpl.java:262) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.app.BmpRouterPeerImpl.<init>(BmpRouterPeerImpl.java:145) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.app.BmpRouterPeerImpl.createRouterPeer(BmpRouterPeerImpl.java:168) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.app.BmpRouterImpl.onPeerUp(BmpRouterImpl.java:249) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.app.BmpRouterImpl.onMessage(BmpRouterImpl.java:122) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.session.BmpSessionImpl.handleMessage(BmpSessionImpl.java:127) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.session.BmpSessionImpl.channelRead0(BmpSessionImpl.java:50) ~[bundleFile:?]
at org.opendaylight.protocol.bmp.impl.session.BmpSessionImpl.channelRead0(BmpSessionImpl.java:33) ~[bundleFile:?]

Change-Id: I303095aa30f296f0bb77d4d11b6a31ee77494abb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoIntegrate controller-2.0.1 68/90168/2
Robert Varga [Sun, 31 May 2020 12:14:02 +0000 (14:14 +0200)]
Integrate controller-2.0.1

This bumps versions to the following:
- odlparent-7.0.2
- yangtools-5.0.2
- mdsal-6.0.1
- controller-2.0.1

Change-Id: I392ee1604c693643d83008aef760db3eb9c772ae
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoReduce mdsal-binding-dom-adapter dependency 35/89735/1
Robert Varga [Wed, 13 May 2020 11:24:29 +0000 (13:24 +0200)]
Reduce mdsal-binding-dom-adapter dependency

We need the adapter only for testing purposes, lower the dependency
so as to clean up features.

Change-Id: I658827a7e3a3aa76c81faddcf8fb58b11fb2e95d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove bgp-rib-mock test-jar 00/89700/2
Robert Varga [Tue, 12 May 2020 11:28:17 +0000 (13:28 +0200)]
Remove bgp-rib-mock test-jar

This is an empty jar, remove it to reduce crud around test jars.

Change-Id: I22e59e3967f3c92e3c0cd55d2fd627b64921bb92
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove bgp-config-example test-jar 99/89699/2
Robert Varga [Tue, 12 May 2020 11:26:00 +0000 (13:26 +0200)]
Remove bgp-config-example test-jar

This is an empty jar, remove it to reduce crud around test jars.

Change-Id: Ib96000d0b40adb0cda67292b1d05e50be1aca66b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUpdate MRI projects for Aluminium 29/89329/20
Robert Varga [Thu, 23 Apr 2020 08:33:18 +0000 (10:33 +0200)]
Update MRI projects for Aluminium

This bumps versions to the following:
- odlparent-7.0.1
- yangtools-5.0.1
- mdsal-6.0.0
- controller-2.0.0

Change-Id: I019a7cfcca9b986ee4562d787c823604a3d99ec4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix checkstyle 83/89283/2
Robert Varga [Fri, 24 Apr 2020 15:35:57 +0000 (17:35 +0200)]
Fix checkstyle

Upgraded checkstyle finds a number of issues, fix them up.

Change-Id: I501fe4a7b80efd96cb3904cbb857e1bff9556ae7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit 5c8ed0f8cd482fe14b96cab76f79c3d599783166)

4 years agoUpgrade compendium dependency 28/89328/1
Robert Varga [Thu, 23 Apr 2020 08:55:08 +0000 (10:55 +0200)]
Upgrade compendium dependency

We are using OSGi R6, the compendium reference should match.

Change-Id: Iafdf2f1ef31a90097a1205181924bacf0dd1a9e9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove duplicate dependency 27/89327/1
Robert Varga [Thu, 23 Apr 2020 08:54:37 +0000 (10:54 +0200)]
Remove duplicate dependency

odl-uint24 is mentioned twice here, remove the superfluous
declaration.

Change-Id: I14d1c8faae01f2e88c49a685fdbf9c3685f05a44
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoHandle race-conditions in BGP shutdown code 61/88661/5
Ajay Lele [Tue, 24 Mar 2020 22:43:48 +0000 (15:43 -0700)]
Handle race-conditions in BGP shutdown code

JIRA: BGPCEP-900
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Change-Id: Id50c83cd226f6786c9830b3b10d7e0eddda9653e

4 years agoUse Magnesium controller 78/88678/2
Robert Varga [Wed, 25 Mar 2020 21:46:31 +0000 (22:46 +0100)]
Use Magnesium controller

As part of controller transition to being MRI, downgrade the version
used to Magnesium release. This will be bumped to Aluminium proper
during the MRI window.

Change-Id: I093e9ffff19ef7302eca5c0495927bca0e72f3ac
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMaster branch is now Aluminium 25/88725/1
Thanh Ha [Thu, 26 Mar 2020 19:02:42 +0000 (15:02 -0400)]
Master branch is now Aluminium

Signed-off-by: Thanh Ha <zxiiro@gmail.com>
Change-Id: I5874b08305e5da45c54e2aab2aaf722074e9a146

4 years agoRemove use of projectinfo property 77/88577/1
Robert Varga [Mon, 23 Mar 2020 10:29:21 +0000 (11:29 +0100)]
Remove use of projectinfo property

maven-project-info-reports-plugin is properly declared with a newer
version upstream, remove use of property-based version override.

Change-Id: I3f9e0b2f9f37b609b070cb3d3c79589fd3114244
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUpdate PCEP Path Computation Documentation 18/88418/1
Olivier Dugeon [Fri, 13 Mar 2020 10:46:18 +0000 (11:46 +0100)]
Update PCEP Path Computation Documentation

Remove 'Known Bug' section in docs/pce/pcep-user-guide-path-computation.rst
as bug has been resolved.

JIRA: BGPCEP-898

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: Iec633e7d7310f1cea3f62bc28639974d30b08774

4 years agoFix uninitialized LinkstateGraphProvider registration 14/88414/3
Robert Varga [Thu, 12 Mar 2020 21:02:40 +0000 (22:02 +0100)]
Fix uninitialized LinkstateGraphProvider registration

LinkstateGraphProvider is initializing a field and hence cannot
be registered from super class.

JIRA: BGPCEP-898
Change-Id: Iccf819df69957ebee8de3cbe926a7d13113fb244
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEnforce field finality 12/88412/4
Robert Varga [Thu, 12 Mar 2020 16:17:10 +0000 (17:17 +0100)]
Enforce field finality

We really want to safely publish whatever we have gotten and want
to reject nulls. This does not solve the underlying issue, but takes
a step in bracketing where it lies.

JIRA: BGPCEP-898
Change-Id: Id465a5dce3c0e4aaeefbaf1dc6f7d36a2a02712b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoPath Computation & Server Improvement 23/88223/5
Olivier Dugeon [Mon, 2 Mar 2020 18:28:35 +0000 (19:28 +0100)]
Path Computation & Server Improvement

 - Correct a bug in SAMCRA algorithm when delay is not specified
 - Improve debug message for SAMCRA algorithm
 - Add documentation for Path Computation Algorithm bundle
 - Update documentation for PCEP with the Path Computation Server

JIRA: BGPCEP-897
JIRA: BGPCEP-896

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: I3243c6c1f52f3960c01c64069a075c76ed2fa829

4 years agoPropogate SR SID info from BGP-LS routes in RIB to link-state topology 11/87011/9
Ajay Lele [Thu, 16 Jan 2020 21:24:54 +0000 (13:24 -0800)]
Propogate SR SID info from BGP-LS routes in RIB to link-state topology

JIRA: BGPCEP-365
Change-Id: Ie4d9701459e163aad24ea1cca61e19fc1661d73a
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoPath Computation Server 12/87712/13
Olivier Dugeon [Thu, 16 Jan 2020 14:53:43 +0000 (15:53 +0100)]
Path Computation Server

Initial commit of Path Computation Server.

This is the 3/3 Patch Set to provide Path Computation Element (PCE)
conform to RFC5440. This integrates the Graph model and Algorithms
features. Graph is fulfilled from BGP-LinkState if available otherwise
a graph must be provided.

Details information about how to use the PCE server will be provided
in docs/pcep/pcep-user-guide-pce-server.rst

JIRA: BGPCEP-858

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Change-Id: Ic0552b4c7ad856fe7a7cca214bbaf81f659d876c

4 years agoPath Computation Algorithms 46/87546/14
Olivier Dugeon [Thu, 16 Jan 2020 15:03:08 +0000 (16:03 +0100)]
Path Computation Algorithms

Initial commit of Path Computation Algorithms implementation.

This is the 2/3 Patch Set to implement a full featured PCE server
in conformity to RFC5440. It provides three different algorithms
able to compute paths between end points by taking into account
different constraints:
 - A simple Shortest Path First that takes into account only
   standard IGP metric
 - A Constrained Shortest Path First (CSPF) that takes into
   account the TE Metric and Bandwidth for constraints
 - SAMCRA algorithm that takes into account TE Metric, Delay,
   Loss and Bandwidth for constraints

Details information about how the various algorithms are implemented
and how to use them will be provided in docs/algo directory.

JIRA: BGPCEP-858

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Co-authored-by: Philippe Niger <philippe.niger@orange.com>
Co-authored-by: Philippe Cadro <philippe.cadro@orange.com>
Change-Id: Ifbcf2a65aef08c3fa95a2be54eb53ffdf55dd417

4 years agoGraph modelisation for Path Computation Algorithm 54/86954/31
Olivier Dugeon [Thu, 28 Nov 2019 14:40:07 +0000 (15:40 +0100)]
Graph modelisation for Path Computation Algorithm

Initial commit of Graph Model.

This is the patch set 1/3 to implement the Path Computation Algorithms
to implement a full feature PCE server in conformity to RFC5440.

Details information about the yang model, REST and Java API are
provided in docs/graph directory.

JIRA: BGPCEP-858
Change-Id: Icf7b8320185f9d94377c76cdaecba836b7ef3bc5
Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
Co-authored-by: Philippe Niger <philippe.niger@orange.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoYANG revision dates mass-update 54/87454/9
guillaume.lambert [Wed, 5 Feb 2020 14:20:11 +0000 (15:20 +0100)]
YANG revision dates mass-update

A previous commit mass-converted YANG models to use -no-zone addresses.
https://git.opendaylight.org/gerrit/c/bgpcep/+/87048
66b8611ab00a626167bf20556d7cbb5ec00ca124

Their revision date should have been changed and the code + other YANG
imports adapted accordingly.

Note that:
- even if there is no ODL guidelines on the topic, this is IETF YANG
  recommendation.
- The RESTCONF payload will remain the same for end-users.
- JAVA API and Datastore contents may be affected
  (potential upgrade compatibility issue from existing Sodium instances)

JIRA: BGPCEP-790 BGPCEP-895

Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I526bf90c9e74bc6e72c44da449641a350e12946e

4 years agoUse HashMap.computIfAbsent() in getNode() 70/87870/2
Robert Varga [Tue, 18 Feb 2020 18:14:57 +0000 (19:14 +0100)]
Use HashMap.computIfAbsent() in getNode()

There is no point in performing a lookup + store -- just perform
a conditional load, which saves a bucket lookup in the not-present
case.

Change-Id: Idacb1eba11da59fbb3c9554fa0d2f5fac92717d3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump versions by x.y.(z+1) 85/87985/1
jenkins-releng [Sat, 22 Feb 2020 04:30:15 +0000 (04:30 +0000)]
Bump versions by x.y.(z+1)

Signed-off-by: jenkins-releng <jenkins-releng@opendaylight.org>
Change-Id: Iacdaac7d66938302057ccc275a6959fe040cdf98

4 years agoMass-convert all compontents to use -no-zone addresses 48/87048/15
Robert Varga [Tue, 7 Jan 2020 08:00:19 +0000 (09:00 +0100)]
Mass-convert all compontents to use -no-zone addresses

Rather than taking a step-by-step approach, this patch mass converts
all utilities and ODL models to use -no-zone addresses and fixes up
the fallout from that.

JIRA: BGPCEP-790
Change-Id: Iaa2a8e207aeffd40aa10a4d438587263d053629c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoIgnore unknown subobjects while parsing RRO/ERO objects in PCEP messages 30/87030/4
Ajay Lele [Fri, 17 Jan 2020 18:18:40 +0000 (10:18 -0800)]
Ignore unknown subobjects while parsing RRO/ERO objects in PCEP messages

Make handling of unknown subobjects more liberal. Log message parsing
exceptions at error level instead of debug to make it easier to detect.

JIRA: BGPCEP-892
Change-Id: I3d142e3d857b1ee154aaedf3d28a09d870932915
Signed-off-by: Ajay Lele <ajayslele@gmail.com>
4 years agoFix buffer read for unsupported LLGR Safi 96/87196/1
Vikram Singh Kalakoti [Tue, 28 Jan 2020 15:40:52 +0000 (21:10 +0530)]
Fix buffer read for unsupported LLGR Safi

In LlGracefulCapabilityHandler, once an unsupported safi is encountered
we should skip all unread bytes in buffer for that Table

JIRA:BGPCEP-893

Signed-off-by: Vikram Singh Kalakoti <vikramskalakoti@gmail.com>
Change-Id: Ib4479f75d70631fff92b8af62f6bd20486a66c2a

4 years agoUse IetfYangUtil.hexStringBytes()/hexStringFor() 53/87053/1
Robert Varga [Mon, 20 Jan 2020 13:44:23 +0000 (14:44 +0100)]
Use IetfYangUtil.hexStringBytes()/hexStringFor()

Utility methods exposed by MD-SAL are quite a bit more efficient, use
them instead of dancing around with strings.

Change-Id: I16dec789353244416dae228f5151fbd2b4c27d6d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate to use MD-SAL's uint24 type 51/87051/2
Robert Varga [Mon, 20 Jan 2020 11:26:30 +0000 (12:26 +0100)]
Migrate to use MD-SAL's uint24 type

MDSAL is providing the type and related utilities, make sure we
pick them up.

Change-Id: I6305b6003502a3cae7a09e1a88de04f6d9fb45ee
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate deprecated assertThat() 50/87050/1
Robert Varga [Mon, 20 Jan 2020 11:21:27 +0000 (12:21 +0100)]
Migrate deprecated assertThat()

This utility is on its way to Hamcrest, migrate it.

Change-Id: Ie1f6fd928096aad59790d5fb53ac71da620def79
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBump to odlparent-6.0.4/yangtools-4.0.6/mdsal-5.0.9 98/86998/2
Robert Varga [Thu, 16 Jan 2020 21:10:51 +0000 (22:10 +0100)]
Bump to odlparent-6.0.4/yangtools-4.0.6/mdsal-5.0.9

Pick up latest fixes and upgrades.

Change-Id: I03d3d421755f9ed4e01618379f856a4cf3af80bb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce PathKey serialization duplication 59/86759/1
Robert Varga [Mon, 6 Jan 2020 18:45:13 +0000 (19:45 +0100)]
Reduce PathKey serialization duplication

PathKeyUtils.serializePathKey() can take PathKeySubobject, which
makes it readily reusable in RROPathKey128SubobjectParser, reducing
amount of duplication we have.

Change-Id: I23f5c58842c2a1ef073ef3f90b6224247a7a195f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMove ipv4/ipv6 ByteBuf utilities to Ipv{4,6}Util 46/86746/4
Robert Varga [Mon, 6 Jan 2020 15:43:16 +0000 (16:43 +0100)]
Move ipv4/ipv6 ByteBuf utilities to Ipv{4,6}Util

There is little point in criss-crossing between util classes
and ByteBufWriteUtil -- move the methods so they are hosted
in their appropriate classes.

Change-Id: Ifa3326c03372b86843ce45b5c72782142e10d9a5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove use of UnsignedBytes.toInt() 45/86745/3
Robert Varga [Mon, 6 Jan 2020 15:33:11 +0000 (16:33 +0100)]
Remove use of UnsignedBytes.toInt()

As per javadoc, Java 8 users should be using Byte.toUnsignedInt(),
do precisely that -- except where we are getting input from Netty,
where we use readUnsignedByte() instead.

Change-Id: I519b0bad54101d73127b72b2ae67a4f046cac2a6
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMove ByteBufWriteUtil.IPV{4,6}_PREFIX_BYTE_LENGTH} 44/86744/2
Robert Varga [Mon, 6 Jan 2020 15:23:36 +0000 (16:23 +0100)]
Move ByteBufWriteUtil.IPV{4,6}_PREFIX_BYTE_LENGTH}

These constants are not used outside of the package, hide them and
move them to their respective Ipv{4,6}Util classes.

Change-Id: Ida261113709c35a95615b9f49dde5d2731f38ed0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate ByteBufWriteUtil.writeMedium() 43/86743/2
Robert Varga [Mon, 6 Jan 2020 15:06:43 +0000 (16:06 +0100)]
Eliminate ByteBufWriteUtil.writeMedium()

There are only two users of this method, both operating on primitive
type. Switch them to use ByteBuf.writeMedium() and eliminate the
now-unused method.

Change-Id: I22676f9a2e03f2f5603f46d59fb301b59fc34b29
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove ByteBufWriteUtil.writeInt() 42/86742/2
Robert Varga [Mon, 6 Jan 2020 15:01:15 +0000 (16:01 +0100)]
Remove ByteBufWriteUtil.writeInt()

This method has only one user, which is using primitive int. Migrate
the user to ByteBuf.writeInt() and remove the now-unused method.

Change-Id: I9981e7f54d306ce18f2b8b693998b26e6a464f54
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoPurge unused ByteBufWriteUtil methods 41/86741/2
Robert Varga [Mon, 6 Jan 2020 14:57:49 +0000 (15:57 +0100)]
Purge unused ByteBufWriteUtil methods

Most of these methods have an appropriate replacement in either
ByteBufUtils or ByteBuf, or are completely unused. Remove them
along with their tests.

Change-Id: I95e2e8bff6fbfd60471d93470e465ba07ce5ddca
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate pcep-ietf-stateful07 to use ByteBufUtils 40/86740/4
Robert Varga [Mon, 6 Jan 2020 14:26:06 +0000 (15:26 +0100)]
Migrate pcep-ietf-stateful07 to use ByteBufUtils

Most of the parser interactions can be reformulated in terms
of ByteBufUtils, do that.

Change-Id: I7576c9de5649509172c91c6904478fe4be0cf154
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate pcep-base-parser to use ByteBufUtils 31/86731/5
Robert Varga [Sun, 5 Jan 2020 22:50:53 +0000 (23:50 +0100)]
Migrate pcep-base-parser to use ByteBufUtils

Most of the parser interactions can be reformulated in terms
of ByteBufUtils, do that.

Change-Id: I73b97e2d4ff5210c45d7b938a09a57110e8f43cb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSpecialize Util.writeShortest() for Uint{16,32} 07/86707/5
Robert Varga [Sun, 5 Jan 2020 09:45:04 +0000 (10:45 +0100)]
Specialize Util.writeShortest() for Uint{16,32}

This adds type safety to the picture, so that we end up doing
minimal correct checks on the value supplied. It also allows us
to ditch superfluous use of ByteBufWriteUtils.

Change-Id: Iddf77acd16115ba6b342279f18e6bd1b5411de1c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSwitch common parsers to utils 30/86730/1
Robert Varga [Sun, 5 Jan 2020 21:09:40 +0000 (22:09 +0100)]
Switch common parsers to utils

Using subclassing is not that useful, as we want to reserve that
for actually providing baseline behavior. Switch to composition
by making utility methods properly static.

Change-Id: Iec2c26a3642347fac21a3cbd4b382e453e337651
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use oif ByteBufWriteUtil in pcep-segment-routing 20/86720/1
Robert Varga [Sun, 5 Jan 2020 14:20:25 +0000 (15:20 +0100)]
Reduce use oif ByteBufWriteUtil in pcep-segment-routing

ByteBufUtils or ByteBuf methods provide most of what we need, use
upstreams to reduce use of our home-grown utilities.

Change-Id: If166a719f0ad67009c434d97e1347d75369257ad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReduce use of ByteBugWriteUtil in BMP 19/86719/1
Robert Varga [Sun, 5 Jan 2020 14:14:12 +0000 (15:14 +0100)]
Reduce use of ByteBugWriteUtil in BMP

Use either direct ByteBuf interaction or ByteBufUtils methods to
provide better speed & simplicity.

Change-Id: Iff91ab0286c06668dd551adcabaaf2046b8467f4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil in pcep-spi 15/86715/2
Robert Varga [Sun, 5 Jan 2020 12:15:23 +0000 (13:15 +0100)]
Eliminate use of ByteBufWriteUtil in pcep-spi

ByteBufUtils are much better suited to the task at hand, make sure
we use them.

Change-Id: I53b033af2e178c12eaaac45569ae92ea5b2c09d5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in rsvp-impl 14/86714/2
Robert Varga [Sun, 5 Jan 2020 12:09:17 +0000 (13:09 +0100)]
Minimize use of ByteBufWriteUtil in rsvp-impl

ByteBufUtils are up to most of the tasks, make sure we use them
instead of our home-grown utilities.

Change-Id: I34bcc5410774b2c00749a62249d9e4595a13be16
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil in rsvp-spi 13/86713/2
Robert Varga [Sun, 5 Jan 2020 11:31:20 +0000 (12:31 +0100)]
Eliminate use of ByteBufWriteUtil in rsvp-spi

Logic in rsvp-spi can easily use ByteBufUtils or direct ByteBuf
methods, remove unneeded use of ByteBufWriteUtil.

Change-Id: Ic12ac3939d4077b18e6d9e29396e8381dd77335c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in bgp-parser-impl 12/86712/2
Robert Varga [Sun, 5 Jan 2020 11:20:24 +0000 (12:20 +0100)]
Minimize use of ByteBufWriteUtil in bgp-parser-impl

We can either use direct ByteBuf methods or employ ByteBufUtils
more efficiently.

Change-Id: I5c2c095c12a81007ca581bdd7c6fa493c995c3ca
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize use of ByteBufWriteUtil in bgp-parser-spi 11/86711/2
Robert Varga [Sun, 5 Jan 2020 11:12:11 +0000 (12:12 +0100)]
Minimize use of ByteBufWriteUtil in bgp-parser-spi

Most of the call sites are easily reformulated in terms of either
raw ByteBuf access or ByteBufUtils.

Change-Id: Ie500b13578ed9be0b94f48d335889e2121d8e034
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate use of ByteBufWriteUtil from route-target 10/86710/2
Robert Varga [Sun, 5 Jan 2020 11:02:37 +0000 (12:02 +0100)]
Eliminate use of ByteBufWriteUtil from route-target

There is a single caller, which can trivially be updated to use
ByteBufUtils with improved efficiency.

Change-Id: I7f636cfc1d7ecb6922bd5e29026d4137783baeba
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>