From 0c7b41747e21ce9a3ed7ced9c8a3efe78929bfb4 Mon Sep 17 00:00:00 2001 From: Alexander Bakker Date: Sat, 18 Apr 2020 12:22:57 +0200 Subject: [PATCH] Add support for otpauth://steam URI's Close #343 --- .../beemdevelopment/aegis/otp/GoogleAuthInfo.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/beemdevelopment/aegis/otp/GoogleAuthInfo.java b/app/src/main/java/com/beemdevelopment/aegis/otp/GoogleAuthInfo.java index 7a522c4d..3144f1cf 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/otp/GoogleAuthInfo.java +++ b/app/src/main/java/com/beemdevelopment/aegis/otp/GoogleAuthInfo.java @@ -25,7 +25,11 @@ public class GoogleAuthInfo { builder.scheme("otpauth"); if (_info instanceof TotpInfo) { - builder.authority("totp"); + if (_info instanceof SteamInfo) { + builder.authority("steam"); + } else { + builder.authority("totp"); + } builder.appendQueryParameter("period", Integer.toString(((TotpInfo)_info).getPeriod())); } else if (_info instanceof HotpInfo) { builder.authority("hotp"); @@ -89,6 +93,14 @@ public class GoogleAuthInfo { } info = totpInfo; break; + case "steam": + SteamInfo steamInfo = new SteamInfo(secret); + period = uri.getQueryParameter("period"); + if (period != null) { + steamInfo.setPeriod(Integer.parseInt(period)); + } + info = steamInfo; + break; case "hotp": HotpInfo hotpInfo = new HotpInfo(secret); String counter = uri.getQueryParameter("counter");