150 Commits
Author SHA1 Message Date
Marcus Wichelmann 3c437e5aec Added ListDynamicNeighbor message to API 2021-03-29 20:53:53 +02:00
Marcus Wichelmann 76f40ede0d Added DeleteDynamicNeighbor message to API 2021-03-29 20:53:45 +02:00
Marcus Wichelmann c1e7463e36 Added ListPeerGroup message to API 2021-03-29 20:53:25 +02:00
bbassingthwaite dfc8ec6437 Add support for the gRPC server to listen on a unix domain socket
Fixes #2230
2021-03-16 08:44:34 -06:00
Faicker MoandFUJITA Tomonori cd5671baee policy: add nexthop unchanged
Support config set-next-hop = "unchanged" and also cli command.

Signed-off-by: Faicker Mo <[email protected]>
2021-03-03 09:47:50 +09:00
FUJITA Tomonori 65d094d7f2 server: fix AdministrativeCommunication message parser
Signed-off-by: FUJITA Tomonori <[email protected]>
2021-02-24 08:27:44 +09:00
Milan LencoandFUJITA Tomonori 3339f97722 feat: add option to bind listener to a (VRF) device
Signed-off-by: Milan Lenco <[email protected]>
2021-02-13 18:54:31 +09:00
Serguei BezverkhiandFUJITA Tomonori 0422c608b3 Code changes
Signed-off-by: Serguei Bezverkhi <[email protected]>
2020-11-30 07:21:40 +09:00
Duan JiongandFUJITA Tomonori aa1272dc36 set shutdownWG to nil after stopBGP finished
otherwise gobgp will panic in handlefsmMsg when handle error condition

Signed-off-by: Duan Jiong <[email protected]>
2020-11-29 15:25:36 +09:00
FUJITA Tomonori 3df131c6ba server: fix conversion from api.RouteAction to config.DefaultPolicyType
Signed-off-by: FUJITA Tomonori <[email protected]>
2020-11-09 23:10:34 +09:00
FUJITA Tomonori c297c0b222 server: handle bogus addpath argument
Signed-off-by: FUJITA Tomonori <[email protected]>
2020-11-09 12:35:07 +09:00
Steve ShawandFUJITA Tomonori 393d82f955 Adding gRPC support for modified logging level
Signed-off-by: Steve Shaw <[email protected]>
2020-11-06 21:15:10 +09:00
Alistair KingandFUJITA Tomonori 01aa3f287b Fix missing args in server tests 2020-11-06 21:08:55 +09:00
Alistair KingandFUJITA Tomonori 5c979fea68 Use MonitorTableRequest.Name to filter by peer
Filter returned Paths based on provided peer address (similar to
GetTable). This should improve performance when using MonitorTable
with ADJ_IN and Current for a single peer.
2020-11-06 21:08:55 +09:00
FUJITA Tomonori 3d3d6f3438 api: add ListPathRequest's option to get binary of nlri and attributes
put the binary of nlri and path attribute to the response.

Signed-off-by: FUJITA Tomonori <[email protected]>
2020-10-21 21:09:12 +09:00
Jordan WhitedandFUJITA Tomonori e6eb1da279 fix stuck route 2020-10-21 20:59:11 +09:00
FUJITA Tomonori 22d745fcf5 server: fix ListPolicyAssignment to handle empty policy
fix ListPolicyAssignment() return an assignment response even if the
response doesn't have any policy. The assignment has default action
policy so it's useful without any policy.

Signed-off-by: FUJITA Tomonori <[email protected]>
2020-10-20 15:36:19 +09:00
Chris Balmain f15ecf8b48 remove incomingCh when deleting dynamic peer 2020-09-16 10:29:01 +10:00
FUJITA Tomonori 2dbb18f93f server: don't send empty ExtendedNexthop capability
Signed-off-by: FUJITA Tomonori <[email protected]>
2020-07-04 22:05:23 +09:00
Serguei BezverkhiandFUJITA Tomonori 833188f526 extend attributes proto for Prefix SID support
Signed-off-by: Serguei Bezverkhi <[email protected]>
2020-05-13 12:58:51 +09:00
Hitoshi Irino cf572bc5fc Refactoring Zebra and supporting frr7.3
- Change const values to camel case from snake case to make zero golint's warnigns
- Introduce convert functions (toEach, toCommon) between the newest version to older versions
- Merge code about decode nexthop to reduce lines of code
- Add frr7.3 statemet in allowable software for config
- Rename and Update generated file by stringer
2020-04-26 07:43:50 +09:00
Sergey ElantsevandFUJITA Tomonori 136c8222c4 fixed style: unnecessary type cast after type switch and some minor issues. 2020-03-11 06:21:16 +09:00
Pavel VorontsovandFUJITA Tomonori 789664e8c3 add support GetTable method for vrfs #2235 2020-02-19 13:35:10 +09:00
Toshiki TsuchiyaandFUJITA Tomonori 543f50ded9 gobgpd: use map for validation table
`Table.destinations` is a map, so the order changes.
This commit allows to get validate information from path by using map for validate table

Fix: https://github.com/osrg/gobgp/issues/2223

Signed-off-by: Toshiki Tsuchiya <[email protected]>
2020-01-05 20:56:43 +09:00
Faicker MoandFUJITA Tomonori cd4fee4880 bgp: fix dynamic neighbors with prefix "0.0.0.0/0"
support prefix "0.0.0.0/0".

