#include #include #include #include #include uint64_t networkSntpQuery() { return wizSntpQuery(); } extern uint8_t SINK_SOCK; int8_t networkUdpSend(char *hostname, uint16_t port, uint8_t *buf, uint16_t bufLen) { uint8_t sinkAddr[4]; if (! wizDnsQuery(hostname, sinkAddr)) { coloredMsg(LOG_BLUE, "nus, failed to resolve sink server name"); return -1; } else { coloredMsg(LOG_BLUE, "nus, sink server at %d.%d.%d.%d", sinkAddr[0], sinkAddr[1], sinkAddr[2], sinkAddr[3]); } socket(SINK_SOCK, Sn_MR_UDP, port, 0); uint8_t sockState = getSn_SR(SINK_SOCK); if (sockState == SOCK_UDP) { sendto(SINK_SOCK, buf, bufLen, sinkAddr, port); coloredMsg(LOG_BLUE, "nus, sent"); } else { coloredMsg(LOG_BLUE, "nus, socket in unexpected state: %d", sockState); return -2; } close(SINK_SOCK); return 1; } void networkImplInit() { wizInit(); }