public DecryptFilenames ( byte encryptionKey ) : bool | ||
encryptionKey | byte | The encryption key. |
Résultat | bool |
/// <summary> /// Downloads the depot manifest specified by the given manifest ID, and optionally decrypts the manifest's filenames if the depot decryption key has been provided. /// </summary> /// <param name="manifestId">The unique identifier of the manifest to be downloaded.</param> /// <returns>A <see cref="DepotManifest"/> instance that contains information about the files present within a depot.</returns> public DepotManifest DownloadManifest(ulong manifestId) { byte[] compressedManifest = DoRawCommand(connectedServer, "depot", doAuth: true, args: string.Format("{0}/manifest/{1}", depotId, manifestId)); byte[] manifestData = ZipUtil.Decompress(compressedManifest); var depotManifest = new DepotManifest(manifestData); if (depotKey != null) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames(depotKey); } return(depotManifest); }
async Task <DepotManifest> DownloadManifestCoreAsync(uint depotId, ulong manifestId, Server server, string cdnAuthToken, byte[] depotKey) { var manifestData = await DoRawCommandAsync(server, HttpMethod.Get, "depot", doAuth : true, args : string.Format("{0}/manifest/{1}/5", depotId, manifestId), authtoken : cdnAuthToken).ConfigureAwait(false); manifestData = ZipUtil.Decompress(manifestData); var depotManifest = new DepotManifest(manifestData); if (depotKey != null) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames(depotKey); } return(depotManifest); }
DepotManifest DownloadManifestCore(uint depotId, ulong manifestId, Server server, string cdnAuthToken, byte[] depotKey) { byte[] manifestData = DoRawCommand(server, "depot", doAuth: true, args: string.Format("{0}/manifest/{1}/5", depotId, manifestId), authtoken: cdnAuthToken); manifestData = ZipUtil.Decompress(manifestData); var depotManifest = new DepotManifest(manifestData); if (depotKey != null) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames(depotKey); } return(depotManifest); }
/// <summary> /// Downloads the depot manifest specified by the given manifest ID, and optionally decrypts the manifest's filenames if the depot decryption key has been provided. /// </summary> /// <param name="depotId">The id of the depot being accessed.</param> /// <param name="manifestId">The unique identifier of the manifest to be downloaded.</param> /// <param name="server">The content server to connect to.</param> /// <param name="cdnAuthToken">CDN auth token for CDN content server endpoints.</param> /// <param name="depotKey"> /// The depot decryption key for the depot that will be downloaded. /// This is used for decrypting filenames (if needed) in depot manifests, and processing depot chunks. /// </param> /// <param name="proxyServer">Optional content server marked as UseAsProxy which transforms the request.</param> /// <returns>A <see cref="DepotManifest"/> instance that contains information about the files present within a depot.</returns> /// <exception cref="System.ArgumentNullException"><see ref="server"/> was null.</exception> /// <exception cref="HttpRequestException">An network error occurred when performing the request.</exception> /// <exception cref="SteamKitWebRequestException">A network error occurred when performing the request.</exception> public async Task <DepotManifest> DownloadManifestAsync(uint depotId, ulong manifestId, Server server, string?cdnAuthToken, byte[]?depotKey, Server?proxyServer = null) { if (server == null) { throw new ArgumentNullException(nameof(server)); } var manifestData = await DoRawCommandAsync(server, string.Format("depot/{0}/manifest/{1}/5", depotId, manifestId), cdnAuthToken, proxyServer).ConfigureAwait(false); manifestData = ZipUtil.Decompress(manifestData); var depotManifest = new DepotManifest(manifestData); if (depotKey != null) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames(depotKey); } return(depotManifest); }
/// <summary> /// Downloads the depot manifest specified by the given manifest ID, and optionally decrypts the manifest's filenames if the depot decryption key has been provided. /// </summary> /// <param name="depotId">The id of the depot being accessed.</param> /// <param name="manifestId">The unique identifier of the manifest to be downloaded.</param> /// <returns>A <see cref="DepotManifest"/> instance that contains information about the files present within a depot.</returns> public DepotManifest DownloadManifest(uint depotId, ulong manifestId) { string cdnToken = null; depotCdnAuthKeys.TryGetValue(depotId, out cdnToken); byte[] compressedManifest = DoRawCommand(connectedServer, "depot", doAuth: true, args: string.Format("{0}/manifest/{1}/5", depotId, manifestId), authtoken: cdnToken); byte[] manifestData = ZipUtil.Decompress(compressedManifest); var depotManifest = new DepotManifest(manifestData); byte[] depotKey; if (depotKeys.TryGetValue(depotId, out depotKey)) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames(depotKey); } return(depotManifest); }
/// <summary> /// Downloads the depot manifest specified by the given manifest ID, and optionally decrypts the manifest's filenames if the depot decryption key has been provided. /// </summary> /// <param name="manifestId">The unique identifier of the manifest to be downloaded.</param> /// <returns>A <see cref="DepotManifest"/> instance that contains information about the files present within a depot.</returns> public DepotManifest DownloadManifest( ulong manifestId ) { byte[] compressedManifest = DoRawCommand( connectedServer, "depot", doAuth: true, args: string.Format( "{0}/manifest/{1}", depotId, manifestId ) ); byte[] manifestData = ZipUtil.Decompress( compressedManifest ); var depotManifest = new DepotManifest( manifestData ); if ( depotKey != null ) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames( depotKey ); } return depotManifest; }
DepotManifest DownloadManifestCore( uint depotId, ulong manifestId, Server server, string cdnAuthToken, byte[] depotKey ) { byte[] manifestData = DoRawCommand( server, "depot", doAuth: true, args: string.Format( "{0}/manifest/{1}/5", depotId, manifestId ), authtoken: cdnAuthToken ); manifestData = ZipUtil.Decompress( manifestData ); var depotManifest = new DepotManifest( manifestData ); if ( depotKey != null ) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames( depotKey ); } return depotManifest; }
/// <summary> /// Downloads the depot manifest specified by the given manifest ID, and optionally decrypts the manifest's filenames if the depot decryption key has been provided. /// </summary> /// <param name="depotId">The id of the depot being accessed.</param> /// <param name="manifestId">The unique identifier of the manifest to be downloaded.</param> /// <returns>A <see cref="DepotManifest"/> instance that contains information about the files present within a depot.</returns> public DepotManifest DownloadManifest( uint depotId, ulong manifestId ) { string cdnToken = null; depotCdnAuthKeys.TryGetValue( depotId, out cdnToken ); byte[] compressedManifest = DoRawCommand( connectedServer, "depot", doAuth: true, args: string.Format( "{0}/manifest/{1}/5", depotId, manifestId ), authtoken: cdnToken ); byte[] manifestData = ZipUtil.Decompress( compressedManifest ); var depotManifest = new DepotManifest( manifestData ); byte[] depotKey; if ( depotKeys.TryGetValue( depotId, out depotKey ) ) { // if we have the depot key, decrypt the manifest filenames depotManifest.DecryptFilenames( depotKey ); } return depotManifest; }