1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
/* * Copyright (c) 2019, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include <string.h> #undef memrchr void *memrchr(const void *src, int c, size_t len) { const unsigned char *s = src + (len - 1); while (len--) { if (*s == (unsigned char)c) { return (void*) s; } s--; } return NULL; }