- Nov 05, 2022
-
-
Rob Swindell authored
So extended internal codes (e.g. for msg and file areas) now have a max length of 32 chars (16 prefix, 16 suffix) and most other internal codes are now limited to 16 chars (instead of 8).
-
Rob Swindell authored
-
Rob Swindell authored
My hub (1:218/700) is currently having what appears to be a TCP/IP connectivity issue that was resulting in infinite "Send failure" log messages and "We got an M_EOB, but there are still N files pending M_GOT" log messages. I first added better socket-send failure detection (checking return value of sendCmd() and sendData() where needed) and then noticed that failure to send a file was not detected (the sending.file.position is advanced even if sendData() fails), so now handling that condition too. Also added more diagnostics around socket-send failures (is socket writable?) in this particular case, the socket is not writable and socket-send is returning 0.
-
- Oct 29, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
This is pretty much a direct port using the *almost* exact same form definition file, except: 1. Uses sbbs.dll for common functions 2. Read config file (main.ini), so now needs SBBSCTRL env var set 3. Some minor improvements, like hour-glass cursor while searching and re-reading/loading/displaying the user data when any changes are saved. 4. Supports the v3.20 user base (obviously) 5. Flags nodes in-use by modified users with the UDAT node flag Some old bugs (e.g. the user credits were read/written from the old/wrong byte-offset) are no longer relevant.
-
Rob Swindell authored
-
Rob Swindell authored
This should be used elsewhere too.
-
Rob Swindell authored
putuserdatetime() needed to take a time32_t argument to be compatible with Borland C++ Builder. Eventually, when we stop using that tool, we can move to just 64-bit time_t's everywhere. parseuserdat() now accepts and optional array of field pointers to populate for each user field (for use with the new UserEditor.exe).
-
- Oct 26, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
exempt->exemptions, rest->restrictions, cdt->credits
-
Rob Swindell authored
-
Rob Swindell authored
As reported by Max (WESTLINE)
-
- Oct 25, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
- Oct 24, 2022
-
-
Rob Swindell authored
This would crash/segfault when the .ini files didn't exist
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
This adds a Ctrl-A code in the notification subject, so needs latest postmsg.cpp or that Ctrl-A code will end up in your email/inbox too (not really supported or stripped when sent over POP/SMTP).
-
Rob Swindell authored
We may want Ctrl-A sequences in the telegram subject, but not in the message subject
-
Randy Sommerfeld authored
-
- Oct 23, 2022
-
-
Rob Swindell authored
Will notify the sysop via email and telegram when a new user account has been created. For Morpheus (MORPHEUS)
-
Rob Swindell authored
-
Rob Swindell authored
... unless a comma is actually required.
-
Rob Swindell authored
Somehow, new users on Vertrauen *still* manage to answer "Yes" to both the QWK Networking account questions, accidentally creating a QWKnet account that's not useful for normal BBS user activities. So print a very clear "alert" style message making it even-more clear that the account they are creating will ONLY be useful for QWK Networking activities.
-
- Oct 22, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
This Coverity reported issue was previously resolved (incorrectly) with commit d02fc1a2 which also introduced a bug that ate all the unexpected cursor position report characters (causing issue #304). The correct fix was to compare the response length against the buffer size minus one, to leave room for the NUL terminator. While fixing this and issue #304, I noticed that this function was using the response length ('rsp') as both the state machine state and string length, which didn't work right if a nearly-matching report/response was received: the x/y values would have been stripped from the response before stuffing in the keyboard input buffer. So a bit of a refactor here using a proper state machine variable.
-
- Oct 21, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
Unexpected characters received (maybe typed by the user) were supposed to be stuffed in the keyboard input buffer using ungetstr(), but the input string was cleared rather than NUL-terminated before logging the expected character and calling ungetstr(), so nothing (a blank string) was logged and nothing was stuffed in the keyboard input-buffer in this case. Just an off-by-one bug. This should fix issue #304. Thanks to Keyop and Nelgin for their persistence in reporting and testing (in #synchronet at irc.synchro.net).
-