summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2017-08-28server: export addROA()/delROA() for library usageEiichiro Watanabe
2017-08-24Fix incorrect default value of BMPMonitoringPolicyEiichiro Watanabe
2017-08-24gobgp: fix error for gobgp bmp add x.x.x.x:xxxx pre optionEiichiro Watanabe
2017-08-13server: fix fd leak in DialTCP() on LinuxFUJITA Tomonori
A new socket was created so we must close it before this function returns _either_ on failure or success. On success, net.FileConn() in newTCPConn() increases the refcount of the socket so this fi.Close() doesn't destroy the socket; the caller can use it (and needs to close it later). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-11gobgpd: fix AddDynamicNeighbor()matthubb
The temporary pointer from the range function is being passed to AddDynamicNeighbor which is the same for every iteration of the loop. So the PeerGroup.DynamicNeighbors all end up with the same config.DynamicNeighbor.
2017-08-08config/default: Validation for "afi-safi-name"IWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-08-08config/default: Avoid setting doubly defaults of neighborIWASE Yusuke
Currently, the function for setting the default values for neighbors will called doubly when the neighbor config was added via local config files (called by "config/serve.go" and AddNeighbor() in "server/server.go"). This patch enables to detect the duplicated call of this function and avoid setting the unexpected default values. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-08-08config/default: Fix unfilled "neighbors.afi-safis.config.enabled"IWASE Yusuke
Currently, if "neighbors.afi-safis.config.enabled" is omitted, this field will not initialised as expected when GoBGPd reads config file, but will initialised when AddNeighbor API is called. This cause the miss comparison whether reloaded neighbor config is updated or not (always determined updated). This patch fixes the condition more strictly and solves this problem. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-08-07table: exclude mpreach and mpunreach attribute for normal v4 updatesWataru Ishida
It is possible that gobgp's v4 path structure contains mpreach or mpunreach attribute. (we store entire path attributes in path structure as they are received) Since we use a NLRI field of BGP update message for v4 updates and don't aggregate update/withdrawal messages for other address families, we need to exclude these attribute before sending out v4 updates. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2017-08-07table: fix handling of update with both mpunreach and mpreach attributeWataru Ishida
some implementations send a mpunreach attribute piggy backed on an update message. Since it is stored in pathattrs of gobgp's path structure, we need to exclude it before sending out update messages. Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2017-08-04README: update developing GoBGP for depFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-04update travis-ci for depFUJITA Tomonori
libraries are installed into vendor directory so we can't build go code outside. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-03introduce dependency management toolFUJITA Tomonori
https://github.com/golang/dep Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-03travis-ci: remove duplication in .travis.yamlFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02README: add binary release linkFUJITA Tomonori
[skip ci] Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02GoBGP 1.22FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02create github releases with binariesFUJITA Tomonori
https://github.com/goreleaser/goreleaser Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02support version command line optionFUJITA Tomonori
Preparation for binary release with: https://github.com/goreleaser/goreleaser Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02server: add sockopt ttl support to darwinFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02table: allocate bitmap for path id dynamicallyFUJITA Tomonori
allocating 256 bytes per prefix isn't a good idea. Let's allocate 8 bytes by default and expand dynamically if necessary. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-01server: fix zclient to handle route messages without nexthopFUJITA Tomonori
Seems that zebra could send a route message without nexthop (makes sense for withdraw). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-31gobgpd: Avoid name collisionIWASE Yusuke
alias "p" for "github.com/kr/pretty" collides the local variable "p" for Peer structure. This patch fixes to avoid this name collision and also sorts the import order with goimports. e.g.) goimports -w -local github.com/osrg/gobgp gobgpd/main.go Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-30addpath_test: Test cases for routes from CLIIWASE Yusuke
This patch adds test cases for adding/deleting routes from GoBGP CLI. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-30addpath_test: Test cases for send add-pathsIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-30test/lib/gobgp: Get community/identifier via get_*_rib()IWASE Yusuke
This patch enables GoBGPContainer to get community and identifier for each route via get_global_rib() and get_local_rib() methods. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-30test/lib/gobgp: Add route with identifier and communityIWASE Yusuke
This patch enables GoBGPContainer to add routes with "identifier" and "community" via add_route() method. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-30test/lib/gobgp: Enable GoBGPContainer to del a routeIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
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-30server: fix active connection error checkFUJITA Tomonori
https://github.com/osrg/gobgp/issues/1391 Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-27table: disable wrong warning about aspathFUJITA Tomonori
With addpath support, two paths from API without AS_PATH attribute could be compared. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26table: don't send OriginaterID or ClusterList attributes to non rr clientsFUJITA Tomonori
A certain bgp implementation crushes when receiving them. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26improve cli addpath usage messageFUJITA Tomonori
also add an example to cli doc. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26api: change the license of gobgp.proto from Apache to MITFUJITA Tomonori
To make it easier for other projects to include gobgp.proto file, let's use more permissive license, MIT. [skip ci] Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26config: Insert descriptions extracted from yang filesIWASE Yusuke
This patch fixes pyang_plugins to insert the descriptions which extracted from yang files and helps to enrich the documentation (e.g., godoc). Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-26pyang_plugins: RefactorIWASE Yusuke
This patch improves the result of pylint and pep8 checks. For example, this patch fixes; - "multiple_modules" attribute of "GolangPlugin" defined in out-side of "__init__()". - "module" shadows built-in name. - missing whitespace around operator. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-26pyang_plugins: Replace map() with list comprehensionIWASE Yusuke
Mostly, using the list comprehension is more efficiently than map() with "lambda". This patch replaces map() + "lambda" by the list comprehension. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-26pyang_plugins: Use file descriptor passed to pluginIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-26config: Use BmpServerConfig struct in BmpServerStateIWASE Yusuke
Currently, BmpServerState has empty structure and can not store any configration information. This patch fixes to use BmpServerConfig structure in BmpServerState to store the same information. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-26fix addpath send withdrawFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26add addpath send supportFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26table: assign local identifier to pathFUJITA Tomonori
The local identifier for path is sent to remote peers. To simplify the implementation, 1) the local identifier is unique per prefix not peer. 2) always assign the local identifier even without addpath-rx-capable peer. In the future, we might need to improve 2) to avoid the unnecessary overhead. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26api: add addpath support to AddPath API and cliFUJITA Tomonori
$gobgp global rib add 10.0.0.0/24 identifier 20 Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26add LocalPathIdentifierFUJITA Tomonori
add-path support needs two identifiers, remote (rx) and local (tx). The remote identifiers are assigined by remote peers, the local ones are assigned by gobgpd itself. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-26server: remove unnecessary Filter() in rsFUJITA Tomonori
RS peers and non RS peers uses different tables so no need to filter paths from rs clients for non rs clients. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-24config/bgp_configs_test: Add test for config validationIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-24docs/sources/configuration.md: Update example configurationIWASE Yusuke
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2017-07-24docs/sources/configuration: Remove obsoleted "mpls-label-range"IWASE Yusuke
see be9918a163a20a7a885dc9206a733d983ee76b3a 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>