100 Commits
Author SHA1 Message Date
Ryan Kistner 3143362d83 2.4.7 - Don't use depotfromapp to request depot key or manifest request code 2022-08-20 11:11:47 -06:00
Ryan Kistner 72683ef35c 2.4.6 Release 2022-05-02 16:50:43 -06:00
Ryan Kistner 75dc09fb0a Enforce manifest request codes 2022-05-02 16:41:32 -06:00
Ryan Kistner 4acc41fe92 Manifest request code period is more likely 5 minutes 2022-03-23 11:32:20 -06:00
Ryan Kistner 0054301ad6 Assuming manifest request codes are valid for one period following the issuing period 2022-03-22 19:31:02 -06:00
Ryan Kistner 969a394fdd Implemented manifest request codes 2022-03-22 18:58:56 -06:00
Ryan Kistner 703929dad0 Add a couple FAQs to the readme 2022-03-22 17:47:03 -06:00
Ryan Kistner 73d46d7774 Read any non-empty input when prompting for an input like 2fa code or auth code 2022-03-22 17:29:21 -06:00
Ryan Kistner 14160c39a2 Include version and runtime information in debug log 2021-11-11 19:11:43 -07:00
Ryan Kistner 2c038fd038 Remove the CDN authentication call 2021-10-06 12:43:24 -06:00
Ryan Kistner bd1314da2e Updated to SteamKit2 2.4.0-Alpha.3 2021-07-30 16:58:29 -06:00
Ryan Kistner bb778e3883 Close file handles after validation and lazily open them as chunks are downloaded 2021-07-30 03:16:48 -06:00
Ryan Kistner 16b2f52b6f AArch64 OSX won't have a suffix on the ABI import 2021-07-17 02:56:15 -06:00
Ryan Kistner c0e837de93 Backspace in masked password input didn't work on Windows 2021-07-17 02:53:38 -06:00
Ryan Kistner 7b89e0c1c4 Simplify the FilePermissions into one set of flags 2021-07-16 23:34:13 -06:00
Ryan Kistner 08eb74a7cc Moved UnixUtilities to PlatformUtilities and added OSX support. 2021-07-16 23:34:13 -06:00
Ryan Kistner 913c85a4dd Connection state flag fixes to ensure we actually recover when TryAnotherCM is returned 2021-07-01 17:27:06 -06:00
Ryan Kistner 22b4b5fe3c Handle TryAnotherCM as an expected disconnection 2021-07-01 16:44:45 -06:00
Ryan Kistner a9e400949d Handle TryAnotherCM as a reconnection attempt 2021-07-01 16:34:45 -06:00
Ryan Kistner bdc6ebf7ee 2.4.3: Prevent HTTP sockets from using IPv6 2021-06-09 19:07:04 -06:00
Ryan Kistner 06d25ef1ed 2.4.2: Added HTTP diagnostics to -debug 2021-06-09 17:44:39 -06:00
Ryan Kistner 3111e787ef Catch and abort on out-of-space exceptions when allocating files #220 2021-06-06 15:42:30 -06:00
Ryan Kistner 08b7911d2d Provide visual feedback for masked password input #207 #216 2021-06-05 14:18:34 -06:00
Ryan Kistner 36b9684eb2 2.4.1: Target .NET 5.0 to simplify release packaging 2021-05-13 19:05:33 -06:00
Ryan Kistner 6b05a3e8cb When downloading files into a target directory, remove files with conflicting paths from earlier depots. Fixes #188 2021-03-11 23:02:37 -07:00
Ryan Kistner 27960f3d18 Target SteamKit 2.4.0-Alpha.2 2021-03-11 23:02:37 -07:00
Ryan Kistner 70da480efe Allow a list of -manifest ids to match -depot 2020-11-06 19:42:59 -07:00
Ryan Kistner ffd22a52ff Use C# 7.0 tuples 2020-11-06 19:23:14 -07:00
Ryan Kistner f146251555 Anonymous users cannot use UFSGetUGCDetails 2020-11-06 19:13:54 -07:00
Ryan Kistner a58059eb80 When downloading using -ugc we need to check UGCDetails first for a file URL (like -pubfile). Resolves #59 2020-11-06 01:41:40 -07:00
Ryan Kistner 8fcfd837b0 Alternate -pubfile implementation using GetDetails 2020-11-06 00:59:18 -07:00
Ryan Kistner 079f91167f Allow multiple depot ids to be specified. Resolves #147 2020-11-06 00:14:21 -07:00
Ryan Kistner cda5eb5137 Proxy logic brought into SteamKit 2020-11-05 23:38:25 -07:00
Ryan Kistner 729d4cdc61 Actually flag off new CDNClient features 2020-11-05 22:21:01 -07:00
Ryan Kistner 618090e23d Support for proxying requests through OpenCache 2020-11-05 22:16:03 -07:00
Ryan Kistner 30312af050 If an output directory is not specified, the deleted files list should be limited to each individual depot. 2020-11-02 21:29:22 -07:00
Ryan Kistner ac97c01107 Process download chunks as tasks to increase concurrency 2020-10-31 19:41:49 -06:00
Ryan Kistner 4c36d5ca31 Only capture one of each PackageToken 2020-08-28 12:22:28 -06:00
Ryan Kistner f8d67d8c9b Print task timeouts as connection timeouts 2020-06-07 18:28:21 -06:00
Ryan Kistner 2ca1f3e8e6 Filter CDN server list to the two types of content servers we support: SteamCache and CDN. 2020-05-21 21:43:27 -06:00
Ryan Kistner 5423bdc759 Use PublishedFile.GetItemDetails when looking up pubfiles. This also requires -app to be specified with -pubfile. 2020-05-15 13:18:25 -06:00
Ryan Kistner 3e6cd3b4b1 Limit unnecessary concurrent CDN token requests. Combine CDN token requests for steamcontent.com. Added a diagnostic timeout for lost CDN token requests. 2020-04-19 13:25:43 -06:00
Ryan Kistner 7476cdb0a3 Updated to SteamKit 2.3.0 2020-04-18 12:09:39 -06:00
Ryan Kistner 642f43864a Added -debug command line option to enable DebugLog. Report unhandled exceptions before re-throwing them. 2020-03-25 20:29:58 -06:00
Ryan Kistner 751538019b TryWaitForLoginKey should always attempt to wait a short period of time for login key updates if configured 2020-02-22 13:21:59 -07:00
Ryan Kistner 90dfd03b5e Corrected FileMode when saving AccountSettingsStore 2020-02-07 00:13:37 -07:00
Ryan Kistner 0d427acbb9 Added RollForward setting 2020-02-06 23:26:30 -07:00
Ryan Kistner 436519d445 Split DepotDownloader configuration file into account settings stored in IsolatedStorage, and depot installation data stored in the .DepotDownloader config directory alongside cached manifests 2020-02-06 21:53:35 -07:00
Ryan Kistner bc25bba261 Only show the checksum mismatch when the manifest actually exists 2019-11-03 19:10:15 -07:00
Ryan Kistner 2e30364d8f Include and validate checksums with locally cached manifests 2019-11-03 17:23:26 -07:00
Ryan Kistner 0b598b43a7 Ensure failed download task throws OperationCanceledException so that the return code is reported correctly when it is the last task 2019-11-03 16:50:52 -07:00
Ryan Kistner da88425eb6 Merge pull request #62 from eroen/master
Be more friendly to scripts
2019-10-16 13:50:23 -06:00
Ryan Kistner ffcde1b04e Updated to SteamKit 2.2.0 2019-06-26 20:37:45 -06:00
Ryan Kistner c6975323d2 Use new ContentServerDirectoryService to fetch content servers for CDNClientPool 2019-06-26 19:13:48 -06:00
Ryan Kistner 87a238b0ec Merge pull request #53 from xPaw/patch-2
Do not display full license list
2019-06-15 12:15:02 -06:00
Ryan Kistner f5d519c466 Added GPLv2 license 2019-04-27 14:41:50 -06:00
Ryan Kistner e7b89df743 Skip platform check when an explicit depot id is provided 2019-04-27 14:36:56 -06:00
Ryan Kistner e0afef00e4 Report and exit on unsuccessful pubfile lookup 2019-03-25 10:36:28 -06:00
Ryan Kistner fdb5d0d408 Merge pull request #45 from SteamRE/ugc-cmd-cleanup
Add new -ugc option, removing -force-depot. (#41)
2019-03-25 10:33:42 -06:00
Ryan Kistner 7a757101bf Added shutdown token to CDN connection pool monitor 2018-05-01 22:57:52 -06:00
Ryan Kistner 5425ef756d 2.3.0 Release on .NET Core 2.0 2018-04-30 22:21:13 -06:00
Ryan Kistner 6552734faf Target SteamKit 2.0.0 2017-12-19 15:16:15 -07:00
Ryan Kistner 65036ffa8d Cancel work if CDNClientPool is exhausted and can't find more servers 2017-12-01 00:40:08 -07:00
Ryan Kistner 184ea54020 Don't retrieve AppTickets as they aren't needed anymore 2017-12-01 00:09:19 -07:00
Ryan Kistner 8daaf0daa2 Don't error out if a user supplies a password without -remember-me but a matching login key was found 2017-07-27 22:55:32 -06:00
Ryan Kistner 58b5b6185e Touched formatting and line endings. Tweaked login key handling. 2017-07-27 22:20:00 -06:00
Ryan Kistner dceed3a9a1 Don't forget about anonymous users 2017-07-27 15:03:21 -06:00
Ryan Kistner 17d5f7357d Initialize LoginKeys dictionary 2017-07-27 14:55:03 -06:00
Ryan Kistner 35aa666ea5 Always process Disconnect callback before pausing for input. This prevents the Disconnect callback from being processed after the Connect 2017-02-27 20:46:49 -07:00
Ryan Kistner 251b4010ee Use ConcurrentDictionary and flatten keys for CDNAuthTokens 2017-02-09 16:25:42 -07:00
Ryan Kistner 7f5ca92659 Report when we aren't able to retrieve a CDN auth token 2017-02-09 10:37:01 -07:00
Ryan Kistner 6278fc2b94 Added CheckAppBetaPassword to retrieve encryption keys for encrypted_gid_2 depots 2017-01-21 22:40:30 -07:00
Ryan Kistner 97b8716c86 Pass appId all the way through for correctness 2017-01-08 14:27:56 -07:00
Ryan Kistner 06a7d099ba Style fixes for CDNClientPool 2016-07-05 19:31:16 -06:00
Ryan Kistner 9b778c374e Abort main flow if we can't connect after STEAM3_TIMEOUT seconds 2016-07-02 23:00:55 -06:00
Ryan Kistner bdfd56b482 Merge branch 'cdn-pool' 2016-06-24 13:21:36 -06:00
Ryan Kistner 3b3f6e272e Switched to plain console logging 2016-06-24 13:20:56 -06:00
Ryan Kistner 0869f85b93 Added CDN client pooling 2016-06-22 19:46:20 -06:00
Ryan Kistner daa6e0f9ef Merge pull request #8 from xPaw/2fa
Add 2FA support
2015-10-04 16:14:13 -06:00
Ryan Kistner 5cf8c66f06 Longer integer for chunk math. Int32 overflow when calculating file diff 2015-06-12 20:52:15 -06:00
Ryan Kistner 52d45da141 Check for access to other app when depotfromapp is specified, otherwise continue with existing depot information 2015-05-06 09:39:46 -06:00
Ryan Kistner 63ab1b0232 Flush pending Disconnected callback in anticipation of blocking the main thread 2014-11-29 14:06:24 -07:00
Ryan Kistner 155196ec7f Added a missing parameter 2014-11-18 14:31:45 -07:00
Ryan Kistner eaef1160c3 Added retry logic to steam requests and made downloader "retry forever" where appropriate. 2014-11-18 14:29:14 -07:00
Ryan Kistner b12c22454b Added persistent content server penalty 2014-11-07 19:37:17 -07:00
Ryan Kistner 663d17834a Parallelize CollectCDNClientsForDepot to ensure minimum amount of servers until exhausting the list
Switched cdnClients to a BlockingQueue to prevent bad cdn clients being dropped from starving other threads
2014-10-29 17:11:33 -06:00
Ryan Kistner eba7234f91 Perform checksums when copying chunks when an old manifest is present. Fixes -verify-all. 2014-10-22 09:52:30 -06:00
Ryan Kistner 40fd3c94d6 Don't download the same chunk forever 2014-10-21 16:02:31 -06:00
Ryan Kistner 289af06733 Discard CDNClients instead of looping forever 2014-10-15 19:50:19 -06:00
Ryan Kistner 3b02d4d754 SteamKit 1.6.0 2014-10-11 22:04:24 -06:00
Ryan Kistner cc9e576361 Upgraded Steam3Session to latest SteamKit. Added error handling to CollectCDNClientsForDepot 2014-10-11 04:45:10 -06:00
Ryan Kistner 330902c091 Merge branch 'cdn-client' 2014-10-11 04:12:45 -06:00
Ryan Kistner 81a9057779 Don't attempt cm0 servers 2014-07-21 11:01:36 -06:00
Ryan Kistner a0a1db448a Allow reconnection logic to run for initial connection. Also bail out of AccountHasAccess without a steamid 2014-07-21 10:47:29 -06:00
Ryan Kistner 5f9aa57f91 CDN content server support and thread safety fixes for CDNClient initialization 2014-03-16 22:20:18 -06:00
Ryan Kistner fdba42da77 Revert 'Added support for CDN content servers' 2014-03-16 20:40:10 -06:00
Ryan Kistner ff2f8131a4 Added support for CDN content servers 2014-03-16 01:01:35 -06:00
Ryan Kistner 46659854cd Updated ContentDownloader.CollectCDNClientsForDepot to reflect modified FetchServerList 2014-03-06 20:23:00 -07:00
Ryan Kistner 066c528886 DepotDownloader: Anon users possibly have this sub 2013-02-19 21:23:44 -07:00
Ryan Kistner 1a281f3182 DepotDownloader: More steam3 support 2013-02-19 20:36:31 -07:00