netvirt.git
6 years agoConvert to JobCoordinator in policyservice-impl 24/64324/2
Tom Pantelis [Tue, 17 Oct 2017 01:02:50 +0000 (21:02 -0400)]
Convert to JobCoordinator in policyservice-impl

DataStoreJobCoordinator is deprecated so convert to use JobCoordinator.

Change-Id: I4e12d77e8626a7638c3cd4ada700061ee5ae81ae
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert to JobCoordinator in fibmanager-impl 23/64323/2
Tom Pantelis [Tue, 17 Oct 2017 00:53:12 +0000 (20:53 -0400)]
Convert to JobCoordinator in fibmanager-impl

DataStoreJobCoordinator is deprecated so convert to use JobCoordinator.

Change-Id: I17094b2da363bd4a96cca06d5c53cc45da001642
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoRemove deploy-site.xml 03/64903/2
Thanh Ha [Mon, 30 Oct 2017 21:14:37 +0000 (17:14 -0400)]
Remove deploy-site.xml

With the javadoc jobs now available to generate javadoc it is time to
remove the maven-sites and related files.

Change-Id: If19cda9d89fd6ad5c0cb1351885c59d501ffe6aa
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
6 years agoFix ElanServiceTest by adding ElanServiceTest 15/64915/1
Michael Vorburger [Mon, 30 Oct 2017 23:34:53 +0000 (00:34 +0100)]
Fix ElanServiceTest by adding ElanServiceTest

