Commit Graph

1796 Commits

Author SHA1 Message Date
Android Build Merger (Role)
373cfa75c0 [automerger] Adjust URI host parsing to stop on \ character. am: fa3afbd0e7 am: 97668ae137 am: fddbf1b6b2 am: d3c0db66b9
Change-Id: If07298bb4ecf8a55391a014568a3ea264358b0e9
2018-01-31 11:20:21 +00:00
Android Build Merger (Role)
d3c0db66b9 [automerger] Adjust URI host parsing to stop on \ character. am: fa3afbd0e7 am: 97668ae137 am: fddbf1b6b2
Change-Id: I3fd20a3ee5eaa6be1c1989f13d40aed34136557e
2018-01-31 11:20:15 +00:00
Android Build Merger (Role)
fddbf1b6b2 [automerger] Adjust URI host parsing to stop on \ character. am: fa3afbd0e7 am: 97668ae137
Change-Id: Ic336b5fafebabdd4a5ad4d775a96d76739189a09
2018-01-31 11:20:08 +00:00
Android Build Merger (Role)
97668ae137 [automerger] Adjust URI host parsing to stop on \ character. am: fa3afbd0e7
Change-Id: I20336a5786e753e6941b9a784068480475415110
2018-01-31 11:19:56 +00:00
Adam Vartanian
fa3afbd0e7 Adjust URI host parsing to stop on \ character.
The WHATWG URL parsing algorithm [1] used by browsers says that for
"special" URL schemes (which is basically all commonly-used
hierarchical schemes, including http, https, ftp, and file), the host
portion ends if a \ character is seen, whereas this class previously
continued to consider characters part of the hostname.  This meant
that a malicious URL could be seen as having a "safe" host when viewed
by an app but navigate to a different host when passed to a browser.

[1] https://url.spec.whatwg.org/#host-state

Bug: 71360761
Test: vogar frameworks/base/core/tests/coretests/src/android/net/UriTest.java (on NYC branch)
Test: cts -m CtsNetTestCases (on NYC branch)
Change-Id: Id53f7054d1be8d59bbcc7e219159e59a2425106e
2018-01-31 11:14:45 +00:00
Adam Vartanian
240b55de2c Adjust Uri host parsing to use last instead of first @. am: cd6228dd37 am: 6a9c7c4814 am: 4158c9fbf3 am: eee677386e
am: 49e5fca362

Change-Id: Id6f38542623d768bebcfae7e79e8e49450329037
2017-11-07 21:41:55 +00:00
Adam Vartanian
49e5fca362 Adjust Uri host parsing to use last instead of first @. am: cd6228dd37 am: 6a9c7c4814 am: 4158c9fbf3
am: eee677386e

Change-Id: Ifd94d94c5376a6b4f1174aa7c2c8bb6d40199d89
2017-11-07 21:29:27 +00:00
Adam Vartanian
eee677386e Adjust Uri host parsing to use last instead of first @. am: cd6228dd37 am: 6a9c7c4814
am: 4158c9fbf3

Change-Id: I61bc0f5471d8f7a9a59136f320d465f2ee81b518
2017-11-07 21:02:07 +00:00
Adam Vartanian
4158c9fbf3 Adjust Uri host parsing to use last instead of first @. am: cd6228dd37
am: 6a9c7c4814

Change-Id: I80bedf58833511d336839df9f17daf65cfebfacf
2017-11-07 20:51:02 +00:00
Adam Vartanian
6a9c7c4814 Adjust Uri host parsing to use last instead of first @.
am: cd6228dd37

Change-Id: I5db66a5a2073acaffe0560999c914a78df362c51
2017-11-07 20:41:28 +00:00
Adam Vartanian
cd6228dd37 Adjust Uri host parsing to use last instead of first @.
Malformed authority segments can currently cause the parser to produce
a hostname that doesn't match the hostname produced by the WHATWG URL
parsing algorithm* used by browsers, which means that a URL could be seen
as having a "safe" host when checked by an Android app but actually visit
a different host when passed to a browser.  The WHATWG URL parsing
algorithm always produces a hostname based on the last @ in the authority
segment, so we do the same.

