1*d5c47e0eSchristos /* $NetBSD: aio.h,v 1.7 2009/01/13 15:11:09 christos Exp $ */ 267d703cfSrmind 367d703cfSrmind /* 467d703cfSrmind * Copyright (c) 2007, Mindaugas Rasiukevicius <rmind at NetBSD org> 5c75dc327Srmind * All rights reserved. 667d703cfSrmind * 767d703cfSrmind * Redistribution and use in source and binary forms, with or without 867d703cfSrmind * modification, are permitted provided that the following conditions 967d703cfSrmind * are met: 1067d703cfSrmind * 1. Redistributions of source code must retain the above copyright 1167d703cfSrmind * notice, this list of conditions and the following disclaimer. 1267d703cfSrmind * 2. Redistributions in binary form must reproduce the above copyright 1367d703cfSrmind * notice, this list of conditions and the following disclaimer in the 1467d703cfSrmind * documentation and/or other materials provided with the distribution. 1567d703cfSrmind * 1606171502Srmind * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1706171502Srmind * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1806171502Srmind * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1906171502Srmind * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 2006171502Srmind * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2106171502Srmind * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2206171502Srmind * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2306171502Srmind * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2406171502Srmind * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2506171502Srmind * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2606171502Srmind * SUCH DAMAGE. 2767d703cfSrmind */ 2867d703cfSrmind 2967d703cfSrmind #ifndef _AIO_H_ 3067d703cfSrmind #define _AIO_H_ 3167d703cfSrmind 3267d703cfSrmind #include <fcntl.h> 3367d703cfSrmind #include <signal.h> 3467d703cfSrmind #include <time.h> 35f8679681Srmind 36f8679681Srmind #include <sys/cdefs.h> 3767d703cfSrmind #include <sys/signal.h> 3867d703cfSrmind 3967d703cfSrmind #include <sys/aio.h> 4067d703cfSrmind 41f8679681Srmind __BEGIN_DECLS 4267d703cfSrmind int aio_cancel(int, struct aiocb *); 4367d703cfSrmind int aio_error(const struct aiocb *); 4467d703cfSrmind int aio_fsync(int, struct aiocb *); 4567d703cfSrmind int aio_read(struct aiocb *); 4667d703cfSrmind ssize_t aio_return(struct aiocb *); 47*d5c47e0eSchristos #ifndef __LIBC12_SOURCE__ 48f8679681Srmind int aio_suspend(const struct aiocb * const [], int, 4950728e78Schristos const struct timespec *) __RENAME(__aio_suspend50); 5050728e78Schristos #endif 5167d703cfSrmind int aio_write(struct aiocb *); 52597004aaSrmind int lio_listio(int, struct aiocb * const * __restrict, 53f8679681Srmind int, struct sigevent * __restrict); 54f8679681Srmind __END_DECLS 5567d703cfSrmind 5667d703cfSrmind #endif /* _AIO_H_ */ 57