network/avahi: Updated for version 0.6.28.

Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
This commit is contained in:
David Somero 2011-01-02 00:49:54 -02:00 committed by Robby Workman
parent ebb70e89c9
commit c27fe35bbd
4 changed files with 17 additions and 89 deletions

View file

@ -1,69 +0,0 @@
From 55c732acd013b6ac979b6e1f5432a301481879ca Mon Sep 17 00:00:00 2001
From: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Date: Sun, 15 Aug 2010 22:56:49 +0100
Subject: [PATCH] Check if the deamon isn't already running
---
avahi-client/client.c | 29 +++++++++++++++++++++++++----
1 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/avahi-client/client.c b/avahi-client/client.c
index be675ad..c7ece4a 100644
--- a/avahi-client/client.c
+++ b/avahi-client/client.c
@@ -478,6 +478,7 @@ static DBusConnection* avahi_dbus_bus_get(DBusError *error) {
AvahiClient *avahi_client_new(const AvahiPoll *poll_api, AvahiClientFlags flags, AvahiClientCallback callback, void *userdata, int *ret_error) {
AvahiClient *client = NULL;
DBusError error;
+ int daemon_running = 0;
avahi_init_i18n();
@@ -560,12 +561,33 @@ AvahiClient *avahi_client_new(const AvahiPoll *poll_api, AvahiClientFlags flags,
if (dbus_error_is_set(&error))
goto fail;
- if (!dbus_bus_start_service_by_name(client->bus, AVAHI_DBUS_NAME, 0, NULL, &error)) {
- /* We free the error so its not set, that way the fail target
- * will return the NO_DAEMON error rather than a DBUS error */
+ /* Check if the process already exists on the bus, otherwise try to start
+ * it. */
+ if (!dbus_bus_name_has_owner (client->bus, AVAHI_DBUS_NAME, &error)) {
+ dbus_error_free(&error);
+ daemon_running = 0;
+ } else {
+ daemon_running = 1;
+ }
+
+ if (!daemon_running &&
+ !dbus_bus_start_service_by_name(client->bus,
+ AVAHI_DBUS_NAME, 0, NULL, &error)) {
dbus_error_free(&error);
+ } else {
+ daemon_running = 1;
+ }
+ /* Re-check something else didn't start the daemon */
+ if (!daemon_running &&
+ !dbus_bus_name_has_owner (client->bus, AVAHI_DBUS_NAME, &error)) {
+ dbus_error_free(&error);
+ } else {
+ daemon_running = 1;
+ }
+
+ if (!daemon_running) {
if (!(flags & AVAHI_CLIENT_NO_FAIL)) {
if (ret_error)
@@ -577,7 +599,6 @@ AvahiClient *avahi_client_new(const AvahiPoll *poll_api, AvahiClientFlags flags,
/* The user doesn't want this call to fail if the daemon is not
* available, so let's return succesfully */
client_set_state(client, AVAHI_CLIENT_CONNECTING);
-
} else {
if (init_server(client, ret_error) < 0)
--
1.7.1

View file

@ -1,17 +1,17 @@
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. This kind of technology is already found in
Apple MacOS X (branded Rendezvous Bonjour and sometimes Zeroconf) and is very
convenient.
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. This kind of technology is already
found in Apple MacOS X (branded Rendezvous Bonjour and sometimes Zeroconf)
and is very convenient.
You will need to have an "avahi" user and group on the target system
prior to installing the avahi package. See README.SBo in this
directory (it is also installed to the package docmentation directory)
for more information and for setup notes.
prior to installing the avahi package. See README.SBo in this directory
(it is also installed to the package docmentation directory) for more
information and for setup notes.
This requires libdaemon.
This requires libdaemon.
mono is an optional dependency that also requires gtk-sharp - enable it
with the following: "MONO=yes ./avahi.SlackBuild"

View file

@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=avahi
VERSION=0.6.27
BUILD=${BUILD:-2}
VERSION=0.6.28
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@ -88,9 +88,6 @@ cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R a-s,u+w,go+r-w .
# Bug fix http://avahi.org/ticket/319
patch -p1 < $CWD/0001-Check-if-the-deamon-isn-t-already-running.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \

View file

@ -1,10 +1,10 @@
PRGNAM="avahi"
VERSION="0.6.27"
VERSION="0.6.28"
HOMEPAGE="http://avahi.org/"
DOWNLOAD="http://avahi.org/download/avahi-0.6.27.tar.gz"
MD5SUM="74b40f87aeab07fc77af25f725b32f04"
DOWNLOAD="http://avahi.org/download/avahi-0.6.28.tar.gz"
MD5SUM="d0143a5aa3265019072e53ab497818d0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="David Somero"
EMAIL="dsomero@hotmail.com"
APPROVED="Erik Hanson"
APPROVED="Niels Horn"