> ## Documentation Index
> Fetch the complete documentation index at: https://base-a060aa97-docs-add-b20-spec.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# IB20.permit

> Generated B20 reference for permit(address,address,uint256,uint256,uint8,bytes32,bytes32).

[Related concept](/base-chain/specs/upgrades/beryl/b20)

## Signature

```solidity theme={null}
function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external;
```

| Field               | Value                                                           |
| ------------------- | --------------------------------------------------------------- |
| Selector            | `0xd505accf`                                                    |
| Canonical signature | `permit(address,address,uint256,uint256,uint8,bytes32,bytes32)` |

## Description

EIP-2612 permit. Recovers `owner` via ECDSA from `(v, r, s)`. EOA signatures only;
ERC-1271 contract signatures are NOT supported. Emits `Approval`.
Dev: Reverts with `ExpiredSignature` when `block.timestamp &gt; deadline`.
Dev: Reverts with `InvalidSigner` when ECDSA recovery does not yield `owner`.
Dev: Reverts with `InvalidSpender` when `spender == address(0)`.
Param: owner    Token holder granting the allowance.
Param: spender  Account being granted the allowance.
Param: value    Allowance amount.
Param: deadline Unix timestamp after which the signature is invalid.
Param: v        ECDSA recovery byte.
Param: r        ECDSA signature r component.
Param: s        ECDSA signature s component.

## Access control

Read-only or ERC-20-standard access rules unless the NatSpec states otherwise.

## Policy interaction

No direct policy interaction.

## Example

```solidity theme={null}
IB20(target).permit(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
```

## Related

* [IB20 reference](/base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20)
* [Constants & addresses](/base-chain/specs/upgrades/beryl/b20/specification/reference/constants-and-addresses)
