|
@@ -46,24 +46,6 @@ pub fn get_invitation_pub(lox_auth_pubkeys: &Vec<IssuerPubKey>) -> &IssuerPubKey
|
|
|
&lox_auth_pubkeys[4]
|
|
|
}
|
|
|
|
|
|
-// Helper function to get credential trust level as i8
|
|
|
-// (Note that this value should only be 0-4)
|
|
|
-pub fn get_cred_trust_level(cred: &lox_library::cred::Lox) -> i8 {
|
|
|
- let trust_levels: [Scalar; 5] = [
|
|
|
- Scalar::zero(),
|
|
|
- Scalar::one(),
|
|
|
- Scalar::from(2u64),
|
|
|
- Scalar::from(3u64),
|
|
|
- Scalar::from(4u8),
|
|
|
- ];
|
|
|
- for i in 0..trust_levels.len() {
|
|
|
- if cred.trust_level == trust_levels[i] {
|
|
|
- return i.try_into().unwrap();
|
|
|
- }
|
|
|
- }
|
|
|
- -1
|
|
|
-}
|
|
|
-
|
|
|
// Helper function to check if credential is eligible for
|
|
|
// promotion from level 0 to 1
|
|
|
pub async fn eligible_for_trust_promotion(
|
|
@@ -74,7 +56,7 @@ pub async fn eligible_for_trust_promotion(
|
|
|
Some(v) => v,
|
|
|
None => return false,
|
|
|
};
|
|
|
- get_cred_trust_level(cred) == 0
|
|
|
+ scalar_u32(&cred.trust_level).unwrap() == 0
|
|
|
&& level_since + trust_promotion::UNTRUSTED_INTERVAL <= get_today(net).await
|
|
|
}
|
|
|
|
|
@@ -85,7 +67,7 @@ pub async fn eligible_for_level_up(net: &dyn Networking, cred: &lox_library::cre
|
|
|
Some(v) => v,
|
|
|
None => return false,
|
|
|
};
|
|
|
- let trust_level: usize = get_cred_trust_level(cred).try_into().unwrap();
|
|
|
+ let trust_level: usize = scalar_u32(&cred.trust_level).unwrap().try_into().unwrap();
|
|
|
trust_level > 0
|
|
|
&& level_since + lox_library::proto::level_up::LEVEL_INTERVAL[trust_level]
|
|
|
<= get_today(net).await
|