Commit graph

135 commits

Author SHA1 Message Date
Carson McManus
fe663cf43f
add HTTP proxy support (#264)
- allow extracting the http client from web api transport
- refactor most commands so that they can accept an external transport
- update confirmer to use transport's http client
- update remove command
- update TwoFactorClient so it doesn't need to be mutable
- update get_server_time so it requires a transport
- update remove_authenticator
- update login proceedure to use given transport
- update usages of do_login
- update setup
- update trade
- update code command
- update qr-login command
- make borrowcheck happy
- make WebApiTransport Clone and remove Default impl
- remove dead code
- fix lints

closes #177
2023-07-02 12:57:13 +00:00
Carson McManus
3146d4824c
refactor to make adding proxy support easier later (#263) 2023-07-02 11:17:09 +00:00
Carson McManus
dc591212bb
fix typo in update available text (#252) 2023-06-29 21:16:02 +00:00
Carson McManus
79c01833e8
fix manifest migration flow not prompting for passkey if not provided in args (#240) 2023-06-26 20:15:22 -04:00
Carson McManus
a062e718d7
fix passkey cli argument being printed in plaintext with debug logging (#229)
fixes #228
2023-06-26 00:23:26 +00:00
Carson McManus
d87caa06f6
add an update checker (#222) 2023-06-25 09:24:53 -04:00
Carson McManus
a5be7b26bb
Add qr-login command to be able to approve qr code logins on other devices (#214)
- add QrApprover
- implement qr-login subcommand

closes #197
2023-06-24 13:45:03 -04:00
Carson McManus
bff16bd341
automatically refresh access token to avoid prompting to log in (#221) 2023-06-24 17:18:22 +00:00
Carson McManus
2934dd3927
add a debug command to help triage deserialization issues (#213)
- add a debug command to help triage deserialization issues
- adjust the parsing for legacy accounts
2023-06-24 08:17:56 -04:00
Carson McManus
cbc46ad8eb
Dead code cleanup, subcommand refactor (#206)
- clean up dead code
- fix lints
- move Session type to legacy module
- refactor service names into constants
- refactor build_url to be less restrictive for service names
- refactor most commands into their own modules
2023-06-23 17:36:23 +00:00
Carson McManus
8defefb11e
fix manifest migrations not working for encrypted maFiles (#201)
fixes #200
2023-06-23 12:40:23 +00:00
Carson McManus
bfd0667f3a
Use IAuthenticationService for login, account migrations, other major refactors (#194)
fixes #193
fixes #192  
fixes #107

- [x] Implement the new login process
    - [x] Tested
- [x] Update the authenticator setup process
    - [x] Tested
- [x] Update the authenticator remove process
    - [x] Tested
- [x] Manifest format migrator
    - [x] Tested
- [x] Make it possible to import SDA accounts
- [x] Make sure confirmations still work
    - [x] Fetching
    - [x] Responding
- [x] Make it so that the login process doesn't prompt for which method
to use
- [x] Make it so that device confirmation and email confirmation auth
session guards work
2023-06-22 20:20:15 +00:00
Carson McManus
4ba0459bb6
fix prompts sometimes not showing up (again) (#187)
- fix tui::pause only accept enter  to continue so it's less confusing
- replace unwrap with flush
- replace some prints with eprints
- make tui::prompt flush stdout and stderr

fixes #178
2023-03-18 14:20:37 +00:00
Carson McManus
3457f9cb43
disallow blank encryption passkeys (#186)
fixes #185
2023-03-18 10:08:57 -04:00
Carson McManus
daa930fbee
Merge pull request #174 from dyc3/qr
add the ability to generate a QR code for 2fa secrets
2022-12-05 11:24:17 -05:00
Carson McManus
27adb3d019
Merge pull request #175 from dyc3/setup-update
fix using uppercase letters in username during setup causing panic
2022-12-05 11:24:08 -05:00
Carson McManus
cae60f6ed6 fix using uppercase letters in username during setup causing panic
fixes #171
2022-12-05 10:55:45 -05:00
Carson McManus
b5f4364733 update some comments and some printed messages 2022-12-05 10:36:38 -05:00
Carson McManus
85c4662a61 remove username argument from ArgsSetup because it was causing problems 2022-12-05 09:18:38 -05:00
Carson McManus
5599e28c9f add the ability to generate a QR code for 2fa secrets 2022-12-05 08:47:33 -05:00
Carson McManus
7f0d5ca8ab write input prompts to stderr instead of stdout
closes #166
2022-09-08 16:24:23 -04:00
Carson McManus
6e31f66dde cargo fmt 2022-06-25 11:08:03 -04:00
Carson McManus
0b340a3cf1 replace tty check with crossterm 2022-06-25 11:01:40 -04:00
Carson McManus
5a262650a0 converted remaining tui module to crossterm 2022-06-25 10:57:37 -04:00
Carson McManus
ebe31b6df7 convert prompt_confirmation_menu to crossterm 2022-06-25 10:14:34 -04:00
Carson McManus
afb1d79aea adjust visibility of some functions/modules 2022-06-25 09:06:29 -04:00
Carson McManus
a52af3675b add code subcommand back in, because it makes the arg parsing better 2022-06-21 19:31:39 -04:00
Carson McManus
fdc61e63d1 add --offline flag for generating codes, closes #155 2022-06-20 20:57:04 -04:00
Carson McManus
610cda120e get_server_time now returns Result, fixes #152 2022-06-20 20:56:36 -04:00
Carson McManus
2678961a4c fix not prompting for password for decrypt 2022-06-19 15:23:55 -04:00
Carson McManus
1a6ad62a2e cargo fmt 2022-06-19 14:52:17 -04:00
Carson McManus
eeded86641 protect Session memory, values are zeroized when dropped 2022-06-19 14:52:17 -04:00
Carson McManus
deabfc299d protect top level secrets in SteamGuardAccount
except for session
2022-06-19 14:52:17 -04:00
Carson McManus
8839a18543 cargo fmt 2022-06-19 14:44:47 -04:00
Carson McManus
c86e31648a fix some warnings 2022-06-19 13:01:25 -04:00
Carson McManus
0b84a103e5 remove old arg parsing completely 2022-06-19 13:00:36 -04:00
Carson McManus
2fc13d40e2 switch get_selected_accounts to new args 2022-06-19 12:57:54 -04:00
Carson McManus
ed9cf91cfb return better error for unimplemented subcommand 2022-06-19 12:45:33 -04:00
Carson McManus
221e64ab8c change debug line 2022-06-19 12:38:47 -04:00
Carson McManus
4a8f7a74d2 reimplement completion subcommand 2022-06-19 12:37:40 -04:00
Carson McManus
8dd10c9b29 move debug subcommand impl 2022-06-19 12:16:20 -04:00
Carson McManus
aaded51d38 move generate code subcommand impl 2022-06-19 11:54:42 -04:00
Carson McManus
31c08ac206 move trade and remove subcommand impls 2022-06-19 11:54:16 -04:00
Carson McManus
73281ef069 move import subcommand impl 2022-06-19 11:52:26 -04:00
Carson McManus
37539f7679 move encrypt and decrypt subcommand impls to functions 2022-06-19 11:40:20 -04:00
Carson McManus
138f36f562 move help text 2022-06-19 11:32:04 -04:00
Carson McManus
9f7c8fef68 remove old verbosity arg 2022-06-19 11:31:56 -04:00
Carson McManus
b040088038 swtich mafiles path to new args 2022-06-19 11:26:18 -04:00
Carson McManus
07b9439c27 switch to a better setup for subcommands 2022-06-19 11:14:35 -04:00
Carson McManus
2f4d1e3cfa make it compile again 2022-06-19 10:56:52 -04:00