Originariamente inviato da DydBoy
Se ne parlava giusto ieri.
era qualcosa di questo tipo
codice:
#include <stdio>
#include <winsock2>
#include <stdlib>
#pragma comment (lib, "ws2_32.lib")
#define BUFLEN 512
int main(){
//VARIABILI
char recvbuf[BUFLEN];
int valid;
int recvbuflen = BUFLEN;
const char* valid_mex = "User ******** has group access to: apache2";
//INIZIALIZAZZIONE SOCKET
WSADATA data;
WSAStartup(MAKEWORD(2,0), &data);
struct sockaddr_in ftp;
SOCKET s;
s = socket(AF_INET, SOCK_STREAM, 0);
//CONFIGURAZIONE CONNESSIONE FTP
char* host_name = "**********";
int ip = gethostbyname(host_name);
char* user = "************";
char* pass = "*************************";
//PARAMETRI CONNESSIONE
ftp.sin_family = AF_INET;
ftp.sin_port = htons(21);
ftp.sin_addr.s_addr = inet_addr(ip);
//CONNESSIONE FTP
if ( connect(s, (struct sockaddr*)&ftp, sizeof(struct sockaddr)) == SOCKET_ERROR){
printf("Errore connessione...");
closesocket(s);
system("PAUSE");
}
//LOG IN FTP
if (send(s, user, BUFLEN, 0) == SOCKET_ERROR){
printf("Impossibile inviare username...");
closesocket(s);
system("PAUSE");
}
if (send(s, pass, BUFLEN, 0) == SOCKET_ERROR){
printf("Impossibile inviare password...");
closesocket(s);
system("PAUSE");
}
valid = recv(s, recvbuf, recvbuflen, 0);
if (recvbuf == valid_mex){
printf("Log in effettuato");
system("PAUSE");
}
else{
printf("Errore nel login...");
closesocket(s);
system("PAUSE");
}
}