Block platform verification and file IO in the CDM adapter if the CDM configuration...
commitf92575a5735f510fb159f3f1928f614e31c8a0f8
authorsandersd <sandersd@chromium.org>
Tue, 10 Mar 2015 00:55:46 +0000 (9 17:55 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 10 Mar 2015 00:56:53 +0000 (10 00:56 +0000)
tree16a077a4b896ad6882eb4721adc2b2f02c05acad
parentd7b5304acdef30bd32c250ee82a7de39b864ef46
Block platform verification and file IO in the CDM adapter if the CDM configuration disallows access to them.

Based on the configured value of distinctiveIdentifier and persistentState, we compute permission bits and pass them through PPAPI to the CDM adapter. This enables us to enforce 'not-allowed' configs even when user permission has been granted.

BUG=487452

Review URL: https://codereview.chromium.org/985113003

Cr-Commit-Position: refs/heads/master@{#319798}
28 files changed:
content/renderer/media/crypto/ppapi_decryptor.cc
content/renderer/media/crypto/ppapi_decryptor.h
content/renderer/media/crypto/render_cdm_factory.cc
content/renderer/media/crypto/render_cdm_factory.h
content/renderer/pepper/content_decryptor_delegate.cc
content/renderer/pepper/content_decryptor_delegate.h
media/base/cdm_factory.h
media/blink/cdm_session_adapter.cc
media/blink/cdm_session_adapter.h
media/blink/webcontentdecryptionmodule_impl.cc
media/blink/webcontentdecryptionmodule_impl.h
media/blink/webcontentdecryptionmoduleaccess_impl.cc
media/blink/webencryptedmediaclient_impl.cc
media/blink/webencryptedmediaclient_impl.h
media/cdm/default_cdm_factory.cc
media/cdm/default_cdm_factory.h
media/cdm/ppapi/cdm_adapter.cc
media/cdm/ppapi/cdm_adapter.h
media/cdm/proxy_decryptor.cc
ppapi/api/private/ppp_content_decryptor_private.idl
ppapi/c/pp_macros.h
ppapi/c/private/ppp_content_decryptor_private.h
ppapi/cpp/private/content_decryptor_private.cc
ppapi/cpp/private/content_decryptor_private.h
ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c
ppapi/proxy/ppapi_messages.h
ppapi/proxy/ppp_content_decryptor_private_proxy.cc
ppapi/proxy/ppp_content_decryptor_private_proxy.h