Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esp32: Fix memory leaks and thread safety issues #8471

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

devin-ai-integration[bot]
Copy link

ESP32: Fix Memory Leaks and Thread Safety Issues

This PR addresses several critical issues in the ESP32-specific code:

Changes

  • Fixed memory leaks in certificate bundle handling with proper cleanup
  • Improved thread safety in SHA operations with proper mutex handling and critical sections
  • Added parameter validation and initialization in AES operations
  • Fixed use-after-free issues in WiFi operations with proper cleanup
  • Enhanced error handling in MP operations with proper register validation
  • Improved hardware mutex handling with better state checks
  • Fixed memory management with proper initialization and cleanup

Testing

Changes will be tested through CI across:

  • ESP-IDF v4.1
  • ESP-IDF v5.2
  • ESP-IDF v5.4
  • ESP8266 SDK v3.5

Link to Devin run

https://app.devin.ai/sessions/ef3261401c02492a886809cf95919cf1

Requested by

[email protected]

devin-ai-integration bot and others added 5 commits February 18, 2025 23:32
- Remove global event variable to prevent use-after-free
- Add NULL checks for event parameters
- Add proper cleanup in error paths
- Add proper event handler instance cleanup
- Fix wifi_config initialization
- Improve error handling and logging

Co-Authored-By: [email protected] <[email protected]>
- Add proper parameter validation
- Add consistent error propagation
- Fix resource cleanup in error paths
- Add proper mutex handling with portENTER/EXIT_CRITICAL
- Fix parsing errors around preprocessor directives
- Follow wolfSSL style guidelines

Co-Authored-By: [email protected] <[email protected]>
- Add proper mutex validation and cleanup
- Add hardware state validation
- Add consistent error handling
- Add owner validation in mutex unlock
- Improve error messages and logging
- Follow wolfSSL style guidelines

Co-Authored-By: [email protected] <[email protected]>
- Add memory allocation tracking
- Add stack overflow detection
- Add proper initialization and error handling
- Fix assembly code parsing errors
- Improve error messages and logging
- Follow wolfSSL style guidelines

Co-Authored-By: [email protected] <[email protected]>
- Fix memory leaks in certificate bundle handling
- Fix thread safety issues in SHA operations
- Fix uninitialized variables in AES operations
- Fix use-after-free in WiFi operations
- Fix error handling in MP operations
- Fix hardware mutex handling
- Fix memory management
- Test across ESP-IDF v4.1, 5.2, 5.4 and ESP8266 SDK v3.5

Co-Authored-By: [email protected] <[email protected]>
Copy link
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add "(aside)" to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@wolfSSL-Bot
Copy link

Can one of the admins verify this patch?

@gojimmypi
Copy link
Contributor

Converting to draft mode while I review the proposed changes.

@gojimmypi gojimmypi marked this pull request as draft February 21, 2025 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants