rendered paste body#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/param.h>
#include <netinet/in.h>
#include <netdb.h>
#include <string.h>
#include <arpa/inet.h>
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Hier werden die Texte gesendet////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int senden(int sock,char msg[1024])
{
int result;
result = send(sock, msg, strlen(msg), 0);
if (result == -1)
{
printf("couldn't send data");
return(3);
}
if (result < (signed)strlen(msg))
{
printf("couldn't send all data");
return(4);
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//dieses Empfangen ist für Längere Nachrichten//////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int empfangen(int sock)
{
int result;
char msg[1024];
do
{
result = recv(sock, msg, sizeof(msg)-1, 0);
if (result == 0)
{
puts("\r\nconnection terminated by server");
break;
}
if (result == -1)
{
printf("recv() error");
return(5);
}
msg[result] = 0;
puts(msg);
}
while (true);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Hauptprogramm/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int main()
{
printf("\n\tIRC BOT FÜR IRC.RESI.AT...zum Starten beliebige Taste drücken");
printf("\n\t=============================================================\n\n");
printf("Derzeit nur für nickname klaus!");
getchar();
//Socket erstellen//
int sock;
if ((sock = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{
printf("couldn't create socket");
return(1);
}
//Connect aufruf//
sockaddr_in addr;
memset(&addr, 0, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(6667); // Port
addr.sin_addr.s_addr = inet_addr("217.175.192.137"); // IP Adresse
if (connect(sock, (sockaddr*)&addr, sizeof(sockaddr)) == -1)
{
printf("couldn't connect to 217.175.192.137");
return(2);
}
//Nachrirchten senden//
senden(sock,"nick klaus2\r\n");
//empfangen_2(sock);
senden(sock,"USER user 8 * :user\r\n");
senden(sock,"JOIN #resi\r\n");
empfangen(sock);
//sleep(2);
//senden(sock,"WHOIS LukasHetzi\r\n");
//socket schließen//
close(sock);
return 0;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////