From: Stephen Hemminger <stephen@networkplumber.org>
To: netdev@vger.kernel.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH iproute2 v2 5/9] namespace: fix warning snprintf buffer
Date: Tue, 20 Mar 2018 13:29:05 -0700 [thread overview]
Message-ID: <20180320202909.22166-6-stephen@networkplumber.org> (raw)
In-Reply-To: <20180320202909.22166-1-stephen@networkplumber.org>
It is possible that user could request really long namespace
name and overrun the path buffer.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
lib/namespace.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/namespace.c b/lib/namespace.c
index 6f3356d0fa08..682634028587 100644
--- a/lib/namespace.c
+++ b/lib/namespace.c
@@ -23,7 +23,8 @@ static void bind_etc(const char *name)
struct dirent *entry;
DIR *dir;
- snprintf(etc_netns_path, sizeof(etc_netns_path), "%s/%s", NETNS_ETC_DIR, name);
+ snprintf(etc_netns_path, sizeof(etc_netns_path), "%s/%s",
+ NETNS_ETC_DIR, name);
dir = opendir(etc_netns_path);
if (!dir)
return;
@@ -33,7 +34,8 @@ static void bind_etc(const char *name)
continue;
if (strcmp(entry->d_name, "..") == 0)
continue;
- snprintf(netns_name, sizeof(netns_name), "%s/%s", etc_netns_path, entry->d_name);
+ snprintf(netns_name, sizeof(netns_name),
+ "%s/%s", etc_netns_path, entry->d_name);
snprintf(etc_name, sizeof(etc_name), "/etc/%s", entry->d_name);
if (mount(netns_name, etc_name, "none", MS_BIND, NULL) < 0) {
fprintf(stderr, "Bind %s -> %s failed: %s\n",
--
2.16.2
next prev parent reply other threads:[~2018-03-20 20:29 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-20 20:29 [PATCH iproute2 v2 0/9] gcc-8 warning fixes Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 1/9] bridge: avoid snprint truncation on time Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 2/9] pedit: fix strncpy warning Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 3/9] ip: use strlcpy() to avoid truncation Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 4/9] tunnel: use strlcpy to avoid strncpy warnings Stephen Hemminger
2018-03-20 20:29 ` Stephen Hemminger [this message]
2018-03-21 9:21 ` [PATCH iproute2 v2 5/9] namespace: fix warning snprintf buffer Sergei Shtylyov
2018-03-20 20:29 ` [PATCH iproute2 v2 6/9] tc_class: fix snprintf warning Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 7/9] ematch: fix possible snprintf overflow Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 8/9] misc: avoid snprintf warnings in ss and nstat Stephen Hemminger
2018-03-20 20:29 ` [PATCH iproute2 v2 9/9] bpf: avoid compiler warnings about strncpy Stephen Hemminger
2018-03-20 21:12 ` Daniel Borkmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180320202909.22166-6-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox