Exchange of fprintf(stderr, ...) with avrdude_message(...).

This change was made for the shared library, since library functions
should not write to std-streams directly. Instead avrdude_message()
has to be implemented by the library user. For the avrdude application
this function is implemented in main.c.



git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1305 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
awachtler
2014-05-18 08:41:46 +00:00
parent b9093f88dc
commit 7b43620402
45 changed files with 2380 additions and 2896 deletions

View File

@@ -97,9 +97,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
if (strlen(serno) > 12)
{
fprintf(stderr,
"%s: usbdev_open(): invalid serial number \"%s\"\n",
progname, serno);
avrdude_message("%s: usbdev_open(): invalid serial number \"%s\"\n",
progname, serno);
return -1;
}
}
@@ -127,9 +126,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
dev->descriptor.iSerialNumber,
string, sizeof(string)) < 0)
{
fprintf(stderr,
"%s: usb_open(): cannot read serial number \"%s\"\n",
progname, usb_strerror());
avrdude_message("%s: usb_open(): cannot read serial number \"%s\"\n",
progname, usb_strerror());
/*
* On some systems, libusb appears to have
* problems sending control messages. Catch the
@@ -147,9 +145,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
dev->descriptor.iProduct,
product, sizeof(product)) < 0)
{
fprintf(stderr,
"%s: usb_open(): cannot read product name \"%s\"\n",
progname, usb_strerror());
avrdude_message("%s: usb_open(): cannot read product name \"%s\"\n",
progname, usb_strerror());
strcpy(product, "[unnamed product]");
}
/*
@@ -169,9 +166,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
}
if (verbose)
fprintf(stderr,
"%s: usbdev_open(): Found %s, serno: %s\n",
progname, product, string);
avrdude_message("%s: usbdev_open(): Found %s, serno: %s\n",
progname, product, string);
if (serno != NULL)
{
/*
@@ -183,9 +179,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
if (strcasecmp(string + x, serno) != 0)
{
if (verbose > 2)
fprintf(stderr,
"%s: usbdev_open(): serial number doesn't match\n",
progname);
avrdude_message("%s: usbdev_open(): serial number doesn't match\n",
progname);
usb_close(udev);
continue;
}
@@ -193,18 +188,16 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
if (dev->config == NULL)
{
fprintf(stderr,
"%s: usbdev_open(): USB device has no configuration\n",
progname);
avrdude_message("%s: usbdev_open(): USB device has no configuration\n",
progname);
goto trynext;
}
if (usb_set_configuration(udev, dev->config[0].bConfigurationValue))
{
fprintf(stderr,
"%s: usbdev_open(): WARNING: failed to set configuration %d: %s\n",
progname, dev->config[0].bConfigurationValue,
usb_strerror());
avrdude_message("%s: usbdev_open(): WARNING: failed to set configuration %d: %s\n",
progname, dev->config[0].bConfigurationValue,
usb_strerror());
/* let's hope it has already been configured */
// goto trynext;
}
@@ -223,9 +216,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
#endif
if (usb_claim_interface(udev, usb_interface))
{
fprintf(stderr,
"%s: usbdev_open(): error claiming interface %d: %s\n",
progname, usb_interface, usb_strerror());
avrdude_message("%s: usbdev_open(): error claiming interface %d: %s\n",
progname, usb_interface, usb_strerror());
}
else
{
@@ -242,9 +234,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
}
if (iface == dev->config[0].bNumInterfaces)
{
fprintf(stderr,
"%s: usbdev_open(): no usable interface found\n",
progname);
avrdude_message("%s: usbdev_open(): no usable interface found\n",
progname);
goto trynext;
}
@@ -261,9 +252,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
{
if (verbose > 1)
{
fprintf(stderr,
"%s: usbdev_open(): using read endpoint 0x%02x\n",
progname, possible_ep);
avrdude_message("%s: usbdev_open(): using read endpoint 0x%02x\n",
progname, possible_ep);
}
fd->usb.rep = possible_ep;
break;
@@ -271,9 +261,8 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
}
if (fd->usb.rep == 0)
{
fprintf(stderr,
"%s: usbdev_open(): cannot find a read endpoint, using 0x%02x\n",
progname, USBDEV_BULK_EP_READ_MKII);
avrdude_message("%s: usbdev_open(): cannot find a read endpoint, using 0x%02x\n",
progname, USBDEV_BULK_EP_READ_MKII);
fd->usb.rep = USBDEV_BULK_EP_READ_MKII;
}
}
@@ -284,34 +273,32 @@ static int usbdev_open(char * port, union pinfo pinfo, union filedescriptor *fd)
dev->config[0].interface[iface].altsetting[0].endpoint[i].wMaxPacketSize < fd->usb.max_xfer)
{
if (verbose != 0)
fprintf(stderr,
"%s: max packet size expected %d, but found %d due to EP 0x%02x's wMaxPacketSize\n",
progname,
fd->usb.max_xfer,
dev->config[0].interface[iface].altsetting[0].endpoint[i].wMaxPacketSize,
dev->config[0].interface[iface].altsetting[0].endpoint[i].bEndpointAddress);
avrdude_message("%s: max packet size expected %d, but found %d due to EP 0x%02x's wMaxPacketSize\n",
progname,
fd->usb.max_xfer,
dev->config[0].interface[iface].altsetting[0].endpoint[i].wMaxPacketSize,
dev->config[0].interface[iface].altsetting[0].endpoint[i].bEndpointAddress);
fd->usb.max_xfer = dev->config[0].interface[iface].altsetting[0].endpoint[i].wMaxPacketSize;
}
}
if (pinfo.usbinfo.flags & PINFO_FL_USEHID)
{
if (usb_control_msg(udev, 0x21, 0x0a /* SET_IDLE */, 0, 0, NULL, 0, 100) < 0)
fprintf(stderr, "%s: usbdev_open(): SET_IDLE failed\n", progname);
avrdude_message("%s: usbdev_open(): SET_IDLE failed\n", progname);
}
return 0;
trynext:
usb_close(udev);
}
else
fprintf(stderr,
"%s: usbdev_open(): cannot open device: %s\n",
progname, usb_strerror());
avrdude_message("%s: usbdev_open(): cannot open device: %s\n",
progname, usb_strerror());
}
}
}
if ((pinfo.usbinfo.flags & PINFO_FL_SILENT) == 0 || verbose > 0)
fprintf(stderr, "%s: usbdev_open(): did not find any%s USB device \"%s\" (0x%04x:0x%04x)\n",
avrdude_message("%s: usbdev_open(): did not find any%s USB device \"%s\" (0x%04x:0x%04x)\n",
progname, serno? " (matching)": "", port,
(unsigned)pinfo.usbinfo.vid, (unsigned)pinfo.usbinfo.pid);
return -1;
@@ -365,7 +352,7 @@ static int usbdev_send(union filedescriptor *fd, unsigned char *bp, size_t mlen)
rv = usb_bulk_write(udev, fd->usb.wep, (char *)bp, tx_size, 10000);
if (rv != tx_size)
{
fprintf(stderr, "%s: usbdev_send(): wrote %d out of %d bytes, err = %s\n",
avrdude_message("%s: usbdev_send(): wrote %d out of %d bytes, err = %s\n",
progname, rv, tx_size, usb_strerror());
return -1;
}
@@ -375,22 +362,22 @@ static int usbdev_send(union filedescriptor *fd, unsigned char *bp, size_t mlen)
if (verbose > 3)
{
fprintf(stderr, "%s: Sent: ", progname);
avrdude_message("%s: Sent: ", progname);
while (i) {
unsigned char c = *p;
if (isprint(c)) {
fprintf(stderr, "%c ", c);
avrdude_message("%c ", c);
}
else {
fprintf(stderr, ". ");
avrdude_message(". ");
}
fprintf(stderr, "[%02x] ", c);
avrdude_message("[%02x] ", c);
p++;
i--;
}
fprintf(stderr, "\n");
avrdude_message("\n");
}
return 0;
}
@@ -415,7 +402,7 @@ usb_fill_buf(usb_dev_handle *udev, int maxsize, int ep, int use_interrupt_xfer)
if (rv < 0)
{
if (verbose > 1)
fprintf(stderr, "%s: usb_fill_buf(): usb_%s_read() error %s\n",
avrdude_message("%s: usb_fill_buf(): usb_%s_read() error %s\n",
progname, (use_interrupt_xfer? "interrupt": "bulk"),
usb_strerror());
return -1;
@@ -452,22 +439,22 @@ static int usbdev_recv(union filedescriptor *fd, unsigned char *buf, size_t nbyt
if (verbose > 4)
{
fprintf(stderr, "%s: Recv: ", progname);
avrdude_message("%s: Recv: ", progname);
while (i) {
unsigned char c = *p;
if (isprint(c)) {
fprintf(stderr, "%c ", c);
avrdude_message("%c ", c);
}
else {
fprintf(stderr, ". ");
avrdude_message(". ");
}
fprintf(stderr, "[%02x] ", c);
avrdude_message("[%02x] ", c);
p++;
i--;
}
fprintf(stderr, "\n");
avrdude_message("\n");
}
return 0;
@@ -506,7 +493,7 @@ static int usbdev_recv_frame(union filedescriptor *fd, unsigned char *buf, size_
}
else if (rv > 0)
{
fprintf(stderr, "Short event len = %d, ignored.\n", rv);
avrdude_message("Short event len = %d, ignored.\n", rv);
/* fallthrough */
}
}
@@ -523,7 +510,7 @@ static int usbdev_recv_frame(union filedescriptor *fd, unsigned char *buf, size_
if (rv < 0)
{
if (verbose > 1)
fprintf(stderr, "%s: usbdev_recv_frame(): usb_%s_read(): %s\n",
avrdude_message("%s: usbdev_recv_frame(): usb_%s_read(): %s\n",
progname, (fd->usb.use_interrupt_xfer? "interrupt": "bulk"),
usb_strerror());
return -1;
@@ -547,22 +534,22 @@ static int usbdev_recv_frame(union filedescriptor *fd, unsigned char *buf, size_
if (verbose > 3)
{
i = n & USB_RECV_LENGTH_MASK;
fprintf(stderr, "%s: Recv: ", progname);
avrdude_message("%s: Recv: ", progname);
while (i) {
unsigned char c = *p;
if (isprint(c)) {
fprintf(stderr, "%c ", c);
avrdude_message("%c ", c);
}
else {
fprintf(stderr, ". ");
avrdude_message(". ");
}
fprintf(stderr, "[%02x] ", c);
avrdude_message("[%02x] ", c);
p++;
i--;
}
fprintf(stderr, "\n");
avrdude_message("\n");
}
return n;
}
@@ -581,7 +568,7 @@ static int usbdev_drain(union filedescriptor *fd, int display)
else
rv = usb_bulk_read(udev, fd->usb.rep, usbbuf, fd->usb.max_xfer, 100);
if (rv > 0 && verbose >= 4)
fprintf(stderr, "%s: usbdev_drain(): flushed %d characters\n",
avrdude_message("%s: usbdev_drain(): flushed %d characters\n",
progname, rv);
} while (rv > 0);