diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/libpostexecseccomp/libpostexecseccomp.c | 4 | ||||
-rw-r--r-- | src/libtrace/libtrace.c | 9 |
2 files changed, 3 insertions, 10 deletions
diff --git a/src/libpostexecseccomp/libpostexecseccomp.c b/src/libpostexecseccomp/libpostexecseccomp.c index 3983510ec..b2f64f18e 100644 --- a/src/libpostexecseccomp/libpostexecseccomp.c +++ b/src/libpostexecseccomp/libpostexecseccomp.c | |||
@@ -40,9 +40,7 @@ static void load_seccomp(void) { | |||
40 | return; | 40 | return; |
41 | } | 41 | } |
42 | unsigned short entries = (unsigned short) size / (unsigned short) sizeof(struct sock_filter); | 42 | unsigned short entries = (unsigned short) size / (unsigned short) sizeof(struct sock_filter); |
43 | struct sock_filter *filter = MAP_FAILED; | 43 | struct sock_filter *filter = mmap(NULL, size, PROT_READ, MAP_PRIVATE, fd, 0); |
44 | if (size != 0) | ||
45 | filter = mmap(NULL, size, PROT_READ, MAP_PRIVATE, fd, 0); | ||
46 | close(fd); | 44 | close(fd); |
47 | 45 | ||
48 | if (filter == MAP_FAILED) { | 46 | if (filter == MAP_FAILED) { |
diff --git a/src/libtrace/libtrace.c b/src/libtrace/libtrace.c index e252e9d26..1cab1ed3c 100644 --- a/src/libtrace/libtrace.c +++ b/src/libtrace/libtrace.c | |||
@@ -64,14 +64,9 @@ void init(void) { | |||
64 | strncpy(myname, "unknown", MAXNAME-1); | 64 | strncpy(myname, "unknown", MAXNAME-1); |
65 | 65 | ||
66 | // read file | 66 | // read file |
67 | FILE *fp = orig_fopen(fname, "r"); | 67 | FILE *fp = orig_fopen(fname, "r"); |
68 | if (!fp) | 68 | if (!fp || fgets(myname, MAXNAME, fp) == NULL) |
69 | strncpy(myname, "unknown", MAXNAME-1); | 69 | strncpy(myname, "unknown", MAXNAME-1); |
70 | if (fgets(myname, MAXNAME, fp) == NULL) { | ||
71 | fclose(fp); | ||
72 | free(fname); | ||
73 | strncpy(myname, "unknown", MAXNAME-1); | ||
74 | } | ||
75 | 70 | ||
76 | // clean '\n' | 71 | // clean '\n' |
77 | char *ptr = strchr(myname, '\n'); | 72 | char *ptr = strchr(myname, '\n'); |