- Dec 10, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
We have no sbbs man page (that I know of). The SBBSROOT env var isn't used anywhere. NotifyAccess is required for the (new to v3.20) systemd integration support We can just use the AmbientCapbilities to set the bind capability now Set the open file limit to something huge (10000 files should be enough) Update the instructions/comments.
-
- Dec 08, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
DD Msg Reader: Fixed typo (console.putmst -> console.putmsg) See merge request !232
-
-
- Dec 05, 2022
-
-
Rob Swindell authored
DD file lister: lfexpand() seems to do what I wrote my own function for in the last commit See merge request !231
-
Eric Oulashin authored
-
Rob Swindell authored
Needed a version of strListSplit() that doesn't treat consecutive delimiters (e.g. "\r\n\r\n") as a single delimiter: so introducing strListDivide(). Like strListSplit(), strListDivide() modifies the input string (replacing first occurrences of delimiter with NUL). Since we don't want "\r\n" to be counted as 2 lines, we need to just split/divide on '\n' and then truncate any line endings (i.e. '\r') chars off the ends of the split strings. Reported by phigan in #synchronet
-
Rob Swindell authored
Needed a version of strListSplit() that doesn't treat consecutive delimiters (e.g. "\r\n\r\n") as a single delimiter: so introducing strListDivide(). Like strListSplit(), strListDivide() modifies the input string (replacing first occurrences of delimiter with NUL). Since we don't want "\r\n" to be counted as 2 lines, we need to just split/divide on '\n' and then truncate any line endings (i.e. '\r') chars off the ends of the split strings. Reported by phigan in #synchronet
-
Rob Swindell authored
-
Rob Swindell authored
Goes under "job", not "artifacts".
-
Rob Swindell authored
Replaces the status(), started() and terminated() callbacks, in this case. set_state() is called from a single thread (unlike status() was), so no mutex should be needed here. Don't do the cursor dance. We have multiple servers, so reflecting their state in the cursor is not really accurate. I'll clean-up the commented-out code after some more testing.
-
Rob Swindell authored
-
Rob Swindell authored
I want all the artifacts (e.g. DLLs, EXEs) included in all artifact archives. Per https://docs.gitlab.com/ee/ci/pipelines/job_artifacts.html, "To disable artifact passing, define the job with empty dependencies" So I think this is the right thing to do to accomplish what I want.
-
Rob Swindell authored
When the systemd dev package (e.g. libsystemd-dev) is installed, we can use sd_notify() to inform systemd of Synchronet server state/status. The state values (READY, STOPPING, RELOADING) are "well known" while the status value is a free-form text string (the last lputs output). Eliminated the free-form status() callback from *startup_t. Eliminated the now-redundant started() callback from *startup_t. Eliminated the use of sbbs_status.c/h as nothing is using that interface and while I do plan on using a remote control/monitor interface, I'm considering use of a standard pub/sub lib and protocol. This commit is going to break the Windows sbbsctrl build for sure. Probably break the sbbsNTsvcs build.
-
- Dec 04, 2022
-
-
Rob Swindell authored
-
- Dec 03, 2022
-
-
Rob Swindell authored
New LINEDELAY and LINEDELAY:n @-codes Another way to pace the terminal output of long display (e.g. ANSI) files. LINEDELAY enables a 1/10th of a second delay before the sending of all LF chars. LINEDELAY:n sets the line_delay duration explicitly to a value in 1/100ths of a second units. So LINEDELAY and LINEDELAY:10 are equivalent. LINEDELAY:0 turns line-pacing off. The original line pacing value is always restored after a printfile/putmsg operation. New JS console.line_delay property (milliseconds) to control via JS. Setting this to a really high value would be bad. Some range enforcement should be added to this and many other console control values (TODO).
-
Rob Swindell authored
DD File lister: Extended file info update (# times DL'd, last DL, description fix for some cases) See merge request !229
-
-
Rob Swindell authored
Ree/games fixes See merge request !230
-
-
Rob Swindell authored
DDMsgReader v1.57: @-code expansion only when sender is a sysop (and only when reading personal email) See merge request !228
-
DDMsgReader v1.57: @-code expansion only when sender is a sysop (and only when reading personal email)
-
- Dec 02, 2022
-
-
Rob Swindell authored
This addresses issue #459 (Synchronet never allowed SSH-auth via real name) Also, localize the "valid real name" checking logic into a single new function: check_realname()
-
Rob Swindell authored
SlyEdit v1.82: Added some safety checks when reading the configuration file (that section of code was refactored recently). See merge request !227
-
SlyEdit v1.82: Added some safety checks when reading the configuration file (that section of code was refactored recently).
-
- Dec 01, 2022
-
-
Rob Swindell authored
Resize fTelnet for msweeper to support level 5 See merge request !225
-
Rob Swindell authored
Display error if user can't read requested sub See merge request !223
-
- Nov 30, 2022
-
-
Rob Swindell authored
No longer applying QWK filters to incoming netmail messages since we would need different criteria for netmail filtering (e.g. don't apply the twitlist.cfg). And I'm not clear that we actually need netmail filtering. Disable the importing of "remaining" VOTING.DAT sections (polls, votes) since this should no longer be necessary for backwards compatibility and appears to the source of errors like: qwk.cpp line 1141 (qwk_vote) writing "/sbbs/data/subs/sync_sys" access=-105 info=smb_addpollclosure thread_back field missing qwk_vote() takes a msg_filters argument, so we'd have to pass that to qwk_handle_remaining_votes() and frankly, it just shouldn't be needed any more, so disabling and logging a warning if there are any "remaining QWK voting.dat sections" after parsing QWK/REP packet (which consumes the sections from the parsed VOTING.DAT file).
-
- Nov 29, 2022
-
-
Rob Swindell authored
I just happened to notice qwknode* in sbbs.h and was like: what is that? Oh, it's a realloced array created when parsing QWK routes. When is it freed? Oh, never.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
This bug was introduced in commit 9c91d32a 2 years ago and would result in votes and poll message being erroneously filtered. e.g. !Filtering QWK message from (null) due to age: 19321 days The filter criteria was either a zero-initialized msg or the previously parsed/imported msg from the QWK or REP packet. A solution for filtering vote/poll messages is needed, but this isn't it.
-
- Nov 28, 2022
-
-
Rob Swindell authored
This is the real fix for infinite-wait on send() problem that was attempted in commit 2cddddce, but caused other issues. Thanks Deuce.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
This reverts commit 2cddddce. 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 b795cf6a. 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.
-
rickparrish authored
-
- Nov 27, 2022
-
-
Rob Swindell authored
command -> command_shell (reported by Nelgin) expire -> expiration_days
-