From be8b55a18d7326d59f0878d63bdf37c9bd59250f Mon Sep 17 00:00:00 2001 From: Daniel Ahlin <dah@pdc.kth.se> Date: Wed, 18 Nov 2015 14:33:03 -0800 Subject: [PATCH] Non-default settings of AuthInfo not being consistently propagated --- src/slurmctld/proc_req.c | 12 ++++++------ src/slurmd/slurmd/req.c | 6 +++--- src/slurmd/slurmstepd/req.c | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/slurmctld/proc_req.c b/src/slurmctld/proc_req.c index ace923b23e4..9638ea1a0b1 100644 --- a/src/slurmctld/proc_req.c +++ b/src/slurmctld/proc_req.c @@ -1320,13 +1320,13 @@ static void _slurm_rpc_dump_sicp(slurm_msg_t * msg) /* Locks: Read config job, write partition (for hiding) */ slurmctld_lock_t job_read_lock = { READ_LOCK, READ_LOCK, NO_LOCK, WRITE_LOCK }; - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); START_TIMER; debug2("Processing RPC: REQUEST_SICP_INFO from uid=%d", uid); lock_slurmctld(job_read_lock); pack_all_sicp(&dump, &dump_size, - g_slurm_auth_get_uid(msg->auth_cred, NULL), + g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()), msg->protocol_version); unlock_slurmctld(job_read_lock); END_TIMER2("_slurm_rpc_dump_sicp"); @@ -3709,7 +3709,7 @@ static void _slurm_rpc_update_layout(slurm_msg_t * msg) int shrink_size; /* Locks: Write job and write node */ - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); START_TIMER; debug2("Processing RPC: REQUEST_UPDATE_LAYOUT from uid=%d", uid); @@ -3804,7 +3804,7 @@ static void _slurm_rpc_update_powercap(slurm_msg_t * msg) /* Locks: write configuration, read node */ slurmctld_lock_t config_write_lock = { WRITE_LOCK, NO_LOCK, READ_LOCK, NO_LOCK }; - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); START_TIMER; debug2("Processing RPC: REQUEST_UPDATE_POWERCAP from uid=%d", uid); @@ -4306,7 +4306,7 @@ static void _slurm_rpc_block_info(slurm_msg_t * msg) /* get node select info plugin */ static void _slurm_rpc_burst_buffer_info(slurm_msg_t * msg) { - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); void *resp_buffer = NULL; int resp_buffer_size = 0; int error_code = SLURM_SUCCESS; @@ -5824,7 +5824,7 @@ static void _slurm_rpc_assoc_mgr_info(slurm_msg_t * msg) char *dump = NULL; int dump_size = 0; slurm_msg_t response_msg; - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); START_TIMER; debug2("%s: Processing RPC: REQUEST_ASSOC_MGR_INFO uid=%d", diff --git a/src/slurmd/slurmd/req.c b/src/slurmd/slurmd/req.c index b421cc5ba03..7dd0a148a8e 100644 --- a/src/slurmd/slurmd/req.c +++ b/src/slurmd/slurmd/req.c @@ -1702,7 +1702,7 @@ static void _rpc_prolog(slurm_msg_t *msg) if (req == NULL) return; - req_uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + req_uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); if (!_slurm_authorized_user(req_uid)) { error("REQUEST_LAUNCH_PROLOG request from uid %u", (unsigned int) req_uid); @@ -2906,7 +2906,7 @@ static int _rpc_step_complete_aggr(slurm_msg_t *msg) { int rc; - uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + uid_t uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); if (!_slurm_authorized_user(uid)) { error("Security violation: step_complete_aggr from uid %d", @@ -3167,7 +3167,7 @@ _rpc_network_callerid(slurm_msg_t *msg) rc = _callerid_find_job(conn, &job_id); if (rc == SLURM_SUCCESS) { /* We found the job */ - req_uid = g_slurm_auth_get_uid(msg->auth_cred, NULL); + req_uid = g_slurm_auth_get_uid(msg->auth_cred, slurm_get_auth_info()); if (!_slurm_authorized_user(req_uid)) { /* Requestor is not root or SlurmUser */ job_uid = _get_job_uid(job_id); diff --git a/src/slurmd/slurmstepd/req.c b/src/slurmd/slurmstepd/req.c index 2e62b0b2bb6..86e49c64dc9 100644 --- a/src/slurmd/slurmstepd/req.c +++ b/src/slurmd/slurmstepd/req.c @@ -416,7 +416,7 @@ _handle_accept(void *arg) free_buf(buffer); goto fail; } - rc = g_slurm_auth_verify(auth_cred, NULL, 2, NULL); + rc = g_slurm_auth_verify(auth_cred, NULL, 2, slurm_get_auth_info()); if (rc != SLURM_SUCCESS) { error("Verifying authentication credential: %s", g_slurm_auth_errstr(g_slurm_auth_errno(auth_cred))); -- GitLab