From fc45e1b9059df1fe7310390934797e218c3b1a6e Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Tue, 9 Apr 2019 17:02:56 +0200 Subject: [PATCH] DoX: Ensure that the response message ID matches the query ID --- .../java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java index 092c1ce91..634eab400 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/dox/DnsOverXmppManager.java @@ -97,6 +97,11 @@ public final class DnsOverXmppManager extends Manager { return errorResponse; } + if (query.id != response.id) { + // The ID may not match because the resolver returned a cached result. + response = response.asBuilder().setId(query.id).build(); + } + DnsIq dnsIqResult = new DnsIq(response); dnsIqResult.setType(IQ.Type.result); return dnsIqResult;