VirtualBox

Changeset 46149 in vbox for trunk/src/VBox/Runtime/include


Ignore:
Timestamp:
May 17, 2013 5:21:23 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
85849
Message:

IPRT: Dwarf and ELF fixes.

Location:
trunk/src/VBox/Runtime/include/internal
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/include/internal/dbgmod.h

    r46134 r46149  
    156156
    157157    /**
     158     * Converts an image relative virtual address to a segment:offset.
     159     *
     160     * @returns IPRT status code.
     161     *
     162     * @param   pMod            Pointer to the loader module structure.
     163     * @param   Rva             The RVA to convert.
     164     * @param   piSeg           The segment index.
     165     * @param   poffSeg         Where to return the segment offset.
     166     */
     167    DECLCALLBACKMEMBER(int, pfnRvaToSegOffset)(PRTDBGMODINT pMod, RTLDRADDR Rva, uint32_t *piSeg, PRTLDRADDR poffSeg);
     168
     169    /**
    158170     * Creates a read-only mapping of a part of the image file.
    159171     *
     
    161173     *
    162174     * @param   pMod            Pointer to the module structure.
     175     * @param   iDbgInfo        The debug info ordinal number if the request
     176     *                          corresponds exactly to a debug info part from
     177     *                          pfnEnumDbgInfo.  Otherwise, pass UINT32_MAX.
    163178     * @param   off             The offset into the image file.
    164179     * @param   cb              The number of bytes to map.
    165180     * @param   ppvMap          Where to return the mapping address on success.
    166      */
    167     DECLCALLBACKMEMBER(int, pfnMapPart)(PRTDBGMODINT pMod, RTFOFF off, size_t cb, void const **ppvMap);
     181     *
     182     * @remarks Fixups will only be applied if @a iDbgInfo is specified.
     183     */
     184    DECLCALLBACKMEMBER(int, pfnMapPart)(PRTDBGMODINT pMod, uint32_t iDbgInfo, RTFOFF off, size_t cb, void const **ppvMap);
    168185
    169186    /**
  • trunk/src/VBox/Runtime/include/internal/ldr.h

    r46083 r46149  
    297297     *
    298298     * @param   pMod            Pointer to the loader module structure.
    299      * @param   iSeg            The segment index.
    300      * @param   offSeg          The segment offset.
    301      * @param   pRva            Where to return the RVA.
     299     * @param   Rva             The RVA to convert.
     300     * @param   piSeg           Where to return the segment index.
     301     * @param   poffSeg         Where to return the segment offset.
    302302     * @remark  This is an optional entry point that can be NULL.
    303303     */
    304304    DECLCALLBACKMEMBER(int, pfnRvaToSegOffset)(PRTLDRMODINTERNAL pMod, RTLDRADDR Rva, uint32_t *piSeg, PRTLDRADDR poffSeg);
     305
     306    /**
     307     * Reads a debug info part (section) from the image.
     308     *
     309     * This is primarily needed for getting DWARF sections in ELF image with fixups
     310     * applied and won't be required by most other loader backends.
     311     *
     312     * @returns IPRT status code.
     313     *
     314     * @param   pvBuf           The buffer to read into.
     315     * @param   iDbgInfo        The debug info ordinal number if the request
     316     *                          corresponds exactly to a debug info part from
     317     *                          pfnEnumDbgInfo.  Otherwise, pass UINT32_MAX.
     318     * @param   off             The offset into the image file.
     319     * @param   cb              The number of bytes to read.
     320     * @param   pMod            Pointer to the loader module structure.
     321     */
     322    DECLCALLBACKMEMBER(int, pfnReadDbgInfo)(PRTLDRMODINTERNAL pMod, uint32_t iDbgInfo, RTFOFF off, size_t cb, void *pvBuf);
    305323
    306324    /** Dummy entry to make sure we've initialized it all. */
     
    458476
    459477
    460 DECLHIDDEN(int) rtLdrReadAt(RTLDRMOD hLdrMod, void *pvBuf, RTFOFF off, size_t cb);
     478DECLHIDDEN(int) rtLdrReadAt(RTLDRMOD hLdrMod, void *pvBuf, uint32_t iDbgInfo, RTFOFF off, size_t cb);
    461479
    462480RT_C_DECLS_END
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