Hello community,
here is the log from the commit of package lldpd for openSUSE:Factory checked in at 2018-12-04 20:57:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lldpd (Old)
and /work/SRC/openSUSE:Factory/.lldpd.new.19453 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lldpd"
Tue Dec 4 20:57:49 2018 rev:6 rq:653773 version:1.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/lldpd/lldpd.changes 2018-08-02 14:59:16.372391661 +0200
+++ /work/SRC/openSUSE:Factory/.lldpd.new.19453/lldpd.changes 2018-12-04 20:57:55.576613642 +0100
@@ -1,0 +2,12 @@
+Mon Dec 3 23:18:32 UTC 2018 - mardnh@gmx.de
+
+- Update to version 1.0.2
+ * On Linux, the monitor process will now drop its privileges
+ instead of running as root. It will keep CAP_NET_RAW,
+ CAP_NET_ADMIN and CAP_DAC_OVERRIDE capabilities.
+ * Support for CDP PD PoE (with negotiation).
+ * Move support for bonded devices on Linux < 2.6.27 into the
+ `--enable-oldies` option. This avoids duplicate packets
+ starting from Linux 4.19.
+
+-------------------------------------------------------------------
Old:
----
lldpd-1.0.1.tar.gz
lldpd-1.0.1.tar.gz.asc
New:
----
lldpd-1.0.2.tar.gz
lldpd-1.0.2.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ lldpd.spec ++++++
--- /var/tmp/diff_new_pack.tttr0i/_old 2018-12-04 20:57:57.020612049 +0100
+++ /var/tmp/diff_new_pack.tttr0i/_new 2018-12-04 20:57:57.024612044 +0100
@@ -41,7 +41,7 @@
%bcond_without system_libevent
%bcond_with seccomp
Name: lldpd
-Version: 1.0.1
+Version: 1.0.2
Release: 0
Summary: Implementation of IEEE 802.1ab (LLDP)
# We have some GPL linux headers in include/linux, they are used on
++++++ lldpd-1.0.1.tar.gz -> lldpd-1.0.2.tar.gz ++++++
++++ 7010 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/lldpd-1.0.1/.dist-version new/lldpd-1.0.2/.dist-version
--- old/lldpd-1.0.1/.dist-version 2018-04-09 13:53:10.000000000 +0200
+++ new/lldpd-1.0.2/.dist-version 2018-12-01 10:22:12.000000000 +0100
@@ -1 +1 @@
-1.0.1
+1.0.2
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/lldpd-1.0.1/ChangeLog new/lldpd-1.0.2/ChangeLog
--- old/lldpd-1.0.1/ChangeLog 2018-04-09 13:53:09.000000000 +0200
+++ new/lldpd-1.0.2/ChangeLog 2018-12-01 10:22:11.000000000 +0100
@@ -1,5 +1,44 @@
-1.0.1 [2018-04-09 13:44:08 +0200]:
+1.0.2 [2018-12-01 10:21:01 +0100]:
+ - [f1a6e154e764] release: 1.0.2 (Vincent Bernat)
+ - [d39a304d0b68] daemon: don't enable ProtectSystem by default (Vincent Bernat)
+ - [2f4ff3072b95] interfaces: remove specific handling for bonds except with --enable-oldies (Vincent Bernat)
+ - [f2e7a911cb26] doc: update documentation for Android (Vincent Bernat)
+ - [9ba21c60d945] Allow linux kernel to autoprobe correct socket_nl.nl_pid address (Pavel Shirshov)
+ - [e86777ab39fe] daemon: do not explicitely inline functions (Vincent Bernat)
+ - [ff3dcc4ad71c] build: ability to disable libbsd with --without-libbsd (Vincent Bernat)
+ - [02f4014ff588] marshal: avoid NULL pointer arithmetic (Vincent Bernat)
+ - [9bf35ec47856] lib: use constants from lldp-const.h for Dot3 MAU (Vincent Bernat)
+ - [766114c5cc60] dot3: fix 100BASE-T4 MAU (Vincent Bernat)
+ - [822804ac5ef9] interfaces: provide clearer messages about ethtool problems (Vincent Bernat)
+ - [90a50860ebdc] daemon: implement mkdir -p directly in lldpd (Vincent Bernat)
+ - [b6e63f2f8610] doc: add latest commit to NEWS (Vincent Bernat)
+ - [ba4c3fdb9ddc] Merge pull request #289 from GustavWi/master (Vincent Bernat)
+ - [5334d8c8a459] Add support for PD PoE negotiation. (Gustav Wiklander)
+ - [7db1168e609e] redhat: install lldpcli as setuid _lldpd (Vincent Bernat)
+ - [342d2dab3823] osx: update brew formula (Vincent Bernat)
+ - [52018f530b6c] Merge pull request #285 from vincentbernat/feature/linux-caps (Vincent Bernat)
+ - [3136d7ab93de] tests: request CAP_DAC_OVERRIDE (Vincent Bernat)
+ - [987454994be6] tests: add SNMP-related tests (Vincent Bernat)
+ - [83577a2b3b88] priv: always request CAP_FOWNER (Vincent Bernat)
+ - [0e52112d7306] priv: request CAP_FOWNER only if SNMP is enabled on command-line (Vincent Bernat)
+ - [a0e2dc0b0b9a] priv: don't use %m in format string (Vincent Bernat)
+ - [8a4e0fbf782c] debian/redhat: build-depends on libcap-dev/libcap-devel (Vincent Bernat)
+ - [7947994cdf96] tests: don't start lldpd twice in a namespace (Vincent Bernat)
+ - [08e05799dd7c] tests: add a test for interface alias handling (Vincent Bernat)
+ - [3a7923cb2aff] build: also test directly for -lcap when no pkg-config (Vincent Bernat)
+ - [06b24ddcb584] priv: when SNMP AgentX socket is filesystem-based, acquire CAP_FOWNER (Vincent Bernat)
+ - [f6933edaf2ed] priv: drop most privileges in monitor, only keep CAP_NET_RAW/ADMIN (Vincent Bernat)
+ - [d3cbf3697c0e] Merge pull request #286 from GustavWi/master (Vincent Bernat)
+ - [db3731d0a6df] Read all notifications in lldpctl_recv. (Gustav Wiklander)
+ - [09a267fcda7a] lib: document the inability to do anything else when processing notifications (Vincent Bernat)
+ - [a8dd189419d1] build: use lowercase for PKG_CHECK_MODULES (Vincent Bernat)
+ - [7cae6b6e3a29] doc: add more instructions for Android (Vincent Bernat)
+
+1.0.1 [2018-04-09 14:45:03 +0200]:
+
+ - [e22747ce7943] build: no fatal errors when compiling with embedded libevent on macOS (Vincent Bernat)
+ - [f55c541ccb28] build: don't override CFLAGS when building libevent (Vincent Bernat)
- [4ff8626eced9] release: 1.0.1 (Vincent Bernat)
- [c0dd6678ef93] daemon: use "mkdir -p" instead of "mkdir" (Vincent Bernat)
- [05455522fdd5] Revert "daemon: use RuntimeDirectory= instead of mkdir to create chroot" (Vincent Bernat)
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/lldpd-1.0.1/NEWS new/lldpd-1.0.2/NEWS
--- old/lldpd-1.0.1/NEWS 2018-04-09 13:44:05.000000000 +0200
+++ new/lldpd-1.0.2/NEWS 2018-11-30 22:37:06.000000000 +0100
@@ -1,3 +1,14 @@
+lldpd (1.0.2)
+ * Changes:
+ + On Linux, the monitor process will now drop its privileges
+ instead of running as root. It will keep CAP_NET_RAW,
+ CAP_NET_ADMIN and CAP_DAC_OVERRIDE capabilities.
+ + Support for CDP PD PoE (with negotiation). Thanks to Gustav
+ Wiklander.
+ + Move support for bonded devices on Linux < 2.6.27 into the
+ `--enable-oldies` option. This avoids duplicate packets
+ starting from Linux 4.19.
+
lldpd (1.0.1)
* Fix:
+ Use "mkdir -p" instead of "mkdir" in systemd unit.
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/lldpd-1.0.1/README.md new/lldpd-1.0.2/README.md
--- old/lldpd-1.0.1/README.md 2018-02-07 09:08:01.000000000 +0100
+++ new/lldpd-1.0.2/README.md 2018-11-07 20:19:58.000000000 +0100
@@ -129,7 +129,18 @@
export PATH=$PATH:$TOOLCHAIN/bin
../configure \
--host=arm-linux-androideabi \
- --with-sysroot=$TOOLCHAIN/sysroot
+ --with-sysroot=$TOOLCHAIN/sysroot \
+ --prefix=/system \
+ --sbindir=/system/bin \
+ --runstatedir=/data/data/lldpd \
+ --with-privsep-user=root \
+ --with-privsep-group=root
+ make
+ make install DESTDIR=$PWD/install
+
+Then, copy `install/system/bin/*` to `/system/bin` on the target
+system and `install/system/lib/*.so*` to `/system/lib` on the target
+system. You may need to create `/data/data/lldpd` as well.
[Android NDK]: http://developer.android.com/tools/sdk/ndk/index.html
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/lldpd-1.0.1/ar-lib new/lldpd-1.0.2/ar-lib
--- old/lldpd-1.0.1/ar-lib 2018-04-09 13:51:25.000000000 +0200
+++ new/lldpd-1.0.2/ar-lib 2018-12-01 10:21:52.000000000 +0100
@@ -4,7 +4,7 @@
me=ar-lib
scriptversion=2012-03-01.08; # UTC
-# Copyright (C) 2010-2017 Free Software Foundation, Inc.
+# Copyright (C) 2010-2018 Free Software Foundation, Inc.
# Written by Peter Rosin .
#
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
# 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/.
+# along with this program. If not, see https://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
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/lldpd-1.0.1/compile new/lldpd-1.0.2/compile
--- old/lldpd-1.0.1/compile 2018-04-09 13:51:25.000000000 +0200
+++ new/lldpd-1.0.2/compile 2018-12-01 10:21:52.000000000 +0100
@@ -1,9 +1,9 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
# Written by Tom Tromey .
#
# This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
# 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/.
+# along with this program. If not, see https://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
@@ -255,7 +255,8 @@
echo "compile $scriptversion"
exit $?
;;
- cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+ cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
@@ -339,9 +340,9 @@
# Local Variables:
# mode: shell-script
# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# 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/lldpd-1.0.1/config.h.in new/lldpd-1.0.2/config.h.in
--- old/lldpd-1.0.1/config.h.in 2018-04-09 13:51:24.000000000 +0200
+++ new/lldpd-1.0.2/config.h.in 2018-12-01 10:21:51.000000000 +0100
@@ -75,6 +75,9 @@
/* Define if you have a readline compatible library */
#undef HAVE_LIBREADLINE
+/* Define to indicate support of linux capabilities */
+#undef HAVE_LINUX_CAPABILITIES
+
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
to 0 otherwise. */
#undef HAVE_MALLOC
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/lldpd-1.0.1/configure.ac new/lldpd-1.0.2/configure.ac
--- old/lldpd-1.0.1/configure.ac 2018-03-23 13:44:25.000000000 +0100
+++ new/lldpd-1.0.2/configure.ac 2018-10-02 20:36:07.000000000 +0200
@@ -173,26 +173,44 @@
AC_FUNC_FORK
# Some functions can be in libbsd
-PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
- _save_CFLAGS="$CFLAGS"
- _save_LIBS="$LIBS"
- CFLAGS="$CFLAGS $libbsd_CFLAGS"
- LIBS="$LIBS $libbsd_LIBS"
- AC_MSG_CHECKING([if libbsd can be linked correctly])
- AC_TRY_LINK([
-@%:@include
-@%:@include
-],[],
- [
- AC_MSG_RESULT(yes)
- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
- ],[
- AC_MSG_RESULT(no)
- CFLAGS="$_save_CFLAGS"
- LIBS="$_save_LIBS"
- ])
-], [:])
+AC_ARG_WITH([libbsd],
+ AS_HELP_STRING(
+ [--with-libbsd],
+ [Use libbsd @<:@default=auto@:>@]),
+ [],
+ [with_libbsd=auto])
+if test x"$with_libbsd" != x"no"; then
+ PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
+ _save_CFLAGS="$CFLAGS"
+ _save_LIBS="$LIBS"
+ CFLAGS="$CFLAGS $libbsd_CFLAGS"
+ LIBS="$LIBS $libbsd_LIBS"
+ AC_MSG_CHECKING([if libbsd can be linked correctly])
+ AC_TRY_LINK([
+ @%:@include
+ @%:@include
+ ],[],
+ [
+ AC_MSG_RESULT(yes)
+ LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
+ LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
+ with_libbsd=yes
+ ],[
+ AC_MSG_RESULT(no)
+ CFLAGS="$_save_CFLAGS"
+ LIBS="$_save_LIBS"
+ if test x"$with_libbsd" = x"yes"; then
+ AC_MSG_FAILURE([*** no libbsd support found])
+ fi
+ with_libbsd=no
+ ])
+ ], [
+ if test x"$with_libbsd" = x"yes"; then
+ AC_MSG_FAILURE([*** no libbsd support found])
+ fi
+ with_libbsd=no
+ ])
+fi
# setproctitle may have an _init function
AC_REPLACE_FUNCS([setproctitle])
@@ -222,10 +240,11 @@
AC_CACHE_SAVE
## Unit tests wich check
-PKG_CHECK_MODULES([CHECK], [check >= 0.9.4], [have_check=yes], [have_check=no])
+PKG_CHECK_MODULES([check], [check >= 0.9.4], [have_check=yes], [have_check=no])
# Third-party libraries
lldp_CHECK_LIBEVENT
+lldp_CHECK_LIBCAP
# Compatibility with pkg.m4 < 0.27
m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR],
@@ -411,6 +430,7 @@
XML output.....: ${with_xml-no}
Oldies support.: $enable_oldies
seccomp........: ${with_seccomp-no}
+ libbsd.........: ${with_libbsd-no}
Privilege separation:
Enabled........: $enable_privsep
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/lldpd-1.0.1/libevent/m4/libtool.m4 new/lldpd-1.0.2/libevent/m4/libtool.m4
--- old/lldpd-1.0.1/libevent/m4/libtool.m4 2018-04-09 13:51:13.000000000 +0200
+++ new/lldpd-1.0.2/libevent/m4/libtool.m4 2018-12-01 10:21:42.000000000 +0100
@@ -4063,7 +4063,8 @@
if AC_TRY_EVAL(ac_compile); then
# Now try to grab the symbols.
nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
+ $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
+ if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
@@ -6438,7 +6439,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
GXX=no
@@ -6813,7 +6814,7 @@
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test yes = "$GXX"; then
@@ -6878,7 +6879,7 @@
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test yes = "$GXX"; then
@@ -7217,7 +7218,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
# FIXME: insert proper C++ library support
@@ -7301,7 +7302,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
# g++ 2.7 appears to require '-G' NOT '-shared' on this
# platform.
@@ -7312,7 +7313,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
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/lldpd-1.0.1/m4/libcap.m4 new/lldpd-1.0.2/m4/libcap.m4
--- old/lldpd-1.0.1/m4/libcap.m4 1970-01-01 01:00:00.000000000 +0100
+++ new/lldpd-1.0.2/m4/libcap.m4 2018-06-16 19:44:20.000000000 +0200
@@ -0,0 +1,25 @@
+#
+# lldp_CHECK_LIBCAP
+#
+
+AC_DEFUN([lldp_CHECK_LIBCAP], [
+ PKG_CHECK_MODULES([libcap], [libcap >= 2], [
+ AC_DEFINE([HAVE_LINUX_CAPABILITIES], 1, [Define to indicate support of linux capabilities])
+ ], [
+ libcap_LIBS=-lcap
+ libcap_CFLAGS=
+ _save_libs="$LIBS"
+ LIBS="$LIBS ${libcap_LIBS}"
+ AC_MSG_CHECKING([libcap (without pkg-config)])
+ AC_TRY_LINK_FUNC([cap_set_proc], [
+ AC_DEFINE([HAVE_LINUX_CAPABILITIES], 1, [Define to indicate support of linux capabilities])
+ AC_MSG_RESULT(yes)
+ ], [
+ libcap_LIBS=
+ AC_MSG_RESULT(no)
+ ])
+ LIBS="$_save_libs"
+ ])
+ AC_SUBST([libcap_LIBS])
+ AC_SUBST([libcap_CFLAGS])
+])
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/lldpd-1.0.1/m4/libevent.m4 new/lldpd-1.0.2/m4/libevent.m4
--- old/lldpd-1.0.1/m4/libevent.m4 2018-04-09 07:25:29.000000000 +0200
+++ new/lldpd-1.0.2/m4/libevent.m4 2018-06-13 07:41:40.000000000 +0200
@@ -13,13 +13,13 @@
LIBEVENT_EMBEDDED=1
else
# If not forced, check first with pkg-config
- PKG_CHECK_MODULES([LIBEVENT], [libevent >= 2.0.5], [
+ PKG_CHECK_MODULES([libevent], [libevent >= 2.0.5], [
# Check if we have a working libevent
AC_MSG_CHECKING([if system libevent works as expected])
_save_CFLAGS="$CFLAGS"
_save_LIBS="$LIBS"
- CFLAGS="$CFLAGS $LIBEVENT_CFLAGS"
- LIBS="$LIBS $LIBEVENT_LIBS"
+ CFLAGS="$CFLAGS $libevent_CFLAGS"
+ LIBS="$LIBS $libevent_LIBS"
AC_TRY_LINK([
@%:@include
@%:@include
@@ -48,9 +48,9 @@
fi
if test x"$LIBEVENT_EMBEDDED" != x; then
- unset LIBEVENT_LIBS
- LIBEVENT_CFLAGS="-I\$(top_srcdir)/libevent/include -I\$(top_builddir)/libevent/include"
- LIBEVENT_LDFLAGS="\$(top_builddir)/libevent/libevent.la"
+ unset libevent_LIBS
+ libevent_CFLAGS="-I\$(top_srcdir)/libevent/include -I\$(top_builddir)/libevent/include"
+ libevent_LDFLAGS="\$(top_builddir)/libevent/libevent.la"
fi
# Call ./configure in libevent. Need it for make dist...
@@ -66,7 +66,7 @@
lldp_CONFIG_SUBDIRS([libevent], [$libevent_configure_args])
AM_CONDITIONAL([LIBEVENT_EMBEDDED], [test x"$LIBEVENT_EMBEDDED" != x])
- AC_SUBST([LIBEVENT_LIBS])
- AC_SUBST([LIBEVENT_CFLAGS])
- AC_SUBST([LIBEVENT_LDFLAGS])
+ AC_SUBST([libevent_LIBS])
+ AC_SUBST([libevent_CFLAGS])
+ AC_SUBST([libevent_LDFLAGS])
])
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/lldpd-1.0.1/m4/libtool.m4 new/lldpd-1.0.2/m4/libtool.m4
--- old/lldpd-1.0.1/m4/libtool.m4 2018-04-09 13:51:18.000000000 +0200
+++ new/lldpd-1.0.2/m4/libtool.m4 2018-12-01 10:21:46.000000000 +0100
@@ -4063,7 +4063,8 @@
if AC_TRY_EVAL(ac_compile); then
# Now try to grab the symbols.
nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
+ $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
+ if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
@@ -6438,7 +6439,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
GXX=no
@@ -6813,7 +6814,7 @@
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test yes = "$GXX"; then
@@ -6878,7 +6879,7 @@
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test yes = "$GXX"; then
@@ -7217,7 +7218,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
# FIXME: insert proper C++ library support
@@ -7301,7 +7302,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
else
# g++ 2.7 appears to require '-G' NOT '-shared' on this
# platform.
@@ -7312,7 +7313,7 @@
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
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/lldpd-1.0.1/m4/seccomp.m4 new/lldpd-1.0.2/m4/seccomp.m4
--- old/lldpd-1.0.1/m4/seccomp.m4 2016-03-22 17:22:00.000000000 +0100
+++ new/lldpd-1.0.2/m4/seccomp.m4 2018-06-13 07:41:40.000000000 +0200
@@ -4,9 +4,9 @@
AC_DEFUN([lldp_CHECK_SECCOMP], [
if test x"$with_seccomp" != x"no"; then
- PKG_CHECK_MODULES([SECCOMP], [libseccomp >= 1], [
- AC_SUBST([SECCOMP_LIBS])
- AC_SUBST([SECCOMP_CFLAGS])
+ PKG_CHECK_MODULES([libseccomp], [libseccomp >= 1], [
+ AC_SUBST([libseccomp_LIBS])
+ AC_SUBST([libseccomp_CFLAGS])
AC_DEFINE_UNQUOTED([USE_SECCOMP], 1, [Define to indicate to enable seccomp support])
with_seccomp=yes
], [
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/lldpd-1.0.1/m4/xml2.m4 new/lldpd-1.0.2/m4/xml2.m4
--- old/lldpd-1.0.1/m4/xml2.m4 2016-03-22 17:22:00.000000000 +0100
+++ new/lldpd-1.0.2/m4/xml2.m4 2018-06-13 07:41:40.000000000 +0200
@@ -5,7 +5,7 @@
AC_DEFUN([lldp_CHECK_XML2], [
if test x"$with_xml" != x"no"; then
- PKG_CHECK_MODULES([XML2], [libxml-2.0], [
+ PKG_CHECK_MODULES([libxml2], [libxml-2.0], [
dnl Found through pkg-config
AC_DEFINE_UNQUOTED([USE_XML], 1, [Define to indicate to enable XML support])
with_xml=yes
@@ -20,13 +20,13 @@
with_xml=no
else
dnl Check that it's working as expected
- XML2_LIBS=`${XML2_CONFIG} --libs`
- XML2_CFLAGS=`${XML2_CONFIG} --cflags`
+ libxml2_LIBS=`${XML2_CONFIG} --libs`
+ libxml2_CFLAGS=`${XML2_CONFIG} --cflags`
_save_flags="$CFLAGS"
_save_libs="$LIBS"
- CFLAGS="$CFLAGS ${XML2_CFLAGS}"
- LIBS="$LIBS ${XML2_LIBS}"
+ CFLAGS="$CFLAGS ${libxml2_CFLAGS}"
+ LIBS="$LIBS ${libxml2_LIBS}"
AC_MSG_CHECKING([whether libxml-2 work as expected])
AC_LINK_IFELSE([AC_LANG_PROGRAM([
@%:@include
@@ -37,8 +37,8 @@
return (xw != NULL);
])],[
AC_MSG_RESULT(yes)
- AC_SUBST([XML2_LIBS])
- AC_SUBST([XML2_CFLAGS])
+ AC_SUBST([libxml2_LIBS])
+ AC_SUBST([libxml2_CFLAGS])
AC_DEFINE_UNQUOTED([USE_XML], 1, [Define to indicate to enable XML support])
with_xml=yes
],[
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/lldpd-1.0.1/missing new/lldpd-1.0.2/missing
--- old/lldpd-1.0.1/missing 2018-04-09 13:51:25.000000000 +0200
+++ new/lldpd-1.0.2/missing 2018-12-01 10:21:52.000000000 +0100
@@ -1,9 +1,9 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard , 1996.
# This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
# 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/.
+# along with this program. If not, see https://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
@@ -101,9 +101,9 @@
exit $st
fi
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
+perl_URL=https://www.perl.org/
+flex_URL=https://github.com/westes/flex
+gnu_software_URL=https://www.gnu.org/software
program_details ()
{
@@ -207,9 +207,9 @@
exit $st
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# 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/lldpd-1.0.1/src/client/Makefile.am new/lldpd-1.0.2/src/client/Makefile.am
--- old/lldpd-1.0.1/src/client/Makefile.am 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/client/Makefile.am 2018-06-13 07:41:40.000000000 +0200
@@ -28,8 +28,8 @@
if USE_XML
lldpcli_SOURCES += xml_writer.c
-lldpcli_CFLAGS += @XML2_CFLAGS@
-lldpcli_LDADD += @XML2_LIBS@
+lldpcli_CFLAGS += @libxml2_CFLAGS@
+lldpcli_LDADD += @libxml2_LIBS@
endif
# Completions
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/lldpd-1.0.1/src/daemon/Makefile.am new/lldpd-1.0.2/src/daemon/Makefile.am
--- old/lldpd-1.0.1/src/daemon/Makefile.am 2018-04-09 07:25:52.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/Makefile.am 2018-06-16 19:44:20.000000000 +0200
@@ -28,16 +28,16 @@
protocols/sonmp.h \
protocols/edp.c \
protocols/edp.h
-liblldpd_la_CFLAGS = $(AM_CFLAGS) @LIBEVENT_CFLAGS@
+liblldpd_la_CFLAGS = $(AM_CFLAGS) @libevent_CFLAGS@ @libcap_CFLAGS@
liblldpd_la_CPPFLAGS = $(AM_CPPFLAGS) -DSYSCONFDIR='"$(sysconfdir)"' -DLLDPCLI_PATH='"$(sbindir)/lldpcli"'
liblldpd_la_LIBADD = \
$(top_builddir)/src/libcommon-daemon-client.la \
- $(top_builddir)/src/libcommon-daemon-lib.la @LIBEVENT_LIBS@
+ $(top_builddir)/src/libcommon-daemon-lib.la @libevent_LIBS@ @libcap_LIBS@
## lldpd
lldpd_SOURCES = main.c
lldpd_LDFLAGS = $(AM_LDFLAGS) $(LLDP_BIN_LDFLAGS)
-lldpd_LDADD = liblldpd.la @LIBEVENT_LDFLAGS@
+lldpd_LDADD = liblldpd.la @libevent_LDFLAGS@
if HOST_OS_LINUX
liblldpd_la_SOURCES += \
@@ -112,8 +112,8 @@
echo "};" >> $@
nodist_liblldpd_la_SOURCES += syscall-names.h
liblldpd_la_SOURCES += priv-seccomp.c
-liblldpd_la_CFLAGS += @SECCOMP_CFLAGS@
-liblldpd_la_LIBADD += @SECCOMP_LIBS@
+liblldpd_la_CFLAGS += @libseccomp_CFLAGS@
+liblldpd_la_LIBADD += @libseccomp_LIBS@
endif
# Add SNMP support if needed
@@ -149,7 +149,7 @@
if LIBEVENT_EMBEDDED
event.c: $(top_builddir)/libevent/libevent.la
$(top_builddir)/libevent/libevent.la: $(top_srcdir)/libevent/*.c $(top_srcdir)/libevent/*.h
- (cd $(top_builddir)/libevent && $(MAKE) CFLAGS=-Wno-deprecated-declarations)
+ (cd $(top_builddir)/libevent && $(MAKE))
endif
## systemd service file
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/lldpd-1.0.1/src/daemon/agent.c new/lldpd-1.0.2/src/daemon/agent.c
--- old/lldpd-1.0.1/src/daemon/agent.c 2018-03-18 00:19:14.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/agent.c 2018-10-02 20:36:20.000000000 +0200
@@ -38,7 +38,7 @@
#define scfg agent_scfg
struct lldpd *agent_scfg;
-static inline uint8_t
+static uint8_t
swap_bits(uint8_t n)
{
n = ((n&0xF0) >>4 ) | ( (n&0x0F) <<4);
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/lldpd-1.0.1/src/daemon/agent_priv.c new/lldpd-1.0.2/src/daemon/agent_priv.c
--- old/lldpd-1.0.1/src/daemon/agent_priv.c 2016-03-22 17:22:00.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/agent_priv.c 2018-06-16 19:44:20.000000000 +0200
@@ -222,6 +222,12 @@
return agent_priv_unix_transport((char *)o, o_len, local);
}
+const char *
+agent_default_agentx_socket()
+{
+ return NETSNMP_AGENTX_SOCKET;
+}
+
void
agent_priv_register_domain()
{
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/lldpd-1.0.1/src/daemon/interfaces-linux.c new/lldpd-1.0.2/src/daemon/interfaces-linux.c
--- old/lldpd-1.0.1/src/daemon/interfaces-linux.c 2018-03-12 17:27:12.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/interfaces-linux.c 2018-11-30 22:37:06.000000000 +0100
@@ -300,7 +300,7 @@
if (ioctl(cfg->g_sock, SIOCETHTOOL, &ifr) == -1) {
static int once = 0;
if (errno == EPERM && !once) {
- log_warn("interfaces",
+ log_warnx("interfaces",
"no permission to get permanent MAC address for %s (requires 2.6.19+)",
iface->name);
once = 1;
@@ -446,21 +446,21 @@
} link_modes;
};
-static inline int
+static int
iflinux_ethtool_link_mode_test_bit(unsigned int nr, const uint32_t *mask)
{
if (nr >= 32 * ETHTOOL_LINK_MODE_MASK_MAX_KERNEL_NU32)
return 0;
return !!(mask[nr / 32] & (1 << (nr % 32)));
}
-static inline void
+static void
iflinux_ethtool_link_mode_unset_bit(unsigned int nr, uint32_t *mask)
{
if (nr >= 32 * ETHTOOL_LINK_MODE_MASK_MAX_KERNEL_NU32)
return;
mask[nr / 32] &= ~(1 << (nr % 32));
}
-static inline int
+static int
iflinux_ethtool_link_mode_is_empty(const uint32_t *mask)
{
for (unsigned int i = 0;
@@ -498,9 +498,10 @@
} else {
static int once = 0;
if (errno == EPERM && !once) {
- log_warn("interfaces",
+ log_warnx("interfaces",
"cannot get ethtool link information "
- "with GLINKSETTINGS (requires 4.9+)");
+ "with GLINKSETTINGS (requires 4.9+). "
+ "25G+ speeds may be missing in MAC/PHY TLVs");
once = 1;
}
nwords = -1;
@@ -555,9 +556,10 @@
} else {
static int once = 0;
if (errno == EPERM && !once) {
- log_warn("interfaces",
+ log_warnx("interfaces",
"cannot get ethtool link information "
- "with GSET (requires 2.6.19+)");
+ "with GSET (requires 2.6.19+). "
+ "MAC/PHY TLV will be unavailable");
once = 1;
}
}
@@ -669,6 +671,7 @@
#endif /* ENABLE_DOT3 */
+#ifdef ENABLE_OLDIES
struct bond_master {
char name[IFNAMSIZ];
int index;
@@ -845,6 +848,7 @@
hardware->h_mtu = iface->mtu ? iface->mtu : 1500;
}
}
+#endif
/* Query each interface to get the appropriate driver */
static void
@@ -1030,7 +1034,9 @@
iflinux_add_physical(cfg, interfaces);
interfaces_helper_whitelist(cfg, interfaces);
+#ifdef ENABLE_OLDIES
iflinux_handle_bond(cfg, interfaces);
+#endif
interfaces_helper_physical(cfg, interfaces,
ð_ops,
iflinux_eth_init);
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/lldpd-1.0.1/src/daemon/interfaces.c new/lldpd-1.0.2/src/daemon/interfaces.c
--- old/lldpd-1.0.1/src/daemon/interfaces.c 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/interfaces.c 2018-10-02 21:11:41.000000000 +0200
@@ -24,6 +24,17 @@
#include
#include
+static int
+lldpd_af(int af)
+{
+ switch (af) {
+ case LLDPD_AF_IPV4: return AF_INET;
+ case LLDPD_AF_IPV6: return AF_INET6;
+ case LLDPD_AF_LAST: return AF_MAX;
+ default: return AF_UNSPEC;
+ }
+}
+
/* Generic ethernet interface initialization */
/**
* Enable multicast on the given interface.
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/lldpd-1.0.1/src/daemon/lldpd.c new/lldpd-1.0.2/src/daemon/lldpd.c
--- old/lldpd-1.0.1/src/daemon/lldpd.c 2018-03-18 23:01:35.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/lldpd.c 2018-07-23 12:09:13.000000000 +0200
@@ -986,8 +986,10 @@
TAILQ_FOREACH(port, &hardware->h_rports, p_entries) {
if (port->p_hidden_in)
continue;
- if (port->p_protocol != LLDPD_MODE_LLDP)
+
+ if (port->p_protocol != LLDPD_MODE_LLDP && port->p_protocol != LLDPD_MODE_CDPV2)
continue;
+
if (port->p_power.devicetype != LLDP_DOT3_POWER_PSE)
continue;
if (!selected_port || port->p_lastupdate > selected_port->p_lastupdate)
@@ -1001,6 +1003,13 @@
hardware->h_lport.p_power.allocated = selected_port->p_power.allocated;
levent_schedule_pdu(hardware);
}
+
+#ifdef ENABLE_CDP
+ if (selected_port && selected_port->p_cdp_power.management_id != hardware->h_lport.p_cdp_power.management_id) {
+ hardware->h_lport.p_cdp_power.management_id = selected_port->p_cdp_power.management_id;
+ }
+#endif
+
#endif
}
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/lldpd-1.0.1/src/daemon/lldpd.h new/lldpd-1.0.2/src/daemon/lldpd.h
--- old/lldpd-1.0.1/src/daemon/lldpd.h 2017-12-31 22:58:23.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/lldpd.h 2018-06-16 19:44:20.000000000 +0200
@@ -179,6 +179,7 @@
#ifdef ENABLE_PRIVSEP
/* agent_priv.c */
void agent_priv_register_domain(void);
+const char *agent_default_agentx_socket(void);
#endif
/* client.c */
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/lldpd-1.0.1/src/daemon/lldpd.service.in new/lldpd-1.0.2/src/daemon/lldpd.service.in
--- old/lldpd-1.0.1/src/daemon/lldpd.service.in 2018-04-09 13:39:42.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/lldpd.service.in 2018-11-30 22:50:30.000000000 +0100
@@ -9,16 +9,14 @@
NotifyAccess=main
EnvironmentFile=-/etc/default/lldpd
EnvironmentFile=-/etc/sysconfig/lldpd
-ExecStartPre=/bin/mkdir -p @PRIVSEP_CHROOT@
ExecStart=@sbindir@/lldpd $DAEMON_ARGS $LLDPD_OPTIONS
Restart=on-failure
PrivateTmp=yes
ProtectHome=yes
-ProtectSystem=yes
-ProtectSystem=full
ProtectKernelTunables=yes
ProtectControlGroups=yes
ProtectKernelModules=yes
+#ProtectSystem=full
[Install]
WantedBy=multi-user.target
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/lldpd-1.0.1/src/daemon/netlink.c new/lldpd-1.0.2/src/daemon/netlink.c
--- old/lldpd-1.0.1/src/daemon/netlink.c 2018-03-01 09:53:19.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/netlink.c 2018-11-07 20:19:58.000000000 +0100
@@ -93,7 +93,7 @@
int s;
struct sockaddr_nl local = {
.nl_family = AF_NETLINK,
- .nl_pid = getpid(),
+ .nl_pid = 0,
.nl_groups = groups
};
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/lldpd-1.0.1/src/daemon/priv-linux.c new/lldpd-1.0.2/src/daemon/priv-linux.c
--- old/lldpd-1.0.1/src/daemon/priv-linux.c 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/priv-linux.c 2018-06-16 19:44:20.000000000 +0200
@@ -188,9 +188,9 @@
}
if ((fp = fopen(file, "r+")) == NULL) {
rc = errno;
+ log_debug("privsep", "cannot open interface description for %s: %s",
+ name, strerror(errno));
free(file);
- log_debug("privsep", "cannot open interface description for %s",
- name);
return rc;
}
free(file);
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/lldpd-1.0.1/src/daemon/priv.c new/lldpd-1.0.2/src/daemon/priv.c
--- old/lldpd-1.0.1/src/daemon/priv.c 2017-11-06 16:30:04.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/priv.c 2018-08-08 23:11:42.000000000 +0200
@@ -37,6 +37,11 @@
#include
#include
+#ifdef HAVE_LINUX_CAPABILITIES
+#include
+#include
+#endif
+
#if defined HOST_OS_FREEBSD || HOST_OS_OSX || HOST_OS_DRAGONFLY
# include
#endif
@@ -505,18 +510,40 @@
priv_exit_rc_status(rc, status);
}
+/* Create a directory recursively. */
+static int mkdir_p(const char *pathname, mode_t mode)
+{
+ char path[PATH_MAX+1], current[PATH_MAX+1];
+ char *tok;
+
+ if (strlcpy(path, pathname, sizeof(path)) >= sizeof(path)) {
+ errno = ENAMETOOLONG;
+ return -1;
+ }
+
+ /* Use strtok which will provides non-empty tokens only. */
+ if (path[0] == '/') current[0] = '/';
+ tok = strtok(path, "/");
+ while (tok) {
+ strcat(current, tok);
+ if (mkdir(current, mode) != 0 && errno != EEXIST)
+ return -1;
+ strcat(current, "/");
+ tok = strtok(NULL, "/");
+ }
+
+ errno = 0;
+ return 0;
+}
+
/* Initialization */
#define LOCALTIME "/etc/localtime"
static void
priv_setup_chroot(const char *chrootdir)
{
/* Create chroot if it does not exist */
- if (mkdir(chrootdir, 0755) == -1) {
- if (errno != EEXIST)
- fatal("privsep", "unable to create chroot directory");
- } else {
- log_info("privsep", "created chroot directory %s",
- chrootdir);
+ if (mkdir_p(chrootdir, 0755) == -1) {
+ fatal("privsep", "unable to create chroot directory");
}
/* Check if /etc/localtime exists in chroot or outside chroot */
@@ -596,6 +623,64 @@
#endif
void
+priv_drop(uid_t uid, gid_t gid)
+{
+ gid_t gidset[1];
+ gidset[0] = gid;
+ log_debug("privsep", "dropping privileges");
+#ifdef HAVE_SETRESGID
+ if (setresgid(gid, gid, gid) == -1)
+ fatal("privsep", "setresgid() failed");
+#else
+ if (setregid(gid, gid) == -1)
+ fatal("privsep", "setregid() failed");
+#endif
+ if (setgroups(1, gidset) == -1)
+ fatal("privsep", "setgroups() failed");
+#ifdef HAVE_SETRESUID
+ if (setresuid(uid, uid, uid) == -1)
+ fatal("privsep", "setresuid() failed");
+#else
+ if (setreuid(uid, uid) == -1)
+ fatal("privsep", "setreuid() failed");
+#endif
+}
+
+void
+priv_caps(uid_t uid, gid_t gid)
+{
+#ifdef HAVE_LINUX_CAPABILITIES
+ cap_t caps;
+ const char *caps_strings[2] = {
+ "cap_dac_override,cap_net_raw,cap_net_admin,cap_setuid,cap_setgid=pe",
+ "cap_dac_override,cap_net_raw,cap_net_admin=pe"
+ };
+ log_debug("privsep", "getting CAP_NET_RAW/ADMIN and CAP_DAC_OVERRIDE privilege");
+ if (!(caps = cap_from_text(caps_strings[0])))
+ fatal("privsep", "unable to convert caps");
+ if (cap_set_proc(caps) == -1) {
+ log_warn("privsep", "unable to drop privileges, monitor running as root");
+ cap_free(caps);
+ return;
+ }
+ cap_free(caps);
+
+ if (prctl(PR_SET_KEEPCAPS, 1L, 0L, 0L, 0L) == -1)
+ fatal("privsep", "cannot keep capabilities");
+ priv_drop(uid, gid);
+
+ log_debug("privsep", "dropping extra capabilities");
+ if (!(caps = cap_from_text(caps_strings[1])))
+ fatal("privsep", "unable to convert caps");
+ if (cap_set_proc(caps) == -1)
+ fatal("privsep", "unable to drop extra privileges");
+ cap_free(caps);
+#else
+ log_info("privsep", "no libcap support, running monitor as root");
+#endif
+}
+
+void
priv_init(const char *chrootdir, int ctl, uid_t uid, gid_t gid)
{
@@ -611,7 +696,6 @@
priv_privileged_fd(pair[1]);
#ifdef ENABLE_PRIVSEP
- gid_t gidset[1];
/* Spawn off monitor */
if ((monitored = fork()) < 0)
fatal("privsep", "unable to fork monitor");
@@ -626,23 +710,7 @@
fatal("privsep", "unable to chroot");
if (chdir("/") != 0)
fatal("privsep", "unable to chdir");
- gidset[0] = gid;
-#ifdef HAVE_SETRESGID
- if (setresgid(gid, gid, gid) == -1)
- fatal("privsep", "setresgid() failed");
-#else
- if (setregid(gid, gid) == -1)
- fatal("privsep", "setregid() failed");
-#endif
- if (setgroups(1, gidset) == -1)
- fatal("privsep", "setgroups() failed");
-#ifdef HAVE_SETRESUID
- if (setresuid(uid, uid, uid) == -1)
- fatal("privsep", "setresuid() failed");
-#else
- if (setreuid(uid, uid) == -1)
- fatal("privsep", "setreuid() failed");
-#endif
+ priv_drop(uid, gid);
}
close(pair[1]);
priv_ping();
@@ -654,6 +722,8 @@
if (atexit(priv_exit) != 0)
fatal("privsep", "unable to set exit function");
+ priv_caps(uid, gid);
+
/* Install signal handlers */
const struct sigaction pass_to_child = {
.sa_handler = sig_pass_to_chld,
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/lldpd-1.0.1/src/daemon/protocols/cdp.c new/lldpd-1.0.2/src/daemon/protocols/cdp.c
--- old/lldpd-1.0.1/src/daemon/protocols/cdp.c 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/protocols/cdp.c 2018-07-23 12:09:13.000000000 +0200
@@ -19,6 +19,17 @@
#include "lldpd.h"
#include "frame.h"
+/*
+ * CDP Requests Power at the switch output and therefore has to take into
+ * account the loss in the PoE cable. This is done by the switch automatically
+ * if lldp is used as the protocol.
+ */
+#define CDP_CLASS_3_MAX_PSE_POE 154 /* 15.4W Max PoE at PSE class 3 */
+#define CDP_SWTICH_DEFAULT_POE_PD 130 /* 13.W default PoE at PD */
+#define CDP_SWTICH_DEFAULT_POE_PSE 154 /* 15.4W default PoE at PSE */
+#define CDP_SWITCH_POE_CLASS_4_OFFSET 45 /* 4.5W max loss from cable */
+#define CDP_SWITCH_POE_CLASS_3_OFFSET 24 /* 2.4W max loss from cable */
+
#if defined (ENABLE_CDP) || defined (ENABLE_FDP)
#include
@@ -201,7 +212,51 @@
POKE_END_CDP_TLV))
goto toobig;
-#ifdef ENABLE_LLDPMED
+#ifdef ENABLE_DOT3
+ if ((version >= 2) &&
+ (port->p_power.powertype != LLDP_DOT3_POWER_8023AT_OFF) &&
+ (port->p_power.devicetype == LLDP_DOT3_POWER_PD) &&
+ (port->p_power.requested > 0) &&
+ (port->p_power.requested <= 655)) {
+ u_int16_t requested;
+ u_int16_t consumption;
+
+ if (port->p_power.requested != port->p_power.allocated) {
+ port->p_cdp_power.request_id++;
+ log_debug("cdp", "requested: %d, allocated:%d", port->p_power.requested, port->p_power.allocated);
+ }
+ consumption = port->p_power.allocated ? port->p_power.allocated : CDP_SWTICH_DEFAULT_POE_PD;
+ if (consumption > 130) {
+ consumption += CDP_SWITCH_POE_CLASS_4_OFFSET;
+ } else {
+ consumption += CDP_SWITCH_POE_CLASS_3_OFFSET;
+ }
+ if (port->p_power.requested > 130) { /* Class 4 */
+ requested = port->p_power.requested + CDP_SWITCH_POE_CLASS_4_OFFSET;
+ } else { /* Class 3 */
+ requested = port->p_power.requested + CDP_SWITCH_POE_CLASS_3_OFFSET;
+ }
+ if (!(
+ POKE_START_CDP_TLV(CDP_TLV_POWER_CONSUMPTION) &&
+ POKE_UINT16(consumption * 100) &&
+ POKE_END_CDP_TLV))
+ goto toobig;
+ /* Avoid request id 0 from overflow */
+ if (!port->p_cdp_power.request_id) {
+ port->p_cdp_power.request_id = 1;
+ }
+ if (!port->p_cdp_power.management_id) {
+ port->p_cdp_power.management_id = 1;
+ }
+ if (!(
+ POKE_START_CDP_TLV(CDP_TLV_POWER_REQUESTED) &&
+ POKE_UINT16(port->p_cdp_power.request_id) &&
+ POKE_UINT16(port->p_cdp_power.management_id) &&
+ POKE_UINT32(requested * 100) &&
+ POKE_END_CDP_TLV))
+ goto toobig;
+ }
+#elif defined(ENABLE_LLDPMED)
/* Power use */
if ((version >= 2) &&
port->p_med_cap_enabled &&
@@ -214,7 +269,8 @@
POKE_END_CDP_TLV))
goto toobig;
}
-#endif
+#endif
+
(void)POKE_SAVE(end);
/* Compute len and checksum */
@@ -320,6 +376,10 @@
hardware->h_ifname);
goto malformed;
}
+
+ /* This is the correct length of the CDP + LLC packets */
+ length = len_eth;
+
PEEK_DISCARD(6); /* Skip beginning of LLC */
proto = PEEK_UINT16;
if (proto != LLC_PID_CDP) {
@@ -370,6 +430,7 @@
}
tlv_type = PEEK_UINT16;
tlv_len = PEEK_UINT16 - 4;
+
(void)PEEK_SAVE(tlv);
if ((tlv_len < 0) || (length < tlv_len)) {
log_warnx("cdp", "incorrect size in CDP/FDP TLV header for frame "
@@ -523,6 +584,30 @@
vlan, v_entries);
break;
#endif
+#ifdef ENABLE_DOT3
+ case CDP_TLV_POWER_AVAILABLE:
+ CHECK_TLV_SIZE(12, "Power Available");
+ /* check if it is a respone to a request id */
+ if (PEEK_UINT16 > 0) {
+ port->p_cdp_power.management_id = PEEK_UINT16;
+ port->p_power.allocated = PEEK_UINT32;
+ port->p_power.allocated /= 100;
+ port->p_power.supported = 1;
+ port->p_power.enabled = 1;
+ port->p_power.devicetype = LLDP_DOT3_POWER_PSE;
+ port->p_power.powertype = LLDP_DOT3_POWER_8023AT_TYPE2;
+ log_debug("cdp", "Allocated power %d00", port->p_power.allocated);
+ if (port->p_power.allocated > CDP_CLASS_3_MAX_PSE_POE) {
+ port->p_power.allocated -= CDP_SWITCH_POE_CLASS_4_OFFSET;
+ } else if (port->p_power.allocated > CDP_SWITCH_POE_CLASS_3_OFFSET ) {
+ port->p_power.allocated -= CDP_SWITCH_POE_CLASS_3_OFFSET;
+ } else {
+ port->p_power.allocated = 0;
+ }
+ port->p_power.requested = hardware->h_lport.p_power.requested;
+ }
+ break;
+#endif
default:
log_debug("cdp", "unknown CDP/FDP TLV type (%d) received on %s",
ntohs(tlv_type), hardware->h_ifname);
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/lldpd-1.0.1/src/daemon/protocols/cdp.h new/lldpd-1.0.2/src/daemon/protocols/cdp.h
--- old/lldpd-1.0.1/src/daemon/protocols/cdp.h 2016-03-22 17:22:00.000000000 +0100
+++ new/lldpd-1.0.2/src/daemon/protocols/cdp.h 2018-07-23 12:09:13.000000000 +0200
@@ -44,7 +44,9 @@
CDP_TLV_SOFTWARE = 5,
CDP_TLV_PLATFORM = 6,
CDP_TLV_NATIVEVLAN = 10,
- CDP_TLV_POWER_CONSUMPTION = 16
+ CDP_TLV_POWER_CONSUMPTION = 0x10,
+ CDP_TLV_POWER_REQUESTED = 0x19,
+ CDP_TLV_POWER_AVAILABLE = 0x1A
};
#define CDP_ADDRESS_PROTO_IP 0xcc
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/lldpd-1.0.1/src/daemon/protocols/lldp.c new/lldpd-1.0.2/src/daemon/protocols/lldp.c
--- old/lldpd-1.0.1/src/daemon/protocols/lldp.c 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/daemon/protocols/lldp.c 2018-10-02 20:36:20.000000000 +0200
@@ -25,7 +25,7 @@
#include
#include
-inline static int
+static int
lldpd_af_to_lldp_proto(int af)
{
switch (af) {
@@ -38,7 +38,7 @@
}
}
-inline static int
+static int
lldpd_af_from_lldp_proto(int proto)
{
switch (proto) {
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/lldpd-1.0.1/src/lib/atoms/port.c new/lldpd-1.0.2/src/lib/atoms/port.c
--- old/lldpd-1.0.1/src/lib/atoms/port.c 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/lib/atoms/port.c 2018-09-24 21:06:26.000000000 +0200
@@ -66,84 +66,84 @@
#ifdef ENABLE_DOT3
static lldpctl_map_t operational_mau_type_values[] = {
- { 1, "AUI - no internal MAU, view from AUI" },
- { 2, "10Base5 - thick coax MAU" },
- { 3, "Foirl - FOIRL MAU" },
- { 4, "10Base2 - thin coax MAU" },
- { 5, "10BaseT - UTP MAU" },
- { 6, "10BaseFP - passive fiber MAU" },
- { 7, "10BaseFB - sync fiber MAU" },
- { 8, "10BaseFL - async fiber MAU" },
- { 9, "10Broad36 - broadband DTE MAU" },
- { 10, "10BaseTHD - UTP MAU, half duplex mode" },
- { 11, "10BaseTFD - UTP MAU, full duplex mode" },
- { 12, "10BaseFLHD - async fiber MAU, half duplex mode" },
- { 13, "10BaseFLDF - async fiber MAU, full duplex mode" },
- { 14, "10BaseT4 - 4 pair category 3 UTP" },
- { 15, "100BaseTXHD - 2 pair category 5 UTP, half duplex mode" },
- { 16, "100BaseTXFD - 2 pair category 5 UTP, full duplex mode" },
- { 17, "100BaseFXHD - X fiber over PMT, half duplex mode" },
- { 18, "100BaseFXFD - X fiber over PMT, full duplex mode" },
- { 19, "100BaseT2HD - 2 pair category 3 UTP, half duplex mode" },
- { 20, "100BaseT2FD - 2 pair category 3 UTP, full duplex mode" },
- { 21, "1000BaseXHD - PCS/PMA, unknown PMD, half duplex mode" },
- { 22, "1000BaseXFD - PCS/PMA, unknown PMD, full duplex mode" },
- { 23, "1000BaseLXHD - Fiber over long-wavelength laser, half duplex mode" },
- { 24, "1000BaseLXFD - Fiber over long-wavelength laser, full duplex mode" },
- { 25, "1000BaseSXHD - Fiber over short-wavelength laser, half duplex mode" },
- { 26, "1000BaseSXFD - Fiber over short-wavelength laser, full duplex mode" },
- { 27, "1000BaseCXHD - Copper over 150-Ohm balanced cable, half duplex mode" },
- { 28, "1000BaseCXFD - Copper over 150-Ohm balanced cable, full duplex mode" },
- { 29, "1000BaseTHD - Four-pair Category 5 UTP, half duplex mode" },
- { 30, "1000BaseTFD - Four-pair Category 5 UTP, full duplex mode" },
- { 31, "10GigBaseX - X PCS/PMA, unknown PMD." },
- { 32, "10GigBaseLX4 - X fiber over WWDM optics" },
- { 33, "10GigBaseR - R PCS/PMA, unknown PMD." },
- { 34, "10GigBaseER - R fiber over 1550 nm optics" },
- { 35, "10GigBaseLR - R fiber over 1310 nm optics" },
- { 36, "10GigBaseSR - R fiber over 850 nm optics" },
- { 37, "10GigBaseW - W PCS/PMA, unknown PMD." },
- { 38, "10GigBaseEW - W fiber over 1550 nm optics" },
- { 39, "10GigBaseLW - W fiber over 1310 nm optics" },
- { 40, "10GigBaseSW - W fiber over 850 nm optics" },
- { 41, "10GigBaseCX4 - X copper over 8 pair 100-Ohm balanced cable" },
- { 42, "2BaseTL - Voice grade UTP copper, up to 2700m, optional PAF" },
- { 43, "10PassTS - Voice grade UTP copper, up to 750m, optional PAF" },
- { 44, "100BaseBX10D - One single-mode fiber OLT, long wavelength, 10km" },
- { 45, "100BaseBX10U - One single-mode fiber ONU, long wavelength, 10km" },
- { 46, "100BaseLX10 - Two single-mode fibers, long wavelength, 10km" },
- { 47, "1000BaseBX10D - One single-mode fiber OLT, long wavelength, 10km" },
- { 48, "1000BaseBX10U - One single-mode fiber ONU, long wavelength, 10km" },
- { 49, "1000BaseLX10 - Two sigle-mode fiber, long wavelength, 10km" },
- { 50, "1000BasePX10D - One single-mode fiber EPON OLT, 10km" },
- { 51, "1000BasePX10U - One single-mode fiber EPON ONU, 10km" },
- { 52, "1000BasePX20D - One single-mode fiber EPON OLT, 20km" },
- { 53, "1000BasePX20U - One single-mode fiber EPON ONU, 20km" },
- { 54, "10GbaseT - Four-pair Category 6A or better, full duplex mode only" },
- { 55, "10GbaseLRM - R multimode fiber over 1310 nm optics" },
- { 56, "1000baseKX - X backplane, full duplex mode only" },
- { 57, "10GbaseKX4 - 4 lane X backplane, full duplex mode only" },
- { 58, "10GbaseKR - R backplane, full duplex mode only" },
- { 59, "10G1GbasePRXD1 - One single-mode fiber asymmetric-rate EPON OLT, low power budget (PRX10)" },
- { 60, "10G1GbasePRXD2 - One single-mode fiber asymmetric-rate EPON OLT, medium power budget (PRX20)" },
- { 61, "10G1GbasePRXD3 - One single-mode fiber asymmetric-rate EPON OLT, high power budget (PRX30)" },
- { 62, "10G1GbasePRXU1 - One single-mode fiber asymmetric-rate EPON ONU, low power budget (PRX10)" },
- { 63, "10G1GbasePRXU2 - One single-mode fiber asymmetric-rate EPON ONU, medium power budget (PRX20)" },
- { 64, "10G1GbasePRXU3 - One single-mode fiber asymmetric-rate EPON ONU, high power budget (PRX30)" },
- { 65, "10GbasePRD1 - One single-mode fiber symmetric-rate EPON OLT, low power budget (PR10)" },
- { 66, "10GbasePRD2 - One single-mode fiber symmetric-rate EPON OLT, medium power budget (PR20)" },
- { 67, "10GbasePRD3 - One single-mode fiber symmetric-rate EPON OLT, high power budget (PR30)" },
- { 68, "10GbasePRU1 - One single-mode fiber symmetric-rate EPON ONU, low and medium power budget" },
- { 69, "10GbasePRU3 - One single-mode fiber symmetric-rate EPON ONU, high power budget (PR30)" },
- { 70, "40GbaseKR4 - 40GBASE-R PCS/PMA over an electrical backplane" },
- { 71, "40GbaseCR4 - 40GBASE-R PCS/PMA over 4 lane shielded copper balanced cable" },
- { 72, "40GbaseSR4 - 40GBASE-R PCS/PMA over 4 lane multimode fiber" },
- { 73, "40GbaseFR - 40GBASE-R PCS/PMA over single mode fiber" },
- { 74, "40GbaseLR4 - 40GBASE-R PCS/PMA over 4 WDM lane single mode fiber" },
- { 75, "100GbaseCR10 - 100GBASE-R PCS/PMA over 10 lane shielded copper balanced cable" },
- { 76, "100GbaseSR10 - 100GBASE-R PCS/PMA over 10 lane multimode fiber" },
- { 77, "100GbaseLR4 - 100GBASE-R PCS/PMA over 4 WDM lane single mode fiber, long reach" },
- { 78, "100GbaseER4 - 100GBASE-R PCS/PMA over 4 WDM lane single mode fiber PMD, extended reach" },
+ { LLDP_DOT3_MAU_AUI, "AUI - No internal MAU, view from AUI" },
+ { LLDP_DOT3_MAU_10BASE5, "10Base5 - Thick coax MAU" },
+ { LLDP_DOT3_MAU_FOIRL, "Foirl - FOIRL MAU" },
+ { LLDP_DOT3_MAU_10BASE2, "10Base2 - Thin coax MAU" },
+ { LLDP_DOT3_MAU_10BASET, "10BaseT - UTP MAU" },
+ { LLDP_DOT3_MAU_10BASEFP, "10BaseFP - Passive fiber MAU" },
+ { LLDP_DOT3_MAU_10BASEFB, "10BaseFB - Sync fiber MAU" },
+ { LLDP_DOT3_MAU_10BASEFL, "10BaseFL - Async fiber MAU" },
+ { LLDP_DOT3_MAU_10BROAD36, "10Broad36 - Broadband DTE MAU" },
+ { LLDP_DOT3_MAU_10BASETHD, "10BaseTHD - UTP MAU, half duplex mode" },
+ { LLDP_DOT3_MAU_10BASETFD, "10BaseTFD - UTP MAU, full duplex mode" },
+ { LLDP_DOT3_MAU_10BASEFLHD, "10BaseFLHD - Async fiber MAU, half duplex mode" },
+ { LLDP_DOT3_MAU_10BASEFLFD, "10BaseFLDF - Async fiber MAU, full duplex mode" },
+ { LLDP_DOT3_MAU_100BASET4, "100BaseT4 - 4 pair category 3 UTP" },
+ { LLDP_DOT3_MAU_100BASETXHD, "100BaseTXHD - 2 pair category 5 UTP, half duplex mode" },
+ { LLDP_DOT3_MAU_100BASETXFD, "100BaseTXFD - 2 pair category 5 UTP, full duplex mode" },
+ { LLDP_DOT3_MAU_100BASEFXHD, "100BaseFXHD - X fiber over PMT, half duplex mode" },
+ { LLDP_DOT3_MAU_100BASEFXFD, "100BaseFXFD - X fiber over PMT, full duplex mode" },
+ { LLDP_DOT3_MAU_100BASET2HD, "100BaseT2HD - 2 pair category 3 UTP, half duplex mode" },
+ { LLDP_DOT3_MAU_100BASET2FD, "100BaseT2FD - 2 pair category 3 UTP, full duplex mode" },
+ { LLDP_DOT3_MAU_1000BASEXHD, "1000BaseXHD - PCS/PMA, unknown PMD, half duplex mode" },
+ { LLDP_DOT3_MAU_1000BASEXFD, "1000BaseXFD - PCS/PMA, unknown PMD, full duplex mode" },
+ { LLDP_DOT3_MAU_1000BASELXHD, "1000BaseLXHD - Fiber over long-wavelength laser, half duplex mode" },
+ { LLDP_DOT3_MAU_1000BASELXFD, "1000BaseLXFD - Fiber over long-wavelength laser, full duplex mode" },
+ { LLDP_DOT3_MAU_1000BASESXHD, "1000BaseSXHD - Fiber over short-wavelength laser, half duplex mode" },
+ { LLDP_DOT3_MAU_1000BASESXFD, "1000BaseSXFD - Fiber over short-wavelength laser, full duplex mode" },
+ { LLDP_DOT3_MAU_1000BASECXHD, "1000BaseCXHD - Copper over 150-Ohm balanced cable, half duplex mode" },
+ { LLDP_DOT3_MAU_1000BASECXFD, "1000BaseCXFD - Copper over 150-Ohm balanced cable, full duplex mode" },
+ { LLDP_DOT3_MAU_1000BASETHD, "1000BaseTHD - Four-pair Category 5 UTP, half duplex mode" },
+ { LLDP_DOT3_MAU_1000BASETFD, "1000BaseTFD - Four-pair Category 5 UTP, full duplex mode" },
+ { LLDP_DOT3_MAU_10GIGBASEX, "10GigBaseX - X PCS/PMA, unknown PMD." },
+ { LLDP_DOT3_MAU_10GIGBASELX4, "10GigBaseLX4 - X fiber over WWDM optics" },
+ { LLDP_DOT3_MAU_10GIGBASER, "10GigBaseR - R PCS/PMA, unknown PMD." },
+ { LLDP_DOT3_MAU_10GIGBASEER, "10GigBaseER - R fiber over 1550 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASELR, "10GigBaseLR - R fiber over 1310 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASESR, "10GigBaseSR - R fiber over 850 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASEW, "10GigBaseW - W PCS/PMA, unknown PMD." },
+ { LLDP_DOT3_MAU_10GIGBASEEW, "10GigBaseEW - W fiber over 1550 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASELW, "10GigBaseLW - W fiber over 1310 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASESW, "10GigBaseSW - W fiber over 850 nm optics" },
+ { LLDP_DOT3_MAU_10GIGBASECX4, "10GigBaseCX4 - X copper over 8 pair 100-Ohm balanced cable" },
+ { LLDP_DOT3_MAU_2BASETL, "2BaseTL - Voice grade UTP copper, up to 2700m, optional PAF" },
+ { LLDP_DOT3_MAU_10PASSTS, "10PassTS - Voice grade UTP copper, up to 750m, optional PAF" },
+ { LLDP_DOT3_MAU_100BASEBX10D, "100BaseBX10D - One single-mode fiber OLT, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_100BASEBX10U, "100BaseBX10U - One single-mode fiber ONU, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_100BASELX10, "100BaseLX10 - Two single-mode fibers, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_1000BASEBX10D, "1000BaseBX10D - One single-mode fiber OLT, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_1000BASEBX10U, "1000BaseBX10U - One single-mode fiber ONU, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_1000BASELX10, "1000BaseLX10 - Two sigle-mode fiber, long wavelength, 10km" },
+ { LLDP_DOT3_MAU_1000BASEPX10D, "1000BasePX10D - One single-mode fiber EPON OLT, 10km" },
+ { LLDP_DOT3_MAU_1000BASEPX10U, "1000BasePX10U - One single-mode fiber EPON ONU, 10km" },
+ { LLDP_DOT3_MAU_1000BASEPX20D, "1000BasePX20D - One single-mode fiber EPON OLT, 20km" },
+ { LLDP_DOT3_MAU_1000BASEPX20U, "1000BasePX20U - One single-mode fiber EPON ONU, 20km" },
+ { LLDP_DOT3_MAU_10GBASET, "10GbaseT - Four-pair Category 6A or better, full duplex mode only" },
+ { LLDP_DOT3_MAU_10GBASELRM, "10GbaseLRM - R multimode fiber over 1310 nm optics" },
+ { LLDP_DOT3_MAU_1000BASEKX, "1000baseKX - X backplane, full duplex mode only" },
+ { LLDP_DOT3_MAU_10GBASEKX4, "10GbaseKX4 - 4 lane X backplane, full duplex mode only" },
+ { LLDP_DOT3_MAU_10GBASEKR, "10GbaseKR - R backplane, full duplex mode only" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXD1, "10G1GbasePRXD1 - One single-mode fiber asymmetric-rate EPON OLT, low power budget (PRX10)" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXD2, "10G1GbasePRXD2 - One single-mode fiber asymmetric-rate EPON OLT, medium power budget (PRX20)" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXD3, "10G1GbasePRXD3 - One single-mode fiber asymmetric-rate EPON OLT, high power budget (PRX30)" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXU1, "10G1GbasePRXU1 - One single-mode fiber asymmetric-rate EPON ONU, low power budget (PRX10)" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXU2, "10G1GbasePRXU2 - One single-mode fiber asymmetric-rate EPON ONU, medium power budget (PRX20)" },
+ { LLDP_DOT3_MAU_10G1GBASEPRXU3, "10G1GbasePRXU3 - One single-mode fiber asymmetric-rate EPON ONU, high power budget (PRX30)" },
+ { LLDP_DOT3_MAU_10GBASEPRD1, "10GbasePRD1 - One single-mode fiber symmetric-rate EPON OLT, low power budget (PR10)" },
+ { LLDP_DOT3_MAU_10GBASEPRD2, "10GbasePRD2 - One single-mode fiber symmetric-rate EPON OLT, medium power budget (PR20)" },
+ { LLDP_DOT3_MAU_10GBASEPRD3, "10GbasePRD3 - One single-mode fiber symmetric-rate EPON OLT, high power budget (PR30)" },
+ { LLDP_DOT3_MAU_10GBASEPRU1, "10GbasePRU1 - One single-mode fiber symmetric-rate EPON ONU, low and medium power budget" },
+ { LLDP_DOT3_MAU_10GBASEPRU3, "10GbasePRU3 - One single-mode fiber symmetric-rate EPON ONU, high power budget (PR30)" },
+ { LLDP_DOT3_MAU_40GBASEKR4, "40GbaseKR4 - 40GBASE-R PCS/PMA over an electrical backplane" },
+ { LLDP_DOT3_MAU_40GBASECR4, "40GbaseCR4 - 40GBASE-R PCS/PMA over 4 lane shielded copper balanced cable" },
+ { LLDP_DOT3_MAU_40GBASESR4, "40GbaseSR4 - 40GBASE-R PCS/PMA over 4 lane multimode fiber" },
+ { LLDP_DOT3_MAU_40GBASEFR, "40GbaseFR - 40GBASE-R PCS/PMA over single mode fiber" },
+ { LLDP_DOT3_MAU_40GBASELR4, "40GbaseLR4 - 40GBASE-R PCS/PMA over 4 WDM lane single mode fiber" },
+ { LLDP_DOT3_MAU_100GBASECR10, "100GbaseCR10 - 100GBASE-R PCS/PMA over 10 lane shielded copper balanced cable" },
+ { LLDP_DOT3_MAU_100GBASESR10, "100GbaseSR10 - 100GBASE-R PCS/PMA over 10 lane multimode fiber" },
+ { LLDP_DOT3_MAU_100GBASELR4, "100GbaseLR4 - 100GBASE-R PCS/PMA over 4 WDM lane single mode fiber, long reach" },
+ { LLDP_DOT3_MAU_100GBASEER4, "100GbaseER4 - 100GBASE-R PCS/PMA over 4 WDM lane single mode fiber PMD, extended reach" },
{ 0, NULL }
};
#endif
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/lldpd-1.0.1/src/lib/connection.c new/lldpd-1.0.2/src/lib/connection.c
--- old/lldpd-1.0.1/src/lib/connection.c 2016-03-22 17:22:00.000000000 +0100
+++ new/lldpd-1.0.2/src/lib/connection.c 2018-06-16 19:44:20.000000000 +0200
@@ -253,8 +253,8 @@
memcpy(conn->input_buffer + conn->input_buffer_len, data, length);
conn->input_buffer_len += length;
- /* Is it a notification? */
- check_for_notification(conn);
+ /* Read all notifications */
+ while(!check_for_notification(conn));
RESET_ERROR(conn);
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/lldpd-1.0.1/src/lib/lldpctl.h new/lldpd-1.0.2/src/lib/lldpctl.h
--- old/lldpd-1.0.1/src/lib/lldpctl.h 2018-03-18 23:01:35.000000000 +0100
+++ new/lldpd-1.0.2/src/lib/lldpctl.h 2018-06-16 18:45:43.000000000 +0200
@@ -489,6 +489,9 @@
* This function will register the necessity to push neighbor changes to lldpd
* and therefore will issue IO operations. The error code could then be @c
* LLDPCTL_ERR_WOULDBLOCK.
+ *
+ * Once a callback is registered, the connection shouldn't be used for anything
+ * else than receiving notifications.
*/
int lldpctl_watch_callback(lldpctl_conn_t *conn,
lldpctl_change_callback cb,
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/lldpd-1.0.1/src/lldp-const.h new/lldpd-1.0.2/src/lldp-const.h
--- old/lldpd-1.0.1/src/lldp-const.h 2017-09-15 07:18:22.000000000 +0200
+++ new/lldpd-1.0.2/src/lldp-const.h 2018-09-24 21:06:26.000000000 +0200
@@ -61,7 +61,7 @@
#define LLDP_DOT3_MAU_10BASETFD 11
#define LLDP_DOT3_MAU_10BASEFLHD 12
#define LLDP_DOT3_MAU_10BASEFLFD 13
-#define LLDP_DOT3_MAU_10BASET4 14
+#define LLDP_DOT3_MAU_100BASET4 14
#define LLDP_DOT3_MAU_100BASETXHD 15
#define LLDP_DOT3_MAU_100BASETXFD 16
#define LLDP_DOT3_MAU_100BASEFXHD 17
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/lldpd-1.0.1/src/lldpd-structs.h new/lldpd-1.0.2/src/lldpd-structs.h
--- old/lldpd-1.0.1/src/lldpd-structs.h 2018-03-18 23:01:35.000000000 +0100
+++ new/lldpd-1.0.2/src/lldpd-structs.h 2018-10-02 21:11:41.000000000 +0200
@@ -129,6 +129,13 @@
MARSHAL(lldpd_dot3_power);
#endif
+#ifdef ENABLE_CDP
+struct cdpv2_power {
+ u_int16_t request_id;
+ u_int16_t management_id;
+};
+#endif
+
enum {
LLDPD_AF_UNSPEC = 0,
LLDPD_AF_IPV4,
@@ -136,17 +143,6 @@
LLDPD_AF_LAST
};
-inline static int
-lldpd_af(int af)
-{
- switch (af) {
- case LLDPD_AF_IPV4: return AF_INET;
- case LLDPD_AF_IPV6: return AF_INET6;
- case LLDPD_AF_LAST: return AF_MAX;
- default: return AF_UNSPEC;
- }
-}
-
#define LLDPD_MGMT_MAXADDRSIZE 16 /* sizeof(struct in6_addr) */
union lldpd_address {
struct in_addr inet;
@@ -277,6 +273,10 @@
struct lldpd_med_power p_med_power;
#endif
+#ifdef ENABLE_CDP
+ struct cdpv2_power p_cdp_power;
+#endif
+
#ifdef ENABLE_DOT1
u_int16_t p_pvid;
TAILQ_HEAD(, lldpd_vlan) p_vlans;
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/lldpd-1.0.1/src/marshal.c new/lldpd-1.0.2/src/marshal.c
--- old/lldpd-1.0.1/src/marshal.c 2018-03-13 07:09:54.000000000 +0100
+++ new/lldpd-1.0.2/src/marshal.c 2018-09-24 21:06:26.000000000 +0200
@@ -63,7 +63,7 @@
struct ref {
TAILQ_ENTRY(ref) next;
void *pointer;
- int dummy; /* To renumerate pointers */
+ uintptr_t dummy; /* To renumerate pointers */
};
TAILQ_HEAD(ref_l, ref);
@@ -78,7 +78,7 @@
size_t len;
struct marshal_subinfo *current;
struct marshal_serialized *new = NULL, *serialized = NULL;
- int dummy = 1;
+ uintptr_t dummy = 1;
log_debug("marshal", "start serialization of %s", mi->name);
@@ -116,7 +116,7 @@
goto marshal_error;
}
/* We don't use the original pointer but a dummy one. */
- serialized->orig = (unsigned char*)NULL + dummy;
+ serialized->orig = (unsigned char*)dummy;
/* Append the new reference */
if (!(cref = calloc(1, sizeof(struct ref)))) {
@@ -163,7 +163,7 @@
if (current->kind == pointer && !skip) {
TAILQ_FOREACH(cref, refs, next) {
if (source == cref->pointer) {
- void *fakepointer = (unsigned char*)NULL + cref->dummy;
+ void *fakepointer = (unsigned char*)cref->dummy;
memcpy((unsigned char *)serialized->object + current->offset,
&fakepointer, sizeof(void *));
break;
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/lldpd-1.0.1/src/marshal.h new/lldpd-1.0.2/src/marshal.h
--- old/lldpd-1.0.1/src/marshal.h 2018-03-13 07:09:54.000000000 +0100
+++ new/lldpd-1.0.2/src/marshal.h 2018-10-02 20:36:07.000000000 +0200
@@ -19,6 +19,7 @@
#define _MARSHAL_H
#include
+#include
#include
struct marshal_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/lldpd-1.0.1/test-driver new/lldpd-1.0.2/test-driver
--- old/lldpd-1.0.1/test-driver 2018-04-09 13:51:25.000000000 +0200
+++ new/lldpd-1.0.2/test-driver 2018-12-01 10:21:52.000000000 +0100
@@ -1,9 +1,9 @@
#! /bin/sh
# test-driver - basic testsuite driver script.
-scriptversion=2013-07-13.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+# Copyright (C) 2011-2018 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
@@ -16,7 +16,7 @@
# 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/.
+# along with this program. If not, see https://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
@@ -140,9 +140,9 @@
# Local Variables:
# mode: shell-script
# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# 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/lldpd-1.0.1/tests/Makefile.am new/lldpd-1.0.2/tests/Makefile.am
--- old/lldpd-1.0.1/tests/Makefile.am 2016-04-23 08:07:23.000000000 +0200
+++ new/lldpd-1.0.2/tests/Makefile.am 2018-06-13 07:41:40.000000000 +0200
@@ -5,8 +5,8 @@
if HAVE_CHECK
TESTS = check_marshal check_pattern check_lldp check_cdp check_sonmp check_edp check_fixedpoint
-AM_CFLAGS += @CHECK_CFLAGS@
-LDADD = $(top_builddir)/src/daemon/liblldpd.la @CHECK_LIBS@ @LIBEVENT_LDFLAGS@
+AM_CFLAGS += @check_CFLAGS@
+LDADD = $(top_builddir)/src/daemon/liblldpd.la @check_LIBS@ @libevent_LDFLAGS@
check_marshal_SOURCES = check_marshal.c \
$(top_srcdir)/src/marshal.h \
++++++ lldpd.keyring ++++++
++++ 1111 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/lldpd/lldpd.keyring
++++ and /work/SRC/openSUSE:Factory/.lldpd.new.19453/lldpd.keyring