diff options
author | Ryo Nakamura <upa@haeena.net> | 2022-10-23 15:51:21 +0900 |
---|---|---|
committer | Ryo Nakamura <upa@haeena.net> | 2022-10-23 15:51:21 +0900 |
commit | d11ac58f4b95b2f0fe3579b6fd430b2c29465af2 (patch) | |
tree | bddf2e8f3e57018e90e41cb0f2966989d9e16ecd /src/main.c | |
parent | 99b2bca7e537f2954d2f99ebeb4d5f93a7bcb91f (diff) |
compilable in linux
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -307,6 +307,10 @@ int main(int argc, char **argv) struct sscp_thread *t = &threads[n]; t->sscp = &sscp; t->finished = false; + t->sftp = ssh_make_sftp_session(sscp.host, sscp.opts); + if (!t->sftp) + goto join_out; + ret = pthread_create(&t->tid, NULL, sscp_copy_thread, t); if (ret < 0) { pr_err("pthread_create error: %d\n", ret); @@ -352,14 +356,9 @@ void *sscp_copy_thread(void *arg) { struct sscp_thread *t = arg; struct sscp *sscp = t->sscp; - sftp_session sftp; + sftp_session sftp = t->sftp; struct chunk *c; - /* create sftp session */ - sftp = ssh_make_sftp_session(sscp->host, sscp->opts); - if (!sftp) - return NULL; - pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL); pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL); pthread_cleanup_push(sscp_copy_thread_cleanup, t); |