From: Alec L Davis Date: Wed, 7 Sep 2011 07:45:00 +0000 (+0000) Subject: Merged revisions 334616 via svnmerge from X-Git-Tag: 10.0.0-beta2~76 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b8a0261ffbc1608bb2d97cef2aae76de93610237;p=thirdparty%2Fasterisk.git Merged revisions 334616 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r334616 | alecdavis | 2011-09-07 19:33:39 +1200 (Wed, 07 Sep 2011) | 10 lines Prevent segfault if call arrives before Asterisk is fully booted. Prevent ast_pbx_start and ast_run_start from starting a new thread unless asterisk is fully booted. alecdavis (license 585) Tested by: alecdavis Review: https://reviewboard.asterisk.org/r/1407/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@334617 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/pbx.c b/main/pbx.c index 17897ade7f..716c306cf9 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -5358,6 +5358,11 @@ enum ast_pbx_result ast_pbx_start(struct ast_channel *c) return AST_PBX_FAILED; } + if (!ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) { + ast_log(LOG_WARNING, "PBX requires Asterisk to be fully booted\n"); + return AST_PBX_FAILED; + } + if (increase_call_count(c)) return AST_PBX_CALL_LIMIT; @@ -5375,6 +5380,11 @@ enum ast_pbx_result ast_pbx_run_args(struct ast_channel *c, struct ast_pbx_args { enum ast_pbx_result res = AST_PBX_SUCCESS; + if (!ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) { + ast_log(LOG_WARNING, "PBX requires Asterisk to be fully booted\n"); + return AST_PBX_FAILED; + } + if (increase_call_count(c)) { return AST_PBX_CALL_LIMIT; }