Class BasicConstraintsExtension

java.lang.Object
org.mozilla.jss.netscape.security.x509.Extension
org.mozilla.jss.netscape.security.x509.BasicConstraintsExtension
All Implemented Interfaces:
Serializable, CertAttrSet

public class BasicConstraintsExtension extends Extension implements CertAttrSet
This class represents the Basic Constraints Extension.

The basic constraints extension identifies whether the subject of the certificate is a CA and how deep a certification path may exist through that CA.

 The ASN.1 syntax for this extension is:
 BasicConstraints ::= SEQUENCE {
     cA                BOOLEAN DEFAULT FALSE,
     pathLenConstraint INTEGER (0..MAX) OPTIONAL
 }
 
Version:
1.7
See Also:
  • Field Details

  • Constructor Details

    • BasicConstraintsExtension

      public BasicConstraintsExtension(boolean ca, int len) throws IOException
      Default constructor for this object.
      Parameters:
      ca - true, if the subject of the Certificate is a CA.
      len - specifies the depth of the certification path.
      Throws:
      IOException
    • BasicConstraintsExtension

      public BasicConstraintsExtension(boolean ca, boolean critical, int len) throws IOException
      Default constructor for this object.
      Parameters:
      ca - true, if the subject of the Certificate is a CA.
      len - specifies the depth of the certification path.
      Throws:
      IOException
    • BasicConstraintsExtension

      public BasicConstraintsExtension(Boolean critical, Object value) throws IOException
      Create the extension from the passed DER encoded value of the same.
      Parameters:
      value - the DER encoded value of the extension.
      Throws:
      IOException - on error.
  • Method Details

    • encodeThis

      private void encodeThis() throws IOException
      Throws:
      IOException
    • toString

      public String toString()
      Return user readable form of extension.
      Specified by:
      toString in interface CertAttrSet
      Overrides:
      toString in class Extension
      Returns:
      value of this certificate attribute in printable form.
    • decode

      public void decode(InputStream in) throws IOException
      Decode the extension from the InputStream.
      Specified by:
      decode in interface CertAttrSet
      Parameters:
      in - the InputStream to unmarshal the contents from.
      Throws:
      IOException - on decoding or validity errors.
    • encode

      public void encode(OutputStream out) throws IOException
      Encode this extension value to the output stream.
      Specified by:
      encode in interface CertAttrSet
      Parameters:
      out - the DerOutputStream to encode the extension to.
      Throws:
      IOException - on other errors.
    • set

      public void set(String name, Object obj) throws IOException
      Set the attribute value.
      Specified by:
      set in interface CertAttrSet
      Parameters:
      name - the name of the attribute (e.g. "x509.info.key")
      obj - the attribute object.
      Throws:
      IOException - on other errors.
    • get

      public Object get(String name) throws IOException
      Get the attribute value.
      Specified by:
      get in interface CertAttrSet
      Parameters:
      name - the name of the attribute to return.
      Returns:
      attribute value
      Throws:
      IOException - on other errors.
    • delete

      public void delete(String name) throws IOException
      Delete the attribute value.
      Specified by:
      delete in interface CertAttrSet
      Parameters:
      name - the name of the attribute to delete.
      Throws:
      IOException - on other errors.
    • getAttributeNames

      public Enumeration<String> getAttributeNames()
      Return an enumeration of names of attributes existing within this attribute.
      Specified by:
      getAttributeNames in interface CertAttrSet
      Returns:
      an enumeration of the attribute names.
    • getName

      public String getName()
      Return the name of this attribute.
      Specified by:
      getName in interface CertAttrSet
      Returns:
      the name of this CertAttrSet.