From: Dan Fandrich <[email protected]>
> It looks like the fix was pushed in commit 592df29f, and the 7.23.1
> RELEASE-NOTES file says "TFTP: resend the correct data".

I'm unable to locate this 7.23.1 RELEASE-NOTES mentioning "TFTP: resend the 
correct data".
I downloaded the 7.23.1 code as well as looked up the latest code (I assume) 
online at https://github.com/bagder/curl/blob/master/lib/tftp.c and still see 
the unchanged code.
[the following from 7.23.1.  Pay attention to line # 730]
 719         infof(data, "Received ACK for block %d, expecting %d\n",
 720               rblock, state->block);
 721         state->retries++;
 722         /* Bail out if over the maximum */
 723         if(state->retries>state->retry_max) {
 724           failf(data, "tftp_tx: giving up waiting for block %d ack",
 725                 state->block);
 726           res = CURLE_SEND_ERROR;
 727         }
 728         else {
 729           /* Re-send the data packet */
 730           sbytes = sendto(state->sockfd, (void *)&state->spacket.data,
 731                           4+state->sbytes, SEND_4TH_ARG,
 732                           (struct sockaddr *)&state->remote_addr,
 733                           state->remote_addrlen);
 734           /* Check all sbytes were sent */
 735           if(sbytes<0) {
 736             failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
 737             res = CURLE_SEND_ERROR;
 738           }
 739         }
 740         return res;

I think that the change for the second arg of sendto() should be  (void 
*)state->spacket.data. Please check the other sendto() calls in the same file.
Please clarify.

Thanks,
steve
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to