1 #ifndef _ClientSocket_h
2 #define _ClientSocket_h
6 #define SOCKET_FLAG_DEAD 0x01
7 #define SOCKET_FLAG_CONNECTED 0x02
8 #define SOCKET_FLAG_READY 0x04
9 #define SOCKET_FLAG_NOWHO 0x08
18 char buffer[BUF_SIZ*2]; //we need to store up to 2 full commands at once
19 unsigned int bufferpos;
23 struct UserNode *user;
25 struct ClientSocket *next;
28 struct ClientSocket* create_socket(char *host, int port, char *pass, struct UserNode *user);
29 int connect_socket(struct ClientSocket *client);
30 int close_socket(struct ClientSocket *client);
31 int write_socket(struct ClientSocket *client, char* msg, int len);
32 void socket_loop(int timeout_seconds);
33 void putsock(struct ClientSocket *client, const char *text, ...) PRINTF_LIKE(2, 3);
34 struct ClientSocket* getBots(int flags, struct ClientSocket* last_bot);