<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 5, 2017 at 3:43 PM, George Joseph <span dir="ltr"><<a href="mailto:gjoseph@digium.com" target="_blank">gjoseph@digium.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Over the years I've been frustrated at times where Asterisk fails to start for absolutely no (apparent) reason.  No error message, no trap, nothing.  It just ends.  Every case of this I've tracked down has been the result of a module returning AST_MODULE_LOAD_<wbr>FAILURE when it encounters a problem but not bothering to print an error first.   If you don't know already, AST_MODULE_LOAD_<wbr>FAILURE tells asterisk to <b>stop loading and exit</b>.  What the module should have done was actually print an error and return AST_MODULE_LOAD_DECLINE which just tells asterisk that the module couldn't load.</div><div><br></div><div>So now I'm doing an audit of module return codes to see which call FAILURE vs DECLINE and found the modules below all call FAILURE.</div><div><br></div><div>The big question is...  Exactly which modules are so critical to asterisk that asterisk should exit if the module couldn't load?  Surely not all 103 modules listed below.  If we can agree on the ones that really <i>should</i> call FAILURE, I'll update those with error messages, then change the rest to DECLINE and add error messages as needed.</div><div><br></div><div>Reply with the list intact.  Don't add, remove, split or re-order the lines.  Just stick an "F " before the modules you think should remain failure.</div><div><br></div>Modules returning FAILURE:<div><br clear="all"><div><div>./addons/app_mysql.c</div><div>./addons/cdr_mysql.c</div><div>./addons/chan_mobile.c</div><div>./apps/app_adsiprog.c</div><div>./apps/app_agent_pool.c</div><div>./apps/app_alarmreceiver.c</div><div>./apps/app_amd.c</div><div>./apps/app_authenticate.c</div><div>./apps/app_cdr.c</div><div>./apps/app_confbridge.c</div><div>./apps/app_festival.c</div><div>./apps/app_followme.c</div><div>./apps/app_forkcdr.c</div><div>./apps/app_meetme.c</div><div>./apps/app_queue.c</div><div>./apps/app_skel.c</div><div>./apps/app_voicemail.c</div><div>./cdr/cdr_custom.c</div><div>./cel/cel_custom.c</div><div>./cel/cel_odbc.c</div><div>./channels/chan_alsa.c</div><div>./channels/chan_console.c</div><div>./channels/chan_dahdi.c</div><div>./channels/chan_iax2.c</div><div>./channels/chan_mgcp.c</div><div>./channels/chan_misdn.c</div><div>./channels/chan_motif.c</div><div>./channels/chan_nbs.c</div><div>./channels/chan_oss.c</div><div>./channels/chan_phone.c</div><div>./channels/chan_pjsip.c</div><div>./channels/chan_sip.c</div><div>./channels/chan_skinny.c</div><div>./channels/chan_unistim.c</div><div>./channels/chan_vpb.cc</div><div>./codecs/codec_a_mu.c</div><div>./codecs/codec_adpcm.c</div><div>./codecs/codec_alaw.c</div><div>./codecs/codec_g722.c</div><div>./codecs/codec_g726.c</div><div>./codecs/codec_gsm.c</div><div>./codecs/codec_ilbc.c</div><div>./codecs/codec_lpc10.c</div><div>./codecs/codec_resample.c</div><div>./codecs/codec_ulaw.c</div><div>./formats/format_g723.c</div><div>./formats/format_g726.c</div><div>./formats/format_g729.c</div><div>./formats/format_gsm.c</div><div>./formats/format_h263.c</div><div>./formats/format_h264.c</div><div>./formats/format_ilbc.c</div><div>./formats/format_jpeg.c</div><div>./formats/format_ogg_vorbis.c</div><div>./formats/format_pcm.c</div><div>./formats/format_sln.c</div><div>./formats/format_vox.c</div><div>./formats/format_wav.c</div><div>./formats/format_wav_gsm.c</div><div>./funcs/func_cdr.c</div><div>F ./main/loader.c</div><div>./pbx/pbx_dundi.c</div><div>F ./pbx/pbx_loopback.c</div><div>F ./pbx/pbx_realtime.c</div><div>F ./pbx/pbx_spool.c</div><div>./res/res_pjsip/config_<wbr>transport.c</div><div>./res/res_ari.c</div><div>./res/res_ari_events.c</div><div>./res/res_ari_model.c</div><div>./res/res_calendar.c</div><div>./res/res_chan_stats.c</div><div>./res/res_clialiases.c</div><div>./res/res_config_ldap.c</div><div>./res/res_config_sqlite.c</div><div>./res/res_config_sqlite3.c</div><div>./res/res_curl.c</div><div>./res/res_endpoint_stats.c</div><div>./res/res_fax.c</div><div>./res/res_hep_rtcp.c</div><div>./res/res_http_websocket.c</div><div>./res/res_musiconhold.c</div><div>./res/res_odbc.c</div><div>./res/res_phoneprov.c</div><div>./res/res_pjsip_nat.c</div><div>./res/res_pjsip_one_touch_<wbr>record_info.c</div><div>./res/res_pjsip_outbound_<wbr>publish.c</div><div>./res/res_pjsip_outbound_<wbr>registration.c</div><div>./res/res_pjsip_sdp_rtp.c</div><div>./res/res_pjsip_send_to_<wbr>voicemail.c</div><div>./res/res_pjsip_t38.c</div><div>./res/res_smdi.c</div><div>./res/res_snmp.c</div><div>./res/res_stasis.c</div><div>./res/res_stasis_device_state.<wbr>c</div><div>./res/res_stasis_playback.c</div><div>./res/res_stasis_recording.c</div><div>./res/res_stasis_test.c</div><div>./res/res_statsd.c</div><div>./res/res_timing_kqueue.c</div><div>./res/res_xmpp.c</div><div>./res/res_pjsip_pubsub.c</div><div>./tests/test_bucket.c</div><div>./tests/test_channel_feature_<wbr>hooks.c</div></div><span class="HOEnZb"><font color="#888888"><div><br></div>-- <br><div class="m_-6269877076922627456gmail_signature"><div dir="ltr"><span style="font-size:12.8px">George Joseph</span><br style="font-size:12.8px"><span style="font-size:12.8px">Digium, Inc. | Software Developer</span><span style="font-size:12.8px"><br>445 Jan Davis Drive NW - Huntsville, AL 35806 - US<br></span><span style="font-size:12.8px">Check us out at: </span><a href="http://www.digium.com/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.digium.com</a><span style="font-size:12.8px"> & </span><a href="http://www.asterisk.org/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.<wbr>asterisk.org</a><br><div><br></div></div></div>
</font></span></div></div>
<br>--<br>
______________________________<wbr>______________________________<wbr>_________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
asterisk-dev mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-dev" rel="noreferrer" target="_blank">http://lists.digium.com/<wbr>mailman/listinfo/asterisk-dev</a><br></blockquote></div><br></div></div>