SteamKit2.SteamUser.SendMachineAuthResponse C# (CSharp) Method

SendMachineAuthResponse() public method

Sends a machine auth response. This should normally be used in response to a UpdateMachineAuthCallback.
public SendMachineAuthResponse ( MachineAuthDetails details ) : void
details MachineAuthDetails The details pertaining to the response.
return void
        public void SendMachineAuthResponse( MachineAuthDetails details )
        {
            var response = new ClientMsgProtobuf<CMsgClientUpdateMachineAuthResponse>( EMsg.ClientUpdateMachineAuthResponse );

            // so we respond to the correct message
            response.ProtoHeader.jobid_target = details.JobID;

            response.Body.cubwrote = ( uint )details.BytesWritten;
            response.Body.eresult = ( uint )details.Result;

            response.Body.filename = details.FileName;
            response.Body.filesize = ( uint )details.FileSize;

            response.Body.getlasterror = ( uint )details.LastError;
            response.Body.offset = ( uint )details.Offset;

            response.Body.sha_file = details.SentryFileHash;

            response.Body.otp_identifier = details.OneTimePassword.Identifier;
            response.Body.otp_type = ( int )details.OneTimePassword.Type;
            response.Body.otp_value = details.OneTimePassword.Value;

            this.Client.Send( response );

        }

Usage Example

コード例 #1
0
        public void OnMachineAuth(SteamUser.UpdateMachineAuthCallback obj)
        {
            Console.WriteLine("[Steam] Writing sentry-file...");
            int sentrySize;

            byte[] sentryHash;


            using (var fs = File.Open("sentry.bin", FileMode.OpenOrCreate, FileAccess.ReadWrite))
            {
                fs.Seek(obj.Offset, SeekOrigin.Begin);
                fs.Write(obj.Data, 0, obj.BytesToWrite);
                sentrySize = (int)fs.Length;
                fs.Seek(0, SeekOrigin.Begin);
                using (var sha = SHA1.Create())
                    sentryHash = sha.ComputeHash(fs);
            }

            _user.SendMachineAuthResponse(new SteamUser.MachineAuthDetails()
            {
                JobID           = obj.JobID,
                FileName        = obj.FileName,
                BytesWritten    = obj.BytesToWrite,
                FileSize        = sentrySize,
                Offset          = obj.Offset,
                Result          = EResult.OK,
                LastError       = 0,
                OneTimePassword = obj.OneTimePassword,
                SentryFileHash  = sentryHash
            });

            Console.WriteLine("[Steam] Finished writing sentry-file!");
        }
All Usage Examples Of SteamKit2.SteamUser::SendMachineAuthResponse