Reisen
e561d6de02
sdk: fixes to types and builds
...
Change-Id: I10b753450445cc021dbeb9f28ddb0384070e9635
2022-01-14 13:09:12 +00:00
Reisen
ee0fea0436
sdk: add underlying sdk for wormhole programs
...
Change-Id: I858f3e43e6458af51131de9165a63078e4bb024c
2022-01-14 13:09:12 +00:00
Reisen
d21f08d2cb
rust: rename wormhole libraries
...
Change-Id: I9bf5255c13b13d3724d7f8809489b04612b90747
2022-01-14 13:09:12 +00:00
Stanisław Drozd
02a1dcecbc
solana: hide wasm-bindgen dependency behind the feature flag ( #730 )
...
commit-id:480d3b7a
2022-01-10 15:31:36 +01:00
Hendrik Hofstadt
1421e5d76f
Add derivation methods for claims and spl meta
...
Change-Id: I4e8056b37d441caf7bca94037585c37afe25cc24
2021-09-21 16:29:42 +02:00
Reisen
20386593ed
solana/bridge: fix tests to use bool sigcheck
...
Change-Id: I8d59016ae926e9cdcdc6114db8c640889fc5c9ee
2021-09-13 10:29:29 +00:00
Reisen
ca509f2d73
solana/bridge: re-organize account data
...
Change-Id: Ia215c584e5d00145d8ad0250c303ca9503d8432a
2021-09-13 10:29:29 +00:00
Hendrik Hofstadt
94695ee125
More checks on amount and fees
...
Change-Id: If5a7f43faa0ea39e99138c0856756bad19a4b410
2021-09-07 12:18:06 +02:00
Stan Drozd
5dbd3ea722
pyth2wormhole: on-chain attestation call, update Pyth-facing types
...
This commit takes the selected Pyth Price struct account and after
serialization places them inside a PostMessage cross-program
call to Wormhole.
Change-Id: If04123705290f4749de318c0dfaa8f1d840ed349
2021-09-03 17:17:34 +02:00
Hendrik Hofstadt
48e8ae1555
Fix guardian set expiration
...
Change-Id: Ie92168305db2dcd69421f369078d118a011332e1
2021-09-01 18:48:10 +00:00
Hendrik Hofstadt
1a8bf4456e
Fix initial guardian set expiration on mainnet
...
Change-Id: I41adacc68687d0c638e79c834b7441896dc4ed98
2021-09-01 18:48:10 +00:00
Hendrik Hofstadt
610bf76902
Don't store signatures on chain
...
This saves 0.01 SOL per Wormhole tx and we don't need it.
Change-Id: I947a20fcbae9822c11073ba83b4dc67f9dcee19c
2021-09-01 18:48:10 +00:00
Hendrik Hofstadt
72477c46a4
Allow the emitter to be mutable
...
This is the case when the emitter is the fee payer.
Change-Id: Ib21658c6cbbbb246a7434057c0f03f24bec8c013
2021-08-23 13:54:07 +00:00
Reisen
254f1c8674
Use bridge config to decide fee payer.
...
Change-Id: I5eb7601737eb5cbc687dee07567a6fab4e5ca4c5
2021-08-23 13:54:03 +00:00
Hendrik Hofstadt
f42453be45
Resolve rust compiler warnings
...
Change-Id: Iaac63d0fb44ecb7e03d68a10df7bddbb521c73a0
2021-08-23 09:51:31 +02:00
Hendrik Hofstadt
d242fd0fa4
Set bridge address via env variable
...
Change-Id: If301b31525dbe1d9f892f93ffbc1a35507be4625
2021-08-23 09:39:24 +02:00
Hendrik Hofstadt
1f6b3ba323
Pack more signatures in the verification tx
...
Since we now use double hashing, this will work no matter how large the payload is
Change-Id: I79939e9a0698bd71602aae1135d4d40631bb4438
2021-08-12 13:23:53 +02:00
Hendrik Hofstadt
24e5406e84
Always log sequence
...
Change-Id: I0fe6e2f0f564f719b6207067b7824e395e91a65c
2021-08-09 12:51:23 +00:00
Hendrik Hofstadt
add04e8755
Create different accounts for message posting and VAA posting
...
Change-Id: I88a3f74301aeecc16bb51ba693ea9523dc16b612
2021-08-09 13:51:25 +02:00
Hendrik Hofstadt
597aae7cd7
Automatically register eth and solana token bridges
...
Change-Id: I35efef8d53f999f85ca2e8c4f58cc6cbf8193b2d
2021-08-06 15:21:27 +00:00
Hendrik Hofstadt
3fb493cb23
Remove hardcoded instances of the bridge pubkey in the program
...
Change-Id: I42bc36fa9db650b9cab6c6ac4c8e7c969487a40f
2021-08-06 12:25:01 +00:00
Hendrik Hofstadt
86cd27c919
Allow Solana VAAs to be posted even if the message account does not exist
...
This is needed for hand-crafted governance VAAs that originate from Solana
Change-Id: I50f75de9a83dd9640d960a7808c0a6605afc539d
2021-08-06 10:20:19 +00:00
Reisen
05aece1f7c
Add Metadata to token bridge attestations
...
Change-Id: Ic1a10978c25fbd916a16bd08eab0b6937c67cd59
2021-08-06 08:24:37 +00:00
Hendrik Hofstadt
24f7780883
Always log sequence
...
Change-Id: I7847b8993f1453cc0e9943d4004a3d6bf7d3f5d7
2021-08-03 15:10:01 +00:00
Hendrik Hofstadt
8ab3b669d9
Address review comments
...
Change-Id: I4036e71f3df1dc419419930cfdffba302166e28d
2021-07-30 18:21:38 +00:00
Reisen
0a669111dd
Derive Wrapped Mint/Tokens
...
Change-Id: Ic530013e1932daef382cd89b9f14d1069c4006b0
2021-07-30 13:09:44 +00:00
Reisen
108a4a2ff9
Remove InstructionContext::verify. Verify in handlers
...
Change-Id: I661308951de261bff572398b6834523563906907
2021-07-30 13:09:44 +00:00
Hendrik Hofstadt
dfdf31dcce
Implement WASM client for token bridge
...
Change-Id: I592cc0ece0553d55c50d87010783fefb7f9b5f2f
2021-07-29 17:27:54 +02:00
Hendrik Hofstadt
f9eb8a2c0a
Implement wasm client for the bridge core
...
Change-Id: I7931eef27d8b10eaeec00833ab3dc28a57257cdf
2021-07-29 17:27:45 +02:00
Hendrik Hofstadt
d33738e179
Make the token bridge work
...
Change-Id: Ic34f87c09dfaa91d7bf5793e83da9f06abd2fa3f
2021-07-29 17:21:17 +02:00
Hendrik Hofstadt
897af148fc
Implement a bridge stub for testing
...
Change-Id: Ide97a1df9d55658eeea79f7886a3a504a9108fda
2021-07-29 15:20:22 +00:00
Hendrik Hofstadt
42c3040de1
Allow user provided signature set accounts to prevent DoS
...
With derived signature set accounts, an old guardian set could frontrun the creation of the account. Since the hash is persisted in the account, we don't need to encode it in the account address.
Change-Id: I49ca46611eb587c8234ac9b2c459263a2ace4219
2021-07-29 15:14:08 +00:00
Leo
270bd78e98
solana: log sequence number
...
Untested: )
Change-Id: If6ff5b1b3b8199d6d8658aea8f3f0babc75b6989
2021-07-27 12:01:28 +00:00
Reisen
5f0707c75d
Remove persistent from Bridge tests.
...
Change-Id: Id149bf38a9b3061964cd2ac2b539ba03c9af0c29
2021-07-26 16:09:01 +00:00
Reisen
64c1d86e4d
Change serialize hierarchy for Governance
...
Change-Id: Id5581f84e9d325e1546f1690ba977b7470915491
2021-07-26 16:09:01 +00:00
Reisen
6ea55f8c25
Upgrade Contract Changes + Test
...
Change-Id: Iafa06cd7df6dddd514cd2032b7693188d8202c46
2021-07-20 20:56:38 +00:00
Hendrik Hofstadt
d7b6281492
Fix governance action ids in Solana
...
Change-Id: I7e540ae7447ad9ff428fdd8215c21e9f394329af
2021-07-20 20:52:47 +00:00
Hendrik Hofstadt
80244ae0f3
Drop persistence options on Solana
...
Change-Id: Ia96672f3f80ec5daa0cce71ffbb69e2c059b3494
2021-07-20 21:00:42 +02:00
Hendrik Hofstadt
b97a32df37
Fix formatting
...
Change-Id: I4aaa4ab6bb72d7645a12f0a28a99db71a183ad87
2021-07-20 19:47:42 +02:00
Hendrik Hofstadt
953ca87162
Double hashing in Solana
...
Change-Id: I86769ae07cb28b38e00025b2f0bcf01919262c98
2021-07-20 17:37:16 +00:00
Reisen
99c3e40968
Fix Governance Headers
...
Change-Id: If2026ff4a6107327f69c5d0675a736e6ab87f1bd
2021-07-20 17:37:08 +00:00
Reisen
1cc90e54db
Deserialize only the discriminant in the entrypoint.
...
It would seem that Borsh, when deserializing an enum will consume a
large amount of stack space proportional to the number of discriminants.
This causes the entrypoint to trigger stack frame access violations
during the initial deserialization.
This change uses an enum represented by a u8 instead, and removes the
association between the discriminant and the data. Deserializing the
associated data is now pushed down to within the entrypoint match arms
instead.
Change-Id: I2dcb466bf7820b3344e175ad92988bb89f30cb15
2021-07-20 11:11:28 +00:00
Hendrik Hofstadt
fb3d267a50
Correct governance header module
...
Change-Id: Ib2ebfeedab0bf40c466def0a58a6f3971db81dfc
2021-07-19 12:17:56 +00:00
Hendrik Hofstadt
af4e29978d
Add commitment level to VAAs
...
This allows requesting attestations for various commitment/confirmation levels. This is helpful for low-latency applications like Pyth.
Change-Id: Ib49ace163365106b227613d2f66b787b3e5f5461
2021-07-19 07:11:45 +00:00
Stanislaw Drozd
844a303b5b
Revert "Solitaire: Extend Peel to support CPI re-wrapping"
...
Revert submission 693
Reason for revert: Moving away from CPI abstraction
Reverted Changes:
I8c252e137:bridge, token_bridge: Use Many<T>
I6a721e8a8:Solitaire: Add an explicit Many<T> type for nested...
Ibdc94b4c6:Solitaire: Serialize CPI accounts as an AccountMet...
Iefa59f5d4:Solitaire: Extend Peel to support CPI re-wrapping
Change-Id: Iab567aea6dca5be1a7bf7efd4b86e0be05d2753c
2021-07-15 13:22:50 +00:00
Stanislaw Drozd
cbc5ae3ed1
Revert "Solitaire: Serialize CPI accounts as an AccountMeta vect..."
...
Revert submission 693
Reason for revert: Moving away from CPI abstraction
Reverted Changes:
I8c252e137:bridge, token_bridge: Use Many<T>
I6a721e8a8:Solitaire: Add an explicit Many<T> type for nested...
Ibdc94b4c6:Solitaire: Serialize CPI accounts as an AccountMet...
Iefa59f5d4:Solitaire: Extend Peel to support CPI re-wrapping
Change-Id: I01733d16862aeac79ad76dff4f58386641488b3e
2021-07-15 13:22:50 +00:00
Stanislaw Drozd
24e3896582
Revert "bridge, token_bridge: Use Many<T>"
...
Revert submission 693
Reason for revert: Moving away from CPI abstraction
Reverted Changes:
I8c252e137:bridge, token_bridge: Use Many<T>
I6a721e8a8:Solitaire: Add an explicit Many<T> type for nested...
Ibdc94b4c6:Solitaire: Serialize CPI accounts as an AccountMet...
Iefa59f5d4:Solitaire: Extend Peel to support CPI re-wrapping
Change-Id: I94dc6f66b631f25fecf2c3b3a8b72302a706f0a2
2021-07-15 13:22:50 +00:00
Stan Drozd
0891d9e433
bridge, token_bridge: Use Many<T>
...
Change-Id: I8c252e137cd092144ec8af2c2a857c7b1247dbfc
2021-07-14 17:58:17 +02:00
Stan Drozd
ee96b6b793
Solitaire: Serialize CPI accounts as an AccountMeta vector from Iter
...
Change-Id: Ibdc94b4c6359ffef78d3e2313bfee12eef93acc7
2021-07-14 17:41:19 +02:00
Stan Drozd
5827ba7b30
Solitaire: Extend Peel to support CPI re-wrapping
...
Change-Id: Iefa59f5d4fe36c9f9e2cd0fa997490eba0a1bb44
2021-07-14 17:41:08 +02:00