Commit f2ec8790 by Makoto Inoue

WIP Target contract creation via factory pattern

parent 48badda9
......@@ -8,6 +8,10 @@ import '../PullPayment.sol';
* have sufficient ether for everyone to withdraw.
*/
contract Factory {
function deployContract() returns (address);
}
contract Target {
function checkInvariant() returns(bool);
}
......@@ -21,8 +25,8 @@ contract Bounty is PullPayment {
if (claimed) throw;
}
function createTarget(address targetAddress) returns(Target) {
target = Target(targetAddress);
function createTarget(address factoryAddress) returns(Target) {
target = Target(Factory(factoryAddress).deployContract());
researchers[target] = msg.sender;
return target;
}
......
......@@ -5,3 +5,9 @@ contract InsecureTargetMock {
return false;
}
}
contract Deployer {
function deployContract() returns (address) {
return new InsecureTargetMock();
}
}
......@@ -5,3 +5,9 @@ contract SecureTargetMock {
return true;
}
}
contract Deployer {
function deployContract() returns (address) {
return new SecureTargetMock();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment