udpserv01.c 617 B

1234567891011121314151617181920212223242526
  1. #include "unp.h"
  2. int
  3. main(int argc, char **argv)
  4. {
  5. int sockfd;
  6. struct sockaddr_in servaddr, grpaddr, cliaddr;
  7. sockfd = Socket(AF_INET, SOCK_DGRAM, 0);
  8. bzero(&servaddr, sizeof(servaddr));
  9. servaddr.sin_family = AF_INET;
  10. servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
  11. servaddr.sin_port = htons(SERV_PORT);
  12. Bind(sockfd, (SA *) &servaddr, sizeof(servaddr));
  13. bzero(&grpaddr, sizeof(servaddr));
  14. grpaddr.sin_family = AF_INET;
  15. grpaddr.sin_addr.s_addr = inet_addr("224.0.0.1");
  16. mcast_join(sockfd, &grpaddr, sizeof(grpaddr), NULL, 0);
  17. dg_echo(sockfd, (SA *) &cliaddr, sizeof(cliaddr));
  18. }