Advertisement
Guest User

Untitled

a guest
Feb 1st, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. #include <iostream>
  2. #include <stdio.h>
  3. #include <sys/types.h>
  4. #include <sys/socket.h>
  5. #include <netinet/in.h>
  6. #include <arpa/inet.h>
  7. #include <string.h>
  8. #include <string>
  9. #include <unistd.h>
  10.  
  11. int xYes = 1; // Needed For setsockopt ...
  12.  
  13. //xIp = ip; // Set The IP Var To The Passed Argument
  14. xPort = port; // Set The Port Var To The Passed Argument
  15.  
  16. xSock = socket(AF_INET, SOCK_STREAM, 0); // Create a Socket
  17. if (xSock < 0)
  18. {
  19. xLyLastError.assign("SOCKET CREATION FAILED");
  20. }
  21.  
  22. memset(&xAddr, 0, sizeof(sockaddr_in)); // Fill The Memory WIth Zeors
  23. xAddr.sin_family = AF_INET; // This is For IPv4 , IPv6 Takes AF_INET6 But Its Not Supported For Now
  24. //inet_pton(AF_INET, xIp, &xAddr.sin_addr.s_addr); // Assing The IP To The Adress Struct
  25. xAddr.sin_addr.s_addr = INADDR_ANY; // Uncomment This If U Want The Server To Listen On All IPs It Has
  26. xAddr.sin_port = htons(xPort); // Connection Port
  27. // If We Didnt Close The Socket Last Time On The Same Port It Wont Work Without This ...
  28. setsockopt(xSock, SOL_SOCKET, SO_REUSEADDR, &xYes, sizeof(int));
  29.  
  30. int x;
  31. x = bind(xSock, (sockaddr*)&xAddr, sizeof(sockaddr_in)); //xAddr Type is sockaddr_inbut we need sockaddr so we just use Casting
  32.  
  33. if(x < 0)
  34. {
  35. exit(-1);
  36. }
  37.  
  38. listen(xSock, xMaxC); // Listen For Connections
  39.  
  40. socklen_t cSize = sizeof(sockaddr_in);
  41. xSock2 = accept(xSock, (sockaddr*)&xAddr2, &cSize); // Accept The Incomming Connection
  42. if(xSock2 < 0)
  43. {
  44. exit(-1);
  45. }
  46.  
  47. send(xSock,"MMMMSSSGG", strlen("MMMMSSSGG"), 0);
  48.  
  49. exit(0);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement