From: Tomasz Marciniak Date: Wed, 18 May 2016 07:21:11 +0000 (+0200) Subject: [Common] Added CHECK_PRIVILEGE macro. X-Git-Tag: submit/tizen/20160519.093420~2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=282c9a0a007c4801d9d5db4fcdeb17825094b70a;p=platform%2Fcore%2Fapi%2Fwebapi-plugins.git [Common] Added CHECK_PRIVILEGE macro. [Feature] This macro is used by new modules which return TizenPlatform object to JS layer. [Verification] Code compiles. Change-Id: Id471face94ea52896092221f3ad03052d18007ac Signed-off-by: Tomasz Marciniak --- diff --git a/src/common/tools.h b/src/common/tools.h index c3df3a98..f48e4fa1 100644 --- a/src/common/tools.h +++ b/src/common/tools.h @@ -37,6 +37,15 @@ common::PlatformResult CheckAccess(const std::string& privilege); common::PlatformResult CheckAccess(const std::vector& privileges); common::PlatformResult GetPkgApiVersion(std::string* api_version); +//it is used for modules which return TizenResult objects to JS layer +#define CHECK_PRIVILEGE(privilege) \ +do { \ + auto r = common::tools::CheckAccess(privilege); \ + if (!r) { \ + return common::SecurityError("Application does not have privilege to call this method"); \ + } \ +} while (0) + #define CHECK_PRIVILEGE_ACCESS(privilege, out) \ do { \ auto r = common::tools::CheckAccess(privilege); \