[asterisk-commits] qwell: branch 1.8 r303467 - in /branches/1.8: ./ channels/chan_dahdi.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Jan 24 11:20:07 CST 2011
Author: qwell
Date: Mon Jan 24 11:20:03 2011
New Revision: 303467
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=303467
Log:
Merged revisions 303285 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r303285 | qwell | 2011-01-21 15:48:09 -0600 (Fri, 21 Jan 2011) | 15 lines
Merged revisions 303284 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r303284 | qwell | 2011-01-21 15:45:34 -0600 (Fri, 21 Jan 2011) | 8 lines
Reset configuration before parsing users.conf.
Some values configured in chan_dahdi.conf were able to leak in to users.conf
configuration. This was surprising users, and potentially setting non-sane
"defaults".
ASTNOW-125
........
................
Modified:
branches/1.8/ (props changed)
branches/1.8/channels/chan_dahdi.c
Propchange: branches/1.8/
------------------------------------------------------------------------------
Binary property 'branch-1.6.2-merged' - no diff available.
Modified: branches/1.8/channels/chan_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/channels/chan_dahdi.c?view=diff&rev=303467&r1=303466&r2=303467
==============================================================================
--- branches/1.8/channels/chan_dahdi.c (original)
+++ branches/1.8/channels/chan_dahdi.c Mon Jan 24 11:20:03 2011
@@ -17494,7 +17494,7 @@
* \retval 0 on success.
* \retval -1 on error.
*/
-static int setup_dahdi_int(int reload, struct dahdi_chan_conf *base_conf, struct dahdi_chan_conf *conf)
+static int setup_dahdi_int(int reload, struct dahdi_chan_conf *default_conf, struct dahdi_chan_conf *base_conf, struct dahdi_chan_conf *conf)
{
struct ast_config *cfg;
struct ast_config *ucfg;
@@ -17652,6 +17652,8 @@
if (ucfg) {
const char *chans;
+ /* Reset base_conf, so things dont leak from dahdi_chan.conf */
+ deep_copy_dahdi_chan_conf(base_conf, default_conf);
process_dahdi(base_conf, "", ast_variable_browse(ucfg, "general"), 1, 0);
for (cat = ast_category_browse(ucfg, NULL); cat ; cat = ast_category_browse(ucfg, cat)) {
@@ -17738,14 +17740,16 @@
static int setup_dahdi(int reload)
{
int res;
+ struct dahdi_chan_conf default_conf = dahdi_chan_conf_default();
struct dahdi_chan_conf base_conf = dahdi_chan_conf_default();
struct dahdi_chan_conf conf = dahdi_chan_conf_default();
- if (base_conf.chan.cc_params && conf.chan.cc_params) {
- res = setup_dahdi_int(reload, &base_conf, &conf);
+ if (default_conf.chan.cc_params && base_conf.chan.cc_params && conf.chan.cc_params) {
+ res = setup_dahdi_int(reload, &default_conf, &base_conf, &conf);
} else {
res = -1;
}
+ ast_cc_config_params_destroy(default_conf.chan.cc_params);
ast_cc_config_params_destroy(base_conf.chan.cc_params);
ast_cc_config_params_destroy(conf.chan.cc_params);
More information about the asterisk-commits
mailing list