From e0ba5d71474728d08423bdceb2da310c9d17c024 Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 15 Jul 2021 07:56:13 +0200 Subject: [PATCH] Check BIMI version --- app/src/main/java/eu/faircode/email/ContactInfo.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ContactInfo.java b/app/src/main/java/eu/faircode/email/ContactInfo.java index 4efabb5c3d..75ee0b1758 100644 --- a/app/src/main/java/eu/faircode/email/ContactInfo.java +++ b/app/src/main/java/eu/faircode/email/ContactInfo.java @@ -409,6 +409,7 @@ public class ContactInfo { futures.add(executorFavicon.submit(new Callable() { @Override public Favicon call() throws Exception { + // TODO: BIMI selector final String txt = "default._bimi." + _domain; Log.i("BIMI fetch TXT=" + txt); DnsHelper.DnsRecord[] bimi = DnsHelper.lookup(context, txt, "txt"); @@ -425,9 +426,12 @@ public class ContactInfo { continue; switch (kv[0].trim().toLowerCase()) { - case "v": // Version - // TODO: check version + case "v": { // Version + String version = kv[1].trim(); + if (!"BIMI1".equalsIgnoreCase(version)) + Log.w("BIMI unsupported version=" + version); break; + } case "l": { // Image link if (!bimi_vmc) @@ -459,7 +463,7 @@ public class ContactInfo { break; } - case "a": // Certificate link + case "a": { // Certificate link String a = kv[1].trim(); if (TextUtils.isEmpty(a)) continue; @@ -557,6 +561,7 @@ public class ContactInfo { Log.w(new Throwable("BIMI", ex)); } break; + } } }