[svn-commits] trunk r16868 - /trunk/cli.c

svn-commits at lists.digium.com svn-commits at lists.digium.com
Sat Apr 1 05:54:06 MST 2006


Author: jdixon
Date: Sat Apr  1 06:54:04 2006
New Revision: 16868

URL: http://svn.digium.com/view/asterisk?rev=16868&view=rev
Log:
Added "frog" CLI command, which performs frog-in-a-blender calculations.

Modified:
    trunk/cli.c

Modified: trunk/cli.c
URL: http://svn.digium.com/view/asterisk/trunk/cli.c?rev=16868&r1=16867&r2=16868&view=diff
==============================================================================
--- trunk/cli.c (original)
+++ trunk/cli.c Sat Apr  1 06:54:04 2006
@@ -133,6 +133,10 @@
 "       Optional regular expression pattern is matched to group names for each\n"
 "       channel.\n";
 
+static char frog_help[] =
+"Usage: frog [warp_factor]\n"
+"       Performs frog-in-a-blender calculations (Jacobsen Corollary)\n";
+
 static int handle_load(int fd, int argc, char *argv[])
 {
 	if (argc != 2)
@@ -244,6 +248,27 @@
 	}
 	return RESULT_SUCCESS;
 }
+
+/*
+* Perform frong-in-a-blender calculations (Jacobsen Corollary) 
+*/
+                                                                                                                                 
+static int handle_frog(int fd, int argc, char *argv[])
+{
+	double warpone = 75139293848.0;
+	double warpfactor = 1.0;
+
+        if (argc > 2) return RESULT_SHOWUSAGE;
+	if ((argc > 1) && (sscanf(argv[1],"%lf",&warpfactor) != 1))
+                return RESULT_SHOWUSAGE;
+
+        ast_cli(fd, "A frog in a blender with a base diameter of 3 inches going\n");
+        ast_cli(fd, "%.0lf RPM will be travelling at warp factor %lf,\n",
+		warpfactor * warpfactor * warpfactor * warpone,warpfactor);
+	ast_cli(fd,"based upon the Jacobsen Frog Corollary.\n");
+	return RESULT_SUCCESS;
+}
+
 
 #define MODLIST_FORMAT  "%-30s %-40.40s %-10d\n"
 #define MODLIST_FORMAT2 "%-30s %-40.40s %-10s\n"
@@ -900,6 +925,7 @@
 	{ { "_command", "matchesarray", NULL }, handle_commandmatchesarray, "Returns command matches array", commandmatchesarray_help },
 	{ { "debug", "channel", NULL }, handle_debugchan, "Enable debugging on a channel", debugchan_help, complete_ch_3 },
 	{ { "debug", "level", NULL }, handle_debuglevel, "Set global debug level", debuglevel_help },
+	{ { "frog", NULL }, handle_frog,"Perform frog-in-a-blender calculations", frog_help },
 	{ { "group", "show", "channels", NULL }, group_show_channels, "Show active channels with group(s)", group_show_channels_help},
 	{ { "help", NULL }, handle_help, "Display help list, or specific help on a command", help_help, complete_help },
 	{ { "load", NULL }, handle_load, "Load a dynamic module by name", load_help, complete_fn },



More information about the svn-commits mailing list