All pastes #753144 Raw Edit

Something

public text v1 · immutable
#753144 ·published 2007-10-29 00:01 UTC
rendered paste body
#include <iostream>
#include <string>
#include <winsock2.h>
#define WIN32_MEAN_AND_LEAN
#define TEMP_BUF_SIZE 128
using namespace std;
char ip[100];
int Cleanme();
SOCKET sock;
char *sendbuf= new char[128];

const char REQUEST_HEAD_1[] = 
{
	"HEAD / HTTP/1.1\r\n" 			// Get root index from server
	"Host: "						// Specify host name used
};
const char REQUEST_HEAD_2[] = 
{
      "\r\n"							// End hostname header from part1
	"User-agent: HeadReqSample\r\n" // Specify user agent
	"Connection: close\r\n" 		// Close connection after response
	"\r\n"
      
};

int port(){

WSADATA wsadat;
int start = 50;
int result;

char *recvbuf = new char[TEMP_BUF_SIZE];
int error;



error = WSAStartup(MAKEWORD(2,2), &wsadat);
if(error != SOCKET_ERROR){
cout<<"Winsock Initialized.."<<endl;
}
else{
     error = WSAGetLastError();
cout<<"winsock Failed with error: "<<error<<endl;
Cleanme();
}


sock = socket(AF_INET,SOCK_STREAM, IPPROTO_TCP);
if(sock != SOCKET_ERROR){
cout<<"Socket Created.."<<endl;
}
else{
     error = WSAGetLastError();
cout<<"Socket() returned error: "<<error<<endl;
Cleanme();
}


SOCKADDR_IN Port;

Port.sin_family = AF_INET;
Port.sin_port = htons(80);
Port.sin_addr.s_addr = inet_addr("127.0.0.1");

result = connect(sock, (SOCKADDR*)&Port, sizeof(Port));
if(result != SOCKET_ERROR){
cout<<"Connection Accepted.."<<endl;

}
else{
error = WSAGetLastError();
cout<<"Connect failed with error: "<<error<<endl;

}

result = send(sock, REQUEST_HEAD_1, sizeof(REQUEST_HEAD_1)+1, 0);
if(result != SOCKET_ERROR){
cout<<"Header1 sent.."<<endl;
delete sendbuf;
}else{
error = WSAGetLastError();
cout<<"send() returned error: "<<sendbuf<<endl;
Cleanme();
}
result = send(sock, REQUEST_HEAD_1, sizeof(REQUEST_HEAD_1)-1, 0);
if(result != SOCKET_ERROR){
cout<<"Header2 Sent.."<<endl;
delete sendbuf;
}else{
error = WSAGetLastError();
cout<<"send() returned error: "<<sendbuf<<endl;
Cleanme();
}

result = recv(sock,recvbuf, strlen(recvbuf)-1, 0);
if(result != SOCKET_ERROR){
cout<<"Dumping Data.."<<endl;

cout<<recvbuf<<endl;
delete recvbuf;
}else{
cout<<"Recv returned error: "<<WSAGetLastError()<<endl;
Cleanme();
}



}
int Cleanme(){
WSACleanup();
closesocket(sock);
}

int main(){
//cout<<"What ip to scan: "<<endl;
//cin>>ip;
//cout<<"what woudl you like to send: "<<endl;
//gets(sendbuf);

port();
system("PAUSE");


}