ElanServiceTest broke on master following
I75a0edccef1b47ecf1c246c9e51e7717916f1da2 ... :-(

Change-Id: Ib63cf571901e23e9d3dc897781c779866c5f052c
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRevert "INFRAUTILS-18: @Ignore AclServiceStatefulTest until JobCoordinator fixed" 27/64827/1
Michael Vorburger [Fri, 27 Oct 2017 20:29:38 +0000 (22:29 +0200)]
Revert "INFRAUTILS-18: @Ignore AclServiceStatefulTest until JobCoordinator fixed"

This reverts commit fbde3eaa72bb40528df7bb482feef8103b812e9b,
because https://jira.opendaylight.org/browse/INFRAUTILS-18 is fixed.

Change-Id: I849d7c6abf5d53cf0d1cba5f8349318f6f45f0e8
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoRefactor/cleanup BgpConfigurationManager 79/64179/4
Tom Pantelis [Wed, 11 Oct 2017 20:37:35 +0000 (16:37 -0400)]
Refactor/cleanup BgpConfigurationManager

- converted static fields to instance fields
- changed all instance fields to private
- removed unused fields/variables/code
- fix warnings

Change-Id: Ic6629f39558ec5280718c42d56a6af9c6a194e46
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert dhcpservice to use mdsal EOS APIs 27/64127/8
Tom Pantelis [Tue, 10 Oct 2017 18:20:12 +0000 (14:20 -0400)]
Convert dhcpservice to use mdsal EOS APIs

The controller EOS APIs are deprecated.

Change-Id: I2670160dd459b4f3ff64aff2a877b2a6f0683988
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoINFRAUTILS-18: @Ignore AclServiceStatefulTest until JobCoordinator fixed 07/64807/2
Michael Vorburger [Fri, 27 Oct 2017 12:59:21 +0000 (14:59 +0200)]
INFRAUTILS-18: @Ignore AclServiceStatefulTest until JobCoordinator fixed

Change-Id: I6f53a51a26442572a001db2cc5f49c062f2de1a5
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoBug9245: Table=21 related exceptions fixes 81/64381/10
ehvkand [Tue, 17 Oct 2017 06:05:25 +0000 (11:35 +0530)]
Bug9245: Table=21 related exceptions fixes

https://jira.opendaylight.org/browse/NETVIRT-940

Change-Id: I66ae23bd3fd9ad1e2a80648672f8120ffd3beea3
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
6 years agoUse JobCoordinatorTestModule in aclservice component tests 00/60300/5
Michael Vorburger [Thu, 13 Jul 2017 17:51:58 +0000 (23:21 +0530)]
Use JobCoordinatorTestModule in aclservice component tests

This is required to be merged into netvirt at the same time as the
related change https://git.opendaylight.org/gerrit/#/c/60303/ goes into
genius; that one introduces the JobCoordinatorTestModule as part of
making genius' DJC delegate to infrautils' JC (and by doing so, breaks
the aclservice component tests).

Change-Id: I0f2c5258315f40f9db88806fe0a33619f0f7bb77
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoConvert aclservice-impl to use mdsal EOS APIs 60/64160/3
Tom Pantelis [Wed, 11 Oct 2017 13:08:20 +0000 (09:08 -0400)]
Convert aclservice-impl to use mdsal EOS APIs

The controller EOS APIs are deprecated.

Change-Id: I8471f5e1734d12ce88d05e1ff9ee120822e591eb
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert neutronvpn-imp to use mdsal EOS APIs 42/64142/6
Tom Pantelis [Wed, 11 Oct 2017 04:03:39 +0000 (00:03 -0400)]
Convert neutronvpn-imp to use mdsal EOS APIs

The controller EOS APIs are deprecated.

Change-Id: I9c4fba9147a72ab48ff7bc1bdb38a02a8c38515e
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert elanmanager-impl to use mdsal EOS APIs 41/64141/7
Tom Pantelis [Wed, 11 Oct 2017 02:17:53 +0000 (22:17 -0400)]
Convert elanmanager-impl to use mdsal EOS APIs

The controller EOS APIs are deprecated.

Change-Id: Ic0b4cbc2fc6b3e11958841d2704407f38edf7504
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert vpnmanager-impl to use mdsal EOS APIs 36/64136/7
Tom Pantelis [Tue, 10 Oct 2017 22:32:40 +0000 (18:32 -0400)]
Convert vpnmanager-impl to use mdsal EOS APIs

The controller EOS APIs are deprecated.

The ArpMonitoringHandler previously used the EntityOwnerUtils to
register its candidate which has the side effect of registering
a global EntityOwnershipListener that maintains local ownership
state for all entities in a static cache. It also stores change
events in a static (unsycnhronized) EVENTS_HISTORY list which grows
unbounded. It seems this is only used in one place to print the
history via a CLI command. Both these side effects are problematic
and I don't think need/should be propagated forward.

Change-Id: Ied8e3f061c798de9a0e8af97e13fc9dd7e5d51a6
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoNETVIRT-926 - Maxpath value should be between 1 to 64 in BGP multipath 48/64648/4
Gowri R [Tue, 24 Oct 2017 12:13:16 +0000 (17:43 +0530)]
NETVIRT-926 - Maxpath value should be between 1 to 64 in BGP multipath

Adding a check to ensure maxpath value for BGP multipath is in the range 1 to 64

Change-Id: I6797caca05efe35242ed6a44b73ca28827b5edfe
Signed-off-by: Gowri R <gowri.r@ericsson.com>
6 years agoBug 9234: CSS programmed wrongly with TOR mac 84/63884/9
eaksahu [Mon, 2 Oct 2017 20:24:40 +0000 (01:54 +0530)]
Bug 9234: CSS programmed wrongly with TOR mac

With these changes following improvement has been done.
1. All cache update are now happening inside DJC job .(DPNInterfaces
cache , ELan L2gwDevices , ELan Devices and Mac addresses)
2. Upon node Disconnect macs are not being withdrawn now from other
devices.
3. Upon node reconnect macs are scanned for stale entries and are
cleared .

LocalUcastMacListener has been added newly with the new childListener
class which listenes to parent node and processes child node if
required.
DPN cache , TOR cache and Mac cache were not synchronized properly
,leading to race conditions which is fixed in this.

Change-Id: I440e17750c86bc132b75222a91a06654126f9b75
Signed-off-by: eaksahu <a.k.sahu@ericsson.com>
6 years agoRefactor/cleanup BgpRouter 65/64165/2
Tom Pantelis [Wed, 11 Oct 2017 14:36:19 +0000 (10:36 -0400)]
Refactor/cleanup BgpRouter

- eliminated static instance
- converted static nature of fields to class fields
- removed unused fields

Change-Id: Ia7264795ccedb34125da8e35d756ddd3df18643b
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoUpdated to use bind-service update instead of bind and unbind in Acl VPN 24/64124/6
Shashidhar Raja [Tue, 10 Oct 2017 16:47:00 +0000 (22:17 +0530)]
Updated to use bind-service update instead of bind and unbind in Acl VPN
listener

This commit has a dependency on below genius commit:
https://git.opendaylight.org/gerrit/#/c/64123/

Depends-On: Ib05a8fcfac8e74fa5a925edd0db49b7254bbed6a
Change-Id: I3acfe6f7f3f3e98139eb2413774d559ba8c25f8d
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
6 years agoRefactor qosservice-mpl to remove statics 15/64215/5
Tom Pantelis [Thu, 12 Oct 2017 20:59:05 +0000 (16:59 -0400)]
Refactor qosservice-mpl to remove statics

Several of the classes contained static fields and methods which
generally isn't best practice. Most of it centered around QosNeutronUtils
where users of the class pass service instances, eg DataBroker,
INeutronVpnManager et al, into the static methods. Instead of
QosNeutronUtils being static, I changed it to a singleton with the
services injected. This simpplifies users as they no longer have to
inject the services merely to pass into QosNeutronUtils methods.

Change-Id: Ib3c5efc1224979cd9b800d82fca1b631af9cf403
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoConvert qosservice-impl to use mdsal EOS APIs 11/64211/4
Tom Pantelis [Thu, 12 Oct 2017 18:27:02 +0000 (14:27 -0400)]
Convert qosservice-impl to use mdsal EOS APIs

The controller EOS APIs are deprecated.

Change-Id: I5f10f11322e1533c540821726649c61acf48ae35
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoReplace deprecated Futures.addCallback by the newer version 44/64044/3
David Suarez [Sun, 8 Oct 2017 15:52:39 +0000 (17:52 +0200)]
Replace deprecated Futures.addCallback by the newer version

The method addCallback(ListenableFuture<V> future,
FutureCallback<? super V> callback) is deprecated and will be replaced
by a new its new version addCallback(ListenableFuture<V> future,
FutureCallback<? super V> callback, Executor executor) in April 2018.

Some other minor changes to pass the new version of checkstyle.

Change-Id: I3e288aad0aeee3e5f8cc9aeb777dd3d2cfb5c00a
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
6 years agoSpec: ACL support for protocols that are not supported by conntrack 46/62546/19
Somashekar Byrappa [Fri, 1 Sep 2017 13:28:35 +0000 (18:58 +0530)]
Spec: ACL support for protocols that are not supported by conntrack

This spec addresses following issues in ACL module:
(a) Enhance ACL to support protocols like OSPF, VRRP etc that are not
    supported by conntrack in stateful mode.
(b) Handle overlapping IP addresses while processing remote ACLs.
(c) Optimization for Remote ACL by reducing number of flows even for ports
    having multiple ACLs.

Change-Id: I8ee79a0769e24b351cabf88fb268b28389b43da3
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
6 years agoHandle usecase when ELAN is null, and ACL service BIND/ADD fails due to NPE 47/62747/10
kiranvasudeva [Wed, 6 Sep 2017 10:03:58 +0000 (15:33 +0530)]
Handle usecase when ELAN is null, and ACL service BIND/ADD fails due to NPE

(a) Added ElanInterface Listener for Acl service, if ElanInterface add event comes
    after ConfigInterface or InterfaceState event's, update ElanId into aclInterface,
    invoke Bind and add.
(b) Skip Bind/Add in AclInterfaceListener/AclInterfaceStateListener if Elan id is null
(c) Sync all aclInterface modifications.

Change-Id: I29969844262af9c4972d8eeaaaf8a760e91b16d9
Signed-off-by: kiranvasudeva <kirankumar.v@altencalsoftlabs.com>
6 years agoBUG 9221: Improve logical SFF handling 48/64448/2
Jaime Caamaño Ruiz [Wed, 27 Sep 2017 13:50:24 +0000 (15:50 +0200)]
BUG 9221: Improve logical SFF handling

Ensure that the logical SFF is there when configuring a chain through
sfc trasnlator in case it might have been previously removed. Remove
it only when the feature is disabled.

Handle multiple SF data plane locators on chain removal so that non
logical SFF is also cleaned up afterwards.

Change-Id: I4b37f0c0cfd6fe2a3bd0fb66af66aa25ce662012
Signed-off-by: Jaime Caamaño Ruiz <jaime.caamano.ruiz@ericsson.com>
6 years agoBUG 9220: don't use tun_gpe_np as match field 47/64447/1
Jaime Caamaño Ruiz [Mon, 9 Oct 2017 13:33:33 +0000 (15:33 +0200)]
BUG 9220: don't use tun_gpe_np as match field

tun_gpe_np is not supported as match field on nsh patch OVS 2.6. This
field was used to match nsh vxlan encapsulated packets on sfc classifier
pipeline. Even if tun_gpe_np could be used, it wouldn't help as
currently encapsulation is implemented as vxlan+eth+nsh as opposed to
vxlan+nsh.

Workaround is to check for eth+nsh and check for tun_dst=0 with higher
priority to discern non tunneled nsh packets against tunneled ones.

Change-Id: I5038f5d8e89bdada559a736c711478f1bf123453
Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com>
6 years agoBug-9222: OptimisticLockFailedException error messages 14/63614/4
Philippe Guibert [Wed, 27 Sep 2017 13:05:33 +0000 (14:05 +0100)]
Bug-9222: OptimisticLockFailedException error messages

This commit reduces the number of calls to future.add().
This is a change introduced in neutron portchangelistener, in review
60185.

Change-Id: Ieaf466a56232e9999bb92858dfbf8be89e431194
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
6 years agoBug 9181: Code changes for conflicting modifications exceptions of table=19 90/63490/20
HANAMANTAGOUD V Kandagal [Mon, 25 Sep 2017 12:30:58 +0000 (18:00 +0530)]
Bug 9181: Code changes for conflicting modifications exceptions of table=19

Table=19 conflicting modification exception is seen when Router Interface
VRF entry is being created and VM is being booted at the same time.
This creates a race condition where same flow identity for table=19 is
being written into inventory configDS.

Fix:
Synchronization is being done over VpnInstance to avoid two threads trying
to write the same flow at same time.

Change-Id: I38d6b12bcec4ade471c99571028265d868a1e3a2
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
Signed-off-by: HANAMANTAGOUD V Kandagal <hanamantagoud.v.kandagal@ericsson.com>
6 years agoBug 9246: Conflicting modification from ARP and Router-GW-Mac 62/64062/1
karthikeyan [Mon, 9 Oct 2017 12:42:33 +0000 (18:12 +0530)]
Bug 9246: Conflicting modification from ARP and Router-GW-Mac

Problem Statement:
==================
The following runtime exceptions was throwing from NAT module as part of
" Delete Vm Instances" in CSIT.

Exception 1:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=81}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=Arp:tbl_81:lport_11:tpa_10.10.10.3}]

