Visualizzazione dei risultati da 1 a 5 su 5

Discussione: C - Socket e SSL

  1. #1
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565

    C - Socket e SSL

    Salve.
    Uso Win32, sempre e comunque.
    Sto cercando di fare un minimale client di MSN (ho la febbre e non posso ne uscire ne stare con la morosa...quindi la creatività prende il sopravvento). Così seguendo l'apposita guida, ho fatto bei passi in avanti.
    Una volta fatto un rimbalzo di server, richieste delle informazioni e avuta la notification string, il protocollo dice di collegarsi a https://login.live.com/RST.srf

    Questo è già il primo problema.
    Come faccio ad andare con i socket via SSL?
    Cercando in MSDN, pare che WsaSetSocketSecurity "dovrebbe" fare al caso mio.
    O meglio, da quanto ho capito, farà in modo che una WsaQuerySocketSecurity dall'altro lato dia esito positivo.
    Così, compilati i pochi campi, avrei un ipotetico socket sicuro.
    E ora?
    Ho in modo grezzo cercato di rilevare l'indirizzo ip del server (come ho già fatto prima) con
    codice:
    getaddrinfo("https://login.live.com/RST.srf","443",&in,&out);
    Ma ovviamente fallisce. Ritorna ovviamente bene mettendo solo login.live.com (con https fallisce lo stesso).

    Quindi ok, mi collego a login.live.com sulla porta 443 (che tra l'altro non ci riesco, dato che la connessione va in timeout)

    codice:
    	SOCKET authsock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
    	SOCKET_SECURITY_SETTINGS security;
    
    	security.SecurityFlags = SOCKET_SETTINGS_GUARANTEE_ENCRYPTION;
    	security.SecurityProtocol = SOCKET_SECURITY_PROTOCOL_DEFAULT;
    
    	if (WSASetSocketSecurity(authsock,&security,sizeof(security),NULL,NULL) != 0)
    	{
    		cout <<"Argh.";
    	}
    
    	if (getaddrinfo("login.live.com","443",&in,&out) != 0)
    	{
    		cout <<"Gino.";
    	}
    
    
    	SocketAddr.S_un = ((struct sockaddr_in *)(out->ai_addr))->sin_addr.S_un;
    	std::cout <<"\nlogin.live.com risolto come: " << inet_ntoa(SocketAddr) <<endl;
    
    	if (connect(authsock,out->ai_addr,out->ai_addrlen) != 0)
    	{
    		std::cout <<"No no no." <<endl;
    	}
    
    	freeaddrinfo(out);
    Stampa "No no no"

    E poi? Dove vado? Cosa è quel file srf?
    La documentazione dice che devo inviargli una sorta di file XML, ma senza sapere come connettermi non posso fare molto.

    Grazie!!
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  2. #2
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Se evito di fare WSASetSocketSecurity la connessione avviene, ma comunque non so cosa fare.

    Edit:
    Pare ci sia qualcosa da fare con il SOAP.
    http://msnpiki.msnfanatic.com/index.php/MSNP15:SSO
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  3. #3
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    OREGOOOOOOOOOOOOOOON
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  4. #4
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    mmm
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  5. #5
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    ASFSADASDSAD
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.