X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fbouncycastle%2Fasn1%2Fx509%2FBasicConstraints.java;fp=src%2Forg%2Fbouncycastle%2Fasn1%2Fx509%2FBasicConstraints.java;h=ec84915f42f3924e72c719a4d7c40326b92a1d53;hb=e5e9355b4f4e0e2c8de9068a71c1e3cc26fa9905;hp=0000000000000000000000000000000000000000;hpb=f35445729371789b3d496f426d7f87542f8e1a45;p=org.ibex.core.git diff --git a/src/org/bouncycastle/asn1/x509/BasicConstraints.java b/src/org/bouncycastle/asn1/x509/BasicConstraints.java new file mode 100644 index 0000000..ec84915 --- /dev/null +++ b/src/org/bouncycastle/asn1/x509/BasicConstraints.java @@ -0,0 +1,79 @@ +package org.bouncycastle.asn1.x509; + +import java.math.BigInteger; + +import org.bouncycastle.asn1.*; + +public class BasicConstraints + implements DEREncodable +{ + DERBoolean cA = new DERBoolean(false); + DERInteger pathLenConstraint = null; + + public BasicConstraints( + DERConstructedSequence seq) + { + if (seq.getSize() != 0) + { + this.cA = (DERBoolean)seq.getObjectAt(0); + this.pathLenConstraint = (DERInteger)seq.getObjectAt(1); + } + } + + public BasicConstraints( + boolean cA, + int pathLenConstraint) + { + this.cA = new DERBoolean(cA); + this.pathLenConstraint = new DERInteger(pathLenConstraint); + } + + public BasicConstraints( + boolean cA) + { + this.cA = new DERBoolean(cA); + this.pathLenConstraint = null; + } + + public boolean isCA() + { + return cA.isTrue(); + } + + public BigInteger getPathLenConstraint() + { + if (pathLenConstraint != null) + { + return pathLenConstraint.getValue(); + } + + return null; + } + + /** + *
+     * BasicConstraints := SEQUENCE {
+     *    cA                  BOOLEAN DEFAULT FALSE,
+     *    pathLenConstraint   INTEGER (0..MAX) OPTIONAL
+     * }
+     * 
+ */ + public DERObject getDERObject() + { + DERConstructedSequence seq = new DERConstructedSequence(); + + seq.addObject(cA); + + if (pathLenConstraint != null) + { + seq.addObject(pathLenConstraint); + } + + return seq; + } + + public String toString() + { + return "BasicConstraints: isCa(" + this.isCA() + "), pathLenConstraint = " + pathLenConstraint.getValue(); + } +}