File avahi.spec of Package avahi
#
# spec file for package avahi
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: avahi
# WARNING: After editing this file please call Re, rpmbuild or
# bash avahi_spec-prepare.sh "$PWD" avahi
# to update spec files:
%define _name avahi
# In automatic build systems you want to enable just one of following options.
# For build all at once, set all to 1.
# If you set build_core to 0, you cannot set more than one other option to 1.
%define build_core 1
# NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygtk code.
%define build_glib2 0
%define build_mono 0
%define build_qt3 0
%define build_qt4 0
Version: 0.6.32
Release: 0
# FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10).
%if !%build_glib2 && !%build_mono && !%build_qt3 && !%build_qt4
# Create split spec files only when building per partes:
#%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name})
%endif
%define avahi_client_soname 3
%define avahi_common_soname 3
# If avahi_core_soname changes, make sure to update avahi-gir-fixup.patch
%define avahi_core_soname 7
%define avahi_ui_soname 0
%define avahi_glib_soname 1
%define avahi_gobject_soname 0
%define avahi_gtk3_soname 0
%define avahi_qt3_soname 1
%define avahi_qt4_soname 1
%if %build_glib2
%define debug_package_requires libavahi-ui%{avahi_ui_soname} = %{version}-%{release}
%endif
URL: http://www.avahi.org/
Summary: D-BUS Service for Zeroconf and Bonjour
License: LGPL-2.1-or-later
Group: System/Daemons
Source: https://github.com/lathiat/avahi/releases/download/v%{version}/%{_name}-%{version}.tar.gz
# From http://packages.debian.org/sid/avahi-daemon http://ftp.debian.org/debian/pool/main/a/avahi/avahi_0.6.31-1.debian.tar.gz
Source1: avahi-daemon-check-dns.sh
Source3: avahi.firewall
# Copy of glib-2.0.m4 from glib2-devel to not depend on glib2-devel.
Source4: avahi-glib-gettext.m4
Source5: avahi.sysconfig
Source6: avahi-autoipd.sysconfig
# From http://packages.debian.org/sid/avahi-daemon http://ftp.debian.org/debian/pool/main/a/avahi/avahi_0.6.31-1.debian.tar.gz
Source7: avahi-daemon.if-up
Source8: %{_name}_spec-prepare.sh
Source9: avahi-autoipd.README.SUSE
Source10: avahi-autoipd.if-up
Source11: avahi-autoipd.if-down
Source100: attributes
Source101: update_spec.pl
Source102: baselibs.conf
# PATCH-FIX-OPENSUSE avahi-gacdir.patch -- Mono libs are in $prefix/lib on suse
Patch0: avahi-gacdir.patch
# PATCH-FIX-UPSTREAM avahi-desktop.patch bnc254654 Avahi#365 -- sbrabec@suse.cz
Patch1: avahi-desktop.patch
# PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer
Patch3: avahi-empty-share-dir.patch
# PATCH-FEATURE-OPENSUSE avahi-daemon-check-dns-suse.patch bnc431704 sbrabec@suse.cz -- Port Debian avahi-daemon-check-dns.sh to SUSE, see also http://avahi.org/wiki/AvahiAndUnicastDotLocal
Patch4: avahi-daemon-check-dns-suse.patch
# PATCH-FIX-UPSTREAM avahi-gir-fixup.patch dimstar@opensnse.org -- Use complete shared library name in gir file for dependency
Patch12: avahi-gir-fixup.patch
# PATCH-FIX-OPENSUSE avahi-move-everything-to-run.patch rmilasan@suse.com -- Move everything to /run directory (socket and pid files)
Patch15: avahi-move-everything-to-run.patch
# PATCH-FIX-UPSTREAM avahi-outdated-URL.patch boo#914298 dimstar@opensuse.org -- Replace reference to no longer existing address with a more generic explanation URL
Patch17: avahi-outdated-URL.patch
# PATCH-FIX-UPSTREAM avahi-0.6.31-invalid-packet.patch boo#947140 mgorse@suse.com -- don't spam logs for Windows 10 multicast packets
Patch18: avahi-0.6.31-invalid-packet.patch
# PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgorse@suse.com -- only warn on missing resolv.conf if it is being used.
Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch
# PATCH-FIX-UPSTREAM CVE-2018-1000845.patch boo#1110281 mgorse@suse.com -- drop legacy unicast queries from address not on local link (CVE-2018-1000845).
Patch20: CVE-2018-1000845.patch
# PATCH-FIX-UPSTREAM avahi-increase-rlimits.patch bsc#1168191 mgorse@suse.com -- increase default memory rlimits.
Patch21: avahi-increase-rlimits.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2021-3468.patch boo#1184521 mgorse@suse.com -- avoid infinite loop by handling HUP event in client_work.
Patch22: avahi-CVE-2021-3468.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-1981.patch boo#1210328 mgorse@suse.com -- emit error if requested service is not found.
Patch23: avahi-CVE-2023-1981.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-38473.patch bsc#1216419 xwang@suse.com -- derive alternative host name from its unescaped version
Patch24: avahi-CVE-2023-38473.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-38469.patch bsc#1216598 xwang@suse.com -- Reject overly long TXT resource records
Patch25: avahi-CVE-2023-38469.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-38471.patch bsc#1216594 xwang@suse.com -- Extract host name using avahi_unescape_label
Patch26: avahi-CVE-2023-38471.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-38470.patch bsc#1215947 alynx.zhou@suse.com -- Ensure each label is at least one byte long
Patch27: avahi-CVE-2023-38470.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2023-38472.patch bsc#1216853 alynx.zhou@suse.com -- Fix reachable assertion in avahi_rdata_parse
Patch28: avahi-CVE-2023-38472.patch
# PATCH-FIX-UPSTREAM avahi-CVE-2024-52616.patch CVE-2024-52616 bsc#1233420 qzhao@suse.com -- Properly randomize query id of DNS packets.
Patch29: avahi-CVE-2024-52616.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: dbus-1-python
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gdbm-devel
BuildRequires: intltool
BuildRequires: libdaemon-devel
BuildRequires: libexpat-devel
BuildRequires: pkg-config
BuildRequires: translation-update-upstream
# Even if we are not building python bindings, we need python to build service types database:
BuildRequires: python-devel
BuildRequires: python-gdbm
# libtool is needed to build all variants: bootstrap is unconditional in the build section
BuildRequires: libtool
%if %suse_version <= 1110
%define python_sitelib %{py_sitedir}
%endif
%if %build_core
PreReq: pwdutils
%if %suse_version >= 1140
PreReq: sysvinit(network)
%else
PreReq: sysconfig
%endif
%{?systemd_requires}
Recommends: %{_name}-lang
BuildRequires: dbus-1-devel
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: python-gdbm
BuildRequires: zlib-devel
%if %suse_version >= 1210
BuildRequires: pkgconfig(systemd)
%endif
# For python bindings and utilities:
#BuildRequires: dbus-1-python
#Requires: dbus-1
Requires: nss-mdns
Requires: sudo
# bug437293
%ifarch ppc64
Obsoletes: mDNSResponder-64bit
%endif
#
# mDNSResponder was used for <= 10.2:
Provides: mDNSResponder = 107.5
Obsoletes: mDNSResponder < 107.5
# Disable this conflict for now, it breaks staging, and it's pretty much obsolete, but can go back in if needed once a new version of avahi is released.
# File conflict for service-types.db openSUSE <= 12.3 SLE <= 11SP2
#Conflicts: avahi-utils <= 0.6.31-9.2
%endif
%if %build_glib2
BuildRequires: gobject-introspection-devel
BuildRequires: gtk2-devel
BuildRequires: gtk3-devel
BuildRequires: libavahi-devel
BuildRequires: python-gtk-devel
BuildRequires: update-desktop-files
%endif
%if %build_qt3
BuildRequires: libavahi-devel
BuildRequires: qt3-devel
%endif
%if %build_qt4
BuildRequires: libavahi-devel
BuildRequires: libqt4-devel
%endif
%if %build_mono
BuildRequires: gtk-sharp2
BuildRequires: libavahi-glib-devel
BuildRequires: mono-devel
BuildRequires: monodoc-core
# Please copy this line to avahi-mono definition below for build all-in-once:
Requires: gtk-sharp2
Requires: libavahi-client3 >= %{version}
Requires: libavahi-common3 >= %{version}
Requires: libavahi-glib1 >= %{version}
Requires: libavahi-ui0 >= %{version}
%endif
%description
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%if %build_core
%package -n libavahi-client3
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-client3
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libavahi-common3
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-common3
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libavahi-core7
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-core7
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libdns_sd
Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour
# mDNSResponder-lib used unversioned soname.
# Provide full compatibility with mDNSResponder (FIXME: should be fixed in the package):
Group: System/Libraries
%ifarch ia64 x86_64 ppc64 s390x
Provides: libdns_sd.so()(64bit)
%else
Provides: libdns_sd.so
%endif
# bug437293
%ifarch ppc64
Obsoletes: mDNSResponder-lib-64bit
%endif
#
# mDNSResponder-lib was used for <= 10.2:
Provides: mDNSResponder-lib = 107.5
Obsoletes: mDNSResponder-lib < 107.5
# Old name used for <= 10.3:
Provides: avahi-compat-mDNSResponder = %{version}
Obsoletes: avahi-compat-mDNSResponder < %{version}
%description -n libdns_sd
Apple mDNSResponder compatibility layer for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n libhowl0
Summary: Howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour
# Old name used for <= 10.3:
Group: System/Libraries
Provides: avahi-compat-howl = %{version}
Obsoletes: avahi-compat-howl < %{version}
%description -n libhowl0
Howl compatibility layer for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n python-avahi
Summary: A set of Avahi utilities written in Python
Group: Development/Languages/Python
PreReq: coreutils
Requires: %{name} = %{version}
Requires: dbus-1-python
Requires: python-gdbm
Requires: python-twisted
Requires: python-twisted-web
# Old name used for <= 10.3:
Provides: avahi-python = %{version}
Obsoletes: avahi-python < %{version}
%py_requires
%description -n python-avahi
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete, implementing all
MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It
passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things that have never been seen
elsewhere, like correct mDNS reflection across LAN segments.
%package autoipd
Summary: IPv4LL Service for Zeroconf and Bonjour
# Split provides for upgrade from openSUSE <= 12.3 and SLE <= 11.
Group: Productivity/Networking/Other
Provides: avahi:%{_sbindir}/avahi-autoipd
# Disable this conflict for now, it breaks staging, and it's pretty much obsolete, but can go back in if needed once a new version of avahi is released.
# File conflict for avahi-autoipd openSUSE <= 12.3 SLE <= 11
#Conflicts: avahi <= 0.6.31-9.2
# coreutils contains /usr/bin/chown
Requires(post): coreutils
# shadow contains useradd and groupadd
Requires(pre): shadow
%description autoipd
avahi-autoipd is an implementation of Dynamic Configuration of IPv4
Link-Local Addresses.
avahi-autoipd doesn't depend on any other Avahi library, hence it makes
sense to install it even if Avahi itself is not installed.
%package utils
Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour
Group: Productivity/Networking/Other
Requires: %{_name} >= %{version}
%description utils
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libavahi-devel
Summary: Include Files and Libraries Mandatory for Development
#
Group: Development/Libraries/C and C++
Requires: %{_name} = %{version}
Requires: dbus-1-devel
Requires: glibc-devel
Requires: libavahi-client3 = %{version}
Requires: libavahi-common3 = %{version}
Requires: libavahi-core7 = %{version}
# Last appeared in OpenSUSE 10.3:
Provides: avahi-devel = %{version}
Obsoletes: avahi-devel < %{version}
%description -n libavahi-devel
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package compat-mDNSResponder-devel
Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour
Group: Development/Libraries/C and C++
Requires: libavahi-devel = %{version}
Requires: libdns_sd = %{version}
Provides: mDNSResponder-devel = 107.5
Obsoletes: mDNSResponder-devel < 107.5
%description compat-mDNSResponder-devel
Apple mDNSResponder compatibility layer for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package compat-howl-devel
Summary: Howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour
Group: Development/Libraries/C and C++
Requires: libavahi-devel = %{version}
Requires: libhowl0 = %{version}
%description compat-howl-devel
Howl compatibility layer for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%endif
%if %build_glib2
%package -n libavahi-ui0
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-ui0
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libavahi-ui-gtk3-%{avahi_gtk3_soname}
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-ui-gtk3-%{avahi_gtk3_soname}
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n libavahi-glib1
Summary: Glib Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
# Old name used for <= 10.3:
Group: System/Libraries
Provides: avahi-glib = %{version}
Obsoletes: avahi-glib < %{version}
%description -n libavahi-glib1
GLib support for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n libavahi-gobject0
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Libraries
%description -n libavahi-gobject0
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n typelib-1_0-Avahi-0_6
Summary: D-BUS Service for Zeroconf and Bonjour -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-Avahi-0_6
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
This package provides the GObject Introspection bindings for Avahi.
%package -n avahi-utils-gtk
Summary: GTK+ Utilities for D-BUS Service for Zeroconf and Bonjour
Group: Productivity/Networking/Other
Requires: %{_name} >= %{version}
# Due to a mistake in the spec file build staging, this package had
# name avahi-glib2-utils-gtk in 11.1 and SLE11 and avahi-utils-gtk in
# all other products.
Provides: avahi-glib2-utils-gtk = %{version}
Obsoletes: avahi-glib2-utils-gtk < %{version}
%description -n avahi-utils-gtk
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%package -n python-avahi-gtk
Summary: A set of Avahi utilities written in Python Using python-gtk
Group: Development/Languages/Python
PreReq: coreutils
Requires: python-avahi = %{version}
Requires: python-gtk
# Old name used for <= 10.3:
Provides: avahi-python = %{version}
Obsoletes: avahi-python < %{version}
# Provide split-provides for update from <= 11.0:
Provides: python-avahi:%{_bindir}/avahi-bookmarks
%py_requires
%description -n python-avahi-gtk
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete, implementing all
MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It
passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things that have never been seen
elsewhere, like correct mDNS reflection across LAN segments.
%package -n libavahi-glib-devel
Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++
Requires: libavahi-devel = %{version}
Requires: libavahi-glib1 = %{version}
Requires: libavahi-ui-gtk3-%{avahi_gtk3_soname} = %{version}
Requires: libavahi-ui0 = %{version}
Requires: typelib-1_0-Avahi-0_6 = %{version}
# Last appeared in OpenSUSE 10.3:
Provides: avahi-devel:%{_libdir}/libavahi-glib.so
%description -n libavahi-glib-devel
GLib support for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n libavahi-gobject-devel
Summary: D-BUS Service for Zeroconf and Bonjour
Group: System/Daemons
Requires: glib2-devel
Requires: libavahi-devel = %{version}
Requires: libavahi-glib-devel
Requires: libavahi-gobject0 = %{version}
%description -n libavahi-gobject-devel
Avahi is an implementation of the DNS Service Discovery and Multicast
DNS specifications for Zeroconf Computing. It uses D-BUS for
communication between user applications and a system daemon. The daemon
is used to coordinate application efforts in caching replies, necessary
to minimize the traffic imposed on networks.
The Avahi mDNS responder is now complete with features, implementing
all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs.
It passes all tests in the Apple Bonjour conformance test suite. In
addition, it supports some nifty things, like correct mDNS reflection
across LAN segments.
%endif
%if %build_qt3
%package -n libavahi-qt3-1
Summary: Qt3 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
# Old name used for <= 10.3:
Group: System/GUI/KDE
Provides: avahi-qt3 = %{version}
Obsoletes: avahi-qt3 < %{version}
%description -n libavahi-qt3-1
Qt3 bindings for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n libavahi-qt3-devel
Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++
Requires: libavahi-devel = %{version}
Requires: libavahi-qt3-1 = %{version}
Requires: qt3-devel
# Last appeared in OpenSUSE 10.3:
Provides: avahi-devel:%{_libdir}/libavahi-qt3.so
%description -n libavahi-qt3-devel
Qt3 bindings for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%endif
%if %build_qt4
%package -n libavahi-qt4-1
Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
# Old name used for <= 10.3:
Group: System/GUI/KDE
Provides: avahi-qt4 = %{version}
Obsoletes: avahi-qt4 < %{version}
%description -n libavahi-qt4-1
Qt4 bindings for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%package -n libavahi-qt4-devel
Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++
Requires: libavahi-devel = %{version}
Requires: libavahi-qt4-1 = %{version}
Requires: libqt4-devel
# Last appeared in OpenSUSE 10.3:
Provides: avahi-devel:%{_libdir}/libavahi-qt4.so
%description -n libavahi-qt4-devel
Qt4 bindings for avahi.
Avahi is an implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection across LAN segments.
%endif
%if %build_core
%if %build_mono
%package -n avahi-mono
Summary: Mono Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
Group: Development/Languages/Mono
Requires: gtk-sharp2
Requires: libavahi-client3 >= %{version}
Requires: libavahi-common3 >= %{version}
Requires: libavahi-glib1 >= %{version}
Requires: libavahi-ui0 >= %{version}
%description -n avahi-mono
This package provides Mono bindings for avahi. Avahi is an
implementation of the DNS Service Discovery and MulticastDNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks. The Avahi mDNS responder is
now feature complete, implementing all MUSTs and the majority of the
SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple
Bonjour conformance test suite. In addition, it supports some nifty
things, like correct mDNS reflection across LAN segments.
%endif
%lang_package
%endif
%prep
%setup -q -n %{_name}-%{version}
cp -a %{S:1} %{S:7} .
cp -a %{S:5} sysconfig.avahi
sed "s:@docdir@:%{_docdir}:g" <%{S:6} >sysconfig.avahi-autoipd
cp -a %{S:9} avahi-autoipd/README.SUSE
sed "s:@sbindir@:%{_sbindir}:g" <%{S:10} >avahi-autoipd/avahi-autoipd.if-up
sed "s:@sbindir@:%{_sbindir}:g" <%{S:11} >avahi-autoipd/avahi-autoipd.if-down
translation-update-upstream
%patch0
%patch1 -p1
%patch3
%patch4
%patch12 -p1
%patch15 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1
%patch27 -p1
%patch28 -p1
%patch29 -p1
%if !%build_core
# Replace all .la references from local .la files to installed versions
# with exception of libavahi-glib.la.
# It allows to build only the binding subpackage.
%if %build_mono
sed -i 's:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g' */Makefile.am
%else
sed -i 's:libavahi-glib\.la:@@SKIP LIBAVAHI GLIB@@:g
s:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g
s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g
' */Makefile.am
%endif
%endif
if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then
cat %{S:4} >>acinclude.m4
fi
# FIXME: We do not have xmltoman, use original doc, just fix paths.
sed -i s:/home/lennart/tmp/avahi:: man/*.[0-9]
sed -i "s:-DGTK_DISABLE_DEPRECATED=1::" avahi-ui/Makefile.am
%build
autoreconf -f -i
intltoolize -f
%configure\
--libexecdir=%{_prefix}/lib\
--disable-static\
--with-distro=suse\
%if %build_core
--enable-compat-libdns_sd\
--enable-compat-howl\
%else
--disable-compat-libdns_sd\
--disable-compat-howl\
%endif
%if %build_glib2
--enable-glib\
--enable-gobject\
--enable-gtk\
--enable-gtk3\
--enable-pygtk\
%else
--disable-glib\
--disable-gobject\
%if ! %build_mono
--disable-gtk\
%endif
--disable-gtk3\
--disable-pygtk\
%endif
%if %build_qt3
--enable-qt3\
%else
--disable-qt3\
%endif
%if %build_qt4
--enable-qt4\
%else
--disable-qt4\
%endif
%if %build_mono
--enable-mono\
--enable-gtk\
%else
--disable-mono\
%endif
--with-avahi-priv-access-group=avahi\
--with-autoipd-user=avahi-autoipd\
--with-autoipd-group=avahi-autoipd
%if %build_glib2 && !%build_core
for DIR in avahi-glib avahi-gobject avahi-ui avahi-discover-standalone avahi-python man ; do
cd $DIR
make %{?_smp_mflags}
cd ..
done
%endif
%if %build_qt3 && !%build_core
cd avahi-qt
%endif
%if %build_qt4 && !%build_core
cd avahi-qt
%endif
%if %build_mono && !%build_core
cd avahi-sharp
make %{?_smp_mflags}
cd ../avahi-ui-sharp
%endif
make %{?_smp_mflags}
%install
%if %build_glib2 && !%build_core
for DIR in avahi-glib avahi-gobject avahi-ui avahi-discover-standalone avahi-python man ; do
cd $DIR
%makeinstall
cd ..
done
cd -
%endif
%if %build_qt3 && !%build_core
cd avahi-qt
%endif
%if %build_qt4 && !%build_core
cd avahi-qt
%endif
%if %build_mono && !%build_core
cd avahi-sharp
%makeinstall
cd ../avahi-ui-sharp
%endif
%makeinstall
# do not install sysv init scripts
rm -rf %{buildroot}%{_sysconfdir}/init.d/
%if !%build_core
cd ..
make %{?_smp_mflags} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT
%endif
%if %build_core
# do not remove this unless you plan to fix _all_ the references to
# it. all (multiple) previous attempts have failed already
#rm $RPM_BUILD_ROOT%{_libdir}/libavahi-common.la
install -d $RPM_BUILD_ROOT%{_localstatedir}/run/avahi-daemon
ln -s avahi-compat-libdns_sd/dns_sd.h $RPM_BUILD_ROOT%{_includedir}/
ln -s avahi-compat-howl.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/howl.pc
install -d $RPM_BUILD_ROOT%{_prefix}/lib/avahi
install avahi-daemon-check-dns.sh $RPM_BUILD_ROOT%{_prefix}/lib/avahi/
install -d $RPM_BUILD_ROOT/etc/sysconfig/network/if-{up,down}.d
# Note: We do not install the script to if-down.d. Only very obscure use
# cases may fail. (And Debian does the same.)
# (You would have an AUTOIP-only fallback network, then connect network
# to network with .local in DNS without disconnecting from the fallback,
# then disconnect from network with .local in DNS.)
install avahi-daemon.if-up $RPM_BUILD_ROOT/etc/sysconfig/network/if-up.d/avahi-daemon
install avahi-autoipd/avahi-autoipd.if-up $RPM_BUILD_ROOT/etc/sysconfig/network/if-up.d/avahi-autoipd
install avahi-autoipd/avahi-autoipd.if-down $RPM_BUILD_ROOT/etc/sysconfig/network/if-down.d/avahi-autoipd
install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/avahi-autoipd
# Work-around qt4 bug:
# https://bugzilla.novell.com/show_bug.cgi?id=238169
%if %suse_version <= 1020
sed -i "s,$RPM_BUILD_DIR,/," $RPM_BUILD_ROOT%{_libdir}/libavahi-qt4.la
%endif
mkdir -p $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services
ln -s %{_sbindir}/service $RPM_BUILD_ROOT%{_sbindir}/rcavahi-daemon
ln -s %{_sbindir}/service $RPM_BUILD_ROOT%{_sbindir}/rcavahi-dnsconfd
install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/avahi
install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -d $RPM_BUILD_ROOT/var/adm/fillup-templates
install -m 644 sysconfig.avahi* $RPM_BUILD_ROOT/var/adm/fillup-templates/
%if ! %build_glib2
# Note: This file is intentionally installed here. It is needed for avahi-utils-gtk and python-avahi-gtk:
install -d $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces
install -m 644 avahi-discover-standalone/avahi-discover.ui $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces
%endif
%find_lang %{name} %{?no_lang_C}
%else
# There is no simple way to not install core files. Remove them here.
# The rest is enabled/disabled in configure as needed.
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-client.pc
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-core.pc
%if %build_glib2
rm $RPM_BUILD_ROOT%{_bindir}/avahi-bookmarks
rm -r $RPM_BUILD_ROOT%{python_sitelib}/avahi
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-bookmarks.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-browse-domains.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-browse.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish-address.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish-service.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve-address.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve-host-name.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-set-host-name.1*
rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi-daemon.conf.5*
rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi.hosts.5*
rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi.service.5*
rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-autoipd.8*
rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-autoipd.action.8*
rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-daemon.8*
rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-dnsconfd.8*
rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-dnsconfd.action.8*
# Note: This file was intentionally moved to avahi. It is needed for avahi-utils-gtk and python-avahi-gtk:
rm $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces/avahi-discover.ui
rmdir $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces
rmdir $RPM_BUILD_ROOT%{_datadir}/avahi
%else
%if %build_mono
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc
%endif
%endif
%endif
%if %build_glib2
%suse_update_desktop_file avahi-discover
%suse_update_desktop_file bvnc
%suse_update_desktop_file bssh
%endif
%fdupes $RPM_BUILD_ROOT%{_libdir}
%if %build_core
%pre
%{_sbindir}/groupadd -r avahi 2> /dev/null || :
%{_sbindir}/useradd -r -s /bin/false -c "User for Avahi" -d /run/avahi-daemon -g avahi avahi 2> /dev/null || :
%if %suse_version >= 1210
%service_add_pre avahi-dnsconfd.service avahi-daemon.service
%endif
# bnc#853845,bnc#851953: do not start by default under
# sysconfig as this breaks vlan,bridge,bonding setups
# in pre to revert old default setting from template.
if test -f var/adm/fillup-templates/sysconfig.avahi-autoipd -a \
-f etc/sysconfig/avahi ; then
. var/adm/fillup-templates/sysconfig.avahi-autoipd
if test "X$AVAHI_AUTOIPD_ENABLE" = "Xyes" ; then
sed -i etc/sysconfig/avahi \
-e 's/^\(AVAHI_AUTOIPD_ENABLE\)=.*/\1="no"/'
fi
fi
%post
%{fillup_only -n avahi}
%{fillup_only -ns security checksig}
%if %suse_version >= 1210
%service_add_post avahi-dnsconfd.service avahi-daemon.service
%endif
%preun
%if %suse_version >= 1210
%service_del_preun avahi-dnsconfd.service avahi-daemon.service
%endif
%postun
%insserv_cleanup
%if %suse_version >= 1210
%service_del_postun avahi-dnsconfd.service avahi-daemon.service
%pre autoipd
%{_sbindir}/groupadd -r avahi-autoipd 2> /dev/null || :
%{_sbindir}/useradd -r -s /bin/false -c "User for Avahi IPv4LL" -d %{_localstatedir}/lib/avahi-autoipd -g avahi-autoipd avahi-autoipd 2> /dev/null || :
%post autoipd
%{fillup_only -ns avahi autoipd}
# Change ownership of /var/lib/avahi-autoipd after upgrade from openSUSE <= 12.3 and SLE <= 11.
find %{_localstatedir}/lib/avahi-autoipd -user avahi -print0 |xargs -r0 chown avahi-autoipd:avahi-autoipd
%endif
%post -n libavahi-client3 -p /sbin/ldconfig
%postun -n libavahi-client3 -p /sbin/ldconfig
%post -n libavahi-common3 -p /sbin/ldconfig
%postun -n libavahi-common3 -p /sbin/ldconfig
%post -n libavahi-core7 -p /sbin/ldconfig
%postun -n libavahi-core7 -p /sbin/ldconfig
%post -n libdns_sd -p /sbin/ldconfig
%postun -n libdns_sd -p /sbin/ldconfig
%post -n libhowl0 -p /sbin/ldconfig
%postun -n libhowl0 -p /sbin/ldconfig
%preun -n python-avahi
%insserv_cleanup
%postun -n python-avahi
%insserv_cleanup
%endif
%if %build_glib2
%post -n libavahi-ui0 -p /sbin/ldconfig
%postun -n libavahi-ui0 -p /sbin/ldconfig
%post -n libavahi-ui-gtk3-%{avahi_gtk3_soname} -p /sbin/ldconfig
%postun -n libavahi-ui-gtk3-%{avahi_gtk3_soname} -p /sbin/ldconfig
%post -n libavahi-gobject0 -p /sbin/ldconfig
%postun -n libavahi-gobject0 -p /sbin/ldconfig
%post -n libavahi-glib1 -p /sbin/ldconfig
%postun -n libavahi-glib1 -p /sbin/ldconfig
%post -n python-avahi-gtk
%desktop_database_post
%postun -n python-avahi-gtk
%desktop_database_post
%post -n avahi-utils-gtk
%desktop_database_post
%postun -n avahi-utils-gtk
%desktop_database_post
%endif
%if %build_qt3
%post -n libavahi-qt3-1 -p /sbin/ldconfig
%postun -n libavahi-qt3-1 -p /sbin/ldconfig
%endif
%if %build_qt4
%post -n libavahi-qt4-1 -p /sbin/ldconfig
%postun -n libavahi-qt4-1 -p /sbin/ldconfig
%endif
%if %build_core
%files
%defattr(-,root,root)
%doc LICENSE docs/*
%dir %{_libdir}/avahi/
# Note: This file is intentionally packaged here. It is needed for python-avahi and avahi-utils:
%{_libdir}/avahi/service-types.db
# avahi creates the directory itself, we do not package it
# since it might be on tmpfs
%attr(-,avahi,avahi) %ghost /run/avahi-daemon
%doc %{_mandir}/man5/*.5*
%doc %{_mandir}/man8/*.8*
%exclude %doc %{_mandir}/man8/avahi-autoipd*
%{_sbindir}/avahi-*
%exclude %{_sbindir}/avahi-autoipd
%{_sbindir}/rcavahi-daemon
%{_sbindir}/rcavahi-dnsconfd
%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/*
%dir %{_sysconfdir}/avahi
%config %{_sysconfdir}/avahi/avahi-daemon.conf
%{_sysconfdir}/avahi/avahi-dnsconfd.action
%dir %{_sysconfdir}/avahi/services
%{_sysconfdir}/avahi/services/*.service
%config(noreplace) %{_sysconfdir}/avahi/hosts
%{_sysconfdir}/dbus-1/system.d/*.conf
%{_datadir}/dbus-1/interfaces/org.freedesktop.Avahi.*.xml
%{_datadir}/dbus-1/system-services/org.freedesktop.Avahi.service
%dir %{_prefix}/lib/avahi
%{_prefix}/lib/avahi/avahi-daemon-check-dns.sh
%{_unitdir}/avahi-daemon.service
%{_unitdir}/avahi-daemon.socket
%{_unitdir}/avahi-dnsconfd.service
# Common file for avahi-utils-gtk and python-avahi-gtk:
%dir %{_datadir}/avahi/
%{_datadir}/avahi/interfaces
/etc/sysconfig/network/*/avahi-daemon
/var/adm/fillup-templates/sysconfig.avahi
%files lang -f %{name}.lang
%defattr(-,root,root)
%files -n libavahi-client3
%defattr(-,root,root)
%{_libdir}/libavahi-client*.so.*
%files -n libavahi-common3
%defattr(-,root,root)
%{_libdir}/libavahi-common*.so.*
%files -n libavahi-core7
%defattr(-,root,root)
%{_libdir}/libavahi-core*.so.*
%files -n libdns_sd
%defattr(-,root,root)
# libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility:
%{_libdir}/libdns_sd.so
%{_libdir}/libdns_sd.so.*
%files -n libhowl0
%defattr(-,root,root)
%{_libdir}/libhowl.so.*
%files -n python-avahi
%defattr(-,root,root)
%{_bindir}/avahi-bookmarks
%doc %{_mandir}/man1/avahi-bookmarks.1*
%dir %{python_sitelib}/avahi
%{python_sitelib}/avahi/__init__.py*
%{python_sitelib}/avahi/ServiceTypeDatabase.py
%files autoipd
%defattr(-,root,root)
%doc avahi-autoipd/README.SUSE
%doc %{_mandir}/man8/avahi-autoipd*
%attr(-,avahi-autoipd,avahi-autoipd)%{_localstatedir}/lib/avahi-autoipd
%{_sbindir}/avahi-autoipd
%{_sysconfdir}/avahi/avahi-autoipd.action
/etc/sysconfig/network/*/avahi-autoipd
/var/adm/fillup-templates/sysconfig.avahi-autoipd
%files utils
%defattr(-,root,root)
%{_bindir}/avahi-browse*
%{_bindir}/avahi-publish*
%{_bindir}/avahi-resolve*
%{_bindir}/avahi-set-host-name
%dir %{_datadir}/avahi/
%{_datadir}/avahi/avahi-service.dtd
%doc %{_mandir}/man1/avahi-browse*.1*
%doc %{_mandir}/man1/avahi-publish*.1*
%doc %{_mandir}/man1/avahi-resolve*.1*
%doc %{_mandir}/man1/avahi-set-host-name.1*
%files -n libavahi-devel
%defattr(-,root,root)
# FIXME: Maybe split to particular subpackages.
#%doc doc/api/html
#%doc doc/*.html doc/*.txt doc/file-boilerplate.c doc/TODO
%{_includedir}/avahi-client
%{_includedir}/avahi-common
%{_includedir}/avahi-core
# avahi devel files
%{_libdir}/libavahi-client.*a
%{_libdir}/libavahi-client*.so
%{_libdir}/libavahi-core.*a
%{_libdir}/libavahi-core*.so
%{_libdir}/libavahi-common*.so
# do not remove unless you fix the resulting problems
# reference is in libavahi-client.la
%{_libdir}/libavahi-common*.*a
%{_libdir}/pkgconfig/avahi-client.pc
%{_libdir}/pkgconfig/avahi-core.pc
%files compat-mDNSResponder-devel
%defattr(-,root,root)
%{_includedir}/avahi-compat-libdns_sd
%{_includedir}/dns_sd.h
%{_libdir}/libdns_sd.*a
%{_libdir}/pkgconfig/avahi-compat-libdns_sd.pc
%files compat-howl-devel
%defattr(-,root,root)
%{_includedir}/avahi-compat-howl
%{_libdir}/libhowl.so
%{_libdir}/libhowl.*a
%{_libdir}/pkgconfig/avahi-compat-howl.pc
%{_libdir}/pkgconfig/howl.pc
%endif
%if %build_glib2
%files -n libavahi-ui0
%defattr(-,root,root)
%{_libdir}/libavahi-ui.so.*
%files -n libavahi-ui-gtk3-%{avahi_gtk3_soname}
%defattr(-,root,root)
%{_libdir}/libavahi-ui-gtk3.so.%{avahi_gtk3_soname}*
%files -n libavahi-glib1
%defattr(-,root,root)
%{_libdir}/libavahi-glib*.so.*
%files -n libavahi-gobject0
%defattr(-,root,root)
%{_libdir}/libavahi-gobject*.so.*
%files -n typelib-1_0-Avahi-0_6
%defattr(-,root,root)
%{_libdir}/girepository-1.0/Avahi-0.6.typelib
%{_libdir}/girepository-1.0/AvahiCore-0.6.typelib
%files -n python-avahi-gtk
%defattr(-,root,root)
%{_bindir}/avahi-discover
%{_datadir}/applications/avahi-discover.desktop
%doc %{_mandir}/man1/avahi-discover.1*
%{python_sitelib}/avahi_discover
%files -n avahi-utils-gtk
%defattr(-,root,root)
%{_bindir}/bshell
%{_bindir}/bssh
%{_bindir}/bvnc
%{_bindir}/avahi-discover-standalone
%{_datadir}/applications/bssh.desktop
%{_datadir}/applications/bvnc.desktop
%doc %{_mandir}/man1/bssh.1.*
%doc %{_mandir}/man1/bvnc.1.*
%files -n libavahi-glib-devel
%defattr(-,root,root)
%{_includedir}/avahi-glib
%{_includedir}/avahi-ui
%{_libdir}/libavahi-glib*.*a
%{_libdir}/libavahi-glib*.so
%{_libdir}/libavahi-ui*.*a
%{_libdir}/libavahi-ui*.*so
%{_libdir}/pkgconfig/avahi-glib.pc
%{_libdir}/pkgconfig/avahi-ui.pc
%{_libdir}/pkgconfig/avahi-ui-gtk3.pc
%files -n libavahi-gobject-devel
%defattr(-,root,root)
%{_includedir}/avahi-gobject
%{_libdir}/libavahi-gobject*.*a
%{_libdir}/libavahi-gobject*.so
%{_libdir}/pkgconfig/avahi-gobject.pc
%{_datadir}/gir-1.0/*.gir
%endif
%if %build_qt3
%files -n libavahi-qt3-devel
%defattr(-,root,root)
%{_includedir}/avahi-qt3
%{_libdir}/libavahi-qt3*.*a
%{_libdir}/libavahi-qt3*.so
%{_libdir}/pkgconfig/avahi-qt3.pc
%files -n libavahi-qt3-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt3*.so.*
%endif
%if %build_qt4
%files -n libavahi-qt4-devel
%defattr(-,root,root)
%{_includedir}/avahi-qt4
%{_libdir}/libavahi-qt4*.*a
%{_libdir}/libavahi-qt4*.so
%{_libdir}/pkgconfig/avahi-qt4.pc
%files -n libavahi-qt4-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt4*.so.*
%endif
%if %build_mono
%if %build_core
%files -n avahi-mono
%else
%files
%endif
%defattr(-,root,root)
%{_libdir}/pkgconfig/avahi-sharp.pc
%{_libdir}/pkgconfig/avahi-ui-sharp.pc
%{_prefix}/lib/monodoc/sources/*.*
%{_prefix}/lib/mono/avahi-sharp
%{_prefix}/lib/mono/gac/avahi-sharp
%{_prefix}/lib/mono/avahi-ui-sharp
%{_prefix}/lib/mono/gac/avahi-ui-sharp
%endif
%changelog
* Fri Apr 26 2024 mgorse@suse.com
- Add avahi-CVE-2023-38472.patch: Fix reachable assertion in
avahi_rdata_parse (bsc#1216853, CVE-2023-38472).
* Fri Apr 26 2024 mgorse@suse.com
- Add avahi-CVE-2023-38470.patch: Ensure each label is at least one
byte long (bsc#1215947, CVE-2023-38470).
* Tue Mar 26 2024 xiaoguang.wang@suse.com
- Add avahi-CVE-2023-38471.patch: Extract host name usin
avahi_unescape_label (bsc#1216594, CVE-2023-38471).
- Add avahi-CVE-2023-38469.patch: Reject overly long TXT resource
records (bsc#1216598, CVE-2023-38469).
* Thu Oct 26 2023 xiaoguang.wang@suse.com
- Add avahi-CVE-2023-38473.patch: derive alternative host name from
its unescaped version (bsc#1216419 CVE-2023-38473).
* Tue Apr 11 2023 mgorse@suse.com
- Add avahi-CVE-2023-1981.patch: emit error if requested service
is not found (boo#1210328 CVE-2023-1981).
* Tue Apr 20 2021 mgorse@suse.com
- Add avahi-CVE-2021-3468.patch: avoid infinite loop by handling
HUP event in client_work (boo#1184521 CVE-2021-3468).
https://github.com/lathiat/avahi/pull/330
- Update avahi-daemon-check-dns-suse.patch: needed rebase against
the updated avahi-daemon-check-dns.sh.
* Mon Feb 8 2021 mgorse@suse.com
- Update avahi-daemon-check-dns-suse.patch to drop privileges when
invoking avahi-daemon-check-dns.sh (boo#1180827 CVE-2021-26720).
- Add sudo to requires: used to drop privileges.
* Tue Jul 21 2020 mgorse@suse.com
- When changing ownership of /var/lib/autoipd, only change
ownership of files owned by avahi, to mitigate against
possible exploits (bsc#1154063).
* Tue May 5 2020 mgorse@suse.com
- Drop avahi-remove-rlimits.patch, and add
avahi-increase-rlimits.patch. Increase data and stack limits to
match the upstream samples, rather than removing them
altogether, per discussion with security team (bsc#1168191
bsc#1085255).
* Wed Apr 22 2020 mgorse@suse.com
- Add avahi-remove-rlimits.patch: remove default rlimits from
avahi-daemon.conf (bsc#1168191).
* Mon Jan 14 2019 mgorse@suse.com
- Add CVE-2018-1000845.patch: drop legacy unicast queries from
address not on local link (boo#1120281 CVE-2018-1000845).
* Mon Jul 11 2016 mgorse@suse.com
- Replace avahi-0.6.31-systemd-order.patch with
avahi-0.6.32-suppress-resolv-conf-warning.patch: only warn
on missing resolv.conf if the options that use it are enabled.
https://github.com/lathiat/avahi/pull/63
* Thu Jun 23 2016 dimstar@opensuse.org
- Update to version 0.6.32:
+ Don't log warnings about invalid packets, commonly triggered by
Windows 10 systems.
+ Fix issue with bad packet size estimation, causing probes to
continuously be sent when hosting large numbers of services.
+ Fix build on Solaris/SmartOS (filio.h issue).
+ Fix build on FreeBSD (PCAP_D_IN issue).
+ Fix debug output with libdaemon >= 0.14.
+ avahi_server_set_browse_domains now correctly uses the provided
list, instead of re-using the list from the configuration file.
+ Set nl_pid to 0, this will automatically assign the value and
prevent conflicts per netlink(7). (Bug #334).
+ Check for netlink pid=0 (kernel) instead of uid=0, which works
correctly with network & user namespaces.
+ Fix reversed IFA_LOCAL and IFA_ADDRESS checks (Avahi#355).
+ Don't fail the build on deprecated GTK/GLIB usage.
+ Gracefully fail if SO_REUSEPORT is not available.
+ Minor Python 3 update for the python ServiceTypeDatabase test
usage of print, should be backwards compatible.
+ avahi-autoipd: Fix incorrect usage of IFLA_RTA instead of
IFA_RTA which could crash on ARM (Closes: gh#lathiat/avahi#42).
- Drop upstream fixed patches:
+ avahi-unicastdomains.patch
+ avahi-gtk_box_new.patch
+ avahi-fix-mkdir.diff
+ avahi-enable-ipv6.patch
+ avahi-reserve-space-for-record-data-when-size-e.patch
- Rebase avahi-0.6.31-invalid-packet.patch.
* Thu Jun 23 2016 mgorse@suse.com
- Add avahi-0.6.31-systemd-order.patch: start after NM/wicked, to
ensure resolv.conf is present (bsc#982317, gh#lathiat/avahi#59).
* Fri May 20 2016 alarrosa@suse.com
- Update to GNOME 3.20.2 (Fate#318572)
- Added License field in spec file.
* Thu Apr 14 2016 mgorse@suse.com
- Update to GNOME 3.20 Fate#318572
* Mon Jan 25 2016 dimstar@opensuse.org
- No longer install sysv services: the systemd services have been
installed for a long time already and are masking the sysv
scripts; those scripts existance only add confusion (boo#959908).
* Mon Oct 19 2015 zaitor@opensuse.org
- Temp disable 2 old Conflicts that are breaking staging. These can
back in once there is a new release of avahi.
* Thu Oct 8 2015 mgorse@suse.com
- Add avahi-0.6.31-invalid-packet.patch: do not spam logs for
invalid packets (boo#947140 bsc#948277).
* Wed Aug 19 2015 dimstar@opensuse.org
- Sync up the multiple .spec files.
* Thu Jan 22 2015 dimstar@opensuse.org
- Add avahi-outdated-URL.patch: Do not redirect users to
<http://0pointer.de/avahi-compat?s=libdns_sd&e=ntpd>, which no
longer exists, but bring them to the more generic blog entry
http://0pointer.de/blog/projects/avahi-compat.html (boo#914298).
* Sat Apr 26 2014 dmueller@suse.com
- Do not depend on gnome-icon-theme:
+ the network-wired icon is meanwhile available in faenza, gnome,
mate, nimbus oxygen and tango icon theme.
+ the dependency causes avahi depending on gtk3, which causes a
build loop with gtk2.
+ the avahi-desktop.patch causes these desktop files to be only
shown in GTK based desktops, which have any of those icon
themes available.
* Tue Apr 15 2014 aj@suse.com
- We've moved everything to /run, adjust file list as well.
* Thu Feb 27 2014 mt@suse.com
- Do not start unconditionally / by default under sysconfig as
it breaks vlan,bridge,bonding setups (bnc#853845, bnc#851953).
* Wed Sep 25 2013 dimstar@opensuse.org
- Sanitize scrtiplet requirements (bnc#839520):
+ Add shadow Requires(pre) for useradd and groupadd.
+ Add coreutils Requires(post) for chown.
* Sat Sep 21 2013 dimstar@opensuse.org
- Change RPM Group of shared library package to System/Libraries.
- Run pre_checkin.sh to sync .spec files.
* Wed Aug 21 2013 mgorse@suse.com
- Fix hang when registering with large numbers of service files
(bnc#835984, avahi-reserve-space-for-record-data-when-size-e.patch).
* Mon Feb 4 2013 sbrabec@suse.cz
- Automatically disable avahi on networks with unicast .local
domain (bnc#431704, avahi-daemon-check-dns-suse.sh,
avahi-daemon-check-dns-suse.patch).
- Split avahi-autoipd into a separate package (bnc#431704#c6,
avahi-autoipd.if-up, avahi-autoipd.if-down,
avahi-autoipd.README.SUSE).
- Use dedicated UID and GID for avahi-autoipd.
- Added sysconfig to fine tune behavior.
- Remove no more needed gnome-nettool2.png.
- Fix paths in man pages (sed script).
- Update avahi-discover.desktop to fit Desktop Menu Specification
better (avahi#365, fdo#49699, avahi-desktop.patch).
- Move service-types.db to the main package. It is requires by
python-avahi and avahi-utils.
* Mon Jan 28 2013 rmilasan@suse.com
- Add avahi-move-everything-to-run.patch: move everything
(socket and pid files) to /run.
* Wed Nov 14 2012 dimstar@opensuse.org
- Fix useradd invocation: -o is useless without -u and newer
versions of pwdutils/shadowutils fail on this now.
* Tue Oct 16 2012 coolo@suse.com
- Replace systemd-devel BuildRequires with pkgconfig(systemd)
to prefer the -mini package, avoiding build cycles.
* Wed Oct 3 2012 schwab@linux-m68k.org
- Mark /etc/avahi/hosts as %%config(noreplace)
* Wed Jul 11 2012 vuntz@opensuse.org
- Add avahi-enable-ipv6.patch: enable IPv6 by default. Fix
bnc#710230.
* Sun Jul 1 2012 coolo@suse.com
- Add avahi-fix-mkdir.diff: fix build with automake 1.12.1, which
removed AM_PROG_MKDIR_P, which is deprecated for a long time.
* Mon Feb 27 2012 vuntz@opensuse.org
- Stop passing --with-systemdsystemunitdir to configure: we'll just
use the right default value, which should be %%{_unitdir}.
- Change systemd BuildRequires to systemd-devel since this is
needed to get that default value in configure.
* Wed Feb 15 2012 vuntz@opensuse.org
- Update to version 0.6.31:
+ Add Mumble to service type database
+ systemd: syslog.target is not longer useful
+ Compatibility with newer automake
- Rebase avahi-empty-share-dir.patch.
- Move dbus xml interface files from devel subpackage to main
subpackage: those files are needed at runtime.
* Thu Dec 8 2011 dimstar@opensuse.org
- Add avahi-gir-fixup.patch: Change the gir/typelib dependency to
be correctly libavahi-core.so.7 instead of avahi-core.
* Wed Dec 7 2011 dimstar@opensuse.org
- Split the typelib files in typelib-1_0-Avahi-0_6 subpackage.
- Add typelib-1_0-Avahi-0_6 Requires to libavahi-glib-devel
subpackage.
* Sun Dec 4 2011 dimstar@opensuse.org
- Change libtool BuildRequires to be unconditional: it is needed to
build all submodules as well.
- Change License tag to spdx identifier (LGPL-2.1+) and remove
duplicate mentions of the License tag.
* Mon Oct 10 2011 fcrozat@suse.com
- Use systemd macros for 12.1
* Fri Sep 30 2011 coolo@suse.com
- add libtool as buildrequire to make the spec file more reliable
* Sat Sep 17 2011 jengelh@medozas.de
- Remove redundant tags/sections from specfile
- Use %%_smp_mflags for parallel build
* Sat Jul 2 2011 dimstar@opensuse.org
- Add avahi-gtk_box_new.patch: do not used deprecated
gtk_[hv]box_new function anymore; this fixes build of
avahi-glib2.
* Wed May 18 2011 dimstar@opensuse.org
- Update to version 0.6.30:
+ Make IPv6 work again
+ Minor other updates
+ Updated translations
- Changes from version 0.6.29:
+ Updates regarding systemd integration
+ Compatibility with newer gtk3 and gobject introspection
+ Fix CVE-2011-1002, fixing the fix for CVE-2010-2244
+ Minor other updates
+ Updated translations
- Drop patches fixed upstream:
+ avahi-init-lsb.patch
+ avahi-init-dnsconfd-fix-status.patch
+ avahi-fix-howl.pc.patch
+ avahi-null-packet-infinite-loop.patch
* Fri Feb 25 2011 fcrozat@novell.com
- Enable gtk3 support:
+ Add gtk3-devel BuildRequires for avahi-glib2.
+ Add libavahi-ui-gtk3-0 subpackage.
+ Pass --enable-gtk3 instead of --disable-gtk3 to configure in
avahi-glib2.
- Remove explicit Requires of glib2-devel and gtk2-devel in
libavahi-glib-devel: they will automatically be added the
pkgconfig() way.
- Use sysconfig PreReq instead of sysvinit(network) on 11.3 and
earlier.
* Thu Feb 17 2011 vuntz@opensuse.org
- Add avahi-null-packet-infinite-loop.patch: fix an infinite loop
eating CPU when receiving corrupted/null packets. Fix bnc#671797.
* Sun Feb 13 2011 vuntz@opensuse.org
- Call relevant macros in %%post/%%postun:
+ %%desktop_database_post/postun because the package ships at
least one desktop file.
- Pass %%{?no_lang_C} to %%find_lang so that english documentation
can be packaged with the program, and not in the lang subpackage.
* Tue Dec 7 2010 coolo@novell.com
- prereq init script network
* Wed Oct 13 2010 vuntz@opensuse.org
- Add avahi-init-dnsconfd-fix-status.patch to make avahi-dnsconfd
init script report unused instead of dead in status when it's
unused.
* Tue Oct 5 2010 vuntz@opensuse.org
- Update to version 0.6.28:
+ Updates regarding systemd integration
+ Properly avoid bus activation on non-systemd systems
+ Compatibility with newer gtk3 and gobject introspection
+ i18n updates
+ Minor other updates
- Drop avahi-gobject-introspection-1.2.patch: fixed upstream.
* Wed Sep 29 2010 aj@suse.de
- Change lang package Requires to Recommends since it is not
mandatory at runtime.
* Sat Sep 18 2010 vuntz@opensuse.org
- Rename avahi-gobject-introspection-1.1.patch to
avahi-gobject-introspection-1.2.patch and update it to the 1.2
format.
* Wed Sep 1 2010 vuntz@opensuse.org
- Update to version 0.6.27:
+ Various systemd fixes.
+ Daemon:
- make sure we never choke on SIGPIPE
- return successful error code when we ran successfully
- reset signals on initialization
- unblock all signals by default
+ Update libavahi-client so that it can deal with auto-activated
avahi daemons
+ Bump soname
+ Build fix when gtk3 is not installed.
+ i18n updates
- Changes from version 0.6.26:
+ Fix CVE-2010-2244
+ Support for Gtk+ 3 and Gtk+ Introspection
+ Native systemd socket activation support
+ Add systemd service files
+ Add various resource control options, for traffic rate limiting
as well as cache size and D-Bus client object limits.
+ i18n updates
+ Minor other updates
- Rename libavahi-core6 to libavahi-core7, to follow library soname
bump.
- Rebase avahi-gacdir.patch.
- Add avahi-gobject-introspection-1.1.patch to set format of gir
file to 1.1.
- Add avahi-fix-howl.pc.patch to fix generation of howl.pc.
- Drop avahi-0.6.25-fixcrash.patch: fixed upstream.
- Drop avahi-init_unused-not-dead.patch: fixed upstream.
- Add gobject-introspection-devel BuildRequires for the glib2
build, to get introspection support.
- Remove libglade2-devel BuildRequires.
- Remove avahi-utils-gtk <= 0.6.22 Conflicts, since the file for
which we added the Conflicts doesn't exist anymore.
- Pass --disable-gtk3 to configure since we don't want gtk3 support
right now.
- Pass --with-systemdsystemunitdir=/lib/systemd/system to
configure. Thanks Kay!
* Mon Jun 21 2010 lnussel@suse.de
- also check ipv6 case in avahi-0.6.25-fixcrash.patch
* Wed Jun 16 2010 lnussel@suse.de
- Add avahi-0.6.25-fixcrash.patch: avoid crash due to assertion
when receiving corrupt packets.
* Sat May 1 2010 aj@suse.de
- Handle /var/run on tmpfs.
- Avoid self-obsoletes.
* Mon Mar 15 2010 sbrabec@suse.cz
- Do not force start avahi daemon on update (bnc#588367).
- Added support for translation-update-upstream (FATE#301344).
* Tue Dec 15 2009 jengelh@medozas.de
- Add baselibs.conf as a source
* Tue Nov 3 2009 coolo@novell.com
- updated patches to apply with fuzz=0
* Wed Oct 7 2009 dimstar@opensuse.org
- Add avahi-init_unused-not-dead.patch, init scripts report
service dead instead of unused after a stop (bnc#329708).
* Thu Aug 13 2009 vuntz@novell.com
- Tweak the use of new python macros.
* Mon Aug 10 2009 coolo@novell.com
- fix generation of sub-spec files by using update_spec.pl
* Sun Aug 9 2009 coolo@novell.com
- use new python macros
* Thu May 28 2009 vuntz@novell.com
- Remove perl-XML-Parser BuildRequires.
* Thu Apr 16 2009 vuntz@novell.com
- Update to version 0.6.25:
+ Use send_destination for DBus <deny> rule
+ Make .desktop files pass desktop-file-validate
+ CVE-2009-0758: Reflector creates packet storm on legacy unicast
traffic
+ Build system fixes.
+ Updated translations.
- Respin avahi-desktop.patch.
- Drop bnc_459007.patch: fixed upstream.
* Mon Feb 2 2009 vuntz@novell.com
- Call %%suse_update_desktop_file on bssh and bvnc.
* Sun Feb 1 2009 vuntz@novell.com
- Update avahi-desktop.patch to not add X-SuSE-translate=true in
.desktop files.
* Fri Jan 16 2009 ro@suse.de
- readd libavahi-common.la, breaks > 100 packages if done this way
* Wed Jan 14 2009 sbrabec@suse.cz
- avahi-glib2-utils-gtk renamed back to its correct name
avahi-utils-gtk (bnc#456418).
- Removed pointless libtool .la file.
* Tue Jan 13 2009 olh@suse.de
- obsolete old -XXbit packages (bnc#437293)
* Tue Jan 6 2009 mboman@suse.de
- Update to version 0.6.24:
+ A huge number of bug fixes, including a security relavant one
(low risk)
+ Add two new configuration directives "allow-interfaces" and
"deny-interfaces" which can be used to make Avahi ignore certain
network interfaces or only use certain network interfaces
+ Translation updates
- Remove avahi-man-selection.patch. Fixed upstream
- Remove avahi-no-gtk-no-interfaces.patch. Fixed upstream.
- Remove avahi-bookmarks-no-pygtk.patch. Fixed upstream
- Remove avahi-no-gtk-python.patch. Fixed upstream
- Remove avahi-allocsize.patch. Fixed upstream
- Remove avahi-dnsconfd-netconfig.patch. Fixed upstream
* Wed Dec 17 2008 mauro@suse.de
- Added bnc_459007.patch to fix bnc#459007
+ Fixes CVE-2008-5081
* Mon Dec 15 2008 sbrabec@suse.cz
- avahi-discover.glade is required by avahi-utils-gtk and
python-avahi-gtk => move to avahi (bnc#456418).
- Upgrade protection for avahi-utils-gtk built as
avahi-glib2-utils-gtk (bnc#456418).
* Mon Nov 24 2008 sbrabec@suse.cz
- Removed dependency libavahi-common3 -> avahi (bnc#447101).
* Thu Oct 23 2008 maw@suse.de
- Make debug packages require a specific %%{version}-%%{release}.
* Fri Oct 17 2008 lnussel@suse.de
- use netconfig for avahi-dnsconfd (bnc#431240)
- disable avahi-dnsconfd by default (bnc#431240)
- remove 0pointer.de and zeroconf.org from default config (bnc#433359)
- fix indenting in init script (bnc#435506)
* Fri Sep 12 2008 aj@suse.de
- Remove languages directory ownership, it's now part of filesystem.
* Thu Sep 4 2008 ro@suse.de
- add Required-Stop to initscripts
* Mon Sep 1 2008 meissner@suse.de
- Added GCC attribute alloc_size markup for allocator functions
* Fri Jul 18 2008 sbrabec@suse.cz
- Build glib2, gobject and python stuff separately to break build
loop cups -> gtk2 -> avahi -> cups.
- Split avahi-python-gtk from avahi-python.
- Updated to version 0.6.23:
* A lot of translation updates
* Beef up bnvc quite a bit, including passing a domain to browse
in
* Increase numer of open files resource limit to 300 so that we
can deal with more clients simultaneously.
* Rework 'poof' algorithm a bit to reduce traffic load on noisy
links.
* Build fixes
* Minor other updates
* Backwards compatible with Avahi 0.6.x with x < 23.
* Wed Jul 16 2008 coolo@suse.de
- don't build cycle between avahi and cups
* Tue May 27 2008 coolo@suse.de
- fix baselibs config one more time
* Sat May 17 2008 coolo@suse.de
- 10.2 had even more xxbit packages to be renamed
* Sun May 11 2008 coolo@suse.de
- fix rename of xxbit packages
* Tue Apr 29 2008 cthiel@suse.de
- obsolete avahi-<arch>, avahi-compat-mDNSResponder-<arch> and
avahi-glib-<arch> via baselibs.conf
* Thu Apr 10 2008 ro@suse.de
- added baselibs.conf file to build xxbit packages
for multilib support
* Tue Mar 11 2008 sbrabec@suse.cz
- Fix build failure of avahi-mono.
* Wed Mar 5 2008 sbrabec@suse.cz
- Build Qt bindings in separate packages to shorten build path and
unneeded triggering for rebuild.
- Spec file rewritten to allow simple and fast build per partes.
* Wed Jan 30 2008 sbrabec@suse.cz
- Fixed init scripts (bnc#332964).
* Mon Jan 21 2008 ro@suse.de
- same for libavahi-glib1 and libavahi-ui0
* Sun Jan 20 2008 ro@suse.de
- avahi-mono: buildreq libavahi-client3 (for mono-find-requires)
* Wed Dec 19 2007 jpr@suse.de
- Update to 0.6.22
* i18n support
* Documentation and example code updates
* Support for registering the Avahi documentation in devhelp
(needs manual setup)
* Added a new component libavahi-gobject, which is a
GObjectified version of the Avahi API
* Major BSD compatibility improvements
* avahi-ui: Allow overwriting of pretty service name by the
application
* Service type database updates
* Add new option --parsable to avahi-browse
* Make avahi-autoipd actually produce correct ARP packets
* Add FreeBSD kqueue support for watching /etc/avahi/services
* Use search domain from /etc/resolv.conf as additional browse
domains.
* No longer return a conflict error when two local applications
register identical RRs.
* Properly find alternative service/host names for very long names
* DNS name compression fix (Sjoerd Simons)
* Fedora init script order fix
* Several fixes to make gcc produces less warnings
* Minor other updates
- Package avahi-discover-standalone in gtk-utils with its glade files
* Sun Oct 21 2007 coolo@suse.de
- fix provides, obsoleting something another package provides creates
a conflict between them
* Tue Oct 9 2007 sbrabec@suse.cz
- Rename packages according to shared library naming policy.
- Make devel packages binding specific to deliver correct
dependencies (#193817).
- Rename python package according to python package naming policy.
- Prepend library devel packages names by "lib".
- libavahi-ui moved to libavahi-glib to prevent depending of avahi
core on libglade2.
- Split commands line utilities and GTK+ UI utilities to separate
packages to not force them for daemon or Qt binding users.
* Wed Sep 5 2007 maw@suse.de
- Move %%{_datadir}/pixmaps/gnome-nettool2.png from the python
subpackage to the base package (#299566).
* Wed Sep 5 2007 sbrabec@suse.cz
- Start avahi by default (#298872).
- Handle avahi-bookmarks daemon in scriptlets.
* Tue Aug 7 2007 maw@suse.de
- But that macro is deprecated (http://en.opensuse.org/Packaging/SUSE_Package_Conventions/RPM_Macros#3.28._.25run_ldconfig_.28deprecated.29)
so replace it with /sbin/ldconfig.
* Mon Aug 6 2007 bk@suse.de
- replace -p /usr/sbin/ldconfig with %%{run_ldconfig}
* Mon Jul 30 2007 aj@suse.de
- Add gcc-c++ to BuildRequires.
* Tue Jul 24 2007 aj@suse.de
- Resort spec file so that mDNSResponder is provided again.
* Mon Jul 16 2007 aj@suse.de
- Fix spec file.
* Mon Jul 16 2007 aj@suse.de
- Use extra spec file for avahi-mono to avoid build cycle
avahi->gnome->mono->avahi.
* Thu Jul 5 2007 maw@suse.de
- Build require gtk2-devel.
* Thu Jul 5 2007 maw@suse.de
- Don't remove libavahi-common.la, because many things depend on it
- Make avahi-mono require gtk-sharp2.
- Update avahi-gacdir.patch, fixing the build on biarch platforms.
* Thu Jul 5 2007 maw@suse.de
- Remove some extraneous comments in the .spec file.
* Tue Jul 3 2007 maw@suse.de
- Update to version 0.6.20:
+ Various bug fixes and portability fixes
+ New features, including a new libavahi-ui library and tools
to exploit it
+ A fix for a local DoS vulnerability (b.n.c #287123 and
CVE-2007-3372)
- Remove upstreamed patches: avahi-python-compile.patch and
avahi-compat-libdns_sd-fixes.patch; rename
avahi-discover-icon.patch to avahi-desktop.patch, and fix more
.desktop files therein
- Buildrequire gtk-sharp2.
* Wed Jun 6 2007 sbrabec@suse.cz
- Removed invalid desktop Category "Application" (#254654).
* Wed May 23 2007 ro@suse.de
- fix some rpmlint errors (call ldconfig in post scripts)
* Tue Mar 27 2007 crivera@suse.de
- Improve libdns_sd compat support. This helps fix 214887.
* Mon Mar 26 2007 rguenther@suse.de
- Add gdbm-devel and zlib-devel BuildRequires.
* Tue Mar 13 2007 crivera@suse.de
- Rework the sub package split. There is a new package, avahi-python,
that contains all of the Python utilities. This removes all Python
dependencies from the base avahi package. This fixes 245390.
* Fri Mar 9 2007 crivera@suse.de
- Install avahi.firewill in /etc/sysconfig/SuSEfirewall2.d/services
instead of /usr/share/SuSEfirewall2/services. This allows avahi
to build again. This also depends on the latest dbus-1-python
submission being approved.
* Tue Feb 27 2007 crivera@suse.de
- Remove netdev patch in favor of using the configure parameter
instead. This also fixes a similar issue with the autoipd group
and user. This fixes 237145.
* Mon Feb 26 2007 crivera@suse.de
- Replace the non-existent "netdev" group with the "avahi" group in
avahi-dbus.conf. This fixes 237145.
- Remove Application, Utility, Network, and Settings categories from
the .desktop file. This fixes 244464.
* Wed Feb 21 2007 sbrabec@suse.cz
- Updated to a bugfix release 0.6.17:
* Don't accept "localhost" as a local mDNS host name
* Allow running avahi-bookmarks as CGI script
* Improve libdns_sd compatibility
* Stability: libdns_sd mutex locking order fix
* Publish IPv6 addresses via IPv4 and vice versa
* IA64 fixes
* A lot of minor cleanups and fixes
- Fixed python dependencies (#244457).
- Fixed howl compatibility links (#244486).
- Fixed python byte-compilation (#244458).
- Added avahi-bookmarks init script.
- Added SuSEfirewall2 rule.
* Tue Feb 13 2007 sbrabec@suse.cz
- Do not build unusable static libraries (#238552#c17).
* Wed Jan 31 2007 ro@suse.de
- removed gnome-nettool from BuildRequires (and Recommends)
(causes a build-cycle) and use local copy of the icon
* Fri Jan 26 2007 ro@suse.de
- add mono-devel to build requires to make mono-reqprov work
* Wed Jan 24 2007 sbrabec@suse.cz
- Updated to version 0.6.16 (CVE-2006-5461, CVE-2006-6870):
* Revert previous patch to check nlmsg_pid as it is bogus and
breaks in many cases, notably when using NetworkManager.
* Replace with new SO_PASSCRED-based check of the sending UID
which seems to work better.
* Handle some errors in libdns_sd more gracefully the way the real
libdns_sd does
* Apply fix for Linux 2.6.19+ where IFA_RTA / IFLA_RTA is no
longer defined
* Fix doxygen comments for avahi watch
* Make d-bus version detection work for >= 1.0
* Dont dbus_connection_close on shared dbus connections
* Fix potential endless loop in dns label unpacking code
* Fix bogus assertion in client-publish-service.c example
* Mild fix to some doxygen docs for avahi-common/address.h
* Fix passing in custom priviledged group (previously ignored
setting)
* Check that netlink messages actually originate from the kernel
and not another process.
* Fix dbus_service_browser not setting
AVAHI_LOOKUP_RESULT_OUR_OWN.
* Sun Jan 21 2007 dmueller@suse.de
-compat-mDNSResponder-devel should require avahi-devel
* Sat Jan 20 2007 aj@suse.de
- Fix avahi-sharp.pc file to use correct gcac location.
- Add obsoletes and provides for mDNSResponder.
* Thu Dec 14 2006 sbrabec@suse.cz
- Created init script symlinks in /usr/sbin (#228203).
* Sun Nov 12 2006 thoenig@suse.de
- Update patch avahi-dbus-request-name-flags-fix-thoenig-02.patch:
Be precise with regard to the minor version of D-Bus
* Sun Nov 12 2006 thoenig@suse.de
- Add patch avahi-dbus-request-name-flags-fix-thoenig-01.patch:
Fix flawed logic for flags passed to dbus_bus_request_name()
* Mon Oct 30 2006 sbrabec@suse.cz
- Check the sender ID of netlink packets before using them
(#216219).
* Sun Oct 15 2006 danw@suse.de
- Remove dead patches
* Mon Oct 9 2006 sbrabec@suse.cz
- Build in older products.
- Enabled parallel build.
* Fri Sep 22 2006 aj@suse.de
- Fix filelist for python upgrade.
- Build everything with RPM_OPT_FLAGS.
* Mon Sep 18 2006 jhargadon@suse.de
- update to version 0.6.14
- Add new daemon "avahi-autoipd" which is an implementation of
IPv4LL as defined in RFC3927, a technology for assigning link-local IP
addresses without DHCP server. The same functionality has been available on
Windows under the name APIPA. While it is not the first implemenatation of
this technology for Free operating systems it is clearly the most powerful
and hopefully even the most secure. (Because it chroot()s and drops
priviliges and suchlike)
- Fix a segfault in the code handling static host name registrations
- Add a few new entries to the service type database
- s/D-?BUS/D-Bus/g
- Documentation updates
- Fix service type database building on Solaris
- Make use of newer D-Bus APIs
- Fix random seed initialization
- Install SFTP static service file by default
- Other minor code cleanups
- removed upstreamed patches
* Sun Sep 3 2006 aj@suse.de
- Follow package rename qt->libqt4.
* Thu Aug 24 2006 cthiel@suse.de
- fix build
* Wed Aug 16 2006 cthiel@suse.de
- buildrequire python-gtk-devel instead of python-gtk
* Mon Aug 14 2006 thoenig@suse.de
- Add patch avahi-dbus-api-fix-thoenig-01.patch: Use
dbus_connection_close, not dbus_connection_disconnect
* Fri Aug 11 2006 cthiel@suse.de
- remove avahi-0.6.10-pygtk-hack.patch, since python-gtk has been fixed in
the meantime
* Sun Aug 6 2006 cthiel@suse.de
- fixed build by adding avahi-0.6.10-pygtk-hack.patch to hack around an
unfavorable configure check
* Mon Jul 3 2006 schwab@suse.de
- Fix quoting in configure script.
- Fix invalid redefinition of docdir.
* Mon May 15 2006 sbrabec@suse.cz
- Updated to version 0.6.10 (#137781).
* Fix a buffer overflow in avahi-core
* Refuse to process invalid UTF8 data
* Automatically reconnect to the DBUS if we're kicked. (Works only if
chroot() is disabled)
* Don't hit an assert() in the client libs when the Avahi daemon is
terminated
* Enumerate all service types in the database in the Service
Discovery Applet for Gnome
* Improve the Bonjour compatibility layer to make it survive
GnomeMeeting's broken usage
* Deal properly with local non-ASCII hostnames
* AMD64 and FreeBSD portability fixes
* Filter double DNS server entries in avahi-dnsconfd
* Fix a locking bug in avahi-sharp's EntryGroup.AddService()
* Ported to Solaris (incomplete)
* Add _airport._tcp to our service type database
* Tue May 9 2006 sbrabec@suse.cz
- Fixed buffer overflow in avahi_record_to_string() (#137781#c7).
* Mon Apr 24 2006 sbrabec@suse.cz
- Replaced Obsoletes by Conflicts for mDNSResponder* (#149676).
* Wed Apr 19 2006 jpr@suse.de
- Fix compat layer ABI inconsistencies with mDNSResponder (part of
[#149676])
* Wed Apr 5 2006 sbrabec@suse.cz
- Wait for daemon initialization in the init script (#150902).
* Tue Apr 4 2006 sbrabec@suse.cz
- Use Provides and Obsoletes instead of Conflicts to allow seamless
replacement.
* Mon Mar 20 2006 sbrabec@suse.cz
- Call %%insserv_cleanup in %%postun.
* Thu Feb 9 2006 sbrabec@suse.cz
- Provide libdns_sd.so RPM symbol, as mDNSResponder does.
- Reduced BuildRequires.
* Thu Feb 9 2006 sbrabec@suse.cz
- Fixed circular dependency between avahi and avahi-glib
(avahi-discover moved to avahi-glib).
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Jan 23 2006 sbrabec@suse.cz
- Updated to version 0.6.5.
- Enable howl compatibility layer as separate packages.
* Mon Jan 16 2006 sbrabec@suse.cz
- Updated to version 0.6.4.
* Tue Dec 20 2005 ro@suse.de
- fix build with dbus-1 0.60
- added libxml2-python to nfb
* Fri Dec 16 2005 rml@suse.de
- Move libdns_sd.so to avahi-compat-mDNSResponder from
avahi-compat-mDNSResponder-devel (fix up requires/provides)
* Fri Dec 2 2005 sbrabec@suse.cz
- Provide dns_sd.h compatibility symlink.
* Fri Dec 2 2005 sbrabec@suse.cz
- Enable mDNSResponder compatibility layer as separate packages.
* Fri Dec 2 2005 sbrabec@suse.cz
- Call aclocal to compile in PLUS.
- Enabled qt4 bindings.
- Fixed file ownership.
- Disabled parallel build - mono fails often.
* Thu Dec 1 2005 sbrabec@suse.cz
- Bi-arch fix.
- Build as user.
- Enabled parallel build.
* Wed Nov 30 2005 sbrabec@suse.cz
- Updated to version 0.6.1.
- Moved all devel files and Requires to devel subpackage.
* Wed Oct 12 2005 ro@suse.de
- use gnome2-devel-packages in nfb and cleanup nfb
- fix build of sharp part on x86_64
* Mon Oct 10 2005 ro@suse.de
- removed restart_on_update in postinstall
(only needed in postuninstall)
* Thu Oct 6 2005 jpr@suse.de
- Initial check in