Allow command-line options to override asterisk.conf.

Previous versions of Asterisk processed command-line options before
processing asterisk.conf.  This meant that if an option was set in
asterisk.conf, it could not be overridden with the equivelent command
line option.  This change causes Asterisk to process the command-line
twice.  First it processes options that are needed to load asterisk.conf,
then it processes the remaining options after the config is read.

This changes the function of -X slightly.  Previously using -X without
disabling execincludes in asterisk.conf caused #exec to be usable in any
config.  Now -X only enables #exec for the load of asterisk.conf, if it
is wanted in the rest of the system it must be enabled with execincludes
in asterisk.conf.  Updated 'asterisk -h' and 'man asterisk' to reflect
the limited function of -X.

ASTERISK-25042 #close
Reported by: Corey Farrell

Change-Id: I1450d45c15b4467274b871914d893ed4f6564cd7
This commit is contained in:
Corey Farrell
2015-05-06 09:31:33 -04:00
parent cc853dcf90
commit 57386dcb67
5 changed files with 92 additions and 43 deletions

View File

@@ -232,9 +232,8 @@ then terminating when the command execution completes. Implies
supplied.
.TP
\-X
Enables executing of includes via \fB#exec\fR directive.
This can be useful if You want to do \fB#exec\fR inside
\*(T<\fIasterisk.conf\fR\*(T>
Enables executing of includes via \fB#exec\fR directive inside
\*(T<\fIasterisk.conf\fR\*(T>.
.SH EXAMPLES
\fBasterisk\fR - Begin Asterisk as a daemon
.PP