return handler;
}
-static void device_handler_reinit(struct device_handler *handler)
+void device_handler_reinit(struct device_handler *handler)
{
struct discover_boot_option *opt, *tmp;
unsigned int i;
void device_handler_cancel_default(struct device_handler *handler);
void device_handler_update_config(struct device_handler *handler,
struct config *config);
+void device_handler_reinit(struct device_handler *handler);
int device_request_write(struct discover_device *dev, bool *release);
void device_release_write(struct discover_device *dev, bool release);
device_handler_cancel_default(client->server->device_handler);
break;
+ case PB_PROTOCOL_ACTION_REINIT:
+ device_handler_reinit(client->server->device_handler);
+ break;
+
case PB_PROTOCOL_ACTION_CONFIG:
config = talloc_zero(client, struct config);
PB_PROTOCOL_ACTION_CANCEL_DEFAULT = 0x7,
PB_PROTOCOL_ACTION_SYSTEM_INFO = 0x8,
PB_PROTOCOL_ACTION_CONFIG = 0x9,
+ PB_PROTOCOL_ACTION_REINIT = 0xa,
};
struct pb_protocol_message {
return pb_protocol_write_message(client->fd, message);
}
+int discover_client_send_reinit(struct discover_client *client)
+{
+ struct pb_protocol_message *message;
+
+ message = pb_protocol_create_message(client,
+ PB_PROTOCOL_ACTION_REINIT, 0);
+
+ if (!message)
+ return -1;
+
+ return pb_protocol_write_message(client->fd, message);
+}
+
int discover_client_send_config(struct discover_client *client,
struct config *config)
{
*/
int discover_client_cancel_default(struct discover_client *client);
+/* Tell the discover server to reinitialise */
+int discover_client_send_reinit(struct discover_client *client);
+
/* Send new configuration data to the discover server */
int discover_client_send_config(struct discover_client *client,
struct config *config);