Exception 2:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=19}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=fa:16:3e:ce:fd:00.100003.2644421268113
01.19}]

Solution:
==========
Whenever NAPT switch over happens DS odl-nat:napt-switches will get update
with newly elected NAPT switch ID for particular router. If there is an
update in DS CentralizedSwitchChangeListener will get triggered and
re-install the L3_GW_MAC_TABLE (19) and ARP_RESPONDER_TABLE (81) flows. As
part of doing this we were used single write transaction object for both
DELETE and ADD. This is the root cause of this throwing conflict
modification exceptions. Now we have created separate write transaction
object for ADD and DELETE.

Change-Id: I409442c07535504ba642475c17c5a787cbf2a261
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
6 years agoBug 8976 - Upstreaming fixes to master 89/63989/1
Philippe Guibert [Thu, 5 Oct 2017 14:06:20 +0000 (15:06 +0100)]
Bug 8976 - Upstreaming fixes to master

This patch contains fix for removing spaces on two log messages.

Change-Id: I7347933d50650a10ee9092655d8503d20a6c3ef6
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
6 years agoBug 8964 - Neutron test 44/63944/3
Aswin Suryanarayanan [Wed, 4 Oct 2017 14:30:41 +0000 (20:00 +0530)]
Bug 8964 - Neutron test
neutron.tests.tempest.scenario.test_floatingip.FloatingIpSameNetwork.test_east_west
fails

Set the in_port to zero in NAPT_PFIB table. This prevents the packet
drop in NAPT switch when the packet originating from tunnel is send back
to the same tunnel after DNAT to a Non Napt Switch.

The test[1](FloatingIpSameNetwork) verifies the traffic between a vm
with NFIP and vm with FIP with same internal n/w. The test now fails if
the NFIP vm and FIP vm happens to be in the same non NAPT switch.

[1]https://github.com/openstack/neutron/blob/master/neutron/tests/tempest/scenario/test_floatingip.py#L125

Change-Id: I42d98cc411ae21b8d32e44f4bc9217e22946cdc8
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoTest SNAT mostSignificantBit() 37/63937/3
Stephen Kitt [Wed, 4 Oct 2017 12:07:16 +0000 (14:07 +0200)]
Test SNAT mostSignificantBit()

Static analysis complains that the current implementation of
mostSignificantBit() overflows int; that’s actually not the case, but
we can rewrite it more efficiently using Integer.numberOfLeadingZeros
anyway (with a unit test to ensure that the behaviour doesn’t
change).

loadStart and loadEnd can be converted to static constants.

Change-Id: I7e9068edd9d6c98e7c1a3c830ad8d7098d01dc75
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoBug 9237 - NPE: InternalToExternalPortMapKey 36/63936/1
Sam Hague [Tue, 3 Oct 2017 18:43:36 +0000 (14:43 -0400)]
Bug 9237 - NPE: InternalToExternalPortMapKey

Change-Id: I40f0e07d11540480163cde2e15ec6e22583e4845
Signed-off-by: Sam Hague <shague@redhat.com>
(cherry picked from commit cf2b4bfbc1b5d18e9787fb9053ffdf1440f038fc)

6 years agoBug 9226: VPN Traffic fails after VM Migration 93/63793/4
Vivekanandan Narasimhan [Thu, 28 Sep 2017 17:39:36 +0000 (23:09 +0530)]
Bug 9226: VPN Traffic fails after VM Migration

Fixes the way we handle prefix-to-interface for VM Migration.

For more information please review the comment lines added in the
patch.

Change-Id: Ib6412f8ef53fcb3c460546332cdd44b2ec19a15d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
6 years agoBug 9180: Conflicting modification Exception from NAT Module 88/63488/6
karthikeyan [Mon, 25 Sep 2017 12:04:25 +0000 (17:34 +0530)]
Bug 9180: Conflicting modification Exception from NAT Module

Problem Description:
====================
The following runtime exceptions was throwing from NAT module as part of
"adding external router gateway set" in CSIT.

Exception 1:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=81}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=Arp:tbl_81:lport_11:tpa_10.10.10.3}]

Exception 2:
============
Conflicting modification for path
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:264442126811301}]
[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=19}]/flow/flow[{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=fa:16:3e:ce:fd:00.100003.2644421268113
01.19}]

Solution:
==========
When we do router gateway set for external network, below same flows are
getting installed from two different NAT module listeners which is
causing this runtime "Conflicting modification" exceptions.

1) L3_GW_MAC_TABLE (19) -> L3_FIB_TABLE (21) with external router GW MAC
and
External router vpn-id as match criteria.

2) ARP_RESPONDER_TABLE (81) -> EGRESS_LPORT_DISPATCHER_TABLE (220) with
external router GW MAC in ARP Responder flow.

handleRouterGwFlows() method is commented out in ExternalRoutersListener
add() method alone.
Since the same action is taken care by CentralizedSwitchChangeListener
which is listening on DS "odl-nat:napt-switches".

Change-Id: I2dece791d639b243689f24c112bf6250029de019
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
6 years agoBUG 7596 - Update to handle change in Neutron Network external attribute 07/63907/2
Vinh Nguyen [Sat, 5 Aug 2017 00:11:53 +0000 (17:11 -0700)]
BUG 7596 - Update to handle change in Neutron Network external attribute

Changes to handle update event when Neutron Network changes
from non-external to external and vice versa

