All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] eal: tighten permissions on shared memory files
@ 2019-04-03 16:00 Bruce Richardson
  2019-04-03 16:02 ` Bruce Richardson
  0 siblings, 1 reply; 3+ messages in thread
From: Bruce Richardson @ 2019-04-03 16:00 UTC (permalink / raw)
  To: dev; +Cc: anatoly.burakov, Bruce Richardson

When creating files on disk, e.g. for EAL configuration or shared memory
locks, etc., there is no need to grant any permissions on those files to
other users. All directories are already created with 0700 permissions, so
we should create all files with 0600 permissions.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 lib/librte_eal/freebsd/eal/eal.c               | 2 +-
 lib/librte_eal/freebsd/eal/eal_hugepage_info.c | 2 +-
 lib/librte_eal/linux/eal/eal.c                 | 2 +-
 lib/librte_eal/linux/eal/eal_hugepage_info.c   | 2 +-
 lib/librte_eal/linux/eal/eal_memory.c          | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/lib/librte_eal/freebsd/eal/eal.c b/lib/librte_eal/freebsd/eal/eal.c
index 790c6afa7..c6ac9028f 100644
--- a/lib/librte_eal/freebsd/eal/eal.c
+++ b/lib/librte_eal/freebsd/eal/eal.c
@@ -227,7 +227,7 @@ rte_eal_config_create(void)
 		return;
 
 	if (mem_cfg_fd < 0){
-		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0660);
+		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0600);
 		if (mem_cfg_fd < 0)
 			rte_panic("Cannot open '%s' for rte_mem_config\n", pathname);
 	}
diff --git a/lib/librte_eal/freebsd/eal/eal_hugepage_info.c b/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
index 1e8f5df23..32012e142 100644
--- a/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
+++ b/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
@@ -22,7 +22,7 @@ static void *
 map_shared_memory(const char *filename, const size_t mem_size, int flags)
 {
 	void *retval;
-	int fd = open(filename, flags, 0666);
+	int fd = open(filename, flags, 0600);
 	if (fd < 0)
 		return NULL;
 	if (ftruncate(fd, mem_size) < 0) {
diff --git a/lib/librte_eal/linux/eal/eal.c b/lib/librte_eal/linux/eal/eal.c
index 75ed0cf10..f7ae62d7b 100644
--- a/lib/librte_eal/linux/eal/eal.c
+++ b/lib/librte_eal/linux/eal/eal.c
@@ -320,7 +320,7 @@ rte_eal_config_create(void)
 		rte_mem_cfg_addr = NULL;
 
 	if (mem_cfg_fd < 0){
-		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0660);
+		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0600);
 		if (mem_cfg_fd < 0)
 			rte_panic("Cannot open '%s' for rte_mem_config\n", pathname);
 	}
diff --git a/lib/librte_eal/linux/eal/eal_hugepage_info.c b/lib/librte_eal/linux/eal/eal_hugepage_info.c
index ce3e99256..91a4fede7 100644
--- a/lib/librte_eal/linux/eal/eal_hugepage_info.c
+++ b/lib/librte_eal/linux/eal/eal_hugepage_info.c
@@ -45,7 +45,7 @@ static void *
 map_shared_memory(const char *filename, const size_t mem_size, int flags)
 {
 	void *retval;
-	int fd = open(filename, flags, 0666);
+	int fd = open(filename, flags, 0600);
 	if (fd < 0)
 		return NULL;
 	if (ftruncate(fd, mem_size) < 0) {
diff --git a/lib/librte_eal/linux/eal/eal_memory.c b/lib/librte_eal/linux/eal/eal_memory.c
index 39cd359a0..319352521 100644
--- a/lib/librte_eal/linux/eal/eal_memory.c
+++ b/lib/librte_eal/linux/eal/eal_memory.c
@@ -541,7 +541,7 @@ create_shared_memory(const char *filename, const size_t mem_size)
 		return retval;
 	}
 
-	fd = open(filename, O_CREAT | O_RDWR, 0666);
+	fd = open(filename, O_CREAT | O_RDWR, 0600);
 	if (fd < 0)
 		return NULL;
 	if (ftruncate(fd, mem_size) < 0) {
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] eal: tighten permissions on shared memory files
  2019-04-03 16:00 [PATCH] eal: tighten permissions on shared memory files Bruce Richardson
@ 2019-04-03 16:02 ` Bruce Richardson
  2019-04-04 17:51   ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Bruce Richardson @ 2019-04-03 16:02 UTC (permalink / raw)
  To: dev; +Cc: anatoly.burakov, stable

Adding stable@dpdk.org since this is suitable for backporting

