Compare commits

..

No commits in common. "rawhide" and "f29" have entirely different histories.
rawhide ... f29

12 changed files with 55 additions and 712 deletions

1
.gitignore vendored
View File

@ -5,4 +5,3 @@
/avahi-0.6.31.tar.gz
/avahi-0.6.32.tar.gz
/avahi-0.7.tar.gz
/avahi-0.8.tar.gz

View File

@ -1,25 +0,0 @@
From 9c3a314856affb288f701d2d3ee23278fc98eaee Mon Sep 17 00:00:00 2001
From: Steve Langasek <steve.langasek@ubuntu.com>
Date: Tue, 18 Feb 2020 15:43:19 +0800
Subject: [PATCH 06/11] avahi-dnsconfd.service: Drop "Also=avahi-daemon.socket"
Also=avahi-daemon.socket' means that 'systemctl disable avahi-dnsconfd'
ill also disable avahi-daemon.socket, which is definitely not what we
ant, and it also causes debhelper to throw an error. Just drop this
entry from the configuration.
---
avahi-dnsconfd/avahi-dnsconfd.service.in | 1 -
1 file changed, 1 deletion(-)
diff --git a/avahi-dnsconfd/avahi-dnsconfd.service.in b/avahi-dnsconfd/avahi-dnsconfd.service.in
index 95db79f..7c293da 100644
--- a/avahi-dnsconfd/avahi-dnsconfd.service.in
+++ b/avahi-dnsconfd/avahi-dnsconfd.service.in
@@ -26,4 +26,3 @@ ExecStart=@sbindir@/avahi-dnsconfd -s
[Install]
WantedBy=multi-user.target
-Also=avahi-daemon.socket
--
2.25.2

View File

@ -1,35 +0,0 @@
From f983df44870b602179b493f9c3d113753b378e27 Mon Sep 17 00:00:00 2001
From: Michael Biebl <biebl@debian.org>
Date: Sun, 17 Sep 2017 12:52:39 +0200
Subject: [PATCH 07/11] man: add missing bshell.1 symlink
The bshell binary is missing a symlink to its manual page. It should be
symlinked to the man page for bssh, just like how the bvnc man page is.
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=655190
---
man/Makefile.am | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/Makefile.am b/man/Makefile.am
index d38267c..77a27bd 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -137,12 +137,13 @@ BSSH_LN =
if HAVE_GTK
if HAVE_GLIB
BSSH_LN += $(LN_S) bssh.1 bvnc.1 &&
+BSSH_LN += $(LN_S) bssh.1 bshell.1 &&
endif
endif
install-exec-local:
mkdir -p $(DESTDIR)/$(mandir)/man1 && \
cd $(DESTDIR)/$(mandir)/man1 && \
- rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 && \
+ rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 bshell.1 && \
$(BSSH_LN) \
$(LN_S) avahi-resolve.1 avahi-resolve-host-name.1 && \
$(LN_S) avahi-resolve.1 avahi-resolve-address.1 && \
--
2.25.2

View File

@ -1,52 +0,0 @@
From 751be804e891aec5701a059144e2f5cbfc981b36 Mon Sep 17 00:00:00 2001
From: Andreas Henriksson <andreas@fatal.se>
Date: Thu, 24 Aug 2017 17:52:19 +0200
Subject: [PATCH 08/11] Ship avahi-discover(1), bssh(1) and bvnc(1) also for
GTK3
These manpages went missing when you disabled gtk2 builds....
---
man/Makefile.am | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/man/Makefile.am b/man/Makefile.am
index 77a27bd..289b942 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -56,7 +56,7 @@ man_MANS += \
avahi-publish.1 \
avahi-set-host-name.1
-if HAVE_GTK
+if HAVE_GTK2OR3
man_MANS += \
bssh.1
endif
@@ -64,12 +64,13 @@ endif
if HAVE_PYTHON
man_MANS += \
avahi-bookmarks.1
-if HAVE_GTK
+endif
+
+if HAVE_PYGOBJECT
man_MANS += \
avahi-discover.1
endif
endif
-endif
if ENABLE_AUTOIPD
if HAVE_LIBDAEMON
@@ -134,7 +135,7 @@ EXTRA_DIST = \
if HAVE_DBUS
BSSH_LN =
-if HAVE_GTK
+if HAVE_GTK2OR3
if HAVE_GLIB
BSSH_LN += $(LN_S) bssh.1 bvnc.1 &&
BSSH_LN += $(LN_S) bssh.1 bshell.1 &&
--
2.25.2

View File

@ -1,24 +0,0 @@
From 366e3798bdbd6b7bf24e59379f4a9a51af575ce9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tomasz=20Pawe=C5=82=20Gajc?= <tpgxyz@gmail.com>
Date: Thu, 20 Feb 2020 16:09:40 +0100
Subject: [PATCH 09/11] fix requires in pc file
---
avahi-libevent.pc.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/avahi-libevent.pc.in b/avahi-libevent.pc.in
index a1dca01..3356b0b 100644
--- a/avahi-libevent.pc.in
+++ b/avahi-libevent.pc.in
@@ -6,6 +6,6 @@ includedir=${prefix}/include
Name: avahi-libevent
Description: Avahi Multicast DNS Responder (libevent Support)
Version: @PACKAGE_VERSION@
-Requires: libevent-2.1.5
+Requires: libevent >= 2.1.5
Libs: -L${libdir} -lavahi-libevent
Cflags: -D_REENTRANT -I${includedir}
--
2.25.2

View File

@ -1,32 +0,0 @@
From a94f72081dd1d546a1d95d860311a1242315bb28 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89ric=20Araujo?= <merwok@netwok.org>
Date: Sat, 29 Feb 2020 19:14:04 -0500
Subject: [PATCH 10/11] fix bytestring decoding for proper display
---
avahi-python/avahi-discover/avahi-discover.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/avahi-python/avahi-discover/avahi-discover.py b/avahi-python/avahi-discover/avahi-discover.py
index 0db705d..4a2b575 100755
--- a/avahi-python/avahi-discover/avahi-discover.py
+++ b/avahi-python/avahi-discover/avahi-discover.py
@@ -238,12 +238,15 @@ class Main_window:
txts+="<b>" + _("TXT") + " <i>%s</i></b> = %s\n" % (k,v)
else:
txts = "<b>" + _("TXT Data:") + "</b> <i>" + _("empty") + "</i>"
+
+ txts = txts.decode("utf-8")
infos = "<b>" + _("Service Type:") + "</b> %s\n"
infos += "<b>" + _("Service Name:") + "</b> %s\n"
infos += "<b>" + _("Domain Name:") + "</b> %s\n"
infos += "<b>" + _("Interface:") + "</b> %s %s\n"
infos += "<b>" + _("Address:") + "</b> %s/%s:%i\n%s"
+ infos = infos.decode("utf-8")
infos = infos % (stype, name, domain, self.siocgifname(interface), self.protoname(protocol), host, address, port, txts.strip())
self.info_label.set_markup(infos)
--
2.25.2

View File

