1/* 2 * USB Error messages 3 * 4 * Copyright (c) 2000-2001 Johannes Erdfelt <johannes@erdfelt.com> 5 * 6 * This library is covered by the LGPL, read LICENSE for details. 7 */ 8 9#include <errno.h> 10#include <string.h> 11 12#include "usb.h" 13#include "error.h" 14 15char usb_error_str[1024] = ""; 16int usb_error_errno = 0; 17usb_error_type_t usb_error_type = USB_ERROR_TYPE_NONE; 18 19char *usb_strerror(void) 20{ 21 switch (usb_error_type) { 22 case USB_ERROR_TYPE_NONE: 23 return "No error"; 24 case USB_ERROR_TYPE_STRING: 25 return usb_error_str; 26 case USB_ERROR_TYPE_ERRNO: 27 if (usb_error_errno > -USB_ERROR_BEGIN) 28 return strerror(usb_error_errno); 29 else 30 /* Any error we don't know falls under here */ 31 return "Unknown error"; 32 } 33 34 return "Unknown error"; 35} 36 37