Signed-off-by: Faicker Mo <[email protected]>
2019-11-01 20:42:56 +09:00
FUJITA Tomonori 2e05695f68 avoid installing routes with originator ID to global when softresetin
Signed-off-by: FUJITA Tomonori <[email protected]>
2019-10-26 07:02:54 +09:00
Carl BaldwinandFUJITA Tomonori 98a539a2e9 Split Reset into three methods
The Reset method was difficult to understand. The reason is that it
was called in three different ways and did different things in each
case. It is easier to read when the three different modes are each
their own method.

This came up as I was looking deeper into the threading model around
policies. I think this change makes it easier to understand the code.
2019-10-23 10:51:38 +09:00
FUJITA Tomonori 5c5deac888 table: use net.IPNet for roa instead of homegrown IPPrefix structure
Signed-off-by: FUJITA Tomonori <[email protected]>
2019-10-22 21:58:59 +09:00
FUJITA Tomonori a1a523a1b3 move roa table code to table/ from server/
As the name implies, table/ is more appropriate for roa table code.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-10-22 21:17:05 +09:00
FUJITA Tomonori 853944f785 server: speed up session establishment
The unittest on pkg/server finishes quicker.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-10-21 16:10:40 +09:00
mageshgvandFUJITA Tomonori 29412028a7 Fix adj-out display with add path enabled 2019-10-18 07:28:10 +09:00
mageshgvandFUJITA Tomonori 0794811562 Transition to graceful restart state on hold timer expiry if applicable 2019-10-17 14:54:52 +09:00
mageshgvandFUJITA Tomonori 0235f7c675 Support vrfs in zapi multipath 2019-10-15 20:58:16 +09:00
Carl Baldwin ea87564b5b Remove policy from FSM
The `policy` member of fsm is apparently never used. Clean it up to
avoid confusion. Policy is still set on the server and peers.
2019-10-11 17:28:15 -06:00
mageshgv 0da37b0210 Maintain unique vrf IDs in watchEventBestPath vrf map
Fixes missing route propagation to proper vrfs in zapi
2019-10-04 18:19:05 -07:00
Magesh GVandFUJITA Tomonori 6f3cb40164 Update adjrib for LLGR and preserve aslooped attr
Fixes LLGR community cleared on softreset.
Fixes AS Path looped routes added back to rib on Graceful Restart.
2019-10-02 20:45:44 +09:00
Magesh GVandFUJITA Tomonori 22193807af Fix crash on nonexistent vrf delete 2019-10-01 08:28:26 +09:00
FUJITA Tomonori 21093fbc87 server: improve ListPath's performance
send large data rather than sending small repeatedly.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-09-17 06:31:23 +09:00
FUJITA Tomonori 25438b289c execute rpki validation for policy only when it's necessary
currently, validate is executed even if the result is not necessary.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-09-08 22:43:08 +09:00
FUJITA Tomonori 07e70de118 server: fix mrt injection race
Signed-off-by: FUJITA Tomonori <[email protected]>
2019-09-02 21:35:39 +09:00
FUJITA Tomonori 5856fe4429 table: kill GetPathListByPeer()
when a peer is down, use paths in its adj table instead of searching
for the global table.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-08-26 10:26:07 +09:00
FUJITA Tomonori d9fc69e50a server: add addpath api leak test
test uuid map leak with implict withdraw.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-08-06 22:05:09 +09:00
FUJITA Tomonori da536952b3 server: fix DeletePath() memory leak
DeletePath() doesn't delete the entry of the map for UUID.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-08-05 13:34:43 +09:00
Hitoshi Irino 7284d4cf8b Avoid panic by receiving vpnv6 prefixes with zebra reported in issue #2113
- Additionally bug fix which avoid panic caused by displaying vpnv6 prefixes using gobgp vrf rib
- Supporting FRRouting 7.1.x
2019-07-21 15:25:50 +09:00
Hitoshi IrinoandFUJITA Tomonori 2f5a4d59cb BGP connection on a speecified interface (including which is associated VRF) using syscall SO_BINDTODEVICE 2019-07-02 11:40:22 +09:00
Hitoshi Irino 7c2f0967af fix MPLS L3VPN functionality of zapi 2019-06-17 22:25:04 +09:00
Michael Lechner c5c10006c0 Support ipv4-flowspec for VRF enslaved neighbor 2019-06-08 20:33:48 -04:00
Hitoshi Irino c3a6d636df fix bug pointed out by issue #2089 2019-06-02 16:14:19 +09:00
FUJITA Tomonori 11c1ce77f9 server: replace github.com/satori/go.uuid
satori/go.uuid broke the API without the major version updated. We
could work around this with the module feature but looks like there is
a better option, google/uuid, so let's replace it.

Signed-off-by: FUJITA Tomonori <[email protected]>
2019-05-08 08:52:31 +09:00
Hitoshi IrinoandFUJITA Tomonori 7d2823d4c0 zebra: supporting FRRouting version 7
- the "version" parameter (which means ZAPI) 6 in zebra config changes supporting FRRouting version 7 instead of FRRouting version 6.
 - the "software-name" parameter which supports backward compatibility is added in zebra config.
   (GoBGP support FRRouting version 6 when "version = 6" and "software-name = frr6" is configured.)
2019-05-08 08:48:26 +09:00