Merge "Fix a socket leak" into main am: 3f48f42cb9

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2761471

Change-Id: I46486257bb8c6fe26364838f3b0b9b81ad9cfc5d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Jean Chalard 2023-09-26 04:06:43 +00:00 • committed by Automerger Merge Worker
commit b0f705240d

View file

@ -340,8 +340,9 @@ public class NetworkDiagnostics {
@TargetApi(Build.VERSION_CODES.S)
private int getMtuForTarget(InetAddress target) {
final int family = target instanceof Inet4Address ? AF_INET : AF_INET6;
FileDescriptor socket = null;
try {
final FileDescriptor socket = Os.socket(family, SOCK_DGRAM, 0);
socket = Os.socket(family, SOCK_DGRAM, 0);
mNetwork.bindSocket(socket);
Os.connect(socket, target, 0);
if (family == AF_INET) {
@ -352,6 +353,8 @@ public class NetworkDiagnostics {
} catch (ErrnoException | IOException e) {
Log.e(TAG, "Can't get MTU for destination " + target, e);
return -1;
} finally {
IoUtils.closeQuietly(socket);
}
}