Commit Graph

931 Commits

Author SHA1 Message Date
Stan Drozd 952a9d9db9 solana: Use a central location for well-known keypairs
Change-Id: Ibed0044bee47063ec0caa4b0c12e9e7037ed7e3b
2021-08-04 10:52:27 +00:00
Leo 360dccec27 design: initial state sync proposal
Change-Id: I57f65cefb95e72fbe9dc6738aeba3d4945202e47
2021-08-03 16:21:17 +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
Stan Drozd 5fc162de97 scripts.nix: VM defaults, tilt port script arg, unique cluster name
Change-Id: I26d0a362c28a3374007c33a76c16006a98b78cd7
2021-08-03 10:34:53 +00:00
Leo 1da08b5bee Remove "buf mod update"
Do not upgrade locked dependencies during build.

This is only necessary to initialize the buf.lock file, once the
file exists, a regular "buf build" appears to pull them in.

Change-Id: I86d7734f8d6897bc30a6c9edd220eb51628be50c
2021-08-02 17:17:28 +00:00
Leo fa94977a34 bridge_ui: ignore proto
Change-Id: Ic03e5e1ae4c9f12e6a84d8afc330c3c5274dccd4
2021-08-02 17:17:28 +00:00
Hendrik Hofstadt b37853f7d9 Use safe math in terra
This uses safe math even in places where it's technically not necessary, but we want to be consistent here.

Change-Id: I5f9c8e2c0a798a38e4459f673541024bc0f07ef4
2021-08-02 15:55:40 +00:00
Hendrik Hofstadt 7f67ba1194 Replay protection for terra governance VAAs
Change-Id: Ib197e1d842093c578c2a6858c3b0a3ef3d18665d
2021-08-02 15:55:40 +00:00
Hendrik Hofstadt 895e40578c Check emitter for wAsset creation on terra
Addresses audit comment

Change-Id: Icf6b1e52e58f5cab6e39db1ed663dc6f6a2c2476
2021-08-02 15:55:40 +00:00
Leo 904cb25e91 Remove dev-install.sh
Deprecated, use Stan's shell.nix for remote development.

Change-Id: I6eb9f3951673adf116b37723c6ff6c434a1ee683
2021-08-02 15:43:00 +02:00
Hendrik Hofstadt f6e96bdb05 Fix proto client generation
Change-Id: I5f7430a61d64237929d608c92bf3e703863b6724
2021-08-02 12:41:35 +00:00
Leo b77d408235 node/pkg/ethereum: readiness status for bsc
Bug: certusone/wormhole#292
Change-Id: Ibb176dc70beeb2c00c7faf7d85395e93d53e9e4c
2021-08-02 14:30:29 +02:00
Hendrik Hofstadt b28c76618a Build ts grpc client for bridge ui
Change-Id: I611783e5f55ac8c970f5fb6df651472700a30df4
2021-08-02 14:09:14 +02:00
Leo 855be15ab8 node: refuse to run as root
While it works, it's not good operational practice, particularly when
running guardiand alongside other services like a Solana node.

Even inside a container, it's best to run as non-root.

Change-Id: I331533ef37eaab6e73f6759d7eb779bbda849384
2021-08-02 13:26:57 +02:00
Leo 3af233e3eb node: add GuardianSetState and verify heartbeat signature
Bug: certusone/wormhole#267
Change-Id: Ica8015fbbd52506d800670d933051f410bb1caa7
2021-07-31 19:02:09 +02:00
Leo 08a8f390ca node/pkg/version: panic on empty version
Change-Id: I72207193e459122596f9731b36f45f619ccdad6c
2021-07-31 17:15:51 +02:00
Leo fddbb0c2a4 node: remove outdated TODOs
Change-Id: I05c2e2599e081fb439fd186ee853c0b7ca508969
2021-07-31 16:32:54 +02:00
Leo 2ebf473531 node: introduce SignedHeartbeat
Bug: certusone/wormhole#267
Change-Id: Ia34fa053240d7b340287cc4cc1e15556d3ff2893
2021-07-31 16:21:38 +02:00
Leo b02d782f1c solana/bridge: remove agent
Change-Id: I8fdf4e53172a422ee5d9d4dee13faf32ced1be08
2021-07-31 11:20:24 +02:00
Leo 723cf5fe95 node: add GetSignedVAA endpoint
Works:

$ curl 'http://localhost:7071/v1/signed_vaa/1/1268b2bf4a[...]/0'
{"vaaBytes":"AQAAAAABACbK50nrmgWPtTmRlYf/[...]"}

