- unsigned int i, existing_device = 0;
-
- /* do we already have this device? */
- for (i = 0; i < handler->n_devices; i++) {
- if (ctx->device == handler->devices[i]) {
- existing_device = 1;
- break;
- }
- }
-
- /* if not already present, add the device to the handler's array */
- if (!existing_device) {
- handler->n_devices++;
- handler->devices = talloc_realloc(handler, handler->devices,
- struct discover_device *, handler->n_devices);
- handler->devices[handler->n_devices - 1] = dev;
- talloc_steal(handler, dev);
-
- discover_server_notify_device_add(handler->server, dev->device);
-
- /* this new device might be able to resolve existing boot
- * options */
- pb_log("New device %s, processing queue\n", dev->device->id);
- process_boot_option_queue(handler);
- }