Merge pull request #14178 from annando/issue-14175

Issue 14175: Fix problems with upper case host names
This commit is contained in:
Tobias Diekershoff 2024-05-26 08:03:10 +02:00 committed by GitHub
commit eba67fdd88
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 5 additions and 9 deletions

View file

@ -84,13 +84,9 @@ class APContact
if (!empty($link['template']) && ($link['rel'] == ActivityNamespace::OSTATUSSUB)) {
$data['subscribe'] = $link['template'];
}
if (!empty($link['href']) && !empty($link['type']) && ($link['rel'] == 'self') && ($link['type'] == 'application/activity+json')) {
} elseif (!empty($link['href']) && !empty($link['type']) && ($link['rel'] == 'self') && ($link['type'] == 'application/activity+json')) {
$data['url'] = $link['href'];
}
if (!empty($link['href']) && !empty($link['type']) && ($link['rel'] == ActivityNamespace::WEBFINGERPROFILE) && ($link['type'] == 'text/html')) {
} elseif (!empty($link['href']) && !empty($link['type']) && ($link['rel'] == ActivityNamespace::WEBFINGERPROFILE) && ($link['type'] == 'text/html')) {
$data['alias'] = $link['href'];
}
}
@ -199,7 +195,7 @@ class APContact
$failed = empty($curlResult) || empty($curlResult->getBodyString()) ||
(!$curlResult->isSuccess() && ($curlResult->getReturnCode() != 410));
if (!$failed) {
if (!$failed) {
$data = json_decode($curlResult->getBodyString(), true);
$failed = empty($data) || !is_array($data);
}

View file

@ -281,7 +281,7 @@ class HTTPSignature
$content = json_encode($data, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
// Header data that is about to be signed.
$host = parse_url($target, PHP_URL_HOST);
$host = strtolower(parse_url($target, PHP_URL_HOST));
$path = parse_url($target, PHP_URL_PATH);
$digest = 'SHA-256=' . base64_encode(hash('sha256', $content, true));
$content_length = strlen($content);
@ -502,7 +502,7 @@ class HTTPSignature
if (!empty($owner['uprvkey'])) {
// Header data that is about to be signed.
$host = parse_url($request, PHP_URL_HOST);
$host = strtolower(parse_url($request, PHP_URL_HOST));
$path = parse_url($request, PHP_URL_PATH);
$date = DateTimeFormat::utcNow(DateTimeFormat::HTTP);