History log of /frameworks/base/core/java/android/net/NetworkAgent.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2324373124f0ba4e59ba6d3de9e274f2fa28cff0 06-Apr-2016 Paul Jensen <pauljensen@google.com> If Internet probe is redirected, pass redirect destination to NetworkAgent.

Transport may use the redirect to make additional determination about network
state.

Bug: 25203607
Change-Id: I07d8918f13fdcbe0b6fd757536bfc1850a2a244f
/frameworks/base/core/java/android/net/NetworkAgent.java
f21b4dc1d6e9cc3fc164828e9eba33445c0801d0 18-Mar-2016 Paul Jensen <pauljensen@google.com> Move ApfFilter from ConnectivityService to IpManager

There's a few advantages to having ApfFilter in IpManager:
1. If things go wrong, crashing a particular transport is less bad then
crashing ConnectivityService. We also don't want to use
ConnectivityService as a dumping ground for transport-specific logic.
2. This makes implementing WifiManager.MulticastLock a lot simpler and
safer because enabling/disabling it doesn't have to go through the
NetworkAgent, which could risk various races (e.g. installing a filter
into the wrong WiFi network).
3. IpManager is the ultimate source for LinkProperties for a particular
transport and since ApfFilter uses the LinkProperties it's better to
have it closely paired with the IpManager. Likewise, ApfFilter needs
to know the APF capabilities of the transport, so having it in
the transport avoids having to parcel this information through the
NetworkAgent.

Bug: 26238573
Change-Id: I99b85f2b64972f0e7572170ec5d1926081aa3429
/frameworks/base/core/java/android/net/NetworkAgent.java
578a76e7de77492ac33e407fff4fb9a2f5550d8a 14-Jan-2016 Paul Jensen <pauljensen@google.com> Have ConnectivityService install packet filters when possible

Listen for ICMP6 router advertisements on networks that support
packet filters. Construct packet filters and install them to
ignore redundant future ICMP6 router advertisements.

Bug: 26238573
Change-Id: If78300b9fda257c21f3ee6533e1da7de9f897cb4
/frameworks/base/core/java/android/net/NetworkAgent.java
bf10991d76ce6674726a668939be300cae150130 29-Jul-2015 Paul Jensen <pauljensen@google.com> resolved conflicts for merge of 30813942 to mnc-dr-dev

Change-Id: I8b33797528f16596f0d350ad38458baa51fcacf6
9d598e115f306e4f0860638c5647a959ac1320c5 13-Jul-2015 Erik Kline <ek@google.com> Pass signal strength thresholds inside a Bundle

Bug: 21407651
Change-Id: I2c80e89441e2eb15a246cb1fa9347f886cefa80f
/frameworks/base/core/java/android/net/NetworkAgent.java
c3f21f3b8b01508f5dc01b2e5fa4c3d652bb67bb 06-Jul-2015 Lorenzo Colitti <lorenzo@google.com> Support NetworkCallbacks based on signal strength.

Bug: 21405941
Change-Id: I2ed8a5aeb8dac464a4305671ed22abcacb485bc9
/frameworks/base/core/java/android/net/NetworkAgent.java
8bf977d562b8f7261cf964bdf045b22bdbd92b7d 15-Jun-2015 Lorenzo Colitti <lorenzo@google.com> ConnectivityManager API for for packet keepalives.

Bug: 21405946
Change-Id: Ie1f8f8bee684fe2bb1092a9f1bc9f5dc29b1defc
/frameworks/base/core/java/android/net/NetworkAgent.java
f95d220308492550b7bd6c019e4c725a810cd050 13-Jul-2015 Paul Jensen <pauljensen@google.com> Disable WiFi autojoin when user decides via "Stay connected?" dialog

If the user selects "No" in the "Stay connected?" dialog box:
1. Disable autojoining that network in the future, and
2. Disassociate from that network.

Bug:22187193
Change-Id: I14dc9236c57e3ab7d3ec95edc906787cbfbf3c9f
/frameworks/base/core/java/android/net/NetworkAgent.java
95ce803da7f3b9cc9e0f4c1d67d783e4fc9187c9 02-May-2015 fenglu <fenglu@google.com> LCE feature enhancement

- space pollLceData calls every 500ms
- cluster multiple pending pollLceData calls into one
- cherry pick from mwd to mnc-dev

Bug: 21307957
Change-Id: I04513011db3ae29af02bd54fe91cb8e0d4ab9f12
/frameworks/base/core/java/android/net/NetworkAgent.java
b15e72b83c56d771f0fb1453b73e2fca6b09cce8 20-Mar-2015 fenglu <fenglu@google.com> LCE service implementation - connectivity side

Change-Id: If11bd99c44c7dc8d2aa2bc05a10e04421739baa6
/frameworks/base/core/java/android/net/NetworkAgent.java
cb43ebb3604d45da8677b8d19c935f0ace08ea53 16-Apr-2015 Vinit Deshpande <vinitd@google.com> Merge "am b5e0cfb..557d2f5 from mirror-m-wireless-internal-release"
e03c3c7edf54854ed22adf1e55b27b2408c4c66a 03-Apr-2015 Lorenzo Colitti <lorenzo@google.com> Prompt if a network without an Internet connection is selected

When a network is explicitlySelected, keep it connected but do
not automatically switch to it. Instead, attempt to validate it,
and if 8 seconds have passed and the network is not yet
validated, prompt the user asking whether to switch to it anyway.

Bug: 20081183
Change-Id: I03a8459eb39979e3dc8e94662b85a44605dd7e69
/frameworks/base/core/java/android/net/NetworkAgent.java
80047faad914c9b9b4966d6b58fc22800c3fcebc 15-Apr-2015 Vinit Deshpande <vinitd@google.com> am b5e0cfb..557d2f5 from mirror-m-wireless-internal-release

557d2f5 Merge "Add ConnectivityManager.reportNetworkConnectivity() API" into m-wireless-dev
ab5267a Fix onLost/onFound logic in isSettingsAndFilterComboAllowed
bfd17b7 Add ConnectivityManager.reportNetworkConnectivity() API
238e0f9 OBEX Over L2CAP + SDP search API for BT profiles
31a94f4 Add ConnectivityManager.getActiveNetwork(). Rework NetID allocation in ConnectivityService so registerNetworkAgent() can return the allocated NetID.
bf18bed Merge "Non-functional code cleanup of ConnectivityService." into m-wireless-dev
db8784e Merge "Cleanup of Video Call pause functionality." into m-wireless-dev
e75b9e3 Non-functional code cleanup of ConnectivityService.
e593d0a Onfound onlost feature.
0326f58 Merge "API for config app." into m-wireless-dev
e9b056f API for config app.
d5351e7 RTT framework interface update
582b868 Unhide Network.openConnection(URL, Proxy).
0d719ca Fix typos in ConnectivityManager documentation.

Change-Id: Ib4c88f6d7ad1b24227b032555c62a5804194384b
31a94f48bf8014cf6a1127bd23cf9a8541a9abed 13-Feb-2015 Paul Jensen <pauljensen@google.com> Add ConnectivityManager.getActiveNetwork().
Rework NetID allocation in ConnectivityService so registerNetworkAgent() can
return the allocated NetID.

Bug: 19416463
Change-Id: I68e395552cf27422c80b4dfae5db5d56a0d68f5d
/frameworks/base/core/java/android/net/NetworkAgent.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/core/java/android/net/NetworkAgent.java
60446165d8bd44f72cec8d0c5583a688369fa660 19-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Block address families with routes, not NetworkAgent side channel

Now that we support unreachable routes, use those to block
address families on VPNs. This is a much more elegant solution.
Also update LinkProperties when IP addresses are added and
removed, fixing a TODO.

Bug: 17462989
Change-Id: Ib749d84710dca70d672350b9f129bb91419ec77e
/frameworks/base/core/java/android/net/NetworkAgent.java
e73cc4646bed3926024c9f54ca59e3a82a97b56c 08-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Add NetworkAgent event for ExplicitlySelected

Lets Wifi tell us when the user selected this AP vs auto-connected.

bug:17396168
Change-Id: I6e067ab62ed49040629aa31fe07ff880d3d542f0
/frameworks/base/core/java/android/net/NetworkAgent.java
49f63fbed4cd84f5da182c85e8b999037dc64f3b 13-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Report Network status to NetworkAgent.

Currently just valid/invalid based on NetworkMonitor findings.

Changed NetworkMonitor to start out in default state since starting in Offline causes
a spurious invalid report at creation time.

Added some logging.

bug:17395269
Change-Id: I9ae650b561834d8f8979033744d97df852e76df9
/frameworks/base/core/java/android/net/NetworkAgent.java
35f7a94c846cfdaa75ed6bc58ec37bdef7a09be8 09-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Don't accept score below 0.

Network Factories are allowed to go below, but networks need to be
constrained. Allowing the network to go below 0 meant that -1 could
sometimes leak through and foul the logic.

The core of 17361330 will be fixed when we stop sending scores for
listens to NetworkFactories, but it exposed this issue too. Summary:

