# else
# error Unknown endianness!
# endif
+#elif defined(__linux__)
+# include <endian.h>
#elif defined(__APPLE__) || defined(__arm__) || defined(__aarch64__)
# include <machine/endian.h>
#elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) || defined(__DragonFly__)
called again with more data and the *have state. *have is initialized to
zero for the first call.
*/
-static unsigned syncsearch(uint32_t *have, const unsigned char *buf, uint32_t len) {
+static uint32_t syncsearch(uint32_t *have, const unsigned char *buf, uint32_t len) {
uint32_t got;
uint32_t next;