Fix the ACP session cookie value after WCFSetup
authorTim Düsterhus <duesterhus@woltlab.com>
Wed, 20 Jan 2021 09:06:43 +0000 (10:06 +0100)
committerTim Düsterhus <duesterhus@woltlab.com>
Wed, 20 Jan 2021 09:07:29 +0000 (10:07 +0100)
WCFSetup was not adjusted when making the changes to the cookie format.

see 3b07fad7445f10555cc367eadedb9543565e4943

wcfsetup/install/files/lib/system/package/PackageInstallationDispatcher.class.php

index cdac84e79e12f8019e84e8512fdde193a32aa6bd..0f6ccff6af42b1d44781f1d7e486df45db786334 100644 (file)
@@ -242,7 +242,15 @@ class PackageInstallationDispatcher {
                                                'acp_session',
                                                // We do not use the cache-timing safe class Hex, because we run the 
                                                // function during the setup.
-                                               CryptoUtil::createSignedString(\hex2bin(WCF::getSession()->sessionID))
+                                               CryptoUtil::createSignedString(
+                                                       \pack(
+                                                               'CA20CN',
+                                                               1,
+                                                               \hex2bin(WCF::getSession()->sessionID),
+                                                               0,
+                                                               WCF::getUser()->userID
+                                                       )
+                                               )
                                        );
                                        
                                        if (WCF::getSession()->getVar('__wcfSetup_developerMode')) {