示例#1
0
	void i3vvmt_testSll4_1_sha1Callback(SLL4Callback* cb)
	{
		if (cb)
		{
			// Conduct our processing
			vvm_sha1ComputeSha1_ProcessThisData((u8*)cb->extra1, (s8*)cb->node + sizeof(SLL4), cgnLlBufferSize);
		}
	}
示例#2
0
//////////
//
// Called to compute the SHA1 of the bxml attribute
//
//////
void iivvmt_testBxml_computeSha1CallbackBxml(SStartEndCallback* cb)
{
    SBxmlList*		bxmlList;
    SBxml*			bxml;


    bxmlList	= (SBxmlList*)cb->ptr;
    bxml		= bxmlList->bxml;
    vvm_sha1ComputeSha1_ProcessThisData((u8*)cb->extra, bxml->_name.data._s8, (u32)bxml->_name.length);
}
示例#3
0
//////////
//
// Called to compute the SHA1 of the bxml attribute's data
//
//////
void iivvmt_testBxml_computeSha1CallbackBxmlaData(SStartEndCallback* cb)
{
    SBxmlaList*	bxmlaList;
    SBxmla*		bxmla;


    bxmlaList	= (SBxmlaList*)cb->ptr;
    bxmla		= bxmlaList->bxmla;
    vvm_sha1ComputeSha1_ProcessThisData((u8*)cb->extra, bxmla->_data.datum.data._s8, (u32)bxmla->_data.datum.length);
}
示例#4
0
	bool iivvmt_testSha1_1(u64 lnHandleLog)
	{
		// Used for test #3
		u32		lnI;
		u8		context[96];


		//////////
		// Tell them which test we're running
		//////
			vvm_resourcePrintf(IDS_VVM_TEST_SHA1_FIPS_PUB_180_1);


		//////////
		// "abc"
		// A9993E36 4706816A BA3E2571 7850C26C 9CD0D89D
		//////
			vvm_resourcePrintf(IDS_VVM_1DOTDOTDOT);
			vvm_sha1ComputeSha1AsHex((s8*)cgc_Test_Sha1_1_1, sizeof(cgc_Test_Sha1_1_1) - 1, cgc_Test_Sha1_1_3, true);;
			if (vvm_memicmp(_csu8p(cgc_Test_Sha1_1_2), _csu8p(cgc_Test_Sha1_1_3), sizeof(cgc_Test_Sha1_1_2) - 1) != 0)
			{
failure:
				// Error
				vvm_resourcePrintf(IDS_VVM_TEST_FAIL);

				// Indicate we failed
				return false;
			}


		//////////
		// "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
		// 84983E44 1C3BD26E BAAE4AA1 F95129E5 E54670F1
		//////
			vvm_resourcePrintf(IDS_VVM_2DOTDOTDOT);
			vvm_sha1ComputeSha1AsHex((s8*)cgc_Test_Sha1_2_1, sizeof(cgc_Test_Sha1_2_1) - 1, cgc_Test_Sha1_2_3, true);;
			if (vvm_memicmp(_csu8p(cgc_Test_Sha1_2_2), _csu8p(cgc_Test_Sha1_2_3), sizeof(cgc_Test_Sha1_2_2) - 1) != 0)
				goto failure;		// Failure


		//////////
		// A million repetitions of "a"
		// 34AA973C D4C4DAA4 F61EEB2B DBAD2731 6534016F
		//////
			vvm_resourcePrintf(IDS_VVM_3DOTDOTDOT);

			// Initialize
			vvm_sha1ComputeSha1_Start(context);

			// Process one million lower-case "a" characters in succession, one at a time
			for (lnI = 0; lnI < 1000000; lnI++)
				vvm_sha1ComputeSha1_ProcessThisData(context, (s8*)cgc_Test_Sha1_3_1, sizeof(cgc_Test_Sha1_3_1) - 1);

			// Finalize and compute the value a hex
			vvm_sha1ComputeSha1_FinishAsHex(context, cgc_Test_Sha1_3_3, true, true);
			if (vvm_memicmp(_csu8p(cgc_Test_Sha1_3_2), _csu8p(cgc_Test_Sha1_3_3), sizeof(cgc_Test_Sha1_3_2) - 1) != 0)
				goto failure;		// Failure


		// If we get here, we're good
		vvm_resourcePrintf(IDS_VVM_TEST_PASS);
		return(true);
	}