1. 25 Apr, 2015 1 commit
    • Ondřej Zajíček's avatar
      KRT: Fixes learning of preferred kernel routes. · c5ff44a7
      Ondřej Zajíček authored
      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.
  2. 06 Feb, 2014 1 commit
    • Ondřej Zajíček's avatar
      Many changes in I/O and OSPF sockets and packet handling. · 48e5f32d
      Ondřej Zajíček authored
       - 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.
       - 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
  3. 22 Nov, 2013 1 commit
  4. 07 Jul, 2013 1 commit
  5. 04 May, 2012 1 commit
  6. 30 Apr, 2012 1 commit
  7. 10 May, 2011 1 commit
  8. 26 Mar, 2010 1 commit
  9. 26 Feb, 2010 1 commit
    • Ondřej Zajíček's avatar
      Many changes in (mainly) kernel syncers. · ff2857b0
      Ondřej Zajíček authored
      - BSD kernel syncer is now self-conscious and can learn alien routes
      - important bugfix in BSD kernel syncer (crash after protocol restart)
      - many minor changes and bugfixes in kernel syncers and neighbor cache
      - direct protocol does not generate host and link local routes
      - min_scope check is removed, all routes have SCOPE_UNIVERSE by default
      - also fixes some remaining compiler warnings
  10. 04 Jun, 2004 1 commit
  11. 03 Jun, 2004 1 commit
  12. 01 Jun, 2004 1 commit
  13. 31 May, 2004 1 commit
  14. 16 Dec, 1999 1 commit
  15. 03 Aug, 1999 2 commits
    • Martin Mareš's avatar
      Basic support for IPv6. The system-dependent part doesn't work yet, · dce26783
      Martin Mareš authored
      but the core routines are there and seem to be working.
         o  lib/ipv6.[ch] written
         o  Lexical analyser recognizes IPv6 addresses and when in IPv6
            mode, treats pure IPv4 addresses as router IDs.
         o  Router ID must be configured manually on IPv6 systems.
         o  Added SCOPE_ORGANIZATION for org-scoped IPv6 multicasts.
         o  Fixed few places where ipa_(hton|ntoh) was called as a function
            returning converted address.
    • Martin Mareš's avatar
      Kernel route syncer supports multiple tables. · 7de45ba4
      Martin Mareš authored
      The changes are just too extensive for lazy me to list them
      there, but see the comment at the top of sysdep/unix/krt.c.
      The code got a bit more ifdeffy than I'd like, though.
      Also fixed a bunch of FIXME's and added a couple of others. :)
  16. 21 May, 1999 1 commit
  17. 12 Apr, 1999 1 commit
  18. 03 Apr, 1999 1 commit
  19. 27 Mar, 1999 1 commit
    • Martin Mareš's avatar
      Cleaned up system configuration files -- removed few obsolete parameters, · 1127ac6e
      Martin Mareš authored
      documented the remaining ones (sysdep/cf/README).
      Available configurations:
         o  linux-20: Old Linux interface via /proc/net/route (selected by default
      		on pre-2.1 kernels).
         o  linux-21: Old Linux interface, but device routes handled by the
      		kernel (selected by default for 2.1 and newer kernels).
         o  linux-22: Linux with Netlink (I play with it a lot yet, so it isn't
      		a default).
         o  linux-ipv6: Prototype config for IPv6 on Linux. Not functional yet.
  20. 03 Mar, 1999 1 commit
    • Martin Mareš's avatar
      Rewrote the kernel syncer. The old layering was horrible. · 2d140452
      Martin Mareš authored
      The new kernel syncer is cleanly split between generic UNIX module
      and OS dependent submodules:
        -  krt.c (the generic part)
        -  krt-iface (low-level functions for interface handling)
        -  krt-scan (low-level functions for routing table scanning)
        -  krt-set (low-level functions for setting of kernel routes)
      krt-set and krt-iface are common for all BSD-like Unices, krt-scan is heavily
      system dependent (most Unices require /dev/kmem parsing, Linux uses /proc),
      Netlink substitues all three modules.
      We expect each UNIX port supports kernel routing table scanning, kernel
      interface table scanning, kernel route manipulation and possibly also
      asynchronous event notifications (new route, interface state change;
      not implemented yet) and build the KRT protocol on the top of these
      primitive operations.
  21. 01 Mar, 1999 1 commit
  22. 10 Jan, 1999 1 commit
  23. 26 May, 1998 1 commit
  24. 15 May, 1998 1 commit
  25. 22 Apr, 1998 1 commit