Change-Id: I2c55272dc6e2b8473f2666b39e36b65c7e578cf0
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
6 years agoRemove unneeded mdsal and yangtools artifacts 79/63879/2
Sam Hague [Mon, 2 Oct 2017 16:58:49 +0000 (12:58 -0400)]
Remove unneeded mdsal and yangtools artifacts

Change-Id: Idc837885ce8e20cc0e69d79557e8151cd977c368
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBump netvirt to use yangtools 1.2.0 55/63755/2
Anil Belur [Thu, 28 Sep 2017 06:48:47 +0000 (16:48 +1000)]
Bump netvirt to use yangtools 1.2.0

Jira: releng-485
Change-Id: I923b439e82e22e5520b86531c8a826fdde0ff4f8
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
6 years agoRemove unneeded pom version values 74/63874/1
Sam Hague [Mon, 2 Oct 2017 15:21:31 +0000 (11:21 -0400)]
Remove unneeded pom version values

Change-Id: I3cce922c5bbb60220f977d5f6ceb26baffb5a698
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoUndo incorrect code changes made during merge conflict. 52/63752/3
eupakir [Thu, 28 Sep 2017 06:20:57 +0000 (11:50 +0530)]
Undo incorrect code changes made during merge conflict.

A part of the fix  pushed in by https://git.opendaylight.org/gerrit/#/c/59229
was removed unintentionally in
https://git.opendaylight.org/gerrit/#/c/57978 .
This has been rectified.

Change-Id: I19372961a30c18a454cd359138190e49d5ab7769
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
6 years agoBump odlparent 2.0.4 to 2.0.5 26/63626/2
Stephen Kitt [Wed, 27 Sep 2017 13:34:50 +0000 (15:34 +0200)]
Bump odlparent 2.0.4 to 2.0.5

Change-Id: I798c9b55f9d1c0b6b4e508a348118ca9f98cffe0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoBug 9066:Use Single Transaction for DNAT Flow Install and Remove 96/62396/9
karthikeyan [Tue, 29 Aug 2017 09:56:28 +0000 (15:26 +0530)]
Bug 9066:Use Single Transaction for DNAT Flow Install and Remove

Problem Description:
===================
Use one transaction for DNAT flow install and use another single
transaction for Removing the flows from DNAT switch.

As of now each DNAT (Floating-ip) flow installation, it used separate
transaction object for each flow installation.

Solution:
==========
Used single write transaction object for all DNAT(Floating-IP) flows installation on
the switch and used other
write transaction object for removing all DNAT flows on the switch.

Change-Id: Idf8f0c9ce36b20b14ede9a423c574ee21f36d02e
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
6 years agorm remaining it artifacts 39/63739/3
Sam Hague [Thu, 28 Sep 2017 02:07:37 +0000 (22:07 -0400)]
rm remaining it artifacts

Change-Id: I732df4c3105ff440b16ce1a6e7abda47c734ec86
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBug 9077: Fix of issue that the existing NW communication failure when new NW is... 83/63783/2
kaoru sueda [Tue, 12 Sep 2017 05:41:06 +0000 (14:41 +0900)]
Bug 9077: Fix of issue that the existing NW communication failure when new NW is created

Issue:
  The existing network communication failed after 1001 NWs were created,
  as some of its ovs flows were overwritten.

Cause of this issue:
  In NW creation, some ovs flows' ID were duplicated. The flow ID of the
  1001th network is duplicated with the flow ID of the 1st NW, resulting
  the flow of the 1st NW being deleted(overwritten).

Fix:
  Avoid duplication by appending flow name.

Change-Id: I657d35d52b3fe452097294e7b3517aacf75f2fac
Signed-off-by: kaoru sueda <k-sueda@zj.nes.jp.nec.com>
6 years agosync cleanup 38/63738/2
Sam Hague [Thu, 28 Sep 2017 01:57:43 +0000 (21:57 -0400)]
sync cleanup

Change-Id: Ib974e69a079dd851965a685f4612e57da0767d4b
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoLower log level for non errors 68/63768/2
Sam Hague [Thu, 28 Sep 2017 12:13:26 +0000 (08:13 -0400)]
Lower log level for non errors

Change-Id: Ifd2993d7dc4ad97281bcc889157d1ca43be671e2
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBug 9209: PNF learned on external networks to skip local FIB Processing 34/63534/4
Vivekanandan Narasimhan [Tue, 26 Sep 2017 17:41:27 +0000 (23:11 +0530)]
Bug 9209: PNF learned on external networks to skip local FIB Processing

PNFs learned on external network will not have any specific DPNID
tagged to them.  As a result, we need to skip local flow processing
for such entries.

The external subnet gateway ip is now learned via the PNF code.

Change-Id: I43f254b05949f0e13e5555f622cd7f9866d7856d
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
6 years agoRenamed acl-impl.rst to acl-reflection-on-existing-traffic.rst 62/63262/3
Somashekar Byrappa [Tue, 19 Sep 2017 06:59:16 +0000 (12:29 +0530)]
Renamed acl-impl.rst to acl-reflection-on-existing-traffic.rst

+ Updated index.rst file with the same name.

Change-Id: I002053111689c84ea515d047c6802d32dcf9504d
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
6 years agobug-9190: NullPointerException at getIsExternal 82/63582/2
Sam Hague [Tue, 26 Sep 2017 21:54:23 +0000 (17:54 -0400)]
bug-9190: NullPointerException at getIsExternal

Change-Id: I2e95c71594798431259f10631cef514ef410c199
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoLower log level for non errors 81/63581/2
Sam Hague [Tue, 26 Sep 2017 21:51:28 +0000 (17:51 -0400)]
Lower log level for non errors

Change-Id: I7108bb53268bf5d2513b44117d9755cf62c5aaac
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoRemove explicit default super-constructor calls 00/63600/2
David Suarez [Wed, 27 Sep 2017 08:31:23 +0000 (10:31 +0200)]
Remove explicit default super-constructor calls

The default constructor is called by default (hence its name), no need
to call it explicitly. Based on this commit [1].

[1] https://git.opendaylight.org/gerrit/#/c/63526/

Change-Id: Ia7a4ccf88c328aab9feade1252a06e2c94b660ac
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>
6 years agoBug9091 : Removing uncessary MD-SAL Read Operation in NAT 93/62693/9
cgowdru [Tue, 5 Sep 2017 11:24:40 +0000 (16:54 +0530)]
Bug9091 : Removing uncessary MD-SAL Read Operation in NAT

Description : It's been obseved many unnecessary MD-SAL read operations
where done in NAT module. Changes done to pass them as parameters to
calling methods instead reading the same data again which is already
retrieved earlier in it caller methods.

Change-Id: If5efc57a0342caa6acf73b3f17dba033cab77e7c
Signed-off-by: cgowdru <chetan.arakere@altencalsoftlabs.com>
6 years agoBug 8953 - IllegalArgumentException: vrfEntry is missing mandatory 82/63482/4
eupakir [Mon, 25 Sep 2017 10:02:06 +0000 (15:32 +0530)]
Bug 8953 - IllegalArgumentException: vrfEntry is missing mandatory
descendant origin

