23 #include "service_browse_handler.h"
25 #include <logging/logger.h>
27 using namespace fawkes;
46 __webview_service = webview_service;
69 __logger->log_warn(
"WebviewServiceBrowseHandler",
"Browsing for %s.%s in domain %s failed",
78 const char *host_name,
79 const struct sockaddr *addr,
80 const socklen_t addr_size,
82 std::list<std::string> &txt,
85 if (__service_list.find(name) != __service_list.end()) {
86 delete __service_list[name];
87 __service_list.erase(name);
90 for (std::list<std::string>::iterator i = txt.begin(); i != txt.end(); ++i) {
91 std::string::size_type eqind = i->find(
"=");
92 if (eqind != std::string::npos) {
93 std::string key = i->substr(0, eqind);
94 std::string val = i->substr(eqind + 1);
95 if (key ==
"fawkesver") {
97 addr, addr_size, txt);
99 if (! (*s == *__webview_service)) {
100 __logger->log_debug(
"WebviewServiceBrowseHandler",
"Service %s.%s on %s:%u added",
101 name, type, host_name, port);
102 __service_list[name] = s;
118 if (__service_list.find(name) != __service_list.end()) {
119 delete __service_list[name];
120 __service_list.erase(name);
122 __logger->log_debug(
"WebviewServiceBrowseHandler",
"Service %s.%s has been removed",
133 return __service_list;