File 1000-kernel-Extended-spec-for-gen_udp-open-2.patch of Package erlang
From 23c0a4c7bc0d725490ff222fe32f8b94102c62cc Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Tue, 20 Feb 2024 17:59:34 +0100
Subject: [PATCH] [kernel] Extended spec for gen_udp:open/2
The spec did not allow for option ifaddr having sockaddr
values (socket:sockaddr_in and socket:sockaddr_in6).
OTP-18990
---
lib/kernel/src/gen_udp.erl | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/lib/kernel/src/gen_udp.erl b/lib/kernel/src/gen_udp.erl
index e74ec05b23..a377469b6e 100644
--- a/lib/kernel/src/gen_udp.erl
+++ b/lib/kernel/src/gen_udp.erl
@@ -102,12 +102,14 @@
pktoptions |
ipv6_v6only.
--type open_option() :: {ip, inet:socket_address()}
- | {fd, non_neg_integer()}
- | {ifaddr, inet:socket_address()}
+-type open_option() :: {ip, inet:socket_address()}
+ | {fd, non_neg_integer()}
+ | {ifaddr, socket:sockaddr_in() |
+ socket:sockaddr_in6() |
+ inet:socket_address()}
| inet:address_family()
- | {port, inet:port_number()}
- | {netns, file:filename_all()}
+ | {port, inet:port_number()}
+ | {netns, file:filename_all()}
| {bind_to_device, binary()}
| option().
@@ -139,7 +141,7 @@
%% -- open ------------------------------------------------------------------
-spec open(Port) -> {ok, Socket} | {error, Reason} when
- Port :: inet:port_number(),
+ Port :: inet:port_number(),
Socket :: socket(),
Reason :: system_limit | inet:posix().
--
2.35.3