13 struct transfer *next, *prev;
14 struct conduit *conduit;
17 time_t cmptime, ckptime;
18 intmax_t cmpsize, ckpsize;
24 struct transfer *transfers;
25 struct conduitiface *iface;
32 int (*init)(struct conduit *conduit);
33 int (*connect)(struct conduit *conduit);
34 void (*destroy)(struct conduit *conduit);
35 int (*cancel)(struct conduit *conduit, struct transfer *transfer);
38 struct transfer *findtransferbytag(struct conduit *conduit, char *tag);
39 void transfersetsize(struct transfer *transfer, intmax_t size);
40 void transfersetpos(struct transfer *transfer, intmax_t pos);
41 struct transfer *newtransfer(struct conduit *conduit, char *tag, intmax_t size, intmax_t pos);
42 void freetransfer(struct transfer *transfer);
43 struct conduit *newconduit(struct conduitiface *iface, void *udata);
44 void freeconduit(struct conduit *conduit);
45 int condtryconn(struct conduit *conduit);
46 void conddisconn(struct conduit *conduit);
47 void condconnected(struct conduit *conduit);
49 extern void (*cb_condstate)(struct conduit *conduit, void *data);
50 extern void (*cb_trsize)(struct transfer *transfer, void *data);
51 extern void (*cb_trpos)(struct transfer *transfer, void *data);
52 extern void (*cb_trnew)(struct transfer *transfer, void *data);
53 extern void (*cb_trfree)(struct transfer *transfer, void *data);
54 extern struct conduitiface *conduit_pipe;
55 extern struct conduitiface *conduit_dclib;