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/25 05:13:34 UTC

[2/4] directory-kerberos git commit: Replaced the ASN1 parser

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERInputStream.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERInputStream.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERInputStream.java
deleted file mode 100644
index 403b2ce..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERInputStream.java
+++ /dev/null
@@ -1,179 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.EOFException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Vector;
-
-/** @deprecated use ASN1InputStream */
-public class BERInputStream
-    extends DERInputStream {
-    private static final DERObject END_OF_STREAM = new DERObject() {
-        void encode(
-            DEROutputStream out)
-            throws IOException {
-            throw new IOException("Eeek!");
-        }
-        public int hashCode() {
-            return 0;
-        }
-        public boolean equals(
-            Object o) {
-            return o == this;
-        }
-    };
-    public BERInputStream(
-        InputStream is) {
-        super(is);
-    }
-
-    /** read a string of bytes representing an indefinite length object. */
-    private byte[] readIndefiniteLengthFully()
-        throws IOException {
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        int b, b1;
-
-        b1 = read();
-
-        while ((b = read()) >= 0) {
-            if (b1 == 0 && b == 0) {
-                break;
-            }
-
-            bOut.write(b1);
-            b1 = b;
-        }
-
-        return bOut.toByteArray();
-    }
-
-    private BERConstructedOctetString buildConstructedOctetString()
-        throws IOException {
-        Vector octs = new Vector();
-
-        for (; ;) {
-            DERObject o = readObject();
-
-            if (o == END_OF_STREAM) {
-                break;
-            }
-
-            octs.addElement(o);
-        }
-
-        return new BERConstructedOctetString(octs);
-    }
-
-    public DERObject readObject()
-        throws IOException {
-        int tag = read();
-        if (tag == -1) {
-            throw new EOFException();
-        }
-
-        int length = readLength();
-
-        if (length < 0)    // indefinite length method
-        {
-            switch (tag) {
-                case NULL:
-                    return null;
-                case SEQUENCE | CONSTRUCTED:
-                    BERConstructedSequence seq = new BERConstructedSequence();
-
-                    for (; ;) {
-                        DERObject obj = readObject();
-
-                        if (obj == END_OF_STREAM) {
-                            break;
-                        }
-
-                        seq.addObject(obj);
-                    }
-                    return seq;
-                case OCTET_STRING | CONSTRUCTED:
-                    return buildConstructedOctetString();
-                case SET | CONSTRUCTED:
-                    ASN1EncodableVector v = new ASN1EncodableVector();
-
-                    for (; ;) {
-                        DERObject obj = readObject();
-
-                        if (obj == END_OF_STREAM) {
-                            break;
-                        }
-
-                        v.add(obj);
-                    }
-                    return new BERSet(v);
-                default:
-                    //
-                    // with tagged object tag number is bottom 5 bits
-                    //
-                    if ((tag & TAGGED) != 0) {
-                        if ((tag & 0x1f) == 0x1f) {
-                            throw new IOException("unsupported high tag encountered");
-                        }
-
-                        //
-                        // simple type - implicit... return an octet string
-                        //
-                        if ((tag & CONSTRUCTED) == 0) {
-                            byte[] bytes = readIndefiniteLengthFully();
-
-                            return new BERTaggedObject(false, tag & 0x1f, new DEROctetString(bytes));
-                        }
-
-                        //
-                        // either constructed or explicitly tagged
-                        //
-                        DERObject dObj = readObject();
-
-                        if (dObj == END_OF_STREAM)     // empty tag!
-                        {
-                            return new DERTaggedObject(tag & 0x1f);
-                        }
-
-                        DERObject next = readObject();
-
-                        //
-                        // explicitly tagged (probably!) - if it isn't we'd have to
-                        // tell from the context
-                        //
-                        if (next == END_OF_STREAM) {
-                            return new BERTaggedObject(tag & 0x1f, dObj);
-                        }
-
-                        //
-                        // another implicit object, we'll create a sequence...
-                        //
-                        seq = new BERConstructedSequence();
-
-                        seq.addObject(dObj);
-
-                        do {
-                            seq.addObject(next);
-                            next = readObject();
-                        }
-                        while (next != END_OF_STREAM);
-
-                        return new BERTaggedObject(false, tag & 0x1f, seq);
-                    }
-
-                    throw new IOException("unknown BER object encountered");
-            }
-        } else {
-            if (tag == 0 && length == 0)    // end of contents marker.
-            {
-                return END_OF_STREAM;
-            }
-
-            byte[] bytes = new byte[length];
-
-            readFully(bytes);
-
-            return buildObject(tag, bytes);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERNull.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERNull.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERNull.java
deleted file mode 100644
index e5c1626..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERNull.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-/** A BER NULL object. */
-public class BERNull
-    extends DERNull {
-    public static final BERNull INSTANCE = new BERNull();
-
-    public BERNull() {
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream) {
-            out.write(NULL);
-        } else {
-            super.encode(out);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringGenerator.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringGenerator.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringGenerator.java
deleted file mode 100644
index b21fade..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringGenerator.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-public class BEROctetStringGenerator
-    extends BERGenerator {
-    public BEROctetStringGenerator(OutputStream out)
-        throws IOException {
-        super(out);
-
-        writeBERHeader(DERTags.CONSTRUCTED | DERTags.OCTET_STRING);
-    }
-
-    public BEROctetStringGenerator(
-        OutputStream out,
-        int tagNo,
-        boolean isExplicit)
-        throws IOException {
-        super(out, tagNo, isExplicit);
-
-        writeBERHeader(DERTags.CONSTRUCTED | DERTags.OCTET_STRING);
-    }
-
-    public OutputStream getOctetOutputStream() {
-        return getOctetOutputStream(new byte[1000]); // limit for CER encoding.
-    }
-
-    public OutputStream getOctetOutputStream(
-        byte[] buf) {
-        return new BufferedBEROctetStream(buf);
-    }
-
-    private class BufferedBEROctetStream
-        extends OutputStream {
-        private byte[] _buf;
-        private int _off;
-
-        BufferedBEROctetStream(
-            byte[] buf) {
-            _buf = buf;
-            _off = 0;
-        }
-
-        public void write(
-            int b)
-            throws IOException {
-            _buf[_off++] = (byte) b;
-
-            if (_off == _buf.length) {
-                _out.write(new DEROctetString(_buf).getEncoded());
-                _off = 0;
-            }
-        }
-
-        public void write(byte[] b, int off, int len) throws IOException {
-            while (len > 0) {
-                int numToCopy = Math.min(len, _buf.length - _off);
-                System.arraycopy(b, off, _buf, _off, numToCopy);
-
-                _off += numToCopy;
-                if (_off < _buf.length) {
-                    break;
-                }
-
-                _out.write(new DEROctetString(_buf).getEncoded());
-                _off = 0;
-
-                off += numToCopy;
-                len -= numToCopy;
-            }
-        }
-
-        public void close()
-            throws IOException {
-            if (_off != 0) {
-                byte[] bytes = new byte[_off];
-                System.arraycopy(_buf, 0, bytes, 0, _off);
-
-                _out.write(new DEROctetString(bytes).getEncoded());
-            }
-
-            writeBEREnd();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringParser.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringParser.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringParser.java
deleted file mode 100644
index 2123c2b..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROctetStringParser.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-
-public class BEROctetStringParser
-    implements ASN1OctetStringParser {
-    private ASN1ObjectParser _parser;
-
-    protected BEROctetStringParser(
-        ASN1ObjectParser parser) {
-        _parser = parser;
-    }
-
-    public InputStream getOctetStream() {
-        return new ConstructedOctetStream(_parser);
-    }
-
-    public DERObject getDERObject() {
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        InputStream in = this.getOctetStream();
-        int ch;
-
-        try {
-            while ((ch = in.read()) >= 0) {
-                bOut.write(ch);
-            }
-        }
-        catch (IOException e) {
-            throw new IllegalStateException("IOException converting stream to byte array: " + e.getMessage());
-        }
-
-        return new BERConstructedOctetString(bOut.toByteArray());
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROutputStream.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROutputStream.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROutputStream.java
deleted file mode 100644
index 36f99ee..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BEROutputStream.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-public class BEROutputStream
-    extends DEROutputStream {
-    public BEROutputStream(
-        OutputStream os) {
-        super(os);
-    }
-
-    public void writeObject(
-        Object obj)
-        throws IOException {
-        if (obj == null) {
-            writeNull();
-        } else if (obj instanceof DERObject) {
-            ((DERObject) obj).encode(this);
-        } else if (obj instanceof DEREncodable) {
-            ((DEREncodable) obj).getDERObject().encode(this);
-        } else {
-            throw new IOException("object not BEREncodable");
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequence.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequence.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequence.java
deleted file mode 100644
index cc7667e..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequence.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.util.Enumeration;
-
-public class BERSequence
-    extends DERSequence {
-    /** create an empty sequence */
-    public BERSequence() {
-    }
-
-    /** create a sequence containing one object */
-    public BERSequence(
-        DEREncodable obj) {
-        super(obj);
-    }
-
-    /** create a sequence containing a vector of objects. */
-    public BERSequence(
-        DEREncodableVector v) {
-        super(v);
-    }
-
-    /*
-     */
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream) {
-            out.write(SEQUENCE | CONSTRUCTED);
-            out.write(0x80);
-
-            Enumeration e = getObjects();
-            while (e.hasMoreElements()) {
-                out.writeObject(e.nextElement());
-            }
-
-            out.write(0x00);
-            out.write(0x00);
-        } else {
-            super.encode(out);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceGenerator.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceGenerator.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceGenerator.java
deleted file mode 100644
index 0e821ce..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceGenerator.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-public class BERSequenceGenerator
-    extends BERGenerator {
-    public BERSequenceGenerator(
-        OutputStream out)
-        throws IOException {
-        super(out);
-
-        writeBERHeader(DERTags.CONSTRUCTED | DERTags.SEQUENCE);
-    }
-
-    public BERSequenceGenerator(
-        OutputStream out,
-        int tagNo,
-        boolean isExplicit)
-        throws IOException {
-        super(out, tagNo, isExplicit);
-
-        writeBERHeader(DERTags.CONSTRUCTED | DERTags.SEQUENCE);
-    }
-
-    public void addObject(
-        DEREncodable object)
-        throws IOException {
-        object.getDERObject().encode(new DEROutputStream(_out));
-    }
-
-    public void close()
-        throws IOException {
-        writeBEREnd();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceParser.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceParser.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceParser.java
deleted file mode 100644
index fb7dad3..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSequenceParser.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-public class BERSequenceParser
-    implements ASN1SequenceParser {
-    private ASN1ObjectParser _parser;
-
-    BERSequenceParser(ASN1ObjectParser parser) {
-        this._parser = parser;
-    }
-
-    public DEREncodable readObject()
-        throws IOException {
-        return _parser.readObject();
-    }
-
-    public DERObject getDERObject() {
-        return new BERSequence(_parser.readVector());
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSet.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSet.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSet.java
deleted file mode 100644
index db80cf4..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSet.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.util.Enumeration;
-
-public class BERSet
-    extends DERSet {
-    /** create an empty sequence */
-    public BERSet() {
-    }
-
-    /** create a set containing one object */
-    public BERSet(
-        DEREncodable obj) {
-        super(obj);
-    }
-
-    /** @param v - a vector of objects making up the set. */
-    public BERSet(
-        DEREncodableVector v) {
-        super(v, false);
-    }
-
-    /** @param v - a vector of objects making up the set. */
-    BERSet(
-        DEREncodableVector v,
-        boolean needsSorting) {
-        super(v, needsSorting);
-    }
-
-    /*
-     */
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream) {
-            out.write(SET | CONSTRUCTED);
-            out.write(0x80);
-
-            Enumeration e = getObjects();
-            while (e.hasMoreElements()) {
-                out.writeObject(e.nextElement());
-            }
-
-            out.write(0x00);
-            out.write(0x00);
-        } else {
-            super.encode(out);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSetParser.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSetParser.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSetParser.java
deleted file mode 100644
index 7f88189..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERSetParser.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-public class BERSetParser
-    implements ASN1SetParser {
-    private ASN1ObjectParser _parser;
-
-    BERSetParser(ASN1ObjectParser parser) {
-        this._parser = parser;
-    }
-
-    public DEREncodable readObject()
-        throws IOException {
-        return _parser.readObject();
-    }
-
-    public DERObject getDERObject() {
-        return new BERSet(_parser.readVector());
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObject.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObject.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObject.java
deleted file mode 100644
index c0be868..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObject.java
+++ /dev/null
@@ -1,94 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.util.Enumeration;
-
-/**
- * BER TaggedObject - in ASN.1 nottation this is any object proceeded by
- * a [n] where n is some number - these are assume to follow the construction
- * rules (as with sequences).
- */
-public class BERTaggedObject
-    extends DERTaggedObject {
-    /**
-     * @param tagNo the tag number for this object.
-     * @param obj   the tagged object.
-     */
-    public BERTaggedObject(
-        int tagNo,
-        DEREncodable obj) {
-        super(tagNo, obj);
-    }
-
-    /**
-     * @param explicit true if an explicitly tagged object.
-     * @param tagNo    the tag number for this object.
-     * @param obj      the tagged object.
-     */
-    public BERTaggedObject(
-        boolean explicit,
-        int tagNo,
-        DEREncodable obj) {
-        super(explicit, tagNo, obj);
-    }
-
-    /**
-     * create an implicitly tagged object that contains a zero
-     * length sequence.
-     */
-    public BERTaggedObject(
-        int tagNo) {
-        super(false, tagNo, new BERSequence());
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream) {
-            out.write(CONSTRUCTED | TAGGED | tagNo);
-            out.write(0x80);
-
-            if (!empty) {
-                if (!explicit) {
-                    if (obj instanceof ASN1OctetString) {
-                        Enumeration e;
-
-                        if (obj instanceof BERConstructedOctetString) {
-                            e = ((BERConstructedOctetString) obj).getObjects();
-                        } else {
-                            ASN1OctetString octs = (ASN1OctetString) obj;
-                            BERConstructedOctetString berO = new BERConstructedOctetString(octs.getOctets());
-
-                            e = berO.getObjects();
-                        }
-
-                        while (e.hasMoreElements()) {
-                            out.writeObject(e.nextElement());
-                        }
-                    } else if (obj instanceof ASN1Sequence) {
-                        Enumeration e = ((ASN1Sequence) obj).getObjects();
-
-                        while (e.hasMoreElements()) {
-                            out.writeObject(e.nextElement());
-                        }
-                    } else if (obj instanceof ASN1Set) {
-                        Enumeration e = ((ASN1Set) obj).getObjects();
-
-                        while (e.hasMoreElements()) {
-                            out.writeObject(e.nextElement());
-                        }
-                    } else {
-                        throw new RuntimeException("not implemented: " + obj.getClass().getName());
-                    }
-                } else {
-                    out.writeObject(obj);
-                }
-            }
-
-            out.write(0x00);
-            out.write(0x00);
-        } else {
-            super.encode(out);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObjectParser.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObjectParser.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObjectParser.java
deleted file mode 100644
index 0f45cdb..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/BERTaggedObjectParser.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-public class BERTaggedObjectParser
-    implements ASN1TaggedObjectParser {
-    private int _baseTag;
-    private int _tagNumber;
-    private InputStream _contentStream;
-
-    private boolean _indefiniteLength;
-
-    protected BERTaggedObjectParser(
-        int baseTag,
-        int tagNumber,
-        InputStream contentStream) {
-        _baseTag = baseTag;
-        _tagNumber = tagNumber;
-        _contentStream = contentStream;
-        _indefiniteLength = contentStream instanceof IndefiniteLengthInputStream;
-    }
-
-    public boolean isConstructed() {
-        return (_baseTag & DERTags.CONSTRUCTED) != 0;
-    }
-
-    public int getTagNo() {
-        return _tagNumber;
-    }
-
-    public DEREncodable getObjectParser(
-        int tag,
-        boolean isExplicit)
-        throws IOException {
-        if (isExplicit) {
-            return new ASN1StreamParser(_contentStream).readObject();
-        } else {
-            switch (tag) {
-                case DERTags.SET:
-                    if (_indefiniteLength) {
-                        return new BERSetParser(new ASN1ObjectParser(_baseTag, _tagNumber, _contentStream));
-                    } else {
-                        return new DERSet(loadVector(_contentStream)).parser();
-                    }
-                case DERTags.SEQUENCE:
-                    if (_indefiniteLength) {
-                        return new BERSequenceParser(new ASN1ObjectParser(_baseTag, _tagNumber, _contentStream));
-                    } else {
-                        return new DERSequence(loadVector(_contentStream)).parser();
-                    }
-                case DERTags.OCTET_STRING:
-                    if (_indefiniteLength || this.isConstructed()) {
-                        return new BEROctetStringParser(new ASN1ObjectParser(_baseTag, _tagNumber, _contentStream));
-                    } else {
-                        return new DEROctetString(((DefiniteLengthInputStream) _contentStream).toByteArray()).parser();
-                    }
-            }
-        }
-
-        throw new RuntimeException("implicit tagging not implemented");
-    }
-
-    private ASN1EncodableVector loadVector(InputStream in)
-        throws IOException {
-        ASN1StreamParser aIn = new ASN1StreamParser(in);
-        ASN1EncodableVector v = new ASN1EncodableVector();
-        DEREncodable obj = aIn.readObject();
-
-        while (obj != null) {
-            v.add(obj.getDERObject());
-            obj = aIn.readObject();
-        }
-
-        return v;
-    }
-
-    private ASN1EncodableVector rLoadVector(InputStream in) {
-        try {
-            return loadVector(in);
-        }
-        catch (IOException e) {
-            throw new IllegalStateException(e.getMessage());
-        }
-    }
-
-    public DERObject getDERObject() {
-        if (_indefiniteLength) {
-            ASN1EncodableVector v = rLoadVector(_contentStream);
-
-            if (v.size() > 1) {
-                return new BERTaggedObject(false, _tagNumber, new BERSequence(v));
-            } else if (v.size() == 1) {
-                return new BERTaggedObject(true, _tagNumber, v.get(0));
-            } else {
-                return new BERTaggedObject(false, _tagNumber, new BERSequence());
-            }
-        } else {
-            if (this.isConstructed()) {
-                ASN1EncodableVector v = rLoadVector(_contentStream);
-
-                if (v.size() == 1) {
-                    return new DERTaggedObject(true, _tagNumber, v.get(0));
-                }
-
-                return new DERTaggedObject(false, _tagNumber, new DERSequence(v));
-            }
-
-            try {
-                return new DERTaggedObject(false, _tagNumber, new DEROctetString(((DefiniteLengthInputStream) _contentStream).toByteArray()));
-            }
-            catch (IOException e) {
-                throw new IllegalStateException(e.getMessage());
-            }
-        }
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/ConstructedOctetStream.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/ConstructedOctetStream.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/ConstructedOctetStream.java
deleted file mode 100644
index 18565bb..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/ConstructedOctetStream.java
+++ /dev/null
@@ -1,92 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-class ConstructedOctetStream
-    extends InputStream {
-    private final ASN1ObjectParser _parser;
-
-    private boolean _first = true;
-    private InputStream _currentStream;
-
-    ConstructedOctetStream(
-        ASN1ObjectParser parser) {
-        _parser = parser;
-    }
-
-    public int read(byte[] b, int off, int len) throws IOException {
-        if (_currentStream == null) {
-            if (!_first) {
-                return -1;
-            }
-
-            ASN1OctetStringParser s = (ASN1OctetStringParser) _parser.readObject();
-
-            if (s == null) {
-                return -1;
-            }
-
-            _first = false;
-            _currentStream = s.getOctetStream();
-        }
-
-        int totalRead = 0;
-
-        for (; ;) {
-            int numRead = _currentStream.read(b, off + totalRead, len - totalRead);
-
-            if (numRead >= 0) {
-                totalRead += numRead;
-
-                if (totalRead == len) {
-                    return totalRead;
-                }
-            } else {
-                ASN1OctetStringParser aos = (ASN1OctetStringParser) _parser.readObject();
-
-                if (aos == null) {
-                    _currentStream = null;
-                    return totalRead < 1 ? -1 : totalRead;
-                }
-
-                _currentStream = aos.getOctetStream();
-            }
-        }
-    }
-
-    public int read()
-        throws IOException {
-        if (_currentStream == null) {
-            if (!_first) {
-                return -1;
-            }
-
-            ASN1OctetStringParser s = (ASN1OctetStringParser) _parser.readObject();
-
-            if (s == null) {
-                return -1;
-            }
-
-            _first = false;
-            _currentStream = s.getOctetStream();
-        }
-
-        for (; ;) {
-            int b = _currentStream.read();
-
-            if (b >= 0) {
-                return b;
-            }
-
-            ASN1OctetStringParser s = (ASN1OctetStringParser) _parser.readObject();
-
-            if (s == null) {
-                _currentStream = null;
-                return -1;
-            }
-
-            _currentStream = s.getOctetStream();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERApplicationSpecific.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERApplicationSpecific.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERApplicationSpecific.java
deleted file mode 100644
index 1396f91..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERApplicationSpecific.java
+++ /dev/null
@@ -1,143 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-
-/** Base class for an application specific object */
-public class DERApplicationSpecific
-    extends ASN1Object {
-    private int tag;
-    private byte[] octets;
-
-    public DERApplicationSpecific(
-        int tag,
-        byte[] octets) {
-        this.tag = tag;
-        this.octets = octets;
-    }
-
-    public DERApplicationSpecific(
-        int tag,
-        DEREncodable object)
-        throws IOException {
-        this(true, tag, object);
-    }
-
-    public DERApplicationSpecific(
-        boolean explicit,
-        int tag,
-        DEREncodable object)
-        throws IOException {
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        DEROutputStream dos = new DEROutputStream(bOut);
-
-        dos.writeObject(object);
-
-        byte[] data = bOut.toByteArray();
-
-        if (tag >= 0x1f) {
-            throw new IOException("unsupported tag number");
-        }
-
-        if (explicit) {
-            this.tag = tag | DERTags.CONSTRUCTED;
-            this.octets = data;
-        } else {
-            this.tag = tag;
-            int lenBytes = getLengthOfLength(data);
-            byte[] tmp = new byte[data.length - lenBytes];
-            System.arraycopy(data, lenBytes, tmp, 0, tmp.length);
-            this.octets = tmp;
-        }
-    }
-
-    private int getLengthOfLength(byte[] data) {
-        int count = 2;               // TODO: assumes only a 1 byte tag number
-
-        while ((data[count - 1] & 0x80) != 0) {
-            count++;
-        }
-
-        return count;
-    }
-
-    public boolean isConstructed() {
-        return (tag & DERTags.CONSTRUCTED) != 0;
-    }
-
-    public byte[] getContents() {
-        return octets;
-    }
-
-    public int getApplicationTag() {
-        return tag;
-    }
-
-    public DERObject getObject()
-        throws IOException {
-        return new ASN1InputStream(getContents()).readObject();
-    }
-
-    /**
-     * Return the enclosed object assuming implicit tagging.
-     *
-     * @param derTagNo the type tag that should be applied to the object's contents.
-     * @return the resulting object
-     * @throws java.io.IOException if reconstruction fails.
-     */
-    public DERObject getObject(int derTagNo)
-        throws IOException {
-        if (tag >= 0x1f) {
-            throw new IOException("unsupported tag number");
-        }
-
-        byte[] tmp = this.getEncoded();
-
-        tmp[0] = (byte) derTagNo;
-
-        return new ASN1InputStream(tmp).readObject();
-    }
-
-    /* (non-Javadoc)
-    * @see org.apache.commons.ssl.asn1.DERObject#encode(org.apache.commons.ssl.asn1.DEROutputStream)
-    */
-    void encode(DEROutputStream out) throws IOException {
-        out.writeEncoded(DERTags.APPLICATION | tag, octets);
-    }
-
-    boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERApplicationSpecific)) {
-            return false;
-        }
-
-        DERApplicationSpecific other = (DERApplicationSpecific) o;
-
-        if (tag != other.tag) {
-            return false;
-        }
-
-        if (octets.length != other.octets.length) {
-            return false;
-        }
-
-        for (int i = 0; i < octets.length; i++) {
-            if (octets[i] != other.octets[i]) {
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-    public int hashCode() {
-        byte[] b = this.getContents();
-        int value = 0;
-
-        for (int i = 0; i != b.length; i++) {
-            value ^= (b[i] & 0xff) << (i % 4);
-        }
-
-        return value ^ this.getApplicationTag();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBMPString.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBMPString.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBMPString.java
deleted file mode 100644
index e093582..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBMPString.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-/** DER BMPString object. */
-public class DERBMPString
-    extends ASN1Object
-    implements DERString {
-    String string;
-
-    /**
-     * return a BMP String from the given object.
-     *
-     * @param obj the object we want converted.
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERBMPString getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERBMPString) {
-            return (DERBMPString) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DERBMPString(((ASN1OctetString) obj).getOctets());
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return a BMP String from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERBMPString getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-
-    /** basic constructor - byte encoded string. */
-    public DERBMPString(
-        byte[] string) {
-        char[] cs = new char[string.length / 2];
-
-        for (int i = 0; i != cs.length; i++) {
-            cs[i] = (char) ((string[2 * i] << 8) | (string[2 * i + 1] & 0xff));
-        }
-
-        this.string = new String(cs);
-    }
-
-    /** basic constructor */
-    public DERBMPString(
-        String string) {
-        this.string = string;
-    }
-
-    public String getString() {
-        return string;
-    }
-
-    public String toString() {
-        return string;
-    }
-
-    public int hashCode() {
-        return this.getString().hashCode();
-    }
-
-    protected boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERBMPString)) {
-            return false;
-        }
-
-        DERBMPString s = (DERBMPString) o;
-
-        return this.getString().equals(s.getString());
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        char[] c = string.toCharArray();
-        byte[] b = new byte[c.length * 2];
-
-        for (int i = 0; i != c.length; i++) {
-            b[2 * i] = (byte) (c[i] >> 8);
-            b[2 * i + 1] = (byte) c[i];
-        }
-
-        out.writeEncoded(BMP_STRING, b);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBitString.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBitString.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBitString.java
deleted file mode 100644
index 2cb649c..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBitString.java
+++ /dev/null
@@ -1,245 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-
-public class DERBitString
-    extends ASN1Object
-    implements DERString {
-    private static final char[] table = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
-
-    protected byte[] data;
-    protected int padBits;
-
-    /**
-     * return the correct number of pad bits for a bit string defined in
-     * a 32 bit constant
-     */
-    static protected int getPadBits(
-        int bitString) {
-        int val = 0;
-        for (int i = 3; i >= 0; i--) {
-            //
-            // this may look a little odd, but if it isn't done like this pre jdk1.2
-            // JVM's break!
-            //
-            if (i != 0) {
-                if ((bitString >> (i * 8)) != 0) {
-                    val = (bitString >> (i * 8)) & 0xFF;
-                    break;
-                }
-            } else {
-                if (bitString != 0) {
-                    val = bitString & 0xFF;
-                    break;
-                }
-            }
-        }
-
-        if (val == 0) {
-            return 7;
-        }
-
-
-        int bits = 1;
-
-        while (((val <<= 1) & 0xFF) != 0) {
-            bits++;
-        }
-
-        return 8 - bits;
-    }
-
-    /**
-     * return the correct number of bytes for a bit string defined in
-     * a 32 bit constant
-     */
-    static protected byte[] getBytes(int bitString) {
-        int bytes = 4;
-        for (int i = 3; i >= 1; i--) {
-            if ((bitString & (0xFF << (i * 8))) != 0) {
-                break;
-            }
-            bytes--;
-        }
-
-        byte[] result = new byte[bytes];
-        for (int i = 0; i < bytes; i++) {
-            result[i] = (byte) ((bitString >> (i * 8)) & 0xFF);
-        }
-
-        return result;
-    }
-
-    /**
-     * return a Bit String from the passed in object
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERBitString getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERBitString) {
-            return (DERBitString) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            byte[] bytes = ((ASN1OctetString) obj).getOctets();
-            int padBits = bytes[0];
-            byte[] data = new byte[bytes.length - 1];
-
-            System.arraycopy(bytes, 1, data, 0, bytes.length - 1);
-
-            return new DERBitString(data, padBits);
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return a Bit String from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERBitString getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    protected DERBitString(
-        byte data,
-        int padBits) {
-        this.data = new byte[1];
-        this.data[0] = data;
-        this.padBits = padBits;
-    }
-
-    /**
-     * @param data    the octets making up the bit string.
-     * @param padBits the number of extra bits at the end of the string.
-     */
-    public DERBitString(
-        byte[] data,
-        int padBits) {
-        this.data = data;
-        this.padBits = padBits;
-    }
-
-    public DERBitString(
-        byte[] data) {
-        this(data, 0);
-    }
-
-    public DERBitString(
-        DEREncodable obj) {
-        try {
-            ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-            DEROutputStream dOut = new DEROutputStream(bOut);
-
-            dOut.writeObject(obj);
-            dOut.close();
-
-            this.data = bOut.toByteArray();
-            this.padBits = 0;
-        }
-        catch (IOException e) {
-            throw new IllegalArgumentException("Error processing object : " + e.toString());
-        }
-    }
-
-    public byte[] getBytes() {
-        return data;
-    }
-
-    public int getPadBits() {
-        return padBits;
-    }
-
-
-    /** @return the value of the bit string as an int (truncating if necessary) */
-    public int intValue() {
-        int value = 0;
-
-        for (int i = 0; i != data.length && i != 4; i++) {
-            value |= (data[i] & 0xff) << (8 * i);
-        }
-
-        return value;
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        byte[] bytes = new byte[getBytes().length + 1];
-
-        bytes[0] = (byte) getPadBits();
-        System.arraycopy(getBytes(), 0, bytes, 1, bytes.length - 1);
-
-        out.writeEncoded(BIT_STRING, bytes);
-    }
-
-    public int hashCode() {
-        int value = 0;
-
-        for (int i = 0; i != data.length; i++) {
-            value ^= (data[i] & 0xff) << (i % 4);
-        }
-
-        return value;
-    }
-
-    protected boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERBitString)) {
-            return false;
-        }
-
-        DERBitString other = (DERBitString) o;
-
-        if (data.length != other.data.length) {
-            return false;
-        }
-
-        for (int i = 0; i != data.length; i++) {
-            if (data[i] != other.data[i]) {
-                return false;
-            }
-        }
-
-        return (padBits == other.padBits);
-    }
-
-    public String getString() {
-        StringBuffer buf = new StringBuffer("#");
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        ASN1OutputStream aOut = new ASN1OutputStream(bOut);
-
-        try {
-            aOut.writeObject(this);
-        }
-        catch (IOException e) {
-            throw new RuntimeException("internal error encoding BitString");
-        }
-
-        byte[] string = bOut.toByteArray();
-
-        for (int i = 0; i != string.length; i++) {
-            buf.append(table[(string[i] >>> 4) & 0xf]);
-            buf.append(table[string[i] & 0xf]);
-        }
-
-        return buf.toString();
-    }
-
-    public String toString() {
-        return getString();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBoolean.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBoolean.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBoolean.java
deleted file mode 100644
index e49ec6c..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERBoolean.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-public class DERBoolean
-    extends ASN1Object {
-    byte value;
-
-    public static final DERBoolean FALSE = new DERBoolean(false);
-    public static final DERBoolean TRUE = new DERBoolean(true);
-
-    /**
-     * return a boolean from the passed in object.
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERBoolean getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERBoolean) {
-            return (DERBoolean) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DERBoolean(((ASN1OctetString) obj).getOctets());
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /** return a DERBoolean from the passed in boolean. */
-    public static DERBoolean getInstance(
-        boolean value) {
-        return (value ? TRUE : FALSE);
-    }
-
-    /**
-     * return a Boolean from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERBoolean getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    public DERBoolean(
-        byte[] value) {
-        this.value = value[0];
-    }
-
-    public DERBoolean(
-        boolean value) {
-        this.value = (value) ? (byte) 0xff : (byte) 0;
-    }
-
-    public boolean isTrue() {
-        return (value != 0);
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        byte[] bytes = new byte[1];
-
-        bytes[0] = value;
-
-        out.writeEncoded(BOOLEAN, bytes);
-    }
-
-    protected boolean asn1Equals(
-        DERObject o) {
-        if ((o == null) || !(o instanceof DERBoolean)) {
-            return false;
-        }
-
-        return (value == ((DERBoolean) o).value);
-    }
-
-    public int hashCode() {
-        return value;
-    }
-
-
-    public String toString() {
-        return (value != 0) ? "TRUE" : "FALSE";
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSequence.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSequence.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSequence.java
deleted file mode 100644
index f7cad53..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSequence.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.Enumeration;
-
-/** @deprecated use DERSequence. */
-public class DERConstructedSequence
-    extends ASN1Sequence {
-    public void addObject(
-        DEREncodable obj) {
-        super.addObject(obj);
-    }
-
-    public int getSize() {
-        return size();
-    }
-
-    /*
-     * A note on the implementation:
-     * <p>
-     * As DER requires the constructed, definite-length model to
-     * be used for structured types, this varies slightly from the
-     * ASN.1 descriptions given. Rather than just outputing SEQUENCE,
-     * we also have to specify CONSTRUCTED, and the objects length.
-     */
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        DEROutputStream dOut = new DEROutputStream(bOut);
-        Enumeration e = this.getObjects();
-
-        while (e.hasMoreElements()) {
-            Object obj = e.nextElement();
-
-            dOut.writeObject(obj);
-        }
-
-        dOut.close();
-
-        byte[] bytes = bOut.toByteArray();
-
-        out.writeEncoded(SEQUENCE | CONSTRUCTED, bytes);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSet.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSet.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSet.java
deleted file mode 100644
index 50adf8e..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERConstructedSet.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.Enumeration;
-
-/** @deprecated use DERSet */
-public class DERConstructedSet
-    extends ASN1Set {
-    public DERConstructedSet() {
-    }
-
-    /** @param obj - a single object that makes up the set. */
-    public DERConstructedSet(
-        DEREncodable obj) {
-        this.addObject(obj);
-    }
-
-    /** @param v - a vector of objects making up the set. */
-    public DERConstructedSet(
-        DEREncodableVector v) {
-        for (int i = 0; i != v.size(); i++) {
-            this.addObject(v.get(i));
-        }
-    }
-
-    public void addObject(
-        DEREncodable obj) {
-        super.addObject(obj);
-    }
-
-    public int getSize() {
-        return size();
-    }
-
-    /*
-     * A note on the implementation:
-     * <p>
-     * As DER requires the constructed, definite-length model to
-     * be used for structured types, this varies slightly from the
-     * ASN.1 descriptions given. Rather than just outputing SET,
-     * we also have to specify CONSTRUCTED, and the objects length.
-     */
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-        DEROutputStream dOut = new DEROutputStream(bOut);
-        Enumeration e = this.getObjects();
-
-        while (e.hasMoreElements()) {
-            Object obj = e.nextElement();
-
-            dOut.writeObject(obj);
-        }
-
-        dOut.close();
-
-        byte[] bytes = bOut.toByteArray();
-
-        out.writeEncoded(SET | CONSTRUCTED, bytes);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodable.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodable.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodable.java
deleted file mode 100644
index cbaebf9..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodable.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-public interface DEREncodable {
-    public DERObject getDERObject();
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodableVector.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodableVector.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodableVector.java
deleted file mode 100644
index d441a44..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREncodableVector.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.util.Vector;
-
-/**
- * a general class for building up a vector of DER encodable objects -
- * this will eventually be superceded by ASN1EncodableVector so you should
- * use that class in preference.
- */
-public class DEREncodableVector {
-    private Vector v = new Vector();
-
-    /** @deprecated use ASN1EncodableVector instead. */
-    public DEREncodableVector() {
-
-    }
-
-    public void add(
-        DEREncodable obj) {
-        v.addElement(obj);
-    }
-
-    public DEREncodable get(
-        int i) {
-        return (DEREncodable) v.elementAt(i);
-    }
-
-    public int size() {
-        return v.size();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREnumerated.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREnumerated.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREnumerated.java
deleted file mode 100644
index faacf13..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DEREnumerated.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.math.BigInteger;
-
-public class DEREnumerated
-    extends ASN1Object {
-    byte[] bytes;
-
-    /**
-     * return an integer from the passed in object
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DEREnumerated getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DEREnumerated) {
-            return (DEREnumerated) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DEREnumerated(((ASN1OctetString) obj).getOctets());
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return an Enumerated from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DEREnumerated getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    public DEREnumerated(
-        int value) {
-        bytes = BigInteger.valueOf(value).toByteArray();
-    }
-
-    public DEREnumerated(
-        BigInteger value) {
-        bytes = value.toByteArray();
-    }
-
-    public DEREnumerated(
-        byte[] bytes) {
-        this.bytes = bytes;
-    }
-
-    public BigInteger getValue() {
-        return new BigInteger(bytes);
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        out.writeEncoded(ENUMERATED, bytes);
-    }
-
-    boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DEREnumerated)) {
-            return false;
-        }
-
-        DEREnumerated other = (DEREnumerated) o;
-
-        if (bytes.length != other.bytes.length) {
-            return false;
-        }
-
-        for (int i = 0; i != bytes.length; i++) {
-            if (bytes[i] != other.bytes[i]) {
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-    public int hashCode() {
-        return this.getValue().hashCode();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralString.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralString.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralString.java
deleted file mode 100644
index d571a1d..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralString.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-public class DERGeneralString
-    extends ASN1Object implements DERString {
-    private String string;
-
-    public static DERGeneralString getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERGeneralString) {
-            return (DERGeneralString) obj;
-        }
-        if (obj instanceof ASN1OctetString) {
-            return new DERGeneralString(((ASN1OctetString) obj).getOctets());
-        }
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-        throw new IllegalArgumentException("illegal object in getInstance: "
-                                           + obj.getClass().getName());
-    }
-
-    public static DERGeneralString getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    public DERGeneralString(byte[] string) {
-        char[] cs = new char[string.length];
-        for (int i = 0; i != cs.length; i++) {
-            cs[i] = (char) (string[i] & 0xff);
-        }
-        this.string = new String(cs);
-    }
-
-    public DERGeneralString(String string) {
-        this.string = string;
-    }
-
-    public String getString() {
-        return string;
-    }
-
-    public String toString() {
-        return string;
-    }
-
-    public byte[] getOctets() {
-        char[] cs = string.toCharArray();
-        byte[] bs = new byte[cs.length];
-        for (int i = 0; i != cs.length; i++) {
-            bs[i] = (byte) cs[i];
-        }
-        return bs;
-    }
-
-    void encode(DEROutputStream out)
-        throws IOException {
-        out.writeEncoded(GENERAL_STRING, this.getOctets());
-    }
-
-    public int hashCode() {
-        return this.getString().hashCode();
-    }
-
-    boolean asn1Equals(DERObject o) {
-        if (!(o instanceof DERGeneralString)) {
-            return false;
-        }
-        DERGeneralString s = (DERGeneralString) o;
-        return this.getString().equals(s.getString());
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralizedTime.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralizedTime.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralizedTime.java
deleted file mode 100644
index 0e2de28..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGeneralizedTime.java
+++ /dev/null
@@ -1,242 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.SimpleTimeZone;
-import java.util.TimeZone;
-
-/** Generalized time object. */
-public class DERGeneralizedTime
-    extends ASN1Object {
-    String time;
-
-    /**
-     * return a generalized time from the passed in object
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERGeneralizedTime getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERGeneralizedTime) {
-            return (DERGeneralizedTime) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DERGeneralizedTime(((ASN1OctetString) obj).getOctets());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return a Generalized Time object from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERGeneralizedTime getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    /**
-     * The correct format for this is YYYYMMDDHHMMSS[.f]Z, or without the Z
-     * for local time, or Z+-HHMM on the end, for difference between local
-     * time and UTC time. The fractional second amount f must consist of at
-     * least one number with trailing zeroes removed.
-     *
-     * @param time the time string.
-     * @throws IllegalArgumentException if String is an illegal format.
-     */
-    public DERGeneralizedTime(
-        String time) {
-        this.time = time;
-        try {
-            this.getDate();
-        }
-        catch (ParseException e) {
-            throw new IllegalArgumentException("invalid date string: " + e.getMessage());
-        }
-    }
-
-    /** base constructer from a java.util.date object */
-    public DERGeneralizedTime(
-        Date time) {
-        SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'");
-
-        dateF.setTimeZone(new SimpleTimeZone(0, "Z"));
-
-        this.time = dateF.format(time);
-    }
-
-    DERGeneralizedTime(
-        byte[] bytes) {
-        //
-        // explicitly convert to characters
-        //
-        char[] dateC = new char[bytes.length];
-
-        for (int i = 0; i != dateC.length; i++) {
-            dateC[i] = (char) (bytes[i] & 0xff);
-        }
-
-        this.time = new String(dateC);
-    }
-
-    /**
-     * Return the time.
-     *
-     * @return The time string as it appeared in the encoded object.
-     */
-    public String getTimeString() {
-        return time;
-    }
-
-    /**
-     * return the time - always in the form of
-     * YYYYMMDDhhmmssGMT(+hh:mm|-hh:mm).
-     * <p/>
-     * Normally in a certificate we would expect "Z" rather than "GMT",
-     * however adding the "GMT" means we can just use:
-     * <pre>
-     *     dateF = new SimpleDateFormat("yyyyMMddHHmmssz");
-     * </pre>
-     * To read in the time and get a date which is compatible with our local
-     * time zone.
-     */
-    public String getTime() {
-        //
-        // standardise the format.
-        //             
-        if (time.charAt(time.length() - 1) == 'Z') {
-            return time.substring(0, time.length() - 1) + "GMT+00:00";
-        } else {
-            int signPos = time.length() - 5;
-            char sign = time.charAt(signPos);
-            if (sign == '-' || sign == '+') {
-                return time.substring(0, signPos)
-                       + "GMT"
-                       + time.substring(signPos, signPos + 3)
-                       + ":"
-                       + time.substring(signPos + 3);
-            } else {
-                signPos = time.length() - 3;
-                sign = time.charAt(signPos);
-                if (sign == '-' || sign == '+') {
-                    return time.substring(0, signPos)
-                           + "GMT"
-                           + time.substring(signPos)
-                           + ":00";
-                }
-            }
-        }
-        return time + calculateGMTOffset();
-    }
-
-    private String calculateGMTOffset() {
-        String sign = "+";
-        TimeZone timeZone = TimeZone.getDefault();
-        int offset = timeZone.getRawOffset();
-        if (offset < 0) {
-            sign = "-";
-            offset = -offset;
-        }
-        int hours = offset / (60 * 60 * 1000);
-        int minutes = (offset - (hours * 60 * 60 * 1000)) / (60 * 1000);
-
-        try {
-            if (timeZone.useDaylightTime() && timeZone.inDaylightTime(this.getDate())) {
-                hours += sign.equals("+") ? 1 : -1;
-            }
-        }
-        catch (ParseException e) {
-            // we'll do our best and ignore daylight savings
-        }
-
-        return "GMT" + sign + convert(hours) + ":" + convert(minutes);
-    }
-
-    private String convert(int time) {
-        if (time < 10) {
-            return "0" + time;
-        }
-
-        return Integer.toString(time);
-    }
-
-    public Date getDate()
-        throws ParseException {
-        SimpleDateFormat dateF;
-        String d = time;
-
-        if (time.endsWith("Z")) {
-            if (hasFractionalSeconds()) {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSS'Z'");
-            } else {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'");
-            }
-
-            dateF.setTimeZone(new SimpleTimeZone(0, "Z"));
-        } else if (time.indexOf('-') > 0 || time.indexOf('+') > 0) {
-            d = this.getTime();
-            if (hasFractionalSeconds()) {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSSz");
-            } else {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmssz");
-            }
-
-            dateF.setTimeZone(new SimpleTimeZone(0, "Z"));
-        } else {
-            if (hasFractionalSeconds()) {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSS");
-            } else {
-                dateF = new SimpleDateFormat("yyyyMMddHHmmss");
-            }
-
-            dateF.setTimeZone(new SimpleTimeZone(0, TimeZone.getDefault().getID()));
-        }
-
-        return dateF.parse(d);
-    }
-
-    private boolean hasFractionalSeconds() {
-        return time.indexOf('.') == 14;
-    }
-
-    private byte[] getOctets() {
-        char[] cs = time.toCharArray();
-        byte[] bs = new byte[cs.length];
-
-        for (int i = 0; i != cs.length; i++) {
-            bs[i] = (byte) cs[i];
-        }
-
-        return bs;
-    }
-
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        out.writeEncoded(GENERALIZED_TIME, this.getOctets());
-    }
-
-    boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERGeneralizedTime)) {
-            return false;
-        }
-
-        return time.equals(((DERGeneralizedTime) o).time);
-    }
-
-    public int hashCode() {
-        return time.hashCode();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGenerator.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGenerator.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGenerator.java
deleted file mode 100644
index 359d931..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERGenerator.java
+++ /dev/null
@@ -1,108 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-public abstract class DERGenerator
-    extends ASN1Generator {
-    private boolean _tagged = false;
-    private boolean _isExplicit;
-    private int _tagNo;
-
-    protected DERGenerator(
-        OutputStream out) {
-        super(out);
-    }
-
-    public DERGenerator(
-        OutputStream out,
-        int tagNo,
-        boolean isExplicit) {
-        super(out);
-
-        _tagged = true;
-        _isExplicit = isExplicit;
-        _tagNo = tagNo;
-    }
-
-    private void writeLength(
-        OutputStream out,
-        int length)
-        throws IOException {
-        if (length > 127) {
-            int size = 1;
-            int val = length;
-
-            while ((val >>>= 8) != 0) {
-                size++;
-            }
-
-            out.write((byte) (size | 0x80));
-
-            for (int i = (size - 1) * 8; i >= 0; i -= 8) {
-                out.write((byte) (length >> i));
-            }
-        } else {
-            out.write((byte) length);
-        }
-    }
-
-    void writeDEREncoded(
-        OutputStream out,
-        int tag,
-        byte[] bytes)
-        throws IOException {
-        out.write(tag);
-        writeLength(out, bytes.length);
-        out.write(bytes);
-    }
-
-    void writeDEREncoded(
-        int tag,
-        byte[] bytes)
-        throws IOException {
-        if (_tagged) {
-            int tagNum = _tagNo | DERTags.TAGGED;
-
-            if (_isExplicit) {
-                int newTag = _tagNo | DERTags.CONSTRUCTED | DERTags.TAGGED;
-
-                ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-
-                writeDEREncoded(bOut, tag, bytes);
-
-                writeDEREncoded(_out, newTag, bOut.toByteArray());
-            } else {
-                if ((tag & DERTags.CONSTRUCTED) != 0) {
-                    writeDEREncoded(_out, tagNum | DERTags.CONSTRUCTED, bytes);
-                } else {
-                    writeDEREncoded(_out, tagNum, bytes);
-                }
-            }
-        } else {
-            writeDEREncoded(_out, tag, bytes);
-        }
-    }
-
-    void writeDEREncoded(
-        OutputStream out,
-        int tag,
-        InputStream in)
-        throws IOException {
-        out.write(tag);
-
-        ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-
-        int b = 0;
-        while ((b = in.read()) >= 0) {
-            bOut.write(b);
-        }
-
-        byte[] bytes = bOut.toByteArray();
-
-        writeLength(out, bytes.length);
-        out.write(bytes);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERIA5String.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERIA5String.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERIA5String.java
deleted file mode 100644
index 53d1abf..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERIA5String.java
+++ /dev/null
@@ -1,142 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-
-/** DER IA5String object - this is an ascii string. */
-public class DERIA5String
-    extends ASN1Object
-    implements DERString {
-    String string;
-
-    /**
-     * return a IA5 string from the passed in object
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERIA5String getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERIA5String) {
-            return (DERIA5String) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DERIA5String(((ASN1OctetString) obj).getOctets());
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return an IA5 String from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERIA5String getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    /** basic constructor - with bytes. */
-    public DERIA5String(
-        byte[] string) {
-        char[] cs = new char[string.length];
-
-        for (int i = 0; i != cs.length; i++) {
-            cs[i] = (char) (string[i] & 0xff);
-        }
-
-        this.string = new String(cs);
-    }
-
-    /** basic constructor - without validation. */
-    public DERIA5String(
-        String string) {
-        this(string, false);
-    }
-
-    /**
-     * Constructor with optional validation.
-     *
-     * @param string   the base string to wrap.
-     * @param validate whether or not to check the string.
-     * @throws IllegalArgumentException if validate is true and the string
-     *                                  contains characters that should not be in an IA5String.
-     */
-    public DERIA5String(
-        String string,
-        boolean validate) {
-        if (validate && !isIA5String(string)) {
-            throw new IllegalArgumentException("string contains illegal characters");
-        }
-
-        this.string = string;
-    }
-
-    public String getString() {
-        return string;
-    }
-
-    public String toString() {
-        return string;
-    }
-
-    public byte[] getOctets() {
-        char[] cs = string.toCharArray();
-        byte[] bs = new byte[cs.length];
-
-        for (int i = 0; i != cs.length; i++) {
-            bs[i] = (byte) cs[i];
-        }
-
-        return bs;
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        out.writeEncoded(IA5_STRING, this.getOctets());
-    }
-
-    public int hashCode() {
-        return this.getString().hashCode();
-    }
-
-    boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERIA5String)) {
-            return false;
-        }
-
-        DERIA5String s = (DERIA5String) o;
-
-        return this.getString().equals(s.getString());
-    }
-
-    /**
-     * return true if the passed in String can be represented without
-     * loss as an IA5String, false otherwise.
-     *
-     * @return true if in printable set, false otherwise.
-     */
-    public static boolean isIA5String(
-        String str) {
-        for (int i = str.length() - 1; i >= 0; i--) {
-            char ch = str.charAt(i);
-
-            if (ch > 0x007f) {
-                return false;
-            }
-        }
-
-        return true;
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInputStream.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInputStream.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInputStream.java
deleted file mode 100644
index 5d35bd3..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInputStream.java
+++ /dev/null
@@ -1,237 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.ByteArrayInputStream;
-import java.io.EOFException;
-import java.io.FilterInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-
-/**
- * Don't use this class. It will eventually disappear, use ASN1InputStream.
- * <br>
- * This class is scheduled for removal.
- *
- * @deprecated use ASN1InputStream
- */
-public class DERInputStream
-    extends FilterInputStream implements DERTags {
-    /** @deprecated use ASN1InputStream */
-    public DERInputStream(
-        InputStream is) {
-        super(is);
-    }
-
-    protected int readLength()
-        throws IOException {
-        int length = read();
-        if (length < 0) {
-            throw new IOException("EOF found when length expected");
-        }
-
-        if (length == 0x80) {
-            return -1;      // indefinite-length encoding
-        }
-
-        if (length > 127) {
-            int size = length & 0x7f;
-
-            if (size > 4) {
-                throw new IOException("DER length more than 4 bytes");
-            }
-
-            length = 0;
-            for (int i = 0; i < size; i++) {
-                int next = read();
-
-                if (next < 0) {
-                    throw new IOException("EOF found reading length");
-                }
-
-                length = (length << 8) + next;
-            }
-
-            if (length < 0) {
-                throw new IOException("corrupted stream - negative length found");
-            }
-        }
-
-        return length;
-    }
-
-    protected void readFully(
-        byte[] bytes)
-        throws IOException {
-        int left = bytes.length;
-
-        if (left == 0) {
-            return;
-        }
-
-        while (left > 0) {
-            int l = read(bytes, bytes.length - left, left);
-
-            if (l < 0) {
-                throw new EOFException("unexpected end of stream");
-            }
-
-            left -= l;
-        }
-    }
-
-    /**
-     * build an object given its tag and a byte stream to construct it
-     * from.
-     */
-    protected DERObject buildObject(
-        int tag,
-        byte[] bytes)
-        throws IOException {
-        switch (tag) {
-            case NULL:
-                return null;
-            case SEQUENCE | CONSTRUCTED:
-                ByteArrayInputStream bIn = new ByteArrayInputStream(bytes);
-                BERInputStream dIn = new BERInputStream(bIn);
-                DERConstructedSequence seq = new DERConstructedSequence();
-
-                try {
-                    for (; ;) {
-                        DERObject obj = dIn.readObject();
-
-                        seq.addObject(obj);
-                    }
-                }
-                catch (EOFException ex) {
-                    return seq;
-                }
-            case SET | CONSTRUCTED:
-                bIn = new ByteArrayInputStream(bytes);
-                dIn = new BERInputStream(bIn);
-
-                ASN1EncodableVector v = new ASN1EncodableVector();
-
-                try {
-                    for (; ;) {
-                        DERObject obj = dIn.readObject();
-
-                        v.add(obj);
-                    }
-                }
-                catch (EOFException ex) {
-                    return new DERConstructedSet(v);
-                }
-            case BOOLEAN:
-                return new DERBoolean(bytes);
-            case INTEGER:
-                return new DERInteger(bytes);
-            case ENUMERATED:
-                return new DEREnumerated(bytes);
-            case OBJECT_IDENTIFIER:
-                return new DERObjectIdentifier(bytes);
-            case BIT_STRING:
-                int padBits = bytes[0];
-                byte[] data = new byte[bytes.length - 1];
-
-                System.arraycopy(bytes, 1, data, 0, bytes.length - 1);
-
-                return new DERBitString(data, padBits);
-            case UTF8_STRING:
-                return new DERUTF8String(bytes);
-            case PRINTABLE_STRING:
-                return new DERPrintableString(bytes);
-            case IA5_STRING:
-                return new DERIA5String(bytes);
-            case T61_STRING:
-                return new DERT61String(bytes);
-            case VISIBLE_STRING:
-                return new DERVisibleString(bytes);
-            case UNIVERSAL_STRING:
-                return new DERUniversalString(bytes);
-            case GENERAL_STRING:
-                return new DERGeneralString(bytes);
-            case BMP_STRING:
-                return new DERBMPString(bytes);
-            case OCTET_STRING:
-                return new DEROctetString(bytes);
-            case UTC_TIME:
-                return new DERUTCTime(bytes);
-            case GENERALIZED_TIME:
-                return new DERGeneralizedTime(bytes);
-            default:
-                //
-                // with tagged object tag number is bottom 5 bits
-                //
-                if ((tag & TAGGED) != 0) {
-                    if ((tag & 0x1f) == 0x1f) {
-                        throw new IOException("unsupported high tag encountered");
-                    }
-
-                    if (bytes.length == 0)        // empty tag!
-                    {
-                        if ((tag & CONSTRUCTED) == 0) {
-                            return new DERTaggedObject(false, tag & 0x1f, new DERNull());
-                        } else {
-                            return new DERTaggedObject(false, tag & 0x1f, new DERConstructedSequence());
-                        }
-                    }
-
-                    //
-                    // simple type - implicit... return an octet string
-                    //
-                    if ((tag & CONSTRUCTED) == 0) {
-                        return new DERTaggedObject(false, tag & 0x1f, new DEROctetString(bytes));
-                    }
-
-                    bIn = new ByteArrayInputStream(bytes);
-                    dIn = new BERInputStream(bIn);
-
-                    DEREncodable dObj = dIn.readObject();
-
-                    //
-                    // explicitly tagged (probably!) - if it isn't we'd have to
-                    // tell from the context
-                    //
-                    if (dIn.available() == 0) {
-                        return new DERTaggedObject(tag & 0x1f, dObj);
-                    }
-
-                    //
-                    // another implicit object, we'll create a sequence...
-                    //
-                    seq = new DERConstructedSequence();
-
-                    seq.addObject(dObj);
-
-                    try {
-                        for (; ;) {
-                            dObj = dIn.readObject();
-
-                            seq.addObject(dObj);
-                        }
-                    }
-                    catch (EOFException ex) {
-                        // ignore --
-                    }
-
-                    return new DERTaggedObject(false, tag & 0x1f, seq);
-                }
-
-                return new DERUnknownTag(tag, bytes);
-        }
-    }
-
-    public DERObject readObject()
-        throws IOException {
-        int tag = read();
-        if (tag == -1) {
-            throw new EOFException();
-        }
-
-        int length = readLength();
-        byte[] bytes = new byte[length];
-
-        readFully(bytes);
-
-        return buildObject(tag, bytes);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/e95b711d/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInteger.java
----------------------------------------------------------------------
diff --git a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInteger.java b/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInteger.java
deleted file mode 100644
index 4265efe..0000000
--- a/3rdparty/not-yet-commons-ssl/src/main/java/org/apache/commons/ssl/asn1/DERInteger.java
+++ /dev/null
@@ -1,114 +0,0 @@
-package org.apache.commons.ssl.asn1;
-
-import java.io.IOException;
-import java.math.BigInteger;
-
-public class DERInteger
-    extends ASN1Object {
-    byte[] bytes;
-
-    /**
-     * return an integer from the passed in object
-     *
-     * @throws IllegalArgumentException if the object cannot be converted.
-     */
-    public static DERInteger getInstance(
-        Object obj) {
-        if (obj == null || obj instanceof DERInteger) {
-            return (DERInteger) obj;
-        }
-
-        if (obj instanceof ASN1OctetString) {
-            return new DERInteger(((ASN1OctetString) obj).getOctets());
-        }
-
-        if (obj instanceof ASN1TaggedObject) {
-            return getInstance(((ASN1TaggedObject) obj).getObject());
-        }
-
-        throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
-    }
-
-    /**
-     * return an Integer from a tagged object.
-     *
-     * @param obj      the tagged object holding the object we want
-     * @param explicit true if the object is meant to be explicitly
-     *                 tagged false otherwise.
-     * @throws IllegalArgumentException if the tagged object cannot
-     *                                  be converted.
-     */
-    public static DERInteger getInstance(
-        ASN1TaggedObject obj,
-        boolean explicit) {
-        return getInstance(obj.getObject());
-    }
-
-    public DERInteger(
-        int value) {
-        bytes = BigInteger.valueOf(value).toByteArray();
-    }
-
-    public DERInteger(
-        BigInteger value) {
-        bytes = value.toByteArray();
-    }
-
-    public DERInteger(
-        byte[] bytes) {
-        this.bytes = bytes;
-    }
-
-    public BigInteger getValue() {
-        return new BigInteger(bytes);
-    }
-
-    /**
-     * in some cases positive values get crammed into a space,
-     * that's not quite big enough...
-     */
-    public BigInteger getPositiveValue() {
-        return new BigInteger(1, bytes);
-    }
-
-    void encode(
-        DEROutputStream out)
-        throws IOException {
-        out.writeEncoded(INTEGER, bytes);
-    }
-
-    public int hashCode() {
-        int value = 0;
-
-        for (int i = 0; i != bytes.length; i++) {
-            value ^= (bytes[i] & 0xff) << (i % 4);
-        }
-
-        return value;
-    }
-
-    boolean asn1Equals(
-        DERObject o) {
-        if (!(o instanceof DERInteger)) {
-            return false;
-        }
-
-        DERInteger other = (DERInteger) o;
-
-        if (bytes.length != other.bytes.length) {
-            return false;
-        }
-
-        for (int i = 0; i != bytes.length; i++) {
-            if (bytes[i] != other.bytes[i]) {
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-    public String toString() {
-        return getValue().toString();
-    }
-}