예제 #1
0
        private object OnHasPasswords( object message )
        {
            var packet = ( CreateAuthSessionKeyMessage )message;
            var ret = new OperationResult();

            PasswordManager passwordManager = new PasswordManager();

            ret.Value = passwordManager.HasPasswords();
            return ret;
        }
예제 #2
0
        private object OnAddPassword( object message )
        {
            var packet = ( AddPasswordMessage )message;
            var ret = new OperationResult();

            PasswordManager passwordManager = new PasswordManager();

            bool hasPasswords = passwordManager.HasPasswords();

            if ( !this.CheckSession( packet.SessionKey ) && hasPasswords )
            {
                ret.Value = false;
                return ret;
            }

            if ( !this.IsPasswordCorrect( packet.NewPassword ) )
            {
                ret.Value = false;
                return ret;
            }

            string newPassword = HashManager.Sha256( packet.NewPassword );

            passwordManager.InsertPassword( newPassword );

            ret.Value = true;
            return ret;
        }