From aa44f939729923dd9e1c71ced092d49a4fddc123 Mon Sep 17 00:00:00 2001 From: Ahmed Zamil Date: Mon, 24 Jun 2024 19:45:19 +0300 Subject: [PATCH] fix --- demo/chat/chat.js | 5 +++-- demo/chat/index.html | 1 - package.json | 2 +- src/Net/IIP/DistributedConnection.js | 2 +- src/Security/Membership/AuthorizationRequest.js | 10 +++++----- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/demo/chat/chat.js b/demo/chat/chat.js index a5a97b9..b0263ab 100644 --- a/demo/chat/chat.js +++ b/demo/chat/chat.js @@ -19,6 +19,8 @@ import IIPAuthPacketIAuthDestination from '../../src/Net/Packets/IIPAuthPacketIA import IIPAuthPacketIAuthFormat from '../../src/Net/Packets/IIPAuthPacketIAuthFormat.js'; import IIPAuthPacketHeader from '../../src/Net/Packets/IIPAuthPacketHeader.js'; import Codec from '../../src/Data/Codec.js'; +import BinaryList from "../../src/Data/BinaryList.js"; +import SHA256 from "../../src/Security/Integrity/SHA256.js"; const require = createRequire(import.meta.url); @@ -74,9 +76,8 @@ class MyMembership extends IMembership { let remoteNonce = session.remoteHeaders.get(IIPAuthPacketHeader.Nonce); let localNonce = session.localHeaders.get(IIPAuthPacketHeader.Nonce); - var hashFunc = SHA256.Create(); // local nonce + password or token + remote nonce - var challenge = hashFunc.ComputeHash(new BinaryList() + var challenge = SHA256.compute(new BinaryList() .addUint8Array(remoteNonce) .addUint8Array(Codec.compose(7, null)) // answer is 7 .addUint8Array(localNonce) diff --git a/demo/chat/index.html b/demo/chat/index.html index d308a1f..a11ef6b 100644 --- a/demo/chat/index.html +++ b/demo/chat/index.html @@ -8,7 +8,6 @@ function authenticator(x) { - debugger; let challenge = prompt(x.clue); if (challenge != null) { return new Esiur.Core.AsyncReply(parseInt(challenge)); diff --git a/package.json b/package.json index 48c5f66..7c6f9be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "esiur", - "version": "2.2.14", + "version": "2.3.0", "description": "Distributed Object Framework", "main": "esiur.js", "type": "module", diff --git a/src/Net/IIP/DistributedConnection.js b/src/Net/IIP/DistributedConnection.js index f386dde..9b7976d 100644 --- a/src/Net/IIP/DistributedConnection.js +++ b/src/Net/IIP/DistributedConnection.js @@ -607,7 +607,7 @@ export default class DistributedConnection extends IStore { this.#openReply?.triggerError(new AsyncException(ErrorType.Management, authPacket.errorCode, authPacket.message)); this.#openReply = null; - var ex = AsyncException(ErrorType.Management, authPacket.errorCode, + var ex = new AsyncException(ErrorType.Management, authPacket.errorCode, authPacket.message); this._emit("error", this, ex); diff --git a/src/Security/Membership/AuthorizationRequest.js b/src/Security/Membership/AuthorizationRequest.js index 23f439e..0aaa6dc 100644 --- a/src/Security/Membership/AuthorizationRequest.js +++ b/src/Security/Membership/AuthorizationRequest.js @@ -30,22 +30,22 @@ export default class AuthorizationRequest { this.clue = headers.get(IIPAuthPacketIAuthHeader.Clue); if (headers.has(IIPAuthPacketIAuthHeader.RequiredFormat)) - requiredFormat = headers.get(IIPAuthPacketIAuthHeader.RequiredFormat); + this.requiredFormat = headers.get(IIPAuthPacketIAuthHeader.RequiredFormat); if (headers.has(IIPAuthPacketIAuthHeader.ContentFormat)) - contentFormat = headers.get(IIPAuthPacketIAuthHeader.ContentFormat); + this.contentFormat = headers.get(IIPAuthPacketIAuthHeader.ContentFormat); if (headers.has(IIPAuthPacketIAuthHeader.Content)) - content = headers.get(IIPAuthPacketIAuthHeader.Content); + this.content = headers.get(IIPAuthPacketIAuthHeader.Content); if (headers.has(IIPAuthPacketIAuthHeader.Trials)) - trials = headers.get(IIPAuthPacketIAuthHeader.Trials); + this.trials = headers.get(IIPAuthPacketIAuthHeader.Trials); if (headers.has(IIPAuthPacketIAuthHeader.Issue)) this.issue = headers.get(IIPAuthPacketIAuthHeader.Issue); if (headers.has(IIPAuthPacketIAuthHeader.Expire)) - expire = headers.get(IIPAuthPacketIAuthHeader.Expire); + this.expire = headers.get(IIPAuthPacketIAuthHeader.Expire); } }