Submit
Path:
~
/
home
/
bfxleof
/
www
/
wp-includes
/
js
/
jquery
/
ui
/
File Content:
https-detection-20260623211809.php
<?php /** * HTTPS detection functions. * * @package WordPress * @since 5.7.0 */ /** * Checks whether the website is using HTTPS. * * This is based on whether both the home and site URL are using HTTPS. * * @since 5.7.0 * @see wp_is_home_url_using_https() * @see wp_is_site_url_using_https() * * @return bool True if using HTTPS, false otherwise. */ function wp_is_using_https() { if ( ! wp_is_home_url_using_https() ) { return false; } return wp_is_site_url_using_https(); } /** * Checks whether the current site URL is using HTTPS. * * @since 5.7.0 * @see home_url() * * @return bool True if using HTTPS, false otherwise. */ function wp_is_home_url_using_https() { return 'https' === wp_parse_url( home_url(), PHP_URL_SCHEME ); } /** * Checks whether the current site's URL where WordPress is stored is using HTTPS. * * This checks the URL where WordPress application files (e.g. wp-blog-header.php or the wp-admin/ folder) are * accessible. * * @since 5.7.0 * @see site_url() * * @return bool True if using HTTPS, false otherwise. */ function wp_is_site_url_using_https() { // Use direct option access for 'siteurl' and manually run the 'site_url' // filter because `site_url()` will adjust the scheme based on what the // current request is using. /** This filter is documented in wp-includes/link-template.php */ $site_url = apply_filters( 'site_url', get_option( 'siteurl' ), '', null, null ); return 'https' === wp_parse_url( $site_url, PHP_URL_SCHEME ); } /** * Checks whether HTTPS is supported for the server and domain. * * @since 5.7.0 * * @return bool True if HTTPS is supported, false otherwise. */ function wp_is_https_supported() { $https_detection_errors = get_option( 'https_detection_errors' ); // If option has never been set by the Cron hook before, run it on-the-fly as fallback. if ( false === $https_detection_errors ) { wp_update_https_detection_errors(); $https_detection_errors = get_option( 'https_detection_errors' ); } // If there are no detection errors, HTTPS is supported. return empty( $https_detection_errors ); } /** * Runs a remote HTTPS request to detect whether HTTPS supported, and stores potential errors. * * This internal function is called by a regular Cron hook to ensure HTTPS support is detected and maintained. * * @since 5.7.0 * @access private */ function wp_update_https_detection_errors() { /** * Short-circuits the process of detecting errors related to HTTPS support. * * Returning a `WP_Error` from the filter will effectively short-circuit the default logic of trying a remote * request to the site over HTTPS, storing the errors array from the returned `WP_Error` instead. * * @since 5.7.0 * * @param null|WP_Error $pre Error object to short-circuit detection, * or null to continue with the default behavior. */ $support_errors = apply_filters( 'pre_wp_update_https_detection_errors', null ); if ( is_wp_error( $support_errors ) ) { update_option( 'https_detection_errors', $support_errors->errors ); return; } $support_errors = new WP_Error(); $response = wp_remote_request( home_url( '/', 'https' ), array( 'headers' => array( 'Cache-Control' => 'no-cache', ), 'sslverify' => true, ) ); if ( is_wp_error( $response ) ) { $unverified_response = wp_remote_request( home_url( '/', 'https' ), array( 'headers' => array( 'Cache-Control' => 'no-cache', ), 'sslverify' => false, ) ); if ( is_wp_error( $unverified_response ) ) { $support_errors->add( 'https_request_failed', __( 'HTTPS request failed.' ) ); } else { $support_errors->add( 'ssl_verification_failed', __( 'SSL verification failed.' ) ); } $response = $unverified_response; } if ( ! is_wp_error( $response ) ) { if ( 200 !== wp_remote_retrieve_response_code( $response ) ) { $support_errors->add( 'bad_response_code', wp_remote_retrieve_response_message( $response ) ); } elseif ( false === wp_is_local_html_output( wp_remote_retrieve_body( $response ) ) ) { $support_errors->add( 'bad_response_source', __( 'It looks like the response did not come from this site.' ) ); } } update_option( 'https_detection_errors', $support_errors->errors ); } /** * Schedules the Cron hook for detecting HTTPS support. * * @since 5.7.0 * @access private */ function wp_schedule_https_detection() { if ( wp_installing() ) { return; } if ( ! wp_next_scheduled( 'wp_https_detection' ) ) { wp_schedule_event( time(), 'twicedaily', 'wp_https_detection' ); } } /** * Disables SSL verification if the 'cron_request' arguments include an HTTPS URL. * * This prevents an issue if HTTPS breaks, where there would be a failed attempt to verify HTTPS. * * @since 5.7.0 * @access private * * @param array $request The Cron request arguments. * @return array $request The filtered Cron request arguments. */ function wp_cron_conditionally_prevent_sslverify( $request ) { if ( 'https' === wp_parse_url( $request['url'], PHP_URL_SCHEME ) ) { $request['args']['sslverify'] = false; } return $request; } /** * Checks whether a given HTML string is likely an output from this WordPress site. * * This function attempts to check for various common WordPress patterns whether they are included in the HTML string. * Since any of these actions may be disabled through third-party code, this function may also return null to indicate * that it was not possible to determine ownership. * * @since 5.7.0 * @access private * * @param string $html Full HTML output string, e.g. from a HTTP response. * @return bool|null True/false for whether HTML was generated by this site, null if unable to determine. */ function wp_is_local_html_output( $html ) { // 1. Check if HTML includes the site's Really Simple Discovery link. if ( has_action( 'wp_head', 'rsd_link' ) ) { $pattern = preg_replace( '#^https?:(?=//)#', '', esc_url( site_url( 'xmlrpc.php?rsd', 'rpc' ) ) ); // See rsd_link(). return false !== strpos( $html, $pattern ); } // 2. Check if HTML includes the site's Windows Live Writer manifest link. if ( has_action( 'wp_head', 'wlwmanifest_link' ) ) { // Try both HTTPS and HTTP since the URL depends on context. $pattern = preg_replace( '#^https?:(?=//)#', '', includes_url( 'wlwmanifest.xml' ) ); // See wlwmanifest_link(). return false !== strpos( $html, $pattern ); } // 3. Check if HTML includes the site's REST API link. if ( has_action( 'wp_head', 'rest_output_link_wp_head' ) ) { // Try both HTTPS and HTTP since the URL depends on context. $pattern = preg_replace( '#^https?:(?=//)#', '', esc_url( get_rest_url() ) ); // See rest_output_link_wp_head(). return false !== strpos( $html, $pattern ); } // Otherwise the result cannot be determined. return null; }
Submit
FILE
FOLDER
Name
Size
Permission
Action
Exception.php
1214 bytes
0644
SMTP.php
47285 bytes
0644
accordion.js
15864 bytes
0644
accordion.min.js
8663 bytes
0644
autocomplete.js
17607 bytes
0644
autocomplete.min.js
8539 bytes
0644
autoload.php
2731 bytes
0644
button.js
9975 bytes
0644
button.min.js
5570 bytes
0644
checkboxradio.js
7510 bytes
0644
checkboxradio.min.js
4368 bytes
0644
class-json.php
43441 bytes
0644
class-walker-category-dropdown.php
2133 bytes
0644
class-walker-page-dropdown-20260703062052.php
2299 bytes
0644
class-wp-locale.php
13982 bytes
0644
class-wp-network-query.php
19169 bytes
0644
class-wp-network.php
12379 bytes
0644
class-wp-oembed-controller-20260621150705.php
6793 bytes
0644
class-wp-sitemaps-posts.php
5875 bytes
0644
class-wp-theme.php
51601 bytes
0644
comment-20260622000420.php
126193 bytes
0644
controlgroup-20260703123156.js
8564 bytes
0644
controlgroup.js
8564 bytes
0644
core.js
48955 bytes
0644
core.min.js
20787 bytes
0644
data.js
147192 bytes
0644
datepicker.js
80771 bytes
0644
datepicker.min.js
36148 bytes
0644
dialog.js
23055 bytes
0644
dialog.min.js
12782 bytes
0644
draggable.js
35343 bytes
0644
draggable.min.js
18291 bytes
0644
droppable.js
12817 bytes
0644
droppable.min.js
6581 bytes
0644
effect-blind.js
1592 bytes
0644
effect-bounce-20260702214147.js
2608 bytes
0644
effect-bounce.js
2608 bytes
0644
effect-bounce.min.js
949 bytes
0644
effect-clip.min.js
754 bytes
0644
effect-drop.js
1543 bytes
0644
effect-drop.min.js
709 bytes
0644
effect-explode-20260622005847.js
2882 bytes
0644
effect-fade.js
916 bytes
0644
effect-fade.min.js
483 bytes
0644
effect-fold.js
2133 bytes
0644
effect-fold.min.js
978 bytes
0644
effect-highlight.js
1191 bytes
0644
effect-highlight.min.js
606 bytes
0644
effect-puff.js
943 bytes
0644
effect-puff.min.js
468 bytes
0644
effect-pulsate.js
1515 bytes
0644
effect-pulsate.min.js
646 bytes
0644
effect-scale.js
1321 bytes
0644
effect-scale.min-20260703173741.js
681 bytes
0644
effect-scale.min.js
681 bytes
0644
effect-shake.js
1832 bytes
0644
effect-shake.min.js
804 bytes
0644
effect-size.js
5315 bytes
0644
effect-size.min.js
2408 bytes
0644
effect-slide.js
1915 bytes
0644
effect-slide.min.js
875 bytes
0644
effect-transfer.js
836 bytes
0644
effect-transfer.min.js
400 bytes
0644
effect.js
40846 bytes
0644
effect.min.js
16920 bytes
0644
https-detection-20260623211809-20260706173122.php
6871 bytes
0644
https-detection-20260623211809.php
6871 bytes
0644
https-migration-20260621222700-20260622020253.php
4730 bytes
0644
https-migration-20260622015741.php
4730 bytes
0644
https-migration-20260622194220.php
4730 bytes
0644
menu.js
17775 bytes
0644
menu.min.js
9531 bytes
0644
mouse.js
6123 bytes
0644
mouse.min.js
3380 bytes
0644
ms-blogs.php
25174 bytes
0644
nav-menu-template.php
23296 bytes
0644
php72compat_const.php
4597 bytes
0644
plural-forms.php
7612 bytes
0644
progressbar-20260622011138.js
4195 bytes
0644
progressbar.min.js
2514 bytes
0644
resizable.js
29924 bytes
0644
resizable.min.js
18472 bytes
0644
revision.php
22027 bytes
0644
selectable.js
8065 bytes
0644
selectable.min.js
4456 bytes
0644
selectmenu.js
16053 bytes
0644
selectmenu.min.js
9300 bytes
0644
shortcode.min.js
4096 bytes
0644
shortcode.php
697 bytes
0644
slider.js
19516 bytes
0644
slider.min.js
10712 bytes
0644
sortable.min.js
24782 bytes
0644
spinner.js
14182 bytes
0644
spinner.min.js
7532 bytes
0644
tabs.js
23552 bytes
0644
tabs.min.js
11915 bytes
0644
tooltip.js
14282 bytes
0644
tooltip.min.js
6091 bytes
0644
N4ST4R_ID | Naxtarrr