bool AiaStoreBlob()

in ports/Storage/src/aia_storage_config.c [99:129]


bool AiaStoreBlob( const char* key, const uint8_t* blob, size_t size )
{
    bool process = false;
    blobstorage_key_e k = AIA_BLOB_STORAGE_KEY_MAX;

    for( k = AIA_BLOB_STORAGE_KEY_START; blob && k < AIA_BLOB_STORAGE_KEY_MAX; ++k )
    {
        if( strncmp(key, blobstorage[ k ].key, strlen(key)) == 0 )
        {
            if( blobstorage[ k ].capacity >= size )
            {
                memcpy( blobstorage[ k ].storage, blob, size );
                blobstorage[ k ].used_len = size;
                process = true;
            }
            else
            {
                AiaLogError( "blob Store size error: key(%s), capacity(%u), size(%u)", key, blobstorage[k].capacity, size );
            }

            break;
        }
    }

    if( !blob || k >= AIA_BLOB_STORAGE_KEY_MAX )
    {
        AiaLogError( "Invalid input: blob(%u) key(%s)", blob, key);
    }

    return process;
}