daytimeudpcli1.lc 1.3 KB

123456789101112131415161718192021222324252627
  1. #include "unp.h"## 1 ##src/names/daytimeudpcli1.c##
  2. int## 2 ##src/names/daytimeudpcli1.c##
  3. main(int argc, char **argv)## 3 ##src/names/daytimeudpcli1.c##
  4. {## 4 ##src/names/daytimeudpcli1.c##
  5. int sockfd, n;## 5 ##src/names/daytimeudpcli1.c##
  6. char recvline[MAXLINE + 1];## 6 ##src/names/daytimeudpcli1.c##
  7. socklen_t salen;## 7 ##src/names/daytimeudpcli1.c##
  8. struct sockaddr *sa;## 8 ##src/names/daytimeudpcli1.c##
  9. if (argc != 3)## 9 ##src/names/daytimeudpcli1.c##
  10. err_quit## 10 ##src/names/daytimeudpcli1.c##
  11. ("usage: daytimeudpcli1 <hostname/IPaddress> <service/port#>");## 11 ##src/names/daytimeudpcli1.c##
  12. sockfd = Udp_client(argv[1], argv[2], (void **) &sa, &salen);## 12 ##src/names/daytimeudpcli1.c##
  13. printf("sending to %s\n", Sock_ntop_host(sa, salen));## 13 ##src/names/daytimeudpcli1.c##
  14. Sendto(sockfd, "", 1, 0, sa, salen); /* send 1-byte datagram */## 14 ##src/names/daytimeudpcli1.c##
  15. n = Recvfrom(sockfd, recvline, MAXLINE, 0, NULL, NULL);## 15 ##src/names/daytimeudpcli1.c##
  16. recvline[n] = '\0'; /* null terminate */## 16 ##src/names/daytimeudpcli1.c##
  17. Fputs(recvline, stdout);## 17 ##src/names/daytimeudpcli1.c##
  18. exit(0);## 18 ##src/names/daytimeudpcli1.c##
  19. }## 19 ##src/names/daytimeudpcli1.c##