Commit Graph

310 Commits

Author SHA1 Message Date
Evan Gray b9359aab87 misc: dockerignore all solana targets
Change-Id: I658b16ce266aadd375a6b2e47a85ec3e3f2db1bd
2021-08-13 14:54:25 +00:00
Hendrik Hofstadt 8e0560274e Fix decimal truncation on Solana
Change-Id: I4b8a90852f03ac03ecbd1e981aa8924a9d26c31f
2021-08-12 19:09:51 +02:00
Hendrik Hofstadt f3ef29c8fd Introduce MaybeMut
This fixes issues in places where an account is passed in multiple times both readable and writable

Change-Id: I9e75c6c273b894bf113c8d652a7dd7dcfa32b863
2021-08-12 18:41:36 +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 0f2d3b9f45 Fix decimal truncation on solana
Change-Id: I8bebdb13be96b03bbac22dc85281f2b96bbe0aff
2021-08-12 12:26:06 +02:00
Hendrik Hofstadt e59a36663a Initialize spl token metadata for new wrapped assets
Change-Id: Ic42f00a1e07db3a5b073f36c4453bef953a15fe8
2021-08-11 16:10:47 +02:00
Hendrik Hofstadt f5b6facec5 Fix message account derivation in token bridge wasm
Change-Id: I75b1729c130b325e61eac4b69e5f4aa003b033cc
2021-08-11 10:09:11 +00:00
Reisen c6764faddd Fix derivation program id for attest
Change-Id: I4975bb40248406334c1d368cdbb61c1ec644f303
2021-08-11 09:03:02 +00:00
Hendrik Hofstadt fae219e427 Make message a signer in CPI, improve attest ix signature
Change-Id: I5136a62d5b0b7617b4dc3e3e2a17614a68908f3f
2021-08-09 17:11:20 +00:00
Reisen eafa7e0500 Return to trace! on Dispatch log to undo stack issue
Change-Id: Ica665e89d27585eb6ecfa7df5339413c7703b3a9
2021-08-09 16:52:56 +00:00
Reisen f8a0184a1d Derive SplTokenMeta addresses
Change-Id: I4a988b0778c741c1405d096ea0d7aa67a2a31190
2021-08-09 16:43:07 +00:00
Hendrik Hofstadt 24e5406e84 Always log sequence
Change-Id: I0fe6e2f0f564f719b6207067b7824e395e91a65c
2021-08-09 12:51:23 +00:00
Reisen 2f8a73fdda Instruction symbol and error printing in prod builds
Change-Id: I3315c49272473ef3216f26b9dd21f5cfcce6e8ae
2021-08-09 12:33:59 +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 bedc96d887 Add token bridge client for eth and solana
Change-Id: I0f9af0ffc606aed58579f167fadf80d1964360c8
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
Stan Drozd cb719971fe solana/Dockerfile: Make sure we add everything from solana/
Change-Id: I864d769668865b010f630b2ebf8addcb7dcae545
2021-08-04 17:05:10 +02:00
Stan Drozd 952a9d9db9 solana: Use a central location for well-known keypairs
Change-Id: Ibed0044bee47063ec0caa4b0c12e9e7037ed7e3b
2021-08-04 10:52:27 +00:00
Hendrik Hofstadt 8f1e980b4c Add more wasm helpers to the token bridge
Change-Id: I484361ef4b0eb2cd52913e695cf83ddccb5bfe7e
2021-08-03 15:10:01 +00:00
Hendrik Hofstadt 24f7780883 Always log sequence
Change-Id: I7847b8993f1453cc0e9943d4004a3d6bf7d3f5d7
2021-08-03 15:10:01 +00:00
Hendrik Hofstadt 361adf9920 Add token bridge CLI
This also automatically initializes the token bridge in the devnet

Change-Id: I473a97da1ff55e7c9a104983087951268eb7a27d
2021-08-03 15:10:01 +00:00
Leo b02d782f1c solana/bridge: remove agent
Change-Id: I8fdf4e53172a422ee5d9d4dee13faf32ced1be08
2021-07-31 11:20:24 +02:00
Hendrik Hofstadt 8ab3b669d9 Address review comments
Change-Id: I4036e71f3df1dc419419930cfdffba302166e28d
2021-07-30 18:21:38 +00:00
Stan Drozd df5b86eded Solitaire: Say what value was passed as wrong instruction id
Change-Id: I4b79ba95ab5a43a197dfdd164b731d37b490a093
2021-07-30 14:00:35 +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 dd5388a748 Add CPI proxy
Change-Id: Iba395084fe0cf5ebd4e1cd7bb3515c6c1f7e8756
2021-07-29 17:40:15 +02: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 f6932bebca Set correct mutability on Transfer Native
Change-Id: I50a34645de34cd97b801015748331cfba7cdfac9
2021-07-29 15:20:09 +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 7728b47659 devnet: fix Ready state delay by switching to readinessProbe
This works around an apparent k8s bug where startupProbe does not
respect periodSeconds.

Instead, use a readinessProbe.

Change-Id: I43251284db336ea5ade5b1735a867cf294a7b1c4
2021-07-28 14:59:48 +02:00
Leo 270bd78e98 solana: log sequence number
Untested: )
Change-Id: If6ff5b1b3b8199d6d8658aea8f3f0babc75b6989
2021-07-27 12:01:28 +00:00
Reisen db4c0f8f74 Handle Invalid Instructions
Change-Id: I8a6a15b7744e69c7eab88ef50295480bc5fb96ae
2021-07-26 16:09:01 +00:00
Reisen 28c0c3c195 Add Token Bridge test for initialize
Change-Id: Ia65c14b7a7bc6712e79db2b6f4244cb93f63093b
2021-07-26 16:09:01 +00:00
Reisen 191537ef8a Set correct mutability on Initialize
Change-Id: I102cb98678cc20fad6cb07da8835c1effa4973ea
2021-07-26 16:09:01 +00:00
Reisen f8174b7355 Set correct mutability on Attest
Change-Id: Ib9ead9dcc7c150292dcc00be60ac0a9b73935b48
2021-07-26 16:09:01 +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
Leo 052d922036 Clean up docs and packages for v2
Change-Id: I1020e648f4a8bd51412cf06196e78665308efdac
2021-07-21 19:46:10 +02:00
Hendrik Hofstadt c0228415f8 Fix devnet
Change-Id: I1d62e6323cc2169cce43581f9aeefb537bc84a76
2021-07-20 23:34:37 +02: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