summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-09-05 14:18:18 +1000
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-09-08 15:05:14 +1000
commit74a77f5ff60a3ec2ede785827d60ec2fc646a3c0 (patch)
treee8151da14575b5599f3282653ec742830fa3215b
parentc8c61f78d0583acedcde0ba69b57936bf27337ca (diff)
downloadpetitboot-74a77f5ff60a3ec2ede785827d60ec2fc646a3c0.zip
petitboot-74a77f5ff60a3ec2ede785827d60ec2fc646a3c0.tar.gz
discover: Deprecate 'conf' user event
The 'conf' user event is functionally very similar to the 'url' event, in that both events result in downloading a specified configuration file and passing it to iterate_parsers(). The 'url' event additionally allows downloading files from a directory path and is also accessed by the UI via pb-protocol, so remove the 'conf' event and associated functions in favour of 'url' and device_handler_process_url(). Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> (cherry picked from commit e2c92865481a5fb043c03c0cde625a96ca608699)
-rw-r--r--discover/device-handler.c32
-rw-r--r--discover/device-handler.h2
-rw-r--r--discover/event.c2
-rw-r--r--discover/event.h1
-rw-r--r--discover/user-event.c25
5 files changed, 1 insertions, 61 deletions
diff --git a/discover/device-handler.c b/discover/device-handler.c
index 364b412..8063ad4 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -915,36 +915,6 @@ int device_handler_dhcp(struct device_handler *handler,
return 0;
}
-/* incoming conf event */
-int device_handler_conf(struct device_handler *handler,
- struct discover_device *dev, struct pb_url *url)
-{
- struct discover_context *ctx;
- struct boot_status *status;
-
- status = talloc_zero(handler, struct boot_status);
- status->type = BOOT_STATUS_INFO;
- status->message = talloc_asprintf(status, _("Processing user config"));
- device_handler_boot_status(handler, status);
-
- /* create our context */
- ctx = device_handler_discover_context_create(handler, dev);
- ctx->conf_url = url;
-
- iterate_parsers(ctx);
-
- device_handler_discover_context_commit(handler, ctx);
-
- status->message = talloc_asprintf(status,
- _("Processing user config complete"));
- device_handler_boot_status(handler, status);
-
- talloc_free(status);
- talloc_unlink(handler, ctx);
-
- return 0;
-}
-
static struct discover_boot_option *find_boot_option_by_id(
struct device_handler *handler, const char *id)
{
@@ -1121,7 +1091,7 @@ void device_handler_process_url(struct device_handler *handler,
event = talloc(handler, struct event);
event->type = EVENT_TYPE_USER;
- event->action = EVENT_ACTION_CONF;
+ event->action = EVENT_ACTION_URL;
if (url[strlen(url) - 1] == '/') {
event->params = talloc_array(event, struct param, 3);
diff --git a/discover/device-handler.h b/discover/device-handler.h
index b6f9fd5..a456181 100644
--- a/discover/device-handler.h
+++ b/discover/device-handler.h
@@ -92,8 +92,6 @@ int device_handler_discover(struct device_handler *handler,
struct discover_device *dev);
int device_handler_dhcp(struct device_handler *handler,
struct discover_device *dev, struct event *event);
-int device_handler_conf(struct device_handler *handler,
- struct discover_device *dev, struct pb_url *url);
void device_handler_remove(struct device_handler *handler,
struct discover_device *device);
diff --git a/discover/event.c b/discover/event.c
index 242ae81..1be19eb 100644
--- a/discover/event.c
+++ b/discover/event.c
@@ -49,8 +49,6 @@ static int event_parse_ad_header(char *buf, int len, enum event_action *action,
*action = EVENT_ACTION_REMOVE;
else if (streq(buf, "url"))
*action = EVENT_ACTION_URL;
- else if (streq(buf, "conf"))
- *action = EVENT_ACTION_CONF;
else if (streq(buf, "dhcp"))
*action = EVENT_ACTION_DHCP;
else if (streq(buf, "boot"))
diff --git a/discover/event.h b/discover/event.h
index a603615..a639d9c 100644
--- a/discover/event.h
+++ b/discover/event.h
@@ -11,7 +11,6 @@ enum event_action {
EVENT_ACTION_ADD = 20,
EVENT_ACTION_REMOVE,
EVENT_ACTION_URL,
- EVENT_ACTION_CONF,
EVENT_ACTION_DHCP,
EVENT_ACTION_BOOT,
EVENT_ACTION_SYNC,
diff --git a/discover/user-event.c b/discover/user-event.c
index d9f5bd4..b201de8 100644
--- a/discover/user-event.c
+++ b/discover/user-event.c
@@ -382,28 +382,6 @@ static int user_event_dhcp(struct user_event *uev, struct event *event)
return 0;
}
-static int user_event_conf(struct user_event *uev, struct event *event)
-{
- struct device_handler *handler = uev->handler;
- struct discover_device *dev;
- struct pb_url *url;
- const char *val;
-
- val = event_get_param(event, "url");
- if (!val)
- return 0;
-
- url = pb_url_parse(event, val);
- if (!url)
- return 0;
-
- dev = discover_device_create(handler, event->device);
-
- device_handler_conf(handler, dev, url);
-
- return 0;
-}
-
static int user_event_add(struct user_event *uev, struct event *event)
{
struct device_handler *handler = uev->handler;
@@ -504,9 +482,6 @@ static void user_event_handle_message(struct user_event *uev, char *buf,
case EVENT_ACTION_URL:
result = user_event_url(uev, event);
goto out;
- case EVENT_ACTION_CONF:
- result = user_event_conf(uev, event);
- break;
case EVENT_ACTION_DHCP:
result = user_event_dhcp(uev, event);
goto out;
OpenPOWER on IntegriCloud