mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-06 04:30:28 +00:00
fix thinko in dnsmgr.c (lesson: don't commit while you are rushing to a meeting and then heading out of town...)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
12
dnsmgr.c
12
dnsmgr.c
@@ -86,13 +86,13 @@ struct ast_dnsmgr_entry *ast_dnsmgr_get(const char *name, struct in_addr *result
|
|||||||
|
|
||||||
void ast_dnsmgr_release(struct ast_dnsmgr_entry *entry)
|
void ast_dnsmgr_release(struct ast_dnsmgr_entry *entry)
|
||||||
{
|
{
|
||||||
/* if there is an entry (and not the special flag value), remove/free it */
|
if (!entry)
|
||||||
if (entry && (entry != (typeof(entry)) -1)) {
|
return;
|
||||||
|
|
||||||
AST_LIST_LOCK(&entry_list);
|
AST_LIST_LOCK(&entry_list);
|
||||||
AST_LIST_REMOVE(&entry_list, entry, list);
|
AST_LIST_REMOVE(&entry_list, entry, list);
|
||||||
AST_LIST_UNLOCK(&entry_list);
|
AST_LIST_UNLOCK(&entry_list);
|
||||||
free(entry);
|
free(entry);
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int ast_dnsmgr_lookup(const char *name, struct in_addr *result, struct ast_dnsmgr_entry **dnsmgr)
|
int ast_dnsmgr_lookup(const char *name, struct in_addr *result, struct ast_dnsmgr_entry **dnsmgr)
|
||||||
@@ -119,16 +119,14 @@ int ast_dnsmgr_lookup(const char *name, struct in_addr *result, struct ast_dnsmg
|
|||||||
|
|
||||||
if ((hp = ast_gethostbyname(name, &ahp)))
|
if ((hp = ast_gethostbyname(name, &ahp)))
|
||||||
memcpy(result, hp->h_addr, sizeof(result));
|
memcpy(result, hp->h_addr, sizeof(result));
|
||||||
/* flag value to indicate no manager was allocated */
|
return 0;
|
||||||
*dnsmgr = (typeof(*dnsmgr)) -1;
|
|
||||||
} else {
|
} else {
|
||||||
if (option_verbose > 2)
|
if (option_verbose > 2)
|
||||||
ast_verbose(VERBOSE_PREFIX_2 "adding manager for '%s'\n", name);
|
ast_verbose(VERBOSE_PREFIX_2 "adding manager for '%s'\n", name);
|
||||||
*dnsmgr = ast_dnsmgr_get(name, result);
|
*dnsmgr = ast_dnsmgr_get(name, result);
|
||||||
}
|
|
||||||
|
|
||||||
return !*dnsmgr;
|
return !*dnsmgr;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void *do_refresh(void *data)
|
static void *do_refresh(void *data)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user