*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
int (*setnick)(struct fnetnode *fn, wchar_t *newnick);
int (*reqconn)(struct fnetpeer *peer);
int (*sendchat)(struct fnetnode *fn, int public, wchar_t *to, wchar_t *string);
int (*search)(struct fnetnode *fn, struct search *srch, struct srchfnnlist *ln);
int (*setnick)(struct fnetnode *fn, wchar_t *newnick);
int (*reqconn)(struct fnetpeer *peer);
int (*sendchat)(struct fnetnode *fn, int public, wchar_t *to, wchar_t *string);
int (*search)(struct fnetnode *fn, struct search *srch, struct srchfnnlist *ln);
CBCHAIN(fnetnode_ac, struct fnetnode *fn, wchar_t *attrib);
CBCHAIN(fnetnode_chat, struct fnetnode *fn, int public, wchar_t *name, wchar_t *peer, wchar_t *string);
CBCHAIN(fnetnode_unlink, struct fnetnode *fn);
CBCHAIN(fnetnode_destroy, struct fnetnode *fn);
CBCHAIN(fnetnode_ac, struct fnetnode *fn, wchar_t *attrib);
CBCHAIN(fnetnode_chat, struct fnetnode *fn, int public, wchar_t *name, wchar_t *peer, wchar_t *string);
CBCHAIN(fnetnode_unlink, struct fnetnode *fn);
CBCHAIN(fnetnode_destroy, struct fnetnode *fn);
- int numpeers;
- void *data;
+ CBCHAIN(fnetpeer_new, struct fnetnode *fn, struct fnetpeer *peer);
+ CBCHAIN(fnetpeer_del, struct fnetnode *fn, struct fnetpeer *peer);
+ CBCHAIN(fnetpeer_chdi, struct fnetnode *fn, struct fnetpeer *peer, struct fnetpeerdi *di);
void fnetsetstate(struct fnetnode *fn, int newstate);
int fnetsetnick(struct fnetnode *fn, wchar_t *newnick);
struct fnet *findfnet(wchar_t *name);
void fnetsetstate(struct fnetnode *fn, int newstate);
int fnetsetnick(struct fnetnode *fn, wchar_t *newnick);
struct fnet *findfnet(wchar_t *name);
void linkfnetnode(struct fnetnode *fn);
void unlinkfnetnode(struct fnetnode *fn);
void getfnetnode(struct fnetnode *fn);
void linkfnetnode(struct fnetnode *fn);
void unlinkfnetnode(struct fnetnode *fn);
void getfnetnode(struct fnetnode *fn);
void killfnetnode(struct fnetnode *fn);
struct fnetpeer *fnetaddpeer(struct fnetnode *fn, wchar_t *id, wchar_t *nick);
void fnetdelpeer(struct fnetpeer *peer);
void killfnetnode(struct fnetnode *fn);
struct fnetpeer *fnetaddpeer(struct fnetnode *fn, wchar_t *id, wchar_t *nick);
void fnetdelpeer(struct fnetpeer *peer);
struct fnetpeer *fnetfindpeer(struct fnetnode *fn, wchar_t *id);
void fnetpeersetstr(struct fnetpeer *peer, wchar_t *id, wchar_t *value);
void fnetpeersetnum(struct fnetpeer *peer, wchar_t *id, int value);
struct fnetpeer *fnetfindpeer(struct fnetnode *fn, wchar_t *id);
void fnetpeersetstr(struct fnetpeer *peer, wchar_t *id, wchar_t *value);
void fnetpeersetnum(struct fnetpeer *peer, wchar_t *id, int value);
void fnethandlechat(struct fnetnode *fn, int public, wchar_t *name, wchar_t *peer, wchar_t *chat);
int fnetsendchat(struct fnetnode *fn, int public, wchar_t *to, wchar_t *string);
int fnetsearch(struct fnetnode *fn, struct search *srch, struct srchfnnlist *ln);
void fnethandlechat(struct fnetnode *fn, int public, wchar_t *name, wchar_t *peer, wchar_t *chat);
int fnetsendchat(struct fnetnode *fn, int public, wchar_t *to, wchar_t *string);
int fnetsearch(struct fnetnode *fn, struct search *srch, struct srchfnnlist *ln);
extern struct fnetnode *fnetnodes;
EGCBCHAIN(newfncb, struct fnetnode *);
extern struct fnetnode *fnetnodes;
EGCBCHAIN(newfncb, struct fnetnode *);