4
Cargo.lock
generated
4
Cargo.lock
generated
@ -4217,9 +4217,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana_rbpf"
|
name = "solana_rbpf"
|
||||||
version = "0.1.25"
|
version = "0.1.26"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "87d4395203039cac872c125dea2534e6b98ae85e28e3f800872a7571ffa87df8"
|
checksum = "1d6bee545321a2fed2f9a24066bf7bf08f9b814fd48865b7c629ee40f33f3207"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder",
|
"byteorder",
|
||||||
"combine",
|
"combine",
|
||||||
|
260
programs/bpf/Cargo.lock
generated
260
programs/bpf/Cargo.lock
generated
@ -77,9 +77,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "backtrace-sys"
|
name = "backtrace-sys"
|
||||||
version = "0.1.36"
|
version = "0.1.37"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "78848718ee1255a2485d1309ad9cdecfc2e7d0362dd11c6829364c6b35ae1bc7"
|
checksum = "18fbebbe1c9d1f383a9cc7e8ccdb471b91c8d024ee9c2ca5b5346121fe8b4399"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cc",
|
"cc",
|
||||||
"libc",
|
"libc",
|
||||||
@ -526,9 +526,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "failure"
|
name = "failure"
|
||||||
version = "0.1.7"
|
version = "0.1.8"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b8529c2421efa3066a5cbd8063d2244603824daccb6936b079010bb2aa89464b"
|
checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"backtrace",
|
"backtrace",
|
||||||
"failure_derive",
|
"failure_derive",
|
||||||
@ -536,13 +536,13 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "failure_derive"
|
name = "failure_derive"
|
||||||
version = "0.1.7"
|
version = "0.1.8"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "030a733c8287d6213886dd487564ff5c8f6aae10278b3588ed177f9d18f8d231"
|
checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
"synstructure",
|
"synstructure",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -620,9 +620,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7"
|
checksum = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-hack",
|
"proc-macro-hack",
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -711,9 +711,9 @@ checksum = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "h2"
|
name = "h2"
|
||||||
version = "0.2.4"
|
version = "0.2.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "377038bf3c89d18d6ca1431e7a5027194fbd724ca10592b9487ede5e8e144f42"
|
checksum = "79b7246d7e4b979c03fa093da39cfb3617a96bbeee6310af63991668d7e843ff"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.5.4",
|
"bytes 0.5.4",
|
||||||
"fnv",
|
"fnv",
|
||||||
@ -724,7 +724,7 @@ dependencies = [
|
|||||||
"indexmap",
|
"indexmap",
|
||||||
"log",
|
"log",
|
||||||
"slab",
|
"slab",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
"tokio-util",
|
"tokio-util",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -817,7 +817,7 @@ dependencies = [
|
|||||||
"net2",
|
"net2",
|
||||||
"pin-project",
|
"pin-project",
|
||||||
"time",
|
"time",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"want",
|
"want",
|
||||||
]
|
]
|
||||||
@ -835,7 +835,7 @@ dependencies = [
|
|||||||
"log",
|
"log",
|
||||||
"rustls",
|
"rustls",
|
||||||
"rustls-native-certs",
|
"rustls-native-certs",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
"tokio-rustls",
|
"tokio-rustls",
|
||||||
"webpki",
|
"webpki",
|
||||||
]
|
]
|
||||||
@ -936,9 +936,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "js-sys"
|
name = "js-sys"
|
||||||
version = "0.3.37"
|
version = "0.3.39"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "6a27d435371a2fa5b6d2b028a74bbdb1234f308da363226a2854ca3ff8ba7055"
|
checksum = "fa5a448de267e7358beaf4a5d849518fe9a0c13fce7afd44b06e68550e5562a7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
]
|
]
|
||||||
@ -1051,9 +1051,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "mio"
|
name = "mio"
|
||||||
version = "0.6.21"
|
version = "0.6.22"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
|
checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"fuchsia-zircon",
|
"fuchsia-zircon",
|
||||||
@ -1070,9 +1070,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "mio-uds"
|
name = "mio-uds"
|
||||||
version = "0.6.7"
|
version = "0.6.8"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
|
checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"iovec",
|
"iovec",
|
||||||
"libc",
|
"libc",
|
||||||
@ -1093,9 +1093,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "net2"
|
name = "net2"
|
||||||
version = "0.2.33"
|
version = "0.2.34"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
|
checksum = "2ba7c918ac76704fb42afcbbb43891e72731f3dcca3bef2a19786297baf14af7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"libc",
|
"libc",
|
||||||
@ -1119,9 +1119,9 @@ version = "0.3.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "0c8b15b261814f992e33760b1fca9fe8b693d8a65299f20c9901688636cfb746"
|
checksum = "0c8b15b261814f992e33760b1fca9fe8b693d8a65299f20c9901688636cfb746"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1202,9 +1202,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "paste"
|
name = "paste"
|
||||||
version = "0.1.11"
|
version = "0.1.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "a3c897744f63f34f7ae3a024d9162bb5001f4ad661dd24bea0dc9f075d2de1c6"
|
checksum = "0a229b1c58c692edcaa5b9b0948084f130f55d2dcc15b02fcc5340b2b4521476"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"paste-impl",
|
"paste-impl",
|
||||||
"proc-macro-hack",
|
"proc-macro-hack",
|
||||||
@ -1212,14 +1212,14 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "paste-impl"
|
name = "paste-impl"
|
||||||
version = "0.1.11"
|
version = "0.1.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "66fd6f92e3594f2dd7b3fc23e42d82e292f7bcda6d8e5dcd167072327234ab89"
|
checksum = "2e0bf239e447e67ff6d16a8bb5e4d4bd2343acf5066061c0e8e06ac5ba8ca68c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-hack",
|
"proc-macro-hack",
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1240,29 +1240,29 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pin-project"
|
name = "pin-project"
|
||||||
version = "0.4.9"
|
version = "0.4.13"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "6f6a7f5eee6292c559c793430c55c00aea9d3b3d1905e855806ca4d7253426a2"
|
checksum = "82c3bfbfb5bb42f99498c7234bbd768c220eb0cea6818259d0d18a1aa3d2595d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"pin-project-internal",
|
"pin-project-internal",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pin-project-internal"
|
name = "pin-project-internal"
|
||||||
version = "0.4.9"
|
version = "0.4.13"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "8988430ce790d8682672117bc06dda364c0be32d3abd738234f19f3240bad99a"
|
checksum = "ccbf6449dcfb18562c015526b085b8df1aa3cdab180af8ec2ebd300a3bd28f63"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pin-project-lite"
|
name = "pin-project-lite"
|
||||||
version = "0.1.4"
|
version = "0.1.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "237844750cfbb86f67afe27eee600dfbbcb6188d734139b534cbfbf4f96792ae"
|
checksum = "f7505eeebd78492e0f6108f7171c4948dbb120ee8119d9d77d0afa5469bef67f"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pin-utils"
|
name = "pin-utils"
|
||||||
@ -1311,9 +1311,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro2"
|
name = "proc-macro2"
|
||||||
version = "1.0.10"
|
version = "1.0.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3"
|
checksum = "8872cf6f48eee44265156c111456a700ab3483686b3f96df4cf5481c89157319"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"unicode-xid 0.2.0",
|
"unicode-xid 0.2.0",
|
||||||
]
|
]
|
||||||
@ -1341,11 +1341,11 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quote"
|
name = "quote"
|
||||||
version = "1.0.3"
|
version = "1.0.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2bdc6c187c65bca4260c9011c9e3132efe4909da44726bad24cf7572ae338d7f"
|
checksum = "4c1f4b0efa5fc5e8ceb705136bfee52cfdb6a4e3509f770b478cd6ed434232a7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1473,7 +1473,7 @@ dependencies = [
|
|||||||
"serde_json",
|
"serde_json",
|
||||||
"serde_urlencoded",
|
"serde_urlencoded",
|
||||||
"time",
|
"time",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
"tokio-rustls",
|
"tokio-rustls",
|
||||||
"url",
|
"url",
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
@ -1581,9 +1581,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "security-framework"
|
name = "security-framework"
|
||||||
version = "0.4.3"
|
version = "0.4.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3f331b9025654145cd425b9ded0caf8f5ae0df80d418b326e2dc1c3dc5eb0620"
|
checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags",
|
"bitflags",
|
||||||
"core-foundation",
|
"core-foundation",
|
||||||
@ -1628,9 +1628,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde_bytes"
|
name = "serde_bytes"
|
||||||
version = "0.11.3"
|
version = "0.11.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "325a073952621257820e7a3469f55ba4726d8b28657e7e36653d1c36dc2c84ae"
|
checksum = "3bf487fbf5c6239d7ea2ff8b10cb6b811cd4b5080d1c2aeed1dec18753c06e10"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"serde",
|
"serde",
|
||||||
]
|
]
|
||||||
@ -1641,9 +1641,9 @@ version = "1.0.106"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c"
|
checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1716,7 +1716,7 @@ checksum = "c7cb5678e1615754284ec264d9bb5b4c27d2018577fd90ac0ceb578591ed5ee4"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-loader-program"
|
name = "solana-bpf-loader-program"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"byteorder 1.3.4",
|
"byteorder 1.3.4",
|
||||||
@ -1732,7 +1732,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-programs"
|
name = "solana-bpf-programs"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"byteorder 1.3.4",
|
"byteorder 1.3.4",
|
||||||
@ -1747,7 +1747,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-128bit"
|
name = "solana-bpf-rust-128bit"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-bpf-rust-128bit-dep",
|
"solana-bpf-rust-128bit-dep",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
@ -1756,7 +1756,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-128bit-dep"
|
name = "solana-bpf-rust-128bit-dep"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1764,7 +1764,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-alloc"
|
name = "solana-bpf-rust-alloc"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1772,7 +1772,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-dep-crate"
|
name = "solana-bpf-rust-dep-crate"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder 1.3.4",
|
"byteorder 1.3.4",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
@ -1781,7 +1781,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-dup-accounts"
|
name = "solana-bpf-rust-dup-accounts"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1789,7 +1789,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-error-handling"
|
name = "solana-bpf-rust-error-handling"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"num-derive 0.2.5",
|
"num-derive 0.2.5",
|
||||||
"num-traits 0.2.11",
|
"num-traits 0.2.11",
|
||||||
@ -1800,7 +1800,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-external-spend"
|
name = "solana-bpf-rust-external-spend"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1808,7 +1808,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-iter"
|
name = "solana-bpf-rust-iter"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1816,7 +1816,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-many-args"
|
name = "solana-bpf-rust-many-args"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-bpf-rust-many-args-dep",
|
"solana-bpf-rust-many-args-dep",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
@ -1825,7 +1825,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-many-args-dep"
|
name = "solana-bpf-rust-many-args-dep"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1833,7 +1833,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-noop"
|
name = "solana-bpf-rust-noop"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1841,7 +1841,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-panic"
|
name = "solana-bpf-rust-panic"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1849,7 +1849,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-param-passing"
|
name = "solana-bpf-rust-param-passing"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-bpf-rust-param-passing-dep",
|
"solana-bpf-rust-param-passing-dep",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
@ -1858,7 +1858,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-param-passing-dep"
|
name = "solana-bpf-rust-param-passing-dep"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1866,7 +1866,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-bpf-rust-sysval"
|
name = "solana-bpf-rust-sysval"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-sdk-bpf-test",
|
"solana-sdk-bpf-test",
|
||||||
@ -1874,7 +1874,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-config-program"
|
name = "solana-config-program"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"chrono",
|
"chrono",
|
||||||
@ -1886,7 +1886,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-crate-features"
|
name = "solana-crate-features"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"backtrace",
|
"backtrace",
|
||||||
"bytes 0.4.12",
|
"bytes 0.4.12",
|
||||||
@ -1902,14 +1902,14 @@ dependencies = [
|
|||||||
"reqwest",
|
"reqwest",
|
||||||
"serde",
|
"serde",
|
||||||
"syn 0.15.44",
|
"syn 0.15.44",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
"tokio 0.1.22",
|
"tokio 0.1.22",
|
||||||
"winapi 0.3.8",
|
"winapi 0.3.8",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-logger"
|
name = "solana-logger"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"env_logger 0.7.1",
|
"env_logger 0.7.1",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
@ -1918,7 +1918,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-measure"
|
name = "solana-measure"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"jemalloc-ctl",
|
"jemalloc-ctl",
|
||||||
"jemallocator",
|
"jemallocator",
|
||||||
@ -1929,7 +1929,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-metrics"
|
name = "solana-metrics"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"env_logger 0.7.1",
|
"env_logger 0.7.1",
|
||||||
"gethostname",
|
"gethostname",
|
||||||
@ -1941,7 +1941,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-rayon-threadlimit"
|
name = "solana-rayon-threadlimit"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"num_cpus",
|
"num_cpus",
|
||||||
@ -1949,7 +1949,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-runtime"
|
name = "solana-runtime"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"bv",
|
"bv",
|
||||||
@ -1985,7 +1985,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-sdk"
|
name = "solana-sdk"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assert_matches",
|
"assert_matches",
|
||||||
"bincode",
|
"bincode",
|
||||||
@ -2018,21 +2018,21 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-sdk-bpf-test"
|
name = "solana-sdk-bpf-test"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-sdk-macro"
|
name = "solana-sdk-macro"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bs58",
|
"bs58",
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-stake-program"
|
name = "solana-stake-program"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"log",
|
"log",
|
||||||
@ -2049,7 +2049,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-storage-program"
|
name = "solana-storage-program"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"log",
|
"log",
|
||||||
@ -2064,7 +2064,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-vote-program"
|
name = "solana-vote-program"
|
||||||
version = "1.1.8"
|
version = "1.1.11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bincode",
|
"bincode",
|
||||||
"log",
|
"log",
|
||||||
@ -2079,9 +2079,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana_rbpf"
|
name = "solana_rbpf"
|
||||||
version = "0.1.25"
|
version = "0.1.26"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "87d4395203039cac872c125dea2534e6b98ae85e28e3f800872a7571ffa87df8"
|
checksum = "1d6bee545321a2fed2f9a24066bf7bf08f9b814fd48865b7c629ee40f33f3207"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder 1.3.4",
|
"byteorder 1.3.4",
|
||||||
"combine",
|
"combine",
|
||||||
@ -2142,12 +2142,12 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "syn"
|
name = "syn"
|
||||||
version = "1.0.18"
|
version = "1.0.19"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "410a7488c0a728c7ceb4ad59b9567eb4053d02e8cc7f5c0e0eeeb39518369213"
|
checksum = "e8e5aa70697bb26ee62214ae3288465ecec0000f05182f039b477001f08f5ae7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"unicode-xid 0.2.0",
|
"unicode-xid 0.2.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -2166,9 +2166,9 @@ version = "0.12.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
|
checksum = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
"unicode-xid 0.2.0",
|
"unicode-xid 0.2.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -2219,9 +2219,9 @@ version = "1.0.16"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3f34e0c1caaa462fd840ec6b768946ea1e7842620d94fe29d5b847138f521269"
|
checksum = "3f34e0c1caaa462fd840ec6b768946ea1e7842620d94fe29d5b847138f521269"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -2269,9 +2269,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tokio"
|
name = "tokio"
|
||||||
version = "0.2.19"
|
version = "0.2.20"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7d9c43f1bb96970e153bcbae39a65e249ccb942bd9d36dbdf086024920417c9c"
|
checksum = "05c1d570eb1a36f0345a5ce9c6c6e665b70b73d11236912c0b477616aeec47b1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.5.4",
|
"bytes 0.5.4",
|
||||||
"fnv",
|
"fnv",
|
||||||
@ -2365,7 +2365,7 @@ checksum = "4adb8b3e5f86b707f1b54e7c15b6de52617a823608ccda98a15d3a24222f265a"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"futures-core",
|
"futures-core",
|
||||||
"rustls",
|
"rustls",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
"webpki",
|
"webpki",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -2466,7 +2466,7 @@ dependencies = [
|
|||||||
"futures-sink",
|
"futures-sink",
|
||||||
"log",
|
"log",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"tokio 0.2.19",
|
"tokio 0.2.20",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -2557,9 +2557,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "vec_map"
|
name = "vec_map"
|
||||||
version = "0.8.1"
|
version = "0.8.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
|
checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "version_check"
|
name = "version_check"
|
||||||
@ -2596,9 +2596,9 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen"
|
name = "wasm-bindgen"
|
||||||
version = "0.2.60"
|
version = "0.2.62"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2cc57ce05287f8376e998cbddfb4c8cb43b84a7ec55cf4551d7c00eef317a47f"
|
checksum = "e3c7d40d09cdbf0f4895ae58cf57d92e1e57a9dd8ed2e8390514b54a47cc5551"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"serde",
|
"serde",
|
||||||
@ -2608,24 +2608,24 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen-backend"
|
name = "wasm-bindgen-backend"
|
||||||
version = "0.2.60"
|
version = "0.2.62"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "d967d37bf6c16cca2973ca3af071d0a2523392e4a594548155d89a678f4237cd"
|
checksum = "c3972e137ebf830900db522d6c8fd74d1900dcfc733462e9a12e942b00b4ac94"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bumpalo",
|
"bumpalo",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"log",
|
"log",
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen-futures"
|
name = "wasm-bindgen-futures"
|
||||||
version = "0.4.10"
|
version = "0.4.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7add542ea1ac7fdaa9dc25e031a6af33b7d63376292bd24140c637d00d1c312a"
|
checksum = "8a369c5e1dfb7569e14d62af4da642a3cbc2f9a3652fe586e26ac22222aa4b04"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"js-sys",
|
"js-sys",
|
||||||
@ -2635,38 +2635,38 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen-macro"
|
name = "wasm-bindgen-macro"
|
||||||
version = "0.2.60"
|
version = "0.2.62"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "8bd151b63e1ea881bb742cd20e1d6127cef28399558f3b5d415289bc41eee3a4"
|
checksum = "2cd85aa2c579e8892442954685f0d801f9129de24fa2136b2c6a539c76b65776"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"wasm-bindgen-macro-support",
|
"wasm-bindgen-macro-support",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen-macro-support"
|
name = "wasm-bindgen-macro-support"
|
||||||
version = "0.2.60"
|
version = "0.2.62"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "d68a5b36eef1be7868f668632863292e37739656a80fc4b9acec7b0bd35a4931"
|
checksum = "8eb197bd3a47553334907ffd2f16507b4f4f01bbec3ac921a7719e0decdfe72a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.10",
|
"proc-macro2 1.0.12",
|
||||||
"quote 1.0.3",
|
"quote 1.0.4",
|
||||||
"syn 1.0.18",
|
"syn 1.0.19",
|
||||||
"wasm-bindgen-backend",
|
"wasm-bindgen-backend",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasm-bindgen-shared"
|
name = "wasm-bindgen-shared"
|
||||||
version = "0.2.60"
|
version = "0.2.62"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "daf76fe7d25ac79748a37538b7daeed1c7a6867c92d3245c12c6222e4a20d639"
|
checksum = "a91c2916119c17a8e316507afaaa2dd94b47646048014bbdf6bef098c1bb58ad"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "web-sys"
|
name = "web-sys"
|
||||||
version = "0.3.37"
|
version = "0.3.39"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2d6f51648d8c56c366144378a33290049eafdd784071077f6fe37dae64c1c4cb"
|
checksum = "8bc359e5dd3b46cb9687a051d50a2fdd228e4ba7cf6fcf861a5365c3d671a642"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"js-sys",
|
"js-sys",
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
|
@ -26,7 +26,7 @@ solana-bpf-loader-program = { path = "../bpf_loader", version = "1.1.11" }
|
|||||||
solana-logger = { path = "../../logger", version = "1.1.11" }
|
solana-logger = { path = "../../logger", version = "1.1.11" }
|
||||||
solana-runtime = { path = "../../runtime", version = "1.1.11" }
|
solana-runtime = { path = "../../runtime", version = "1.1.11" }
|
||||||
solana-sdk = { path = "../../sdk", version = "1.1.11" }
|
solana-sdk = { path = "../../sdk", version = "1.1.11" }
|
||||||
solana_rbpf = "=0.1.25"
|
solana_rbpf = "=0.1.26"
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
name = "bpf_loader"
|
name = "bpf_loader"
|
||||||
|
@ -17,7 +17,7 @@ num-derive = { version = "0.3" }
|
|||||||
num-traits = { version = "0.2" }
|
num-traits = { version = "0.2" }
|
||||||
solana-logger = { path = "../../logger", version = "1.1.11" }
|
solana-logger = { path = "../../logger", version = "1.1.11" }
|
||||||
solana-sdk = { path = "../../sdk", version = "1.1.11" }
|
solana-sdk = { path = "../../sdk", version = "1.1.11" }
|
||||||
solana_rbpf = "=0.1.25"
|
solana_rbpf = "=0.1.26"
|
||||||
thiserror = "1.0"
|
thiserror = "1.0"
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
pub mod alloc;
|
pub mod alloc;
|
||||||
pub mod allocator_bump;
|
pub mod allocator_bump;
|
||||||
pub mod bpf_verifier;
|
pub mod bpf_verifier;
|
||||||
pub mod helpers;
|
pub mod syscalls;
|
||||||
|
|
||||||
use crate::{bpf_verifier::VerifierError, helpers::HelperError};
|
use crate::{bpf_verifier::VerifierError, syscalls::SyscallError};
|
||||||
use byteorder::{ByteOrder, LittleEndian, WriteBytesExt};
|
use byteorder::{ByteOrder, LittleEndian, WriteBytesExt};
|
||||||
use log::*;
|
use log::*;
|
||||||
use num_derive::{FromPrimitive, ToPrimitive};
|
use num_derive::{FromPrimitive, ToPrimitive};
|
||||||
@ -50,7 +50,7 @@ pub enum BPFError {
|
|||||||
#[error("{0}")]
|
#[error("{0}")]
|
||||||
VerifierError(#[from] VerifierError),
|
VerifierError(#[from] VerifierError),
|
||||||
#[error("{0}")]
|
#[error("{0}")]
|
||||||
HelperError(#[from] HelperError),
|
SyscallError(#[from] SyscallError),
|
||||||
}
|
}
|
||||||
impl UserDefinedError for BPFError {}
|
impl UserDefinedError for BPFError {}
|
||||||
|
|
||||||
@ -60,7 +60,7 @@ pub fn create_vm(prog: &[u8]) -> Result<(EbpfVm<BPFError>, MemoryRegion), EbpfEr
|
|||||||
vm.set_max_instruction_count(100_000)?;
|
vm.set_max_instruction_count(100_000)?;
|
||||||
vm.set_elf(&prog)?;
|
vm.set_elf(&prog)?;
|
||||||
|
|
||||||
let heap_region = helpers::register_helpers(&mut vm)?;
|
let heap_region = syscalls::register_syscalls(&mut vm)?;
|
||||||
|
|
||||||
Ok((vm, heap_region))
|
Ok((vm, heap_region))
|
||||||
}
|
}
|
||||||
@ -197,8 +197,8 @@ pub fn process_instruction(
|
|||||||
Err(error) => {
|
Err(error) => {
|
||||||
warn!("BPF program failed: {}", error);
|
warn!("BPF program failed: {}", error);
|
||||||
return match error {
|
return match error {
|
||||||
EbpfError::UserError(BPFError::HelperError(
|
EbpfError::UserError(BPFError::SyscallError(
|
||||||
HelperError::InstructionError(error),
|
SyscallError::InstructionError(error),
|
||||||
)) => Err(error),
|
)) => Err(error),
|
||||||
_ => Err(BPFLoaderError::VirtualMachineFailedToRunProgram.into()),
|
_ => Err(BPFLoaderError::VirtualMachineFailedToRunProgram.into()),
|
||||||
};
|
};
|
||||||
|
@ -2,7 +2,7 @@ use crate::{alloc, BPFError};
|
|||||||
use alloc::Alloc;
|
use alloc::Alloc;
|
||||||
use log::*;
|
use log::*;
|
||||||
use solana_rbpf::{
|
use solana_rbpf::{
|
||||||
ebpf::{EbpfError, HelperObject, ELF_INSN_DUMP_OFFSET, MM_HEAP_START},
|
ebpf::{EbpfError, SyscallObject, ELF_INSN_DUMP_OFFSET, MM_HEAP_START},
|
||||||
memory_region::{translate_addr, MemoryRegion},
|
memory_region::{translate_addr, MemoryRegion},
|
||||||
EbpfVm,
|
EbpfVm,
|
||||||
};
|
};
|
||||||
@ -17,7 +17,7 @@ use thiserror::Error as ThisError;
|
|||||||
|
|
||||||
/// Error definitions
|
/// Error definitions
|
||||||
#[derive(Debug, ThisError)]
|
#[derive(Debug, ThisError)]
|
||||||
pub enum HelperError {
|
pub enum SyscallError {
|
||||||
#[error("{0}: {1:?}")]
|
#[error("{0}: {1:?}")]
|
||||||
InvalidString(Utf8Error, Vec<u8>),
|
InvalidString(Utf8Error, Vec<u8>),
|
||||||
#[error("BPF program called abort()!")]
|
#[error("BPF program called abort()!")]
|
||||||
@ -27,8 +27,8 @@ pub enum HelperError {
|
|||||||
#[error("{0}")]
|
#[error("{0}")]
|
||||||
InstructionError(InstructionError),
|
InstructionError(InstructionError),
|
||||||
}
|
}
|
||||||
impl From<HelperError> for EbpfError<BPFError> {
|
impl From<SyscallError> for EbpfError<BPFError> {
|
||||||
fn from(error: HelperError) -> Self {
|
fn from(error: SyscallError) -> Self {
|
||||||
EbpfError::UserError(error.into())
|
EbpfError::UserError(error.into())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -45,21 +45,21 @@ use crate::allocator_bump::BPFAllocator;
|
|||||||
/// are expected to enforce this
|
/// are expected to enforce this
|
||||||
const DEFAULT_HEAP_SIZE: usize = 32 * 1024;
|
const DEFAULT_HEAP_SIZE: usize = 32 * 1024;
|
||||||
|
|
||||||
pub fn register_helpers<'a>(
|
pub fn register_syscalls<'a>(
|
||||||
vm: &mut EbpfVm<'a, BPFError>,
|
vm: &mut EbpfVm<'a, BPFError>,
|
||||||
) -> Result<MemoryRegion, EbpfError<BPFError>> {
|
) -> Result<MemoryRegion, EbpfError<BPFError>> {
|
||||||
// Helper function common across languages
|
// Helper function common across languages
|
||||||
vm.register_helper_ex("abort", helper_abort)?;
|
vm.register_syscall_ex("abort", syscall_abort)?;
|
||||||
vm.register_helper_ex("sol_panic_", helper_sol_panic)?;
|
vm.register_syscall_ex("sol_panic_", syscall_sol_panic)?;
|
||||||
vm.register_helper_ex("sol_log_", helper_sol_log)?;
|
vm.register_syscall_ex("sol_log_", syscall_sol_log)?;
|
||||||
vm.register_helper_ex("sol_log_64_", helper_sol_log_u64)?;
|
vm.register_syscall_ex("sol_log_64_", syscall_sol_log_u64)?;
|
||||||
|
|
||||||
// Memory allocator
|
// Memory allocator
|
||||||
let heap = vec![0_u8; DEFAULT_HEAP_SIZE];
|
let heap = vec![0_u8; DEFAULT_HEAP_SIZE];
|
||||||
let heap_region = MemoryRegion::new_from_slice(&heap, MM_HEAP_START);
|
let heap_region = MemoryRegion::new_from_slice(&heap, MM_HEAP_START);
|
||||||
vm.register_helper_with_context_ex(
|
vm.register_syscall_with_context_ex(
|
||||||
"sol_alloc_free_",
|
"sol_alloc_free_",
|
||||||
Box::new(HelperSolAllocFree {
|
Box::new(SyscallSolAllocFree {
|
||||||
allocator: BPFAllocator::new(heap, MM_HEAP_START),
|
allocator: BPFAllocator::new(heap, MM_HEAP_START),
|
||||||
}),
|
}),
|
||||||
)?;
|
)?;
|
||||||
@ -136,15 +136,14 @@ fn translate_string_and_do(
|
|||||||
};
|
};
|
||||||
match from_utf8(&buf[..i]) {
|
match from_utf8(&buf[..i]) {
|
||||||
Ok(message) => work(message),
|
Ok(message) => work(message),
|
||||||
Err(err) => Err(HelperError::InvalidString(err, buf[..i].to_vec()).into()),
|
Err(err) => Err(SyscallError::InvalidString(err, buf[..i].to_vec()).into()),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Abort helper functions, called when the BPF program calls `abort()`
|
/// Abort syscall functions, called when the BPF program calls `abort()`
|
||||||
/// LLVM will insert calls to `abort()` if it detects an untenable situation,
|
/// The verify function returns an error which will cause the BPF program
|
||||||
/// `abort()` is not intended to be called explicitly by the program.
|
/// to be halted immediately
|
||||||
/// Causes the BPF program to be halted immediately
|
pub fn syscall_abort(
|
||||||
pub fn helper_abort(
|
|
||||||
_arg1: u64,
|
_arg1: u64,
|
||||||
_arg2: u64,
|
_arg2: u64,
|
||||||
_arg3: u64,
|
_arg3: u64,
|
||||||
@ -153,12 +152,13 @@ pub fn helper_abort(
|
|||||||
_ro_regions: &[MemoryRegion],
|
_ro_regions: &[MemoryRegion],
|
||||||
_rw_regions: &[MemoryRegion],
|
_rw_regions: &[MemoryRegion],
|
||||||
) -> Result<u64, EbpfError<BPFError>> {
|
) -> Result<u64, EbpfError<BPFError>> {
|
||||||
Err(HelperError::Abort.into())
|
Err(SyscallError::Abort.into())
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Panic helper function, called when the BPF program calls 'sol_panic_()`
|
/// Panic syscall functions, called when the BPF program calls 'sol_panic_()`
|
||||||
/// Causes the BPF program to be halted immediately
|
/// The verify function returns an error which will cause the BPF program
|
||||||
pub fn helper_sol_panic(
|
/// to be halted immediately
|
||||||
|
pub fn syscall_sol_panic(
|
||||||
file: u64,
|
file: u64,
|
||||||
len: u64,
|
len: u64,
|
||||||
line: u64,
|
line: u64,
|
||||||
@ -168,12 +168,12 @@ pub fn helper_sol_panic(
|
|||||||
_rw_regions: &[MemoryRegion],
|
_rw_regions: &[MemoryRegion],
|
||||||
) -> Result<u64, EbpfError<BPFError>> {
|
) -> Result<u64, EbpfError<BPFError>> {
|
||||||
translate_string_and_do(file, len, ro_regions, &|string: &str| {
|
translate_string_and_do(file, len, ro_regions, &|string: &str| {
|
||||||
Err(HelperError::Panic(string.to_string(), line, column).into())
|
Err(SyscallError::Panic(string.to_string(), line, column).into())
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Log a user's info message
|
/// Log a user's info message
|
||||||
pub fn helper_sol_log(
|
pub fn syscall_sol_log(
|
||||||
addr: u64,
|
addr: u64,
|
||||||
len: u64,
|
len: u64,
|
||||||
_arg3: u64,
|
_arg3: u64,
|
||||||
@ -191,8 +191,8 @@ pub fn helper_sol_log(
|
|||||||
Ok(0)
|
Ok(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Log 5 64-bit values
|
/// Log 5 u64 values
|
||||||
pub fn helper_sol_log_u64(
|
pub fn syscall_sol_log_u64(
|
||||||
arg1: u64,
|
arg1: u64,
|
||||||
arg2: u64,
|
arg2: u64,
|
||||||
arg3: u64,
|
arg3: u64,
|
||||||
@ -210,16 +210,16 @@ pub fn helper_sol_log_u64(
|
|||||||
Ok(0)
|
Ok(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Dynamic memory allocation helper called when the BPF program calls
|
/// Dynamic memory allocation syscall called when the BPF program calls
|
||||||
/// `sol_alloc_free_()`. The allocator is expected to allocate/free
|
/// `sol_alloc_free_()`. The allocator is expected to allocate/free
|
||||||
/// from/to a given chunk of memory and enforce size restrictions. The
|
/// from/to a given chunk of memory and enforce size restrictions. The
|
||||||
/// memory chunk is given to the allocator during allocator creation and
|
/// memory chunk is given to the allocator during allocator creation and
|
||||||
/// information about that memory (start address and size) is passed
|
/// information about that memory (start address and size) is passed
|
||||||
/// to the VM to use for enforcement.
|
/// to the VM to use for enforcement.
|
||||||
pub struct HelperSolAllocFree {
|
pub struct SyscallSolAllocFree {
|
||||||
allocator: BPFAllocator,
|
allocator: BPFAllocator,
|
||||||
}
|
}
|
||||||
impl HelperObject<BPFError> for HelperSolAllocFree {
|
impl SyscallObject<BPFError> for SyscallSolAllocFree {
|
||||||
fn call(
|
fn call(
|
||||||
&mut self,
|
&mut self,
|
||||||
size: u64,
|
size: u64,
|
@ -126,14 +126,13 @@ static_assert(sizeof(uint64_t) == 8);
|
|||||||
#define SOL_FN_PREFIX __attribute__((always_inline)) static
|
#define SOL_FN_PREFIX __attribute__((always_inline)) static
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper function that prints a string to stdout
|
* Prints a string to stdout
|
||||||
*/
|
*/
|
||||||
void sol_log_(const char *, uint64_t);
|
void sol_log_(const char *, uint64_t);
|
||||||
#define sol_log(message) sol_log_(message, sol_strlen(message))
|
#define sol_log(message) sol_log_(message, sol_strlen(message))
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper function that prints a 64 bit values represented in hexadecimal
|
* Prints a 64 bit values represented in hexadecimal to stdout
|
||||||
* to stdout
|
|
||||||
*/
|
*/
|
||||||
void sol_log_64_(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t);
|
void sol_log_64_(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t);
|
||||||
#define sol_log_64 sol_log_64_
|
#define sol_log_64 sol_log_64_
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
//! @brief Solana Rust-based BPF program utility functions and types
|
//! @brief Stubs for syscalls when building tests for x86
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
/// # Safety
|
/// # Safety
|
||||||
|
Reference in New Issue
Block a user