This also adds remote raspberry pi debugging with default install details. More testing is required as MonoMod may not be working for arm64 still
CI might not work yet either
Previously, I updated the SIGINT handler so that it would safely shut
down. This is because I'm an idiot and like most people like me, I use
CTRL + C as my exclusive way to close all programs in the command line
environment. This poses a risk because it doesn't save the world and
shuts down improperly.
However, I forgot that Terraria has interactive menus that you can't
exit from. So, in these menus, the only way out was CTRL + C. @Onusai
reported this, so this changes the behavior a second time.
Now, when passing SIGINT, you can pass it twice. This will cause the
program to actually exit on the second time, such as when you're stuck
at a menu. Hooray.
After updates to the firework command, a guard was lost, allowing the
switch statement that selected the color to execute on a parameter that
was empty. A guard was added to prevent falling into the switch
statement without enough arguments to match a color.
The default type of firework was manually set to a red firework.
Fixes#2507
The old system for hashing passwords and permitting users to select
their algorithm has been deprecated and phased out since 2015. This
removes the remaining functions for hashing passwords to clear the way
for .NET5/6 and for OTAPI 3.
In 211b70ca37, I allowed blank passwords
to upgrade to bcrypt hashes. However, the minimum password length has
been 4 historically for a long time. So I don't actually assume a lot of
users have blank passwords, so I think there are very few, if any of the
old hashes laying around.
So therefore, I think this is pretty much safe to merge.
Previously, blank passwords were not upgraded to bcrypt hashes. This is
annoying and problematic because it makes it difficult to remove the old
password hashing system because those passwords might still be checked
against non-bcrypt hashes.
The previous version of the code always told the player having their god
mode toggled the state of the player that issued the command, rather
than their own god mode state. This fixes that issue, and now returns
the correct player's state to the correct player.
Fixes#2485. Bouncer now checks to ensure that RegionProtectGemLocks is
enabled before attempting to reject changes from gem locks from players
that don't have build permissions.