Omniscia Evergon Labs Audit

CheckAndJumpToNonFundedFacet Manual Review Findings

CheckAndJumpToNonFundedFacet Manual Review Findings

CAJ-01M: Inexistent Imposition of Restriction

Description:

The CheckAndJumpToNonFundedFacet::checkAndJumpToNonFunded function does not properly enforce the DelegateCallee modifiers.

Example:

packages/contracts/contracts/subSkeletonFacets/subConnectors/purchaseToNonFundedConnectors/checkAndJumpToNonFunded/CheckAndJumpToNonFundedFacet.sol
32function checkAndJumpToNonFunded(uint256 campaignId) external {
33 CheckAndJumpToNonFundedFacetStorage.layout().checkAndJumpToNonFunded(campaignId);
34
35 emit CheckedAndJumpedToNonFunded(campaignId);
36}

Recommendation:

We advise the appropriate modifier to be applied based on its use-case given that it is compatible with both internal and external calls.

Alleviation (71cda4ccfdcfa25fb96a4565f1f8143b350dd246):

The DelegateCallee::onlyExternalDelegateCall is now properly enforced for the function denoting that it is meant to be available solely externally.