       uint16_t	mtu;
     } frag;			/* path mtu discovery */
   };
-  uint8_t     payload[64];	/* added to simulate echo data */
+  uint32_t    timestamp;
 };
 
 #define ICMP_ECHOREPLY		0	/* Echo Reply			*/

  }
  if (res != sizeof(reply) + sizeof(IPRAW_HEADER)) goto error;
  res = sock->recv(&reply, sizeof(reply), src, port);
  roundtrip = RTC::millis();

  // Sanity check the reply; right size, checksum, id
  if (res != sizeof(reply)) goto error;
  if (reply.type != ICMP_ECHOREPLY) goto error;
  if (INET::checksum(&reply, sizeof(reply)) != 0) goto error;
  if (req.echo.id != 0xC05A) goto error;

  // Calculate the time for the ping roundtrip
  roundtrip -= reply.echo.seq;
  INFO("roundtrip=%ud ms", roundtrip);

 error:
  sock->close();

  if (res < 0) goto error;

  INFO("Receive the reply", 0);
  uint32_t roundtrip;
  icmphdr reply;
  uint8_t src[4];
  uint16_t port;
