/* receive callback during tftp read operation (not on standard port 69)  */
void rrq_recv_callback(void *arg, struct udp_pcb *upcb, struct pbuf *p, const ip_addr_t *addr, u16_t port)
/* receive callback during tftp read operation (not on standard port 69)  */
void rrq_recv_callback(void *arg, struct udp_pcb *upcb, struct pbuf *p, const ip_addr_t *addr, u16_t port)
{
  tftp_connection_args *args = (tftp_connection_args *)arg;
  if (tftp_is_correct_ack(p->payload, args->block))
  {
    args->block++;
  }
  else
  {
  }
  if (args->data_len < TFTP_DATA_LEN_MAX)
  {
    tftp_cleanup_rd(upcb, args);
    pbuf_free(p);
  }
  tftp_send_next_block(upcb, args, addr, port);
  pbuf_free(p);
}