Neos\Flow\Http\Component\TrustedProxiesComponent::getTrustedProxyHeaderValues PHP Method

getTrustedProxyHeaderValues() protected method

Get the values of trusted proxy header.
protected getTrustedProxyHeaderValues ( string $type, Request $request ) : Iterator
$type string One of the HEADER_* constants
$request Neos\Flow\Http\Request The request to get the trusted proxy header from
return Iterator An array of the values for this header type or NULL if this header type should not be trusted
    protected function getTrustedProxyHeaderValues($type, Request $request)
    {
        $trustedHeaders = isset($this->settings['headers'][$type]) ? $this->settings['headers'][$type] : '';
        if ($trustedHeaders === '' || !$request->getAttribute(Request::ATTRIBUTE_TRUSTED_PROXY)) {
            (yield null);
            return;
        }
        $trustedHeaders = array_map('trim', explode(',', $trustedHeaders));
        foreach ($trustedHeaders as $trustedHeader) {
            if ($request->hasHeader($trustedHeader)) {
                (yield array_map('trim', explode(',', $request->getHeader($trustedHeader))));
            }
        }
        (yield null);
    }