contra

havok

Oct 26th, 2012
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.37 KB | None | 0 0
  1.  
  2.  
  3. #include <sys/types.h>
  4. #include <sys/socket.h>
  5. #include <netinet/in.h>
  6. #include <arpa/inet.h>
  7. #include <stdio.h>
  8. #include <unistd.h>
  9. #include <errno.h>
  10. #include <string.h>
  11. #include <stdlib.h>
  12.  
  13. int main()
  14. {
  15.         int sock;
  16.         int addr_len, bytes_read;
  17.         char recv_data[1024];
  18.         struct sockaddr_in server_addr , client_addr;
  19.  
  20.  
  21.         if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
  22.             perror("Socket");
  23.             exit(1);
  24.         }
  25.  
  26.         server_addr.sin_family = AF_INET;
  27.         server_addr.sin_port = htons(5000);
  28.         server_addr.sin_addr.s_addr = INADDR_ANY;
  29.         bzero(&(server_addr.sin_zero),8);
  30.  
  31.  
  32.         if (bind(sock,(struct sockaddr *)&server_addr,
  33.             sizeof(struct sockaddr)) == -1)
  34.         {
  35.             perror("Bind");
  36.             exit(1);
  37.         }
  38.  
  39.         addr_len = sizeof(struct sockaddr);
  40.        
  41.     printf("\nUDPServer Waiting for client on port 5000");
  42.         fflush(stdout);
  43.  
  44.     while (1)
  45.     {
  46.  
  47.           bytes_read = recvfrom(sock,recv_data,1024,0,
  48.                         (struct sockaddr *)&client_addr, &addr_len);
  49.      
  50.  
  51.       recv_data[bytes_read] = '\0';
  52.  
  53.           printf("\n(%s , %d) said : ",inet_ntoa(client_addr.sin_addr),
  54.                                        ntohs(client_addr.sin_port));
  55.           printf("%s", recv_data);
  56.       fflush(stdout);
  57.  
  58.         }
  59.         return 0;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment