directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dran...@apache.org
Subject [45/50] [abbrv] directory-kerberos git commit: Many changes with newname
Date Thu, 22 Jan 2015 00:57:09 GMT
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/KdcRequest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/KdcRequest.java b/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/KdcRequest.java
deleted file mode 100644
index bdde086..0000000
--- a/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/KdcRequest.java
+++ /dev/null
@@ -1,358 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.client.request;
-
-import org.apache.kerberos.kerb.client.KrbContext;
-import org.apache.kerberos.kerb.client.KrbOptions;
-import org.apache.kerberos.kerb.client.preauth.FastContext;
-import org.apache.kerberos.kerb.client.preauth.PreauthContext;
-import org.apache.kerberos.kerb.client.preauth.PreauthHandler;
-import org.apache.kerberos.kerb.crypto.EncryptionHandler;
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.KerberosTime;
-import org.apache.kerberos.kerb.spec.common.*;
-import org.apache.kerberos.kerb.spec.kdc.KdcOptions;
-import org.apache.kerberos.kerb.spec.kdc.KdcRep;
-import org.apache.kerberos.kerb.spec.kdc.KdcReq;
-import org.apache.kerberos.kerb.spec.kdc.KdcReqBody;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-import org.apache.haox.transport.Transport;
-
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * A wrapper for KdcReq request
- */
-public abstract class KdcRequest {
-    private KrbContext context;
-    private Transport transport;
-
-    private KrbOptions krbOptions;
-    private PrincipalName serverPrincipal;
-    private List<HostAddress> hostAddresses = new ArrayList<HostAddress>();
-    private KdcOptions kdcOptions = new KdcOptions();
-    private List<EncryptionType> encryptionTypes;
-    private EncryptionType chosenEncryptionType;
-    private int chosenNonce;
-    private KdcReq kdcReq;
-    private KdcRep kdcRep;
-    protected Map<String, Object> credCache;
-    private PreauthContext preauthContext;
-    private FastContext fastContext;
-    private EncryptionKey asKey;
-
-    private KrbError errorReply;
-    private boolean isRetrying;
-
-    public KdcRequest(KrbContext context) {
-        this.context = context;
-        this.isRetrying = false;
-        this.credCache = new HashMap<String, Object>();
-        this.preauthContext = context.getPreauthHandler()
-                .preparePreauthContext(this);
-        this.fastContext = new FastContext();
-    }
-
-    public void setTransport(Transport transport) {
-        this.transport = transport;
-    }
-
-    public Transport getTransport() {
-        return this.transport;
-    }
-
-    public void setKrbOptions(KrbOptions options) {
-        this.krbOptions = options;
-    }
-
-    public KrbOptions getKrbOptions() {
-        return krbOptions;
-    }
-
-    public boolean isRetrying() {
-        return isRetrying;
-    }
-
-    public void setAsKey(EncryptionKey asKey) {
-        this.asKey = asKey;
-    }
-
-    public EncryptionKey getAsKey() throws KrbException {
-        return asKey;
-    }
-
-    public void setAllowedPreauth(PaDataType paType) {
-        preauthContext.setAllowedPaType(paType);
-    }
-
-    public Map<String, Object> getCredCache() {
-        return credCache;
-    }
-
-    public void setPreauthRequired(boolean preauthRequired) {
-        preauthContext.setPreauthRequired(preauthRequired);
-    }
-
-    public PreauthContext getPreauthContext() {
-        return preauthContext;
-    }
-
-    protected void loadCredCache() {
-        // TODO
-    }
-
-    public KdcReq getKdcReq() {
-        return kdcReq;
-    }
-
-    public void setKdcReq(KdcReq kdcReq) {
-        this.kdcReq = kdcReq;
-    }
-
-    public KdcRep getKdcRep() {
-        return kdcRep;
-    }
-
-    public void setKdcRep(KdcRep kdcRep) {
-        this.kdcRep = kdcRep;
-    }
-
-    protected KdcReqBody makeReqBody() throws KrbException {
-        KdcReqBody body = new KdcReqBody();
-
-        long startTime = System.currentTimeMillis();
-        body.setFrom(new KerberosTime(startTime));
-
-        PrincipalName cName = null;
-        cName = getClientPrincipal();
-        body.setCname(cName);
-
-        body.setRealm(cName.getRealm());
-
-        PrincipalName sName = getServerPrincipal();
-        body.setSname(sName);
-
-        body.setTill(new KerberosTime(startTime + getTicketValidTime()));
-
-        int nonce = generateNonce();
-        body.setNonce(nonce);
-        setChosenNonce(nonce);
-
-        body.setKdcOptions(getKdcOptions());
-
-        HostAddresses addresses = getHostAddresses();
-        if (addresses != null) {
-            body.setAddresses(addresses);
-        }
-
-        body.setEtypes(getEncryptionTypes());
-
-        return body;
-    }
-
-    public KdcOptions getKdcOptions() {
-        return kdcOptions;
-    }
-
-    public HostAddresses getHostAddresses() {
-        HostAddresses addresses = null;
-        if (!hostAddresses.isEmpty()) {
-            addresses = new HostAddresses();
-            for(HostAddress ha : hostAddresses) {
-                addresses.addElement(ha);
-            }
-        }
-        return addresses;
-    }
-
-    public KrbContext getContext() {
-        return context;
-    }
-
-    protected byte[] decryptWithClientKey(EncryptedData data, KeyUsage usage) throws KrbException {
-        return EncryptionHandler.decrypt(data, getClientKey(), usage);
-    }
-
-    public void setContext(KrbContext context) {
-        this.context = context;
-    }
-
-    public void setHostAddresses(List<HostAddress> hostAddresses) {
-        this.hostAddresses = hostAddresses;
-    }
-
-    public void setKdcOptions(KdcOptions kdcOptions) {
-        this.kdcOptions = kdcOptions;
-    }
-
-    public abstract PrincipalName getClientPrincipal();
-
-    public PrincipalName getServerPrincipal() {
-        return serverPrincipal;
-    }
-
-    public void setServerPrincipal(PrincipalName serverPrincipal) {
-        this.serverPrincipal = serverPrincipal;
-    }
-
-    public List<EncryptionType> getEncryptionTypes() {
-        if (encryptionTypes == null) {
-            encryptionTypes = context.getConfig().getEncryptionTypes();
-        }
-        return encryptionTypes;
-    }
-
-    public void setEncryptionTypes(List<EncryptionType> encryptionTypes) {
-        this.encryptionTypes = encryptionTypes;
-    }
-
-    public EncryptionType getChosenEncryptionType() {
-        return chosenEncryptionType;
-    }
-
-    public void setChosenEncryptionType(EncryptionType chosenEncryptionType) {
-        this.chosenEncryptionType = chosenEncryptionType;
-    }
-
-    public int generateNonce() {
-        return context.generateNonce();
-    }
-
-    public int getChosenNonce() {
-        return chosenNonce;
-    }
-
-    public void setChosenNonce(int nonce) {
-        this.chosenNonce = nonce;
-    }
-
-    public abstract EncryptionKey getClientKey() throws KrbException;
-
-    public long getTicketValidTime() {
-        return context.getTicketValidTime();
-    }
-
-    public KerberosTime getTicketTillTime() {
-        long now = System.currentTimeMillis();
-        return new KerberosTime(now + KerberosTime.MINUTE * 60 * 1000);
-    }
-
-    public void addHost(String hostNameOrIpAddress) throws UnknownHostException {
-        InetAddress address = InetAddress.getByName(hostNameOrIpAddress);
-        hostAddresses.add(new HostAddress(address));
-    }
-
-    public void process() throws KrbException {
-        preauth();
-    }
-
-    public abstract void processResponse(KdcRep kdcRep) throws KrbException;
-
-    public KrbOptions getPreauthOptions() {
-        return new KrbOptions();
-    }
-
-    protected void preauth() throws KrbException {
-        loadCredCache();
-
-        List<EncryptionType> etypes = getEncryptionTypes();
-        if (etypes.isEmpty()) {
-            throw new KrbException("No encryption type is configured and available");
-        }
-        EncryptionType encryptionType = etypes.iterator().next();
-        setChosenEncryptionType(encryptionType);
-
-        getPreauthHandler().preauth(this);
-    }
-
-    protected PreauthHandler getPreauthHandler() {
-        return getContext().getPreauthHandler();
-    }
-
-    /**
-     * Indicate interest in the AS key.
-     */
-    public void needAsKey() throws KrbException {
-        EncryptionKey clientKey = getClientKey();
-        if (clientKey == null) {
-            throw new RuntimeException("Client key should be prepared or prompted at this time!");
-        }
-        setAsKey(clientKey);
-    }
-
-    /**
-     * Get the enctype expected to be used to encrypt the encrypted portion of
-     * the AS_REP packet.  When handling a PREAUTH_REQUIRED error, this
-     * typically comes from etype-info2.  When handling an AS reply, it is
-     * initialized from the AS reply itself.
-     */
-    public EncryptionType getEncType() {
-
-        return getChosenEncryptionType();
-    }
-
-    public void askQuestion(String question, String challenge) {
-        preauthContext.getUserResponser().askQuestion(question, challenge);
-    }
-
-    /**
-     * Get a pointer to the FAST armor key, or NULL if the client is not using FAST.
-     */
-    public EncryptionKey getArmorKey() {
-        return fastContext.armorKey;
-    }
-
-    /**
-     * Get the current time for use in a preauth response.  If
-     * allow_unauth_time is true and the library has been configured to allow
-     * it, the current time will be offset using unauthenticated timestamp
-     * information received from the KDC in the preauth-required error, if one
-     * has been received.  Otherwise, the timestamp in a preauth-required error
-     * will only be used if it is protected by a FAST channel.  Only set
-     * allow_unauth_time if using an unauthenticated time offset would not
-     * create a security issue.
-     */
-    public KerberosTime getPreauthTime() {
-        return KerberosTime.now();
-    }
-
-    /**
-     * Get a state item from an input ccache, which may allow it
-     * to retrace the steps it took last time.  The returned data string is an
-     * alias and should not be freed.
-     */
-    public Object getCacheValue(String key) {
-        return credCache.get(key);
-    }
-
-    /**
-     * Set a state item which will be recorded to an output
-     * ccache, if the calling application supplied one.  Both key and data
-     * should be valid UTF-8 text.
-     */
-    public void cacheValue(String key, Object value) {
-        credCache.put(key, value);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/TgsRequest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/TgsRequest.java b/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/TgsRequest.java
deleted file mode 100644
index c528cfb..0000000
--- a/haox-kerb/kerb-client/src/main/java/org/apache/kerberos/kerb/client/request/TgsRequest.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.client.request;
-
-import org.apache.kerberos.kerb.client.KrbContext;
-import org.apache.kerberos.kerb.common.EncryptionUtil;
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.KerberosTime;
-import org.apache.kerberos.kerb.spec.ap.ApOptions;
-import org.apache.kerberos.kerb.spec.ap.ApReq;
-import org.apache.kerberos.kerb.spec.ap.Authenticator;
-import org.apache.kerberos.kerb.spec.common.EncryptedData;
-import org.apache.kerberos.kerb.spec.common.EncryptionKey;
-import org.apache.kerberos.kerb.spec.common.KeyUsage;
-import org.apache.kerberos.kerb.spec.common.PrincipalName;
-import org.apache.kerberos.kerb.spec.kdc.*;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-import org.apache.kerberos.kerb.spec.ticket.ServiceTicket;
-import org.apache.kerberos.kerb.spec.ticket.TgtTicket;
-
-public class TgsRequest extends KdcRequest {
-    private TgtTicket tgt;
-    private ApReq apReq;
-
-    public TgsRequest(KrbContext context, TgtTicket tgtTicket) {
-        super(context);
-        this.tgt = tgtTicket;
-
-        setAllowedPreauth(PaDataType.TGS_REQ);
-    }
-
-    public PrincipalName getClientPrincipal() {
-        return tgt.getClientPrincipal();
-    }
-
-    @Override
-    public EncryptionKey getClientKey() throws KrbException {
-        return getSessionKey();
-    }
-
-    public EncryptionKey getSessionKey() {
-        return tgt.getSessionKey();
-    }
-
-    @Override
-    protected void preauth() throws KrbException {
-        apReq = makeApReq();
-        super.preauth();
-    }
-
-    @Override
-    public void process() throws KrbException {
-        super.process();
-
-        TgsReq tgsReq = new TgsReq();
-
-        KdcReqBody tgsReqBody = makeReqBody();
-        tgsReq.setReqBody(tgsReqBody);
-        tgsReq.setPaData(getPreauthContext().getOutputPaData());
-
-        setKdcReq(tgsReq);
-    }
-
-    private ApReq makeApReq() throws KrbException {
-        ApReq apReq = new ApReq();
-
-        Authenticator authenticator = makeAuthenticator();
-        EncryptionKey sessionKey = tgt.getSessionKey();
-        EncryptedData authnData = EncryptionUtil.seal(authenticator,
-                sessionKey, KeyUsage.TGS_REQ_AUTH);
-        apReq.setEncryptedAuthenticator(authnData);
-
-        apReq.setTicket(tgt.getTicket());
-        ApOptions apOptions = new ApOptions();
-        apReq.setApOptions(apOptions);
-
-        return apReq;
-    }
-
-    private Authenticator makeAuthenticator() {
-        Authenticator authenticator = new Authenticator();
-        authenticator.setCname(getClientPrincipal());
-        authenticator.setCrealm(tgt.getRealm());
-
-        authenticator.setCtime(KerberosTime.now());
-        authenticator.setCusec(0);
-
-        EncryptionKey sessionKey = tgt.getSessionKey();
-        authenticator.setSubKey(sessionKey);
-
-        return authenticator;
-    }
-
-    @Override
-    public void processResponse(KdcRep kdcRep) throws KrbException {
-        setKdcRep(kdcRep);
-
-        TgsRep tgsRep = (TgsRep) getKdcRep();
-        EncTgsRepPart encTgsRepPart = EncryptionUtil.unseal(tgsRep.getEncryptedEncPart(),
-                getSessionKey(),
-                KeyUsage.TGS_REP_ENCPART_SESSKEY, EncTgsRepPart.class);
-
-        tgsRep.setEncPart(encTgsRepPart);
-
-        if (getChosenNonce() != encTgsRepPart.getNonce()) {
-            throw new KrbException("Nonce didn't match");
-        }
-    }
-
-    public ServiceTicket getServiceTicket() {
-        ServiceTicket serviceTkt = new ServiceTicket(getKdcRep().getTicket(),
-                (EncTgsRepPart) getKdcRep().getEncPart());
-        return serviceTkt;
-    }
-
-    public ApReq getApReq() {
-        return apReq;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/main/resources/kdc-krb5.conf
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/main/resources/kdc-krb5.conf b/haox-kerb/kerb-client/src/main/resources/kdc-krb5.conf
deleted file mode 100644
index d118dd1..0000000
--- a/haox-kerb/kerb-client/src/main/resources/kdc-krb5.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-[libdefaults]
-    default_realm = {0}
-    udp_preference_limit = 1
-
-[realms]
-    {0} = '{'
-        kdc = {1}:{2}
-    '}'
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/main/resources/kdc.ldiff
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/main/resources/kdc.ldiff b/haox-kerb/kerb-client/src/main/resources/kdc.ldiff
deleted file mode 100644
index bc989c3..0000000
--- a/haox-kerb/kerb-client/src/main/resources/kdc.ldiff
+++ /dev/null
@@ -1,46 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-dn: ou=users,dc=${0},dc=${1}
-objectClass: organizationalUnit
-objectClass: top
-ou: users
-
-dn: uid=krbtgt,ou=users,dc=${0},dc=${1}
-objectClass: top
-objectClass: person
-objectClass: inetOrgPerson
-objectClass: krb5principal
-objectClass: krb5kdcentry
-cn: KDC Service
-sn: Service
-uid: krbtgt
-userPassword: secret
-krb5PrincipalName: krbtgt/${2}.${3}@${2}.${3}
-krb5KeyVersionNumber: 0
-
-dn: uid=ldap,ou=users,dc=${0},dc=${1}
-objectClass: top
-objectClass: person
-objectClass: inetOrgPerson
-objectClass: krb5principal
-objectClass: krb5kdcentry
-cn: LDAP
-sn: Service
-uid: ldap
-userPassword: secret
-krb5PrincipalName: ldap/${4}@${2}.${3}
-krb5KeyVersionNumber: 0

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/main/resources/krb5.conf
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/main/resources/krb5.conf b/haox-kerb/kerb-client/src/main/resources/krb5.conf
deleted file mode 100644
index 4222475..0000000
--- a/haox-kerb/kerb-client/src/main/resources/krb5.conf
+++ /dev/null
@@ -1,57 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-[libdefaults]
-  default_realm = KRB.COM
-  dns_lookup_kdc = false
-  dns_lookup_realm = false
-  allow_weak_crypto = true
-  ticket_lifetime = 86400
-  renew_lifetime = 604800
-  forwardable = true
-  permitted_enctypes = des-cbc-crc aes128-cts-hmac-sha1-96
-  clockskew = 300
-  proxiable = true
-  default_tgs_enctypes = des-cbc-crc
-  default_tkt_enctypes = des-cbc-crc
-[realms]
-#  ATHENA.MIT.EDU = {
-#		admin_server = KERBEROS.MIT.EDU
-#		default_domain = MIT.EDU
-#		v4_instance_convert = {
-#			mit = mit.edu
-#			lithium = lithium.lcs.mit.edu
-#		}
-#	}
-#	ANDREW.CMU.EDU = {
-#	  admin_server = vice28.fs.andrew.cmu.edu
-#	}
-#  GNU.ORG = {
-#    kdc = kerberos.gnu.org
-#    kdc = kerberos-2.gnu.org
-#    admin_server = kerberos.gnu.org
-#  }
-[domain_realm]
-  .mit.edu = ATHENA.MIT.EDU
-	mit.edu = ATHENA.MIT.EDU
-	.media.mit.edu = MEDIA-LAB.MIT.EDU
-	media.mit.edu = MEDIA-LAB.MIT.EDU
-	.ucsc.edu = CATS.UCSC.EDU
-[logging]
- default = FILE:/var/log/krb5libs.log
- kdc = FILE:/var/log/krb5kdc.log
- admin_server = FILE:/var/log/kadmind.log
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-client/src/test/java/org/apache/kerberos/kerb/client/TestKrbConfigLoad.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-client/src/test/java/org/apache/kerberos/kerb/client/TestKrbConfigLoad.java b/haox-kerb/kerb-client/src/test/java/org/apache/kerberos/kerb/client/TestKrbConfigLoad.java
deleted file mode 100644
index 450a085..0000000
--- a/haox-kerb/kerb-client/src/test/java/org/apache/kerberos/kerb/client/TestKrbConfigLoad.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.kerberos.kerb.client;
-
-import org.apache.haox.config.Conf;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.net.URL;
-
-import org.junit.Test;
-import org.junit.Assert;
-
-
-/**
- * Test for loading configurations form krb5.conf.
- * krb5.conf is the configuration file in MIT Kerberos.
- */
-public class TestKrbConfigLoad {
-
-    @Test
-    public void test() throws IOException, URISyntaxException {
-        URL confFileUrl = TestKrbConfigLoad.class.getResource("/krb5.conf");
-        File confFile = new File(confFileUrl.toURI());
-
-        KrbConfig krbConfig = new KrbConfig();
-        Conf conf = krbConfig.getConf();
-        conf.addIniConfig(confFile);
-
-        Assert.assertEquals(krbConfig.getDefaultRealm(), "KRB.COM");
-        Assert.assertFalse(krbConfig.getDnsLookUpKdc());
-        Assert.assertFalse(krbConfig.getDnsLookUpRealm());
-        Assert.assertTrue(krbConfig.getAllowWeakCrypto());
-        Assert.assertEquals(krbConfig.getTicketLifetime(), 24 * 3600);
-        Assert.assertEquals(krbConfig.getRenewLifetime(), 7 * 24 * 3600);
-        Assert.assertTrue(krbConfig.isForwardableAllowed());
-        Assert.assertEquals(krbConfig.getEncryptionTypes().size(), 2);
-        Assert.assertEquals(krbConfig.getEncryptionTypes().get(0), EncryptionType.DES_CBC_CRC);
-        Assert.assertEquals(krbConfig.getEncryptionTypes().get(1), EncryptionType.AES128_CTS_HMAC_SHA1_96);
-        Assert.assertEquals(krbConfig.getAllowableClockSkew(), 300);
-        Assert.assertTrue(krbConfig.isProxiableAllowed());
-        Assert.assertEquals(krbConfig.getDefaultTgsEnctypes().size(), 1);
-        Assert.assertEquals(krbConfig.getDefaultTgsEnctypes().get(0), EncryptionType.DES_CBC_CRC);
-        Assert.assertEquals(krbConfig.getDefaultTktEnctypes().size(), 1);
-        Assert.assertEquals(krbConfig.getDefaultTktEnctypes().get(0), EncryptionType.DES_CBC_CRC);
-
-        Assert.assertEquals(krbConfig.getDefaultLoggingLocation(), "FILE:/var/log/krb5libs.log");
-        Assert.assertEquals(krbConfig.getKdcLoggingLocation(), "FILE:/var/log/krb5kdc.log");
-        Assert.assertEquals(krbConfig.getAdminLoggingLocation(), "FILE:/var/log/kadmind.log");
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/pom.xml
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/pom.xml b/haox-kerb/kerb-common/pom.xml
deleted file mode 100644
index f4e939b..0000000
--- a/haox-kerb/kerb-common/pom.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed under the Apache License, Version 2.0 (the "License");
-  you may not use this file except in compliance with the License.
-  You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License. See accompanying LICENSE file.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.haox</groupId>
-        <artifactId>haox-kerb</artifactId>
-        <version>1.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>kerb-common</artifactId>
-
-    <name>Haox-kerb Common</name>
-    <description>Haox-kerb Common facilities for both client and server</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>haox-config</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>haox-event</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>kerb-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>kerb-crypto</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/KrbThrow.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/KrbThrow.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/KrbThrow.java
deleted file mode 100644
index ea1f56a..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/KrbThrow.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb;
-
-public class KrbThrow {
-
-    public static KrbException out(MessageCode messageCode) throws KrbException {
-        throw new KrbException(Message.getMessage(messageCode));
-    }
-
-    public static void out(MessageCode messageCode, Exception e) throws KrbException {
-        throw new KrbException(Message.getMessage(messageCode), e);
-    }
-
-    public static void out(MessageCode messageCode, String message) throws KrbException {
-        throw new KrbException(Message.getMessage(messageCode) + ":" + message);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/Message.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/Message.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/Message.java
deleted file mode 100644
index 19a22a5..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/Message.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class Message {
-    private static Map<MessageCode, String> entries = new HashMap<MessageCode, String>();
-
-    public static void init() {
-
-    }
-
-    public static void define(MessageCode code, String message) {
-        entries.put(code, message);
-    }
-
-    public static String getMessage(MessageCode code) {
-        String msg = entries.get(code);
-        if (msg == null) {
-            msg = code.getCodeName();
-        }
-        return msg;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/MessageCode.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/MessageCode.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/MessageCode.java
deleted file mode 100644
index e95caf0..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/MessageCode.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb;
-
-public interface MessageCode {
-    public String getCodeName();
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/EncryptionUtil.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/EncryptionUtil.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/EncryptionUtil.java
deleted file mode 100644
index 0903843..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/EncryptionUtil.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.haox.asn1.type.AbstractAsn1Type;
-import org.apache.haox.asn1.type.Asn1Type;
-import org.apache.kerberos.kerb.codec.KrbCodec;
-import org.apache.kerberos.kerb.crypto.EncTypeHandler;
-import org.apache.kerberos.kerb.crypto.EncryptionHandler;
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.common.EncryptedData;
-import org.apache.kerberos.kerb.spec.common.EncryptionKey;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-import org.apache.kerberos.kerb.spec.common.KeyUsage;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class EncryptionUtil {
-
-    public static List<EncryptionKey> generateKeys(List<EncryptionType> encryptionTypes) throws KrbException {
-        List<EncryptionKey> results = new ArrayList<EncryptionKey>(encryptionTypes.size());
-        EncryptionKey encKey;
-        for (EncryptionType eType : encryptionTypes) {
-            encKey = EncryptionHandler.random2Key(eType);
-            results.add(encKey);
-        }
-
-        return results;
-    }
-
-    public static List<EncryptionKey> generateKeys(String principal, String passwd,
-                                                   List<EncryptionType> encryptionTypes) throws KrbException {
-        List<EncryptionKey> results = new ArrayList<EncryptionKey>(encryptionTypes.size());
-        EncryptionKey encKey;
-        for (EncryptionType eType : encryptionTypes) {
-            encKey = EncryptionHandler.string2Key(principal, passwd, eType);
-            results.add(encKey);
-        }
-
-        return results;
-    }
-
-    public static EncryptionType getBestEncryptionType(List<EncryptionType> requestedTypes,
-                                                       List<EncryptionType> configuredTypes) {
-        for (EncryptionType encryptionType : configuredTypes) {
-            if (requestedTypes.contains(encryptionType)) {
-                return encryptionType;
-            }
-        }
-
-        return null;
-    }
-
-    public static EncryptedData seal(AbstractAsn1Type asn1Type,
-                                     EncryptionKey key, KeyUsage usage) throws KrbException {
-        byte[] encoded = asn1Type.encode();
-        EncryptedData encrypted = EncryptionHandler.encrypt(encoded, key, usage);
-        return encrypted;
-    }
-
-    public static <T extends Asn1Type> T unseal(EncryptedData encrypted, EncryptionKey key,
-                                          KeyUsage usage, Class<T> krbType) throws KrbException {
-        byte[] encoded = EncryptionHandler.decrypt(encrypted, key, usage);
-        return KrbCodec.decode(encoded, krbType);
-    }
-
-    public static byte[] encrypt(EncryptionKey key,
-          byte[] plaintext, int usage) throws KrbException {
-        EncTypeHandler encType = EncryptionHandler.getEncHandler(key.getKeyType());
-        byte[] cipherData = encType.encrypt(plaintext, key.getKeyData(), usage);
-        return cipherData;
-    }
-
-    public static byte[] decrypt(EncryptionKey key,
-           byte[] cipherData, int usage) throws KrbException {
-        EncTypeHandler encType = EncryptionHandler.getEncHandler(key.getKeyType());
-        byte[] plainData = encType.decrypt(cipherData, key.getKeyData(), usage);
-        return plainData;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbConfHelper.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbConfHelper.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbConfHelper.java
deleted file mode 100644
index 41f9d86..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbConfHelper.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
-
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.haox.config.Conf;
-import org.apache.haox.config.Config;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Help KrbConfig and KdcConfig to load configs.
- */
-public class KrbConfHelper {
-    /**
-     * The regex to split a config value(string) to a list of config value(string list).
-     */
-    private static final String LIST_SPLITTER = " ";
-
-    public static String getStringUnderSection(Conf conf, SectionConfigKey key) {
-        Config subConfig = conf.getConfig(key.getSectionName());
-        if (subConfig != null) {
-            return subConfig.getString(key);
-        } else {
-            return (String) key.getDefaultValue();
-        }
-    }
-
-    public static boolean getBooleanUnderSection(Conf conf, SectionConfigKey key) {
-        Config subConfig = conf.getConfig(key.getSectionName());
-        if (subConfig != null) {
-            return subConfig.getBoolean(key);
-        } else {
-            return (Boolean) key.getDefaultValue();
-        }
-    }
-
-    public static long getLongUnderSection(Conf conf, SectionConfigKey key) {
-        Config subConfig = conf.getConfig(key.getSectionName());
-        if (subConfig != null) {
-            return subConfig.getLong(key);
-        } else {
-            return (Long) key.getDefaultValue();
-        }
-    }
-
-    public static int getIntUnderSection(Conf conf, SectionConfigKey key) {
-        Config subConfig = conf.getConfig(key.getSectionName());
-        if (subConfig != null) {
-            return subConfig.getInt(key);
-        } else {
-            return (Integer) key.getDefaultValue();
-        }
-    }
-
-    public static String[] getStringArrayUnderSection(Conf conf, SectionConfigKey key) {
-        String value = getStringUnderSection(conf, key);
-        String[] values = value.split(LIST_SPLITTER);
-        return values;
-    }
-
-    public static List<EncryptionType> getEncTypesUnderSection(Conf conf, SectionConfigKey key) {
-        String[] encTypesNames = getStringArrayUnderSection(conf, key);
-        return getEncryptionTypes(encTypesNames);
-    }
-
-    public static List<EncryptionType> getEncryptionTypes(String[] encTypeNames) {
-        return getEncryptionTypes(Arrays.asList(encTypeNames));
-    }
-
-    public static List<EncryptionType> getEncryptionTypes(List<String> encTypeNames) {
-        List<EncryptionType> results = new ArrayList<EncryptionType>(encTypeNames.size());
-
-        EncryptionType eType;
-        for (String eTypeName : encTypeNames) {
-            eType = EncryptionType.fromName(eTypeName);
-            if (eType != EncryptionType.NONE) {
-                results.add(eType);
-            }
-        }
-        return results;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbErrorUtil.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbErrorUtil.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbErrorUtil.java
deleted file mode 100644
index 1bd3b18..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbErrorUtil.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.kerberos.kerb.spec.common.*;
-import org.apache.kerberos.kerb.spec.pa.PaDataEntry;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-public class KrbErrorUtil {
-
-    public static List<EncryptionType> getEtypes(KrbError error) throws IOException {
-        MethodData methodData = new MethodData();
-        methodData.decode(error.getEdata());
-
-        for( PaDataEntry pd : methodData.getElements()) {
-            if( pd.getPaDataType() == PaDataType.ETYPE_INFO2 ) {
-                return getEtypes2(pd.getPaDataValue());
-            }
-            else if( pd.getPaDataType() == PaDataType.ETYPE_INFO ) {
-                return getEtypes(pd.getPaDataValue());
-            }
-        }
-        return Collections.EMPTY_LIST;
-    }
-
-    private static List<EncryptionType> getEtypes(byte[] data) throws IOException {
-        EtypeInfo info = new EtypeInfo();
-        info.decode(data);
-        List<EncryptionType> results = new ArrayList<EncryptionType>();
-        for( EtypeInfoEntry entry : info.getElements() ) {
-            results.add(entry.getEtype());
-        }
-        return results;
-    }
-
-    private static List<EncryptionType> getEtypes2(byte[] data) throws IOException {
-        EtypeInfo2 info2 = new EtypeInfo2();
-        info2.decode(data);
-        List<EncryptionType> results = new ArrayList<EncryptionType>();
-        for( EtypeInfo2Entry entry : info2.getElements() ) {
-            results.add(entry.getEtype());
-        }
-        return results;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbStreamingDecoder.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbStreamingDecoder.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbStreamingDecoder.java
deleted file mode 100644
index de9a67d..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbStreamingDecoder.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.haox.transport.tcp.DecodingCallback;
-import org.apache.haox.transport.tcp.StreamingDecoder;
-
-import java.nio.ByteBuffer;
-
-public class KrbStreamingDecoder implements StreamingDecoder {
-
-    @Override
-    public void decode(ByteBuffer streamingBuffer, DecodingCallback callback) {
-        if (streamingBuffer.remaining() >= 4) {
-            int len = streamingBuffer.getInt();
-            if (streamingBuffer.remaining() >= len) {
-                callback.onMessageComplete(len + 4);
-            } else {
-                callback.onMoreDataNeeded(len + 4);
-            }
-        } else {
-            callback.onMoreDataNeeded();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbUtil.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbUtil.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbUtil.java
deleted file mode 100644
index 3669509..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/KrbUtil.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.kerberos.kerb.codec.KrbCodec;
-import org.apache.kerberos.kerb.spec.common.KrbMessage;
-import org.apache.haox.transport.Transport;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-
-public class KrbUtil {
-
-    public static void sendMessage(KrbMessage message, Transport transport) {
-        int bodyLen = message.encodingLength();
-        ByteBuffer buffer = ByteBuffer.allocate(bodyLen + 4);
-        buffer.putInt(bodyLen);
-        message.encode(buffer);
-        buffer.flip();
-        transport.sendMessage(buffer);
-    }
-
-    public static KrbMessage decodeMessage(ByteBuffer message) throws IOException {
-        int bodyLen = message.getInt();
-        assert (message.remaining() >= bodyLen);
-
-        KrbMessage krbMessage = KrbCodec.decodeMessage(message);
-
-        return krbMessage;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/SectionConfigKey.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/SectionConfigKey.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/SectionConfigKey.java
deleted file mode 100644
index 8249132..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/common/SectionConfigKey.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.kerberos.kerb.common;
-
-import org.apache.haox.config.ConfigKey;
-
-/**
- * Config Keys with section name.
- * Use by MIT Kerberos config keys.
- */
-public interface SectionConfigKey extends ConfigKey {
-
-    public String getSectionName();
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlag.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlag.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlag.java
deleted file mode 100644
index 4d2cca9..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlag.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth;
-
-import org.apache.kerberos.kerb.spec.KrbEnum;
-
-public enum PaFlag implements KrbEnum {
-    NONE(-1),
-    PA_REAL(0x01),
-    PA_INFO(0x02);
-
-    private final int value;
-
-    private PaFlag(int value) {
-        this.value = value;
-    }
-
-    @Override
-    public int getValue() {
-        return value;
-    }
-
-    public static PaFlag fromValue(int value) {
-        for (KrbEnum e : values()) {
-            if (e.getValue() == value) {
-                return (PaFlag) e;
-            }
-        }
-
-        return NONE;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlags.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlags.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlags.java
deleted file mode 100644
index 0afae21..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PaFlags.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth;
-
-import org.apache.kerberos.kerb.spec.common.KrbFlags;
-
-public class PaFlags extends KrbFlags {
-
-    public PaFlags() {
-        this(0);
-    }
-
-    public PaFlags(int value) {
-        setFlags(value);
-    }
-
-    public boolean isReal() {
-        return isFlagSet(PaFlag.PA_REAL);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PluginRequestContext.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PluginRequestContext.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PluginRequestContext.java
deleted file mode 100644
index 78961b5..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PluginRequestContext.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth;
-
-/**
- * Per request per module
- */
-public interface PluginRequestContext {
-    // Nothing here, just as a type mark
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PreauthPluginMeta.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PreauthPluginMeta.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PreauthPluginMeta.java
deleted file mode 100644
index 7ae553a..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/PreauthPluginMeta.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth;
-
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-public interface PreauthPluginMeta {
-
-    public String getName();
-
-    public int getVersion();
-
-    public PaDataType[] getPaTypes();
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/EncTsPreauthMeta.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/EncTsPreauthMeta.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/EncTsPreauthMeta.java
deleted file mode 100644
index 56fe281..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/EncTsPreauthMeta.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.builtin;
-
-import org.apache.kerberos.kerb.preauth.PreauthPluginMeta;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-public class EncTsPreauthMeta implements PreauthPluginMeta {
-
-    private static String NAME = "encrypted_timestamp";
-    private static int VERSION = 1;
-    private static PaDataType[] PA_TYPES = new PaDataType[] {
-            PaDataType.ENC_TIMESTAMP
-    };
-
-    @Override
-    public String getName() {
-        return NAME;
-    }
-
-    public int getVersion() {
-        return VERSION;
-    }
-
-    public PaDataType[] getPaTypes() {
-        return PA_TYPES;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/TgtPreauthMeta.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/TgtPreauthMeta.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/TgtPreauthMeta.java
deleted file mode 100644
index 772312c..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/builtin/TgtPreauthMeta.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.builtin;
-
-import org.apache.kerberos.kerb.preauth.PreauthPluginMeta;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-/**
- * A faked preauth module for TGS request handling
- */
-public class TgtPreauthMeta implements PreauthPluginMeta {
-
-    private static String NAME = "TGT_preauth";
-    private static int VERSION = 1;
-    private static PaDataType[] PA_TYPES = new PaDataType[] {
-            PaDataType.TGS_REQ
-    };
-
-    @Override
-    public String getName() {
-        return NAME;
-    }
-
-    public int getVersion() {
-        return VERSION;
-    }
-
-    public PaDataType[] getPaTypes() {
-        return PA_TYPES;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityOpts.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityOpts.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityOpts.java
deleted file mode 100644
index 336b8c6..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityOpts.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.pkinit;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class IdentityOpts {
-
-    // From MIT Krb5 _pkinit_identity_opts
-    public String identity;
-    public List<String> AltIdentities = new ArrayList<String>(1);
-    public List<String> anchors = new ArrayList<String>(4);
-    public List<String> intermediates = new ArrayList<String>(2);
-    public List<String> crls = new ArrayList<String>(2);
-    public String ocsp;
-    public IdentityType idType;
-    public String certFile;
-    public String keyFile;
-
-    // PKCS11
-    public String p11ModuleName;
-    public int slotid;
-    public String tokenLabel;
-    public String certId;
-    public String certLabel;
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityType.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityType.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityType.java
deleted file mode 100644
index c8ab9ad..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/IdentityType.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.pkinit;
-
-public enum IdentityType {
-    NONE,
-    FILE,
-    DIR,
-    PKCS11,
-    PKCS12,
-    ENVVAR,
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitIdenity.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitIdenity.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitIdenity.java
deleted file mode 100644
index 8f5b30b..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitIdenity.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.pkinit;
-
-import org.apache.kerberos.kerb.spec.common.PrincipalName;
-
-public class PkinitIdenity {
-
-    public static void processIdentityOption(IdentityOpts identityOpts, String value) {
-        IdentityType idType = IdentityType.NONE;
-        String residual = null;
-        if (value.contains(":")) {
-            if (value.startsWith("FILE:")) {
-                idType = IdentityType.FILE;
-            } else if (value.startsWith("PKCS11:")) {
-                idType = IdentityType.PKCS11;
-            } else if (value.startsWith("PKCS12:")) {
-                idType = IdentityType.PKCS12;
-            } else if (value.startsWith("DIR:")) {
-                idType = IdentityType.DIR;
-            } else if (value.startsWith("ENV:")) {
-                idType = IdentityType.ENVVAR;
-            } else {
-                throw new RuntimeException("Invalid Identity option format: " + value);
-            }
-        } else {
-            residual = value;
-            idType = IdentityType.FILE;
-        }
-
-        identityOpts.idType = idType;
-        switch (idType) {
-            case ENVVAR:
-                processIdentityOption(identityOpts, System.getenv(residual));
-                break;
-            case FILE:
-                parseFileOption(identityOpts, residual);
-                break;
-            case PKCS11:
-                parsePkcs11Option(identityOpts, residual);
-                break;
-            case PKCS12:
-                parsePkcs12Option(identityOpts, residual);
-                break;
-            case DIR:
-                identityOpts.certFile = residual;
-                break;
-        }
-    }
-
-    public static void parseFileOption(IdentityOpts identityOpts, String residual) {
-        String[] parts = residual.split(",");
-        String certName = null;
-        String keyName = null;
-
-        certName = parts[0];
-        if (parts.length > 1) {
-            keyName = parts[1];
-        }
-
-        identityOpts.certFile = certName;
-        identityOpts.keyFile = keyName;
-    }
-
-    public static void parsePkcs12Option(IdentityOpts identityOpts, String residual) {
-        identityOpts.certFile = residual;
-        identityOpts.keyFile = residual;
-    }
-
-    public static void parsePkcs11Option(IdentityOpts identityOpts, String residual) {
-        // TODO
-    }
-
-    public static void loadCerts(IdentityOpts identityOpts, PrincipalName principal) {
-        switch (identityOpts.idType) {
-            case FILE:
-                loadCertsFromFile(identityOpts, principal);
-                break;
-            case DIR:
-                loadCertsFromDir(identityOpts, principal);
-                break;
-            case PKCS11:
-                loadCertsAsPkcs11(identityOpts, principal);
-                break;
-            case PKCS12:
-                loadCertsAsPkcs12(identityOpts, principal);
-                break;
-        }
-    }
-
-    private static void loadCertsAsPkcs12(IdentityOpts identityOpts, PrincipalName principal) {
-
-    }
-
-    private static void loadCertsAsPkcs11(IdentityOpts identityOpts, PrincipalName principal) {
-
-    }
-
-    private static void loadCertsFromDir(IdentityOpts identityOpts, PrincipalName principal) {
-
-    }
-
-    private static void loadCertsFromFile(IdentityOpts identityOpts, PrincipalName principal) {
-
-    }
-
-    public static void initialize(IdentityOpts identityOpts, PrincipalName principal) {
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitPreauthMeta.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitPreauthMeta.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitPreauthMeta.java
deleted file mode 100644
index eb6e026..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PkinitPreauthMeta.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.pkinit;
-
-import org.apache.kerberos.kerb.preauth.PreauthPluginMeta;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-public class PkinitPreauthMeta implements PreauthPluginMeta {
-
-    private static String NAME = "PKINIT";
-    private static int VERSION = 1;
-    private static PaDataType[] PA_TYPES = new PaDataType[] {
-            PaDataType.PK_AS_REQ,
-            PaDataType.PK_AS_REP,
-    };
-
-    @Override
-    public String getName() {
-        return NAME;
-    }
-
-    public int getVersion() {
-        return VERSION;
-    }
-
-    public PaDataType[] getPaTypes() {
-        return PA_TYPES;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PluginOpts.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PluginOpts.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PluginOpts.java
deleted file mode 100644
index 627155b..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/pkinit/PluginOpts.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.pkinit;
-
-import org.apache.haox.asn1.type.Asn1ObjectIdentifier;
-import org.apache.kerberos.kerb.spec.pa.pkinit.AlgorithmIdentifiers;
-import org.apache.kerberos.kerb.spec.pa.pkinit.TrustedCertifiers;
-import org.apache.kerberos.kerb.spec.x509.AlgorithmIdentifier;
-
-public class PluginOpts {
-
-    // From MIT Krb5 _pkinit_plg_opts
-
-    // require EKU checking (default is true)
-    public boolean requireEku = true;
-    // accept secondary EKU (default is false)
-    public boolean acceptSecondaryEku = false;
-    // allow UPN-SAN instead of pkinit-SAN
-    public boolean allowUpn = true;
-    // selects DH or RSA based pkinit
-    public boolean usingRsa = true;
-    // require CRL for a CA (default is false)
-    public boolean requireCrlChecking = false;
-    // the size of the Diffie-Hellman key the client will attempt to use.
-    // The acceptable values are 1024, 2048, and 4096. The default is 2048.
-    public int dhMinBits = 2048;
-
-    public AlgorithmIdentifiers createSupportedCMSTypes() {
-        AlgorithmIdentifiers cmsAlgorithms = new AlgorithmIdentifiers();
-        AlgorithmIdentifier des3Alg = new AlgorithmIdentifier();
-        cmsAlgorithms.add(des3Alg);
-
-        String oidStr = "DES3-OID";
-        Asn1ObjectIdentifier des3Oid = new Asn1ObjectIdentifier(oidStr);
-        des3Alg.setAlgorithm(des3Oid);
-        des3Alg.setParameters(null);
-
-        return cmsAlgorithms;
-    }
-
-    public TrustedCertifiers createTrustedCertifiers() {
-        TrustedCertifiers trustedCertifiers = new TrustedCertifiers();
-
-        return trustedCertifiers;
-    }
-
-    public byte[] createIssuerAndSerial() {
-        return null;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/token/TokenPreauthMeta.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/token/TokenPreauthMeta.java b/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/token/TokenPreauthMeta.java
deleted file mode 100644
index 7ce28e1..0000000
--- a/haox-kerb/kerb-common/src/main/java/org/apache/kerberos/kerb/preauth/token/TokenPreauthMeta.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *  
- *    http://www.apache.org/licenses/LICENSE-2.0
- *  
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License. 
- *  
- */
-package org.apache.kerberos.kerb.preauth.token;
-
-import org.apache.kerberos.kerb.preauth.PreauthPluginMeta;
-import org.apache.kerberos.kerb.spec.pa.PaDataType;
-
-public class TokenPreauthMeta implements PreauthPluginMeta {
-
-    private static String NAME = "TokenPreauth";
-    private static int VERSION = 1;
-    private static PaDataType[] PA_TYPES = new PaDataType[] {
-            PaDataType.TOKEN_CHALLENGE,
-            PaDataType.TOKEN_REQUEST
-    };
-
-    @Override
-    public String getName() {
-        return NAME;
-    }
-
-    public int getVersion() {
-        return VERSION;
-    }
-
-    public PaDataType[] getPaTypes() {
-        return PA_TYPES;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/pom.xml
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/pom.xml b/haox-kerb/kerb-core-test/pom.xml
deleted file mode 100644
index 9c68a34..0000000
--- a/haox-kerb/kerb-core-test/pom.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed under the Apache License, Version 2.0 (the "License");
-  you may not use this file except in compliance with the License.
-  You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License. See accompanying LICENSE file.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.haox</groupId>
-        <artifactId>haox-kerb</artifactId>
-        <version>1.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>kerb-core-test</artifactId>
-
-    <name>haox-kerb-coreTest</name>
-    <description>Kerb core tests</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>haox-asn1</artifactId>
-            <version>1.0-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>kerb-core</artifactId>
-            <version>1.0-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.haox</groupId>
-            <artifactId>kerb-util</artifactId>
-            <version>1.0-SNAPSHOT</version>
-        </dependency>
-    </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes128-kerberos-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes128-kerberos-data b/haox-kerb/kerb-core-test/src/main/resources/aes128-kerberos-data
deleted file mode 100644
index 7f3b582..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/aes128-kerberos-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes128-key-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes128-key-data b/haox-kerb/kerb-core-test/src/main/resources/aes128-key-data
deleted file mode 100644
index 4ba2540..0000000
--- a/haox-kerb/kerb-core-test/src/main/resources/aes128-key-data
+++ /dev/null
@@ -1 +0,0 @@
-����\���U�s�7"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes128-spnego-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes128-spnego-data b/haox-kerb/kerb-core-test/src/main/resources/aes128-spnego-data
deleted file mode 100644
index 13c89e6..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/aes128-spnego-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes256-kerberos-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes256-kerberos-data b/haox-kerb/kerb-core-test/src/main/resources/aes256-kerberos-data
deleted file mode 100644
index b7d539f..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/aes256-kerberos-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes256-key-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes256-key-data b/haox-kerb/kerb-core-test/src/main/resources/aes256-key-data
deleted file mode 100644
index 24792c1..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/aes256-key-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/aes256-spnego-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/aes256-spnego-data b/haox-kerb/kerb-core-test/src/main/resources/aes256-spnego-data
deleted file mode 100644
index 6a7e55c..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/aes256-spnego-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/asrep.token
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/asrep.token b/haox-kerb/kerb-core-test/src/main/resources/asrep.token
deleted file mode 100644
index d77cff7..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/asrep.token and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/asreq.token
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/asreq.token b/haox-kerb/kerb-core-test/src/main/resources/asreq.token
deleted file mode 100644
index 6d503b3..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/asreq.token and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/des-kerberos-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/des-kerberos-data b/haox-kerb/kerb-core-test/src/main/resources/des-kerberos-data
deleted file mode 100644
index 3db6963..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/des-kerberos-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/des-key-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/des-key-data b/haox-kerb/kerb-core-test/src/main/resources/des-key-data
deleted file mode 100644
index 84a0c50..0000000
--- a/haox-kerb/kerb-core-test/src/main/resources/des-key-data
+++ /dev/null
@@ -1 +0,0 @@
-��2^�L�
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/des-pac-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/des-pac-data b/haox-kerb/kerb-core-test/src/main/resources/des-pac-data
deleted file mode 100644
index 7408111..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/des-pac-data and /dev/null differ

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/7d9261af/haox-kerb/kerb-core-test/src/main/resources/des-spnego-data
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-core-test/src/main/resources/des-spnego-data b/haox-kerb/kerb-core-test/src/main/resources/des-spnego-data
deleted file mode 100644
index 04a56e8..0000000
Binary files a/haox-kerb/kerb-core-test/src/main/resources/des-spnego-data and /dev/null differ


Mime
View raw message