From 64dff8088b43bd2f367f35e18bf02e73c8052dec Mon Sep 17 00:00:00 2001 From: Trent Lloyd Date: Sat, 4 Jun 2005 19:32:26 +0000 Subject: * Add some use documentation to the daemon * Create the structure for avahi-client * Start building avahi-client and daemon by default git-svn-id: file:///home/lennart/svn/public/avahi/trunk@100 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- Makefile.am | 2 +- avahi-client/Makefile.am | 46 ++++++++++++++++++++++++++++++++++++++++++++++ avahi-client/client-test.c | 11 +++++++++++ avahi-client/client.c | 11 +++++++++++ avahi-client/client.h | 33 +++++++++++++++++++++++++++++++++ configure.ac | 2 +- daemon/README | 6 ++++++ daemon/avahi.conf.example | 23 +++++++++++++++++++++++ 8 files changed, 132 insertions(+), 2 deletions(-) create mode 100644 avahi-client/Makefile.am create mode 100644 avahi-client/client-test.c create mode 100644 avahi-client/client.c create mode 100644 avahi-client/client.h create mode 100644 daemon/README create mode 100644 daemon/avahi.conf.example diff --git a/Makefile.am b/Makefile.am index 6606f65..18a1cfc 100644 --- a/Makefile.am +++ b/Makefile.am @@ -18,7 +18,7 @@ # 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 diff --git a/avahi-client/Makefile.am b/avahi-client/Makefile.am new file mode 100644 index 0000000..f4f59dc --- /dev/null +++ b/avahi-client/Makefile.am @@ -0,0 +1,46 @@ +# $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 diff --git a/avahi-client/client-test.c b/avahi-client/client-test.c new file mode 100644 index 0000000..72a8e65 --- /dev/null +++ b/avahi-client/client-test.c @@ -0,0 +1,11 @@ +#include + +int +main (int argc, char *argv[]) +{ + AvahiClient *avahi; + + avahi = avahi_client_new (); + + g_message ("Got server ID %d", avahi->serverid); +} diff --git a/avahi-client/client.c b/avahi-client/client.c new file mode 100644 index 0000000..949e5ef --- /dev/null +++ b/avahi-client/client.c @@ -0,0 +1,11 @@ +#include + +AvahiClient * +avahi_client_new () +{ + AvahiClient *tmp; + + tmp = g_new0 (AvahiClient, 1); + + return tmp; +} diff --git a/avahi-client/client.h b/avahi-client/client.h new file mode 100644 index 0000000..a33f1d2 --- /dev/null +++ b/avahi-client/client.h @@ -0,0 +1,33 @@ +#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 + +typedef struct AvahiClient { + gint serverid; +} AvahiClient; + +AvahiClient* avahi_client_new (); + +#endif diff --git a/configure.ac b/configure.ac index 721be81..642e8c8 100644 --- a/configure.ac +++ b/configure.ac @@ -86,5 +86,5 @@ if test "x$GCC" = "xyes" ; then 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 diff --git a/daemon/README b/daemon/README new file mode 100644 index 0000000..e5f6405 --- /dev/null +++ b/daemon/README @@ -0,0 +1,6 @@ +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. diff --git a/daemon/avahi.conf.example b/daemon/avahi.conf.example new file mode 100644 index 0000000..39e9de9 --- /dev/null +++ b/daemon/avahi.conf.example @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + 512 + + -- cgit