15/08/09 20:42
Zimo
Eccomi, dato che mi sono iscritto da poco dovevo subito postare qualcosa no?
Ho creato questo sorgente, esso appena riceve una connessione manda al client "Salve" e poi chiede di immettere un passowrd e se si sbaglia si chiude la connessione(avviene anche se si indovina, però volevo provare a vedere se funzionava).
Lo compilo, non mi da errori, però quando lo avvio sulla finestra compaio all infinito tutti caratteri.Mi sapreste aiutare a capire cosa sbaglio o a migliorare il sorgente?
Ho creato questo sorgente, esso appena riceve una connessione manda al client "Salve" e poi chiede di immettere un passowrd e se si sbaglia si chiude la connessione(avviene anche se si indovina, però volevo provare a vedere se funzionava).
Lo compilo, non mi da errori, però quando lo avvio sulla finestra compaio all infinito tutti caratteri.Mi sapreste aiutare a capire cosa sbaglio o a migliorare il sorgente?
#include<windows.h> #include<winsock2.h> #include<stdio.h> int main(void){ SOCKET sockfd, new_sockfd; WSADATA data; struct sockaddr_in host_addr, client_addr; WORD p; int sin_size; p = MAKEWORD(2,0); WSAStartup(p, &data); if((sockfd == socket(PF_INET, SOCK_STREAM, 0)) == -1) printf("Errore inizializzazzione socket"); host_addr.sin_family= PF_INET; host_addr.sin_port=htons(7890); host_addr.sin_addr.s_addr= 0; if(bind(sockfd, (struct sockaddr *) &host_addr, sizeof(struct sockaddr)) == -1) printf("Errore collegamento socket porta"); if(listen(sockfd, 1) == -1) printf("Errore coda client"); while(1){ sin_size = sizeof(struct sockaddr); new_sockfd = accept(sockfd, (struct sockaddr *) &client_addr, &sin_size); if(new_sockfd == -1) printf("Errore accettazione connessione!"); printf("ih"); send(new_sockfd, "Salve", 6, 0); if(send(new_sockfd, "Immettere password: ", 20, 0) == "camera"){ send(new_sockfd, "Esatto", 7, 0); closesocket(new_sockfd); } else { send(new_sockfd, "Errore", 8, 0); closesocket(new_sockfd); } closesocket(new_sockfd); } WSACleanup(); return 0; }
Ultima modifica effettuata da Zimo 15/08/09 20:44
aaa