From f081d098f67561bdcfedf5002335fa32d45e0442 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 5 May 2005 22:22:19 +0000 Subject: * add flx_server_add_service_strlst() * add flx_server_add_text_strlst() git-svn-id: file:///home/lennart/svn/public/avahi/trunk@42 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- server.c | 46 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 39 insertions(+), 7 deletions(-) (limited to 'server.c') diff --git a/server.c b/server.c index a7c4f15..9e2b692 100644 --- a/server.c +++ b/server.c @@ -717,25 +717,39 @@ void flx_server_add_address( g_free(n); } -void flx_server_add_text_va( +void flx_server_add_text_strlst( flxServer *s, flxEntryGroup *g, gint interface, guchar protocol, flxEntryFlags flags, const gchar *name, - va_list va) { + flxStringList *strlst) { flxRecord *r; g_assert(s); r = flx_record_new_full(name ? name : s->hostname, FLX_DNS_CLASS_IN, FLX_DNS_TYPE_TXT); - r->data.txt.string_list = flx_string_list_new_va(va); + r->data.txt.string_list = strlst; flx_server_add(s, g, interface, protocol, flags, r); flx_record_unref(r); } +void flx_server_add_text_va( + flxServer *s, + flxEntryGroup *g, + gint interface, + guchar protocol, + flxEntryFlags flags, + const gchar *name, + va_list va) { + + g_assert(s); + + flx_server_add_text_strlst(s, g, interface, protocol, flags, name, flx_string_list_new_va(va)); +} + void flx_server_add_text( flxServer *s, flxEntryGroup *g, @@ -776,8 +790,7 @@ static void escape_service_name(gchar *d, guint size, const gchar *s) { *(d++) = 0; } - -void flx_server_add_service_va( +void flx_server_add_service_strlst( flxServer *s, flxEntryGroup *g, gint interface, @@ -787,7 +800,7 @@ void flx_server_add_service_va( const gchar *domain, const gchar *host, guint16 port, - va_list va) { + flxStringList *strlst) { gchar ptr_name[256], svc_name[256], ename[64], enum_ptr[256]; flxRecord *r; @@ -820,12 +833,31 @@ void flx_server_add_service_va( flx_server_add(s, g, interface, protocol, FLX_ENTRY_UNIQUE, r); flx_record_unref(r); - flx_server_add_text_va(s, g, interface, protocol, FLX_ENTRY_UNIQUE, svc_name, va); + flx_server_add_text_strlst(s, g, interface, protocol, FLX_ENTRY_UNIQUE, svc_name, strlst); snprintf(enum_ptr, sizeof(enum_ptr), "_services._dns-sd._udp.%s", domain); flx_server_add_ptr(s, g, interface, protocol, FLX_ENTRY_NULL, enum_ptr, ptr_name); } +void flx_server_add_service_va( + flxServer *s, + flxEntryGroup *g, + gint interface, + guchar protocol, + const gchar *type, + const gchar *name, + const gchar *domain, + const gchar *host, + guint16 port, + va_list va){ + + g_assert(s); + g_assert(type); + g_assert(name); + + flx_server_add_service(s, g, interface, protocol, type, name, domain, host, port, flx_string_list_new_va(va)); +} + void flx_server_add_service( flxServer *s, flxEntryGroup *g, -- cgit