The Policy Engine was not checking for wilcard resource URIs in Access Control List entry (URI = "*"); this has been added per Security Spec A v0.96r3.
Change-Id: Iff6d8618cee2d177aa1b03dc3c58a78cd1fd6061
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/1626
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Sakthivel Samidurai <sakthivel.samidurai@intel.com>
Reviewed-by: Shilpa Sodani <shilpa.a.sodani@intel.com>
Reviewed-by: Sachin Agrawal <sachin.agrawal@intel.com>
extern OicUuid_t WILDCARD_SUBJECT_ID;
extern size_t WILDCARD_SUBJECT_ID_LEN;
+extern const char * WILDCARD_RESOURCE_URI;
//Ownership Transfer Methods
extern const char * OXM_JUST_WORKS;
{
for(size_t n = 0; n < acl->resourcesLen; n++)
{
- if(0 == strcmp(resource, acl->resources[n])) // TODO null terms?
+ if(0 == strcmp(resource, acl->resources[n]) || // TODO null terms?
+ 0 == strcmp(WILDCARD_RESOURCE_URI, acl->resources[n]))
{
return true;
}
const char * OIC_JSON_PERIOD_NAME = "period";
OicUuid_t WILDCARD_SUBJECT_ID = {"*"};
-size_t WILDCARD_SUBJECT_ID_LEN = 1 ;
+size_t WILDCARD_SUBJECT_ID_LEN = 1;
+const char * WILDCARD_RESOURCE_URI = "*";
//Ownership Transfer Methods
const char * OXM_JUST_WORKS = "oic.sec.doxm.jw";