Change-Id: I0978d55f09d0e9b31aa2b74e5cfac68a757c29da
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
6 years agolower log levels for non-errors 11/63511/3
Sam Hague [Mon, 25 Sep 2017 22:06:18 +0000 (18:06 -0400)]
lower log levels for non-errors

Change-Id: I417085e3a9547b03ffe2c74285bf8af2746d461e
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoClearBgpCli reads from socket to send/receive from bgpd 03/63503/1
Siva Kumar Perumalla [Mon, 25 Sep 2017 23:41:32 +0000 (05:11 +0530)]
ClearBgpCli reads from socket to send/receive from bgpd
(some previous commit modifed to read from session parameters)

Change-Id: Id0f4e8294e239fee70d6b09d891d50c5c6a9237a
Signed-off-by: Siva Kumar Perumalla <sivakumar.perumalla@ericsson.com>
6 years agobgpmanager: change API of bgpmanager to add VRF IPv4 or IPv6 78/57978/119
Philippe Guibert [Mon, 29 May 2017 09:45:00 +0000 (10:45 +0100)]
bgpmanager: change API of bgpmanager to add VRF IPv4 or IPv6

This change adds a change in IBgpManager API, since it adds afi and safi
parameters to VRF creation and deletion. This information is propagated
to BGP so as to create and delete VPN context tables in function of the
AFI and SAFI settings.
Instead of passing a layerType value, an AddressFamily type is used.
AddressFamily is mapped to internal afi/safi values.
The values are appended or removed to the VRF objects of BGP Manager.
The VRF object is then written to the config DS.
Subsequently, the Quagga will be called upon the various changes in the VRF object.
If the object is added or updated, the Quagga will be called with the appropriate
afi/safi values. If the object is removed, all the afi/safi values are removed from
the Quagga. If the object is added, the afi/safi values are added to the quagga.

Change-Id: Ife754ce561f69dbb67fcdf74308b5153cbde53e6
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
6 years agoneutronvpn: create ipv4 or ipv6 context 77/57977/115
Philippe Guibert [Wed, 20 Sep 2017 10:03:50 +0000 (11:03 +0100)]
neutronvpn: create ipv4 or ipv6 context

Add ipv4Family and ipv6Family attributes to VPN instance. Add
IpVersionChoice class, which allows to set values for these attributes
in dependency of Ethertype of added/removed to VPN subnet.

Change-Id: If5ea1a0a29d31388d7898b9e6e53bdc4aecb1cbe
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
6 years agobgpmanager thrift upgrade to 0.9.3 18/63218/2
Siva Kumar Perumalla [Mon, 18 Sep 2017 12:34:32 +0000 (18:04 +0530)]
bgpmanager thrift upgrade to 0.9.3

Change-Id: I5154fc5b3522313b30d647b68ed37dfd9e02f9ca
Signed-off-by: Siva Kumar Perumalla <sivakumar.perumalla@ericsson.com>
6 years agoBug 8963 - Option to configure EVPN address family 89/62689/3
Yugandhar Reddy Kaku [Tue, 5 Sep 2017 12:27:04 +0000 (17:57 +0530)]
Bug 8963 - Option to configure EVPN address family

evpn can  be configured as neighbor from karaf CLI with command bgp-nbr
In the bgp-nbr command, for supported address families, vpnv4 is added as
it was missing.

Change-Id: I9d8854c9a7a05f1a48836f0ae88c7934b31a14be
Signed-off-by: Yugandhar Reddy Kaku <yugandhar.reddy.kaku@ericsson.com>
6 years agoBug 9196 - Maxpath value should be between 1 to 64 in BGP multipath 00/63400/2
Gowri R [Thu, 21 Sep 2017 11:50:39 +0000 (17:20 +0530)]
Bug 9196 - Maxpath value should be between 1 to 64 in BGP multipath

Adding a check to ensure maxpath value for BGP multipath is in the range 1
to 64

Change-Id: I03786726053672d04b8ef552cb16cc45a9c4a840
Signed-off-by: Gowri R <gowri.r@ericsson.com>
6 years agoBUG 8930 - delete Op VPN interface when deleting external network 92/63392/3
Vinh Nguyen [Thu, 10 Aug 2017 19:26:24 +0000 (12:26 -0700)]
BUG 8930 - delete Op VPN interface when deleting external network

Op VPNInterafce is removed in VrfEntryListener when the last
adjacency for the VPNInterface is removed.
The problem is VPN interface for external network doesn't
have any adjacency nor VrfEntry.
As a result, when the external Vpn interface is removed
the Op VpnInstance is not removed as it should.

Fix: Delete the Op VPN interface in VpnInterfaceManager
if the VPN interface to be deleted doesn't have any adjacency

Change-Id: Ice4b9fcb0103c6aff25053cc5b3db3b01311be06
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
6 years agoLower log levels for non error's 73/63373/5
Sam Hague [Wed, 20 Sep 2017 21:44:04 +0000 (17:44 -0400)]
Lower log levels for non error's

Change-Id: Ia60e0b8bc87182cc2e4ac6611b77b0f421947da9
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoelanmanager: clean up Futures collections 83/62983/5
Stephen Kitt [Mon, 11 Sep 2017 16:29:58 +0000 (18:29 +0200)]
elanmanager: clean up Futures collections

This patch replaces lists of Futures with singleton lists where
possible. It also removes instances of passing such lists around,
using return values instead.

This patch also cleans up the job classes generally: instance fields
are final where possible, unused fields and parameters are removed.

Change-Id: I8db42f96867b61e46eaf229f95d06c7f6b6249f0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoBug 9193 - In conntrack SNAT , flows are programmed twice on a router 61/63361/3
Aswin Suryanarayanan [Wed, 20 Sep 2017 18:00:32 +0000 (23:30 +0530)]
Bug 9193 - In conntrack SNAT , flows are programmed twice on a router
g/w set.

Check is added in RouterDpnChangeListener to check if the port added is
th pseudo router interface and prevent the notification.

Fixed an exception caused by not creating VNI pool.

Change-Id: I6f5fd8f6bd35c37346a2d7780eaf0d49b2fe92cb
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoIfMgr clean-up 77/63177/3
Stephen Kitt [Fri, 15 Sep 2017 15:29:05 +0000 (17:29 +0200)]
IfMgr clean-up

* Avoid calling overridable methods in the constructor.
* Initialise fields in the declaration.
* Remove unused parameters.
* Remove null checks after new, new never returns null.
* Remove unnecessary return statements.
* Remove end-of-method null assignments for local variables.
* Use Map methods to simplify processing.
* Fix a couple of invalid null-handling constructs.

Change-Id: I144268785df2b648daa487c1eb8c63877dd13325
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoRestrict NeutronvpnUtils.read 11/62711/7
Stephen Kitt [Tue, 5 Sep 2017 14:56:22 +0000 (16:56 +0200)]
Restrict NeutronvpnUtils.read

As a first step towards removing NeutronvpuUtils.read, replace all
external uses with SingleTransactionDataBroker.syncReadOptional and
adjust the exception handling accordingly (which also allows us to
clean up a number of disabled Checkstyle warnings).

Change-Id: Ibad4aa194657cdb8c56ccd993c9182dbf4225f02
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agobug-9190: NullPointerException at getIsExternal 42/63342/2
Sam Hague [Wed, 20 Sep 2017 15:29:16 +0000 (11:29 -0400)]
bug-9190: NullPointerException at getIsExternal

Change-Id: If79a282989206bafe8d6c90e1bc089d820d6f0d2
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBUG 8969 - Fix Exeption when clearing external router GW 91/63391/1
Vinh Nguyen [Mon, 14 Aug 2017 22:19:11 +0000 (15:19 -0700)]
BUG 8969 - Fix Exeption when clearing external router GW

When clearing the router GW, the flow entry for router GW
on the NAPT primary switch is also removed.
Exception occurs when we try to delete the router GW
but there is no NAPT primary switch.

Fix: check for existence of NAPT primary switch
before deleting the router GW flow on the switch.
Also downgrade ERROR to DEBUG log level when primary
NAPT switch can not be found since this could
happen when no internal network attaches to the router yet.

Change-Id: I7ebc0d60183954044aeb8a4e8f062b4d227f6c76
Signed-off-by: Vinh Nguyen <vinh.nguyen@hcl.com>
6 years agoBug 9105: close removeElanInterface transaction 23/63023/3
Stephen Kitt [Tue, 12 Sep 2017 08:54:22 +0000 (10:54 +0200)]
Bug 9105: close removeElanInterface transaction

Cancel the interface transaction if we return early from
removeElanInterface. Initialise the flow transaction after the early
return so we don’t need to handle it specially.

Change-Id: I317925cef806c792038299b74d73f18861e40bd8
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: ElanL2GatewayUtils 17/60817/8
Stephen Kitt [Thu, 27 Jul 2017 15:07:26 +0000 (17:07 +0200)]
ElanUtils clean-up: ElanL2GatewayUtils

This patch initialises ElanL2GatewayUtils using BluePrint. This
involves adding static variants to a small number of methods in order
to break the dependency cycle involving ElanInstanceManager,
ElanInterfaceManager, ElanUtils and ElanL2GatewayUtils.

Change-Id: Icf17e0fb7683b871b8246b148d905e51bad4e598
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: L2GatewayConnectionUtils 13/60813/8
Stephen Kitt [Thu, 27 Jul 2017 13:48:02 +0000 (15:48 +0200)]
ElanUtils clean-up: L2GatewayConnectionUtils

This turns L2GatewayConnectionUtils into a self-carrying bean, instead
of relying on ElanUtils to initialise it.

Change-Id: I2c5c8330e57a46048651a1f6b656fb34b099afe3
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: remove unnecessary references 05/60805/9
Stephen Kitt [Thu, 27 Jul 2017 08:29:38 +0000 (10:29 +0200)]
ElanUtils clean-up: remove unnecessary references

A number of classes reference ElanUtils instances even though they no
longer need them, or they call static methods via an instance. This
patch cleans them up.

Change-Id: I29bf1454e7a56ac474ef9198a48114b0b0447aea
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: ElanL2Gateway{Multicast,}Utils 33/60733/10
Stephen Kitt [Tue, 25 Jul 2017 08:09:47 +0000 (10:09 +0200)]
ElanUtils clean-up: ElanL2Gateway{Multicast,}Utils

Extract various utility methods to ElanDmacUtils, ElanEtreeUtils and
ElanItmUtils, so that ElanL2GatewayMulticastUtils’ dependency on
ElanL2GatewayUtils (which needs to be post-filled after
initialisation) can be removed.

Change-Id: Iec71e32ea61ff1789537bcb1e7e35fa3253f8363
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: more ElanL2GatewayMulticastUtils 90/60690/9
Stephen Kitt [Mon, 24 Jul 2017 13:05:53 +0000 (15:05 +0200)]
ElanUtils clean-up: more ElanL2GatewayMulticastUtils

Moving installDpnMacsInL2gwDevice from ElanL2GatewayUtils to
ElanInterfaceManager allows ElanL2GatewayUtils’ dependency on
ElanL2GatewayMulticastUtils to be removed.

Change-Id: I1af5c31f516f4dfe7121c16e797339b60a1d03ca
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: ElanL2GatewayMulticastUtils 89/60689/9
Stephen Kitt [Mon, 24 Jul 2017 12:40:56 +0000 (14:40 +0200)]
ElanUtils clean-up: ElanL2GatewayMulticastUtils

elanUtils.getInvolvedDpnsInElan is a very simple wrapper around
elanInstanceManager.getElanDPNByName, which isn’t even needed any more
since the latter never returns null. Using the latter directly in
ElanL2GatewayMulticastUtils means we no longer need ElanUtils there,
which simplifies initialisation (although not perfectly yet because of
the loop between ElanL2GatewayMulticastUtils and ElanL2GatewayUtils).

Change-Id: Ie4ef925d5e0c02e5476141430f844dc2b0a0647e
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoElanUtils clean-up: make read() static 88/60688/8
Stephen Kitt [Mon, 24 Jul 2017 11:36:16 +0000 (13:36 +0200)]
ElanUtils clean-up: make read() static

It turns out no callers use the variant of read() which relies on
ElanUtils’ own broker, so we can drop that and make read() static,
which reduces the requirement for ElanUtils instances.

Change-Id: I75841497b4247abb9f10c216956ba534bc5068ce
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoaclservice: clean up Futures collections 71/62971/2
Stephen Kitt [Mon, 11 Sep 2017 13:28:30 +0000 (15:28 +0200)]
aclservice: clean up Futures collections

This patch replaces lists of Futures with singleton lists where
possible.

Change-Id: I5d3445c488599f28b920a2296e0d2ab439761a43
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agodhcpservice: clean up Futures collections 74/62974/2
Stephen Kitt [Mon, 11 Sep 2017 14:06:46 +0000 (16:06 +0200)]
dhcpservice: clean up Futures collections

This patch replaces lists of Futures with singleton lists where
possible. It also removes instances of passing such lists around,
using return values instead.

This patch also cleans up the job classes generally: instance fields
are final where possible, unused fields and parameters are removed.

Change-Id: Idd1add34a0ac75aaf7ae0afc137904cebfb7e741
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agocoe: clean up Futures collections 72/62972/2
Stephen Kitt [Mon, 11 Sep 2017 13:31:51 +0000 (15:31 +0200)]
coe: clean up Futures collections

