Skip to content

Commit 50876d4

Browse files
ozgengreenbonebot
authored andcommitted
Add: Add latest_agent_version and latest_updater_version fields to agent struct
1 parent b076e76 commit 50876d4

File tree

3 files changed

+14
-0
lines changed

3 files changed

+14
-0
lines changed

agent_controller/agent_controller.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,11 +385,19 @@ agent_controller_parse_agent (cJSON *item)
385385
/* Versions / platform */
386386
const gchar *upd_ver = gvm_json_obj_str (item, "updater_version");
387387
const gchar *agt_ver = gvm_json_obj_str (item, "agent_version");
388+
const gchar *latest_agt_ver = gvm_json_obj_str (item, "latest_agent_version");
389+
const gchar *latest_updater_ver =
390+
gvm_json_obj_str (item, "latest_updater_version");
388391
const gchar *os_str = gvm_json_obj_str (item, "operating_system");
389392
const gchar *arch = gvm_json_obj_str (item, "architecture");
390393

391394
agent->updater_version = upd_ver ? g_strdup (upd_ver) : NULL;
392395
agent->agent_version = agt_ver ? g_strdup (agt_ver) : NULL;
396+
agent->latest_agent_version =
397+
latest_agt_ver ? g_strdup (latest_agt_ver) : NULL;
398+
agent->latest_updater_version =
399+
latest_updater_ver ? g_strdup (latest_updater_ver) : NULL;
400+
agent->agent_version = agt_ver ? g_strdup (agt_ver) : NULL;
393401
agent->operating_system = os_str ? g_strdup (os_str) : NULL;
394402
agent->architecture = arch ? g_strdup (arch) : NULL;
395403
agent->update_to_latest =

agent_controller/agent_controller.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,8 @@ struct agent_controller_agent
137137

138138
gchar *updater_version; ///< Updater version string (may be empty)
139139
gchar *agent_version; ///< Agent version string (may be empty)
140+
gchar *latest_agent_version; ///< Latest agent version string (may be empty)
141+
gchar *latest_updater_version; ///< Latest updater version string (may be empty)
140142
gchar *operating_system; ///< OS string (may be empty)
141143
gchar *architecture; ///< Architecture string (e.g., "amd64", may be empty)
142144

agent_controller/agent_controller_tests.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -565,6 +565,8 @@ Ensure (agent_controller, parse_agent_with_minimal_fields)
565565
"\"last_update\": \"2025-04-29T13:06:00.34994Z\","
566566
"\"last_updater_heartbeat\": \"2025-04-29T13:06:00.34994Z\","
567567
"\"ip_addresses\": [\"192.168.1.1\"],"
568+
"\"latest_agent_version\": \"v.1.agent\","
569+
"\"latest_updater_version\": \"v.1.updater\","
568570
"\"agent_update_available\": true,"
569571
"\"updater_update_available\": true"
570572
"}";
@@ -583,6 +585,8 @@ Ensure (agent_controller, parse_agent_with_minimal_fields)
583585
assert_that (agent->last_updater_heartbeat, is_not_equal_to ((time_t) 0));
584586
assert_that (agent->agent_update_available, is_equal_to (1));
585587
assert_that (agent->updater_update_available, is_equal_to (1));
588+
assert_that (agent->latest_agent_version, is_equal_to_string ("v.1.agent"));
589+
assert_that (agent->latest_updater_version, is_equal_to_string ("v.1.updater"));
586590

587591
agent_controller_agent_free (agent);
588592
cJSON_Delete (obj);

0 commit comments

Comments
 (0)