package org.snmp4j.smi;

import com.seewo.sdk.model.SDKKeyboardCode;
import java.io.IOException;
import java.io.OutputStream;
import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.StringTokenizer;
import org.snmp4j.agent.mo.snmp.DisplayString;
import org.snmp4j.asn1.BERInputStream;
import org.snmp4j.log.LogAdapter;
import org.snmp4j.log.LogFactory;

/* JADX INFO: loaded from: classes.dex */
public abstract class TransportIpAddress extends IpAddress {
    private static final LogAdapter logger = LogFactory.getLogger(TransportIpAddress.class);
    static final long serialVersionUID = 695596530250216972L;
    protected int port = 0;

    public static Address parse(String str) {
        UdpAddress udpAddress = new UdpAddress();
        if (udpAddress.parseAddress(str)) {
            return udpAddress;
        }
        return null;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.asn1.BERSerializable
    public void decodeBER(BERInputStream bERInputStream) throws IOException {
        OctetString octetString = new OctetString();
        octetString.decodeBER(bERInputStream);
        try {
            setTransportAddress(octetString);
        } catch (Exception e2) {
            logger.error("Wrong encoding of TransportAddress");
            throw new IOException("Wrong encoding of TransportAddress: " + e2.getMessage());
        }
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.asn1.BERSerializable
    public void encodeBER(OutputStream outputStream) throws IOException {
        new OctetString(getValue()).encodeBER(outputStream);
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.smi.Variable
    public boolean equals(Object obj) {
        return (obj instanceof TransportIpAddress) && super.equals(obj) && ((TransportIpAddress) obj).getPort() == this.port;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.asn1.BERSerializable
    public int getBERLength() {
        return getValue().length;
    }

    @Override // org.snmp4j.smi.AbstractVariable, org.snmp4j.asn1.BERSerializable
    public int getBERPayloadLength() {
        return getBERLength();
    }

    public int getPort() {
        return this.port;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.smi.Variable
    public int getSyntax() {
        return 4;
    }

    public byte[] getValue() {
        int iIntValue;
        int i2;
        byte[] address = getInetAddress().getAddress();
        if (getInetAddress() instanceof Inet6Address) {
            try {
                iIntValue = ((Number) Inet6Address.class.getMethod("getScopeId", new Class[0]).invoke((Inet6Address) getInetAddress(), new Object[0])).intValue();
                i2 = 4;
            } catch (Exception unused) {
                iIntValue = 0;
                i2 = 0;
            }
        } else {
            iIntValue = 0;
            i2 = 0;
        }
        byte[] bArr = new byte[address.length + 2 + i2];
        System.arraycopy(address, 0, bArr, 0, address.length);
        int length = address.length;
        if (i2 > 0) {
            int i3 = length + 1;
            bArr[length] = (byte) (((-16777216) & iIntValue) >> 24);
            int i4 = i3 + 1;
            bArr[i3] = (byte) ((16711680 & iIntValue) >> 16);
            int i5 = i4 + 1;
            bArr[i4] = (byte) ((65280 & iIntValue) >> 8);
            length = i5 + 1;
            bArr[i5] = (byte) (iIntValue & DisplayString.MAX_SIZE);
        }
        int i6 = this.port;
        bArr[length] = (byte) ((i6 >> 8) & DisplayString.MAX_SIZE);
        bArr[length + 1] = (byte) (i6 & DisplayString.MAX_SIZE);
        return bArr;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.smi.Variable
    public int hashCode() {
        return super.hashCode() ^ (this.port + 2);
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.Address
    public boolean isValid() {
        int i2;
        return super.isValid() && (i2 = this.port) >= 0 && i2 <= 65535;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.Address
    public boolean parseAddress(String str) {
        try {
            StringTokenizer stringTokenizer = new StringTokenizer(str, "/");
            String strNextToken = stringTokenizer.nextToken();
            String strNextToken2 = stringTokenizer.nextToken();
            if (super.parseAddress(strNextToken)) {
                this.port = Integer.parseInt(strNextToken2);
                return true;
            }
        } catch (Exception unused) {
        }
        return false;
    }

    public void setPort(int i2) {
        if (i2 >= 0 && i2 <= 65535) {
            this.port = i2;
            return;
        }
        throw new IllegalArgumentException("Illegal port specified: " + i2);
    }

    public void setTransportAddress(OctetString octetString) throws UnknownHostException {
        byte[] value = octetString.substring(0, octetString.length() - 2).getValue();
        if (value.length == 8 || value.length == 20) {
            int length = value.length - 4;
            byte[] bArr = new byte[length];
            System.arraycopy(value, 0, bArr, 0, length);
            try {
                setInetAddress((InetAddress) Inet6Address.class.getMethod("getByAddress", String.class, byte[].class, Integer.TYPE).invoke(Inet6Address.class, null, bArr, Integer.valueOf((value[length] << SDKKeyboardCode.FUNCTION_KEY_BOARD_U) + ((value[length + 1] & 255) << 16) + ((value[length + 2] & 255) << 8) + (value[length + 3] & 255))));
            } catch (Exception unused) {
                logger.warn("Java < 1.5 does not support scoped IPv6 addresses, ignoring scope ID for " + octetString);
                setInetAddress(InetAddress.getByAddress(bArr));
            }
        } else {
            setInetAddress(InetAddress.getByAddress(value));
        }
        int i2 = (octetString.get(octetString.length() - 2) & 255) << 8;
        this.port = i2;
        this.port = i2 + (octetString.get(octetString.length() - 1) & 255);
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, org.snmp4j.smi.Variable
    public String toString() {
        return super.toString() + "/" + this.port;
    }

    @Override // org.snmp4j.smi.IpAddress, org.snmp4j.smi.AbstractVariable, java.lang.Comparable
    public int compareTo(Variable variable) {
        int iCompareTo = super.compareTo(variable);
        return iCompareTo == 0 ? this.port - ((TransportIpAddress) variable).getPort() : iCompareTo;
    }
}
