From: Christian Brauner Date: Fri, 15 Jun 2018 09:42:18 +0000 (+0200) Subject: coverity: #1425793 X-Git-Tag: lxc-2.0.10~85 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a0a4d2ce0d5115e7d287b4426bbca5b5787d5089;p=thirdparty%2Flxc.git coverity: #1425793 Unchecked return value Signed-off-by: Christian Brauner --- diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c index d5715b67d..e5132eee0 100644 --- a/src/lxc/lxccontainer.c +++ b/src/lxc/lxccontainer.c @@ -3118,14 +3118,20 @@ static bool add_rdepends(struct lxc_container *c, struct lxc_container *c0) bool should_default_to_snapshot(struct lxc_container *c0, struct lxc_container *c1) { + int ret; size_t l0 = strlen(c0->config_path) + strlen(c0->name) + 2; size_t l1 = strlen(c1->config_path) + strlen(c1->name) + 2; char *p0 = alloca(l0 + 1); char *p1 = alloca(l1 + 1); char *rootfs = c0->lxc_conf->rootfs.path; - snprintf(p0, l0, "%s/%s", c0->config_path, c0->name); - snprintf(p1, l1, "%s/%s", c1->config_path, c1->name); + ret = snprintf(p0, l0, "%s/%s", c0->config_path, c0->name); + if (ret < 0 || ret >= l0) + return false; + + ret = snprintf(p1, l1, "%s/%s", c1->config_path, c1->name); + if (ret < 0 || ret >= l1) + return false; if (!is_btrfs_fs(p0) || !is_btrfs_fs(p1)) return false;