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