1234567891011121314151617181920212223242526272829303132333435363738 |
- From 78f7f09028fdd6a5e8e4e4b584749621eaef412f Mon Sep 17 00:00:00 2001
- From: Yann E. MORIN" <yann.morin.1998@free.fr>
- Date: Sat, 7 Dec 2019 17:24:50 -0800
- Subject: [PATCH] fix undefined macros in musl
- musl does not define glibc-specific macros, so use a simple version of
- the macro when it is not defined.
- This is very inefficient, however, but copying the code from glibc is
- not really possible because it is LGPL while libselinux in Public
- Domain, and we want to avoid license propagation, so this macro is
- completely written from scratch, and non-optimal.
- Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
- [Updated for 3.0]
- Signed-off-by: Adam Duskett <Aduskett@gmail.com>
- diff --git a/src/booleans.c b/src/booleans.c
- index ffa8d26..8569002 100644
- --- a/src/booleans.c
- +++ b/src/booleans.c
- @@ -65,6 +65,14 @@ int security_get_boolean_names(char ***names, int *len)
- goto bad;
- }
-
- +/* Simple (but inefficient) version of _D_ALLOC_NAMLEN when
- + * building with a C library that misses it (e.g. musl).
- + * Note: glibc does a strlen on (d)->d_name, so assume it is safe.
- + */
- +#ifndef _D_ALLOC_NAMLEN
- +#define _D_ALLOC_NAMLEN(d) (strlen((d)->d_name)+1)
- +#endif
- +
- for (i = 0; i < *len; i++) {
- n[i] = strdup(namelist[i]->d_name);
- if (!n[i]) {
- --
- 2.23.0
|