1<?php 2 3declare(strict_types=1); 4 5/* 6 * This file is part of the TYPO3 CMS project. 7 * 8 * It is free software; you can redistribute it and/or modify it under 9 * the terms of the GNU General Public License, either version 2 10 * of the License, or any later version. 11 * 12 * For the full copyright and license information, please read the 13 * LICENSE.txt file that was distributed with this source code. 14 * 15 * The TYPO3 project - inspiring people to share! 16 */ 17 18namespace TYPO3\CMS\Core\Security; 19 20/** 21 * Blocks object being using `unserialize()` invocations. 22 * 23 * Initially this trait blocked `serialize()` as well, which caused 24 * a couple of side-effects in user-land code and is not problematic 25 * from a security point of view. 26 */ 27trait BlockSerializationTrait 28{ 29 /** 30 * Deny object deserialization. 31 */ 32 public function __wakeup() 33 { 34 throw new \BadMethodCallException('Cannot unserialize ' . __CLASS__, 1588784142); 35 } 36} 37