VirtualBox

Changeset 70309 in vbox for trunk/include


Ignore:
Timestamp:
Dec 22, 2017 11:46:23 AM (7 years ago)
Author:
vboxsync
Message:

IPRT/ldr: Added VFS chain based loader open APIs.

Location:
trunk/include/iprt
Files:
2 edited

Legend:

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

    r69105 r70309  
    409409 */
    410410RTDECL(int) RTLdrOpenkLdr(const char *pszFilename, uint32_t fFlags, RTLDRARCH enmArch, PRTLDRMOD phLdrMod);
     411
     412/**
     413 * Open a binary image file allowing VFS chains in the filename.
     414 *
     415 * @returns iprt status code.
     416 * @param   pszFilename Image filename, VFS chain specifiers allowed.
     417 * @param   fFlags      Valid RTLDR_O_XXX combination.
     418 * @param   enmArch     CPU architecture specifier for the image to be loaded.
     419 * @param   phLdrMod    Where to store the handle to the loader module.
     420 * @param   poffError   Where to return the offset into @a pszFilename of an VFS
     421 *                      chain element causing trouble.  Optional.
     422 * @param   pErrInfo    Where to return extended error information.  Optional.
     423 */
     424RTDECL(int) RTLdrOpenVfsChain(const char *pszFilename, uint32_t fFlags, RTLDRARCH enmArch,
     425                              PRTLDRMOD phLdrMod, uint32_t *poffError, PRTERRINFO pErrInfo);
     426
     427/**
     428 * Open a binary image file using kLdr allowing VFS chains in the filename.
     429 *
     430 * @returns iprt status code.
     431 * @param   pszFilename Image filename.
     432 * @param   fFlags      Reserved, MBZ.
     433 * @param   enmArch     CPU architecture specifier for the image to be loaded.
     434 * @param   phLdrMod    Where to store the handle to the loaded module.
     435 * @param   poffError   Where to return the offset into @a pszFilename of an VFS
     436 *                      chain element causing trouble.  Optional.
     437 * @param   pErrInfo    Where to return extended error information.  Optional.
     438 * @remark  Primarily for testing the loader.
     439 */
     440RTDECL(int) RTLdrOpenVfsChainkLdr(const char *pszFilename, uint32_t fFlags, RTLDRARCH enmArch,
     441                                  PRTLDRMOD phLdrMod, uint32_t *poffError, PRTERRINFO pErrInfo);
    411442
    412443/**
  • trunk/include/iprt/mangling.h

    r70148 r70309  
    11231123# define RTLdrOpenInMemory                              RT_MANGLER(RTLdrOpenInMemory)
    11241124# define RTLdrOpenkLdr                                  RT_MANGLER(RTLdrOpenkLdr)
     1125# define RTLdrOpenVfsChain                              RT_MANGLER(RTLdrOpenVfsChain)
     1126# define RTLdrOpenVfsChainkLdr                          RT_MANGLER(RTLdrOpenVfsChainkLdr)
    11251127# define RTLdrRelocate                                  RT_MANGLER(RTLdrRelocate)
    11261128# define RTLdrRvaToSegOffset                            RT_MANGLER(RTLdrRvaToSegOffset)
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