• src/sbbs3/js_socket.c

    From rswindell@VERT to CVS commit on Thursday, December 11, 2014 03:06:28
    src/sbbs3 js_socket.c 1.165 1.166
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv27992

    Modified Files:
    js_socket.c
    Log Message:
    Added comment regarding observed indefinite block in js_socket_recv().


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Saturday, August 29, 2015 02:33:18
    src/sbbs3 js_socket.c 1.170 1.171
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv28330

    Modified Files:
    js_socket.c
    Log Message:
    Lower the priority of some log messages to LOG_WARNING from LOG_ERROR since
    the are likely to only impact the current connection, not overall system operation.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From rswindell@VERT to CVS commit on Saturday, August 29, 2015 20:02:43
    src/sbbs3 js_socket.c 1.171 1.172
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv23098

    Modified Files:
    js_socket.c
    Log Message:
    Dont' log an error message when getpeername() fails in js_CreateSocketObject() - the socket could be (and sometimes is) already disconnected.


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Sunday, November 08, 2015 00:34:13
    src/sbbs3 js_socket.c 1.173 1.174
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv32360

    Modified Files:
    js_socket.c
    Log Message:
    Add a new socket constructor type:
    var s= new Socket(true, descriptor);

    This creates a new socket object from a socket descriptor.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Wednesday, January 13, 2016 01:44:07
    src/sbbs3 js_socket.c 1.174 1.175
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8494

    Modified Files:
    js_socket.c
    Log Message:
    Add a timeout parameter to Socket.recv().




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Wednesday, January 20, 2016 21:22:38
    src/sbbs3 js_socket.c 1.175 1.176
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv31905

    Modified Files:
    js_socket.c
    Log Message:
    Be happy with the first successful bind() call, and use the next one
    correctly.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Wednesday, January 20, 2016 21:33:34
    src/sbbs3 js_socket.c 1.176 1.177
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv32393

    Modified Files:
    js_socket.c
    Log Message:
    Also, fix the loop condition... previously required at least two resolutions.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Thursday, May 12, 2016 18:31:17
    src/sbbs3 js_socket.c 1.178 1.179
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv25911

    Modified Files:
    js_socket.c
    Log Message:
    Fix socket.send() so that it returns the number of bytes sent. The
    underlying send() function is free to send a subset of the bytes, and occasionally does (especially on non-blocking sockets). The return value
    was true if all bytes were sent or false if not all bytes were sent.

    The new behaviour is to return the number of bytes sent or null on failure.

    This is mostly compatible with existing code which appears to universally use if (!sock.send(str))

    Cases where it's not compatible are when a zero-length string is sent. The handling of errors is slightly different now too... previously, if you retransmitted on failure, the stream would "stutter" now it will have
    "holes".




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From rswindell@VERT to CVS commit on Friday, May 13, 2016 09:25:47
    src/sbbs3 js_socket.c 1.179 1.180
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv12929

    Modified Files:
    js_socket.c
    Log Message:
    Fix bug introduced in rev 167 (the IPv6 commit):
    calling Socket.bind() with an undefined hostname parameter would result in a getaddrinfo() failure, e.g. on Windows, WSAHOST_NOT_FOUND 11001
    The ircd.js passes the value of server.interface_ip_address to socket.bind() and when run from jsexec, this property is not defined. So you couldn't run the ircd from jsexec or you'd get "!Error 0 binding socket to TCP port xxx".
    Also now setting the socket last_error value upon getaddrinfo() failure so
    if there is a failure, the error message won't include the erroneous "Error 0".


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, February 06, 2018 18:32:06
    src/sbbs3 js_socket.c 1.182 1.183
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv10230

    Modified Files:
    js_socket.c
    Log Message:
    Break the "secure socket" do {} while() loops in js_socket_recv() and js_socket_sendsocket() when the socket has been disconnected.
    I found a terminal user session on a disconnected socket, in an infinite loop in js_socket_recv(), had performed an https request from AnsiView->http.js.


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Tuesday, February 20, 2018 23:02:28
    src/sbbs3 js_socket.c 1.185 1.186
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv15988

    Modified Files:
    js_socket.c
    Log Message:
    Better error reporting in TLS sockets.
    Reduce certificate checking... the default level will not validate the certificate used by acme-staging-v02.api.letsencrypt.org. Presumably, that means other Google API stuff won't work either.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, February 23, 2018 14:05:35
    src/sbbs3 js_socket.c 1.186 1.187
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8876

    Modified Files:
    js_socket.c
    Log Message:
    Don't lot a warning when a TLS session completes normally.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, February 23, 2018 14:06:11
    src/sbbs3 js_socket.c 1.187 1.188
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8943

    Modified Files:
    js_socket.c
    Log Message:
    Fix derp.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, February 23, 2018 14:39:36
    src/sbbs3 js_socket.c 1.188 1.189
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv13095

    Modified Files:
    js_socket.c
    Log Message:
    recv()ing zero bytes always succeeds.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Wednesday, February 28, 2018 14:58:42
    src/sbbs3 js_socket.c 1.189 1.190
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17857

    Modified Files:
    js_socket.c
    Log Message:
    Fix crash in socket_select() if it's passed in an invalid socket.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, March 02, 2018 17:26:55
    src/sbbs3 js_socket.c 1.190 1.191
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv27739

    Modified Files:
    js_socket.c
    Log Message:
    Add ssl_server boolean property.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Monday, March 05, 2018 23:09:33
    src/sbbs3 js_socket.c 1.192 1.193
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv29281

    Modified Files:
    js_socket.c
    Log Message:
    Don't close external sockets... ever.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Monday, March 05, 2018 23:10:41
    src/sbbs3 js_socket.c 1.193 1.194
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv29443

    Modified Files:
    js_socket.c
    Log Message:
    Some needless paranoia.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Thursday, March 08, 2018 17:34:32
    src/sbbs3 js_socket.c 1.194 1.195
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv32083

    Modified Files:
    js_socket.c
    Log Message:
    Actually implement the timeout specified in Socket.recv().
    This has apparently never been implemented for non-TLS sockets, but it
    is used by some.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Thursday, March 08, 2018 19:18:57
    src/sbbs3 js_socket.c 1.195 1.196
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17928

    Modified Files:
    js_socket.c
    Log Message:
    Fix that ole last commit.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, March 09, 2018 10:25:01
    src/sbbs3 js_socket.c 1.196 1.197
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv20705

    Modified Files:
    js_socket.c
    Log Message:
    Fix build error.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, March 09, 2018 11:48:40
    src/sbbs3 js_socket.c 1.197 1.198
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv1443

    Modified Files:
    js_socket.c
    Log Message:
    When close() is called on an external socket (for example, from a service), call shutdown(sock, SHUT_RDWR) to do the TCP close, but leave the socket descriptor valid for the caller to clean up.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Saturday, March 10, 2018 01:17:55
    src/sbbs3 js_socket.c 1.201 1.202
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv9892

    Modified Files:
    js_socket.c
    Log Message:
    Not every crypt error is due to flushing data!



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Saturday, March 10, 2018 02:16:54
    src/sbbs3 js_socket.c 1.202 1.203
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17665

    Modified Files:
    js_socket.c
    Log Message:
    Have do_CryptFlush() return a bool.
    Also some whitespace cleanup.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Monday, March 12, 2018 17:41:34
    src/sbbs3 js_socket.c 1.205 1.206
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv7267

    Modified Files:
    js_socket.c
    Log Message:
    Limit push size to 8k. Fixes issue in the IMAP server where ver large
    sends would cause MAC errors.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Monday, March 12, 2018 23:16:11
    src/sbbs3 js_socket.c 1.206 1.207
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv21426

    Modified Files:
    js_socket.c
    Log Message:
    Don't log orderly shutdowns, even at debug level. This is mostly because
    my jsexec includes debug output... and this is super-normal.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Thursday, March 15, 2018 01:27:22
    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 Thursday, March 15, 2018 01:34:52
    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 Thursday, March 15, 2018 01:52:04
    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 Thursday, March 15, 2018 02:27:48
    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 Thursday, March 15, 2018 14:40:14
    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 Thursday, March 15, 2018 14:56:17
    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 Thursday, March 15, 2018 15:06:45
    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 Thursday, March 15, 2018 15:07:19
    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 Friday, March 16, 2018 08:01:15
    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 Sunday, March 18, 2018 11:34:43
    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 Monday, March 19, 2018 14:45:56
    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 Sunday, July 08, 2018 16:33:45
    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 Sunday, July 08, 2018 16:44:09
    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 Tuesday, August 14, 2018 00:59:21
    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 Tuesday, August 14, 2018 02:36:50
    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 Tuesday, August 14, 2018 20:36:47
    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 Wednesday, August 15, 2018 11:39:25
    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 Wednesday, August 15, 2018 14:21:10
    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 Thursday, August 16, 2018 12:33:14
    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 Thursday, August 16, 2018 12:00:58
    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 Thursday, August 16, 2018 11:44:20
    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 Monday, August 20, 2018 12:00:23
    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 Sunday, January 06, 2019 23:11:51
    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 Saturday, January 12, 2019 13:36:36
    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 Sunday, August 04, 2019 13:10:26
    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 Monday, August 05, 2019 14:08:56
    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 Monday, August 05, 2019 15:08:50
    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 Monday, August 05, 2019 16:32:40
    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 Monday, August 05, 2019 19:19:01
    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 Monday, August 05, 2019 19:44:58
    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 Monday, August 05, 2019 20:58:37
    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 Friday, August 16, 2019 23:41:25
    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 Tuesday, August 20, 2019 18:45:21
    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 Tuesday, August 27, 2019 00:07:07
    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 Monday, September 09, 2019 12:40:56
    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 Monday, September 16, 2019 22:07:20
    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 Thursday, April 09, 2020 12:15:21
    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 Saturday, August 08, 2020 18:48:58
    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 Saturday, August 08, 2020 19:29:53
    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 Sunday, November 22, 2020 00:14:40
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/ace3997a38743dbcb2f134bd
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Resolve gcc warnings about unused set variables.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, November 26, 2020 12:28:01
    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 Monday, February 15, 2021 21:32:41
    https://gitlab.synchro.net/main/sbbs/-/commit/a2a1448caeaf2b1a6add92e8
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Play this game.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Monday, February 15, 2021 21:33:43
    https://gitlab.synchro.net/main/sbbs/-/commit/a6efc1beffc68abb0f64e23e
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Merge remote-tracking branch 'origin/master'

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Monday, February 15, 2021 21:59:14
    https://gitlab.synchro.net/main/sbbs/-/commit/4e9ff218de9f9656b2451ae5
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix apparent memory leak in js_listening_socket_constructor()

    The socket set allocated by xpms_create() was never freed. Found by Coverity.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, March 17, 2021 10:46:53
    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 Friday, April 02, 2021 12:45:49
    https://gitlab.synchro.net/main/sbbs/-/commit/8eaa996b9092487ed67eb428
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix Socket.connect()

    Broken with the poll() update

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, April 04, 2021 13:38:22
    https://gitlab.synchro.net/main/sbbs/-/commit/4d23eff969882b00474af389
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix resource leaks caught by Coverity-scan

    CID 330950 and 319020

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, April 04, 2021 15:13:57
    https://gitlab.synchro.net/main/sbbs/-/commit/8e9b1273d3b896afc02f6180
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    printf fmt/argument type mismatches

    CID 319085 319089 319135 319142

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Monday, April 05, 2021 23:05:29
    https://gitlab.synchro.net/main/sbbs/-/commit/7a8b54b954b6d0fbce888961
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix some bugs around sock.on('write'...) and sock.clearOn()

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, February 23, 2022 23:25:45
    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 Tuesday, October 04, 2022 14:28:50
    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 Monday, November 28, 2022 11:03:39
    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 Saturday, May 27, 2023 12:47:08
    https://gitlab.synchro.net/main/sbbs/-/commit/ab4eca0e22c1c318db48edf6
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix misplaced JS_RESUMEREQUEST() - do thise *before* potential return

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows)@VERT to Git commit to main/sbbs/master on Monday, July 24, 2023 17:21:26
    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 Monday, July 24, 2023 18:27:43
    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 Monday, July 24, 2023 18:29:00
    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 Monday, July 24, 2023 18:33:53
    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 Wednesday, September 06, 2023 15:38:01
    https://gitlab.synchro.net/main/sbbs/-/commit/f07baf44425fdbee1059e2e5
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix return value when p->peeked is true

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, September 06, 2023 15:38:02
    https://gitlab.synchro.net/main/sbbs/-/commit/72d7a4904ccc668abc4dc3f5
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Merge branch 'Ree/js_socket_recv-fix' into 'master'

    Fix return value when p->peeked is true

    See merge request main/sbbs!328

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, December 20, 2023 15:43:52
    https://gitlab.synchro.net/main/sbbs/-/commit/c9cb9c9cf9511b0f0ba29008
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Fix invalid pointer type waring (and bug)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, December 20, 2023 15:46:42
    https://gitlab.synchro.net/main/sbbs/-/commit/6aa310dfee947380e7513b35
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    get scfg from runtime before syncing cert

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Friday, January 19, 2024 20:43:37
    https://gitlab.synchro.net/main/sbbs/-/commit/242d088a8b7f6d2baa3c7569
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Ugh, spaces instead of tabs... so gross.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Friday, January 19, 2024 21:19:36
    https://gitlab.synchro.net/main/sbbs/-/commit/bebd0b64c36bccbc3f5d5cef
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Only tls servers should call destroy_session()

    TLS clients don't (currently) add a certificate, so there's no need
    to delete it.

    ---
    þ 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 Tuesday, November 21, 2023 20:45:25
    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 Wednesday, November 22, 2023 15:47:10
    https://gitlab.synchro.net/main/sbbs/-/commit/f71b2650467aa655a44271ea
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Improve JS error reporting

    Include function names. Include host:port in "Unable to connect" error.

    ---
    þ 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 Wednesday, November 22, 2023 15:55:13
    https://gitlab.synchro.net/main/sbbs/-/commit/13b07dbad2c77cef9f9f0aaf
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    __FUNCTION__ is not a string constant in GCC, so can't do this

    error: expected `)' before string constant

    Harumph.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Thursday, October 03, 2024 09:34:59
    https://gitlab.synchro.net/main/sbbs/-/commit/e67f51d0eaf484d995ade630
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Document the connect() callback thing.

    ---
    þ 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 Saturday, November 09, 2024 20:30:54
    https://gitlab.synchro.net/main/sbbs/-/commit/f1cdaea3b87caa96bbf9b8c6
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Don't check recvline() timeout *before* checking if there's data to receive

    This was a regression: Socket.recvline() used to not care what the timeout duration was so long as there were bytes to receive.

    Also, remove the ".0" from timeout values in documented mehtods that don't
    (any longer) accept floating point timeout durations. We used to support fractional seconds for some of these methods, and that was implied by using
    the floating point default values, but that's no longer the case. poll()
    still accepts a floating point timeout.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Monday, November 11, 2024 23:50:59
    https://gitlab.synchro.net/main/sbbs/-/commit/f4ea0c75823aafb6fa3d9da8
    Modified Files:
    src/sbbs3/js_socket.c
    Log Message:
    Document return values of Socket.poll()

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net