[asterisk-commits] russell: trunk r267138 - /trunk/main/cli.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 2 13:53:40 CDT 2010


Author: russell
Date: Wed Jun  2 13:53:38 2010
New Revision: 267138

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=267138
Log:
Add a CLI command that blocks until Asterisk has fully booted.

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

Modified:
    trunk/main/cli.c

Modified: trunk/main/cli.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/cli.c?view=diff&rev=267138&r1=267137&r2=267138
==============================================================================
--- trunk/main/cli.c (original)
+++ trunk/main/cli.c Wed Jun  2 13:53:38 2010
@@ -1557,6 +1557,28 @@
 #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[] = {
@@ -1600,6 +1622,8 @@
 	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"),
 };
 
 /*!




More information about the asterisk-commits mailing list