- Jun 11, 2022
-
-
Rob Swindell authored
DD message area chooser: Updated to try to prevent the error "this.subBoardListPrintfInfo[pGrpIdx] is undefined" See merge request !182
-
Eric Oulashin authored
DD message area chooser: Updated to try to prevent the error "this.subBoardListPrintfInfo[pGrpIdx] is undefined"
-
Rob Swindell authored
e.g. directive argument in the range [-255, 2147483645]
-
Rob Swindell authored
Suppresses GCC warning. I suppose some of these fields could be more digits than expected.
-
Rob Swindell authored
-
- Jun 10, 2022
-
-
Rob Swindell authored
This appears to fix the "lots of user.dat files open concurrently" behavior that remains when a browser/client has the webv4 page open for a long duration. Eventually, the User objects created in this loop would be cleaned (and the user.dat file descriptors closed), but the default garbage collection interval (configurable) is 1000 calls to the CommonOperationCallback function. This could be as as long as 1000 times through this loop before GC occurs. Since this is not a performance sensitive loop (we have a call to sleep for a full second) just force a garbage collection for each loop iteration.
-
- Jun 09, 2022
-
-
Rob Swindell authored
SlyEdit: Removed high-ascii characters from the JS files to avoid issues with editors changing encodings See merge request !180
-
Eric Oulashin authored
SlyEdit Version 1.78: Removed high-ascii characters from the SlyEdit JS files; used ascii() with their numeric ASCII values instead. This should avoid issues with text editors converting characters incorrectly.
-
Rob Swindell authored
-
Rob Swindell authored
dd_upload_processor readme update See merge request !179
-
- Jun 08, 2022
-
-
Eric Oulashin authored
-
Rob Swindell authored
Add support for an unlimited number of dial string (e.g. phone number) aliases in the [alias] section of the read .ini file. While the AT&Z, ATDSn support for stored numbers should work fine for the same use cases, it's limited to 20 numbers (that could be easily increased) and may be less obvious to users who it works. The [alias] aliases does not use AT commands to query/store the number aliases, just .ini file edits. Re-read .ini file when ATZ command is received. This allows applying dynamic changes to the .ini file without re-running SVDM. Address some memory-leaks when reading or making changes to .ini file. Fix ATIn command results. The normal result format (from an actual modem) is: <text> <blank-line> OK (or 0)
-
Rob Swindell authored
Updated Digital Distortion Upload Processor so that the scanning works properly in Linux (directory permissions) See merge request !178
-
Updated Digital Distortion Upload Processor so that the scanning works properly in Linux (directory permissions)
-
- Jun 07, 2022
-
-
Rob Swindell authored
Support optional WAV files via .ini keys: RingSound ConnectSound DisconnectSound ATM0 turns "speaker" (WAV playback) off (the default), ATM1 turns on. Ignore ATLn (speaker level), ATT (tone) and ATP (pulse) commands. These are sometimes found in init strings which we don't want to prematurely fail with a parse failure and "ERROR" result. Increment version number to 0.2.
-
- Jun 06, 2022
-
-
Rob Swindell authored
A reused HTTP session would never (apparently) perform garbage collection. The evidence of this was the collection of concurrent user.dat file opens that would never close until the HTTP sessions were closed. Hundreds or even thousands of open user.dat's have been seen. After this change, active web server (webv4 UI) users have not caused these spikes in open user.dat files, at least in my testing. If no garbage collection was being performed, then likely a lot of JS heap was being needlessly wasted, which could eventually result in a JS "out of memory" error. But that's just a theory. Investigation is needed into why the js_CommonOperationCallback()'s calls to JS_MaybeGC() were not sufficient to actually perform garbage collection in this case.
-
Rob Swindell authored
-
Rob Swindell authored
DD Area chooser: Fix for miscolored digit(s) in # messages column in the sub-board list when using the lightbar menu See merge request !176
-
Eric Oulashin authored
-
- Jun 05, 2022
-
-
Rob Swindell authored
Don't expand CR->CRLF when in binary mode that was requested locally (option value is DO, instead of WILL), using new telnet_opt_enabled(). Request binary-transmit mode by default in Telnet server/answer mode. Set ServerBinary=false in svdm.ini to disable. This fixes the extra line-feeds in Telnet-server mode.
-
Rob Swindell authored
An option is enabled/supported regardless of which end makes the request, so the status can be WILL (an ACK to a remote request) or DO (an ACK to a local request) when an option is enabled.
-
Rob Swindell authored
Resolves issue with SBBS v2.30 not be able to answer an incoming "call".
-
Rob Swindell authored
Attempt to address 2 GCC version 11.2.0 2 warnings reported by Nelgin ‘%s’ directive writing up to 3 bytes into a region of size between 1 and 4097
-
Rob Swindell authored
... in debug print statement (MD5 hast decoded/printed as SHA-1 hash). Reported by Nelgin running gcc version 11.2.0 (Ubuntu 11.2.0-19ubuntu1)
-
Rob Swindell authored
-
Rob Swindell authored
-
- Jun 04, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
Some shells log every character the user types (e.g. 'X' for external programs) so we need a newline before the logged DOORSCAN line to be parsed correctly. From Apam (POSITRON)
-
- Jun 03, 2022
-
-
Rob Swindell authored
-
- Jun 02, 2022
-
-
Rob Swindell authored
On Win32, an off_t is 64-bits while a long is still a measly 32-bits.
-
Rob Swindell authored
svdm.ini IpFilterFile can be set to the path/filename of an "ip filter file", list of IP addresses or patterns (CIDRv4 notation supported) to refuse connections from. This is reusing the same IP filter file logic from SBBS, so the same filter file syntax/rules apply.
-
Rob Swindell authored
-
Rob Swindell authored
Also a bit more constification and cleared up the legacy sbbs_get_ini_fname() usage: the hostname argument hadn't be used in a long, long time.
-
Rob Swindell authored
I just wanted to reuse findstr() in vdmodem.c and I fell down this hole :-) findstr.* is new (findstr() related functions moved from str_util) getctrl.* is now finally the real home of get_ctrl_dir(), moved from str_util trashcan* functions moved from str_util to scfglib other scfg_t dependent functions moved from str_util to scfglib net_addr() appears to be a function that was never created/used (?) This will definitely break the *nix build, for now.
-
- Jun 01, 2022
-
-
Rob Swindell authored
Also controlled via [modem] CallerID key in svdm.ini fiile. Reports the connected IP address between the first and second RING result. Required a fix to reset the ringcount to 0 upon new connection. Simplified the AT command parsing logic a bit.
-
Rob Swindell authored
This sets the stage for "Caller-ID" support and IP/host filtering (before sending a "RING" result and requiring an auto-answer or host/BBS software to send "ATA").
-
Rob Swindell authored
-
Rob Swindell authored
Likely fix for the user.dat open file descriptor leak: If js_CreateUserObject(cx,parent,cfg,"name",...) is called multiple times (e.g. before login and after login), the successive calls will reuse the previously allocated JS object and allocated private data memory. However, the private data memory (which includes the descriptor of an open user.dat file, if it has been opened), was always zeroed, even if it was being reused. This would leak open file descriptor. So any (pre)login scripts or web scripts that use the "user" object (which is all zeroed-out before login) and then allows a user to subsequently login, would leak a file descriptor.
-