diff --git a/src/common/slurm_protocol_defs.h b/src/common/slurm_protocol_defs.h
index fe4fccd6535995a2a07dce2611d8dbae0d8cd45f..74fdfb95f9f1cf612419ced4a10741f3ccefda83 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 35dc052d01289fd01f227ffcabff2a0a55d89a74..41576e1f40ef97661cb01110aab6fd614bea4980 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);