version 1.89.4.1, 2006/09/09 02:57:59 |
version 1.90, 2006/03/01 12:38:21 |
Line 61 __KERNEL_RCSID(0, "$NetBSD$"); |
|
Line 61 __KERNEL_RCSID(0, "$NetBSD$"); |
|
#include <sys/buf.h> |
#include <sys/buf.h> |
#include <sys/dirent.h> |
#include <sys/dirent.h> |
#include <sys/tty.h> |
#include <sys/tty.h> |
#include <sys/kauth.h> |
|
|
|
#include <miscfs/fdesc/fdesc.h> |
#include <miscfs/fdesc/fdesc.h> |
#include <miscfs/genfs/genfs.h> |
#include <miscfs/genfs/genfs.h> |
Line 125 int fdesc_pathconf(void *); |
|
Line 124 int fdesc_pathconf(void *); |
|
#define fdesc_revoke genfs_revoke |
#define fdesc_revoke genfs_revoke |
#define fdesc_putpages genfs_null_putpages |
#define fdesc_putpages genfs_null_putpages |
|
|
static int fdesc_attr(int, struct vattr *, kauth_cred_t, struct lwp *); |
static int fdesc_attr(int, struct vattr *, struct ucred *, struct lwp *); |
|
|
int (**fdesc_vnodeop_p)(void *); |
int (**fdesc_vnodeop_p)(void *); |
const struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = { |
const struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = { |
|
|
struct vop_open_args /* { |
struct vop_open_args /* { |
struct vnode *a_vp; |
struct vnode *a_vp; |
int a_mode; |
int a_mode; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
struct lwp *a_l; |
struct lwp *a_l; |
} */ *ap = v; |
} */ *ap = v; |
struct vnode *vp = ap->a_vp; |
struct vnode *vp = ap->a_vp; |
|
|
fdesc_attr(fd, vap, cred, l) |
fdesc_attr(fd, vap, cred, l) |
int fd; |
int fd; |
struct vattr *vap; |
struct vattr *vap; |
kauth_cred_t cred; |
struct ucred *cred; |
struct lwp *l; |
struct lwp *l; |
{ |
{ |
struct proc *p = l->l_proc; |
struct proc *p = l->l_proc; |
Line 534 fdesc_getattr(v) |
|
Line 533 fdesc_getattr(v) |
|
struct vop_getattr_args /* { |
struct vop_getattr_args /* { |
struct vnode *a_vp; |
struct vnode *a_vp; |
struct vattr *a_vap; |
struct vattr *a_vap; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
struct lwp *a_l; |
struct lwp *a_l; |
} */ *ap = v; |
} */ *ap = v; |
struct vnode *vp = ap->a_vp; |
struct vnode *vp = ap->a_vp; |
Line 615 fdesc_setattr(v) |
|
Line 614 fdesc_setattr(v) |
|
struct vop_setattr_args /* { |
struct vop_setattr_args /* { |
struct vnode *a_vp; |
struct vnode *a_vp; |
struct vattr *a_vap; |
struct vattr *a_vap; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
struct lwp *a_l; |
struct lwp *a_l; |
} */ *ap = v; |
} */ *ap = v; |
struct filedesc *fdp = ap->a_l->l_proc->p_fd; |
struct filedesc *fdp = ap->a_l->l_proc->p_fd; |
Line 674 fdesc_readdir(v) |
|
Line 673 fdesc_readdir(v) |
|
struct vop_readdir_args /* { |
struct vop_readdir_args /* { |
struct vnode *a_vp; |
struct vnode *a_vp; |
struct uio *a_uio; |
struct uio *a_uio; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
int *a_eofflag; |
int *a_eofflag; |
off_t **a_cookies; |
off_t **a_cookies; |
int *a_ncookies; |
int *a_ncookies; |
Line 787 fdesc_readdir(v) |
|
Line 786 fdesc_readdir(v) |
|
default: |
default: |
KASSERT(fdp != NULL); |
KASSERT(fdp != NULL); |
j = (int)i - 2; |
j = (int)i - 2; |
if (fdp == NULL || fdp->fd_ofiles[j] == NULL || |
if (fdp->fd_ofiles[j] == NULL || |
FILE_IS_USABLE(fdp->fd_ofiles[j]) == 0) |
FILE_IS_USABLE(fdp->fd_ofiles[j]) == 0) |
continue; |
continue; |
d.d_fileno = j + FD_STDIN; |
d.d_fileno = j + FD_STDIN; |
Line 820 fdesc_readlink(v) |
|
Line 819 fdesc_readlink(v) |
|
struct vop_readlink_args /* { |
struct vop_readlink_args /* { |
struct vnode *a_vp; |
struct vnode *a_vp; |
struct uio *a_uio; |
struct uio *a_uio; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
} */ *ap = v; |
} */ *ap = v; |
struct vnode *vp = ap->a_vp; |
struct vnode *vp = ap->a_vp; |
int error; |
int error; |
|
|
struct vnode *a_vp; |
struct vnode *a_vp; |
struct uio *a_uio; |
struct uio *a_uio; |
int a_ioflag; |
int a_ioflag; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
} */ *ap = v; |
} */ *ap = v; |
int error = EOPNOTSUPP; |
int error = EOPNOTSUPP; |
struct vnode *vp = ap->a_vp; |
struct vnode *vp = ap->a_vp; |
|
|
struct vnode *a_vp; |
struct vnode *a_vp; |
struct uio *a_uio; |
struct uio *a_uio; |
int a_ioflag; |
int a_ioflag; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
} */ *ap = v; |
} */ *ap = v; |
int error = EOPNOTSUPP; |
int error = EOPNOTSUPP; |
struct vnode *vp = ap->a_vp; |
struct vnode *vp = ap->a_vp; |
|
|
u_long a_command; |
u_long a_command; |
void *a_data; |
void *a_data; |
int a_fflag; |
int a_fflag; |
kauth_cred_t a_cred; |
struct ucred *a_cred; |
struct lwp *a_l; |
struct lwp *a_l; |
} */ *ap = v; |
} */ *ap = v; |
int error = EOPNOTSUPP; |
int error = EOPNOTSUPP; |