unsigned char *fullanswer = answer;
struct dn_answer *ans;
dns_HEADER *h;
+ int ret = 0;
int res;
int x;
ast_log(LOG_WARNING, "Failed to parse result\n");
return -1;
}
- if (res > 0)
- return 1;
+ ret = 1;
}
}
answer += ntohs(ans->size);
len -= ntohs(ans->size);
}
- return 0;
+ return ret;
}
#ifndef HAVE_RES_NINIT
if (verbose)
ast_verb(3, "refreshing '%s'\n", entry->name);
- ast_get_ip_or_srv(&tmp, entry->name, entry->service);
- if (inaddrcmp(&tmp, &entry->last)) {
+ if (!ast_get_ip_or_srv(&tmp, entry->name, entry->service) && inaddrcmp(&tmp, &entry->last)) {
ast_copy_string(iabuf, ast_inet_ntoa(entry->last.sin_addr), sizeof(iabuf));
ast_copy_string(iabuf2, ast_inet_ntoa(tmp.sin_addr), sizeof(iabuf2));
ast_log(LOG_NOTICE, "dnssrv: host '%s' changed from %s:%d to %s:%d\n",
if (entry)
AST_LIST_INSERT_TAIL(&c->entries, entry, list);
- return 1;
+ return 0;
}
/* Do the bizarre SRV record weight-handling algorithm