summaryrefslogtreecommitdiff
path: root/common/framework/com/android/net/module/util/InetAddressUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'common/framework/com/android/net/module/util/InetAddressUtils.java')
-rw-r--r--common/framework/com/android/net/module/util/InetAddressUtils.java97
1 files changed, 0 insertions, 97 deletions
diff --git a/common/framework/com/android/net/module/util/InetAddressUtils.java b/common/framework/com/android/net/module/util/InetAddressUtils.java
deleted file mode 100644
index 40fc59fb..00000000
--- a/common/framework/com/android/net/module/util/InetAddressUtils.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2020 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.net.module.util;
-
-import android.annotation.NonNull;
-import android.os.Parcel;
-import android.util.Log;
-
-
-import java.net.Inet6Address;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-
-/**
- * Collection of utilities to interact with {@link InetAddress}
- * @hide
- */
-public class InetAddressUtils {
-
- private static final String TAG = InetAddressUtils.class.getSimpleName();
- private static final int INET6_ADDR_LENGTH = 16;
-
- /**
- * Writes an InetAddress to a parcel. The address may be null. This is likely faster than
- * calling writeSerializable.
- * @hide
- */
- public static void parcelInetAddress(Parcel parcel, InetAddress address, int flags) {
- byte[] addressArray = (address != null) ? address.getAddress() : null;
- parcel.writeByteArray(addressArray);
- if (address instanceof Inet6Address) {
- final Inet6Address v6Address = (Inet6Address) address;
- final boolean hasScopeId = v6Address.getScopeId() != 0;
- parcel.writeBoolean(hasScopeId);
- if (hasScopeId) parcel.writeInt(v6Address.getScopeId());
- }
-
- }
-
- /**
- * Reads an InetAddress from a parcel. Returns null if the address that was written was null
- * or if the data is invalid.
- * @hide
- */
- public static InetAddress unparcelInetAddress(Parcel in) {
- byte[] addressArray = in.createByteArray();
- if (addressArray == null) {
- return null;
- }
-
- try {
- if (addressArray.length == INET6_ADDR_LENGTH) {
- final boolean hasScopeId = in.readBoolean();
- final int scopeId = hasScopeId ? in.readInt() : 0;
- return Inet6Address.getByAddress(null /* host */, addressArray, scopeId);
- }
-
- return InetAddress.getByAddress(addressArray);
- } catch (UnknownHostException e) {
- return null;
- }
- }
-
- /**
- * Create a Inet6Address with scope id if it is a link local address. Otherwise, returns the
- * original address.
- */
- public static Inet6Address withScopeId(@NonNull final Inet6Address addr, int scopeid) {
- if (!addr.isLinkLocalAddress()) {
- return addr;
- }
- try {
- return Inet6Address.getByAddress(null /* host */, addr.getAddress(),
- scopeid);
- } catch (UnknownHostException impossible) {
- Log.wtf(TAG, "Cannot construct scoped Inet6Address with Inet6Address.getAddress("
- + addr.getHostAddress() + "): ", impossible);
- return null;
- }
- }
-
- private InetAddressUtils() {}
-}