Merged revisions 74159 via svnmerge from
authorJason Parker <jparker@digium.com>
Mon, 9 Jul 2007 20:21:13 +0000 (20:21 +0000)
committerJason Parker <jparker@digium.com>
Mon, 9 Jul 2007 20:21:13 +0000 (20:21 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

Closes issue #9186
................
r74159 | qwell | 2007-07-09 15:19:28 -0500 (Mon, 09 Jul 2007) | 16 lines

Merged revisions 74158 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74158 | qwell | 2007-07-09 15:18:15 -0500 (Mon, 09 Jul 2007) | 8 lines

Several chan_zap options were not working on reload because they were arbitrarily
 disallowed when reloading some/most PRI options (such as signalling) was disallowed.

Options such as polarityonanswerdelay and answeronpolarityswitch can safely be changed on a reload.
This corrects that behavior.

Issue 9186, patch by tzafrir.

........

................

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74160 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_zap.c

index 2ed4168..a3578e2 100644 (file)
@@ -12131,6 +12131,14 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
                                ast_log(LOG_WARNING, "Invalid AMA flags: %s at line %d\n", v->value, v->lineno);
                        else
                                confp->chan.amaflags = y;
+               } else if (!strcasecmp(v->name, "polarityonanswerdelay")) {
+                       confp->chan.polarityonanswerdelay = atoi(v->value);
+               } else if (!strcasecmp(v->name, "answeronpolarityswitch")) {
+                       confp->chan.answeronpolarityswitch = ast_true(v->value);
+               } else if (!strcasecmp(v->name, "hanguponpolarityswitch")) {
+                       confp->chan.hanguponpolarityswitch = ast_true(v->value);
+               } else if (!strcasecmp(v->name, "sendcalleridafter")) {
+                       confp->chan.sendcalleridafter = atoi(v->value);
                } else if (!reload){ 
                         if (!strcasecmp(v->name, "signalling")) {
                                confp->chan.outsigmod = -1;
@@ -12627,14 +12635,6 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
                                        }
                                }
                                close(ctlfd);
-                       } else if (!strcasecmp(v->name, "polarityonanswerdelay")) {
-                               confp->chan.polarityonanswerdelay = atoi(v->value);
-                       } else if (!strcasecmp(v->name, "answeronpolarityswitch")) {
-                               confp->chan.answeronpolarityswitch = ast_true(v->value);
-                       } else if (!strcasecmp(v->name, "hanguponpolarityswitch")) {
-                               confp->chan.hanguponpolarityswitch = ast_true(v->value);
-                       } else if (!strcasecmp(v->name, "sendcalleridafter")) {
-                               confp->chan.sendcalleridafter = atoi(v->value);
                        } else if (!strcasecmp(v->name, "defaultcic")) {
                                ast_copy_string(defaultcic, v->value, sizeof(defaultcic));
                        } else if (!strcasecmp(v->name, "defaultozz")) {