Search in sources :

Example 1 with SubjectAlternativeNameExtensionData

use of de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData in project certmgr by hdecarne.

the class SubjectAlternativeNameController method init.

/**
 * Initialize the dialog with existing extension data.
 *
 * @param data The extension data to use.
 * @param expertMode Whether to run in expert mode ({@code true}) or not ({@code false}).
 * @return This controller.
 */
public SubjectAlternativeNameController init(SubjectAlternativeNameExtensionData data, boolean expertMode) {
    init(expertMode);
    this.ctlCritical.setSelected(data.getCritical());
    ObservableList<GeneralName> nameItems = this.ctlNames.getItems();
    for (GeneralName name : data.getGeneralNames()) {
        nameItems.add(name);
    }
    return this;
}
Also used : GeneralName(de.carne.certmgr.certs.x509.GeneralName)

Example 2 with SubjectAlternativeNameExtensionData

use of de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData in project certmgr by hdecarne.

the class CertOptionsController method onCmdDeleteExtension.

@SuppressWarnings("unused")
@FXML
void onCmdDeleteExtension(ActionEvent evt) {
    ExtensionDataModel extensionDataItem = this.ctlExtensionData.getSelectionModel().getSelectedItem();
    if (extensionDataItem != null) {
        X509ExtensionData extensionData = extensionDataItem.getExtensionData();
        if (extensionData instanceof BasicConstraintsExtensionData) {
            this.basicConstraintsExtension.set(null);
        } else if (extensionData instanceof KeyUsageExtensionData) {
            this.keyUsageExtension.set(null);
        } else if (extensionData instanceof ExtendedKeyUsageExtensionData) {
            this.extendedKeyUsageExtension.set(null);
        } else if (extensionData instanceof SubjectAlternativeNameExtensionData) {
            this.subjectAlternativeExtension.set(null);
        } else if (extensionData instanceof CRLDistributionPointsExtensionData) {
            this.crlDistributionPointsExtension.set(null);
        }
        this.ctlExtensionData.getItems().remove(extensionDataItem);
    }
}
Also used : X509ExtensionData(de.carne.certmgr.certs.x509.X509ExtensionData) ExtendedKeyUsageExtensionData(de.carne.certmgr.certs.x509.ExtendedKeyUsageExtensionData) KeyUsageExtensionData(de.carne.certmgr.certs.x509.KeyUsageExtensionData) ExtendedKeyUsageExtensionData(de.carne.certmgr.certs.x509.ExtendedKeyUsageExtensionData) SubjectAlternativeNameExtensionData(de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData) BasicConstraintsExtensionData(de.carne.certmgr.certs.x509.BasicConstraintsExtensionData) CRLDistributionPointsExtensionData(de.carne.certmgr.certs.x509.CRLDistributionPointsExtensionData) FXML(javafx.fxml.FXML)

Example 3 with SubjectAlternativeNameExtensionData

use of de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData in project certmgr by hdecarne.

the class CertOptionsController method applyPreset.

private void applyPreset(CertOptionsPreset preset) {
    this.ctlAliasInput.setText(preset.aliasInput());
    this.ctlDNInput.setText(preset.dnInput());
    KeyPairAlgorithm keyAlg = preset.getKeyAlg();
    if (keyAlg != null) {
        this.ctlKeyAlgOption.setValue(preset.getKeyAlg());
    }
    Integer keySize = preset.getKeySize();
    if (keySize != null) {
        this.ctlKeySizeOption.setValue(preset.getKeySize());
    }
    this.basicConstraintsExtension.set(null);
    this.keyUsageExtension.set(null);
    this.extendedKeyUsageExtension.set(null);
    this.subjectAlternativeExtension.set(null);
    this.crlDistributionPointsExtension.set(null);
    this.ctlExtensionData.getItems().clear();
    for (X509ExtensionData extensionData : preset.getExtensions()) {
        if (extensionData instanceof BasicConstraintsExtensionData) {
            this.basicConstraintsExtension.set((BasicConstraintsExtensionData) extensionData);
        } else if (extensionData instanceof KeyUsageExtensionData) {
            this.keyUsageExtension.set((KeyUsageExtensionData) extensionData);
        } else if (extensionData instanceof ExtendedKeyUsageExtensionData) {
            this.extendedKeyUsageExtension.set((ExtendedKeyUsageExtensionData) extensionData);
        } else if (extensionData instanceof SubjectAlternativeNameExtensionData) {
            this.subjectAlternativeExtension.set((SubjectAlternativeNameExtensionData) extensionData);
        } else if (extensionData instanceof CRLDistributionPointsExtensionData) {
            this.crlDistributionPointsExtension.set((CRLDistributionPointsExtensionData) extensionData);
        }
        this.ctlExtensionData.getItems().add(new ExtensionDataModel(extensionData));
    }
}
Also used : X509ExtensionData(de.carne.certmgr.certs.x509.X509ExtensionData) KeyPairAlgorithm(de.carne.certmgr.certs.security.KeyPairAlgorithm) ExtendedKeyUsageExtensionData(de.carne.certmgr.certs.x509.ExtendedKeyUsageExtensionData) KeyUsageExtensionData(de.carne.certmgr.certs.x509.KeyUsageExtensionData) ExtendedKeyUsageExtensionData(de.carne.certmgr.certs.x509.ExtendedKeyUsageExtensionData) SubjectAlternativeNameExtensionData(de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData) BasicConstraintsExtensionData(de.carne.certmgr.certs.x509.BasicConstraintsExtensionData) CRLDistributionPointsExtensionData(de.carne.certmgr.certs.x509.CRLDistributionPointsExtensionData)

