From 009fe09c3c63df1eee9fde182c2c3b38ea29465a Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Fri, 8 Jan 2010 22:10:03 +0000 Subject: [PATCH] fsctl add shutdown now for debugging git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16220 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/include/switch_types.h | 3 ++- src/mod/applications/mod_commands/mod_commands.c | 2 ++ src/switch_core.c | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/include/switch_types.h b/src/include/switch_types.h index 9609a1fa78..6b6f3d7064 100644 --- a/src/include/switch_types.h +++ b/src/include/switch_types.h @@ -1433,7 +1433,8 @@ typedef enum { SCSC_CANCEL_SHUTDOWN, SCSC_SEND_SIGHUP, SCSC_DEBUG_LEVEL, - SCSC_FLUSH_DB_HANDLES + SCSC_FLUSH_DB_HANDLES, + SCSC_SHUTDOWN_NOW } switch_session_ctl_t; typedef enum { diff --git a/src/mod/applications/mod_commands/mod_commands.c b/src/mod/applications/mod_commands/mod_commands.c index b43686a9d5..ff0b4d95bf 100644 --- a/src/mod/applications/mod_commands/mod_commands.c +++ b/src/mod/applications/mod_commands/mod_commands.c @@ -1477,6 +1477,8 @@ SWITCH_STANDARD_API(ctl_function) break; } else if (!strcasecmp(argv[x], "elegant")) { command = SCSC_SHUTDOWN_ELEGANT; + } else if (!strcasecmp(argv[x], "now")) { + command = SCSC_SHUTDOWN_NOW; } else if (!strcasecmp(argv[x], "asap")) { command = SCSC_SHUTDOWN_ASAP; } else if (!strcasecmp(argv[x], "restart")) { diff --git a/src/switch_core.c b/src/switch_core.c index 0632a64b33..e1960a7355 100644 --- a/src/switch_core.c +++ b/src/switch_core.c @@ -1610,6 +1610,9 @@ SWITCH_DECLARE(int32_t) switch_core_session_ctl(switch_session_ctl_t cmd, int32_ case SCSC_CANCEL_SHUTDOWN: switch_clear_flag((&runtime), SCF_SHUTDOWN_REQUESTED); break; + case SCSC_SHUTDOWN_NOW: + exit(0); + break; case SCSC_SHUTDOWN_ELEGANT: case SCSC_SHUTDOWN_ASAP: {