[BUGFIX] PropertyMapper throws exceptions instead of returning error objects.

The DateTimeConverter in extbase still throws Exceptions in extbase. In
FLOW3 this was changed with b47d1c61aaaf67c6d9c3379d87fe132ff7bded80 - it
is expected that the converters return error objects on convertion errors.

As a solution i backported the changeset into extbase.

Change-Id: Ifdae9eefb13acb333f57054d1bb5ef0e45c17bb7
Fixes: #33861
Releases: master
[BUGFIX] ObjectContainer does not support namespaces

The object container (more specificially: the class info cache it uses)
fails when trying to get an instance of a namespaced class. This comes
from the namespace separator \, which is seen as an invalid character
for cache identifiers. Therefore the class name will be stored as sha1
hash.

Change-Id: Iaab7c635e733530dec26643078824a1d70557faf
Resolves: #27438
Releases: 1.4, 4.7, 4.8
[BUGFIX] Extbase produces errors in TYPO3 Log

Change-Id: I9f50b67db1c6cd27f1e83a3258b679d2258f80eb
Fixes: #34632
Releases: 4.7, 4.8
[BUGFIX] property mapping for models w/o __construct

If a model class has no __construct method, the PropertyMapper/
PersistentObjectConverter throws an Exception if it tried to convert an array
into object. This patch catches the ReflectionException directly in
buildObject() and assumes no constructor arguments, if no constructor exists.

Change-Id: I603bd7a26ba4242eef42f9fff6b29fea4673250c
Fixes: #34929
Releases: 4.7, 4.8
[CLEANUP] Replace deprecated interface from unittests

Change-Id: I2c726ab7bb482fac038a907bb82b33325f30d25a
Releases: 4.7, 4.8
Resolves: #34915
[BUGFIX] Tx_Extbase_Persistence_QueryInterface needs to provide getSource

Tx_Extbase_Persistence_Storage_Typo3DbBackend::parseQuery expects a
Tx_Extbase_Persistence_QueryInterface and then calls getSource on it.
One way to make this clean is to change
Tx_Extbase_Persistence_QueryInterface to provide the getSource method.

Releases: 4.7, 4.8
Fixes: #34916

Change-Id: Ic84a6897c7f46048e4967669712d7afcbc4df069
[BUGFIX] parseDynamicOperand appends to uninitialized variable

Tx_Extbase_Persistence_Storage_Typo3DbBackend::parseDynamicOperand
appends to uninitialized local variable $constraintSQL.

Change-Id: Ifbe15ad5ede46bdcac401e4ea45e4006f647955c
Releases: 4.7, 4.8
Fixes: #34921
[TASK] Allow getting the configuration without plugin-name

At the moment you need the extension- and plugin-name to retrieve the
configuration from the configurationManager. It is thus not possible
to get the extension settings. There are even unit-tests covering this
scenario.

* Allow to ommit plugin-name
* Adjust unit-tests

Change-Id: I573f2decca899bbbace63c5f3e994b607db6845e
Releases: 4.7, 4.8
[BUGFIX] Fix unit tests

In 2a7bea292be820d49efc7553d29bac5631f30b33 the unit tests broke
because the mocked ClassInfoCache does not return the previously
set class info.

Change-Id: I625335b43eb5b3d6500cd42fde6a1d9a40997aff
Resolves: #34962
Releases: 4.7, 4.8
[TASK] Sync backport of Utility/Arrays.php with FLOW3

Makes Tx_Extbase_Utility_Arrays class in synch with FLOW3
New methods: setValueByPath, unsetValueByPath, convertObjectToArray
Backport unittests.

Thanks to Tymoteusz Motylewski

Change-Id: Ibae165c05465b7273aa15a0e92949be17794bc29
Resolves: #34953
Releases: 4.8
[BUGFIX] Add missing "command" variable to Tx_Extbase_MVC_CLI_Request

There are multiple references to a membervariable "command" in
Tx_Extbase_MVC_CLI_Request, but this variable does not exist.

Change-Id: I0a67ba8715a28f1a6d2d1f667cc79249d1a652a2
Fixes: #34961
Releases: 4.7, 4.8
[+BUGFIX] Make $query->equals, no case sensitivity, work with UTF8

Change-Id: Ic00c9bafe6c0ca262fc3f9d716e0dae20d07ead5
Fixes: #27413
Releases: 1.3, 4.7, 4.8
[BUGFIX] Fix the @return of findAll

The @return documentation for Tx_Extbase_Persistence_Repository::findAll
and Tx_Extbase_Persistence_RepositoryInterface::findAll is incorrect:
It only mentions array, but also needs to mention
Tx_Extbase_Persistence_QueryResultInterface.

Fixes: #35002

Change-Id: Ic6c6e79ca3108c6eb84d27a7f77a63e980f94618
Branches: 4.8, 4.7, 1.4, 1.3
[SECURITY] Protect arguments of form __referrer with HMAC

The request arguments of the referring request are
a serialized string written to one of the hidden
fields in a Fluid form. This string has to be protected
by a HMAC to protect Extbase from possible unserialize
attacks.

Note: For now there is no object known within Extbase,
that could be used for an unserialize exploit!

This change also backports some convenience hmac methods
to the hash service from the current master, to have the
bugfix in sync.

Also this backports some of the method renamings from
FLOW3.

Change-Id: Iaba9e7556c7aeeb8a3724c84d96160a511500e98
Security-Bulletin: TYPO3-CORE-SA-2012-001
Fixes: #35310
Releases: 1.4, 4.7, 6.0