From 9024ef72d49e54d824fa5cbfddc01b532ee32398 Mon Sep 17 00:00:00 2001 From: David Cermak Date: Fri, 7 Nov 2025 11:44:17 +0100 Subject: [PATCH] feat(blog): Add article about advanced porting posix libs --- .../featured.webp | Bin 0 -> 168784 bytes .../index.md | 567 ++++++++++++++++++ 2 files changed, 567 insertions(+) create mode 100644 content/blog/2025/11/advanced-porting-libraries-as-components/featured.webp create mode 100644 content/blog/2025/11/advanced-porting-libraries-as-components/index.md diff --git a/content/blog/2025/11/advanced-porting-libraries-as-components/featured.webp b/content/blog/2025/11/advanced-porting-libraries-as-components/featured.webp new file mode 100644 index 0000000000000000000000000000000000000000..b0c61f17d1ae3d63e94a880d564cb6ec90faba02 GIT binary patch literal 168784 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 + +// Add ESP-IDF specific extensions +int esp_socketpair(int domain, int type, int protocol, int sv[2]); +``` + +The `include_next` directive will find the original `sys/socket.h` in the system include path and include it, then your custom code adds additional definitions. + +**Injecting Headers in the Same Directory** + +Some libraries use old-style include guards that allow you to inject headers in the same directory. This technique works when the library uses patterns like: + +```c +#ifndef __timeval_h__ +#define __timeval_h__ +... +#endif +``` + +By placing a header file with the same name in the same directory (or earlier in the include path), you can intercept the include and provide custom definitions. However, this technique is fragile and only works with old-style guards—modern `#pragma once` headers cannot be intercepted this way. + +**Pre-include Method** + +The pre-include method uses the `-include` compiler flag to automatically include a header before every source file is compiled. This is useful for: + +- Injecting dependency definitions +- Providing platform-specific macros +- Replacing standard library functions + +Here's an example pattern from a unit test implementation that uses pre-inclusion to inject test dependencies: + +```cmake +if(CONFIG_MB_UTEST) + set(dep_inj_dir "${CMAKE_CURRENT_LIST_DIR}/freemodbus/unit_test") + list(APPEND priv_include_dirs "${dep_inj_dir}/include") + foreach(src ${srcs}) + get_filename_component(src_wo_ext ${src} NAME_WE) + if(EXISTS "${dep_inj_dir}/src/${src_wo_ext}_test.c") + list(REMOVE_ITEM srcs ${src}) + list(APPEND srcs "${dep_inj_dir}/src/${src_wo_ext}_test.c") + set_property(SOURCE ${src} APPEND_STRING PROPERTY COMPILE_FLAGS + " -include ${dep_inj_dir}/include/${src_wo_ext}_test.h -include ${dep_inj_dir}/include/dep_inject.h") + endif() + endforeach() +endif() +``` + +This pattern: +1. Checks if a test version of a source file exists +2. Replaces the original source with the test version +3. Pre-includes test headers that provide mock implementations + +### Linker Wrapping + +Linker wrapping is a powerful technique that allows you to override functions without modifying the source code. It uses the `--wrap` linker flag to redirect function calls to wrapper implementations. + +#### How It Works + +When you wrap a function `function_name`, the linker will: +- Redirect calls to `function_name()` to `__wrap_function_name()` +- Make the original function available as `__real_function_name()` + +This allows you to: +- Intercept function calls +- Add ESP-IDF specific behavior +- Call the original function when needed +- Completely replace the function if desired + +**When to use linker wrapping:** + +- Overriding library functions that need ESP-IDF specific behavior +- Intercepting calls to standard library functions (malloc, free, time, etc.) +- When you want to avoid modifying the original source code +- As an alternative to source-level function replacement + +**Limitations:** + +- Only works with functions (not macros or inline functions) +- Requires implementing the wrapper function +- The wrapped function must be linked (not inlined) + +#### Real-World Example: libwebsockets + +The libwebsockets (lws) port uses linker wrapping to override functions that need ESP-IDF specific behavior. Here's the CMakeLists.txt pattern: + +```cmake +set(WRAP_FUNCTIONS mbedtls_ssl_handshake_step + lws_adopt_descriptor_vhost) + +foreach(wrap ${WRAP_FUNCTIONS}) + target_link_libraries(${COMPONENT_LIB} INTERFACE "-Wl,--wrap=${wrap}") +endforeach() +``` + +The wrapped functions are then implemented in `port/lws_port.c`: + +```c +extern int __real_mbedtls_ssl_handshake_step(mbedtls_ssl_context *ssl); + +int __wrap_mbedtls_ssl_handshake_step(mbedtls_ssl_context *ssl) +{ + int ret = 0; + + while (ssl->MBEDTLS_PRIVATE(state) != MBEDTLS_SSL_HANDSHAKE_OVER) { + ret = __real_mbedtls_ssl_handshake_step(ssl); + + if (ret == MBEDTLS_ERR_SSL_WANT_READ || ret == MBEDTLS_ERR_SSL_WANT_WRITE) { + continue; + } + + if (ret != 0) { + break; + } + } + + return ret; +} +``` + +In this example, the wrapper: +1. Calls the original function via `__real_mbedtls_ssl_handshake_step()` +2. Handles `WANT_READ`/`WANT_WRITE` errors by retrying +3. Continues until the handshake is complete + + +### Socket Utilities (sock_utils) - Deep Dive + +When porting Linux/Unix libraries to ESP-IDF, you'll often encounter POSIX socket APIs that aren't directly available. The [`sock_utils` component](https://github.com/espressif/esp-protocols/tree/master/components/sock_utils) provides a compatibility layer that implements common POSIX socket functions using ESP-IDF's `lwIP` and `esp_netif` components. + +`sock_utils` is especially useful when porting libraries that rely on: +- POSIX socket APIs (`socketpair`, `pipe`) +- Network interface enumeration (`ifaddrs`) +- Address resolution (`getnameinfo`, `gai_strerror`) +- Hostname resolution (`gethostname`) + +| API | Description | Limitations | Declared in | +|--------------------|-------------------------------------------------------------|-------------------------------------------------------------------|----------------------------------------| +| `ifaddrs()` | Retrieves interface addresses using `esp_netif` | IPv4 addresses only | `ifaddrs.h` | +| `socketpair()` *) | Creates a pair of connected sockets using `lwIP` loopback stream sockets | IPv4 sockets only | `socketpair.h`, `sys/socket.h` **) | +| `pipe()` *) | Wraps `socketpair()` to provide unidirectional pipe-like functionality | Uses bidirectional sockets in place of true pipes | `socketpair.h`, `unistd.h` ***) | +| `getnameinfo()` | Converts IP addresses to human-readable form using `lwIP`'s `inet_ntop()` | IPv4 only; supports `NI_NUMERICHOST` and `NI_NUMERICSERV` flags only | `getnameinfo.h`, `netdb.h` in ESP-IDF | +| `gai_strerror()` | Returns error code as a string | Simple numeric string representation only | `gai_strerror.h`, `netdb.h` **) | +| `gethostname()` | Returns lwip netif hostname | Not a system-wide hostname, but interface specific hostname | `gethostname.h`, `unistd.h` in ESP-IDF | + +Notes: +- `*)` `socketpair()` and `pipe()` are built on top of `lwIP` TCP sockets, inheriting the same characteristics. For instance, the maximum transmit buffer size is based on the `TCP_SND_BUF` setting. +- `**)` `socketpair()` and `gai_strerror()` are declared in sock_utils header files. From ESP-IDF v5.5 onwards, these declarations are automatically propagated to the official header files. If you're using an older IDF version, you need to manually pre-include the related header files from the sock_utils public include directory. +- `***)` `pipe()` is declared in the compiler's `sys/unistd.h`. + +#### Integration Methods + +For ESP-IDF versions before 5.5, you need to manually ensure the sock_utils headers are included. This can be done by: + +1. Adding sock_utils to your component's `REQUIRES` or `PRIV_REQUIRES`: + +```cmake +idf_component_register(SRCS ${sources} + PRIV_REQUIRES sock_utils) +``` + +2. Pre-including the headers if needed: + +```cmake +target_compile_options(${COMPONENT_LIB} PRIVATE + "-include" "socketpair.h") +``` + +From ESP-IDF v5.5 onwards, the sock_utils declarations are automatically available in the standard headers when you include `sock_utils` as a dependency. Simply add it to your component: + +```cmake +idf_component_register(SRCS ${sources} + PRIV_REQUIRES sock_utils) +``` + +#### Real-World Example: ASIO Using socketpair() + +The asio library uses `socketpair()` from sock_utils for its pipe-interrupter implementation. The pipe-interrupter is used to wake up the event loop when needed. Here's how it's integrated: + +1. The asio component includes sock_utils as a dependency: + +```cmake +set(asio_requires lwip sock_utils) +idf_component_register(SRCS ${asio_sources} + PRIV_REQUIRES ${asio_requires}) +``` + +2. The asio code can then use `socketpair()` directly, and it will resolve to the sock_utils implementation. + +**Dependencies** + +`sock_utils` requires: +- **lwIP** - For socket functionality +- **esp_netif** - For network interface management + +These are automatically pulled in when you add `sock_utils` as a dependency. + +### Override Functions + +When porting libraries, you'll often need to provide implementations for functions that aren't available on ESP-IDF, or override functions to provide ESP-IDF-specific behavior. + +Libraries often need to override standard functions: + +- **malloc/free** - To use ESP-IDF's memory management +- **Time functions** - To use ESP-IDF's time APIs +- **Random number generation** - To use ESP-IDF's RNG + +These can be implemented as: +- Source-level replacements (providing the function in your port code) +- Linker-wrapped functions (as discussed earlier) +- Pre-included headers that define macros + +### Stub Function Implementations + +Some functions may not be needed on ESP-IDF but are required by the library's API. In these cases, you can provide stub implementations. + +The asio port provides a stub for the `pause()` system call: + +```c +extern "C" int pause(void) +{ + while (true) { + ::sleep(UINT_MAX); + } +} +``` + +This stub is placed in `port/src/asio_stub.cpp` and provides a minimal implementation that satisfies the library's requirements. + +## Step 5: Fine-tune (Compiler Warnings) + +### Component-Level Suppression + +As covered in the basic porting article, you can suppress compiler warnings for an entire component using `target_compile_options()`: + +```cmake +target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-char-subscripts) +``` + +This approach works well when the warning applies broadly across the component, but it can be too broad when only specific files trigger warnings. + +### File-Level Suppression + +For more granular control, ESP-IDF allows you to suppress warnings on a per-file basis using `set_source_files_properties()`. This is particularly useful when: + +- Only a few files in a large library trigger warnings +- You want to keep strict warnings enabled for the rest of the component +- Different files need different warning suppressions + +The mosquitto library provides a good example of this technique. Some mosquitto source files unconditionally define `_GNU_SOURCE`, which collides with the ESP-IDF build system and produces redefinition warnings. Instead of suppressing this warning for the entire component, we can target only the offending files: + +```cmake +# Some mosquitto source unconditionally define `_GNU_SOURCE` which collides with IDF build system +# producing warning: "_GNU_SOURCE" redefined +# This workarounds this issue by undefining the macro for the selected files +set(sources_that_define_gnu_source ${m_src_dir}/loop.c ${m_src_dir}/mux_poll.c) +foreach(offending_src ${sources_that_define_gnu_source}) + set_source_files_properties(${offending_src} PROPERTIES COMPILE_OPTIONS "-U_GNU_SOURCE") +endforeach() +``` + +You can also use this technique to suppress specific warnings for individual files: + +```cmake +# Suppress format warnings for specific files +set_source_files_properties(${m_src_dir}/logging.c PROPERTIES COMPILE_OPTIONS "-Wno-format") +``` + +Or combine multiple options: + +```cmake +set_source_files_properties(${m_src_dir}/file.c PROPERTIES + COMPILE_OPTIONS "-Wno-format;-Wno-unused-variable") +``` + +## License Considerations + +When porting external libraries, always consider license compatibility: + +- **Check the library's license** - Ensure it's compatible with your use case +- **Maintain attribution** - Include license files and copyright notices +- **Document modifications** - If you modify the library, document the changes +- **Consider license of dependencies** - Ensure all dependencies are compatible + +Most ported libraries maintain the original license and add Espressif's copyright notice for port-specific code. + +## Real-World Case Study: ASIO Port + +The ASIO (Asynchronous I/O) library port demonstrates several advanced techniques working together. Let's examine the key changes and techniques used. + +The ASIO port switched to using the upstream ASIO library directly, reducing maintenance burden while providing a robust asynchronous I/O implementation for ESP-IDF. + +Key techniques used: + +1. **Switching to Upstream** + +Instead of maintaining a fork, the port now uses the upstream ASIO library directly, making it easier to stay current with updates and bug fixes. + +2. **Using socketpair() from sock_utils** + +ASIO's pipe-interrupter implementation uses `socketpair()` to create a communication channel for waking the event loop. The port uses `sock_utils` to provide this POSIX function: + +```cmake +set(asio_requires lwip sock_utils) +``` + +3. **Pipe-Interrupter Implementation** + +The pipe-interrupter is a critical component for ASIO's event loop. By using `socketpair()` from `sock_utils`, the port provides a working implementation without modifying ASIO's source code. + +4. **Local pause() Stub** + +ASIO requires the `pause()` system call, which isn't available on ESP-IDF. The port provides a stub implementation in `port/src/asio_stub.cpp`: + +```c +extern "C" int pause(void) +{ + while (true) { + ::sleep(UINT_MAX); + } +} +``` + +5. **POSIX Event Customization** + +The port replaces ASIO's default `posix_event` constructor with an ESP-IDF-compatible version that avoids pthread_condattr_t operations that aren't available on all IDF versions: + +```cpp +// This replaces asio's posix_event constructor +// since the default POSIX version uses pthread_condattr_t operations (init, setclock, destroy), +// which are not available on all IDF versions +posix_event::posix_event() + : state_(0) +{ + int error = ::pthread_cond_init(&cond_, nullptr); + asio::error_code ec(error, asio::error::get_system_category()); + asio::detail::throw_error(ec, "event"); +} +``` + +This is implemented in `port/src/asio_stub.cpp` and enabled via the `ASIO_DETAIL_IMPL_POSIX_EVENT_IPP` compile definition. + +For more details on the ASIO port changes, see [ESP-Protocols PR #717](https://github.com/espressif/esp-protocols/pull/717). + +## Conclusion + +Porting complex libraries to ESP-IDF requires a combination of techniques: + +- **Compiler warning management** - Use file-level suppression for granular control +- **Header injection** - Pre-include, include_next, and port directories for seamless integration +- **Linker wrapping** - Override functions without modifying source code +- **sock_utils** - Leverage POSIX compatibility for socket-based libraries +- **Build system adaptation** - Create custom CMake or adapt existing build systems +- **Function overrides and stubs** - Provide ESP-IDF-specific implementations +- **Compile definitions** - Configure libraries to work with ESP-IDF's feature set + +The key is to minimize modifications to the original library source code, making it easier to: +- Stay synchronized with upstream updates +- Maintain the port over time +- Share the port with the community + +By using these advanced techniques, you can successfully port even complex libraries like ASIO, mosquitto, and libwebsockets to ESP-IDF while maintaining clean, maintainable code. + +For more examples, explore the implementations in the [ESP-Protocols](https://github.com/espressif/esp-protocols) repository, which contains many ported libraries demonstrating these techniques in practice.