diff options
author | netblue30 <netblue30@yahoo.com> | 2018-08-28 13:04:13 -0400 |
---|---|---|
committer | netblue30 <netblue30@yahoo.com> | 2018-08-28 13:04:13 -0400 |
commit | 8ce3b7ab971d6ab02463fd6c7591a73465526cb1 (patch) | |
tree | 2df83450626433978a970dbae4fb38d84754600e /src/fbuilder/build_seccomp.c | |
parent | memory leaks (diff) | |
download | firejail-8ce3b7ab971d6ab02463fd6c7591a73465526cb1.tar.gz firejail-8ce3b7ab971d6ab02463fd6c7591a73465526cb1.tar.zst firejail-8ce3b7ab971d6ab02463fd6c7591a73465526cb1.zip |
fbuider cleanup
Diffstat (limited to 'src/fbuilder/build_seccomp.c')
-rw-r--r-- | src/fbuilder/build_seccomp.c | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/fbuilder/build_seccomp.c b/src/fbuilder/build_seccomp.c index 64bcac586..fbc0e06f4 100644 --- a/src/fbuilder/build_seccomp.c +++ b/src/fbuilder/build_seccomp.c | |||
@@ -20,12 +20,11 @@ | |||
20 | 20 | ||
21 | #include "fbuilder.h" | 21 | #include "fbuilder.h" |
22 | 22 | ||
23 | void build_seccomp(char *fname, int fd, FILE *fp) { | 23 | void build_seccomp(const char *fname, FILE *fp) { |
24 | assert(fname); | 24 | assert(fname); |
25 | assert(fd); | ||
26 | assert(fp); | 25 | assert(fp); |
27 | 26 | ||
28 | FILE *fp2 = fdopen(fd, "r"); | 27 | FILE *fp2 = fopen(fname, "r"); |
29 | if (!fp2) { | 28 | if (!fp2) { |
30 | fprintf(stderr, "Error: cannot open %s\n", fname); | 29 | fprintf(stderr, "Error: cannot open %s\n", fname); |
31 | exit(1); | 30 | exit(1); |
@@ -88,12 +87,11 @@ int inet = 0; | |||
88 | int inet6 = 0; | 87 | int inet6 = 0; |
89 | int netlink = 0; | 88 | int netlink = 0; |
90 | int packet = 0; | 89 | int packet = 0; |
91 | static void process_protocol(char *fname, int fd) { | 90 | static void process_protocol(const char *fname) { |
92 | assert(fname); | 91 | assert(fname); |
93 | assert(fd); | ||
94 | 92 | ||
95 | // process trace file | 93 | // process trace file |
96 | FILE *fp = fdopen(fd, "r"); | 94 | FILE *fp = fopen(fname, "r"); |
97 | if (!fp) { | 95 | if (!fp) { |
98 | fprintf(stderr, "Error: cannot open %s\n", fname); | 96 | fprintf(stderr, "Error: cannot open %s\n", fname); |
99 | exit(1); | 97 | exit(1); |
@@ -144,13 +142,11 @@ static void process_protocol(char *fname, int fd) { | |||
144 | 142 | ||
145 | 143 | ||
146 | // process fname, fname.1, fname.2, fname.3, fname.4, fname.5 | 144 | // process fname, fname.1, fname.2, fname.3, fname.4, fname.5 |
147 | void build_protocol(char *fname, int fd, FILE *fp) { | 145 | void build_protocol(const char *fname, FILE *fp) { |
148 | assert(fname); | 146 | assert(fname); |
149 | assert(fd); | ||
150 | assert(fp); | ||
151 | 147 | ||
152 | // run fname | 148 | // run fname |
153 | process_protocol(fname, fd); | 149 | process_protocol(fname); |
154 | 150 | ||
155 | // run all the rest | 151 | // run all the rest |
156 | struct stat s; | 152 | struct stat s; |
@@ -159,11 +155,8 @@ void build_protocol(char *fname, int fd, FILE *fp) { | |||
159 | char *newname; | 155 | char *newname; |
160 | if (asprintf(&newname, "%s.%d", fname, i) == -1) | 156 | if (asprintf(&newname, "%s.%d", fname, i) == -1) |
161 | errExit("asprintf"); | 157 | errExit("asprintf"); |
162 | if (stat(newname, &s) == 0) { | 158 | if (stat(newname, &s) == 0) |
163 | int nfd = open(newname, O_RDONLY); | 159 | process_protocol(newname); |
164 | process_protocol(newname, nfd); | ||
165 | unlink(newname); | ||
166 | } | ||
167 | free(newname); | 160 | free(newname); |
168 | } | 161 | } |
169 | 162 | ||