Skip to content

Commit

Permalink
remove replay protection
Browse files Browse the repository at this point in the history
  • Loading branch information
derpy-duck committed Sep 19, 2023
1 parent 8db8a10 commit 47ef42d
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 11 deletions.
8 changes: 1 addition & 7 deletions src/HelloWormhole.sol
Original file line number Diff line number Diff line change
Expand Up @@ -33,21 +33,15 @@ contract HelloWormhole is IWormholeReceiver {
);
}

mapping(bytes32 => bool) public seenDeliveryVaaHashes;

function receiveWormholeMessages(
bytes memory payload,
bytes[] memory, // additionalVaas
bytes32, // address that called 'sendPayloadToEvm' (HelloWormhole contract address)
uint16 sourceChain,
bytes32 deliveryHash // this can be stored in a mapping deliveryHash => bool to prevent duplicate deliveries
bytes32 // delivery hash - unique identifier of delivery
) public payable override {
require(msg.sender == address(wormholeRelayer), "Only relayer allowed");

// Ensure no duplicate deliveries
require(!seenDeliveryVaaHashes[deliveryHash], "Message already processed");
seenDeliveryVaaHashes[deliveryHash] = true;

// Parse the payload and do the corresponding actions!
(string memory greeting, address sender) = abi.decode(payload, (string, address));
latestGreeting = greeting;
Expand Down
3 changes: 1 addition & 2 deletions src/extensions/HelloWormholeConfirmation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,13 @@ contract HelloWormholeConfirmation is Base, IWormholeReceiver {
bytes[] memory, // additionalVaas
bytes32 sourceAddress,
uint16 sourceChain,
bytes32 deliveryHash
bytes32 // delivery hash
)
public
payable
override
onlyWormholeRelayer
isRegisteredSender(sourceChain, sourceAddress)
replayProtect(deliveryHash)
{
MessageType msgType = abi.decode(payload, (MessageType));

Expand Down
3 changes: 1 addition & 2 deletions src/extensions/HelloWormholeProtections.sol
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,13 @@ contract HelloWormholeProtections is Base, IWormholeReceiver {
bytes[] memory, // additionalVaas
bytes32 sourceAddress,
uint16 sourceChain,
bytes32 deliveryHash
bytes32 // delivery hash
)
public
payable
override
onlyWormholeRelayer
isRegisteredSender(sourceChain, sourceAddress)
replayProtect(deliveryHash)
{
(string memory greeting, address sender) = abi.decode(payload, (string, address));
latestGreeting = greeting;
Expand Down

0 comments on commit 47ef42d

Please sign in to comment.