Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - iberodjmx@hotmail.es

#1
Lesc omparto el codigo de lo que ya tengo:

#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:


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,
#2
Buenas noches he estado buscadole y la verdad no he logrado mucho soy nuevo en el foro y a veces un poco de ayuda se agradece, sucede que necesito programar un cliente en c que pueda comprobar la conexion a un sitio web en internet por algun puerto ej. 80, el host donde se ejecutara el cliente puede que tenga o no conexion por proxy por lo que de manera opcional se pondriasn en un archivo datos como son host proxy, puerto, usuario y contrasenia, si alguin pudiera orientarme en como poder lograr esto.

Como dato adicional estoy trabajando en un entorno windows 7.
Saludos y desde ya gracias