1 #include "../src/kernel/swift.h"
3 #include <sys/socket.h>
7 #include <netinet/in.h>
10 #define ADDR 0x8182A8C0
13 int main(int argc, const char *argv[])
19 fprintf(stderr, "USAGE: %s listening_port\n", argv[0]);
23 sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
25 perror("Failed to create socket");
29 struct sockaddr_in saddr;
30 memset(&saddr, 0, sizeof(saddr));
32 saddr.sin_addr.s_addr = ADDR;
33 saddr.sin_port = htons(atoi(argv[1]));
34 saddr.sin_family = AF_INET;
36 if (bind(sock, (struct sockaddr *) &saddr, sizeof(saddr)) < 0) {
37 perror("Failed to bind socket");
45 struct sockaddr_in from;
47 memset(&msg, 0, sizeof(msg));
48 memset(&iov, 0, sizeof(iov));
49 memset(&from, 0, sizeof(from));
51 iov[0].iov_base = buf;
52 iov[0].iov_len = sizeof(buf);
57 msg.msg_namelen = sizeof(from);
61 ret = recvmsg(sock, &msg, 0);
63 perror("Failed to recv on socket");
67 printf("Received %d bytes on socket\n", ret);
68 printf("buf=%s\n", buf);
70 if (close(sock) < 0) {
71 perror("Failed to close socket");