Signed-off-by: Lukas Wagner <l.wag...@proxmox.com>
---
 pve-rs/src/tfa.rs | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pve-rs/src/tfa.rs b/pve-rs/src/tfa.rs
index 1054169..66dca3d 100644
--- a/pve-rs/src/tfa.rs
+++ b/pve-rs/src/tfa.rs
@@ -736,10 +736,10 @@ fn decode_old_oath_entry(
         let key = unsafe { std::str::from_utf8_unchecked(key) };
 
         // See PVE::OTP::oath_verify_otp
-        let key = if key.starts_with("v2-0x") {
-            hex::decode(&key[5..]).map_err(|_| format_err!("bad v2 hex key in 
oath entry"))?
-        } else if key.starts_with("v2-") {
-            base32::decode(base32::Alphabet::RFC4648 { padding: true }, 
&key[3..])
+        let key = if let Some(key) = key.strip_prefix("v2-0x") {
+            hex::decode(key).map_err(|_| format_err!("bad v2 hex key in oath 
entry"))?
+        } else if let Some(key) = key.strip_prefix("v2-") {
+            base32::decode(base32::Alphabet::RFC4648 { padding: true }, key)
                 .ok_or_else(|| format_err!("bad v2 base32 key in oath entry"))?
         } else if key.len() == 16 {
             base32::decode(base32::Alphabet::RFC4648 { padding: true }, key)
-- 
2.39.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to