- Dec 01, 2024
-
-
Rob Swindell authored
getnodedat() now performs a non-locked read by default. Perform more checks of getnodedat() return value before calling putnodedat() to avoid unintentionally zeroing out node.dab records. Add/use unlocknodedat() method for unlocking a node.dab record without writing. Note: The userdat.c getnodedat() and putnodedat() still return int (i.e. 0 on success), so that can be confusing.
-
Rob Swindell authored
-
Rob Swindell authored
It's possible now for clients to easily exceed the configured max concurrent connections limit, even though they just get an error 429 page. Let's at least track and log when a new highwater mark is reached.
-
Rob Swindell authored
-
Rob Swindell authored
Can't backup (make copies of) an open file.
-
Deucе authored
-
Deucе authored
We can't send a 4xx error (ie: client did something wrong) in plaintext on a TLS connection. Untested beyond a basic compile check.
-
Deucе authored
-
Rob Swindell authored
Clean-up the web server config menu quite a bit by condensing options.
-
Rob Swindell authored
You can also disable filebase access by setting the vpath prefix to blank.
-
Rob Swindell authored
We need to negate the negative return value to get the number of errors.
-
- Nov 30, 2024
-
-
Rob Swindell authored
We have this feature for the FTP, Mail, and Terminal servers (with no default limit) but crazy abuse of my Synchronet web servers has now made this a necessity for Vertrauen. A limit of 2 used to be considered reasonable long ago. Today, 10 seems fair enough. Setting to 0 will impose no max-connections per IP address (other than the total client limit per server).
-
Deucе authored
Similar problem as PulseAudio, but even grosser.
-
Deucе authored
The macro was only define in the xpdev GNUmakefile, not in Common, so bbslist.c did not know if it was enabled or not, and always showed it as disabled.
-
Rob Swindell authored
Apparently JSVAL_IS_STRING() can return true even when argv[1] is out of range (I guess I assumed it'd alwasy be NULL or VOID/undefined) and this can lead to crash when calling JS_ValueToString() on it.
-
Rob Swindell authored
As seen on MacOS, an SMB shared file can cause the Mac SMB client to report EIO error on locked-file read or lock attempts. So retry.
-
- Nov 27, 2024
-
-
Deucе authored
This makes more sense. Also, ones that are meaningless are hidden now.
-
Deucе authored
Use 0 for "no held mosaic" to avoid confusion around printable bytes. Store the state of the current cell *before* updating in fix_line()
-
Deucе authored
Top/bottom detection was somewhat broken. Interestingly, now the previous commit isn't working anymore. So issue 172 is not quite fixed yet.
-
Deucе authored
This was due to two main bugs... the simple one was a type where the cutoff between separated and contiguous mosaics was incorrect, which caused the first four separated mosaics to not be displayed. The second was due to a number of bugs in the Hold Mosaic implementation. This fixes the first half of issue 172.
-
Deucе authored
We want ASCII to map directly, and unicode values need to be sorted ascending for bsearch() to work properly. Fixes Prestel keyboard input not working in GDI mode.
-
- Nov 26, 2024
-
-
Deucе authored
If the remote sends 8-bit C1 codes, handle them as though they were properly escaped. Since Prestel terminals are 7-bit, these will never be sent by a proper Pretel system, but apparently some systems do weird non-standard things.
-
Rob Swindell authored
to notify sysop (user #1) that they were paged. Previously, this was a hard-coded string. The new string in text.dat is the same, but adds 2 BELs (CTRL-G chars) and is now customizable. Created an sbbs_t::notify() method to make this easier to use and that method supports @-code expansion, so this text.dat string supports @-codes (which I used). This addresses the feature request in issue #828 (beep the sysop in the telegram/short message, when they're paged).
-
- Nov 25, 2024
- Nov 24, 2024
-
-
Deucе authored
-
Deucе authored
-
Deucе authored
1) Initialize saverobot.name since this is checked unconditionally. This has a side effect of initializing everything else, but name is the only thing that actually matters. 2) Add a bar to the global settings menu. Previously, if you scrolled near the bottom and selected an option, after changing the option, you would jump up to the last item on the initial screen. 3) Fix the AreaMgr Support default value to be the current, not the opposite of current. 4) Use the correct variable for EchoMail Relay Filtered Messages setting default.
-
Deucе authored
We're carefully counting the errors, but never looking at the count.
-
Deucе authored
-
Deucе authored
-
Deucе authored
-
Deucе authored
For retina lies.
-
Rob Swindell authored
Upon any node.dab lock or read failure, this code would cause errormsg() which would often/usually end up claling getnodedat() which would block forever trying to acquire the ndoefile_mutex (introduced in commit b9633069, I'm not clear why). Unlock/release the mutex *before* calling errormsg().
-
- Nov 23, 2024
-
-
Rob Swindell authored
Don't deref that null pointer
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
It was always displayed (sent to stderr) when running scfg, echocfg, uedit, etc. in auto-curses mode, so suppress that noise.
-
Rob Swindell authored
Some USB modems (reportedly, USRobotics USB modem) don't strip the parity bit of data received from modem connections operating in < 8 bit modes (e.g. 7-E-1), as is normally don't with a modem connected to a UART, so we'll do that stripping (forcing to 0) here, as recommended by Deuce. Nelgin, if you're doing some manually stripping of the 7th bit bytes received from 7-E-1 connected modems and then sent to your server/BBS over TCP, you shouldn't need to do that now.
-