summaryrefslogtreecommitdiffstats
path: root/openpgp/src/serialize/cert.rs
diff options
context:
space:
mode:
Diffstat (limited to 'openpgp/src/serialize/cert.rs')
-rw-r--r--openpgp/src/serialize/cert.rs26
1 files changed, 17 insertions, 9 deletions
diff --git a/openpgp/src/serialize/cert.rs b/openpgp/src/serialize/cert.rs
index 70a8a1b5..2d3e0482 100644
--- a/openpgp/src/serialize/cert.rs
+++ b/openpgp/src/serialize/cert.rs
@@ -317,10 +317,14 @@ impl<'a> TSK<'a> {
/// # Example
/// ```
/// # use sequoia_openpgp::{*, cert::*, parse::Parse, serialize::Serialize};
+ /// use sequoia_openpgp::policy::StandardPolicy;
+ ///
/// # f().unwrap();
/// # fn f() -> Result<()> {
+ /// let p = &StandardPolicy::new();
+ ///
/// let (cert, _) = CertBuilder::new().add_signing_subkey().generate()?;
- /// assert_eq!(cert.keys().policy(None).alive().revoked(false).secret().count(), 2);
+ /// assert_eq!(cert.keys().set_policy(p, None).alive().revoked(false).secret().count(), 2);
///
/// // Only write out the primary key's secret.
/// let mut buf = Vec::new();
@@ -329,7 +333,7 @@ impl<'a> TSK<'a> {
/// .serialize(&mut buf)?;
///
/// let cert_ = Cert::from_bytes(&buf)?;
- /// assert_eq!(cert_.keys().policy(None).alive().revoked(false).secret().count(), 1);
+ /// assert_eq!(cert_.keys().set_policy(p, None).alive().revoked(false).secret().count(), 1);
/// assert!(cert_.primary_key().secret().is_some());
/// # Ok(()) }
pub fn set_filter<P>(mut self, predicate: P) -> Self
@@ -651,6 +655,7 @@ mod test {
use crate::parse::Parse;
use crate::serialize::Serialize;
use crate::packet::key;
+ use crate::policy::StandardPolicy as P;
/// Demonstrates that public keys and all components are
/// serialized.
@@ -733,6 +738,8 @@ mod test {
key::Key4,
};
+ let p = &P::new();
+
let (cert, _) = CertBuilder::new().generate().unwrap();
let mut keypair = cert.primary_key().key().clone().mark_parts_secret()
.unwrap().into_keypair().unwrap();
@@ -751,10 +758,10 @@ mod test {
let uid_binding = uid.bind(
&mut keypair, &cert,
signature::Builder::from(
- cert.primary_key().policy(None).unwrap()
+ cert.primary_key().set_policy(p, None).unwrap()
.direct_key_signature().unwrap().clone())
- .set_type(SignatureType::PositiveCertification)
- .set_exportable_certification(false).unwrap()).unwrap();
+ .set_type(SignatureType::PositiveCertification)
+ .set_exportable_certification(false).unwrap()).unwrap();
let ua = UserAttribute::new(&[
Subpacket::Unknown(2, b"foo".to_vec().into_boxed_slice()),
@@ -762,7 +769,7 @@ mod test {
let ua_binding = ua.bind(
&mut keypair, &cert,
signature::Builder::from(
- cert.primary_key().policy(None).unwrap()
+ cert.primary_key().set_policy(p, None).unwrap()
.direct_key_signature().unwrap().clone())
.set_type(SignatureType::PositiveCertification)
.set_exportable_certification(false).unwrap()).unwrap();
@@ -774,11 +781,12 @@ mod test {
]).unwrap();
assert_eq!(cert.subkeys().count(), 1);
- assert!(cert.subkeys().nth(0).unwrap().binding_signature(None).is_some());
+ assert!(cert.subkeys().nth(0).unwrap().binding_signature(p, None)
+ .is_some());
assert_eq!(cert.userids().count(), 1);
- assert!(cert.userids().policy(None).nth(0).is_some());
+ assert!(cert.userids().set_policy(p, None).nth(0).is_some());
assert_eq!(cert.user_attributes().count(), 1);
- assert!(cert.user_attributes().policy(None).nth(0).is_some());
+ assert!(cert.user_attributes().set_policy(p, None).nth(0).is_some());
// The binding signature is not exportable, so when we export
// and re-parse, we expect the userid to be gone.