return -1;
}
- strncpy(delta, new->dest, lastslashidx + 1);
- strncpy(delta + lastslashidx, "delta0", sizeof("delta0") - 1);
- delta[lastslashidx + sizeof("delta0")] = '\0';
+ memcpy(delta, new->dest, lastslashidx + 1);
+ memcpy(delta + lastslashidx, "delta0", sizeof("delta0") - 1);
+ delta[lastslashidx + sizeof("delta0") - 1] = '\0';
ret = mkdir(delta, 0755);
if (ret < 0 && errno != EEXIST) {
return -1;
}
- strncpy(work, new->dest, lastslashidx + 1);
- strncpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
- work[lastslashidx + sizeof("olwork")] = '\0';
+ memcpy(work, new->dest, lastslashidx + 1);
+ memcpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
+ work[lastslashidx + sizeof("olwork") - 1] = '\0';
- if (mkdir(work, 0755) < 0) {
- SYSERROR("error: mkdir %s", work);
+ ret = mkdir(work, 0755);
+ if (ret < 0) {
+ SYSERROR("Failed to create directory \"%s\"", work);
free(delta);
free(work);
return -1;
return -1;
}
- strncpy(work, ndelta, lastslashidx + 1);
- strncpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
- work[lastslashidx + sizeof("olwork")] = '\0';
+ memcpy(work, ndelta, lastslashidx + 1);
+ memcpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
+ work[lastslashidx + sizeof("olwork") - 1] = '\0';
ret = mkdir(work, 0755);
if (ret < 0 && errno != EEXIST) {
return -1;
}
- strncpy(delta, dest, len);
- strncpy(delta + len - 6, "delta0", sizeof("delta0") - 1);
+ memcpy(delta, dest, len);
+ memcpy(delta + len - 6, "delta0", sizeof("delta0") - 1);
delta[len + sizeof("delta0")] = '\0';
ret = mkdir_p(delta, 0755);
return -22;
}
- strncpy(work, upper, lastslashidx + 1);
- strncpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
- work[lastslashidx + sizeof("olwork")] = '\0';
+ memcpy(work, upper, lastslashidx + 1);
+ memcpy(work + lastslashidx, "olwork", sizeof("olwork") - 1);
+ work[lastslashidx + sizeof("olwork") - 1] = '\0';
ret = parse_mntopts(bdev->mntopts, &mntflags, &mntdata);
if (ret < 0) {
char lxcpath[MAXPATHLEN];
char **opts;
int ret;
- size_t arrlen, dirlen, i, len, rootfslen;
+ size_t arrlen, i, len, rootfslen;
int fret = -1;
+ size_t dirlen = 0;
char *rootfs_dir = NULL, *rootfs_path = NULL, *upperdir = NULL,
*workdir = NULL;
}
if (rootfs_path) {
- ret =
- snprintf(lxcpath, MAXPATHLEN, "%s/%s", lxc_path, lxc_name);
+ ret = snprintf(lxcpath, MAXPATHLEN, "%s/%s", lxc_path, lxc_name);
if (ret < 0 || ret >= MAXPATHLEN)
goto err;