import std.stdio; import std.socket; import std.date; import std.string; import std.md5; int main(char[][] args) { if (args.length != 4) { printf("illegal arguments\n"); return 1; } char[] DYN_ID = args[1]; char[] SHARED_SECRET = args[2]; char[] SERVER_IP = args[3]; const int SERVER_PORT = 8053; long time = getUTCtime() / TicksPerSecond; char[] data = format("%s %s %d", DYN_ID, SHARED_SECRET, time); ubyte[16] checksum; sum(checksum, data); char[] dataToSend = format("%s %d %s", DYN_ID, time, tolower(digestToString(checksum))); Socket sock = new UdpSocket(AddressFamily.INET); InternetAddress serverAddress = new InternetAddress(SERVER_IP, SERVER_PORT); sock.sendTo(dataToSend, serverAddress); sock.close(); return 0; }