This patch replaces lists of Futures with singleton lists where
possible.

Change-Id: I7ab2b93f0e4d96c5192c0cc594ef0dcbb14a4407
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoRemove un-used SynchronousEachOperationNewWriteTransaction 49/63349/2
Michael Vorburger [Wed, 20 Sep 2017 16:16:00 +0000 (18:16 +0200)]
Remove un-used SynchronousEachOperationNewWriteTransaction

replaced by SingleTransactionDataBroker which is now widely adopted

Change-Id: I09c4f64941bdd4398cbda28d339449b43ba8e10a
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agocleanup sync 16/63316/1
Sam Hague [Tue, 19 Sep 2017 23:25:04 +0000 (19:25 -0400)]
cleanup sync

Change-Id: I7d84b026a297cc6f595c224ae3d9e7072607811b
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBug 8953: Fix exceptions raised due to PNF confused with FIP 38/63238/6
Vivekanandan Narasimhan [Mon, 18 Sep 2017 17:08:38 +0000 (22:38 +0530)]
Bug 8953: Fix exceptions raised due to PNF confused with FIP

Both FIP and discovered PNF IP VrfEntries
use an RD value of external-subnet-id and
thereby the below review resulted in FloatingIP (FIP)
processing being done for PNF incorrectly.
This situation happened vide review:
https://git.opendaylight.org/gerrit/#/c/62957/

In here we fix that confusion, by pushing a new
enumeration to clearly distinguish various type
of prefixes within the prefix-to-interface and use
the same in FibManager (VrfEntryListener) to unambiguously
handle processing for such prefixes (or VrfEntries).

Change-Id: I5143c603d96657e7db0db38a955a4a14f0413e0c
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
6 years agoBug 9026: ACL issue in handling port-create 52/62152/10
Somashekar Byrappa [Tue, 22 Aug 2017 08:10:27 +0000 (13:40 +0530)]
Bug 9026: ACL issue in handling port-create

Problem:
When a VM is booted by creating a port with commands [1] & [2], ACL
service is bound to the interface which shouldn't have happened as [2]
explicitly sets --port-security-enabled False.

+ During [1], ACL bind service is performed as flag
port-security-enabled=True by default.
+ During [2], ACL unbind service should be performed as flag
port-security-enabled=False is set explicitly. This was not happening.

Solution:
During port-update, ACL unbind service was called only during interface
up. Now this is changed to unbind ACL service irrespective of interface
state (up/down).

Also, handled cache update correctly during port-update.

Commands:
[1] neutron port-create net10 --no-security-groups
[2] neutron port-update <port id> --port-security-enabled False

Change-Id: I73d299fc61e02bee8aafe0370cdf0a4874533ee9
Signed-off-by: Somashekar Byrappa <somashekar.b@altencalsoftlabs.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBug 7380: service-binding exceptions from ACL 58/62458/20
Vivekanandan Narasimhan [Wed, 30 Aug 2017 16:56:32 +0000 (22:26 +0530)]
Bug 7380:  service-binding exceptions from ACL

Exceptions are thrown when ACL tries to bind/unbind
ports that it's not supposed to handle.

The fix ensures that AclInterfaceStateListener
does not create ACLInterfaces for interfaces
that donot have port-security-enabled.

This also addresses issue observed with a scenario where a neutron port
is created with SG
disabled and was later enabled.

Change-Id: I2b7d6468b36fdc43d4ac1a91c16563d8d675ca3f
Signed-off-by: Vivekanandan Narasimhan <n.vivekanandan@ericsson.com>
Signed-off-by: Sam Hague <shague@redhat.com>
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoRemove learn mode from aclserivce. 19/63219/2
Aswin Suryanarayanan [Mon, 18 Sep 2017 10:03:16 +0000 (15:33 +0530)]
Remove learn mode from aclserivce.

Change-Id: Ia85ed76bc753dd67d1ecc5efb9b9aa3a6690151c
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoRemove aggregator from artifactId 25/63225/2
Sam Hague [Mon, 18 Sep 2017 11:16:34 +0000 (07:16 -0400)]
Remove aggregator from artifactId

Change-Id: Iad35ffa4987ac0ef8d0bb1b5feedb75a3a70fdc3
Signed-off-by: Sam Hague <shague@redhat.com>
6 years agoBug 8953 - IllegalArgumentException: vrfEntry is missing mandatory 57/62957/8
eupakir [Mon, 11 Sep 2017 10:08:12 +0000 (15:38 +0530)]
Bug 8953 - IllegalArgumentException: vrfEntry is missing mandatory
descendant origin.

Change-Id: I8ac129ae16fdb259fc2c54f3230b67038b9a2530
Signed-off-by: eupakir <kiran.n.upadhyaya@ericsson.com>
6 years agoDualstack support for L3VPN - single router Dual stack 46/60246/75
Philippe Guibert [Tue, 11 Jul 2017 12:40:15 +0000 (13:40 +0100)]
Dualstack support for L3VPN - single router Dual stack

According to dualstack specification [0], this commit introduces changes
related to "one router solution" case.

* NeutronPortChangeListener: Create only one VPN interface instance
  for one neutron port. This instance can include a list of IPv4 and/or
  IPv6 subnetMaps, where addresses where allocated for spawned port.

* NeutronvpnManager: in createVpnInterface we no longer use routerId as
  argument, instead we will iterate over all port IP addresses to create
  according adjacencies objects and than, we pass composed adjacencies
  list to writeVpnInterfaceToDs method.

Change-Id: I5f527be0ebea8f1a74e9a790aa9c3fec6291bda7
Signed-off-by: Valentina Krasnobaeva <valentina.krasnobaeva@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Signed-off-by: Noel de Prandieres <prandieres@6wind.com>
6 years agoBug 8860 : Populate elantag at time of elanInstance creation 29/63129/6
Abhinav Gupta [Thu, 14 Sep 2017 09:51:42 +0000 (15:21 +0530)]
Bug 8860 : Populate elantag at time of elanInstance creation

This patch eliminates the delay in elantag being available for use by
SubnetRoute Engine.

Change-Id: I0c3e28758c49d5a600f1213b94172fb532c7a77c
Signed-off-by: Abhinav Gupta <abhinav.gupta@ericsson.com>
6 years agoRemove transparent mode from aclservice. 16/61316/5
Aswin Suryanarayanan [Tue, 8 Aug 2017 07:44:16 +0000 (13:14 +0530)]
Remove transparent mode from aclservice.

Depends on https://git.opendaylight.org/gerrit/#/c/60737/ , which adds
port_security disable tests.

Change-Id: Icf83af877cdf9965b24db38573453a6433d7eca6
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoBUG-8893 patch port mysteriously deleted 47/62347/15
Josh [Sun, 27 Aug 2017 10:55:09 +0000 (13:55 +0300)]
BUG-8893 patch port mysteriously deleted

