static uint8_t prv_server_create(uint16_t instanceId, int numData, lwm2m_data_t * dataArray, lwm2m_object_t * objectP) { server_instance_t * serverInstance; uint8_t result; serverInstance = (server_instance_t *)lwm2m_malloc(sizeof(server_instance_t)); if (NULL == serverInstance) return COAP_500_INTERNAL_SERVER_ERROR; memset(serverInstance, 0, sizeof(server_instance_t)); serverInstance->instanceId = instanceId; objectP->instanceList = LWM2M_LIST_ADD(objectP->instanceList, serverInstance); result = prv_server_write(instanceId, numData, dataArray, objectP); if (result != COAP_204_CHANGED) { (void)prv_server_delete(instanceId, objectP); } else { result = COAP_201_CREATED; } return result; }
static uint8_t prv_server_create(uint16_t instanceId, int numData, lwm2m_data_t * dataArray, lwm2m_object_t * objectP) { server_instance_t * serverInstance; uint8_t result; serverInstance = (server_instance_t *)lwm2m_malloc(sizeof(server_instance_t)); if (NULL == serverInstance) return COAP_500_INTERNAL_SERVER_ERROR; memset(serverInstance, 0, sizeof(server_instance_t)); serverInstance->instanceId = instanceId; #ifndef LWM2M_VERSION_1_0 serverInstance->registrationPriorityOrder = -1; serverInstance->initialRegistrationDelayTimer = -1; serverInstance->registrationFailureBlock = -1; serverInstance->bootstrapOnRegistrationFailure = -1; serverInstance->communicationRetryCount = -1; serverInstance->communicationRetryTimer = -1; serverInstance->communicationSequenceDelayTimer = -1; serverInstance->communicationSequenceRetryCount = -1; #endif objectP->instanceList = LWM2M_LIST_ADD(objectP->instanceList, serverInstance); result = prv_server_write(instanceId, numData, dataArray, objectP); if (result != COAP_204_CHANGED) { (void)prv_server_delete(instanceId, objectP); } else { result = COAP_201_CREATED; } return result; }