]> git.ipfire.org Git - thirdparty/asterisk.git/commit
loader: Improve error handling.
authorCorey Farrell <git@cfware.com>
Fri, 28 Sep 2018 15:13:39 +0000 (11:13 -0400)
committerCorey Farrell <git@cfware.com>
Tue, 2 Oct 2018 17:21:31 +0000 (12:21 -0500)
commitf066dbc353c2c84bcc2df82abf52a74955c1127c
tree08c72b7b9f6ff8515a99dc02e713f752039e3b8b
parentb351b903b9444e12285976148eb2f826310f650b
loader: Improve error handling.

* Display list of unavailable dependencies when they cause another
  module to fail loading.
* When a module declines to load find all modules which depend on it so
  they can be declined and listed together.
* Prevent retry of declined modules during startup.
* When a module fails to dlopen try loading it with RTLD_LAZY so we can
  attempt to display the list of missing dependencies.

These changes are meant to reduce logger spam that is caused when a
module has many dependencies and declines to load.  This also fixes some
error paths which failed to recognize required modules.

Module load/start errors are delayed until the end of loader startup.

Change-Id: I046052c71331c556c09d39f47a3b92975f3e1758
include/asterisk/logger.h
main/loader.c
main/logger.c