summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2009-03-09 09:37:08 +0000
committerSteven Barth <steven@midlink.org>2009-03-09 09:37:08 +0000
commit589e680970d44e5bd006844bdeb6ed355c8d345b (patch)
tree5920ecf03f66480e61bdb0c522c6f9bac4aca5c5
parent30b7bc7c623dbef9683b1ec1762a78bd0b6d684d (diff)
Make nixio compile on OpenSolaris
-rw-r--r--libs/nixio/Makefile8
-rw-r--r--libs/nixio/src/process.c1
-rw-r--r--libs/nixio/src/sockopt.c5
-rw-r--r--libs/nixio/src/tls-socket.c10
4 files changed, 12 insertions, 12 deletions
diff --git a/libs/nixio/Makefile b/libs/nixio/Makefile
index df63dc183..f8d01b781 100644
--- a/libs/nixio/Makefile
+++ b/libs/nixio/Makefile
@@ -6,8 +6,6 @@ AXTLS_VERSION = 1.2.1
AXTLS_DIR = axTLS
AXTLS_FILE = $(AXTLS_DIR)-$(AXTLS_VERSION).tar.gz
NIXIO_TLS ?= axtls
-EXTRA_CFLAGS = -std=c99
-NIXIO_CFLAGS = -D_XOPEN_SOURCE=500
NIXIO_OBJ = src/nixio.o src/socket.o src/sockopt.o src/bind.o src/address.o \
src/poll.o src/io.o src/file.o src/splice.o src/process.o \
@@ -24,10 +22,6 @@ ifeq ($(NIXIO_TLS),openssl)
TLS_LDFLAGS = -lssl
endif
-ifeq ($(OS),Linux)
- NIXIO_CFLAGS = -D_GNU_SOURCE
-endif
-
%.o: %.c
$(COMPILE) $(NIXIO_CFLAGS) $(LUA_CFLAGS) $(FPIC) -c -o $@ $<
@@ -55,7 +49,7 @@ $(AXTLS_DIR)/.prepared:
touch $@
src/libaxtls.a: $(AXTLS_DIR)/.prepared
- $(MAKE) -C $(AXTLS_DIR) CC=$(CC) CFLAGS="$(CFLAGS) $(EXTRA_CFLAGS) $(FPIC) '-Dalloca(size)=__builtin_alloca(size)' -Wall -pedantic -I../config -I../ssl -I../crypto" LDFLAGS="$(LDFLAGS)" OS="$(OS)" clean all
+ $(MAKE) -C $(AXTLS_DIR) CC=$(CC) CFLAGS="$(CFLAGS) $(EXTRA_CFLAGS) $(FPIC) -Wall -pedantic -I../config -I../ssl -I../crypto" LDFLAGS="$(LDFLAGS)" OS="$(OS)" clean all
cp -p $(AXTLS_DIR)/_stage/libaxtls.a src
clean: luaclean
diff --git a/libs/nixio/src/process.c b/libs/nixio/src/process.c
index 19fa10ef2..e8f0cdc50 100644
--- a/libs/nixio/src/process.c
+++ b/libs/nixio/src/process.c
@@ -24,6 +24,7 @@
#include <string.h>
#include <sys/wait.h>
#include <sys/types.h>
+#include <signal.h>
static int nixio_fork(lua_State *L) {
pid_t pid = fork();
diff --git a/libs/nixio/src/sockopt.c b/libs/nixio/src/sockopt.c
index b80e2e353..6ec87539b 100644
--- a/libs/nixio/src/sockopt.c
+++ b/libs/nixio/src/sockopt.c
@@ -23,6 +23,7 @@
#include <sys/time.h>
#include <string.h>
#include <fcntl.h>
+#include <errno.h>
#include "nixio.h"
@@ -124,7 +125,11 @@ static int nixio__getsetsockopt(lua_State *L, int set) {
} else if (!strcmp(option, "sndbuf")) {
return nixio__gso_int(L, sock->fd, SOL_SOCKET, SO_SNDBUF, set);
} else if (!strcmp(option, "priority")) {
+#ifdef SO_PRIORITY
return nixio__gso_int(L, sock->fd, SOL_SOCKET, SO_PRIORITY, set);
+#else
+ return nixio__pstatus(L, !(errno = ENOPROTOOPT));
+#endif
} else if (!strcmp(option, "broadcast")) {
return nixio__gso_int(L, sock->fd, SOL_SOCKET, SO_BROADCAST, set);
} else if (!strcmp(option, "linger")) {
diff --git a/libs/nixio/src/tls-socket.c b/libs/nixio/src/tls-socket.c
index 3b0744f04..693a2a551 100644
--- a/libs/nixio/src/tls-socket.c
+++ b/libs/nixio/src/tls-socket.c
@@ -82,11 +82,11 @@ static int nixio_tls_sock_recv(lua_State *L) {
t->pbufsiz -= req;
return 1;
} else {
- char *axbuf;
- int axread;
+ uint8_t *axbuf;
+ size_t axread;
/* while handshake pending */
- while ((axread = ssl_read(sock, (uint8_t**)&axbuf)) == SSL_OK);
+ while ((axread = ssl_read(sock, &axbuf)) == SSL_OK);
if (t->pbufsiz) {
lua_pushlstring(L, t->pbufpos, t->pbufsiz);
@@ -111,7 +111,7 @@ static int nixio_tls_sock_recv(lua_State *L) {
int stillwant = req - t->pbufsiz;
if (stillwant < axread) {
/* we got more data than we need */
- lua_pushlstring(L, axbuf, stillwant);
+ lua_pushlstring(L, (char *)axbuf, stillwant);
if(t->pbufsiz) {
lua_concat(L, 2);
}
@@ -130,7 +130,7 @@ static int nixio_tls_sock_recv(lua_State *L) {
t->pbufpos = t->pbuffer;
memcpy(t->pbufpos, axbuf + stillwant, t->pbufsiz);
} else {
- lua_pushlstring(L, axbuf, axread);
+ lua_pushlstring(L, (char *)axbuf, axread);
if(t->pbufsiz) {
lua_concat(L, 2);
}