| @@ -1,14 +1,14 @@ | | | @@ -1,14 +1,14 @@ |
1 | /* $NetBSD: ptyfs_vnops.c,v 1.65 2021/07/18 23:57:14 dholland Exp $ */ | | 1 | /* $NetBSD: ptyfs_vnops.c,v 1.66 2021/07/18 23:57:34 dholland Exp $ */ |
2 | | | 2 | |
3 | /* | | 3 | /* |
4 | * Copyright (c) 1993, 1995 | | 4 | * Copyright (c) 1993, 1995 |
5 | * The Regents of the University of California. All rights reserved. | | 5 | * The Regents of the University of California. All rights reserved. |
6 | * | | 6 | * |
7 | * This code is derived from software contributed to Berkeley by | | 7 | * This code is derived from software contributed to Berkeley by |
8 | * Jan-Simon Pendry. | | 8 | * Jan-Simon Pendry. |
9 | * | | 9 | * |
10 | * Redistribution and use in source and binary forms, with or without | | 10 | * Redistribution and use in source and binary forms, with or without |
11 | * modification, are permitted provided that the following conditions | | 11 | * modification, are permitted provided that the following conditions |
12 | * are met: | | 12 | * are met: |
13 | * 1. Redistributions of source code must retain the above copyright | | 13 | * 1. Redistributions of source code must retain the above copyright |
14 | * notice, this list of conditions and the following disclaimer. | | 14 | * notice, this list of conditions and the following disclaimer. |
| @@ -66,27 +66,27 @@ | | | @@ -66,27 +66,27 @@ |
66 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | | 66 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
67 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | | 67 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
68 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | | 68 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
69 | * SUCH DAMAGE. | | 69 | * SUCH DAMAGE. |
70 | * | | 70 | * |
71 | * @(#)procfs_vnops.c 8.18 (Berkeley) 5/21/95 | | 71 | * @(#)procfs_vnops.c 8.18 (Berkeley) 5/21/95 |
72 | */ | | 72 | */ |
73 | | | 73 | |
74 | /* | | 74 | /* |
75 | * ptyfs vnode interface | | 75 | * ptyfs vnode interface |
76 | */ | | 76 | */ |
77 | | | 77 | |
78 | #include <sys/cdefs.h> | | 78 | #include <sys/cdefs.h> |
79 | __KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.65 2021/07/18 23:57:14 dholland Exp $"); | | 79 | __KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.66 2021/07/18 23:57:34 dholland Exp $"); |
80 | | | 80 | |
81 | #include <sys/param.h> | | 81 | #include <sys/param.h> |
82 | #include <sys/systm.h> | | 82 | #include <sys/systm.h> |
83 | #include <sys/time.h> | | 83 | #include <sys/time.h> |
84 | #include <sys/kernel.h> | | 84 | #include <sys/kernel.h> |
85 | #include <sys/file.h> | | 85 | #include <sys/file.h> |
86 | #include <sys/filedesc.h> | | 86 | #include <sys/filedesc.h> |
87 | #include <sys/proc.h> | | 87 | #include <sys/proc.h> |
88 | #include <sys/vnode.h> | | 88 | #include <sys/vnode.h> |
89 | #include <sys/namei.h> | | 89 | #include <sys/namei.h> |
90 | #include <sys/malloc.h> | | 90 | #include <sys/malloc.h> |
91 | #include <sys/mount.h> | | 91 | #include <sys/mount.h> |
92 | #include <sys/select.h> | | 92 | #include <sys/select.h> |
| @@ -157,31 +157,31 @@ const struct vnodeopv_entry_desc ptyfs_v | | | @@ -157,31 +157,31 @@ const struct vnodeopv_entry_desc ptyfs_v |
157 | { &vop_read_desc, ptyfs_read }, /* read */ | | 157 | { &vop_read_desc, ptyfs_read }, /* read */ |
158 | { &vop_write_desc, ptyfs_write }, /* write */ | | 158 | { &vop_write_desc, ptyfs_write }, /* write */ |
159 | { &vop_fallocate_desc, genfs_eopnotsupp }, /* fallocate */ | | 159 | { &vop_fallocate_desc, genfs_eopnotsupp }, /* fallocate */ |
160 | { &vop_fdiscard_desc, genfs_eopnotsupp }, /* fdiscard */ | | 160 | { &vop_fdiscard_desc, genfs_eopnotsupp }, /* fdiscard */ |
161 | { &vop_ioctl_desc, ptyfs_ioctl }, /* ioctl */ | | 161 | { &vop_ioctl_desc, ptyfs_ioctl }, /* ioctl */ |
162 | { &vop_fcntl_desc, genfs_fcntl }, /* fcntl */ | | 162 | { &vop_fcntl_desc, genfs_fcntl }, /* fcntl */ |
163 | { &vop_poll_desc, ptyfs_poll }, /* poll */ | | 163 | { &vop_poll_desc, ptyfs_poll }, /* poll */ |
164 | { &vop_kqfilter_desc, ptyfs_kqfilter }, /* kqfilter */ | | 164 | { &vop_kqfilter_desc, ptyfs_kqfilter }, /* kqfilter */ |
165 | { &vop_revoke_desc, genfs_revoke }, /* revoke */ | | 165 | { &vop_revoke_desc, genfs_revoke }, /* revoke */ |
166 | { &vop_mmap_desc, genfs_eopnotsupp }, /* mmap */ | | 166 | { &vop_mmap_desc, genfs_eopnotsupp }, /* mmap */ |
167 | { &vop_fsync_desc, genfs_nullop }, /* fsync */ | | 167 | { &vop_fsync_desc, genfs_nullop }, /* fsync */ |
168 | { &vop_seek_desc, genfs_nullop }, /* seek */ | | 168 | { &vop_seek_desc, genfs_nullop }, /* seek */ |
169 | { &vop_remove_desc, genfs_eopnotsupp }, /* remove */ | | 169 | { &vop_remove_desc, genfs_eopnotsupp }, /* remove */ |
170 | { &vop_link_desc, genfs_abortop }, /* link */ | | 170 | { &vop_link_desc, genfs_eopnotsupp }, /* link */ |
171 | { &vop_rename_desc, genfs_eopnotsupp }, /* rename */ | | 171 | { &vop_rename_desc, genfs_eopnotsupp }, /* rename */ |
172 | { &vop_mkdir_desc, genfs_eopnotsupp }, /* mkdir */ | | 172 | { &vop_mkdir_desc, genfs_eopnotsupp }, /* mkdir */ |
173 | { &vop_rmdir_desc, genfs_eopnotsupp }, /* rmdir */ | | 173 | { &vop_rmdir_desc, genfs_eopnotsupp }, /* rmdir */ |
174 | { &vop_symlink_desc, genfs_abortop }, /* symlink */ | | 174 | { &vop_symlink_desc, genfs_eopnotsupp }, /* symlink */ |
175 | { &vop_readdir_desc, ptyfs_readdir }, /* readdir */ | | 175 | { &vop_readdir_desc, ptyfs_readdir }, /* readdir */ |
176 | { &vop_readlink_desc, genfs_eopnotsupp }, /* readlink */ | | 176 | { &vop_readlink_desc, genfs_eopnotsupp }, /* readlink */ |
177 | { &vop_abortop_desc, genfs_abortop }, /* abortop */ | | 177 | { &vop_abortop_desc, genfs_abortop }, /* abortop */ |
178 | { &vop_inactive_desc, ptyfs_inactive }, /* inactive */ | | 178 | { &vop_inactive_desc, ptyfs_inactive }, /* inactive */ |
179 | { &vop_reclaim_desc, ptyfs_reclaim }, /* reclaim */ | | 179 | { &vop_reclaim_desc, ptyfs_reclaim }, /* reclaim */ |
180 | { &vop_lock_desc, genfs_lock }, /* lock */ | | 180 | { &vop_lock_desc, genfs_lock }, /* lock */ |
181 | { &vop_unlock_desc, genfs_unlock }, /* unlock */ | | 181 | { &vop_unlock_desc, genfs_unlock }, /* unlock */ |
182 | { &vop_bmap_desc, genfs_eopnotsupp }, /* bmap */ | | 182 | { &vop_bmap_desc, genfs_eopnotsupp }, /* bmap */ |
183 | { &vop_strategy_desc, genfs_badop }, /* strategy */ | | 183 | { &vop_strategy_desc, genfs_badop }, /* strategy */ |
184 | { &vop_print_desc, ptyfs_print }, /* print */ | | 184 | { &vop_print_desc, ptyfs_print }, /* print */ |
185 | { &vop_islocked_desc, genfs_islocked }, /* islocked */ | | 185 | { &vop_islocked_desc, genfs_islocked }, /* islocked */ |
186 | { &vop_pathconf_desc, ptyfs_pathconf }, /* pathconf */ | | 186 | { &vop_pathconf_desc, ptyfs_pathconf }, /* pathconf */ |
187 | { &vop_advlock_desc, ptyfs_advlock }, /* advlock */ | | 187 | { &vop_advlock_desc, ptyfs_advlock }, /* advlock */ |