[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v2 06/15] sheepdog: Don't truncate long VDI name in
From: |
Markus Armbruster |
Subject: |
[Qemu-block] [PATCH v2 06/15] sheepdog: Don't truncate long VDI name in _open(), _create() |
Date: |
Mon, 6 Mar 2017 20:00:40 +0100 |
sd_parse_uri() truncates long VDI names silently. Reject them
instead.
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
---
block/sheepdog.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/block/sheepdog.c b/block/sheepdog.c
index d3d3731..fed7264 100644
--- a/block/sheepdog.c
+++ b/block/sheepdog.c
@@ -985,7 +985,10 @@ static int sd_parse_uri(BDRVSheepdogState *s, const char
*filename,
ret = -EINVAL;
goto out;
}
- pstrcpy(vdi, SD_MAX_VDI_LEN, uri->path + 1);
+ if (g_strlcpy(vdi, uri->path + 1, SD_MAX_VDI_LEN) >= SD_MAX_VDI_LEN) {
+ ret = -EINVAL;
+ goto out;
+ }
qp = query_params_parse(uri->query);
if (qp->n > 1 || (s->is_unix && !qp->n) || (!s->is_unix && qp->n)) {
--
2.7.4
- [Qemu-block] [PATCH v2 00/15] block: A bunch of fixes for Sheepdog and Gluster, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 04/15] sheepdog: Mark sd_snapshot_delete() lossage FIXME, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 02/15] sheepdog: Fix error handling in sd_snapshot_delete(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 03/15] sheepdog: Fix error handling sd_create(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 01/15] sheepdog: Defuse time bomb in sd_open() error handling, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 08/15] sheepdog: Use SocketAddress and socket_connect(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 10/15] gluster: Drop assumptions on SocketTransport names, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 06/15] sheepdog: Don't truncate long VDI name in _open(), _create(),
Markus Armbruster <=
- [Qemu-block] [PATCH v2 05/15] sheepdog: Fix snapshot ID parsing in _open(), _create, _goto(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 12/15] gluster: Plug memory leaks in qemu_gluster_parse_json(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 07/15] sheepdog: Report errors in pseudo-filename more usefully, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 13/15] qapi-schema: Rename GlusterServer to SocketAddressFlat, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 09/15] sheepdog: Implement bdrv_parse_filename(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 11/15] gluster: Don't duplicate qapi-util.c's qapi_enum_parse(), Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 15/15] sheepdog: Support blockdev-add, Markus Armbruster, 2017/03/06
- [Qemu-block] [PATCH v2 14/15] qapi-schema: Rename SocketAddressFlat's variant tcp to inet, Markus Armbruster, 2017/03/06
- Re: [Qemu-block] [PATCH v2 00/15] block: A bunch of fixes for Sheepdog and Gluster, Kevin Wolf, 2017/03/07