summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko <heiko@schaefer.name>2021-05-05 13:47:40 +0200
committerHeiko <heiko@schaefer.name>2021-05-05 13:47:40 +0200
commitd1bee006e63e345d332ff5c9b67a8cd3d67336a1 (patch)
tree4f31409ff30df321c9e7b051ecc11619c3598262
parent23e6cc1c733037c7e5916980c041d3a0714204b9 (diff)
downloadopenpgp-ca-d1bee006e63e345d332ff5c9b67a8cd3d67336a1.tar.gz
Make output of print_users() easier to read.
-rw-r--r--src/ca.rs44
1 files changed, 24 insertions, 20 deletions
diff --git a/src/ca.rs b/src/ca.rs
index b231135..6497035 100644
--- a/src/ca.rs
+++ b/src/ca.rs
@@ -482,42 +482,46 @@ impl OpenpgpCa {
pub fn print_users(&self) -> Result<()> {
for db_user in self.users_get_all()? {
- let name = db_user
- .name
- .clone()
- .unwrap_or_else(|| "<no name>".to_owned());
-
for db_cert in self.get_certs_by_user(&db_user)? {
let (sig_by_ca, tsig_on_ca) =
self.check_mutual_certifications(&db_cert)?;
- println!("OpenPGP key {}", db_cert.fingerprint);
- println!(" for user '{}'", name);
+ println!("OpenPGP certificate {}", db_cert.fingerprint);
+ if let Some(name) = &db_user.name {
+ println!(" User '{}'", name);
+ }
- println!(" user cert signed by CA: {}", !sig_by_ca.is_empty());
- println!(" user cert has tsigned CA: {}", tsig_on_ca);
+ if !sig_by_ca.is_empty() {
+ println!(" Identities certified by this CA:");
+ for uid in sig_by_ca {
+ println!(
+ " - '{} <{}>'",
+ uid.name()?.unwrap_or("".to_string()),
+ uid.email()?.unwrap_or("".to_string())
+ );
+ }
+ }
- let c = Pgp::armored_to_cert(&db_cert.pub_cert)?;
+ if tsig_on_ca {
+ println!(" Has trust-signed this CA");
+ }
- self.emails_get(&db_cert)?
- .iter()
- .for_each(|email| println!(" - email {}", email.addr));
+ let c = Pgp::armored_to_cert(&db_cert.pub_cert)?;
if let Some(exp) = Pgp::get_expiry(&c)? {
let datetime: DateTime<Utc> = exp.into();
- println!(" expires: {}", datetime.format("%d/%m/%Y"));
+ println!(" Expiration {}", datetime.format("%d/%m/%Y"));
} else {
- println!(" no expiration date is set for this user key");
+ println!(" No expiration is set");
}
let revs = self.revocations_get(&db_cert)?;
- println!(
- " {} revocation certificate(s) available",
- revs.len()
- );
+ if !revs.is_empty() {
+ println!(" {} revocations available", revs.len());
+ }
if Pgp::is_possibly_revoked(&c) {
- println!(" this user key has (possibly) been REVOKED");
+ println!(" This certificate has (possibly) been REVOKED");
}
println!();
}