1 /*
2 * Copyright (c) 1997 John S. Dyson. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * 2. John S. Dyson's name may not be used to endorse or promote products
10 * derived from this software without specific prior written permission.
11 *
12 * DISCLAIMER: This code isn't warranted to do anything useful. Anything
13 * bad that happens because of using this software isn't the responsibility
14 * of the author. This software is distributed AS-IS.
15 *
16 * $FreeBSD: src/sys/kern/vfs_aio.c,v 1.70.2.28 2003/05/29 06:15:35 alc Exp $
17 */
18
19 /*
20 * This file contains stubs for the POSIX 1003.1B AIO/LIO facility.
21 */
22
23 #include <sys/param.h>
24 #include <sys/sysmsg.h>
25 #include <sys/event.h>
26
27 int
sys_aio_return(struct sysmsg * sysmsg,const struct aio_return_args * uap)28 sys_aio_return(struct sysmsg *sysmsg, const struct aio_return_args *uap)
29 {
30 return ENOSYS;
31 }
32
33 int
sys_aio_suspend(struct sysmsg * sysmsg,const struct aio_suspend_args * uap)34 sys_aio_suspend(struct sysmsg *sysmsg, const struct aio_suspend_args *uap)
35 {
36 return ENOSYS;
37 }
38
39 int
sys_aio_cancel(struct sysmsg * sysmsg,const struct aio_cancel_args * uap)40 sys_aio_cancel(struct sysmsg *sysmsg, const struct aio_cancel_args *uap)
41 {
42 return ENOSYS;
43 }
44
45 int
sys_aio_error(struct sysmsg * sysmsg,const struct aio_error_args * uap)46 sys_aio_error(struct sysmsg *sysmsg, const struct aio_error_args *uap)
47 {
48 return ENOSYS;
49 }
50
51 int
sys_aio_read(struct sysmsg * sysmsg,const struct aio_read_args * uap)52 sys_aio_read(struct sysmsg *sysmsg, const struct aio_read_args *uap)
53 {
54 return ENOSYS;
55 }
56
57 int
sys_aio_write(struct sysmsg * sysmsg,const struct aio_write_args * uap)58 sys_aio_write(struct sysmsg *sysmsg, const struct aio_write_args *uap)
59 {
60 return ENOSYS;
61 }
62
63 int
sys_lio_listio(struct sysmsg * sysmsg,const struct lio_listio_args * uap)64 sys_lio_listio(struct sysmsg *sysmsg, const struct lio_listio_args *uap)
65 {
66 return ENOSYS;
67 }
68
69 int
sys_aio_waitcomplete(struct sysmsg * sysmsg,const struct aio_waitcomplete_args * uap)70 sys_aio_waitcomplete(struct sysmsg *sysmsg, const struct aio_waitcomplete_args *uap)
71 {
72 return ENOSYS;
73 }
74
75 static int
filt_aioattach(struct knote * kn)76 filt_aioattach(struct knote *kn)
77 {
78 return ENXIO;
79 }
80
81 struct filterops aio_filtops =
82 { FILTEROP_MPSAFE, filt_aioattach, NULL, NULL };
83