The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/sys/vnode_if.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*      $NetBSD: vnode_if.h,v 1.111 2022/07/18 04:32:35 thorpej Exp $   */
    2 
    3 /*
    4  * Warning: DO NOT EDIT! This file is automatically generated!
    5  * (Modifications made here may easily be lost!)
    6  *
    7  * Created from the file:
    8  *      NetBSD: vnode_if.src,v 1.84 2022/05/03 08:33:59 hannken Exp
    9  * by the script:
   10  *      NetBSD: vnode_if.sh,v 1.76 2022/07/18 04:30:30 thorpej Exp
   11  */
   12 
   13 /*
   14  * Copyright (c) 1992, 1993, 1994, 1995
   15  *      The Regents of the University of California.  All rights reserved.
   16  *
   17  * Redistribution and use in source and binary forms, with or without
   18  * modification, are permitted provided that the following conditions
   19  * are met:
   20  * 1. Redistributions of source code must retain the above copyright
   21  *    notice, this list of conditions and the following disclaimer.
   22  * 2. Redistributions in binary form must reproduce the above copyright
   23  *    notice, this list of conditions and the following disclaimer in the
   24  *    documentation and/or other materials provided with the distribution.
   25  * 3. Neither the name of the University nor the names of its contributors
   26  *    may be used to endorse or promote products derived from this software
   27  *    without specific prior written permission.
   28  *
   29  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   30  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   31  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   32  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   33  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   34  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   35  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   36  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   37  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   38  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   39  * SUCH DAMAGE.
   40  */
   41 
   42 #ifndef _SYS_VNODE_IF_H_
   43 #define _SYS_VNODE_IF_H_
   44 
   45 extern const struct vnodeop_desc vop_default_desc;
   46 
   47 struct buf;
   48 
   49 #ifndef _KERNEL
   50 #include <stdbool.h>
   51 #endif
   52 
   53 #define VOP_BWRITE_DESCOFFSET 1
   54 struct vop_bwrite_args {
   55         const struct vnodeop_desc *a_desc;
   56         struct vnode *a_vp;
   57         struct buf *a_bp;
   58 };
   59 extern const struct vnodeop_desc vop_bwrite_desc;
   60 int VOP_BWRITE(struct vnode *, struct buf *);
   61 
   62 #define VOP_PARSEPATH_DESCOFFSET 2
   63 struct vop_parsepath_args {
   64         const struct vnodeop_desc *a_desc;
   65         struct vnode *a_dvp;
   66         const char *a_name;
   67         size_t *a_retval;
   68 };
   69 extern const struct vnodeop_desc vop_parsepath_desc;
   70 int VOP_PARSEPATH(struct vnode *, const char *, size_t *);
   71 
   72 #define VOP_LOOKUP_DESCOFFSET 3
   73 struct vop_lookup_v2_args {
   74         const struct vnodeop_desc *a_desc;
   75         struct vnode *a_dvp;
   76         struct vnode **a_vpp;
   77         struct componentname *a_cnp;
   78 };
   79 extern const struct vnodeop_desc vop_lookup_desc;
   80 int VOP_LOOKUP(struct vnode *, struct vnode **, struct componentname *);
   81 
   82 #define VOP_CREATE_DESCOFFSET 4
   83 struct vop_create_v3_args {
   84         const struct vnodeop_desc *a_desc;
   85         struct vnode *a_dvp;
   86         struct vnode **a_vpp;
   87         struct componentname *a_cnp;
   88         struct vattr *a_vap;
   89 };
   90 extern const struct vnodeop_desc vop_create_desc;
   91 int VOP_CREATE(struct vnode *, struct vnode **, struct componentname *, 
   92     struct vattr *);
   93 
   94 #define VOP_MKNOD_DESCOFFSET 5
   95 struct vop_mknod_v3_args {
   96         const struct vnodeop_desc *a_desc;
   97         struct vnode *a_dvp;
   98         struct vnode **a_vpp;
   99         struct componentname *a_cnp;
  100         struct vattr *a_vap;
  101 };
  102 extern const struct vnodeop_desc vop_mknod_desc;
  103 int VOP_MKNOD(struct vnode *, struct vnode **, struct componentname *, 
  104     struct vattr *);
  105 
  106 #define VOP_OPEN_DESCOFFSET 6
  107 struct vop_open_args {
  108         const struct vnodeop_desc *a_desc;
  109         struct vnode *a_vp;
  110         int a_mode;
  111         kauth_cred_t a_cred;
  112 };
  113 extern const struct vnodeop_desc vop_open_desc;
  114 int VOP_OPEN(struct vnode *, int, kauth_cred_t);
  115 
  116 #define VOP_CLOSE_DESCOFFSET 7
  117 struct vop_close_args {
  118         const struct vnodeop_desc *a_desc;
  119         struct vnode *a_vp;
  120         int a_fflag;
  121         kauth_cred_t a_cred;
  122 };
  123 extern const struct vnodeop_desc vop_close_desc;
  124 int VOP_CLOSE(struct vnode *, int, kauth_cred_t);
  125 
  126 #define VOP_ACCESS_DESCOFFSET 8
  127 struct vop_access_args {
  128         const struct vnodeop_desc *a_desc;
  129         struct vnode *a_vp;
  130         accmode_t a_accmode;
  131         kauth_cred_t a_cred;
  132 };
  133 extern const struct vnodeop_desc vop_access_desc;
  134 int VOP_ACCESS(struct vnode *, accmode_t, kauth_cred_t);
  135 
  136 #define VOP_ACCESSX_DESCOFFSET 9
  137 struct vop_accessx_args {
  138         const struct vnodeop_desc *a_desc;
  139         struct vnode *a_vp;
  140         accmode_t a_accmode;
  141         kauth_cred_t a_cred;
  142 };
  143 extern const struct vnodeop_desc vop_accessx_desc;
  144 int VOP_ACCESSX(struct vnode *, accmode_t, kauth_cred_t);
  145 
  146 #define VOP_GETATTR_DESCOFFSET 10
  147 struct vop_getattr_args {
  148         const struct vnodeop_desc *a_desc;
  149         struct vnode *a_vp;
  150         struct vattr *a_vap;
  151         kauth_cred_t a_cred;
  152 };
  153 extern const struct vnodeop_desc vop_getattr_desc;
  154 int VOP_GETATTR(struct vnode *, struct vattr *, kauth_cred_t);
  155 
  156 #define VOP_SETATTR_DESCOFFSET 11
  157 struct vop_setattr_args {
  158         const struct vnodeop_desc *a_desc;
  159         struct vnode *a_vp;
  160         struct vattr *a_vap;
  161         kauth_cred_t a_cred;
  162 };
  163 extern const struct vnodeop_desc vop_setattr_desc;
  164 int VOP_SETATTR(struct vnode *, struct vattr *, kauth_cred_t);
  165 
  166 #define VOP_READ_DESCOFFSET 12
  167 struct vop_read_args {
  168         const struct vnodeop_desc *a_desc;
  169         struct vnode *a_vp;
  170         struct uio *a_uio;
  171         int a_ioflag;
  172         kauth_cred_t a_cred;
  173 };
  174 extern const struct vnodeop_desc vop_read_desc;
  175 int VOP_READ(struct vnode *, struct uio *, int, kauth_cred_t);
  176 
  177 #define VOP_WRITE_DESCOFFSET 13
  178 struct vop_write_args {
  179         const struct vnodeop_desc *a_desc;
  180         struct vnode *a_vp;
  181         struct uio *a_uio;
  182         int a_ioflag;
  183         kauth_cred_t a_cred;
  184 };
  185 extern const struct vnodeop_desc vop_write_desc;
  186 int VOP_WRITE(struct vnode *, struct uio *, int, kauth_cred_t);
  187 
  188 #define VOP_FALLOCATE_DESCOFFSET 14
  189 struct vop_fallocate_args {
  190         const struct vnodeop_desc *a_desc;
  191         struct vnode *a_vp;
  192         off_t a_pos;
  193         off_t a_len;
  194 };
  195 extern const struct vnodeop_desc vop_fallocate_desc;
  196 int VOP_FALLOCATE(struct vnode *, off_t, off_t);
  197 
  198 #define VOP_FDISCARD_DESCOFFSET 15
  199 struct vop_fdiscard_args {
  200         const struct vnodeop_desc *a_desc;
  201         struct vnode *a_vp;
  202         off_t a_pos;
  203         off_t a_len;
  204 };
  205 extern const struct vnodeop_desc vop_fdiscard_desc;
  206 int VOP_FDISCARD(struct vnode *, off_t, off_t);
  207 
  208 #define VOP_IOCTL_DESCOFFSET 16
  209 struct vop_ioctl_args {
  210         const struct vnodeop_desc *a_desc;
  211         struct vnode *a_vp;
  212         u_long a_command;
  213         void *a_data;
  214         int a_fflag;
  215         kauth_cred_t a_cred;
  216 };
  217 extern const struct vnodeop_desc vop_ioctl_desc;
  218 int VOP_IOCTL(struct vnode *, u_long, void *, int, kauth_cred_t);
  219 
  220 #define VOP_FCNTL_DESCOFFSET 17
  221 struct vop_fcntl_args {
  222         const struct vnodeop_desc *a_desc;
  223         struct vnode *a_vp;
  224         u_int a_command;
  225         void *a_data;
  226         int a_fflag;
  227         kauth_cred_t a_cred;
  228 };
  229 extern const struct vnodeop_desc vop_fcntl_desc;
  230 int VOP_FCNTL(struct vnode *, u_int, void *, int, kauth_cred_t);
  231 
  232 #define VOP_POLL_DESCOFFSET 18
  233 struct vop_poll_args {
  234         const struct vnodeop_desc *a_desc;
  235         struct vnode *a_vp;
  236         int a_events;
  237 };
  238 extern const struct vnodeop_desc vop_poll_desc;
  239 int VOP_POLL(struct vnode *, int);
  240 
  241 #define VOP_KQFILTER_DESCOFFSET 19
  242 struct vop_kqfilter_args {
  243         const struct vnodeop_desc *a_desc;
  244         struct vnode *a_vp;
  245         struct knote *a_kn;
  246 };
  247 extern const struct vnodeop_desc vop_kqfilter_desc;
  248 int VOP_KQFILTER(struct vnode *, struct knote *);
  249 
  250 #define VOP_REVOKE_DESCOFFSET 20
  251 struct vop_revoke_args {
  252         const struct vnodeop_desc *a_desc;
  253         struct vnode *a_vp;
  254         int a_flags;
  255 };
  256 extern const struct vnodeop_desc vop_revoke_desc;
  257 int VOP_REVOKE(struct vnode *, int);
  258 
  259 #define VOP_MMAP_DESCOFFSET 21
  260 struct vop_mmap_args {
  261         const struct vnodeop_desc *a_desc;
  262         struct vnode *a_vp;
  263         vm_prot_t a_prot;
  264         kauth_cred_t a_cred;
  265 };
  266 extern const struct vnodeop_desc vop_mmap_desc;
  267 int VOP_MMAP(struct vnode *, vm_prot_t, kauth_cred_t);
  268 
  269 #define VOP_FSYNC_DESCOFFSET 22
  270 struct vop_fsync_args {
  271         const struct vnodeop_desc *a_desc;
  272         struct vnode *a_vp;
  273         kauth_cred_t a_cred;
  274         int a_flags;
  275         off_t a_offlo;
  276         off_t a_offhi;
  277 };
  278 extern const struct vnodeop_desc vop_fsync_desc;
  279 int VOP_FSYNC(struct vnode *, kauth_cred_t, int, off_t, off_t);
  280 
  281 #define VOP_SEEK_DESCOFFSET 23
  282 struct vop_seek_args {
  283         const struct vnodeop_desc *a_desc;
  284         struct vnode *a_vp;
  285         off_t a_oldoff;
  286         off_t a_newoff;
  287         kauth_cred_t a_cred;
  288 };
  289 extern const struct vnodeop_desc vop_seek_desc;
  290 int VOP_SEEK(struct vnode *, off_t, off_t, kauth_cred_t);
  291 
  292 #define VOP_REMOVE_DESCOFFSET 24
  293 struct vop_remove_v3_args {
  294         const struct vnodeop_desc *a_desc;
  295         struct vnode *a_dvp;
  296         struct vnode *a_vp;
  297         struct componentname *a_cnp;
  298         nlink_t ctx_vp_new_nlink;
  299 };
  300 extern const struct vnodeop_desc vop_remove_desc;
  301 int VOP_REMOVE(struct vnode *, struct vnode *, struct componentname *);
  302 
  303 #define VOP_LINK_DESCOFFSET 25
  304 struct vop_link_v2_args {
  305         const struct vnodeop_desc *a_desc;
  306         struct vnode *a_dvp;
  307         struct vnode *a_vp;
  308         struct componentname *a_cnp;
  309 };
  310 extern const struct vnodeop_desc vop_link_desc;
  311 int VOP_LINK(struct vnode *, struct vnode *, struct componentname *);
  312 
  313 #define VOP_RENAME_DESCOFFSET 26
  314 struct vop_rename_args {
  315         const struct vnodeop_desc *a_desc;
  316         struct vnode *a_fdvp;
  317         struct vnode *a_fvp;
  318         struct componentname *a_fcnp;
  319         struct vnode *a_tdvp;
  320         struct vnode *a_tvp;
  321         struct componentname *a_tcnp;
  322 };
  323 extern const struct vnodeop_desc vop_rename_desc;
  324 int VOP_RENAME(struct vnode *, struct vnode *, struct componentname *, 
  325     struct vnode *, struct vnode *, struct componentname *);
  326 
  327 #define VOP_MKDIR_DESCOFFSET 27
  328 struct vop_mkdir_v3_args {
  329         const struct vnodeop_desc *a_desc;
  330         struct vnode *a_dvp;
  331         struct vnode **a_vpp;
  332         struct componentname *a_cnp;
  333         struct vattr *a_vap;
  334 };
  335 extern const struct vnodeop_desc vop_mkdir_desc;
  336 int VOP_MKDIR(struct vnode *, struct vnode **, struct componentname *, 
  337     struct vattr *);
  338 
  339 #define VOP_RMDIR_DESCOFFSET 28
  340 struct vop_rmdir_v2_args {
  341         const struct vnodeop_desc *a_desc;
  342         struct vnode *a_dvp;
  343         struct vnode *a_vp;
  344         struct componentname *a_cnp;
  345 };
  346 extern const struct vnodeop_desc vop_rmdir_desc;
  347 int VOP_RMDIR(struct vnode *, struct vnode *, struct componentname *);
  348 
  349 #define VOP_SYMLINK_DESCOFFSET 29
  350 struct vop_symlink_v3_args {
  351         const struct vnodeop_desc *a_desc;
  352         struct vnode *a_dvp;
  353         struct vnode **a_vpp;
  354         struct componentname *a_cnp;
  355         struct vattr *a_vap;
  356         char *a_target;
  357 };
  358 extern const struct vnodeop_desc vop_symlink_desc;
  359 int VOP_SYMLINK(struct vnode *, struct vnode **, struct componentname *, 
  360     struct vattr *, char *);
  361 
  362 #define VOP_READDIR_DESCOFFSET 30
  363 struct vop_readdir_args {
  364         const struct vnodeop_desc *a_desc;
  365         struct vnode *a_vp;
  366         struct uio *a_uio;
  367         kauth_cred_t a_cred;
  368         int *a_eofflag;
  369         off_t **a_cookies;
  370         int *a_ncookies;
  371 };
  372 extern const struct vnodeop_desc vop_readdir_desc;
  373 int VOP_READDIR(struct vnode *, struct uio *, kauth_cred_t, int *, off_t **, 
  374     int *);
  375 
  376 #define VOP_READLINK_DESCOFFSET 31
  377 struct vop_readlink_args {
  378         const struct vnodeop_desc *a_desc;
  379         struct vnode *a_vp;
  380         struct uio *a_uio;
  381         kauth_cred_t a_cred;
  382 };
  383 extern const struct vnodeop_desc vop_readlink_desc;
  384 int VOP_READLINK(struct vnode *, struct uio *, kauth_cred_t);
  385 
  386 #define VOP_ABORTOP_DESCOFFSET 32
  387 struct vop_abortop_args {
  388         const struct vnodeop_desc *a_desc;
  389         struct vnode *a_dvp;
  390         struct componentname *a_cnp;
  391 };
  392 extern const struct vnodeop_desc vop_abortop_desc;
  393 int VOP_ABORTOP(struct vnode *, struct componentname *);
  394 
  395 #define VOP_INACTIVE_DESCOFFSET 33
  396 struct vop_inactive_v2_args {
  397         const struct vnodeop_desc *a_desc;
  398         struct vnode *a_vp;
  399         bool *a_recycle;
  400 };
  401 extern const struct vnodeop_desc vop_inactive_desc;
  402 int VOP_INACTIVE(struct vnode *, bool *);
  403 
  404 #define VOP_RECLAIM_DESCOFFSET 34
  405 struct vop_reclaim_v2_args {
  406         const struct vnodeop_desc *a_desc;
  407         struct vnode *a_vp;
  408 };
  409 extern const struct vnodeop_desc vop_reclaim_desc;
  410 int VOP_RECLAIM(struct vnode *);
  411 
  412 #define VOP_LOCK_DESCOFFSET 35
  413 struct vop_lock_args {
  414         const struct vnodeop_desc *a_desc;
  415         struct vnode *a_vp;
  416         int a_flags;
  417 };
  418 extern const struct vnodeop_desc vop_lock_desc;
  419 int VOP_LOCK(struct vnode *, int);
  420 
  421 #define VOP_UNLOCK_DESCOFFSET 36
  422 struct vop_unlock_args {
  423         const struct vnodeop_desc *a_desc;
  424         struct vnode *a_vp;
  425 };
  426 extern const struct vnodeop_desc vop_unlock_desc;
  427 int VOP_UNLOCK(struct vnode *);
  428 
  429 #define VOP_BMAP_DESCOFFSET 37
  430 struct vop_bmap_args {
  431         const struct vnodeop_desc *a_desc;
  432         struct vnode *a_vp;
  433         daddr_t a_bn;
  434         struct vnode **a_vpp;
  435         daddr_t *a_bnp;
  436         int *a_runp;
  437 };
  438 extern const struct vnodeop_desc vop_bmap_desc;
  439 int VOP_BMAP(struct vnode *, daddr_t, struct vnode **, daddr_t *, int *);
  440 
  441 #define VOP_STRATEGY_DESCOFFSET 38
  442 struct vop_strategy_args {
  443         const struct vnodeop_desc *a_desc;
  444         struct vnode *a_vp;
  445         struct buf *a_bp;
  446 };
  447 extern const struct vnodeop_desc vop_strategy_desc;
  448 int VOP_STRATEGY(struct vnode *, struct buf *);
  449 
  450 #define VOP_PRINT_DESCOFFSET 39
  451 struct vop_print_args {
  452         const struct vnodeop_desc *a_desc;
  453         struct vnode *a_vp;
  454 };
  455 extern const struct vnodeop_desc vop_print_desc;
  456 int VOP_PRINT(struct vnode *);
  457 
  458 #define VOP_ISLOCKED_DESCOFFSET 40
  459 struct vop_islocked_args {
  460         const struct vnodeop_desc *a_desc;
  461         struct vnode *a_vp;
  462 };
  463 extern const struct vnodeop_desc vop_islocked_desc;
  464 int VOP_ISLOCKED(struct vnode *);
  465 
  466 #define VOP_PATHCONF_DESCOFFSET 41
  467 struct vop_pathconf_args {
  468         const struct vnodeop_desc *a_desc;
  469         struct vnode *a_vp;
  470         int a_name;
  471         register_t *a_retval;
  472 };
  473 extern const struct vnodeop_desc vop_pathconf_desc;
  474 int VOP_PATHCONF(struct vnode *, int, register_t *);
  475 
  476 #define VOP_ADVLOCK_DESCOFFSET 42
  477 struct vop_advlock_args {
  478         const struct vnodeop_desc *a_desc;
  479         struct vnode *a_vp;
  480         void *a_id;
  481         int a_op;
  482         struct flock *a_fl;
  483         int a_flags;
  484 };
  485 extern const struct vnodeop_desc vop_advlock_desc;
  486 int VOP_ADVLOCK(struct vnode *, void *, int, struct flock *, int);
  487 
  488 #define VOP_WHITEOUT_DESCOFFSET 43
  489 struct vop_whiteout_args {
  490         const struct vnodeop_desc *a_desc;
  491         struct vnode *a_dvp;
  492         struct componentname *a_cnp;
  493         int a_flags;
  494 };
  495 extern const struct vnodeop_desc vop_whiteout_desc;
  496 int VOP_WHITEOUT(struct vnode *, struct componentname *, int);
  497 
  498 #define VOP_GETPAGES_DESCOFFSET 44
  499 struct vop_getpages_args {
  500         const struct vnodeop_desc *a_desc;
  501         struct vnode *a_vp;
  502         voff_t a_offset;
  503         struct vm_page **a_m;
  504         int *a_count;
  505         int a_centeridx;
  506         vm_prot_t a_access_type;
  507         int a_advice;
  508         int a_flags;
  509 };
  510 extern const struct vnodeop_desc vop_getpages_desc;
  511 int VOP_GETPAGES(struct vnode *, voff_t, struct vm_page **, int *, int, 
  512     vm_prot_t, int, int);
  513 
  514 #define VOP_PUTPAGES_DESCOFFSET 45
  515 struct vop_putpages_args {
  516         const struct vnodeop_desc *a_desc;
  517         struct vnode *a_vp;
  518         voff_t a_offlo;
  519         voff_t a_offhi;
  520         int a_flags;
  521 };
  522 extern const struct vnodeop_desc vop_putpages_desc;
  523 int VOP_PUTPAGES(struct vnode *, voff_t, voff_t, int);
  524 
  525 #define VOP_GETACL_DESCOFFSET 46
  526 struct vop_getacl_args {
  527         const struct vnodeop_desc *a_desc;
  528         struct vnode *a_vp;
  529         acl_type_t a_type;
  530         struct acl *a_aclp;
  531         kauth_cred_t a_cred;
  532 };
  533 extern const struct vnodeop_desc vop_getacl_desc;
  534 int VOP_GETACL(struct vnode *, acl_type_t, struct acl *, kauth_cred_t);
  535 
  536 #define VOP_SETACL_DESCOFFSET 47
  537 struct vop_setacl_args {
  538         const struct vnodeop_desc *a_desc;
  539         struct vnode *a_vp;
  540         acl_type_t a_type;
  541         struct acl *a_aclp;
  542         kauth_cred_t a_cred;
  543 };
  544 extern const struct vnodeop_desc vop_setacl_desc;
  545 int VOP_SETACL(struct vnode *, acl_type_t, struct acl *, kauth_cred_t);
  546 
  547 #define VOP_ACLCHECK_DESCOFFSET 48
  548 struct vop_aclcheck_args {
  549         const struct vnodeop_desc *a_desc;
  550         struct vnode *a_vp;
  551         acl_type_t a_type;
  552         struct acl *a_aclp;
  553         kauth_cred_t a_cred;
  554 };
  555 extern const struct vnodeop_desc vop_aclcheck_desc;
  556 int VOP_ACLCHECK(struct vnode *, acl_type_t, struct acl *, kauth_cred_t);
  557 
  558 #define VOP_CLOSEEXTATTR_DESCOFFSET 49
  559 struct vop_closeextattr_args {
  560         const struct vnodeop_desc *a_desc;
  561         struct vnode *a_vp;
  562         int a_commit;
  563         kauth_cred_t a_cred;
  564 };
  565 extern const struct vnodeop_desc vop_closeextattr_desc;
  566 int VOP_CLOSEEXTATTR(struct vnode *, int, kauth_cred_t);
  567 
  568 #define VOP_GETEXTATTR_DESCOFFSET 50
  569 struct vop_getextattr_args {
  570         const struct vnodeop_desc *a_desc;
  571         struct vnode *a_vp;
  572         int a_attrnamespace;
  573         const char *a_name;
  574         struct uio *a_uio;
  575         size_t *a_size;
  576         kauth_cred_t a_cred;
  577 };
  578 extern const struct vnodeop_desc vop_getextattr_desc;
  579 int VOP_GETEXTATTR(struct vnode *, int, const char *, struct uio *, 
  580     size_t *, kauth_cred_t);
  581 
  582 #define VOP_LISTEXTATTR_DESCOFFSET 51
  583 struct vop_listextattr_args {
  584         const struct vnodeop_desc *a_desc;
  585         struct vnode *a_vp;
  586         int a_attrnamespace;
  587         struct uio *a_uio;
  588         size_t *a_size;
  589         int a_flag;
  590         kauth_cred_t a_cred;
  591 };
  592 extern const struct vnodeop_desc vop_listextattr_desc;
  593 int VOP_LISTEXTATTR(struct vnode *, int, struct uio *, size_t *, int, 
  594     kauth_cred_t);
  595 
  596 #define VOP_OPENEXTATTR_DESCOFFSET 52
  597 struct vop_openextattr_args {
  598         const struct vnodeop_desc *a_desc;
  599         struct vnode *a_vp;
  600         kauth_cred_t a_cred;
  601 };
  602 extern const struct vnodeop_desc vop_openextattr_desc;
  603 int VOP_OPENEXTATTR(struct vnode *, kauth_cred_t);
  604 
  605 #define VOP_DELETEEXTATTR_DESCOFFSET 53
  606 struct vop_deleteextattr_args {
  607         const struct vnodeop_desc *a_desc;
  608         struct vnode *a_vp;
  609         int a_attrnamespace;
  610         const char *a_name;
  611         kauth_cred_t a_cred;
  612 };
  613 extern const struct vnodeop_desc vop_deleteextattr_desc;
  614 int VOP_DELETEEXTATTR(struct vnode *, int, const char *, kauth_cred_t);
  615 
  616 #define VOP_SETEXTATTR_DESCOFFSET 54
  617 struct vop_setextattr_args {
  618         const struct vnodeop_desc *a_desc;
  619         struct vnode *a_vp;
  620         int a_attrnamespace;
  621         const char *a_name;
  622         struct uio *a_uio;
  623         kauth_cred_t a_cred;
  624 };
  625 extern const struct vnodeop_desc vop_setextattr_desc;
  626 int VOP_SETEXTATTR(struct vnode *, int, const char *, struct uio *, 
  627     kauth_cred_t);
  628 
  629 #define VNODE_OPS_COUNT 55
  630 
  631 #endif /* !_SYS_VNODE_IF_H_ */

Cache object: 54e9a439f8c0b21f8dd1defecf82682e


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.