Changeset 35191 in vbox
- Timestamp:
- Dec 16, 2010 3:25:20 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 12 edited
-
include/VBox/sup.h (modified) (2 diffs)
-
include/iprt/ldr.h (modified) (2 diffs)
-
src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp (modified) (1 diff)
-
src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp (modified) (1 diff)
-
src/VBox/HostDrivers/Support/SUPLib.cpp (modified) (1 diff)
-
src/VBox/Main/ConsoleVRDPServer.cpp (modified) (1 diff)
-
src/VBox/Main/ExtPackManagerImpl.cpp (modified) (2 diffs)
-
src/VBox/Main/VRDEServerImpl.cpp (modified) (1 diff)
-
src/VBox/Main/hgcm/HGCM.cpp (modified) (1 diff)
-
src/VBox/Runtime/common/ldr/ldrNative.cpp (modified) (2 diffs)
-
src/VBox/Runtime/r3/posix/ldrNative-posix.cpp (modified) (1 diff)
-
src/recompiler/VBoxREMWrapper.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/sup.h
r35188 r35191 1036 1036 * @param pszFilename Image filename. This must have a path. 1037 1037 * @param phLdrMod Where to store the handle to the loaded module. 1038 * @param fFlags See RTLDR FLAGS_.1038 * @param fFlags See RTLDRLOAD_FLAGS_XXX. 1039 1039 * @param pErrInfo Where to return extended error information. 1040 1040 * Optional. … … 1052 1052 * @param pszFilename Image filename. 1053 1053 * @param phLdrMod Where to store the handle to the loaded module. 1054 * @param fFlags See RTLDR FLAGS_*.1054 * @param fFlags See RTLDRLOAD_FLAGS_XXX. 1055 1055 * @param pErrInfo Where to return extended error information. 1056 1056 * Optional. -
trunk/include/iprt/ldr.h
r35183 r35191 36 36 */ 37 37 38 /** Symbols defined in this library are not made available to resolve39 * references in subsequently loaded libraries (default). */40 #define RTLDRFLAGS_LOCAL 041 /** Symbols defined in this library will be made available for symbol42 * resolution of subsequently loaded libraries. */43 #define RTLDRFLAGS_GLOBAL RT_BIT(0)44 45 38 46 39 RT_C_DECLS_BEGIN … … 97 90 * @param pszFilename Image filename. 98 91 * @param phLdrMod Where to store the handle to the loader module. 99 * @param fFlags See RTLD FLAGS_.92 * @param fFlags See RTLDRLOAD_FLAGS_XXX. 100 93 * @param pErrInfo Where to return extended error information. Optional. 101 94 */ 102 95 RTDECL(int) RTLdrLoadEx(const char *pszFilename, PRTLDRMOD phLdrMod, uint32_t fFlags, PRTERRINFO pErrInfo); 96 97 /** @defgroup RTLDRLOAD_FLAGS_XXX RTLdrLoadEx flags. 98 * @{ */ 99 /** Symbols defined in this library are not made available to resolve 100 * references in subsequently loaded libraries (default). */ 101 #define RTLDRLOAD_FLAGS_LOCAL UINT32_C(0) 102 /** Symbols defined in this library will be made available for symbol 103 * resolution of subsequently loaded libraries. */ 104 #define RTLDRLOAD_FLAGS_GLOBAL RT_BIT_32(0) 105 /** The mask of valid flag bits. */ 106 #define RTLDRLOAD_FLAGS_VALID_MASK UINT32_C(0x00000001) 107 /** @} */ 103 108 104 109 /** -
trunk/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp
r35188 r35191 841 841 Log2(("VBoxHeadless: loading VBoxFFmpegFB shared library\n")); 842 842 RTErrInfoInitStatic(&ErrInfo); 843 rrc = SUPR3HardenedLdrLoadAppPriv("VBoxFFmpegFB", &hLdrFFmpegFB, 0 /*fFlags*/, &ErrInfo.Core);843 rrc = SUPR3HardenedLdrLoadAppPriv("VBoxFFmpegFB", &hLdrFFmpegFB, RTLDRLOAD_FLAGS_LOCAL, &ErrInfo.Core); 844 844 845 845 if (RT_SUCCESS(rrc)) -
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
r35188 r35191 5115 5115 RTERRINFOSTATIC ErrInfo; 5116 5116 RTErrInfoInitStatic(&ErrInfo); 5117 int vrc = SUPR3HardenedLdrLoadAppPriv("VBoxDbg", &mhVBoxDbg, 0 /*fFlags*/, &ErrInfo.Core);5117 int vrc = SUPR3HardenedLdrLoadAppPriv("VBoxDbg", &mhVBoxDbg, RTLDRLOAD_FLAGS_LOCAL, &ErrInfo.Core); 5118 5118 if (RT_FAILURE(vrc)) 5119 5119 { -
trunk/src/VBox/HostDrivers/Support/SUPLib.cpp
r35188 r35191 2213 2213 * Try load it. 2214 2214 */ 2215 return RTLdrLoadEx(pszFilename, phLdrMod, 0 /*fFlags*/, pErrInfo);2215 return RTLdrLoadEx(pszFilename, phLdrMod, RTLDRLOAD_FLAGS_LOCAL, pErrInfo); 2216 2216 } 2217 2217 -
trunk/src/VBox/Main/ConsoleVRDPServer.cpp
r35188 r35191 2341 2341 rc = SUPR3HardenedLdrLoadPlugIn(pszLibraryName, &mVRDPLibrary, &ErrInfo.Core); 2342 2342 else 2343 rc = SUPR3HardenedLdrLoadAppPriv(pszLibraryName, &mVRDPLibrary, 0 /*fFlags*/, &ErrInfo.Core);2343 rc = SUPR3HardenedLdrLoadAppPriv(pszLibraryName, &mVRDPLibrary, RTLDRLOAD_FLAGS_LOCAL, &ErrInfo.Core); 2344 2344 if (RT_SUCCESS(rc)) 2345 2345 { -
trunk/src/VBox/Main/ExtPackManagerImpl.cpp
r35188 r35191 1177 1177 if (fIsNative) 1178 1178 { 1179 vrc = RTLdrLoadEx(m->strMainModPath.c_str(), &m->hMainMod, 0 /*fFlags*/, &ErrInfo.Core);1179 vrc = SUPR3HardenedLdrLoadPlugIn(m->strMainModPath.c_str(), &m->hMainMod, &ErrInfo.Core); 1180 1180 if (RT_FAILURE(vrc)) 1181 1181 { … … 1771 1771 if (a_enmContext == VBOXEXTPACKCTX_PER_USER_DAEMON) 1772 1772 { 1773 int vrc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &m->hVBoxVMM, RTLDR FLAGS_GLOBAL, NULL);1773 int vrc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &m->hVBoxVMM, RTLDRLOAD_FLAGS_GLOBAL, NULL); 1774 1774 if (RT_FAILURE(vrc)) 1775 1775 m->hVBoxVMM = NIL_RTLDRMOD; -
trunk/src/VBox/Main/VRDEServerImpl.cpp
r35188 r35191 494 494 rc = SUPR3HardenedLdrLoadPlugIn(pszLibraryName, &hmod, &ErrInfo.Core); 495 495 else 496 rc = SUPR3HardenedLdrLoadAppPriv(pszLibraryName, &hmod, 0 /*fFlags*/, &ErrInfo.Core);496 rc = SUPR3HardenedLdrLoadAppPriv(pszLibraryName, &hmod, RTLDRLOAD_FLAGS_LOCAL, &ErrInfo.Core); 497 497 if (RT_SUCCESS(rc)) 498 498 { -
trunk/src/VBox/Main/hgcm/HGCM.cpp
r35188 r35191 265 265 RTErrInfoInitStatic (&ErrInfo); 266 266 267 int rc = SUPR3HardenedLdrLoadAppPriv (m_pszSvcLibrary, &m_hLdrMod, 0 /*fFlags*/, &ErrInfo.Core);267 int rc = SUPR3HardenedLdrLoadAppPriv (m_pszSvcLibrary, &m_hLdrMod, RTLDRLOAD_FLAGS_LOCAL, &ErrInfo.Core); 268 268 269 269 if (RT_SUCCESS(rc)) -
trunk/src/VBox/Runtime/common/ldr/ldrNative.cpp
r35183 r35191 96 96 RTDECL(int) RTLdrLoad(const char *pszFilename, PRTLDRMOD phLdrMod) 97 97 { 98 return RTLdrLoadEx(pszFilename, phLdrMod, 0 /*fFlags*/, NULL);98 return RTLdrLoadEx(pszFilename, phLdrMod, RTLDRLOAD_FLAGS_LOCAL, NULL); 99 99 } 100 100 RT_EXPORT_SYMBOL(RTLdrLoad); … … 111 111 AssertPtrReturn(pszFilename, VERR_INVALID_POINTER); 112 112 AssertPtrReturn(phLdrMod, VERR_INVALID_POINTER); 113 AssertReturn(!(fFlags & ~RTLDRLOAD_FLAGS_VALID_MASK), VERR_INVALID_PARAMETER); 113 114 114 115 /* -
trunk/src/VBox/Runtime/r3/posix/ldrNative-posix.cpp
r35183 r35191 70 70 */ 71 71 int fFlagsNative = RTLD_NOW; 72 if (fFlags & RTLDR FLAGS_GLOBAL)72 if (fFlags & RTLDRLOAD_FLAGS_GLOBAL) 73 73 fFlagsNative |= RTLD_GLOBAL; 74 74 else -
trunk/src/recompiler/VBoxREMWrapper.cpp
r35188 r35191 1983 1983 if (g_ModVMM != NIL_RTLDRMOD) 1984 1984 { 1985 rc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &g_ModVMM, 0 /*fFlags*/, NULL);1985 rc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &g_ModVMM, RTLDRLOAD_FLAGS_LOCAL, NULL); 1986 1986 AssertRCReturn(rc, rc); 1987 1987 for (size_t i = 0; i < RT_ELEMENTS(g_aVMMImports); i++) … … 2097 2097 if (g_ModVMM == NIL_RTLDRMOD) 2098 2098 { 2099 rc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &g_ModVMM, 0 /*fFlags*/, NULL);2099 rc = SUPR3HardenedLdrLoadAppPriv("VBoxVMM", &g_ModVMM, RTLDRLOAD_FLAGS_LOCAL, NULL); 2100 2100 AssertRCReturn(rc, false); 2101 2101 } … … 2133 2133 */ 2134 2134 const char *pszModule = remIs64bitEnabled(pVM) ? "VBoxREM64" : "VBoxREM32"; 2135 int rc = SUPR3HardenedLdrLoadAppPriv(pszModule, &g_ModREM2, 0 /*fFlags*/, NULL);2135 int rc = SUPR3HardenedLdrLoadAppPriv(pszModule, &g_ModREM2, RTLDRLOAD_FLAGS_LOCAL, NULL); 2136 2136 if (RT_SUCCESS(rc)) 2137 2137 {
Note:
See TracChangeset
for help on using the changeset viewer.

