X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=include%2Fdoldaconnect%2Fuimisc.h;h=8043d8c089704b02eaa9f64cdb922b146f44e85c;hb=d4c5deab29eaaab4b40df157b41d712caa8b2209;hp=a7bc3e7823ef81ed35754aedee8a6d43160d2554;hpb=d3372da97568d5e1f35fa19787c8ec8af93a0435;p=doldaconnect.git diff --git a/include/doldaconnect/uimisc.h b/include/doldaconnect/uimisc.h index a7bc3e7..8043d8c 100644 --- a/include/doldaconnect/uimisc.h +++ b/include/doldaconnect/uimisc.h @@ -18,6 +18,10 @@ #define DC_FNN_STATE_EST 2 #define DC_FNN_STATE_DEAD 3 +#define DC_FNPD_INT 0 +#define DC_FNPD_LL 1 +#define DC_FNPD_STR 2 + #define DC_TRNS_WAITING 0 #define DC_TRNS_HS 1 #define DC_TRNS_MAIN 2 @@ -44,6 +48,41 @@ struct dc_fnetnode int found; void (*destroycb)(struct dc_fnetnode *fn); void *udata; + struct dc_fnetpeer *peers; + struct dc_fnetpeerdatum *peerdata; + void (*newpeercb)(struct dc_fnetpeer *peer); + void (*delpeercb)(struct dc_fnetpeer *peer); + void (*chpeercb)(struct dc_fnetpeer *peer); +}; + +struct dc_fnetpeerdatum +{ + struct dc_fnetpeerdatum *next, *prev; + int refcount; + int dt; + wchar_t *id; +}; + +struct dc_fnetpeerdi +{ + struct dc_fnetpeerdatum *datum; + union + { + int num; + long long lnum; + wchar_t *str; + } d; +}; + +struct dc_fnetpeer +{ + struct dc_fnetpeer *next, *prev; + struct dc_fnetnode *fn; + wchar_t *id; + wchar_t *nick; + int dinum; + int found; + struct dc_fnetpeerdi *di; }; struct dc_transfer @@ -57,6 +96,7 @@ struct dc_transfer int found; int error; time_t errortime; + wchar_t *hash; void (*destroycb)(struct dc_transfer *transfer); void *udata; }; @@ -69,6 +109,8 @@ struct dc_transfer *dc_findtransfer(int id); void dc_gettrlistasync(void (*callback)(int, void *), void *udata); wchar_t **dc_lexsexpr(wchar_t *sexpr); void dc_freewcsarr(wchar_t **arr); +void dc_getpeerlistasync(struct dc_fnetnode *fn, void (*callback)(struct dc_fnetnode *, int, void *), void *udata); +struct dc_fnetpeer *dc_fnetfindpeer(struct dc_fnetnode *fn, wchar_t *id); extern struct dc_fnetnode *dc_fnetnodes; extern struct dc_transfer *dc_transfers;