VirtualBox

Ignore:
Timestamp:
Apr 5, 2013 3:23:38 PM (12 years ago)
Author:
vboxsync
Message:

-> laptop

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r0drv/nt/ntBldSymDb.cpp

    r45357 r45383  
    665665}
    666666
     667
    667668#if 0
     669/** @name Path properties returned by RTPathParse and RTPathSplit.
     670 * @{ */
    668671/** Indicates that there is a filename.
    669672 * If not set, a directory was specified using a trailing slash or a volume
    670673 * was specified without any file/dir name following it. */
    671 #define RTPATHSPLIT_PROP_FILENAME       UINT16_C(0x0001)
     674#define RTPATH_PROP_FILENAME        UINT16_C(0x0001)
     675/** The filename has a suffix (extension). */
     676#define RTPATH_PROP_SUFFIX          UINT16_C(0x0002)
    672677/** Indicates that this is an UNC path (Windows and OS/2 only). */
    673 #define RTPATHSPLIT_PROP_UNC            UINT16_C(0x0002)
    674 /** A root is specified. */
    675 #define RTPATHSPLIT_PROP_ROOT           UINT16_C(0x0004)
     678#define RTPATH_PROP_UNC             UINT16_C(0x0010)
     679/** A root is specified. The path is relative if not set. */
     680#define RTPATH_PROP_ROOT            UINT16_C(0x0020)
    676681/** A volume (drive) is specified. */
    677 #define RTPATHSPLIT_PROP_VOLSPEC        UINT16_C(0x0008)
     682#define RTPATH_PROP_VOLSPEC         UINT16_C(0x0040)
     683/** The path is absolute. */
     684#define RTPATH_PROP_ABSOLUTE        UINT16_C(0x0100)
     685/** @} */
     686
     687
     688/**
     689 * Parsed path.
     690 *
     691 * The first component is the root and volume specifier. If UNC, the first
     692 * component does not include the share/service name, that is found as the
     693 * second component if present.
     694 */
     695typedef struct RTPATHPARSED
     696{
     697    /** Number of path components. */
     698    uint16_t    cComponents;
     699    /** The offset of the filename suffix, offset of the NUL char if none. */
     700    uint16_t    offSuffix;
     701    /** Path property flags, RTPATH_PROP_XXX */
     702    uint16_t    fProps;
     703    /** The number of bytes used (on success) or needed (on buffer overflow). */
     704    uint16_t    cbUsed;
     705    /** Array of component descriptors (variable size). */
     706    struct
     707    {
     708        /** The offset of the component. */
     709        uint16_t    off;
     710        /** The  */
     711        uint16_t    cch;
     712    } aComponents[1];
     713} RTPATHPARSED;
     714/** Pointer to to a parsed path result. */
     715typedef RTPATHPARSED *PRTPATHPARSED;
     716/** Pointer to to a const parsed path result. */
     717typedef RTPATHPARSED *PCRTPATHPARSED;
     718
     719
     720int RTPathParse(const char *pszPath, PRTPATHPARSED pOutput, size_t cbOutput)
     721{
     722    AssertReturn(cbOutput >= sizeof(*pOutput), VERR_INVALID_PARAMETER);
     723    AssertPtrReturn(pszPath, VERR_INVALID_POINTER);
     724    AssertPtrReturn(pOutput, VERR_INVALID_POINTER);
     725
     726}
     727
     728
     729
    678730
    679731typedef struct RTPATHSPLIT
     
    772824
    773825}
     826
    774827#endif
    775828
Note: See TracChangeset for help on using the changeset viewer.

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