Skip to content

pimd-dense v2.1.0

Compare
Choose a tag to compare
@github-actions github-actions released this 12 Sep 15:02

Changes

  • Sync changes wrt preference/distance in pimdd.conf with pimd sources
  • Import cfparse.y from mrouted to replace homegrown .conf parser
    • Support for default-route-distance and default-route-metric
    • Support for assert-timeout
  • Import kernel interface probing from mrouted
    • Fixes issues with discovering IP addresses on Linux/FreeBSD
    • Allows for multinetting, using altnet directive from pimd
  • Align command line options with pimd
    • Rename options to match
    • Add -n and -s command line options
    • Add -l LEVEL to adjust log level
    • Add -i IDENT to assume another identity for .conf/.pid and syslog
    • Add -u FILE to override pimdd/pimctl IPC socket file
    • Add -p FILE to override pimdd PID file
    • Add -w SEC startup delay before interface probe
  • Rip out unfinished SNMP support
  • Add support for IGMPv3, querier and accepting membership reports
  • Add support for no phyint to start with all interfaces disabled
  • Add support for selecting phyint by name
  • Add support for pimctl, from pimd. The tool can be shared with
    pimd and used interchangeably between the two daemons
  • Add support for PIM Generation ID (genid) in PIM Hello
  • Add IP Router Alert option to IGMP and PIM messages, as per RFC2113
  • Inform PIM neighbors when we go down/reconfigure, PIM Hello holdtime=0
  • Trigger PIM Assert reelection when PIM neighbor goes down
  • Add support for querying RPF metric from Linux kernel
  • Drop periodic dump of vifs + mrt in log/stderr, we have pimctl now
  • Check for root privileges after checking command line args
  • Use configure'd paths for .conf, .pid, and .dump file
  • Update license files, stripping "contact Kurt .." and similar, also
    update pimd and mrouted license changes, thank you OpenBSD!
  • Cleanup, drop old pre-C89 __P() macro
  • Import safe string API functions from OpenBSD
  • Drop PIM-SM and DVMRP specific debug messages/levels, unused
  • Add systemd unit file, enabled automatically at configure time
  • Add man pages for pimd, pimctl, and pimd.conf in sections 8 and 5
  • Support for building .deb packages for Debian and Ubuntu based systemd

Fixes

  • Fix PIM Assert handling, with new assert-timeout .conf option
  • Fix k_del_vif(), does not work properly in Linux
  • Fix k_req_incoming() on FreeBSD
  • Fix 100% CPU usage, refactor linked list handling to use queue.h
  • Fix IGMP querier election bug, lost querier "flag" on interface when
    PIM DR election was lost. Thar draft spec PimDM is built around says
    largest IP wins DR election, but smallest wins IGMP, follow IGMP RFC
  • Only stop active/enabled VIFs, prevent bogus error messages
  • Fix unset DSCP value in PIM messages, Internet Control (DS6)
  • Fix RSRR (optional) build errors
  • Fix various memory leaks identified by Valgrind
  • Fix various scary bug identified by Coverity Scan