Skip to content
Snippets Groups Projects
Commit b26a1361 authored by tewk's avatar tewk
Browse files

Added explicit cast to remove compiler warning.

Added signal call to restore sigpipe after send call
parent 0300bdac
No related branches found
No related tags found
No related merge requests found
......@@ -266,7 +266,7 @@ void slurm_free_kill_tasks_msg ( kill_tasks_msg_t * msg )
void slurm_init_job_desc_msg ( job_desc_msg_t * job_desc_msg )
{
job_desc_msg -> contiguous = SLURM_JOB_DESC_DEFAULT_CONTIGUOUS ;
job_desc_msg -> contiguous = (uint16_t) SLURM_JOB_DESC_DEFAULT_CONTIGUOUS ;
job_desc_msg -> dist = SLURM_JOB_DESC_DEFAULT_DIST ;
job_desc_msg -> features = SLURM_JOB_DESC_DEFAULT_FEATURES ;
job_desc_msg -> groups = SLURM_JOB_DESC_DEFAULT_GROUPS ; /* will be set by api */
......@@ -281,7 +281,7 @@ void slurm_init_job_desc_msg ( job_desc_msg_t * job_desc_msg )
job_desc_msg -> procs_per_task = SLURM_JOB_DESC_DEFAULT_PROCS_PER_TASK ;
job_desc_msg -> req_nodes = SLURM_JOB_DESC_DEFAULT_REQ_NODES ;
job_desc_msg -> job_script = SLURM_JOB_DESC_DEFAULT_JOB_SCRIPT ;
job_desc_msg -> shared = SLURM_JOB_DESC_DEFAULT_SHARED ;
job_desc_msg -> shared = (uint16_t) SLURM_JOB_DESC_DEFAULT_SHARED ;
job_desc_msg -> time_limit = SLURM_JOB_DESC_DEFAULT_TIME_LIMIT ;
job_desc_msg -> num_procs = SLURM_JOB_DESC_DEFAULT_NUM_PROCS ;
job_desc_msg -> num_nodes = SLURM_JOB_DESC_DEFAULT_NUM_NODES ;
......
......@@ -104,12 +104,13 @@ ssize_t _slurm_msg_sendto ( slurm_fd open_fd, char *buffer , size_t size , uint3
/* ignore SIGPIPE so that send can return a error code if the other side closes the socket */
signal(SIGPIPE, SIG_IGN);
pack32 ( size , ( void ** ) & size_buffer , & size_buffer_len ) ;
if ( ( send_len = _slurm_send ( open_fd , size_buffer_temp , sizeof ( uint32_t ) , SLURM_PROTOCOL_NO_SEND_RECV_FLAGS ) ) != sizeof ( uint32_t ) )
{
info ( "Error sending length of datagram" ) ;
signal(SIGPIPE, SIG_DFL);
return SLURM_PROTOCOL_ERROR ;
}
......@@ -117,9 +118,11 @@ ssize_t _slurm_msg_sendto ( slurm_fd open_fd, char *buffer , size_t size , uint3
if ( send_len != size )
{
info ( "_slurm_msg_sendto only transmitted %i of %i bytes", send_len , size ) ;
signal(SIGPIPE, SIG_DFL);
return SLURM_PROTOCOL_ERROR ;
}
signal(SIGPIPE, SIG_DFL);
return send_len ;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment