Skip to content

multiformats: rewrite multiaddr module#16

Merged
uink45 merged 4 commits intomainfrom
codex/rewrite-multiaddr-module
Feb 15, 2026
Merged

multiformats: rewrite multiaddr module#16
uink45 merged 4 commits intomainfrom
codex/rewrite-multiaddr-module

Conversation

@uink45
Copy link
Collaborator

@uink45 uink45 commented Feb 15, 2026

Summary

  • rewrite multiaddr parsing/serialization around bounded iterator helpers and explicit protocol validation
  • normalize multiaddr public error-code typing to multiaddr_error_t constants while preserving API behavior
  • replace multiaddr tests with expanded positive/negative/boundary/regression coverage
  • add shared utility wrappers for memory and IP text/binary conversion used by rewritten paths

Scope

  • include/multiformats/multiaddr/multiaddr.h
  • src/multiformats/multiaddr/multiaddr.c
  • tests/multiformats/multiaddr/test_multiaddr.c
  • include/util/memory.h
  • src/util/memory.c
  • include/util/net_addr.h
  • src/util/net_addr.c
  • CMakeLists.txt

Validation

  • cmake --build --preset macos-full --target multiaddr test_multiaddr test_identify_multiaddr_wire
  • ctest --preset macos-full -R '^(Testmultiaddr|TestIdentifyMultiaddrWire|Testprotocol_tcp|Testprotocol_identify_roundtrip|Testquic_can_handle|Testquic_listener_lifecycle)$' --output-on-failure
  • cmake --preset linux-asan-ubsan
  • cmake --build --preset linux-asan-ubsan --target test_multiaddr test_identify_multiaddr_wire
  • ctest --preset linux-asan-ubsan -R '^(Testmultiaddr|TestIdentifyMultiaddrWire)$' --output-on-failure
  • clang-format --style=file --dry-run --Werror include/multiformats/multiaddr/multiaddr.h src/multiformats/multiaddr/multiaddr.c tests/multiformats/multiaddr/test_multiaddr.c include/util/memory.h include/util/net_addr.h src/util/memory.c src/util/net_addr.c
  • cppcheck --error-exitcode=1 --std=c99 --enable=warning,portability --quiet --suppress=missingIncludeSystem src/multiformats include/multiformats tests/multiformats src/peer_id include/peer_id tests/peer_id
  • cppcheck --std=c99 --enable=all --check-level=exhaustive --quiet --suppress=missingIncludeSystem --suppress='*:tests/*' --addon=/opt/homebrew/share/cppcheck/addons/misra.py -I include src/multiformats/multiaddr include/multiformats/multiaddr tests/multiformats/multiaddr
  • scripts/dev/run-fast-lane-local.sh --platform macos

@uink45 uink45 merged commit 237a092 into main Feb 15, 2026
3 checks passed
@uink45 uink45 deleted the codex/rewrite-multiaddr-module branch February 15, 2026 08:20
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.

1 participant