* https://url.spec.whatwg.org/#authority-state resets the "buffer", which
  is being used to build up the host name, each time an @ is found, so it
  has the effect of using the content between the final @ and the end
  of the authority section as the hostname.

Bug: 68341964
Test: vogar android.net.UriTest (on NYC branch)
Test: cts -m CtsNetTestCases (on NYC branch)
Change-Id: Idca79f35a886de042c94d6ab66787c2e98ac8376
2017-11-07 15:51:53 +00:00
Paul Jensen
94c8855da6 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434 am: 42a5983364 am: 75095e6f02 am: 7c625e1938 am: 54a62d5feb am: a5a2c88fb3
am: 7ff57eaff9

* commit '7ff57eaff95fd4cdb3cc80f8e420b469f0656bb8':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I80187f003e437678786f0740f23e76543890b9bc
2016-05-26 15:22:55 +00:00
Paul Jensen
7ff57eaff9 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434 am: 42a5983364 am: 75095e6f02 am: 7c625e1938 am: 54a62d5feb
am: a5a2c88fb3

* commit 'a5a2c88fb3ac43315575de94696c837cb6b88c35':
  Don't pass URL path and username/password to PAC scripts

Change-Id: Ia33d40ae5d4b6ee0cd3cfcdc8587d6002603f128
2016-05-26 15:13:07 +00:00
Paul Jensen
a5a2c88fb3 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434 am: 42a5983364 am: 75095e6f02 am: 7c625e1938
am: 54a62d5feb

* commit '54a62d5febc8771f65221db3dd5c6e08f3288eb8':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I1da24c02fbf85a7f0fd3ea7a86ad3a34389000e8
2016-05-26 15:02:46 +00:00
Paul Jensen
54a62d5feb Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434 am: 42a5983364 am: 75095e6f02
am: 7c625e1938

* commit '7c625e1938f28cf2a455fb1f4ab71dca99341b3d':
  Don't pass URL path and username/password to PAC scripts

Change-Id: If2e068e47e6efd4b8ad7abc7fb358860b188a380
2016-05-26 14:50:37 +00:00
Paul Jensen
7c625e1938 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434 am: 42a5983364
am: 75095e6f02

* commit '75095e6f02b13d070bb74b019ab6392f0f7b1105':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I0da4c878a1bd78837abc40a3ab332c6a1e781d3e
2016-05-26 14:35:08 +00:00
Paul Jensen
75095e6f02 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141 am: 6c35cf2434
am: 42a5983364

* commit '42a59833648243a8ac3aec7adf7f4ca0d3babdd1':
  Don't pass URL path and username/password to PAC scripts

Change-Id: Id92ff5deed707c029fc6d5806aff2a324961c2ec
2016-05-26 14:13:16 +00:00
Paul Jensen
42a5983364 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff am: bb27626141
am: 6c35cf2434

* commit '6c35cf2434ca373196b16620455f8f234b63d594':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I9bbca312129011822fc5ea95682bac5ca4258ced
2016-05-26 14:01:19 +00:00
Paul Jensen
6c35cf2434 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff am: 8940d2b0ff
am: bb27626141

* commit 'bb2762614181a0ee03554a96c070ea1006d7263c':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I9e4d3282765dec1554955b9f72484e9d7e2d6594
2016-05-26 13:44:37 +00:00
Paul Jensen
bb27626141 Merge "Don\'t pass URL path and username/password to PAC scripts" into klp-dev am: af0b4466ff
am: 8940d2b0ff

* commit '8940d2b0ff2fb5a9cc9e12be8a7959670e4390ac':
  Don't pass URL path and username/password to PAC scripts

