pragma solidity >=0.8.4;
import "./RNS.sol";
* The RNS registry contract.
contract RNSRegistry is RNS {
struct Record {
address owner;
address resolver;
uint64 ttl;
}
mapping(bytes32 => Record) records;
mapping(address => mapping(address => bool)) operators;
modifier authorised(bytes32 node) {
address owner = records[node].owner;
require(owner == msg.sender || operators[owner][msg.sender]);
_;
}
* Constructs a new RNS registry.
constructor() public {
records[0x0].owner = msg.sender;
}
* Sets the record for a node.