diff options
author | Lorenzo Colitti <lorenzo@google.com> | 2014-05-16 23:52:52 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-05-16 23:52:52 +0000 |
commit | 1bc91f0d2e3a4469a0a7dbc546c0b61d2fd88552 (patch) | |
tree | 3b6588af4df88ac17eef98bc8a6e8b6039c20564 /services/core/java/com | |
parent | c5baa188068bac4c71ffdca62f09134a59f87454 (diff) | |
parent | 43b76dfddbfe2a27a0658dbca8632a9b1dc8d6ff (diff) | |
download | frameworks_base-1bc91f0d2e3a4469a0a7dbc546c0b61d2fd88552.zip frameworks_base-1bc91f0d2e3a4469a0a7dbc546c0b61d2fd88552.tar.gz frameworks_base-1bc91f0d2e3a4469a0a7dbc546c0b61d2fd88552.tar.bz2 |
Merge "Stop clatd when starting the Nat464Xlat service."
Diffstat (limited to 'services/core/java/com')
-rw-r--r-- | services/core/java/com/android/server/connectivity/Nat464Xlat.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/connectivity/Nat464Xlat.java b/services/core/java/com/android/server/connectivity/Nat464Xlat.java index 3884ab0..096ab66 100644 --- a/services/core/java/com/android/server/connectivity/Nat464Xlat.java +++ b/services/core/java/com/android/server/connectivity/Nat464Xlat.java @@ -74,6 +74,14 @@ public class Nat464Xlat extends BaseNetworkObserver { mIsStarted = false; mIsRunning = false; mLP = new LinkProperties(); + + // If this is a runtime restart, it's possible that clatd is already + // running, but we don't know about it. If so, stop it. + try { + if (mNMService.isClatdStarted()) { + mNMService.stopClatd(); + } + } catch(RemoteException e) {} // Well, we tried. } /** @@ -198,13 +206,13 @@ public class Nat464Xlat extends BaseNetworkObserver { NetworkUtils.resetConnections( CLAT_INTERFACE_NAME, NetworkUtils.RESET_IPV4_ADDRESSES); + mBaseLP.removeStackedLink(mLP); + updateConnectivityService(); } Slog.i(TAG, "interface " + CLAT_INTERFACE_NAME + " removed, mIsRunning = " + mIsRunning + " -> false"); mIsRunning = false; - mBaseLP.removeStackedLink(mLP); mLP.clear(); - updateConnectivityService(); Slog.i(TAG, "mLP = " + mLP); } } |