X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=discover%2Fdevice-handler.c;h=b8825ce7ab868a0e095bee5a413a5c60bda1d312;hp=81bdedbbb98b0c1c75ec3cb591d537571f2147b1;hb=b5f9e34d85075afe7aa87b5ce4a1a2d911468e36;hpb=c5ae6f4846ca4bd8e13ffa08a293950433f3096c diff --git a/discover/device-handler.c b/discover/device-handler.c index 81bdedb..b8825ce 100644 --- a/discover/device-handler.c +++ b/discover/device-handler.c @@ -416,6 +416,39 @@ void device_handler_status(struct device_handler *handler, discover_server_notify_boot_status(handler->server, status); } +static void _device_handler_vstatus(struct device_handler *handler, + enum status_type type, const char *fmt, va_list ap) +{ + struct status status; + + status.type = type; + status.message = talloc_vasprintf(handler, fmt, ap); + + device_handler_status(handler, &status); + + talloc_free(status.message); +} + +void device_handler_status_info(struct device_handler *handler, + const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + _device_handler_vstatus(handler, STATUS_INFO, fmt, ap); + va_end(ap); +} + +void device_handler_status_err(struct device_handler *handler, + const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + _device_handler_vstatus(handler, STATUS_ERROR, fmt, ap); + va_end(ap); +} + static void device_handler_boot_status_cb(void *arg, struct status *status) { device_handler_status(arg, status);