aboutsummaryrefslogtreecommitdiffstats
path: root/src/firejail/fs_lib.c
diff options
context:
space:
mode:
authorLibravatar startx2017 <vradu.startx@yandex.com>2017-11-02 09:12:08 -0400
committerLibravatar startx2017 <vradu.startx@yandex.com>2017-11-02 09:12:08 -0400
commit601068247adcb0f947c8098a1533de749accc02e (patch)
tree3c23f6e032da11a19f3b369365da966237edb4ec /src/firejail/fs_lib.c
parentfix --dns issue #1621 (diff)
downloadfirejail-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.c16
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);
43static int lib_cnt = 0; 43static int lib_cnt = 0;
44static int dir_cnt = 0; 44static int dir_cnt = 0;
45 45
46static 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
47static char *build_dest_dir(const char *full_path) { 62static 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