Skip to content

CCIP Read throws BUFFER_OVERRUN when error.data is less than 4 bytes (0x for example) #4982

Open
@jm42

Description

@jm42

Ethers Version

6.13.7

Search Terms

providers

Describe the Problem

I am referring to this line:

if (!this.disableCcipRead && isCallException(error) && error.data && attempt >= 0 && blockTag === "latest" && transaction.to != null && dataSlice(error.data, 0, 4) === "0x556f1830") {

Code Snippet

import { getDefaultProvider, EnsResolver } from 'ethers';

const mainnetProvider = getDefaultProvider();

const resolverAddress = '0xf142b308cf687d4358410a4cb885513b30a42025';

const ens = 'mnhsu.xyz';

const resolver = new EnsResolver(mainnetProvider, resolverAddress, ens);

const address = await resolver.getAddress();

console.log(address);

Contract ABI

Errors

RangeError: cannot slice beyond data bounds (buffer=0x, length=0, offset=4, code=BUFFER_OVERRUN, version=6.13.7)
    at makeError (/node_modules/ethers/src.ts/utils/errors.ts:691:21)
    at assert (/node_modules/ethers/src.ts/utils/errors.ts:715:25)
    at dataSlice (/node_modules/ethers/src.ts/utils/data.ts:137:15)
    at JsonRpcProvider.#call (/node_modules/ethers/src.ts/providers/abstract-provider.ts:989:159)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async JsonRpcProvider.#call (/node_modules/ethers/src.ts/providers/abstract-provider.ts:1029:37)
    at async Promise.all (index 1)
    at async resolveProperties (/node_modules/ethers/src.ts/utils/properties.ts:35:21)
    at async JsonRpcProvider.#checkNetwork (/node_modules/ethers/src.ts/providers/abstract-provider.ts:1043:27)
    at async JsonRpcProvider.call (/node_modules/ethers/src.ts/providers/abstract-provider.ts:1056:16) {
  code: 'BUFFER_OVERRUN',
  buffer: Uint8Array(0) [],
  length: 0,
  offset: 4,
  shortMessage: 'cannot slice beyond data bounds'

Environment

No response

Environment (Other)

No response

Metadata

Metadata

Assignees

Labels

investigateUnder investigation and may be a bug.v6Issues regarding v6

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions