diff options
author | startx2017 <vradu.startx@yandex.com> | 2017-11-02 09:12:08 -0400 |
---|---|---|
committer | startx2017 <vradu.startx@yandex.com> | 2017-11-02 09:12:08 -0400 |
commit | 601068247adcb0f947c8098a1533de749accc02e (patch) | |
tree | 3c23f6e032da11a19f3b369365da966237edb4ec /src/firejail/fs_lib.c | |
parent | fix --dns issue #1621 (diff) | |
download | firejail-601068247adcb0f947c8098a1533de749accc02e.tar.gz firejail-601068247adcb0f947c8098a1533de749accc02e.tar.zst firejail-601068247adcb0f947c8098a1533de749accc02e.zip |
fixing filesystem reporting for firetools
Diffstat (limited to 'src/firejail/fs_lib.c')
-rw-r--r-- | src/firejail/fs_lib.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/firejail/fs_lib.c b/src/firejail/fs_lib.c index 18739c554..56a66742a 100644 --- a/src/firejail/fs_lib.c +++ b/src/firejail/fs_lib.c | |||
@@ -43,6 +43,21 @@ extern void fslib_install_system(void); | |||
43 | static int lib_cnt = 0; | 43 | static int lib_cnt = 0; |
44 | static int dir_cnt = 0; | 44 | static int dir_cnt = 0; |
45 | 45 | ||
46 | static void report_duplication(const char *full_path) { | ||
47 | char *fname = strrchr(full_path, '/'); | ||
48 | if (fname && *(++fname) != '\0') { | ||
49 | // report the file on all bin paths | ||
50 | int i = 0; | ||
51 | while (lib_paths[i]) { | ||
52 | char *p; | ||
53 | if (asprintf(&p, "%s/%s", lib_paths[i], fname) == -1) | ||
54 | errExit("asprintf"); | ||
55 | fs_logger2("clone", p); | ||
56 | free(p); | ||
57 | i++; | ||
58 | } | ||
59 | } | ||
60 | } | ||
46 | 61 | ||
47 | static char *build_dest_dir(const char *full_path) { | 62 | static char *build_dest_dir(const char *full_path) { |
48 | assert(full_path); | 63 | assert(full_path); |
@@ -81,6 +96,7 @@ void fslib_duplicate(const char *full_path) { | |||
81 | printf("copying %s to private %s\n", full_path, dest_dir); | 96 | printf("copying %s to private %s\n", full_path, dest_dir); |
82 | 97 | ||
83 | sbox_run(SBOX_ROOT| SBOX_SECCOMP, 4, PATH_FCOPY, "--follow-link", full_path, dest_dir); | 98 | sbox_run(SBOX_ROOT| SBOX_SECCOMP, 4, PATH_FCOPY, "--follow-link", full_path, dest_dir); |
99 | report_duplication(full_path); | ||
84 | lib_cnt++; | 100 | lib_cnt++; |
85 | } | 101 | } |
86 | 102 | ||