#include #include #include #include #include #include #include #include #define PORT 12342 int main(int argc, char **argv) { int s, cc, i; struct sockaddr_in addr; in_addr_t destaddr = inet_addr("127.0.0.1"); if (argv[1]) destaddr = inet_addr(argv[1]); if ((s = socket(PF_INET, SOCK_SEQPACKET, IPPROTO_SCTP)) < 0) { perror("socket"); exit(1); } memset(&addr, '\0', sizeof(addr)); addr.sin_family = AF_INET; addr.sin_addr.s_addr = destaddr; addr.sin_port = htons(PORT); char buf[] = "yo momma wears army boots"; struct iovec iov[1] = {{.iov_base = buf, .iov_len = sizeof(buf)}}; struct msghdr msg = { .msg_name = &addr, .msg_namelen = sizeof(addr), .msg_iov = iov, .msg_iovlen = sizeof(iov)/sizeof(iov[0]), .msg_control = NULL, .msg_controllen = 0, .msg_flags = 0 }; for (i = 0; i < 4; i++) { printf("Sending message to %s\n", inet_ntoa(addr.sin_addr)); if ((cc = sendmsg(s, &msg, 0)) < 0) { perror("sendmsg"); exit(1); } sleep(2); } return 0; }