Hello community,
here is the log from the commit of package keepalived for openSUSE:Factory checked in at 2019-03-22 15:08:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/keepalived (Old)
and /work/SRC/openSUSE:Factory/.keepalived.new.25356 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "keepalived"
Fri Mar 22 15:08:13 2019 rev:25 rq:687165 version:2.0.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/keepalived/keepalived.changes 2019-01-21 11:03:24.603038617 +0100
+++ /work/SRC/openSUSE:Factory/.keepalived.new.25356/keepalived.changes 2019-03-22 15:08:25.689439462 +0100
@@ -1,0 +2,262 @@
+Wed Mar 20 23:31:55 UTC 2019 - Marcus Rueckert
+
+- update to 2.0.13
+ - Add BFD build option to keepalived.spec rpm file
+ Issue #1114 identified that the keepalived.spec file was not being
+ generated to build BFD support even if keepalived had been configured
+ to support it.
+ - Copy tarball to rpmbuild/SOURCES when building in place
+ It seems that even when building in place, rpmbuild expects the
+ tarball to be in the rpmbuild/SOURCES directory.
+ - Fix configure check for __always_inline
+ - Handle interface MAC addresses changing
+ When an interface is added to a bond interface, if it is the first
+ interface added, the MAC address of the bond interface is changed
+ to the MAC address of the added interface. When subsequent interfaces
+ are added, their MAC addresses are changed to that of the bond
+ interface.
+ Issue #1112 identified that if a bond interface is deleted and
+ recreated, the gratuitous ARPs were sent with the wrong source MAC
+ address.
+ This commit now updates interface MAC addresses from the netlink
+ RTM_NEWLINK messages, so that the correct MAC address is always
+ used.
+ - Minor tidying up of opening gratuitous ARP socket.
+ - Streamline setting SOCK_NONBLOCK on vrrp sockets.
+ - Use netlink reported hardware address length for unsolicited NAs
+ ETH_ALEN is correct for Ethernet type interaces, but is not right
+ for Infiniband interfaces.
+ - Minor tidying up of opening gratuitous NA socket.
+ - Make gratuitous ARP/NA sockets non blocking
+ keepalived shouldn't block when sending gratutious ARP/NA messages.
+ It is better to lose the messages than for keepalived to block, so
+ set the sockets non blocking.
+ - Use netlink provided broadcast address for gratuitous ARP
+ If an interface has a non-standard broadcast address, we should
+ honour it.
+ - Fix building on pre 3.10 kernels re track_process
+ Issue #1119 reported that keepalived wouldn't build on CentOS 6.
+ Various PROC_EVENT_- declarations were assumed to exist, some of which
+ were not introduced until Linux v3.10. Most of them are not needed, but
+ PROC_EVENT_COMM is used by the track_process code.
+ This commit now checks for the existence of the PROC_EVENT_- declarations,
+ but since keepalived uses PROC_EVENT_COMM, track_process is not supported
+ prior to Linux v3.2.
+ - Make track_process work prior to Linux 3.2, but with limitations
+ Prior to Linux 3.2 the PROC_EVENT_COMM event did not exist, which
+ means that keepalived is unable to detect changes to process name
+ (/proc/PID/comm) prior to Linux 3.2. most processes do not change
+ their process name, and so using track_process prior to Linux 3.2
+ is safe so long as the monitored processes are known not to change
+ their process name.
+ - Stop configure failing when nftables is not supported.
+ - Streamline socket use with linkbeat.
+ Previously the socket used for ioctls was opened and closed twice per
+ poll if using MII or ETHTOOL polling, and once per poll if using ioctl
+ polling. This commit opens the socket once at startup, uses that socket
+ for all linkbeat polls, and closes it on termination.
+ - Enable linkbeat polling to work with dynamic interfaces.
+ - Add linkbeat_interfaces configuration block
+ It was not possible to indicate that an interface that wasn't used
+ as the interface of a vrrp instance, but was used either as a track
+ interface, or for virtual/static ip addresses or routes should use
+ linkbeat. This commit adds that capability.
+ - Add ability to specify linkbeat type in linkbeat_interfaces block.
+ - Add --disable-linkbeat configure option
+ Does anyone use linkbeat anymore? This commit enables keepalived to
+ be build without the linkbeat code.
+ - Don't remove link local IPv6 address from VMAC that isn't keepalived's
+ If IFLA_INET6_ADDR_GEN_MODE isn't supported and a macvlan interface
+ already had a (non-default) link local addresss and the link local
+ address that matched the interface's MAC address was added, keepalived
+ was removing it as soon as it was added. This commit stop keepalived
+ removing the address when we shouldn't.
+ - Set configure init type correctly in keepalived.spec file.
+ - Fix handling of VMACs with multiple reloads
+ If a configuration is loaded that has a VRRP instance using a VMAC,
+ then the configuration is updated to remove that VRRP instance and
+ keepalived reloads its configuration, then the configuration is
+ updated again to reinstate the VRRP instance and the configuration
+ is again reloaded, keepalived thought the VMAC interface still
+ existed, whereas it was deleted following the first reload.
+ This commit ensures that keepalived properly detects whether an
+ interface exists following a reload.
+ - Remember more than one interface local address per interface
+ Keepalived needs a local address for each interface it sends adverts
+ on. If the address keepalived is using is deleted and another address
+ is configured on the interface, then keepalived should start using
+ that address. To do this, a list of configured address on each
+ interfaces needs to be maintained.
+ - Don't consider VIPs as local addresses when restart after crash
+ Keepalived maintains a list of addresses per interface that can be
+ used as source adddresses for adverts. To build the list, keepalived
+ reads the addresses configured on interfaces when it starts. However,
+ if keepalived crashed it will have left VIPs configured on interfaces,
+ and we don't want to use them as advert source addresses.
+ This commit makes keepalived compare the addresses on interfaces
+ to VIPs, and ignores any addresses that are VIPs.
+ - Fix removing left over VIPs at startup.
+ - Use read_timer() when parsing config where appropriate.
+ - Allow fractional warmup, delay_loop and delay_before_retry for checkers
+ To shorten the real server monitoring interval, make it possible to specify
+ decimal value for following items:
+ warmup
+ delay_loop
+ delay_before_retry
+ - Update connect_timeout configuration options
+ Based on the patch submitted by tamu.0.0.tamu@gmail.com this patch
+ allows setting the connect_timeout to a resolution of micro-seconds.
+ The patch also adds the ability to set a default value at the virtual
+ server and real server levels.
+ - Fix unused variable warning when building only with RFC compliant
+ SNMP.
+ - It enable to set zero value as mintime for delay_loop and connect_timeout.
+ - Add option not to check for EINTR if using signalfd()
+ If keepalived is using signalfd(), there are no asynchronous signal
+ handlers, and therefore EINTR cannot be returned.
+ Currently the check for EINTR is enabled by default, and configure
+ option --disable-eintr-debug disables the check, while
+ --enable-eintr-debug enables writing log entries if EINTR is returned.
+ Once sufficient testing has been performed, the default will be
+ changed not to test for EINTR if signalfd() is supported.
+ - Make checking for EAGAIN/EWOULDBLOCK consistent
+ The code in some places checked errno for EAGAIN and EWOULDBLOCK
+ and in other places only checked EAGAIN. On Linux EAGAIN == EWOULDBLOCK,
+ so the check is not necessary, but EAGAIN is not guaranteed to be the
+ same value as EWOULDBLOCK, so define check_EAGAIN that only checks EAGAIN
+ if they are the same value, but checks both if they are different.
+ - Ensure default connection timeout for smtp checker hosts set.
+ - Set default connection timeout if no smtp check host specified.
+ - Fix min timer value, zero to 0.000001Sec.
+ - Add fixing min time for vs_co_timeout_handler() and rs_co_timeout_handler().
+ - Fix parameter of read_timer(), it treat Mintime and Maxtime as microseconds.
+ - vrrp: vrrp_dispatcher_read() performance extension
+ We took time with Quentin to simulate and rework this code. We introduced
+ 2 imbricated while loop:
+ (1) First one is catching recvfrom EINTR (this code trig
+ only on kernel older than 2.6.22 where signalfd was firstly introduced).
+ Newer kernel will immediately break the loop (hey guys: if you are running
+ older than 2.6.22 it is worth considering upgrading).
+ (2) Second loop will continue reading from socket until same VRID advert
+ has been received during the same cycle. After simulating, it appears that
+ during contention with a lot of VRRP instances (around 1500), this design
+ is needed to relax socket recvq from growing. This can be viewed as a
+ Poll-Mode activation during contention and fallback to regular I/O MUX
+ during normal operations. This loop breaks immediately and re-submit
+ opration to I/O MUX when there is no more to be read.
+ - Fix conversion from long for double in read_timer().
+ - Remove variable timer of unsigned long cast in read_timer().
+ When Double type variable timer is cast to long type, it's scale falls.
+- changes from2.0.12
+ - Documentation related.
+ Remove keepalived.conf.SYNOPSIS content to make a pointer to manpage.
+ Update README manifest to reflect actual Keepalived goal and features.
+ - Improve error message if process events connector not enabled in
+ kernel.
+ - Add option to disable track-process functionality
+ Issue #1099 reported that their kernel did not support the proc events
+ connector, and it would therefore be helpful to have an option to build
+ keepalived without the track-process functionality.
+ This commit adds the --disable-track-process configure option.
+ - Fix vrrp instances going to fault state when have virtual routes
+ If an interface going down caused a vrrp instance to go to fault
+ state, and the vrrp instance also had virtual routes, the state
+ of the vrrp instance would be set to backup when the deletion of
+ the virtual route was detected. This commit ensures that the vrrp
+ instance stays in fault state until the interface is brought up
+ again.
+ - Remove Red Hat Linux 9 and RH Enterprise Linux 3 from spec file.
+ Red Hat Linux 9 and Red Hat Enterprise Linux 3 are both based on
+ Linux 2.4, which is no longer supported by keepalived. The options
+ in the spec file for Reh Hat Linux 9 have twice caused people to
+ specify wrong options to configure when trying to build keepalived,
+ so the options are removed to i) avoid confusion and ii) they are
+ not longer relevant.
+ - Add global option vrrp_min_garp.
+ By default keepalived sends 5 gratuitous ARP/NA messages after
+ transitioning to master, and 5 more 5 seconds later. This isn't
+ necessary with modern switches, and so if the vrrp_min_garp option
+ is set, only one gratuitious ARP/NA message is sent after transition
+ to master, and no repeat messages are sent 4 seconds later.
+ - Standardise definition of _INCLUDE_UNUSED_CODE_
+ - Remove out of date comment re VRRP over IPv6.
+ - Correct typo in keepalived.conf.5.
+ - Directly use structure sizes for packet header lengths.
+ - vrrp_state_fault_rx() is not used.
+ Wrap the function in conditional compilation so it is not compiled
+ - Convert so list loops to use LIST_FOREACH.
+ - Don't recalculate vrrp packet header address.
+ vrrp_get_header() calculates the address of the vrrp header in a
+ received packet, but it was being recalculated in vrrp_in_chk().
+ This commit passes the already calculated address to vrrp_in_chk().
+ - Ensure a received packet has an AH header if and only if AH auth.
+ Ensure that a received packet has an AH header if we expect AH
+ authentication, and doesn't have an AH header if we don't expect
+ AH authentication.
+ - Ensure all protocol headers received before return pointer to vrrp header
+ vrrp_get_header() returns a pointer to the vrrp header, but it now returns
++++ 65 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/keepalived/keepalived.changes
++++ and /work/SRC/openSUSE:Factory/.keepalived.new.25356/keepalived.changes
Old:
----
keepalived-2.0.11.tar.gz
New:
----
keepalived-2.0.13.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ keepalived.spec ++++++
--- /var/tmp/diff_new_pack.iHCUlr/_old 2019-03-22 15:08:26.341438898 +0100
+++ /var/tmp/diff_new_pack.iHCUlr/_new 2019-03-22 15:08:26.345438895 +0100
@@ -43,7 +43,7 @@
%bcond_without json
Name: keepalived
-Version: 2.0.11
+Version: 2.0.13
Release: 0
Summary: A keepalive facility for Linux
License: GPL-2.0-or-later
++++++ keepalived-2.0.11.tar.gz -> keepalived-2.0.13.tar.gz ++++++
++++ 8288 lines of diff (skipped)