From: Pawel Andruszkiewicz Date: Mon, 4 May 2015 08:52:35 +0000 (+0200) Subject: [MediaController] Privilege checks moved to JS. X-Git-Tag: submit/tizen_tv/20150603.064601~1^2~75 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3f7b827c69143e646dd46df8776509642c748928;p=platform%2Fcore%2Fapi%2Fwebapi-plugins.git [MediaController] Privilege checks moved to JS. Privileges need to be checked before validation of arguments. Change-Id: I82d84186e526f401231f8d84bf9b657df4b54eae Signed-off-by: Pawel Andruszkiewicz --- diff --git a/src/mediacontroller/mediacontroller_api.js b/src/mediacontroller/mediacontroller_api.js index 17c7c19f..b080b09c 100644 --- a/src/mediacontroller/mediacontroller_api.js +++ b/src/mediacontroller/mediacontroller_api.js @@ -147,6 +147,7 @@ var MediaControllerPlaybackState = { function MediaControllerManager() {} MediaControllerManager.prototype.getClient = function() { + xwalk.utils.checkPrivilegeAccess(xwalk.utils.privilege.MEDIACONTROLLER_WRITE); var result = native_.callSync('MediaControllerManager_getClient', {}); @@ -158,6 +159,8 @@ MediaControllerManager.prototype.getClient = function() { }; MediaControllerManager.prototype.createServer = function() { + xwalk.utils.checkPrivilegeAccess(xwalk.utils.privilege.MEDIACONTROLLER_READ); + var result = native_.callSync('MediaControllerManager_createServer', {}); if (native_.isFailure(result)) { throw native_.getErrorObject(result); diff --git a/src/mediacontroller/mediacontroller_instance.cc b/src/mediacontroller/mediacontroller_instance.cc index 11aa4d4f..a6b15d19 100644 --- a/src/mediacontroller/mediacontroller_instance.cc +++ b/src/mediacontroller/mediacontroller_instance.cc @@ -14,15 +14,6 @@ namespace extension { namespace mediacontroller { -namespace { -// The privileges required in MediaController API -const std::string kPrivilegeMediaControllerClient = - "http://tizen.org/privilege/mediacontroller.write"; -const std::string kPrivilegeMediaControllerServer = - "http://tizen.org/privilege/mediacontroller.read"; - -} // namespace - using common::ErrorCode; using common::PlatformResult; using common::TaskQueue; @@ -111,8 +102,6 @@ void MediaControllerInstance::MediaControllerManagerCreateServer( return; } - CHECK_PRIVILEGE_ACCESS(kPrivilegeMediaControllerServer, &out); - server_ = std::make_shared(); const PlatformResult& result = server_->Init(); if (!result) { @@ -347,8 +336,6 @@ void MediaControllerInstance::MediaControllerManagerGetClient( return; } - CHECK_PRIVILEGE_ACCESS(kPrivilegeMediaControllerClient, &out); - client_ = std::make_shared(); const PlatformResult& result = client_->Init(); if (!result) { diff --git a/src/utils/utils_api.js b/src/utils/utils_api.js index a607436d..239e7d32 100644 --- a/src/utils/utils_api.js +++ b/src/utils/utils_api.js @@ -95,6 +95,8 @@ function Utils() { INTERNET: 'http://tizen.org/privilege/internet', LED: 'http://tizen.org/privilege/led', LOCATION: 'http://tizen.org/privilege/location', + MEDIACONTROLLER_READ: 'http://tizen.org/privilege/mediacontroller.read', + MEDIACONTROLLER_WRITE: 'http://tizen.org/privilege/mediacontroller.write', MESSAGING_READ: 'http://tizen.org/privilege/messaging.read', MESSAGING_WRITE: 'http://tizen.org/privilege/messaging.write', NETWORKBEARERSELECTION: 'http://tizen.org/privilege/networkbearerselection',