irclibs/C/irc.h
2023-08-07 18:06:44 +03:00

41 lines
821 B
C

#ifndef IRC_LINUX
#define IRC_LINUX
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <netdb.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <arpa/inet.h>
enum {
IRCC_CONNECTED = 1,
IRCC_NICK,
IRCC_PRIVMSG,
IRCC_JOIN,
IRCC_PART,
IRCC_PING,
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