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

[Gratuitous ARP] Thread-safe LWIP API calls, fix condition for IF #2583

Merged
merged 3 commits into from
Sep 24, 2019

Commits on Aug 30, 2019

  1. [Gratuitous ARP] thread-safe etharp_gratuitous for esp32

    As stated in LWIP documentation:
    https://www.nongnu.org/lwip/2_1_x/multithreading.html
    
    "When running in a multithreaded environment, raw API functions MUST only
    be called from the core thread since raw API functions are not protected
    from concurrent access (aside from pbuf- and memory management
    functions). Application threads using the sequential- or socket API
    communicate with this main thread through message passing."
    
    https://www.nongnu.org/lwip/2_1_x/netifapi_8h.html
    Is not present in current esp-idf / arduino-esp32 builds.
    Using existing "private" TCPIP API, create a minimal struct to pass a message
    to the LWIP thread instead of calling etharp_gratuitous directly.
    mcspr committed Aug 30, 2019
    Configuration menu
    Copy the full SHA
    eb3cc6c View commit details
    Browse the repository at this point in the history
  2. [Gratuitous ARP] Check that IF has both LINK_UP and UP flags

    See this comment and further discussion in the issue:
    xoseperez/espurna#1877 (comment)
    
    Use the same condition as esp-lwip.
    mcspr committed Aug 30, 2019
    Configuration menu
    Copy the full SHA
    72483fa View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2019

  1. Configuration menu
    Copy the full SHA
    8883c8e View commit details
    Browse the repository at this point in the history