diff --git a/contrib/examples/tftp/tftp_example.c b/contrib/examples/tftp/tftp_example.c index 4af628fd..71f2b8d0 100644 --- a/contrib/examples/tftp/tftp_example.c +++ b/contrib/examples/tftp/tftp_example.c @@ -78,17 +78,17 @@ tftp_write(void* handle, struct pbuf* p) } /* For TFTP client only */ -static int +static void tftp_error(void* handle, int err, const char* msg, int size) { char message[100]; + LWIP_UNUSED_ARG(handle); + memset(message, 0, sizeof(message)); - MEMCPY(message, msg, LWIP_MIN(sizeof(message)-1, size)); + MEMCPY(message, msg, LWIP_MIN(sizeof(message)-1, (size_t)size)); printf("TFTP error: %d (%s)", err, message); - - return 0; } static const struct tftp_context tftp = { diff --git a/src/apps/tftp/tftp.c b/src/apps/tftp/tftp.c index 4baaca38..337d42c2 100644 --- a/src/apps/tftp/tftp.c +++ b/src/apps/tftp/tftp.c @@ -47,7 +47,8 @@ * This is simple TFTP client/server for the lwIP raw API. */ -#include "lwip/apps/tftp_common.h" +#include "lwip/apps/tftp_client.h" +#include "lwip/apps/tftp_server.h" #if LWIP_UDP @@ -389,7 +390,7 @@ recv(void *arg, struct udp_pcb *upcb, struct pbuf *p, const ip_addr_t *addr, u16 case PP_HTONS(TFTP_ERROR): if (tftp_state.handle != NULL) { pbuf_remove_header(p, TFTP_HEADER_LENGTH); - tftp_state.ctx->error(tftp_state.handle, sbuf[1], p->payload, p->len); + tftp_state.ctx->error(tftp_state.handle, sbuf[1], (const char*)p->payload, p->len); close_handle(); } break;