Skip to content

Revert impl AsRef issuer #325

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Apr 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions rcgen/src/certificate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -158,13 +158,13 @@ impl CertificateParams {
pub fn signed_by(
self,
public_key: &impl PublicKeyData,
issuer: &impl AsRef<CertificateParams>,
issuer: &Certificate,
issuer_key: &KeyPair,
) -> Result<Certificate, Error> {
let issuer = Issuer {
distinguished_name: &issuer.as_ref().distinguished_name,
key_identifier_method: &issuer.as_ref().key_identifier_method,
key_usages: &issuer.as_ref().key_usages,
distinguished_name: &issuer.params.distinguished_name,
key_identifier_method: &issuer.params.key_identifier_method,
key_usages: &issuer.params.key_usages,
key_pair: issuer_key,
};

Expand Down
10 changes: 5 additions & 5 deletions rcgen/src/crl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use yasna::Tag;
use crate::ENCODE_CONFIG;
use crate::{
oid, write_distinguished_name, write_dt_utc_or_generalized,
write_x509_authority_key_identifier, write_x509_extension, CertificateParams, Error, Issuer,
write_x509_authority_key_identifier, write_x509_extension, Certificate, Error, Issuer,
KeyIdMethod, KeyPair, KeyUsagePurpose, SerialNumber,
};

Expand Down Expand Up @@ -190,17 +190,17 @@ impl CertificateRevocationListParams {
/// Including a signature from the issuing certificate authority's key.
pub fn signed_by(
self,
issuer: &impl AsRef<CertificateParams>,
issuer: &Certificate,
issuer_key: &KeyPair,
) -> Result<CertificateRevocationList, Error> {
if self.next_update.le(&self.this_update) {
return Err(Error::InvalidCrlNextUpdate);
}

let issuer = Issuer {
distinguished_name: &issuer.as_ref().distinguished_name,
key_identifier_method: &issuer.as_ref().key_identifier_method,
key_usages: &issuer.as_ref().key_usages,
distinguished_name: &issuer.params.distinguished_name,
key_identifier_method: &issuer.params.key_identifier_method,
key_usages: &issuer.params.key_usages,
key_pair: issuer_key,
};

Expand Down
11 changes: 5 additions & 6 deletions rcgen/src/csr.rs
Original file line number Diff line number Diff line change
Expand Up @@ -194,8 +194,7 @@ impl CertificateSigningRequestParams {
///
/// The returned certificate will have its issuer field set to the subject of the provided
/// `issuer`, and the authority key identifier extension will be populated using the subject
/// public key of `issuer` (typically either a [`CertificateParams`] or
/// [`Certificate`]). It will be signed by `issuer_key`.
/// public key of `issuer`. It will be signed by `issuer_key`.
///
/// Note that no validation of the `issuer` certificate is performed. Rcgen will not require
/// the certificate to be a CA certificate, or have key usage extensions that allow signing.
Expand All @@ -204,13 +203,13 @@ impl CertificateSigningRequestParams {
/// [`Certificate::pem`].
pub fn signed_by(
self,
issuer: &impl AsRef<CertificateParams>,
issuer: &Certificate,
issuer_key: &KeyPair,
) -> Result<Certificate, Error> {
let issuer = Issuer {
distinguished_name: &issuer.as_ref().distinguished_name,
key_identifier_method: &issuer.as_ref().key_identifier_method,
key_usages: &issuer.as_ref().key_usages,
distinguished_name: &issuer.params.distinguished_name,
key_identifier_method: &issuer.params.key_identifier_method,
key_usages: &issuer.params.key_usages,
key_pair: issuer_key,
};

Expand Down