From: Michiel van Baak Date: Mon, 14 Jul 2008 17:21:18 +0000 (+0000) Subject: Merged revisions 130735 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~1683 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7152eba18d8f7d91a7a7a72e9fb05892b5053d40;p=thirdparty%2Fasterisk.git Merged revisions 130735 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r130735 | mvanbaak | 2008-07-14 19:10:21 +0200 (Mon, 14 Jul 2008) | 10 lines notify the user that dnsmgr refresh wont work when dnsmgr is not enabled. Previously this command would automagically appear and disappear. This was confusing. (closes issue #12796) Reported by: chappell Patches: dnsmgr_refresh_3.diff uploaded by chappell (license 8) Tested by: russell, chappell, mvanbaak ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@130744 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/dnsmgr.c b/main/dnsmgr.c index 727d8b5fcc..2df778b45c 100644 --- a/main/dnsmgr.c +++ b/main/dnsmgr.c @@ -285,20 +285,29 @@ static char *handle_cli_refresh(struct ast_cli_entry *e, int cmd, struct ast_cli case CLI_GENERATE: return NULL; } - if (a->argc > 3) + + if (!enabled) { + ast_cli(a->fd, "DNS Manager is disabled.\n"); + return 0; + } + + if (a->argc > 3) { return CLI_SHOWUSAGE; + } if (a->argc == 3) { - if ( regcomp(&info.filter, a->argv[2], REG_EXTENDED | REG_NOSUB) ) + if (regcomp(&info.filter, a->argv[2], REG_EXTENDED | REG_NOSUB)) { return CLI_SHOWUSAGE; - else + } else { info.regex_present = 1; + } } refresh_list(&info); - if (info.regex_present) + if (info.regex_present) { regfree(&info.filter); + } return CLI_SUCCESS; } @@ -414,7 +423,6 @@ static int do_reload(int loading) pthread_kill(refresh_thread, SIGURG); pthread_join(refresh_thread, NULL); refresh_thread = AST_PTHREADT_NULL; - ast_cli_unregister(&cli_refresh); res = 0; } else