Requests_Transport_fsockopen::verify_certificate_from_context( string $host, resource $context )

Verify the certificate against common name and subject alternative names

Description

Unfortunately, PHP doesn’t check the certificate against the alternative names, leading things like ‘https://www.github.com/‘ to be invalid. Instead

See also

Parameters

$host

(string) (Required) Host name to verify against

$context

(resource) (Required) Stream context

Return

(bool)

Source

File: wp-includes/Requests/Transport/fsockopen.php

public function verify_certificate_from_context($host, $context) {
		$meta = stream_context_get_options($context);

		// If we don't have SSL options, then we couldn't make the connection at
		// all
		if (empty($meta) || empty($meta['ssl']) || empty($meta['ssl']['peer_certificate'])) {
			throw new Requests_Exception(rtrim($this->connect_error), 'ssl.connect_error');
		}

		$cert = openssl_x509_parse($meta['ssl']['peer_certificate']);

		return Requests_SSL::verify_certificate($host, $cert);
	}

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/requests_transport_fsockopen/verify_certificate_from_context