printf("usage: %s", usbip_list_usage_string);
}
-static int query_exported_devices(int sockfd)
+static int get_exported_devices(int sockfd)
{
- int ret;
+ char product_name[100];
+ char class_name[100];
struct op_devlist_reply rep;
uint16_t code = OP_REP_DEVLIST;
-
- memset(&rep, 0, sizeof(rep));
-
- ret = usbip_send_op_common(sockfd, OP_REQ_DEVLIST, 0);
- if (ret < 0) {
- err("send op_common");
+ struct usbip_usb_device udev;
+ struct usbip_usb_interface uintf;
+ unsigned int i;
+ int j, rc;
+
+ rc = usbip_send_op_common(sockfd, OP_REQ_DEVLIST, 0);
+ if (rc < 0) {
+ dbg("usbip_send_op_common");
return -1;
}
- ret = usbip_recv_op_common(sockfd, &code);
- if (ret < 0) {
- err("recv op_common");
+ rc = usbip_recv_op_common(sockfd, &code);
+ if (rc < 0) {
+ dbg("usbip_recv_op_common");
return -1;
}
- ret = usbip_recv(sockfd, (void *) &rep, sizeof(rep));
- if (ret < 0) {
- err("recv op_devlist");
+ memset(&rep, 0, sizeof(rep));
+ rc = usbip_recv(sockfd, &rep, sizeof(rep));
+ if (rc < 0) {
+ dbg("usbip_recv_op_devlist");
return -1;
}
-
PACK_OP_DEVLIST_REPLY(0, &rep);
- dbg("exportable %d devices", rep.ndev);
-
- for (unsigned int i=0; i < rep.ndev; i++) {
- char product_name[100];
- char class_name[100];
- struct usbip_usb_device udev;
+ dbg("exportable devices: %d", rep.ndev);
+ for (i = 0; i < rep.ndev; i++) {
memset(&udev, 0, sizeof(udev));
-
- ret = usbip_recv(sockfd, (void *) &udev, sizeof(udev));
- if (ret < 0) {
- err("recv usbip_usb_device[%d]", i);
+ rc = usbip_recv(sockfd, &udev, sizeof(udev));
+ if (rc < 0) {
+ dbg("usbip_recv: usbip_usb_device[%d]", i);
return -1;
}
pack_usb_device(0, &udev);
usbip_names_get_class(class_name, sizeof(class_name),
udev.bDeviceClass, udev.bDeviceSubClass,
udev.bDeviceProtocol);
-
printf("%8s: %s\n", udev.busid, product_name);
- printf("%8s: %s\n", " ", udev.path);
- printf("%8s: %s\n", " ", class_name);
-
- for (int j=0; j < udev.bNumInterfaces; j++) {
- struct usbip_usb_interface uinf;
+ printf("%8s: %s\n", "", udev.path);
+ printf("%8s: %s\n", "", class_name);
- ret = usbip_recv(sockfd, (void *) &uinf, sizeof(uinf));
- if (ret < 0) {
- err("recv usbip_usb_interface[%d]", j);
+ for (j = 0; j < udev.bNumInterfaces; j++) {
+ rc = usbip_recv(sockfd, &uintf, sizeof(uintf));
+ if (rc < 0) {
+ dbg("usbip_recv: usbip_usb_interface[%d]", j);
return -1;
}
+ pack_usb_interface(0, &uintf);
- pack_usb_interface(0, &uinf);
usbip_names_get_class(class_name, sizeof(class_name),
- uinf.bInterfaceClass,
- uinf.bInterfaceSubClass,
- uinf.bInterfaceProtocol);
+ uintf.bInterfaceClass,
+ uintf.bInterfaceSubClass,
+ uintf.bInterfaceProtocol);
+ printf("%8s: %2d - %s\n", "", j, class_name);
- printf("%8s: %2d - %s\n", " ", j, class_name);
}
-
printf("\n");
}
- return rep.ndev;
+ return 0;
}
-static int show_exported_devices(char *host)
+static int list_exported_devices(char *host)
{
- int ret;
+ int rc;
int sockfd;
sockfd = usbip_net_tcp_connect(host, USBIP_PORT_STRING);
return -1;
}
dbg("connected to %s port %s\n", host, USBIP_PORT_STRING);
-
printf("- %s\n", host);
- ret = query_exported_devices(sockfd);
- if (ret < 0) {
- err("query");
+ rc = get_exported_devices(sockfd);
+ if (rc < 0) {
+ dbg("get_exported_devices failed");
return -1;
}
close(sockfd);
+
return 0;
}
parsable = true;
break;
case 'r':
- ret = show_exported_devices(optarg);
+ ret = list_exported_devices(optarg);
goto out;
case 'l':
ret = list_devices(parsable);