OSDN Git Service

tests: try harder to clean up scsi_debug
[android-x86/external-parted.git] / tests / print-align.c
1 #include <config.h>
2 #include <parted/parted.h>
3 #include <stdio.h>
4 #include <stdlib.h>
5
6 #include "closeout.h"
7 #include "progname.h"
8
9 int
10 main (int argc, char **argv)
11 {
12   atexit (close_stdout);
13   set_program_name (argv[0]);
14
15   if (argc != 2)
16     return EXIT_FAILURE;
17
18   char const *dev_name = argv[1];
19   PedDevice *dev = ped_device_get (dev_name);
20   if (dev == NULL)
21     return EXIT_FAILURE;
22
23   PedAlignment *pa_min = ped_device_get_minimum_alignment (dev);
24   if (pa_min)
25     printf ("minimum: %lld %lld\n", pa_min->offset, pa_min->grain_size);
26   else
27     printf ("minimum: - -\n");
28   free (pa_min);
29
30   PedAlignment *pa_opt = ped_device_get_optimum_alignment (dev);
31   if (pa_opt)
32     printf ("optimal: %lld %lld\n", pa_opt->offset, pa_opt->grain_size);
33   else
34     printf ("optimal: - -\n");
35   free (pa_opt);
36
37   PedDisk *disk = ped_disk_new (dev);
38   if (disk == NULL)
39     return EXIT_FAILURE;
40
41   PedAlignment *part_align = ped_disk_get_partition_alignment (disk);
42   if (part_align == NULL)
43     return EXIT_FAILURE;
44
45   printf ("partition alignment: %lld %lld\n",
46           part_align->offset, part_align->grain_size);
47
48   ped_device_destroy (dev);
49   return EXIT_SUCCESS;
50 }