Hello community, here is the log from the commit of package llmnrd for openSUSE:Factory checked in at 2019-02-01 11:45:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/llmnrd (Old) and /work/SRC/openSUSE:Factory/.llmnrd.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "llmnrd" Fri Feb 1 11:45:32 2019 rev:5 rq:669863 version:0.6 Changes: -------- --- /work/SRC/openSUSE:Factory/llmnrd/llmnrd.changes 2017-11-24 10:56:21.900133458 +0100 +++ /work/SRC/openSUSE:Factory/.llmnrd.new.28833/llmnrd.changes 2019-02-01 11:45:33.804545214 +0100 @@ -1,0 +2,7 @@ +Tue Jan 29 12:52:45 UTC 2019 - [email protected] + +- Update to version 0.6 + * Ignore queries with TC bit set in llmnrd + * Add option to set conflict bit in llmnr-query + +------------------------------------------------------------------- Old: ---- llmnrd-0.5.tar.gz New: ---- llmnrd-0.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ llmnrd.spec ++++++ --- /var/tmp/diff_new_pack.zXgOBP/_old 2019-02-01 11:45:34.400544602 +0100 +++ /var/tmp/diff_new_pack.zXgOBP/_new 2019-02-01 11:45:34.404544598 +0100 @@ -1,7 +1,7 @@ # # spec file for package llmnrd # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2017, Martin Hauke <[email protected]> # # All modifications and additions to the file contributed by third parties @@ -19,16 +19,15 @@ #Compat macro for new _fillupdir macro introduced in Nov 2017 %if ! %{defined _fillupdir} - %define _fillupdir /var/adm/fillup-templates + %define _fillupdir %{_localstatedir}/adm/fillup-templates %endif - Name: llmnrd -Version: 0.5 +Version: 0.6 Release: 0 Summary: Link-Local Multicast Resolution (LLMNR) Daemon -License: GPL-2.0 +License: GPL-2.0-only Group: System/Daemons -Url: https://github.com/tklauser/llmnrd +URL: https://github.com/tklauser/llmnrd Source: https://github.com/tklauser/llmnrd/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: llmnrd.service Source2: llmnrd.sysconfig @@ -37,7 +36,6 @@ BuildRequires: gcc BuildRequires: git-core BuildRequires: make -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description llmnrd is a daemon implementing the Link-Local Multicast Name Resolution (LLMNR) @@ -79,15 +77,15 @@ %service_del_postun llmnrd.service %files -%defattr(-,root,root) -%doc README.md COPYING +%license COPYING +%doc README.md %{_bindir}/llmnr-query %{_sbindir}/llmnrd %{_sbindir}/rcllmnrd %{_unitdir}/llmnrd.service %{_fillupdir}/sysconfig.llmnrd %config(noreplace) %{_sysconfdir}/apparmor.d/usr.sbin.llmnrd -%{_mandir}/man1/llmnr-query.1%{ext_man} -%{_mandir}/man8/llmnrd.8%{ext_man} +%{_mandir}/man1/llmnr-query.1%{?ext_man} +%{_mandir}/man8/llmnrd.8%{?ext_man} %changelog ++++++ llmnrd-0.5.tar.gz -> llmnrd-0.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llmnrd-0.5/Makefile new/llmnrd-0.6/Makefile --- old/llmnrd-0.5/Makefile 2017-10-18 09:25:44.000000000 +0200 +++ new/llmnrd-0.6/Makefile 2019-01-29 10:04:04.000000000 +0100 @@ -1,8 +1,8 @@ # Makefile for llmnrd # -# Copyright (C) 2014-2017 Tobias Klauser <[email protected]> +# Copyright (C) 2014-2019 Tobias Klauser <[email protected]> -VERSION = 0.5 +VERSION = 0.6 # llmnrd binary D_P = llmnrd @@ -16,7 +16,7 @@ Q_LIBS = Q_MAN = $(Q_P).1 -CC = $(CROSS_COMPILE)gcc +CC ?= gcc INSTALL = install GZIP = gzip -9 -c diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llmnrd-0.5/README.md new/llmnrd-0.6/README.md --- old/llmnrd-0.5/README.md 2017-10-18 09:25:44.000000000 +0200 +++ new/llmnrd-0.6/README.md 2019-01-29 10:04:04.000000000 +0100 @@ -32,11 +32,12 @@ Cross-Compilation ================= -To cross-compile llmnrd for a different architecture, use the `CROSS_COMPILE` -make variable. To e.g. build it using the arm-linux-gnueabihf toolchain use: +To cross-compile llmnrd for a different architecture, set the `CC` make +variable to the corresponding cross-compiler. To e.g. build it using the +arm-linux-gnueabihf toolchain use: ``` -$ make CROSS_COMPILE=arm-linux-gnueabihf- +$ make CC=arm-linux-gnueabihf-gcc ``` When cross-compiling, you usually don't want to install the generated binary to diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llmnrd-0.5/doc/llmnr-query.1 new/llmnrd-0.6/doc/llmnr-query.1 --- old/llmnrd-0.5/doc/llmnr-query.1 2017-10-18 09:25:44.000000000 +0200 +++ new/llmnrd-0.6/doc/llmnr-query.1 2019-01-29 10:04:04.000000000 +0100 @@ -27,7 +27,7 @@ Set query type. Must be one of A, AAAA, ANY (default: ANY). .TP .B -6, --ipv6 -End queries over IPv6. +Send queries over IPv6. .TP .B -h, --help Show usage information. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llmnrd-0.5/llmnr-query.c new/llmnrd-0.6/llmnr-query.c --- old/llmnrd-0.5/llmnr-query.c 2017-10-18 09:25:44.000000000 +0200 +++ new/llmnrd-0.6/llmnr-query.c 2019-01-29 10:04:04.000000000 +0100 @@ -1,7 +1,7 @@ /* * Simple LLMNR (RFC 4795) query tool. * - * Copyright (C) 2015-2017 Tobias Klauser <[email protected]> + * Copyright (C) 2015-2018 Tobias Klauser <[email protected]> * * This file is part of llmnrd. * @@ -42,7 +42,7 @@ /* Maximum possible size RFC 4795, section 2.1 */ static const size_t LLMNR_QUERY_PKT_BUF_SIZE = 9194; -static const char *short_ops = "c:d:i:I:t:T:6hV"; +static const char *short_ops = "c:d:i:I:t:T:6ChV"; static const struct option long_opts[] = { { "count", required_argument, NULL, 'c' }, { "id", required_argument, NULL, 'd' }, @@ -50,6 +50,7 @@ { "interface", required_argument, NULL, 'I' }, { "timeout", required_argument, NULL, 't' }, { "type", required_argument, NULL, 'T' }, + { "conflict", no_argument, NULL, 'C' }, { "ipv6", no_argument, NULL, '6' }, { "help", no_argument, NULL, 'h' }, { "version", no_argument, NULL, 'V' }, @@ -67,6 +68,7 @@ " -t, --timeout NUM time to wait for reply in ms (default: 1000)\n" " -T, --type TYPE set query type; must be one of A, AAAA, ANY (default: ANY)\n" " -6, --ipv6 send queries over IPv6\n" + " -C, --conflict set conflict bit in query\n" " -h, --help show this help and exit\n" " -V, --version show version information and exit\n"); exit(status); @@ -75,7 +77,7 @@ static void __noreturn version_and_exit(void) { fprintf(stdout, "llmnr-query %s %s\n" - "Copyright (C) 2015-2017 Tobias Klauser <[email protected]>\n" + "Copyright (C) 2015-2018 Tobias Klauser <[email protected]>\n" "Licensed under the GNU General Public License, version 2\n", VERSION_STRING, GIT_VERSION); exit(EXIT_SUCCESS); @@ -101,6 +103,7 @@ const char *query_name, *iface = NULL; size_t query_name_len; unsigned long i, id = 0, count = 1, interval_ms = 500, timeout_ms = 1000; + uint16_t flags = 0; uint16_t qtype = LLMNR_QTYPE_ANY; bool ipv6 = false; struct pkt *p; @@ -112,6 +115,9 @@ case 'c': count = strtoul(optarg, NULL, 0); break; + case 'C': + flags |= LLMNR_F_C; + break; case 'd': id = strtoul(optarg, NULL, 0); break; @@ -141,6 +147,7 @@ break; case 'V': version_and_exit(); + /* fall through */ case 'h': usage_and_exit(EXIT_SUCCESS); default: @@ -235,7 +242,7 @@ hdr = (struct llmnr_hdr *)pkt_put(p, sizeof(*hdr)); hdr->id = htons(id + i % UINT16_MAX); - hdr->flags = 0; + hdr->flags = htons(flags); hdr->qdcount = htons(1); hdr->ancount = 0; hdr->nscount = 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llmnrd-0.5/llmnr.c new/llmnrd-0.6/llmnr.c --- old/llmnrd-0.5/llmnr.c 2017-10-18 09:25:44.000000000 +0200 +++ new/llmnrd-0.6/llmnr.c 2019-01-29 10:04:04.000000000 +0100 @@ -204,8 +204,8 @@ flags = ntohs(hdr->flags); qdcount = ntohs(hdr->qdcount); - /* Query invalid as per RFC 4795, section 2.1.1? */ - if (((flags & (LLMNR_F_QR | LLMNR_F_OPCODE)) != 0) || + /* Query invalid as per RFC 4795, section 2.1.1 */ + if (((flags & (LLMNR_F_QR | LLMNR_F_OPCODE | LLMNR_F_TC)) != 0) || qdcount != 1 || hdr->ancount != 0 || hdr->nscount != 0) return;
