diff options
author | Geoff Levand <geoff@infradead.org> | 2012-02-12 11:41:16 -0800 |
---|---|---|
committer | Geoff Levand <geoff@infradead.org> | 2012-02-12 11:41:16 -0800 |
commit | 2f8734a2e2f438dfc437ce7f29d98e3ff9572980 (patch) | |
tree | d21224c5735ba9e5ac33981f1dc471848605cd27 /ui/test/discover-test.c | |
parent | a0c1a0228699cb86aa730c18b21d6d71fde414ca (diff) | |
download | talos-petitboot-2f8734a2e2f438dfc437ce7f29d98e3ff9572980.tar.gz talos-petitboot-2f8734a2e2f438dfc437ce7f29d98e3ff9572980.zip |
Rename pb-test.c to discover-test.c
Signed-off-by: Geoff Levand <geoff@infradead.org>
Diffstat (limited to 'ui/test/discover-test.c')
-rw-r--r-- | ui/test/discover-test.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/ui/test/discover-test.c b/ui/test/discover-test.c new file mode 100644 index 0000000..f3ef746 --- /dev/null +++ b/ui/test/discover-test.c @@ -0,0 +1,61 @@ + +#include <stdio.h> + +#include "ui/common/discover-client.h" + +static int print_device_add(struct device *device, + void __attribute__((unused)) *arg) +{ + struct boot_option *opt; + + printf("new device:\n"); + printf("\tid: %s\n", device->id); + printf("\tname: %s\n", device->name); + printf("\tdesc: %s\n", device->description); + printf("\ticon: %s\n", device->icon_file); + + printf("\tboot options:\n"); + list_for_each_entry(&device->boot_options, opt, list) { + printf("\t\tid: %s\n", opt->id); + printf("\t\tname: %s\n", opt->name); + printf("\t\tdesc: %s\n", opt->description); + printf("\t\ticon: %s\n", opt->icon_file); + printf("\t\tboot: %s\n", opt->boot_image_file); + printf("\t\tinit: %s\n", opt->initrd_file); + printf("\t\targs: %s\n", opt->boot_args); + } + + return 0; +} + +static void print_device_remove(struct device *device, + void __attribute__((unused)) *arg) +{ + printf("removed device:\n"); + printf("\tid: %s\n", device->id); + printf("\tname: %s\n", device->name); +} + +static struct discover_client_ops client_ops = { + .device_add = print_device_add, + .device_remove = print_device_remove, +}; + +int main(void) +{ + struct discover_client *client; + + client = discover_client_init(&client_ops, NULL); + if (!client) + return -1; + + for (;;) { + int rc; + + rc = discover_client_process(client); + if (rc) + break; + } + + return 0; +} |