# USA.
EXTRA_DIST = bootstrap.sh LICENSE doxygen/Makefile.am doxygen/Makefile.in doxygen/doxygen.conf.in libtool.m4
-SUBDIRS = avahi-common avahi-core avahi-discover
+SUBDIRS = avahi-common avahi-core avahi-discover avahi-client daemon
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = avahi-core.pc
--- /dev/null
+# $Id: Makefile.am 90 2005-05-23 16:15:12Z lennart $
+#
+# This file is part of avahi.
+#
+# avahi is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# avahi is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+# License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with avahi; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+AM_CFLAGS=-I$(top_srcdir) -D_GNU_SOURCE
+
+# GLIB 2.0
+AM_CFLAGS+=$(GLIB20_CFLAGS)
+AM_LDADD=$(GLIB20_LIBS)
+
+# This cool debug trap works on i386/gcc only
+AM_CFLAGS+='-DDEBUG_TRAP=__asm__("int $$3")'
+
+avahi_clientincludedir=$(includedir)/avahi-client
+
+avahi_clientinclude_HEADERS =
+ client.h
+
+noinst_PROGRAMS = \
+ client-test
+
+lib_LTLIBRARIES = \
+ libavahi-client.la
+
+libavahi_client_la_SOURCES = \
+ client.c client.h
+
+client_test_SOURCES = \
+ client-test.c
+client_test_CFLAGS = $(AM_CFLAGS)
+client_test_LDADD = $(AM_LDADD) libavahi-client.la
--- /dev/null
+#include <avahi-client/client.h>
+
+int
+main (int argc, char *argv[])
+{
+ AvahiClient *avahi;
+
+ avahi = avahi_client_new ();
+
+ g_message ("Got server ID %d", avahi->serverid);
+}
--- /dev/null
+#include <avahi-client/client.h>
+
+AvahiClient *
+avahi_client_new ()
+{
+ AvahiClient *tmp;
+
+ tmp = g_new0 (AvahiClient, 1);
+
+ return tmp;
+}
--- /dev/null
+#ifndef fooclienthfoo
+#define fooclienthfoo
+
+/* $Id: core.h 98 2005-06-04 18:56:52Z lathiat $ */
+
+/***
+ This file is part of avahi.
+
+ avahi is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ avahi is distributed in the hope that it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
+ Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with avahi; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA.
+***/
+
+#include <glib.h>
+
+typedef struct AvahiClient {
+ gint serverid;
+} AvahiClient;
+
+AvahiClient* avahi_client_new ();
+
+#endif
rm -f conftest.o
fi
-AC_CONFIG_FILES([Makefile avahi-core.pc doxygen/Makefile doxygen/doxygen.conf avahi-common/Makefile avahi-core/Makefile daemon/Makefile avahi-discover/Makefile])
+AC_CONFIG_FILES([Makefile avahi-core.pc doxygen/Makefile doxygen/doxygen.conf avahi-common/Makefile avahi-core/Makefile daemon/Makefile avahi-discover/Makefile avahi-client/Makefile])
AC_OUTPUT
--- /dev/null
+On most systems you will need to setup a security policy for avahi to allow it to own the Avahi service on the system d-bus.
+
+You can find an example in avahi.conf.example, this usually goes in /etc/dbus-1/system.d
+You will need to change the username 'lathiat' to whatever username you use for testing this code (later it will be a dedicated 'avahi' user)
+
+In future this stuff should be handled automatically but for now some manual setup is required.
--- /dev/null
+<!DOCTYPE busconfig PUBLIC
+ "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+ <policy user="lathiat">
+ <allow own="org.freedesktop.Avahi"/>
+ </policy>
+ <policy user="root">
+ <allow own="org.freedesktop.Avahi"/>
+ </policy>
+
+ <!-- Allow anyone to invoke methods on the Manager and Device interfaces -->
+ <policy context="default">
+ <allow send_interface="org.freedesktop.Avahi"/>
+
+ <allow receive_interface="org.freedesktop.Avahi"
+ receive_sender="org.freedesktop.Avahi"/>
+ </policy>
+
+ <limit name="max_match_rules_per_connection">512</limit>
+
+</busconfig>