Dolda2000 GitWeb
/
doldaconnect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Generalize transargs into wcspairs.
[doldaconnect.git]
/
daemon
/
transfer.c
diff --git
a/daemon/transfer.c
b/daemon/transfer.c
index
d335b64
..
b2be0fe
100644
(file)
--- a/
daemon/transfer.c
+++ b/
daemon/transfer.c
@@
-46,8
+46,6
@@
GCBCHAIN(newtransfercb, struct transfer *);
void freetransfer(struct transfer *transfer)
{
void freetransfer(struct transfer *transfer)
{
- struct transarg *ta;
-
if(transfer == transfers)
transfers = transfer->next;
if(transfer->next != NULL)
if(transfer == transfers)
transfers = transfer->next;
if(transfer->next != NULL)
@@
-60,13
+58,8
@@
void freetransfer(struct transfer *transfer)
CBCHAINFREE(transfer, trans_p);
CBCHAINFREE(transfer, trans_destroy);
CBCHAINFREE(transfer, trans_filterout);
CBCHAINFREE(transfer, trans_p);
CBCHAINFREE(transfer, trans_destroy);
CBCHAINFREE(transfer, trans_filterout);
- while((ta = transfer->args) != NULL)
- {
- transfer->args = ta->next;
- free(ta->rec);
- free(ta->val);
- free(ta);
- }
+ while(transfer->args != NULL)
+ freewcspair(transfer->args, &transfer->args);
if(transfer->filter != -1)
killfilter(transfer);
if(transfer->etimer != NULL)
if(transfer->filter != -1)
killfilter(transfer);
if(transfer->etimer != NULL)
@@
-128,17
+121,6
@@
struct transfer *newtransfer(void)
return(new);
}
return(new);
}
-void transferaddarg(struct transfer *transfer, wchar_t *rec, wchar_t *val)
-{
- struct transarg *ta;
-
- ta = smalloc(sizeof(*ta));
- ta->rec = swcsdup(rec);
- ta->val = swcsdup(val);
- ta->next = transfer->args;
- transfer->args = ta;
-}
-
void transferattach(struct transfer *transfer, struct transferiface *iface, void *data)
{
if(transfer->iface != NULL)
void transferattach(struct transfer *transfer, struct transferiface *iface, void *data)
{
if(transfer->iface != NULL)
@@
-623,7
+605,7
@@
int forkfilter(struct transfer *transfer)
char **argv;
size_t argvsize, argvdata;
struct socket *insock, *outsock;
char **argv;
size_t argvsize, argvdata;
struct socket *insock, *outsock;
- struct
transarg
*ta;
+ struct
wcspair
*ta;
char *rec, *val;
wfilename = transfer->path;
char *rec, *val;
wfilename = transfer->path;
@@
-697,7
+679,7
@@
int forkfilter(struct transfer *transfer)
}
for(ta = transfer->args; ta != NULL; ta = ta->next)
{
}
for(ta = transfer->args; ta != NULL; ta = ta->next)
{
- if((rec = icwcstombs(ta->
rec
, NULL)) == NULL)
+ if((rec = icwcstombs(ta->
key
, NULL)) == NULL)
continue;
if((val = icwcstombs(ta->val, NULL)) == NULL)
continue;
continue;
if((val = icwcstombs(ta->val, NULL)) == NULL)
continue;