/* * sender.c -- multicasts "hello, world!" to a multicast group once a second * * Antony Courtney, 25/11/94 */ #include #include #include #include #include #include #include #include #include #include #include #include #define HELLO_PORT 50010 #define HELLO_GROUP "225.0.0.37" int main(int argc, char *argv[]) { struct sockaddr_in addr; int fd, nbytes; // struct ip_mreq mreq; char *message="Hello, World!"; /* create what looks like an ordinary UDP socket */ if ((fd=socket(AF_INET,SOCK_DGRAM,0)) < 0) { perror("socket"); exit(1); } /* set up destination address */ memset(&addr,0,sizeof(addr)); addr.sin_family=AF_INET; addr.sin_addr.s_addr=inet_addr(HELLO_GROUP); addr.sin_port=htons(HELLO_PORT); /* now just sendto() our destination! */ while (1) { if ((nbytes=sendto(fd, message, strlen(message)+1, 0, (struct sockaddr *) &addr, sizeof(addr))) < 0) { perror("sendto"); exit(1); } printf("Sent %d bytes\n", nbytes); sleep(1); } return(EXIT_SUCCESS); }