[ create a new paste ] login | about

Link: http://codepad.org/yDPQhV5k    [ raw code | output | fork ]

C++, pasted on Dec 31:
#include	<sys/socket.h>
#include	<netinet/in.h>
#include	<arpa/inet.h>
#include	<netdb.h>
#include	<stdio.h>
#include	<stdlib.h>
#include    <string>
#include	<unistd.h>
#include    <iostream>
#include    <cstring>
using namespace std;

int main(int argc, char *argv[])
{
	if (argc != 3)
	{
		cout << "Usage: <challenge name> <port>";
	}
	else
	{
		char udp_buffer[4096];
		memset(udp_buffer, 0, 4096);

		struct hostent *hp = gethostbyname(argv[1]);
		string ip = inet_ntoa(*(struct in_addr*)(hp->h_addr_list[0]));

		struct sockaddr_in udpserver;
		struct sockaddr_in udpclient;
		int udpfd = socket(AF_INET, SOCK_DGRAM, 0);
		udpserver.sin_family = AF_INET;
		udpserver.sin_port = htons(atoi(argv[2]));
		inet_pton(AF_INET, ip.c_str(), &udpserver.sin_addr);
		//bind(udpfd, (struct sockaddr*)&udpserver, sizeof(udpserver));
		socklen_t len = sizeof(udpserver);
		
		string activate = { "hi\n" };
		sendto(udpfd, activate.c_str(), activate.size(), 0, (struct sockaddr*)&udpserver, len);

		for (int t = 0; t < 5; t++)
		{
			memset(udp_buffer, 0, 4096);
			int n = recvfrom(udpfd, udp_buffer, 4096, 0, (struct sockaddr*)&udpserver, &len);
			printf("%s", udp_buffer);

			udp_buffer[n] = '\n';
			sendto(udpfd, udp_buffer, sizeof(udp_buffer), 0, (struct sockaddr*)&udpserver, len);
			printf("%s", udp_buffer);
		}
	}
}


Output:
1
2
In file included from t.cpp:2:
Line 19: error: stddef.h: No such file or directory


Create a new paste based on this one


Comments: