staging: usbip: userspace: usbip list: move output header

Delay the printing of the output header until the list is received
from the remote host. This allows notification that the host does not
have any exportable devices.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
matt mooney 2011-06-19 22:44:45 -07:00 committed by Greg Kroah-Hartman
parent 622dde8105
commit b9d65b1dd3
1 changed files with 11 additions and 6 deletions

View File

@ -45,7 +45,7 @@ void usbip_list_usage(void)
printf("usage: %s", usbip_list_usage_string);
}
static int get_exported_devices(int sockfd)
static int get_exported_devices(char *host, int sockfd)
{
char product_name[100];
char class_name[100];
@ -77,6 +77,15 @@ static int get_exported_devices(int sockfd)
PACK_OP_DEVLIST_REPLY(0, &reply);
dbg("exportable devices: %d\n", reply.ndev);
if (reply.ndev == 0) {
info("no exportable devices found on %s", host);
return 0;
}
printf("Exportable USB devices\n");
printf("======================\n");
printf(" - %s\n", host);
for (i = 0; i < reply.ndev; i++) {
memset(&udev, 0, sizeof(udev));
rc = usbip_recv(sockfd, &udev, sizeof(udev));
@ -128,11 +137,7 @@ static int list_exported_devices(char *host)
}
dbg("connected to %s:%s", host, USBIP_PORT_STRING);
printf("Exportable USB devices\n");
printf("======================\n");
printf(" - %s\n", host);
rc = get_exported_devices(sockfd);
rc = get_exported_devices(host, sockfd);
if (rc < 0) {
err("failed to get device list from %s", host);
return -1;