Advertisement
Guest User

Untitled

a guest
May 4th, 2015
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. #include <sys/types.h>
  2. #include <sys/socket.h>
  3. #include <netinet/in.h>
  4. #include <arpa/inet.h>
  5. #include <string.h>
  6. #include <stdio.h>
  7. #include <stdlib.h>
  8. #include <unistd.h>
  9.  
  10. #define MAX_BUF 100
  11.  
  12. int main(int argc, char* argv[])
  13. {
  14. int sockd;
  15. struct sockaddr_in my_addr, srv_addr;
  16. char buf[MAX_BUF];
  17. int buff;
  18. int count;
  19. int addrlen;
  20.  
  21. if (argc < 3)
  22. {
  23. fprintf(stderr, "Usage: %s ip_address port_number\n", argv[0]);
  24. exit(1);
  25. }
  26. /* create a socket */
  27. sockd = socket(AF_INET, SOCK_DGRAM, 0);
  28. if (sockd == -1)
  29. {
  30. perror("Socket creation error");
  31. exit(1);
  32. }
  33.  
  34. /* client address */
  35. my_addr.sin_family = AF_INET;
  36. my_addr.sin_addr.s_addr = INADDR_ANY;
  37. my_addr.sin_port = 0;
  38.  
  39. bind(sockd, (struct sockaddr*)&my_addr, sizeof(my_addr));
  40.  
  41. strcpy(buf, "Hello world\n");
  42.  
  43. /* server address */
  44. srv_addr.sin_family = AF_INET;
  45. inet_aton(argv[1], &srv_addr.sin_addr);
  46. srv_addr.sin_port = htons(atoi(argv[2]));
  47.  
  48. scanf("%d", &buff);
  49.  
  50. buff=htonl(buff);
  51. sendto(sockd,(char *) &buff, sizeof(int), 0,
  52. (struct sockaddr*)&srv_addr, sizeof(srv_addr));
  53.  
  54. addrlen = sizeof(srv_addr);
  55. count = recvfrom(sockd, (char *) &buff, sizeof(int), 0,
  56. (struct sockaddr*)&srv_addr, &addrlen);
  57. buff=ntohl(buff);
  58. printf("%d", buff);
  59. //buf=atoi(buff);
  60. //write(1,buf, count);
  61.  
  62. close(sockd);
  63. return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement