1 /* 2 * Copyright 2024-2025 The OpenSSL Project Authors. All Rights Reserved. 3 * 4 * Licensed under the Apache License 2.0 (the "License"). You may not use 5 * this file except in compliance with the License. You can obtain a copy 6 * in the file LICENSE in the source distribution or at 7 * https://www.openssl.org/source/license.html 8 */ 9 #ifndef OSSL_POLL_METHOD_H 10 #define OSSL_POLL_METHOD_H 11 12 #include "internal/common.h" 13 #include "internal/sockets.h" 14 15 #define RIO_POLL_METHOD_SELECT 1 16 #define RIO_POLL_METHOD_POLL 2 17 #define RIO_POLL_METHOD_NONE 3 18 19 #ifndef RIO_POLL_METHOD 20 #if defined(OPENSSL_SYS_UEFI) 21 #define RIO_POLL_METHOD RIO_POLL_METHOD_NONE 22 #elif !defined(OPENSSL_SYS_WINDOWS) && defined(POLLIN) 23 #define RIO_POLL_METHOD RIO_POLL_METHOD_POLL 24 #else 25 #define RIO_POLL_METHOD RIO_POLL_METHOD_SELECT 26 #endif 27 #endif 28 29 #endif 30