aboutsummaryrefslogtreecommitdiffstats
path: root/loader.c
AgeCommit message (Collapse)AuthorFilesLines
2006-06-07simplify autoconfig include mechanism (make tholo happy he can use lint ↵kpfleming1-5/+5
again :-) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32846 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-11remove a now useless debugging message about loading new-style modules.rizzo1-2/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26955 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-10remove almost all of the checks of the result from ast_strdupa() or alloca().russell1-2/+1
As it turns out, all of these checks were useless, because alloca will never return NULL. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@26451 f38db490-d61c-443f-a65b-d21fe96a405b
2006-05-03test commit to ensure the server is happy againkpfleming1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@24379 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-14fix a mostly harmless error introduced by svn merge.rizzo1-6/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20036 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-14This rather large commit changes the way modules are loaded. rizzo1-78/+90
As partly documented in loader.c and include/asterisk/module.h, modules are now expected to return all of their methods and flags into a structure 'mod_data', and are normally loaded with RTLD_NOW | RTLD_LOCAL, so symbols are resolved immediately and conflicts should be less likely. Only in a small number of cases (res_*, typically) modules are loaded RTLD_GLOBAL, so they can export symbols. The core of the change is only the two files loader.c and include/asterisk/module.h, all the rest is simply adaptation of the existing modules to the new API, a rather mechanical (but believe me, time and finger-consuming!) process whose detail you can figure out by svn diff'ing any single module. Expect some minor compilation issue after this change, please report it on mantis http://bugs.digium.com/view.php?id=6968 so we collect all the feedback in one place. I am just sorry that this change missed SVN version number 20000! git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20003 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-13remove extraneous warning messagekpfleming1-6/+6
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19767 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-11remove an unused functionrizzo1-18/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19226 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-11remove unused fieldsrizzo1-5/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19219 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-08update module license key text and update loader to accept itkpfleming1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@18574 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-06small cleanups to module.h and loader.c to start playing withrizzo1-21/+18
new-style modules using static symbols. Everything will still work as before, but new-style modules can now be defined by putting a '#define STATIC_MODULE' somewhere before including module.h, then declaring STATIC_MODULE the various methods (load, unload, key...) that the module is supposed to supply, and adding a 'STD_MOD(MOD_1, reload_fn, NULL, NULL)' macro call at the end. A module compiled in this way will be loaded RTLD_NOW|RTLD_LOCAL so symbol pollution is reduced, and symbols are resolved immediately. Removing just the '#define STATIC_MODULE' will restore the old behaviour. In order for a module to be loaded RTLD_NOW|RTLD_LOCAL, it must not export any symbol[1], and all the modules it depends on (e.g. res_*) must be loaded already. [1] Mechanisms are in place, and will be enabled later, to still allow such modules to 'export' symbols and resolving the dependencies irrespective of the load order. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@17790 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-02Reduce debugging messages from WARNING to DEBUGtilghman1-4/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@16922 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28Doxygen fixes oej1-24/+25
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15860 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-28Bring in the new loader code as described in mantis #4377rizzo1-41/+463
and updated to today's version. The core of the patch is only two files, loader.c and include/asterisk/module.h, with the other files touched only to adapt non-standard usages of the reference counts and localuser lists. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@15784 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-25Add micro-http server and abstract manager interface, make snmp not die markster1-0/+2
on reload. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14953 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-25revert loader changes that have clearly not undergone adequate testing ↵kpfleming1-460/+41
before commit git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14952 f38db490-d61c-443f-a65b-d21fe96a405b
2006-03-25Bug 4377 - Round 2 of the loader updatestilghman1-41/+460
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@14886 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-27conversions to allocation wrappers and various other coding guideliens fixes ↵russell1-7/+5
(issue #6582) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@11231 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-14Bug 4377 - Initial round of loader changestilghman1-353/+317
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10084 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-18constify arguments in more places where strings should not be modified ↵russell1-1/+1
(issue #6286) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@8203 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-18Merged revisions 8162 via svnmerge from mogorman1-1/+1
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r8162 | mogorman | 2006-01-17 18:47:04 -0600 (Tue, 17 Jan 2006) | 4 lines Changed order of autoload so that pbx_ comes before channels, and in doing so cause bug 6002 to not be an issue ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@8163 f38db490-d61c-443f-a65b-d21fe96a405b
2005-12-30update doxygen docs to specify authorsrussell1-1/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7682 f38db490-d61c-443f-a65b-d21fe96a405b
2005-12-04convert most of the option_*'s to a single ast_flags structure. Also, fix somerussell1-3/+3
formatting, remove some unnecessary casts, and other little code cleanups. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7331 f38db490-d61c-443f-a65b-d21fe96a405b
2005-11-29git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7221 ↵kpfleming1-0/+0
f38db490-d61c-443f-a65b-d21fe96a405b
2005-10-24Doxygen documentation update from oej (issue #5505)russell1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6847 f38db490-d61c-443f-a65b-d21fe96a405b
2005-09-26use a more generic means to decide whether we need to provide poll/dlfcn ↵kpfleming1-1/+1
functionality (issue #5297) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6664 f38db490-d61c-443f-a65b-d21fe96a405b
2005-09-14update MANY more files with proper copyright/license info (thanks Ian!)kpfleming1-4/+15
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6596 f38db490-d61c-443f-a65b-d21fe96a405b
2005-08-05fix a bunch of gcc4 warnings realted to pointer signednessrussell1-7/+7
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6290 f38db490-d61c-443f-a65b-d21fe96a405b
2005-07-25formatting fixes (bug #4770)russell1-15/+17
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6185 f38db490-d61c-443f-a65b-d21fe96a405b
2005-07-07make CLI output use singular/plural when appropriate (bug #4654)kpfleming1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6047 f38db490-d61c-443f-a65b-d21fe96a405b
2005-07-05add support for 'early loading' modules, so that nearly all configuration ↵kpfleming1-10/+28
files can be read from Realtime storage add warning for when file mapping is found but the engine is not available add warning for trying to map 'logger.conf', since it cannot be reliably mapped git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6034 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06more file version tagskpfleming1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5866 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06remove experimental module version tagskpfleming1-18/+6
add per-file revision tags and 'show version files' CLI command git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5864 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06clean up module version number outputkpfleming1-1/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5863 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06add support for per-module version numberskpfleming1-3/+20
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5862 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06major Makefile and build process improvements, including removal of all ↵kpfleming1-1/+0
hardcoded paths (modules must now use run-time paths as they should) (bug #4116) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5855 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-03support configurable batch posting of CDRs (off by default) (bug #3883)kpfleming1-0/+5
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5823 f38db490-d61c-443f-a65b-d21fe96a405b
2005-04-22phase 1 of header include cleanup (bug #4067)kpfleming1-0/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5498 f38db490-d61c-443f-a65b-d21fe96a405b
2005-04-21use double-quotes instead of angle-brackets for non-system include files ↵kpfleming1-12/+12
(bug #4058) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5490 f38db490-d61c-443f-a65b-d21fe96a405b
2005-04-06*** empty log message ***kpfleming1-0/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5431 f38db490-d61c-443f-a65b-d21fe96a405b
2005-01-25Merge config updates (bug #3406)markster1-11/+10
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4889 f38db490-d61c-443f-a65b-d21fe96a405b
2005-01-21update copyright headers for 2005russell1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4868 f38db490-d61c-443f-a65b-d21fe96a405b
2005-01-16Optimize module loading (bug #3356)markster1-14/+24
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4814 f38db490-d61c-443f-a65b-d21fe96a405b
2005-01-10Revert loader change now that we do it at runtimemarkster1-1/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4753 f38db490-d61c-443f-a65b-d21fe96a405b
2005-01-04Load formats first (bug #3242)markster1-0/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4664 f38db490-d61c-443f-a65b-d21fe96a405b
2004-12-27fix logging issuerussell1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4563 f38db490-d61c-443f-a65b-d21fe96a405b
2004-11-17Don't hold modlock while doing reloadmarkster1-2/+13
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4276 f38db490-d61c-443f-a65b-d21fe96a405b
2004-11-13Big agent / queue fixesmarkster1-3/+12
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4231 f38db490-d61c-443f-a65b-d21fe96a405b
2004-10-16Provide module command completion (make twisted happy)markster1-6/+57
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4022 f38db490-d61c-443f-a65b-d21fe96a405b
2004-10-14Add option for "show modules like" (bug #2643)markster1-7/+6
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3996 f38db490-d61c-443f-a65b-d21fe96a405b