Lesc omparto el codigo de lo que ya tengo:
y con el cual lo que he logrado establecer la conexion con el servidor sin embargo una vez conectado hay que hacer una autenticacion en caso de que exista, mi pregunta es como consigo eso con c++ ya que como podran ver es codigo c++.
En la parte que dice:
Creo que en la instruccion send es donde tendria que ir alguna instruccion como login: nombredeusuario \n password: micontrasenia y ahora si hacer peticiones de conexion a algun sitio web, la idea seria lograr la autenticacion una vez conectados al servidor proxy.
Saludos y gracias por sus aportaciones,
Código [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
char SendBuff[512],RecvBuff[512];
int main(int argc, char *argv[]){
WSADATA wsaData;
SOCKET conn_socket;
struct sockaddr_in server;
struct hostent *hp;
int resp;
//Inicializamos la DLL de sockets
resp=WSAStartup(MAKEWORD(1,0),&wsaData);
if(resp){
printf("Error al inicializar socket\n");
getchar();return -1;
}
//Obtenemos la IP del servidor... en este caso
// localhost indica nuestra propia máquina...
hp=(struct hostent *)gethostbyname("10.x.x.x");
if(!hp){
printf("No se ha encontrado servidor...\n");
getchar();WSACleanup();return WSAGetLastError();
}
// Creamos el socket...
conn_socket=socket(AF_INET,SOCK_STREAM, 0);
if(conn_socket==INVALID_SOCKET) {
printf("Error al crear socket\n");
getchar();WSACleanup();return WSAGetLastError();
}
memset(&server, 0, sizeof(server)) ;
memcpy(&server.sin_addr, hp->h_addr, hp->h_length);
server.sin_family = hp->h_addrtype;
server.sin_port = htons(3128);
// Nos conectamos con el servidor...
if(connect(conn_socket,(struct sockaddr *)&server,sizeof(server)) == SOCKET_ERROR){
printf("Fallo al conectarse con el servidor\n");
closesocket(conn_socket);
WSACleanup();getchar();return WSAGetLastError();
}
printf("Conexión establecida con: %s\n", inet_ntoa(server.sin_addr));
strcpy(SendBuff,"connect");
//Enviamos y recibimos datos...
printf("Enviando Mensaje... \n");
send(conn_socket,SendBuff,sizeof(SendBuff),0);
printf("Datos enviados: %s \n", SendBuff);
printf("Recibiendo Mensaje... \n");
recv(conn_socket,RecvBuff, sizeof(RecvBuff), 0);
printf("Datos recibidos: %s \n", RecvBuff);
getchar();
// Cerramos el socket y liberamos la DLL de sockets
closesocket(conn_socket);
WSACleanup();
return EXIT_SUCCESS;
}
y con el cual lo que he logrado establecer la conexion con el servidor sin embargo una vez conectado hay que hacer una autenticacion en caso de que exista, mi pregunta es como consigo eso con c++ ya que como podran ver es codigo c++.
En la parte que dice:
Código [Seleccionar]
printf("Enviando Mensaje... \n");
send(conn_socket,SendBuff,sizeof(SendBuff),0);Creo que en la instruccion send es donde tendria que ir alguna instruccion como login: nombredeusuario \n password: micontrasenia y ahora si hacer peticiones de conexion a algun sitio web, la idea seria lograr la autenticacion una vez conectados al servidor proxy.
Saludos y gracias por sus aportaciones,