Hello community, here is the log from the commit of package wicked for openSUSE:Factory checked in at 2014-12-21 12:02:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/wicked (Old) and /work/SRC/openSUSE:Factory/.wicked.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wicked" Changes: -------- --- /work/SRC/openSUSE:Factory/wicked/wicked.changes 2014-12-10 23:45:50.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.wicked.new/wicked.changes 2014-12-21 12:00:58.000000000 +0100 @@ -1,0 +2,8 @@ +Fri Dec 19 11:53:58 UTC 2014 - [email protected] + +- version 0.6.14 +- client: fixed segfault in status (bsc#908554) +- bonding: add new/missed bonding options (bsc#905750) +- systemd: service ordering dependencies (bsc#895600,bsc#901337) + +------------------------------------------------------------------- Old: ---- wicked-0.6.13.tar.bz2 New: ---- wicked-0.6.14.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ wicked.spec ++++++ --- /var/tmp/diff_new_pack.ZEDKog/_old 2014-12-21 12:01:01.000000000 +0100 +++ /var/tmp/diff_new_pack.ZEDKog/_new 2014-12-21 12:01:01.000000000 +0100 @@ -18,7 +18,7 @@ %define release_prefix %{?snapshot:%{snapshot}}%{!?snapshot:0} Name: wicked -Version: 0.6.13 +Version: 0.6.14 Release: %{release_prefix}.0.0 Summary: Network configuration infrastructure License: GPL-2.0 ++++++ wicked-0.6.13.tar.bz2 -> wicked-0.6.14.tar.bz2 ++++++ ++++ 1913 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/ChangeLog new/wicked-0.6.14/ChangeLog --- old/wicked-0.6.13/ChangeLog 2014-12-08 19:14:09.000000000 +0100 +++ new/wicked-0.6.14/ChangeLog 2014-12-19 12:54:50.000000000 +0100 @@ -1,3 +1,57 @@ +commit 0b38f4570de5c53d384399273e45cd503e450d20 +Author: Marius Tomaschewski <[email protected]> +Date: Fri Dec 19 12:51:09 2014 +0100 + + version 0.6.14 + +commit 241ac35bf10005461a0fe7bb63bd7c194a570f2e +Author: Karol Mroz <[email protected]> +Date: Tue Dec 16 11:12:48 2014 -0800 + + gitignore: ignore cscope files + +commit bcdfdeb8b4506ea786780f6cc60f8d7f7f5f3e95 +Author: Marius Tomaschewski <[email protected]> +Date: Tue Dec 16 12:43:41 2014 +0100 + + client: fixed segfault in status (bsc#908554) + +commit 9638e947f287daa1d728abef2a7002f6df88f027 +Author: Marius Tomaschewski <[email protected]> +Date: Fri Dec 12 12:33:44 2014 +0100 + + service: removed automatically resolved targets (bsc#895600) + + Removed unneeded shutdown.target and multi-user.target, which + are added by systemd automatically as needed. + +commit 39083ee6c644b6790ce6d98223afde485d21bf55 +Author: Marius Tomaschewski <[email protected]> +Date: Fri Dec 12 12:30:19 2014 +0100 + + service: no Before=SuSEfirewall2 in wicked (bsc#895600) + + Removed unneeded Before=SuSEfirewall2.service ordering dependency. + +commit bb71b3fe971c788492b4442573a330a5570592dd +Author: Marius Tomaschewski <[email protected]> +Date: Fri Dec 12 12:29:35 2014 +0100 + + service: added After=network-pre in wicked (bsc#901337) + + Added After=network-pre.target ordering dependency for services + which want to run before network is set up, e.g. firewall init. + +commit 94d7f3e608f610f0fc799f6ae663cdf2264e85c7 +Author: Marius Tomaschewski <[email protected]> +Date: Wed Dec 10 10:29:33 2014 +0100 + + bonding: add new/missed bonding options (bsc#905750) + + Added arp validate filter, filter_active, filter_backup option + values and new arp validate any/all targets, packets-per-slave, + lp-interval and tlb-dynamic-lb options. + commit 1283b8bbbdc4c1713ff8575260db507dfbcfb39f Author: Marius Tomaschewski <[email protected]> Date: Mon Dec 8 19:10:33 2014 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/VERSION new/wicked-0.6.14/VERSION --- old/wicked-0.6.13/VERSION 2014-12-08 19:09:56.000000000 +0100 +++ new/wicked-0.6.14/VERSION 2014-12-19 12:50:48.000000000 +0100 @@ -1 +1 @@ -0.6.13 +0.6.14 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/client/compat.c new/wicked-0.6.14/client/compat.c --- old/wicked-0.6.13/client/compat.c 2014-11-24 12:39:58.000000000 +0100 +++ new/wicked-0.6.14/client/compat.c 2014-12-15 08:44:50.000000000 +0100 @@ -351,7 +351,10 @@ ni_sprint_uint(bond->arpmon.interval)); xml_node_new_element("validate", arpmon, ni_bonding_arp_validate_type_to_name(bond->arpmon.validate)); - + if (bond->arpmon.validate != NI_BOND_ARP_VALIDATE_NONE) { + xml_node_new_element("validate-targets", arpmon, + ni_bonding_arp_validate_targets_to_name(bond->arpmon.validate_targets)); + } targets = xml_node_create(arpmon, "targets"); for (i = 0; i < bond->arpmon.targets.count; ++i) { xml_node_new_element("ipv4-address", targets, @@ -405,6 +408,19 @@ xml_node_new_element("xmit-hash-policy", child, ni_bonding_xmit_hash_policy_to_name(bond->xmit_hash_policy)); } + break; + case NI_BOND_MODE_BALANCE_RR: + if (verbose || bond->packets_per_slave != 1) { + xml_node_new_element("packets-per-slave", child, + ni_sprint_uint(bond->packets_per_slave)); + } + break; + case NI_BOND_MODE_BALANCE_TLB: + if (verbose || !bond->tlb_dynamic_lb) { + xml_node_new_element("tlb-dynamic-lb", child, + (bond->tlb_dynamic_lb ? "true" : "false")); + } + break; default: break; } @@ -444,6 +460,18 @@ } switch (bond->mode) { + case NI_BOND_MODE_BALANCE_TLB: + case NI_BOND_MODE_BALANCE_ALB: + if (verbose || bond->lp_interval != 1) { + xml_node_new_element("lp-interval", child, + ni_sprint_uint(bond->lp_interval)); + } + break; + default: + break; + } + + switch (bond->mode) { case NI_BOND_MODE_ACTIVE_BACKUP: case NI_BOND_MODE_BALANCE_RR: case NI_BOND_MODE_BALANCE_TLB: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/client/ifstatus.c new/wicked-0.6.14/client/ifstatus.c --- old/wicked-0.6.13/client/ifstatus.c 2014-10-10 15:10:35.000000000 +0200 +++ new/wicked-0.6.14/client/ifstatus.c 2014-12-18 14:11:47.000000000 +0100 @@ -121,6 +121,9 @@ return NULL; } + if (!other) + return NULL; + if (!ni_addrconf_flag_bit_is_set(other->flags, NI_ADDRCONF_FLAGS_GROUP)) return NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/compile new/wicked-0.6.14/compile --- old/wicked-0.6.13/compile 1970-01-01 01:00:00.000000000 +0100 +++ new/wicked-0.6.14/compile 2014-12-19 12:53:33.000000000 +0100 @@ -0,0 +1,347 @@ +#! /bin/sh +# Wrapper for compilers which do not understand '-c -o'. + +scriptversion=2012-10-14.11; # UTC + +# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Written by Tom Tromey <[email protected]>. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to <[email protected]> or send patches to +# <[email protected]>. + +nl=' +' + +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent tools from complaining about whitespace usage. +IFS=" "" $nl" + +file_conv= + +# func_file_conv build_file lazy +# Convert a $build file to $host form and store it in $file +# Currently only supports Windows hosts. If the determined conversion +# type is listed in (the comma separated) LAZY, no conversion will +# take place. +func_file_conv () +{ + file=$1 + case $file in + / | /[!/]*) # absolute file, and not a UNC file + if test -z "$file_conv"; then + # lazily determine how to convert abs files + case `uname -s` in + MINGW*) + file_conv=mingw + ;; + CYGWIN*) + file_conv=cygwin + ;; + *) + file_conv=wine + ;; + esac + fi + case $file_conv/,$2, in + *,$file_conv,*) + ;; + mingw/*) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; + cygwin/*) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine/*) + file=`winepath -w "$file" || echo "$file"` + ;; + esac + ;; + esac +} + +# func_cl_dashL linkdir +# Make cl look for libraries in LINKDIR +func_cl_dashL () +{ + func_file_conv "$1" + if test -z "$lib_path"; then + lib_path=$file + else + lib_path="$lib_path;$file" + fi + linker_opts="$linker_opts -LIBPATH:$file" +} + +# func_cl_dashl library +# Do a library search-path lookup for cl +func_cl_dashl () +{ + lib=$1 + found=no + save_IFS=$IFS + IFS=';' + for dir in $lib_path $LIB + do + IFS=$save_IFS + if $shared && test -f "$dir/$lib.dll.lib"; then + found=yes + lib=$dir/$lib.dll.lib + break + fi + if test -f "$dir/$lib.lib"; then + found=yes + lib=$dir/$lib.lib + break + fi + if test -f "$dir/lib$lib.a"; then + found=yes + lib=$dir/lib$lib.a + break + fi + done + IFS=$save_IFS + + if test "$found" != yes; then + lib=$lib.lib + fi +} + +# func_cl_wrapper cl arg... +# Adjust compile command to suit cl +func_cl_wrapper () +{ + # Assume a capable shell + lib_path= + shared=: + linker_opts= + for arg + do + if test -n "$eat"; then + eat= + else + case $1 in + -o) + # configure might choose to run compile as 'compile cc -o foo foo.c'. + eat=1 + case $2 in + *.o | *.[oO][bB][jJ]) + func_file_conv "$2" + set x "$@" -Fo"$file" + shift + ;; + *) + func_file_conv "$2" + set x "$@" -Fe"$file" + shift + ;; + esac + ;; + -I) + eat=1 + func_file_conv "$2" mingw + set x "$@" -I"$file" + shift + ;; + -I*) + func_file_conv "${1#-I}" mingw + set x "$@" -I"$file" + shift + ;; + -l) + eat=1 + func_cl_dashl "$2" + set x "$@" "$lib" + shift + ;; + -l*) + func_cl_dashl "${1#-l}" + set x "$@" "$lib" + shift + ;; + -L) + eat=1 + func_cl_dashL "$2" + ;; + -L*) + func_cl_dashL "${1#-L}" + ;; + -static) + shared=false + ;; + -Wl,*) + arg=${1#-Wl,} + save_ifs="$IFS"; IFS=',' + for flag in $arg; do + IFS="$save_ifs" + linker_opts="$linker_opts $flag" + done + IFS="$save_ifs" + ;; + -Xlinker) + eat=1 + linker_opts="$linker_opts $2" + ;; + -*) + set x "$@" "$1" + shift + ;; + *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) + func_file_conv "$1" + set x "$@" -Tp"$file" + shift + ;; + *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) + func_file_conv "$1" mingw + set x "$@" "$file" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift + done + if test -n "$linker_opts"; then + linker_opts="-link$linker_opts" + fi + exec "$@" $linker_opts + exit 1 +} + +eat= + +case $1 in + '') + echo "$0: No command. Try '$0 --help' for more information." 1>&2 + exit 1; + ;; + -h | --h*) + cat <<\EOF +Usage: compile [--help] [--version] PROGRAM [ARGS] + +Wrapper for compilers which do not understand '-c -o'. +Remove '-o dest.o' from ARGS, run PROGRAM with the remaining +arguments, and rename the output as expected. + +If you are trying to build a whole package this is not the +right script to run: please start by reading the file 'INSTALL'. + +Report bugs to <[email protected]>. +EOF + exit $? + ;; + -v | --v*) + echo "compile $scriptversion" + exit $? + ;; + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + func_cl_wrapper "$@" # Doesn't return... + ;; +esac + +ofile= +cfile= + +for arg +do + if test -n "$eat"; then + eat= + else + case $1 in + -o) + # configure might choose to run compile as 'compile cc -o foo foo.c'. + # So we strip '-o arg' only if arg is an object. + eat=1 + case $2 in + *.o | *.obj) + ofile=$2 + ;; + *) + set x "$@" -o "$2" + shift + ;; + esac + ;; + *.c) + cfile=$1 + set x "$@" "$1" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift +done + +if test -z "$ofile" || test -z "$cfile"; then + # If no '-o' option was seen then we might have been invoked from a + # pattern rule where we don't need one. That is ok -- this is a + # normal compilation that the losing compiler can handle. If no + # '.c' file was seen then we are probably linking. That is also + # ok. + exec "$@" +fi + +# Name of file we expect compiler to create. +cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` + +# Create the lock directory. +# Note: use '[/\\:.-]' here to ensure that we don't use the same name +# that we are using for the .o file. Also, base the name on the expected +# object file name, since that is what matters with a parallel build. +lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d +while true; do + if mkdir "$lockdir" >/dev/null 2>&1; then + break + fi + sleep 1 +done +# FIXME: race condition here if user kills between mkdir and trap. +trap "rmdir '$lockdir'; exit 1" 1 2 15 + +# Run the compile. +"$@" +ret=$? + +if test -f "$cofile"; then + test "$cofile" = "$ofile" || mv "$cofile" "$ofile" +elif test -f "${cofile}bj"; then + test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" +fi + +rmdir "$lockdir" +exit $ret + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wicked.service.in new/wicked-0.6.14/etc/systemd/wicked.service.in --- old/wicked-0.6.13/etc/systemd/wicked.service.in 2014-09-09 14:42:59.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wicked.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,8 +1,8 @@ [Unit] Description=wicked managed network interfaces Wants=network.target -After=wickedd.service wickedd-nanny.service -Before=SuSEfirewall2.service network-online.target network.target multi-user.target shutdown.target +After=network-pre.target wickedd.service wickedd-nanny.service +Before=network-online.target network.target [Service] Type=oneshot diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wickedd-auto4.service.in new/wicked-0.6.14/etc/systemd/wickedd-auto4.service.in --- old/wicked-0.6.13/etc/systemd/wickedd-auto4.service.in 2014-06-27 16:47:32.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wickedd-auto4.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,7 +1,7 @@ [Unit] Description=wicked AutoIPv4 supplicant service After=local-fs.target dbus.service SuSEfirewall2_init.service -Before=wickedd.service wicked.service network.target multi-user.target shutdown.target +Before=wickedd.service wicked.service network.target PartOf=wickedd.service [Service] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wickedd-dhcp4.service.in new/wicked-0.6.14/etc/systemd/wickedd-dhcp4.service.in --- old/wicked-0.6.13/etc/systemd/wickedd-dhcp4.service.in 2014-06-27 16:47:32.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wickedd-dhcp4.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,7 +1,7 @@ [Unit] Description=wicked DHCPv4 supplicant service After=local-fs.target dbus.service SuSEfirewall2_init.service -Before=wickedd.service wicked.service network.target multi-user.target shutdown.target +Before=wickedd.service wicked.service network.target PartOf=wickedd.service [Service] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wickedd-dhcp6.service.in new/wicked-0.6.14/etc/systemd/wickedd-dhcp6.service.in --- old/wicked-0.6.13/etc/systemd/wickedd-dhcp6.service.in 2014-06-27 16:47:32.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wickedd-dhcp6.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,7 +1,7 @@ [Unit] Description=wicked DHCPv6 supplicant service After=local-fs.target dbus.service SuSEfirewall2_init.service -Before=wickedd.service wicked.service network.target multi-user.target shutdown.target +Before=wickedd.service wicked.service network.target PartOf=wickedd.service [Service] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wickedd-nanny.service.in new/wicked-0.6.14/etc/systemd/wickedd-nanny.service.in --- old/wicked-0.6.13/etc/systemd/wickedd-nanny.service.in 2014-06-27 16:47:32.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wickedd-nanny.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,7 +1,7 @@ [Unit] Description=wicked network nanny service After=local-fs.target dbus.service SuSEfirewall2_init.service wickedd.service -Before=wicked.service network.target multi-user.target shutdown.target +Before=wicked.service network.target PartOf=wickedd.service [Service] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/etc/systemd/wickedd.service.in new/wicked-0.6.14/etc/systemd/wickedd.service.in --- old/wicked-0.6.13/etc/systemd/wickedd.service.in 2014-09-25 10:01:18.000000000 +0200 +++ new/wicked-0.6.14/etc/systemd/wickedd.service.in 2014-12-15 08:44:50.000000000 +0100 @@ -1,7 +1,7 @@ [Unit] Description=wicked network management service daemon After=local-fs.target dbus.service isdn.service rdma.service SuSEfirewall2_init.service -Before=wicked.service network.target multi-user.target shutdown.target +Before=wicked.service network.target [Service] Type=dbus diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/include/wicked/bonding.h new/wicked-0.6.14/include/wicked/bonding.h --- old/wicked-0.6.13/include/wicked/bonding.h 2014-12-04 21:55:33.000000000 +0100 +++ new/wicked-0.6.14/include/wicked/bonding.h 2014-12-15 08:44:50.000000000 +0100 @@ -26,6 +26,13 @@ NI_BOND_ARP_VALIDATE_ACTIVE = 1, NI_BOND_ARP_VALIDATE_BACKUP = 2, NI_BOND_ARP_VALIDATE_ALL = 3, + NI_BOND_ARP_VALIDATE_FILTER = 4, + NI_BOND_ARP_VALIDATE_FILTER_ACTIVE = 5, + NI_BOND_ARP_VALIDATE_FILTER_BACKUP = 6, +}; +enum { + NI_BOND_ARP_VALIDATE_TARGETS_ANY = 0, + NI_BOND_ARP_VALIDATE_TARGETS_ALL = 1, }; enum { NI_BOND_MII_CARRIER_DETECT_IOCTL = 0, @@ -65,6 +72,7 @@ struct ni_bonding_arpmon { unsigned int interval; /* ms */ unsigned int validate; + unsigned int validate_targets; ni_string_array_t targets; } arpmon; struct ni_bonding_miimon { @@ -84,6 +92,9 @@ unsigned int fail_over_mac; unsigned int primary_reselect; ni_bool_t all_slaves_active; + unsigned int packets_per_slave; + ni_bool_t tlb_dynamic_lb; + unsigned int lp_interval; char * primary_slave; char * active_slave; @@ -116,6 +127,9 @@ extern const char * ni_bonding_arp_validate_type_to_name(unsigned int); extern int ni_bonding_arp_validate_name_to_type(const char *); +extern const char * ni_bonding_arp_validate_targets_to_name(unsigned int); +extern int ni_bonding_arp_validate_targets_to_type(const char *); + extern const char * ni_bonding_mii_carrier_detect_name(unsigned int); extern int ni_bonding_mii_carrier_detect_type(const char *); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/missing new/wicked-0.6.14/missing --- old/wicked-0.6.13/missing 2014-12-08 19:12:49.000000000 +0100 +++ new/wicked-0.6.14/missing 2014-12-19 12:53:33.000000000 +0100 @@ -1,7 +1,7 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2012-06-26.16; # UTC +scriptversion=2013-10-28.13; # UTC # Copyright (C) 1996-2013 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <[email protected]>, 1996. @@ -160,7 +160,7 @@ ;; autom4te*) echo "You might have modified some maintainer files that require" - echo "the 'automa4te' program to be rebuilt." + echo "the 'autom4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/schema/bonding.xml new/wicked-0.6.14/schema/bonding.xml --- old/wicked-0.6.13/schema/bonding.xml 2014-06-27 16:47:32.000000000 +0200 +++ new/wicked-0.6.14/schema/bonding.xml 2014-12-15 08:44:50.000000000 +0100 @@ -35,6 +35,10 @@ <arpmon class="dict"> <interval type="uint32" constraint="required" description="ARP link monitoring frequency in milliseconds." /> <validate type="builtin-bonding-arp-validate"/> + <validate-targets type="uint32" constraint="enum"> + <any value="0"/> + <all value="1"/> + </validate-targets> <!-- targets class="array" element-type="ipv4-address" minlen="1"/ --> <targets class="array" constraint="required" minlen="1" element-type="string" /> </arpmon> @@ -69,6 +73,15 @@ <min value="0"/> <max value="255"/> </resend-igmp> + <packets-per-slave type="uint32" constraint="range"> + <min value="0"/> + <max value="65535"/> + </packets-per-slave> + <tlb-dynamic-lb type="boolean"/> + <lp-interval type="uint32" constraint="range"> + <min value="1"/> + <max value="2147483647"/> + </lp-interval> </define> <define name="properties" type="device-info"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/src/bonding.c new/wicked-0.6.14/src/bonding.c --- old/wicked-0.6.13/src/bonding.c 2014-12-04 21:55:33.000000000 +0100 +++ new/wicked-0.6.14/src/bonding.c 2014-12-15 19:26:48.000000000 +0100 @@ -51,6 +51,14 @@ { "active", NI_BOND_ARP_VALIDATE_ACTIVE }, { "backup", NI_BOND_ARP_VALIDATE_BACKUP }, { "all", NI_BOND_ARP_VALIDATE_ALL }, + { "filter", NI_BOND_ARP_VALIDATE_FILTER }, + { "filter_active", NI_BOND_ARP_VALIDATE_FILTER_ACTIVE }, + { "filter_backup", NI_BOND_ARP_VALIDATE_FILTER_BACKUP }, + { NULL } +}; +static const ni_intmap_t __map_kern_arp_all_targets[] = { + { "any", NI_BOND_ARP_VALIDATE_TARGETS_ANY }, + { "all", NI_BOND_ARP_VALIDATE_TARGETS_ALL }, { NULL } }; static const ni_intmap_t __map_kern_xmit_hash_policy[] = { @@ -149,6 +157,9 @@ bonding->num_grat_arp = 1; bonding->num_unsol_na = 1; bonding->resend_igmp = 1; + bonding->packets_per_slave = 1; + bonding->tlb_dynamic_lb = TRUE; + bonding->lp_interval = 1; } /* @@ -243,6 +254,9 @@ case NI_BOND_ARP_VALIDATE_ACTIVE: case NI_BOND_ARP_VALIDATE_BACKUP: case NI_BOND_ARP_VALIDATE_ALL: + case NI_BOND_ARP_VALIDATE_FILTER: + case NI_BOND_ARP_VALIDATE_FILTER_ACTIVE: + case NI_BOND_ARP_VALIDATE_FILTER_BACKUP: if (bonding->mode == NI_BOND_MODE_ACTIVE_BACKUP) break; return "arp validate is valid in active-backup mode only"; @@ -407,6 +421,29 @@ if (bonding->all_slaves_active > 1) return "invalid all slaves active flag"; + if (bonding->mode == NI_BOND_MODE_BALANCE_RR) { + if (bonding->packets_per_slave > USHRT_MAX) + return "packets per slave not in range 0..65535"; + } else { + if (bonding->packets_per_slave != 1) + return "packets per slave is valid in balance-rr mode only"; + } + + switch (bonding->mode) { + case NI_BOND_MODE_BALANCE_TLB: + case NI_BOND_MODE_BALANCE_ALB: + if (!bonding->lp_interval || bonding->lp_interval > INT_MAX) + return "lp interval not in range 1 - 0x7fffffff"; + break; + default: + break; + } + + if (bonding->mode != NI_BOND_MODE_BALANCE_TLB) { + if (!bonding->tlb_dynamic_lb) + return "tlb dynamic lb 0 is valid in balance-tlb mode only"; + } + return NULL; } @@ -694,6 +731,22 @@ return value; } +const char * +ni_bonding_arp_validate_targets_to_name(unsigned int type) +{ + return ni_format_uint_mapped(type, __map_kern_arp_all_targets); +} + +int +ni_bonding_arp_validate_targets_to_type(const char *name) +{ + unsigned int value; + + if (ni_parse_uint_maybe_mapped(name, __map_kern_arp_all_targets, &value, 10) < 0) + return -1; + return value; +} + /* * Set one bonding module option/attribute */ @@ -771,10 +824,26 @@ if (ni_bonding_is_valid_arp_ip_target(s)) ni_string_array_append(&bonding->arpmon.targets, s); } + } else if (!strcmp(attr, "arp_all_targets")) { + value[strcspn(value, " \t\n")] = '\0'; + if (ni_parse_uint_mapped(value, __map_kern_arp_all_targets, + &bonding->arpmon.validate_targets) < 0) + return -1; } else if (!strcmp(attr, "primary")) { ni_string_dup(&bonding->primary_slave, value); } else if (!strcmp(attr, "active_slave")) { ni_string_dup(&bonding->active_slave, value); + } else if (!strcmp(attr, "packets_per_slave")) { + if (ni_parse_uint(value, &bonding->packets_per_slave, 10) < 0) + return -1; + } else if (!strcmp(attr, "tlb_dynamic_lb")) { + unsigned int tmp; + if (ni_parse_uint(value, &tmp, 10) < 0) + return -1; + bonding->tlb_dynamic_lb = !!tmp; + } else if (!strcmp(attr, "lp_interval")) { + if (ni_parse_uint(value, &bonding->lp_interval, 10) < 0) + return -1; } else { return -2; } @@ -846,6 +915,13 @@ if (bonding->monitoring != NI_BOND_MONITOR_ARP) return 0; snprintf(buffer, bufsize, "%u", bonding->arpmon.interval); + } else if (!strcmp(attr, "arp_all_targets")) { + if (bonding->monitoring != NI_BOND_MONITOR_ARP || + bonding->arpmon.validate == NI_BOND_ARP_VALIDATE_NONE) + return 0; + if (!(ptr = ni_bonding_arp_validate_targets_to_name(bonding->arpmon.validate_targets))) + return -1; + snprintf(buffer, bufsize, "%s", ptr); } else if (!strcmp(attr, "active_slave")) { if (!bonding->active_slave) return 0; @@ -854,6 +930,12 @@ if (!bonding->primary_slave) return 0; snprintf(buffer, bufsize, "%s", bonding->primary_slave); + } else if (!strcmp(attr, "packets_per_slave")) { + snprintf(buffer, bufsize, "%u", bonding->packets_per_slave); + } else if (!strcmp(attr, "tlb_dynamic_lb")) { + snprintf(buffer, bufsize, "%u", bonding->tlb_dynamic_lb ? 1 : 0); + } else if (!strcmp(attr, "lp_interval")) { + snprintf(buffer, bufsize, "%u", bonding->lp_interval); } else { return -1; } @@ -890,6 +972,10 @@ { "use_carrier", FALSE }, { "arp_validate", FALSE }, { "arp_interval", FALSE }, + { "arp_all_targets", TRUE }, + { "packets_per_slave", TRUE }, + { "tlb_dynamic_lb", TRUE }, + { "lp_interval", TRUE }, { NULL, FALSE }, }; char *attrval = NULL; @@ -1031,6 +1117,10 @@ { "arp_ip_target", 0, 0, TRUE, FALSE }, { "arp_interval", 0, 0, FALSE, FALSE }, { "arp_validate", 0, 0, FALSE, FALSE }, + { "arp_all_targets", 0, 0, FALSE, FALSE }, + { "packets_per_slave", 0, 0, FALSE, FALSE }, + { "tlb_dynamic_lb", 1, 1, FALSE, FALSE }, + { "lp_interval", 0, 0, FALSE, FALSE }, { NULL, 0, 0, FALSE, FALSE }, }; const struct attr_matrix *attrs; @@ -1244,14 +1334,47 @@ return TRUE; } else + if (strcmp(option, "arp_all_targets") == 0) { + if (ni_parse_uint_maybe_mapped(value, + __map_kern_arp_all_targets, &tmp, 10) != 0) + return FALSE; + + bond->arpmon.validate_targets = tmp; + return TRUE; + } else + if (strcmp(option, "primary") == 0) { ni_string_dup(&bond->primary_slave, value); return TRUE; - } + } else if (strcmp(option, "active_slave") == 0) { ni_string_dup(&bond->active_slave, value); return TRUE; + } else + + if (strcmp(option, "packets_per_slave") == 0) { + if (ni_parse_uint(value, &tmp, 10) < 0 || tmp > 65535) + return FALSE; + + bond->packets_per_slave = tmp; + return TRUE; + } else + + if (strcmp(option, "tlb_dynamic_lb") == 0) { + if (ni_parse_uint(value, &tmp, 10) < 0 || tmp > INT_MAX) + return FALSE; + + bond->tlb_dynamic_lb = tmp ? TRUE : FALSE; + return TRUE; + } else + + if (strcmp(option, "lp_interval") == 0) { + if (ni_parse_uint(value, &tmp, 10) < 0 || tmp > INT_MAX) + return FALSE; + + bond->lp_interval = tmp; + return TRUE; } return FALSE; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/src/dbus-objects/bonding.c new/wicked-0.6.14/src/dbus-objects/bonding.c --- old/wicked-0.6.13/src/dbus-objects/bonding.c 2014-09-09 14:42:59.000000000 +0200 +++ new/wicked-0.6.14/src/dbus-objects/bonding.c 2014-12-15 08:44:50.000000000 +0100 @@ -303,6 +303,7 @@ ni_dbus_dict_add_uint32(result, "interval", bond->arpmon.interval); ni_dbus_dict_add_uint32(result, "validate", bond->arpmon.validate); + ni_dbus_dict_add_uint32(result, "validate-targets", bond->arpmon.validate_targets); var = ni_dbus_dict_add(result, "targets"); ni_dbus_variant_set_string_array(var, (const char **) bond->arpmon.targets.data, @@ -326,6 +327,7 @@ ni_dbus_dict_get_uint32(result, "interval", &bond->arpmon.interval); ni_dbus_dict_get_uint32(result, "validate", &bond->arpmon.validate); + ni_dbus_dict_get_uint32(result, "validate_targets", &bond->arpmon.validate_targets); if ((var = ni_dbus_dict_get(result, "targets")) != NULL) { ni_bool_t valid = TRUE; unsigned int i; @@ -479,6 +481,9 @@ BONDING_UINT_PROPERTY(fail-over-mac, fail_over_mac, RO), BONDING_UINT_PROPERTY(primary-reselect, primary_reselect, RO), BONDING_BOOL_PROPERTY(all-slaves-active, all_slaves_active, RO), + BONDING_UINT_PROPERTY(packets-per-slave, packets_per_slave, RO), + BONDING_BOOL_PROPERTY(tlb-dynamic-lb, tlb_dynamic_lb, RO), + BONDING_UINT_PROPERTY(lp-interval, lp_interval, RO), __NI_DBUS_PROPERTY( DBUS_TYPE_ARRAY_AS_STRING NI_DBUS_DICT_SIGNATURE, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/wicked-0.6.13/wicked.spec new/wicked-0.6.14/wicked.spec --- old/wicked-0.6.13/wicked.spec 2014-12-08 19:12:55.000000000 +0100 +++ new/wicked-0.6.14/wicked.spec 2014-12-19 12:53:40.000000000 +0100 @@ -18,7 +18,7 @@ %define release_prefix %{?snapshot:%{snapshot}}%{!?snapshot:0} Name: wicked -Version: 0.6.13 +Version: 0.6.14 Release: %{release_prefix}.0.0 Summary: Network configuration infrastructure License: GPL-2.0 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
