Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 582c5bbc authored by cketti's avatar cketti Committed by GitHub
Browse files

Merge pull request #7393 from thunderbird/fix_mx_lookup_crash

Avoid crash when MX lookup returns invalid hostname
parents 0fcc98f5 b4f255cc
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -8,3 +8,12 @@ value class Domain(val value: String) {
}

fun String.toDomain() = Domain(this)

@Suppress("SwallowedException")
fun String.toDomainOrNull(): Domain? {
    return try {
        toDomain()
    } catch (e: IllegalArgumentException) {
        null
    }
}
+2 −2
Original line number Diff line number Diff line
package app.k9mail.autodiscovery.autoconfig

import app.k9mail.core.common.net.Domain
import app.k9mail.core.common.net.toDomain
import app.k9mail.core.common.net.toDomainOrNull
import org.minidns.hla.ResolverApi
import org.minidns.record.MX

@@ -11,7 +11,7 @@ internal class MiniDnsMxResolver : MxResolver {

        val mxNames = result.answersOrEmptySet
            .sortedBy { it.priority }
            .map { it.target.toString().toDomain() }
            .mapNotNull { it.target.toString().toDomainOrNull() }

        return MxLookupResult(
            mxNames = mxNames,