FreeRTOS-Plus/ThirdParty/WolfSSL-FIPS-Ready/wolfcrypt/src/fips_test.c
/* convert hex string to binary, store size, 0 success (free mem on failure) */
convert hex string to binary, store size, 0 success (free mem on failure)
convert hex string to binary store size 0 success ( free mem on failure )
static int ConvertHexToBin(const char* h1, byte* b1, word32* b1Sz,
                           const char* h2, byte* b2, word32* b2Sz,
                           const char* h3, byte* b3, word32* b3Sz,
                           const char* h4, byte* b4, word32* b4Sz)
{
    int ret;
    word32 h1Sz, h2Sz, h3Sz, h4Sz, tempSz;
    (void) h1Sz;
    (void) h2Sz;
    (void) h3Sz;
    (void) h4Sz;
    if (h1 && b1 && b1Sz) {
        h1Sz = (int) XSTRLEN(h1);
        tempSz = h1Sz / 2;
        if (tempSz > *b1Sz || tempSz <= 0) {
            return BUFFER_E;
        }
        *b1Sz = tempSz;
        ret = Base16_Decode((const byte*)h1, h1Sz, b1, b1Sz);
        if (ret != 0) {
            return ret;
        }
    }
    if (h2 && b2 && b2Sz) {
        h2Sz = (int)XSTRLEN(h2);
        tempSz = h2Sz / 2;
        if (tempSz > *b2Sz || tempSz <= 0) {
            return BUFFER_E;
        }
        *b2Sz = tempSz;
        ret = Base16_Decode((const byte*)h2, h2Sz, b2, b2Sz);
        if (ret != 0) {
            return ret;
        }
    }
    if (h3 && b3 && b3Sz) {
        h3Sz = (int)XSTRLEN(h3);
        tempSz = h3Sz / 2;
        if (tempSz > *b3Sz || tempSz <= 0) {
            return BUFFER_E;
        }
        *b3Sz =  tempSz;
        ret = Base16_Decode((const byte*)h3, h3Sz, b3, b3Sz);
        if (ret != 0) {
            return ret;
        }
    }
    if (h4 && b4 && b4Sz) {
        h4Sz = (int)XSTRLEN(h4);
        tempSz = h4Sz / 2;
        if (tempSz > *b4Sz || tempSz <= 0) {
            return BUFFER_E;
        }
        *b4Sz =  tempSz;
        ret = Base16_Decode((const byte*)h4, h4Sz, b4, b4Sz);
        if (ret != 0) {
            return ret;
        }
    }
    return 0;
}
static int ConvertHexToBin ( const char * h1 , byte * b1 , word32 * b1Sz , const char * h2 , byte * b2 , word32 * b2Sz , const char * h3 , byte * b3 , word32 * b3Sz , const char * h4 , byte * b4 , word32 * b4Sz ) { int ret ; word32 h1Sz , h2Sz , h3Sz , h4Sz , tempSz ; ( void ) h1Sz ; ( void ) h2Sz ; ( void ) h3Sz ; ( void ) h4Sz ; if ( h1 && b1 && b1Sz ) { h1Sz = ( int ) XSTRLEN ( h1 ) ; tempSz = h1Sz / 2 ; if ( tempSz > * b1Sz || tempSz <= 0 ) { return BUFFER_E ; } * b1Sz = tempSz ; ret = Base16_Decode ( ( const byte * ) h1 , h1Sz , b1 , b1Sz ) ; if ( ret != 0 ) { return ret ; } } if ( h2 && b2 && b2Sz ) { h2Sz = ( int ) XSTRLEN ( h2 ) ; tempSz = h2Sz / 2 ; if ( tempSz > * b2Sz || tempSz <= 0 ) { return BUFFER_E ; } * b2Sz = tempSz ; ret = Base16_Decode ( ( const byte * ) h2 , h2Sz , b2 , b2Sz ) ; if ( ret != 0 ) { return ret ; } } if ( h3 && b3 && b3Sz ) { h3Sz = ( int ) XSTRLEN ( h3 ) ; tempSz = h3Sz / 2 ; if ( tempSz > * b3Sz || tempSz <= 0 ) { return BUFFER_E ; } * b3Sz = tempSz ; ret = Base16_Decode ( ( const byte * ) h3 , h3Sz , b3 , b3Sz ) ; if ( ret != 0 ) { return ret ; } } if ( h4 && b4 && b4Sz ) { h4Sz = ( int ) XSTRLEN ( h4 ) ; tempSz = h4Sz / 2 ; if ( tempSz > * b4Sz || tempSz <= 0 ) { return BUFFER_E ; } * b4Sz = tempSz ; ret = Base16_Decode ( ( const byte * ) h4 , h4Sz , b4 , b4Sz ) ; if ( ret != 0 ) { return ret ; } } return 0 ; }
convert hex string to binary, store size, 0 success (free mem on failure)
convert hex string to binary store size 0 success ( free mem on failure )
/* b1 */ /* b2 */ /* b3 */ /* b4 */