Use RedirectGuard during URL unfurling
authorTim Düsterhus <duesterhus@woltlab.com>
Thu, 18 Mar 2021 10:51:22 +0000 (11:51 +0100)
committerTim Düsterhus <duesterhus@woltlab.com>
Thu, 18 Mar 2021 10:56:08 +0000 (11:56 +0100)
wcfsetup/install/files/lib/system/message/unfurl/UnfurlResponse.class.php

index 85f4102158a858cbe038ef5a1cb133d76c1b6029..f53b8c0cf493092f8719b9584fb4cb133662b0ec 100644 (file)
@@ -10,6 +10,7 @@ use GuzzleHttp\Psr7\Request;
 use GuzzleHttp\Psr7\Response;
 use GuzzleHttp\RequestOptions;
 use Psr\Http\Client\ClientExceptionInterface;
+use wcf\system\io\http\RedirectGuard;
 use wcf\system\io\HttpFactory;
 use wcf\system\message\unfurl\exception\DownloadFailed;
 use wcf\system\message\unfurl\exception\ParsingFailed;
@@ -329,6 +330,9 @@ final class UnfurlResponse
                 RequestOptions::HEADERS => [
                     'user-agent' => HttpFactory::getDefaultUserAgent("UrlUnfurling"),
                 ],
+                RequestOptions::ALLOW_REDIRECTS => [
+                    'on_redirect' => new RedirectGuard(),
+                ],
             ]);
         }