VirtualBox

Ignore:
Timestamp:
Aug 24, 2011 2:33:32 PM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
73640
Message:

IPRT: Working on debug info again.

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

Legend:

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

    r33540 r38515  
    55
    66/*
    7  * Copyright (C) 2008-2009 Oracle Corporation
     7 * Copyright (C) 2008-2011 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    3030#include <iprt/types.h>
    3131#include <iprt/critsect.h>
     32#include <iprt/ldr.h> /* for PFNRTLDRENUMDBG */
    3233#include "internal/magics.h"
    3334
     
    5051    /** Magic number (RTDBGMODVTIMG_MAGIC). */
    5152    uint32_t    u32Magic;
    52     /** Mask of supported executable image types, see grp_rt_exe_img_type.
    53      * Used to speed up the search for a suitable interpreter. */
    54     uint32_t    fSupports;
     53    /** Reserved. */
     54    uint32_t    fReserved;
    5555    /** The name of the interpreter. */
    5656    const char *pszName;
     
    7474     *
    7575     *                      Upon successful return the method is expected to
    76      *                      initialize pDbgOps and pvDbgPriv.
     76     *                      initialize pImgOps and pvImgPriv.
    7777     */
    7878    DECLCALLBACKMEMBER(int, pfnTryOpen)(PRTDBGMODINT pMod);
     
    8888    DECLCALLBACKMEMBER(int, pfnClose)(PRTDBGMODINT pMod);
    8989
     90    /**
     91     * Enumerate the debug info contained in the executable image.
     92     *
     93     * Identical to RTLdrEnumDbgInfo.
     94     *
     95     * @returns IPRT status code or whatever pfnCallback returns.
     96     *
     97     * @param   hLdrMod         The module handle.
     98     * @param   pvBits          Optional pointer to bits returned by
     99     *                          RTLdrGetBits().  This can be used by some module
     100     *                          interpreters to reduce memory consumption.
     101     * @param   pfnCallback     The callback function.  Ignore the module
     102     *                          handle argument!
     103     * @param   pvUser          The user argument.
     104     */
     105    DECLCALLBACKMEMBER(int, pfnEnumDbgInfo)(PRTDBGMODINT pMod, PFNRTLDRENUMDBG pfnCallback, void *pvUser);
     106
     107    /** For catching initialization errors (RTDBGMODVTIMG_MAGIC). */
     108    uint32_t    u32EndMagic;
    90109} RTDBGMODVTIMG;
    91110/** Pointer to a const RTDBGMODVTIMG. */
     
    400419
    401420extern DECLHIDDEN(RTSTRCACHE)           g_hDbgModStrCache;
     421extern DECLHIDDEN(RTDBGMODVTDBG const)  g_rtDbgModVtDbgDwarf;
    402422extern DECLHIDDEN(RTDBGMODVTDBG const)  g_rtDbgModVtDbgNm;
     423extern DECLHIDDEN(RTDBGMODVTIMG const)  g_rtDbgModVtImgLdr;
    403424
    404425int rtDbgModContainerCreate(PRTDBGMODINT pMod, RTUINTPTR cbSeg);
  • trunk/src/VBox/Runtime/include/internal/ldr.h

    r35183 r38515  
    162162     * @param   pvBits      Pointer to the bits returned by RTLDROPS::pfnGetBits(), optional.
    163163     * @param   BaseAddress The image base addressto use when calculating the symbol values.
    164      * @param   pfnCallback The callback function which each symbol is to be feeded to.
     164     * @param   pfnCallback The callback function which each symbol is to be
     165     *                      fed to.
    165166     * @param   pvUser      User argument to pass to the enumerator.
    166167     * @remark  This is an optional entry point.
     
    225226    DECLCALLBACKMEMBER(int, pfnGetSymbolEx)(PRTLDRMODINTERNAL pMod, const void *pvBits, RTUINTPTR BaseAddress, const char *pszSymbol, RTUINTPTR *pValue);
    226227
     228    /**
     229     * Enumerates the debug info contained in the module.
     230     *
     231     * @returns iprt status code, which might have been returned by pfnCallback.
     232     * @param   pMod        Pointer to the loader module structure.
     233     * @param   pvBits      Pointer to the bits returned by RTLDROPS::pfnGetBits(), optional.
     234     * @param   pfnCallback The callback function which each debug info part is
     235     *                      to be fed to.
     236     * @param   pvUser      User argument to pass to the enumerator.
     237     * @remark  This is an optional entry point that can be NULL.
     238     */
     239    DECLCALLBACKMEMBER(int, pfnEnumDbgInfo)(PRTLDRMODINTERNAL pMod, const void *pvBits,
     240                                            PFNRTLDRENUMDBG pfnCallback, void *pvUser);
     241
     242
    227243    /** Dummy entry to make sure we've initialized it all. */
    228244    RTUINT uDummy;
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