Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP2:Update
slurm
U_02-Move-file-permission-handling-into-pmixp_m...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File U_02-Move-file-permission-handling-into-pmixp_mkdir.patch of Package slurm
From: Tim Wickberg <tim@schedmd.com> Date: Wed Oct 11 12:45:25 2023 -0600 Subject: [PATCH 2/19]Move file permission handling into pmixp_mkdir(). Patch-mainline: Upstream Git-repo: https://github.com/SchedMD/slurm Git-commit: cbbf0fd55372f00e98a1bdce555395a1592ba26b References: CVE-2022-29500, bsc#1216207 Signed-off-by: Egbert Eich <eich@suse.de> --- src/plugins/mpi/pmix/pmixp_client.c | 6 ++---- src/plugins/mpi/pmix/pmixp_utils.c | 5 ++++- src/plugins/mpi/pmix/pmixp_utils.h | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/plugins/mpi/pmix/pmixp_client.c b/src/plugins/mpi/pmix/pmixp_client.c index 489314c129..2182021116 100644 --- a/src/plugins/mpi/pmix/pmixp_client.c +++ b/src/plugins/mpi/pmix/pmixp_client.c @@ -497,16 +497,14 @@ static void _set_localinfo(List lresp) extern int pmixp_libpmix_init(void) { int rc; - mode_t rights = (S_IRUSR | S_IWUSR | S_IXUSR) | - (S_IRGRP | S_IWGRP | S_IXGRP); - if (0 != (rc = pmixp_mkdir(pmixp_info_tmpdir_lib(), rights))) { + if (0 != (rc = pmixp_mkdir(pmixp_info_tmpdir_lib()))) { PMIXP_ERROR_STD("Cannot create server lib tmpdir: \"%s\"", pmixp_info_tmpdir_lib()); return errno; } - if (0 != (rc = pmixp_mkdir(pmixp_info_tmpdir_cli(), rights))) { + if (0 != (rc = pmixp_mkdir(pmixp_info_tmpdir_cli()))) { PMIXP_ERROR_STD("Cannot create client cli tmpdir: \"%s\"", pmixp_info_tmpdir_cli()); return errno; diff --git a/src/plugins/mpi/pmix/pmixp_utils.c b/src/plugins/mpi/pmix/pmixp_utils.c index 0083dad640..d950c06890 100644 --- a/src/plugins/mpi/pmix/pmixp_utils.c +++ b/src/plugins/mpi/pmix/pmixp_utils.c @@ -539,8 +539,11 @@ int pmixp_rmdir_recursively(char *path) return rc; } -int pmixp_mkdir(char *path, mode_t rights) +int pmixp_mkdir(char *path) { + mode_t rights = (S_IRUSR | S_IWUSR | S_IXUSR) | + (S_IRGRP | S_IWGRP | S_IXGRP); + /* NOTE: we need user who owns the job to access PMIx usock * file. According to 'man 7 unix': * "... In the Linux implementation, sockets which are visible in the diff --git a/src/plugins/mpi/pmix/pmixp_utils.h b/src/plugins/mpi/pmix/pmixp_utils.h index f27ff20128..dd23f00d35 100644 --- a/src/plugins/mpi/pmix/pmixp_utils.h +++ b/src/plugins/mpi/pmix/pmixp_utils.h @@ -63,7 +63,7 @@ int pmixp_p2p_send(const char *nodename, const char *address, const char *data, uint32_t len, unsigned int start_delay, unsigned int retry_cnt, int silent); int pmixp_rmdir_recursively(char *path); -int pmixp_mkdir(char *path, mode_t rights); +int pmixp_mkdir(char *path); /* lightweight pmix list of pointers */ #define PMIXP_LIST_DEBUG 0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor