summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2016-12-10server: don't assume (*api.Path).Nlri is ipv4 NLRIWataru Ishida
use (*api.Path).Family to decide how to decode (*api.Path).Nlri closes #1185 Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-12-10server: fix bug when global import policy rejects a routeWataru Ishida
routes rejected by global import policy was not deleted from RIB Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-12-10client: rename client.GoBGPClient to client.ClientChris Stockton
2016-12-05client: Allow creating a GoBGPClient using a user specific GRPC connection ↵Chris Stockton
and client This allows wrapping the dialer, implementing your own wrapped GobgpApiClient or dialing with a context for cancelation on unreliable endpoints.
2016-12-04GoBGP 1.14FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-12-04client: AddNeighbor API doesn't include apply-policy informationkishiguro
2016-12-02server: fix bug of deleteNeighbor()Wataru Ishida
cleaning outgoing channel while fsm handler is running may cause crash Dec 2 06:14:36 g2 gobgpd[6955]: {"Topic":"Peer","level":"info","msg":"Delete a peer configuration for:10.173.176.211","time":"2016-12-02T06:14:36Z"} Dec 2 06:14:36 g2 gobgpd[6955]: {"Data":"","Key":"10.173.176.211","Topic":"Peer","level":"warning","msg":"sent notification","time":"2016-12-02T06:14:36Z"} Dec 2 06:14:36 g2 gobgpd[6955]: {"Key":"10.173.176.211","Reason":"notification-sent code 6(cease) subcode 3(peer deconfigured)","State":"BGP_FSM_ESTABLISHED","Topic":"Peer","level":"info","msg":"Peer Down","time":"2016-12-02T06:14:36Z"} Dec 2 06:14:36 g2 gobgpd[6955]: panic: interface conversion: interface {} is nil, not *server.FsmOutgoingMsg Dec 2 06:14:36 g2 gobgpd[6955]: goroutine 69 [running]: Dec 2 06:14:36 g2 gobgpd[6955]: panic(0xd26200, 0xc82030c4c0) Dec 2 06:14:36 g2 gobgpd[6955]: /usr/local/go/src/runtime/panic.go:481 +0x3e6 Dec 2 06:14:36 g2 gobgpd[6955]: github.com/osrg/gobgp/server.(*FSMHandler).sendMessageloop(0xc8201a66e0, 0x0, 0x0) Dec 2 06:14:36 g2 gobgpd[6955]: /usr/local/opt/gopath/src/github.com/osrg/gobgp/server/fsm.go:1136 +0x3c3 Dec 2 06:14:36 g2 gobgpd[6955]: github.com/osrg/gobgp/server.(*FSMHandler).(github.com/osrg/gobgp/server.sendMessageloop)-fm(0x0, 0x0) Dec 2 06:14:36 g2 gobgpd[6955]: /usr/local/opt/gopath/src/github.com/osrg/gobgp/server/fsm.go:1175 +0x2e Dec 2 06:14:36 g2 gobgpd[6955]: gopkg.in/tomb%2ev2.(*Tomb).run(0xc8201a66e0, 0xc820278140) Dec 2 06:14:36 g2 gobgpd[6955]: /usr/local/opt/gopath/src/gopkg.in/tomb.v2/tomb.go:163 +0x21 Dec 2 06:14:36 g2 gobgpd[6955]: created by gopkg.in/tomb%2ev2.(*Tomb).Go Dec 2 06:14:36 g2 gobgpd[6955]: /usr/local/opt/gopath/src/gopkg.in/tomb.v2/tomb.go:159 +0x131 Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-29zebra: add flags for recursive nexthop lookup if necessaryWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-29Fix Open Message optional parameter length == 1 GoBGP crashes issues.kishiguro
2016-11-25policy: fix bug of multi policy applicationWataru Ishida
when multiple policies with modification actions are configured, use a path structure which was applied to the previous policy. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-25policy: fix bug of rpki validation conditionWataru Ishida
when rpki validation condition is not configured ( c == "" ), don't create an instance for validation. this bug was breaking all policy mechanism when rpki server is configured. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-25rpki: check asPath == nil before validationWataru Ishida
locally generated routes may not have AS path attribute Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-25config: fix bug of default rpki port settingWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-24gobgpd: support global policy assignment update via configuration fileWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-24server: add unit test to check NumGoroutine with Neighbor configurationFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-24server: fix Watcher InfiniteChannel leakFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-23api: Update the grpc server to accept the local address and remote port from ↵Chris Stockton
the transport config This allows using the gobgp/client to send a transport config with a port number.
2016-11-21server: fix memory leak in infinite channel goroutineWataru Ishida
infinite channel has internal goroutine which won't stop until all items in the buffer are dequeued. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-21api: Fix client.AddNeighbor() API does not properly configure AFI/SAFI bugkishiguro
When we use gRPC API to add neighbor. Even if we specify, config.Neighbor.AfiSafis parameter, it is ignored in NewPeerFromConfigStruct(). Adding to that even if we fix the issue, NewNeighborFromAPIStruct() count Families twice. So resulting neighbor has duplicated Families configuration. This patch fixed both problems.
2016-11-18server: disable advertised number calculation with multiple neighborsFUJITA Tomonori
AdjRibOut isn't in memory so needs to be calculated on the fly. Doing such for multiple neighbors consumes too much CPU (especially there are lots of routes). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-17config: simplify route-disposition configurationWataru Ishida
before: ```yaml actions: route-disposition: accept-route: true reject-route: false ``` after ```yaml action: router-disposition: accept-route ``` Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-17add go vet testWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-16cli: fix another formatting bugWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-16client: fix bug of GetNeighbor()Wataru Ishida
also add a unit test Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-16cli: fix neighbor formattingWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-15client: remove server package dependencyWataru Ishida
move ROA under table package Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14client: support neighbor filteringWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14config/api: create admin-state typeWataru Ishida
align with session-state Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14cli: use client libraryWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14client: add golang client libraryWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14config: add json tag for config structuresWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14config: use struct type instead of []byte for capability and open msgWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14config: delete Equal() method for State structuresWataru Ishida
we only use Equal() method for configuration structures Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-14policy: fix bug of policy with multiple statementsWataru Ishida
policy can have multiple statements. In each statement, when condition is matched, route-action is finally evaluated after actions with mods. When route-action is 'none', we contine to next statement if it exists. When route-action is 'accept' or 'reject', we stop proceeding. This patch fixes a bug that route-action can't be set to 'none' which means route-action always be set to 'accept' or 'reject' and can't proceed to the next statement. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-13fix a few typosRuben Kerkhof
2016-11-12test: wait for condition properly rather than randomly waiting in ↵FUJITA Tomonori
vrf_neighbor_test2 Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12server: remove adj-out usageFUJITA Tomonori
With this change, we could send unncessary messages but it's harmless (wastefull though). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12test: remove tcpdump usage in bgp_router_test.pyFUJITA Tomonori
It's unreliable. Use monitor command instead. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12server: remove adj-out usage in filterpathFUJITA Tomonori
Preparation for removing in-memory adj-out. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12table: use old best path instead of withdrawn pathsFUJITA Tomonori
Preparation for removing in-memory adj-out. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12ops: drop open switch supportWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-07test: use passive connection for gobgp and gobgp connectionFUJITA Tomonori
kinda workaround. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-07test: add change of best paths from ibgp and ebgpFUJITA Tomonori
gobgp has two ibgp peers and one ebgp. 1. the best path is from ebgp so advertise it to ibgp peers. 2. one of ibgp peer sends the same path so now the path from ibgp becomes best. 3. gobgp doesn't advertise it to another ibgp and needs to withdraw the best from ebgp. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-06.travis.yml: remove duplicated testWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-06server: fix bug of disable/enable/softreset behavior for vrfed neighborWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-05bmp: fix wrong monitoring policy type translationWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-04allow route reflector client as vrf neighborFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-04docs: update cli docWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-04cli: deprecate neighbor `shutdown` commandWataru Ishida
Since `shutdown` command just sends ADMINISTRATIVE_SHUTDOWN notification and doesn't change admin-state, neighbors can be get established after idle-holdtime which is not intuitive from the name of the API. We can use `reset` command to hard-reset BGP session, and `disable` command to shutdown(disable) BGP session. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-11-04cli: support adding rr-client and rs-clientWataru Ishida
$ gobgp neighbor add 10.0.0.1 route-reflector-client $ gobgp neighbor add 10.0.0.1 route-reflector-client 1.1.1.1 $ gobgp neighbor add 10.0.0.1 route-server-client Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>