root_hash = argv[5];
options = mangle_none(argc > 6 ? argv[6] : NULL);
+ if (!filename_is_valid(volume))
+ return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Volume name '%s' is not valid.", volume);
+
r = unhexmem(root_hash, SIZE_MAX, &m, &l);
if (r < 0)
return log_error_errno(r, "Failed to parse root hash: %m");
volume = argv[2];
+ if (!filename_is_valid(volume))
+ return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Volume name '%s' is not valid.", volume);
+
r = crypt_init_by_name(&cd, volume);
if (r == -ENODEV) {
log_info("Volume %s already inactive.", volume);