module_tizenaudio_discover_la_SOURCES = src/module-tizenaudio-discover.c
module_tizenaudio_discover_la_LDFLAGS = $(MODULE_LDFLAGS)
-module_tizenaudio_discover_la_LIBADD = $(MODULE_LIBADD) $(DNSSD_LIBS)
-module_tizenaudio_discover_la_CFLAGS = $(MODULE_CFLAGS) $(DNSSD_CFLAGS)
+module_tizenaudio_discover_la_LIBADD = $(MODULE_LIBADD) $(DNSSD_LIBS) $(VCONF_LIBS)
+module_tizenaudio_discover_la_CFLAGS = $(MODULE_CFLAGS) $(DNSSD_CFLAGS) $(VCONF_CFLAGS)
module_tizenaudio_publish_la_SOURCES = src/module-tizenaudio-publish.c
module_tizenaudio_publish_la_LDFLAGS = $(MODULE_LDFLAGS)
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <stdbool.h>
#include <dns_sd.h>
#include <arpa/inet.h>
#include <netinet/in.h>
+#include <vconf.h>
+#include <vconf-keys.h>
#include <pulse/xmalloc.h>
tunnel_free(tnl);
}
+static bool is_local_service(const char *ip_addr) {
+ char *ipv4_addr = NULL;
+ bool is_local = false;
+
+ ipv4_addr = vconf_get_str(VCONFKEY_NETWORK_IP);
+ is_local = pa_safe_streq(ipv4_addr, ip_addr);
+ pa_xfree(ipv4_addr);
+
+ return is_local;
+}
static void dnssd_getaddrinfo_reply_cb(DNSServiceRef sd_ref,
unsigned int flags, unsigned int if_index,
pa_log_info(" Host Name : %s", data->host_name);
pa_log_info(" IP Address : %s", data->ip_address);
pa_log_info(" TTL : %d", ttl);
-
pa_log_info("-----------------------------------");
- tunnel_add(data);
+ if (is_local_service(data->ip_address))
+ pa_log_info("Skip local service!!!");
+ else
+ tunnel_add(data);
/* cleanup addr */
request_clear(data->u->module->core->mainloop, &data->addr);