Home | History | Annotate | Download | only in examples
      1 /*
      2  * libusb-0.1 example program
      3  * Copyright (C) 2008 Daniel Drake <dsd (at) gentoo.org>
      4  *
      5  * This library is free software; you can redistribute it and/or
      6  * modify it under the terms of the GNU Lesser General Public
      7  * License as published by the Free Software Foundation; either
      8  * version 2.1 of the License, or (at your option) any later version.
      9  *
     10  * This library 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 GNU
     13  * Lesser General Public License for more details.
     14  *
     15  * You should have received a copy of the GNU Lesser General Public
     16  * License along with this library; if not, write to the Free Software
     17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
     18  */
     19 
     20 #include <stdio.h>
     21 #include <usb.h>
     22 
     23 int main(void)
     24 {
     25 	struct usb_bus *busses;
     26 	struct usb_bus *bus;
     27 
     28 	usb_init();
     29 	usb_find_busses();
     30 	usb_find_devices();
     31 
     32 	busses = usb_get_busses();
     33 	for (bus = busses; bus; bus = bus->next) {
     34 		struct usb_device *dev;
     35 		for (dev = bus->devices; dev; dev = dev->next) {
     36 			printf("%04x:%04x\n",
     37 				dev->descriptor.idVendor, dev->descriptor.idProduct);
     38 		}
     39 	}
     40 
     41 	return 0;
     42 }
     43 
     44