summaryrefslogtreecommitdiffstats
path: root/discover
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2016-12-07 11:13:36 +1100
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-12-20 15:04:07 +1100
commit4b06a4645e19830581505a675075773adc0857c2 (patch)
tree94d77cc95f94432277e401763c65d3d7cbcc37d8 /discover
parentea8bd5f424a9b01c71e1694bb5b6ffc13e3da4f5 (diff)
downloadtalos-petitboot-4b06a4645e19830581505a675075773adc0857c2.tar.gz
talos-petitboot-4b06a4645e19830581505a675075773adc0857c2.zip
types: shorten boot_status definitions
struct boot_status is a bit misnamed; we report status on things that aren't just the boot status (eg, discovery). This change refactors struct boot_status into just struct status. We give the type enum a name, and shorten the enum values to suit. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Diffstat (limited to 'discover')
-rw-r--r--discover/boot.c33
-rw-r--r--discover/boot.h2
-rw-r--r--discover/device-handler.c30
-rw-r--r--discover/device-handler.h2
-rw-r--r--discover/discover-server.c4
-rw-r--r--discover/discover-server.h4
-rw-r--r--discover/pxe-parser.c4
7 files changed, 38 insertions, 41 deletions
diff --git a/discover/boot.c b/discover/boot.c
index dc6da7d..70e9d41 100644
--- a/discover/boot.c
+++ b/discover/boot.c
@@ -146,7 +146,7 @@ static int kexec_reboot(struct boot_task *task)
static void __attribute__((format(__printf__, 4, 5))) update_status(
boot_status_fn fn, void *arg, int type, char *fmt, ...)
{
- struct boot_status status;
+ struct status status;
va_list ap;
va_start(ap, fmt);
@@ -252,7 +252,7 @@ static void run_boot_hooks(struct boot_task *task)
if (n < 1)
return;
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("running boot hooks"));
boot_hook_setenv(task);
@@ -315,7 +315,7 @@ static int check_load(struct boot_task *task, const char *name,
return 0;
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("Couldn't load %s"), name);
return -1;
}
@@ -443,28 +443,27 @@ static void boot_process(struct load_url_result *result, void *data)
run_boot_hooks(task);
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("performing kexec_load"));
rc = kexec_load(task);
if (rc == KEXEC_LOAD_DECRYPTION_FALURE) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR, _("decryption failed"));
+ STATUS_ERROR, _("decryption failed"));
}
else if (rc == KEXEC_LOAD_SIGNATURE_FAILURE) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("signature verification failed"));
}
else if (rc == KEXEC_LOAD_SIG_SETUP_INVALID) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("invalid signature configuration"));
}
else if (rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
- _("kexec load failed"));
+ STATUS_ERROR, _("kexec load failed"));
}
no_sig_load:
@@ -482,13 +481,12 @@ no_load:
if (!rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_INFO,
- _("performing kexec reboot"));
+ STATUS_INFO, _("performing kexec reboot"));
rc = kexec_reboot(task);
if (rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("kexec reboot failed"));
}
}
@@ -503,8 +501,7 @@ static int start_url_load(struct boot_task *task, const char *name,
*result = load_url_async(task, url, boot_process, task);
if (!*result) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
- _("Error loading %s"), name);
+ STATUS_ERROR, _("Error loading %s"), name);
return -1;
}
return 0;
@@ -530,7 +527,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
else
boot_desc = _("(unknown)");
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Booting %s."), boot_desc);
if (cmd && cmd->boot_image_file) {
@@ -539,7 +536,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
image = opt->boot_image->url;
} else {
pb_log("%s: no image specified\n", __func__);
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Boot failed: no image specified"));
return NULL;
}
@@ -587,7 +584,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
} else {
pb_log("%s: no command line signature file"
" specified\n", __func__);
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Boot failed: no command line"
" signature file specified"));
talloc_free(boot_task);
@@ -643,7 +640,7 @@ void boot_cancel(struct boot_task *task)
{
task->cancelled = true;
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("Boot cancelled"));
cleanup_cancellations(task, NULL);
diff --git a/discover/boot.h b/discover/boot.h
index 0f27341..69643bf 100644
--- a/discover/boot.h
+++ b/discover/boot.h
@@ -7,7 +7,7 @@
struct boot_option;
struct boot_command;
-typedef void (*boot_status_fn)(void *arg, struct boot_status *);
+typedef void (*boot_status_fn)(void *arg, struct status *);
struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
struct boot_command *cmd, int dry_run,
diff --git a/discover/device-handler.c b/discover/device-handler.c
index 70e4506..20df8d1 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -410,7 +410,7 @@ void device_handler_remove(struct device_handler *handler,
talloc_free(device);
}
-void device_handler_boot_status(void *arg, struct boot_status *status)
+void device_handler_boot_status(void *arg, struct status *status)
{
struct device_handler *handler = arg;
@@ -420,9 +420,9 @@ void device_handler_boot_status(void *arg, struct boot_status *status)
static void countdown_status(struct device_handler *handler,
struct discover_boot_option *opt, unsigned int sec)
{
- struct boot_status status;
+ struct status status;
- status.type = BOOT_STATUS_INFO;
+ status.type = STATUS_INFO;
status.progress = -1;
status.detail = NULL;
status.message = talloc_asprintf(handler,
@@ -836,11 +836,11 @@ int device_handler_discover(struct device_handler *handler,
struct discover_device *dev)
{
struct discover_context *ctx;
- struct boot_status *status;
+ struct status *status;
int rc;
- status = talloc_zero(handler, struct boot_status);
- status->type = BOOT_STATUS_INFO;
+ status = talloc_zero(handler, struct status);
+ status->type = STATUS_INFO;
/*
* TRANSLATORS: this string will be passed the type and identifier
* of the device. For example, the first parameter could be "Disk",
@@ -891,10 +891,10 @@ int device_handler_dhcp(struct device_handler *handler,
struct discover_device *dev, struct event *event)
{
struct discover_context *ctx;
- struct boot_status *status;
+ struct status *status;
- status = talloc_zero(handler, struct boot_status);
- status->type = BOOT_STATUS_INFO;
+ status = talloc_zero(handler, struct status);
+ status->type = STATUS_INFO;
/*
* TRANSLATORS: this format specifier will be the name of a network
* device, like 'eth0'.
@@ -963,7 +963,7 @@ void device_handler_boot(struct device_handler *handler,
void device_handler_cancel_default(struct device_handler *handler)
{
- struct boot_status status;
+ struct status status;
if (handler->timeout_waiter)
waiter_remove(handler->timeout_waiter);
@@ -985,7 +985,7 @@ void device_handler_cancel_default(struct device_handler *handler)
handler->default_boot_option = NULL;
- status.type = BOOT_STATUS_INFO;
+ status.type = STATUS_INFO;
status.progress = -1;
status.detail = NULL;
status.message = _("Default boot cancelled");
@@ -1082,14 +1082,14 @@ void device_handler_process_url(struct device_handler *handler,
{
struct discover_context *ctx;
struct discover_device *dev;
- struct boot_status *status;
+ struct status *status;
struct pb_url *pb_url;
struct event *event;
struct param *param;
- status = talloc(handler, struct boot_status);
+ status = talloc(handler, struct status);
- status->type = BOOT_STATUS_ERROR;
+ status->type = STATUS_ERROR;
status->progress = 0;
status->detail = talloc_asprintf(status,
_("Received config URL %s"), url);
@@ -1156,7 +1156,7 @@ void device_handler_process_url(struct device_handler *handler,
talloc_unlink(handler, ctx);
- status->type = BOOT_STATUS_INFO;
+ status->type = STATUS_INFO;
status->message = talloc_asprintf(status, _("Config file %s parsed"),
pb_url->file);
msg:
diff --git a/discover/device-handler.h b/discover/device-handler.h
index d2e3baf..c6f3ad1 100644
--- a/discover/device-handler.h
+++ b/discover/device-handler.h
@@ -96,7 +96,7 @@ int device_handler_dhcp(struct device_handler *handler,
void device_handler_remove(struct device_handler *handler,
struct discover_device *device);
-void device_handler_boot_status(void *arg, struct boot_status *status);
+void device_handler_boot_status(void *arg, struct status *status);
struct discover_context *device_handler_discover_context_create(
struct device_handler *handler,
diff --git a/discover/discover-server.c b/discover/discover-server.c
index 5f6f4d5..ad184f6 100644
--- a/discover/discover-server.c
+++ b/discover/discover-server.c
@@ -157,7 +157,7 @@ static int write_device_remove_message(struct discover_server *server,
}
static int write_boot_status_message(struct discover_server *server,
- struct client *client, const struct boot_status *status)
+ struct client *client, const struct status *status)
{
struct pb_protocol_message *message;
int len;
@@ -366,7 +366,7 @@ void discover_server_notify_device_remove(struct discover_server *server,
}
void discover_server_notify_boot_status(struct discover_server *server,
- struct boot_status *status)
+ struct status *status)
{
struct client *client;
diff --git a/discover/discover-server.h b/discover/discover-server.h
index 97f53b9..97d07e6 100644
--- a/discover/discover-server.h
+++ b/discover/discover-server.h
@@ -6,7 +6,7 @@
struct discover_server;
struct device_handler;
struct boot_option;
-struct boot_status;
+struct status;
struct system_info;
struct device;
struct config;
@@ -25,7 +25,7 @@ void discover_server_notify_boot_option_add(struct discover_server *server,
void discover_server_notify_device_remove(struct discover_server *server,
struct device *device);
void discover_server_notify_boot_status(struct discover_server *server,
- struct boot_status *status);
+ struct status *status);
void discover_server_notify_system_info(struct discover_server *server,
const struct system_info *sysinfo);
void discover_server_notify_config(struct discover_server *server,
diff --git a/discover/pxe-parser.c b/discover/pxe-parser.c
index 4352036..221fc30 100644
--- a/discover/pxe-parser.c
+++ b/discover/pxe-parser.c
@@ -241,7 +241,7 @@ static void pxe_conf_parse_cb(struct load_url_result *result, void *data)
{
struct conf_context *conf = data;
struct device_handler *handler;
- struct boot_status status = {0};
+ struct status status = {0};
struct pxe_parser_info *info;
char *buf = NULL;
int len, rc = 0;
@@ -279,7 +279,7 @@ static void pxe_conf_parse_cb(struct load_url_result *result, void *data)
handler = talloc_parent(conf);
device_handler_discover_context_commit(handler, conf->dc);
- status.type = BOOT_STATUS_INFO;
+ status.type = STATUS_INFO;
/*
* TRANSLATORS: the format specifier in this string in an IP address,
* eg. 192.168.1.1
OpenPOWER on IntegriCloud