Example 4 with SubjectAlternativeNameExtensionData

use of de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData in project certmgr by hdecarne.

the class CertOptionsController method onCmdEditSubjectAlternativeName.

@SuppressWarnings("unused")
@FXML
void onCmdEditSubjectAlternativeName(ActionEvent evt) {
    try {
        SubjectAlternativeNameController extensionDialog = SubjectAlternativeNameDialog.load(this);
        SubjectAlternativeNameExtensionData extensionData = this.subjectAlternativeExtension.get();
        if (extensionData != null) {
            extensionDialog.init(extensionData, this.expertModeParam);
        } else {
            extensionDialog.init(this.expertModeParam);
        }
        Optional<SubjectAlternativeNameExtensionData> dialogResult = extensionDialog.showAndWait();
        if (dialogResult.isPresent()) {
            extensionData = dialogResult.get();
            setExtensionData(extensionData);
            this.subjectAlternativeExtension.set(extensionData);
        }
    } catch (IOException e) {
        Alerts.unexpected(e).showAndWait();
    }
}
Also used : SubjectAlternativeNameExtensionData(de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData) IOException(java.io.IOException) FXML(javafx.fxml.FXML)

Example 5 with SubjectAlternativeNameExtensionData

use of de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData in project certmgr by hdecarne.

the class SubjectAlternativeNameController method onApply.

private void onApply(ActionEvent evt) {
    try {
        boolean critical = this.ctlCritical.isSelected();
        GeneralNames names = validateAndGetNames();
        this.extensionDataResult = new SubjectAlternativeNameExtensionData(critical, names);
    } catch (ValidationException e) {
        ValidationAlerts.error(e).showAndWait();
        evt.consume();
    }
}
Also used : ValidationException(de.carne.jfx.util.validation.ValidationException) GeneralNames(de.carne.certmgr.certs.x509.GeneralNames) SubjectAlternativeNameExtensionData(de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData)

Aggregations

SubjectAlternativeNameExtensionData (de.carne.certmgr.certs.x509.SubjectAlternativeNameExtensionData)4 BasicConstraintsExtensionData (de.carne.certmgr.certs.x509.BasicConstraintsExtensionData)2 CRLDistributionPointsExtensionData (de.carne.certmgr.certs.x509.CRLDistributionPointsExtensionData)2 ExtendedKeyUsageExtensionData (de.carne.certmgr.certs.x509.ExtendedKeyUsageExtensionData)2 KeyUsageExtensionData (de.carne.certmgr.certs.x509.KeyUsageExtensionData)2 X509ExtensionData (de.carne.certmgr.certs.x509.X509ExtensionData)2 FXML (javafx.fxml.FXML)2 KeyPairAlgorithm (de.carne.certmgr.certs.security.KeyPairAlgorithm)1 GeneralName (de.carne.certmgr.certs.x509.GeneralName)1 GeneralNames (de.carne.certmgr.certs.x509.GeneralNames)1 ValidationException (de.carne.jfx.util.validation.ValidationException)1 IOException (java.io.IOException)1