automerge commit

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@68419 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.2-netsec
Automerge Script 19 years ago
parent 1f30a0a0f2
commit 513c40ddc1

@ -112,6 +112,9 @@ void ast_dnsmgr_release(struct ast_dnsmgr_entry *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)
{ {
struct ast_hostent ahp;
struct hostent *hp;
if (ast_strlen_zero(name) || !result || !dnsmgr) if (ast_strlen_zero(name) || !result || !dnsmgr)
return -1; return -1;
@ -126,21 +129,18 @@ int ast_dnsmgr_lookup(const char *name, struct in_addr *result, struct ast_dnsmg
if (inet_aton(name, result)) if (inet_aton(name, result))
return 0; return 0;
/* if the manager is disabled, do a direct lookup and return the result, /* do a lookup now but add a manager so it will automagically get updated in the background */
otherwise register a managed lookup for the name */ if ((hp = ast_gethostbyname(name, &ahp)))
if (!enabled) { memcpy(result, hp->h_addr, sizeof(result));
struct ast_hostent ahp;
struct hostent *hp;
if ((hp = ast_gethostbyname(name, &ahp))) /* if dnsmgr is not enable don't bother adding an entry */
memcpy(result, hp->h_addr, sizeof(result)); if (!enabled)
return 0; return 0;
} 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)

24
say.c

@ -120,8 +120,12 @@ int ast_say_character_str_full(struct ast_channel *chan, const char *str, const
fn = fnbuf; fn = fnbuf;
} }
res = ast_streamfile(chan, fn, lang); res = ast_streamfile(chan, fn, lang);
if (!res) if (!res) {
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd); if ((audiofd > -1) && (ctrlfd > -1))
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd);
else
res = ast_waitstream(chan, ints);
}
ast_stopstream(chan); ast_stopstream(chan);
num++; num++;
} }
@ -199,8 +203,12 @@ int ast_say_phonetic_str_full(struct ast_channel *chan, const char *str, const c
fn = fnbuf; fn = fnbuf;
} }
res = ast_streamfile(chan, fn, lang); res = ast_streamfile(chan, fn, lang);
if (!res) if (!res) {
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd); if ((audiofd > -1) && (ctrlfd > -1))
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd);
else
res = ast_waitstream(chan, ints);
}
ast_stopstream(chan); ast_stopstream(chan);
num++; num++;
} }
@ -249,8 +257,12 @@ int ast_say_digit_str_full(struct ast_channel *chan, const char *str, const char
} }
if (fn) { if (fn) {
res = ast_streamfile(chan, fn, lang); res = ast_streamfile(chan, fn, lang);
if (!res) if (!res) {
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd); if ((audiofd > -1) && (ctrlfd > -1))
res = ast_waitstream_full(chan, ints, audiofd, ctrlfd);
else
res = ast_waitstream(chan, ints);
}
ast_stopstream(chan); ast_stopstream(chan);
} }
num++; num++;

Loading…
Cancel
Save