Special characters in password treated like Enter key when typing at startup
Terrance opened this issue · comments
Checklist
- I read and understood ASF's Contributing guidelines
- I also read Setting-up and FAQ, I don't need help, this is a bug report
- I don't own more than 10 accounts in total
- I'm not using custom plugins
- This is not a question
- This is not a technical issue
- This is not ASF-ui problem
ASF version
Latest stable release
ASF variant
linux-x64
Bug description
Typing a special character at the Please enter your Steam password:
prompt (including from a paste) immediately dismisses the prompt as if Enter
was pressed.
Expected behavior
The prompt should accept my whole password without submitting.
Actual behavior
- If a special character is the first character entered,
InitLoginAndPassword() steamPassword is invalid!
is logged. - If not the first character, the partial password is submitted, leading to
OnConnected() SteamKit2.Authentication.AuthenticationException: Authentication failed with result InvalidPassword.
.
Steps to reproduce
- Start
asf
without an active session or a password configured. - At the password prompt, type a special character (e.g.
!
,"
,_
).
Possible reason/solution
Using the asf
AUR package on Arch Linux.
This is over SSH, but I've not had issues with any other programs' handling of special characters. Locale, in case that's relevant:
$ locale
LANG=en_GB.UTF-8
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=
Can you help us with this bug report?
Somehow, I can test and offer feedback, but can't code
Full log.txt recorded during reproducing the problem
INFO|ASF|InitCore() ArchiSteamFarm-custom V5.4.13.4 (source/c599465c-df92-4f92-bb7e-11b6652d720b | .NET 7.0.13; arch-x64; Linux 6.6.1-arch1-1 #1 SMP PREEMPT_DYNAMIC Wed, 08 Nov 2023 16:05:38 +0000)
INFO|ASF|InitCore() Copyright © 2015-2023 JustArchiNET
INFO|ASF|StartInteractiveConsole() Interactive console is now active, type 'c' in order to enter command mode.
INFO|ASF|Start() Starting IPC server...
INFO|Microsoft.Hosting.Lifetime|Now listening on: http://localhost:1242
INFO|Microsoft.Hosting.Lifetime|Application started. Press Ctrl+C to shut down.
INFO|Microsoft.Hosting.Lifetime|Hosting environment: Production
INFO|Microsoft.Hosting.Lifetime|Content root path: /usr/lib/asf/
INFO|ASF|Start() IPC server ready!
INFO|BotName|Start() Starting...
INFO|BotName|Connect() Connecting...
INFO|BotName|OnConnected() Connected to Steam!
<BotName> Please enter your Steam password:
ERROR|BotName|InitLoginAndPassword() steamPassword is invalid!
INFO|BotName|Stop() Stopping...
INFO|ASF|OnBotShutdown() No bots are running, exiting...
INFO|Microsoft.Hosting.Lifetime|Application is shutting down...
Global ASF.json config file
{}
BotName.json config of all affected bot instances
{
"Enabled": true,
"OnlineStatus": 0,
"RemoteCommunication": 0,
"SteamLogin": "***",
"IPCPassword": "***"
}
Additional info
The description for BotName.json above states that SteamPassword
is mandatory, but the documentation says if left unset then I should be able to provide it at startup, which is where the problem lies. Is this still the case?
Reproducible with latest stable.
Unreproducible with latest pre-release, might be caused by fc13f2c (?)
@Terrance does it work for you with latest pre-release?
https://github.com/JustArchiNET/ArchiSteamFarm/releases/tag/5.5.0.7
This was already fixed in latest pre-release, in particular starting from ASF V5.5.0.1.
Dupe of #3075 (comment)
If you can't wait, I recommend upgrade to latest pre-release which is a stable release candidate at this stage. Otherwise, the next stable should be available in a month or so.
Apologies, didn't spot that one whilst searching (admittedly I was looking for password-related issues rather than ones about the console in general). After some faff with the AUR package and system upgrades to switch to .NET 8.0, I now have 5.5.0.7 running and the password prompt works as expected.
That's alright, since the issue I linked indeed focused on something else, but the underlying problem was the same. Glad to hear it works for you now 👍