ref: d22d253f7d37601c8cfd4f4603dfa3489e9d0593
dir: /dat.h/
typedef struct Prefix Prefix;
typedef struct Request Request;
typedef struct Command Command;
typedef struct Reply Reply;
typedef struct User User;
typedef struct Replybuffer Replybuffer;
typedef struct Userlist Userlist;
typedef struct Client Client;
#pragma varargck type "R" Request
struct Prefix
{
char *name;
char *user;
char *host;
};
struct Request
{
Command *cmd;
Prefix prefix;
char *args[15];
};
struct Command
{
char *name;
void (*func)(Client*,Request*);
};
struct Reply
{
int nr;
char *msg;
};
struct Replybuffer
{
QLock;
void *reply;
};
struct User
{
char *name;
char *realname;
User *prev;
User *next;
};
struct Userlist
{
User *first;
};
struct Client
{
ulong fid;
Replybuffer replies;
User *user;
char *nick;
Client *next;
Client *prev;
};
extern int debug;
extern char *sysnameb;
extern char *welcome;