Upload files to "ratelim"
This commit is contained in:
parent
e8e4399860
commit
69ff29ab18
1 changed files with 20 additions and 0 deletions
20
ratelim/ratelim.txt
Normal file
20
ratelim/ratelim.txt
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
pragma solidity ^0.8.0;
|
||||||
|
|
||||||
|
contract RateLimited {
|
||||||
|
mapping(address => uint256) public lastAccessTime;
|
||||||
|
uint256 public rateLimit = 30; // Rate limit set to 30 seconds
|
||||||
|
|
||||||
|
modifier rateLimiting() {
|
||||||
|
require(
|
||||||
|
lastAccessTime[msg.sender] + rateLimit < block.timestamp,
|
||||||
|
"Shenanigans"
|
||||||
|
);
|
||||||
|
_;
|
||||||
|
lastAccessTime[msg.sender] = block.timestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
function rateLimitedFunction() external rateLimiting {
|
||||||
|
// Function logic here
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue