[asterisk-commits] mvanbaak: branch mvanbaak/cli-command-audit r102772 - /team/mvanbaak/cli-comm...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Feb 6 13:24:10 CST 2008
Author: mvanbaak
Date: Wed Feb 6 13:24:09 2008
New Revision: 102772
URL: http://svn.digium.com/view/asterisk?view=rev&rev=102772
Log:
jabber debug [off] -> jabber set debug {on|off}
Modified:
team/mvanbaak/cli-command-audit/res/res_jabber.c
Modified: team/mvanbaak/cli-command-audit/res/res_jabber.c
URL: http://svn.digium.com/view/asterisk/team/mvanbaak/cli-command-audit/res/res_jabber.c?view=diff&rev=102772&r1=102771&r2=102772
==============================================================================
--- team/mvanbaak/cli-command-audit/res/res_jabber.c (original)
+++ team/mvanbaak/cli-command-audit/res/res_jabber.c Wed Feb 6 13:24:09 2008
@@ -87,9 +87,9 @@
static int aji_initialize(struct aji_client *client);
static int aji_client_connect(void *data, ikspak *pak);
static void aji_set_presence(struct aji_client *client, char *to, char *from, int level, char *desc);
-static char *aji_do_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
+static char *aji_do_debug_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
+static char *aji_do_set_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
static char *aji_do_reload(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
-static char *aji_no_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
static char *aji_show_clients(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
static char *aji_show_buddies(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
static char *aji_test(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
@@ -114,9 +114,9 @@
static int aji_register_transport2(void *data, ikspak *pak);
*/
+static struct ast_cli_entry cli_aji_do_debug_deprecated = AST_CLI_DEFINE(aji_do_debug_deprecated, "Enable/disable jabber debugging");
static struct ast_cli_entry aji_cli[] = {
- AST_CLI_DEFINE(aji_do_debug, "Enable jabber debugging"),
- AST_CLI_DEFINE(aji_no_debug, "Disable Jabber debug"),
+ AST_CLI_DEFINE(aji_do_set_debug, "Enable/Disable Jabber debug", .deprecate_cmd = &cli_aji_do_debug_deprecated),
AST_CLI_DEFINE(aji_do_reload, "Reload Jabber configuration"),
AST_CLI_DEFINE(aji_show_clients, "Show state of clients and components"),
AST_CLI_DEFINE(aji_show_buddies, "Show buddy lists of our clients"),
@@ -2330,30 +2330,83 @@
}
/*!
- * \brief Turn on console debugging.
+ * \brief Turn on/off console debugging.
* \return CLI_SUCCESS.
*/
-static char *aji_do_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
-{
-
+static char *aji_do_set_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
switch (cmd) {
case CLI_INIT:
- e->command = "jabber debug";
+ e->command = "jabber set debug {on|off}";
e->usage =
- "Usage: jabber debug\n"
- " Enables dumping of Jabber packets for debugging purposes.\n";
+ "Usage: jabber set debug {on|off}\n"
+ " Enables/disables dumping of Jabber packets for debugging purposes.\n";
return NULL;
case CLI_GENERATE:
return NULL;
}
- ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
- ASTOBJ_RDLOCK(iterator);
- iterator->debug = 1;
- ASTOBJ_UNLOCK(iterator);
- });
- ast_cli(a->fd, "Jabber Debugging Enabled.\n");
- return CLI_SUCCESS;
+ if (a->argc != e->args)
+ return CLI_SHOWUSAGE;
+
+ if (!strncasecmp(a->argv[e->args - 1], "on", 2)) {
+ ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
+ ASTOBJ_RDLOCK(iterator);
+ iterator->debug = 1;
+ ASTOBJ_UNLOCK(iterator);
+ });
+ ast_cli(a->fd, "Jabber Debugging Enabled.\n");
+ return CLI_SUCCESS;
+ } else if (!strncasecmp(a->argv[e->args - 1], "off", 3)) {
+ ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
+ ASTOBJ_RDLOCK(iterator);
+ iterator->debug = 0;
+ ASTOBJ_UNLOCK(iterator);
+ });
+ ast_cli(a->fd, "Jabber Debugging Disabled.\n");
+ return CLI_SUCCESS;
+ }
+ return CLI_SHOWUSAGE; /* defaults to invalid */
+}
+
+/*!
+ * \brief Turn on/off console debugging (deprecated, use aji_do_set_debug).
+ * \return CLI_SUCCESS.
+ */
+static char *aji_do_debug_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "jabber debug [off]";
+ e->usage =
+ "Usage: jabber debug [off]\n"
+ " Enables/disables dumping of Jabber packets for debugging purposes.\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ }
+
+ if (a->argc == 2) {
+ ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
+ ASTOBJ_RDLOCK(iterator);
+ iterator->debug = 1;
+ ASTOBJ_UNLOCK(iterator);
+ });
+ ast_cli(a->fd, "Jabber Debugging Enabled.\n");
+ return CLI_SUCCESS;
+ } else if (a->argc == 3) {
+ if (!strncasecmp(a->argv[2], "off", 3)) {
+ ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
+ ASTOBJ_RDLOCK(iterator);
+ iterator->debug = 0;
+ ASTOBJ_UNLOCK(iterator);
+ });
+ ast_cli(a->fd, "Jabber Debugging Disabled.\n");
+ return CLI_SUCCESS;
+ }
+ }
+ return CLI_SHOWUSAGE; /* defaults to invalid */
}
/*!
@@ -2375,32 +2428,6 @@
aji_reload(1);
ast_cli(a->fd, "Jabber Reloaded.\n");
- return CLI_SUCCESS;
-}
-
-/*!
- * \brief Turn off console debugging.
- * \return CLI_SUCCESS.
- */
-static char *aji_no_debug(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
-{
- switch (cmd) {
- case CLI_INIT:
- e->command = "jabber debug off";
- e->usage =
- "Usage: jabber debug off\n"
- " Disables dumping of Jabber packets for debugging purposes.\n";
- return NULL;
- case CLI_GENERATE:
- return NULL;
- }
-
- ASTOBJ_CONTAINER_TRAVERSE(&clients, 1, {
- ASTOBJ_RDLOCK(iterator);
- iterator->debug = 0;
- ASTOBJ_UNLOCK(iterator);
- });
- ast_cli(a->fd, "Jabber Debugging Disabled.\n");
return CLI_SUCCESS;
}
More information about the asterisk-commits
mailing list