Fix memory leak in tee_svc_cryp_derive_key

Forward-port of the fix done for master:
f691cd78e067e9b277d0dcd9edf560f60b374b61
(https://github.com/OP-TEE/optee_os/pull/150)

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Address review comments

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
HKDF: bug fixes for zero-length or NULL (not supplied) salt or info

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>