Added server instance id into resource discovery response message.
authorThuyen Tran <thuyen.c.tran@intel.com>
Sat, 22 Nov 2014 13:15:27 +0000 (05:15 -0800)
committerThuyen Tran <thuyen.c.tran@intel.com>
Tue, 2 Dec 2014 15:08:46 +0000 (07:08 -0800)
Change-Id: I8e8d256137968b1eca102803d522649b1ac57482
Signed-off-by: Thuyen Tran <thuyen.c.tran@intel.com>
resource/csdk/stack/include/internal/ocresource.h
resource/csdk/stack/src/ocresource.c
resource/csdk/stack/src/ocstack.c

index 10f7a91..5fe8e72 100644 (file)
@@ -27,6 +27,7 @@
 #define OC_RSRVD_OC                     "oc"
 #define OC_RSRVD_PAYLOAD                "payload"
 #define OC_RSRVD_HREF                   "href"
+#define OC_RSRVD_SERVER_INSTANCE_ID     "sid"
 #define OC_RSRVD_RESOURCE_TYPE          "rt"
 #define OC_RSRVD_INTERFACE              "if"
 #define OC_RSRVD_INTERFACE_DEFAULT      "oc.mi.def"
index c9ed805..67f959b 100644 (file)
@@ -147,6 +147,13 @@ OCStackResult BuildVirtualResourceResponse(OCResource *resourcePtr, uint8_t filt
             // Add URIs
             cJSON_AddItemToObject (resObj, OC_RSRVD_HREF, cJSON_CreateString(resourcePtr->uri));
 
+            // Add server instance id
+            const char* serverInstanceId = OCGetServerInstanceIDString();
+            cJSON_AddItemToObject (resObj,
+                                   OC_RSRVD_SERVER_INSTANCE_ID,
+                                   cJSON_CreateString(serverInstanceId));
+            serverInstanceId = NULL;
+
             cJSON_AddItemToObject (resObj, "prop", propObj = cJSON_CreateObject());
             // Add resource types
             cJSON_AddItemToObject (propObj, OC_RSRVD_RESOURCE_TYPE, rtArray = cJSON_CreateArray());
index 61fcbb1..d7d1af0 100644 (file)
@@ -2102,7 +2102,8 @@ const char* OCGetServerInstanceIDString(void)
     // to another value
     static char buffer[11];
 
-    if(sprintf(buffer, "%u", OCGetServerInstanceID() <0))
+    int n = sprintf(buffer, "%u", OCGetServerInstanceID());
+    if (n < 0)
     {
         buffer[0]='\0';
     }