summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-01-12Wireguard: FixesMikael Magnusson
2021-01-12Wireguard: Implement copy_configMikael Magnusson
2021-01-12Wireguard: Add channel hooksMikael Magnusson
2021-01-12Wireguard: Reinit wg device at shutdownMikael Magnusson
2021-01-12Wireguard: Add user space supportMikael Magnusson
2021-01-12Wireguard: Use recursive tunnel encapsMikael Magnusson
2021-01-12Wireguard: Move key conversionMikael Magnusson
2021-01-12Wireguard: Add peer listMikael Magnusson
2021-01-12Wireguard: Set up wireguard deviceMikael Magnusson
Add private key and listen port items.
2021-01-12Wireguard: Add peer config settingsMikael Magnusson
2021-01-12Wireguard: Allow multiple channelsMikael Magnusson
2021-01-12Wireguard: Extended color communityMikael Magnusson
2021-01-12Wireguard: Clean up config.YMikael Magnusson
2021-01-12Wireguard: Refactor into peer and allowed ips functionsMikael Magnusson
2021-01-12Wireguard: Add remote endpointMikael Magnusson
2021-01-12Wireguard: Implement tunnel encode decodeMikael Magnusson
2021-01-12Wireguard: DebugMikael Magnusson
2021-01-12Wireguard: Initial commitMikael Magnusson
2021-01-12Wireguard-lib: Add to makefileMikael Magnusson
2021-01-12Wireguard-lib: Import wireguard libraryMikael Magnusson
2021-01-12BGP: Tunnel Encapsulation attributeMikael Magnusson
Refer to draft-ietf-idr-tunnel-encaps-13
2021-01-12Filter: TLVMikael Magnusson
2021-01-12Unix: Implement SK_UNIX_ACTIVEMikael Magnusson
2021-01-12Unix: Support abstract socket in sk_unix_connectMikael Magnusson
2021-01-12Unix: Implement sk_connect_unixMikael Magnusson
2021-01-12Build: Fix tags generationOndrej Zajicek (work)
2021-01-12MRT: Fix IPv6 table dumpsOndrej Zajicek (work)
Add fake MP_REACH_NLRI attribute with BGP next hop when encoding MRT table dumps for IPv6 routes. That is necessary to encode next hop as NEXT_HOP attribute is not used for MP-BGP. Thanks to Santiago Aggio for the bugreport.
2021-01-10BFD: Dispatch sessions also by interface indexOndrej Zajicek (work)
Direct BFD sessions needs to be dispatched not only by IP addresses, but also by interfaces, in order to avoid collisions between neighbors with the same IPv6 link-local addresses. Extend BFD session hash_ip key by interface index to handle that. Use 0 for multihop sessions. Thanks to Sebastian Hahn for the original patch.
2021-01-07RPKI: Remove port (and SSH username) from 'Cache server' output lineOndrej Zajicek (work)
It was mixed-up if hostname is IPv6 address, and reporting separate values (like port) on separate lines fits better into key-value style of 'show protocols all' output. Also, the patch simplifies transport identification formatting (although it is unused now). Thanks to Alarig Le Lay for the suggestion.
2021-01-07Kernel: Do not check templatesOndrej Zajicek (work)
So one can define kernel protocol template without channels. For other protocols, it is either irrelevant or already done. Thanks to Clemens Schrimpe for the bugreport.
2021-01-07Doc: Describe per-nexthop static route optionsOndrej Zajicek (work)
Also remove description of (no longer supported) per-route 'bfd' option, and add examples of IPv6 routes with link-local nexthops.
2021-01-06Nest: remove last_tx_filter_changeOndrej Zajicek (work)
No longer needed after redesign of export handling.
2021-01-06BGP: Deprecate 'missing lladdr' optionOndrej Zajicek (work)
The option is not implemented since transition to 2.0 and no plan to add it. Also remove some deprecated RTS_* valus from documentation. Thanks to Sébastien Parisot for notification.
2021-01-06Kernel: Fix handling of krt_realm with ECMP routesOndrej Zajicek (work)
For ECMP routes, RTA_FLOW attribute must be set per-nexthop, not per-route. Our corresponding krt_realm attribute is per-route. Thanks to Mikhail Petrov for the bugreport.
2020-12-29Nest: Read Babel metric as IGP metricJames Lu
(Minor syntactic changes by committer)
2020-12-28Static: Fix handling of 'net' attribute in per-route filtersOndrej Zajicek (work)
We need to define 'net' field temporarily as it may be accessed by per-route filters. Thanks to Damian Zaremba for the bugreport.
2020-12-28Filter: Fix return on top-levelOndrej Zajicek (work)
Broken detection of top-level case caused crash when return was called from top-of-stack position. It should behave as reject/accept. Thanks to Damian Zaremba for the bugreport.
2020-12-07Nest: Per-channel debug flagsOndrej Zajicek (work)
The patch add support for per-channel debug flags, currently just 'states', 'routes', and 'filters'. Flag 'states' is used for channel state changes, remaining two for routes passed through the channel. The per-protocol debug flags 'routes'/'filters' still enable reporting of routes for all channels, to keep existing behavior. The patch causes minor changes in some log messages.
2020-12-02Filter: Add 'weight' route attributeOndrej Zajicek (work)
Add 'weight' route attribute that allows to get and set ECMP weight of nexthops. Similar to 'gw' attribute, it is limited to the first nexthop, but it is useful for handling BGP multipath, where an ECMP route is merged from multiple regular routes.
2020-11-25BGP: Zero the newly allocated bucket structureOndrej Zajicek (work)
This fixes an issue with dirty node passed to add_tail(). Thanks to Andreas Rammhold for the initial patch.
2020-11-25Log: Fix locking during log reconfigurationOndrej Zajicek (work)
The log subsystem should be locked earlier, as default_log_list() may internally manipulate with the current_log_list (if it is also a default log list).
2020-11-25Log: Reinitialize the static logging structuresOndrej Zajicek (work)
The static logging structures are reused, we need to reinitialize them otherwise add_tail() would fail in debug build. Reinitializing these structures should be fine as the list they belong to is being reinitialized on entry to the very same function. Thanks to Andreas Rammhold and Mikael Magnusson for patches.
2020-11-24Minor cleanups with cfg_allocz()Ondrej Zajicek (work)
Also fixes some more failed asserts due to add_tail().
2020-11-24Fix some failed asserts due to add_tail()Ondrej Zajicek (work)
When config structures are copied due to template application, we need to reset list node structure before calling add_tail(). Thanks to Mikael Magnusson for patches.
2020-11-24Some minor sl_allocz() cleanupsOndrej Zajicek (work)
2020-11-24lib/slab: introduce sl_allocz() function and use it in BabelToke Høiland-Jørgensen
The babel protocol code was initialising objects returned from the slab allocator by assigning to each of the struct members individually, but wasn't touching the NODE member while doing so. This leads to warnings on debug builds since commit: baac7009063d ("List expensive check.") To fix this, introduce an sl_allocz() variant of the slab allocator which will zero out the memory before returning it, and switch all the babel call sites to use this version. The overhead for doing this should be negligible for small objects, and in the case of babel, the largest object being allocated was being zeroed anyway, so we can drop the memset in babel_read_tlv().
2020-11-19Static: Support for multiple routes with the same networkOndrej Zajicek (work)
Add support for proper handling of multiple routes with the same network to the static protocol. Routes are distinguished by internal index, which is assigned automatically (sequentially for routes within each network). Having different route preference or igp_metric attribute is optional.
2020-11-18Doc: Added example of static routes with BGP large communitiesNigel Kukard
2020-11-18OSPFv3: Fix intra-area-prefix-LSA origination on DROndrej Zajicek (work)
When a new link-LSA is originated, we need to notify intra-area-prefix-LSA handling, like when a new link-LSA is received. Otherwise a new network prefix added to a DR is not propagated immediately. Thanks to Bala Sajja for the bugreport.
2020-11-15Doc: Fix typoOndrej Zajicek (work)
Thanks to Hexhu for the bugreport.