On Fri, Jul 11, 2025 at 11:55:14AM +0300, Andy Shevchenko wrote:
> The two str_has_prefix() and strstarts() are about the same
> with a slight difference on what they return. Group them in
> the header.

It seems more like strstarts should just be a macro around
str_has_prefix() != 0?

-Kees

> 
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
>  include/linux/string.h | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/include/linux/string.h b/include/linux/string.h
> index 01621ad0f598..fdd3442c6bcb 100644
> --- a/include/linux/string.h
> +++ b/include/linux/string.h
> @@ -345,16 +345,6 @@ extern ssize_t memory_read_from_buffer(void *to, size_t 
> count, loff_t *ppos,
>  
>  int ptr_to_hashval(const void *ptr, unsigned long *hashval_out);
>  
> -/**
> - * strstarts - does @str start with @prefix?
> - * @str: string to examine
> - * @prefix: prefix to look for.
> - */
> -static inline bool strstarts(const char *str, const char *prefix)
> -{
> -     return strncmp(str, prefix, strlen(prefix)) == 0;
> -}
> -
>  size_t memweight(const void *ptr, size_t bytes);
>  
>  /**
> @@ -562,4 +552,14 @@ static __always_inline size_t str_has_prefix(const char 
> *str, const char *prefix
>       return strncmp(str, prefix, len) == 0 ? len : 0;
>  }
>  
> +/**
> + * strstarts - does @str start with @prefix?
> + * @str: string to examine
> + * @prefix: prefix to look for.
> + */
> +static inline bool strstarts(const char *str, const char *prefix)
> +{
> +     return strncmp(str, prefix, strlen(prefix)) == 0;
> +}
> +
>  #endif /* _LINUX_STRING_H_ */
> -- 
> 2.47.2
> 

-- 
Kees Cook

Reply via email to