X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=clients%2Fgnome-trans-applet%2Fconduit-dclib.c;h=2e8d0ae50854bef1678e6991d9cbe507a18a6dd7;hb=6431aca05e3425df8ac4c2ed4e621d191f01425f;hp=afc90c34ea4c24eaf6679d367a01f000eb1b1218;hpb=497fe07b194c883cf1a72de38ffb97d9deb10a9f;p=doldaconnect.git diff --git a/clients/gnome-trans-applet/conduit-dclib.c b/clients/gnome-trans-applet/conduit-dclib.c index afc90c3..2e8d0ae 100644 --- a/clients/gnome-trans-applet/conduit-dclib.c +++ b/clients/gnome-trans-applet/conduit-dclib.c @@ -304,11 +304,31 @@ static void destroy(struct conduit *conduit) free(data); } +static int cancel(struct conduit *conduit, struct transfer *transfer) +{ + struct data *data; + struct dtdata *dtd; + struct dc_transfer *dt; + + data = conduit->cdata; + for(dt = dc_transfers; dt != NULL; dt = dt->next) + { + if(((dtd = dt->udata) != NULL) && (dtd->ct == transfer)) + { + dc_queuecmd(NULL, NULL, L"cancel", L"%%i", dt->id, NULL); + return(0); + } + } + errno = -ESRCH; + return(-1); +} + static struct conduitiface st_conduit_dclib = { .init = init, .connect = connect, .destroy = destroy, + .cancel = cancel, }; struct conduitiface *conduit_dclib = &st_conduit_dclib;