summaryrefslogtreecommitdiffhomepage
path: root/pkg/server/server.go
AgeCommit message (Collapse)Author
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-02BGP connection on a speecified interface (including which is associated VRF) ↵Hitoshi Irino
using syscall SO_BINDTODEVICE
2019-06-08Support ipv4-flowspec for VRF enslaved neighborMichael Lechner
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-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-03-29server: fix ListPath handle UseMultiPath optionFUJITA Tomonori
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-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-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.
2019-03-14Fix bug using variable of zclient in AddVrf of server.go.Hitoshi Irino
2019-03-14Supporting BGP/MPLS L3VPNs with Frrouting Zebra API 6Hitoshi Irino
- This commit aims to solve reported problem on issues #1611, #1648 and #1912 - Partial changes of this commit duplicate with changes on PR #1587 (not merged) and PR #1766 (not merged and already closed) - This commit is tested with only FRRouting version 6.0.2 (which uses Zebra API 6) - This commit fixes lack of LABEL_MANAGER_CONNECT_ASYNC for ZAPI6. (This bug is introduced on commit 2bdb76f2dcf24b891f2b6327a57c31b26463b2dd "Supporting Zebra API version 6 which is used in FRRouting version 6")
2019-02-15reset eor state on graceful-restart peer downwanghonghao
2019-02-15[Fix #1972] Fix returning of double list size, half nil valuesThomas Rosenstein
2019-01-27server: fix ListPolicyAssignmet() with empty nameFUJITA Tomonori
if the name isn't specified, the assignment of the global and route server clients. Non route server client doesn't have the assignment. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-01-25server: dynamic neighbor deletion panicFUJITA Tomonori
https://github.com/osrg/gobgp/commit/318a91e31b8baed86bb66a3767525da68ae49a5d The above commit added a bug to close a closed channel; after deleting a dynamic neighbor, handleFSMMessage() must return. Otherwise cleanInfiniteChannel() is called twice. https://travis-ci.org/osrg/gobgp/jobs/483896487 Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2019-01-17Allow graceful restart for dynamic neighborsFoivos Filippopoulos
2019-01-09silence staticcheck warningsFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2018-12-29server: kill getNeighbor()FUJITA Tomonori
Use ListPeer() instead. Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2018-12-28fix bmp statisticsFUJITA Tomonori
fix the regression of the adj counter due to 301b48532d4a5510c9d4ffdc44eb2754fdd1a3d1 Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2018-12-23make the usage of type name in protobuf consistentFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2018-12-23make Add/Delete/ListPath APIs symmetricFUJITA Tomonori
- AddPath() with an api.Path object then DeletePath() works with the same api.Path object. - ListPath() returns an api.Path object then DeletePath() works with the same api.Path object. The above is guaranteed with and without PeerInfo (SourceAsn and SourceId). Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
2018-12-19server: use Dialer Control method instead of hack to modify connection ↵FUJITA Tomonori
before dialing Use the feature of go 1.11 to remove the hack. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-26support received, accepted, and advertised counters per familyFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-25api: move RouterId to PeerState from PeerConfFUJITA Tomonori
It's not configuration. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-17server: fix handleRouteRefresh and softResetOutFUJITA Tomonori
both assume that getBestFromLocal() returns filtered paths by policies but it doesn't. Paths filtered by policies are returned as withdraw paths. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-16server: fix handleRouteRefresh()FUJITA Tomonori
Can't modify a Path object in a table. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-16use google/protobuf/timestamp.protoFUJITA Tomonori
use google/protobuf/timestamp.proto instead of our own way to represent time. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-14Fix Statistics Report in BMPEiichiro Watanabe
2018-11-13server: change List API designFUJITA Tomonori
https://github.com/osrg/gobgp/issues/1763#issuecomment-437594975 Follow Chris's proposal; more consistent with gRPC streaming API. Also supports context properly. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-13server: fix inconsistent receiver name warningsFUJITA Tomonori
fix 'receiver name ss should be consistent with previous receiver name s for BgpServer'. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-13server: unexport BgpServer's Listeners()FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-13server: Fix wrong value of RouteMonitoringPolicy from grpcEiichiro Watanabe
2018-11-12Fix intervals for MRTEiichiro Watanabe
2018-11-12server: change monitor API designFUJITA Tomonori
https://github.com/osrg/gobgp/issues/1763#issuecomment-437594975 Follow Chris's proposal; consistent with the rest of the APIs. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-10server: avoid deadlockEiichiro Watanabe
peer.configuredRFlist() uses lock in itself.
2018-11-10server: avoid deadlockEiichiro Watanabe
toConfig() uses lock in itself.
2018-11-10server: avoid deadlockEiichiro Watanabe
peer.ID() uses lock in itself.
2018-11-09make gRPC server privateFUJITA Tomonori
No need to be exported. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-08server: Add PeerTable APIFUJITA Tomonori
go native API that corresponds to MonitorTable gRPC API. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-08server: Add PeerMonitor APIFUJITA Tomonori
go native API that corresponds to MonitorPeer gRPC API. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-11-07server: unexported Watcher stuffFUJITA Tomonori
Replace it with the new API using api/. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-10-30server: unexport constFUJITA Tomonori
No need to export Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-10-30server: unexport fsm stuffFUJITA Tomonori
No need to export the bgp peer internals. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-10-29server: unexport Peer adn PeerGroupFUJITA Tomonori
No need to export them. Also fixed golint errors. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-10-29server: unexport TCPDialer/TCPListener/TCPSockopt stuffFUJITA Tomonori
No need to export them. Also fixed golint errors. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>