Changeset 52213 in vbox for trunk/include/iprt
- Timestamp:
- Jul 28, 2014 5:52:58 PM (11 years ago)
- svn:sync-xref-src-repo-rev:
- 95276
- Location:
- trunk/include/iprt
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/err.h
r52108 r52213 2162 2162 /** Image hash mismatch. */ 2163 2163 #define VERR_LDRVI_IMAGE_HASH_MISMATCH (-22929) 2164 2165 /** Cannot resolve symbol because it's a forwarder. */ 2166 #define VERR_LDR_FORWARDER (-22950) 2167 /** The symbol is not a forwarder. */ 2168 #define VERR_LDR_NOT_FORWARDER (-22951) 2169 /** Malformed forwarder entry. */ 2170 #define VERR_LDR_BAD_FORWARDER (-22952) 2171 /** Too long forwarder chain or there is a loop. */ 2172 #define VERR_LDR_FORWARDER_CHAIN_TOO_LONG (-22953) 2173 /** Support for forwarders has not been implemented. */ 2174 #define VERR_LDR_FORWARDERS_NOT_SUPPORTED (-22954) 2164 2175 /** @} */ 2165 2176 -
trunk/include/iprt/ldr.h
r51770 r52213 472 472 * 473 473 * @returns iprt status code. 474 * @retval VERR_LDR_FORWARDER forwarder, use pfnQueryForwarderInfo. Buffer size 475 * hint in @a ppvValue. 474 476 * @param hLdrMod The loader module handle. 475 477 * @param pszSymbol Symbol name. … … 487 489 * 488 490 * @returns iprt status code. 491 * @retval VERR_LDR_FORWARDER forwarder, use pfnQueryForwarderInfo. Buffer size 492 * hint in @a pValue. 489 493 * @param hLdrMod The loader module handle. 490 494 * @param pvBits Optional pointer to the loaded image. … … 493 497 * @param BaseAddress Image load address. 494 498 * Not supported for RTLdrLoad() images. 499 * @param iOrdinal Symbol ordinal number, pass UINT32_MAX if pszSymbol 500 * should be used instead. 495 501 * @param pszSymbol Symbol name. 496 502 * @param pValue Where to store the symbol value. 497 503 */ 498 RTDECL(int) RTLdrGetSymbolEx(RTLDRMOD hLdrMod, const void *pvBits, RTLDRADDR BaseAddress, const char *pszSymbol, 499 PRTLDRADDR pValue); 500 504 RTDECL(int) RTLdrGetSymbolEx(RTLDRMOD hLdrMod, const void *pvBits, RTLDRADDR BaseAddress, 505 uint32_t iOrdinal, const char *pszSymbol, PRTLDRADDR pValue); 501 506 502 507 /** … … 511 516 */ 512 517 RTDECL(PFNRT) RTLdrGetFunction(RTLDRMOD hLdrMod, const char *pszSymbol); 518 519 /** 520 * Information about an imported symbol. 521 */ 522 typedef struct RTLDRIMPORTINFO 523 { 524 /** Symbol table entry number, UINT32_MAX if not available. */ 525 uint32_t iSelfOrdinal; 526 /** The ordinal of the imported symbol in szModule, UINT32_MAX if not used. */ 527 uint32_t iOrdinal; 528 /** The symbol name, NULL if not used. This points to the char immediately 529 * following szModule when returned by RTLdrQueryForwarderInfo. */ 530 const char *pszSymbol; 531 /** The name of the module being imported from. */ 532 char szModule[1]; 533 } RTLDRIMPORTINFO; 534 /** Pointer to information about an imported symbol. */ 535 typedef RTLDRIMPORTINFO *PRTLDRIMPORTINFO; 536 /** Pointer to const information about an imported symbol. */ 537 typedef RTLDRIMPORTINFO const *PCRTLDRIMPORTINFO; 538 539 /** 540 * Query information about a forwarded symbol. 541 * 542 * @returns IPRT status code. 543 * @param hLdrMod The loader module handle. 544 * @param pvBits Optional pointer to the loaded image. 545 * Set this to NULL if no RTLdrGetBits() processed image bits are available. 546 * Not supported for RTLdrLoad() images. 547 * @param iOrdinal Symbol ordinal number, pass UINT32_MAX if pszSymbol 548 * should be used instead. 549 * @param pszSymbol Symbol name. 550 * @param pInfo Where to return the forwarder info. 551 * @param cbInfo Size of the buffer @a pInfo points to. For a size 552 * hint, see @a pValue when RTLdrGetSymbolEx returns 553 * VERR_LDR_FORWARDER. 554 */ 555 RTDECL(int) RTLdrQueryForwarderInfo(RTLDRMOD hLdrMod, const void *pvBits, uint32_t iOrdinal, const char *pszSymbol, 556 PRTLDRIMPORTINFO pInfo, size_t cbInfo); 557 513 558 514 559 /** -
trunk/include/iprt/mangling.h
r51869 r52213 691 691 # define RTLdrRelocate RT_MANGLER(RTLdrRelocate) 692 692 # define RTLdrRvaToSegOffset RT_MANGLER(RTLdrRvaToSegOffset) 693 # define RTLdrQueryForwarderInfo RT_MANGLER(RTLdrQueryForwarderInfo) 693 694 # define RTLdrQueryProp RT_MANGLER(RTLdrQueryProp) 694 695 # define RTLdrSegOffsetToRva RT_MANGLER(RTLdrSegOffsetToRva)
Note:
See TracChangeset
for help on using the changeset viewer.