Skip to content
Snippets Groups Projects
ChangeLog 3.86 MiB
Newer Older
  • Learn to ignore specific revisions
  • 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000
    	  If users are able to press # for options while leaving
    	  a message and then press 3 to rerecord the message, if
    	  the caller hangs up during the rerecord prompt but before
    	  Asterisk starts recording a message, then an "empty"
    	  voicemail gets processed whereby an email gets sent out
    	  notifying the user of a 0:00 duration message. The file
    	  doesn't actually exist, so playback will fail since there
    	  was no message to begin with.
    
    	  This adds a check after the streaming of the rerecord
    	  announcement to see if the caller has hung up. If so,
    	  we bail out early so that we can clean up properly.
    
    	  ASTERISK-29391 #close
    
    	  Change-Id: Id965d72759a2fd3b39afb76fec08aaebebe75c31
    
    2021-10-25 19:47 +0000 [bea08a563b]  Naveen Albert <asterisk@phreaknet.org>
    
    	* chan_iax2: Allow both secret and outkey at dial time
    
    	  Historically, the dial syntax for IAX2 has held that
    	  an outkey (used only for RSA authenticated calls)
    	  and a secret (used only for plain text and MD5 authenticated
    	  calls, historically) were mutually exclusive, and thus
    	  the same position in the dial string was used for both
    	  values.
    
    	  Now that encryption is possible with RSA authentication,
    	  this poses a limitation, since encryption requires a
    	  secret and RSA authentication requires an outkey. Thus,
    	  the dial syntax is extended so that both a secret and
    	  an outkey can be specified.
    
    	  The new extended syntax is backwards compatible with the
    	  old syntax. However, a secret can now be specified after
    	  the outkey, or the outkey can be specified after the secret.
    	  This makes it possible to spawn an encrypted RSA authenticated
    	  call without a corresponding peer being predefined in iax.conf.
    
    	  ASTERISK-29707 #close
    
    	  Change-Id: I1f8149313ed760169d604afbb07720a8b07dd00e
    
    2021-10-28 07:09 +0000 [95da40cd50]  Alexander Traud <pabstraud@compuserve.com>
    
    	* res_snmp: As build tool, prefer pkg-config over net-snmp-config.
    
    	  ASTERISK-29709
    
    	  Change-Id: Ie169df878bdfc3a06b3097c5c38d185b480f54d4
    
    2021-10-28 07:41 +0000 [8b76a3cd3b]  Alexander Traud <pabstraud@compuserve.com>
    
    	* stasis: Avoid 'dispatched' as unused variable in normal mode.
    
    	  ASTERISK-29710
    
    	  Change-Id: Ia849f1172e4e694c5d5d7f0cad449f936ee12216
    
    2021-10-29 10:05 +0000 [2c03f73016]  Sean Bright <sean@seanbright.com>
    
    	* various: Fix GCC 11.2 compilation issues.
    
    	  * Initialize some variables that are never used anyway.
    
    	  * Use valid pointers instead of integers cast to void pointers when
    	    calling pthread_setspecific().
    
    	  ASTERISK-29711 #close
    	  ASTERISK-29713 #close
    
    	  Change-Id: I8728cd6f2f4b28e0e48113c5da450b768c2a6683
    
    2021-09-09 09:39 +0000 [08cb67251f]  George Joseph <gjoseph@digium.com>
    
    	* ast_coredumper:  Refactor to better find things
    
    	  The search for a running asterisk when --running is used
    	  has been greatly simplified and in the event it doesn't
    	  work, you can now specify a pid to use on the command
    	  line with --pid.
    
    	  The search for asterisk modules when --tarball-coredumps
    	  is used has been enhanced to have a better chance of finding
    	  them and in the event it doesn't work, you can now specify
    	  --libdir on the command line to indicate the library directory
    	  where they were installed.
    
    	  The DATEFORMAT variable was renamed to DATEOPTS and is now
    	  passed to the 'date' utility rather than running DATEFORMAT
    	  as a command.
    
    	  The coredump and output files are now renamed with DATEOPTS.
    	  This can be disabled by specifying --no-rename.
    
    	  Several confusing and conflicting options were removed:
    	  --append-coredumps
    	  --conffile
    	  --no-default-search
    	  --tarball-uniqueid
    
    	  The script was re-structured to make it easier for follow.
    
    	  Change-Id: I674be64bdde3ef310b6a551d4911c3b600ffee59
    
    2021-10-21 12:29 +0000 [ae97aaedb0]  Kevin Harwell <kharwell@sangoma.com>
    
    	* strings/json: Add string delimter match, and object create with vars methods
    
    	  Add a function to check if there is an exact match a one string between
    	  delimiters in another string.
    
    	  Add a function that will create an ast_json object out of a list of
    	  Asterisk variables. An excludes string can also optionally be passed
    	  in.
    
    	  Also, add a macro to make it easier to get object integers.
    
    	  Change-Id: I5f34f18e102126aef3997f19a553a266d70d6226
    
    2021-09-21 12:09 +0000 [2e55c0fded]  Ben Ford <bford@digium.com>
    
    	* STIR/SHAKEN: Option split and response codes.
    
    	  The stir_shaken configuration option now has 4 different choices to pick
    	  from: off, attest, verify, and on. Off and on behave the same way they
    	  do now. Attest will only perform attestation on the endpoint, and verify
    	  will only perform verification on the endpoint.
    
    	  Certain responses are required to be sent based on certain conditions
    	  for STIR/SHAKEN. For example, if we get a Date header that is outside of
    	  the time range that is considered valid, a 403 Stale Date response
    	  should be sent. This and several other responses have been added.
    
    	  Change-Id: I4ac1ecf652cd0e336006b0ca638dc826b5b1ebf7
    
    2021-08-25 08:15 +0000 [a203769c9d]  Rodrigo Ramírez Norambuena <a@rodrigoramirez.com>
    
    	* app_queue: Add LoginTime field for member in a queue.
    
    	  Add a time_t logintime to storage a time when a member is added into a
    	  queue.
    
    	  Also, includes show this time (in seconds) using a 'queue show' command
    	  and the field LoginTime for response for AMI events.
    
    	  ASTERISK-18069 #close
    
    	  Change-Id: Ied6c3a300f78d78eebedeb3e16a1520fc3fff190
    
    2021-10-21 12:49 +0000 [859f579504]  Kevin Harwell <kharwell@sangoma.com>
    
    	* res_speech: Add a type conversion, and new engine unregister methods
    
    	  Add a new function that converts a speech results type to a string.
    	  Also add another function to unregister an engine, but returns a
    	  pointer to the unregistered engine object instead of a success/fail
    	  integer.
    
    	  Change-Id: I0f7de17cb411021c09fb03988bc2b904e1380192
    
    2021-10-07 13:07 +0000 [0b2646aee6]  Mike Bradeen <mbradeen@sangoma.com>
    
    	* various: Fix GCC 11 compilation issues.
    
    	  test_voicemail_api: Use empty char* for empty_msg_ids.
    	  chan_skinny: Fix size of calledParty to be maximum extension.
    	  menuselect: Change Makefile to stop deprecated warnings. Added comments
    	  test_linkedlist: 'bogus' variable was manually allocated from a macro
    	  and the test fails if this happens but the compiler couldn't 'see' this
    	  and returns a warning. memset to all 0's after allocation.
    	  chan_ooh323: Fixed various indentation issues that triggered misleading
    	   indentation warnings.
    
    	  ASTERISK-29682
    	  Reported by: George Joseph
    
    	  Change-Id: If4fe42222c8444dc16828a42731ee53b4ce5cbbe
    
    2021-09-20 11:10 +0000 [63c8d12e95]  Shloime Rosenblum <shloimerosenblum@gmail.com>
    
    	* apps/app_playback.c: Add 'mix' option to app_playback
    
    	  I am adding a mix option that will play by filename and say.conf unlike
    	  say option that will only play with say.conf. It
    	  will look on the format of the name, if it is like say it play with
    	  say.conf if not it will play the file name.
    
    	  ASTERISK-29662
    
    	  Change-Id: I815816916a308f0fa8f165140dc15772dcbd547a
    
    2021-10-19 11:35 +0000 [c07e3c2f4d]  George Joseph <gjoseph@digium.com>
    
    	* BuildSystem: Check for alternate openssl packages
    
    	  OpenSSL is one of those packages that often have alternatives
    	  with later versions.  For instance, CentOS/EL 7 has an
    	  openssl package at version 1.0.2 but there's an openssl11
    	  package from the epel repository that has 1.1.1.  This gets
    	  installed to /usr/include/openssl11 and /usr/lib64/openssl11.
    	  Unfortunately, the existing --with-ssl and --with-crypto
    	  ./configure options expect to point to a source tree and
    	  don't work in this situation.  Also unfortunately, the
    	  checks in ./configure don't use pkg-config.
    
    	  In order to make this work with the existing situation, you'd
    	  have to run...
    	  ./configure --with-ssl=/usr/lib64/openssl11 \
    	      --with-crypto=/usr/lib64/openssl11 \
    	      CFLAGS=-I/usr/include/openssl11
    
    	  BUT...  those options don't get passed down to bundled pjproject
    	  so when you run make, you have to include the CFLAGS again
    	  which is a big pain.
    
    	  Oh...  To make matters worse, although you can specify
    	  PJPROJECT_CONFIGURE_OPTS on the ./configure command line,
    	  they don't get saved so if you do a make clean, which will
    	  force a re-configure of bundled pjproject, those options
    	  don't get used.
    
    	  So...
    
    	  * In configure.ac... Since pkg-config is installed by install_prereq
    	    anyway, we now use it to check for the system openssl >= 1.1.0.
    	    If that works, great.  If not, we check for the openssl11
    	    package. If that works, great.  If not, we fall back to just
    	    checking for any openssl.  If pkg-config isn't installed for some
    	    reason, or --with-ssl=<dir> or --with-crypto=<dir> were specified
    	    on the ./configure command line, we fall back to the existing
    	    logic that uses AST_EXT_LIB_CHECK().
    
    	  * The whole OpenSSL check process has been moved up before
    	    THIRD_PARTY_CONFIGURE(), which does the initial pjproject
    	    bundled configure, is run.  This way the results of the above
    	    checks, which may result in new include or library directories,
    	    is included.
    
    	  * Although not strictly needed for openssl, We now save the value of
    	    PJPROJECT_CONFIGURE_OPTS in the makeopts file so it can be used
    	    again if a re-configure is triggered.
    
    	  ASTERISK-29693
    
    	  Change-Id: I341ab7603e6b156aa15a66f43675ac5029d5fbde
    
    2021-10-14 14:38 +0000 [8c2720e540]  Sean Bright <sean.bright@gmail.com>
    
    	* func_talkdetect.c: Fix logical errors in silence detection.
    
    	  There are 3 separate changes here:
    
    	  1. The documentation erroneously stated that the dsp_talking_threshold
    	     argument was a number of milliseconds when it is actually an energy
    	     level used by the DSP code to classify talking vs. silence.
    
    	  2. Fixes a copy paste error in the argument handling code.
    
    	  3. Don't erroneously switch to the talking state if we aren't actively
    	     handling a frame we've classified as talking.
    
    	  Patch inspired by one provided by Moritz Fain (License #6961).
    
    	  ASTERISK-27816 #close
    
    	  Change-Id: I5953fd570b98b49c41cee55bfe3b941753fb2511
    
    2021-10-14 10:15 +0000 [e3466893e9]  Sebastien Duthil <sduthil@wazo.community>
    
    	* main/stun.c: fix crash upon STUN request timeout
    
    	  Some ast_stun_request users do not provide a destination address when
    	  sending to a connection-mode socket.
    
    	  ASTERISK-29691
    
    	  Change-Id: Idd9114c3380216ba48abfc3c68619e79ad37defc
    
    2021-10-12 13:17 +0000 [bac66e9743]  Mike Bradeen <mbradeen@sangoma.com>
    
    	* build: prevent binary downloads for non x86 architectures
    
    	  download_externals: Add check for i686 and i386 (in addition
    	  to the current x86_64) and exit if not one of the three.
    
    	  ASTERISK-26497
    
    	  Change-Id: Ia4d429fcefa5b2f5b6e99159d4607de8e8325b2f
    
    2021-10-11 14:04 +0000 [482281deff]  Sean Bright <sean.bright@gmail.com>
    
    	* configure: Remove unused OpenSSL SRTP check.
    
    	  Discovered while looking at ASTERISK~29684. Usage was removed in change
    	  I3c77c7b00b2ffa2e935632097fa057b9fdf480c0.
    
    	  Change-Id: Iaf2f7a16ea5a7eee6375319347e4b40b8e7b10e3
    
    2021-10-13 10:26 +0000  Asterisk Development Team <asteriskteam@digium.com>
    
    	* asterisk 18.8.0-rc1 Released.
    
    2021-10-13 05:21 +0000 [9063680148]  Asterisk Development Team <asteriskteam@digium.com>
    
    	* Update CHANGES and UPGRADE.txt for 18.8.0
    2021-10-07 12:50 +0000 [804b1987fb]  Sean Bright <sean.bright@gmail.com>
    
    	* Makefile: Use basename in a POSIX-compliant way.
    
    	  If you aren't using GNU coreutils, chances are that your basename
    	  doesn't know about the -s argument. Luckily for us, basename does what
    	  we need it do even without the -s argument.
    
    	  Change-Id: I8b81a429bb037b997ee6640ff8a2b5e860962bb7
    
    2021-10-05 19:59 +0000 [e091aa2763]  Mark Murawski <markm@intellasoft.net>
    
    	* pbx_ael:  Fix crash and lockup issue regarding 'ael reload'
    
    	  Avoid infinite recursion and crash
    
    	  Change-Id: I8ed05ec3aa2806c50c77edc5dd0cd4e4fa08b3f4
    
    2021-05-24 13:04 +0000 [437b2bfbd6]  Naveen Albert <asterisk@phreaknet.org>
    
    	* chan_iax2: Add encryption for RSA authentication
    
    	  Adds support for encryption to RSA-authenticated
    	  calls. Also prevents crashes if an RSA IAX2 call
    	  is initiated to a switch requiring encryption
    	  but no secret is provided.
    
    	  ASTERISK-20219
    
    	  Change-Id: I18f1f9d7c59b4f9cffa00f3b94a4c875846efd40
    
    2021-07-19 11:34 +0000 [15e432220c]  Matthew Kern <mkern@alconconstruction.com>
    
    	* res_pjsip_t38: bind UDPTL sessions like RTP
    
    	  In res_pjsip_sdp_rtp, the bind_rtp_to_media_address option and the
    	  fallback use of the transport's bind address solve problems sending
    	  media on systems that cannot send ipv4 packets on ipv6 sockets, and
    	  certain other situations. This change extends both of these behaviors
    	  to UDPTL sessions as well in res_pjsip_t38, to fix fax-specific
    	  problems on these systems, introducing a new option
    	  endpoint/t38_bind_udptl_to_media_address.
    
    	  ASTERISK-29402
    
    	  Change-Id: I87220c0e9cdd2fe9d156846cb906debe08c63557
    
    2021-09-29 12:58 +0000 [5a6f140765]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_read: Fix null pointer crash
    
    	  If the terminator character is not explicitly specified
    	  and an indications tone is used for reading a digit,
    	  there is no null pointer check so Asterisk crashes.
    	  This prevents null usage from occuring.
    
    	  ASTERISK-29673 #close
    
    	  Change-Id: Ie941833e123c3dbfb88371b5de5edbbe065514ac
    
    2021-09-29 04:32 +0000 [0ab4e7491d]  Jean Aunis <jean.aunis@prescom.fr>
    
    	* res_rtp_asterisk: fix memory leak
    
    	  Add missing reference decrement in rtp_deallocate_transport()
    
    	  ASTERISK-29671
    
    	  Change-Id: I8d22dbedb90e8dade0829b7a28372f404b07caa9
    
    2021-09-19 15:08 +0000 [29c44caecb]  Shloime Rosenblum <shloimerosenblum@gmail.com>
    
    	* main/say.c: Support future dates with Q and q format params
    
    	  The current versions do not support future dates in all say application when using the 'Q' or 'q' format parameter and says "today" for everything that is greater than today
    
    	  ASTERISK-29637
    
    	  Change-Id: I1fb1cef0ce3c18d87b1fc94ea309d13bc344af02
    
    2021-07-21 16:36 +0000 [4368764032]  Joseph Nadiv <ynadiv@corpit.xyz>
    
    	* res_pjsip_registrar: Remove unavailable contacts if exceeds max_contacts
    
    	  The behavior of max_contacts and remove_existing are connected.  If
    	  remove_existing is enabled, the soonest expiring contacts are removed.
    	  This may occur when there is an unavailable contact.  Similarly,
    	  when remove_existing is not enabled, registrations from good
    	  endpoints are rejected in favor of retaining unavailable contacts.
    
    	  This commit adds a new AOR option remove_unavailable, and the effect
    	  of this setting will depend on remove_existing.  If remove_existing
    	  is set to no, we will still remove unavailable contacts when they
    	  exceed max_contacts, if there are any. If remove_existing is set to
    	  yes, we will prioritize the removal of unavailable contacts before
    	  those that are expiring soonest.
    
    	  ASTERISK-29525
    
    	  Change-Id: Ia2711b08f2b4d1177411b1be23e970d7fdff5784
    
    2021-09-23 09:13 +0000 [ea36473c45]  Joshua C. Colp <jcolp@sangoma.com>
    
    	* ari: Ignore invisible bridges when listing bridges.
    
    	  When listing bridges we go through the ones present in
    	  ARI, get their snapshot, turn it into JSON, and add it
    	  to the payload we ultimately return.
    
    	  An invisible "dial bridge" exists within ARI that would
    	  also try to be added to this payload if the channel
    	  "create" and "dial" routes were used. This would ultimately
    	  fail due to invisible bridges having no snapshot
    	  resulting in the listing of bridges failing.
    
    	  This change makes it so that the listing of bridges
    	  ignores invisible ones.
    
    	  ASTERISK-29668
    
    	  Change-Id: I14fa4b589b4657d1c2a5226b0f527f45a0cd370a
    
    2021-09-19 06:14 +0000 [484da42d6c]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_vmcount: Add support for multiple mailboxes
    
    	  Allows multiple mailboxes to be specified for VMCOUNT
    	  instead of just one.
    
    	  ASTERISK-29661 #close
    
    	  Change-Id: I9108528300795fd5b607efa9d4dd7b74be031813
    
    2021-09-21 09:58 +0000 [e98839b73c]  Sean Bright <sean.bright@gmail.com>
    
    	* message.c: Support 'To' header override with AMI's MessageSend.
    
    	  The MessageSend AMI action has been updated to allow the Destination
    	  and the To addresses to be provided separately. This brings the
    	  MessageSend manager command in line with the capabilities of the
    	  MessageSend dialplan application.
    
    	  ASTERISK-29663 #close
    
    	  Change-Id: I8513168d3e189a9fed88aaab6f5547ccb50d332c
    
    2021-09-15 13:21 +0000 [cf0d656ae6]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_channel: Add CHANNEL_EXISTS function.
    
    	  Adds a function to check for the existence of a channel by
    	  name or by UNIQUEID.
    
    	  ASTERISK-29656 #close
    
    	  Change-Id: Ib464e9eb6e13dc683a846286798fecff4fd943cb
    
    2021-09-05 13:11 +0000 [cfd0246d11]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_queue: Fix hint updates for included contexts
    
    	  Previously, if custom hints were used with the hint:
    	  format in app_queue, when device state changes occured,
    	  app_queue would only do a literal string comparison of
    	  the context used for the hint in app_queue and the context
    	  of the hint which just changed state. This caused hints
    	  to not update and become stale if the context associated
    	  with the agent included the context which actually changes
    	  state, essentially completely breaking device state for
    	  any such agents defined in this manner.
    
    	  This fix adds an additional check to ensure that included
    	  contexts are also compared against the context which changed
    	  state, so that the behavior is correct no matter whether the
    	  context is specified to app_queue directly or indirectly.
    
    	  ASTERISK-29578 #close
    
    	  Change-Id: I8caf2f8da8157ef3d9ea71a8568c1eec95592b78
    
    2021-09-10 09:40 +0000 [b2c834e349]  Sean Bright <sean.bright@gmail.com>
    
    	* res_http_media_cache.c: Compare unaltered MIME types.
    
    	  Rather than stripping parameters from Content-Type headers before
    	  comparison, first try to compare the whole string. If no match is
    	  found, strip the parameters and try that way.
    
    	  ASTERISK-29275 #close
    
    	  Change-Id: I2963c8ecbb3a9605b78b6421c415108d77a66a0f
    
    2021-07-25 17:19 +0000 [a65bb134f5]  Naveen Albert <asterisk@phreaknet.org>
    
    	* logger: Add custom logging capabilities
    
    	  Adds the ability for users to log to custom log levels
    	  by providing custom log level names in logger.conf. Also
    	  adds a logger show levels CLI command.
    
    	  ASTERISK-29529
    
    	  Change-Id: If082703cf81a436ae5a565c75225fa8c0554b702
    
    2021-09-17 10:57 +0000 [dce142baa4]  Sean Bright <sean.bright@gmail.com>
    
    	* app_externalivr.c: Fix mixed leading whitespace in source code.
    
    	  No functional changes.
    
    	  Change-Id: I46514152c0af67f395526374aaa847ccd6a85378
    
    2021-09-17 14:58 +0000 [03377c35fc]  Guido Falsi <madpilot@freebsd.org>
    
    	* res_rtp_asterisk.c: Fix build failure when not building with pjproject.
    
    	  Some code has been added referencing symbols defined in a block
    	  protected by #ifdef HAVE_PJPROJECT. Protect those code parts in
    	  ifdef blocks too.
    
    	  ASTERISK-29660
    
    	  Change-Id: Ib18d4392d51ac80ca5481dabf6e498a4e3e49e6f
    
    2021-09-16 13:43 +0000  Asterisk Development Team <asteriskteam@digium.com>
    
    	* asterisk 18.7.0-rc1 Released.
    
    2021-09-16 08:39 +0000 [00cf86dafe]  Asterisk Development Team <asteriskteam@digium.com>
    
    	* Update CHANGES and UPGRADE.txt for 18.7.0
    2021-09-13 10:18 +0000 [e8f7b53023]  Carlos Oliva <carlos.oliva@invoxcontact.com>
    
    	* app_mp3: Force output to 16 bits in mpg123
    
    	  In new mpg123 versions (since 1.26) the default output is 32 bits
    	  Asterisk expects the output in 16 bits, so we force the output to be on 16 bits.
    	  It will work wit new and old versions of mpg123.
    	  Thanks Thomas Orgis <thomas-forum@orgis.org> for giving the key!
    
    	  ASTERISK-29635 #close
    
    	  Change-Id: I88c7740118b5af4e895bd8b765b68ed5c11fc816
    
    2021-09-14 12:02 +0000 [0947c30224]  George Joseph <gjoseph@digium.com>
    
    	* pjproject: Add patch to fix trailing whitespace issue in rtpmap
    
    	  An issue was found where a particular manufacturer's phones add a
    	  trailing space to the end of the rtpmap attribute when specifying
    	  a payload type that has a "param" after the format name and clock
    	  rate. For example:
    
    	  a=rtpmap:120 opus/48000/2 \r\n
    
    	  Because pjmedia_sdp_attr_get_rtpmap currently takes everything after
    	  the second '/' up to the line end as the param, the space is
    	  included in future comparisons, which then fail if the param being
    	  compared to doesn't also have the space.
    
    	  We now use pj_scan_get() to parse the param part of rtpmap so
    	  trailing whitespace is automatically stripped.
    
    	  ASTERISK-29654
    
    	  Change-Id: Ibd0a4e243a69cde7ba9312275b13ab62ab86bc1b
    
    2021-06-08 15:44 +0000 [1a23c9c047]  Naveen Albert <asterisk@phreaknet.org>
    
    	* res_pjsip_caller_id: Add ANI2/OLI parsing
    
    	  Adds parsing of ANI II digits (Originating
    	  Line Information) to PJSIP, on par with
    	  what currently exists in chan_sip.
    
    	  ASTERISK-29472
    
    	  Change-Id: Ifc938a7a7d45ce33999ebf3656a542226f6d3847
    
    2021-06-28 10:37 +0000 [60daa8f761]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_mf: Add channel agnostic MF sender
    
    	  Adds a SendMF application and PlayMF manager
    	  event to send arbitrary R1 MF tones on the
    	  current or specified channel.
    
    	  ASTERISK-29496
    
    	  Change-Id: I5d89afdbccee3f86cc702ed96d882f3d351327a4
    
    2021-09-10 09:56 +0000 [847349853a]  Sean Bright <sean.bright@gmail.com>
    
    	* test_http_media_cache.c: Fix copy/paste error during test deregistration.
    
    	  Change-Id: I9a3a978b2f818be464e062d97b93831b127ef28c
    
    2021-09-02 18:20 +0000 [c736cef310]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_stack: Include current location if branch fails
    
    	  Previously, the error emitted when app_stack tries
    	  to branch to a dialplan location that doesn't exist
    	  has included only the information about the attempted
    	  branch in the error log. This adds the current location
    	  as well so users can see where the branch failed in
    	  the logs.
    
    	  ASTERISK-29626
    
    	  Change-Id: Ia23502ab2ad21485a1ac74295063a8f25a6df5ce
    
    2021-09-03 13:27 +0000 [d9747104ff]  Sungtae Kim <pchero21@gmail.com>
    
    	* resource_channels.c: Fix external media data option
    
    	  Fixed the external media creation handle to handle the 'data' option correctly.
    
    	  ASTERISK-29629
    
    	  Change-Id: I22e57fe8ebf3d3e08fb2121aa4a8a52cc62e8129
    
    2021-09-02 18:57 +0000 [6198c1d28c]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_strings: Add STRBETWEEN function
    
    	  Adds the STRBETWEEN function, which can be used to insert a
    	  substring between each character in a string. For instance,
    	  this can be used to insert pauses between DTMF tones in a
    	  string of digits.
    
    	  ASTERISK-29627
    
    	  Change-Id: Ice23009d4a8e9bb9718d2b2301d405567087d258
    
    2021-09-08 14:29 +0000 [ee62a07914]  Sean Bright <sean.bright@gmail.com>
    
    	* test_abstract_jb.c: Fix put and put_out_of_order memory leaks.
    
    	  We can't rely on RAII_VAR(...) to properly clean up data that is
    	  allocated within a loop.
    
    	  ASTERISK-27176 #close
    
    	  Change-Id: Ib575616101230c4f603519114ec62ebf3936882c
    
    2021-09-02 19:00 +0000 [19de228e8b]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_env: Add DIRNAME and BASENAME functions
    
    	  Adds the DIRNAME and BASENAME functions, which are
    	  wrappers around the corresponding C library functions.
    	  These can be used to safely and conveniently work with
    	  file paths and names in the dialplan.
    
    	  ASTERISK-29628 #close
    
    	  Change-Id: Id3aeb907f65c0ff96b6e57751ff0cb49d61db7f3
    
    2021-07-26 12:46 +0000 [b6b7b1490b]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_sayfiles: Retrieve say file names
    
    	  Up until now, all of the logic used to translate
    	  arguments to the Say applications has been
    	  directly coupled to playback, preventing other
    	  modules from using this logic.
    
    	  This refactors code in say.c and adds a SAYFILES
    	  function that can be used to retrieve the file
    	  names that would be played. These can then be
    	  used in other applications or for other purposes.
    
    	  Additionally, a SayMoney application and a SayOrdinal
    	  application are added. Both SayOrdinal and SayNumber
    	  are also expanded to support integers greater than
    	  one billion.
    
    	  ASTERISK-29531
    
    	  Change-Id: If9718c89353b8e153d84add3cc4637b79585db19
    
    2021-08-09 12:41 +0000 [a6eb1b6f95]  Naveen Albert <asterisk@phreaknet.org>
    
    	* res_tonedetect: Tone detection module
    
    	  dsp.c contains arbitrary tone detection functionality
    	  which is currently only used for fax tone recognition.
    	  This change makes this functionality publicly
    	  accessible so that other modules can take advantage
    	  of this.
    
    	  Additionally, a WaitForTone and TONE_DETECT app and
    	  function are included to allow users to do their
    	  own tone detection operations in the dialplan.
    
    	  ASTERISK-29546
    
    	  Change-Id: Ie38c395000f4fd4d04e942e8658e177f8f499b26
    
    2021-09-08 09:36 +0000 [2806a45034]  George Joseph <gjoseph@digium.com>
    
    	* res_snmp: Add -fPIC to _ASTCFLAGS
    
    	  With gcc 11, res/res_snmp.c and res/snmp/agent.c need the
    	  -fPIC option added to its _ASTCFLAGS.
    
    	  ASTERISK-29634
    
    	  Change-Id: I34649c85e075fd954e578378fabf798c3f038f50
    
    2021-09-04 12:07 +0000 [858cb386fd]  Sean Bright <sean.bright@gmail.com>
    
    	* term.c: Add support for extended number format terminfo files.
    
    	  ncurses 6.1 introduced an extended number format for terminfo files
    	  which the terminfo parsing in Asterisk is not able to parse. This
    	  results in some TERM values that do support color (screen-256color on
    	  Ubuntu 20.04 for example) to not get a color console.
    
    	  ASTERISK-29630 #close
    
    	  Change-Id: I27a4fcfab502219924af2d6b1c46feba92903cb3
    
    2021-09-07 12:32 +0000 [347e9a7e4d]  Sean Bright <sean.bright@gmail.com>
    
    	* app_voicemail.c: Ability to silence instructions if greeting is present.
    
    	  There is an option to silence voicemail instructions but it does not
    	  take into consideration if a recorded greeting exists or not. Add a
    	  new 'S' option that does that.
    
    	  ASTERISK-29632 #close
    
    	  Change-Id: I03f2f043a9beb9d99deab302247e2a8686066fb4
    
    2021-09-03 00:30 +0000 [c1a575907b]  Jasper Hafkenscheid <jasper.hafkenscheid@wearespindle.com>
    
    	* res_srtp: Disable parsing of not enabled cryptos
    
    	  When compiled without extended srtp crypto suites also disable parsing
    	  these from received SDP. This prevents using these, as some client
    	  implementations are not stable.
    
    	  ASTERISK-29625
    
    	  Change-Id: I7dafb29be1cdaabdc984002573f4bea87520533a
    
    2021-09-06 11:37 +0000 [689c703b2c]  Sean Bright <sean.bright@gmail.com>
    
    	* dns.c: Load IPv6 DNS resolvers if configured.
    
    	  IPv6 nameserver addresses are stored in different part of the
    	  __res_state structure, so look there if we appear to have support for
    	  it.
    
    	  ASTERISK-28004 #close
    
    	  Change-Id: I67067077d8a406ee996664518d9c8fbf11f6977d
    
    2021-09-08 07:52 +0000 [de19836c24]  George Joseph <gjoseph@digium.com>
    
    	* bridge_softmix: Suppress error on topology change failure
    
    	  There are conditions under which a failure to change topology
    	  is expected so there's no need to print an ERROR message.
    
    	  ASTERISK-29618
    	  Reported by: Alexander
    
    	  Change-Id: Idc168b8588e018bf3a23769f08c4ad646086d481
    
    2021-08-31 02:50 +0000 [479cc17f45]  sungtae kim <sungtae.kim@avoxi.com>
    
    	* resource_channels.c: Fix wrong external media parameter parse
    
    	  Fixed ARI external media handler to accept body parameters.
    
    	  ASTERISK-29622
    
    	  Change-Id: I49509c48a6cbc0fb4165bfa4f834b5e8b9ace20d
    
    2021-08-25 10:21 +0000 [5c836c8e36]  Sean Bright <sean.bright@gmail.com>
    
    	* config_options: Handle ACO arrays correctly in generated XML docs.
    
    	  There are 3 separate changes here but they are all closely related:
    
    	  * Only try to set matchfield attributes on 'field' nodes
    
    	  * We need to adjust how we treat the category pointer based on the
    	    value of the category_match, to avoid memory corruption. We now
    	    generate a regex-like string when match types other than
    	    ACO_WHITELIST and ACO_BLACKLIST are used.
    
    	  * Switch app_agent_pool from ACO_BLACKLIST_ARRAY to
    	    ACO_BLACKLIST_EXACT since we only have one category we need to
    	    ignore, not two.
    
    	  ASTERISK-29614 #close
    
    	  Change-Id: I7be7bdb1bb9814f942bc6bb4fdd0a55a7b7efe1e
    
    2021-08-18 14:44 +0000 [5a685249ce]  Naveen Albert <asterisk@phreaknet.org>
    
    	* chan_iax2: Add ANI2/OLI information element
    
    	  Adds an information element for ANI2 so that
    	  Originating Line Information can be transmitted
    	  over IAX2 channels.
    
    	  ASTERISK-29605 #close
    
    	  Change-Id: Iaeacdf6ccde18eaff7f776a0f49fee87dcb549d2
    
    2021-08-31 15:03 +0000 [042ae05be7]  Mark Murawski <markm@intellasoft.net>
    
    	* pbx_ael:  Fix crash and lockup issue regarding 'ael reload'
    
    	  Currently pbx_ael does not check if a reload is currently pending
    	  before proceeding with a reload. This can cause multiple threads to
    	  operate at the same time on what should be mutex protected data. This
    	  change adds protection to reloading to ensure only one ael reload is
    	  executing at a time.
    
    	  ASTERISK-29609 #close
    
    	  Change-Id: I5ed392ad226f6e4e7696ad742076d3e45c57af35
    
    2021-08-25 06:49 +0000 [dd980e00b4]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_read: Allow reading # as a digit
    
    	  Allows for the digit # to be read as a digit,
    	  just like any other DTMF digit, as opposed to
    	  forcing it to be used as an end of input
    	  indicator. The default behavior remains
    	  unchanged.
    
    	  ASTERISK-18454 #close
    
    	  Change-Id: I3033432adb9d296ad227e76b540b8b4a2417665b
    
    2021-04-05 14:06 +0000 [ac492f2ff8]  Sebastien Duthil <sduthil@wazo.community>
    
    	* res_rtp_asterisk: Automatically refresh stunaddr from DNS
    
    	  This allows the STUN server to change its IP address without having to
    	  reload the res_rtp_asterisk module.
    
    	  The refresh of the name resolution occurs first when the module is
    	  loaded, then recurringly, slightly after the previous DNS answer TTL
    	  expires.
    
    	  ASTERISK-29508 #close
    
    	  Change-Id: I7955a046293f913ba121bbd82153b04439e3465f
    
    2021-08-24 20:04 +0000 [e660a2c03b]  Naveen Albert <asterisk@phreaknet.org>
    
    	* bridge_basic: Change warning to verbose if transfer cancelled
    
    	  The attended transfer feature will emit a warning if the user
    	  cancels the transfer or the attended transfer doesn't complete
    	  for any reason. Changes the warning to a verbose message,
    	  since nothing is actually wrong here.
    
    	  ASTERISK-29612 #close
    
    	  Change-Id: I64c93cdb21360a0a8d45e9cb6db3af8168f66e6d
    
    2021-08-20 15:35 +0000 [c7af46995e]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_queue: Don't reset queue stats on reload
    
    	  Prevents reloads of app_queue from also resetting
    	  queue statistics.
    
    	  Also preserves individual queue agent statistics
    	  if we're just reloading members.
    
    	  ASTERISK-28701
    
    	  Change-Id: Ib5d4cdec175e44de38ef0f6ede4a7701751766f1
    
    2021-08-25 09:23 +0000 [82d6bd7ec9]  Alexander Traud <pabstraud@compuserve.com>
    
    	* res_rtp_asterisk: sqrt(.) requires the header math.h.
    
    	  ASTERISK-29616
    
    	  Change-Id: I6c01623926bf10ccac32612687a50fdab3ba0900
    
    2021-08-25 09:29 +0000 [8410afc7ab]  Alexander Traud <pabstraud@compuserve.com>
    
    	* dialplan: Add one static and fix two whitespace errors.
    
    	  Change-Id: Ia14d515ab63e773097adc6af772ca7123a392f83
    
    2021-06-19 23:36 +0000 [241686f860]  Sarah Autumn <sarah@connectionsmuseum.org>
    
    	* sig_analog: Changes to improve electromechanical signalling compatibility
    
    	  This changeset is intended to address compatibility issues encountered
    	  when interfacing Asterisk to electromechanical telephone switches that
    	  implement ANI-B, ANI-C, or ANI-D.
    
    	  In particular the behaviours that this impacts include:
    
    	   - FGC-CAMA did not work at all when using MF signaling. Modified the
    	     switch case block to send calls to the correct part of the
    	     signaling-handling state machine.
    
    	   - For FGC-CAMA operation, the delay between called number ST and
    	     second wink for ANI spill has been made configurable; previously
    	     all calls were made to wait for one full second.
    
    	   - After the ANI spill, previous behavior was to require a 'ST' tone
    	     to advance the call.  This has been changed to allow 'STP' 'ST2P'
    	     or 'ST3P' as well, for compatibility with ANI-D.
    
    	   - Store ANI2 (ANI INFO) digits in the CALLERID(ANI2) channel variable.
    
    	   - For calls with an ANI failure, No. 1 Crossbar switches will send
    	     forward a single-digit failure code, with no calling number digits
    	     and no ST pulse to terminate the spill.  I've made the ANI timeout
    	     configurable so to reduce dead air time on calls with ANI fail.
    
    	   - ANI info digits configurable.  Modern digital switches will send 2
    	     digits, but ANI-B sends only a single info digit.  This caused the
    	     ANI reported by Asterisk to be misaligned.
    
    	   - Changed a confusing log message to be more informative.
    
    	  ASTERISK-29518
    
    	  Change-Id: Ib7e27d987aee4ed9bc3663c57ef413e21b404256
    
    2021-08-05 11:55 +0000 [eb486db3af]  Andre Barbosa <andre.emanuel.barbosa@gmail.com>
    
    	* media_cache: Don't lock when curl the remote file
    
    	  When playing a remote sound file, which is not in cache, first we need
    	  to download it with ast_bucket_file_retrieve.
    
    	  This can take a while if the remote host is slow. The current CURL
    	  timeout is 180secs, so in extreme situations, it can take 3 minutes to
    	  return.
    
    	  Because ast_media_cache_retrieve has a lock on all function, while we
    	  are waiting for the delayed download, Asterisk is not able to play any
    	  more files, even the files already cached locally.
    
    	  ASTERISK-29544 #close
    
    	  Change-Id: I8d4142b463ae4a1d4c41bff2bf63324821567408
    
    2021-08-16 08:25 +0000 [b72425b1f0]  George Joseph <gjoseph@digium.com>
    
    	* res_pjproject: Allow mapping to Asterisk TRACE level
    
    	  Allow mapping pjproject log messages to the Asterisk TRACE
    	  log level.  The defaults were also changes to log pjproject
    	  levels 3,4 to DEBUG and 5,6 to TRACE.  Previously 3,4,5,6
    	  all went to DEBUG.
    
    	  ASTERISK-29582
    
    	  Change-Id: I859a37a8dec263ed68099709cfbd3e665324c72d
    
    2021-08-12 16:02 +0000 [dffc5e7f5c]  Naveen Albert <asterisk@phreaknet.org>
    
    	* app_milliwatt: Timing fix
    
    	  The Milliwatt application uses incorrect tone timings
    	  that cause it to play the 1004 Hz tone constantly.
    
    	  This adds an option to enable the correct timing
    	  behavior, so that the Milliwatt application can
    	  be used for milliwatt test lines. The default behavior
    	  remains unchanged for compatability reasons, even
    	  though it is incorrect.
    
    	  ASTERISK-29575 #close
    
    	  Change-Id: I73ccc6c6fcaa31931c6fff3b85ad1805b2ce9d8c
    
    2021-06-28 09:25 +0000 [c52ef4ac79]  Naveen Albert <asterisk@phreaknet.org>
    
    	* func_math: Return integer instead of float if possible
    
    	  The MIN, MAX, and ABS functions all support float
    	  arguments, but currently return floats even if the