1 /* Licensed to the Apache Software Foundation (ASF) under one or more 2 * contributor license agreements. See the NOTICE file distributed with 3 * this work for additional information regarding copyright ownership. 4 * The ASF licenses this file to You under the Apache License, Version 2.0 5 * (the "License"); you may not use this file except in compliance with 6 * the License. You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef APR_SUPPORT_H 18 #define APR_SUPPORT_H 19 20 /** 21 * @file apr_support.h 22 * @brief APR Support functions 23 */ 24 25 #include "apr.h" 26 #include "apr_network_io.h" 27 #include "apr_file_io.h" 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif /* __cplusplus */ 32 33 /** 34 * @defgroup apr_support Internal APR support functions 35 * @ingroup APR 36 * @{ 37 */ 38 39 /** 40 * Wait for IO to occur or timeout. 41 * 42 * @param f The file to wait on. 43 * @param s The socket to wait on if @a f is @c NULL. 44 * @param for_read If non-zero wait for data to be available to read, 45 * otherwise wait for data to be able to be written. 46 * @return APR_TIMEUP if we run out of time. 47 */ 48 apr_status_t apr_wait_for_io_or_timeout(apr_file_t *f, apr_socket_t *s, 49 int for_read); 50 51 /** @} */ 52 53 #ifdef __cplusplus 54 } 55 #endif 56 57 #endif /* ! APR_SUPPORT_H */ 58