diff options
author | Ryo Nakamura <upa@haeena.net> | 2022-10-20 20:25:23 +0900 |
---|---|---|
committer | Ryo Nakamura <upa@haeena.net> | 2022-10-20 20:25:23 +0900 |
commit | ab0bf7e5dc5f11ef8b108d0b5d65a6013e7fb2f4 (patch) | |
tree | 7921868d4665a07552a13debf251c1e139d4bbe8 /src/main.c | |
parent | 808069ab9dc57dbebcf46d0ff95114581cb5315c (diff) |
add atomic refcnt and locks.
It might be unnecessary, if open/close can be done without lock.
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -7,6 +7,7 @@ #include <util.h> #include <ssh.h> #include <file.h> +#include <atomic.h> #include <platform.h> int verbose = 0; /* util.h */ @@ -19,6 +20,8 @@ struct sscp { struct list_head file_list; struct list_head chunk_list; + lock chunk_lock; /* lock for chunk list */ + char *target; bool target_is_remote; }; @@ -111,6 +114,7 @@ int main(int argc, char **argv) memset(&sscp, 0, sizeof(sscp)); INIT_LIST_HEAD(&sscp.file_list); INIT_LIST_HEAD(&sscp.chunk_list); + lock_init(&sscp.chunk_lock); while ((ch = getopt(argc, argv, "n:s:S:l:p:i:c:Cvh")) != -1) { switch (ch) { |