From c4f63b8437684186072279f3cc1ad40dfea6e108 Mon Sep 17 00:00:00 2001 From: Moe Jette <jette1@llnl.gov> Date: Thu, 13 Jun 2002 02:23:39 +0000 Subject: [PATCH] Fixed code to check version numbers on messages. --- src/api/config_info.c | 5 +++-- src/api/job_info.c | 2 ++ src/api/node_info.c | 2 ++ src/api/partition_info.c | 2 ++ src/common/slurm_protocol_pack.c | 2 +- src/common/slurm_protocol_util.c | 2 +- 6 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/api/config_info.c b/src/api/config_info.c index 03558ba3712..f3801fedfa6 100644 --- a/src/api/config_info.c +++ b/src/api/config_info.c @@ -60,14 +60,15 @@ slurm_load_build (time_t update_time, struct build_table **build_table_ptr ) if ( ( rc = slurm_send_controller_msg ( sockfd , & request_msg ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; - /* receive message */ if ( ( msg_size = slurm_receive_msg ( sockfd , & response_msg ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; /* shutdown message connection */ if ( ( rc = slurm_shutdown_msg_conn ( sockfd ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; - + if ( msg_size ) + return msg_size; + switch ( response_msg . msg_type ) { case RESPONSE_BUILD_INFO: diff --git a/src/api/job_info.c b/src/api/job_info.c index d2fc94db63c..d58ae7eef84 100644 --- a/src/api/job_info.c +++ b/src/api/job_info.c @@ -123,6 +123,8 @@ slurm_load_jobs (time_t update_time, job_info_msg_t **job_info_msg_pptr) /* shutdown message connection */ if ( ( rc = slurm_shutdown_msg_conn ( sockfd ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; + if ( msg_size ) + return msg_size; switch ( response_msg . msg_type ) { diff --git a/src/api/node_info.c b/src/api/node_info.c index 0e5c769e8a9..2a03d1ee99d 100644 --- a/src/api/node_info.c +++ b/src/api/node_info.c @@ -106,6 +106,8 @@ slurm_load_node (time_t update_time, node_info_msg_t **node_info_msg_pptr) /* shutdown message connection */ if ( ( rc = slurm_shutdown_msg_conn ( sockfd ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; + if ( msg_size ) + return msg_size; switch ( response_msg . msg_type ) { diff --git a/src/api/partition_info.c b/src/api/partition_info.c index 37998dc0040..c7db112aab9 100644 --- a/src/api/partition_info.c +++ b/src/api/partition_info.c @@ -100,6 +100,8 @@ slurm_load_partitions (time_t update_time, partition_info_msg_t **partition_info /* shutdown message connection */ if ( ( rc = slurm_shutdown_msg_conn ( sockfd ) ) == SLURM_SOCKET_ERROR ) return SLURM_SOCKET_ERROR ; + if ( msg_size ) + return msg_size; switch ( response_msg . msg_type ) { diff --git a/src/common/slurm_protocol_pack.c b/src/common/slurm_protocol_pack.c index d7c67b59323..fe8baa899b8 100644 --- a/src/common/slurm_protocol_pack.c +++ b/src/common/slurm_protocol_pack.c @@ -598,7 +598,7 @@ void pack_job_desc ( job_desc_msg_t * job_desc_ptr, void ** buf_ptr , int * buff } -/* unpack_msg +/* unpack_job_desc * unpacks a job_desc struct * header - the body structure to unpack * buf_ptr - destination of the pack, note buffer will be incremented by underlying unpack routines diff --git a/src/common/slurm_protocol_util.c b/src/common/slurm_protocol_util.c index 96f0de79f49..c2b27ff3d02 100644 --- a/src/common/slurm_protocol_util.c +++ b/src/common/slurm_protocol_util.c @@ -8,7 +8,7 @@ uint32_t check_header_version( header_t * header) { if ( header -> version != SLURM_PROTOCOL_VERSION ) { - debug ( "Invalid Protocol Version from " ) ; + info ( "Invalid Protocol Version %d ", header -> version ) ; return SLURM_PROTOCOL_VERSION_ERROR ; } return SLURM_PROTOCOL_SUCCESS ; -- GitLab