package org.snmp4j.agent.mo.snmp.smi;

import java.util.Arrays;
import org.snmp4j.smi.Integer32;
import org.snmp4j.smi.OctetString;
import org.snmp4j.smi.Variable;

/* JADX INFO: loaded from: classes.dex */
public class EnumerationConstraint implements ValueConstraint {
    private int[] allowedValues;

    public EnumerationConstraint(int[] iArr) {
        int[] iArr2 = new int[iArr.length];
        this.allowedValues = iArr2;
        System.arraycopy(iArr, 0, iArr2, 0, iArr.length);
        Arrays.sort(this.allowedValues);
    }

    @Override // org.snmp4j.agent.mo.snmp.smi.ValueConstraint
    public int validate(Variable variable) {
        if (variable instanceof Integer32) {
            return Arrays.binarySearch(this.allowedValues, ((Integer32) variable).getValue()) < 0 ? 10 : 0;
        }
        if (!(variable instanceof OctetString)) {
            return 7;
        }
        OctetString octetString = (OctetString) variable;
        int[] iArr = this.allowedValues;
        if (octetString.length() > (iArr.length > 0 ? (iArr[iArr.length - 1] / 8) + 1 : 0)) {
            return 8;
        }
        for (int i2 = 0; i2 < octetString.length(); i2++) {
            byte b = octetString.get(i2);
            for (int i3 = 0; i3 < 8; i3++) {
                if (((1 << (7 - i3)) & b) > 0 && Arrays.binarySearch(this.allowedValues, (i2 * 8) + i3) < 0) {
                    return 10;
                }
            }
        }
        return 0;
    }
}
