File 0354-kernel-gen-udp-socket-Handling-of-unspec.patch of Package erlang
From a9ebb3d0ca5108fb917995da3b14cdcaa9cd40b2 Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Tue, 5 Apr 2022 13:57:08 +0200
Subject: [PATCH] [kernel|gen-udp-socket] Handling of unspec
OTP-18020
---
lib/kernel/src/gen_udp_socket.erl | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/kernel/src/gen_udp_socket.erl b/lib/kernel/src/gen_udp_socket.erl
index eb751efa72..063248d709 100644
--- a/lib/kernel/src/gen_udp_socket.erl
+++ b/lib/kernel/src/gen_udp_socket.erl
@@ -1850,6 +1850,9 @@ deliver_data(#{addr := #{family := Fam, addr := Addr, port := Port},
Data = deliver_data_mode(IOV, Mode),
Ctrl2 = ctrl2ancdata(Ctrl),
{Addr, Port, Ctrl2, Data};
+deliver_data({#{family := unspec, addr := Addr}, <<Data/binary>>}, Mode)
+ when is_binary(Addr) ->
+ {{unspec, Addr}, 0, undefined, deliver_data_mode(Data, Mode)};
deliver_data({Unspec, <<Data/binary>>}, Mode) when is_binary(Unspec) ->
{{unspec, Unspec}, 0, undefined, deliver_data_mode(Data, Mode)}.
%% deliver_data(_Arg1, _Arg2) ->
--
2.34.1