@ -1,33 +0,0 @@
From b897ca43ac100d326d118e5877da710eb7f836f9 Mon Sep 17 00:00:00 2001
From: traffic-millions <60914101+traffic-millions@users.noreply.github.com>
Date: Tue, 3 Mar 2020 11:15:48 +0800
Subject: [PATCH 11/11] avahi_dns_packet_consume_uint32: fix potential
undefined behavior
avahi_dns_packet_consume_uint32 left shifts uint8_t values by 8, 16 and 24 bits to combine them into a 32-bit value. This produces an undefined behavior warning with gcc -fsanitize when fed input values of 128 or 255 however in testing no actual unexpected behavior occurs in practice and the 32-bit uint32_t is always correctly produced as the final value is immediately stored into a uint32_t and the compiler appears to handle this "correctly".
Cast the intermediate values to uint32_t to prevent this warning and ensure the intended result is explicit.
Closes: #267
Closes: #268
Reference: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=19304
---
avahi-core/dns.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/avahi-core/dns.c b/avahi-core/dns.c
index 7c38f42..d793b76 100644
--- a/avahi-core/dns.c
+++ b/avahi-core/dns.c
@@ -455,7 +455,7 @@ int avahi_dns_packet_consume_uint32(AvahiDnsPacket *p, uint32_t *ret_v) {
return -1;
d = (uint8_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex);
- *ret_v = (d[0] << 24) | (d[1] << 16) | (d[2] << 8) | d[3];
+ *ret_v = ((uint32_t)d[0] << 24) | ((uint32_t)d[1] << 16) | ((uint32_t)d[2] << 8) | (uint32_t)d[3];
p->rindex += sizeof(uint32_t);
return 0;
--
2.25.2

View File

@ -1,151 +0,0 @@
From 9d31939e55280a733d930b15ac9e4dda4497680c Mon Sep 17 00:00:00 2001
From: Tommi Rantala <tommi.t.rantala@nokia.com>
Date: Mon, 8 Feb 2021 11:04:43 +0200
Subject: [PATCH 16/16] Fix NULL pointer crashes from #175
avahi-daemon is crashing when running "ping .local".
The crash is due to failing assertion from NULL pointer.
Add missing NULL pointer checks to fix it.
Introduced in #175 - merge commit 8f75a045709a780c8cf92a6a21e9d35b593bdecd
---
avahi-core/browse-dns-server.c | 5 ++++-
avahi-core/browse-domain.c | 5 ++++-
avahi-core/browse-service-type.c | 3 +++
avahi-core/browse-service.c | 3 +++
avahi-core/browse.c | 3 +++
avahi-core/resolve-address.c | 5 ++++-
avahi-core/resolve-host-name.c | 5 ++++-
avahi-core/resolve-service.c | 5 ++++-
8 files changed, 29 insertions(+), 5 deletions(-)
diff --git a/avahi-core/browse-dns-server.c b/avahi-core/browse-dns-server.c
index 049752e..c2d914f 100644
--- a/avahi-core/browse-dns-server.c
+++ b/avahi-core/browse-dns-server.c
@@ -343,7 +343,10 @@ AvahiSDNSServerBrowser *avahi_s_dns_server_browser_new(
AvahiSDNSServerBrowser* b;
b = avahi_s_dns_server_browser_prepare(server, interface, protocol, domain, type, aprotocol, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_dns_server_browser_start(b);
return b;
-}
\ No newline at end of file
+}
diff --git a/avahi-core/browse-domain.c b/avahi-core/browse-domain.c
index f145d56..06fa70c 100644
--- a/avahi-core/browse-domain.c
+++ b/avahi-core/browse-domain.c
@@ -253,7 +253,10 @@ AvahiSDomainBrowser *avahi_s_domain_browser_new(
AvahiSDomainBrowser *b;
b = avahi_s_domain_browser_prepare(server, interface, protocol, domain, type, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_domain_browser_start(b);
return b;
-}
\ No newline at end of file
+}
diff --git a/avahi-core/browse-service-type.c b/avahi-core/browse-service-type.c
index fdd22dc..b1fc7af 100644
--- a/avahi-core/browse-service-type.c
+++ b/avahi-core/browse-service-type.c
@@ -171,6 +171,9 @@ AvahiSServiceTypeBrowser *avahi_s_service_type_browser_new(
AvahiSServiceTypeBrowser *b;
b = avahi_s_service_type_browser_prepare(server, interface, protocol, domain, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_service_type_browser_start(b);
return b;
diff --git a/avahi-core/browse-service.c b/avahi-core/browse-service.c
index 5531360..63e0275 100644
--- a/avahi-core/browse-service.c
+++ b/avahi-core/browse-service.c
@@ -184,6 +184,9 @@ AvahiSServiceBrowser *avahi_s_service_browser_new(
AvahiSServiceBrowser *b;
b = avahi_s_service_browser_prepare(server, interface, protocol, service_type, domain, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_service_browser_start(b);
return b;
diff --git a/avahi-core/browse.c b/avahi-core/browse.c
index 2941e57..e8a915e 100644
--- a/avahi-core/browse.c
+++ b/avahi-core/browse.c
@@ -634,6 +634,9 @@ AvahiSRecordBrowser *avahi_s_record_browser_new(
AvahiSRecordBrowser *b;
b = avahi_s_record_browser_prepare(server, interface, protocol, key, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_record_browser_start_query(b);
return b;
diff --git a/avahi-core/resolve-address.c b/avahi-core/resolve-address.c
index ac0b29b..e61dd24 100644
--- a/avahi-core/resolve-address.c
+++ b/avahi-core/resolve-address.c
@@ -286,7 +286,10 @@ AvahiSAddressResolver *avahi_s_address_resolver_new(
AvahiSAddressResolver *b;
b = avahi_s_address_resolver_prepare(server, interface, protocol, address, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_address_resolver_start(b);
return b;
-}
\ No newline at end of file
+}
diff --git a/avahi-core/resolve-host-name.c b/avahi-core/resolve-host-name.c
index 808b0e7..4e8e597 100644
--- a/avahi-core/resolve-host-name.c
+++ b/avahi-core/resolve-host-name.c
@@ -318,7 +318,10 @@ AvahiSHostNameResolver *avahi_s_host_name_resolver_new(
AvahiSHostNameResolver *b;
b = avahi_s_host_name_resolver_prepare(server, interface, protocol, host_name, aprotocol, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_host_name_resolver_start(b);
return b;
-}
\ No newline at end of file
+}
diff --git a/avahi-core/resolve-service.c b/avahi-core/resolve-service.c
index 66bf3ca..4377176 100644
--- a/avahi-core/resolve-service.c
+++ b/avahi-core/resolve-service.c
@@ -519,7 +519,10 @@ AvahiSServiceResolver *avahi_s_service_resolver_new(
AvahiSServiceResolver *b;
b = avahi_s_service_resolver_prepare(server, interface, protocol, name, type, domain, aprotocol, flags, callback, userdata);
+ if (!b)
+ return NULL;
+
avahi_s_service_resolver_start(b);
return b;
-}
\ No newline at end of file
+}
--
2.31.1

View File

@ -1,29 +0,0 @@
From 66a684b988052664669158819fc123469b714f50 Mon Sep 17 00:00:00 2001
From: Rex Dieter <rdieter@gmail.com>
Date: Tue, 17 Nov 2020 16:42:00 -0600
Subject: [PATCH 16/16] fix QT3 build
recent commit d1e71b320d96d0f213ecb0885c8313039a09f693 adding QT5
support added a new conditional
but failed to actually set the define. This commit adds that to
allow successful build when enabling QT3 support
---
avahi-qt/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/avahi-qt/Makefile.am b/avahi-qt/Makefile.am
index 09ce7ca..b404810 100644
--- a/avahi-qt/Makefile.am
+++ b/avahi-qt/Makefile.am
@@ -38,7 +38,7 @@ libavahi_qt3_la_SOURCES = \
qt-watch.moc3: qt-watch.cpp
$(AM_V_GEN)$(MOC_QT3) $^ > $@
-libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) $(VISIBILITY_HIDDEN_CFLAGS)
+libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS)
libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS)
libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO)
endif
--
2.28.0

View File

@ -1,66 +0,0 @@
diff -up avahi-0.8/avahi-qt/Makefile.am.no_undefined avahi-0.8/avahi-qt/Makefile.am
--- avahi-0.8/avahi-qt/Makefile.am.no_undefined 2018-09-14 00:31:28.490023071 -0500
+++ avahi-0.8/avahi-qt/Makefile.am 2020-11-17 16:35:04.646045499 -0600
@@ -38,9 +38,9 @@ libavahi_qt3_la_SOURCES = \
qt-watch.moc3: qt-watch.cpp
$(AM_V_GEN)$(MOC_QT3) $^ > $@
-libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS)
+libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS)
libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS)
-libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO)
+libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO)
endif
if HAVE_QT4
@@ -62,7 +62,7 @@ qt-watch.moc4: qt-watch.cpp
libavahi_qt4_la_CPPFLAGS = $(AM_CFLAGS) $(QT4_CFLAGS) -DQT4 $(VISIBILITY_HIDDEN_CFLAGS)
libavahi_qt4_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT4_LIBS)
-libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT4_VERSION_INFO)
+libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT4_VERSION_INFO)
endif
if HAVE_QT5
@@ -84,7 +84,7 @@ qt-watch.moc5: qt-watch.cpp
libavahi_qt5_la_CPPFLAGS = $(AM_CFLAGS) --std=gnu++11 $(QT5_CFLAGS) -DQT5 $(VISIBILITY_HIDDEN_CFLAGS)
libavahi_qt5_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT5_LIBS)
-libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT5_VERSION_INFO)
+libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT5_VERSION_INFO)
endif
CLEANFILES = $(BUILT_SOURCES)
diff -up avahi-0.8/avahi-qt/Makefile.in.no_undefined avahi-0.8/avahi-qt/Makefile.in
--- avahi-0.8/avahi-qt/Makefile.in.no_undefined 2020-02-18 01:03:16.474614659 -0600
+++ avahi-0.8/avahi-qt/Makefile.in 2020-11-17 16:36:12.263297534 -0600
@@ -551,9 +551,9 @@ BUILT_SOURCES = $(am__append_2) $(am__ap
@HAVE_QT3_TRUE@libavahi_qt3_la_SOURCES = \
@HAVE_QT3_TRUE@ qt-watch.cpp
-@HAVE_QT3_TRUE@libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) $(VISIBILITY_HIDDEN_CFLAGS)
+@HAVE_QT3_TRUE@libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS)
@HAVE_QT3_TRUE@libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS)
-@HAVE_QT3_TRUE@libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO)
+@HAVE_QT3_TRUE@libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO)
@HAVE_QT4_TRUE@avahiqt4includedir = $(includedir)/avahi-qt4
@HAVE_QT4_TRUE@avahiqt4include_HEADERS = \
@HAVE_QT4_TRUE@ qt-watch.h
@@ -563,7 +563,7 @@ BUILT_SOURCES = $(am__append_2) $(am__ap
@HAVE_QT4_TRUE@libavahi_qt4_la_CPPFLAGS = $(AM_CFLAGS) $(QT4_CFLAGS) -DQT4 $(VISIBILITY_HIDDEN_CFLAGS)
@HAVE_QT4_TRUE@libavahi_qt4_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT4_LIBS)
-@HAVE_QT4_TRUE@libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT4_VERSION_INFO)
+@HAVE_QT4_TRUE@libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT4_VERSION_INFO)
@HAVE_QT5_TRUE@avahiqt5includedir = $(includedir)/avahi-qt5
@HAVE_QT5_TRUE@avahiqt5include_HEADERS = \
@HAVE_QT5_TRUE@ qt-watch.h
@@ -573,7 +573,7 @@ BUILT_SOURCES = $(am__append_2) $(am__ap
@HAVE_QT5_TRUE@libavahi_qt5_la_CPPFLAGS = $(AM_CFLAGS) --std=gnu++11 $(QT5_CFLAGS) -DQT5 $(VISIBILITY_HIDDEN_CFLAGS)
@HAVE_QT5_TRUE@libavahi_qt5_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT5_LIBS)
-@HAVE_QT5_TRUE@libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT5_VERSION_INFO)
+@HAVE_QT5_TRUE@libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT5_VERSION_INFO)
CLEANFILES = $(BUILT_SOURCES)
all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-am

