fn read_profile_revocations()

in cert-storage-inspector/src/main.rs [62:79]


fn read_profile_revocations(profile_path: &str) -> Result<BTreeSet<Revocation>, SimpleError> {
    let mut builder = Rkv::environment_builder::<SafeMode>();
    builder.set_max_dbs(2);
    builder.set_map_size(16777216); // 16MB
    let mut db_path = PathBuf::from(profile_path);
    db_path.push("security_state");
    let env = Rkv::from_builder(&db_path, builder)?;
    let store = env.open_single("cert_storage", StoreOptions::default())?;
    let reader = env.read()?;
    let iter = store.iter_start(&reader)?;
    let mut revocations: BTreeSet<Revocation> = BTreeSet::new();
    for item in iter {
        if let Ok((key, value)) = item {
            decode_item(key, &value, &mut revocations);
        }
    }
    Ok(revocations)
}