VirtualBox

Changeset 69818 in vbox for trunk/include/iprt


Ignore:
Timestamp:
Nov 23, 2017 7:44:07 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
119242
Message:

IPRT/VFS: Got rid of the pfnTraversalOpen method.

Location:
trunk/include/iprt
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/path.h

    r69105 r69818  
    6565 * @{ */
    6666/** Last component: Work on the link. */
    67 #define RTPATH_F_ON_LINK          RT_BIT_32(0)
     67#define RTPATH_F_ON_LINK            RT_BIT_32(0)
    6868/** Last component: Follow if link. */
    69 #define RTPATH_F_FOLLOW_LINK      RT_BIT_32(1)
     69#define RTPATH_F_FOLLOW_LINK        RT_BIT_32(1)
    7070/** Don't allow symbolic links as part of the path.
    7171 * @remarks this flag is currently not implemented and will be ignored. */
    72 #define RTPATH_F_NO_SYMLINKS      RT_BIT_32(2)
     72#define RTPATH_F_NO_SYMLINKS        RT_BIT_32(2)
     73/** Current RTPATH_F_XXX flag mask. */
     74#define RTPATH_F_MASK               UINT32_C(0x00000007)
    7375/** @} */
    7476
  • trunk/include/iprt/vfs.h

    r69817 r69818  
    183183/** Socket (RTFS_TYPE_SOCKET). */
    184184#define RTVFSOBJ_F_OPEN_SOCKET              RT_BIT_32(14)
     185/** Mounted VFS. */
     186#define RTVFSOBJ_F_OPEN_MOUNT               RT_BIT_32(15)
    185187/** Mask object types we wish to open. */
    186 #define RTVFSOBJ_F_OPEN_MASK                UINT32_C(0x00003f00)
     188#define RTVFSOBJ_F_OPEN_MASK                UINT32_C(0x0000ff00)
    187189/** Any kind of object that translates to RTVFSOBJTYPE_FILE. */
    188 #define RTVFSOBJ_F_OPEN_ANY_FILE            (RTVFSOBJ_F_FILE | RTVFSOBJ_F_DEV_BLOCK)
     190#define RTVFSOBJ_F_OPEN_ANY_FILE            (RTVFSOBJ_F_OPEN_FILE | RTVFSOBJ_F_OPEN_DEV_BLOCK)
    189191/** Any kind of object that translates to RTVFSOBJTYPE_IOS or
    190192 *  RTVFSOBJTYPE_FILE. */
    191 #define RTVFSOBJ_F_OPEN_ANY_IO_STREAM       (RTVFSOBJ_F_ANY_FILE | RTVFSOBJ_F_DEV_BLOCK | RTVFSOBJ_F_FIFO | RTVFSOBJ_F_SOCKET)
     193#define RTVFSOBJ_F_OPEN_ANY_IO_STREAM       (  RTVFSOBJ_F_ANY_OPEN_FILE | RTVFSOBJ_F_DEV_OPEN_BLOCK \
     194                                             | RTVFSOBJ_F_OPEN_FIFO     | RTVFSOBJ_F_OPEN_SOCKET)
    192195/** Any kind of object. */
    193196#define RTVFSOBJ_F_OPEN_ANY                 RTVFSOBJ_F_OPEN_MASK
     
    208211#define RTVFSOBJ_F_TRAVERSAL                RT_BIT_32(31)
    209212/** Valid mask for external callers. */
    210 #define RTVFSOBJ_F_VALID_MASK               UINT32_C(0x00003f00)
     213#define RTVFSOBJ_F_VALID_MASK               UINT32_C(0x0007ff00)
    211214/** @} */
    212215
  • trunk/include/iprt/vfslowlevel.h

    r69813 r69818  
    562562    DECLCALLBACKMEMBER(int, pfnOpen)(void *pvThis, const char *pszEntry, uint64_t fOpenFile,
    563563                                     uint32_t fObjFlags, PRTVFSOBJ phVfsObj);
    564 
    565     /**
    566      * Opens a directory entry for traversal purposes.
    567      *
    568      * Method which sole purpose is helping the path traversal.  Only one of
    569      * the three output variables will be set, the others will left untouched
    570      * (caller sets them to NIL).
    571      *
    572      * @returns IPRT status code.
    573      * @retval  VERR_PATH_NOT_FOUND if @a pszEntry was not found.
    574      * @retval  VERR_NOT_A_DIRECTORY if @a pszEntry isn't a directory or symlink.
    575      * @param   pvThis          The implementation specific directory data.
    576      * @param   pszEntry        The name of the directory entry to remove.
    577      * @param   phVfsDir        If not NULL and it is a directory, open it and
    578      *                          return the handle here.
    579      * @param   phVfsSymlink    If not NULL and it is a symbolic link, open it
    580      *                          and return the handle here.
    581      * @param   phVfsMounted    If not NULL and it is a mounted VFS directory,
    582      *                          reference it and return the handle here.
    583      * @todo    Should com dir, symlinks and mount points using some common
    584      *          ancestor "class".
    585      * @note    Will be replaced by pfnOpenObj.
    586      */
    587     DECLCALLBACKMEMBER(int, pfnTraversalOpen)(void *pvThis, const char *pszEntry, PRTVFSDIR phVfsDir,
    588                                               PRTVFSSYMLINK phVfsSymlink, PRTVFS phVfsMounted);
    589564
    590565    /**
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette