Skip to content

Commit bd2b9aa

Browse files
LucaGuerraAndreagit97
authored andcommitted
cleanup(modern_bpf): address review comments
Signed-off-by: Luca Guerra <luca@guerra.sh> Co-authored-by: Andrea Terzolo <andreaterzolo3@gmail.com>
1 parent c1806ae commit bd2b9aa

File tree

1 file changed

+29
-32
lines changed

1 file changed

+29
-32
lines changed

userspace/libpman/src/maps.c

Lines changed: 29 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -115,64 +115,82 @@ int pman_update_capture_settings(struct capture_settings* settings) {
115115

116116
void pman_set_snaplen(uint32_t desired_snaplen) {
117117
struct capture_settings settings;
118-
pman_get_capture_settings(&settings);
118+
if(pman_get_capture_settings(&settings) != 0) {
119+
return;
120+
}
119121
settings.snaplen = desired_snaplen;
120122
pman_update_capture_settings(&settings);
121123
}
122124

123125
void pman_set_boot_time(uint64_t boot_time) {
124126
struct capture_settings settings;
125-
pman_get_capture_settings(&settings);
127+
if(pman_get_capture_settings(&settings) != 0) {
128+
return;
129+
}
126130
settings.boot_time = boot_time;
127131
pman_update_capture_settings(&settings);
128132
}
129133

130134
void pman_set_dropping_mode(bool value) {
131135
struct capture_settings settings;
132-
pman_get_capture_settings(&settings);
136+
if(pman_get_capture_settings(&settings) != 0) {
137+
return;
138+
}
133139
settings.dropping_mode = value;
134140
pman_update_capture_settings(&settings);
135141
}
136142

137143
void pman_set_sampling_ratio(uint32_t value) {
138144
struct capture_settings settings;
139-
pman_get_capture_settings(&settings);
145+
if(pman_get_capture_settings(&settings) != 0) {
146+
return;
147+
}
140148
settings.sampling_ratio = value;
141149
pman_update_capture_settings(&settings);
142150
}
143151

144152
void pman_set_drop_failed(bool drop_failed) {
145153
struct capture_settings settings;
146-
pman_get_capture_settings(&settings);
154+
if(pman_get_capture_settings(&settings) != 0) {
155+
return;
156+
}
147157
settings.drop_failed = drop_failed;
148158
pman_update_capture_settings(&settings);
149159
}
150160

151161
void pman_set_do_dynamic_snaplen(bool do_dynamic_snaplen) {
152162
struct capture_settings settings;
153-
pman_get_capture_settings(&settings);
163+
if(pman_get_capture_settings(&settings) != 0) {
164+
return;
165+
}
154166
settings.do_dynamic_snaplen = do_dynamic_snaplen;
155167
pman_update_capture_settings(&settings);
156168
}
157169

158170
void pman_set_fullcapture_port_range(uint16_t range_start, uint16_t range_end) {
159171
struct capture_settings settings;
160-
pman_get_capture_settings(&settings);
172+
if(pman_get_capture_settings(&settings) != 0) {
173+
return;
174+
}
161175
settings.fullcapture_port_range_start = range_start;
162176
settings.fullcapture_port_range_end = range_end;
163177
pman_update_capture_settings(&settings);
164178
}
165179

166180
void pman_set_statsd_port(uint16_t statsd_port) {
167181
struct capture_settings settings;
168-
pman_get_capture_settings(&settings);
182+
if(pman_get_capture_settings(&settings) != 0) {
183+
return;
184+
}
169185
settings.statsd_port = statsd_port;
170186
pman_update_capture_settings(&settings);
171187
}
172188

173189
void pman_set_scap_tid(int32_t scap_tid) {
174190
struct capture_settings settings;
175-
pman_get_capture_settings(&settings);
191+
if(pman_get_capture_settings(&settings) != 0) {
192+
return;
193+
}
176194
settings.scap_tid = scap_tid;
177195
pman_update_capture_settings(&settings);
178196
}
@@ -198,28 +216,6 @@ void pman_fill_syscall_sampling_table() {
198216
}
199217
}
200218

201-
int pman_init_settings_map() {
202-
char error_message[MAX_ERROR_MESSAGE_LEN];
203-
struct capture_settings settings = {};
204-
uint32_t key = 0;
205-
int fd = bpf_map__fd(g_state.skel->maps.capture_settings);
206-
if(fd <= 0) {
207-
snprintf(error_message, MAX_ERROR_MESSAGE_LEN, "unable to get capture_settings map!");
208-
pman_print_error((const char*)error_message);
209-
return errno;
210-
}
211-
212-
if(bpf_map_update_elem(fd, &key, &settings, BPF_ANY)) {
213-
snprintf(error_message,
214-
MAX_ERROR_MESSAGE_LEN,
215-
"unable to initialize capture_settings map!");
216-
pman_print_error((const char*)error_message);
217-
return errno;
218-
}
219-
220-
return 0;
221-
}
222-
223219
void pman_fill_ia32_to_64_table() {
224220
for(int syscall_id = 0; syscall_id < SYSCALL_TABLE_SIZE; syscall_id++) {
225221
// Note: we will map all syscalls from the upper limit of the ia32 table
@@ -452,7 +448,8 @@ int pman_prepare_maps_before_loading() {
452448

453449
int pman_finalize_maps_after_loading() {
454450
int err;
455-
err = pman_init_settings_map();
451+
struct capture_settings settings = {};
452+
err = pman_update_capture_settings(&settings);
456453
if(err != 0) {
457454
return err;
458455
}

0 commit comments

Comments
 (0)