blkid_cache cache = NULL;
char **devices = NULL;
char *search_type = NULL, *search_value = NULL;
- char *read = NULL;
+ char *read = NULL, *hint = NULL;
int fltr_usage = 0;
char **fltr_type = NULL;
int fltr_flag = BLKID_FLTR_ONLYIN;
{ "label", required_argument, NULL, 'L' },
{ "uuid", required_argument, NULL, 'U' },
{ "probe", no_argument, NULL, 'p' },
+ { "hint", required_argument, NULL, 'H' },
{ "info", no_argument, NULL, 'i' },
{ "size", required_argument, NULL, 'S' },
{ "offset", required_argument, NULL, 'O' },
strutils_set_exitcode(BLKID_EXIT_OTHER);
while ((c = getopt_long (argc, argv,
- "c:DdghilL:n:ko:O:ps:S:t:u:U:w:Vv", longopts, NULL)) != -1) {
+ "c:DdgH:hilL:n:ko:O:ps:S:t:u:U:w:Vv", longopts, NULL)) != -1) {
err_exclusive_options(c, NULL, excl, excl_st);
case 'D':
ctl.no_part_details = 1;
break;
+ case 'H':
+ hint = optarg;
+ break;
case 'L':
ctl.eval = 1;
search_value = xstrdup(optarg);
pr = blkid_new_probe();
if (!pr)
goto exit;
+ if (hint && blkid_probe_set_hint(pr, hint, 0) != 0) {
+ warn(_("Failed to use probing hint: %s"), hint);
+ goto exit;
+ }
if (ctl.lowprobe_superblocks) {
blkid_probe_set_superblocks_flags(pr,