On Sat, Oct 4, 2025 at 7:52 AM Rong Tao rtoax@foxmail.com wrote:
From: Rong Tao rongtao@cestc.cn
bpf_strcasestr() and bpf_strncasestr() functions perform same like bpf_strstr() and bpf_strnstr() except ignoring the case of the characters.
Signed-off-by: Rong Tao rongtao@cestc.cn
kernel/bpf/helpers.c | 96 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 75 insertions(+), 21 deletions(-)
diff --git a/kernel/bpf/helpers.c b/kernel/bpf/helpers.c index c9fab9a356df..4df902e5f208 100644 --- a/kernel/bpf/helpers.c +++ b/kernel/bpf/helpers.c @@ -3675,34 +3675,20 @@ __bpf_kfunc int bpf_strcspn(const char *s__ign, const char *reject__ign) return -EFAULT; }
-/**
- bpf_strnstr - Find the first substring in a length-limited string
- @s1__ign: The string to be searched
- @s2__ign: The string to search for
- @len: the maximum number of characters to search
- Return:
=0 - Index of the first character of the first occurrence of @s2__ign
within the first @len characters of @s1__ign
- %-ENOENT - @s2__ign not found in the first @len characters of @s1__ign
- %-EFAULT - Cannot read one of the strings
- %-E2BIG - One of the strings is too large
- %-ERANGE - One of the strings is outside of kernel address space
- */
-__bpf_kfunc int bpf_strnstr(const char *s1__ign, const char *s2__ign, size_t len) +int __bpf_strnstr(const char *s1, const char *s2, size_t len, bool ignore_case)
keep it static?
pw-bot: cr
[...]