Warning: This file is not a C or C++ file. It does not have highlighting.
1 | // SPDX-License-Identifier: (LGPL-2.0+ OR BSD-2-Clause) |
---|---|
2 | /* Copyright (C) 2018 Netronome Systems, Inc. */ |
3 | |
4 | #ifndef __TOOLS_LIBC_COMPAT_H |
5 | #define __TOOLS_LIBC_COMPAT_H |
6 | |
7 | #include <stdlib.h> |
8 | #include <linux/overflow.h> |
9 | |
10 | #ifdef COMPAT_NEED_REALLOCARRAY |
11 | static inline void *reallocarray(void *ptr, size_t nmemb, size_t size) |
12 | { |
13 | size_t bytes; |
14 | |
15 | if (unlikely(check_mul_overflow(nmemb, size, &bytes))) |
16 | return NULL; |
17 | return realloc(ptr, bytes); |
18 | } |
19 | #endif |
20 | #endif |
21 |
Warning: This file is not a C or C++ file. It does not have highlighting.