File 0184-socket-Throw-correct-error-from-socket-info-when-dis.patch of Package erlang
From 856093fd77c9f032e754d4c37059fdebc1868f5e Mon Sep 17 00:00:00 2001
From: Lukas Larsson <lukas@erlang.org>
Date: Wed, 8 Dec 2021 16:30:10 +0100
Subject: [PATCH 06/12] socket: Throw correct error from socket:info when
disabled
When `--disable-esock` is given we want to throw `notsup` and
not `undef` when the function is called.
---
lib/kernel/src/socket.erl | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/lib/kernel/src/socket.erl b/lib/kernel/src/socket.erl
index c188f516a1..48f8566629 100644
--- a/lib/kernel/src/socket.erl
+++ b/lib/kernel/src/socket.erl
@@ -1206,8 +1206,18 @@ fmt_port(N, Proto) ->
-spec info() -> info().
%%
info() ->
- prim_socket:info().
-
+ try
+ prim_socket:info()
+ catch error:undef:ST ->
+ case ST of
+ %% We rewrite errors coming from prim_socket not existing
+ %% to enotsup.
+ [{prim_socket,info,[],_}|_] ->
+ erlang:raise(error,notsup,ST);
+ _ ->
+ erlang:raise(error,undef,ST)
+ end
+ end.
-spec info(Socket) -> socket_info() when
Socket :: socket().
--
2.31.1