All pastes #753143 Raw Edit

Something

public text v1 · immutable
#753143 ·published 2007-10-29 00:01 UTC
rendered paste body
#include <winsock2.h>
#include <iostream>

using namespace std; 
SOCKET sock, client;
char *RecvBuf[128];
int result;
WSADATA WSAData;
int error;
char ip[100];
char *SendBuf[125];


int server(){
sock = WSAStartup(MAKEWORD(2,2), &WSAData);
if(sock != SOCKET_ERROR){
cout<<"Winsock Initalized.."<<endl;
}else{
error = WSAGetLastError();
cout<<"Winsock failed with error: "<<error<<endl;
}

SOCKADDR_IN server, clientSock;

sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if(sock != INVALID_SOCKET){
cout<<"Socket has been created.."<<endl;
}else{
error = WSAGetLastError();
cout<<"Socket failed with error: "<<error<<endl;
}

server.sin_family = AF_INET;
server.sin_port = htons(80);
server.sin_addr.s_addr = INADDR_ANY;

result = bind(sock,(sockaddr*)(&server), sizeof(server)+1);
if(result != SOCKET_ERROR){
cout<<"Socket has been binded.."<<endl;
}else{
error = WSAGetLastError();
cout<<"Bind returned with error: "<<error<<endl;

}

result = listen(sock, SOMAXCONN);
if(result != SOCKET_ERROR){
cout<<"In listening State.."<<endl;
}else{
error = WSAGetLastError();
cout<<"Listen() returned with error: "<<error<<endl;
}
int ClientSize = sizeof(clientSock)+1;
client  = accept(sock, (SOCKADDR*)&clientSock, &ClientSize);


if(client != SOCKET_ERROR){
cout<<"Connected."<<"."<<endl;
}else{
error = WSAGetLastError();
cout<<"Accept() failed with error: "<<error<<endl;

}



result = recv(client, *RecvBuf, sizeof(*RecvBuf)+1, 0);
if(result != SOCKET_ERROR){
cout<<"Client Said: "<<RecvBuf<<endl;
}else if(result == 0){


}

else{
error = WSAGetLastError();
cout<<"Recv returned error: "<<error<<endl;

}


result = send(client, *SendBuf, sizeof(SendBuf)+1, 0);
if(result != SOCKET_ERROR){
cout<<"Sent.."<<endl;
}else{
error = WSAGetLastError();

cout<<"Send() returned error: "<<error<<endl;

}
      
closesocket(sock);
closesocket(client);
WSACleanup();
}




int main(){
//cout<<"What ip to connect to?: "<<endl;
//cin>>ip;

server();

system("PAUSE");
}