Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // This UDP Server will take command argument as port number, and
- // when a clients datagram comes in, the server displays this message
- // with clients ip address, and the server bounces back the message
- // with servers name
- #pragma comment(lib, "ws2_32.lib")
- #include <WinSock2.h>
- #include <stdio.h>
- int main(int argc, char** argv) {
- if (argc != 2) {
- printf("Usage: %s [port number]\n", argv[0]);
- return 1;
- }
- WSADATA wsa;
- int ret = WSAStartup(MAKEWORD(2, 2), &wsa);
- if (ret) {
- printf("WinSock API is not ready!\n");
- return 1;
- }
- printf("WinSock API is ready!\n");
- // we now can use socket functions
- SOCKET serv = socket(AF_INET, SOCK_DGRAM, 0);
- if (serv == INVALID_SOCKET) {
- printf("Socket cannot be created\n");
- return 1;
- }
- printf("Socket is ready!\n");
- SOCKADDR_IN myaddr;
- myaddr.sin_family = AF_INET;
- myaddr.sin_addr.s_addr = htonl(INADDR_ANY);
- myaddr.sin_port = htons(atoi(argv[1]));
- ret = bind(serv, (SOCKADDR *)&myaddr, sizeof(myaddr));
- if (ret == SOCKET_ERROR) {
- printf("bind is FAILED\n");
- return 1;
- }
- printf("Bind is OK\n");
- while (1);
- WSACleanup();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement