PKIXNameConstraintValidator (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.asn1.x509

## Class PKIXNameConstraintValidator

- java.lang.Object
- - org.bouncycastle.asn1.x509.PKIXNameConstraintValidator

- All Implemented Interfaces:
    NameConstraintValidator

      public class PKIXNameConstraintValidator
      extends java.lang.Object
      implements NameConstraintValidator

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PKIXNameConstraintValidator()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addExcludedSubtree(GeneralSubtree subtree)` Adds a subtree to the excluded set of these name constraints.
    `void` | `checkExcluded(GeneralName name)` Check if the given GeneralName is contained in the excluded set.
    `void` | `checkExcludedDN(X500Name dns)`
    `void` | `checkExcludedEmail(java.lang.String email)`
    `void` | `checkPermitted(GeneralName name)` Checks if the given GeneralName is in the permitted set.
    `void` | `checkPermittedDN(X500Name dns)`
    `void` | `checkPermittedEmail(java.lang.String email)`
    `boolean` | `equals(java.lang.Object o)`
    `int` | `hashCode()`
    `void` | `intersectEmptyPermittedSubtree(int nameType)`
    `void` | `intersectPermittedSubtree(GeneralSubtree permitted)`
    `void` | `intersectPermittedSubtree(GeneralSubtree[] permitted)` Updates the permitted set of these name constraints with the intersection with the given subtree.
    `java.lang.String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### PKIXNameConstraintValidator

          public PKIXNameConstraintValidator()

  - ### Method Detail

    - #### checkPermitted

          public void checkPermitted(GeneralName name)
                              throws NameConstraintValidatorException

      Checks if the given GeneralName is in the permitted set.
      Specified by:
        `checkPermitted` in interface `NameConstraintValidator`
      Parameters:
        `name` - The GeneralName
      Throws:
        `NameConstraintValidatorException` - If the `name`

    - #### checkExcluded

          public void checkExcluded(GeneralName name)
                             throws NameConstraintValidatorException

      Check if the given GeneralName is contained in the excluded set.
      Specified by:
        `checkExcluded` in interface `NameConstraintValidator`
      Parameters:
        `name` - The GeneralName.
      Throws:
        `NameConstraintValidatorException` - If the `name` is excluded.

    - #### intersectPermittedSubtree

          public void intersectPermittedSubtree(GeneralSubtree permitted)

      Specified by:
        `intersectPermittedSubtree` in interface `NameConstraintValidator`

    - #### intersectPermittedSubtree

          public void intersectPermittedSubtree(GeneralSubtree[] permitted)

      Updates the permitted set of these name constraints with the intersection with the given subtree.
      Specified by:
        `intersectPermittedSubtree` in interface `NameConstraintValidator`
      Parameters:
        `permitted` - The permitted subtrees

    - #### intersectEmptyPermittedSubtree

          public void intersectEmptyPermittedSubtree(int nameType)

      Specified by:
        `intersectEmptyPermittedSubtree` in interface `NameConstraintValidator`

    - #### addExcludedSubtree

          public void addExcludedSubtree(GeneralSubtree subtree)

      Adds a subtree to the excluded set of these name constraints.
      Specified by:
        `addExcludedSubtree` in interface `NameConstraintValidator`
      Parameters:
        `subtree` - A subtree with an excluded GeneralName.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### checkPermittedDN

          public void checkPermittedDN(X500Name dns)
                                throws NameConstraintValidatorException

      Throws:
        `NameConstraintValidatorException`

    - #### checkExcludedDN

          public void checkExcludedDN(X500Name dns)
                               throws NameConstraintValidatorException

      Throws:
        `NameConstraintValidatorException`

    - #### checkPermittedEmail

          public void checkPermittedEmail(java.lang.String email)
                                   throws NameConstraintValidatorException

      Throws:
        `NameConstraintValidatorException`

    - #### checkExcludedEmail

          public void checkExcludedEmail(java.lang.String email)
                                  throws NameConstraintValidatorException

      Throws:
        `NameConstraintValidatorException`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`