summaryrefslogtreecommitdiff
path: root/sysdep/unix
AgeCommit message (Collapse)Author
2015-11-12Follow-up commit on integrated BIRDOndrej Zajicek (work)
Use net_addr for interface address prefixes, support net_addr in configuration parser.
2015-11-05Initial commit on integrated BIRDOndrej Zajicek (work)
New data types net_addr and variants (in lib/net.h) describing network addresses (prefix/pxlen). Modifications of FIB structures to handle these data types and changing everything to use these data types instead of prefix/pxlen pairs where possible. The commit is WiP, some protocols are not yet updated (BGP, Kernel), and the code contains some temporary scaffolding. Comments are welcome.
2015-06-08BGP multipath supportOndrej Zajicek
Kernel option 'merge paths' allows to merge routes exported to kernel protocol (currently BGP and static routes) to multipath routes.
2015-06-08KRT: Fixes some minor bugs in kernel protocolOndrej Zajicek
2015-06-08unsigned [int] -> uintPavel TvrdĂ­k
2015-05-12KRT: Add support for plenty of kernel route metricsOndrej Zajicek
Linux kernel route metrics (RTA_METRICS netlink route attribute) are represented and accessible as new route attributes: krt_mtu, krt_window, krt_rtt, krt_rttvar, krt_sstresh, krt_cwnd, krt_advmss, krt_reordering, krt_hoplimit, krt_initcwnd, krt_rto_min, krt_initrwnd, krt_quickack, krt_lock_mtu, krt_lock_window, krt_lock_rtt, krt_lock_rttvar, krt_lock_sstresh, krt_lock_cwnd, krt_lock_advmss, krt_lock_reordering, krt_lock_hoplimit, krt_lock_rto_min, krt_feature_ecn, krt_feature_allfrag
2015-04-25KRT: Fixes route reloadOndrej Zajicek
Did not really worked
2015-04-25KRT: Fixes learning of preferred kernel routes.Ondrej Zajicek
When a new route was imported from kernel and chosen as preferred, then the old best route was propagated as a withdraw to the kernel protocol. Under some circumstances such withdraw propagated to the BSD kernel could remove the new alien route and thus reverting the import.
2015-04-19Fixes port range socket optionOndrej Zajicek
2015-03-29BGP: Enhanced route refresh (RFC 7313) supportOndrej Zajicek
Also hook feed_done is renamed to feed_end.
2015-03-02Fixes bug in debug dumpsOndrej Zajicek
Using 'dump sockets' in IPv6 mode caused crash due to mismatched format string. Thanks to Pavel Tvrdik for noticing it.
2015-03-02Implement latency tracking, internal event log and watchdogOndrej Zajicek
2015-02-22Use IP_PORTRANGE_HIGH for BFD where availableOndrej Zajicek
2015-02-21Store protocol config size inside protocol structureOndrej Zajicek
Make proto_config_new() use this info instead of supplied size. Thanks to Alexander V. Chernikov for the patch.
2015-02-21Add const to a param msg at functions log_msg, log_rl, die, bug and debugPavel Tvrdik
2015-02-21Replacing GNU old-style field designator extensionPavel Tvrdik
2014-11-03Fininshing integrated OSPF.Ondrej Zajicek
2014-10-24Integrated IP functions.Ondrej Zajicek
2014-10-02Implements token bucket filter for rate limiting.Ondrej Zajicek
2014-10-02Refresh kernel protocol when interface disappears.Ondrej Zajicek
When an interface goes down, (Linux) kernel removes routes pointing to that ifacem but does not send withdraws for them. We rescan the kernel table to ensure synchronization. Thanks to Alexander Demenshin for the bugreport.
2014-10-02Fixes some warnings.Ondrej Zajicek
2014-06-26Ensures that msg_controllen includes last padding.Ondrej Zajicek
Although RFC 3542 allows both cases, Theo de Raadt thinks he knows better, and msg_controllen without last padding fails on OpenBSD. Thanks to Job Snijders for the bugreport.
2014-05-29String constants could be used for string option values.Ondrej Zajicek
Thanks to Frederik Kriewitz for the patch.
2014-05-18IPv4/IPv6 integrated socket code.Ondrej Zajicek
2014-03-20BGP graceful restart support.Ondrej Zajicek
Also significant core protocol state changes needed for that, global graceful restart recovery state and kernel proto support for recovery.
2014-02-07Workaround thread-unsafeness of cli_echo().Ondrej Zajicek
2014-02-06Many changes in I/O and OSPF sockets and packet handling.Ondrej Zajicek
I/O: - BSD: specify src addr on IP sockets by IP_HDRINCL - BSD: specify src addr on UDP sockets by IP_SENDSRCADDR - Linux: specify src addr on IP/UDP sockets by IP_PKTINFO - IPv6: specify src addr on IP/UDP sockets by IPV6_PKTINFO - Alternative SKF_BIND flag for binding to IP address - Allows IP/UDP sockets without tx_hook, on these sockets a packet is discarded when TX queue is full - Use consistently SOL_ for socket layer values. OSPF: - Packet src addr is always explicitly set - Support for secondary addresses in BSD - Dynamic RX/TX buffers - Fixes some minor buffer overruns - Interface option 'tx length' - Names for vlink pseudoifaces (vlinkX) - Vlinks use separate socket for TX - Vlinks do not use fixed associated iface - Fixes TTL for direct unicast packets - Fixes DONTROUTE for OSPF sockets - Use ifa->ifname instead of ifa->iface->name
2013-11-25Merge branch 'master' into add-pathOndrej Zajicek
2013-11-25Use ISO 8601 timeformats by default.Ondrej Zajicek
2013-11-25Changes primary addr selection on BSD to respect SIOCGIFADDR ioctl() result.Ondrej Zajicek
Thanks to Alexander V. Chernikov for the original patch.
2013-11-23Merge branch 'master' into add-pathOndrej Zajicek
Conflicts: filter/filter.c nest/proto.c nest/rt-table.c proto/bgp/bgp.h proto/bgp/config.Y
2013-11-22Minor fix in log_commit() w.r.t. changes in BFD branch.Ondrej Zajicek
2013-11-22Merge commit 'origin/bfd'Ondrej Zajicek
2013-11-22Fixes problem with RIP on multiple ifaces on BSD.Ondrej Zajicek
RIP sockets for multiple ifaces collided, because we cannot bind to a specific iface on BSD. Workarounded by SO_REUSEPORT. Thanks to Eugene M. Zheganin for the bugreport.
2013-11-19BFD protocol, ready for release.Ondrej Zajicek
Supports OSPF and BGP and also statically configured sessions.
2013-10-15Forces KRT rescan on syncer startup with multi syncer config.Ondrej Zajicek
Thanks to Sergey Popovich for the patch.
2013-10-05Flag -f "run in foreground" added as requested by a package maintainter.Ondrej Filip
2013-10-05Fixes some BFD bugs and makes logging thread-safe.Ondrej Zajicek
2013-10-05Implements PID file support.Ondrej Zajicek
Thanks to Thierry Fournier for the original patch.
2013-09-16BFD work in progress.Ondrej Zajicek
Now it compiles and mostly works.
2013-09-10Fixes a bug in kernel extended attribute processing.Ondrej Zajicek
The bug caused that krt_prefsrc attribute was not processed when a route received from a kernel protocol was exported to another kernel protocol. Thanks to Sergey Popovich for a bugreport.
2013-09-10Initial BFD commit, work in progress.Ondrej Zajicek
2013-07-25Allows to define constants of all filter types.Ondrej Zajicek
2013-07-25Implements eval command and minor CLI cleanups.Ondrej Zajicek
Implemented eval command can be used to evaluate expressions. The patch also documents echo command and allows to use log classes instead of integer as a mask for echo.
2013-07-24Fixes header file name.Ondrej Zajicek
Thanks to Fritz Grimpen for the patch.
2013-07-11Some fixes for TTL security.Ondrej Zajicek
2013-07-04Makes krt.c much more readable.Ondrej Zajicek
2013-06-25Implements TTL security for OSPF and RIP.Ondrej Zajicek
Interfaces for OSPF and RIP could be configured to use (and request) TTL 255 for traffic to direct neighbors. Thanks to Simon Dickhoven for the original patch for RIPng.
2013-06-24Better packet priority and traffic class handling.Ondrej Zajicek
Implements support for IPv6 traffic class, sets higher priority for OSPF and RIP outgoing packets by default and allows to configure ToS/DS/TClass IP header field and the local priority of outgoing packets.
2012-12-26Implements undo command and optional timeout for configurationOndrej Zajicek
Several new configure command variants: configure undo - undo last reconfiguration configure timeout - configure with scheduled undo if not confirmed in timeout configure confirm - confirm last configuration configure check - just parse and validate config file