Commit graph

77 commits

Author SHA1 Message Date
Carson McManus
96f342137a
upgrade base64 crate to 0.21 (#289) 2023-07-10 15:41:36 +00:00
Carson McManus
d1ff150cbf
replace crates hmac-sha1 and hmac-sha256 with equivalent crates from RustCrypto (#288) 2023-07-10 14:53:31 +00:00
Carson McManus
7c985f62ff
zeroize more stuff during runtime (#282)
- add zeroize features to some dependencies
- zeroize protobuf messages when they are dropped
2023-07-05 14:25:03 +00:00
Carson McManus
969baeed4c
upgrade some dependencies (#272)
- upgrade `rsa`, `zeroize` crates, closes #268
- switch to parrallelized pbkdf2, closes #271
- cargo update
2023-07-03 15:42:10 +00:00
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
b3c6639146
remove: refactor to make it more reliable (#257)
fixes #256
2023-06-30 14:53:05 +00:00
Carson McManus
4990d23c32
update release script (#255) 2023-06-29 18:49:03 -04:00
Carson McManus
9bfd07c6b4
update ConfirmationType enum (#250) 2023-06-29 19:35:14 +00:00
Carson McManus
4b92d46049
trade: use bulk confirmation operations (#248)
- Confirmer: add bulk confirmation operations
- trade: use bulk confirmation operations

closes #241
2023-06-29 14:33:56 +00:00
Carson McManus
6af4374da3
trade: misc confirmation fixes and tests (#246) 2023-06-27 19:13:26 +00:00
Carson McManus
0d24d12c55
trade: refactor how confirmations work so it's more reliable (#245) 2023-06-27 10:20:27 -04:00
Carson McManus
ad5a9b3131
trade: fix Account Details confirmation not parsing (#239)
fixes #238
2023-06-26 23:57:17 +00:00
Carson McManus
4fed9486de
trade: adjust logging for deserializing confirmations (#237) 2023-06-26 23:11:15 +00:00
Carson McManus
1632e2f10e
add PhoneLinker, and the ability to add a phone number to the account during setup (#223)
- add proto for IPhoneService
- add PhoneClient
- add PhoneLinker
- fix lints and such
- add comments
- update phone linker
- use phonenumber crate for phone linker
- adjust errors for account linker
- update setup command to be able to add phone numbers
- adjust logging in the setup command
- update account linker
2023-06-25 17:11:24 +00: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
7e04a4240a
Add TransportError type (#219)
- add TransportError type
- adjust Transport trait
2023-06-24 16:41:03 +00: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
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
Jonas Süskind
75fcf3c456
Remove debug print to stdout in trade sub command (#191)
Every time when the `trade` sub command is executed, the webpage gets
printed to stdout which is a bit irritating and unnecessary.

This PR fixes this, in that it changes the `println!` macro to a
`trace!` macro.
2023-04-19 18:07:10 -04:00
Carson McManus
8366173eb1 fix a couple of lints 2022-12-06 10:07:25 -05:00
Carson McManus
99f977d7df reorganize steam api responses 2022-12-06 10:02:07 -05:00
Carson McManus
5634cf82ee fix doc comment 2022-12-05 11:18:59 -05:00
Carson McManus
738e8f1664 update comment 2022-12-05 10:41:15 -05:00
Carson McManus
b5f4364733 update some comments and some printed messages 2022-12-05 10:36:38 -05:00
Carson McManus
2a5284f678 update some docs 2022-12-05 10:32:58 -05:00
Carson McManus
dcf1779f39 update AddAuthenticatorResponse 2022-12-05 10:29:54 -05:00
Carson McManus
d3099d7686 implement phone_validate 2022-12-05 10:29:28 -05:00
Carson McManus
9f1d692d6d steamguard: add SteamGuardAccount::from_reader 2022-08-13 09:29:40 -04:00
Carson McManus
2409fac47e add some more debug logging around sending confirmations 2022-07-23 07:48:08 -04:00
Carson McManus
610cda120e get_server_time now returns Result, fixes #152 2022-06-20 20:56:36 -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
Yoav Shai
4900a2ede7 Make WebCookie optional in Session
The maFile from Steam Desktop Authenticator may set this field to null
2022-01-15 02:21:36 +02:00
Carson McManus
c27b01318b add a better failure message for account link status 2 2022-01-02 09:46:01 -05:00
Carson McManus
1e2d82afb5 remove the need for nightly toolchain 2021-08-25 10:26:34 -04:00
Carson McManus
bf0b6d1572 replace secrets crate with secrecy 2021-08-25 00:19:17 -04:00
Carson McManus
4e09b98d07 add TwoFactorSecret type, which zeros out memory when deallocated 2021-08-24 22:56:25 -04:00
Carson McManus
cee428b708 move fixtures to the right spot 2021-08-14 22:51:03 -04:00
Carson McManus
1b213841e9 fixes SDA manifest parsing compatibility 2021-08-14 20:54:25 -04:00
Carson McManus
5da5d32976 add some unit tests for saving and loading the manifest 2021-08-14 13:46:09 -04:00
Carson McManus
1825acdbb3 add test for account recovery confirmation 2021-08-14 12:29:39 -04:00
Carson McManus
2fa4be52d9 parse descriptions for confirmations 2021-08-14 12:16:40 -04:00
Carson McManus
357d04f34b add account removal, closes #10 2021-08-11 19:39:29 -04:00
Carson McManus
746f76af18 fix login response deserialization 2021-08-10 21:07:04 -04:00
Carson McManus
51fea91577 remove stray line 2021-08-10 20:54:29 -04:00
Carson McManus
5379e9572c document phone_add_ajaxop more 2021-08-10 20:54:01 -04:00
Carson McManus
217a88f0de add phone_add_ajaxop 2021-08-10 20:28:20 -04:00