Bug: certusone/wormhole#282
Change-Id: I09eade00c4649c550f06a2efe350d6d9ff9da3ae
2021-07-31 03:03:37 +02:00
Leo 8da1eaa6b1 node: add REST proxy for publicRPC service
Bug: certusone/wormhole#282
Change-Id: I2aebd60b8839c59705ad1ab3425462ccaefc7e13
2021-07-31 03:03:37 +02:00
Leo 9c9c48ef3b Migrate proto generation to buf
Bug: certusone/wormhole#282
Change-Id: Ib20d8b9bcf19a26b12a586532281d83e95f0653e
2021-07-31 03:03:36 +02:00
Leo e64bc12577 tools: update all Go dependencies
Bug: certusone/wormhole#282
Change-Id: I1ed2335fc3d94bc27133169cce63d3e0442bd9c8
2021-07-31 03:03:36 +02:00
Leo 1f11cf8309 tools: add protoc-gen-grpc-gateway
Bug: certusone/wormhole#282
Change-Id: I666ef0e07f265ec8bae5114387251a4d1a68fc72
2021-07-31 03:03:36 +02:00
Leo 7e0bbdbe6e node/pkg/db: store signed VAAs in database
Bug: certusone/wormhole#282
Change-Id: Iecd4ff74a1e73655ac3240991a4dc36e572cdb15
2021-07-31 03:03:35 +02:00
Leo b2495ca43e node/pkg/solana: fix solanaConnectionErrors panic
Change-Id: I75889897e47902abe54cc45153934e73f1f3dcd4
2021-07-30 22:46:20 +02:00
Hendrik Hofstadt 8ab3b669d9 Address review comments
Change-Id: I4036e71f3df1dc419419930cfdffba302166e28d
2021-07-30 18:21:38 +00:00
valentin 24672a7b2f add BSC to truffle config
Change-Id: I0298ef39373dc4a7446345fe2a60de81930cd5eb
2021-07-30 17:54:03 +00:00
Leo 053cf2e66a Add account indexing guidelines for concurrent usage with v1
Change-Id: Icfca131f55515f030e3af75364a37f91c40ef56c
2021-07-30 14:15:57 +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
Leo d37375e9a3 node/pkg/solana: simplify client method signatures
Change-Id: Ic317c78d7415dc11baf39d696ebdd57336b219bc
2021-07-30 09:06:25 +00:00
Alwin Peng 2d9ae8e860 check & add vaa to archive on all submit_vaa calls
Change-Id: Ia0b1a5e9ee8f6467dff34d9cd92183cba49bccf5
2021-07-29 15:25:38 -04:00
Leopold Schabel d1e001c453 Add CPI example to DEVELOP.md
Change-Id: I8f281779228d0bba11bbe5504ba4e9a68e2f52f6
2021-07-29 16:50:50 +00:00
Leo 493b7ee855 node/pkg/solana: filter by requested consistency level
certusone/wormhole#248

Change-Id: Ib40b6016bda19e17c4700db6b39dbf340dfc0f4c
2021-07-29 15:55:57 +00:00
Hendrik Hofstadt dd5388a748 Add CPI proxy
Change-Id: Iba395084fe0cf5ebd4e1cd7bb3515c6c1f7e8756
2021-07-29 17:40:15 +02:00
Hendrik Hofstadt 2a6f7eaa0e Add solana bridge CLI
Change-Id: I79f7abdb7472c63b3a03f4e3c2ede70953a5037a
2021-07-29 17:37:26 +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
Hendrik Hofstadt 1135fdacd1 Deploy terra FCD and test token
Change-Id: I0027b450c701031929b4aaba4941738d82c4247d
2021-07-29 14:50:04 +00:00
Leo 5bfa3b0055 node/pkg/solana: run one Solana watcher per consistency level
certusone/wormhole#248

Change-Id: I98abc6b4e635b8b5679fcda5342c90b0e5c96077
2021-07-29 14:27:04 +00:00
Stan Drozd 8b5e82df1b scripts.nix: Use the kvm2 backend for whcluster/whremote
This commit works around pod name resolution issues under tilt with minikube.

Change-Id: I5fe6acf5f739633b5dcb57f814fd29084a359a8f
2021-07-29 14:24:25 +00:00
Leo b9633d6d65 node/pkg/solana: fork solana-go to add GetConfirmedTransactionWithOpts
certusone/wormhole#248

Change-Id: I093d619cb82b35b963447cf4a5dc18ef6be1a0f5
2021-07-29 14:14:09 +02:00