Make WordPress Core


Ignore:
Timestamp:
01/29/2021 07:58:39 PM (4 years ago)
Author:
flixos90
Message:

Security: Allow short-circuiting the wp_update_https_detection_errors() process.

This changeset introduces a pre_wp_update_https_detection_errors filter which can be used to short-circuit the default logic for detecting problems with HTTPS support for the site, by returning a WP_Error object.

Props timothyblynjacobs.
See #47577.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/https-detection.php

    r50072 r50075  
    8989 */
    9090function wp_update_https_detection_errors() {
     91    /**
     92     * Short-circuits the process of detecting errors related to HTTPS support.
     93     *
     94     * Returning a `WP_Error` from the filter will effectively short-circuit the default logic of trying a remote
     95     * request to the site over HTTPS, storing the errors array from the returned `WP_Error` instead.
     96     *
     97     * @since 5.7.0
     98     *
     99     * @param null|WP_Error $pre Error object to short-circuit detection,
     100     *                           or null to continue with the default behavior.
     101     */
     102    $support_errors = apply_filters( 'pre_wp_update_https_detection_errors', null );
     103    if ( is_wp_error( $support_errors ) ) {
     104        update_option( 'https_detection_errors', $support_errors->errors );
     105        return;
     106    }
     107
    91108    $support_errors = new WP_Error();
    92109
Note: See TracChangeset for help on using the changeset viewer.