BUILD: buffers: buf.h requires unistd to get ssize_t on libmusl
Building with musl and gcc-5.3 for MIPS returns this :
include/common/buf.h: In function 'b_dist':
include/common/buf.h:252:2: error: unknown type name 'ssize_t'
ssize_t dist = to - from;
^
Including stdint or stddef is not sufficient there to get ssize_t,
unistd is needed as well. It's likely that other platforms will have
the same issue. This patch also addresses it in ist.h and memory.h.
diff --git a/include/common/buf.h b/include/common/buf.h
index d39de71..cc670bf 100644
--- a/include/common/buf.h
+++ b/include/common/buf.h
@@ -30,6 +30,7 @@
#include <stdint.h>
#include <string.h>
+#include <unistd.h>
/* Structure defining a buffer's head */
struct buffer {
diff --git a/include/common/ist.h b/include/common/ist.h
index 7c60c68..cfab1e3 100644
--- a/include/common/ist.h
+++ b/include/common/ist.h
@@ -30,6 +30,7 @@
#include <ctype.h>
#include <string.h>
+#include <unistd.h>
#include <common/config.h>
diff --git a/include/common/memory.h b/include/common/memory.h
index b854ebb..57d6ba6 100644
--- a/include/common/memory.h
+++ b/include/common/memory.h
@@ -27,6 +27,7 @@
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
+#include <unistd.h>
#include <common/config.h>
#include <common/mini-clist.h>
diff --git a/include/proto/htx.h b/include/proto/htx.h
index dd525fe..779aab6 100644
--- a/include/proto/htx.h
+++ b/include/proto/htx.h
@@ -440,10 +440,10 @@
{
int32_t pos;
- fprintf(stderr, "htx:%p [ size=%u - data=%u - used=%u - wrap=%s - extra=%lu]\n",
+ fprintf(stderr, "htx:%p [ size=%u - data=%u - used=%u - wrap=%s - extra=%llu]\n",
htx, htx->size, htx->data, htx->used,
(!htx->used || htx->tail+1 == htx->wrap) ? "NO" : "YES",
- (unsigned long)htx->extra);
+ (unsigned long long)htx->extra);
fprintf(stderr, "\thead=%d - tail=%u - front=%u - wrap=%u\n",
htx_get_head(htx), htx->tail, htx->front, htx->wrap);