-
Notifications
You must be signed in to change notification settings - Fork 6k
Enable iOS plumbing for network security and add tests #20492
Conversation
@mehmetf Heads up there is some work being done in Dart to get the network stack off of sockets: dart-lang/sdk#41376 (comment) There are other issues like not respecting the operating system's VPN and proxy settings. It seems like if that gets implemented this work might be moot? I'm not sure what the schedule is for that work though. |
Yes. When that happens, this (iOS) code can be deleted. If I am reading this correctly though the "get off sockets" effort is primarily for Darwin? On Android, to obey the network policy, you would need to call out to Java layer. Android's network policy is odd in the sense that they don't actually control sockets. They control HTTP/WS stack and basically say: "Anyone who vends a custom implementation of HTTPConnection needs to obey OS's network policy". I suppose their assumption is that very few apps, if any, would deal with |
@xster Please take a look :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This pull request is not suitable for automatic merging in its current state.
|
* 94f5cf4 Roll Dart SDK from 1a1ab78dd6bc to 91e46dcbbbbd (4 revisions) (flutter/engine#20431) * e0d5153 Make CkVertices a ManagedSkiaObject (flutter/engine#20421) * 5161fd1 Roll Skia from 864562faf497 to b3f26441d191 (22 revisions) (flutter/engine#20447) * 2ac5b34 Revert "Refactor initial route code (#19684)" (flutter/engine#20450) * 5c8a626 Delete CSS paint code (flutter/engine#20426) * 9f146b5 Add --unoptimied and --asan to Fuchsia builds (flutter/engine#20427) * 4fb3ea8 Roll Dart SDK from 91e46dcbbbbd to abdfa80162c1 (3 revisions) (flutter/engine#20453) * 4e21787 Roll Skia from b3f26441d191 to c95b589112f3 (12 revisions) (flutter/engine#20456) * d49c94b Roll Fuchsia Mac SDK from us_8V5gGK... to ik9kEVW-J... (flutter/engine#20457) * 2eebe4a Roll Fuchsia Linux SDK from vomfYvIJk... to xcu8qvX33... (flutter/engine#20458) * debb30e Fix broken symbols on Fuchsia embedder (flutter/engine#20459) * 2bc0bfd Send locale information in the macOS embedding (flutter/engine#20461) * 651cb38 Roll Skia from c95b589112f3 to 652124c372e5 (4 revisions) (flutter/engine#20462) * 95b2ebf Roll Dart SDK from abdfa80162c1 to 279a4b920da8 (1 revision) (flutter/engine#20463) * de6810b Roll Skia from 652124c372e5 to 025843fad003 (1 revision) (flutter/engine#20467) * 52c1ec6 Roll Dart SDK from 279a4b920da8 to 00016747ab48 (2 revisions) (flutter/engine#20471) * 7d45e22 Roll Dart SDK from 00016747ab48 to 9ae3e22f1e53 (1 revision) (flutter/engine#20474) * aa46011 Roll Fuchsia Mac SDK from ik9kEVW-J... to c9oMk4qlD... (flutter/engine#20476) * 4746a93 Roll Skia from 025843fad003 to df9ed89229db (4 revisions) (flutter/engine#20478) * dd2c5a1 Plumbing for setting domain network policy (flutter/engine#20218) * f0955b0 Roll Fuchsia Linux SDK from xcu8qvX33... to AjjDqKkUV... (flutter/engine#20477) * eef639c Roll Skia from df9ed89229db to 8dd1e22f4130 (2 revisions) (flutter/engine#20481) * f1855fb Clean-up CanvasKit canvas sizing. (flutter/engine#20387) * d9f00a3 Roll Skia from 8dd1e22f4130 to af36652766db (6 revisions) (flutter/engine#20484) * 4a91bc8 Roll Dart SDK from 9ae3e22f1e53 to 6d15e04622c2 (1 revision) (flutter/engine#20483) * f396418 Do not access members after calling ClearDartWrapper (flutter/engine#20465) * dacd2d4 Roll Skia from af36652766db to cc01311cfc96 (4 revisions) (flutter/engine#20485) * 9cd99d2 Add enabled flag for try builders (flutter/engine#20460) * 0c504da Refactor initial route code take 2 (flutter/engine#20468) * 6d44559 Remove the dummy rasterizer delegate now that flutter_runner is in tree, and cleanup ctor params (flutter/engine#20486) * 16c328d Roll Skia from cc01311cfc96 to 9e77f20864d3 (6 revisions) (flutter/engine#20489) * da3c9ff Fix unoptimized fuchsia builds (flutter/engine#20488) * 9e30383 Roll Skia from 9e77f20864d3 to 311dd9d8474c (4 revisions) (flutter/engine#20493) * f644d03 Add a service protocol for raster cache memory (flutter/engine#20466) * 6685b31 Roll Skia from 311dd9d8474c to 283c230fa18a (2 revisions) (flutter/engine#20499) * d6052c0 Roll Fuchsia Linux SDK from AjjDqKkUV... to -dcNYnqRy... (flutter/engine#20502) * 022058f Roll Fuchsia Mac SDK from c9oMk4qlD... to B75vjVVwe... (flutter/engine#20504) * 9c99bf7 Add missing nullable annotation (flutter/engine#20505) * d4f6100 Roll Skia from 283c230fa18a to b6ce6baf7a7a (1 revision) (flutter/engine#20506) * 84aa365 Fix the legacy EncodableValue codepaths (flutter/engine#20501) * c3d03b7 Roll Skia from b6ce6baf7a7a to c184cf36092f (3 revisions) (flutter/engine#20507) * 5aaebfc Roll Skia from c184cf36092f to 1cf2c8d6ec21 (1 revision) (flutter/engine#20509) * 4899b1c Roll Skia from 1cf2c8d6ec21 to e219c7ed3754 (1 revision) (flutter/engine#20512) * 0d83051 Roll Skia from e219c7ed3754 to c9c4e2e9efac (3 revisions) (flutter/engine#20513) * 33015c6 hasStrings on Android (flutter/engine#20393) * 7b1ee9f Roll Skia from c9c4e2e9efac to 166cd52cee64 (4 revisions) (flutter/engine#20515) * b32a2a5 Make sure ios tests fail if they fail (flutter/engine#20518) * 0cda293 Fixed the accessibility ios unit tests by sending in mock view (flutter/engine#20522) * 9993228 Fix web_ui warnings flagged by the next Dart analyzer update (flutter/engine#20524) * 169b22c Handle glfwGetPrimaryMonitor returning nullptr (flutter/engine#20523) * 429675d Custom Gradle home and add .vpython file (flutter/engine#20425) * 9333b7c Create PlatformView instance right after method channel call from Dart (flutter/engine#20500) * f0ca3d2 Roll Fuchsia Linux SDK from -dcNYnqRy... to WXwJgZ7tK... (flutter/engine#20517) * dbf7e83 Roll Skia from 166cd52cee64 to 01d016186340 (9 revisions) (flutter/engine#20519) * 5a2bf6a Reland: "fuchsia: Remove dead code / break dependencies" (flutter/engine#20532) * 1590fb2 Roll Fuchsia Mac SDK from B75vjVVwe... to tmHY285qa... (flutter/engine#20534) * f60e836 Started stubbing in the FlutterView property of the mock (flutter/engine#20542) * ac6442a Roll Fuchsia Linux SDK from WXwJgZ7tK... to t6BpwE-Ie... (flutter/engine#20539) * 7d4b549 Roll Fuchsia Mac SDK from tmHY285qa... to 0ZIOLxuHh... (flutter/engine#20544) * b300be3 Roll Dart SDK from 6d15e04622c2 to 302893b93170 (11 revisions) (flutter/engine#20545) * 31a0e45 Roll Skia from 01d016186340 to a008b0fa8bbb (14 revisions) (flutter/engine#20546) * ac8175f Only create raster_thread_merge when explicitly requested by the embedding platform (flutter/engine#20487) * 8430fa1 Roll Fuchsia Linux SDK from t6BpwE-Ie... to TD-QSKxG8... (flutter/engine#20548) * ddf253b Roll Fuchsia Mac SDK from 0ZIOLxuHh... to EEj2OHioI... (flutter/engine#20549) * 7fa21a4 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20399) * 3ebcde6 Revert "[windows] Expose the binary messenger from FlutterEngine (#20399)" (flutter/engine#20550) * 3aff256 Enable iOS plumbing for network security and add tests (flutter/engine#20492) * f74e427 Roll Dart SDK from 302893b93170 to 58a209093c38 (1 revision) (flutter/engine#20552) * fb581b9 Roll Skia from a008b0fa8bbb to d882e93e416b (2 revisions) (flutter/engine#20553) * 219fc83 Roll Skia from d882e93e416b to c4245f475be7 (2 revisions) (flutter/engine#20554) * 2116ed2 Roll Fuchsia Mac SDK from EEj2OHioI... to ko0N4Pxl_... (flutter/engine#20555) * 76d4922 Roll Fuchsia Linux SDK from TD-QSKxG8... to oNnqaiRXK... (flutter/engine#20556) * 32b1b70 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20551) * 9060913 Send locale information in the Windows embedding (flutter/engine#20455) * d7510df Roll Dart SDK from 58a209093c38 to e74e4de7a430 (1 revision) (flutter/engine#20559) * 613be92 Roll Skia from c4245f475be7 to fdbd50a8dc87 (4 revisions) (flutter/engine#20561)
* 94f5cf4 Roll Dart SDK from 1a1ab78dd6bc to 91e46dcbbbbd (4 revisions) (flutter/engine#20431) * e0d5153 Make CkVertices a ManagedSkiaObject (flutter/engine#20421) * 5161fd1 Roll Skia from 864562faf497 to b3f26441d191 (22 revisions) (flutter/engine#20447) * 2ac5b34 Revert "Refactor initial route code (flutter#19684)" (flutter/engine#20450) * 5c8a626 Delete CSS paint code (flutter/engine#20426) * 9f146b5 Add --unoptimied and --asan to Fuchsia builds (flutter/engine#20427) * 4fb3ea8 Roll Dart SDK from 91e46dcbbbbd to abdfa80162c1 (3 revisions) (flutter/engine#20453) * 4e21787 Roll Skia from b3f26441d191 to c95b589112f3 (12 revisions) (flutter/engine#20456) * d49c94b Roll Fuchsia Mac SDK from us_8V5gGK... to ik9kEVW-J... (flutter/engine#20457) * 2eebe4a Roll Fuchsia Linux SDK from vomfYvIJk... to xcu8qvX33... (flutter/engine#20458) * debb30e Fix broken symbols on Fuchsia embedder (flutter/engine#20459) * 2bc0bfd Send locale information in the macOS embedding (flutter/engine#20461) * 651cb38 Roll Skia from c95b589112f3 to 652124c372e5 (4 revisions) (flutter/engine#20462) * 95b2ebf Roll Dart SDK from abdfa80162c1 to 279a4b920da8 (1 revision) (flutter/engine#20463) * de6810b Roll Skia from 652124c372e5 to 025843fad003 (1 revision) (flutter/engine#20467) * 52c1ec6 Roll Dart SDK from 279a4b920da8 to 00016747ab48 (2 revisions) (flutter/engine#20471) * 7d45e22 Roll Dart SDK from 00016747ab48 to 9ae3e22f1e53 (1 revision) (flutter/engine#20474) * aa46011 Roll Fuchsia Mac SDK from ik9kEVW-J... to c9oMk4qlD... (flutter/engine#20476) * 4746a93 Roll Skia from 025843fad003 to df9ed89229db (4 revisions) (flutter/engine#20478) * dd2c5a1 Plumbing for setting domain network policy (flutter/engine#20218) * f0955b0 Roll Fuchsia Linux SDK from xcu8qvX33... to AjjDqKkUV... (flutter/engine#20477) * eef639c Roll Skia from df9ed89229db to 8dd1e22f4130 (2 revisions) (flutter/engine#20481) * f1855fb Clean-up CanvasKit canvas sizing. (flutter/engine#20387) * d9f00a3 Roll Skia from 8dd1e22f4130 to af36652766db (6 revisions) (flutter/engine#20484) * 4a91bc8 Roll Dart SDK from 9ae3e22f1e53 to 6d15e04622c2 (1 revision) (flutter/engine#20483) * f396418 Do not access members after calling ClearDartWrapper (flutter/engine#20465) * dacd2d4 Roll Skia from af36652766db to cc01311cfc96 (4 revisions) (flutter/engine#20485) * 9cd99d2 Add enabled flag for try builders (flutter/engine#20460) * 0c504da Refactor initial route code take 2 (flutter/engine#20468) * 6d44559 Remove the dummy rasterizer delegate now that flutter_runner is in tree, and cleanup ctor params (flutter/engine#20486) * 16c328d Roll Skia from cc01311cfc96 to 9e77f20864d3 (6 revisions) (flutter/engine#20489) * da3c9ff Fix unoptimized fuchsia builds (flutter/engine#20488) * 9e30383 Roll Skia from 9e77f20864d3 to 311dd9d8474c (4 revisions) (flutter/engine#20493) * f644d03 Add a service protocol for raster cache memory (flutter/engine#20466) * 6685b31 Roll Skia from 311dd9d8474c to 283c230fa18a (2 revisions) (flutter/engine#20499) * d6052c0 Roll Fuchsia Linux SDK from AjjDqKkUV... to -dcNYnqRy... (flutter/engine#20502) * 022058f Roll Fuchsia Mac SDK from c9oMk4qlD... to B75vjVVwe... (flutter/engine#20504) * 9c99bf7 Add missing nullable annotation (flutter/engine#20505) * d4f6100 Roll Skia from 283c230fa18a to b6ce6baf7a7a (1 revision) (flutter/engine#20506) * 84aa365 Fix the legacy EncodableValue codepaths (flutter/engine#20501) * c3d03b7 Roll Skia from b6ce6baf7a7a to c184cf36092f (3 revisions) (flutter/engine#20507) * 5aaebfc Roll Skia from c184cf36092f to 1cf2c8d6ec21 (1 revision) (flutter/engine#20509) * 4899b1c Roll Skia from 1cf2c8d6ec21 to e219c7ed3754 (1 revision) (flutter/engine#20512) * 0d83051 Roll Skia from e219c7ed3754 to c9c4e2e9efac (3 revisions) (flutter/engine#20513) * 33015c6 hasStrings on Android (flutter/engine#20393) * 7b1ee9f Roll Skia from c9c4e2e9efac to 166cd52cee64 (4 revisions) (flutter/engine#20515) * b32a2a5 Make sure ios tests fail if they fail (flutter/engine#20518) * 0cda293 Fixed the accessibility ios unit tests by sending in mock view (flutter/engine#20522) * 9993228 Fix web_ui warnings flagged by the next Dart analyzer update (flutter/engine#20524) * 169b22c Handle glfwGetPrimaryMonitor returning nullptr (flutter/engine#20523) * 429675d Custom Gradle home and add .vpython file (flutter/engine#20425) * 9333b7c Create PlatformView instance right after method channel call from Dart (flutter/engine#20500) * f0ca3d2 Roll Fuchsia Linux SDK from -dcNYnqRy... to WXwJgZ7tK... (flutter/engine#20517) * dbf7e83 Roll Skia from 166cd52cee64 to 01d016186340 (9 revisions) (flutter/engine#20519) * 5a2bf6a Reland: "fuchsia: Remove dead code / break dependencies" (flutter/engine#20532) * 1590fb2 Roll Fuchsia Mac SDK from B75vjVVwe... to tmHY285qa... (flutter/engine#20534) * f60e836 Started stubbing in the FlutterView property of the mock (flutter/engine#20542) * ac6442a Roll Fuchsia Linux SDK from WXwJgZ7tK... to t6BpwE-Ie... (flutter/engine#20539) * 7d4b549 Roll Fuchsia Mac SDK from tmHY285qa... to 0ZIOLxuHh... (flutter/engine#20544) * b300be3 Roll Dart SDK from 6d15e04622c2 to 302893b93170 (11 revisions) (flutter/engine#20545) * 31a0e45 Roll Skia from 01d016186340 to a008b0fa8bbb (14 revisions) (flutter/engine#20546) * ac8175f Only create raster_thread_merge when explicitly requested by the embedding platform (flutter/engine#20487) * 8430fa1 Roll Fuchsia Linux SDK from t6BpwE-Ie... to TD-QSKxG8... (flutter/engine#20548) * ddf253b Roll Fuchsia Mac SDK from 0ZIOLxuHh... to EEj2OHioI... (flutter/engine#20549) * 7fa21a4 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20399) * 3ebcde6 Revert "[windows] Expose the binary messenger from FlutterEngine (flutter#20399)" (flutter/engine#20550) * 3aff256 Enable iOS plumbing for network security and add tests (flutter/engine#20492) * f74e427 Roll Dart SDK from 302893b93170 to 58a209093c38 (1 revision) (flutter/engine#20552) * fb581b9 Roll Skia from a008b0fa8bbb to d882e93e416b (2 revisions) (flutter/engine#20553) * 219fc83 Roll Skia from d882e93e416b to c4245f475be7 (2 revisions) (flutter/engine#20554) * 2116ed2 Roll Fuchsia Mac SDK from EEj2OHioI... to ko0N4Pxl_... (flutter/engine#20555) * 76d4922 Roll Fuchsia Linux SDK from TD-QSKxG8... to oNnqaiRXK... (flutter/engine#20556) * 32b1b70 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20551) * 9060913 Send locale information in the Windows embedding (flutter/engine#20455) * d7510df Roll Dart SDK from 58a209093c38 to e74e4de7a430 (1 revision) (flutter/engine#20559) * 613be92 Roll Skia from c4245f475be7 to fdbd50a8dc87 (4 revisions) (flutter/engine#20561)
* 94f5cf4 Roll Dart SDK from 1a1ab78dd6bc to 91e46dcbbbbd (4 revisions) (flutter/engine#20431) * e0d5153 Make CkVertices a ManagedSkiaObject (flutter/engine#20421) * 5161fd1 Roll Skia from 864562faf497 to b3f26441d191 (22 revisions) (flutter/engine#20447) * 2ac5b34 Revert "Refactor initial route code (flutter#19684)" (flutter/engine#20450) * 5c8a626 Delete CSS paint code (flutter/engine#20426) * 9f146b5 Add --unoptimied and --asan to Fuchsia builds (flutter/engine#20427) * 4fb3ea8 Roll Dart SDK from 91e46dcbbbbd to abdfa80162c1 (3 revisions) (flutter/engine#20453) * 4e21787 Roll Skia from b3f26441d191 to c95b589112f3 (12 revisions) (flutter/engine#20456) * d49c94b Roll Fuchsia Mac SDK from us_8V5gGK... to ik9kEVW-J... (flutter/engine#20457) * 2eebe4a Roll Fuchsia Linux SDK from vomfYvIJk... to xcu8qvX33... (flutter/engine#20458) * debb30e Fix broken symbols on Fuchsia embedder (flutter/engine#20459) * 2bc0bfd Send locale information in the macOS embedding (flutter/engine#20461) * 651cb38 Roll Skia from c95b589112f3 to 652124c372e5 (4 revisions) (flutter/engine#20462) * 95b2ebf Roll Dart SDK from abdfa80162c1 to 279a4b920da8 (1 revision) (flutter/engine#20463) * de6810b Roll Skia from 652124c372e5 to 025843fad003 (1 revision) (flutter/engine#20467) * 52c1ec6 Roll Dart SDK from 279a4b920da8 to 00016747ab48 (2 revisions) (flutter/engine#20471) * 7d45e22 Roll Dart SDK from 00016747ab48 to 9ae3e22f1e53 (1 revision) (flutter/engine#20474) * aa46011 Roll Fuchsia Mac SDK from ik9kEVW-J... to c9oMk4qlD... (flutter/engine#20476) * 4746a93 Roll Skia from 025843fad003 to df9ed89229db (4 revisions) (flutter/engine#20478) * dd2c5a1 Plumbing for setting domain network policy (flutter/engine#20218) * f0955b0 Roll Fuchsia Linux SDK from xcu8qvX33... to AjjDqKkUV... (flutter/engine#20477) * eef639c Roll Skia from df9ed89229db to 8dd1e22f4130 (2 revisions) (flutter/engine#20481) * f1855fb Clean-up CanvasKit canvas sizing. (flutter/engine#20387) * d9f00a3 Roll Skia from 8dd1e22f4130 to af36652766db (6 revisions) (flutter/engine#20484) * 4a91bc8 Roll Dart SDK from 9ae3e22f1e53 to 6d15e04622c2 (1 revision) (flutter/engine#20483) * f396418 Do not access members after calling ClearDartWrapper (flutter/engine#20465) * dacd2d4 Roll Skia from af36652766db to cc01311cfc96 (4 revisions) (flutter/engine#20485) * 9cd99d2 Add enabled flag for try builders (flutter/engine#20460) * 0c504da Refactor initial route code take 2 (flutter/engine#20468) * 6d44559 Remove the dummy rasterizer delegate now that flutter_runner is in tree, and cleanup ctor params (flutter/engine#20486) * 16c328d Roll Skia from cc01311cfc96 to 9e77f20864d3 (6 revisions) (flutter/engine#20489) * da3c9ff Fix unoptimized fuchsia builds (flutter/engine#20488) * 9e30383 Roll Skia from 9e77f20864d3 to 311dd9d8474c (4 revisions) (flutter/engine#20493) * f644d03 Add a service protocol for raster cache memory (flutter/engine#20466) * 6685b31 Roll Skia from 311dd9d8474c to 283c230fa18a (2 revisions) (flutter/engine#20499) * d6052c0 Roll Fuchsia Linux SDK from AjjDqKkUV... to -dcNYnqRy... (flutter/engine#20502) * 022058f Roll Fuchsia Mac SDK from c9oMk4qlD... to B75vjVVwe... (flutter/engine#20504) * 9c99bf7 Add missing nullable annotation (flutter/engine#20505) * d4f6100 Roll Skia from 283c230fa18a to b6ce6baf7a7a (1 revision) (flutter/engine#20506) * 84aa365 Fix the legacy EncodableValue codepaths (flutter/engine#20501) * c3d03b7 Roll Skia from b6ce6baf7a7a to c184cf36092f (3 revisions) (flutter/engine#20507) * 5aaebfc Roll Skia from c184cf36092f to 1cf2c8d6ec21 (1 revision) (flutter/engine#20509) * 4899b1c Roll Skia from 1cf2c8d6ec21 to e219c7ed3754 (1 revision) (flutter/engine#20512) * 0d83051 Roll Skia from e219c7ed3754 to c9c4e2e9efac (3 revisions) (flutter/engine#20513) * 33015c6 hasStrings on Android (flutter/engine#20393) * 7b1ee9f Roll Skia from c9c4e2e9efac to 166cd52cee64 (4 revisions) (flutter/engine#20515) * b32a2a5 Make sure ios tests fail if they fail (flutter/engine#20518) * 0cda293 Fixed the accessibility ios unit tests by sending in mock view (flutter/engine#20522) * 9993228 Fix web_ui warnings flagged by the next Dart analyzer update (flutter/engine#20524) * 169b22c Handle glfwGetPrimaryMonitor returning nullptr (flutter/engine#20523) * 429675d Custom Gradle home and add .vpython file (flutter/engine#20425) * 9333b7c Create PlatformView instance right after method channel call from Dart (flutter/engine#20500) * f0ca3d2 Roll Fuchsia Linux SDK from -dcNYnqRy... to WXwJgZ7tK... (flutter/engine#20517) * dbf7e83 Roll Skia from 166cd52cee64 to 01d016186340 (9 revisions) (flutter/engine#20519) * 5a2bf6a Reland: "fuchsia: Remove dead code / break dependencies" (flutter/engine#20532) * 1590fb2 Roll Fuchsia Mac SDK from B75vjVVwe... to tmHY285qa... (flutter/engine#20534) * f60e836 Started stubbing in the FlutterView property of the mock (flutter/engine#20542) * ac6442a Roll Fuchsia Linux SDK from WXwJgZ7tK... to t6BpwE-Ie... (flutter/engine#20539) * 7d4b549 Roll Fuchsia Mac SDK from tmHY285qa... to 0ZIOLxuHh... (flutter/engine#20544) * b300be3 Roll Dart SDK from 6d15e04622c2 to 302893b93170 (11 revisions) (flutter/engine#20545) * 31a0e45 Roll Skia from 01d016186340 to a008b0fa8bbb (14 revisions) (flutter/engine#20546) * ac8175f Only create raster_thread_merge when explicitly requested by the embedding platform (flutter/engine#20487) * 8430fa1 Roll Fuchsia Linux SDK from t6BpwE-Ie... to TD-QSKxG8... (flutter/engine#20548) * ddf253b Roll Fuchsia Mac SDK from 0ZIOLxuHh... to EEj2OHioI... (flutter/engine#20549) * 7fa21a4 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20399) * 3ebcde6 Revert "[windows] Expose the binary messenger from FlutterEngine (flutter#20399)" (flutter/engine#20550) * 3aff256 Enable iOS plumbing for network security and add tests (flutter/engine#20492) * f74e427 Roll Dart SDK from 302893b93170 to 58a209093c38 (1 revision) (flutter/engine#20552) * fb581b9 Roll Skia from a008b0fa8bbb to d882e93e416b (2 revisions) (flutter/engine#20553) * 219fc83 Roll Skia from d882e93e416b to c4245f475be7 (2 revisions) (flutter/engine#20554) * 2116ed2 Roll Fuchsia Mac SDK from EEj2OHioI... to ko0N4Pxl_... (flutter/engine#20555) * 76d4922 Roll Fuchsia Linux SDK from TD-QSKxG8... to oNnqaiRXK... (flutter/engine#20556) * 32b1b70 [windows] Expose the binary messenger from FlutterEngine (flutter/engine#20551) * 9060913 Send locale information in the Windows embedding (flutter/engine#20455) * d7510df Roll Dart SDK from 58a209093c38 to e74e4de7a430 (1 revision) (flutter/engine#20559) * 613be92 Roll Skia from c4245f475be7 to fdbd50a8dc87 (4 revisions) (flutter/engine#20561)
This is a continuation of #20218. Copy pasted its description. This PR adds tests for the iOS code.
The feature is still disabled. We will enable it after the announcement is made.
Description
Starting API 28[1] and iOS 9[2], insecure connections are banned on native platform by default. Flutter, on the other hand, uses Dart VM's HTTP implementation which integrates with Sockets directly. This circumvents the security features on the platform and allows insecure connections.
We attempted to clamp the HTTP connections with a previous PR but this was deemed inadequate because it was ignoring platform level configuration leaving it up to users to allow insecure connections in Dart code via zones. (#17653).
This PR effectively reverts the aforementioned PR and replaces it with a new set of embedder configurations I have added to Dart VM via https://dart-review.googlesource.com/c/sdk/+/154180. With these new settings we can convert iOS and Android network configuration into Dart network configuration. This allows embedder to start the Dart isolate with an immutable network policy derived from the platform configuration.
Related Issues
flutter/flutter#54448
Tests
The biggest code change is how Android parses
ApplicationInfo
. Previously all this was scattered in the loader. I pulled it out and added parsing for the network configuration. I have added unit tests for these classes.I would love to add a couple of end-to-end tests as well on Android and iOS but I am unsure how to do so. Please advise.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (
[x]
). This will ensure a smooth and quick review process.Breaking Change
Did any tests fail when you ran them? Please read handling breaking changes.