1 /* 2 * Copyright (C) 2018-2022 Intel Corporation. 3 * SPDX-License-Identifier: BSD-3-Clause 4 */ 5 6 #ifndef __STRUTILS_H__ 7 #define __STRUTILS_H__ 8 9 #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) 10 #define s_not_expect(res, size) (res < 0 || (size_t)res >= size) 11 12 char *get_line(const char *str, size_t str_size, 13 const char *area, size_t area_size, 14 const char *search_from, size_t *len); 15 ssize_t strlinelen(const char *str, size_t size); 16 char *strrstr(const char *s, const char *str); 17 char *strtrim(char *str, size_t len); 18 int strcnt(char *str, char c); 19 char *strings_ind(char *strings, size_t size, int index, size_t *slen); 20 int str_split_ere(const char *str, size_t slen, 21 const char *fmt, size_t flen, ...); 22 #endif 23