From 39a92daa7c956dd6f0dd3db5b19379dd233d74f0 Mon Sep 17 00:00:00 2001
From: Adrien Beraud <adrien.beraud@savoirfairelinux.com>
Date: Wed, 5 Feb 2025 15:27:35 -0500
Subject: [PATCH] namedirectory: consider error 400 as invalid

GitLab: #1100
Change-Id: I22255a2b34e5c33d1db4c1a02747874512372d5b
---
 src/jamidht/namedirectory.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/jamidht/namedirectory.cpp b/src/jamidht/namedirectory.cpp
index a3c08d535..2e1e6eb75 100644
--- a/src/jamidht/namedirectory.cpp
+++ b/src/jamidht/namedirectory.cpp
@@ -191,7 +191,9 @@ NameDirectory::lookupAddress(const std::string& addr, LookupCallback cb)
                         cb(cacheResult.first, cacheResult.second, Response::found);
                     else
                         cb("", "", Response::notFound);
-                } else if (response.status_code != 200) {
+                } else if (response.status_code == 400)
+                    cb("", "", Response::invalidResponse);
+                else if (response.status_code != 200) {
                     JAMI_ERROR("Address lookup for {} on {} failed with code={}",
                                addr, serverUrl_, response.status_code);
                     cb("", "", Response::error);
@@ -274,6 +276,8 @@ NameDirectory::lookupName(const std::string& name, LookupCallback cb)
                                           const dht::http::Response& response) {
             if (response.status_code > 400 && response.status_code < 500)
                 cb("", "", Response::notFound);
+            else if (response.status_code == 400)
+                cb("", "", Response::invalidResponse);
             else if (response.status_code < 200 || response.status_code > 299) {
                 JAMI_ERROR("Name lookup for {} on {} failed with code={}",
                            name, serverUrl_, response.status_code);
-- 
GitLab