IWYU p2p/

using
  find p2p/ -name "*.h" -o -name "*.cc"  | grep -v base/mock_ | grep -v "base/*port" | xargs tools_webrtc/iwyu/apply-include-cleaner
followed by
  tools_webrtc/iwyu/apply-include-cleaner p2p/base/turn_port*
  tools_webrtc/iwyu/apply-include-cleaner p2p/base/stun_port*
  tools_webrtc/iwyu/apply-include-cleaner p2p/base/port\.*
  tools_webrtc/iwyu/apply-include-cleaner p2p/base/port_interface.*
followed by
  tools_webrtc/gn_check_autofix.py -C out/Default/
and git cl format

This excludes base/mock_* and base/port_allocator.* which will be dealt with separately.
The transitive include of stun_port.h from udp_port.h is retained.

Includes from the empty
  p2p/base/basic_async_resolver_factory_unittest.cc
were removed manually and in
  fake_port_allocator.h
the include to the empty udp_port.h was replaced with stun_port.h

  p2p/base/port_allocator_unittest.cc
required manual include of
  p2p/base/basic_packet_socket_factory.h
which was also required by
  pc/ice_transport_unittest.cc
suggesting a missing transitive include

presubmit then caught wrong netinet/ih includes in
  p2p/test/nat_socket_factory.cc
  p2p/test/fake_port_allocator.h
  p2p/test/nat_server.cc
  p2p/test/test_turn_server.h
which were replaced with rtc_base/net_helpers.h

BUG=webrtc:42226242

Change-Id: I9db22e61c8d36623186f5b974cf22d0c4b7aa758
No-Iwyu: iwyu merge conflict, will be fixed in subsequent CL
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/381801
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#44220}
86 files changed
tree: 83f47d2d87f2d60dbe454834af33911946097b52
  1. api/
  2. audio/
  3. build_overrides/
  4. call/
  5. common_audio/
  6. common_video/
  7. data/
  8. docs/
  9. examples/
  10. experiments/
  11. g3doc/
  12. infra/
  13. logging/
  14. media/
  15. modules/
  16. net/
  17. p2p/
  18. pc/
  19. resources/
  20. rtc_base/
  21. rtc_tools/
  22. sdk/
  23. stats/
  24. system_wrappers/
  25. test/
  26. tools_webrtc/
  27. video/
  28. .clang-format
  29. .git-blame-ignore-revs
  30. .gitignore
  31. .gn
  32. .mailmap
  33. .rustfmt.toml
  34. .style.yapf
  35. .vpython3
  36. AUTHORS
  37. BUILD.gn
  38. CODE_OF_CONDUCT.md
  39. codereview.settings
  40. DEPS
  41. DIR_METADATA
  42. ENG_REVIEW_OWNERS
  43. LICENSE
  44. license_template.txt
  45. native-api.md
  46. OWNERS
  47. OWNERS_INFRA
  48. PATENTS
  49. PRESUBMIT.py
  50. presubmit_test.py
  51. presubmit_test_mocks.py
  52. pylintrc
  53. pylintrc_old_style
  54. README.chromium
  55. README.md
  56. WATCHLISTS
  57. webrtc.gni
  58. webrtc_lib_link_test.cc
  59. whitespace.txt
README.md

WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.

Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.

The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.

Development

See here for instructions on how to get started developing with the native code.

Authoritative list of directories that contain the native API header files.

More info