diff options
-rw-r--r-- | discover/device-handler.c | 35 | ||||
-rw-r--r-- | discover/device-handler.h | 2 | ||||
-rw-r--r-- | discover/udev.c | 3 |
3 files changed, 9 insertions, 31 deletions
diff --git a/discover/device-handler.c b/discover/device-handler.c index 11fb115..7a84302 100644 --- a/discover/device-handler.c +++ b/discover/device-handler.c @@ -86,11 +86,6 @@ struct discover_boot_option *discover_boot_option_create( return opt; } -static int device_match_path(struct discover_device *dev, const char *path) -{ - return dev->device_path && !strcmp(dev->device_path, path); -} - static int device_match_uuid(struct discover_device *dev, const char *uuid) { return dev->uuid && !strcmp(dev->uuid, uuid); @@ -130,26 +125,10 @@ static struct discover_device *device_lookup( struct discover_device *device_lookup_by_name(struct device_handler *handler, const char *name) { - struct discover_device *dev; - char *path; - - if (strncmp(name, "/dev/", strlen("/dev/"))) - path = talloc_asprintf(NULL, "/dev/%s", name); - else - path = talloc_strdup(NULL, name); - - dev = device_lookup_by_path(handler, path); + if (!strncmp(name, "/dev/", strlen("/dev/"))) + name += strlen("/dev/"); - talloc_free(path); - - return dev; -} - -struct discover_device *device_lookup_by_path( - struct device_handler *device_handler, - const char *path) -{ - return device_lookup(device_handler, device_match_path, path); + return device_lookup_by_id(handler, name); } struct discover_device *device_lookup_by_uuid( @@ -331,7 +310,7 @@ static struct discover_device *discover_device_create( struct event *event) { struct discover_device *dev; - const char *devname; + const char *devnode; dev = find_device(handler, event->device); if (dev) @@ -341,9 +320,9 @@ static struct discover_device *discover_device_create( dev->device = talloc_zero(dev, struct device); list_init(&dev->boot_options); - devname = event_get_param(ctx->event, "DEVNAME"); - if (devname) - dev->device_path = talloc_strdup(dev, devname); + devnode = event_get_param(ctx->event, "node"); + if (devnode) + dev->device_path = talloc_strdup(dev, devnode); dev->device->id = talloc_strdup(dev, event->device); dev->device->type = event_device_type(dev->device, event); diff --git a/discover/device-handler.h b/discover/device-handler.h index 0cd9c59..e71212c 100644 --- a/discover/device-handler.h +++ b/discover/device-handler.h @@ -78,8 +78,6 @@ int device_handler_event(struct device_handler *handler, struct event *event); struct discover_device *device_lookup_by_name(struct device_handler *handler, const char *name); -struct discover_device *device_lookup_by_path(struct device_handler *handler, - const char *path); struct discover_device *device_lookup_by_uuid(struct device_handler *handler, const char *uuid); struct discover_device *device_lookup_by_label(struct device_handler *handler, diff --git a/discover/udev.c b/discover/udev.c index d13ced7..f9eb26d 100644 --- a/discover/udev.c +++ b/discover/udev.c @@ -125,7 +125,8 @@ static int udev_handle_dev_action(struct udev_device *dev, const char *action) event->n_params = 0; event->params = NULL; - event_set_param(event, "DEVNAME", devnode); + event_set_param(event, "path", devpath); + event_set_param(event, "node", devnode); event_set_param(event, "type", devtype); udev_setup_event_params(dev, event); |