## Known issues

Known issues in Mbed TLS are [tracked on GitHub](https://github.com/Mbed-TLS/mbedtls/issues).

## Reporting a bug

If you think you've found a bug in Mbed TLS, please follow these steps:

1. Make sure you're using the latest version of a
   [maintained branch](BRANCHES.md): `main`, `development`,
   or a long-time support branch.
2. Check [GitHub](https://github.com/Mbed-TLS/mbedtls/issues) to see if
   your issue has already been reported. If not, …
3. If the issue is a security risk (for example: buffer overflow,
   data leak), please report it confidentially as described in
   [`SECURITY.md`](SECURITY.md). If not, …
4. Please [create an issue on on GitHub](https://github.com/Mbed-TLS/mbedtls/issues).

Please do not use GitHub for support questions. If you want to know
how to do something with Mbed TLS, please see [`SUPPORT.md`](SUPPORT.md) for available documentation and support channels.
