> For the complete documentation index, see [llms.txt](https://0xrisec.gitbook.io/hacks/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://0xrisec.gitbook.io/hacks/re-entrancy.md).

# Re-Entrancy

`Reentrancy` is a vulnerability in smart contracts that occurs when a contract calls an external contract and the external contract calls back into the original contract before the original contract has completed its execution. This can create a loop where the same function is executed repeatedly, potentially leading to unintended consequences such as transferring more funds than intended, locking up the contract, or other unexpected behavior.

### Types of Re-Entrancy Attacks <a href="#types-of-re-entrancy-attacks" id="types-of-re-entrancy-attacks"></a>

***

**1. Single-Function Reentrancy :** This type of attack occurs when a single function in a contract is called multiple times before the previous call completes which we have already discussed above.

**2.** Cross-Function Reentrancy

**3.** Cross-Contract Reentrancy

**4.** Cross-Chain Reentrancy

**5.** Read-Only Reentrancy
