commit | 42d473c7f71f83d03fbd425c0ae53e2b328acdbc | [log] [tgz] |
---|---|---|
author | Chiachang Wang <chiachangwang@google.com> | Mon Jul 03 09:36:17 2023 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Mon Jul 03 09:36:17 2023 +0000 |
tree | 7d2fb6ea97bc48fe3dfad8aef5a0ce0932cb53ee | |
parent | 07d7d0b08f11c98ccea0ba22932e8ab9678367a7 [diff] | |
parent | 57a62800b8566c07e1c23af718b9d4de1fa663ae [diff] |
Merge "Add methods to provide clat v4 source address" am: be2f4047fe am: 7b23df5512 am: 57a62800b8 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2643474 Change-Id: I86143fce3cd88c6c65c9132067550a7b6cd14131 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/service/src/com/android/server/connectivity/Nat464Xlat.java b/service/src/com/android/server/connectivity/Nat464Xlat.java index bbf9cef..f9e07fd 100644 --- a/service/src/com/android/server/connectivity/Nat464Xlat.java +++ b/service/src/com/android/server/connectivity/Nat464Xlat.java
@@ -583,6 +583,21 @@ return mIPv6Address; } + /** + * Get the generated v4 address of clat. + */ + @Nullable + public Inet4Address getClatv4SrcAddress() { + // Variables in Nat464Xlat should only be accessed from handler thread. + ensureRunningOnHandlerThread(); + if (!isStarted()) return null; + + final LinkAddress v4Addr = getLinkAddress(mIface); + if (v4Addr == null) return null; + + return (Inet4Address) v4Addr.getAddress(); + } + private void ensureRunningOnHandlerThread() { if (mNetwork.handler().getLooper().getThread() != Thread.currentThread()) { throw new IllegalStateException(
diff --git a/service/src/com/android/server/connectivity/NetworkAgentInfo.java b/service/src/com/android/server/connectivity/NetworkAgentInfo.java index 08c1455..845c04c 100644 --- a/service/src/com/android/server/connectivity/NetworkAgentInfo.java +++ b/service/src/com/android/server/connectivity/NetworkAgentInfo.java
@@ -1043,6 +1043,14 @@ } /** + * Get the generated v4 address of clat. + */ + @Nullable + public Inet4Address getClatv4SrcAddress() { + return clatd.getClatv4SrcAddress(); + } + + /** * Translate the input v4 address to v6 clat address. */ @Nullable