From f03f526e53127029507dff25eb77289573ba3cab Mon Sep 17 00:00:00 2001 From: minghinmatthewlam Date: Mon, 8 Jan 2024 09:22:00 -0800 Subject: [PATCH] Message id updates (#225) * update packing and subnet-evm version * calculate message id output --- .../Teleporter/TeleporterMessenger/packing.go | 26 +++++++++++++++++-- contracts/lib/subnet-evm | 2 +- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/abi-bindings/go/Teleporter/TeleporterMessenger/packing.go b/abi-bindings/go/Teleporter/TeleporterMessenger/packing.go index f90c5bc13..356e28385 100644 --- a/abi-bindings/go/Teleporter/TeleporterMessenger/packing.go +++ b/abi-bindings/go/Teleporter/TeleporterMessenger/packing.go @@ -95,13 +95,35 @@ func PackReceiveCrossChainMessage(messageIndex uint32, relayerRewardAddress comm return abi.Pack("receiveCrossChainMessage", messageIndex, relayerRewardAddress) } +// PackCalculateMessageID packs input to form a call to the calculateMessageID function +func PackCalculateMessageID( + sourceBlockchainID [32]byte, + destinationBlockchainID [32]byte, + nonce *big.Int) ([]byte, error) { + abi, err := TeleporterMessengerMetaData.GetAbi() + if err != nil { + return nil, errors.Wrap(err, "failed to get abi") + } + + return abi.Pack("calculateMessageID", sourceBlockchainID, destinationBlockchainID, nonce) +} + +func PackCalculateMessageIDOutput(messageID [32]byte) ([]byte, error) { + abi, err := TeleporterMessengerMetaData.GetAbi() + if err != nil { + return nil, errors.Wrap(err, "failed to get abi") + } + + return abi.PackOutput("calculateMessageID", messageID) +} + // PackMessageReceived packs a MessageReceivedInput to form a call to the messageReceived function -func PackMessageReceived(originChainID ids.ID, messageID *big.Int) ([]byte, error) { +func PackMessageReceived(messageID [32]byte) ([]byte, error) { abi, err := TeleporterMessengerMetaData.GetAbi() if err != nil { return nil, errors.Wrap(err, "failed to get abi") } - return abi.Pack("messageReceived", originChainID, messageID) + return abi.Pack("messageReceived", messageID) } // UnpackMessageReceivedResult attempts to unpack result bytes to a bool indicating whether the message was received diff --git a/contracts/lib/subnet-evm b/contracts/lib/subnet-evm index 8beb36640..ba46d7b48 160000 --- a/contracts/lib/subnet-evm +++ b/contracts/lib/subnet-evm @@ -1 +1 @@ -Subproject commit 8beb366405008ee0f40337069e7bf124f8e23140 +Subproject commit ba46d7b48ac5b18ffd29140e5f4000fd1edb0c68