irclibs/C/irc.h
Your Name 6a1d2cf850 fix
2023-12-30 17:09:59 +03:00

45 lines
839 B
C

/*
LICENSE: WTFPL
Simple libary for working with ipv4 irc servers
Dont support:
ssl
ddc
ipv6
motd
*/
#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;
char raw[IRCC_MSG_MAX + 1];
char *msg;
char *channel;
char *nick;
} IRCC_client;
int IRCC_connect(IRCC_client *irc, const char *ip, const unsigned int port);
int IRCC_recv(IRCC_client *irc);
int IRCC_join(IRCC_client *irc, const char *channel, const char *key);
int IRCC_send(IRCC_client *irc, const char *msg, const char *channel);
int IRCC_register(IRCC_client *irc, const char *nickname);
int IRCC_init(IRCC_client *irc);
void IRCC_close(IRCC_client *irc);