char *buf;
int err;
struct fnetnode *fn;
+ struct wcspair *args;
haveargs(3);
havepriv(PERM_FNETCTL);
sq(sk, 0, L"504", L"Could not convert data to locale charset", NULL);
return;
}
- fn = fnetinitconnect(argv[1], buf);
+ args = NULL;
+ for(i = 3; i < argc - 1; i += 2)
+ newwcspair(argv[i], argv[i + 1], &args);
+ fn = fnetinitconnect(argv[1], buf, args);
err = errno;
free(buf);
if(fn == NULL)
sq(sk, 0, L"509", L"Could not parse the address", L"%%s", strerror(err), NULL);
return;
}
- for(i = 3; i < argc - 1; i += 2)
- {
- if(!wcscmp(argv[i], L"nick"))
- fnetsetnick(fn, argv[i + 1]);
- }
linkfnetnode(fn);
fnetsetname(fn, argv[2]);
putfnetnode(fn);
{
transfersethash(transfer, parsehash(argv[i + 1]));
} else {
- transferaddarg(transfer, argv[i], argv[i + 1]);
+ newwcspair(argv[i], argv[i + 1], &transfer->args);
}
}
}
static void cmd_lstrarg(struct socket *sk, struct uidata *data, int argc, wchar_t **argv)
{
struct transfer *transfer;
- struct transarg *ta;
+ struct wcspair *ta;
haveargs(2);
havepriv(PERM_TRANS);
sq(sk, 0, L"201", L"Transfer has no arguments", NULL);
} else {
for(ta = transfer->args; ta != NULL; ta = ta->next)
- sq(sk, ta->next != NULL, L"200", L"%%ls", ta->rec, L"%%ls", ta->val, NULL);
+ sq(sk, ta->next != NULL, L"200", L"%%ls", ta->key, L"%%ls", ta->val, NULL);
}
}