Add option for starting remote Asterisk by naming the actual runtime socket instead of pointing

to configuration file with -C

Reported by: sobomax
Patches: 
      asterisk.c.diff.trunk uploaded by sobomax (license 359)
      doc changes by committer
(closes issue #11598)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93854 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Olle Johansson
2007-12-19 07:01:40 +00:00
parent 1de09e03cb
commit 489a648d5d
3 changed files with 26 additions and 6 deletions

View File

@@ -395,4 +395,7 @@ Miscellaneous
set to false; setting that to true will force the use of the new algorithm. set to false; setting that to true will force the use of the new algorithm.
Also, the cli commands "dialplan set extenpatternmatchingnew true/false" can Also, the cli commands "dialplan set extenpatternmatchingnew true/false" can
be used to switch the algorithms at run time. be used to switch the algorithms at run time.
* A new option when starting a remote asterisk (rasterisk, asterisk -r) for
specifying which socket to use to connect to the running Asterisk daemon
(-s)

View File

@@ -8,7 +8,7 @@
<application>asterisk</application> <application>asterisk</application>
</refentrytitle> </refentrytitle>
<manvolnum>8</manvolnum> <manvolnum>8</manvolnum>
<refmiscinfo>asterisk 1.2</refmiscinfo> <refmiscinfo>asterisk 1.6</refmiscinfo>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
<refname> <refname>
@@ -21,7 +21,7 @@
<refsynopsisdiv> <refsynopsisdiv>
<cmdsynopsis> <cmdsynopsis>
<command>asterisk</command> <command>asterisk</command>
<arg><option>-tThfdvVqpRgciIn</option></arg> <arg><option>-tThfdvVqpRgciIns</option></arg>
<arg><option>-C </option><replaceable class="parameter">file</replaceable></arg> <arg><option>-C </option><replaceable class="parameter">file</replaceable></arg>
<arg><option>-U </option><replaceable class="parameter">user</replaceable></arg> <arg><option>-U </option><replaceable class="parameter">user</replaceable></arg>
<arg><option>-G </option><replaceable class="parameter">group</replaceable></arg> <arg><option>-G </option><replaceable class="parameter">group</replaceable></arg>
@@ -38,7 +38,7 @@
</refsynopsisdiv> </refsynopsisdiv>
<refsect1> <refsect1>
<refsect1info> <refsect1info>
<date>2006-03-29</date> <date>2007-12-19</date>
</refsect1info> </refsect1info>
<title>DESCRIPTION</title> <title>DESCRIPTION</title>
<para> <para>
@@ -47,9 +47,9 @@
Automated Call Distribution (ACD), Voice over IP (VoIP) gatewaying, Automated Call Distribution (ACD), Voice over IP (VoIP) gatewaying,
Conferencing, and a plethora of other telephony applications to a broad Conferencing, and a plethora of other telephony applications to a broad
range of telephony devices including packet voice (SIP, IAX2, MGCP, Skinny, range of telephony devices including packet voice (SIP, IAX2, MGCP, Skinny,
H.323) devices (both endpoints and proxies), as well as traditional TDM H.323, Unistim) devices (both endpoints and proxies), as well as traditional TDM
hardware including T1, E1, ISDN PRI, GR-303, RBS, Loopstart, Groundstart, hardware including T1, E1, ISDN PRI, GR-303, RBS, Loopstart, Groundstart,
ISDN BRI, and many more. ISDN BRI and many more.
</para> </para>
<para> <para>
At start, Asterisk reads the /etc/asterisk/asterisk.conf main configuration At start, Asterisk reads the /etc/asterisk/asterisk.conf main configuration
@@ -233,6 +233,15 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term>-s <replaceable class="parameter">socket file name</replaceable></term>
<listitem>
<para>
In combination with <command>-r</command>, connect directly to a specified
Asterisk server socket.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term>-t</term> <term>-t</term>
<listitem> <listitem>

View File

@@ -2398,6 +2398,7 @@ static int show_cli_help(void) {
printf(" of output to the CLI\n"); printf(" of output to the CLI\n");
printf(" -v Increase verbosity (multiple v's = more verbose)\n"); printf(" -v Increase verbosity (multiple v's = more verbose)\n");
printf(" -x <cmd> Execute command <cmd> (only valid with -r)\n"); printf(" -x <cmd> Execute command <cmd> (only valid with -r)\n");
printf(" -s <socket> Connect to Asterisk via socket <socket> (only valid with -r)\n");
printf("\n"); printf("\n");
return 0; return 0;
} }
@@ -2670,6 +2671,7 @@ int main(int argc, char *argv[])
int isroot = 1; int isroot = 1;
char *buf; char *buf;
const char *runuser = NULL, *rungroup = NULL; const char *runuser = NULL, *rungroup = NULL;
char *remotesock = NULL;
/* Remember original args for restart */ /* Remember original args for restart */
if (argc > sizeof(_argv) / sizeof(_argv[0]) - 1) { if (argc > sizeof(_argv) / sizeof(_argv[0]) - 1) {
@@ -2700,7 +2702,7 @@ int main(int argc, char *argv[])
if (getenv("HOME")) if (getenv("HOME"))
snprintf(filename, sizeof(filename), "%s/.asterisk_history", getenv("HOME")); snprintf(filename, sizeof(filename), "%s/.asterisk_history", getenv("HOME"));
/* Check for options */ /* Check for options */
while ((c = getopt(argc, argv, "mtThfFdvVqprRgciInx:U:G:C:L:M:e:")) != -1) { while ((c = getopt(argc, argv, "mtThfFdvVqprRgciInx:U:G:C:L:M:e:s:")) != -1) {
switch (c) { switch (c) {
#if defined(HAVE_SYSINFO) #if defined(HAVE_SYSINFO)
case 'e': case 'e':
@@ -2789,6 +2791,9 @@ int main(int argc, char *argv[])
case 'G': case 'G':
rungroup = optarg; rungroup = optarg;
break; break;
case 's':
remotesock = optarg;
break;
case '?': case '?':
exit(1); exit(1);
} }
@@ -2821,6 +2826,9 @@ int main(int argc, char *argv[])
ast_verbose("[ Reading Master Configuration ]\n"); ast_verbose("[ Reading Master Configuration ]\n");
ast_readconfig(); ast_readconfig();
if (ast_opt_remote && remotesock != NULL)
ast_copy_string((char *) ast_config_AST_SOCKET, remotesock, sizeof(ast_config_AST_SOCKET));
if (!ast_language_is_prefix && !ast_opt_remote) if (!ast_language_is_prefix && !ast_opt_remote)
ast_log(LOG_WARNING, "The 'languageprefix' option in asterisk.conf is deprecated; in a future release it will be removed, and your sound files will need to be organized in the 'new style' language layout.\n"); ast_log(LOG_WARNING, "The 'languageprefix' option in asterisk.conf is deprecated; in a future release it will be removed, and your sound files will need to be organized in the 'new style' language layout.\n");