1 - add a network listener. This isn't a request so it's not sent
to networks.
2 - alter your score (ethernet sets score to -1 when the link goes
down) (16:07:39.782)
3 - a bug in ConnectivityService causes score changes to get sent for
all network requests and network listeners causing NetworkFactories
to no see 2 entities. This bug will be fixed by a pending change
(https://googleplex-android-review.googlesource.com/#/c/540840/).
This causes the ethernet NetworkFactory to see two entities, both
served by networks of score -1. (16:07:39.989)
4 - disconnect Ethernet - this only sends 0 scores for known
requests, not network listeners. Had it been sent for both entities
they both would have evaluated that the networkfactory score (-1)
was lower than the request score (0) and both released their
refcount. (16:08:03.147)
5 - this means the listener is tracked by the EthernetNetworkFactory
with a score of -1 while the factory itself has a score of -1 so the
network release isn't called.

bug:17361330
Change-Id: Ife34ca0f9c233dd3c3df80f6fea580af43afcdeb
/frameworks/base/core/java/android/net/NetworkAgent.java
fc0c6890c675494b15cd847b20c5a5ede491fc3c 27-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Clean up Connectivity Logging.

bug:17285109
Change-Id: I61b98aa636996f8d4915fd954d49a22c20cfe9ab
/frameworks/base/core/java/android/net/NetworkAgent.java
42065ac64cba166dc0fe602957ea8fe80bf406e2 27-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Prohibit address families by default unless a VPN explicitly allows them.

Bug: 15972465
Change-Id: I3278d94536fefacc86390c1ba4231680f7be8589
/frameworks/base/core/java/android/net/NetworkAgent.java
8cd33ed84e94036a5e1201485af7603dc6fb0d9b 24-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Implement support for bypassable VPNs.

Bypassable VPNs grab all traffic by default (just like secure VPNs), but:
+ They allow all apps to choose other networks using the multinetwork APIs.
If these other networks are insecure ("untrusted"), they will enforce that the
app holds the necessary permissions, such as CHANGE_NETWORK_STATE.
+ They support consistent routing. If an app has an existing connection over
some other network when the bypassable VPN comes up, it's not interrupted.

Bug: 15347374
Change-Id: Iaee9c6f6fa8103215738570d2b65d3fcf10343f3
/frameworks/base/core/java/android/net/NetworkAgent.java
6bc2c2c34f2b23eae79ad733c97a691734055c4f 07-May-2014 Paul Jensen <pauljensen@google.com> Convert Vpn from NetworkStateTracker to NetworkAgent.

This eliminates the need for the ConnectivityService.VpnCallback class.
This requires shifting VPNs to the new "network" netd API.
VpnService.protect() is modified to no longer go through ConnectivityService.
NetworkCapabilities is extended to add a transport type for VPNs and a
capability requiring a non-VPN (so the default NetworkRequest isn't satisfied
by a VPN).

bug:15409918
Change-Id: Ic4498f1961582208add6f375ad16ce376ee9eb95
/frameworks/base/core/java/android/net/NetworkAgent.java
2ab9089dfa0c0526e8bf0aaade8a09dec021dc90 03-Jun-2014 vandwalle <vandwalle@google.com> remember and report network score

Change-Id: Iccb2ec603bc9c0d3cf1976d0cc3f343cb1096494
/frameworks/base/core/java/android/net/NetworkAgent.java
3192dec32180f56733e631c2d9ec62fa1359283d 27-May-2014 Robert Greenwalt <rgreenwalt@google.com> Refactor NetworkFactory.

Make NetworkFactory a concrete class and divide responsibilites between it and NetworkAgent.
Factory will track requests and by default give a single connect/disconnect api for ease
of use. Then NetworkAgent is created and destroyed as needed with very simple logic.

Change-Id: I401c14a6e5466f2fc63b04219b97ff85bb9af291
/frameworks/base/core/java/android/net/NetworkAgent.java
9a6a11ae1edc9ee883022345c167eb4b4641402b 23-May-2014 Lorenzo Colitti <lorenzo@google.com> Support disconnecting while trying to connect.

Currently, once a NetworkAgent has decided to connect, there's
no way to disconnect without first connecting and having
ConnectivityService tear down the connection. This is suboptimal
because it causes the transport to keep retrying even if it knows
that it will not be able to connect.

Instead, allow the transport to abort a connection request that's
in progress, as long as the agent is not yet registered with
ConnectivityService.

Also add locking to evalScores. evalScores should already have
been taking a lock, because it accesses member variables that are
also accessed by the send*methods.

Bug: 15295359
Change-Id: I913c341bdfc50be9c23b632399f53168e754c1c0
/frameworks/base/core/java/android/net/NetworkAgent.java
4064af844ca6e58dc2908525634c13c4be277eac 16-May-2014 Robert Greenwalt <rgreenwalt@google.com> Clean up when we switch networks.

Need to unhitch mNetworkForRequestId when a network is no longer
satisfying a request.

Change-Id: I3b3cde7dd92ec87a76ae7a0825ad22e892fa8fd5
/frameworks/base/core/java/android/net/NetworkAgent.java
7b81602f3c18df8a4ca0342c514af8f7e394c0d7 19-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Enabling internal msg apis

NetworkFactory and NetworkAgent. First trying with wifi and
getting rid of WifiStateTracker.

Conflicts:
api/current.txt
services/core/java/com/android/server/ConnectivityService.java

Change-Id: I7f0ec13d7d8988b32f3c6dc71f72012f3349fe02
/frameworks/base/core/java/android/net/NetworkAgent.java