diff options
author | kraxel <kraxel> | 2006-01-30 13:27:55 +0000 |
---|---|---|
committer | kraxel <kraxel> | 2006-01-30 13:27:55 +0000 |
commit | 0c4259cab79fe4c57cf2eb626170d5855f2ebb9a (patch) | |
tree | c00655e30d6a9641d5a3c4ae6c9200dcec44ecdc /mdns.c | |
parent | 4ae83fb9e85d4770ab8813b06a936ef21c335da9 (diff) | |
download | xenwatch-0c4259cab79fe4c57cf2eb626170d5855f2ebb9a.tar.gz |
- fixes.
Diffstat (limited to 'mdns.c')
-rw-r--r-- | mdns.c | 27 |
1 files changed, 13 insertions, 14 deletions
@@ -202,12 +202,12 @@ static void resolve_callback(AvahiServiceResolver *r, }; struct mdns_window *mdns = userdata; char a[AVAHI_ADDRESS_STR_MAX], p[32], url[256]; - unsigned char *txtstr = NULL; + unsigned char *txtstr, *path = NULL; char *proto = NULL; AvahiStringList *txtlist; GtkTreeIter iter; char nif[32]; - int defport, i; + int defport = 0, i; switch (event) { case AVAHI_RESOLVER_FOUND: @@ -225,12 +225,9 @@ static void resolve_callback(AvahiServiceResolver *r, /* xen stuff */ txtlist = avahi_string_list_find(txt, "dom-id"); - fprintf(stderr, "x %s", avahi_string_list_to_string(txt)); if (txtlist) { - fprintf(stderr,"xx"); txtstr = avahi_string_list_get_text(txtlist); if (txtstr) { - fprintf(stderr, "xxx %s", txtstr); gtk_list_store_set(mdns->store, &iter, ST_COL_XEN_DOM_ID, txtstr+7, -1); @@ -248,13 +245,15 @@ static void resolve_callback(AvahiServiceResolver *r, /* path */ txtlist = avahi_string_list_find(txt, "path"); - if (txtlist) + if (txtlist) { txtstr = avahi_string_list_get_text(txtlist); - if (!txtstr) - break; - gtk_list_store_set(mdns->store, &iter, - ST_COL_PATH, txtstr+5, - -1); + if (txtstr) { + path = txtstr+5; + gtk_list_store_set(mdns->store, &iter, + ST_COL_PATH, path, + -1); + } + } /* url */ for (i = 0; i < sizeof(protos)/sizeof(protos[0]); i++) { @@ -264,14 +263,14 @@ static void resolve_callback(AvahiServiceResolver *r, defport = protos[i].defport; break; } - if (!proto) + if (!proto || !path) break; if (defport != port) snprintf(url, sizeof(url), "%s://%s:%d%s", - proto, host_name, port, txtstr+5); + proto, host_name, port, path); else snprintf(url, sizeof(url), "%s://%s%s", - proto, host_name, txtstr+5); + proto, host_name, path); gtk_list_store_set(mdns->store, &iter, ST_COL_URL, url, -1); |