xref: /aosp_15_r20/external/erofs-utils/lib/liberofs_private.h (revision 33b1fccf6a0fada2c2875d400ed01119b7676ee5)
1 /* SPDX-License-Identifier: GPL-2.0-only OR Apache-2.0 */
2 
3 #ifdef HAVE_LIBSELINUX
4 #include <selinux/selinux.h>
5 #include <selinux/label.h>
6 #endif
7 
8 #ifdef WITH_ANDROID
9 #include <selinux/android.h>
10 #include <private/android_filesystem_config.h>
11 #include <private/canned_fs_config.h>
12 #include <private/fs_config.h>
13 #endif
14 
15 #ifndef HAVE_MEMRCHR
memrchr(const void * s,int c,size_t n)16 static inline void *memrchr(const void *s, int c, size_t n)
17 {
18 	const unsigned char *p = (const unsigned char *)s;
19 
20 	for (p += n; n > 0; n--)
21 		if (*--p == c)
22 			return (void*)p;
23 	return NULL;
24 }
25 #endif
26