* (minus the slice number).
*/
static int
-is_shorthand_path(const char *arg, char *path,
+is_shorthand_path(const char *arg, char *path, size_t path_size,
struct stat64 *statbuf, boolean_t *wholedisk)
{
int error;
- error = zfs_resolve_shortname(arg, path, MAXPATHLEN);
+ error = zfs_resolve_shortname(arg, path, path_size);
if (error == 0) {
*wholedisk = is_whole_disk(path);
if (*wholedisk || (stat64(path, statbuf) == 0))
return (0);
}
- strlcpy(path, arg, sizeof (path));
+ strlcpy(path, arg, path_size);
memset(statbuf, 0, sizeof (*statbuf));
*wholedisk = B_FALSE;
}
/* After is_whole_disk() check restore original passed path */
- strlcpy(path, arg, MAXPATHLEN);
+ strlcpy(path, arg, sizeof (path));
} else {
- err = is_shorthand_path(arg, path, &statbuf, &wholedisk);
+ err = is_shorthand_path(arg, path, sizeof (path),
+ &statbuf, &wholedisk);
if (err != 0) {
/*
* If we got ENOENT, then the user gave us
}
if (ashift > 0)
- nvlist_add_uint64(vdev, ZPOOL_CONFIG_ASHIFT, ashift);
+ (void) nvlist_add_uint64(vdev, ZPOOL_CONFIG_ASHIFT, ashift);
return (vdev);
}