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',