diff mbox series

[BlueZ,v2] mesh: Fix check for mkdir return value in keyring.c

Message ID 20201129062202.91034-1-inga.stotland@intel.com
State New
Headers show
Series [BlueZ,v2] mesh: Fix check for mkdir return value in keyring.c | expand

Commit Message

Inga Stotland Nov. 29, 2020, 6:22 a.m. UTC
Remove check for mkdir() return value, since checking for zero does not
cover "already exists" condition and adding extra check for errno value
unnecessarily complicates the code. If mkdir() fails due to any reason
than "already exists", the subsequent call to open() fails and the
error is detected and corectly processed by the code.
---
 mesh/keyring.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

Comments

Steve Brown Nov. 29, 2020, 9:44 a.m. UTC | #1
Hi Inga,

Patch works for me.

Thanks,

Steve

On Sat, 2020-11-28 at 22:22 -0800, Inga Stotland wrote:
> Remove check for mkdir() return value, since checking for zero does
> not
> cover "already exists" condition and adding extra check for errno
> value
> unnecessarily complicates the code. If mkdir() fails due to any
> reason
> than "already exists", the subsequent call to open() fails and the
> error is detected and corectly processed by the code.
> ---
>  mesh/keyring.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/mesh/keyring.c b/mesh/keyring.c
> index 1ef4fc3ef..0b74ee914 100644
> --- a/mesh/keyring.c
> +++ b/mesh/keyring.c
> @@ -51,8 +51,7 @@ bool keyring_put_net_key(struct mesh_node *node,
> uint16_t net_idx,
>  
>         snprintf(key_file, PATH_MAX, "%s%s", node_path, net_key_dir);
>  
> -       if (!mkdir(key_file, 0755))
> -               return false;
> +       mkdir(key_file, 0755);
>  
>         snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path,
> net_key_dir,
>                                                                 net_i
> dx);
> @@ -88,8 +87,7 @@ bool keyring_put_app_key(struct mesh_node *node,
> uint16_t app_idx,
>  
>         snprintf(key_file, PATH_MAX, "%s%s", node_path, app_key_dir);
>  
> -       if (!mkdir(key_file, 0755))
> -               return false;
> +       mkdir(key_file, 0755);
>  
>         snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path,
> app_key_dir,
>                                                                 app_i
> dx);
> @@ -207,8 +205,7 @@ bool keyring_put_remote_dev_key(struct mesh_node
> *node, uint16_t unicast,
>  
>         snprintf(key_file, PATH_MAX, "%s%s", node_path, dev_key_dir);
>  
> -       if (!mkdir(key_file, 0755))
> -               return false;
> +       mkdir(key_file, 0755);
>  
>         for (i = 0; i < count; i++) {
>                 snprintf(key_file, PATH_MAX, "%s%s/%4.4x", node_path,
Brian Gix Dec. 4, 2020, 6:12 p.m. UTC | #2
Applied
On Sat, 2020-11-28 at 22:22 -0800, Inga Stotland wrote:
> Remove check for mkdir() return value, since checking for zero does not

> cover "already exists" condition and adding extra check for errno value

> unnecessarily complicates the code. If mkdir() fails due to any reason

> than "already exists", the subsequent call to open() fails and the

> error is detected and corectly processed by the code.

> ---

>  mesh/keyring.c | 9 +++------

>  1 file changed, 3 insertions(+), 6 deletions(-)

> 

> diff --git a/mesh/keyring.c b/mesh/keyring.c

> index 1ef4fc3ef..0b74ee914 100644

> --- a/mesh/keyring.c

> +++ b/mesh/keyring.c

> @@ -51,8 +51,7 @@ bool keyring_put_net_key(struct mesh_node *node, uint16_t net_idx,

>  

>  	snprintf(key_file, PATH_MAX, "%s%s", node_path, net_key_dir);

>  

> -	if (!mkdir(key_file, 0755))

> -		return false;

> +	mkdir(key_file, 0755);

>  

>  	snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path, net_key_dir,

>  								net_idx);

> @@ -88,8 +87,7 @@ bool keyring_put_app_key(struct mesh_node *node, uint16_t app_idx,

>  

>  	snprintf(key_file, PATH_MAX, "%s%s", node_path, app_key_dir);

>  

> -	if (!mkdir(key_file, 0755))

> -		return false;

> +	mkdir(key_file, 0755);

>  

>  	snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path, app_key_dir,

>  								app_idx);

> @@ -207,8 +205,7 @@ bool keyring_put_remote_dev_key(struct mesh_node *node, uint16_t unicast,

>  

>  	snprintf(key_file, PATH_MAX, "%s%s", node_path, dev_key_dir);

>  

> -	if (!mkdir(key_file, 0755))

> -		return false;

> +	mkdir(key_file, 0755);

>  

>  	for (i = 0; i < count; i++) {

>  		snprintf(key_file, PATH_MAX, "%s%s/%4.4x", node_path,
diff mbox series

Patch

diff --git a/mesh/keyring.c b/mesh/keyring.c
index 1ef4fc3ef..0b74ee914 100644
--- a/mesh/keyring.c
+++ b/mesh/keyring.c
@@ -51,8 +51,7 @@  bool keyring_put_net_key(struct mesh_node *node, uint16_t net_idx,
 
 	snprintf(key_file, PATH_MAX, "%s%s", node_path, net_key_dir);
 
-	if (!mkdir(key_file, 0755))
-		return false;
+	mkdir(key_file, 0755);
 
 	snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path, net_key_dir,
 								net_idx);
@@ -88,8 +87,7 @@  bool keyring_put_app_key(struct mesh_node *node, uint16_t app_idx,
 
 	snprintf(key_file, PATH_MAX, "%s%s", node_path, app_key_dir);
 
-	if (!mkdir(key_file, 0755))
-		return false;
+	mkdir(key_file, 0755);
 
 	snprintf(key_file, PATH_MAX, "%s%s/%3.3x", node_path, app_key_dir,
 								app_idx);
@@ -207,8 +205,7 @@  bool keyring_put_remote_dev_key(struct mesh_node *node, uint16_t unicast,
 
 	snprintf(key_file, PATH_MAX, "%s%s", node_path, dev_key_dir);
 
-	if (!mkdir(key_file, 0755))
-		return false;
+	mkdir(key_file, 0755);
 
 	for (i = 0; i < count; i++) {
 		snprintf(key_file, PATH_MAX, "%s%s/%4.4x", node_path,