package org.apache.kerberos.kerb.spec.pa.otp;
import org.apache.haox.asn1.type.Asn1FieldInfo;
import org.apache.haox.asn1.type.Asn1Integer;
import org.apache.haox.asn1.type.Asn1OctetString;
import org.apache.haox.asn1.type.Asn1Utf8String;
import org.apache.kerberos.kerb.spec.KerberosString;
import org.apache.kerberos.kerb.spec.KrbSequenceType;
import org.apache.kerberos.kerb.spec.pa.pkinit.AlgorithmIdentifiers;
/**
OTP-TOKENINFO ::= SEQUENCE {
flags [0] OTPFlags,
otp-vendor [1] UTF8String OPTIONAL,
otp-challenge [2] OCTET STRING (SIZE(1..MAX)) OPTIONAL,
otp-length [3] Int32 OPTIONAL,
otp-format [4] OTPFormat OPTIONAL,
otp-tokenID [5] OCTET STRING OPTIONAL,
otp-algID [6] AnyURI OPTIONAL,
supportedHashAlg [7] SEQUENCE OF AlgorithmIdentifier OPTIONAL,
iterationCount [8] Int32 OPTIONAL
}
*/
public class OtpTokenInfo extends KrbSequenceType {
private static int FLAGS = 0;
private static int OTP_VENDOR = 1;
private static int OTP_CHALLENGE = 2;
private static int OTP_LENGTH = 3;
private static int OTP_FORMAT = 4;
private static int OTP_TOKEN_ID = 5;
private static int OTP_ALG_ID = 6;
private static int SUPPORTED_HASH_ALG = 7;
private static int ITERATION_COUNT = 8;
static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
new Asn1FieldInfo(FLAGS, Asn1OctetString.class, true),
new Asn1FieldInfo(OTP_VENDOR, Asn1Utf8String.class),
new Asn1FieldInfo(OTP_CHALLENGE, Asn1OctetString.class, true),
new Asn1FieldInfo(OTP_LENGTH, KerberosString.class),
new Asn1FieldInfo(OTP_FORMAT, Asn1OctetString.class, true),
new Asn1FieldInfo(OTP_TOKEN_ID, Asn1Utf8String.class),
new Asn1FieldInfo(OTP_ALG_ID, Asn1OctetString.class, true),
new Asn1FieldInfo(SUPPORTED_HASH_ALG, AlgorithmIdentifiers.class),
new Asn1FieldInfo(ITERATION_COUNT, Asn1Integer.class, true)
};
public OtpTokenInfo() {
super(fieldInfos);
}
}