Prohibit Java deserialisation in the Corda process (#566)

This commit is contained in:
Andrzej Cichocki
2017-04-21 16:26:35 +01:00
committed by GitHub
parent 4cb21257e6
commit 160d13b6f7
20 changed files with 215 additions and 101 deletions

View File

@ -3,6 +3,7 @@ package net.corda.webserver
import com.google.common.net.HostAndPort
import net.corda.core.getOrThrow
import net.corda.core.utilities.DUMMY_BANK_A
import net.corda.node.driver.WebserverHandle
import net.corda.node.driver.addressMustBeBound
import net.corda.node.driver.addressMustNotBeBound
import net.corda.node.driver.driver
@ -13,8 +14,8 @@ class DriverTests {
companion object {
val executorService = Executors.newScheduledThreadPool(2)
fun webserverMustBeUp(webserverAddr: HostAndPort) {
addressMustBeBound(executorService, webserverAddr)
fun webserverMustBeUp(webserverHandle: WebserverHandle) {
addressMustBeBound(executorService, webserverHandle.listenAddress, webserverHandle.process)
}
fun webserverMustBeDown(webserverAddr: HostAndPort) {
@ -26,9 +27,9 @@ class DriverTests {
fun `starting a node and independent web server works`() {
val addr = driver {
val node = startNode(DUMMY_BANK_A.name).getOrThrow()
val webserverAddr = startWebserver(node).getOrThrow()
webserverMustBeUp(webserverAddr)
webserverAddr
val webserverHandle = startWebserver(node).getOrThrow()
webserverMustBeUp(webserverHandle)
webserverHandle.listenAddress
}
webserverMustBeDown(addr)
}