Change-Id: I03d6273d7ddaecac071ab3d1207d3d684e80159e
2016-05-26 13:37:24 +00:00
Paul Jensen
08ec0e53b8 Don't pass URL path and username/password to PAC scripts
The URL path could contain credentials that apps don't want exposed
to a potentially malicious PAC script.

Bug: 27593919
Change-Id: I4bb0362fc91f70ad47c4c7453d77d6f9a1e8eeed
2016-04-29 10:57:13 +00:00
Sharvil Nanavati
cd8bb276f2 DO NOT MERGE ANYWHERE Add a NetworkTemplate matcher for ConnectivityManager#TYPE_PROXY.
Change-Id: I48c0a7bc39e2efcc5b4120a4fa2ecf6dfd54ac27
2016-03-24 00:23:38 +00:00
Akshay Thakker
eae2b8978f Merge "Exit getAllValidScorers early if not the primary." into mnc-dr-dev
am: ae31e13ae8

* commit 'ae31e13ae8785c627ac781a565fa41bc982cfb99':
  Exit getAllValidScorers early if not the primary.
2016-02-14 22:27:20 +00:00
Jeremy Joslin
44d550c2d1 Exit getAllValidScorers early if not the primary.
This fixes the crash that occurs when getAllValidScorers() is invoked by
a non-primary user when a scorer is active.

BUG: 23040221
Change-Id: I42c9e18d74389be3191258ca5626f2c433ca7cc7
(cherry picked from commit 5b294b45d0)
2016-02-12 23:50:22 +00:00
Jeremy Joslin
5b294b45d0 Exit getAllValidScorers early if not the primary.
This fixes the crash that occurs when getAllValidScorers() is invoked by
a non-primary user when a scorer is active.

BUG: 23040221
Change-Id: I42c9e18d74389be3191258ca5626f2c433ca7cc7
2016-01-05 17:44:05 -08:00
Lorenzo Colitti
bdc458048a Merge "Reinstate CHANGE_NETWORK_STATE as a normal permission." into mnc-dr-dev
am: 809dcade99

* commit '809dcade9906001f6aa51a68aa783e20bb1d7c0d':
  Reinstate CHANGE_NETWORK_STATE as a normal permission.
2015-10-22 06:18:43 +00:00
Lorenzo Colitti
809dcade99 Merge "Reinstate CHANGE_NETWORK_STATE as a normal permission." into mnc-dr-dev 2015-10-22 06:15:05 +00:00
Lorenzo Colitti
d542705066 Reinstate CHANGE_NETWORK_STATE as a normal permission.
This is a partial revert of http://ag/738523 , but not a full
revert because M apps that have gone through the WRITE_SETTINGS
route to obtain permission to change network state should
continue to have permission to do so.

Specifically:

1. Change the protection level of CHANGE_NETWORK_STATE back from
   "signature|preinstalled|appop|pre23" to "normal". This allows
   apps that declare CHANGE_NETWORK_STATE in their manifest to
   acquire it, even if they target the M SDK or above.
2. Change the ConnectivityManager permission checks so that they
   first check CHANGE_NETWORK_STATE, and then ask Settings
   if the app has the WRITE_SETTINGS runtime permission.
3. Slightly simplify the code in the Settings provider code that
   deals specifically with the ability to change network state.
4. Make the ConnectivityService permissions checks use the
   ConnectivityManager code to avoid code duplication.
5. Update the ConnectivityManager public Javadoc to list both
   CHANGE_NETWORK_STATE and WRITE_SETTINGS.

Bug: 21588539
Bug: 23597341
Change-Id: Ic06a26517c95f9ad94183f6d126fd0de45de346e
2015-10-22 08:33:45 +09:00
Jeff Sharkey
5d7604323f Merge "Ignore network policies with missing IMSI." into mnc-dr-dev
am: 38463bb950

* commit '38463bb950390a7b50fb07a990d9ed6990d07539':
  Ignore network policies with missing IMSI.
2015-10-20 17:32:57 +00:00
Jeff Sharkey
56859f323c Ignore network policies with missing IMSI.
In rare cases, we might have created a network policy before an IMSI
was available.  Because this policy is persisted, and we incorrectly
think that it always applies, we end up annoying the user when data
usage goes over the 2GB default warning threshold.

This patch fixes the network matching logic to ignore these empty
network policies when present.

Bug: 24972775
Change-Id: Id26499b6716121dddf0f2c05b848b0bed5995e72
2015-10-19 16:52:08 -07:00
Jeff Sharkey
7f6d8754e6 am a03ecf7d: Merge "Push firewall rules up to ConnectivityService." into mnc-dr-dev
* commit 'a03ecf7d7c8ff2844caf5feecc6d29f1f7346ff9':
  Push firewall rules up to ConnectivityService.
2015-10-12 16:39:34 +00:00
Jeff Sharkey
a03ecf7d7c Merge "Push firewall rules up to ConnectivityService." into mnc-dr-dev 2015-10-12 16:34:19 +00:00
Lorenzo Colitti
647ec7f80e am 4e4d59ee: Connect the DHCP UDP socket to the server.
* commit '4e4d59eeef86fa8560d35c00168869b0a066f962':
  Connect the DHCP UDP socket to the server.
2015-10-11 13:43:34 +00:00
Lorenzo Colitti
4e4d59eeef Connect the DHCP UDP socket to the server.
This makes it so that the socket cannot receive datagrams from
anybody except the DHCP server. This does not improve security,
because we never read from the UDP socket anyway, but it does
make ListeningPortsTest pass.

Bug: 23906864
Bug: 23933386
Change-Id: Ib090273a417f7eb2ac1ee3309260249b72fb8345
2015-10-11 16:06:11 +09:00
Paul Jensen
5ebe8e26f2 am 4cbfe331: am 773d71e7: am 962c3a0f: am ece4ac21: Merge "Don\'t mark NetworkRequests restricted when they don\'t have restricted caps" into lmp-dev
* commit '4cbfe3316fd1105b697a9838ef7bafaebf5080a2':
  Don't mark NetworkRequests restricted when they don't have restricted caps
2015-09-23 11:33:18 +00:00
Paul Jensen
554cecea4c am 10a7d744: am 96cd7c14: am 635f8711: am a9e98343: Merge "Fix NOT_RESTRICTED network capability and enforce it." into lmp-dev
* commit '10a7d7449dae2aabf4f22f980e7efabf274a939a':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-09-23 11:33:13 +00:00
Paul Jensen
4cbfe3316f am 773d71e7: am 962c3a0f: am ece4ac21: Merge "Don\'t mark NetworkRequests restricted when they don\'t have restricted caps" into lmp-dev
* commit '773d71e7c45d12810267bb24735360da6e5b258d':
  Don't mark NetworkRequests restricted when they don't have restricted caps
2015-09-23 11:21:27 +00:00
Paul Jensen
10a7d7449d am 96cd7c14: am 635f8711: am a9e98343: Merge "Fix NOT_RESTRICTED network capability and enforce it." into lmp-dev
* commit '96cd7c14b5e4a82727f7b56bbdf6cfafda0f17b6':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-09-23 11:21:22 +00:00
Paul Jensen
773d71e7c4 am 962c3a0f: am ece4ac21: Merge "Don\'t mark NetworkRequests restricted when they don\'t have restricted caps" into lmp-dev
* commit '962c3a0f2dd46d55ea591671c0a90c1c40214af7':
  Don't mark NetworkRequests restricted when they don't have restricted caps
