* @dev This bounty will pay out to a researcher if they break invariant logic of the contract.
*/
...
...
@@ -15,7 +15,7 @@ contract Bounty is PullPayment, Destructible {
event TargetCreated(address createdAddress);
/*
/**
* @dev Function that allows the contract to recieve funds, if it hasn't been claimed.
*/
function() payable {
...
...
@@ -24,7 +24,7 @@ contract Bounty is PullPayment, Destructible {
}
}
/*
/**
* @dev Create and deploy the target contract(extension of Target contract), and sets the msg.sender as a researcher
* @return A target contract
*/
...
...
@@ -35,13 +35,13 @@ contract Bounty is PullPayment, Destructible {
return target;
}
/*
/**
* @dev Internal function to deploy the target contract.
* @return A target contract address
*/
function deployContract() internal returns(address);
/*
/**
* @dev Sends the contract funds to the researcher that proved the contract is broken.
* @param Target contract
*/
...
...
@@ -61,14 +61,13 @@ contract Bounty is PullPayment, Destructible {
}
/*
/**
* @title Target
*
* @dev Your main contract should inherit from this class and implement the checkInvariant method.
*/
contract Target {
/*
/**
* @dev Funtion tha should check everything your contract assumes to be true all the time. If this function returns false, it means your contract was broken in some way and is in an inconsistent state. This is what security researchers will try to acomplish when trying to get the bounty.
* @return A boolean that indicates if the contract is broken or not.
* @dev Base contract that enables methods to be protected by placing a linear limit (specifiable) on a particular resource per calendar day. Is multiowned to allow the limit to be altered
*/
...
...
@@ -10,7 +10,7 @@ contract DayLimit {
uint public spentToday;
uint public lastDay;
/*
/**
* @dev Constructor that sets the passed value as a dailyLimit
* @param _limit Uint to represent the daily limit.
*/
...
...
@@ -19,7 +19,7 @@ contract DayLimit {
lastDay = today();
}
/*
/**
* @dev sets the daily limit. doesn't alter the amount already spent today
* @param _newLimit Uint to represent the new limit.
*/
...
...
@@ -27,17 +27,17 @@ contract DayLimit {
dailyLimit = _newLimit;
}
/*
/**
* @dev Resets the amount already spent today.
*/
function _resetSpentToday() internal {
spentToday = 0;
}
/*
/**
* @dev Checks to see if there is enough resource to spend today. If true, the resource is expended.
* @param _value Uint representing the amout of resurce to spend.
* @return Boolean. True if the resource was spended and false otherwise.
* @return A boolean that is True if the resource was spended and false otherwise.
*/
function underLimit(uint _value) internal returns (bool) {
// reset the spend limit if we're on a different day to last time.