summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--discover/device-handler.c35
-rw-r--r--discover/device-handler.h2
-rw-r--r--discover/udev.c3
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);
OpenPOWER on IntegriCloud