summaryrefslogtreecommitdiffhomepage
path: root/test
AgeCommit message (Collapse)Author
2017-07-30test/lib/base: Avoid to del all routes without identifier specifiedIWASE Yusuke
Currently, del_route() with "identifier=None" deletes all routes even if some installed routes have the valid identifier. This patch fixes to delete only route which exactly matches against the given identifier. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-20addpath_test: Test cases with non add-path routerIWASE Yusuke
This patch adds the test cases for the mixed situation of add-path enabled routers and non add-path enabled routers and advertising and withdrawing routes in such situation. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-20test/lib/base/BGPContainer: Enable to delete routeIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-20addpath_test: Enable to run without root privilegeIWASE Yusuke
see the comment of 4d7e3bd16fa51f4469a0a3f5f807c20b237ee21d Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-05test: add addpath_test.pyISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2017-06-08test: Test for Graceful Restart with multiple peersSatoshi Fujimoto
Signed-off-by: Satoshi Fujimoto <satoshi.fujimoto7@gmail.com>
2017-06-07test: ignore the failure of caching dependeny with building docker imageFUJITA Tomonori
`go get -d github.com/osrg/gobgp/...` could fail (e.g., an imported library has gone). After that, we build a docker image from modified source code. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-05-23flowspec: handling of >2 logical elements and fixed testDenis Shevchenko
2017-05-10*: support replace-peer-as (aka as-override)Wataru Ishida
we use the term replace-peer-as instead of as-override since openconfig is using it. cli ``` $ gobgp n add <neighbor-addr> as <asn> replace-peer-as ``` config ``` neighbor: config: peer-as: <asn> neighbor-address: <neighbor-addr> as-path-options: config: replace-peer-as: true ``` Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2017-05-10*: support remove private asWataru Ishida
cli ``` $ gobgp n add <neighbor-addr> as <asn> remove-private-as (all|replace) ``` config ``` neighbor: config: peer-as: <asn> neighbor-address: <neighbor-addr> remove-private-as: all ``` Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2017-05-09server: ignore routes when local AS is in AS_PATHISHIDA Wataru
RFC4271 9.1.2 Phase 2: Route Selection If the AS_PATH attribute of a BGP route contains an AS loop, the BGP route should be excluded from the Phase 2 decision function. AS loop detection is done by scanning the full AS path (as specified in the AS_PATH attribute), and checking that the autonomous system number of the local system does not appear in the AS path. Operations of a BGP speaker that is configured to accept routes with its own autonomous system number in the AS path are outside the scope of this document. Also this commit adds support for allow-own-as option to relax this. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2017-04-21test: fix container build for testFUJITA Tomonori
fix the regression of commit e429c1aaf4dd85459dfafc1a5efac9d4778370f6 Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-04-18test: change Dockerfile for faster container buildFUJITA Tomonori
use cache wisely. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-04-18Revert "test/lib/gobgp: Use local GoBGP executables in contaier"FUJITA Tomonori
This reverts commit 47ab84e34caeb7c89b26271bf84959011bc8ed19. using the same binaries on a host and inside a container isn't always feasible (by default, not statically linked binary). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-04-18test: remove unnecessary root check in bgp_unnumbered_test.pyFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-04-17scenario_test/README: Update commands to clean upIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-04-17scenario_test/README: Remove list for each test fileIWASE Yusuke
For the maintainability, this patch removes the list for each scenario test file. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-04-17test/lib/gobgp: Use local GoBGP executables in contaierIWASE Yusuke
Currently, to reflect the modification of the local source code or to switch the base image for GoBGP container, it is required to re-build the GoBGP container image, and this take a long time to test or debug with the scenario tests. This patch fixes to use the local GoBGP executables (gobgp and gobgpd) in container, and enables to reflect the changes without rebuidling container image. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-04-17scenario_test/README: Remove redundant brake tagIWASE Yusuke
Also adds the language type of code blocks. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-04-17scenario_test/README: Update list of required imagesIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-04-04test: add test for unnumbered bgp featureISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2017-03-17scenario_test: Test for NextHop Tracking with ZebraIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-17scenario_test: Support OSPFd in Quagga containerIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-17scenario_test: Enable to start OSPFd in GoBGP containerIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16test/lib/quagga: Avoid ambiguous command "en"IWASE Yusuke
With the newer version of Quagga, "en" command will be regarded as an "Ambiguous command", because there are two commands "enable" and "end". This patch replaces "en" command with "enable" command, and fixes this problem. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16test/lib: Enable to disply name of config fileIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16test/lib: Move noseplugin.py to test/lib module directoryIWASE Yusuke
To enable to use "noseplugin" as the Python module from the absolute import scope in scenario_test, this patch moves noseplugin.py to test/lib module directory. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16scenario_test: pep8 and pylint improvementsIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16test/lib: pep8 and pylint improvementsIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16scenario_test: "--force" option to remove directoriesIWASE Yusuke
To avoid the intractive prompt before removals, this patch adds "--force" option to remove directories. Also, fixes "--recursive" to "--force" option when removing xml files (not directories). Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-16jenkins-build-script: Add shebang lineIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-07scenario_test: Remove "sudo" command for running testsIWASE Yusuke
For the convenience when running scenario_test on Python virtualenv, this patch removes "sudo" command for running tests. Note: To enable to execute Docker without the root privilege, add your local user into "docker" group. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-03-02flowspec: comply with new draft RFC5575bis normalized operatorsMatthieu Texier
2017-02-17flowspec: comply with RFC 5575 about TCP flags rulesMatthieu Texier
This patch proposes a new way to configure BGP flowspec TCP flags rules It allows to comply with RFC 5575 by defining flags like this =SA =A / '!SA' / '=SA&=!U' = means match, ! means not, & means and, all TCP flags are identified by their first charater S for SYN A for Ack ...
2017-02-15table: fix bug of adj-table accepted counterISHIDA Wataru
old filtered value could be POLICY_DIRECTION_IMPORT Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2017-02-09server: fix in-policy bugISHIDA Wataru
When a path is rejected by in-policy, the prefix must be withdrawn since it might already exist in the rib. Signed-off-by: ISHIDA Wataru <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-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-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-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-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-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-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-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-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-04support neighbor belongs to VRFWataru Ishida
$ gobgp vrf add red rd 100:100 rt both 100:100 $ gobgp neighbor add 10.0.0.1 as 2 vrf red $ gobgp vrf red neighbor Peer AS Up/Down State |#Advertised Received Accepted 10.0.0.1 2 never Active | 0 0 0 Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-10-09*: support long lived graceful restartWataru Ishida
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-10-09test: fix bug of bgp_router_test.pyWataru Ishida
Since g3's route (MED 10) is weaker than g2's, g3's route should not be advertised to g2 from g1. But when g3's route arrives on g1 before g2's, g1 advertises g3's route. This commit ensures g3's route come after g2's route Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>