Amendments on March 5, 2023

Amendments on March 2, 2023

user: Handle malloc failure

jcs made amendment 349 7 months ago

Amendments on February 23, 2023

mail: Move to separate bile database

This should reduce the likelihood of corrupting the main user
jcs made amendment 317 7 months ago

Amendments on February 16, 2023

bile: Add flags arg to bile_delete, make zeroing and purging optional

When deleting a bunch of records in a row, we can avoid writing out
a new map every time.
jcs made amendment 301 7 months ago

Amendments on February 5, 2023

*: Minor fixes found by cppcheck and scan-build

Mostly unused variables
jcs made amendment 300 7 months ago

Amendments on November 11, 2022

user: constify banned usernames

jcs made amendment 279 10 months ago

Amendments on August 14, 2022

logger: Add buffered logging, support logging without updating window

During telnet negotiation, many lines are logged in quick succession
which means we spend a lot of time updating the log TextEdit. Just
buffer these logs and spit them out all at once upon login or
disconnection, so the user's login prompt is immediately responsive.
Rename session_log to session_logf while I'm in here, to reflect that
it's a format-string function.
jcs made amendment 245 about 1 year ago

Amendments on August 3, 2022

user: Rename user_find_username to user_username

This function isn't looking up something from bile that needs to be
freed, it's just checking its cache.
jcs made amendment 231 about 1 year ago

Amendments on July 31, 2022

*: Add malloc annotations

jcs made amendment 226 about 1 year ago

Amendments on July 21, 2022

*: Use NewPtr instead of malloc, add malloc and free debugging

Instead of free(ptr), use xfree(&ptr) and after it calls
DisposePtr(ptr), it will update ptr to point at NULL to catch
When MALLOC_DEBUG is defined, each allocation is added to a
list, and removed when freed. If it's not in the list at free
time, it's a double-free. Also, instead of pointing pointers at
NULL, point them to a pre-defined block of zeroes and in the
idle loop, periodically check that this block is still zero. This
will also catch use-after-frees in a more reliable (but costly)
jcs made amendment 220 about 1 year ago

Amendments on July 19, 2022

*: Add session signoff view, remove session_output_template

All remaining uses of session_output_template can use session_printf
which still does {{B}} and {{/B}} parsing.
Change session_output_view to session_output_view_or_printf to make it
easier to print a view and fallback to a string, rather than having to
check the result of session_output_view everywhere.
jcs made amendment 218 about 1 year ago

Amendments on June 12, 2022

session: Close on banned username login attempt, track logged-in status

Ignore sessions that haven't logged in yet, and don't show guest
username in 'who' and logs.
Also show whether a user is a sysop in 'who'.
jcs made amendment 137 about 1 year ago

Amendments on June 9, 2022

sysop: Add support for deleting users

jcs made amendment 133 about 1 year ago

Amendments on June 7, 2022

sysop: Add user management

Also wire up new/signup login to direct there upon login, adding a
setting to the global config to allow it.
jcs made amendment 123 about 1 year ago

Amendments on June 3, 2022

user_settings: Support changing usernames

jcs made amendment 119 about 1 year ago

Amendments on June 2, 2022

*: Minor bug fixes, better NULL checks

jcs made amendment 114 about 1 year ago

Amendments on May 24, 2022

Amendments on May 23, 2022

*: Lots of deck chair rearranging

Move things from db files to their respective areas
Make username map contain normal username, just do strcasecmp check
during user_find_by_username.
jcs made amendment 107 about 1 year ago

Amendments on May 15, 2022

*: Lots of little cleanup

Remove unused variables and fix some returns
Found by compiling with Clang
jcs made amendment 101 about 1 year ago

Amendments on April 21, 2022

signup: Add interactive user account creation

jcs made amendment 95 about 1 year ago