VirtualBox

Changeset 102356 in vbox


Ignore:
Timestamp:
Nov 28, 2023 10:33:34 AM (16 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
160492
Message:

IPRT/crypto: Added a RTCrShaCryptGenerateSaltWeak() version which can be overriden in other modules (e.g. testcases). bugref:10551

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/crypto/shacrypt.h

    r102335 r102356  
    6868RTR3DECL(int) RTCrShaCryptGenerateSalt(char szSalt[RT_SHACRYPT_MAX_SALT_LEN + 1], size_t cchSalt);
    6969
     70/**
     71 * Creates a randomized salt for the RTCrShaCryptXXX functions, weak version. Can be overriden in local modules.
     72 *
     73 * @returns IPRT status code.
     74 * @param   szSalt      Where to store the generated salt.
     75 * @param   cchSalt     Number of characters the generated salt should use.
     76 *                      Must be >= RT_SHACRYPT_MIN_SALT_LEN and <= RT_SHACRYPT_MAX_SALT_LEN.
     77 */
     78#if defined(IN_RING3) && (defined(IN_RT_STATIC) || defined(IPRT_NO_CRT))
     79RTR3DECL(int) RTCrShaCryptGenerateSaltWeak(char szSalt[RT_SHACRYPT_MAX_SALT_LEN + 1], size_t cchSalt);
     80#else
     81# undef  RTCrShaCryptGenerateSaltWeak /* in case of mangling */
     82# define RTCrShaCryptGenerateSaltWeak RTCrShaCryptGenerateSalt
     83#endif
    7084
    7185/**
  • trunk/include/iprt/mangling.h

    r102335 r102356  
    37353735# define RTCrRandBytes                                  RT_MANGLER(RTCrRandBytes)
    37363736# define RTCrShaCryptGenerateSalt                       RT_MANGLER(RTCrShaCryptGenerateSalt)
     3737# define RTCrShaCryptGenerateSaltWek                    RT_MANGLER(RTCrShaCryptGenerateSaltWeak)
    37373738# define RTCrShaCrypt256                                RT_MANGLER(RTCrShaCrypt256)
    37383739# define RTCrShaCrypt256ToString                        RT_MANGLER(RTCrShaCrypt256ToString)
  • trunk/src/VBox/Main/src-server/UnattendedScript.cpp

    r102337 r102356  
    656656            uint8_t abHash[a_cbHashSize]; \
    657657            char    szSalt[RT_SHACRYPT_MAX_SALT_LEN + 1]; \
    658             int vrc = RTCrShaCryptGenerateSalt(szSalt, RT_SHACRYPT_MAX_SALT_LEN); \
     658            int vrc = RTCrShaCryptGenerateSaltWeak(szSalt, RT_SHACRYPT_MAX_SALT_LEN); \
    659659            if (RT_SUCCESS(vrc)) \
    660660            { \
  • trunk/src/VBox/Main/testcase/tstUnattendedScript.cpp

    r102355 r102356  
    665665}
    666666
    667 /* Override RTCrShaCryptGenerateSalt() from IPRT to generate predictable salts to compare the script outputs. */
    668 DECL_HIDDEN_NOTHROW(int) RTCrShaCryptGenerateSalt(char szSalt[RT_SHACRYPT_MAX_SALT_LEN + 1], size_t cchSalt)
     667/* Override RTCrShaCryptGenerateSaltWeak() from IPRT to generate predictable salts to compare the script outputs. */
     668RTR3DECL(int) RTCrShaCryptGenerateSaltWeak(char szSalt[RT_SHACRYPT_MAX_SALT_LEN + 1], size_t cchSalt)
    669669{
    670670    RT_NOREF(cchSalt);
  • trunk/src/VBox/Runtime/testcase/tstRTShaCrypt.cpp

    r102335 r102356  
    191191        else
    192192        {
    193             rc = RTCrShaCryptGenerateSalt(szSalt, RT_SHACRYPT_MAX_SALT_LEN);
     193            rc = RTCrShaCryptGenerateSaltWeak(szSalt, RT_SHACRYPT_MAX_SALT_LEN);
    194194            RTTEST_CHECK_RC_OK(hTest, rc);
    195195            pszSalt = szSalt;
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