diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2024-09-16 02:19:21 +0200 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2024-09-16 07:36:54 +0200 |
commit | 41afafbf2a1b248bee77d6c9e5d73cee63595bb2 (patch) | |
tree | 29dc6f88ca6958e33dae30fe0c0869333c6522e1 /src/network | |
parent | NEWS: fix typo (diff) | |
download | systemd-41afafbf2a1b248bee77d6c9e5d73cee63595bb2.tar.xz systemd-41afafbf2a1b248bee77d6c9e5d73cee63595bb2.zip |
network/sysctl-monitor: fix sanity check in cut_last()
This also adds basic comment about the return code.
Follow-up for 6d9ef22acdeac4b429efb75164341233955484af.
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/bpf/sysctl_monitor/sysctl-monitor.bpf.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/network/bpf/sysctl_monitor/sysctl-monitor.bpf.c b/src/network/bpf/sysctl_monitor/sysctl-monitor.bpf.c index ef154931ce..e0ec8489d2 100644 --- a/src/network/bpf/sysctl_monitor/sysctl-monitor.bpf.c +++ b/src/network/bpf/sysctl_monitor/sysctl-monitor.bpf.c @@ -36,23 +36,22 @@ struct str { static long cut_last(u32 i, struct str *str) { char *s; - i = str->l - i - 1; - s = str->s + i; - /* Sanity check for the preverifier */ if (i >= str->l) - return 1; + return 1; /* exit from the loop */ + + i = str->l - i - 1; + s = str->s + i; if (*s == 0) - return 0; + return 0; /* continue */ if (*s == '\n' || *s == '\r' || *s == ' ' || *s == '\t') { *s = 0; - - return 0; + return 0; /* continue */ } - return 1; + return 1; /* exit from the loop */ } /* Cut off trailing whitespace and newlines */ |