55 lines
1.9 KiB
C
55 lines
1.9 KiB
C
|
|
// *************************************************************
|
|
// stellt verbindung zum (IPv6) ircd her
|
|
// int port = ircd-port
|
|
// char *ipnum = ipnummer des ircd in xxx.xxx.xxx.xxx -notation
|
|
// return -1 = fehler beim socket-erstellen
|
|
// return -2 = fehler beim connecten
|
|
// return num>0 = socketfd
|
|
//
|
|
extern int connect_irc(int port, char *ipnum);
|
|
extern int connect_irc6(int port, char *ipnum);
|
|
|
|
|
|
|
|
// *************************************************************
|
|
// resolved die IPv4 / IPv6 des ircd
|
|
//
|
|
extern int resolve_ircd(char *host, int port);
|
|
|
|
|
|
|
|
// *************************************************************
|
|
// schliesst die verbindung zum ircd
|
|
// int socketnum = socketfd
|
|
//
|
|
extern int disconnect_irc(int socketnum);
|
|
|
|
|
|
|
|
// ***************************************************************
|
|
// sendet einen string an den ircd,
|
|
// zu lange strings werden nach stelle LINELENGTH-2 abgeschnitten
|
|
// und nen CR-LF (also \r\n) angefügt
|
|
// int socketnum = socket-handler
|
|
// char *msg = zu sendender string (1-LINELENGTH byte)
|
|
// return -2 = string leer
|
|
// return -1 = fehler in send()
|
|
// return num>0 = übertragene bytes
|
|
//
|
|
extern int netsend(int socketnum, char *msg);
|
|
|
|
|
|
|
|
// ************************************************
|
|
// empfängt eine zeile vom ircd und gibt einen zeiger auf den string zurück.
|
|
// jede zeile des ircd SOLLTE mit einem \r\n abgeschlossen sein.
|
|
// die zeilenlänge ist in LINELENGTH definiert. im RFC ist diese mit maximal
|
|
// 512byte (inklusive \r\n) angegeben. standard it aber 255byte
|
|
// sollte die zeilenlänge LINELENGTH überschreiten wird socket geschlossen.
|
|
// int socketnum = socketfd zum ircd
|
|
// return '\0' = zeile zu lang oder CR-LF-fehler leerer string wird zurückgegeben und disconnect
|
|
// return *char = zeiger auf den empfangenen string
|
|
//
|
|
extern char *netrecv(int socketnum);
|