In ContrailVRouterApi, do a connect to the Agent only when the add port / delete port request comes from nova_contrail_vif.
For other requests, do not invoke connect. In case we do a connect and do not send complete vif list, Agent removes them
upon audit. Also, set port_type to NameSpacePort, if it isnt specified.

Closes-bug:#1402603

Change-Id: Ic377d88080ef204026541b3b179e445a05925d2c
(cherry picked from commit c9e0cbe0581be661c9ce6c3c4cdaefddc304b613)
Adding logic to retry connect after reconnect timer.

to avoid flood of packets and log messages for connect failures.

Change-Id: I8c864fcf1e67becddc38f1496a6cb876533b0b7c
Add new attributes at the end in the schema.

Change-Id: Ifc90677fa3417ec0522184fc91202f24fbbb33bf
Closes-Bug: 1403984
Fix concurrency issue in XmppMessageBuilder

Do not access BgpPath from bgp::SendTask because the path can get
deleted from db::DBTable task which could be running in parallel.
Store vrf_originated_ attribute in RibOutAttr instead of accessing
the best path to figure out if the route is local Vrf Originated.

Change-Id: I47e45efa28ca51d68f1233c77606a2c499b0678c
Closes-Bug: 1402785
Merge "Adding logic to retry connect after reconnect timer."
Merge "In ContrailVRouterApi, do a connect to the Agent only when the add port / delete port request comes from nova_contrail_vif. For other requests, do not invoke connect. In case we do a connect and do not send complete vif list, Agent removes them upon audit. Also, set port_type to NameSpacePort, if it isnt specified."
Support local preference and sequence for EVPN routes

These attributes are required to support live migration.
They are already supported for IPv4 and IPv6 routes, so
EVPN can just reuse the existing infrastructure.

Change-Id: I6c0623d61f936d29578ec4006440a1ac2b2d5b99
Partial-Bug: 1403602
Fix cpplint errors for bgp_export.[cc|h]

Change-Id: I8306f46780f18768a98981d46533377d02d78d62
Merge "Fix concurrency issue in XmppMessageBuilder"
Fix cpplint errors for community.[cc|h]

Change-Id: Ifb123019816e4912b99fdfc4526bc4efcb948815
Merge "Add new attributes at the end in the schema."
Fix cpplint errors for bgp_update.[cc|h]

Change-Id: I7759dbfddd3af99c236092bb62cb390fe9dc4fb3
Merge "Fix cpplint errors for bgp_export.[cc|h]"
Fix cpplint errors for bgp_config_listener.[cc|h]

Change-Id: Iaab6fea7abc67af511436f41a1c049a1518b6629
Merge "Fix cpplint errors for community.[cc|h]"
Merge "Support local preference and sequence for EVPN routes"
Merge "Fix cpplint errors for bgp_update.[cc|h]"
Problem: For IP address lookup hitting subnet route ARP request were being
flooded by leaking EVPN NH(non contrail ingress flood tree) to subnet route.
This path was programmed with peer as BGP. Along with this MX also used to
export route for same subnet with nexthop as tunnel to MX. Since both these
paths had same peer, only one of them was present at any time(one which comes
later overrides the previous one). This also resulted in withdrawal of path
irrespective of who does it.

Fix:
Instead of leaking EVPN NH from l2 route to subnet, mark route for flooding arp.
NH will get programmed to discard or MX tunnel or Resolve (in case of gateway).
In this way we will never have different paths with same peer.
Vrouter will see the flood flag and flood all arp and use NH for non-arp traffic
hitting the subnet route.
In case of gateway (i.e. resolve NH) as active path for subnet route will not
have this flag set. Also any subnet route not installed via IPAM will not have
this flag set (they are received from some peer and we have to honor that).
Closes-bug: 1400272

Change-Id: I10581fd580fe55ea31d2639945b9b57bdbd82455
-Send Prouter UVE from Agent
-Store PhysicalDevice pointer in PhysicalInterface
-Send prouters associated with Vrouter along with the type of prouter in Vrouter UVE
-Dont send router-id as 0.0.0.0 in vrouter UVE if router-id is not configured
-Add Unit tests

Closes Bug: #1401785

Change-Id: I54b6f86c997d136e80c2f383f33187c1825deefd
Merge "Fix cpplint errors for bgp_config_listener.[cc|h]"