All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chen Gang <gang.chen.5i5j@gmail.com>
To: aliguori@amazon.com, aneesh.kumar@linux.vnet.ibm.com
Cc: QEMU Developers <qemu-devel@nongnu.org>
Subject: [Qemu-devel] [PATCH] hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf()
Date: Mon, 03 Feb 2014 18:00:42 +0800	[thread overview]
Message-ID: <52EF68CA.9060604@gmail.com> (raw)

We can not assume "'path' + 'ctx->fs_root'" must be less than MAX_PATH,
so need use snprintf() instead of sprintf().

And also recommend to use ARRAY_SIZE instead of hard code macro for an
array size in snprintf().


Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
---
 hw/9pfs/virtio-9p-local.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/hw/9pfs/virtio-9p-local.c b/hw/9pfs/virtio-9p-local.c
index fc93e9e..44a0380 100644
--- a/hw/9pfs/virtio-9p-local.c
+++ b/hw/9pfs/virtio-9p-local.c
@@ -159,7 +159,7 @@ static int local_create_mapped_attr_dir(FsContext *ctx, const char *path)
     char attr_dir[PATH_MAX];
     char *tmp_path = g_strdup(path);
-    snprintf(attr_dir, PATH_MAX, "%s/%s/%s",
+    snprintf(attr_dir, ARRAY_SIZE(attr_dir), "%s/%s/%s",
              ctx->fs_root, dirname(tmp_path), VIRTFS_META_DIR);
      err = mkdir(attr_dir, 0700);
@@ -898,7 +898,8 @@ static int local_remove(FsContext *ctx, const char *path)
          * directory
          */
         if (S_ISDIR(stbuf.st_mode)) {
-            sprintf(buffer, "%s/%s/%s", ctx->fs_root, path, VIRTFS_META_DIR);
+            snprintf(buffer, ARRAY_SIZE(buffer), "%s/%s/%s",
+                     ctx->fs_root, path, VIRTFS_META_DIR);
             err = remove(buffer);
             if (err < 0 && errno != ENOENT) {
                 /*
@@ -1033,8 +1034,8 @@ static int local_unlinkat(FsContext *ctx, V9fsPath *dir,
              * If directory remove .virtfs_metadata contained in the
              * directory
              */
-            sprintf(buffer, "%s/%s/%s", ctx->fs_root,
-                    fullname.data, VIRTFS_META_DIR);
+            snprintf(buffer, ARRAY_SIZE(buffer), "%s/%s/%s", ctx->fs_root,
+                     fullname.data, VIRTFS_META_DIR);
             ret = remove(buffer);
             if (ret < 0 && errno != ENOENT) {
                 /*
-- 
1.7.11.7

             reply	other threads:[~2014-02-03 10:00 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-03 10:00 Chen Gang [this message]
2014-02-03 10:34 ` [Qemu-devel] [PATCH] hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf() Daniel P. Berrange
2014-02-03 10:39   ` Chen Gang
2014-02-04 11:02     ` Chen Gang
2014-02-04 11:06       ` Daniel P. Berrange
2014-02-04 11:22         ` Chen Gang
2014-02-04 16:18           ` Aneesh Kumar K.V
2014-02-04 23:44             ` Chen Gang
2014-02-15  9:21               ` Chen Gang
2014-02-23  4:48                 ` [Qemu-devel] [PATCH] hw/9pfs: use g_strdup_printf() instead of PATH_MAX limitation Chen Gang
2014-02-23  5:18                   ` Chen Gang
2014-02-24  9:22                   ` Markus Armbruster
2014-02-24 11:16                     ` Gang Chen
2014-02-24 12:52                       ` Markus Armbruster
2014-02-27 23:35                         ` Chen Gang
2014-03-01 17:33                           ` [Qemu-devel] [PATCH 0/3] hw/9pfs: fix 3 issues which related with path string Chen Gang
2014-03-01 17:34                             ` [Qemu-devel] [PATCH 1/3] hw/9pfs/virtio-9p-local.c: move v9fs_string_free() to below "err_out:" Chen Gang
2014-03-01 17:35                               ` [Qemu-devel] [PATCH 2/3] hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf() Chen Gang
2014-03-01 17:36                                 ` [Qemu-devel] [PATCH 3/3] hw/9pfs: use g_strdup_printf() instead of PATH_MAX limitation Chen Gang
2014-03-03  8:34                                   ` Markus Armbruster
2014-03-03 10:51                                     ` Chen Gang
2014-03-03 16:22                                   ` Aneesh Kumar K.V
2014-03-03 19:29                                     ` Aneesh Kumar K.V
2014-03-04  0:27                                       ` Chen Gang
2014-03-03  8:34                                 ` [Qemu-devel] [PATCH 2/3] hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf() Markus Armbruster
2014-03-03 10:54                                   ` Chen Gang
2014-03-03 14:42                                     ` Markus Armbruster
2014-03-04  0:38                                       ` Chen Gang
2014-03-03 15:33                                     ` Aneesh Kumar K.V
2014-03-03 15:33                                 ` Aneesh Kumar K.V
2014-03-03 15:29                               ` [Qemu-devel] [PATCH 1/3] hw/9pfs/virtio-9p-local.c: move v9fs_string_free() to below "err_out:" Aneesh Kumar K.V
2014-03-04  0:11                                 ` Chen Gang
2014-03-03 17:43                             ` [Qemu-devel] [PATCH 0/3] hw/9pfs: fix 3 issues which related with path string Eric Blake
2014-03-04  0:59                               ` Chen Gang
2014-02-04 13:09         ` [Qemu-devel] [PATCH] hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf() Eric Blake
2014-02-04 12:25       ` Markus Armbruster
2014-02-04 13:12         ` Eric Blake
2014-02-04 13:43           ` Chen Gang

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=52EF68CA.9060604@gmail.com \
    --to=gang.chen.5i5j@gmail.com \
    --cc=aliguori@amazon.com \
    --cc=aneesh.kumar@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.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 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.