From: =?utf-8?q?=C3=89rico_Nogueira_=3Cericonr_at_disroot=2Eorg=3E?= To: ellatlists.01.org Subject: [BUG] ELL doesn't have a fallback for rawmemchr Date: Mon, 30 Nov 2020 13:49:47 -0300 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=utf-8 Hi! Building ELL 0.35 on a musl system fails, due to ell/pem.c using rawmemchr(), which is a glibc extension. Building IWD with internal ELL fails for the same reason. I see that IWD itself has src/missing.h with a fallback, but ELL lacks that. We are using the following patch to fix the build: diff --git a/ell/pem.c b/ell/pem.c index 790f2c2..237ae02 100644 --- a/ell/pem.c +++ b/ell/pem.c @@ -224,7 +224,7 @@ static uint8_t *pem_load_buffer(const void *buf, size_t= buf_len, /* Check that each header line has a key and a colon */ while (start < end) { - const char *lf = rawmemchr(start, '\n'); + const char *lf = memchr(start, '\n', end - start); const char *colon = memchr(start, ':', lf - start); if (!colon) -- If ELL is willing to include a src/missing.h of their own, that would solve the issue, but avoiding rawmemchr() completely is also a possibility. Thanks, Érico