aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_oss.c
diff options
context:
space:
mode:
authorrizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-16 23:05:50 +0000
committerrizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-16 23:05:50 +0000
commit82ff2ea9bfd363c9f8237e99aa7c9ca72cc6496d (patch)
tree390aa4bf1d39eb7f6dcff3117b297b5eab1a7c1f /channels/chan_oss.c
parent90f5a577027dd7a44b0cd6dc93aa213777695d8b (diff)
convert two entries to new style
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47779 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_oss.c')
-rw-r--r--channels/chan_oss.c55
1 files changed, 22 insertions, 33 deletions
diff --git a/channels/chan_oss.c b/channels/chan_oss.c
index 73884d3c7..f261708f4 100644
--- a/channels/chan_oss.c
+++ b/channels/chan_oss.c
@@ -1284,36 +1284,33 @@ static char *console_dial(struct ast_cli_entry *e, int cmd, struct ast_cli_args
return CLI_SUCCESS;
}
-static int __console_mute_unmute(int mute)
+static char *console_mute(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
struct chan_oss_pvt *o = find_desc(oss_active);
+ static char *choices[] = { "mute", "unmute", NULL };
+ char *s;
- o->mute = mute;
- return RESULT_SUCCESS;
-}
-
-static int console_mute(int fd, int argc, char *argv[])
-{
- if (argc != 2)
- return RESULT_SHOWUSAGE;
-
- return __console_mute_unmute(1);
-}
-
-static char mute_usage[] =
- "Usage: console mute\nMutes the microphone\n";
-
-static int console_unmute(int fd, int argc, char *argv[])
-{
- if (argc != 2)
- return RESULT_SHOWUSAGE;
+ if (cmd == CLI_INIT) {
+ e->command = "console";
+ e->usage =
+ "Usage: console [mute|unmute]\n"
+ " Mute/unmute the microphone.\n";
+ return NULL;
+ } else if (cmd == CLI_GENERATE)
+ return (a->pos != e->args) ? NULL : ast_cli_complete(a->word, choices, a->n);
- return __console_mute_unmute(0);
+ if (a->argc != e->args+1)
+ return CLI_SHOWUSAGE;
+ s = a->argv[e->args];
+ if (!strcasecmp(s, "mute"))
+ o->mute = 1;
+ else if (!strcasecmp(s, "unmute"))
+ o->mute = 0;
+ else
+ return CLI_SHOWUSAGE;
+ return CLI_SUCCESS;
}
-static char unmute_usage[] =
- "Usage: console unmute\nUnmutes the microphone\n";
-
static int console_transfer(int fd, int argc, char *argv[])
{
struct chan_oss_pvt *o = find_desc(oss_active);
@@ -1415,15 +1412,7 @@ static struct ast_cli_entry cli_oss[] = {
NEW_CLI(console_hangup, "Hangup a call on the console"),
NEW_CLI(console_flash, "Flash a call on the console"),
NEW_CLI(console_dial, "Dial an extension on the console"),
-
- { { "console", "mute", NULL },
- console_mute, "Disable mic input",
- mute_usage },
-
- { { "console", "unmute", NULL },
- console_unmute, "Enable mic input",
- unmute_usage },
-
+ NEW_CLI(console_mute, "Disable/Enable mic input"),
{ { "console", "transfer", NULL },
console_transfer, "Transfer a call to a different extension",
transfer_usage },