Add IPC support (#6348)

This is useful for both security and performance reasons. IPC is faster
than TCP, and it is subject to OS access controls.
This commit is contained in:
Demi Obenour
2020-06-16 10:14:12 +00:00
committed by GitHub
parent e99ff8ee96
commit e2f5e4bd74
10 changed files with 136 additions and 1 deletions
+79 -1
View File
@@ -2383,6 +2383,20 @@ dependencies = [
"unicase",
]
[[package]]
name = "jsonrpc-ipc-server"
version = "14.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dedccd693325d833963b549e959137f30a7a0ea650cde92feda81dc0c1393cb5"
dependencies = [
"jsonrpc-core",
"jsonrpc-server-utils",
"log",
"parity-tokio-ipc",
"parking_lot 0.10.2",
"tokio-service",
]
[[package]]
name = "jsonrpc-pubsub"
version = "14.2.0"
@@ -3092,7 +3106,7 @@ dependencies = [
"kernel32-sys",
"libc",
"log",
"miow",
"miow 0.2.1",
"net2",
"slab",
"winapi 0.2.8",
@@ -3110,6 +3124,18 @@ dependencies = [
"slab",
]
[[package]]
name = "mio-named-pipes"
version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f5e374eff525ce1c5b7687c4cef63943e7686524a387933ad27ca7ec43779cb3"
dependencies = [
"log",
"mio",
"miow 0.3.5",
"winapi 0.3.8",
]
[[package]]
name = "mio-uds"
version = "0.6.7"
@@ -3133,6 +3159,16 @@ dependencies = [
"ws2_32-sys",
]
[[package]]
name = "miow"
version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "07b88fb9795d4d36d62a012dfbf49a8f5cf12751f36d31a9dbe66d528e58979e"
dependencies = [
"socket2",
"winapi 0.3.8",
]
[[package]]
name = "more-asserts"
version = "0.2.1"
@@ -4734,6 +4770,25 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f"
[[package]]
name = "parity-tokio-ipc"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e57fea504fea33f9fbb5f49f378359030e7e026a6ab849bb9e8f0787376f1bf"
dependencies = [
"bytes 0.4.12",
"futures 0.1.29",
"libc",
"log",
"mio-named-pipes",
"miow 0.3.5",
"rand 0.7.3",
"tokio 0.1.22",
"tokio-named-pipes",
"tokio-uds",
"winapi 0.3.8",
]
[[package]]
name = "parity-util-mem"
version = "0.6.1"
@@ -6580,6 +6635,7 @@ version = "2.0.0-rc3"
dependencies = [
"jsonrpc-core",
"jsonrpc-http-server",
"jsonrpc-ipc-server",
"jsonrpc-pubsub",
"jsonrpc-ws-server",
"log",
@@ -8655,6 +8711,19 @@ dependencies = [
"syn 1.0.17",
]
[[package]]
name = "tokio-named-pipes"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9d282d483052288b2308ba5ee795f5673b159c9bdf63c385a05609da782a5eae"
dependencies = [
"bytes 0.4.12",
"futures 0.1.29",
"mio",
"mio-named-pipes",
"tokio 0.1.22",
]
[[package]]
name = "tokio-reactor"
version = "0.1.12"
@@ -8686,6 +8755,15 @@ dependencies = [
"webpki",
]
[[package]]
name = "tokio-service"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24da22d077e0f15f55162bdbdc661228c1581892f52074fb242678d015b45162"
dependencies = [
"futures 0.1.29",
]
[[package]]
name = "tokio-sync"
version = "0.1.8"