- Jan 27, 2024
-
-
Deucе authored
-
- Jan 26, 2024
-
-
Deucе authored
-
Deucе authored
-
Deucе authored
-
Deucе authored
Start hacking on fit-checking code Add NI_walk_children() to call a callback for each child Move functions that have no generated bits into newifv_nongen.c Call the object set/get function for globals to allow range checking
-
Deucе authored
-
Deucе authored
Basically, the intent is to do a modern (for C) interface which allows reproducing the look and feel of uifc but without hurting as much. The intent is to support a tree of objects, each of which have an attribute get/set function as their main interface. Various callbacks will be supported for various object types, and positioning will be relative to the "child area" of the parent. The SyncTERM main screen is expected to look something like: root +--frame (dialing directory) | +--list +--frame (settings) | +--list +--textinput (comment) Internally, the code is wildly type-unsafe, but there's an auto-generated API (which is the only thing exported) that is type-safe. This also introduces the CuTest C test suite as an experiment.
-
Rob Swindell authored
-
- Jan 25, 2024
-
-
Rob Swindell authored
-
Rob Swindell authored
... and rearranged them to match SCFG->System->New User Values->QWK Message Packet Settings more closely. uedit (the program) should be updated too.
-
Rob Swindell authored
Silly me, this is C++, do the C++ thing No functional change.
-
Rob Swindell authored
Seems a useful function to have on hand. Especially now that it's "fixed" (will convert "1234" to "1,234").
-
Rob Swindell authored
I noticed while testing the previous commit that 4 digit values weren't thousands-separated, while larger values were. I'm not sure why this non-zero index check was in this loop, but appears to be a bug.
-
Rob Swindell authored
- bbs.expand_atcodes() now supports formatting (did not before this) - text.dat/ini strings now support @-code formatting (did not before this) (this fixes issue #697) - bbs.atcode() now supports more complete formatting (only supported -R/-L previously) The -W (wide) formatting code is not supported in these cases since that code currently sends UNICODE sequences directly to UTF-8 terminals, when used.
-
Rob Swindell authored
sbbs_t::gettimeleft() was storing a pointer to a stack (temporary/local) variable containing a copy of the next exclusive event cfg (including its internal code). This variable, including the internal code, is invalid when it goes out of scope. This change makes the sbbs_t::event_code point to the sbbs_t::cfg.event[]->code (on the heap) instead. The only use of this event_code (outside of the event_thread), appears to be in the JS bbs.event_code property string. So this fixes issue #705. No other observed side effect from this bug. Constified getnexteventtime() while here. No functional impact.
-
- Jan 24, 2024
-
-
Rob Swindell authored
Fixes issue #704 - not just for JS bbs.edit_msg(), but for all uses of the underlying sbbs_t::editmsg() function. Replaced one specific comparison of subnum == INVALID_SUB with call to is_valid_subnum() just to be consistent. No functional change there.
-
- Jan 23, 2024
-
-
Rob Swindell authored
Conditional jump or move depends on uninitialised value(s) at 0x4AE768D: sbbs_t::backfill(char const*, float, int, int) (con_out.cpp:1445) by 0x4AE7855: sbbs_t::progress(char const*, int, int, int) (con_out.cpp:1467) by 0x4AE91A9: ProgressLoadingMsgPtrs(void*, int, int) (data_ovl.cpp:27) by 0x4C7C577: getmsgptrs (userdat.c:3972) by 0x4AE9144: sbbs_t::getmsgptrs() (data_ovl.cpp:39) by 0x4BF9237: sbbs_t::logon() (logon.cpp:452) by 0x4AC1CE2: sbbs_t::answer() (answer.cpp:636) by 0x4C0FD37: node_thread(void*) (main.cpp:4277) Introduced in commit 48e7520e (when colors was converted from a byte array to a uint array), we weren't memsetting the right number of bytes. Since color is not an array of ints (not bytes), memset (of non-zero values) isn't really the right initialization approach anyway. Now using a for-loop.
-
Rob Swindell authored
But continue initializing/running for other non-TLS protocol support.
-
Rob Swindell authored
<Deuce> Feel free to not lock the mutex and never free/NULLify that string. <Deuce> Should be nicer for people with separate logs, and a few bytes never hurt anyone.
-
Deucе authored
handler it.
-
Deucе authored
-
Rob Swindell authored
This is a new error that just started cropping up. I suspect it's related to recent SSH changes. This might help a little with context, when it happens again.
-
Rob Swindell authored
-
Rob Swindell authored
-
Deucе authored
-
- Jan 22, 2024
-
-
Deucе authored
Totally not sketchy, trust me.
-
Deucе authored
Interestingly, when they fail, Synchronet appears to crash. This is fine.
-
Rob Swindell authored
These should've been static to begin with, like the other servers. Explains why FTP error message are with "term" as the server.
-
Deucе authored
(such as ec22519), unconditionally fallback to password auth instead of the previous behaviour of diconnecting. Much of the "password then pubkey" mentality is showing in these bits of Cryptlib.
-
- Jan 21, 2024
-
-
Rob Swindell authored
For Nightfox and his newsgroup reader thing: The strings that end up in the editor drop file (e.g. MSGINF) can now be passed as optional arguments to consol.editfile() and the underlying C++ API. Allow maxlines (default:10000) to be overridden with an optional consol.editfile() argument too.
-
Rob Swindell authored
-
Deucе authored
On Win32, size is explcitly "ignored" when target is NULL, so we should set it to the size of the allocation.
-
Rob Swindell authored
-
Deucе authored
-
Deucе authored
Previously, once a pubkey was attempted, you could not use a password.
-
Deucе authored
When we're closing the socket, always delete channels and don't wait for the remote to confirm.
-
Deucе authored
-
Deucе authored
-
Deucе authored
Fixes assertion failure on hangup from SSH.
-
Deucе authored
Was spinning at 100% CPU on a lost connection if sftp was active.
-