Bug about parsing queryparam is fixed
[platform/upstream/iotivity.git] / service / notification / src / provider / NSProviderSubscription.c
index d2f7f9b..35175e7 100644 (file)
@@ -111,7 +111,7 @@ void NSHandleSubscription(OCEntityHandlerRequest *entityHandlerRequest, NSResour
 {\r
     NS_LOG(DEBUG, "NSHandleSubscription - IN");\r
 \r
-    char * id = NSGetValueFromQuery(entityHandlerRequest->query, NS_QUERY_CONSUMER_ID);\r
+    char * id = NSGetValueFromQuery(OICStrdup(entityHandlerRequest->query), NS_QUERY_CONSUMER_ID);\r
 \r
     if(!id)\r
     {\r
@@ -120,14 +120,14 @@ void NSHandleSubscription(OCEntityHandlerRequest *entityHandlerRequest, NSResour
         return;\r
     }\r
 \r
+    NS_LOG_V(DEBUG, "consumerId = %s", id);\r
     if (resourceType == NS_RESOURCE_MESSAGE)\r
     {\r
         NS_LOG(DEBUG, "resourceType == NS_RESOURCE_MESSAGE");\r
         NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
         NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
 \r
-        OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
-        OICFree(id);\r
+        subData->id = id;\r
 \r
         subData->isWhite = false;\r
         subData->messageObId = entityHandlerRequest->obsInfo.obsId;\r
@@ -161,8 +161,7 @@ void NSHandleSubscription(OCEntityHandlerRequest *entityHandlerRequest, NSResour
         NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
         NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
 \r
-        OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
-        OICFree(id);\r
+        subData->id = id;\r
 \r
         subData->isWhite = false;\r
         subData->syncObId = entityHandlerRequest->obsInfo.obsId;\r
@@ -189,7 +188,7 @@ void NSHandleUnsubscription(OCEntityHandlerRequest *entityHandlerRequest)
 {\r
     NS_LOG(DEBUG, "NSHandleUnsubscription - IN");\r
 \r
-    char * id = NSGetValueFromQuery(entityHandlerRequest->query, NS_QUERY_CONSUMER_ID);\r
+    char * id = NSGetValueFromQuery(OICStrdup(entityHandlerRequest->query), NS_QUERY_CONSUMER_ID);\r
 \r
     if(!id)\r
     {\r
@@ -200,7 +199,7 @@ void NSHandleUnsubscription(OCEntityHandlerRequest *entityHandlerRequest)
 \r
     NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
     NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
-    OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
+    subData->id = id;\r
     subData->isWhite = false;\r
     subData->messageObId = entityHandlerRequest->obsInfo.obsId;\r
 \r
@@ -217,7 +216,6 @@ void NSHandleUnsubscription(OCEntityHandlerRequest *entityHandlerRequest)
 \r
     NS_LOG(DEBUG, "NSHandleUnsubscription - IN");\r
 \r
-    OICFree(id);\r
     NSFreeOCEntityHandlerRequest(entityHandlerRequest);\r
 }\r
 \r
@@ -285,7 +283,7 @@ NSResult NSSendSubscriptionResponse(OCEntityHandlerRequest *entityHandlerRequest
         return OC_EH_ERROR;\r
     }\r
 \r
-    char * id = NSGetValueFromQuery(entityHandlerRequest->query, NS_QUERY_CONSUMER_ID);\r
+    char * id = NSGetValueFromQuery(OICStrdup(entityHandlerRequest->query), NS_QUERY_CONSUMER_ID);\r
 \r
     if(!id)\r
     {\r
@@ -300,8 +298,8 @@ NSResult NSSendSubscriptionResponse(OCEntityHandlerRequest *entityHandlerRequest
         NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
         NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
 \r
-        OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
-        OICFree(id);\r
+        subData->id = id;\r
+\r
         subData->isWhite = true;\r
         subData->messageObId = entityHandlerRequest->obsInfo.obsId;\r
 \r
@@ -316,7 +314,6 @@ NSResult NSSendSubscriptionResponse(OCEntityHandlerRequest *entityHandlerRequest
 \r
     NSSendResponse(id, accepted);\r
 \r
-    OICFree(id);\r
     NSFreeOCEntityHandlerRequest(entityHandlerRequest);\r
 \r
     NS_LOG(DEBUG, "NSSendSubscriptionResponse - OUT");\r