]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 267138 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Wed, 2 Jun 2010 18:57:02 +0000 (18:57 +0000)
committerRussell Bryant <russell@russellbryant.com>
Wed, 2 Jun 2010 18:57:02 +0000 (18:57 +0000)
https://origsvn.digium.com/svn/asterisk/trunk

........
  r267138 | russell | 2010-06-02 13:53:38 -0500 (Wed, 02 Jun 2010) | 4 lines

  Add a CLI command that blocks until Asterisk has fully booted.

  Review: https://reviewboard.asterisk.org/r/684/
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@267139 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/cli.c

index 72e3000e03e5c334a06daccae340c74cf82c4f03..8361e4ebdff3065eccdd62416f7c761527bb3b1d 100644 (file)
@@ -1465,6 +1465,28 @@ static char *group_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cl
 #undef FORMAT_STRING
 }
 
+static char *handle_cli_wait_fullybooted(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+       switch (cmd) {
+       case CLI_INIT:
+               e->command = "core waitfullybooted";
+               e->usage =
+                       "Usage: core waitfullybooted\n"
+                       "       Wait until Asterisk has fully booted.\n";
+               return NULL;
+       case CLI_GENERATE:
+               return NULL;
+       }
+
+       while (!ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) {
+               usleep(100);
+       }
+
+       ast_cli(a->fd, "Asterisk has fully booted.\n");
+
+       return CLI_SUCCESS;
+}
+
 static char *handle_help(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
 
 static struct ast_cli_entry cli_cli[] = {
@@ -1508,6 +1530,8 @@ static struct ast_cli_entry cli_cli[] = {
        AST_CLI_DEFINE(handle_cli_show_permissions, "Show CLI permissions"),
 
        AST_CLI_DEFINE(handle_cli_check_permissions, "Try a permissions config for a user"),
+
+       AST_CLI_DEFINE(handle_cli_wait_fullybooted, "Wait for Asterisk to be fully booted"),
 };
 
 /*!