[PATCH v2 iproute2] lnstat: fix strdup leak in -w argument parsing

Subsystems: the rest

STALE1677d

2 messages, 2 authors, 2022-02-16 · open the first message on its own page

[PATCH v2 iproute2] lnstat: fix strdup leak in -w argument parsing

From: Maxim Petrov <hidden>
Date: 2022-02-16 20:35:52

'tmp' string is copied for safe tokenizing, but it is not required after
getting all the widths in -w option. Use strdupa instead of strdup to avoid
explicit memory leak and to not trigger valgrind here.

Signed-off-by: Maxim Petrov <redacted>
---
Changes in V2:
* Use strdupa instead of strdup/free

 misc/lnstat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/misc/lnstat.c b/misc/lnstat.c
index 98904d45..d7e1d8c9 100644
--- a/misc/lnstat.c
+++ b/misc/lnstat.c
@@ -314,7 +314,7 @@ int main(int argc, char **argv)
 			sscanf(optarg, "%u", &hdr);
 			break;
 		case 'w':
-			tmp = strdup(optarg);
+			tmp = strdupa(optarg);
 			if (!tmp)
 				break;
 			i = 0;
-- 
2.25.1

Re: [PATCH v2 iproute2] lnstat: fix strdup leak in -w argument parsing

From: Stephen Hemminger <stephen@networkplumber.org>
Date: 2022-02-16 21:03:32

On Wed, 16 Feb 2022 23:35:43 +0300
Maxim Petrov [off-list ref] wrote:
quoted hunk
'tmp' string is copied for safe tokenizing, but it is not required after
getting all the widths in -w option. Use strdupa instead of strdup to avoid
explicit memory leak and to not trigger valgrind here.

Signed-off-by: Maxim Petrov <redacted>
---
Changes in V2:
* Use strdupa instead of strdup/free

 misc/lnstat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/misc/lnstat.c b/misc/lnstat.c
index 98904d45..d7e1d8c9 100644
--- a/misc/lnstat.c
+++ b/misc/lnstat.c
@@ -314,7 +314,7 @@ int main(int argc, char **argv)
 			sscanf(optarg, "%u", &hdr);
 			break;
 		case 'w':
-			tmp = strdup(optarg);
+			tmp = strdupa(optarg);
 			if (!tmp)
 				break;
 			i = 0;
I went with your earlier patch, just was asking.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help