X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=discover%2Fdiscover-server.c;h=f4e96c046927bd1e0709d7ea78a621fd3da4f26c;hp=1fab3036e9b05aa493357bfc4ba2dc08636388f1;hb=6532debf0bd95509cff9eb8634f57aef20a696b9;hpb=812761a1f8ff94e4913529840b905360ff843fc4 diff --git a/discover/discover-server.c b/discover/discover-server.c index 1fab303..f4e96c0 100644 --- a/discover/discover-server.c +++ b/discover/discover-server.c @@ -12,11 +12,11 @@ #include #include +#include #include "pb-protocol/pb-protocol.h" #include "list/list.h" -#include "log.h" #include "device-handler.h" #include "discover-server.h" @@ -66,12 +66,12 @@ static void print_clients(struct discover_server *server) { struct client *client; - printf("current clients [%p,%p,%p]:\n", + pb_log("current clients [%p,%p,%p]:\n", &server->clients.head, server->clients.head.prev, server->clients.head.next); list_for_each_entry(&server->clients, client, list) - printf("\t[%p,%p,%p] client: %d\n", &client->list, + pb_log("\t[%p,%p,%p] client: %d\n", &client->list, client->list.prev, client->list.next, client->fd); } @@ -90,7 +90,7 @@ static int client_write_message( } static int write_add_message(struct discover_server *server, - struct client *client, struct device *dev) + struct client *client, const struct device *dev) { struct pb_protocol_message *message; int len; @@ -128,7 +128,6 @@ static int write_remove_message(struct discover_server *server, static int discover_server_process(void *arg) { struct discover_server *server = arg; - struct device *devices; struct client *client; int fd, i, n_devices; @@ -148,10 +147,13 @@ static int discover_server_process(void *arg) client->fd = fd; /* send existing devices to client */ - n_devices = device_handler_get_current_devices(server->device_handler, - &devices); - for (i = 0; i < n_devices; i++) - write_add_message(server, client, &devices[i]); + n_devices = device_handler_get_device_count(server->device_handler); + for (i = 0; i < n_devices; i++) { + const struct device *device; + + device = device_handler_get_device(server->device_handler, i); + write_add_message(server, client, device); + } return 0; }