This happens sporadically when br-int exists prior to ODL
managing the OVS node. If the event notifying ElanOvsdbNodeListener
of the existence of the br-int bridge happens BEFORE the event
notifying about the OVS node the following occurs:

1. Netvirt gets event for br-int
2. Writes patch ports
3. Netvirt gets event for the ovs node
4. Creates br-int...which already exists and this over-writes the
   patch ports

Fix:
a) clean up code so that br-int is configured with a controller
   and patch ports only once we receive the notification for br-int
   in operational.
b) when receiving a notification for the OVSDB node in operational,
   check if br-int is in operational. If it is not, create it in
   config.
c) when receiving a notification for br-int in operational, check if it
   is also in config. If it is not, copy br-int fields from operational
   to config. The proceed to step (a).

Change-Id: I11739ccc847e65c4179ff1f73493159bd4effcd2
Signed-off-by: Josh <jhershbe@redhat.com>
6 years agoSpec for Acl change reflection on existing communication 34/63134/2
vinothb [Thu, 20 Jul 2017 18:06:08 +0000 (14:06 -0400)]
Spec for Acl change reflection on existing communication

Change-Id: Id8b2e3c9bf321248a6e55f6830078b4fd6acde14
Signed-off-by: vinothb <vinothb@hcl.com>
6 years agoBug 8964 - Neutron test 99/62899/6
Aswin Suryanarayanan [Fri, 8 Sep 2017 11:52:00 +0000 (17:22 +0530)]
Bug 8964 - Neutron test
neutron.tests.tempest.scenario.test_floatingip.FloatingIpSameNetwork.test_east_west
fails

1)Added FIB(Table21) flow  in NON-NAPT switch to send the traffic  to
the SNAT IP to the NAPT switch over the tunnel.
2)Added Tunnel table(Table 36) in NAPT switch to send the to SNAT IP to
the Inbound SNAT(Table 44) table.

table=21, n_packets=49, n_bytes=4802,
priority=42,ip,metadata=0x30d42/0xfffffe,nw_dst=192.168.56.31
actions=set_field:0x186a1->tun_id,group:225001

table=36, n_packets=22, n_bytes=2156, priority=42,ip,tun_id=0x186a1
actions=load:0x30d42->OXM_OF_METADATA[0..23],resubmit(,44)

Change-Id: I829400a1479752dd9963ac8931ca662f4f51bed2
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
6 years agoFix exception handling in neutronvpn shell 13/63113/3
Michael Vorburger [Wed, 13 Sep 2017 17:56:57 +0000 (19:56 +0200)]
Fix exception handling in neutronvpn shell

see
https://wiki.opendaylight.org/view/BestPractices/Coding_Guidelines#IllegalCatch

motivated by/while reviewing
https://git.opendaylight.org/gerrit/#/c/62711/3/vpnservice/neutronvpn/neutronvpn-impl/src/main/java/org/opendaylight/netvirt/neutronvpn/NeutronvpnManager.java

Change-Id: I8ebc913e66d2fe33ffadf361214bb82263aec149
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
6 years agoBug7380:CSIT FIP ping is getting failed for Ext Flat/VLAN Network 92/62492/5
karthikeyan [Thu, 31 Aug 2017 12:50:21 +0000 (18:20 +0530)]
Bug7380:CSIT FIP ping is getting failed for Ext Flat/VLAN Network

Problem Description:
=======================
FIP Ping TC is getting failed for external FLAT/VLAN network on single
node setup.

For Single node setup VXLAN TEP is not at all required for external
network with provider type as FLAT/VLAN.
Current Implementation on FIP handling, it is
expected nextHop IP should not be null before programming FIP local flow
entry L3_FIB_TABLE (21) -> PDNAT_TABLE (25). This validation is not
required for external provider type as FLAT/VLAN networks.

Solution:
==========
NextHopIP validation is already existing in NatUtil.addPrefixToBGP()
method before FIP advertising to BGP. Hence removing unnecessary
validation from VpnFloatingIpHandler.
This will resolve FIP local flow entry L3_FIB_TABLE (21) -> PDNAT_TABLE
(25) installation on corresponding DPN for external FLAT/VLAN network on
Single Node setup (Without VXLAN TEP Configured)

Change-Id: I6653c78733e037310827ffbcd4498097b19a2abf
Signed-off-by: karthikeyan <karthikeyan.k@altencalsoftlabs.com>
6 years agoFix cloud-servicechain YANG 97/63097/1
Stephen Kitt [Wed, 13 Sep 2017 12:28:55 +0000 (14:28 +0200)]
Fix cloud-servicechain YANG

This corrects the YANG revision, which becomes 160711.

Change-Id: I32b619cc29d89c0d3adb06fc264c3f26c04d50c0
Signed-off-by: Stephen Kitt <skitt@redhat.com>
6 years agoFix elanservice tests after daexim change in genius idmanager 22/62922/5
Faseela K [Fri, 8 Sep 2017 17:59:36 +0000 (23:29 +0530)]
Fix elanservice tests after daexim change in genius idmanager

Change-Id: I97f97a7c926a34f9bb6764bf004e8854512f5788
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoRemove unused references to DataChangeListener 34/62434/2
Tom Pantelis [Wed, 30 Aug 2017 01:40:15 +0000 (21:40 -0400)]
Remove unused references to DataChangeListener

Change-Id: I78e8c32bd76536fd420d31b6e7b0bd2b026d7a49
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
6 years agoBug 9136 - Suspected ReadOnlyTransaction leak in QosNeutronUtils 47/62947/8
A Vamsikrishna [Mon, 11 Sep 2017 03:35:07 +0000 (09:05 +0530)]
Bug 9136 - Suspected ReadOnlyTransaction leak in QosNeutronUtils

Description:

Bug 9136 - Suspected ReadOnlyTransaction leak in QosNeutronUtils

Fix:

Fixed ReadOnlyTransaction leak by using try-with-resources statement for automatic resource management.

Change-Id: Ib4e03a425b840427d7133f40d5a72d4bf5f85605
Signed-off-by: A Vamsikrishna <a.vamsikrishna@ericsson.com>
6 years agoFix wrongly keyed network map in CoeUtils 31/63031/1
Faseela K [Tue, 12 Sep 2017 11:55:51 +0000 (17:25 +0530)]
Fix wrongly keyed network map in CoeUtils

Change-Id: I34c986d5b142c46b0da969e4bab36b401881a2cf
Signed-off-by: Faseela K <faseela.k@ericsson.com>
6 years agoRemove deprecated CheckedFuture 68/62868/3
David Suarez [Thu, 7 Sep 2017 19:40:03 +0000 (21:40 +0200)]
Remove deprecated CheckedFuture

Remove deprecated CheckedFuture.

Change-Id: I69b6378867f68e18d69a23c25e14780ad305370c
Signed-off-by: David Suarez <david.suarez.fuentes@gmail.com>