summaryrefslogtreecommitdiffhomepage
path: root/pkg
AgeCommit message (Collapse)Author
2019-10-23Split Reset into three methodsCarl Baldwin
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-22table: use net.IPNet for roa instead of homegrown IPPrefix structureFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-10-22move roa table code to table/ from server/FUJITA Tomonori
As the name implies, table/ is more appropriate for roa table code. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-10-21server: speed up session establishmentFUJITA Tomonori
The unittest on pkg/server finishes quicker. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-10-18Fix adj-out display with add path enabledmageshgv
2019-10-17Transition to graceful restart state on hold timer expiry if applicablemageshgv
2019-10-15Support vrfs in zapi multipathmageshgv
2019-10-11Remove policy from FSMCarl Baldwin
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-04Maintain unique vrf IDs in watchEventBestPath vrf mapmageshgv
Fixes missing route propagation to proper vrfs in zapi
2019-10-02Update adjrib for LLGR and preserve aslooped attrMagesh GV
Fixes LLGR community cleared on softreset. Fixes AS Path looped routes added back to rib on Graceful Restart.
2019-10-01Fix crash on nonexistent vrf deleteMagesh GV
2019-09-17server: improve ListPath's performanceFUJITA Tomonori
send large data rather than sending small repeatedly. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-09-08execute rpki validation for policy only when it's necessaryFUJITA Tomonori
currently, validate is executed even if the result is not necessary. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-09-02server: fix mrt injection raceFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-08-28Document config API and provide examplesCarl Baldwin
2019-08-28Pass context through configuration codeCarl Baldwin
2019-08-28Move ReadConfigFileOnSighup to gobgpd mainCarl Baldwin
Reloading the config file on SIGHUP is behavior specific to gobgpd. Attempts to expose it through the config API was awkward and could make the api more confusing to use. This change moves that functionality up into the gobgpd main and out of the library.
2019-08-28Remove last remants of internal_cfgCarl Baldwin
2019-08-28Switch away from channel for one-off dry runCarl Baldwin
2019-08-28Move code to new public config packageCarl Baldwin
2019-08-26table: kill GetPathListByPeer()FUJITA Tomonori
when a peer is down, use paths in its adj table instead of searching for the global table. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-08-06server: add addpath api leak testFUJITA Tomonori
test uuid map leak with implict withdraw. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-08-05server: fix DeletePath() memory leakFUJITA Tomonori
DeletePath() doesn't delete the entry of the map for UUID. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-07-26pkg/packet/bgp: fix PathAttributeAs4Path to accept empty AS_PATHFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-07-21Avoid panic by receiving vpnv6 prefixes with zebra reported in issue #2113Hitoshi Irino
- Additionally bug fix which avoid panic caused by displaying vpnv6 prefixes using gobgp vrf rib - Supporting FRRouting 7.1.x
2019-07-02BGP connection on a speecified interface (including which is associated VRF) ↵Hitoshi Irino
using syscall SO_BINDTODEVICE
2019-06-17fix MPLS L3VPN functionality of zapiHitoshi Irino
2019-06-08Support ipv4-flowspec for VRF enslaved neighborMichael Lechner
2019-06-02fix bug pointed out by issue #2089Hitoshi Irino
2019-05-08server: replace github.com/satori/go.uuidFUJITA Tomonori
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 <fujita.tomonori@gmail.com>
2019-05-08zebra: supporting FRRouting version 7Hitoshi Irino
- 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-04-16server: make ListPath API show filtered pathsFUJITA Tomonori
This adds the feature to show filtered paths by policies to ListPath API. with EnableFiltered in ListPathRequest enabled: - ListPath for adj-in sets filtered on paths filtered by policys - ListPath for adj-out includes paths filtered by policys with filtered set. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-04-11cmd/gobgp: Parse evpn IPMSI parameterJieJhih Jhang
2019-04-09fsm: not reject open message with restart flag unset from gr peerwanghonghao
2019-04-02server: fix path validatoin result regressionFUJITA Tomonori
Somehow the state isn't updated. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-04-02add secondary-route feature for router serverFUJITA Tomonori
if an export policy rejects a selected route, try the next route in order until one that is accepted is found or all routes for the peer are rejected. the default is disabled. You can enable this feature in the following way: [neighbors.route-server.config] route-server-client = true secondary-route = true Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-04-01server: fix passive-modeFUJITA Tomonori
passive mode configuration is just ignored. Fixed it to work. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-29server: fix ListPath handle UseMultiPath optionFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-26Implement evpn I-PMSIJieJhih Jhang
2019-03-26fix same issues in other filesJieJhih Jhang
2019-03-26server: handle grpc listen failure as fatal errorFUJITA Tomonori
Fixed the bug to ignore grpc listen failure. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-25support BMP sysName and sysDescr configurationJieJhih Jhang
2019-03-24server: broadcast BMPPeerDownMessage for peer deletionFUJITA Tomonori
Sends peerdown message when a peer is de-condigured and down. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-24fix race of peer deletionFUJITA Tomonori
Fixed a race bug that causes the unittest failure. Also fixed StopBgp() to block until all the peers are deleted cleanly. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-21pkg/packet/bgp: avoid crash when receiving an update with invalid AS_PATH lenEiichiro Watanabe
2019-03-21pkg/packt/bgp: add test when receiving an update with invalid AS_PATH LengthEiichiro Watanabe
2019-03-17Deleteing goroutine for assignMplsLabel and moveing code relating MPLS L3VPN ↵Hitoshi Irino
(introduced from PR osrg#1992, commit 3a79ad3) from table_manager.go to zclient.go
2019-03-16Fixed typoszabio3
2019-03-14pkg/server: fix global rib summary commandFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-03-14Refactoring source code for BGP/MPLS L3VPN with ZAPI 6Hitoshi Irino
- Deleting receiveVrfId (which is introduced on 2 previous commit 90eeb5de870b95345650e3ee98741e040a0b6e93) from Path struct and Introducing pathVrf Map in zclient. - Recovering logic (which is changed on 1 previous commit acfd5bedb6d94775392200db597a5ac420b31b2e) to use assignMplsLabel in server.go. - Refectoring zclient's newIPRouteBody for deleating duplicate logic for IPv4 and IPv6.