|
|
@ -707,21 +707,25 @@ static int conf_exec(struct ast_channel *chan, void *data)
|
|
|
|
/* Prompt user for pin if pin is required */
|
|
|
|
/* Prompt user for pin if pin is required */
|
|
|
|
res = ast_app_getdata(chan, "conf-getpin", pin, sizeof(pin) - 1, 0);
|
|
|
|
res = ast_app_getdata(chan, "conf-getpin", pin, sizeof(pin) - 1, 0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (res == 0) {
|
|
|
|
if (res >= 0) {
|
|
|
|
if (!strcasecmp(pin, cnf->pin)) {
|
|
|
|
if (!strcasecmp(pin, cnf->pin)) {
|
|
|
|
/* Pin correct */
|
|
|
|
/* Pin correct */
|
|
|
|
allowretry = 0;
|
|
|
|
allowretry = 0;
|
|
|
|
/* Run the conference */
|
|
|
|
/* Run the conference */
|
|
|
|
res = conf_run(chan, cnf, confflags);
|
|
|
|
res = conf_run(chan, cnf, confflags);
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
}
|
|
|
|
/* Pin invalid */
|
|
|
|
/* Pin invalid or error */
|
|
|
|
|
|
|
|
res = ast_streamfile(chan, "conf-invalidpin", chan->language);
|
|
|
|
res = ast_streamfile(chan, "conf-invalidpin", chan->language);
|
|
|
|
if (!res)
|
|
|
|
if (!res)
|
|
|
|
ast_waitstream(chan, "");
|
|
|
|
ast_waitstream(chan, "");
|
|
|
|
res = -1;
|
|
|
|
res = -1;
|
|
|
|
if (allowretry)
|
|
|
|
if (allowretry)
|
|
|
|
strcpy(confno, "");
|
|
|
|
strcpy(confno, "");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
res = -1;
|
|
|
|
|
|
|
|
allowretry = 0;
|
|
|
|
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
/* No pin required */
|
|
|
|
/* No pin required */
|
|
|
|
allowretry = 0;
|
|
|
|
allowretry = 0;
|
|
|
|