summaryrefslogtreecommitdiff
path: root/main
AgeCommit message (Collapse)Author
2018-01-17loader: Process module dependencies.Corey Farrell
* Add string vectors for requires, optional_apis and enhances. * Add reffed_deps module vector for holding references to dependencies. * Initialize string vectors after final dlopen of each module. * Free string vectors and clear references from reffed_deps in module_destroy. * Create functions necessary to process module dependencies and enforce load order. Module dependencies result in automatic references being managed by the module loader. This enforces unload order. Change-Id: I9be08d1dd331aceadc1dcba00b804d71360b2fbb
2018-01-16taskprocessor.c: Increase the number of tps_singletons container buckets.Richard Mudgett
Since v12 the number of taskprocessors in the system has increased a lot. Small systems can easily have over a hundred and larger systems can have thousands. Most uses of the tps_singletons container deal with creating and destroying the taskprocessors. However, the pjsip distributor looks up taskprocessors/serializers by name frequently. It needs to find the serializer for incoming SIP responses to distribute them to the appropriate serializer. Change-Id: Ice0603606614ba49f7c0c316c524735c064e7e43
2018-01-15vector: Additional string vector definitions.Corey Farrell
ast_vector_string_split: This function will add items to an ast_vector_string by splitting values of a string buffer. Items are appended to the vector in the order they are found. ast_vector_const_string: A vector of 'const char *'. Change-Id: I1bf02a1efeb2baeea11c59c557d39dd1197494d7
2018-01-11Merge "stasis_message_router: Remove silly usage of RAII_VAR."Jenkins2
2018-01-11Merge "stasis_endpoints: Remove silly usage of RAII_VAR."Jenkins2
2018-01-11Merge "stasis_system: Remove silly usage of RAII_VAR."Jenkins2
2018-01-11Merge "stasis: Remove silly usage of RAII_VAR."Jenkins2
2018-01-11Merge "stasis_bridges: Remove silly usage of RAII_VAR."Jenkins2
2018-01-11Merge "stasis_cache: Remove silly usage of RAII_VAR."Jenkins2
2018-01-10stasis: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: Ib11193531e797bcb16bba560a408eab155f706d1
2018-01-10stasis_cache_pattern: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: Ic98a51f555062cd863b6db3f8d76065943a9dea3
2018-01-09stasis_bridges: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: I0fa7ab05454f183dc4ff10e26d18776d2b0fcf1f
2018-01-09stasis_cache: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: Ifa95e5801c949df296c7e4376347730fb0ed52ef
2018-01-09stasis_endpoints: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: Ic099dc552f36c353c89783a4bcfd09f010432733
2018-01-09stasis_message_router: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: I50d6ae230920e0b878ed9cc8f79eef746e06701d
2018-01-09stasis_system: Remove silly usage of RAII_VAR.Corey Farrell
Change-Id: Iedbe5656cee68cd3a96a953558764aa02d4a0c3b
2018-01-09translate: Avoid absolute value on unsigned substraction.Alexander Traud
ast_format_get_sample_rate(.) returns an unsigned type. The difference of a substraction between two unsigned types does not get implicitly converted to a signed type. Therefore, using abs(.) did not make sense. ASTERISK-27549 Change-Id: Ib904d9ee0d46b6fdd1476fbc464fbbf813304017
2018-01-08Merge "editline: Avoid comparison between pointer and zero character constant."Jenkins2
2018-01-06editline: Avoid comparison between pointer and zero character constant.Alexander Traud
gcc 7.2 warned about this. ASTERISK-27559 Change-Id: I48960dda9cf0a11b6a9426f775e632363f8caa74
2018-01-04pbx: Prevent execution of NULL pointer.Corey Farrell
pbx_extension_helper has a check for q->swo.exec == NULL but it doesn't actually return so we would still run the function. Fix the return. Move the 'int res' variable into the only scope which uses it. Also fix a copy-paste error in ast_pbx_init which could result in a crash on allocation failure (we exit with a normal error instead). Change-Id: I0693af921fdc7f56b6a72a21fb816ed08b960a69
2018-01-04Merge "rtp_engine: Add missing unlock."Jenkins2
2018-01-04Merge "translators: Don't use ast_module_running_ref."Joshua Colp
2018-01-04translators: Don't use ast_module_running_ref.Corey Farrell
Translators are run during module load before the module is actually running, so it cannot use ast_module_running_ref. ASTERISK-20346 Change-Id: Iaa0e75da99c696e38000f1a41e340abbd7a88f56
2018-01-04rtp_engine: Add missing unlock.Corey Farrell
Change-Id: I380c31a255e060309f4916da11176e0d00813215
2018-01-04aco: Fix NULL dereference in error path.Corey Farrell
Change-Id: Id505167cf0f9414a3c144fa2c1e181a2cf288694
2018-01-04Merge "loader: Create ast_module_running_ref."Joshua Colp
2018-01-04Merge "datastore: Add automatic module references."Joshua Colp
2018-01-03loader: Create ast_module_running_ref.Corey Farrell
This function returns NULL if the module in question is not running. I did not change ast_module_ref as most callers do not check the result and they always call ast_module_unref. Make use of this function when running registered items from: * app_stack API's * bridge technologies * CLI commands * File formats * Manager Actions * RTP engines * Sorcery Wizards * Timing Interfaces * Translators * AGI Commands * Fax Technologies ASTERISK-20346 #close Change-Id: Ia16fd28e188b2fc0b9d18b8a5d9cacc31df73fcc
2018-01-03Merge "core: Use macros to generate ao2_container callbacks where possible."Jenkins2
2018-01-03Merge "aco: Add missing aco_option_type_string for OPT_TIMELEN_T."Joshua Colp
2018-01-03Merge "cdr: submit: fix logic of test for batch mode"Jenkins2
2018-01-02Merge "stasis_channels.c: Misc cleanup."Jenkins2
2018-01-02cdr: submit: fix logic of test for batch modeTzafrir Cohen
ASTERISK-27539 #close Change-Id: I33cdf329d2bb4486dcae975c450f6aae94c515f7
2018-01-02aco: Add missing aco_option_type_string for OPT_TIMELEN_T.Corey Farrell
ASTERISK-27117 Change-Id: I8f6c34bb30830be9f7a40823723eb4dcaaa91c61
2017-12-31ice: Increase foundation buffer sizeSean Bright
Per RFC 5245, the foundation specified with an ICE candidate can be up to 32 characters but we are only allowing for 31. ASTERISK-27498 #close Reported by: Michele PrĂ  Change-Id: I05ce7a5952721a76a2b4c90366168022558dc7cf
2017-12-30core: Use macros to generate ao2_container callbacks where possible.Corey Farrell
This uses AO2_STRING_FIELD_HASH_FN and AO2_STRING_FIELD_CMP_FN where possible in the Asterisk core. This removes CMP_STOP from the result of CMP_FN callbacks for the following structure types: * ast_bucket_metadata * ast_bucket_scheme * generic_monitor_instance_list (ccss.c) * ast_bucket_file (media_cache.c) * named_acl Change-Id: Ide4c1449a894bce70dea1fef664dade9b57578f1
2017-12-29datastore: Add automatic module references.Corey Farrell
Add a reference to the calling module when it is active to protect access to datastore->info. Remove module references done by func_periodic_hook as the datastore now handles it. ASTERISK-25128 #close Change-Id: I8357a3711e77591d0d1dd8ab4211a7eedd782c89
2017-12-28stasis_channels.c: Misc cleanup.Richard Mudgett
* Use current OBJ_SEARCH_xxx defines instead of the deprecated versions. * Fix hash_cb and cmp_cb container functions to correctly use the OBJ_SEARCH_xxx values. * Remove incorrect usage of CMP_STOP. Most uses in the system have no effect. This allows the collapse of channel_role_single_cmp_cb() and channel_role_multi_cmp_cb() into channel_role_cmp_cb(). * Remove unnecessary usage of RAII_VAR(). Change-Id: I02c405518cab22aa2a082b61e2353bf7cd629a70
2017-12-28Merge "manager.c: Update AMI Status event documentation"Jenkins2
2017-12-28Merge "cdr: Missing NULL check and unlock."Jenkins2
2017-12-28manager.c: Update AMI Status event documentationRichard Mudgett
The AMI Status event had linkedid listed twice and was missing the effective connected line name and number headers. NOTE: The linkedid and other standard channel snapshot fields in the XML documentation are part of the <channel_snapshot/> XML template defined in doc/appdocsxml.xslt. Change-Id: I004c4c4f9e7b40ef55035c831702721bec82496c
2017-12-25cdr: Missing NULL check and unlock.Corey Farrell
* handle_dial_message: Missing a check for NULL peer. * cdr_generic_register: Missing unlock on allocation failure. cdr_generic_register is fixed by reordering so the new structure is allocated and initialized before locking the list. Change-Id: I5799b99270d1a7a716a555c31ac85f4b00ce8686
2017-12-23loader: Add volatile to resource_being_loaded.Corey Farrell
Some compiler optimizers seem to assume that dlopen will not use __attribute__((constructor)) functions to call back to the program. This was causing resource_being_loaded to be optimized away completely. ASTERISK-27531 #close Tested By: abelbeck Change-Id: If17a3b889e06811a0e7119f0539d052494d6ece9
2017-12-22Remove as much trailing whitespace as possible.Sean Bright
Change-Id: I873c1c6d00f447269bd841494459efccdd2c19c0
2017-12-21Merge "Fix Common Typo's."Jenkins2
2017-12-21Merge "bridge: Old channel video source not set to NULL after unref."Joshua Colp
2017-12-20Fix Common Typo's.Corey Farrell
Fix instances of: * Retreive * Recieve * other then * different then * Repeated words ("the the", "an an", "and and", etc). * othterwise, teh ASTERISK-24198 #close Change-Id: I3809a9c113b92fd9d0d9f9bac98e9c66dc8b2d31
2017-12-20bridge: Old channel video source not set to NULL after unref.Corey Farrell
The bridge holds onto the old channel video source after it's been released. This can lead to use after free errors. ASTERISK-27229 #close Change-Id: Ib2dab61677dd8a21f7ad53cdc9b8ca93297838b3
2017-12-20core: Fix unused variable error in handle_show_sysinfo.Corey Farrell
Apparently in OSX it's possible for OSX to HAVE_SYSCTL but not HAVE_SYSINFO or HAVE_SWAPCTL. In this case freeswap caused an unused variable error. ASTERISK-26563 #close Change-Id: I8ec5b1897b786cc1abaf62264aa75039eea05510
2017-12-20Merge "CLI: Address multiple issues."Jenkins2