)]}'
{
  "log": [
    {
      "commit": "e8660ef639e3087a759dc0553609359f144c4c12",
      "tree": "0256500dd76d582bd2bd73ffbf21a33645c70123",
      "parents": [
        "7c3708170cbefd6e89d64bc3372d6dc1d97d2a66"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Apr 23 01:55:01 2019 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Apr 23 09:41:44 2019 +0000"
      },
      "message": "Freeze the networkstack-aidl-interfaces interface\n\nThis freezes the interface as of the latest beta build, not the tip of\ntree. IIpClient#setL2KeyAndGroupHint is not in the frozen definition in\nparticular.\n\nGenerated with:\nm networkstack-aidl-interfaces-freeze-api \\\n    ipmemorystore-aidl-interfaces-freeze-api\n\nTest: flashed, booted, WiFi and captive portal working\nBug: 128803828\nChange-Id: Ideabe73fc93bbefca2d624ee9ca190cf31419424\nMerged-In: Ideabe73fc93bbefca2d624ee9ca190cf31419424\n(cherry picked from commit 9b89cdaaf401a6b77e160807039c06e537fa600a)\n"
    },
    {
      "commit": "27ad19ee9e9c3719b84263823217d53a33f50858",
      "tree": "0894a7f6d3cfa9c6dd731bf1162d9946adad3fcf",
      "parents": [
        "c4fbf3f080264684ddc4968f227937cf10745873",
        "3741fdc5b983fc92aaf6ff3c469b0c0a599f9fb4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 23 09:05:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 23 09:05:45 2019 +0000"
      },
      "message": "Merge \"provide a resource overlay to configure customized DNS Server.\" into qt-dev"
    },
    {
      "commit": "9509eb8716de82f6c4d95a0d6f026dfd7291d817",
      "tree": "e36e3b89a28e1b661d5dc163b2bbf7cfec025bc8",
      "parents": [
        "d6bed5bcad47039578439bcb5e3ca2bdefb861e5",
        "98b02db88e11f59ef74bff322b98b8990fb5a2b3"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 22 10:37:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 22 10:37:10 2019 +0000"
      },
      "message": "Merge \"Move Setting constants for NetworkStack\" into qt-dev"
    },
    {
      "commit": "98b02db88e11f59ef74bff322b98b8990fb5a2b3",
      "tree": "2903accefbebfc6e104693867a65d55dff0057ca",
      "parents": [
        "2631fb58b670dae3857b4a6861f532bd4857c5ac"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Apr 18 01:25:00 2019 -0700"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Fri Apr 19 05:29:51 2019 +0000"
      },
      "message": "Move Setting constants for NetworkStack\n\nFrom mainline perspective, we should use android flag api\ninstead of using Settings. Thus, move the definitions into\nNetworkStack and apply new flag design.\n\nBug: 123167629\nTest: atest NetworkStackTests\nChange-Id: I9602263f0bff5d8e942bd652de69ccfcb3034a2f\nMerged-In: I6820300c412f94989a5fce7bd6c6f2a3b983b96e\nMerged-In: I4f6d130ffbee14f5087d75a8bc211680a34be682\n(cherry picked from commit 01440ea909732e5d6f81604b61841f07b3d83217)\n"
    },
    {
      "commit": "7035b7949cbb5ba0c2c3e0165ef84292fcc8169f",
      "tree": "811b8b65fa14d820d64b80460e2c6a498265cddb",
      "parents": [
        "b5fa3532db05f05bf03fa00034e95e87e4bed3bc"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Apr 12 05:54:46 2019 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 18 13:30:00 2019 +0000"
      },
      "message": "Change the validation URL for Chinese SIMs\n\nThe default HTTPS and fallback validation URLs are not accessible from\nChina, so users in China never get a validated network on WiFi with the\ndefault AOSP settings. OEMs selling devices targeting China typically\nchange the check URLs for that reason.\n\nWhen the device uses a Chinese SIM card, change the default validation\nURLs to URLs accessible accessible from China as of now.\n\nTest: inserted China SIM, WiFi off/on, dumpsys network_stack shows new\n      URL used\nBug: 111819230\nChange-Id: Ib7f41f470ef1a9c7712f2477ebfab44e915cf1b9\nMerged-In: Ib7f41f470ef1a9c7712f2477ebfab44e915cf1b9\n(cherry picked from commit 990ea84d2d60256d8c752a4a582de0f5a28932c9)\n"
    },
    {
      "commit": "5410580108b4d083fa146e68dc95de3a13fb74bb",
      "tree": "18e1aad66a2e01feca656413dbc706b4b63da29d",
      "parents": [
        "328ff83bb344a3d61dca3610de7c4f31c8db3827",
        "1f8e5289c865e346ea8c24bac2162be4bdf1c968"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Apr 18 05:36:34 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 18 05:36:34 2019 +0000"
      },
      "message": "Merge \"Add overlayable tag for NetworkStackConfig\" into qt-dev"
    },
    {
      "commit": "6a76b7e2e42a71ce6b77905b81d44577c2923f8b",
      "tree": "5ffbbf2227df7312448d6c355a27fbc1109632dd",
      "parents": [
        "d71df284c5275aea2c3d9964a0389ed2d8f75507"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Apr 09 11:16:56 2019 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Apr 16 00:41:54 2019 +0900"
      },
      "message": "Move TrafficStats tags for the network stack constants\n\nAs per API council feedback, these constants should live in\na place that is private to the network stack, only with a\nrange defined in system API.\n\nBug: 129433383\nTest: m\nChange-Id: I84a90f84a9af6fef4667ee4d512ebd0413222086\n(cherry picked from commit 79a6330650ca04bd7a08afbd63f8016a3b30bc72)\n"
    },
    {
      "commit": "d361ff3cb99d534f7499672d441e82469573c52c",
      "tree": "be7339d576115a43a12b011c7249e96a64c1c37f",
      "parents": [
        "82ec520d1ae20a4eae06c197b955adc756f8ad8b"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Apr 11 11:36:26 2019 -0700"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Apr 12 03:34:02 2019 +0000"
      },
      "message": "Freeze netd AIDL interface (framework)\n\nThis freezes the interface as of the latest beta build, although it has\nnot changed since then.\nThis change adds the necessary implementations for getInterfaceVersion.\n\nTest: flashed, WiFi working\nBug: 128803828\nMerged-In: Ib852b0555f0e20b858f9dd0b16dbd98dbbd22b55\nMerged-In: I0c231bdce89474b53603cc15d55787c8c78a809d\n(cherry picked from commit fd4eafe8f6c37073e7326149d978e40e394cdc50)\n\nChange-Id: Idc0e7ea98dbf57e07ee578bc1772c2111af2e563\n"
    },
    {
      "commit": "f5d37ae877a694e9b735013a9e1f43c63d1ffce8",
      "tree": "4d231a40efe5205b325fc946dc9515701f0c9d5e",
      "parents": [
        "be0106abced580a34ea89d0484b2851d0b73065c",
        "44d36f6be3cb9a196bce8960c3c06b846da1df56"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Fri Apr 12 03:15:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 12 03:15:00 2019 +0000"
      },
      "message": "Merge \"Address nit in NetworkStackUtils\" into qt-dev"
    },
    {
      "commit": "3741fdc5b983fc92aaf6ff3c469b0c0a599f9fb4",
      "tree": "134656491e36d97a5dcb7a9fc6ad2adbc8007db3",
      "parents": [
        "be0106abced580a34ea89d0484b2851d0b73065c"
      ],
      "author": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Thu Apr 11 12:50:04 2019 -0700"
      },
      "committer": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Fri Apr 12 02:32:08 2019 +0000"
      },
      "message": "provide a resource overlay to configure customized DNS Server.\n\nBug: 122621524\nTest:  atest FrameworksNetTests NetworkStackTests\nMerged-In: I123b3d4516cc6ba6d17629eb74daf448ba7121eb\nMerged-In: Iba867a3b7bda1f5db9dfa1b7521d4a4badbf88e0\n(cherry picked from commit ac7eb77b90d830179358242fd6e594cc28c0cc31)\n\nChange-Id: Iab8b57ae1bc81c12ce07f849c7820977a9061d55\n"
    },
    {
      "commit": "44d36f6be3cb9a196bce8960c3c06b846da1df56",
      "tree": "05944ba80a60a9b3be3b7b7aef86e526bda20442",
      "parents": [
        "6ce0a596239d1ea87300f497c1742bcdb0e2f0e8"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Apr 11 12:43:52 2019 -0700"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Fri Apr 12 01:01:50 2019 +0000"
      },
      "message": "Address nit in NetworkStackUtils\n\nFollow up commit to fix nit in aosp/937891\n\nBug: 120013793\nTest: Build\nChange-Id: I61a6306d3c439a2d72323ab56e2b47771cc60d48\nMerged-In: Ide4741305724a9e0d26305f8406c5445f9de12b3\n(cherry picked from commit cfb4e06b14925a7ed4324df0e40ec521256ed249)\n"
    },
    {
      "commit": "e512b2691323a6619a79bbec38182ed33ad86016",
      "tree": "0667d32d674649f98a7bcc182a103db080b11fe6",
      "parents": [
        "7757b14c3b0b58102e5a91b092cb6a4bb03b6d18"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Apr 11 21:24:28 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Apr 11 21:24:28 2019 +0800"
      },
      "message": "Migrate NetworkStack metrics off StatsLog.write\n\nNow that the new metrics API can be used, NetworkStack\nmetrics need to migrate off the legacy StatsLog.write.\n\nBug: 130323000\nTest: Test with ./out/host/linux-x86/bin/statsd_testdrive 121\n      to ensure log properly\nTest: Ensure NetworkStackStatsLog will be generated as expected\nTest: atest NetworkStackTest\n\nChange-Id: I8c70503cf1d9f1d06f30a1936d2d88857d0cff53\n"
    },
    {
      "commit": "5beebde64d58b8c6d1a0d6d5712db9431e109571",
      "tree": "76ddb433db35928177025d96ad08d4261d6db7ef",
      "parents": [
        "c53df3a9cc4bf297d39b198e551be423db23acc3"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Apr 10 02:57:17 2019 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 11 11:52:27 2019 +0000"
      },
      "message": "Add lifecycle tests to NetworkMonitorTest\n\n- Ensure that NetworkMonitor quits when notifyNetworkDisconnected\n  is called.\n- Ensure that BroadcastReceivers are registered when a captive\n  portal is detected and unregistered when the network validates\n  or when NetworkMonitor quits.\n\nBug: 122164725\nTest: atest FrameworksNetTests NetworkStackTests\nTest: atest --generate-new-metrics 10 NetworkStackTests:com.android.server.connectivity.NetworkMonitorTest\nTest: test fails if \"Don\u0027t leak captive portal broadcast receivers.\" change reverted\nChange-Id: I1202626face33cc1e1ec02016b95da487b3335c8\nMerged-In: I1202626face33cc1e1ec02016b95da487b3335c8\n(cherry picked from commit bb41c8f7513cf1547fc1724c1c3343321f56c18e)\n"
    },
    {
      "commit": "e0603420f8bf8ad6e0a3e45c7f726de31b24c2f1",
      "tree": "e9d4ece88a26e398f0450bd13727be667aa2a748",
      "parents": [
        "c7a2372ab63caceeeb1326c3042009330d938293",
        "9ca4c626126d55f0d1c5e33f7d3aeaeb3755465d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Apr 11 03:44:08 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 11 03:44:08 2019 +0000"
      },
      "message": "Merge \"Expose captive portal urls for configuration\" into qt-dev"
    },
    {
      "commit": "1f8e5289c865e346ea8c24bac2162be4bdf1c968",
      "tree": "e181bc3ae49d737676a22562fbcba2497a820f27",
      "parents": [
        "db8b76d50198f835d3cbf250bdede0d475abc94d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Apr 11 12:26:54 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Apr 11 03:32:43 2019 +0000"
      },
      "message": "Add overlayable tag for NetworkStackConfig\n\nThis allows OEMs to customize the added resources with an overlay APK\ninstalled in the product, system or vendor partition.\n\nBug: 111819230\nTest: Installed test APK, verified resources changed. Resources not\n      mentioned in overlayable file were not changed.\n\nChange-Id: I24670005ea940d2ac29b8a0ff93e1559604fd3a8\n"
    },
    {
      "commit": "9800d827437850e9b2f031cd72d6d7bdf57ca4e1",
      "tree": "9020dc4feffbaa040d53d2f1d6f1f001da2361fc",
      "parents": [
        "9cbf23f1215b13b33d5715a1bbb12c173a3f5302",
        "296acdfb884bdf8475c4fe37de6af9d7209e7f11"
      ],
      "author": {
        "name": "Akshay Thakker",
        "email": "aksh@google.com",
        "time": "Wed Apr 10 02:47:48 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 10 02:47:48 2019 +0000"
      },
      "message": "Merge \"Update version numbers to 0210000000\" into qt-dev"
    },
    {
      "commit": "9ca4c626126d55f0d1c5e33f7d3aeaeb3755465d",
      "tree": "0cab89a1f7525cea40c588f6214db13e76ee5917",
      "parents": [
        "05777f1abf557db51693901699cbfdff59947702"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Apr 09 02:04:54 2019 -0700"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Apr 10 02:03:27 2019 +0000"
      },
      "message": "Expose captive portal urls for configuration\n\nCarriers in Mainland China need to customize certain captive portal\nurls. The main issue is that google servers are not accessible in\nMainland China.\n\nAdded the following captive portal resources to be targeted for overlay.\n- config_captive_portal_http_url\n- config_captive_portal_https_url\n- config_captive_portal_fallback_urls (string-array)\n- config_captive_portal_fallback_probe_specs (string-array)\n\nThese values can be customized for e g diffent countries\n\nBug: 111819230\nTest: atest FrameworksNetTests NetworkStackTests\nTest: Add a product RRO that targets a specific country code,\ninsert a SIM card that matches that country code and check the log\nwhat URL is used.\n\nMerged-In: I54050b28bbfb93e0b7e509dbe0e987a0b902b7d9\nMerged-In: I1f734c5f864bb2f2bc8ba1a66fe33d3480554f69\n(cherry picked from commit 2977a40b1e8db190e5974a638b2619b3d253d38b)\n\nChange-Id: I278f2888851d38edb59157f8623541fbe94549b6\n"
    },
    {
      "commit": "6839f419de804da732b4b80d2f0233452d890e78",
      "tree": "998bab0e5779501049233086b6f4f3868145338a",
      "parents": [
        "5a56c2d9cc7f64e3420fc65ffae0380ab11d573b",
        "0b984412054d3a7fbe42dfe9b768434780f36a76"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Tue Apr 09 11:52:54 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 11:52:54 2019 +0000"
      },
      "message": "Merge \"Move data stall definitions out from Setting\" into qt-dev"
    },
    {
      "commit": "7c0d3098860889ab148b5c69a30bfddb10a3de56",
      "tree": "67b65dd1ed98f9e5ace5d581f7692c6ed596557b",
      "parents": [
        "abb606c5bd8ce149f149ef659260c78146e1a86e",
        "d3c34d4c5920c6c77c5add8d98f4a395b2515cb4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 09 10:21:39 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 09 10:21:39 2019 +0000"
      },
      "message": "Merge \"Add a mechanism to pass the L2Key and group hint to IpClient\" into qt-dev"
    },
    {
      "commit": "0b984412054d3a7fbe42dfe9b768434780f36a76",
      "tree": "fc7dfeb0b7a20e7a3a742834c6f641cb7ba7ce02",
      "parents": [
        "16f682cac6840e6fd760cd3a076a36c46042cf6c"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 08 19:06:21 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Tue Apr 09 08:32:55 2019 +0000"
      },
      "message": "Move data stall definitions out from Setting\n\nFrom mainline perspective, we should use android flag api\ninstead of using Settings. Thus, move the definitions into\nNetworkStack.\n\nBug:120013793\nTest: atest NetworkStackTests SettingsBackupTest\nChange-Id: I8e1fb5b47fff3bf624131ba1f5732daabd991e6d\n"
    },
    {
      "commit": "d3c34d4c5920c6c77c5add8d98f4a395b2515cb4",
      "tree": "74983601ac6461fc0d4e963b37b5d782e889baa3",
      "parents": [
        "12852fdc7d43922cdb866a1b58a16b322bb4ca7e"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Mar 15 23:10:40 2019 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Apr 09 07:55:17 2019 +0000"
      },
      "message": "Add a mechanism to pass the L2Key and group hint to IpClient\n\nTest: IpClientTest\nBug: 128803828\nChange-Id: I399b20ce29a385a74971b7a7248a48cb4d66deb6\n(cherry picked from commit 3cab290648a0a0f6e5f6c64c2225b3661aabba2f)\n"
    },
    {
      "commit": "15be2b1a36be688c1b5edde3c43dfbc1459a60a2",
      "tree": "c939b87d4d70253bbee012e578573e63585c637b",
      "parents": [
        "16f682cac6840e6fd760cd3a076a36c46042cf6c"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Apr 08 21:35:03 2019 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Apr 09 06:26:23 2019 +0000"
      },
      "message": "Don\u0027t leak captive portal broadcast receivers.\n\nSince aosp/937885, mLaunchCaptivePortalAppBroadcastReceiver is\nnulled out, but not unregistered, when exiting MaybeNotifyState.\nThis causes the BroadcastReceiver to be leaked because it is no\nlonger unregistered when processing CMD_NETWORK_DISCONNECTED.\n\nFix this by unregistering the receiver in MaybeNotifyState#exit.\nAlso remove the unregister call in CMD_NETWORK_DISCONNECTED: it\nis no longer necessary, because StateMachine, before quitting,\nwill call the exit method of the current state and all its\nparent states.\n\nBug: 122164725\nTest: atest FrameworksNetTests NetworkStackTests\nChange-Id: I447b3cfd3821dda19482ed962dd59ec61fc5fc9b\nMerged-In: I1db24fe05ada8b3a37a9a60aa568b6153bf51ad8\n(cherry picked from commit 3a1c0ad3eee7830d808106649052dd7430e34f92)\n"
    },
    {
      "commit": "462864489ac66bcaa9875afc5c2c2123f7d3b074",
      "tree": "67e5cbe952eb5f56eb1849e256780416622127a6",
      "parents": [
        "9f0eb916f33a3352a8afa7a86ae2764e9c5f62dc",
        "2b14c799b85bf209cc656fbc8b509f294abafd05"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Apr 08 12:03:10 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 08 12:03:10 2019 +0000"
      },
      "message": "Merge \"Prevent SIGN_IN notification pop up several times\" into qt-dev"
    },
    {
      "commit": "2b14c799b85bf209cc656fbc8b509f294abafd05",
      "tree": "b255343a98705f968c27c664bcfdc0dc1e4c40db",
      "parents": [
        "835f260d602a319e6670911ff3887f5c6247b33d"
      ],
      "author": {
        "name": "lucaslin",
        "email": "lucaslin@google.com",
        "time": "Mon Apr 08 15:47:25 2019 +0800"
      },
      "committer": {
        "name": "lucaslin",
        "email": "lucaslin@google.com",
        "time": "Mon Apr 08 15:47:25 2019 +0800"
      },
      "message": "Prevent SIGN_IN notification pop up several times\n\nSIGN_IN notification may pop up several times before user\nlogged in the network if someone trigger\nConnectivityService#reportNetworkConnectivity().\nAdd a boolean to make sure SIGN_IN notification will only pop up\nonce to user before user logged in.\n\nBug: b/122164725\nTest: Build pass.\nChange-Id: I9c7f1d47fde8e5dfadd6646497023b05f3b0ed88\nMerged-In: I9c7f1d47fde8e5dfadd6646497023b05f3b0ed88\n"
    },
    {
      "commit": "995aada788f8faf93b81cd397e299a5f659495a2",
      "tree": "55ee83ed4d46160ccb2daabe24da9b3eec90a2a8",
      "parents": [
        "835f260d602a319e6670911ff3887f5c6247b33d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Apr 05 04:44:45 2019 -0700"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 08 01:41:39 2019 +0000"
      },
      "message": "Move attach*Filter() and addArpEntry() methods to NetworkStack\n\nThe SocketUtils.attach*Filter and SocketUtils.addArpEntry methods\nwere added there because they could not be added as JNI inside\nthe NetworkStack. This was not possible because on Go devices,\nthe NetworkStack was a jar library. But now, Go also uses an APK.\nHence, move these methods to the NetworkStack.\n\nFixes: 129433183\nMerged-In: I66d7b3e4fbfa32bb0bc853e8cf9399031daff8a9\n(cherry picked from commit fe71be2b04a3213828dc0347a1dd4a3675d20562)\n\nChange-Id: Ice433a41469e784385f19498c154345d7b9c69b5\n"
    },
    {
      "commit": "296acdfb884bdf8475c4fe37de6af9d7209e7f11",
      "tree": "4047ba2addf334984fe473368d873fd5ad0711bd",
      "parents": [
        "dd07ae579c291a2b6ffe09bd576fd908eb9e5ddd"
      ],
      "author": {
        "name": "Akshay",
        "email": "aksh@google.com",
        "time": "Thu Apr 04 14:41:41 2019 -0700"
      },
      "committer": {
        "name": "Akshay Thakker",
        "email": "aksh@google.com",
        "time": "Thu Apr 04 22:41:12 2019 +0000"
      },
      "message": "Update version numbers to 0210000000\n\nUpdate version number to 0210000000. The Beta 2 builds (which are in dogfood an public beta) will receive modules via the Play Store with version numbers 0200000000. Hence, we must bump the version in qt-dev and hence beta 3. This is so that prebuilts in the beta 3 OTA will be higher than any Play Store pushes on beta 2. We are bumping it by 10000000 so that we have name space to do intermediate cherrypick builds if needed.\n\nBug: 129977903\nChange-Id: Ibacb2a5a232e1d4491d14e89404c99d50fe314ae\n"
    },
    {
      "commit": "654b1e69bb0659a8e2331eddefd384d2c0d28f10",
      "tree": "787330d9dd769f625c1527c823e0cabdeb820f27",
      "parents": [
        "dd07ae579c291a2b6ffe09bd576fd908eb9e5ddd"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Apr 03 18:15:22 2019 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Apr 04 13:20:12 2019 -0700"
      },
      "message": "Fix NetworkStackTests.\n\nNetworkStackTests dlopens library which indirectly\nuses libcgrouprc. Add it to jni_libs.\n\nTest: atest\nFixes: 129902619\nChange-Id: I0d60d7a317fa60607d6fdaea15f61b458aefd2f0\nMerged-In: I0d60d7a317fa60607d6fdaea15f61b458aefd2f0\n"
    },
    {
      "commit": "943e7405f23d8ce4ab937a9bdfbbd74bf3a8b087",
      "tree": "2d1e3e7816316676a1b50ea986938e21ba458bae",
      "parents": [
        "73381bde793f04dd23b2afb2efdf82e8afb7c91c"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 01 14:20:32 2019 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Apr 03 15:18:08 2019 +0900"
      },
      "message": "Straighten AIDL interface for the memory store\n\nSome names were still wrong somehow, and the wrappers were\nmissing.\n\nTest: NetworkStack \u0026 FrameworkNetTests\nChange-Id: I475bd011ad9bc714a07021a9dfd85c4876f8e9ad\n"
    },
    {
      "commit": "d3c115b26a9a62dec76f79572a33cfde12280984",
      "tree": "8aec97ad6c7a8cd00bf79abfdb70aadd261196fe",
      "parents": [
        "5419b11e14c2ea95c026c6a4fd99ba2b96c7d31a",
        "4bf4e79766aa4b8159d2dc6f5cb22be98ec9f566"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Tue Apr 02 21:19:14 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 02 21:19:14 2019 -0700"
      },
      "message": "Merge \"Make CaptivePortalProbeSpec and CaptivePortalProbeResult as a library\" am: 3db9cfe660 am: 2d20cd2378\nam: 4bf4e79766\n\nChange-Id: Iccf60b710df5895d8d269b6c918a8b2f252e93a6\n"
    },
    {
      "commit": "b0f53b84cc9e2595bed22fa68eee4ab0e3690b9e",
      "tree": "3141f87835cccc7ab24e8f13da1934b11fb7478d",
      "parents": [
        "1e97aab6f423e0528912e72fe23f51e5e0a4e29a"
      ],
      "author": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Fri Mar 29 19:21:30 2019 +0800"
      },
      "committer": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Tue Apr 02 17:55:42 2019 +0800"
      },
      "message": "Make CaptivePortalProbeSpec and CaptivePortalProbeResult as a library\n\nThese two classes were added to @SystemApi because they are used\nboth by NetworkMonitor and CaptivePortalLogin. However it turns\nout they are not needed in the framework, so having them as a\nlibrary sounds better.\n\nChange-Id: Iadf77ec5952b6da8812dc6d006a39bd4e93d2bd9\nFix: 129433264\nTest: atest NetworkStackTests FrameworksNetTests\n"
    },
    {
      "commit": "5428e660ca087b73f27c1e4fafea31171f6ff6d9",
      "tree": "47f8f6d29a194d6cfd49cb6dfce84e7b35ac74db",
      "parents": [
        "c533a42c8036b972d42e8db250543a14e9c78999",
        "7da31a0cf5a6b90c3cd2ee1af60915f3c502d5c0"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Mon Apr 01 19:32:54 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 01 19:32:54 2019 -0700"
      },
      "message": "Merge \"[IPMS] Implement regular maintenance\" am: 7f10bb1c11 am: c308297bc2\nam: 7da31a0cf5\n\nChange-Id: I5be38b1eb3d05d5e7c8fa93094816bb3dab7b5d4\n"
    },
    {
      "commit": "7f10bb1c1178aeb9bca4abf4fbee1cd7c9ad0ce2",
      "tree": "0d14a543c59d1533270b33c41f4532be49c451f9",
      "parents": [
        "66a133858b909679eec6f1c52da3d9b3ae7dc688",
        "028d7a55fd80bf29cf5d2cd99a64c3d43a452f7b"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Tue Apr 02 01:39:38 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 02 01:39:38 2019 +0000"
      },
      "message": "Merge \"[IPMS] Implement regular maintenance\""
    },
    {
      "commit": "073e73a0c193286f15b8db6c4486f7ced4815714",
      "tree": "425aa8945707e19bcba0d34de65409c1d23ddc7e",
      "parents": [
        "e0ef7ce4f7b8ae7273c9f9ebf2707840467baae7",
        "fc6b247d351ae506a12b8f25f0bee62ac51c5ebf"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Apr 02 01:31:51 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 02 01:31:51 2019 +0000"
      },
      "message": "Merge \"Rename NetworkStackPermissionStub\""
    },
    {
      "commit": "cf7b25e0134099cafcd88a6b2c61e9534c78aaa3",
      "tree": "a06b055ab04ce65e0725b388ab4106bff07e373a",
      "parents": [
        "9b5f87d28e4f9973051efc581e81b2b7a049849b",
        "aafb4b05764e9b888c5e2d7c2237cf95a06ca685"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Apr 01 18:13:24 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 01 18:13:24 2019 -0700"
      },
      "message": "Merge \"Cleanup SystemReady in the network stack\" am: e0ef7ce4f7 am: 4b130e8567\nam: aafb4b0576\n\nChange-Id: I0e57236ede9dd176cd30ea034d05205776662c91\n"
    },
    {
      "commit": "ec35d666c16d4dffd5e9a0375b808da8e451ff77",
      "tree": "dd456936acba81218ef9335f60bd1745506f7790",
      "parents": [
        "10fbf9a3f5bd996b388b744b556903e38edd944a",
        "ede84b60dd7db89e5843ff3c9fa717fa0cab9c6e"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Tue Apr 02 00:51:51 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 02 00:51:51 2019 +0000"
      },
      "message": "Merge \"Link to android experimental flags API\""
    },
    {
      "commit": "fc6b247d351ae506a12b8f25f0bee62ac51c5ebf",
      "tree": "928924b1a04f1b314c819e85a218aed0cc6d5a4c",
      "parents": [
        "06bdf061f00cf6017976e8b26da007729c800e10"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Mar 26 17:24:48 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Apr 02 00:14:05 2019 +0000"
      },
      "message": "Rename NetworkStackPermissionStub\n\nUse NetworkStackPermissionConfig instead.\n\nBug: 129317412\nTest: Flashed, booted, WiFi working\nMerged-In: I7bdc058dddfa483823074055ad5c9d7d2efd37b9\nChange-Id: I45299c12598cd3b33bfd78ae8698d98b77b18dc0\n"
    },
    {
      "commit": "1fc0bd6aaa096a270ffeaf145eeaeb6ef725089d",
      "tree": "8fd897dd5bce33327cec379e63d18c8dbee9521d",
      "parents": [
        "8f8cf3430b3afed1331dd01b15cd11142add9191",
        "63b386cd0bba5b30bdfd4095f591b9c0c8172dc9"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Apr 02 00:10:19 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 02 00:10:19 2019 +0000"
      },
      "message": "Merge \"Rename NetworkStackPermissionStub\""
    },
    {
      "commit": "e0ef7ce4f7b8ae7273c9f9ebf2707840467baae7",
      "tree": "9f37fed3d013e1b557f2afe2d6674cfa40164e3e",
      "parents": [
        "4c508d1b033fdc7dfb713aa56519d236f3bdc1c7",
        "d74219ba4a44657f8c0c0deb83032d211e4797e4"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Apr 01 23:28:47 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 23:28:47 2019 +0000"
      },
      "message": "Merge \"Cleanup SystemReady in the network stack\""
    },
    {
      "commit": "028d7a55fd80bf29cf5d2cd99a64c3d43a452f7b",
      "tree": "48fc89f2329ed706f63db1cfb0cbeabe44e8fd31",
      "parents": [
        "154a0d0b38250bcf246c53b9229937c60a176fbc"
      ],
      "author": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Tue Mar 26 01:39:10 2019 +0800"
      },
      "committer": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Mon Apr 01 23:35:36 2019 +0800"
      },
      "message": "[IPMS] Implement regular maintenance\n\nImplement regular maintenance of IpMemoryStoreService. Regular\nmaintenance is scheduled for when the device is idle with access\npower and a minimum interval of one day.\n\nBug: 113554482\nTest: atest NetworkStackTests\nChange-Id: Id3985e30d12307fc2e9fcbe782caaf97a627cef3\n"
    },
    {
      "commit": "6ba6b79e51d3fb8d84bd4ea2402cdc3115697aff",
      "tree": "ca15860b4503d8f99896e764eebc102ea83ef9b4",
      "parents": [
        "4f5ed52b043d001d7d8f1c7c40e0a974d87b0f81",
        "0737917d0367e5c6e7143e3852a6585ef1fe53e4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 08:13:16 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 01 08:13:16 2019 -0700"
      },
      "message": "Merge \"Add comment for NetworkStack permissions\" am: 154a0d0b38 am: b4493ea049\nam: 0737917d03\n\nChange-Id: If9c8d887e04bf173badb6b147d9a4379daf6d93f\n"
    },
    {
      "commit": "154a0d0b38250bcf246c53b9229937c60a176fbc",
      "tree": "08b55d48681ac1936b17ba68520120492c641108",
      "parents": [
        "70e943ba80301e6adc03f747b28a0a72fb923395",
        "e799f84de0d290a5ed5643824009a9b8f2393930"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 01 14:45:18 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 14:45:18 2019 +0000"
      },
      "message": "Merge \"Add comment for NetworkStack permissions\""
    },
    {
      "commit": "60a54acbbf5c10ae11d17aa2b94af07744506379",
      "tree": "7b9a518e39a5c6799d050f965d6fc980816609d3",
      "parents": [
        "79013e11c3b83f48b5e3cae4a2777ae2bacf01d0",
        "8e6c80f2389e713f8050bd285fb33382fbbd5f7b"
      ],
      "author": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Mon Apr 01 06:35:34 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 01 06:35:34 2019 -0700"
      },
      "message": "Merge \"Add DHCP address lease expiry in IpMemoryStore.\" am: 17ea70c6d3 am: 23f6cd281a\nam: 8e6c80f238\n\nChange-Id: Ib09ee6a702fb25a682d4782a8822237ebb9a0dfb\n"
    },
    {
      "commit": "17ea70c6d3568a1c6f98bacc4594e45d4678da49",
      "tree": "271142db3ae305a9805bd262a1b8443f6763b37a",
      "parents": [
        "f9d61f1c6dd0f797ca5286495503b45d4b83cbd7",
        "385ccb05c834053c3867d7750e2d9eb71f0adcf1"
      ],
      "author": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Mon Apr 01 12:59:20 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 12:59:20 2019 +0000"
      },
      "message": "Merge \"Add DHCP address lease expiry in IpMemoryStore.\""
    },
    {
      "commit": "b2913320cd27bfcf045d43bd5e701d41a13f5554",
      "tree": "56a3d2432fc4e8bd6e18a0de85a50de58f5a0be4",
      "parents": [
        "cdc66500632805ecc26ad42288ecb8b646fe17c5",
        "bf3e6f5e754a6f3c4e6c3ee396790884b9d56989"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Mon Apr 01 00:52:53 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 01 00:52:53 2019 -0700"
      },
      "message": "Merge \"Fix ApfCapabilities, LinkAddress, RouteInfo, IpPrefix API issues.\" am: f9d61f1c6d am: 96f34c3151\nam: bf3e6f5e75\n\nChange-Id: I599dcdb2312a3e1bb1de8e03f349df207c7cc075\n"
    },
    {
      "commit": "ede84b60dd7db89e5843ff3c9fa717fa0cab9c6e",
      "tree": "59e6d4be09d979c8be2a7060a91284863469e6b1",
      "parents": [
        "5a8d9eae5d40edc29facddba5d1fd109de856d32"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 15:41:06 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 15:41:06 2019 +0800"
      },
      "message": "Link to android experimental flags API\n\nBug: 120013793\nTest: Build and atest NetworkStackTests\nChange-Id: I5c12b48e886e124025ecaa8548b70f26ebd20263\n"
    },
    {
      "commit": "f9d61f1c6dd0f797ca5286495503b45d4b83cbd7",
      "tree": "7d801f393f7f1343671bd1a0c141181c50ac5e90",
      "parents": [
        "9876efdabef97ee85627458698763504a6a56616",
        "819e0aff300d6cf6d67959f0a50f4dbc1da82edf"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Mon Apr 01 07:20:53 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 07:20:53 2019 +0000"
      },
      "message": "Merge \"Fix ApfCapabilities, LinkAddress, RouteInfo, IpPrefix API issues.\""
    },
    {
      "commit": "5640a8d1240628d69c4c88f785823800583fc11b",
      "tree": "12c065953f33d6aff9465e61d5c858aefbace70d",
      "parents": [
        "c353d6e01e4f1c8dce0e3ba4dc7e18df3338746e",
        "8724b66c2df14218ae2ae23bbece52f080095301"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Sun Mar 31 22:25:35 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Mar 31 22:25:35 2019 -0700"
      },
      "message": "Merge \"Provide link to android experimental flags API\" am: 9876efdabe am: a94479c120\nam: 8724b66c2d\n\nChange-Id: I4045d54066cf1c8270bb6eca030daf0193721723\n"
    },
    {
      "commit": "9876efdabef97ee85627458698763504a6a56616",
      "tree": "1b1323506813be1a962be1a589ba7003485bb9a1",
      "parents": [
        "95c5375a8503bff36a34e8147b2d97747f3da808",
        "e027ed6d2499d52e446a742aa4af08cb44caa0b3"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 04:49:33 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 04:49:33 2019 +0000"
      },
      "message": "Merge \"Provide link to android experimental flags API\""
    },
    {
      "commit": "b93bfa1d690eb35205108b6c53a8c726798ca752",
      "tree": "dc1da98e8dcacd0d9ecf980a9155dfa33433727f",
      "parents": [
        "b9b310a9762a3aa8bfd241774823574679a877f1",
        "940cbf970a3f87003a22e92669dfa7e1fa3db539"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Mar 31 21:35:25 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Mar 31 21:35:25 2019 -0700"
      },
      "message": "Merge \"Fix race when starting NetworkMonitor\" am: 78454f3c46 am: f75ba075e4\nam: 940cbf970a\n\nChange-Id: I595ecdbf0b8e91fec4287c3476239a1e6c9c80a7\n"
    },
    {
      "commit": "d74219ba4a44657f8c0c0deb83032d211e4797e4",
      "tree": "010e3f0b0ed93c9fdae79920a5e313b66fe7fb7c",
      "parents": [
        "78454f3c468e8ddf98c6f2e4f539bf90af34e0c2"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Apr 01 13:04:07 2019 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Apr 01 13:32:25 2019 +0900"
      },
      "message": "Cleanup SystemReady in the network stack\n\nThe system server (in SystemServer.java) defines the boot\nsequence, during which an event called SystemReady happens.\nThis corresponds to a time when critical system services\nthat are depended upon by other components in the system\nserver are ready to handle requests from their dependencies.\nSome system services are listening to this event to defer\ninitializations that depend on the critical services.\n\nBecause the network stack is only started after SystemReady,\nthere is no way any NetworkMonitor may be started before\nSystemReady. Remove the associated mechanism.\n\nFix: 129376083\nTest: FrameworksNetTests\nChange-Id: I071eeb10d0b7c4f71af6653d322c7b442b2cc7ee\n"
    },
    {
      "commit": "e799f84de0d290a5ed5643824009a9b8f2393930",
      "tree": "11be30174d7079cbee2c3715b7ac5b32208beaf6",
      "parents": [
        "95c5375a8503bff36a34e8147b2d97747f3da808"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 10:56:05 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 04:24:14 2019 +0000"
      },
      "message": "Add comment for NetworkStack permissions\n\nClarify that permissions must not be in the base package to avoid\ncrashes on devices using a network stack running in the system server\nprocess.\n\nTest: m\nChange-Id: Ib13df84a43e960d01217c208d1c6775d1f81edc4\n"
    },
    {
      "commit": "95c5375a8503bff36a34e8147b2d97747f3da808",
      "tree": "4d8c5e84e4d048eb748f425ff6cf16b27127b07d",
      "parents": [
        "78454f3c468e8ddf98c6f2e4f539bf90af34e0c2",
        "2a23dfde16b64bd2949e833c62b6b16be38967a8"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 04:20:41 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 04:20:41 2019 +0000"
      },
      "message": "Merge \"Move permissions from base to standard manifest\""
    },
    {
      "commit": "78454f3c468e8ddf98c6f2e4f539bf90af34e0c2",
      "tree": "15ffdf0640c8826770cda6bed90134bada06b7cd",
      "parents": [
        "c650674397fe611aa93bc9555c8b5e7b158fc992",
        "3962f678c3559ee62bcfd81d353af5d86a32622e"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 03:54:03 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 03:54:03 2019 +0000"
      },
      "message": "Merge \"Fix race when starting NetworkMonitor\""
    },
    {
      "commit": "3962f678c3559ee62bcfd81d353af5d86a32622e",
      "tree": "e5e05a11c032559ee3cd3e48eae67bf64dce04ec",
      "parents": [
        "1859ae7e7d0d250aebd32d98c1963f6f7084dd1f"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 27 15:42:53 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Apr 01 11:33:10 2019 +0900"
      },
      "message": "Fix race when starting NetworkMonitor\n\nNetworkMonitor obtained LinkProperties and NetworkCapabilities via\nsynchronous calls to ConnectivityManager after receiving an asynchronous\nnotification, which is prone to races: the network could be gone before\nthe LinkProperties/NetworkCapabilities can be fetched.\n\nFix the race by passing LinkProperties/NetworkCapabilities directly to\nNetworkMonitor in the asynchronous notifications.\n\nTest: atest FrameworksNetTests NetworkStackTests\nTest: booted, WiFi works\nBug: 129375892\nChange-Id: I200ac7ca6ff79590b11c9be705f650c92fd3cb63\n"
    },
    {
      "commit": "819e0aff300d6cf6d67959f0a50f4dbc1da82edf",
      "tree": "c287373da546aa7dc6971479dc617f57edd0e37f",
      "parents": [
        "06bdf061f00cf6017976e8b26da007729c800e10"
      ],
      "author": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Wed Mar 27 22:26:37 2019 +0800"
      },
      "committer": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Mon Apr 01 10:23:51 2019 +0800"
      },
      "message": "Fix ApfCapabilities, LinkAddress, RouteInfo, IpPrefix API issues.\n\nFix: 129362082\nFix: 129361362\nFix: 129360330\nFix: 129362379\nTest: atest FrameworksNetTests NetworkStackTests\nChange-Id: I05fbc6f98207d5cf002e3cbc5829040af7d6be52\n"
    },
    {
      "commit": "e027ed6d2499d52e446a742aa4af08cb44caa0b3",
      "tree": "b0736f05ea2f7c90edb88f16a490ac704d08476a",
      "parents": [
        "2a23dfde16b64bd2949e833c62b6b16be38967a8"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 09:56:05 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 09:56:05 2019 +0800"
      },
      "message": "Provide link to android experimental flags API\n\nAdd function to link to android experiemental flags API\n\nBug: 120013793\nTest: Build and atest NetworkStackTests\nChange-Id: I14b9a6f06f841a9d63e8c1954907447a9e7eb8a5\n"
    },
    {
      "commit": "2a23dfde16b64bd2949e833c62b6b16be38967a8",
      "tree": "ffb0ce35613452d1612c2d6e1e63dfaafe83ed24",
      "parents": [
        "4ae4e50deffeddcfbaa7dcd85816c60e18011c3d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 29 14:56:34 2019 +0900"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Apr 01 09:54:34 2019 +0800"
      },
      "message": "Move permissions from base to standard manifest\n\nPermissions defined in AndroidManifest_Base.xml would be inherited in\nAndroidManifest_InProcess.xml and cause issues on svelte builds, since\nprivileged permissions are not whitelisted for\ncom.android.networkstack.inprocess.\n\nThe network stack running in the system_server process does not need\nthese permissions anyway since it has system_server permissions.\n\n(clean cherry-pick from Ica63ce586e701b1f2415a97f63ba27cc25e4830a)\n\nTest: flashed, booted crosshatch_svelte-eng, WiFi works\nTest: flashed, booted blueline-eng, WiFi works\nFixes: 129485310\nMerged-In: Ica63ce586e701b1f2415a97f63ba27cc25e4830a\nChange-Id: Ib4b478fb39f43a2fd4221c7d1f1ea51de04e0fba\n"
    },
    {
      "commit": "ad2a94770f4438b16a68461ea65d3107d708bebb",
      "tree": "9d4e8ca6882648b2bd30faa2212038bef49e6226",
      "parents": [
        "8d6388138130cf600ea340f85eea38a7cab05630"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@google.com",
        "time": "Fri Mar 29 13:41:27 2019 -0400"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@google.com",
        "time": "Fri Mar 29 14:25:20 2019 -0400"
      },
      "message": "Set the version code to 0200000000\n\nBug: 129093117\nChange-Id: I6397511874afb47ba9c034f74ad8f748e50e23b9\n"
    },
    {
      "commit": "60852eab5cc5c505b1142f8c36b14fb97ec1cadb",
      "tree": "dc089d40ef27ea2ab4c63f68c0a3d93a7dfe7fda",
      "parents": [
        "62a5229d2cf48f148df7abfa4771527cb54f27c6",
        "d4cbba8f18a0910255e9ee1258175c9398592d2e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 29 13:37:20 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 29 13:37:20 2019 +0000"
      },
      "message": "Merge \"Move permissions from base to standard manifest\""
    },
    {
      "commit": "1b0b7d406b2bd51bfe05c54fd5b1f27e1abea9d3",
      "tree": "739fd179da0ed48d0dc504c61af22511ca77776d",
      "parents": [
        "2a127a77fe2e85d98c6a2ab0997c7ab6fdbb9f32",
        "fcf00a95b01047591617a10603b4501852d5f3f2"
      ],
      "author": {
        "name": "Aaron Huang",
        "email": "huangaaron@google.com",
        "time": "Fri Mar 29 06:35:21 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 29 06:35:21 2019 -0700"
      },
      "message": "Merge \"apf: Documentation improvements and code optimizations for keepalive filters\" am: f5166d5527 am: 3eb37cda43\nam: fcf00a95b0\n\nChange-Id: Ic0e693dcdf2033abc1e976d9cc18365792181571\n"
    },
    {
      "commit": "f5166d55271c83bb758b2cc3976c4279619a819e",
      "tree": "660a9f5cc95957a62c8c3f412e85571b48f727c0",
      "parents": [
        "5dfc73b9afd82303ead2989ee12419a83fc2976b",
        "75a6043bf1d767d11c16ce3931fe75fe76e83140"
      ],
      "author": {
        "name": "Aaron Huang",
        "email": "huangaaron@google.com",
        "time": "Fri Mar 29 13:03:20 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 29 13:03:20 2019 +0000"
      },
      "message": "Merge \"apf: Documentation improvements and code optimizations for keepalive filters\""
    },
    {
      "commit": "d4cbba8f18a0910255e9ee1258175c9398592d2e",
      "tree": "c22ac8602f59e79dd11ba7e5bd83b62a868e4d5c",
      "parents": [
        "329c4dadbe92deae9741010bf3e31eb7d70ba899"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 29 15:33:07 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 29 17:39:58 2019 +0900"
      },
      "message": "Move permissions from base to standard manifest\n\nPermissions defined in AndroidManifest_Base.xml would be inherited in\nAndroidManifest_InProcess.xml and cause issues on svelte builds, since\nprivileged permissions are not whitelisted for\ncom.android.networkstack.inprocess.\n\nThe network stack running in the system_server process does not need\nthese permissions anyway since it has system_server permissions.\n\nTest: flashed, booted crosshatch_svelte-eng, WiFi works\nTest: flashed, booted blueline-eng, WiFi works\nFixes: 129485310\n(clean cherry-pick from aosp/937139)\n\nChange-Id: Ica63ce586e701b1f2415a97f63ba27cc25e4830a\n"
    },
    {
      "commit": "329c4dadbe92deae9741010bf3e31eb7d70ba899",
      "tree": "2af439822494a124e01c084a8b0cb86fa295de56",
      "parents": [
        "57fd2215a65fba4afe572e22b20ea7e2b3d19f21"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 29 14:49:02 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 29 17:39:52 2019 +0900"
      },
      "message": "Add NetworkStackTests dependency on libdl_android\n\nThis fixes tests that were failing because of the unsatisfied\ndependency.\n\nTest: atest NetworkStackTests\nBug: 129387775\nChange-Id: Ie0c1bc2b292ad7172d144d9e7ad9edeecd2232b7\n"
    },
    {
      "commit": "385ccb05c834053c3867d7750e2d9eb71f0adcf1",
      "tree": "30523fa6c7f2568206a402780b33c40ff3a14206",
      "parents": [
        "bc350db984669fb4220e75b67407e0bec3e51038"
      ],
      "author": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Fri Mar 01 12:25:36 2019 +0900"
      },
      "committer": {
        "name": "Xiao Ma",
        "email": "xiaom@google.com",
        "time": "Fri Mar 29 16:51:47 2019 +0900"
      },
      "message": "Add DHCP address lease expiry in IpMemoryStore.\n\nBug:122710829\nTest: atest FrameworksNetTests\nChange-Id: I643fe1231edcd18923514ab66c64a6cf83e69443\n"
    },
    {
      "commit": "3049d3b68266fdb3b7735a16db62825994980714",
      "tree": "3aaea6cebf9715617222691b8f63cead1b66c81e",
      "parents": [
        "7e8e0dd11b054693ed90a44725d52ecd7c7b2d7d",
        "f93d3f9a79299131256a6ae42fdb3d08954cf3d6"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 27 17:49:16 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 27 17:49:16 2019 -0700"
      },
      "message": "Merge \"Fix message names in dumpsys network_stack\" am: 3c776e8793 am: bae08510a2\nam: f93d3f9a79\n\nChange-Id: I3caa485fb7bb8713192c6b726bc7f9e541fc7444\n"
    },
    {
      "commit": "3c776e87932d56a31df76b9631700ced596522d2",
      "tree": "81b4c70b2fc74ab02051cfbb45fe98a4524b0b41",
      "parents": [
        "213812ba28b4532eda453bf322e71cf628d0d59a",
        "aaa7ecfd3b7b8d780e6a5f71dcd1dcb0783f2e49"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Mar 28 00:14:31 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 28 00:14:31 2019 +0000"
      },
      "message": "Merge \"Fix message names in dumpsys network_stack\""
    },
    {
      "commit": "aef32a4811f12d9f8bae7c96fbbf96227e0c198a",
      "tree": "d542c7b066621a439b0547ba788a7e4bea65617d",
      "parents": [
        "a59ffcd130b54fc93fdd199a29083bceb1e9f358",
        "d33e31e27a257fa3926fdb3baf8ae107b6ca0a52"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 27 01:34:53 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 27 01:34:53 2019 -0700"
      },
      "message": "Merge \"Enable more logs for networking\" am: f3736d67f8 am: 310609b8be\nam: d33e31e27a\n\nChange-Id: Icd81490cabaaf1d164ce77bda76b196b869c8721\n"
    },
    {
      "commit": "aaa7ecfd3b7b8d780e6a5f71dcd1dcb0783f2e49",
      "tree": "7832cedf1090ca38ce102567856dddd8eaf48eac",
      "parents": [
        "06bdf061f00cf6017976e8b26da007729c800e10"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Mar 26 14:58:08 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 27 14:12:18 2019 +0900"
      },
      "message": "Fix message names in dumpsys network_stack\n\nConstants were stripped out by ProGuard, so\nMessageUtils.findMessageNames would fail to find them.\n\nTest: flashed, dumpsys network_stack shows message names\nFixes: 124619824\nChange-Id: I285ce2ab52cdff48f17b422285a635bd34243498\n"
    },
    {
      "commit": "63b386cd0bba5b30bdfd4095f591b9c0c8172dc9",
      "tree": "759b799971e2115e43f714b1c7c21cc667957ac3",
      "parents": [
        "5e94ae17ae7181b2f8aa99c0c98af87aad3304d5"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 27 12:04:27 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 27 12:04:27 2019 +0900"
      },
      "message": "Rename NetworkStackPermissionStub\n\nUse NetworkStackPermissionConfig instead.\nAlso remove the source directory: soong now manages to build the package\nwithout it.\n\nBug: 129317412\nTest: Flashed, booted, WiFi working\n(clean cherry-pick of aosp I45299c12598cd3b33bfd78ae8698d98b77b18dc0)\n\nChange-Id: I7bdc058dddfa483823074055ad5c9d7d2efd37b9\n"
    },
    {
      "commit": "37293308b4e8c954bc423fb2f2c677fb56397402",
      "tree": "85f3633fddabcd451504c2c39dae69804a39b6e6",
      "parents": [
        "06bdf061f00cf6017976e8b26da007729c800e10"
      ],
      "author": {
        "name": "Ruoyao Liu",
        "email": "ruoyao.liu@mediatek.com",
        "time": "Mon Jan 21 11:36:18 2019 +0800"
      },
      "committer": {
        "name": "Iris Chang",
        "email": "iris.chang@mediatek.com",
        "time": "Tue Mar 26 12:57:17 2019 +0800"
      },
      "message": "Enable more logs for networking\n\nSometimes we would encounter problems that happen by chance and\nhard to reproduce. So we recommend to enable more logs in ENG and\nUESRDEBUG load by default.\n\nBug: 123256412\nTest: android.net.ip.IpClientTest can pass\nChange-Id: Ia3363de96966a4e86ab550c768fb70317da005ed\n"
    },
    {
      "commit": "75a6043bf1d767d11c16ce3931fe75fe76e83140",
      "tree": "4a5362034577ddced3be529d942af3d0837262cd",
      "parents": [
        "89bf100d667fd9c79dc097bce70789b6660bd80f"
      ],
      "author": {
        "name": "Aaron Huang",
        "email": "huangaaron@google.com",
        "time": "Wed Feb 20 17:14:02 2019 +0800"
      },
      "committer": {
        "name": "Aaron Huang",
        "email": "huangaaron@google.com",
        "time": "Mon Mar 25 23:38:41 2019 +0800"
      },
      "message": "apf: Documentation improvements and code optimizations for keepalive filters\n\nOptimizing instruction to reduce code size of keepalive filters.\n\nBug: 123992088\nTest: atest NetworkStackTests\nChange-Id: I9ae55977c6d6740277ba55603ee957f33a97ecaa\n"
    },
    {
      "commit": "80ce3a3bf9236750b96757e05bd0177e128caa07",
      "tree": "1aa84acc85c6bab442b343175cc28ab7b85ff525",
      "parents": [
        "391dcfdc010a2b23cdd6839ebcbe01440e9760cc",
        "b4c9d697f5cbd8aca8d2973b48f8ead7ff849363"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Mar 25 01:11:17 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 25 01:11:17 2019 -0700"
      },
      "message": "Merge \"Compile NetworkStack resources only once\" am: 963136ce56 am: 4aea56297c\nam: b4c9d697f5\n\nChange-Id: Ibbe585e2dd8c9df6ef99cf1aacfb899331f70a80\n"
    },
    {
      "commit": "963136ce56c60ac615cbbba8cc7ec885d5c0b1df",
      "tree": "f52ab71f2ef01db83a8f5a807a7bccb0d720d9be",
      "parents": [
        "36538bb38c73525565ce6517e41c6e245872365e",
        "86c45823c73e38826f8f1bf9ff01940f639dfa08"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Mar 25 07:40:33 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 25 07:40:33 2019 +0000"
      },
      "message": "Merge \"Compile NetworkStack resources only once\""
    },
    {
      "commit": "516d750ae20bc420583bba71d76319d616c664a5",
      "tree": "43aac20e5a28bc7882c1108d0a8c073c7963f4f5",
      "parents": [
        "1bf2ef3bc3a503573dafa7b139288223b6618fbf",
        "4d975feb9f6636942a0bdaf31b3a8a33ab821e53"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Mar 24 20:23:39 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Mar 24 20:23:39 2019 -0700"
      },
      "message": "Merge \"Separate NetworkMonitor/framework portal URL\" am: bcd3bed561 am: 34198fac89\nam: 4d975feb9f\n\nChange-Id: I85e744d94d96ecf9ac558e62016418d8199bb98c\n"
    },
    {
      "commit": "86c45823c73e38826f8f1bf9ff01940f639dfa08",
      "tree": "9b840a6c0b205c89545aca84010689e2f97a8e37",
      "parents": [
        "0bd294cd55ae558b15bd760c8220a7b816ee946e"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 20 16:40:54 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Mar 25 11:54:41 2019 +0900"
      },
      "message": "Compile NetworkStack resources only once\n\nThe current build files would compile resources both for the\nandroid_library and the android_app build rules, since the android_app\nbuild rule resource_dirs default to [\"res\"]. Set resource_dirs to [] for\nthese build rules so that resources are only inherited from the\nandroid_library.\n\nAlso refactor the build file using java_defaults to avoid repeating\nconfiguration.\n\nTest: flashed, boots, WiFi working\nBug: 127908503\nChange-Id: Ie51dd1bd1a8ee5145e3f1b95beb1de59665b4c51\n"
    },
    {
      "commit": "bcd3bed561b9741551f6a3dd8964d338c26ee6d9",
      "tree": "69d6415b9eac56b9f5294100e9f0356e253e04fa",
      "parents": [
        "3c959339ae96e451b79dba918966f51a3f835d3a",
        "0bd294cd55ae558b15bd760c8220a7b816ee946e"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Mar 25 02:50:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 25 02:50:37 2019 +0000"
      },
      "message": "Merge \"Separate NetworkMonitor/framework portal URL\""
    },
    {
      "commit": "3c959339ae96e451b79dba918966f51a3f835d3a",
      "tree": "5e3cb83797eee2175912bd9bd9773548889e3841",
      "parents": [
        "727f8bbfc6d4c02cc5f249994956043a1417a2b6",
        "e2365d664431341557bbca4d36ed831ba771e25f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 25 02:37:28 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 25 02:37:28 2019 +0000"
      },
      "message": "Merge \"Fix API in CaptivePortal and ConnectivityManager\""
    },
    {
      "commit": "727f8bbfc6d4c02cc5f249994956043a1417a2b6",
      "tree": "7845de1d454c4f5d97f91e120bb483c0ce78d805",
      "parents": [
        "f5bc3443753052c4cd962310a30ce791d50f9663",
        "4d6fe320e6f59501239427438a6a37abeb7c833a"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Mon Mar 25 02:16:16 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 25 02:16:16 2019 +0000"
      },
      "message": "Merge \"Add network stack proto\""
    },
    {
      "commit": "e2365d664431341557bbca4d36ed831ba771e25f",
      "tree": "85389d886af59f14e0623cae316c4cb6c3fd9f64",
      "parents": [
        "64bb980f457d843026fd301e05b666a84441d96d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 11:14:13 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Mar 25 01:43:48 2019 +0000"
      },
      "message": "Fix API in CaptivePortal and ConnectivityManager\n\n - Remove CaptivePortal constructor from SystemApi. This constructor was\n   added in Q timeframe and ends up being unnecessary since\n   CaptivePortal creation was refactored to ConnectivityService because\n   of visibility issues on ICaptivePortal.\n - Rename getAvoidBadWifi to shouldAvoidBadWifi\n - Add permission annotation for shouldAvoidBadWifi\n\n(already merged in internal as:\nI09545c00af3519dbf141dd5951b28f49e37b3e80)\n\nTest: flashed, WiFi and captive portal works\nBug: 128935314\nBug: 128935673\nMerged-In: I09545c00af3519dbf141dd5951b28f49e37b3e80\nChange-Id: I7395d4a4db6a64398a827692aee1956c011873e5\n"
    },
    {
      "commit": "445d56756ab1391af72bab90a54e1834d271253e",
      "tree": "4fb6a8897a9ae50c3d2f75989fe125508852b867",
      "parents": [
        "ae1814de4d04f40996817035e00790c08fdf60fc",
        "24ec3ff0068faa3a9a66606fa5aa9fcc5caea4dd"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Mar 22 11:46:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 22 11:46:21 2019 +0000"
      },
      "message": "Merge \"Fix API in CaptivePortal and ConnectivityManager\""
    },
    {
      "commit": "a96469e370b6c5bd73fad0d1db8d664e8a767180",
      "tree": "1f74c0cdf873012b44e4ad54ae6cb9a56443fedf",
      "parents": [
        "099202581ece801bcd83144af575172fe51f6377",
        "1e7e29593b224751e9ae6cd1a848a57c332f6a19"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 04:12:02 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 22 04:12:02 2019 -0700"
      },
      "message": "Merge \"Fix targetSdkVersion for NetworkStack\" am: 42b97de9d3 am: ba2f3d2fdf\nam: 1e7e29593b\n\nChange-Id: Ic2d8c541ab6ba827d13f7d6a00a6f3b279489646\n"
    },
    {
      "commit": "8f252c15986206d12921d2e150e8ab0c19b54e5f",
      "tree": "ddaf4e317a1897154054921d556160c1ba5d3153",
      "parents": [
        "25a2987cff2f45c50b927a6cff0185ecdd7cf6dc",
        "0e88ebfb2821ecdd1444e3aea8db3e4bd9754ee0"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Fri Mar 22 09:43:40 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 22 09:43:40 2019 +0000"
      },
      "message": "Merge \"Add network stack proto\""
    },
    {
      "commit": "afa94f4664d34c30d4196dbd7ed8d53c6af0abb4",
      "tree": "950753f5f95e8cb14adb81c6572c8e239d11087f",
      "parents": [
        "42b97de9d3cba66ea46fb33eff9498ca68e298d8",
        "8e7b924cf8b0400ca0ea59094135203cc1248cd3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 22 09:14:14 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 22 09:14:14 2019 +0000"
      },
      "message": "Merge \"Renamed the variable\""
    },
    {
      "commit": "24ec3ff0068faa3a9a66606fa5aa9fcc5caea4dd",
      "tree": "8945e6fee2da6562ae461b4ae5e14da96afc1172",
      "parents": [
        "764bf9cbeb3a179d137802065161195868c3e0e3"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 17:16:52 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 17:16:52 2019 +0900"
      },
      "message": "Fix API in CaptivePortal and ConnectivityManager\n\n - Remove CaptivePortal constructor from SystemApi. This constructor was\n   added in Q timeframe and ends up being unnecessary since\n   CaptivePortal creation was refactored to ConnectivityService because\n   of visibility issues on ICaptivePortal.\n - Rename getAvoidBadWifi to shouldAvoidBadWifi\n - Add permission annotation for shouldAvoidBadWifi\n\nTest: flashed, WiFi and captive portal works\nBug: 128935314\nBug: 128935673\n(clean cherry-pick of AOSP I7395d4a4db6a64398a827692aee1956c011873e5)\n\nChange-Id: I09545c00af3519dbf141dd5951b28f49e37b3e80\n"
    },
    {
      "commit": "42b97de9d3cba66ea46fb33eff9498ca68e298d8",
      "tree": "87d61d2169b4a2cd7eced182985fb63ebfdcdb8d",
      "parents": [
        "419956210a68abda8178bace9b609ba823b42158",
        "ae1ef49436b70cecc858b96f85dea4d151cdc25f"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 07:00:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 22 07:00:50 2019 +0000"
      },
      "message": "Merge \"Fix targetSdkVersion for NetworkStack\""
    },
    {
      "commit": "0bd294cd55ae558b15bd760c8220a7b816ee946e",
      "tree": "ba0a32701a177f518cdf5b35f65034760436990d",
      "parents": [
        "64bb980f457d843026fd301e05b666a84441d96d"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 20 14:22:49 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Mar 22 15:11:14 2019 +0900"
      },
      "message": "Separate NetworkMonitor/framework portal URL\n\nThe framework cannot return URLs used by the updatable NetworkStack,\nwhich may use configurable URLs, changing URLs, or mechanisms not\ninvolving URLs to detect captive portals. NetworkMonitor has already\nbeen using random fallback URLs for a while that do not match the value\nreturned by ConnectivityManager#getCaptivePortalServerUrl.\n\nWith this change, the default value returned by the framework is\nconfigured in framework resources as\nconfig_networkDefaultCaptivePortalServerUrl. NetworkMonitor behavior may\nchange as it is an updatable component, but the current URL is\nconfigured in NetworkMonitor resources as\nconfig_captive_portal_http_url.\n\nTest: flashed, booted, WiFi and captive portal working\nTest: ConnectivityManager#getCaptivePortalServerUrl returns correct\n      value.\nBug: 127908503\nChange-Id: I371dedc5b22efa909d7fd58e1ebe9b8aaced9780\n"
    },
    {
      "commit": "21b9f61f6f62eea9ceb2510e52f42bf555acd7f6",
      "tree": "10dd29ee6acea75702488843e8239c7ca106a0b1",
      "parents": [
        "95f5d4b979f5469b16eabae773a65b9e429ac4e7",
        "ce18c5a1eccfc4944e2ac31b5d1ad386a8283aea"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Thu Mar 21 11:54:51 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 21 11:54:51 2019 -0700"
      },
      "message": "Merge \"Fix Automated API Review issues.\" am: 43c1ade661 am: 9e3f29037b\nam: ce18c5a1ec\n\nChange-Id: Iba1630161579571d4975aba9bbd5c767f82c8a98\n"
    },
    {
      "commit": "43c1ade6613c79282e68182d21b34b2d26d1556f",
      "tree": "561d365159837c831f6572c03e6d7fd112bd15b6",
      "parents": [
        "775d11c988d46044b647eed1825f552df3d475a7",
        "d9736de38b204748e16b882f4ff4c8f12bdf3288"
      ],
      "author": {
        "name": "Paul Hu",
        "email": "paulhu@google.com",
        "time": "Thu Mar 21 17:19:26 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 21 17:19:26 2019 +0000"
      },
      "message": "Merge \"Fix Automated API Review issues.\""
    },
    {
      "commit": "4d6fe320e6f59501239427438a6a37abeb7c833a",
      "tree": "87e79a1939570b997b2273c9f33a2133b86697ac",
      "parents": [
        "f6cbc2d533ad1099618e5d4dc3276241beb401d2"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Mar 21 20:40:01 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Mar 21 20:46:02 2019 +0800"
      },
      "message": "Add network stack proto\n\nBug: 128887306\nTest: Build pass\nChange-Id: I7cfccb33033afadaca608f383a94df0ef363cc77\nMerged-In: Iec48037771f2729fcbf741eb1c16edf08dbc70a4\n"
    },
    {
      "commit": "d9736de38b204748e16b882f4ff4c8f12bdf3288",
      "tree": "60ec4311e9bc852633b4d3c5a99d4997bc5dee2a",
      "parents": [
        "9c7fb4566dd8092f633acb921e3458bc067e5ffe"
      ],
      "author": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Fri Mar 08 16:35:20 2019 +0800"
      },
      "committer": {
        "name": "paulhu",
        "email": "paulhu@google.com",
        "time": "Thu Mar 21 13:55:37 2019 +0800"
      },
      "message": "Fix Automated API Review issues.\n\n1. Some API\u0027s argument/return value must be marked either\n@NonNull or @Nullable.\n2. Change some system APIs to public APIs.\n3. Modify the method name\n\nBug: 126700123\nBug: 126702339\nBug: 126699682\nBug: 118296575\nBug: 126699216\nBug: 126699675\nBug: 126699429\nBug: 126699193\nBug: 123586045\nTest: atest FrameworksNetTests\nChange-Id: Iaa2832cdcf83758ed0fec81b954a0c63bc5a7bf6\n"
    },
    {
      "commit": "725b513e5da903465f92fecacc0392516a30955c",
      "tree": "23d3e68f45c4bc400c1719eb200ea77e97b4e57c",
      "parents": [
        "ec87a7cb3e617c972f27cd72744cefabe459190f",
        "728a68eefce8ffcc086338f8f027d0a7bb5a6cbc"
      ],
      "author": {
        "name": "Lucas Lin",
        "email": "lucaslin@google.com",
        "time": "Wed Mar 20 21:15:34 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 20 21:15:34 2019 -0700"
      },
      "message": "Merge \"Improve partial connectivity\" am: f6cbc2d533 am: 270e77d930\nam: 728a68eefc\n\nChange-Id: I25f9d056c26bf947c2e09516da51b627c3da9685\n"
    },
    {
      "commit": "f6cbc2d533ad1099618e5d4dc3276241beb401d2",
      "tree": "c90e3643dc5bd5d93381db3d6ef3b8c168517c56",
      "parents": [
        "4bcdd78d560f2a2da1bbba2ecb6e4f868a4a36e3",
        "4333899a41a4c071a1bcbf214392836f7cecdb24"
      ],
      "author": {
        "name": "Lucas Lin",
        "email": "lucaslin@google.com",
        "time": "Thu Mar 21 03:34:30 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 21 03:34:30 2019 +0000"
      },
      "message": "Merge \"Improve partial connectivity\""
    },
    {
      "commit": "0e88ebfb2821ecdd1444e3aea8db3e4bd9754ee0",
      "tree": "5e033faee554b8aff5cf40d617ba8b15011fbdee",
      "parents": [
        "a2bae195ae87aacfb3021e2b14fba1ebbd03a969"
      ],
      "author": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Mar 21 10:18:07 2019 +0800"
      },
      "committer": {
        "name": "Chiachang Wang",
        "email": "chiachangwang@google.com",
        "time": "Thu Mar 21 10:18:07 2019 +0800"
      },
      "message": "Add network stack proto\n\nBug: 128887306\nTest: Build pass\nChange-Id: Iec48037771f2729fcbf741eb1c16edf08dbc70a4\n"
    },
    {
      "commit": "8e7b924cf8b0400ca0ea59094135203cc1248cd3",
      "tree": "1c68e8a46836360c51e2f73148147c77874f3156",
      "parents": [
        "cdc0da732d41b7f8ef891324b73999e54da3aa60"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Mon Mar 18 11:01:42 2019 -0700"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Wed Mar 20 14:36:42 2019 -0700"
      },
      "message": "Renamed the variable\n\nChanged nrs (stands for NetworkRegistrationState) to\nnri (stands for NetworkRegistrationInfo).\n\nTest: Build\nBug: 127657991\nMerged-In: I4deb1271818019465c55b59cd4a4a8029b514697\nChange-Id: I4deb1271818019465c55b59cd4a4a8029b514697\n(cherry picked from commit 1746d2582ab0f8fc904f5799c2a989d5277b30e4)\n"
    },
    {
      "commit": "4333899a41a4c071a1bcbf214392836f7cecdb24",
      "tree": "59f3e8a45c3e90c58dbacef7021a5403be74d255",
      "parents": [
        "13f15b3752982474ef61f6baa31bfdb4177accb0"
      ],
      "author": {
        "name": "lucaslin",
        "email": "lucaslin@google.com",
        "time": "Wed Mar 20 18:21:59 2019 +0800"
      },
      "committer": {
        "name": "lucaslin",
        "email": "lucaslin@google.com",
        "time": "Wed Mar 20 18:21:59 2019 +0800"
      },
      "message": "Improve partial connectivity\n\nImprove the design and fix some nits.\n\nBug: 113450764\nTest: 1. Build pass\n      2. atest FrameworksNetTests\n      3. atest NetworkStackTests\n      4. Change captive_portal_https_url to https://invalid.com\n      to simulate partial connectivity.\nChange-Id: Ia56645841d00d2ed8406cfeacb86a4a27fd58650\n"
    },
    {
      "commit": "74867d16614f1ab5b71fe425f791b93aeaf16fe8",
      "tree": "26418ab95d04ca48e6f566c4c3e1d12a509a6c00",
      "parents": [
        "1a80ff943dec702993dfe735614225ec4202a381",
        "9a4ae2c3f1bd7e54dd338cce0d4119731fbbb78b"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 20 09:45:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 20 09:45:37 2019 +0000"
      },
      "message": "Merge changes from topic \"framework-no-networkstack-aidl\"\n\n* changes:\n  Remove the framework dependency on netd_aidl_parcelables-java.\n  Move TcpKeepalivePacketData out of the framework.\n  Stop using netd parcelables in the framework.\n"
    },
    {
      "commit": "ae1ef49436b70cecc858b96f85dea4d151cdc25f",
      "tree": "f5e727e22c45cce270bd46d7134b10bee73cd454",
      "parents": [
        "2656b3d4cce7ed5e6e5cc1d608c420267f1ad193"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 20 17:29:10 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Mar 20 17:29:10 2019 +0900"
      },
      "message": "Fix targetSdkVersion for NetworkStack\n\ntargetSdkVersion was set to 28 in aosp/916713, however this was broken\nby the manifest refactor in aosp/923338: the targetSdk is not preserved\nin the manifest merge.\n\nTest: aapt dump badging shows targetSdkVersion 28\nChange-Id: I7d06b141856e96ef011db32094bfc62a8cd1b350\n"
    },
    {
      "commit": "a3f811a547813d462b49288175eb1774bf354146",
      "tree": "af80082818af22ea55e72f95d059a961605cce0e",
      "parents": [
        "b90ad24f99ed651cdc885eb611f43d169c729528"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Mar 19 00:24:19 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 20 08:56:31 2019 +0900"
      },
      "message": "Move TcpKeepalivePacketData out of the framework.\n\nThis class is not used in framework.jar, only in services.jar.\nMove it out of the framework so framework.jar can stop depending\non the NetworkStack stable AIDL interfaces.\n\nThis should really under com.android.server as well, but that\u0027s\na cross-project change to be done in another CL.\n\nTest: m\nBug: 128804404\nChange-Id: Ib2805f7fcc516a5f6989c252365d1c95b8042703\nMerged-In: Ib2805f7fcc516a5f6989c252365d1c95b8042703\n"
    },
    {
      "commit": "b90ad24f99ed651cdc885eb611f43d169c729528",
      "tree": "964b6ec960104423ef800d8f69c050422a8faf68",
      "parents": [
        "f0a67227c45d3571cc88510979567ecbb97a6c41"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Mar 18 23:50:34 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 20 08:56:24 2019 +0900"
      },
      "message": "Stop using netd parcelables in the framework.\n\nThe only actual users of these classes are in services.jar, not\nin frameworks.jar. The only reason the framework depends on them\nis that the code that converts to and from stable parcelables is\ncurrently in the framework. Move that code to services and cut\nthe dependency.\n\nThese classes aren\u0027t used in the networkstack app so they don\u0027t\nneed to be in shared. They also can\u0027t be in shared because the\nclasses are not in the SDK. So put the conversion functions\ndirectly inside their only user (NetworkManagementService).\n\nAlso remove the jarjar rules that rename the classes for use by\nthe NetworkStack app.\n\nThis does not actually remove the dependency from the build file,\nthat will be done in a future CL.\n\nBug: 128804404\nTest: builds, boots\nTest: atest FrameworksNetTests android.net.cts.ConnectivityManagerTest HostsideVpnTests\nChange-Id: I027d50ba56091f5558f45e6e08f32e5912b2a82a\nMerged-In: I027d50ba56091f5558f45e6e08f32e5912b2a82a\n"
    },
    {
      "commit": "27e59c575c0a91da2efe0385657879a65e6fae6e",
      "tree": "baeefcaf46b5fe4d523f615653d586399b585823",
      "parents": [
        "cc7f1db9709e461588ed0c0251c0d9744525d02f"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Mar 19 00:24:19 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 20 00:49:33 2019 +0900"
      },
      "message": "Move TcpKeepalivePacketData out of the framework.\n\nThis class is not used in framework.jar, only in services.jar.\nMove it out of the framework so framework.jar can stop depending\non the NetworkStack stable AIDL interfaces.\n\nThis should really under com.android.server as well, but that\u0027s\na cross-project change to be done in another CL.\n\nTest: m\nBug: 128804404\nChange-Id: Ib2805f7fcc516a5f6989c252365d1c95b8042703\n"
    }
  ],
  "next": "cc7f1db9709e461588ed0c0251c0d9744525d02f"
}
