X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev%2Fudevadm-info.c;h=745b4fdb7b9aad3f94194c7df4485896ec4bcae6;hb=b76ad2e537e8672ace442eb27439521c9b107b09;hp=4da9881dbe6593e104a061b8035294188caf360b;hpb=62b9dfb62255c5b07f1356eee423aff18d6addaa;p=elogind.git diff --git a/udev/udevadm-info.c b/udev/udevadm-info.c index 4da9881db..745b4fdb7 100644 --- a/udev/udevadm-info.c +++ b/udev/udevadm-info.c @@ -60,7 +60,7 @@ static void print_all_attributes(struct udev_device *device, const char *key) if (S_ISLNK(statbuf.st_mode)) continue; - value = udev_device_get_attr_value(device, dent->d_name); + value = udev_device_get_sysattr_value(device, dent->d_name); if (value == NULL) continue; dbg(udev, "attr '%s'='%s'(%zi)\n", dent->d_name, value, len); @@ -130,23 +130,26 @@ static int print_device_chain(struct udev_device *device) static void print_record(struct udev_device *device) { size_t len; + const char *str; int i; struct udev_list_entry *list_entry; printf("P: %s\n", udev_device_get_devpath(device)); len = strlen(udev_get_dev_path(udev_device_get_udev(device))); - printf("N: %s\n", &udev_device_get_devnode(device)[len+1]); + str = udev_device_get_devnode(device); + if (str != NULL) + printf("N: %s\n", &str[len+1]); - i = device_get_devlink_priority(device); + i = udev_device_get_devlink_priority(device); if (i != 0) printf("L: %i\n", i); - i = device_get_num_fake_partitions(device); + i = udev_device_get_num_fake_partitions(device); if (i != 0) printf("A:%u\n", i); - i = device_get_ignore_remove(device); + i = udev_device_get_ignore_remove(device); if (i != 0) printf("R:%u\n", i); @@ -159,7 +162,6 @@ static void print_record(struct udev_device *device) printf("E: %s=%s\n", udev_list_entry_get_name(list_entry), udev_list_entry_get_value(list_entry)); - printf("\n"); } @@ -217,17 +219,17 @@ int udevadm_info(struct udev *udev, int argc, char *argv[]) int rc = 0; static const struct option options[] = { - { "name", 1, NULL, 'n' }, - { "path", 1, NULL, 'p' }, - { "query", 1, NULL, 'q' }, - { "attribute-walk", 0, NULL, 'a' }, - { "export-db", 0, NULL, 'e' }, - { "root", 0, NULL, 'r' }, - { "device-id-of-file", 1, NULL, 'd' }, - { "export", 0, NULL, 'x' }, - { "export-prefix", 1, NULL, 'P' }, - { "version", 0, NULL, 1 }, /* -V outputs braindead format */ - { "help", 0, NULL, 'h' }, + { "name", required_argument, NULL, 'n' }, + { "path", required_argument, NULL, 'p' }, + { "query", required_argument, NULL, 'q' }, + { "attribute-walk", no_argument, NULL, 'a' }, + { "export-db", no_argument, NULL, 'e' }, + { "root", no_argument, NULL, 'r' }, + { "device-id-of-file", required_argument, NULL, 'd' }, + { "export", no_argument, NULL, 'x' }, + { "export-prefix", required_argument, NULL, 'P' }, + { "version", no_argument, NULL, 'V' }, + { "help", no_argument, NULL, 'h' }, {} }; @@ -364,11 +366,8 @@ int udevadm_info(struct udev *udev, int argc, char *argv[]) case 'P': export_prefix = optarg; break; - case 1: - printf("%s\n", VERSION); - goto exit; case 'V': - printf("udevinfo, version %s\n", VERSION); + printf("%s\n", VERSION); goto exit; case 'h': printf("Usage: udevadm info OPTIONS\n"