From 7977bc3dfa7ed77d0a76834d7f1134b3e4a5c9cd Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 8 Jun 2010 10:19:39 +0200 Subject: TFTP: fix warning for sendto() usage on non-POSIX systems Older unixes want an 'int' instead of 'size_t' as the 3rd argumment so before this change it would cause warnings such as: There is an implicit conversion from "unsigned long" to "int"; rounding, sign extension, or loss of accuracy may result. --- lib/tftp.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/tftp.c b/lib/tftp.c index 166954f85..c09aadc03 100644 --- a/lib/tftp.c +++ b/lib/tftp.c @@ -535,10 +535,12 @@ static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event) sbytes += tftp_option_add(state, sbytes, (char *)state->spacket.data+sbytes, buf ); + /* the typecase for the 3rd argument is mostly for systems that do + not have a size_t argument, like older unixes that want an 'int' */ senddata = sendto(state->sockfd, (void *)state->spacket.data, - sbytes, 0, - state->conn->ip_addr->ai_addr, - state->conn->ip_addr->ai_addrlen); + (SEND_TYPE_ARG3)sbytes, 0, + state->conn->ip_addr->ai_addr, + state->conn->ip_addr->ai_addrlen); if(senddata != (ssize_t)sbytes) { failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO)); } -- cgit v1.2.3