VirtualBox

Ignore:
Timestamp:
Jul 7, 2020 6:23:08 PM (4 years ago)
Author:
vboxsync
Message:

SUPLib: Adjustments to avoid CxxFrameHandler4. bugref:9794

Location:
trunk/src/VBox/HostDrivers/Support
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/Support/SUPLibInternal.h

    r83033 r85093  
    112112#if defined(IN_SUP_HARDENED_R3) && defined(RT_OS_WINDOWS)
    113113# define SUP_HARDENED_NEED_CRT_FUNCTIONS
    114 DECLHIDDEN(int)    suplibHardenedMemComp(void const *pvDst, const void *pvSrc, size_t cbToComp);
    115 DECLHIDDEN(void *) suplibHardenedMemCopy(void *pvDst, const void *pvSrc, size_t cbToCopy);
    116 DECLHIDDEN(void *) suplibHardenedMemSet(void *pvDst, int ch, size_t cbToSet);
    117 DECLHIDDEN(char *) suplibHardenedStrCopy(char *pszDst, const char *pszSrc);
    118 DECLHIDDEN(size_t) suplibHardenedStrLen(const char *psz);
    119 DECLHIDDEN(char *) suplibHardenedStrCat(char *pszDst, const char *pszSrc);
    120 DECLHIDDEN(int)    suplibHardenedStrCmp(const char *psz1, const char *psz2);
    121 DECLHIDDEN(int)    suplibHardenedStrNCmp(const char *psz1, const char *psz2, size_t cchMax);
     114DECL_HIDDEN_NOTHROW(int)    suplibHardenedMemComp(void const *pvDst, const void *pvSrc, size_t cbToComp);
     115DECL_HIDDEN_NOTHROW(void *) suplibHardenedMemCopy(void *pvDst, const void *pvSrc, size_t cbToCopy);
     116DECL_HIDDEN_NOTHROW(void *) suplibHardenedMemSet(void *pvDst, int ch, size_t cbToSet);
     117DECL_HIDDEN_NOTHROW(char *) suplibHardenedStrCopy(char *pszDst, const char *pszSrc);
     118DECL_HIDDEN_NOTHROW(size_t) suplibHardenedStrLen(const char *psz);
     119DECL_HIDDEN_NOTHROW(char *) suplibHardenedStrCat(char *pszDst, const char *pszSrc);
     120DECL_HIDDEN_NOTHROW(int)    suplibHardenedStrCmp(const char *psz1, const char *psz2);
     121DECL_HIDDEN_NOTHROW(int)    suplibHardenedStrNCmp(const char *psz1, const char *psz2, size_t cchMax);
    122122#else
    123123# undef SUP_HARDENED_NEED_CRT_FUNCTIONS
     
    131131# define suplibHardenedStrNCmp strncmp
    132132#endif
    133 DECLNORETURN(void)  suplibHardenedExit(RTEXITCODE rcExit);
    134 DECLHIDDEN(void)    suplibHardenedPrintF(const char *pszFormat, ...);
    135 DECLHIDDEN(void)    suplibHardenedPrintFV(const char *pszFormat, va_list va);
     133DECLNORETURN(void)  suplibHardenedExit(RTEXITCODE rcExit) RT_NO_THROW_PROTO;
     134DECL_HIDDEN_NOTHROW(void)   suplibHardenedPrintF(const char *pszFormat, ...) RT_NO_THROW_PROTO;
     135DECL_HIDDEN_NOTHROW(void)   suplibHardenedPrintFV(const char *pszFormat, va_list va) RT_NO_THROW_PROTO;
    136136
    137137/** @} */
     
    381381 * @param   fFlags          The SUPR3HardenedMain flags.
    382382 */
    383 DECLEXPORT(int) supR3PreInit(PSUPPREINITDATA pPreInitData, uint32_t fFlags);
     383DECL_NOTHROW(DECLEXPORT(int)) supR3PreInit(PSUPPREINITDATA pPreInitData, uint32_t fFlags);
    384384
    385385
    386386/** @copydoc RTPathAppPrivateNoArch */
    387 DECLHIDDEN(int)    supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath);
     387DECL_HIDDEN_NOTHROW(int)    supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath);
    388388/** @copydoc RTPathAppPrivateArch */
    389 DECLHIDDEN(int)    supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath);
     389DECL_HIDDEN_NOTHROW(int)    supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath);
    390390/** @copydoc RTPathSharedLibs */
    391 DECLHIDDEN(int)    supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath);
     391DECL_HIDDEN_NOTHROW(int)    supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath);
    392392/** @copydoc RTPathAppDocs */
    393 DECLHIDDEN(int)    supR3HardenedPathAppDocs(char *pszPath, size_t cchPath);
     393DECL_HIDDEN_NOTHROW(int)    supR3HardenedPathAppDocs(char *pszPath, size_t cchPath);
    394394/** @copydoc RTPathExecDir */
    395 DECLHIDDEN(int)    supR3HardenedPathAppBin(char *pszPath, size_t cchPath);
     395DECL_HIDDEN_NOTHROW(int)    supR3HardenedPathAppBin(char *pszPath, size_t cchPath);
    396396/** @copydoc RTPathFilename */
    397 DECLHIDDEN(char *) supR3HardenedPathFilename(const char *pszPath);
     397DECL_HIDDEN_NOTHROW(char *) supR3HardenedPathFilename(const char *pszPath);
    398398
    399399/**
    400400 * Display a fatal error and try call TrustedError or quit.
    401401 */
    402 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
    403                                                         const char *pszMsgFmt, va_list va);
     402DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
     403                                                                 const char *pszMsgFmt, va_list va) RT_NO_THROW_PROTO;
    404404
    405405/**
    406406 * Display a fatal error and try call TrustedError or quit.
    407407 */
    408 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
    409                                                        const char *pszMsgFmt, ...);
     408DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
     409                                                                const char *pszMsgFmt, ...) RT_NO_THROW_PROTO;
    410410
    411411/**
    412412 * Display a fatal error and quit.
    413413 */
    414 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalV(const char *pszFormat, va_list va);
     414DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalV(const char *pszFormat, va_list va) RT_NO_THROW_PROTO;
    415415
    416416/**
    417417 * Display a fatal error and quit.
    418418 */
    419 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatal(const char *pszFormat, ...);
     419DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatal(const char *pszFormat, ...) RT_NO_THROW_PROTO;
    420420
    421421/**
    422422 * Display an error which may or may not be fatal.
    423423 */
    424 DECLHIDDEN(int)    supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va);
     424DECL_HIDDEN_NOTHROW(int)    supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va) RT_NO_THROW_PROTO;
    425425
    426426/**
    427427 * Display an error which may or may not be fatal.
    428428 */
    429 DECLHIDDEN(int)     supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...);
     429DECL_HIDDEN_NOTHROW(int)    supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...) RT_NO_THROW_PROTO;
    430430
    431431/**
    432432 * Open any startup log file specified in the argument.
    433433 */
    434 DECLHIDDEN(void)    supR3HardenedOpenLog(int *pcArgs, char **papszArgs);
     434DECL_HIDDEN_NOTHROW(void)   supR3HardenedOpenLog(int *pcArgs, char **papszArgs) RT_NO_THROW_PROTO;
    435435
    436436/**
    437437 * Write to the startup log file.
    438438 */
    439 DECLHIDDEN(void)    supR3HardenedLogV(const char *pszFormat, va_list va);
     439DECL_HIDDEN_NOTHROW(void)   supR3HardenedLogV(const char *pszFormat, va_list va) RT_NO_THROW_PROTO;
    440440
    441441/**
    442442 * Write to the startup log file.
    443443 */
    444 DECLHIDDEN(void)    supR3HardenedLog(const char *pszFormat, ...);
     444DECL_HIDDEN_NOTHROW(void)   supR3HardenedLog(const char *pszFormat, ...) RT_NO_THROW_PROTO;
    445445
    446446/**
    447447 * Flushes the log file.
    448448 */
    449 DECLHIDDEN(void)    supR3HardenedLogFlush(void);
    450 
    451 
    452 DECLHIDDEN(int)     supR3HardenedVerifyAll(bool fFatal, const char *pszProgName, const char *pszExePath, uint32_t fMainFlags);
    453 DECLHIDDEN(int)     supR3HardenedVerifyFixedDir(SUPINSTDIR enmDir, bool fFatal, PCSUPINSTFILE pFile);
    454 DECLHIDDEN(int)     supR3HardenedVerifyFixedFile(const char *pszFilename, bool fFatal);
    455 DECLHIDDEN(int)     supR3HardenedVerifyDir(const char *pszDirPath, bool fRecursive, bool fCheckFiles, PRTERRINFO pErrInfo);
    456 DECLHIDDEN(int)     supR3HardenedVerifyFile(const char *pszFilename, RTHCUINTPTR hNativeFile, bool fMaybe3rdParty,
    457                                             PRTERRINFO pErrInfo);
     449DECL_HIDDEN_NOTHROW(void)   supR3HardenedLogFlush(void) RT_NO_THROW_PROTO;
     450
     451
     452DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyAll(bool fFatal, const char *pszProgName, const char *pszExePath, uint32_t fMainFlags);
     453DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyFixedDir(SUPINSTDIR enmDir, bool fFatal, PCSUPINSTFILE pFile);
     454DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyFixedFile(const char *pszFilename, bool fFatal);
     455DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyDir(const char *pszDirPath, bool fRecursive, bool fCheckFiles, PRTERRINFO pErrInfo);
     456DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyFile(const char *pszFilename, RTHCUINTPTR hNativeFile, bool fMaybe3rdParty,
     457                                                    PRTERRINFO pErrInfo);
    458458#if defined(RT_OS_DARWIN) || defined(RT_OS_LINUX)
    459 DECLHIDDEN(int)     supR3HardenedVerifyFileFollowSymlinks(const char *pszFilename, RTHCUINTPTR hNativeFile, bool fMaybe3rdParty,
    460                                                           PRTERRINFO pErrInfo);
    461 #endif
    462 DECLHIDDEN(void)    supR3HardenedGetPreInitData(PSUPPREINITDATA pPreInitData);
    463 DECLHIDDEN(int)     supR3HardenedRecvPreInitData(PCSUPPREINITDATA pPreInitData);
     459DECL_HIDDEN_NOTHROW(int)    supR3HardenedVerifyFileFollowSymlinks(const char *pszFilename, RTHCUINTPTR hNativeFile,
     460                                                                  bool fMaybe3rdParty, PRTERRINFO pErrInfo);
     461#endif
     462DECL_HIDDEN_NOTHROW(void)   supR3HardenedGetPreInitData(PSUPPREINITDATA pPreInitData);
     463DECL_HIDDEN_NOTHROW(int)    supR3HardenedRecvPreInitData(PCSUPPREINITDATA pPreInitData);
    464464
    465465#ifdef RT_OS_WINDOWS
    466 DECLHIDDEN(void)    supR3HardenedWinInit(uint32_t fFlags, bool fAvastKludge);
    467 DECLHIDDEN(void)    supR3HardenedWinInitAppBin(uint32_t fFlags);
    468 DECLHIDDEN(void)    supR3HardenedWinInitVersion(bool fEarlyInit);
    469 DECLHIDDEN(void)    supR3HardenedWinInitImports(void);
    470 DECLHIDDEN(void)    supR3HardenedWinModifyDllSearchPath(uint32_t fFlags, const char *pszAppBinPath);
     466DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInit(uint32_t fFlags, bool fAvastKludge);
     467DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInitAppBin(uint32_t fFlags);
     468DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInitVersion(bool fEarlyInit);
     469DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInitImports(void);
     470DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinModifyDllSearchPath(uint32_t fFlags, const char *pszAppBinPath);
    471471# ifdef IPRT_INCLUDED_nt_nt_h
    472 DECLHIDDEN(void)    supR3HardenedWinGetVeryEarlyImports(uintptr_t uNtDllAddr,
    473                                                         PFNNTWAITFORSINGLEOBJECT *ppfnNtWaitForSingleObject,
    474                                                         PFNNTSETEVENT *ppfnNtSetEvent);
     472DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinGetVeryEarlyImports(uintptr_t uNtDllAddr,
     473                                                                PFNNTWAITFORSINGLEOBJECT *ppfnNtWaitForSingleObject,
     474                                                                PFNNTSETEVENT *ppfnNtSetEvent);
    475475# endif
    476 DECLHIDDEN(void)    supR3HardenedWinInitImportsEarly(uintptr_t uNtDllAddr);
    477 DECLHIDDEN(void)    supR3HardenedWinInitSyscalls(bool fReportErrors, PRTERRINFO pErrInfo);
    478 DECLHIDDEN(PFNRT)   supR3HardenedWinGetRealDllSymbol(const char *pszDll, const char *pszProcedure);
    479 DECLHIDDEN(void)    supR3HardenedWinEnableThreadCreation(void);
    480 DECLHIDDEN(void)    supR3HardenedWinResolveVerifyTrustApiAndHookThreadCreation(const char *pszProgName);
    481 DECLHIDDEN(void)    supR3HardenedWinFlushLoaderCache();
    482 DECLHIDDEN(bool)    supR3HardenedWinIsReSpawnNeeded(int iWhich, int cArgs, char **papszArgs);
    483 DECLHIDDEN(int)     supR3HardenedWinReSpawn(int iWhich);
     476DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInitImportsEarly(uintptr_t uNtDllAddr);
     477DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinInitSyscalls(bool fReportErrors, PRTERRINFO pErrInfo);
     478DECL_HIDDEN_NOTHROW(PFNRT)  supR3HardenedWinGetRealDllSymbol(const char *pszDll, const char *pszProcedure);
     479DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinEnableThreadCreation(void);
     480DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinResolveVerifyTrustApiAndHookThreadCreation(const char *pszProgName);
     481DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinFlushLoaderCache();
     482DECL_HIDDEN_NOTHROW(bool)   supR3HardenedWinIsReSpawnNeeded(int iWhich, int cArgs, char **papszArgs);
     483DECL_HIDDEN_NOTHROW(int)    supR3HardenedWinReSpawn(int iWhich);
    484484# ifdef _WINDEF_
    485 DECLHIDDEN(void)    supR3HardenedWinCreateParentWatcherThread(HMODULE hVBoxRT);
     485DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinCreateParentWatcherThread(HMODULE hVBoxRT);
    486486# endif
    487 DECLHIDDEN(void *) supR3HardenedWinLoadLibrary(const char *pszName, bool fSystem32Only, uint32_t fMainFlags);
     487DECL_HIDDEN_NOTHROW(void *) supR3HardenedWinLoadLibrary(const char *pszName, bool fSystem32Only, uint32_t fMainFlags);
    488488extern RTUTF16      g_wszSupLibHardenedExePath[1024];
    489489# ifdef RTPATH_MAX
    490490extern char         g_szSupLibHardenedExePath[RTPATH_MAX];
    491491# endif
    492 DECLHIDDEN(void)    supR3HardenedWinCompactHeaps(void);
    493 DECLHIDDEN(void)    supR3HardenedMainOpenDevice(void);
    494 DECLHIDDEN(char *) supR3HardenedWinReadErrorInfoDevice(char *pszErrorInfo, size_t cbErrorInfo, const char *pszPrefix);
    495 DECLHIDDEN(void)    supR3HardenedWinReportErrorToParent(const char *pszWhere, SUPINITOP enmWhat, int rc,
     492DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinCompactHeaps(void);
     493DECL_HIDDEN_NOTHROW(void)   supR3HardenedMainOpenDevice(void);
     494DECL_HIDDEN_NOTHROW(char *) supR3HardenedWinReadErrorInfoDevice(char *pszErrorInfo, size_t cbErrorInfo, const char *pszPrefix);
     495DECL_HIDDEN_NOTHROW(void)   supR3HardenedWinReportErrorToParent(const char *pszWhere, SUPINITOP enmWhat, int rc,
    496496                                                        const char *pszFormat, va_list va);
    497497#else   /* !RT_OS_WINDOWS */
    498 DECLHIDDEN(void)    supR3HardenedPosixInit(void);
     498DECL_HIDDEN_NOTHROW(void)   supR3HardenedPosixInit(void);
    499499#endif  /* !RT_OS_WINDOWS */
    500500
    501 SUPR3DECL(int)      supR3PageLock(void *pvStart, size_t cPages, PSUPPAGE paPages);
    502 SUPR3DECL(int)      supR3PageUnlock(void *pvStart);
     501SUPR3DECL(int)              supR3PageLock(void *pvStart, size_t cPages, PSUPPAGE paPages);
     502SUPR3DECL(int)              supR3PageUnlock(void *pvStart);
    503503
    504504RT_C_DECLS_END
  • trunk/src/VBox/HostDrivers/Support/SUPR3HardenedIPRT.cpp

    r82968 r85093  
    4545 * @copydoc RTPathFilename
    4646 */
    47 DECLHIDDEN(char *) supR3HardenedPathFilename(const char *pszPath)
     47DECL_HIDDEN_NOTHROW(char *) supR3HardenedPathFilename(const char *pszPath)
    4848{
    4949    return RTPathFilename(pszPath);
     
    5454 * @copydoc RTPathAppPrivateNoArch
    5555 */
    56 DECLHIDDEN(int) supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath)
     56DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath)
    5757{
    5858    return RTPathAppPrivateNoArch(pszPath, cchPath);
     
    6363 * @copydoc RTPathAppPrivateArch
    6464 */
    65 DECLHIDDEN(int) supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath)
     65DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath)
    6666{
    6767    return RTPathAppPrivateArch(pszPath, cchPath);
     
    7272 * @copydoc RTPathSharedLibs
    7373 */
    74 DECLHIDDEN(int) supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath)
     74DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath)
    7575{
    7676    return RTPathSharedLibs(pszPath, cchPath);
     
    8181 * @copydoc RTPathAppDocs
    8282 */
    83 DECLHIDDEN(int) supR3HardenedPathAppDocs(char *pszPath, size_t cchPath)
     83DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppDocs(char *pszPath, size_t cchPath)
    8484{
    8585    return RTPathAppDocs(pszPath, cchPath);
     
    9090 * @copydoc RTPathExecDir
    9191 */
    92 DECLHIDDEN(int) supR3HardenedPathAppBin(char *pszPath, size_t cchPath)
     92DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppBin(char *pszPath, size_t cchPath)
    9393{
    9494    return RTPathExecDir(pszPath, cchPath);
     
    9696
    9797
    98 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
    99                                                         const char *pszMsgFmt, va_list va)
     98DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
     99                                                                 const char *pszMsgFmt, va_list va)
    100100{
    101101    va_list vaCopy;
     
    107107
    108108
    109 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
    110                                                        const char *pszMsgFmt, ...)
     109DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
     110                                                                const char *pszMsgFmt, ...)
    111111{
    112112    va_list va;
     
    117117
    118118
    119 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalV(const char *pszFormat, va_list va)
     119DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalV(const char *pszFormat, va_list va)
    120120{
    121121    va_list vaCopy;
     
    126126
    127127
    128 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatal(const char *pszFormat, ...)
     128DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatal(const char *pszFormat, ...)
    129129{
    130130    va_list va;
     
    135135
    136136
    137 DECLHIDDEN(int) supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va)
     137DECL_HIDDEN_NOTHROW(int) supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va)
    138138{
    139139    if (fFatal)
     
    150150
    151151
    152 DECLHIDDEN(int) supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...)
     152DECL_HIDDEN_NOTHROW(int) supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...)
    153153{
    154154    va_list va;
  • trunk/src/VBox/HostDrivers/Support/SUPR3HardenedMain.cpp

    r83181 r85093  
    671671 * @param   rcExit      The exit code.
    672672 */
    673 DECLNORETURN(void) suplibHardenedExit(RTEXITCODE rcExit)
     673DECLNORETURN(void) suplibHardenedExit(RTEXITCODE rcExit) RT_NO_THROW_DEF
    674674{
    675675    for (;;)
     
    888888 * @param   va          Arguments to format.
    889889 */
    890 DECLHIDDEN(void) suplibHardenedPrintFV(const char *pszFormat, va_list va)
     890DECL_HIDDEN_NOTHROW(void) suplibHardenedPrintFV(const char *pszFormat, va_list va) RT_NO_THROW_DEF
    891891{
    892892#ifdef IPRT_NO_CRT
     
    11221122 * @param   ...         Arguments to format.
    11231123 */
    1124 DECLHIDDEN(void) suplibHardenedPrintF(const char *pszFormat, ...)
     1124DECL_HIDDEN_NOTHROW(void) suplibHardenedPrintF(const char *pszFormat, ...) RT_NO_THROW_DEF
    11251125{
    11261126    va_list va;
     
    11701170 * @copydoc RTPathFilename
    11711171 */
    1172 DECLHIDDEN(char *) supR3HardenedPathFilename(const char *pszPath)
     1172DECL_HIDDEN_NOTHROW(char *) supR3HardenedPathFilename(const char *pszPath)
    11731173{
    11741174    const char *psz = pszPath;
     
    12061206 * @copydoc RTPathAppPrivateNoArch
    12071207 */
    1208 DECLHIDDEN(int) supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath)
     1208DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppPrivateNoArch(char *pszPath, size_t cchPath)
    12091209{
    12101210#if !defined(RT_OS_WINDOWS) && defined(RTPATH_APP_PRIVATE)
     
    12251225 * @copydoc RTPathAppPrivateArch
    12261226 */
    1227 DECLHIDDEN(int) supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath)
     1227DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppPrivateArch(char *pszPath, size_t cchPath)
    12281228{
    12291229#if !defined(RT_OS_WINDOWS) && defined(RTPATH_APP_PRIVATE_ARCH)
     
    12441244 * @copydoc RTPathSharedLibs
    12451245 */
    1246 DECLHIDDEN(int) supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath)
     1246DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppSharedLibs(char *pszPath, size_t cchPath)
    12471247{
    12481248#if !defined(RT_OS_WINDOWS) && defined(RTPATH_SHARED_LIBS)
     
    12631263 * @copydoc RTPathAppDocs
    12641264 */
    1265 DECLHIDDEN(int) supR3HardenedPathAppDocs(char *pszPath, size_t cchPath)
     1265DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppDocs(char *pszPath, size_t cchPath)
    12661266{
    12671267#if !defined(RT_OS_WINDOWS) && defined(RTPATH_APP_DOCS)
     
    14321432 * @remarks not quite like RTPathExecDir actually...
    14331433 */
    1434 DECLHIDDEN(int) supR3HardenedPathAppBin(char *pszPath, size_t cchPath)
     1434DECL_HIDDEN_NOTHROW(int) supR3HardenedPathAppBin(char *pszPath, size_t cchPath)
    14351435{
    14361436    /*
     
    14591459#endif
    14601460
    1461 DECLHIDDEN(void) supR3HardenedOpenLog(int *pcArgs, char **papszArgs)
     1461DECL_HIDDEN_NOTHROW(void) supR3HardenedOpenLog(int *pcArgs, char **papszArgs) RT_NO_THROW_DEF
    14621462{
    14631463    static const char s_szLogOption[] = "--sup-hardening-log=";
     
    14771477             * Drop the argument from the vector (has trailing NULL entry).
    14781478             */
    1479             memmove(&papszArgs[iArg], &papszArgs[iArg + 1], (cArgs - iArg) * sizeof(papszArgs[0]));
     1479//            memmove(&papszArgs[iArg], &papszArgs[iArg + 1], (cArgs - iArg) * sizeof(papszArgs[0]));
    14801480            *pcArgs -= 1;
    14811481            cArgs   -= 1;
     
    14991499                if (RT_SUCCESS(rc))
    15001500                {
    1501                     SUP_DPRINTF(("Log file opened: " VBOX_VERSION_STRING "r%u g_hStartupLog=%p g_uNtVerCombined=%#x\n",
    1502                                  VBOX_SVN_REV, g_hStartupLog, g_uNtVerCombined));
     1501//                    SUP_DPRINTF(("Log file opened: " VBOX_VERSION_STRING "r%u g_hStartupLog=%p g_uNtVerCombined=%#x\n",
     1502//                                 VBOX_SVN_REV, g_hStartupLog, g_uNtVerCombined));
    15031503
    15041504                    /*
     
    15081508                    if (RT_C_IS_ALPHA(pszLogFile[0]) && pszLogFile[1] == ':')
    15091509                    {
    1510                         RTUtf16CopyAscii(g_wszStartupLogVol, RT_ELEMENTS(g_wszStartupLogVol), "\\??\\");
     1510//                        RTUtf16CopyAscii(g_wszStartupLogVol, RT_ELEMENTS(g_wszStartupLogVol), "\\??\\");
    15111511                        g_wszStartupLogVol[sizeof("\\??\\") - 1] = RT_C_TO_UPPER(pszLogFile[0]);
    15121512                        g_wszStartupLogVol[sizeof("\\??\\") + 0] = ':';
     
    15271527
    15281528
    1529 DECLHIDDEN(void) supR3HardenedLogV(const char *pszFormat, va_list va)
     1529DECL_HIDDEN_NOTHROW(void) supR3HardenedLogV(const char *pszFormat, va_list va) RT_NO_THROW_DEF
    15301530{
    15311531#ifdef RT_OS_WINDOWS
     
    15591559
    15601560
    1561 DECLHIDDEN(void) supR3HardenedLog(const char *pszFormat,  ...)
     1561DECL_HIDDEN_NOTHROW(void) supR3HardenedLog(const char *pszFormat,  ...) RT_NO_THROW_DEF
    15621562{
    15631563    va_list va;
     
    15681568
    15691569
    1570 DECLHIDDEN(void) supR3HardenedLogFlush(void)
     1570DECL_HIDDEN_NOTHROW(void) supR3HardenedLogFlush(void) RT_NO_THROW_DEF
    15711571{
    15721572#ifdef RT_OS_WINDOWS
     
    16471647
    16481648
    1649 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
    1650                                                         const char *pszMsgFmt, va_list va)
     1649DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsgV(const char *pszWhere, SUPINITOP enmWhat, int rc,
     1650                                                                 const char *pszMsgFmt, va_list va)
    16511651{
    16521652    /*
     
    17641764
    17651765
    1766 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
    1767                                                        const char *pszMsgFmt, ...)
     1766DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalMsg(const char *pszWhere, SUPINITOP enmWhat, int rc,
     1767                                                                const char *pszMsgFmt, ...)
    17681768{
    17691769    va_list va;
     
    17741774
    17751775
    1776 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatalV(const char *pszFormat, va_list va)
     1776DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatalV(const char *pszFormat, va_list va)
    17771777{
    17781778    supR3HardenedLog("Fatal error:\n");
     
    18091809
    18101810
    1811 DECL_NO_RETURN(DECLHIDDEN(void)) supR3HardenedFatal(const char *pszFormat, ...)
     1811DECL_NO_RETURN(DECL_HIDDEN_NOTHROW(void)) supR3HardenedFatal(const char *pszFormat, ...)
    18121812{
    18131813    va_list va;
     
    18181818
    18191819
    1820 DECLHIDDEN(int) supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va)
     1820DECL_HIDDEN_NOTHROW(int) supR3HardenedErrorV(int rc, bool fFatal, const char *pszFormat, va_list va)
    18211821{
    18221822    if (fFatal)
     
    18451845
    18461846
    1847 DECLHIDDEN(int) supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...)
     1847DECL_HIDDEN_NOTHROW(int) supR3HardenedError(int rc, bool fFatal, const char *pszFormat, ...)
    18481848{
    18491849    va_list va;
     
    18611861 * @remarks This function will not return on failure.
    18621862 */
    1863 DECLHIDDEN(void) supR3HardenedMainOpenDevice(void)
     1863DECL_HIDDEN_NOTHROW(void) supR3HardenedMainOpenDevice(void)
    18641864{
    18651865    RTERRINFOSTATIC ErrInfo;
     
    25162516 * @param   envp            The environment vector.
    25172517 */
    2518 DECLHIDDEN(int) SUPR3HardenedMain(const char *pszProgName, uint32_t fFlags, int argc, char **argv, char **envp)
     2518DECL_HIDDEN_NOTHROW(int) SUPR3HardenedMain(const char *pszProgName, uint32_t fFlags, int argc, char **argv, char **envp)
    25192519{
    25202520    SUP_DPRINTF(("SUPR3HardenedMain: pszProgName=%s fFlags=%#x\n", pszProgName, fFlags));
  • trunk/src/VBox/HostDrivers/Support/win/SUPR3HardenedNoCrt-win.cpp

    r84052 r85093  
    119119
    120120
    121 static uint32_t supR3HardenedEarlyFind(void *pv)
     121static uint32_t supR3HardenedEarlyFind(void *pv) RT_NOTHROW_DEF
    122122{
    123123    uint32_t iHeap = g_cSupR3HardenedEarlyHeaps;
     
    129129
    130130
    131 static void supR3HardenedEarlyCompact(void)
     131static void supR3HardenedEarlyCompact(void) RT_NOTHROW_DEF
    132132{
    133133    uint32_t iHeap = g_cSupR3HardenedEarlyHeaps;
     
    148148
    149149
    150 static void *supR3HardenedEarlyAlloc(size_t cb, bool fZero)
     150static void *supR3HardenedEarlyAlloc(size_t cb, bool fZero) RT_NOTHROW_DEF
    151151{
    152152    /*
     
    219219 * @returns Heap handle.
    220220 */
    221 static HANDLE supR3HardenedHeapInit(void)
     221static HANDLE supR3HardenedHeapInit(void) RT_NOTHROW_DEF
    222222{
    223223    Assert(g_enmSupR3HardenedMainState >= SUPR3HARDENEDMAINSTATE_WIN_EP_CALLED);
     
    238238 * Compacts the heaps before enter wait for parent/child.
    239239 */
    240 DECLHIDDEN(void) supR3HardenedWinCompactHeaps(void)
     240DECL_HIDDEN_NOTHROW(void) supR3HardenedWinCompactHeaps(void)
    241241{
    242242    if (g_hSupR3HardenedHeap)
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