[OpenSIPS-Devel] [OpenSIPS/opensips] 4b62c0: core: new module dependency specification interfac...
Liviu Chircu
liviu at opensips.org
Wed Aug 13 18:33:36 CEST 2014
Branch: refs/heads/master
Home: https://github.com/OpenSIPS/opensips
Commit: 4b62c0af0ef721ad070335febd1ee7b923cef9f4
https://github.com/OpenSIPS/opensips/commit/4b62c0af0ef721ad070335febd1ee7b923cef9f4
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M cachedb/example/example_cachedb.c
M modparam.c
M modules/aaa_radius/aaa_radius.c
M modules/acc/acc_mod.c
M modules/alias_db/alias_db.c
M modules/auth/auth_mod.c
M modules/auth_aaa/authaaa_mod.c
M modules/auth_db/authdb_mod.c
M modules/auth_diameter/auth_diameter.c
M modules/avpops/avpops.c
M modules/b2b_entities/b2b_entities.c
M modules/b2b_logic/b2b_logic.c
M modules/b2b_sca/b2b_sca.c
M modules/benchmark/benchmark.c
M modules/cachedb_cassandra/cachedb_cassandra.c
M modules/cachedb_couchbase/cachedb_couchbase.c
M modules/cachedb_local/cachedb_local.c
M modules/cachedb_memcached/cachedb_memcached.c
M modules/cachedb_mongodb/cachedb_mongodb.c
M modules/cachedb_redis/cachedb_redis.c
M modules/cachedb_sql/cachedb_sql.c
M modules/call_center/call_center.c
M modules/call_control/call_control.c
M modules/carrierroute/carrierroute.c
M modules/cfgutils/cfgutils.c
M modules/closeddial/closeddial.c
M modules/cpl-c/cpl.c
M modules/db_berkeley/db_berkeley.c
M modules/db_cachedb/db_cachedb.c
M modules/db_flatstore/flatstore_mod.c
M modules/db_http/db_http.c
M modules/db_mysql/db_mysql.c
M modules/db_oracle/db_oracle.c
M modules/db_perlvdb/perlvdb.c
M modules/db_postgres/db_postgres.c
M modules/db_text/dbtext.c
M modules/db_unixodbc/db_unixodbc.c
M modules/db_virtual/db_virtual.c
M modules/dialog/dialog.c
M modules/dialplan/dialplan.c
M modules/dispatcher/dispatcher.c
M modules/diversion/diversion.c
M modules/dns_cache/dns_cache.c
M modules/domain/domain_mod.c
M modules/domainpolicy/domainpolicy_mod.c
M modules/drouting/drouting.c
M modules/enum/enum_mod.c
M modules/event_datagram/event_datagram.c
M modules/event_rabbitmq/event_rabbitmq.c
M modules/event_route/event_route.c
M modules/event_xmlrpc/event_xmlrpc.c
M modules/exec/exec_mod.c
M modules/gflags/gflags.c
M modules/group/group_mod.c
M modules/h350/h350_mod.c
M modules/httpd/httpd.c
M modules/identity/identity.c
M modules/imc/imc.c
M modules/jabber/jabber.c
M modules/json/json.c
M modules/ldap/ldap_mod.c
M modules/load_balancer/load_balancer.c
M modules/lua/siplua.c
M modules/mangler/mangler.c
M modules/mathops/mathops.c
M modules/maxfwd/maxfwd.c
M modules/mediaproxy/mediaproxy.c
M modules/mi_datagram/mi_datagram.c
M modules/mi_fifo/mi_fifo.c
M modules/mi_http/mi_http.c
M modules/mi_json/mi_json.c
M modules/mi_xmlrpc/mi_xmlrpc.c
M modules/mi_xmlrpc_ng/mi_xmlrpc_http.c
M modules/mmgeoip/mmgeoip.c
M modules/msilo/msilo.c
M modules/nat_traversal/nat_traversal.c
M modules/nathelper/nathelper.c
M modules/options/mod_options.c
M modules/osp/osp_mod.c
M modules/path/path_mod.c
M modules/pdt/pdt.c
M modules/peering/peering.c
M modules/perl/perl.c
M modules/permissions/permissions.c
M modules/pi_http/pi_http.c
M modules/pike/pike.c
M modules/presence/presence.c
M modules/presence_callinfo/presence_callinfo.c
M modules/presence_dialoginfo/presence_dialoginfo.c
M modules/presence_mwi/presence_mwi.c
M modules/presence_xcapdiff/presence_xcapdiff.c
M modules/presence_xml/presence_xml.c
M modules/pua/pua.c
M modules/pua_bla/pua_bla.c
M modules/pua_dialoginfo/pua_dialoginfo.c
M modules/pua_mi/pua_mi.c
M modules/pua_usrloc/pua_usrloc.c
M modules/pua_xmpp/pua_xmpp.c
M modules/python/python_mod.c
M modules/qos/qos.c
M modules/ratelimit/ratelimit.c
M modules/regex/regex_mod.c
M modules/registrar/reg_mod.c
M modules/rest_client/rest_client.c
M modules/rls/rls.c
M modules/rr/rr_mod.c
M modules/rtpengine/rtpengine.c
M modules/rtpproxy/rtpproxy.c
M modules/script_helper/script_helper.c
M modules/seas/seas.c
M modules/signaling/signaling.c
M modules/sipcapture/sipcapture.c
M modules/sipmsgops/sipmsgops.c
M modules/siptrace/siptrace.c
M modules/sl/sl.c
M modules/sms/sms.c
M modules/sngtc/sngtc.c
M modules/snmpstats/snmpstats.h
M modules/speeddial/speeddial.c
M modules/sst/sst.c
M modules/statistics/statistics.c
M modules/stun/stun.c
M modules/textops/textops.c
M modules/tlsops/tlsops.c
M modules/tm/tm.c
M modules/uac/uac.c
M modules/uac_auth/uac_auth.c
M modules/uac_redirect/redirect.c
M modules/uac_registrant/registrant.c
M modules/uri/uri_mod.c
M modules/userblacklist/userblacklist.c
M modules/usrloc/ul_mod.c
M modules/xcap/xcap_mod.c
M modules/xcap_client/xcap_client.c
M modules/xmpp/xmpp.c
M sr_module.c
M sr_module.h
A sr_module_deps.c
A sr_module_deps.h
Log Message:
-----------
core: new module dependency specification interface introduced
Allows OpenSIPS modules to specify dependency relations with others.
This eliminates the need for explicit ordering of "loadmodule"
script statements. More details in "sr_module_deps.h"
All this logic is transparent at script level.
Commit: 0462ff0ecce8310940c0ede45e0c8fb8a220030d
https://github.com/OpenSIPS/opensips/commit/0462ff0ecce8310940c0ede45e0c8fb8a220030d
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M modules/acc/acc_mod.c
M sr_module_deps.c
M sr_module_deps.h
Log Message:
-----------
module dependencies core: add a commonly used function
Any module which depends on all SQL DB modules once its db_url is set
may use "get_deps_sqldb_url". Declared in sr_module_deps.h
Usage example: acc module
Commit: c6afc240a8688cf01817d7ee5915907a0dff835a
https://github.com/OpenSIPS/opensips/commit/c6afc240a8688cf01817d7ee5915907a0dff835a
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M sr_module_deps.c
Log Message:
-----------
module dependencies: allow generic dependencies of own type
In other words, the modules which make use of this will be the last ones
of their type category to be loaded
e.g. db_virtual is of type MOD_TYPE_SQLDB, and requires all
MOD_TYPE_SQLDBs to be loaded before itself
Note: abuse of this functionality may lead to dependency loops
db_virtual is the only module to make use of it, currently
Commit: 7e4091987e026c291e93c9777c2a22baeff7f388
https://github.com/OpenSIPS/opensips/commit/7e4091987e026c291e93c9777c2a22baeff7f388
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M sr_module_deps.c
Log Message:
-----------
module dependencies core: fix a string comparison bug
when looking up modules, strcmp is more appropriate then memcmp, since
otherwise, "presence_xml" would match a search for "presence", thus leading
to "presence_xml" depending on itself
Commit: 5b470b8274f48e752e1b37f15925a95c00912a3e
https://github.com/OpenSIPS/opensips/commit/5b470b8274f48e752e1b37f15925a95c00912a3e
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M modules/alias_db/alias_db.c
M modules/auth/auth_mod.c
M modules/auth_aaa/authaaa_mod.c
M modules/auth_db/authdb_mod.c
M modules/auth_diameter/auth_diameter.c
M modules/avpops/avpops.c
M modules/b2b_entities/b2b_entities.c
M modules/b2b_logic/b2b_logic.c
M modules/b2b_sca/b2b_sca.c
M modules/call_center/call_center.c
M modules/call_control/call_control.c
M modules/carrierroute/carrierroute.c
M modules/closeddial/closeddial.c
M modules/cpl-c/cpl.c
M modules/db_cachedb/db_cachedb.c
M modules/db_perlvdb/perlvdb.c
M modules/db_virtual/db_virtual.c
M modules/dialog/dialog.c
M modules/dialplan/dialplan.c
M modules/dispatcher/dispatcher.c
M modules/dns_cache/dns_cache.c
M modules/domainpolicy/domainpolicy_mod.c
M modules/drouting/drouting.c
M modules/group/group_mod.c
M modules/h350/h350_mod.c
M modules/imc/imc.c
M modules/jabber/jabber.c
M modules/load_balancer/load_balancer.c
M modules/mediaproxy/mediaproxy.c
M modules/mi_http/mi_http.c
M modules/mi_json/mi_json.c
M modules/mi_xmlrpc_ng/mi_xmlrpc_http.c
M modules/msilo/msilo.c
M modules/nat_traversal/nat_traversal.c
M modules/nathelper/nathelper.c
M modules/options/mod_options.c
M modules/osp/osp_mod.c
M modules/path/path_mod.c
M modules/pdt/pdt.c
M modules/peering/peering.c
M modules/perl/perl.c
M modules/pi_http/pi_http.c
M modules/presence/presence.c
M modules/presence_callinfo/presence_callinfo.c
M modules/presence_dialoginfo/presence_dialoginfo.c
M modules/presence_mwi/presence_mwi.c
M modules/presence_xcapdiff/presence_xcapdiff.c
M modules/presence_xml/presence_xml.c
M modules/pua/pua.c
M modules/pua_bla/pua_bla.c
M modules/pua_dialoginfo/pua_dialoginfo.c
M modules/pua_mi/pua_mi.c
M modules/pua_usrloc/pua_usrloc.c
M modules/pua_xmpp/pua_xmpp.c
M modules/qos/qos.c
M modules/registrar/reg_mod.c
M modules/rls/rls.c
M modules/rtpengine/rtpengine.c
M modules/rtpproxy/rtpproxy.c
M modules/script_helper/script_helper.c
M modules/seas/seas.c
M modules/signaling/signaling.c
M modules/sipcapture/sipcapture.c
M modules/siptrace/siptrace.c
M modules/sms/sms.c
M modules/sngtc/sngtc.c
M modules/snmpstats/snmpstats.h
M modules/speeddial/speeddial.c
M modules/sst/sst.c
M modules/uac/uac.c
M modules/uac_redirect/redirect.c
M modules/uac_registrant/registrant.c
M modules/uri/uri_mod.c
M modules/userblacklist/userblacklist.c
M modules/usrloc/ul_mod.c
M modules/xcap/xcap_mod.c
M modules/xcap_client/xcap_client.c
M modules/xmpp/xmpp.c
Log Message:
-----------
module dependencies: declare the dependencies of each OpenSIPS module
Commit: 8d4b329057e3f09e8562d73c3ebda853b7c6a7f5
https://github.com/OpenSIPS/opensips/commit/8d4b329057e3f09e8562d73c3ebda853b7c6a7f5
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M modules/avpops/avpops.c
M sr_module_deps.c
Log Message:
-----------
module dependencies core: properly handle the USE_FUNC_PARAM
Commit: 61a973d5fec7d4c53ed06e9edf01ea10a57659f7
https://github.com/OpenSIPS/opensips/commit/61a973d5fec7d4c53ed06e9edf01ea10a57659f7
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M modules/acc/acc_mod.c
M modules/alias_db/alias_db.c
M modules/auth/auth_mod.c
M modules/auth_aaa/authaaa_mod.c
M modules/auth_db/authdb_mod.c
M modules/auth_diameter/auth_diameter.c
M modules/avpops/avpops.c
M modules/b2b_entities/b2b_entities.c
M modules/b2b_logic/b2b_logic.c
M modules/b2b_sca/b2b_sca.c
M modules/call_center/call_center.c
M modules/call_control/call_control.c
M modules/carrierroute/carrierroute.c
M modules/closeddial/closeddial.c
M modules/cpl-c/cpl.c
M modules/db_cachedb/db_cachedb.c
M modules/db_perlvdb/perlvdb.c
M modules/db_virtual/db_virtual.c
M modules/dialog/dialog.c
M modules/dialplan/dialplan.c
M modules/dispatcher/dispatcher.c
M modules/dns_cache/dns_cache.c
M modules/domainpolicy/domainpolicy_mod.c
M modules/drouting/drouting.c
M modules/group/group_mod.c
M modules/h350/h350_mod.c
M modules/imc/imc.c
M modules/jabber/jabber.c
M modules/load_balancer/load_balancer.c
M modules/mediaproxy/mediaproxy.c
M modules/mi_http/mi_http.c
M modules/mi_json/mi_json.c
M modules/mi_xmlrpc_ng/mi_xmlrpc_http.c
M modules/msilo/msilo.c
M modules/nat_traversal/nat_traversal.c
M modules/nathelper/nathelper.c
M modules/options/mod_options.c
M modules/osp/osp_mod.c
M modules/path/path_mod.c
M modules/pdt/pdt.c
M modules/peering/peering.c
M modules/perl/perl.c
M modules/pi_http/pi_http.c
M modules/presence/presence.c
M modules/presence_callinfo/presence_callinfo.c
M modules/presence_dialoginfo/presence_dialoginfo.c
M modules/presence_mwi/presence_mwi.c
M modules/presence_xcapdiff/presence_xcapdiff.c
M modules/presence_xml/presence_xml.c
M modules/pua/pua.c
M modules/pua_bla/pua_bla.c
M modules/pua_dialoginfo/pua_dialoginfo.c
M modules/pua_mi/pua_mi.c
M modules/pua_usrloc/pua_usrloc.c
M modules/pua_xmpp/pua_xmpp.c
M modules/qos/qos.c
M modules/registrar/reg_mod.c
M modules/rls/rls.c
M modules/rtpengine/rtpengine.c
M modules/rtpproxy/rtpproxy.c
M modules/script_helper/script_helper.c
M modules/seas/seas.c
M modules/signaling/signaling.c
M modules/sipcapture/sipcapture.c
M modules/siptrace/siptrace.c
M modules/sms/sms.c
M modules/sngtc/sngtc.c
M modules/snmpstats/snmpstats.h
M modules/speeddial/speeddial.c
M modules/sst/sst.c
M modules/uac/uac.c
M modules/uac_redirect/redirect.c
M modules/uac_registrant/registrant.c
M modules/uri/uri_mod.c
M modules/userblacklist/userblacklist.c
M modules/usrloc/ul_mod.c
M modules/xcap/xcap_mod.c
M modules/xcap_client/xcap_client.c
M modules/xmpp/xmpp.c
M sr_module_deps.c
M sr_module_deps.h
Log Message:
-----------
module dependencies: Add configurable behaviour on dependency failures
When exporting a dependency, a module must also specify the action taken
if this dependency is not met during startup. Current
possible behaviours: SILENT, WARN and ABORT.
Commit: 57a042b9335126966309654f8b950ab722582dc6
https://github.com/OpenSIPS/opensips/commit/57a042b9335126966309654f8b950ab722582dc6
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M sr_module.c
M sr_module_deps.c
M sr_module_deps.h
Log Message:
-----------
module dependencies core: reclaim all used pkg memory
After startup, all module dependency structs will be freed.
Commit: 104d533e1323e45d896b63afde34686c0f62e8b8
https://github.com/OpenSIPS/opensips/commit/104d533e1323e45d896b63afde34686c0f62e8b8
Author: Liviu Chircu <liviu at opensips.org>
Date: 2014-08-13 (Wed, 13 Aug 2014)
Changed paths:
M modules/sst/sst.c
Log Message:
-----------
sst: add a silent module dependency with pua_dialoginfo
Since "sst" performs a callback-based update on the "Session-Expires"
header, pua_dialoginfo must be loaded before sst.
Compare: https://github.com/OpenSIPS/opensips/compare/5b558451c019...104d533e1323
More information about the Devel
mailing list