VirtualBox

Changeset 38581 in vbox for trunk/include


Ignore:
Timestamp:
Aug 31, 2011 12:43:26 PM (13 years ago)
Author:
vboxsync
Message:

IPRT: More debug info & ldr stuff.

Location:
trunk/include/iprt
Files:
3 edited

Legend:

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

    r38573 r38581  
    13721372/** The ELF loader didn't find the symbol/string table for the image. */
    13731373#define VERR_LDRELF_NO_SYMBOL_OR_NO_STRING_TABS (-640)
     1374/** Invalid link address. */
     1375#define VERR_LDR_INVALID_LINK_ADDRESS           (-647)
     1376/** Invalid image relative virtual address. */
     1377#define VERR_LDR_INVALID_RVA                    (-648)
     1378/** Invalid segment:offset address. */
     1379#define VERR_LDR_INVALID_SEG_OFFSET             (-649)
    13741380/** @}*/
    13751381
  • trunk/include/iprt/ldr.h

    r38547 r38581  
    505505RTDECL(int) RTLdrEnumSegments(RTLDRMOD hLdrMod, PFNRTLDRENUMSEGS pfnCallback, void *pvUser);
    506506
     507/**
     508 * Converts a link address to a segment:offset address.
     509 *
     510 * @returns IPRT status code.
     511 *
     512 * @param   hLdrMod         The module handle.
     513 * @param   LinkAddress     The link address to convert.
     514 * @param   piSeg           Where to return the segment index.
     515 * @param   poffSeg         Where to return the segment offset.
     516 */
     517RTDECL(int) RTLdrLinkAddressToSegOffset(RTLDRMOD hLdrMod, RTLDRADDR LinkAddress, uint32_t *piSeg, PRTLDRADDR poffSeg);
     518
     519/**
     520 * Converts a link address to an image relative virtual address (RVA).
     521 *
     522 * @returns IPRT status code.
     523 *
     524 * @param   hLdrMod         The module handle.
     525 * @param   LinkAddress     The link address to convert.
     526 * @param   pRva            Where to return the RVA.
     527 */
     528RTDECL(int) RTLdrLinkAddressToRva(RTLDRMOD hLdrMod, RTLDRADDR LinkAddress, PRTLDRADDR pRva);
     529
     530/**
     531 * Converts an image relative virtual address (RVA) to a segment:offset.
     532 *
     533 * @returns IPRT status code.
     534 *
     535 * @param   hLdrMod         The module handle.
     536 * @param   Rva             The link address to convert.
     537 * @param   piSeg           Where to return the segment index.
     538 * @param   poffSeg         Where to return the segment offset.
     539 */
     540RTDECL(int) RTLdrSegOffsetToRva(RTLDRMOD hLdrMod, uint32_t iSeg, RTLDRADDR offSeg, PRTLDRADDR pRva);
     541
     542/**
     543 * Converts a segment:offset into an image relative virtual address (RVA).
     544 *
     545 * @returns IPRT status code.
     546 *
     547 * @param   hLdrMod         The module handle.
     548 * @param   iSeg            The segment index.
     549 * @param   offSeg          The segment offset.
     550 * @param   pRva            Where to return the RVA.
     551 */
     552RTDECL(int) RTLdrRvaToSegOffset(RTLDRMOD hLdrMod, RTLDRADDR Rva, uint32_t *piSeg, PRTLDRADDR poffSeg);
    507553
    508554RT_C_DECLS_END
  • trunk/include/iprt/mangling.h

    r38547 r38581  
    559559# define RTLdrGetSymbolEx                               RT_MANGLER(RTLdrGetSymbolEx)
    560560# define RTLdrIsLoadable                                RT_MANGLER(RTLdrIsLoadable)
     561# define RTLdrLinkAddressToRva                          RT_MANGLER(RTLdrLinkAddressToRva)
     562# define RTLdrLinkAddressToSegOffset                    RT_MANGLER(RTLdrLinkAddressToSegOffset)
    561563# define RTLdrLoad                                      RT_MANGLER(RTLdrLoad)
    562564# define RTLdrLoadAppPriv                               RT_MANGLER(RTLdrLoadAppPriv)
     
    565567# define RTLdrOpenkLdr                                  RT_MANGLER(RTLdrOpenkLdr)
    566568# define RTLdrRelocate                                  RT_MANGLER(RTLdrRelocate)
     569# define RTLdrRvaToSegOffset                            RT_MANGLER(RTLdrRvaToSegOffset)
     570# define RTLdrSegOffsetToRva                            RT_MANGLER(RTLdrSegOffsetToRva)
    567571# define RTLdrSize                                      RT_MANGLER(RTLdrSize)
    568572# define RTLinuxFindDevicePath                          RT_MANGLER(RTLinuxFindDevicePath)
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