All pastes #190555 Raw Edit

napa3um

public c v1 · immutable
·published 2006-10-04 03:07 UTC
rendered paste body
[...]void SendPositive(SOCKET to_sock, SOCKET about_sock){	SOCKADDR_IN name;	int len;	BYTE Buffer[10] = {5, 0, 0, 1};	len = sizeof(name);	getsockname(about_sock, (SOCKADDR*)&name, &len);	memcpy(&Buffer[4], &name.sin_addr.S_un.S_addr, 4);	memcpy(&Buffer[8], &name.sin_port, 2);	send(to_sock, Buffer, 10, 0);}[...]	target_sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);	switch(Buffer[1])	{	case 1:		puts("CONNECT");		if(!connect(target_sock, (SOCKADDR*)&target_addr, sizeof(target_addr)))		{			SendPositive(sock, target_sock);			SockToSock(sock, target_sock);		}		break;	case 2:		puts("BIND");		if(bind(target_sock, (SOCKADDR*)&target_addr, sizeof(target_addr))			&& listen(target_sock, 16))		{[...]