Ensure nodeinfo-provided protocols are strings in Model\GServer::parseNodeinfo2

- https://github.com/friendica/friendica/issues/10168#issuecomment-828281803
This commit is contained in:
Hypolite Petovan 2021-05-31 00:47:03 -04:00
parent 8bdfdc7d52
commit 302070875c

View file

@ -802,6 +802,7 @@ class GServer
/** /**
* Parses Nodeinfo 2 * Parses Nodeinfo 2
* *
* @see https://git.feneas.org/jaywink/nodeinfo2
* @param string $nodeinfo_url address of the nodeinfo path * @param string $nodeinfo_url address of the nodeinfo path
* @return array Server data * @return array Server data
* @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \Friendica\Network\HTTPException\InternalServerErrorException
@ -850,7 +851,9 @@ class GServer
if (!empty($nodeinfo['protocols'])) { if (!empty($nodeinfo['protocols'])) {
$protocols = []; $protocols = [];
foreach ($nodeinfo['protocols'] as $protocol) { foreach ($nodeinfo['protocols'] as $protocol) {
$protocols[$protocol] = true; if (is_string($protocol)) {
$protocols[$protocol] = true;
}
} }
if (!empty($protocols['dfrn'])) { if (!empty($protocols['dfrn'])) {