From 648fe0097229c7ae46a6b5911521cef27a726cbe Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Fri, 6 Nov 2020 14:31:56 +0100
Subject: [PATCH] resolved: close UDP socket when we received a network error
 on it

(cherry picked from commit d68dbb37d7408c025e736181f294152e2a515bf1)

Related: #2156751
---
 src/resolve/resolved-dns-transaction.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c
index 95aea21134..c975215468 100644
--- a/src/resolve/resolved-dns-transaction.c
+++ b/src/resolve/resolved-dns-transaction.c
@@ -1250,6 +1250,8 @@ static int on_dns_packet(sd_event_source *s, int fd, uint32_t revents, void *use
                 assert_se(sd_event_now(t->scope->manager->event, clock_boottime_or_monotonic(), &usec) >= 0);
                 dns_server_packet_lost(t->server, IPPROTO_UDP, t->current_feature_level);
 
+                dns_transaction_close_connection(t, /* use_graveyard = */ false);
+
                 dns_transaction_retry(t, true);
                 return 0;
         }