2015-09-23 11:13:48 +00:00
Paul Jensen
96cd7c14b5 am 635f8711: am a9e98343: Merge "Fix NOT_RESTRICTED network capability and enforce it." into lmp-dev
* commit '635f871132449bea7489f6a61276979beeee5591':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-09-23 11:13:40 +00:00
Paul Jensen
962c3a0f2d am ece4ac21: Merge "Don\'t mark NetworkRequests restricted when they don\'t have restricted caps" into lmp-dev
* commit 'ece4ac2105d18d8d7b6296d6de3fdd5641c35258':
  Don't mark NetworkRequests restricted when they don't have restricted caps
2015-09-23 11:06:32 +00:00
Paul Jensen
635f871132 am a9e98343: Merge "Fix NOT_RESTRICTED network capability and enforce it." into lmp-dev
* commit 'a9e98343146244b71e236d82c95a8d0fa30a41c1':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-09-23 11:06:27 +00:00
Erik Kline
c89f3a4833 am 7aa79efe: Grab a wakelock while doing ARP/ND probing
* commit '7aa79efe80b790eef61ac355c0ce6c7b606e6f78':
  Grab a wakelock while doing ARP/ND probing
2015-09-21 12:00:25 +00:00
Erik Kline
7aa79efe80 Grab a wakelock while doing ARP/ND probing
Bug: 23197666
Change-Id: I5bf6e83b37fcd924f5f8e750f65bb5061f931e56
2015-09-21 14:59:05 +09:00
Jeff Sharkey
dc988061ac Push firewall rules up to ConnectivityService.
getActiveNetworkInfo() and friends already know how to augment their
results to help apps detect when network access is blocked.  This
change wires up the new app-idle and device-idle firewall rules to
be reported through these APIs.

This also causes other platform tools like DownloadManager and
SyncManager to respect these new policies.

Bug: 24050462
Change-Id: Id9517b0b70be7e3ca2ab27bed8049db916e4d829
2015-09-14 15:49:36 -07:00
Lorenzo Colitti
0bc356687e am 017223ac: Merge changes from topic \'packet-keepalive-fixes\' into mnc-dr-dev
* commit '017223acda5bfe16cb87d0a33d72dd28d2fccd3b':
  Require the new PACKET_KEEPALIVE_OFFLOAD permission.
  Add an error code for generic hardware error.
  Fix bugs and crashes in PacketKeepalive API.
  Add tests for the PacketKeepalive API.
  Add a PACKET_KEEPALIVE_OFFLOAD permission.
  Use a CountDownLatch instead of sleep() in NetworkFactory tests.
  Get rid of shortSleep() in ConnectivityServiceTest.
  Make ConnectivityServiceTest a bit more readable.
2015-09-09 00:26:53 +00:00
Lorenzo Colitti
9d1284eba7 Add an error code for generic hardware error.
This is necessary because currently the wifi code just returns
whatever hardware-specific integer it gets back from the HAL,
which is bad because that will be interpreted by the caller as
one of the error codes defined in this class.

In parallel we'll also modify the wifi code to return this new
error code if the hardware returns an error.

Bug: 21405946
Change-Id: Ic9fa1193ced69a4e7ff543e397221c89b10a5a13
2015-09-09 00:16:57 +09:00
Lorenzo Colitti
ffa390b6f3 Use a CountDownLatch instead of sleep() in NetworkFactory tests.
This makes testNetworkFactoryRequests 2-3 times faster.

Bug: 22606153
Change-Id: I9657b6929e77f23ec811d0ab57b2ba974f0b6a69
2015-09-08 16:41:47 +09:00
Robert Greenwalt
e686d9b3aa am 8e285f2f: Merge "Cut down some logs." into mnc-dr-dev
* commit '8e285f2f74460b1b4bc9ba0faa3c94540f5ab92c':
  Cut down some logs.
2015-09-04 22:06:00 +00:00
Robert Greenwalt
a9ebeeff03 Cut down some logs.
bug:23623327
Change-Id: I737d4e6c384bf4da62c65ad2abe0c9b5dca0067a
2015-09-03 17:53:42 -07:00