tcg_swid_attr_tag_inv_t *attr_cast;
swid_tag_t *tag;
chunk_t tag_encoding;
- json_object *jarray, *jstring;
+ json_object *jobj, *jarray, *jstring;
char *tag_str;
int tag_count;
enumerator_t *e;
if (this->rest_api)
{
+ jobj = json_object_new_object();
jarray = json_object_new_array();
+ json_object_object_add(jobj, "data", jarray);
e = inventory->create_enumerator(inventory);
while (e->enumerate(e, &tag))
e->destroy(e);
if (this->rest_api->post(this->rest_api,
- "swid/add-tags/", jarray, NULL) != SUCCESS)
+ "swid/add-tags/", jobj, NULL) != SUCCESS)
{
DBG1(DBG_IMV, "error in REST API add-tags request");
}
- json_object_put(jarray);
+ json_object_put(jobj);
}
}
else
if (this->rest_api && (received & IMV_SWID_ATTR_TAG_ID_INV))
{
- if (asprintf(&command, "sessions/%d/swid_measurement/",
+ if (asprintf(&command, "sessions/%d/swid-measurement/",
session->get_session_id(session, NULL, NULL)) < 0)
{
error_str = "allocation of command string failed";
jrequest, &jresponse);
if (status == FAILED)
{
- error_str = "error in REST API swid_measurement request";
+ error_str = "error in REST API swid-measurement request";
}
free(command);
}
int tag_count;
/**
+ * Top level JSON object
+ */
+ json_object *jobj;
+
+ /**
* JSON array containing an inventory of SWID Tag IDs
*/
json_object *jarray;
METHOD(imv_state_t, destroy, void,
private_imv_swid_state_t *this)
{
- json_object_put(this->jarray);
+ json_object_put(this->jobj);
DESTROY_IF(this->session);
DESTROY_IF(this->reason_string);
DESTROY_IF(this->remediation_string);
METHOD(imv_swid_state_t, get_swid_inventory, json_object*,
private_imv_swid_state_t *this)
{
- return this->jarray;
+ return this->jobj;
}
METHOD(imv_swid_state_t, set_count, void,
.rec = TNC_IMV_ACTION_RECOMMENDATION_NO_RECOMMENDATION,
.eval = TNC_IMV_EVALUATION_RESULT_DONT_KNOW,
.connection_id = connection_id,
+ .jobj = json_object_new_object(),
.jarray = json_object_new_array(),
);
+ json_object_object_add(this->jobj, "data", this->jarray);
+
return &this->public.interface;
}