-
src/sbbs3/js_socket.c
From
deuce@VERT to
CVS commit on Wed Mar 14 21:27:00 2018
src/sbbs3 js_socket.c 1.207 1.208
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv5142
Modified Files:
js_socket.c
Log Message:
For right now, don't verify server names in certificates. This will need
to be changed to something the individual clients can frob in the near
future.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Wed Mar 14 21:34:00 2018
src/sbbs3 js_socket.c 1.208 1.209
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv5931
Modified Files:
js_socket.c
Log Message:
Fix misuse of SSL_OPTIONS in last commit.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Wed Mar 14 21:52:00 2018
src/sbbs3 js_socket.c 1.209 1.210
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv7676
Modified Files:
js_socket.c
Log Message:
Re-enable recv timeouts for TLS sessions. It was #ifdef'd out for some
reason.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Wed Mar 14 22:27:00 2018
src/sbbs3 js_socket.c 1.210 1.211
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv11587
Modified Files:
js_socket.c
Log Message:
The timeout to Socket.recv() is the *SECOND* argument, not a copy of the
first one.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Thu Mar 15 10:40:00 2018
src/sbbs3 js_socket.c 1.211 1.212
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv25401
Modified Files:
js_socket.c
Log Message:
Fix up js_recv_socket() some more... add explicit MSG_WAITALL support for
TLS, use MSG_WAITALL for reading integers, add a time() based timeout,
return as soon as any bytes are read (including zero), and generally
behave more closely to how recv() itself behaves.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Thu Mar 15 10:56:00 2018
src/sbbs3 js_socket.c 1.212 1.213
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv27342
Modified Files:
js_socket.c
Log Message:
Fix ret/copied confusion in last commit.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Thu Mar 15 11:06:00 2018
src/sbbs3 js_socket.c 1.213 1.214
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv28618
Modified Files:
js_socket.c
Log Message:
Have the return value of js_socket_recv() have something vaugely to do with
the return value if recv() for non-TLS sockets.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Thu Mar 15 11:07:00 2018
src/sbbs3 js_socket.c 1.214 1.215
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv28754
Modified Files:
js_socket.c
Log Message:
Add missing else in last commit.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Fri Mar 16 04:01:00 2018
src/sbbs3 js_socket.c 1.215 1.216
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv19554
Modified Files:
js_socket.c
Log Message:
Update Socket.recvline() for new js_socket_recv() TLS semantics.
Fixes recvline() returning an zero-length "line" on timeouts, which causes infinite loops and 100% CPU utilization with IMAPv4-TLS service (and likely
any other service that uses recvline with a short timeout).
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Sun Mar 18 07:34:00 2018
src/sbbs3 js_socket.c 1.216 1.217
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv3137
Modified Files:
js_socket.c
Log Message:
Log which attribute couldn't be set.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Mar 19 10:45:00 2018
src/sbbs3 js_socket.c 1.218 1.219
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv20768
Modified Files:
js_socket.c
Log Message:
If select() returns an error, return it rather than forcing the return value
to zero.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Sun Jul 8 12:33:00 2018
src/sbbs3 js_socket.c 1.219 1.220
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv9539
Modified Files:
js_socket.c
Log Message:
Fix js_send() to conform to documentation.
Also, is that some line ending weirdness? *shrug*
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Sun Jul 8 12:44:00 2018
src/sbbs3 js_socket.c 1.220 1.221
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv10801
Modified Files:
js_socket.c
Log Message:
Update documentation to match the behaviour... send() returns undefined,
not null on failure.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Mon Aug 13 20:59:00 2018
src/sbbs3 js_socket.c 1.221 1.222
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv30001
Modified Files:
js_socket.c
Log Message:
The timeout parameter to js_socket_recv() is in seconds. I don't think
Deuce really wanted to pass 1000 as a value here (use 1 instead). I don't
know if this was an observable problem or not, but it certainly *looks*
like a bug.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Mon Aug 13 22:36:00 2018
src/sbbs3 js_socket.c 1.222 1.223
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv8154
Modified Files:
js_socket.c
Log Message:
Fix-up js_recvline() based on infinite error/log message report from Nelgin:
term 0087 TLS ERROR 'Unexpected <Unknown type> (24) packet, expected application_data (23)' (-1) popping data
message repeated 492 times: [ term 0087 TLS ERROR 'Unexpected <Unknown type> (24) packet, expected application_data (23)' (-1) popping data]
When using TLS with a JS Socket object, if there was any kind of data error, the recvline() method would return a blank string rather than null/undefined. nntpservice.js just loops when it receives a blank string, so this caused an infinite loop (with disk-filling error log messages).
First change: if no data has been received (i == 0) and there's any kind of receive error or timeout or disconnection, just return null. And not undefined, but null (!) like in v3.15 (before the great JS engine update of 2000-mumble). Also, there appeared to be a JS_RESUMEREQUEST call missing in the TLS error return case - so that's another bug fixed.
Commented on the magic return values for js_sock_read_check()
and js_socket_recv().
Simplified js_sock_read_check() return value a tad: let the caller decide if they want to do something special based on the value of 'i'.
Added some comments to make this code more readable.
We are now no longer treating the different error return values (0 and -1) from js_socket_recv() special in this function, but we dont' treat them special in any of the other calls in this file/object either, so that seems to be the norm.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Al@VERT/TRMB to
rswindell on Tue Aug 14 16:36:00 2018
Re: src/sbbs3/js_socket.c
By: rswindell to CVS commit on Tue Aug 14 2018 12:59 am
The timeout parameter to js_socket_recv() is in seconds. I don't think Deuce really wanted to pass 1000 as a value here (use 1 instead). I don't know if this was an observable problem or not, but it certainly *looks* like a bug.
I'm not sure if this was the target of your changes but the "timed out receiving packet data" errors are gone from binkit now.. :)
Ttyl :-),
Al
... Disclaimer: Advice void where prohibitted by common sense!
---
þ Synchronet þ The Rusty MailBox - Penticton, BC Canada
-
From
Digital Man@VERT to
Al on Wed Aug 15 07:39:00 2018
Re: src/sbbs3/js_socket.c
By: Al to rswindell on Tue Aug 14 2018 08:36 pm
Re: src/sbbs3/js_socket.c
By: rswindell to CVS commit on Tue Aug 14 2018 12:59 am
The timeout parameter to js_socket_recv() is in seconds. I don't think Deuce really wanted to pass 1000 as a value here (use 1 instead). I don't know if this was an observable problem or not, but it certainly *looks* like a bug.
I'm not sure if this was the target of your changes but the "timed out receiving packet data" errors are gone from binkit now.. :)
Huh. That might just be a coincidence? I don't see any correlation between that and my changes.
digital man
Synchronet/BBS Terminology Definition #59:
XPDEV = Cross-platform Development
Norco, CA WX: 84.2øF, 52.0% humidity, 3 mph SE wind, 0.00 inches rain/24hrs
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Al@VERT/TRMB to
Digital Man on Wed Aug 15 10:21:00 2018
Re: src/sbbs3/js_socket.c
By: Digital Man to Al on Wed Aug 15 2018 11:39 am
Huh. That might just be a coincidence? I don't see any correlation between that and my changes.
I don't care for coincidences usually (in code) but this is a happy coincidence.. if it sticks.. :)
Ttyl :-),
Al
... Don't hate yourself in the morning; sleep till noon
---
þ Synchronet þ The Rusty MailBox - Penticton, BC Canada
-
From
Ragnarok@VERT/DOCKSUD to
Al on Thu Aug 16 08:33:00 2018
El 15/08/18 a las 18:21, Al escribió:
Re: src/sbbs3/js_socket.c
By: Digital Man to Al on Wed Aug 15 2018 11:39 am
Huh. That might just be a coincidence? I don't see any correlation between
that and my changes.
I don't care for coincidences usually (in code) but this is a happy coincidence.. if it sticks.. :)
I still have it:
8/16 12:30:23 evnt BINKPOLL Unconfigured address 510:771/1@justaxne
8/16 12:30:23 evnt BINKPOLL Unconfigured address 510:5128/0@justaxne
8/16 12:30:23 evnt BINKPOLL Unconfigured address 539:300/400@justaxne
8/16 12:30:23 evnt BINKPOLL Adding outbound files for 4:902/27@fidonet
8/16 12:30:23 evnt BINKPOLL Sending M_EOB command args:
8/16 12:30:23 evnt BINKPOLL Sent M_EOB command
8/16 12:30:23 evnt BINKPOLL Got M_FILE command args: FCD4FFE7.TH9 18007 1534437268 0
8/16 12:30:23 evnt BINKPOLL Receiving file:
/sbbs/temp/event/FCD4FFE7.TH9 (17.6KB)
8/16 12:30:23 evnt BINKPOLL Got data frame length 4096
8/16 12:30:23 evnt BINKPOLL Got data frame length 4096
8/16 12:30:24 evnt BINKPOLL Got data frame length 4096
8/16 12:30:24 evnt BINKPOLL Got data frame length 4096
8/16 12:30:24 evnt BINKPOLL Got data frame length 1623
8/16 12:30:24 evnt BINKPOLL Received file: /sbbs/temp/event/FCD4FFE7.TH9 (17.6KB)
8/16 12:30:24 evnt BINKPOLL Moving '/sbbs/temp/event/FCD4FFE7.TH9' to '/sbbs/fido/inbound/FCD4FFE7.TH9'.
8/16 12:30:24 evnt BINKPOLL Sending M_GOT command args: FCD4FFE7.TH9
18007 1534437268
8/16 12:30:24 evnt BINKPOLL Sent M_GOT command
8/16 12:30:24 evnt BINKPOLL Timed out receiving packet data!
8/16 12:30:24 evnt BINKPOLL Unlocking /sbbs/fido/outbound/0386001b.bsy.
8/16 12:30:24 evnt BINKPOLL Touching semaphore file: /sbbs/data/fidoin.now
8/16 12:30:24 evnt Timed event: BINKPOLL returned 0
8/16 12:30:26 evnt Semaphore signaled for Timed Event: FIDOIN
8/16 12:30:26 evnt Running native timed event: FIDOIN
8/16 12:30:26 evnt FIDOIN Executing external: /sbbs/exec/sbbsecho -lesrby!
8/16 12:30:26 evnt Timed event: FIDOIN returned 0
---
þ Synchronet þ Dock Sud BBS TLD 24 HS -
http://bbs.docksud.com.ar -
telnet://bbs.docksud.com.ar
-
From
echicken@VERT/ECBBS to
Ragnarok on Thu Aug 16 08:00:00 2018
Re: Re: src/sbbs3/js_socket.c
By: Ragnarok to Al on Thu Aug 16 2018 12:33:14
8/16 12:30:24 evnt BINKPOLL Sent M_GOT command
8/16 12:30:24 evnt BINKPOLL Timed out receiving packet data!
This may not be an actual problem even though the log message looks alarming.
In binkp.js -> BinkP.session there are situations where the timeout can be zero (seconds), so that the next attempt to receive a frame from the remote side will time out immediately (if there's no data waiting on the socket). The default 120 second timeout is used in other cases. Since there's no such delay in the timestamps from your log, I'd guess this is timing out immediately as designed.
Whether it's a problem depends on whether these sessions are being terminated prematurely. If not, maybe the log output should be adjusted for this case so as not to cause concern.
---
echicken
electronic chicken bbs - bbs.electronicchicken.com - 416-273-7230
þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
-
From
Al@VERT/TRMB to
Ragnarok on Thu Aug 16 07:44:00 2018
Re: Re: src/sbbs3/js_socket.c
By: Ragnarok to Al on Thu Aug 16 2018 12:33 pm
I still have it:
8/16 12:30:24 evnt BINKPOLL Timed out receiving packet data!
I haven't seen this here in a few days now. My error log was full of them but not now. Are you fully up to date? I suspect this is a normal thing as echicken suggests.
I still see "We got an M_EOB, but there are still 1 files pending M_GOT" but then I see we get an M_GOT three lines below so I don't think those things are troublesome.
Ttyl :-),
Al
... Don't eat that. Studies prove it is hazardous to your health
---
þ Synchronet þ The Rusty MailBox - Penticton, BC Canada
-
From
Al@VERT/TRMB to
Ragnarok on Mon Aug 20 08:00:00 2018
Re: Re: src/sbbs3/js_socket.c
By: Al to Ragnarok on Thu Aug 16 2018 11:44 am
8/16 12:30:24 evnt BINKPOLL Timed out receiving packet data!
I haven't seen this here in a few days now. My error log was full of them but not now. Are you fully up to date? I suspect this is a normal thing as echicken suggests.
One of my links was on vacation for a time and now that he's back I see this too..
Oops.. :)
Ttyl :-),
Al
... Captain, he's thinking about my breasts again! - Deanna Troy
---
þ Synchronet þ The Rusty MailBox - Penticton, BC Canada
-
From
rswindell@VERT to
CVS commit on Sun Jan 6 18:11:00 2019
src/sbbs3 js_socket.c 1.223 1.224
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv26303
Modified Files:
js_socket.c
Log Message:
Socket.connect() and .sendto() would not set Socket.error (aka last_error)
when a host-name lookup (getaddrinfo call) failed.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Sat Jan 12 08:36:00 2019
src/sbbs3 js_socket.c 1.224 1.225
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/home/rswindell/sbbs/src/sbbs3
Modified Files:
js_socket.c
Log Message:
Bug-fix: Socket.connect() would return true (success) even though a
TCP connection actually failed. This bug only appeared to affect *nix
systems. This bug appears to be very old, introduced in rev 1.74 of
this file (Mar-2003) by yours truly.
From the Linux 'connect' man page:
EINPROGRESS
The socket is nonblocking and the connection cannot be i
completed immediately. It is possible to select(2) or poll(2)
for completion by selecting the socket for writing. After
select(2) indicates writability, use getsockopt(2) to read the
SO_ERROR option at level SOL_SOCKET to determine whether
connect() completed successfully (SO_ERROR is zero) or
unsuccessfully (SO_ERROR is one of the usual error codes listed
here, explaining the reason for the failure).
We weren't doing the 'getsockopt(SO_ERROR)' part.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Sun Aug 4 09:10:26 2019
src/sbbs3 js_socket.c 1.230 1.231
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv28835
Modified Files:
js_socket.c
Log Message:
Added support for an IPv6 bool argument to the Socket() constructor:
new Socket(true) // creates an IPv6 TCP socket
new Socket(SOCK_STREAM, true) // creates an IPv6 TCP socket
new Socket(SOCK_DGRAM, true) // creates an IPv6 UDP socket
new Socket("myprot", true) // creates an IPv6 TCP socket named "myprot"
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 10:08:56 2019
src/sbbs3 js_socket.c 1.231 1.232
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv20435
Modified Files:
js_socket.c
Log Message:
Add new ConnectedSocket() and ListeningSocket() constructors.
These have a large number of optional parameters, so these are placed in
a separate argument as an object:
ie: var s = new ConnectedSocket("synchro.net", "finger", {type:SOCK_DGRAM}); ie: var s = new ListeningSocket(["::","0.0.0.0"], "printer", "spooler", {retry_count:15});
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 11:08:50 2019
src/sbbs3 js_socket.c 1.232 1.233
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv28797
Modified Files:
js_socket.c
Log Message:
Allow specifying a bindport in the optional parameter object.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 12:32:40 2019
src/sbbs3 js_socket.c 1.233 1.234
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv6206
Modified Files:
js_socket.c
Log Message:
Add bindaddrs support to ConnectedSocket constructor.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 15:19:01 2019
src/sbbs3 js_socket.c 1.234 1.235
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv27102
Modified Files:
js_socket.c
Log Message:
Add a timeout (default 10) parameter to ConnectedSocket constructor
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 15:44:58 2019
src/sbbs3 js_socket.c 1.235 1.236
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv30261
Modified Files:
js_socket.c
Log Message:
Fix build on inferior operating systems.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 5 16:58:37 2019
src/sbbs3 js_socket.c 1.236 1.237
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv6504
Modified Files:
js_socket.c
Log Message:
Fix typo.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Fri Aug 16 19:41:25 2019
src/sbbs3 js_socket.c 1.238 1.239
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv4842
Modified Files:
js_socket.c
Log Message:
Address msvc2019 warning C4018: '<': signed/unsigned mismatch
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Tue Aug 20 14:45:21 2019
src/sbbs3 js_socket.c 1.239 1.240
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/home/rswindell/sbbs/src/sbbs3
Modified Files:
js_socket.c
Log Message:
Fix typo in ListeningSocket constructor insufficient-args error:
"At least two arguments required (interfaces, port, and protocol)"
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Aug 26 20:07:07 2019
src/sbbs3 js_socket.c 1.241 1.242
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv21517
Modified Files:
js_socket.c
Log Message:
Don't close external sockets in finalize.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Sep 9 08:40:56 2019
src/sbbs3 js_socket.c 1.242 1.243
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv19634
Modified Files:
js_socket.c
Log Message:
Revision 1.242 prevented do_js_close() from being called in the finalize function for external sockets. However, service thrads that use TLS were relying on the finalize function to clean up the TLS session.
Revert 1.242, and add a finalize parameter to do_js_close() which will only avoid the shutdown() call rather than completely avoid do_js_close() completely.
This fixes a TLS session leak that would eventually prevent any new
encrypted connections.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Mon Sep 16 18:07:20 2019
src/sbbs3 js_socket.c 1.243 1.244
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv25856
Modified Files:
js_socket.c
Log Message:
Don't try to FD_SET() INVALID_SOCKET.
Instead, just return -1 from js_socket_recv().
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
deuce@VERT to
CVS commit on Thu Apr 9 08:15:21 2020
src/sbbs3 js_socket.c 1.244 1.245
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv15186
Modified Files:
js_socket.c
Log Message:
Add new Socket.family property, and Socket.[AP]F_INET6? constants.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Sat Aug 8 14:48:58 2020
src/sbbs3 js_socket.c 1.245 1.246
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/home/rswindell/sbbs/src/sbbs3
Modified Files:
js_socket.c
Log Message:
New Socket class property: error_str
text description of last socket error that occurred
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rswindell@VERT to
CVS commit on Sat Aug 8 15:29:53 2020
src/sbbs3 js_socket.c 1.246 1.247
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv10376
Modified Files:
js_socket.c
Log Message:
Insure Socket.connect() sets the "error" property to a representative error value when the connection fails.
Previously (on Windows), the "error" property would be set to 0 upon a connection failure.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell@VERT to
Git commit to sbbs/master on Sat Nov 21 19:14:40 2020
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Thu Nov 26 07:28:01 2020
https://gitlab.synchro.net/main/sbbs/-/commit/30d409114d29f84fb93d59c8
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Fix bug with Socket.getoption() of byte-sized options
Only observed on Windows, the option value variable (val) was uninitialized so querying byte-sized options using WinSock getsockopt() would leave the MSB of the value as undefined (garbage), resulting in sockinfo.js output like this:
KEEPALIVE = -858993663
instead of this:
KEEPALIVE = 1
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Mon Feb 15 16:32:41 2021
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Mon Feb 15 16:33:43 2021
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Mon Feb 15 16:59:14 2021
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Wed Mar 17 06:46:53 2021
https://gitlab.synchro.net/main/sbbs/-/commit/ec7f57ab985273580f085bbb
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Close Socket on unhandled TLS errors
While errors on transmit seem to be handled well, errors on receive
do not, especially through js_recv_line() which has been seen to
trigger a large number (hundreds) of ECONNRESET errors. To prevent
this, simply close the socket when an otherwise unhandled error
occurs.
Almost certainly fixes that issue, but the underlying cause is still undetermined. The calling script (imapservice.js) was checking Socket.is_connected after each recv_line() call, so if the socket
was actually reset, it would be expected to only call it once.
An alternative would be to explicitly handle the error that is
seen (CRYPT_ERROR_PARAM1), but let's try a generic fix first and see
of anything breaks because of it. Most likely issue would be an
inability to recv() data after calling shutdown(), but I don't think
many people do that except to move the TIME_WAIT to where they want
it.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Fri Apr 2 08:45:49 2021
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Sun Apr 4 09:38:22 2021
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Sun Apr 4 11:13:57 2021
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Mon Apr 5 19:05:29 2021
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Wed Feb 23 18:25:45 2022
https://gitlab.synchro.net/main/sbbs/-/commit/4a50048e71c7c6d958acd428
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Fix invalid type in argument to printf format specifier
CID 319135
Fix the return value of js_socket_sendfilesocket() while we're here (off_t instead of int).
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Tue Oct 4 14:28:50 2022
https://gitlab.synchro.net/main/sbbs/-/commit/f0127e9d4572f8c1c44536dc
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Check socket writability in JS Socket.send()
BINKP is suddenly frequently hanging on sendsocket() on Vertrauen on Windows (sending files to my Z1 hub) so try this as a solution.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Mon Nov 28 11:03:39 2022
https://gitlab.synchro.net/main/sbbs/-/commit/3389aadcb8d3bcc3b428b993
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Revert "Check socket writability in JS Socket.send()"
This reverts commit f0127e9d4572f8c1c44536dcda240c310e18f7d8.
This change was "wrong-headed" per Deuce and broke JS sends on
blocking sockets. Thanks for the help.
This fix for inifinite-wait on send() likely led to the infinite
BinkIT errors/log messages that led to commit 4dd32231.
The real fix for this problem (which can block all other timed
events from running), would be a Socket.poll() on the socket before
send in binkp.js.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell (on ChromeOS)@VERT to
Git commit to main/sbbs/master on Sat May 27 12:47:08 2023
-
From
Rob Swindell (on Windows)@VERT to
Git commit to main/sbbs/master on Mon Jul 24 17:21:26 2023
https://gitlab.synchro.net/main/sbbs/-/commit/52d9a03d372792616091e4c6
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Apply socket options from sockopts.ini to sockets created by ListeningSocket()
This socket constructor did not get the global socket options treatment when created (years ago).
This should fix issue #402 as reported by Nelgin and more recently by Keyop.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell (on Debian Linux)@VERT to
Git commit to main/sbbs/master on Mon Jul 24 18:27:43 2023
https://gitlab.synchro.net/main/sbbs/-/commit/7ff687ff15f690410daa0bdb
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Revert "Apply socket options from sockopts.ini to sockets created by ListeningSocket()"
This reverts commit 52d9a03d372792616091e4c66b28d98d711d3b29.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell (on Debian Linux)@VERT to
Git commit to main/sbbs/master on Mon Jul 24 18:29:00 2023
https://gitlab.synchro.net/main/sbbs/-/commit/99e8c77caf4a718768e80e6a
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Revert "Revert "Apply socket options from sockopts.ini to sockets created by ListeningSocket()""
This reverts commit 7ff687ff15f690410daa0bdbe2ecc468ea1b4a41.
We're already passing a sock_init callback (ls_cb) which is supposed to set
the socket options (call set_socket_options), so this change shouldn't be necessary and reportedly caused more issues binding ircd sockets when running ircd.js via jsexec (though I didn't see this myself).
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell (on Debian Linux)@VERT to
Git commit to main/sbbs/master on Mon Jul 24 18:33:53 2023
https://gitlab.synchro.net/main/sbbs/-/commit/f9a44f56e2ad13a4373e63cd
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Manual revert of the ListeningSocket contructor "fix" which wasn't necessary
I keep reverting/un-reverting the merge that includes an unrelated logon.cpp change. So just manually remove this new code that was added to attempt to
fix issue #402 since I incorrectly concluded that sockopts.ini wasn't being applied to new sockets created with ListeningSocket().
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
rickparrish@VERT to
Git commit to main/sbbs/master on Wed Sep 6 15:38:01 2023
-
From
Rob Swindell@VERT to
Git commit to main/sbbs/master on Wed Sep 6 15:38:02 2023
-
From
Rob Swindell (on Windows 11)@VERT to
Git commit to main/sbbs/master on Tue Nov 21 20:45:25 2023
https://gitlab.synchro.net/main/sbbs/-/commit/2baafdb0f202ef1367fe6794
Modified Files:
src/sbbs3/js_socket.c
Log Message:
Limit JS Socket TLS error levels to "warning" severity
Ideally, this would use startup.tls_error_level, but which one? And how?
Also, make a TODO comment to fix the fact that all JS Socket log messages
are logged to the terminal server log output. :-(
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
-
From
Rob Swindell (on Windows 11)@VERT to
Git commit to main/sbbs/master on Wed Nov 22 15:47:10 2023
-
From
Rob Swindell (on Windows 11)@VERT to
Git commit to main/sbbs/master on Wed Nov 22 15:55:13 2023
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Wed Dec 20 15:43:52 2023
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Wed Dec 20 15:46:42 2023
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Fri Jan 19 20:43:37 2024
-
From
Deuc¿@VERT to
Git commit to main/sbbs/master on Fri Jan 19 21:19:36 2024