From 5cfc50e5f1a12fd7900e7603dc9a62a66e7c0449 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Thu, 8 May 2003 04:03:32 +0000 Subject: [PATCH] New is_writeable property (read-only),TRUE if/when the socket writeable. --- src/sbbs3/js_socket.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/sbbs3/js_socket.c b/src/sbbs3/js_socket.c index 64746613b2..0953973c5d 100644 --- a/src/sbbs3/js_socket.c +++ b/src/sbbs3/js_socket.c @@ -969,6 +969,7 @@ js_poll(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) enum { SOCK_PROP_LAST_ERROR ,SOCK_PROP_IS_CONNECTED + ,SOCK_PROP_IS_WRITEABLE ,SOCK_PROP_DATA_WAITING ,SOCK_PROP_NREAD ,SOCK_PROP_DEBUG @@ -1043,6 +1044,7 @@ static JSBool js_socket_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp) jsint tiny; ulong cnt; BOOL rd; + BOOL wr; private_t* p; socklen_t addr_len; SOCKADDR_IN addr; @@ -1069,6 +1071,10 @@ static JSBool js_socket_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp) else *vp = BOOLEAN_TO_JSVAL(socket_check(p->sock,NULL,NULL,0)); break; + case SOCK_PROP_IS_WRITEABLE: + socket_check(p->sock,NULL,&wr,0); + *vp = BOOLEAN_TO_JSVAL(wr); + break; case SOCK_PROP_DATA_WAITING: socket_check(p->sock,&rd,NULL,0); *vp = BOOLEAN_TO_JSVAL(rd); @@ -1147,6 +1153,7 @@ static struct JSPropertySpec js_socket_properties[] = { { "error" ,SOCK_PROP_LAST_ERROR ,SOCK_PROP_FLAGS, NULL,NULL}, { "last_error" ,SOCK_PROP_LAST_ERROR ,JSPROP_READONLY, NULL,NULL}, /* alias */ { "is_connected" ,SOCK_PROP_IS_CONNECTED ,SOCK_PROP_FLAGS, NULL,NULL}, + { "is_writeable" ,SOCK_PROP_IS_WRITEABLE ,SOCK_PROP_FLAGS, NULL,NULL}, { "data_waiting" ,SOCK_PROP_DATA_WAITING ,SOCK_PROP_FLAGS, NULL,NULL}, { "nread" ,SOCK_PROP_NREAD ,SOCK_PROP_FLAGS, NULL,NULL}, { "debug" ,SOCK_PROP_DEBUG ,JSPROP_ENUMERATE, NULL,NULL}, -- GitLab