View File

@ -1,45 +1,21 @@
%bcond_with bootstrap
%if %{without bootstrap}
%{?!WITH_MONO: %global WITH_MONO 1}
%else
%{?!WITH_MONO: %global WITH_MONO 0}
%endif
%{?!WITH_COMPAT_DNSSD: %global WITH_COMPAT_DNSSD 1}
%{?!WITH_COMPAT_HOWL: %global WITH_COMPAT_HOWL 1}
%{?!WITH_QT3: %global WITH_QT3 0}
%{?!WITH_QT4: %global WITH_QT4 0}
%if %{without bootstrap}
%{?!WITH_QT5: %global WITH_QT5 1}
%else
%{?!WITH_QT5: %global WITH_QT5 0}
%endif
# https://bugzilla.redhat.com/show_bug.cgi?id=1751484
%{?!WITH_PYTHON: %global WITH_PYTHON 0}
%{?!WITH_QT3: %global WITH_QT3 1}
%{?!WITH_QT4: %global WITH_QT4 1}
%ifnarch %{mono_arches}
%define WITH_MONO 0
%endif
%if 0%{?fedora}
%global WITH_QT3 1
%global WITH_QT4 1
%endif
%if 0%{?rhel}
%global WITH_MONO 0
%global WITH_QT5 0
%if 0%{?rhel} < 8
%global WITH_PYTHON 1
%endif
%endif
%if 0%{?fedora} == 34 || 0%{?rhel} >= 9
# https://bugzilla.redhat.com/show_bug.cgi?id=1907727
%global _lto_cflags %{nil}
%define WITH_MONO 0
%if 0%{?rhel} >= 6
%define WITH_QT4 0
%endif
%if 0%{?rhel} > 7
%define WITH_QT3 0
%endif
%endif
# http://bugzilla.redhat.com/1008395 - no hardened build
@ -49,8 +25,8 @@
%global _changelog_trimtime %(date +%s -d "1 year ago")
Name: avahi
Version: 0.8
Release: 17%{?dist}
Version: 0.7
Release: 16%{?dist}
Summary: Local network service discovery
License: LGPLv2+
URL: http://avahi.org
@ -66,29 +42,6 @@ BuildRequires: automake
BuildRequires: libtool
BuildRequires: dbus-devel >= 0.90
BuildRequires: dbus-glib-devel >= 0.70
BuildRequires: desktop-file-utils
%if %{without bootstrap}
BuildRequires: gtk2-devel
BuildRequires: gtk3-devel >= 2.99.0
%endif
#BuildRequires: gobject-introspection-devel
%if %{WITH_QT3}
BuildRequires: qt3-devel
%endif
%if %{WITH_QT4}
BuildRequires: qt4-devel
%endif
%if %{WITH_QT5}
BuildRequires: qt5-qtbase-devel
%endif
BuildRequires: libdaemon-devel >= 0.11
BuildRequires: glib2-devel
BuildRequires: libcap-devel
BuildRequires: expat-devel
%if %{WITH_PYTHON}
%if %{without bootstrap}
BuildRequires: pygtk2
%endif
%if 0%{?fedora} > 27
%global python2_dbus python2-dbus
%global python2_libxml2 python2-libxml2
@ -98,16 +51,25 @@ BuildRequires: pygtk2
%endif
BuildRequires: %{python2_dbus}
BuildRequires: %{python2_libxml2}
# really only need interpreter + rpm-macros -- rex
BuildRequires: desktop-file-utils
BuildRequires: gtk2-devel
BuildRequires: gtk3-devel >= 2.99.0
#BuildRequires: gobject-introspection-devel
%if %{WITH_QT3}
BuildRequires: qt3-devel
%endif
%if %{WITH_QT4}
BuildRequires: qt4-devel
%endif
BuildRequires: libdaemon-devel >= 0.11
BuildRequires: glib2-devel
BuildRequires: libcap-devel
BuildRequires: expat-devel
BuildRequires: python2-devel
BuildRequires: python3-devel
%else
Obsoletes: python2-avahi < %{version}-%{release}
Obsoletes: python3-avahi < %{version}-%{release}
%endif
BuildRequires: gdbm-devel
BuildRequires: pkgconfig(pygobject-3.0)
BuildRequires: pkgconfig(libevent) >= 2.0.21
BuildRequires: pygtk2
BuildRequires: intltool
BuildRequires: perl-XML-Parser
BuildRequires: xmltoman
@ -116,8 +78,8 @@ BuildRequires: mono-devel
BuildRequires: monodoc-devel
%endif
BuildRequires: systemd
%{?systemd_requires}
BuildRequires: gcc
BuildRequires: gcc-c++
%if 0%{?beta:1}
Source0: https://github.com/lathiat/avahi/archive/%{version}-%{beta}.tar.gz#/%{name}-%{version}-%{beta}.tar.gz
@ -127,20 +89,9 @@ Source0: https://github.com/lathiat/avahi/releases/download/v%{version}
%endif
## upstream patches
Patch6: 0006-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch
Patch7: 0007-man-add-missing-bshell.1-symlink.patch
Patch8: 0008-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK.patch
Patch9: 0009-fix-requires-in-pc-file.patch
Patch10: 0010-fix-bytestring-decoding-for-proper-display.patch
Patch11: 0011-avahi_dns_packet_consume_uint32-fix-potential-undefi.patch
Patch16: 0016-Fix-NULL-pointer-crashes-from-175.patch
## downstream patches
Patch100: avahi-0.6.30-mono-libdir.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1897925
# https://github.com/lathiat/avahi/pull/312
Patch101: 0016-fix-QT3-build.patch
Patch102: avahi-0.8-no_undefined.patch
%description
Avahi is a system which facilitates service discovery on
@ -165,16 +116,15 @@ Requires: %{name} = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: %{name}-glib%{?_isa} = %{version}-%{release}
Requires: %{name}-ui-gtk3%{?_isa} = %{version}-%{release}
Requires: python2-avahi = %{version}-%{release}
Requires: tigervnc
Requires: openssh-clients
%if %{WITH_PYTHON}
Requires: gdbm
Requires: pygtk2
Requires: pygtk2-libglade
Requires: python2-avahi = %{version}-%{release}
Requires: gdbm
Requires: %{python2_dbus}
Requires: python2-gobject-base
%endif
# aka python2-gobject-base
Requires: pygobject3-base
%description ui-tools
Graphical user interface tools that use Avahi to browse for mDNS services.
@ -214,7 +164,6 @@ Requires: %{name}-gobject%{?_isa} = %{version}-%{release}
The avahi-gobject-devel package contains the header files and libraries
necessary for developing programs using avahi-gobject.
%if %{without bootstrap}
%package ui
Summary: Gtk user interface library for Avahi (Gtk+ 2 version)
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
@ -243,7 +192,6 @@ Requires: %{name}-ui-gtk3%{?_isa} = %{version}-%{release}
%description ui-devel
The avahi-ui-devel package contains the header files and libraries
necessary for developing programs using avahi-ui.
%endif
%if %{WITH_QT3}
%package qt3
@ -281,24 +229,6 @@ Th avahi-qt4-devel package contains the header files and libraries
necessary for developing programs using avahi with Qt4.
%endif
%if %{WITH_QT5}
%package qt5
Summary: Qt5 libraries for avahi
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description qt5
Libraries for easy use of avahi from Qt5 applications.
%package qt5-devel
Summary: Libraries and header files for avahi Qt5 development
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
%description qt5-devel
Th avahi-qt5-devel package contains the header files and libraries
necessary for developing programs using avahi with Qt5.
%endif
%if %{WITH_MONO}
%package sharp
Summary: Mono language bindings for avahi mono development
@ -317,7 +247,6 @@ Requires: %{name}-sharp%{?_isa} = %{version}-%{release}
Requires: mono-core >= 1.1.13
Requires: gtk-sharp2
BuildRequires: gtk-sharp2-devel
BuildRequires: make
%description ui-sharp
The avahi-sharp package contains the files needed to run
@ -411,7 +340,6 @@ avahi-dnsconfd connects to a running avahi-daemon and runs the script
local LAN. This is useful for configuring unicast DNS servers in a DHCP-like
fashion with mDNS.
%if %{WITH_PYTHON}
%package -n python2-avahi
Summary: Python2 Avahi bindings
Obsoletes: python-avahi < 0.7
@ -429,7 +357,6 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description -n python3-avahi
%{summary}.
%endif
%prep
@ -439,10 +366,9 @@ rm -fv docs/INSTALL
%build
## why autogen?
## * kills rpaths
## * fixes -stack-protector flags (once gcc_stack_protect.m4 is removed)
rm -fv missing common/gcc_stack_protect.m4
# patch100 requires autogen
# and kills rpaths a bonus
rm -fv missing
NOCONFIGURE=1 ./autogen.sh
%configure \
@ -458,29 +384,17 @@ NOCONFIGURE=1 ./autogen.sh
--enable-shared=yes \
--enable-static=no \
--disable-silent-rules \
%if %{without bootstrap}
--enable-gtk \
%else
--disable-gtk \
--disable-gtk3 \
%endif
%if ! %{WITH_PYTHON}
--disable-python \
%endif
%if %{WITH_COMPAT_DNSSD}
--enable-compat-libdns_sd \
%endif
%if %{WITH_COMPAT_HOWL}
--enable-compat-howl \
%endif
%if %{WITH_QT3}
--enable-qt3 \
%if ! %{WITH_QT3}
--disable-qt3 \
%endif
%if %{WITH_QT4}
--enable-qt4 \
%endif
%if ! %{WITH_QT5}
--disable-qt5 \
%if ! %{WITH_QT4}
--disable-qt4 \
%endif
%if ! %{WITH_MONO}
--disable-mono \
@ -521,37 +435,29 @@ ln -s avahi-compat-libdns_sd.pc %{buildroot}/%{_libdir}/pkgconfig/libdns_sd.pc
ln -s avahi-compat-libdns_sd/dns_sd.h %{buildroot}/%{_includedir}/
%endif
%if %{WITH_PYTHON}
# Add python3 support
mkdir -p %{buildroot}%{python3_sitelib}/avahi/
cp -r %{buildroot}%{python2_sitelib}/avahi/* %{buildroot}%{python3_sitelib}/avahi/
rm -fv %{buildroot}%{buildroot}%{python3_sitelib}/avahi/*.py{c,o}
sed -i 's!/usr/bin/python2!/usr/bin/python3!' %{buildroot}%{python3_sitelib}/avahi/ServiceTypeDatabase.py
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-daemon
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-dnsconfd
# avoid empty GenericName keys from .desktop files
for i in %{buildroot}%{_datadir}/applications/*.desktop ; do
if [ -n "$(grep '^GenericName=$' $i)" ]; then
desktop-file-edit --copy-name-to-generic-name $i
fi
done
%else
# unpackaged files
rm -fv %{buildroot}%{_datadir}/applications/{bssh,bvnc}.desktop
rm -fv %{buildroot}%{_datadir}/avahi/interfaces/avahi-discover.ui
%endif
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-daemon
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-dnsconfd
%find_lang %{name}
%check
%if %{WITH_PYTHON}
for i in %{buildroot}%{_datadir}/applications/*.desktop ; do
desktop-file-validate $i
done
%endif
%pre
@ -628,9 +534,7 @@ exit 0
%dir %{_datadir}/avahi
%{_datadir}/avahi/*.dtd
%dir %{_libdir}/avahi
%if %{WITH_PYTHON}
%{_libdir}/avahi/service-types.db
%endif
%{_mandir}/man5/*
%{_mandir}/man8/avahi-daemon.*
%{_unitdir}/avahi-daemon.service
@ -652,64 +556,43 @@ exit 0
%{_unitdir}/avahi-dnsconfd.service
%files tools
%{_bindir}/avahi-browse
%{_bindir}/avahi-browse-domains
%{_bindir}/avahi-publish
%{_bindir}/avahi-publish-address
%{_bindir}/avahi-publish-service
%{_bindir}/avahi-resolve
%{_bindir}/avahi-resolve-address
%{_bindir}/avahi-resolve-host-name
%{_bindir}/avahi-set-host-name
%{_mandir}/man1/avahi-browse.1*
%{_mandir}/man1/avahi-browse-domains.1*
%{_mandir}/man1/avahi-publish.1*
%{_mandir}/man1/avahi-publish-address.1*
%{_mandir}/man1/avahi-publish-service.1*
%{_mandir}/man1/avahi-resolve.1*
%{_mandir}/man1/avahi-resolve-address.1*
%{_mandir}/man1/avahi-resolve-host-name.1*
%{_mandir}/man1/avahi-set-host-name.1*
%{_bindir}/*
%{_mandir}/man1/*
%exclude %{_bindir}/b*
%exclude %{_bindir}/avahi-discover*
%exclude %{_bindir}/avahi-bookmarks
%exclude %{_mandir}/man1/b*
%exclude %{_mandir}/man1/avahi-discover*
%exclude %{_mandir}/man1/avahi-bookmarks*
%files ui-tools
%{_bindir}/bshell
%{_bindir}/bssh
%{_bindir}/bvnc
%{_bindir}/avahi-discover-standalone
%{_mandir}/man1/bshell.1*
%{_mandir}/man1/bssh.1*
%{_mandir}/man1/bvnc.1*
%if %{WITH_PYTHON}
%{_bindir}/b*
%{_bindir}/avahi-discover
# avahi-bookmarks is not really a UI tool, but I won't create a seperate package for it...
%{_bindir}/avahi-bookmarks
%{_mandir}/man1/b*
%{_mandir}/man1/avahi-discover*
%{_mandir}/man1/avahi-bookmarks*
%{_datadir}/applications/b*.desktop
%{_datadir}/applications/avahi-discover.desktop
%{_datadir}/avahi/interfaces/
%{python2_sitelib}/avahi_discover/
%endif
%files devel
%{_libdir}/libavahi-common.so
%{_libdir}/libavahi-core.so
%{_libdir}/libavahi-client.so
%{_libdir}/libavahi-libevent.so
%{_includedir}/avahi-client
%{_includedir}/avahi-common
%{_includedir}/avahi-core
%{_includedir}/avahi-libevent
%{_libdir}/pkgconfig/avahi-core.pc
%{_libdir}/pkgconfig/avahi-client.pc
%{_libdir}/pkgconfig/avahi-libevent.pc
%files libs
%doc README
%license LICENSE
%{_libdir}/libavahi-common.so.*
%{_libdir}/libavahi-client.so.*
%{_libdir}/libavahi-libevent.so.*
%files glib
%{_libdir}/libavahi-glib.so.*
@ -731,7 +614,6 @@ exit 0
#%{_datadir}/gir-1.0/Avahi-0.6.gir
#%{_datadir}/gir-1.0/AvahiCore-0.6.gir
%if %{without bootstrap}
%files ui
%{_libdir}/libavahi-ui.so.*
@ -744,7 +626,6 @@ exit 0
%{_includedir}/avahi-ui
%{_libdir}/pkgconfig/avahi-ui.pc
%{_libdir}/pkgconfig/avahi-ui-gtk3.pc
%endif
%if %{WITH_QT3}
%ldconfig_scriptlets qt3
@ -770,18 +651,6 @@ exit 0
%{_libdir}/pkgconfig/avahi-qt4.pc
%endif
%if %{WITH_QT5}
%ldconfig_scriptlets qt5
%files qt5
%{_libdir}/libavahi-qt5.so.*
%files qt5-devel
%{_libdir}/libavahi-qt5.so
%{_includedir}/avahi-qt5/
%{_libdir}/pkgconfig/avahi-qt5.pc
%endif
%if %{WITH_MONO}
%files sharp
%{_prefix}/lib/mono/avahi-sharp
@ -819,94 +688,16 @@ exit 0
%{_libdir}/pkgconfig/libdns_sd.pc
%endif
%if %{WITH_PYTHON}
%files -n python2-avahi
# These are .py files only, so they don't go in lib64
%{python2_sitelib}/avahi/
%files -n python3-avahi
# These are .py files only, so they don't go in lib64
%{python3_sitelib}/avahi/
%endif
%changelog
* Fri Aug 05 2022 Kalev Lember <klember@redhat.com> - 0.8-17
- Avoid systemd_requires as per updated packaging guidelines
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Aug 03 2021 Rex Dieter <rdieter@fedoraproject.org> - 0.8-14
- pull in upstream fix for CVE-2021-36217 (#1989381,#1989382)
- revert "Re-enable LTO" on f34 (still needed)
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon May 10 2021 Jeff Law <jlaw@tachyum.com> - 0.8-12
- Re-enable LTO
* Thu Apr 29 2021 Rex Dieter <rdieter@fedoraproject.org> - 0.8-11
- avahi libraries missing -fstack-protector-strong (#1817737)
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.8-10
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Tue Feb 16 2021 Rex Dieter <rdieter@fedoraproject.org> - 0.8-9
- cleanup/fix conditionals (#1751484)
- disable lto, workaround FTBFS (#1907727)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Nov 17 2020 Rex Dieter <rdieter@fedoraproject.org> - 0.8-7
- fix undefined symbols in libavahi-qt3 (#1897925)
* Thu Oct 15 2020 Rex Dieter <rdieter@fedoraproject.org> - 0.8-6
- resurrect ui-tools, not just for python (#1885513)
* Mon Sep 21 2020 Michal Sekletar <msekleta@redhat.com> - 0.8-5
- Disable bootstrap
* Mon Sep 07 2020 Ondřej Lysoněk <olysonek@redhat.com> - 0.8-4
- Rebuilt due to libevent rebase
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sun Mar 22 2020 Rex Dieter <rdieter@fedoraproject.org> - 0.8-2
- pull in some upstream fixes
* Sun Mar 22 2020 Lubomir Rintel <lkundrak@v3.sk> - 0.8-1
- Update to version 0.8
* Thu Feb 20 2020 Petr Viktorin <pviktori@redhat.com> - 0.7-24
- Don't BuildRequire pygtk2 if building without Python
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Sep 19 2019 Rex Dieter <rdieter@fedoraproject.org> - 0.7-22
- drop python bindings/support (includes -ui-tools that use the bindings) on f31+ (#1751484)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.7-21
- Rebuilt for Python 3.8
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.7-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 22 2019 Michal Sekletár <msekleta@redhat.com> - 0.7-19
- add support for advertising services on the local machine only (i.e. on loopback)
* Mon Feb 04 2019 Kalev Lember <klember@redhat.com> - 0.7-18
- Update requires for pygobject3 -> python2-gobject rename
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.7-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jul 30 2018 Adam Williamson <awilliam@redhat.com> - 0.7-16
- Update python3 sed hack to avoid '/usr/bin/python32' dep

View File

@ -1 +1 @@
SHA512 (avahi-0.8.tar.gz) = c6ba76feb6e92f70289f94b3bf12e5f5c66c11628ce0aeb3cadfb72c13a5d1a9bd56d71bdf3072627a76cd103b9b056d9131aa49ffe11fa334c24ab3b596c7de
SHA512 (avahi-0.7.tar.gz) = bae5a1e9204aca90b90e7fd223d19e809e3514d03ba5fa2da1e55bf1d72d3d3b98567f357900c36393613dc17dc98e15ff3ebf0f226f2f6b9766e592452a6ce7