asterisk/res
Naveen Albert 31dc28ab09 res_pjsip_outbound_registration: Make max random delay configurable.
Currently, PJSIP will randomly wait up to 10 seconds for each
outbound registration's initial attempt. The reason for this
is to avoid having all outbound registrations attempt to register
simultaneously.

This can create limitations with the test suite where we need to
be able to receive inbound calls potentially within 10 seconds of
starting up. For instance, we might register to another server
and then try to receive a call through the registration, but if
the registration hasn't happened yet, this will fail, and hence
this inconsistent behavior can cause tests to fail. Ultimately,
this requires a smaller random value because there may be no good
reason to wait for up to 10 seconds in these circumstances.

To address this, a new config option is introduced which makes this
maximum delay configurable. This allows, for instance, this to be
set to a very small value in test systems to ensure that registrations
happen immediately without an unnecessary delay, and can be used more
generally to control how "tight" the initial outbound registrations
are.

ASTERISK-29965 #close

Change-Id: Iab989a8e94323e645f3a21cbb6082287c7b2f3fd
2022-06-09 03:45:15 -05:00
..
ael res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
ari ari: expose channel driver's unique id to ARI channel resource 2022-05-22 15:40:33 -05:00
parking res_parking: Warn if out of bounds parking spot requested. 2022-06-06 16:45:04 -05:00
prometheus res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_aeap res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
res_pjsip res_pjsip: Actually enable session timers when timers=always 2022-06-08 21:52:29 -05:00
res_pjsip_session res_pjsip: Adjust outgoing offer call pref. 2020-10-13 11:10:56 -03:00
res_stir_shaken AST-2022-002 - res_stir_shaken/curl: Add ACL checks for Identity header. 2022-04-14 16:58:17 -05:00
snmp res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
srtp res_srtp: Add support for libsrtp2 with AES-GCM. 2017-10-18 03:34:56 -05:00
stasis res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
stasis_recording stasis_recording: Perform a complete match on requested filename. 2022-03-23 18:08:17 -05:00
Makefile res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
ari.make Build System: Create Makefile macro MOD_ADD_SOURCE. 2015-04-14 12:53:03 -04:00
res.xml download_externals: Use HTTPS for downloads 2022-03-23 18:06:37 -05:00
res_adsi.c module: Remove deprecated modules and update support levels. 2018-07-18 18:15:53 +00:00
res_aeap.c res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
res_aeap.exports.in res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
res_ael_share.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_ael_share.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_agi.c res_agi: Evaluate dialplan functions and variables in agi exec if enabled 2022-05-26 09:36:45 -05:00
res_agi.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_ari.c documentation: Adds missing default attributes. 2022-02-23 13:26:22 -06:00
res_ari.exports.in Rename everything Stasis-HTTP to ARI 2013-07-27 23:11:02 +00:00
res_ari_applications.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_asterisk.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_bridges.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_channels.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_device_states.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_endpoints.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_events.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_mailboxes.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_model.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
res_ari_model.exports.in Rename everything Stasis-HTTP to ARI 2013-07-27 23:11:02 +00:00
res_ari_playbacks.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_recordings.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_ari_sounds.c res_ari: Fix for Doxygen. 2021-11-18 16:25:51 -06:00
res_audiosocket.c audiosocket: Fix module menuselect descriptions 2020-09-22 09:02:20 -05:00
res_audiosocket.exports.in feat: AudioSocket channel, application, and ARI support. 2020-01-14 09:36:44 -06:00
res_calendar.c res_calendar: Prevent assertion if event ends in past. 2022-06-06 16:49:29 -05:00
res_calendar.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_calendar_caldav.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_calendar_ews.c res_calendar: Resolve memory leak on calendar destruction 2019-10-24 09:18:38 -05:00
res_calendar_exchange.c res_calendar: Resolve memory leak on calendar destruction 2019-10-24 09:18:38 -05:00
res_calendar_icalendar.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_chan_stats.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_clialiases.c astobj2: Remove legacy ao2_container_alloc routine. 2018-11-21 09:56:16 -05:00
res_clioriginate.c manager: Restore Originate failure behavior from Asterisk 11 2017-02-10 18:04:41 -05:00
res_config_curl.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_config_ldap.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_config_odbc.c odbc: Fix for Doxygen. 2021-11-19 02:50:36 -06:00
res_config_pgsql.c GCC12: Fixes for 16+ 2022-05-09 08:21:45 -05:00
res_config_sqlite3.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_convert.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_corosync.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_crypto.c openssl: Supress deprecation warnings from OpenSSL 3.0 2022-03-28 12:19:42 -05:00
res_crypto.exports.in Remove built-in AES code and use optional_api instead 2010-07-21 19:11:32 +00:00
res_curl.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_endpoint_stats.c loader: Add dependency fields to module structures. 2018-01-15 13:25:51 -05:00
res_fax.c build: Remove obsolete leftover build references. 2022-03-30 17:10:51 -05:00
res_fax.exports.in res_fax: Provide AMI equivalents for fax CLI commands 2014-07-18 15:49:46 +00:00
res_fax_spandsp.c res_fax_spandsp: Add spandsp 3.0.0+ compatibility 2021-12-03 07:44:02 -06:00
res_format_attr_celt.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_g729.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
res_format_attr_h263.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_h264.c res_format_attr_h264.c: Make sure profile-level-id fmtp attribute is set 2018-12-13 17:03:59 -05:00
res_format_attr_ilbc.c menuselect: Fix description of several modules. 2021-06-10 16:30:28 -05:00
res_format_attr_opus.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_silk.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_siren7.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_siren14.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_format_attr_vp8.c res_format_attr_*: Parameter Names are Case-Insensitive. 2021-03-10 04:22:36 -06:00
res_hep.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_hep.exports.in res_hep_{pjsip|rtcp}: Decline module loads if res_hep had not loaded 2016-06-08 12:32:02 -05:00
res_hep_pjsip.c loader: Sync load- and build-time deps. 2020-11-20 13:51:02 -06:00
res_hep_rtcp.c stasis: Add internal filtering of messages. 2018-11-18 15:08:16 -05:00
res_http_media_cache.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_http_post.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_http_websocket.c res_http_websocket: Add a client connection timeout 2022-01-31 07:18:51 -06:00
res_http_websocket.exports.in res_http_websocket: Export symbol for ast_websocket_set_timeout 2014-06-26 18:27:53 +00:00
res_limit.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_manager_devicestate.c AST_MODULE_INFO: Format corrections to the usages of AST_MODULE_INFO macro. 2015-05-13 16:34:23 -05:00
res_manager_presencestate.c AST_MODULE_INFO: Format corrections to the usages of AST_MODULE_INFO macro. 2015-05-13 16:34:23 -05:00
res_monitor.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_monitor.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_musiconhold.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_mutestream.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
res_mwi_devstate.c mwi core: Move core MWI functionality into its own files 2019-04-23 17:40:15 -05:00
res_mwi_external.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_mwi_external.exports.in External MWI core support. 2014-01-06 17:45:25 +00:00
res_mwi_external_ami.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_odbc.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_odbc.exports.in res_odbc: Fix exports.in for missing symbols 2016-02-16 16:42:26 -06:00
res_odbc_transaction.c res_odbc_transaction: correctly initialise forcecommit value from DSN. 2021-02-25 08:45:30 -06:00
res_odbc_transaction.exports.in res_odbc: Remove connection management 2016-01-22 11:59:06 -06:00
res_parking.c parking: Fix for Doxygen. 2021-11-18 16:59:26 -06:00
res_phoneprov.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_phoneprov.exports.in res_phoneprov: Refactor phoneprov to allow pluggable config providers 2014-10-09 17:46:23 +00:00
res_pjproject.c bundled_pjproject: Make it easier to hack 2022-01-07 08:45:02 -06:00
res_pjproject.exports.in res_pjproject: Add utility functions to convert between socket structures 2018-09-06 13:30:12 -05:00
res_pjsip.c Makefile: Allow XML documentation to exist outside source files 2022-02-28 08:13:11 -06:00
res_pjsip.exports.in res_pjsip: Add utils for checking media types 2022-01-17 08:25:58 -06:00
res_pjsip_acl.c pjsip: Update ACLs on named ACL changes. 2020-02-20 04:52:11 -06:00
res_pjsip_authenticator_digest.c res_pjsip: Fix for Doxygen. 2021-11-18 12:14:54 -06:00
res_pjsip_caller_id.c res_pjsip: Fix for Doxygen. 2021-11-18 12:14:54 -06:00
res_pjsip_config_wizard.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_pjsip_dialog_info_body_generator.c res_pjsip_dialog_info_body_generator: Set LOCAL target URI as local URI 2022-06-02 09:25:54 -05:00
res_pjsip_diversion.c res_pjsip_diversion: Fix adding more than one histinfo to Supported 2021-02-18 10:34:53 -06:00
res_pjsip_dlg_options.c res_pjsip: set Accept-Encoding to identity in OPTIONS response 2020-11-19 16:14:33 -06:00
res_pjsip_dtmf_info.c res_pjsip_dtmf_info: Hook flash 2021-06-08 15:47:19 -05:00
res_pjsip_empty_info.c res_pjsip: Sync load- and build-time deps. 2020-04-20 11:03:26 -05:00
res_pjsip_endpoint_identifier_anonymous.c endpoint identifiers: Some code cleanup. 2018-02-02 18:03:06 -06:00
res_pjsip_endpoint_identifier_ip.c sorcery: Add support for more intelligent reloading. 2021-03-05 10:32:28 -06:00
res_pjsip_endpoint_identifier_user.c endpoint identifiers: Some code cleanup. 2018-02-02 18:03:06 -06:00
res_pjsip_exten_state.c res_pjsip_pubsub: provide a display name for RLS subscriptions 2022-02-23 15:20:49 -06:00
res_pjsip_exten_state.exports.in The large GULP->PJSIP renaming effort. 2013-07-30 18:14:50 +00:00
res_pjsip_header_funcs.c documentation: Adds versioning information. 2022-04-26 17:40:39 -05:00
res_pjsip_history.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_pjsip_logger.c res_pjsip_logger: use the correct pointer when logging tx_messages to pcap 2020-06-05 09:15:34 -05:00
res_pjsip_messaging.c res_pjsip: Fix for Doxygen. 2021-11-18 12:14:54 -06:00
res_pjsip_mwi.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_pjsip_mwi_body_generator.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_nat.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_pjsip_notify.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_pjsip_one_touch_record_info.c res_pjsip: Sync load- and build-time deps. 2020-04-20 11:03:26 -05:00
res_pjsip_outbound_authenticator_digest.c res_pjsip_outbound_authenticator_digest: Prevent ABRT on cleanup 2022-02-01 05:27:53 -06:00
res_pjsip_outbound_publish.c astobj2: Remove legacy ao2_container_alloc routine. 2018-11-21 09:56:16 -05:00
res_pjsip_outbound_publish.exports.in res_pjsip_outbound_publish: Add module which provides outbound PUBLISH support. 2014-08-07 14:35:09 +00:00
res_pjsip_outbound_registration.c res_pjsip_outbound_registration: Make max random delay configurable. 2022-06-09 03:45:15 -05:00
res_pjsip_path.c res_pjsip: Fix for Doxygen. 2021-11-18 12:14:54 -06:00
res_pjsip_phoneprov_provider.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_pidf_body_generator.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_pidf_digium_body_supplement.c res_pjsip_pidf_digium_body_supplement: Support Sangoma user agent. 2020-12-16 08:01:11 -06:00
res_pjsip_pidf_eyebeam_body_supplement.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_publish_asterisk.c res_pjsip: Fix for Doxygen. 2021-11-18 12:14:54 -06:00
res_pjsip_pubsub.c res_pjsip_pubsub: delete scheduled notification on RLS update 2022-06-08 21:46:26 -05:00
res_pjsip_pubsub.exports.in res_pjsip_mwi: Add voicemail extension and mwi_subscribe_replaces_unsolicited 2016-03-30 13:23:54 -05:00
res_pjsip_refer.c res_pjsip_refer: Move the progress dlg release to a serializer 2021-03-05 08:19:20 -06:00
res_pjsip_registrar.c time: add support for time64 libcs 2022-03-24 12:00:58 -05:00
res_pjsip_rfc3326.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_pjsip_sdp_rtp.c res_pjsip_sdp_rtp: Improve detecting of lack of RTP activity 2022-03-25 17:30:28 -05:00
res_pjsip_send_to_voicemail.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_session.c res_pjsip: Make message_filter and session multipart aware 2022-01-17 11:20:19 -06:00
res_pjsip_session.exports.in test_res_pjsip_session_caps: Create unit test 2020-04-06 08:02:53 -05:00
res_pjsip_sips_contact.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pjsip_stir_shaken.c res_pjsip_stir_shaken.c: Fix enabled when not configured. 2022-04-26 11:11:59 -05:00
res_pjsip_t38.c res_pjsip_t38: bind UDPTL sessions like RTP 2021-10-01 08:57:07 -05:00
res_pjsip_transport_websocket.c res_pjsip_transport_websocket: Also set the remote name. 2022-05-17 07:20:40 -05:00
res_pjsip_xpidf_body_generator.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_pktccops.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_pktccops.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_prometheus.c res_prometheus.c: missing module dependency 2022-02-10 12:58:34 -06:00
res_prometheus.exports.in Add core Prometheus support to Asterisk 2019-05-20 20:33:58 -05:00
res_realtime.c res_realtime: Fix 'realtime update2' argument handling 2020-01-14 10:07:20 -06:00
res_remb_modifier.c xml: Embed module information into core XML documentation. 2021-03-16 10:30:43 -05:00
res_resolver_unbound.c various files - fix some alerts raised by lgtm code analysis 2019-11-18 08:30:45 -06:00
res_rtp_asterisk.c openssl: Supress deprecation warnings from OpenSSL 3.0 2022-03-28 12:19:42 -05:00
res_rtp_multicast.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_rtp_multicast.exports.in multicast RTP: Add dialing options 2016-05-27 11:00:09 -05:00
res_security_log.c stasis: Add internal filtering of messages. 2018-11-18 15:08:16 -05:00
res_smdi.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_smdi.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_snmp.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_sorcery_astdb.c astdb: Improve prefix searches in astdb 2017-12-10 12:51:16 -06:00
res_sorcery_config.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_sorcery_memory.c astobj2: Remove legacy ao2_container_alloc routine. 2018-11-21 09:56:16 -05:00
res_sorcery_memory_cache.c main: Fix for Doxygen. 2021-12-02 15:02:09 -06:00
res_sorcery_realtime.c res_sorcery_realtime.c: Fix unqualified fetch warning. 2018-08-17 16:33:24 -05:00
res_speech.c res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
res_speech.exports.in app_speech_utils: Fix unresolved symbol ast_speech_get_setting(). 2013-09-16 18:00:32 +00:00
res_speech_aeap.c res_aeap & res_speech_aeap: Add Asterisk External Application Protocol 2022-04-26 14:26:48 -05:00
res_srtp.c progdocs: Avoid 'name' with Doxygen \file. 2021-11-18 08:17:56 -06:00
res_srtp.exports.in Reverting accidental ci of wrong change in r433061 2015-03-17 22:03:01 +00:00
res_stasis.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_stasis.exports.in Moved core logic from app_stasis to res_stasis 2013-04-15 16:43:47 +00:00
res_stasis_answer.c loader: Add dependency fields to module structures. 2018-01-15 13:25:51 -05:00
res_stasis_answer.exports.in Add missing exports file 2013-05-20 14:21:39 +00:00
res_stasis_device_state.c astobj2: Remove legacy ao2_container_alloc routine. 2018-11-21 09:56:16 -05:00
res_stasis_device_state.exports.in ARI: Implement device state API 2013-11-23 17:48:28 +00:00
res_stasis_mailbox.c Remove redundant module checks and references. 2018-01-24 13:37:29 -05:00
res_stasis_mailbox.exports.in ARI: Add mailboxes resource for controlling and polling external MWI 2014-01-14 23:44:57 +00:00
res_stasis_playback.c res: Spelling fixes 2021-11-15 16:37:34 -06:00
res_stasis_playback.exports.in This patch implements the REST API's for POST /channels/{channelId}/play 2013-05-23 20:11:35 +00:00
res_stasis_recording.c res/res_ari: Added timestamp as a requirement for all ARI events 2019-03-11 23:57:01 +01:00
res_stasis_recording.exports.in ARI - channel recording support 2013-07-03 17:58:45 +00:00
res_stasis_snoop.c stasis: Fix for Doxygen. 2021-11-18 14:46:42 -06:00
res_stasis_snoop.exports.in ari: Add Snoop operation for spying/whispering on channels. 2013-11-23 12:40:46 +00:00
res_stasis_test.c optional_api: Remove unused nonoptreq fields 2018-09-12 12:34:54 -05:00
res_stasis_test.exports.in Initial support for endpoints. 2013-05-08 13:39:08 +00:00
res_statsd.c res_statsd: handle non-standard meter type safely 2021-08-03 08:12:33 -05:00
res_statsd.exports.in res_statsd: Fix exports.in for missing symbols 2016-02-16 12:26:29 -06:00
res_stir_shaken.c AST-2022-002 - res_stir_shaken/curl: Add ACL checks for Identity header. 2022-04-14 16:58:17 -05:00
res_stir_shaken.exports.in res_stir_shaken: Add inbound INVITE support. 2020-06-08 10:50:16 -05:00
res_stun_monitor.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_timing_dahdi.c Remove as much trailing whitespace as possible. 2017-12-22 09:23:22 -05:00
res_timing_kqueue.c res_timing: Don't close FD 0 when out of open files. 2015-07-02 05:13:37 -05:00
res_timing_pthread.c Use non-blocking socket() and pipe() wrappers 2018-12-11 12:29:09 -05:00
res_timing_timerfd.c res_timing: Don't close FD 0 when out of open files. 2015-07-02 05:13:37 -05:00
res_tonedetect.c GCC12: Fixes for 16+ 2022-05-09 08:21:45 -05:00
res_xmpp.c res: Fix for Doxygen. 2021-12-03 10:38:39 -06:00
res_xmpp.exports.in Add a new unified Jingle, Google Jingle, and Google Talk channel driver written from scratch called chan_motif. 2012-07-07 17:06:51 +00:00