On Wed, Apr 03, 2019 at 05:00:34PM +0100, Bruce Richardson wrote:
> When creating files on disk, e.g. for EAL configuration or shared memory
> locks, etc., there is no need to grant any permissions on those files to
> other users. All directories are already created with 0700 permissions, so
> we should create all files with 0600 permissions.
> 
CC: stable@dpdk.org
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
>  lib/librte_eal/freebsd/eal/eal.c               | 2 +-
>  lib/librte_eal/freebsd/eal/eal_hugepage_info.c | 2 +-
>  lib/librte_eal/linux/eal/eal.c                 | 2 +-
>  lib/librte_eal/linux/eal/eal_hugepage_info.c   | 2 +-
>  lib/librte_eal/linux/eal/eal_memory.c          | 2 +-
>  5 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/lib/librte_eal/freebsd/eal/eal.c b/lib/librte_eal/freebsd/eal/eal.c
> index 790c6afa7..c6ac9028f 100644
> --- a/lib/librte_eal/freebsd/eal/eal.c
> +++ b/lib/librte_eal/freebsd/eal/eal.c
> @@ -227,7 +227,7 @@ rte_eal_config_create(void)
>  		return;
>  
>  	if (mem_cfg_fd < 0){
> -		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0660);
> +		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0600);
>  		if (mem_cfg_fd < 0)
>  			rte_panic("Cannot open '%s' for rte_mem_config\n", pathname);
>  	}
> diff --git a/lib/librte_eal/freebsd/eal/eal_hugepage_info.c b/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
> index 1e8f5df23..32012e142 100644
> --- a/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
> +++ b/lib/librte_eal/freebsd/eal/eal_hugepage_info.c
> @@ -22,7 +22,7 @@ static void *
>  map_shared_memory(const char *filename, const size_t mem_size, int flags)
>  {
>  	void *retval;
> -	int fd = open(filename, flags, 0666);
> +	int fd = open(filename, flags, 0600);
>  	if (fd < 0)
>  		return NULL;
>  	if (ftruncate(fd, mem_size) < 0) {
> diff --git a/lib/librte_eal/linux/eal/eal.c b/lib/librte_eal/linux/eal/eal.c
> index 75ed0cf10..f7ae62d7b 100644
> --- a/lib/librte_eal/linux/eal/eal.c
> +++ b/lib/librte_eal/linux/eal/eal.c
> @@ -320,7 +320,7 @@ rte_eal_config_create(void)
>  		rte_mem_cfg_addr = NULL;
>  
>  	if (mem_cfg_fd < 0){
> -		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0660);
> +		mem_cfg_fd = open(pathname, O_RDWR | O_CREAT, 0600);
>  		if (mem_cfg_fd < 0)
>  			rte_panic("Cannot open '%s' for rte_mem_config\n", pathname);
>  	}
> diff --git a/lib/librte_eal/linux/eal/eal_hugepage_info.c b/lib/librte_eal/linux/eal/eal_hugepage_info.c
> index ce3e99256..91a4fede7 100644
> --- a/lib/librte_eal/linux/eal/eal_hugepage_info.c
> +++ b/lib/librte_eal/linux/eal/eal_hugepage_info.c
> @@ -45,7 +45,7 @@ static void *
>  map_shared_memory(const char *filename, const size_t mem_size, int flags)
>  {
>  	void *retval;
> -	int fd = open(filename, flags, 0666);
> +	int fd = open(filename, flags, 0600);
>  	if (fd < 0)
>  		return NULL;
>  	if (ftruncate(fd, mem_size) < 0) {
> diff --git a/lib/librte_eal/linux/eal/eal_memory.c b/lib/librte_eal/linux/eal/eal_memory.c
> index 39cd359a0..319352521 100644
> --- a/lib/librte_eal/linux/eal/eal_memory.c
> +++ b/lib/librte_eal/linux/eal/eal_memory.c
> @@ -541,7 +541,7 @@ create_shared_memory(const char *filename, const size_t mem_size)
>  		return retval;
>  	}
>  
> -	fd = open(filename, O_CREAT | O_RDWR, 0666);
> +	fd = open(filename, O_CREAT | O_RDWR, 0600);
>  	if (fd < 0)
>  		return NULL;
>  	if (ftruncate(fd, mem_size) < 0) {
> -- 
> 2.20.1
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] eal: tighten permissions on shared memory files
  2019-04-03 16:02 ` Bruce Richardson
@ 2019-04-04 17:51   ` Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2019-04-04 17:51 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, anatoly.burakov, stable

03/04/2019 18:02, Bruce Richardson:
> Adding stable@dpdk.org since this is suitable for backporting
> 
> On Wed, Apr 03, 2019 at 05:00:34PM +0100, Bruce Richardson wrote:
> > When creating files on disk, e.g. for EAL configuration or shared memory
> > locks, etc., there is no need to grant any permissions on those files to
> > other users. All directories are already created with 0700 permissions, so
> > we should create all files with 0600 permissions.
> > 
> CC: stable@dpdk.org
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>

It means the primary and secondary processes must have the same owner.
Is it worth to document it?
I feel the mask could be an EAL option.

Anyway the directories have already a fixed tight mask, so
Applied, thanks

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-04-04 17:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-03 16:00 [PATCH] eal: tighten permissions on shared memory files Bruce Richardson
2019-04-03 16:02 ` Bruce Richardson
2019-04-04 17:51   ` Thomas Monjalon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.