diff options
Diffstat (limited to 'include/linux/string.h')
| -rw-r--r-- | include/linux/string.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/string.h b/include/linux/string.h index fdd3442c6bcb..0266dbdaa4cd 100644 --- a/include/linux/string.h +++ b/include/linux/string.h @@ -562,4 +562,23 @@ static inline bool strstarts(const char *str, const char *prefix) return strncmp(str, prefix, strlen(prefix)) == 0; } +/** + * strends - Check if a string ends with another string. + * @str: NULL-terminated string to check against @suffix + * @suffix: NULL-terminated string defining the suffix to look for in @str + * + * Returns: + * True if @str ends with @suffix. False in all other cases. + */ +static inline bool __attribute__((nonnull(1, 2))) +strends(const char *str, const char *suffix) +{ + unsigned int str_len = strlen(str), suffix_len = strlen(suffix); + + if (str_len < suffix_len) + return false; + + return !(strcmp(str + str_len - suffix_len, suffix)); +} + #endif /* _LINUX_STRING_H_ */ |
