Skip to content
Snippets Groups Projects
Commit aa4bd8ad authored by Christian Kuhn's avatar Christian Kuhn
Browse files

[TASK] Introduce constant 'TYPO3'

TYPO3 still has some script files that run in global scope
without class or callable encapsulation. Those are especially
ext_localconf.php, ext_tables.php and Configuration/TCA/Overrides/*
script files.

When those files are located within document root, they can be
called directly via HTTP and may output something, which can be
a security risk. To prevent this, they have a call at the very
start: 'defined('TYPO3_MODE') or die();'.

Unfortunately, constant 'TYPO3_MODE' is a technical debt, core
tries to phase it out in v11. We thus need something equivalent
for these calls.

Since that test for existance of a constant is so simple and
straight forward, the solution is to define a new constant to
true, simply named 'TYPO3', to substitute 'TYPO3_MODE'. The
call is very similar: 'defined('TYPO3') or die();'.

The patch targets core master and v10: Having that constant in
v10 simplifies life of extension developers who want to deliver
extensions compatible with v10 and v11 in the same version, when
'TYPO3_MODE' constant is deprecated in v11 with upcoming patches.

Resolves: #92948
Related: #92947
Releases: master, 10.4
Change-Id: Ib7b438422a41e242cf49cd4f87a6f8c50a9907d3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66937


Tested-by: default avatarTYPO3com <noreply@typo3.com>
Tested-by: default avatarBenni Mack <benni@typo3.org>
Tested-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: default avatarBenni Mack <benni@typo3.org>
Reviewed-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
parent b34499c9
No related merge requests found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment