Hello community, here is the log from the commit of package ethtool for openSUSE:Factory checked in at 2013-04-23 15:07:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ethtool (Old) and /work/SRC/openSUSE:Factory/.ethtool.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ethtool", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/ethtool/ethtool.changes 2012-12-19 10:53:49.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.ethtool.new/ethtool.changes 2013-04-23 15:08:00.000000000 +0200 @@ -1,0 +2,12 @@ +Mon Apr 22 20:05:30 UTC 2013 - [email protected] + +- Update to new upstream release 3.8 + * Feature: Allow setting destination MAC address in L3/L4 flow + spec rules (-N/-U option) + * Fix: Show full 64 bits of user-data (-n/-u option) + * Fix: Add version check for et131x regs (-d option) + * Doc: Improve description of -f, -t, -s, -N/-U, -W options in + man page + * Fix: Restore 20000baseKR2 cap display (no options) + +------------------------------------------------------------------- Old: ---- ethtool-3.7.tar.sign ethtool-3.7.tar.xz New: ---- ethtool-3.8.tar.sign ethtool-3.8.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ethtool.spec ++++++ --- /var/tmp/diff_new_pack.773kDY/_old 2013-04-23 15:08:02.000000000 +0200 +++ /var/tmp/diff_new_pack.773kDY/_new 2013-04-23 15:08:02.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package ethtool # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: ethtool -Version: 3.7 +Version: 3.8 Release: 0 Summary: Examine and Tune Ethernet-Based Network Interfaces License: GPL-2.0 ++++++ ethtool-3.7.tar.xz -> ethtool-3.8.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/INSTALL new/ethtool-3.8/INSTALL --- old/ethtool-3.7/INSTALL 2012-06-08 18:25:15.000000000 +0200 +++ new/ethtool-3.8/INSTALL 2013-02-28 15:57:52.000000000 +0100 @@ -1,8 +1,8 @@ Installation Instructions ************************* -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, -2006, 2007, 2008, 2009 Free Software Foundation, Inc. +Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation, +Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -226,6 +226,11 @@ and if that doesn't work, install pre-built binaries of GCC for HP-UX. + HP-UX `make' updates targets which have the same time stamps as +their prerequisites, which makes it generally unusable when shipped +generated files such as `configure' are involved. Use GNU `make' +instead. + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot parse its `<wchar.h>' header file. The option `-nodtk' can be used as a workaround. If GNU CC is not installed, it is therefore recommended diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/NEWS new/ethtool-3.8/NEWS --- old/ethtool-3.7/NEWS 2012-12-13 19:19:34.000000000 +0100 +++ new/ethtool-3.8/NEWS 2013-02-28 16:00:41.000000000 +0100 @@ -1,3 +1,12 @@ +Version 3.8 - February 28, 2013 + + * Feature: Allow setting destination MAC address in L3/L4 flow spec + rules (-N/-U option) + * Fix: Show full 64 bits of user-data (-n/-u option) + * Fix: Add version check for et131x regs (-d option) + * Doc: Improve description of -f, -t, -s, -N/-U, -W options in man page + * Fix: Restore 20000baseKR2 cap display (no options) + Version 3.7 - December 13, 2012 * Fix: Gracefully handle failure of register pretty-printer (-d option) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/compile new/ethtool-3.8/compile --- old/ethtool-3.7/compile 2012-06-08 18:25:15.000000000 +0200 +++ new/ethtool-3.8/compile 2013-02-28 15:57:52.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh -# Wrapper for compilers which do not understand `-c -o'. +# Wrapper for compilers which do not understand '-c -o'. -scriptversion=2009-10-06.20; # UTC +scriptversion=2012-03-05.13; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software -# Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free +# Software Foundation, Inc. # Written by Tom Tromey <[email protected]>. # # This program is free software; you can redistribute it and/or modify @@ -29,21 +29,219 @@ # 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 + 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 + 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 +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'. +right script to run: please start by reading the file 'INSTALL'. Report bugs to <[email protected]>. EOF @@ -53,11 +251,13 @@ echo "compile $scriptversion" exit $? ;; + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + func_cl_wrapper "$@" # Doesn't return... + ;; esac ofile= cfile= -eat= for arg do @@ -66,8 +266,8 @@ 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. + # 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) @@ -94,10 +294,10 @@ done if test -z "$ofile" || test -z "$cfile"; then - # If no `-o' option was seen then we might have been invoked from a + # 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 + # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi @@ -106,7 +306,7 @@ 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 +# 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 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/configure new/ethtool-3.8/configure --- old/ethtool-3.7/configure 2012-12-13 19:20:38.000000000 +0100 +++ new/ethtool-3.8/configure 2013-02-28 15:57:53.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for ethtool 3.7. +# Generated by GNU Autoconf 2.68 for ethtool 3.8. # # Report bugs to <[email protected]>. # @@ -560,8 +560,8 @@ # Identity of this package. PACKAGE_NAME='ethtool' PACKAGE_TARNAME='ethtool' -PACKAGE_VERSION='3.7' -PACKAGE_STRING='ethtool 3.7' +PACKAGE_VERSION='3.8' +PACKAGE_STRING='ethtool 3.8' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='' @@ -1247,7 +1247,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ethtool 3.7 to adapt to many kinds of systems. +\`configure' configures ethtool 3.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1313,7 +1313,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ethtool 3.7:";; + short | recursive ) echo "Configuration of ethtool 3.8:";; esac cat <<\_ACEOF @@ -1402,7 +1402,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ethtool configure 3.7 +ethtool configure 3.8 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -1771,7 +1771,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ethtool $as_me 3.7, which was +It was created by ethtool $as_me 3.8, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2588,7 +2588,7 @@ # Define the identity of the package. PACKAGE='ethtool' - VERSION='3.7' + VERSION='3.8' cat >>confdefs.h <<_ACEOF @@ -4907,7 +4907,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ethtool $as_me 3.7, which was +This file was extended by ethtool $as_me 3.8, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -4973,7 +4973,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ethtool config.status 3.7 +ethtool config.status 3.8 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/configure.ac new/ethtool-3.8/configure.ac --- old/ethtool-3.7/configure.ac 2012-12-13 19:20:29.000000000 +0100 +++ new/ethtool-3.8/configure.ac 2013-02-28 15:57:06.000000000 +0100 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT(ethtool, 3.7, [email protected]) +AC_INIT(ethtool, 3.8, [email protected]) AC_PREREQ(2.52) AC_CONFIG_SRCDIR([ethtool.c]) AM_INIT_AUTOMAKE([gnu]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/depcomp new/ethtool-3.8/depcomp --- old/ethtool-3.7/depcomp 2012-06-08 18:25:15.000000000 +0200 +++ new/ethtool-3.8/depcomp 2013-02-28 15:57:52.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2009-04-28.21; # UTC +scriptversion=2012-03-27.16; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free -# Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, +# 2011, 2012 Free Software Foundation, Inc. # 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 @@ -28,7 +28,7 @@ case $1 in '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 + echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) @@ -40,11 +40,11 @@ Environment variables: depmode Dependency tracking mode. - source Source file read by `PROGRAMS ARGS'. - object Object file output by `PROGRAMS ARGS'. + source Source file read by 'PROGRAMS ARGS'. + object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. - tmpdepfile Temporary file to use when outputing dependencies. + tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to <[email protected]>. @@ -57,6 +57,12 @@ ;; esac +# A tabulation character. +tab=' ' +# A newline character. +nl=' +' + if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 @@ -90,10 +96,24 @@ # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 - cygpath_u="sed s,\\\\\\\\,/,g" + cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi +if test "$depmode" = msvc7msys; then + # This is just like msvc7 but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvc7 +fi + +if test "$depmode" = xlc; then + # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. + gccflag=-qmakedep=gcc,-MF + depmode=gcc +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -148,20 +168,21 @@ ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. +## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory + tr ' ' "$nl" < "$tmpdepfile" | +## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as -## well. +## well. hp depmode also adds that space, but also prefixes the VPATH +## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ + | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; @@ -193,18 +214,15 @@ # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the + # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ + tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> "$depfile" + tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. - tr ' ' ' -' < "$tmpdepfile" \ + tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else @@ -216,10 +234,17 @@ rm -f "$tmpdepfile" ;; +xlc) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts `$object:' at the + # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` @@ -249,12 +274,11 @@ test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then - # Each line is of the form `foo.o: dependent.h'. + # Each line is of the form 'foo.o: dependent.h'. # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. + # '$object: dependent.h' and one to simply 'dependent.h:'. sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -265,23 +289,26 @@ ;; icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c + # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'. + # However on + # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h - # which is wrong. We want: + # which is wrong. We want # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : + # and will wrap long lines using '\': # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... - + # tcc 0.9.26 (FIXME still under development at the moment of writing) + # will emit a similar output, but also prepend the continuation lines + # with horizontal tabulation characters. "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : @@ -290,15 +317,21 @@ exit $stat fi rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. + # Each line is of the form 'foo.o: dependent.h', + # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" + # '$object: dependent.h' and one to simply 'dependent.h:'. + sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \ + < "$tmpdepfile" > "$depfile" + sed ' + s/[ '"$tab"'][ '"$tab"']*/ /g + s/^ *// + s/ *\\*$// + s/^[^:]*: *// + /^$/d + /:$/d + s/$/ :/ + ' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; @@ -334,7 +367,7 @@ done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" - # Add `dependent.h:' lines. + # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// @@ -349,9 +382,9 @@ tru64) # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. + # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. + # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= @@ -397,14 +430,59 @@ done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; +msvc7) + if test "$libtool" = yes; then + showIncludes=-Wc,-showIncludes + else + showIncludes=-showIncludes + fi + "$@" $showIncludes > "$tmpdepfile" + stat=$? + grep -v '^Note: including file: ' "$tmpdepfile" + if test "$stat" = 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # The first sed program below extracts the file names and escapes + # backslashes for cygpath. The second sed program outputs the file + # name when reading, but also accumulates all include files in the + # hold buffer in order to output them again at the end. This only + # works with sed implementations that can handle large buffers. + sed < "$tmpdepfile" -n ' +/^Note: including file: *\(.*\)/ { + s//\1/ + s/\\/\\\\/g + p +}' | $cygpath_u | sort -u | sed -n ' +s/ /\\ /g +s/\(.*\)/'"$tab"'\1 \\/p +s/.\(.*\) \\/\1:/ +H +$ { + s/.*/'"$tab"'/ + G + p +}' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvc7msys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. @@ -422,7 +500,7 @@ shift fi - # Remove `-o $object'. + # Remove '-o $object'. IFS=" " for arg do @@ -442,15 +520,14 @@ done test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' + # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. + # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ + tr ' ' "$nl" < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -503,9 +580,10 @@ touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ + # makedepend may prepend the VPATH from the source file name to the object. + # No need to regex-escape $object, excess matching of '.' is harmless. + sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" + sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" @@ -525,7 +603,7 @@ shift fi - # Remove `-o $object'. + # Remove '-o $object'. IFS=" " for arg do @@ -594,8 +672,8 @@ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" + echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/e100.c new/ethtool-3.8/e100.c --- old/ethtool-3.7/e100.c 2011-11-01 17:46:24.000000000 +0100 +++ new/ethtool-3.8/e100.c 2013-01-22 22:15:01.000000000 +0100 @@ -46,7 +46,7 @@ u32 reg; u16 scb_status, scb_cmd; - if(version != 1) + if (version != 1) return -1; reg = regs_buff[0]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/e1000.c new/ethtool-3.8/e1000.c --- old/ethtool-3.7/e1000.c 2011-11-01 17:46:24.000000000 +0100 +++ new/ethtool-3.8/e1000.c 2013-01-22 22:15:01.000000000 +0100 @@ -374,7 +374,7 @@ enum e1000_mac_type mac_type; u32 reg; - if(version != 1) + if (version != 1) return -1; mac_type = e1000_get_mac_type(hw_device_id, hw_revision_id); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/et131x.c new/ethtool-3.8/et131x.c --- old/ethtool-3.7/et131x.c 2012-11-08 20:13:02.000000000 +0100 +++ new/ethtool-3.8/et131x.c 2013-01-22 22:15:01.000000000 +0100 @@ -4,8 +4,12 @@ int et131x_dump_regs(struct ethtool_drvinfo *info, struct ethtool_regs *regs) { + u8 version = (u8)(regs->version >> 24); u32 *reg = (u32 *)regs->data; + if (version != 1) + return -1; + fprintf(stdout, "PHY Registers\n"); fprintf(stdout, "0x0, Basic Control Reg = 0x%04X\n", *reg++); fprintf(stdout, "0x1, Basic Status Reg = 0x%04X\n", *reg++); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/ethtool-copy.h new/ethtool-3.8/ethtool-copy.h --- old/ethtool-3.7/ethtool-copy.h 2012-09-06 20:05:38.000000000 +0200 +++ new/ethtool-3.8/ethtool-copy.h 2013-01-22 21:30:00.000000000 +0100 @@ -500,13 +500,26 @@ struct ethtool_ah_espip4_spec esp_ip4_spec; struct ethtool_usrip4_spec usr_ip4_spec; struct ethhdr ether_spec; - __u8 hdata[60]; + __u8 hdata[52]; }; +/** + * struct ethtool_flow_ext - additional RX flow fields + * @h_dest: destination MAC address + * @vlan_etype: VLAN EtherType + * @vlan_tci: VLAN tag control information + * @data: user defined data + * + * Note, @vlan_etype, @vlan_tci, and @data are only valid if %FLOW_EXT + * is set in &struct ethtool_rx_flow_spec @flow_type. + * @h_dest is valid if %FLOW_MAC_EXT is set. + */ struct ethtool_flow_ext { - __be16 vlan_etype; - __be16 vlan_tci; - __be32 data[2]; + __u8 padding[2]; + unsigned char h_dest[ETH_ALEN]; + __be16 vlan_etype; + __be16 vlan_tci; + __be32 data[2]; }; /** @@ -517,7 +530,8 @@ * @m_u: Masks for flow field bits to be matched * @m_ext: Masks for additional field bits to be matched * Note, all additional fields must be ignored unless @flow_type - * includes the %FLOW_EXT flag. + * includes the %FLOW_EXT or %FLOW_MAC_EXT flag + * (see &struct ethtool_flow_ext description). * @ring_cookie: RX ring/queue index to deliver to, or %RX_CLS_FLOW_DISC * if packets should be discarded * @location: Location of rule in the table. Locations must be @@ -1027,6 +1041,7 @@ #define ETHER_FLOW 0x12 /* spec only (ether_spec) */ /* Flag to enable additional fields in struct ethtool_rx_flow_spec */ #define FLOW_EXT 0x80000000 +#define FLOW_MAC_EXT 0x40000000 /* L3-L4 network traffic flow hash options */ #define RXH_L2DA (1 << 1) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/ethtool.8 new/ethtool-3.8/ethtool.8 --- old/ethtool-3.7/ethtool.8 2012-12-13 19:27:54.000000000 +0100 +++ new/ethtool-3.8/ethtool.8 2013-02-28 16:01:12.000000000 +0100 @@ -113,7 +113,7 @@ . hy \\n(HY .. . -.TH ETHTOOL 8 "December 2012" "Ethtool version 3.7" +.TH ETHTOOL 8 "December 2012" "Ethtool version 3.8" .SH NAME ethtool \- query or control network driver and hardware settings . @@ -226,7 +226,7 @@ .HP .B ethtool \-s .I devname -.BI speed \ N +.BN speed .B2 duplex half full .B4 port tp aui bnc mii fibre .B3 mdix auto on off @@ -251,7 +251,7 @@ .HP .B ethtool \-N|\-U|\-\-config\-nfc|\-\-config\-ntuple .I devname -.BR rx\-flow\-hash \ \*(FL \: \*(HO \ | +.BR rx\-flow\-hash \ \*(FL \ \: \*(HO \ | .br .B flow\-type \*(NC .RB [ src \ \*(MA\ [ m \ \*(MA]] @@ -268,6 +268,7 @@ .BM vlan\-etype .BM vlan .BM user\-def +.RB [ dst-mac \ \*(MA\ [ m \ \*(MA]] .BN action .BN loc .RB | @@ -280,8 +281,7 @@ .IR filename ] .HP .B ethtool\ \-W|\-\-set\-dump -.I devname -.BI \ N +.I devname N .HP .B ethtool \-T|\-\-show\-time\-stamping .I devname @@ -298,8 +298,7 @@ .RB ...\ ] .HP .B ethtool \-f|\-\-flash -.I devname -.RI FILE +.I devname file .RI [ N ] .HP .B ethtool \-l|\-\-show\-channels @@ -413,7 +412,6 @@ .I file is specified, then use contents of previous raw register dump, rather than reading from the device. - .TP .B \-e \-\-eeprom\-dump Retrieves and prints an EEPROM dump for the specified network device. @@ -496,14 +494,16 @@ .B \-t \-\-test Executes adapter selftest on the specified network device. Possible test modes are: .TP -.RI \*(SD -defines test type: .B offline -(default) means to perform full set of tests possibly causing normal operation interruption during the tests, +Perform full set of tests, possibly interrupting normal operation +during the tests, +.TP .B online -means to perform limited set of tests do not interrupting normal adapter operation, +Perform limited set of tests, not interrupting normal operation, +.TP .B external_lb -means to perform external-loopback test in addition to other offline tests. +Perform full set of tests, as for \fBoffline\fR, and additionally an +external-loopback test. .TP .B \-s \-\-change Allows changing some or all settings of the specified network device. @@ -675,9 +675,10 @@ esp4 IPSEC ESP over IPv4 .TE .PP -All fields below that include a mask option may either use "m" to -indicate a mask, or may use the full name of the field with a "-mask" -appended to indicate that this is the mask for a given field. +For all fields that allow both a value and a mask to be specified, the +mask may be specified immediately after the value using the \fBm\fR +keyword, or separately using the field name keyword with \fB-mask\fR +appended, e.g. \fBsrc-mask\fR. .PD .RE .TP @@ -707,7 +708,7 @@ Specify the value of the Type of Service field in the incoming packet to match along with an optional mask. Applies to all IPv4 based flow-types. .TP -.BI l4proto \ N \\fR\ [\\fPl4m \ N \\fR]\\fP +.BI l4proto \ N \\fR\ [\\fPm \ N \\fR]\\fP Includes the layer 4 protocol number and optional mask. Valid only for flow-type ip4. .TP @@ -739,6 +740,11 @@ .BI user\-def \ N \\fR\ [\\fPm \ N \\fR]\\fP Includes 64-bits of user-specific data and an optional mask. .TP +.BR dst-mac \ \*(MA\ [ m \ \*(MA] +Includes the destination MAC address, specified as 6 bytes in hexadecimal +separated by colons, along with an optional mask. +Valid for all IPv4 based flow-types. +.TP .BI action \ N Specifies the Rx queue to send packets to, or some other action. .TS @@ -786,13 +792,20 @@ receive queues according to the given weights. The sum of the weights must be non-zero and must not exceed the size of the indirection table. .TP -.B \-f \-\-flash \ FILE -Flash firmware image from the specified file to a region on the adapter. -By default this will flash all the regions on the adapter. +.B \-f \-\-flash +Write a firmware image to flash or other non-volatile memory on the +device. .TP -.B N -A number to identify flash region where the image should be flashed. -Default region is 0 which denotes all regions in the flash. +.I file +Specifies the filename of the firmware image. The firmware must first +be installed in one of the directories where the kernel firmware +loader or firmware agent will look, such as /lib/firmware. +.TP +.I N +If the device stores multiple firmware images in separate regions of +non-volatile memory, this parameter may be used to specify which +region is to be written. The default is 0, requesting that all +regions are written. All other values are driver-dependent. .PD .RE .TP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/ethtool.8.in new/ethtool-3.8/ethtool.8.in --- old/ethtool-3.7/ethtool.8.in 2012-12-13 19:26:25.000000000 +0100 +++ new/ethtool-3.8/ethtool.8.in 2013-02-07 23:17:26.000000000 +0100 @@ -226,7 +226,7 @@ .HP .B ethtool \-s .I devname -.BI speed \ N +.BN speed .B2 duplex half full .B4 port tp aui bnc mii fibre .B3 mdix auto on off @@ -251,7 +251,7 @@ .HP .B ethtool \-N|\-U|\-\-config\-nfc|\-\-config\-ntuple .I devname -.BR rx\-flow\-hash \ \*(FL \: \*(HO \ | +.BR rx\-flow\-hash \ \*(FL \ \: \*(HO \ | .br .B flow\-type \*(NC .RB [ src \ \*(MA\ [ m \ \*(MA]] @@ -268,6 +268,7 @@ .BM vlan\-etype .BM vlan .BM user\-def +.RB [ dst-mac \ \*(MA\ [ m \ \*(MA]] .BN action .BN loc .RB | @@ -280,8 +281,7 @@ .IR filename ] .HP .B ethtool\ \-W|\-\-set\-dump -.I devname -.BI \ N +.I devname N .HP .B ethtool \-T|\-\-show\-time\-stamping .I devname @@ -298,8 +298,7 @@ .RB ...\ ] .HP .B ethtool \-f|\-\-flash -.I devname -.RI FILE +.I devname file .RI [ N ] .HP .B ethtool \-l|\-\-show\-channels @@ -413,7 +412,6 @@ .I file is specified, then use contents of previous raw register dump, rather than reading from the device. - .TP .B \-e \-\-eeprom\-dump Retrieves and prints an EEPROM dump for the specified network device. @@ -496,14 +494,16 @@ .B \-t \-\-test Executes adapter selftest on the specified network device. Possible test modes are: .TP -.RI \*(SD -defines test type: .B offline -(default) means to perform full set of tests possibly causing normal operation interruption during the tests, +Perform full set of tests, possibly interrupting normal operation +during the tests, +.TP .B online -means to perform limited set of tests do not interrupting normal adapter operation, +Perform limited set of tests, not interrupting normal operation, +.TP .B external_lb -means to perform external-loopback test in addition to other offline tests. +Perform full set of tests, as for \fBoffline\fR, and additionally an +external-loopback test. .TP .B \-s \-\-change Allows changing some or all settings of the specified network device. @@ -675,9 +675,10 @@ esp4 IPSEC ESP over IPv4 .TE .PP -All fields below that include a mask option may either use "m" to -indicate a mask, or may use the full name of the field with a "-mask" -appended to indicate that this is the mask for a given field. +For all fields that allow both a value and a mask to be specified, the +mask may be specified immediately after the value using the \fBm\fR +keyword, or separately using the field name keyword with \fB-mask\fR +appended, e.g. \fBsrc-mask\fR. .PD .RE .TP @@ -707,7 +708,7 @@ Specify the value of the Type of Service field in the incoming packet to match along with an optional mask. Applies to all IPv4 based flow-types. .TP -.BI l4proto \ N \\fR\ [\\fPl4m \ N \\fR]\\fP +.BI l4proto \ N \\fR\ [\\fPm \ N \\fR]\\fP Includes the layer 4 protocol number and optional mask. Valid only for flow-type ip4. .TP @@ -739,6 +740,11 @@ .BI user\-def \ N \\fR\ [\\fPm \ N \\fR]\\fP Includes 64-bits of user-specific data and an optional mask. .TP +.BR dst-mac \ \*(MA\ [ m \ \*(MA] +Includes the destination MAC address, specified as 6 bytes in hexadecimal +separated by colons, along with an optional mask. +Valid for all IPv4 based flow-types. +.TP .BI action \ N Specifies the Rx queue to send packets to, or some other action. .TS @@ -786,13 +792,20 @@ receive queues according to the given weights. The sum of the weights must be non-zero and must not exceed the size of the indirection table. .TP -.B \-f \-\-flash \ FILE -Flash firmware image from the specified file to a region on the adapter. -By default this will flash all the regions on the adapter. +.B \-f \-\-flash +Write a firmware image to flash or other non-volatile memory on the +device. .TP -.B N -A number to identify flash region where the image should be flashed. -Default region is 0 which denotes all regions in the flash. +.I file +Specifies the filename of the firmware image. The firmware must first +be installed in one of the directories where the kernel firmware +loader or firmware agent will look, such as /lib/firmware. +.TP +.I N +If the device stores multiple firmware images in separate regions of +non-volatile memory, this parameter may be used to specify which +region is to be written. The default is 0, requesting that all +regions are written. All other values are driver-dependent. .PD .RE .TP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/ethtool.c new/ethtool-3.8/ethtool.c --- old/ethtool-3.7/ethtool.c 2012-12-03 17:54:25.000000000 +0100 +++ new/ethtool-3.8/ethtool.c 2013-02-28 15:52:03.000000000 +0100 @@ -513,6 +513,7 @@ { 0, ADVERTISED_10000baseT_Full, "10000baseT/Full" }, { 0, ADVERTISED_10000baseKX4_Full, "10000baseKX4/Full" }, { 0, ADVERTISED_20000baseMLD2_Full, "20000baseMLD2/Full" }, + { 0, ADVERTISED_20000baseKR2_Full, "20000baseKR2/Full" }, { 0, ADVERTISED_40000baseKR4_Full, "40000baseKR4/Full" }, { 0, ADVERTISED_40000baseCR4_Full, "40000baseCR4/Full" }, { 0, ADVERTISED_40000baseSR4_Full, "40000baseSR4/Full" }, @@ -3231,6 +3232,10 @@ if (fsp->location != RX_CLS_LOC_ANY) return -1; + /* destination MAC address in L3/L4 rules is not supported by ntuple */ + if (fsp->flow_type & FLOW_MAC_EXT) + return -1; + /* verify ring cookie can transfer to action */ if (fsp->ring_cookie > INT_MAX && fsp->ring_cookie < (u64)(-2)) return -1; @@ -3814,6 +3819,7 @@ " [ vlan-etype %x [m %x] ]\n" " [ vlan %x [m %x] ]\n" " [ user-def %x [m %x] ]\n" + " [ dst-mac %x:%x:%x:%x:%x:%x [m %x:%x:%x:%x:%x:%x] ]\n" " [ action %d ]\n" " [ loc %d]] |\n" " delete %d\n" }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/ethtool.spec new/ethtool-3.8/ethtool.spec --- old/ethtool-3.7/ethtool.spec 2012-12-13 19:27:58.000000000 +0100 +++ new/ethtool-3.8/ethtool.spec 2013-02-28 16:01:12.000000000 +0100 @@ -1,5 +1,5 @@ Name : ethtool -Version : 3.7 +Version : 3.8 Release : 1 Group : Utilities diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/install-sh new/ethtool-3.8/install-sh --- old/ethtool-3.7/install-sh 2012-06-08 18:25:15.000000000 +0200 +++ new/ethtool-3.8/install-sh 2013-02-28 15:57:52.000000000 +0100 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2009-04-28.21; # UTC +scriptversion=2011-01-19.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -156,6 +156,10 @@ -s) stripcmd=$stripprog;; -t) dst_arg=$2 + # Protect names problematic for `test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac shift;; -T) no_target_directory=true;; @@ -186,6 +190,10 @@ fi shift # arg dst_arg=$arg + # Protect names problematic for `test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac done fi @@ -200,7 +208,11 @@ fi if test -z "$dir_arg"; then - trap '(exit $?); exit' 1 2 13 15 + do_exit='(exit $ret); exit $ret' + trap "ret=129; $do_exit" 1 + trap "ret=130; $do_exit" 2 + trap "ret=141; $do_exit" 13 + trap "ret=143; $do_exit" 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. @@ -228,9 +240,9 @@ for src do - # Protect names starting with `-'. + # Protect names problematic for `test' and other utilities. case $src in - -*) src=./$src;; + -* | [=\(\)!]) src=./$src;; esac if test -n "$dir_arg"; then @@ -252,12 +264,7 @@ echo "$0: no destination specified." >&2 exit 1 fi - dst=$dst_arg - # Protect names starting with `-'. - case $dst in - -*) dst=./$dst;; - esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. @@ -385,7 +392,7 @@ case $dstdir in /*) prefix='/';; - -*) prefix='./';; + [-=\(\)!]*) prefix='./';; *) prefix='';; esac @@ -403,7 +410,7 @@ for d do - test -z "$d" && continue + test X"$d" = X && continue prefix=$prefix$d if test -d "$prefix"; then diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/missing new/ethtool-3.8/missing --- old/ethtool-3.7/missing 2012-06-08 18:25:15.000000000 +0200 +++ new/ethtool-3.8/missing 2013-02-28 15:57:52.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2009-04-28.21; # UTC +scriptversion=2012-01-06.13; # UTC # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, -# 2008, 2009 Free Software Foundation, Inc. +# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. # Originally by Fran,cois Pinard <[email protected]>, 1996. # This program is free software; you can redistribute it and/or modify @@ -84,7 +84,6 @@ help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file - tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and @@ -122,15 +121,6 @@ # Not GNU programs, they don't have --version. ;; - tar*) - if test -n "$run"; then - echo 1>&2 "ERROR: \`tar' requires --run" - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - exit 1 - fi - ;; - *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. @@ -226,7 +216,7 @@ \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if test $# -ne 1; then - eval LASTARG="\${$#}" + eval LASTARG=\${$#} case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` @@ -256,7 +246,7 @@ \`Flex' from any GNU archive site." rm -f lex.yy.c if test $# -ne 1; then - eval LASTARG="\${$#}" + eval LASTARG=\${$#} case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` @@ -318,41 +308,6 @@ touch $file ;; - tar*) - shift - - # We have already tried tar in the generic part. - # Look for gnutar/gtar before invocation to avoid ugly error - # messages. - if (gnutar --version > /dev/null 2>&1); then - gnutar "$@" && exit 0 - fi - if (gtar --version > /dev/null 2>&1); then - gtar "$@" && exit 0 - fi - firstarg="$1" - if shift; then - case $firstarg in - *o*) - firstarg=`echo "$firstarg" | sed s/o//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - case $firstarg in - *h*) - firstarg=`echo "$firstarg" | sed s/h//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - fi - - echo 1>&2 "\ -WARNING: I can't seem to be able to run \`tar' with the given arguments. - You may want to install GNU tar or Free paxutils, or check the - command line arguments." - exit 1 - ;; - *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ethtool-3.7/rxclass.c new/ethtool-3.8/rxclass.c --- old/ethtool-3.7/rxclass.c 2012-07-17 00:58:30.000000000 +0200 +++ new/ethtool-3.8/rxclass.c 2013-01-22 21:30:01.000000000 +0100 @@ -41,26 +41,38 @@ static void rxclass_print_nfc_spec_ext(struct ethtool_rx_flow_spec *fsp) { - u64 data, datam; - __u16 etype, etypem, tci, tcim; + if (fsp->flow_type & FLOW_EXT) { + u64 data, datam; + __u16 etype, etypem, tci, tcim; + etype = ntohs(fsp->h_ext.vlan_etype); + etypem = ntohs(~fsp->m_ext.vlan_etype); + tci = ntohs(fsp->h_ext.vlan_tci); + tcim = ntohs(~fsp->m_ext.vlan_tci); + data = (u64)ntohl(fsp->h_ext.data[0]) << 32; + data |= (u64)ntohl(fsp->h_ext.data[1]); + datam = (u64)ntohl(~fsp->m_ext.data[0]) << 32; + datam |= (u64)ntohl(~fsp->m_ext.data[1]); - if (!(fsp->flow_type & FLOW_EXT)) - return; + fprintf(stdout, + "\tVLAN EtherType: 0x%x mask: 0x%x\n" + "\tVLAN: 0x%x mask: 0x%x\n" + "\tUser-defined: 0x%llx mask: 0x%llx\n", + etype, etypem, tci, tcim, data, datam); + } + + if (fsp->flow_type & FLOW_MAC_EXT) { + unsigned char *dmac, *dmacm; + + dmac = fsp->h_ext.h_dest; + dmacm = fsp->m_ext.h_dest; - etype = ntohs(fsp->h_ext.vlan_etype); - etypem = ntohs(~fsp->m_ext.vlan_etype); - tci = ntohs(fsp->h_ext.vlan_tci); - tcim = ntohs(~fsp->m_ext.vlan_tci); - data = (u64)ntohl(fsp->h_ext.data[0]) << 32; - data = (u64)ntohl(fsp->h_ext.data[1]); - datam = (u64)ntohl(~fsp->m_ext.data[0]) << 32; - datam |= (u64)ntohl(~fsp->m_ext.data[1]); - - fprintf(stdout, - "\tVLAN EtherType: 0x%x mask: 0x%x\n" - "\tVLAN: 0x%x mask: 0x%x\n" - "\tUser-defined: 0x%llx mask: 0x%llx\n", - etype, etypem, tci, tcim, data, datam); + fprintf(stdout, + "\tDest MAC addr: %02X:%02X:%02X:%02X:%02X:%02X" + " mask: %02X:%02X:%02X:%02X:%02X:%02X\n", + dmac[0], dmac[1], dmac[2], dmac[3], dmac[4], + dmac[5], dmacm[0], dmacm[1], dmacm[2], dmacm[3], + dmacm[4], dmacm[5]); + } } static void rxclass_print_nfc_rule(struct ethtool_rx_flow_spec *fsp) @@ -70,7 +82,7 @@ fprintf(stdout, "Filter: %d\n", fsp->location); - flow_type = fsp->flow_type & ~FLOW_EXT; + flow_type = fsp->flow_type & ~(FLOW_EXT | FLOW_MAC_EXT); invert_flow_mask(fsp); @@ -172,7 +184,7 @@ static void rxclass_print_rule(struct ethtool_rx_flow_spec *fsp) { /* print the rule in this location */ - switch (fsp->flow_type & ~FLOW_EXT) { + switch (fsp->flow_type & ~(FLOW_EXT | FLOW_MAC_EXT)) { case TCP_V4_FLOW: case UDP_V4_FLOW: case SCTP_V4_FLOW: @@ -533,6 +545,7 @@ #define NTUPLE_FLAG_VLAN 0x100 #define NTUPLE_FLAG_UDEF 0x200 #define NTUPLE_FLAG_VETH 0x400 +#define NFC_FLAG_MAC_ADDR 0x800 struct rule_opts { const char *name; @@ -571,6 +584,9 @@ { "user-def", OPT_BE64, NTUPLE_FLAG_UDEF, offsetof(struct ethtool_rx_flow_spec, h_ext.data), offsetof(struct ethtool_rx_flow_spec, m_ext.data) }, + { "dst-mac", OPT_MAC, NFC_FLAG_MAC_ADDR, + offsetof(struct ethtool_rx_flow_spec, h_ext.h_dest), + offsetof(struct ethtool_rx_flow_spec, m_ext.h_dest) }, }; static const struct rule_opts rule_nfc_esp_ip4[] = { @@ -599,6 +615,9 @@ { "user-def", OPT_BE64, NTUPLE_FLAG_UDEF, offsetof(struct ethtool_rx_flow_spec, h_ext.data), offsetof(struct ethtool_rx_flow_spec, m_ext.data) }, + { "dst-mac", OPT_MAC, NFC_FLAG_MAC_ADDR, + offsetof(struct ethtool_rx_flow_spec, h_ext.h_dest), + offsetof(struct ethtool_rx_flow_spec, m_ext.h_dest) }, }; static const struct rule_opts rule_nfc_usr_ip4[] = { @@ -639,6 +658,9 @@ { "user-def", OPT_BE64, NTUPLE_FLAG_UDEF, offsetof(struct ethtool_rx_flow_spec, h_ext.data), offsetof(struct ethtool_rx_flow_spec, m_ext.data) }, + { "dst-mac", OPT_MAC, NFC_FLAG_MAC_ADDR, + offsetof(struct ethtool_rx_flow_spec, h_ext.h_dest), + offsetof(struct ethtool_rx_flow_spec, m_ext.h_dest) }, }; static const struct rule_opts rule_nfc_ether[] = { @@ -1063,6 +1085,8 @@ fsp->h_u.usr_ip4_spec.ip_ver = ETH_RX_NFC_IP4; if (flags & (NTUPLE_FLAG_VLAN | NTUPLE_FLAG_UDEF | NTUPLE_FLAG_VETH)) fsp->flow_type |= FLOW_EXT; + if (flags & NFC_FLAG_MAC_ADDR) + fsp->flow_type |= FLOW_MAC_EXT; return 0; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
