Skip to content

Commit 9ad4d4f

Browse files
authored
Revert "evm: Adds Transceiver Payload V1 (#316)" (#398)
1 parent 1010101 commit 9ad4d4f

File tree

4 files changed

+16
-49
lines changed

4 files changed

+16
-49
lines changed

evm/src/Transceiver/WormholeTransceiver/WormholeTransceiver.sol

+13-46
Original file line numberDiff line numberDiff line change
@@ -182,9 +182,16 @@ contract WormholeTransceiver is
182182
TransceiverStructs.TransceiverInstruction memory instruction,
183183
bytes memory nttManagerMessage
184184
) internal override {
185-
TransceiverStructs.TransceiverMessage memory transceiverMessage;
186-
bytes memory encodedTransceiverPayload;
187-
bytes32 wormholeFormattedCaller = toWormholeFormat(caller);
185+
(
186+
TransceiverStructs.TransceiverMessage memory transceiverMessage,
187+
bytes memory encodedTransceiverPayload
188+
) = TransceiverStructs.buildAndEncodeTransceiverMessage(
189+
WH_TRANSCEIVER_PAYLOAD_PREFIX,
190+
toWormholeFormat(caller),
191+
recipientNttManagerAddress,
192+
nttManagerMessage,
193+
new bytes(0)
194+
);
188195

189196
WormholeTransceiverInstruction memory weIns =
190197
parseWormholeTransceiverInstruction(instruction.payload);
@@ -193,15 +200,6 @@ contract WormholeTransceiver is
193200
// NOTE: standard relaying supports refunds. The amount to be refunded will be sent
194201
// to a refundAddress specified by the client on the destination chain.
195202

196-
(transceiverMessage, encodedTransceiverPayload) = TransceiverStructs
197-
.buildAndEncodeTransceiverMessage(
198-
WH_TRANSCEIVER_PAYLOAD_PREFIX,
199-
wormholeFormattedCaller,
200-
recipientNttManagerAddress,
201-
nttManagerMessage,
202-
new bytes(0)
203-
);
204-
205203
// push onto the stack again to avoid stack too deep error
206204
bytes32 refundRecipient = refundAddress;
207205
uint16 destinationChain = recipientChain;
@@ -218,49 +216,18 @@ contract WormholeTransceiver is
218216

219217
emit RelayingInfo(uint8(RelayingType.Standard), refundAddress, deliveryPayment);
220218
} else if (!weIns.shouldSkipRelayerSend && isSpecialRelayingEnabled(recipientChain)) {
221-
// This transceiver payload is used to signal whether the message should be
222-
// picked up by the special relayer or not:
223-
// - It only affects the off-chain special relayer.
224-
// - It is not used by the target NTT Manager contract.
225-
// Transceiver payload is prefixed with 1 byte representing the version of
226-
// the payload. The rest of the bytes are the -actual- payload data. In payload
227-
// v1, the payload data is a boolean representing whether the message should
228-
// be picked up by the special relayer or not.
229-
bytes memory transceiverPayload = abi.encodePacked(uint8(1), true);
230-
(transceiverMessage, encodedTransceiverPayload) = TransceiverStructs
231-
.buildAndEncodeTransceiverMessage(
232-
WH_TRANSCEIVER_PAYLOAD_PREFIX,
233-
wormholeFormattedCaller,
234-
recipientNttManagerAddress,
235-
nttManagerMessage,
236-
transceiverPayload
237-
);
238-
239-
// push onto the stack again to avoid stack too deep error
240-
uint256 deliveryFee = deliveryPayment;
241-
uint16 destinationChain = recipientChain;
242-
243219
uint256 wormholeFee = wormhole.messageFee();
244220
uint64 sequence = wormhole.publishMessage{value: wormholeFee}(
245221
0, encodedTransceiverPayload, consistencyLevel
246222
);
247-
specialRelayer.requestDelivery{value: deliveryFee - wormholeFee}(
248-
getNttManagerToken(), destinationChain, 0, sequence
223+
specialRelayer.requestDelivery{value: deliveryPayment - wormholeFee}(
224+
getNttManagerToken(), recipientChain, 0, sequence
249225
);
250226

251227
// NOTE: specialized relaying does not currently support refunds. The zero address
252228
// is used as a placeholder for the refund address until support is added.
253-
emit RelayingInfo(uint8(RelayingType.Special), bytes32(0), deliveryFee);
229+
emit RelayingInfo(uint8(RelayingType.Special), bytes32(0), deliveryPayment);
254230
} else {
255-
(transceiverMessage, encodedTransceiverPayload) = TransceiverStructs
256-
.buildAndEncodeTransceiverMessage(
257-
WH_TRANSCEIVER_PAYLOAD_PREFIX,
258-
wormholeFormattedCaller,
259-
recipientNttManagerAddress,
260-
nttManagerMessage,
261-
new bytes(0)
262-
);
263-
264231
wormhole.publishMessage{value: deliveryPayment}(
265232
0, encodedTransceiverPayload, consistencyLevel
266233
);

evm/test/TransceiverStructs.t.sol

+1-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ contract TestTransceiverStructs is Test {
9494
sourceNttManagerAddress: hex"042942FAFABE",
9595
recipientNttManagerAddress: hex"042942FABABE",
9696
nttManagerPayload: TransceiverStructs.encodeNttManagerMessage(mm),
97-
transceiverPayload: hex"0101"
97+
transceiverPayload: new bytes(0)
9898
});
9999

100100
bytes memory encodedTransceiverMessage =
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9945ff10042942fafabe0000000000000000000000000000000000000000000000000000042942fababe00000000000000000000000000000000000000000000000000000091128434bafe23430000000000000000000000000000000000ce00aa00000000004667921341234300000000000000000000000000000000000000000000000000004f994e545407000000000012d687beefface00000000000000000000000000000000000000000000000000000000feebcafe00000000000000000000000000000000000000000000000000000000001100020101
1+
9945ff10042942fafabe0000000000000000000000000000000000000000000000000000042942fababe00000000000000000000000000000000000000000000000000000091128434bafe23430000000000000000000000000000000000ce00aa00000000004667921341234300000000000000000000000000000000000000000000000000004f994e545407000000000012d687beefface00000000000000000000000000000000000000000000000000000000feebcafe0000000000000000000000000000000000000000000000000000000000110000

solana/modules/ntt-messages/src/transceiver.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ mod test {
232232
},
233233
},
234234
},
235-
transceiver_payload: vec![0x01, 0x01],
235+
transceiver_payload: vec![],
236236
};
237237
assert_eq!(message, expected);
238238
assert_eq!(vec.len(), 0);

0 commit comments

Comments
 (0)