Changeset 04803bf in mainline for uspace/lib/c/include/ipc/vfs.h


Ignore:
Timestamp:
2011-03-21T22:00:17Z (14 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
143932e3
Parents:
b50b5af2 (diff), 7308e84 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes (needs fixes).

File:
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/include/ipc/vfs.h

    rb50b5af2 r04803bf  
    3636#define LIBC_IPC_VFS_H_
    3737
     38#include <ipc/common.h>
    3839#include <sys/types.h>
    39 #include <ipc/ipc.h>
     40#include <bool.h>
    4041
    4142#define FS_NAME_MAXLEN  20
     
    5556        /** Unique identifier of the fs. */
    5657        char name[FS_NAME_MAXLEN + 1];
     58        bool concurrent_read_write;
     59        bool write_retains_size;
    5760} vfs_info_t;
    5861
     
    7376        VFS_IN_UNLINK,
    7477        VFS_IN_RENAME,
    75         VFS_IN_STAT
     78        VFS_IN_STAT,
     79        VFS_IN_DUP
    7680} vfs_in_request_t;
    7781
     
    8589        VFS_OUT_MOUNTED,
    8690        VFS_OUT_UNMOUNT,
     91        VFS_OUT_UNMOUNTED,
    8792        VFS_OUT_SYNC,
    8893        VFS_OUT_STAT,
     
    99104 * No lookup flags used.
    100105 */
    101 #define L_NONE  0
     106#define L_NONE                  0
    102107
    103108/**
     
    106111 * with L_DIRECTORY.
    107112 */
    108 #define L_FILE  1
     113#define L_FILE                  1
    109114
    110115/**
    111  * Lookup wil succeed only if the object is a directory. If L_CREATE is
     116 * Lookup will succeed only if the object is a directory. If L_CREATE is
    112117 * specified, an empty directory will be created. This flag is mutually
    113118 * exclusive with L_FILE.
    114119 */
    115 #define L_DIRECTORY  2
     120#define L_DIRECTORY             2
     121
     122/**
     123 * Lookup will succeed only if the object is a root directory. The flag is
     124 * mutually exclusive with L_FILE and L_MP.
     125 */
     126#define L_ROOT                  4
     127
     128/**
     129 * Lookup will succeed only if the object is a mount point. The flag is mutually
     130 * exclusive with L_FILE and L_ROOT.
     131 */
     132#define L_MP                    8
     133
    116134
    117135/**
     
    119137 * object already exists. L_EXCLUSIVE is implied when L_DIRECTORY is used.
    120138 */
    121 #define L_EXCLUSIVE  4
     139#define L_EXCLUSIVE             16
    122140
    123141/**
    124142 * L_CREATE is used for creating both regular files and directories.
    125143 */
    126 #define L_CREATE  8
     144#define L_CREATE                32
    127145
    128146/**
    129147 * L_LINK is used for linking to an already existing nodes.
    130148 */
    131 #define L_LINK  16
     149#define L_LINK                  64
    132150
    133151/**
     
    136154 * VFS_UNLINK.
    137155 */
    138 #define L_UNLINK  32
     156#define L_UNLINK                128
    139157
    140158/**
    141  * L_OPEN is used to indicate that the lookup operation is a part of VFS_OPEN
     159 * L_OPEN is used to indicate that the lookup operation is a part of VFS_IN_OPEN
    142160 * call from the client. This means that the server might allocate some
    143161 * resources for the opened file. This flag cannot be passed directly by the
    144162 * client.
    145163 */
    146 #define L_OPEN  64
     164#define L_OPEN                  256
    147165
    148166#endif
Note: See TracChangeset for help on using the changeset viewer.