You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by dr...@apache.org on 2015/01/12 14:06:29 UTC

[21/50] [abbrv] directory-kerberos git commit: Renaming packages in haox-kerb projects, using "apache"

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmor.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmor.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmor.java
deleted file mode 100644
index 6c86009..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmor.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- KrbFastArmor ::= SEQUENCE {
-     armor-type   [0] Int32,
-     -- Type of the armor.
-     armor-value  [1] OCTET STRING,
-     -- Value of the armor.
- }
- */
-public class KrbFastArmor extends KrbSequenceType {
-    private static int ARMOR_TYPE = 0;
-    private static int ARMOR_VALUE = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(ARMOR_TYPE, Asn1Integer.class),
-            new Asn1FieldInfo(ARMOR_VALUE, Asn1OctetString.class)
-    };
-
-    public KrbFastArmor() {
-        super(fieldInfos);
-    }
-
-    public ArmorType getArmorType() {
-        Integer value = getFieldAsInteger(ARMOR_TYPE);
-        return ArmorType.fromValue(value);
-    }
-
-    public void setArmorType(ArmorType armorType) {
-        setFieldAsInt(ARMOR_TYPE, armorType.getValue());
-    }
-
-    public byte[] getArmorValue() {
-        return getFieldAsOctets(ARMOR_VALUE);
-    }
-
-    public void setArmorValue(byte[] armorValue) {
-        setFieldAsOctets(ARMOR_VALUE, armorValue);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredRep.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredRep.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredRep.java
deleted file mode 100644
index 5203d26..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredRep.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.EncryptedData;
-
-/**
- KrbFastArmoredRep ::= SEQUENCE {
-    enc-fast-rep      [0] EncryptedData, -- KrbFastResponse --
-    -- The encryption key is the armor key in the request, and
-    -- the key usage number is KEY_USAGE_FAST_REP.
- }
- */
-public class KrbFastArmoredRep extends KrbSequenceType {
-    private static int ENC_FAST_REP = 0;
-
-    //private
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(ENC_FAST_REP, EncryptedData.class)
-    };
-
-    public KrbFastArmoredRep() {
-        super(fieldInfos);
-    }
-
-    public EncryptedData getEncFastRep() {
-        return getFieldAs(ENC_FAST_REP, EncryptedData.class);
-    }
-
-    public void setEncFastRep(EncryptedData encFastRep) {
-        setFieldAs(ENC_FAST_REP, encFastRep);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredReq.java
deleted file mode 100644
index 624c097..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastArmoredReq.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.CheckSum;
-import org.haox.kerb.spec.common.EncryptedData;
-
-/**
- KrbFastArmoredReq ::= SEQUENCE {
-     armor        [0] KrbFastArmor OPTIONAL,
-     -- Contains the armor that identifies the armor key.
-     -- MUST be present in AS-REQ.
-     req-checksum [1] Checksum,
-     -- For AS, contains the checksum performed over the type
-     -- KDC-REQ-BODY for the req-body field of the KDC-REQ
-     -- structure;
-     -- For TGS, contains the checksum performed over the type
-     -- AP-REQ in the PA-TGS-REQ padata.
-     -- The checksum key is the armor key, the checksum
-     -- type is the required checksum type for the enctype of
-     -- the armor key, and the key usage number is
-     -- KEY_USAGE_FAST_REQ_CHKSUM.
-     enc-fast-req [2] EncryptedData, -- KrbFastReq --
-     -- The encryption key is the armor key, and the key usage
-     -- number is KEY_USAGE_FAST_ENC.
- }
- */
-public class KrbFastArmoredReq extends KrbSequenceType {
-    private static int ARMOR = 0;
-    private static int REQ_CHECKSUM = 1;
-    private static int ENC_FAST_REQ = 2;
-
-    private KrbFastReq fastReq;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(ARMOR, KrbFastArmor.class),
-            new Asn1FieldInfo(REQ_CHECKSUM, CheckSum.class),
-            new Asn1FieldInfo(ENC_FAST_REQ, EncryptedData.class),
-    };
-
-    public KrbFastArmoredReq() {
-        super(fieldInfos);
-    }
-
-    public KrbFastArmor getArmor() {
-        return getFieldAs(ARMOR, KrbFastArmor.class);
-    }
-
-    public void setArmor(KrbFastArmor armor) {
-        setFieldAs(ARMOR, armor);
-    }
-
-    public CheckSum getReqChecksum() {
-        return getFieldAs(REQ_CHECKSUM, CheckSum.class);
-    }
-
-    public void setReqChecksum(CheckSum checkSum) {
-        setFieldAs(REQ_CHECKSUM, checkSum);
-    }
-
-    public KrbFastReq getFastReq() {
-        return fastReq;
-    }
-
-    public void setFastReq(KrbFastReq fastReq) {
-        this.fastReq = fastReq;
-    }
-
-    public EncryptedData getEncryptedFastReq() {
-        return getFieldAs(ENC_FAST_REQ, EncryptedData.class);
-    }
-
-    public void setEncryptedFastReq(EncryptedData encFastReq) {
-        setFieldAs(ENC_FAST_REQ, encFastReq);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastFinished.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastFinished.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastFinished.java
deleted file mode 100644
index a47e621..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastFinished.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.CheckSum;
-import org.haox.kerb.spec.common.EncryptedData;
-import org.haox.kerb.spec.pa.PaData;
-
-/**
- KrbFastFinished ::= SEQUENCE {
-     timestamp       [0] KerberosTime,
-     usec            [1] Microseconds,
-     -- timestamp and usec represent the time on the KDC when
-     -- the reply was generated.
-     crealm          [2] Realm,
-     cname           [3] PrincipalName,
-     -- Contains the client realm and the client name.
-     ticket-checksum [4] Checksum,
-     -- checksum of the ticket in the KDC-REP using the armor
-     -- and the key usage is KEY_USAGE_FAST_FINISH.
-     -- The checksum type is the required checksum type
-     -- of the armor key.
- }
- */
-public class KrbFastFinished extends KrbSequenceType {
-    private static int FAST_OPTIONS = 0;
-    private static int PADATA = 1;
-    private static int REQ_BODY = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(FAST_OPTIONS, KrbFastArmor.class),
-            new Asn1FieldInfo(PADATA, PaData.class),
-            new Asn1FieldInfo(REQ_BODY, EncryptedData.class),
-    };
-
-    public KrbFastFinished() {
-        super(fieldInfos);
-    }
-
-    public KrbFastArmor getArmor() {
-        return getFieldAs(FAST_OPTIONS, KrbFastArmor.class);
-    }
-
-    public void setArmor(KrbFastArmor armor) {
-        setFieldAs(FAST_OPTIONS, armor);
-    }
-
-    public CheckSum getReqChecksum() {
-        return getFieldAs(PADATA, CheckSum.class);
-    }
-
-    public void setReqChecksum(CheckSum checkSum) {
-        setFieldAs(PADATA, checkSum);
-    }
-
-    public EncryptedData getEncFastReq() {
-        return getFieldAs(REQ_BODY, EncryptedData.class);
-    }
-
-    public void setEncFastReq(EncryptedData encFastReq) {
-        setFieldAs(REQ_BODY, encFastReq);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastReq.java
deleted file mode 100644
index 6773df9..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastReq.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.EncryptedData;
-import org.haox.kerb.spec.pa.PaData;
-
-/**
- KrbFastReq ::= SEQUENCE {
-     fast-options [0] FastOptions,
-     -- Additional options.
-     padata       [1] SEQUENCE OF PA-DATA,
-     -- padata typed holes.
-     req-body     [2] KDC-REQ-BODY,
-     -- Contains the KDC request body as defined in Section
-     -- 5.4.1 of [RFC4120].
-     -- This req-body field is preferred over the outer field
-     -- in the KDC request.
- }
- */
-public class KrbFastReq extends KrbSequenceType {
-    private static int FAST_OPTIONS = 0;
-    private static int PADATA = 1;
-    private static int REQ_BODY = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(FAST_OPTIONS, KrbFastArmor.class),
-            new Asn1FieldInfo(PADATA, PaData.class),
-            new Asn1FieldInfo(REQ_BODY, EncryptedData.class),
-    };
-
-    public KrbFastReq() {
-        super(fieldInfos);
-    }
-
-    public KrbFastArmor getArmor() {
-        return getFieldAs(FAST_OPTIONS, KrbFastArmor.class);
-    }
-
-    public void setArmor(KrbFastArmor armor) {
-        setFieldAs(FAST_OPTIONS, armor);
-    }
-
-    public PaData getPaData() {
-        return getFieldAs(PADATA, PaData.class);
-    }
-
-    public void setPaData(PaData paData) {
-        setFieldAs(PADATA, paData);
-    }
-
-    public EncryptedData getEncFastReq() {
-        return getFieldAs(REQ_BODY, EncryptedData.class);
-    }
-
-    public void setEncFastReq(EncryptedData encFastReq) {
-        setFieldAs(REQ_BODY, encFastReq);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastResponse.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastResponse.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastResponse.java
deleted file mode 100644
index c569bd4..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/KrbFastResponse.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.EncryptionKey;
-import org.haox.kerb.spec.pa.PaData;
-
-/**
- KrbFastResponse ::= SEQUENCE {
-     padata         [0] SEQUENCE OF PA-DATA,
-     -- padata typed holes.
-     strengthen-key [1] EncryptionKey OPTIONAL,
-     -- This, if present, strengthens the reply key for AS and
-     -- TGS. MUST be present for TGS.
-     -- MUST be absent in KRB-ERROR.
-     finished       [2] KrbFastFinished OPTIONAL,
-     -- Present in AS or TGS reply; absent otherwise.
-     nonce          [3] UInt32,
-     -- Nonce from the client request.
- }
- */
-public class KrbFastResponse extends KrbSequenceType {
-    private static int PADATA = 0;
-    private static int STRENGTHEN_KEY = 1;
-    private static int FINISHED = 2;
-    private static int NONCE = 3;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PADATA, PaData.class),
-            new Asn1FieldInfo(STRENGTHEN_KEY, EncryptionKey.class),
-            new Asn1FieldInfo(FINISHED, KrbFastFinished.class),
-            new Asn1FieldInfo(NONCE, Asn1Integer.class)
-    };
-
-    public KrbFastResponse() {
-        super(fieldInfos);
-    }
-
-    public PaData getPaData() {
-        return getFieldAs(PADATA, PaData.class);
-    }
-
-    public void setPaData(PaData paData) {
-        setFieldAs(PADATA, paData);
-    }
-
-    public EncryptionKey getStrengthenKey() {
-        return getFieldAs(STRENGTHEN_KEY, EncryptionKey.class);
-    }
-
-    public void setStrengthenKey(EncryptionKey strengthenKey) {
-        setFieldAs(STRENGTHEN_KEY, strengthenKey);
-    }
-
-    public KrbFastFinished getFastFinished() {
-        return getFieldAs(FINISHED, KrbFastFinished.class);
-    }
-
-    public void setFastFinished(KrbFastFinished fastFinished) {
-        setFieldAs(FINISHED, fastFinished);
-    }
-
-    public int getNonce() {
-        return getFieldAsInt(NONCE);
-    }
-
-    public void setNonce(int nonce) {
-        setFieldAsInt(NONCE, nonce);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnEntry.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnEntry.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnEntry.java
deleted file mode 100644
index 8ab5ad6..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnEntry.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.pa.PaDataType;
-
-/**
- PA-AUTHENTICATION-SET-ELEM ::= SEQUENCE {
-     pa-type      [0] Int32,
-     pa-hint      [1] OCTET STRING OPTIONAL,
-     pa-value     [2] OCTET STRING OPTIONAL,
- }
- */
-public class PaAuthnEntry extends KrbSequenceType {
-    private static int PA_TYPE = 0;
-    private static int PA_HINT = 1;
-    private static int PA_VALUE = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PA_TYPE, Asn1Integer.class),
-            new Asn1FieldInfo(PA_HINT, Asn1OctetString.class),
-            new Asn1FieldInfo(PA_VALUE, Asn1OctetString.class)
-    };
-
-    public PaAuthnEntry() {
-        super(fieldInfos);
-    }
-
-    public PaAuthnEntry(PaDataType type, byte[] paData) {
-        this();
-        setPaType(type);
-        setPaValue(paData);
-    }
-
-    public PaDataType getPaType() {
-        Integer value = getFieldAsInteger(PA_TYPE);
-        return PaDataType.fromValue(value);
-    }
-
-    public void setPaType(PaDataType paDataType) {
-        setFieldAsInt(PA_TYPE, paDataType.getValue());
-    }
-
-    public byte[] getPaHint() {
-        return getFieldAsOctets(PA_HINT);
-    }
-
-    public void setPaHint(byte[] paHint) {
-        setFieldAsOctets(PA_HINT, paHint);
-    }
-
-    public byte[] getPaValue() {
-        return getFieldAsOctets(PA_VALUE);
-    }
-
-    public void setPaValue(byte[] paValue) {
-        setFieldAsOctets(PA_VALUE, paValue);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnSet.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnSet.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnSet.java
deleted file mode 100644
index 7b0a383..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaAuthnSet.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-import org.haox.kerb.spec.pa.PaDataEntry;
-
-/**
- PA-AUTHENTICATION-SET ::= SEQUENCE OF PA-AUTHENTICATION-SET-ELEM
- */
-public class PaAuthnSet extends KrbSequenceOfType<PaAuthnEntry> {
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastReply.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastReply.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastReply.java
deleted file mode 100644
index dd28e45..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastReply.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1Choice;
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-
-/**
- PA-FX-FAST-REPLY ::= CHOICE {
-    armored-data [0] KrbFastArmoredRep,
- }
- */
-public class PaFxFastReply extends Asn1Choice {
-    private static int ARMORED_DATA = 0;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(ARMORED_DATA, KrbFastArmoredRep.class)
-    };
-
-    public PaFxFastReply() {
-        super(fieldInfos);
-    }
-
-    public KrbFastArmoredRep getFastArmoredRep() {
-        return getFieldAs(ARMORED_DATA, KrbFastArmoredRep.class);
-    }
-
-    public void setFastArmoredRep(KrbFastArmoredRep fastArmoredRep) {
-        setFieldAs(ARMORED_DATA, fastArmoredRep);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastRequest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastRequest.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastRequest.java
deleted file mode 100644
index 85533f7..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/fast/PaFxFastRequest.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.haox.kerb.spec.fast;
-
-import org.apache.haox.asn1.type.Asn1Choice;
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-
-/**
- PA-FX-FAST-REQUEST ::= CHOICE {
-    armored-data [0] KrbFastArmoredReq,
- }
- */
-public class PaFxFastRequest extends Asn1Choice {
-    private static int ARMORED_DATA = 0;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(ARMORED_DATA, KrbFastArmoredReq.class)
-    };
-
-    public PaFxFastRequest() {
-        super(fieldInfos);
-    }
-
-    public KrbFastArmoredReq getFastArmoredReq() {
-        return getFieldAs(ARMORED_DATA, KrbFastArmoredReq.class);
-    }
-
-    public void setFastArmoredReq(KrbFastArmoredReq fastArmoredReq) {
-        setFieldAs(ARMORED_DATA, fastArmoredReq);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsRep.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsRep.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsRep.java
deleted file mode 100644
index becdddb..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsRep.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.common.KrbMessageType;
-
-/**
- AS-REP          ::= [APPLICATION 11] KDC-REP
- */
-public class AsRep extends KdcRep {
-
-    public AsRep() {
-        super(KrbMessageType.AS_REP);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsReq.java
deleted file mode 100644
index 4091ec0..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/AsReq.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.common.KrbMessageType;
-
-/**
- AS-REQ          ::= [APPLICATION 10] KDC-REQ
- */
-public class AsReq extends KdcReq {
-    public AsReq() {
-        super(KrbMessageType.AS_REQ);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncAsRepPart.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncAsRepPart.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncAsRepPart.java
deleted file mode 100644
index d204ce2..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncAsRepPart.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-/**
-EncASRepPart    ::= [APPLICATION 25] EncKDCRepPart
-*/
-public class EncAsRepPart extends EncKdcRepPart {
-    public static final int TAG = 25;
-
-    public EncAsRepPart() {
-        super(TAG);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncKdcRepPart.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncKdcRepPart.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncKdcRepPart.java
deleted file mode 100644
index 097f4a4..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncKdcRepPart.java
+++ /dev/null
@@ -1,158 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KerberosString;
-import org.haox.kerb.spec.KerberosTime;
-import org.haox.kerb.spec.KrbAppSequenceType;
-import org.haox.kerb.spec.common.EncryptionKey;
-import org.haox.kerb.spec.common.HostAddresses;
-import org.haox.kerb.spec.common.LastReq;
-import org.haox.kerb.spec.common.PrincipalName;
-import org.haox.kerb.spec.ticket.TicketFlags;
-
-/**
- EncKDCRepPart   ::= SEQUENCE {
- key             [0] EncryptionKey,
- last-req        [1] LastReq,
- nonce           [2] UInt32,
- key-expiration  [3] KerberosTime OPTIONAL,
- flags           [4] TicketFlags,
- authtime        [5] KerberosTime,
- starttime       [6] KerberosTime OPTIONAL,
- endtime         [7] KerberosTime,
- renew-till      [8] KerberosTime OPTIONAL,
- srealm          [9] Realm,
- sname           [10] PrincipalName,
- caddr           [11] HostAddresses OPTIONAL
- }
- */
-public abstract class EncKdcRepPart extends KrbAppSequenceType {
-    private static int KEY = 0;
-    private static int LAST_REQ = 1;
-    private static int NONCE = 2;
-    private static int KEY_EXPIRATION = 3;
-    private static int FLAGS = 4;
-    private static int AUTHTIME = 5;
-    private static int STARTTIME = 6;
-    private static int ENDTIME = 7;
-    private static int RENEW_TILL = 8;
-    private static int SREALM = 9;
-    private static int SNAME = 10;
-    private static int CADDR = 11;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(KEY, EncryptionKey.class),
-            new Asn1FieldInfo(LAST_REQ, LastReq.class),
-            new Asn1FieldInfo(NONCE, Asn1Integer.class),
-            new Asn1FieldInfo(KEY_EXPIRATION, KerberosTime.class),
-            new Asn1FieldInfo(FLAGS, TicketFlags.class),
-            new Asn1FieldInfo(AUTHTIME, KerberosTime.class),
-            new Asn1FieldInfo(STARTTIME, KerberosTime.class),
-            new Asn1FieldInfo(ENDTIME, KerberosTime.class),
-            new Asn1FieldInfo(RENEW_TILL, KerberosTime.class),
-            new Asn1FieldInfo(SREALM, KerberosString.class),
-            new Asn1FieldInfo(SNAME, PrincipalName.class),
-            new Asn1FieldInfo(CADDR, HostAddresses.class)
-    };
-
-    public EncKdcRepPart(int tagNo) {
-        super(tagNo, fieldInfos);
-    }
-
-    public EncryptionKey getKey() {
-        return getFieldAs(KEY, EncryptionKey.class);
-    }
-
-    public void setKey(EncryptionKey key) {
-        setFieldAs(KEY, key);
-    }
-
-    public LastReq getLastReq() {
-        return getFieldAs(LAST_REQ, LastReq.class);
-    }
-
-    public void setLastReq(LastReq lastReq) {
-        setFieldAs(LAST_REQ, lastReq);
-    }
-
-    public int getNonce() {
-        return getFieldAsInt(NONCE);
-    }
-
-    public void setNonce(int nonce) {
-        setFieldAsInt(NONCE, nonce);
-    }
-
-    public KerberosTime getKeyExpiration() {
-        return getFieldAsTime(KEY_EXPIRATION);
-    }
-
-    public void setKeyExpiration(KerberosTime keyExpiration) {
-        setFieldAs(KEY_EXPIRATION, keyExpiration);
-    }
-
-    public TicketFlags getFlags() {
-        return getFieldAs(FLAGS, TicketFlags.class);
-    }
-
-    public void setFlags(TicketFlags flags) {
-        setFieldAs(FLAGS, flags);
-    }
-
-    public KerberosTime getAuthTime() {
-        return getFieldAsTime(AUTHTIME);
-    }
-
-    public void setAuthTime(KerberosTime authTime) {
-        setFieldAs(AUTHTIME, authTime);
-    }
-
-    public KerberosTime getStartTime() {
-        return getFieldAsTime(STARTTIME);
-    }
-
-    public void setStartTime(KerberosTime startTime) {
-        setFieldAs(STARTTIME, startTime);
-    }
-
-    public KerberosTime getEndTime() {
-        return getFieldAsTime(ENDTIME);
-    }
-
-    public void setEndTime(KerberosTime endTime) {
-        setFieldAs(ENDTIME, endTime);
-    }
-
-    public KerberosTime getRenewTill() {
-        return getFieldAsTime(RENEW_TILL);
-    }
-
-    public void setRenewTill(KerberosTime renewTill) {
-        setFieldAs(RENEW_TILL, renewTill);
-    }
-
-    public String getSrealm() {
-        return getFieldAsString(SREALM);
-    }
-
-    public void setSrealm(String srealm) {
-        setFieldAsString(SREALM, srealm);
-    }
-
-    public PrincipalName getSname() {
-        return getFieldAs(SNAME, PrincipalName.class);
-    }
-
-    public void setSname(PrincipalName sname) {
-        setFieldAs(SNAME, sname);
-    }
-
-    public HostAddresses getCaddr() {
-        return getFieldAs(CADDR, HostAddresses.class);
-    }
-
-    public void setCaddr(HostAddresses caddr) {
-        setFieldAs(CADDR, caddr);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncTgsRepPart.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncTgsRepPart.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncTgsRepPart.java
deleted file mode 100644
index 23e8161..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/EncTgsRepPart.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-/**
- EncTGSRepPart   ::= [APPLICATION 26] EncKDCRepPart
- */
-public class EncTgsRepPart extends EncKdcRepPart {
-    public static final int TAG = 26;
-
-    public EncTgsRepPart() {
-        super(TAG);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOption.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOption.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOption.java
deleted file mode 100644
index 8d27321..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOption.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.KrbEnum;
-
-public enum KdcOption implements KrbEnum {
-    NONE(-1),
-    //RESERVED(0x80000000),
-    FORWARDABLE(0x40000000),
-    FORWARDED(0x20000000),
-    PROXIABLE(0x10000000),
-    PROXY(0x08000000),
-    ALLOW_POSTDATE(0x04000000),
-    POSTDATED(0x02000000),
-    //UNUSED(0x01000000),
-    RENEWABLE(0x00800000),
-    //UNUSED(0x00400000),
-    //RESERVED(0x00200000),
-    //RESERVED(0x00100000),
-    //RESERVED(0x00080000),
-    //RESERVED(0x00040000),
-    CNAME_IN_ADDL_TKT(0x00020000),
-    CANONICALIZE(0x00010000),
-    REQUEST_ANONYMOUS(0x00008000),
-    //RESERVED(0x00004000),
-    //RESERVED(0x00002000),
-    //RESERVED(0x00001000),
-    //RESERVED(0x00000800),
-    //RESERVED(0x00000400),
-    //RESERVED(0x00000200),
-    //RESERVED(0x00000100),
-    //RESERVED(0x00000080),
-    //RESERVED(0x00000040),
-    DISABLE_TRANSITED_CHECK(0x00000020),
-    RENEWABLE_OK(0x00000010),
-    ENC_TKT_IN_SKEY(0x00000008),
-    //UNUSED(0x00000004),
-    RENEW(0x00000002),
-    VALIDATE(0x00000001);
-
-    private final int value;
-
-    private KdcOption(int value) {
-        this.value = value;
-    }
-
-    @Override
-    public int getValue() {
-        return value;
-    }
-
-    public static KdcOption fromValue(int value) {
-        for (KrbEnum e : values()) {
-            if (e.getValue() == value) {
-                return (KdcOption) e;
-            }
-        }
-
-        return NONE;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOptions.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOptions.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOptions.java
deleted file mode 100644
index 5399417..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcOptions.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.common.KrbFlags;
-
-public class KdcOptions extends KrbFlags {
-
-    public KdcOptions() {
-        this(0);
-    }
-
-    public KdcOptions(int value) {
-        setFlags(value);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcRep.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcRep.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcRep.java
deleted file mode 100644
index c7e5307..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcRep.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KerberosString;
-import org.haox.kerb.spec.common.EncryptedData;
-import org.haox.kerb.spec.common.KrbMessage;
-import org.haox.kerb.spec.common.KrbMessageType;
-import org.haox.kerb.spec.common.PrincipalName;
-import org.haox.kerb.spec.pa.PaData;
-import org.haox.kerb.spec.ticket.Ticket;
-
-/**
- KDC-REP         ::= SEQUENCE {
- pvno            [0] INTEGER (5),
- msg-type        [1] INTEGER (11 -- AS -- | 13 -- TGS --),
- padata          [2] SEQUENCE OF PA-DATA OPTIONAL
- -- NOTE: not empty --,
- crealm          [3] Realm,
- cname           [4] PrincipalName,
- ticket          [5] Ticket,
- enc-part        [6] EncryptedData
- -- EncASRepPart or EncTGSRepPart,
- -- as appropriate
- }
- */
-public class KdcRep extends KrbMessage {
-    private static int PADATA = 2;
-    private static int CREALM = 3;
-    private static int CNAME = 4;
-    private static int TICKET = 5;
-    private static int ENC_PART = 6;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PVNO, Asn1Integer.class),
-            new Asn1FieldInfo(MSG_TYPE, Asn1Integer.class),
-            new Asn1FieldInfo(PADATA, PaData.class),
-            new Asn1FieldInfo(CREALM, KerberosString.class),
-            new Asn1FieldInfo(CNAME, PrincipalName.class),
-            new Asn1FieldInfo(TICKET, Ticket.class),
-            new Asn1FieldInfo(ENC_PART, EncryptedData.class)
-    };
-
-    private EncKdcRepPart encPart;
-
-    public KdcRep(KrbMessageType msgType) {
-        super(msgType, fieldInfos);
-    }
-
-    public PaData getPaData() {
-        return getFieldAs(PADATA, PaData.class);
-    }
-
-    public void setPaData(PaData paData) {
-        setFieldAs(PADATA, paData);
-    }
-
-    public PrincipalName getCname() {
-        return getFieldAs(CNAME, PrincipalName.class);
-    }
-
-    public void setCname(PrincipalName sname) {
-        setFieldAs(CNAME, sname);
-    }
-
-    public String getCrealm() {
-        return getFieldAsString(CREALM);
-    }
-
-    public void setCrealm(String realm) {
-        setFieldAs(CREALM, new KerberosString(realm));
-    }
-
-    public Ticket getTicket() {
-        return getFieldAs(TICKET, Ticket.class);
-    }
-
-    public void setTicket(Ticket ticket) {
-        setFieldAs(TICKET, ticket);
-    }
-
-    public EncryptedData getEncryptedEncPart() {
-        return getFieldAs(ENC_PART, EncryptedData.class);
-    }
-
-    public void setEncryptedEncPart(EncryptedData encryptedEncPart) {
-        setFieldAs(ENC_PART, encryptedEncPart);
-    }
-
-    public EncKdcRepPart getEncPart() {
-        return encPart;
-    }
-
-    public void setEncPart(EncKdcRepPart encPart) {
-        this.encPart = encPart;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReq.java
deleted file mode 100644
index a3d67b2..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReq.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.common.KrbMessage;
-import org.haox.kerb.spec.common.KrbMessageType;
-import org.haox.kerb.spec.pa.PaData;
-import org.haox.kerb.spec.pa.PaDataEntry;
-
-/**
- KDC-REQ         ::= SEQUENCE {
- -- NOTE: first tag is [1], not [0]
- pvno            [1] INTEGER (5) ,
- msg-type        [2] INTEGER (10 -- AS -- | 12 -- TGS --),
- padata          [3] SEQUENCE OF PA-DATA OPTIONAL
- -- NOTE: not empty --,
- req-encodeBody        [4] KDC-REQ-BODY
- }
- */
-public class KdcReq extends KrbMessage {
-    private static int PADATA = 2;
-    private static int REQ_BODY = 3;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PVNO, 1, Asn1Integer.class),
-            new Asn1FieldInfo(MSG_TYPE, 2, Asn1Integer.class),
-            new Asn1FieldInfo(PADATA, 3, PaData.class),
-            new Asn1FieldInfo(REQ_BODY, 4, KdcReqBody.class)
-    };
-
-    public KdcReq(KrbMessageType msgType) {
-        super(msgType, fieldInfos);
-    }
-
-    public PaData getPaData() {
-        return getFieldAs(PADATA, PaData.class);
-    }
-
-    public void setPaData(PaData paData) {
-        setFieldAs(PADATA, paData);
-    }
-
-    public void addPaData(PaDataEntry paDataEntry) {
-        if (getPaData() == null) {
-            setPaData(new PaData());
-        }
-        getPaData().addElement(paDataEntry);
-    }
-
-    public KdcReqBody getReqBody() {
-        return getFieldAs(REQ_BODY, KdcReqBody.class);
-    }
-
-    public void setReqBody(KdcReqBody reqBody) {
-        setFieldAs(REQ_BODY, reqBody);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReqBody.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReqBody.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReqBody.java
deleted file mode 100644
index f49c6be..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/KdcReqBody.java
+++ /dev/null
@@ -1,190 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KerberosString;
-import org.haox.kerb.spec.KerberosTime;
-import org.haox.kerb.spec.KrbIntegers;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.*;
-import org.haox.kerb.spec.ticket.Tickets;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- KDC-REQ-BODY    ::= SEQUENCE {
- kdc-options             [0] KDCOptions,
- cname                   [1] PrincipalName OPTIONAL
- -- Used only in AS-REQ --,
- realm                   [2] Realm
- -- Server's realm
- -- Also client's in AS-REQ --,
- sname                   [3] PrincipalName OPTIONAL,
- from                    [4] KerberosTime OPTIONAL,
- till                    [5] KerberosTime,
- rtime                   [6] KerberosTime OPTIONAL,
- nonce                   [7] UInt32,
- etype                   [8] SEQUENCE OF Int32 -- EncryptionType
- -- in preference order --,
- addresses               [9] HostAddresses OPTIONAL,
- enc-authorization-data  [10] EncryptedData OPTIONAL
- -- AuthorizationData --,
- additional-tickets      [11] SEQUENCE OF Ticket OPTIONAL
- -- NOTE: not empty
- }
- */
-public class KdcReqBody extends KrbSequenceType {
-    private static int KDC_OPTIONS = 0;
-    private static int CNAME = 1;
-    private static int REALM = 2;
-    private static int SNAME = 3;
-    private static int FROM = 4;
-    private static int TILL = 5;
-    private static int RTIME = 6;
-    private static int NONCE = 7;
-    private static int ETYPE = 8;
-    private static int ADDRESSES = 9;
-    private static int ENC_AUTHORIZATION_DATA = 10;
-    private static int ADDITIONAL_TICKETS = 11;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(KDC_OPTIONS, KdcOptions.class),
-            new Asn1FieldInfo(CNAME, PrincipalName.class),
-            new Asn1FieldInfo(REALM, KerberosString.class),
-            new Asn1FieldInfo(SNAME, PrincipalName.class),
-            new Asn1FieldInfo(FROM, KerberosTime.class),
-            new Asn1FieldInfo(TILL, KerberosTime.class),
-            new Asn1FieldInfo(RTIME, KerberosTime.class),
-            new Asn1FieldInfo(NONCE, Asn1Integer.class),
-            new Asn1FieldInfo(ETYPE, KrbIntegers.class),
-            new Asn1FieldInfo(ADDRESSES, HostAddresses.class),
-            new Asn1FieldInfo(ENC_AUTHORIZATION_DATA, AuthorizationData.class),
-            new Asn1FieldInfo(ADDITIONAL_TICKETS, Tickets.class)
-    };
-
-    public KdcReqBody() {
-        super(fieldInfos);
-    }
-
-    private AuthorizationData authorizationData;
-
-    public KerberosTime getFrom() {
-        return getFieldAs(FROM, KerberosTime.class);
-    }
-
-    public void setFrom(KerberosTime from) {
-        setFieldAs(FROM, from);
-    }
-
-    public KerberosTime getTill() {
-        return getFieldAs(TILL, KerberosTime.class);
-    }
-
-    public void setTill(KerberosTime till) {
-        setFieldAs(TILL, till);
-    }
-
-    public KerberosTime getRtime() {
-        return getFieldAs(RTIME, KerberosTime.class);
-    }
-
-    public void setRtime(KerberosTime rtime) {
-        setFieldAs(RTIME, rtime);
-    }
-
-    public int getNonce() {
-        return getFieldAsInt(NONCE);
-    }
-
-    public void setNonce(int nonce) {
-        setFieldAsInt(NONCE, nonce);
-    }
-
-    public List<EncryptionType> getEtypes() {
-        KrbIntegers values = getFieldAs(ETYPE, KrbIntegers.class);
-        if (values == null) {
-            return Collections.emptyList();
-        }
-
-        List<EncryptionType> results = new ArrayList<EncryptionType>();
-        for (Integer value : values.getValues()) {
-            results.add(EncryptionType.fromValue(value));
-        }
-        return results;
-    }
-
-    public void setEtypes(List<EncryptionType> etypes) {
-        List<Integer> values = new ArrayList<Integer>();
-        for (EncryptionType etype: etypes) {
-            values.add(etype.getValue());
-        }
-        KrbIntegers value = new KrbIntegers(values);
-        setFieldAs(ETYPE, value);
-    }
-
-    public HostAddresses getAddresses() {
-        return getFieldAs(ADDRESSES, HostAddresses.class);
-    }
-
-    public void setAddresses(HostAddresses addresses) {
-        setFieldAs(ADDRESSES, addresses);
-    }
-
-    public EncryptedData getEncryptedAuthorizationData() {
-        return getFieldAs(ENC_AUTHORIZATION_DATA, EncryptedData.class);
-    }
-
-    public void setEncryptedAuthorizationData(EncryptedData encAuthorizationData) {
-        setFieldAs(ENC_AUTHORIZATION_DATA, encAuthorizationData);
-    }
-
-    public AuthorizationData getAuthorizationData() {
-        return authorizationData;
-    }
-
-    public void setAuthorizationData(AuthorizationData authorizationData) {
-        this.authorizationData = authorizationData;
-    }
-
-    public Tickets getAdditionalTickets() {
-        return getFieldAs(ADDITIONAL_TICKETS, Tickets.class);
-    }
-
-    public void setAdditionalTickets(Tickets additionalTickets) {
-        setFieldAs(ADDITIONAL_TICKETS, additionalTickets);
-    }
-
-    public KdcOptions getKdcOptions() {
-        return getFieldAs(KDC_OPTIONS, KdcOptions.class);
-    }
-
-    public void setKdcOptions(KdcOptions kdcOptions) {
-        setFieldAs(KDC_OPTIONS, kdcOptions);
-    }
-
-    public PrincipalName getSname() {
-        return getFieldAs(SNAME, PrincipalName.class);
-    }
-
-    public void setSname(PrincipalName sname) {
-        setFieldAs(SNAME, sname);
-    }
-
-    public PrincipalName getCname() {
-        return getFieldAs(CNAME, PrincipalName.class);
-    }
-
-    public void setCname(PrincipalName cname) {
-        setFieldAs(CNAME, cname);
-    }
-
-    public String getRealm() {
-        return getFieldAsString(REALM);
-    }
-
-    public void setRealm(String realm) {
-        setFieldAs(REALM, new KerberosString(realm));
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsRep.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsRep.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsRep.java
deleted file mode 100644
index c88a1a1..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsRep.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.common.KrbMessageType;
-
-/**
- TGS-REP         ::= [APPLICATION 13] KDC-REP
- */
-public class TgsRep extends KdcRep {
-    public TgsRep() {
-        super(KrbMessageType.TGS_REP);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsReq.java
deleted file mode 100644
index 052d527..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/kdc/TgsReq.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.haox.kerb.spec.kdc;
-
-import org.haox.kerb.spec.common.KrbMessageType;
-
-/**
- TGS-REQ         ::= [APPLICATION 12] KDC-REQ
- */
-public class TgsReq extends KdcReq {
-
-    public TgsReq() {
-        super(KrbMessageType.TGS_REQ);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSet.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSet.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSet.java
deleted file mode 100644
index c8e0126..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSet.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-
-/**
- PA-AUTHENTICATION-SET ::= SEQUENCE OF PA-AUTHENTICATION-SET-ELEM
- */
-public class PaAuthenticationSet extends KrbSequenceOfType<PaAuthenticationSetElem> {
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSetElem.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSetElem.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSetElem.java
deleted file mode 100644
index 42967bb..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaAuthenticationSetElem.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-AUTHENTICATION-SET-ELEM ::= SEQUENCE {
-     pa-type      [0] Int32,
-     -- same as padata-type.
-     pa-hint      [1] OCTET STRING OPTIONAL,
-     pa-value     [2] OCTET STRING OPTIONAL
- }
- */
-public class PaAuthenticationSetElem extends KrbSequenceType {
-    private static int PA_TYPE = 0;
-    private static int PA_HINT = 1;
-    private static int PA_VALUE = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PA_TYPE, Asn1Integer.class),
-            new Asn1FieldInfo(PA_HINT, Asn1OctetString.class),
-            new Asn1FieldInfo(PA_VALUE, Asn1OctetString.class)
-    };
-
-    public PaAuthenticationSetElem() {
-        super(fieldInfos);
-    }
-
-    public PaDataType getPaType() {
-        Integer value = getFieldAsInteger(PA_TYPE);
-        return PaDataType.fromValue(value);
-    }
-
-    public void setPaType(PaDataType paDataType) {
-        setFieldAsInt(PA_TYPE, paDataType.getValue());
-    }
-
-    public byte[] getPaHint() {
-        return getFieldAsOctets(PA_HINT);
-    }
-
-    public void setPaHint(byte[] paHint) {
-        setFieldAsOctets(PA_HINT, paHint);
-    }
-
-    public byte[] getPaValue() {
-        return getFieldAsOctets(PA_VALUE);
-    }
-
-    public void setPaValue(byte[] paDataValue) {
-        setFieldAsOctets(PA_VALUE, paDataValue);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaData.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaData.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaData.java
deleted file mode 100644
index c1c18c5..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaData.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-
-/**
- PA-DATA         ::= SEQUENCE {
-     -- NOTE: first tag is [1], not [0]
-     padata-type     [1] Int32,
-     padata-value    [2] OCTET STRING -- might be encoded AP-REQ
- }
- */
-public class PaData extends KrbSequenceOfType<PaDataEntry> {
-
-    public PaDataEntry findEntry(PaDataType paType) {
-        for (PaDataEntry pae : getElements()) {
-            if (pae.getPaDataType() == paType) {
-                return pae;
-            }
-        }
-        return null;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataEntry.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataEntry.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataEntry.java
deleted file mode 100644
index 44a7006..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataEntry.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-DATA         ::= SEQUENCE {
-     -- NOTE: first tag is [1], not [0]
-     padata-type     [1] Int32,
-     padata-value    [2] OCTET STRING -- might be encoded AP-REQ
- }
- */
-public class PaDataEntry extends KrbSequenceType {
-    private static int PADATA_TYPE = 0;
-    private static int PADATA_VALUE = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PADATA_TYPE, 1, Asn1Integer.class),
-            new Asn1FieldInfo(PADATA_VALUE, 2, Asn1OctetString.class)
-    };
-
-    public PaDataEntry() {
-        super(fieldInfos);
-    }
-
-    public PaDataEntry(PaDataType type, byte[] paData) {
-        this();
-        setPaDataType(type);
-        setPaDataValue(paData);
-    }
-
-    public PaDataType getPaDataType() {
-        Integer value = getFieldAsInteger(PADATA_TYPE);
-        return PaDataType.fromValue(value);
-    }
-
-    public void setPaDataType(PaDataType paDataType) {
-        setFieldAsInt(PADATA_TYPE, paDataType.getValue());
-    }
-
-    public byte[] getPaDataValue() {
-        return getFieldAsOctets(PADATA_VALUE);
-    }
-
-    public void setPaDataValue(byte[] paDataValue) {
-        setFieldAsOctets(PADATA_VALUE, paDataValue);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataType.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataType.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataType.java
deleted file mode 100644
index 9b04ef7..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaDataType.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.haox.kerb.spec.KrbEnum;
-
-/**
- * From krb5.h
- */
-public enum PaDataType implements KrbEnum {
-    NONE                (0),
-    TGS_REQ              (1),
-    AP_REQ              (1),
-    ENC_TIMESTAMP       (2), // RFC 4120
-    PW_SALT             (3), // RFC 4120
-    ENC_ENCKEY        (4),  // Key encrypted within itself
-    ENC_UNIX_TIME       (5),  // timestamp encrypted in key. RFC 4120
-    ENC_SANDIA_SECURID (6),  // SecurId passcode. RFC 4120
-    SESAME              (7),  // Sesame project. RFC 4120
-    OSF_DCE             (8),  // OSF DCE. RFC 4120
-    CYBERSAFE_SECUREID (9),  // Cybersafe. RFC 4120
-    AFS3_SALT           (10), // Cygnus. RFC 4120, 3961
-    ETYPE_INFO          (11), // Etype info for preauth. RFC 4120
-    SAM_CHALLENGE       (12), // SAM/OTP
-    SAM_RESPONSE        (13), // SAM/OTP
-    PK_AS_REQ           (16), // PKINIT. RFC 4556
-    PK_AS_REP           (17), // PKINIT. RFC 4556
-    ETYPE_INFO2         (19), // RFC 4120
-    USE_SPECIFIED_KVNO  (20), // RFC 4120
-    SVR_REFERRAL_INFO   (20), // Windows 2000 referrals. RFC 6820
-    SAM_REDIRECT        (21), // SAM/OTP. RFC 4120
-    GET_FROM_TYPED_DATA (22), // Embedded in typed data. RFC 4120
-    REFERRAL            (25), // draft referral system
-    SAM_CHALLENGE_2     (30), // draft challenge system, updated
-    SAM_RESPONSE_2      (31), // draft challenge system, updated
-    /* MS-KILE */
-    PAC_REQUEST         (128), // include Windows PAC
-    FOR_USER            (129), // username protocol transition request
-    S4U_X509_USER       (130), // certificate protocol transition request
-    AS_CHECKSUM         (132), // AS checksum
-    FX_COOKIE           (133), // RFC 6113
-    FX_FAST             (136), // RFC 6113
-    FX_ERROR            (137), // RFC 6113
-    ENCRYPTED_CHALLENGE (138), // RFC 6113
-    OTP_CHALLENGE       (141), // RFC 6560 section 4.1
-    OTP_REQUEST         (142), // RFC 6560 section 4.2
-    OTP_PIN_CHANGE      (144), // RFC 6560 section 4.3
-    PKINIT_KX           (147), // RFC 6112
-    ENCPADATA_REQ_ENC_PA_REP   (149), // RFC 6806
-    TOKEN_REQUEST       (148), // TokenPreauth
-    TOKEN_CHALLENGE     (149);
-
-    private final int value;
-
-    private PaDataType(int value) {
-        this.value = value;
-    }
-
-    @Override
-    public int getValue() {
-        return value;
-    }
-
-    public static PaDataType fromValue(Integer value) {
-        if (value != null) {
-            for (KrbEnum e : values()) {
-                if (e.getValue() == value.intValue()) {
-                    return (PaDataType) e;
-                }
-            }
-        }
-
-        return NONE;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaEncTsEnc.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaEncTsEnc.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaEncTsEnc.java
deleted file mode 100644
index ec079fd..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/PaEncTsEnc.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package org.haox.kerb.spec.pa;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KerberosTime;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-ENC-TS-ENC           ::= SEQUENCE {
-    patimestamp     [0] KerberosTime -- client's time --,
-    pausec          [1] Microseconds OPTIONAL
- }
- */
-public class PaEncTsEnc extends KrbSequenceType {
-    private static int PATIMESTAMP = 0;
-    private static int PAUSEC = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PATIMESTAMP, 1, KerberosTime.class),
-            new Asn1FieldInfo(PAUSEC, 2, Asn1Integer.class)
-    };
-
-    public PaEncTsEnc() {
-        super(fieldInfos);
-    }
-
-    public KerberosTime getPaTimestamp() {
-        return getFieldAsTime(PATIMESTAMP);
-    }
-
-    public void setPaTimestamp(KerberosTime paTimestamp) {
-        setFieldAs(PATIMESTAMP, paTimestamp);
-    }
-
-    public int getPaUsec() {
-        return getFieldAsInt(PAUSEC);
-    }
-
-    public void setPaUsec(int paUsec) {
-        setFieldAsInt(PAUSEC, paUsec);
-    }
-
-    public KerberosTime getAllTime() {
-        KerberosTime paTimestamp = getPaTimestamp();
-        return paTimestamp.extend(getPaUsec() / 1000);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/OtpTokenInfo.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/OtpTokenInfo.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/OtpTokenInfo.java
deleted file mode 100644
index 4bbc8fd..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/OtpTokenInfo.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.haox.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.haox.kerb.spec.KerberosString;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.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);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/PaOtpChallenge.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/PaOtpChallenge.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/PaOtpChallenge.java
deleted file mode 100644
index 5c18904..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/otp/PaOtpChallenge.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.haox.kerb.spec.pa.otp;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.apache.haox.asn1.type.Asn1Utf8String;
-import org.haox.kerb.spec.KerberosString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-OTP-CHALLENGE ::= SEQUENCE {
-     nonce            [0] OCTET STRING,
-     otp-service      [1] UTF8String               OPTIONAL,
-     otp-tokenInfo    [2] SEQUENCE (SIZE(1..MAX)) OF OTP-TOKENINFO,
-     salt             [3] KerberosString           OPTIONAL,
-     s2kparams        [4] OCTET STRING             OPTIONAL,
- }
- */
-public class PaOtpChallenge extends KrbSequenceType {
-    private static int NONCE = 0;
-    private static int OTP_SERVICE = 1;
-    private static int OTP_TOKEN_INFO = 2;
-    private static int SALT = 3;
-    private static int S2KPARAMS = 4;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(NONCE, Asn1OctetString.class, true),
-            new Asn1FieldInfo(OTP_SERVICE, Asn1Utf8String.class),
-            new Asn1FieldInfo(OTP_TOKEN_INFO, Asn1OctetString.class, true),
-            new Asn1FieldInfo(SALT, KerberosString.class),
-            new Asn1FieldInfo(S2KPARAMS, Asn1OctetString.class, true)
-    };
-
-    public PaOtpChallenge() {
-        super(fieldInfos);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AdInitialVerifiedCas.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AdInitialVerifiedCas.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AdInitialVerifiedCas.java
deleted file mode 100644
index b83c2c5..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AdInitialVerifiedCas.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-
-/**
- * AD-INITIAL-VERIFIED-CAS ::= SEQUENCE OF ExternalPrincipalIdentifier
- */
-public class AdInitialVerifiedCas extends KrbSequenceOfType<ExternalPrincipalIdentifier> {
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AlgorithmIdentifiers.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AlgorithmIdentifiers.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AlgorithmIdentifiers.java
deleted file mode 100644
index 5faa288..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AlgorithmIdentifiers.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-import org.haox.kerb.spec.x509.AlgorithmIdentifier;
-
-/**
- trustedCertifiers       SEQUENCE OF AlgorithmIdentifier OPTIONAL,
- */
-public class AlgorithmIdentifiers extends KrbSequenceOfType<AlgorithmIdentifier> {
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AuthPack.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AuthPack.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AuthPack.java
deleted file mode 100644
index 29e495e..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/AuthPack.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.x509.SubjectPublicKeyInfo;
-
-/**
- AuthPack ::= SEQUENCE {
-     pkAuthenticator         [0] PKAuthenticator,
-     clientPublicValue       [1] SubjectPublicKeyInfo OPTIONAL,
-     supportedCMSTypes       [2] SEQUENCE OF AlgorithmIdentifier OPTIONAL,
-     clientDHNonce           [3] DHNonce OPTIONAL
- }
- */
-public class AuthPack extends KrbSequenceType {
-    private static int PK_AUTHENTICATOR = 0;
-    private static int CLIENT_PUBLIC_VALUE = 1;
-    private static int SUPPORTED_CMS_TYPES = 2;
-    private static int CLIENT_DH_NONCE = 3;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(PK_AUTHENTICATOR, PkAuthenticator.class),
-            new Asn1FieldInfo(CLIENT_PUBLIC_VALUE, SubjectPublicKeyInfo.class),
-            new Asn1FieldInfo(SUPPORTED_CMS_TYPES, AlgorithmIdentifiers.class),
-            new Asn1FieldInfo(CLIENT_DH_NONCE, DHNonce.class)
-    };
-
-    public AuthPack() {
-        super(fieldInfos);
-    }
-
-    public PkAuthenticator getPkAuthenticator() {
-        return getFieldAs(PK_AUTHENTICATOR, PkAuthenticator.class);
-    }
-
-    public void setPkAuthenticator(PkAuthenticator pkAuthenticator) {
-        setFieldAs(PK_AUTHENTICATOR, pkAuthenticator);
-    }
-
-    public SubjectPublicKeyInfo getClientPublicValue() {
-        return getFieldAs(CLIENT_PUBLIC_VALUE, SubjectPublicKeyInfo.class);
-    }
-
-    public void setClientPublicValue(SubjectPublicKeyInfo clientPublicValue) {
-        setFieldAs(CLIENT_PUBLIC_VALUE, clientPublicValue);
-    }
-
-    public AlgorithmIdentifiers getsupportedCmsTypes() {
-        return getFieldAs(CLIENT_DH_NONCE, AlgorithmIdentifiers.class);
-    }
-
-    public void setsupportedCmsTypes(AlgorithmIdentifiers supportedCMSTypes) {
-        setFieldAs(CLIENT_DH_NONCE, supportedCMSTypes);
-    }
-
-    public DHNonce getClientDhNonce() {
-        return getFieldAs(CLIENT_DH_NONCE, DHNonce.class);
-    }
-
-    public void setClientDhNonce(DHNonce dhNonce) {
-        setFieldAs(CLIENT_DH_NONCE, dhNonce);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHNonce.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHNonce.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHNonce.java
deleted file mode 100644
index bc60ded..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHNonce.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1OctetString;
-
-/**
- * DHNonce ::= OCTET STRING
- */
-public class DHNonce extends Asn1OctetString {
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHRepInfo.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHRepInfo.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHRepInfo.java
deleted file mode 100644
index 551c4be..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/DHRepInfo.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- DHRepInfo ::= SEQUENCE {
-    dhSignedData            [0] IMPLICIT OCTET STRING,
-    serverDHNonce           [1] DHNonce OPTIONAL
- }
- */
-public class DHRepInfo extends KrbSequenceType {
-    private static int DH_SIGNED_DATA = 0;
-    private static int SERVER_DH_NONCE = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(DH_SIGNED_DATA, Asn1OctetString.class, true),
-            new Asn1FieldInfo(SERVER_DH_NONCE, DHNonce.class)
-    };
-
-    public DHRepInfo() {
-        super(fieldInfos);
-    }
-
-    public byte[] getDHSignedData() {
-        return getFieldAsOctets(DH_SIGNED_DATA);
-    }
-
-    public void setDHSignedData(byte[] dhSignedData) {
-        setFieldAsOctets(DH_SIGNED_DATA, dhSignedData);
-    }
-
-    public DHNonce getServerDhNonce() {
-        return getFieldAs(SERVER_DH_NONCE, DHNonce.class);
-    }
-
-    public void setServerDhNonce(DHNonce dhNonce) {
-        setFieldAs(SERVER_DH_NONCE, dhNonce);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ExternalPrincipalIdentifier.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ExternalPrincipalIdentifier.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ExternalPrincipalIdentifier.java
deleted file mode 100644
index 0e82809..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ExternalPrincipalIdentifier.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- ExternalPrincipalIdentifier ::= SEQUENCE {
-     subjectName             [0] IMPLICIT OCTET STRING OPTIONAL,
-     issuerAndSerialNumber   [1] IMPLICIT OCTET STRING OPTIONAL,
-     subjectKeyIdentifier    [2] IMPLICIT OCTET STRING OPTIONAL
- }
- */
-public class ExternalPrincipalIdentifier extends KrbSequenceType {
-    private static int SUBJECT_NAME = 0;
-    private static int ISSUER_AND_SERIAL_NUMBER = 1;
-    private static int SUBJECT_KEY_IDENTIFIER = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(SUBJECT_NAME, Asn1OctetString.class, true),
-            new Asn1FieldInfo(ISSUER_AND_SERIAL_NUMBER, Asn1OctetString.class, true),
-            new Asn1FieldInfo(SUBJECT_KEY_IDENTIFIER, Asn1OctetString.class, true)
-    };
-
-    public ExternalPrincipalIdentifier() {
-        super(fieldInfos);
-    }
-
-    public byte[] getSubjectName() {
-        return getFieldAsOctets(SUBJECT_NAME);
-    }
-
-    public void setSubjectName(byte[] subjectName) {
-        setFieldAsOctets(SUBJECT_NAME, subjectName);
-    }
-
-    public byte[] getIssuerSerialNumber() {
-        return getFieldAsOctets(ISSUER_AND_SERIAL_NUMBER);
-    }
-
-    public void setIssuerSerialNumber(byte[] issuerSerialNumber) {
-        setFieldAsOctets(ISSUER_AND_SERIAL_NUMBER, issuerSerialNumber);
-    }
-
-    public byte[] getSubjectKeyIdentifier() {
-        return getFieldAsOctets(SUBJECT_KEY_IDENTIFIER);
-    }
-
-    public void setSubjectKeyIdentifier(byte[] subjectKeyIdentifier) {
-        setFieldAsOctets(SUBJECT_KEY_IDENTIFIER, subjectKeyIdentifier);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/KdcDHKeyInfo.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/KdcDHKeyInfo.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/KdcDHKeyInfo.java
deleted file mode 100644
index 6780b91..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/KdcDHKeyInfo.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1BitString;
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.haox.kerb.spec.KerberosTime;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- KDCDHKeyInfo ::= SEQUENCE {
-    subjectPublicKey        [0] BIT STRING,
-    nonce                   [1] INTEGER (0..4294967295),
-    dhKeyExpiration         [2] KerberosTime OPTIONAL,
- }
- */
-public class KdcDHKeyInfo extends KrbSequenceType {
-    private static int SUBJECT_PUBLICK_KEY = 0;
-    private static int NONCE = 1;
-    private static int DH_KEY_EXPIRATION = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(SUBJECT_PUBLICK_KEY, Asn1BitString.class),
-            new Asn1FieldInfo(NONCE, Asn1Integer.class),
-            new Asn1FieldInfo(DH_KEY_EXPIRATION, KerberosTime.class)
-    };
-
-    public KdcDHKeyInfo() {
-        super(fieldInfos);
-    }
-
-    public byte[] getSubjectPublicKey() {
-        return getFieldAsOctets(SUBJECT_PUBLICK_KEY);
-    }
-
-    public void setSubjectPublicKey(byte[] subjectPublicKey) {
-        setFieldAsOctets(SUBJECT_PUBLICK_KEY, subjectPublicKey);
-    }
-
-    public int getNonce() {
-        return getFieldAsInt(NONCE);
-    }
-
-    public void setNonce(int nonce) {
-        setFieldAsInt(NONCE, nonce);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/Krb5PrincipalName.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/Krb5PrincipalName.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/Krb5PrincipalName.java
deleted file mode 100644
index bb6e127..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/Krb5PrincipalName.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.PrincipalName;
-import org.haox.kerb.spec.common.Realm;
-
-/**
- KRB5PrincipalName ::= SEQUENCE {
-     realm                   [0] Realm,
-     principalName           [1] PrincipalName
- }
- */
-public class Krb5PrincipalName extends KrbSequenceType {
-    private static int REALM = 0;
-    private static int PRINCIPAL_NAME = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(REALM, Realm.class),
-            new Asn1FieldInfo(PRINCIPAL_NAME, PrincipalName.class)
-    };
-
-    public Krb5PrincipalName() {
-        super(fieldInfos);
-    }
-
-    public String getRelm() {
-        return getFieldAsString(REALM);
-    }
-
-    public void setRealm(String realm) {
-        setFieldAsString(REALM, realm);
-    }
-
-    public PrincipalName getPrincipalName() {
-        return getFieldAs(PRINCIPAL_NAME, PrincipalName.class);
-    }
-
-    public void setPrincipalName(PrincipalName principalName) {
-        setFieldAs(PRINCIPAL_NAME, principalName);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsRep.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsRep.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsRep.java
deleted file mode 100644
index 531505d..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsRep.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1Choice;
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1OctetString;
-
-/**
- PA-PK-AS-REP ::= CHOICE {
-    dhInfo                  [0] DHRepInfo,
-    encKeyPack              [1] IMPLICIT OCTET STRING,
- }
- */
-public class PaPkAsRep extends Asn1Choice {
-    private static int DH_INFO = 0;
-    private static int ENCKEY_PACK = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(DH_INFO, DHRepInfo.class),
-            new Asn1FieldInfo(ENCKEY_PACK, Asn1OctetString.class, true)
-    };
-
-    public PaPkAsRep() {
-        super(fieldInfos);
-    }
-
-    public DHRepInfo getDHRepInfo() {
-        return getFieldAs(DH_INFO, DHRepInfo.class);
-    }
-
-    public void setDHRepInfo(DHRepInfo dhRepInfo) {
-        setFieldAs(DH_INFO, dhRepInfo);
-    }
-
-    public byte[] getEncKeyPack() {
-        return getFieldAsOctets(ENCKEY_PACK);
-    }
-
-    public void setEncKeyPack(byte[] encKeyPack) {
-        setFieldAsOctets(ENCKEY_PACK, encKeyPack);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsReq.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsReq.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsReq.java
deleted file mode 100644
index 1607ff2..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PaPkAsReq.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-PK-AS-REQ ::= SEQUENCE {
-     signedAuthPack          [0] IMPLICIT OCTET STRING,
-     trustedCertifiers       [1] SEQUENCE OF ExternalPrincipalIdentifier OPTIONAL,
-     kdcPkId                 [2] IMPLICIT OCTET STRING OPTIONAL
- }
- */
-public class PaPkAsReq extends KrbSequenceType {
-    private static int SIGNED_AUTH_PACK = 0;
-    private static int TRUSTED_CERTIFIERS = 1;
-    private static int KDC_PKID = 2;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(SIGNED_AUTH_PACK, Asn1OctetString.class, true),
-            new Asn1FieldInfo(TRUSTED_CERTIFIERS, TrustedCertifiers.class),
-            new Asn1FieldInfo(KDC_PKID, Asn1OctetString.class, true)
-    };
-
-    public PaPkAsReq() {
-        super(fieldInfos);
-    }
-
-    public byte[] getSignedAuthPack() {
-        return getFieldAsOctets(SIGNED_AUTH_PACK);
-    }
-
-    public void setSignedAuthPack(byte[] signedAuthPack) {
-        setFieldAsOctets(SIGNED_AUTH_PACK, signedAuthPack);
-    }
-
-    public TrustedCertifiers getTrustedCertifiers() {
-        return getFieldAs(TRUSTED_CERTIFIERS, TrustedCertifiers.class);
-    }
-
-    public void setTrustedCertifiers(TrustedCertifiers trustedCertifiers) {
-        setFieldAs(TRUSTED_CERTIFIERS, trustedCertifiers);
-    }
-
-    public byte[] getKdcPkId() {
-        return getFieldAsOctets(KDC_PKID);
-    }
-
-    public void setKdcPkId(byte[] kdcPkId) {
-        setFieldAsOctets(KDC_PKID, kdcPkId);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PkAuthenticator.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PkAuthenticator.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PkAuthenticator.java
deleted file mode 100644
index 0e27648..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/PkAuthenticator.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.apache.haox.asn1.type.Asn1Integer;
-import org.apache.haox.asn1.type.Asn1OctetString;
-import org.haox.kerb.spec.KerberosTime;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PKAuthenticator ::= SEQUENCE {
-     cusec                   [0] INTEGER (0..999999),
-     ctime                   [1] KerberosTime,
-     -- cusec and ctime are used as in [RFC4120], for
-     -- replay prevention.
-     nonce                   [2] INTEGER (0..4294967295),
-     -- Chosen randomly; this nonce does not need to
-     -- match with the nonce in the KDC-REQ-BODY.
-     paChecksum              [3] OCTET STRING OPTIONAL,
-     -- MUST be present.
-     -- Contains the SHA1 checksum, performed over
-     -- KDC-REQ-BODY.
- }
- */
-public class PkAuthenticator extends KrbSequenceType {
-    private static int CUSEC = 0;
-    private static int CTIME = 1;
-    private static int NONCE = 2;
-    private static int PA_CHECKSUM = 3;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(CUSEC, Asn1Integer.class),
-            new Asn1FieldInfo(CTIME, KerberosTime.class),
-            new Asn1FieldInfo(NONCE, Asn1Integer.class),
-            new Asn1FieldInfo(PA_CHECKSUM, Asn1OctetString.class)
-    };
-
-    public PkAuthenticator() {
-        super(fieldInfos);
-    }
-
-    public int getCusec() {
-        return getFieldAsInt(CUSEC);
-    }
-
-    public void setCusec(int cusec) {
-        setFieldAsInt(CUSEC, cusec);
-    }
-
-    public KerberosTime getCtime() {
-        return getFieldAsTime(CTIME);
-    }
-
-    public void setCtime(KerberosTime ctime) {
-        setFieldAs(CTIME, ctime);
-    }
-
-    public int getNonce() {
-        return getFieldAsInt(NONCE);
-    }
-
-    public void setNonce(int nonce) {
-        setFieldAsInt(NONCE, nonce);
-    }
-
-    public byte[] getPaChecksum() {
-        return getFieldAsOctets(PA_CHECKSUM);
-    }
-
-    public void setPaChecksum(byte[] paChecksum) {
-        setFieldAsOctets(PA_CHECKSUM, paChecksum);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ReplyKeyPack.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ReplyKeyPack.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ReplyKeyPack.java
deleted file mode 100644
index 6a162ad..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/ReplyKeyPack.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.CheckSum;
-import org.haox.kerb.spec.common.EncryptionKey;
-
-/**
- ReplyKeyPack ::= SEQUENCE {
-    replyKey                [0] EncryptionKey,
-    asChecksum              [1] Checksum,
- }
- */
-public class ReplyKeyPack extends KrbSequenceType {
-    private static int REPLY_KEY = 0;
-    private static int AS_CHECKSUM = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(REPLY_KEY, EncryptionKey.class),
-            new Asn1FieldInfo(AS_CHECKSUM, CheckSum.class)
-    };
-
-    public ReplyKeyPack() {
-        super(fieldInfos);
-    }
-
-    public EncryptionKey getReplyKey() {
-        return getFieldAs(REPLY_KEY, EncryptionKey.class);
-    }
-
-    public void setReplyKey(EncryptionKey replyKey) {
-        setFieldAs(REPLY_KEY, replyKey);
-    }
-
-    public CheckSum getAsChecksum() {
-        return getFieldAs(AS_CHECKSUM, CheckSum.class);
-    }
-
-    public void setAsChecksum(CheckSum checkSum) {
-        setFieldAs(AS_CHECKSUM, checkSum);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TdDhParameters.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TdDhParameters.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TdDhParameters.java
deleted file mode 100644
index 8c8e8da..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TdDhParameters.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-/**
- * TD-DH-PARAMETERS ::= SEQUENCE OF AlgorithmIdentifier
- */
-public class TdDhParameters extends AlgorithmIdentifiers {
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TrustedCertifiers.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TrustedCertifiers.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TrustedCertifiers.java
deleted file mode 100644
index 4673626..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/pkinit/TrustedCertifiers.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.haox.kerb.spec.pa.pkinit;
-
-import org.haox.kerb.spec.KrbSequenceOfType;
-
-/**
- trustedCertifiers       SEQUENCE OF ExternalPrincipalIdentifier OPTIONAL,
- */
-public class TrustedCertifiers extends KrbSequenceOfType<ExternalPrincipalIdentifier> {
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenChallenge.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenChallenge.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenChallenge.java
deleted file mode 100644
index 6b6c89c..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenChallenge.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.haox.kerb.spec.pa.token;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-
-/**
- PA-TOKEN-CHALLENGE ::= SEQUENCE {
-    tokenInfos       [0] SEQUENCE (SIZE(1..MAX)) OF TokenInfo,
- }
-*/
-public class PaTokenChallenge extends KrbSequenceType {
-    private static int TOKENINFOS = 0;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(TOKENINFOS, TokenInfos.class)
-    };
-
-    public PaTokenChallenge() {
-        super(fieldInfos);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenRequest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenRequest.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenRequest.java
deleted file mode 100644
index 9bd550a..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/PaTokenRequest.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.haox.kerb.spec.pa.token;
-
-import org.apache.haox.asn1.type.Asn1FieldInfo;
-import org.haox.kerb.spec.KrbSequenceType;
-import org.haox.kerb.spec.common.KrbToken;
-
-/**
- PA-TOKEN-REQUEST ::= SEQUENCE {
-    token          [0]  OCTET STRING,
-    tokenInfo      [1]  TokenInfo
- }
-*/
-public class PaTokenRequest extends KrbSequenceType {
-    private static int TOKEN_INFO = 0;
-    private static int TOKEN = 1;
-
-    static Asn1FieldInfo[] fieldInfos = new Asn1FieldInfo[] {
-            new Asn1FieldInfo(TOKEN_INFO, TokenInfo.class),
-            new Asn1FieldInfo(TOKEN, KrbToken.class)
-    };
-
-    public PaTokenRequest() {
-        super(fieldInfos);
-    }
-
-    public KrbToken getToken() {
-        return getFieldAs(TOKEN, KrbToken.class);
-    }
-
-    public void setToken(KrbToken token) {
-        setFieldAs(TOKEN, token);
-    }
-
-    public String getTokenInfo() {
-        return getFieldAsString(TOKEN_INFO);
-    }
-
-    public void setTokenInfo(TokenInfo tokenInfo) {
-        setFieldAs(TOKEN_INFO, tokenInfo);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlag.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlag.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlag.java
deleted file mode 100644
index 44b1039..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlag.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package org.haox.kerb.spec.pa.token;
-
-import org.haox.kerb.spec.KrbEnum;
-
-public enum TokenFlag implements KrbEnum {
-    NONE(-1),
-    ID_TOKEN_REQUIRED(0x40000000),
-    AC_TOKEN_REQUIRED(0x20000000),
-    BEARER_TOKEN_REQUIRED(0x10000000),
-    HOK_TOKEN_REQUIRED(0x08000000);
-
-    private final int value;
-
-    private TokenFlag(int value) {
-        this.value = value;
-    }
-
-    @Override
-    public int getValue() {
-        return value;
-    }
-
-    public static TokenFlag fromValue(int value) {
-        for (KrbEnum e : values()) {
-            if (e.getValue() == value) {
-                return (TokenFlag) e;
-            }
-        }
-
-        return NONE;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/967d7e1c/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlags.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlags.java b/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlags.java
deleted file mode 100644
index ccecc32..0000000
--- a/haox-kerb/kerb-core/src/main/java/org/haox/kerb/spec/pa/token/TokenFlags.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.haox.kerb.spec.pa.token;
-
-import org.haox.kerb.spec.common.KrbFlags;
-
-import static org.haox.kerb.spec.ticket.TicketFlag.INVALID;
-
-public class TokenFlags extends KrbFlags {
-
-    public TokenFlags() {
-        this(0);
-    }
-
-    public TokenFlags(int value) {
-        setFlags(value);
-    }
-
-    public boolean isInvalid() {
-        return isFlagSet(INVALID.getValue());
-    }
-}