From fad2a8bf1e68516387beebf570810575f514eae5 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Fri, 24 Jan 2003 00:41:03 +0000
Subject: [PATCH] Status code now included in node_registration RPC.

---
 src/common/slurm_protocol_defs.h | 3 ++-
 src/common/slurm_protocol_pack.c | 6 ++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/common/slurm_protocol_defs.h b/src/common/slurm_protocol_defs.h
index fe4fccd6535..74fdfb95f9f 100644
--- a/src/common/slurm_protocol_defs.h
+++ b/src/common/slurm_protocol_defs.h
@@ -355,7 +355,7 @@ typedef struct job_id_response_msg {
  * Slurm API Message Types
 \*****************************************************************************/
 typedef struct slurm_node_registration_status_msg {
-	uint32_t timestamp;
+	time_t timestamp;
 	char *node_name;
 	uint32_t cpus;
 	uint32_t real_memory_size;
@@ -363,6 +363,7 @@ typedef struct slurm_node_registration_status_msg {
 	uint32_t job_count;	/* number of associate job_id's */
 	uint32_t *job_id;	/* IDs of running job (if any) */
 	uint16_t *step_id;	/* IDs of running job steps (if any) */
+	uint32_t status;	/* node status code, same as return codes */
 } slurm_node_registration_status_msg_t;
 
 typedef struct slurm_ctl_conf slurm_ctl_conf_info_msg_t;
diff --git a/src/common/slurm_protocol_pack.c b/src/common/slurm_protocol_pack.c
index 35dc052d012..41576e1f40e 100644
--- a/src/common/slurm_protocol_pack.c
+++ b/src/common/slurm_protocol_pack.c
@@ -764,7 +764,8 @@ _pack_node_registration_status_msg(slurm_node_registration_status_msg_t *
 	int i;
 	assert(msg != NULL);
 
-	pack32(msg->timestamp, buffer);
+	pack_time(msg->timestamp, buffer);
+	pack32(msg->status, buffer);
 	packstr(msg->node_name, buffer);
 	pack32(msg->cpus, buffer);
 	pack32(msg->real_memory_size, buffer);
@@ -792,8 +793,9 @@ _unpack_node_registration_status_msg(slurm_node_registration_status_msg_t
 	*msg = node_reg_ptr;
 
 	/* unpack timestamp of snapshot */
-	safe_unpack32(&node_reg_ptr->timestamp, buffer);
+	safe_unpack_time(&node_reg_ptr->timestamp, buffer);
 	/* load the data values */
+	safe_unpack32(&node_reg_ptr->status, buffer);
 	safe_unpackstr_xmalloc(&node_reg_ptr->node_name, &uint16_tmp, buffer);
 	safe_unpack32(&node_reg_ptr->cpus, buffer);
 	safe_unpack32(&node_reg_ptr->real_memory_size, buffer);
-- 
GitLab