Hi,
Kann mir jemand sagen warum folgender programm code nicht funktioniert wie er sollte ? Der Socket kram geht, ich bekomme wenn ich recv() mache auch Daten vom IRC server zurück in der form :
-212.63.23.235- *** Looking up your hostname
-212.63.23.235- *** Checking Ident
-212.63.23.235- *** Found your hostname
-212.63.23.235- *** Got ident response
aber irgendwie geht es trotzdem nicht ! die Informationen wie man sich im einzelnen am Irc Server ‚anmeldet‘ sind von
ftp://ftp.irc.org/irc/docs/rfc2812.txt
int main(int argc, char* argv[])
{
WORD version = MAKEWORD(1,1);
WSADATA wsaData;
LPHOSTENT lpHostEntry;
int ErrorCode;
WSAStartup(version, &wsaData);
lpHostEntry = gethostbyname(„irc.quake.inet.fi“);
Socket = socket(AF_INET, SOCK_STREAM,6);
if( Socket == INVALID_SOCKET )
Codon(„Initiazation failed!“);
SOCKADDR_IN ServerInfo;
ServerInfo.sin_family = AF_INET;
ServerInfo.sin_addr = *((LPIN_ADDR)*lpHostEntry->h_addr_list);
ServerInfo.sin_port = htons(port);
printf(„Connect to %s on Port %i \n\n“, servername, port);
ErrorCode = connect(Socket,(struct sockaddr *)&ServerInfo,sizeof(struct sockaddr) );
if( ErrorCode == SOCKET_ERROR )
Codon(„Conenction failed!“);
printf(„Connected to Server…sending request\n\n“);
// Authorize
sprintf(Buffer,„USER %s IRC IRC %s\n“, nickname, realname );
send(Socket,Buffer,strlen(Buffer),0);
recv(Socket,Buffer,sizeof(Buffer),0);
printf("%s\n",Buffer);
sprintf(Buffer,„NICK %s\n“, nickname );
send(Socket,Buffer,strlen(Buffer),0);
printf(„Auth abgeschlossen…\n\n“);
sprintf(Buffer,„JOIN %s\n“,channel );
send(Socket,Buffer,strlen(Buffer),0);
return 0;
}