Function: claimOwnership(uint256 tokenId, bool isSynthetic, ProofOfContactsVoucher calldata proofOfContactsVoucher, bytes calldata signature)
This function claims domain ownership using ownership tokens and proof-of-contacts verification. It validates voucher signatures from registrars or Doma, verifies token ownership, collects fees, and initiates cross-chain ownership claim via _relayMessage
to Doma chain.
Inputs
tokenId
Control: Full.
Constraints: Token ownership verified via
_verifyTokenOwnership()
and registrar validation for registrar vouchers.Impact: Identifies the ownership token being used to claim domain ownership.
isSynthetic
Control: Not controlled.
Constraints: Must be false (synthetic tokens not implemented).
Impact: Distinguishes between regular and permissioned tokens.
proofOfContactsVoucher
Control: Full.
Constraints: Expiration date checked via
_verifyNotExpiredVoucher()
and nonce verified via_verifyAndUpdateNonce()
.Impact: Contains registrant handle, proof source, nonce, and expiration for contact verification.
signature
Control: Full.
Constraints: Verified via
_verifyRegistrarSignature()
or_verifyDomaSignature()
depending on proof source.Impact: Ensures voucher authenticity from authorized signers.
Branches and code coverage (including function calls)
Intended branches
Negative behavior