linux/tools/usb/usbip/src/usbip_port.c
<<
>>
Prefs
   1/*
   2 * Copyright (C) 2011 matt mooney <mfm@muteddisk.com>
   3 *               2005-2007 Takahiro Hirofuchi
   4 *
   5 * This program is free software: you can redistribute it and/or modify
   6 * it under the terms of the GNU General Public License as published by
   7 * the Free Software Foundation, either version 2 of the License, or
   8 * (at your option) any later version.
   9 *
  10 * This program is distributed in the hope that it will be useful,
  11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13 * GNU General Public License for more details.
  14 */
  15
  16#include "vhci_driver.h"
  17#include "usbip_common.h"
  18
  19static int list_imported_devices(void)
  20{
  21        int i;
  22        struct usbip_imported_device *idev;
  23        int ret;
  24
  25        if (usbip_names_init(USBIDS_FILE))
  26                err("failed to open %s", USBIDS_FILE);
  27
  28        ret = usbip_vhci_driver_open();
  29        if (ret < 0) {
  30                err("open vhci_driver");
  31                goto err_names_free;
  32        }
  33
  34        printf("Imported USB devices\n");
  35        printf("====================\n");
  36
  37        for (i = 0; i < vhci_driver->nports; i++) {
  38                idev = &vhci_driver->idev[i];
  39
  40                if (usbip_vhci_imported_device_dump(idev) < 0)
  41                        goto err_driver_close;
  42        }
  43
  44        usbip_vhci_driver_close();
  45        usbip_names_free();
  46
  47        return ret;
  48
  49err_driver_close:
  50        usbip_vhci_driver_close();
  51err_names_free:
  52        usbip_names_free();
  53        return -1;
  54}
  55
  56int usbip_port_show(__attribute__((unused)) int argc,
  57                    __attribute__((unused)) char *argv[])
  58{
  59        int ret;
  60
  61        ret = list_imported_devices();
  62        if (ret < 0)
  63                err("list imported devices");
  64
  65        return ret;
  66}
  67