]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
rio: add RIO_POLL_METHOD_NONE
authorGerd Hoffmann <kraxel@redhat.com>
Mon, 7 Apr 2025 12:06:28 +0000 (14:06 +0200)
committerMatt Caswell <matt@openssl.org>
Tue, 15 Apr 2025 14:27:38 +0000 (15:27 +0100)
Fixes build on UEFI.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27284)

ssl/rio/poll_builder.c
ssl/rio/poll_builder.h
ssl/rio/poll_method.h

index 007e360d8716fc0ede35b9987bb8abf3137ccc03..3cfbe3b0acaa486b973bcbfa31a2153c1cc9da95 100644 (file)
@@ -16,7 +16,9 @@ OSSL_SAFE_MATH_UNSIGNED(size_t, size_t)
 
 int ossl_rio_poll_builder_init(RIO_POLL_BUILDER *rpb)
 {
-#if RIO_POLL_METHOD == RIO_POLL_METHOD_SELECT
+#if RIO_POLL_METHOD == RIO_POLL_METHOD_NONE
+    return 0;
+#elif RIO_POLL_METHOD == RIO_POLL_METHOD_SELECT
     FD_ZERO(&rpb->rfd);
     FD_ZERO(&rpb->wfd);
     FD_ZERO(&rpb->efd);
index ffc9bbf9fca78e59de437c0c6731c44d148c2707..985e4713b29d775931249d8c874f0857e0280460 100644 (file)
@@ -23,7 +23,9 @@
  * FDs.
  */
 typedef struct rio_poll_builder_st {
-# if RIO_POLL_METHOD == RIO_POLL_METHOD_SELECT
+# if RIO_POLL_METHOD == RIO_POLL_METHOD_NONE
+    /* nothing */;
+# elif RIO_POLL_METHOD == RIO_POLL_METHOD_SELECT
     fd_set          rfd, wfd, efd;
     int             hwm_fd;
 # elif RIO_POLL_METHOD == RIO_POLL_METHOD_POLL
index 9a6de8927089d35e14daa4ba951760548f77a0db..d5af8663c23dfe71b7c279b344a99f13ec6ee179 100644 (file)
 
 # define RIO_POLL_METHOD_SELECT         1
 # define RIO_POLL_METHOD_POLL           2
+# define RIO_POLL_METHOD_NONE           3
 
 # ifndef RIO_POLL_METHOD
-#  if !defined(OPENSSL_SYS_WINDOWS) && defined(POLLIN)
+#  if defined(OPENSSL_SYS_UEFI)
+#   define RIO_POLL_METHOD              RIO_POLL_METHOD_NONE
+#  elif !defined(OPENSSL_SYS_WINDOWS) && defined(POLLIN)
 #   define RIO_POLL_METHOD              RIO_POLL_METHOD_POLL
 #  else
 #   define RIO_POLL_METHOD              RIO_POLL_METHOD_SELECT