1 #include "../src/kernel/swift.h"
3 #include <sys/socket.h>
7 #include <netinet/in.h>
10 #define ADDR 0x80BEA8C0
12 int main(int argc, const char *argv[])
16 sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_SWIFT);
18 perror("Failed to create socket");
22 int size = sizeof(struct sockaddr_swift) + sizeof(struct swift_dest);
23 struct sockaddr_swift *saddr = malloc(size);
24 memset(saddr, 0, size);
27 saddr->dests[0].addr = ADDR;
28 saddr->dests[0].port = 50;
30 if (bind(sock, (struct sockaddr *) saddr, size) < 0) {
31 perror("Failed to bind socket");
36 char buf[] = "Buffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de testBuffer de test";
37 char buf2[] = "Buffer2";
40 int size2 = sizeof(struct sockaddr_swift) + 2 * sizeof(struct swift_dest);
41 struct sockaddr_swift *to = malloc(size2);
43 memset(&msg, 0, sizeof(msg));
44 memset(&iov, 0, sizeof(iov));
47 iov[0].iov_base = buf;
48 iov[0].iov_len = sizeof(buf);
49 iov[1].iov_base = buf2;
50 iov[1].iov_len = sizeof(buf2);
53 to->dests[0].addr = ADDR;
54 to->dests[0].port = 100;
55 to->dests[1].addr = ADDR;
56 to->dests[1].port = 101;
61 msg.msg_namelen = size2;
65 ret = sendmsg(sock, &msg, sizeof(msg));
67 perror("Failed to send on socket");
71 printf("Sent %d bytes on socket\n", msg.msg_namelen);
73 if (close(sock) < 0) {
74 perror("Failed to close socket");