From 84e3893cb37ea126f174df398c22c8149090e884 Mon Sep 17 00:00:00 2001
From: Georg Ringer <georg.ringer@gmail.com>
Date: Fri, 26 May 2023 08:23:45 +0200
Subject: [PATCH] [BUGFIX] Cast IP lock settings to int

Avoid exceptions by casting the values to integers.

Resolves: #100916
Releases: main, 12.4, 11.5
Change-Id: Icb1eeef44b11f3134bec2b5cb036049c8cfbd620
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79125
Tested-by: core-ci <typo3@b13.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
---
 typo3/sysext/core/Classes/Session/UserSessionManager.php | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/typo3/sysext/core/Classes/Session/UserSessionManager.php b/typo3/sysext/core/Classes/Session/UserSessionManager.php
index 4f347065c4d1..d4a60410f400 100644
--- a/typo3/sysext/core/Classes/Session/UserSessionManager.php
+++ b/typo3/sysext/core/Classes/Session/UserSessionManager.php
@@ -344,8 +344,8 @@ class UserSessionManager implements LoggerAwareInterface
         $sessionManager = $sessionManager ?? GeneralUtility::makeInstance(SessionManager::class);
         $ipLocker = $ipLocker ?? GeneralUtility::makeInstance(
             IpLocker::class,
-            $GLOBALS['TYPO3_CONF_VARS'][$loginType]['lockIP'],
-            $GLOBALS['TYPO3_CONF_VARS'][$loginType]['lockIPv6']
+            (int)($GLOBALS['TYPO3_CONF_VARS'][$loginType]['lockIP'] ?? 0),
+            (int)($GLOBALS['TYPO3_CONF_VARS'][$loginType]['lockIPv6'] ?? 0)
         );
         $lifetime = (int)($GLOBALS['TYPO3_CONF_VARS'][$loginType]['lifetime'] ?? 0);
         $sessionLifetime = $sessionLifetime ?? (int)$GLOBALS['TYPO3_CONF_VARS'][$loginType]['sessionTimeout'];
-- 
GitLab