/* LICENSE: MIT Simple libary for working with ipv4 irc servers Dont support: ssl ddc ipv6 motd parsing */ #ifdef IRC_LINUX #define IRC_LINUX #include #include #include #include #include #include #include #include #define IRCC_MSG_MAX 512 #define IRCC_PING_TIMEOUT 600 enum { IRCC_NICK = 1, IRCC_PRIVMSG, IRCC_JOIN, IRCC_PART, IRCC_PING, IRCC_TOPIC, IRCC_MODE, IRCC_CONNECTED, IRCC_DISCONNECTED, IRCC_ERROR, IRCC_SUCCESS }; typedef struct { int socket; size_t size; char *raw; char *msg; char *channel; char *nick; } IRCC_client; unsigned int IRCC_connect(IRCC_client *irc, const char *ip, const unsigned int port); unsigned int IRCC_register(IRCC_client *irc, const char *nickname); unsigned int IRCC_recv(IRCC_client *irc); void IRCC_send(IRCC_client *irc, char *msg, char *channel); unsigned int IRCC_init(IRCC_client *irc, size_t size); void IRCC_close(IRCC_client *irc); #endif