168 |
} |
} |
169 |
|
|
170 |
static int |
static int |
171 |
grub_rescue_print_disks (const char *name) |
grub_rescue_print_devices (const char *name) |
172 |
{ |
{ |
173 |
grub_device_t dev; |
grub_printf ("(%s) ", name); |
|
auto int print_partition (grub_disk_t disk, const grub_partition_t p); |
|
|
|
|
|
int print_partition (grub_disk_t disk __attribute__ ((unused)), |
|
|
const grub_partition_t p) |
|
|
{ |
|
|
char *pname = grub_partition_get_name (p); |
|
|
|
|
|
if (pname) |
|
|
{ |
|
|
grub_printf ("(%s,%s) ", name, pname); |
|
|
grub_free (pname); |
|
|
} |
|
|
|
|
|
return 0; |
|
|
} |
|
|
|
|
|
dev = grub_device_open (name); |
|
|
grub_errno = GRUB_ERR_NONE; |
|
|
|
|
|
if (dev) |
|
|
{ |
|
|
grub_printf ("(%s) ", name); |
|
|
|
|
|
if (dev->disk && dev->disk->has_partitions) |
|
|
{ |
|
|
grub_partition_iterate (dev->disk, print_partition); |
|
|
grub_errno = GRUB_ERR_NONE; |
|
|
} |
|
|
|
|
|
grub_device_close (dev); |
|
|
} |
|
174 |
|
|
175 |
return 0; |
return 0; |
176 |
} |
} |
189 |
{ |
{ |
190 |
if (argc < 1) |
if (argc < 1) |
191 |
{ |
{ |
192 |
grub_disk_dev_iterate (grub_rescue_print_disks); |
grub_device_iterate (grub_rescue_print_devices); |
193 |
grub_putchar ('\n'); |
grub_putchar ('\n'); |
194 |
grub_refresh (); |
grub_refresh (); |
195 |
} |
} |