📄 testrng.c
字号:
/**************************************************************************** * testRng.c - random number generation test for SEC2 device driver **************************************************************************** * Copyright (c) 2004-2005 Freescale Semiconductor * All Rights Reserved. Proprietary and Confidential. * * NOTICE: The information contained in this file is proprietary * to Freescale Semiconductor, and is being made available to * Freescale's customers under strict license agreements. * Use or disclosure of this information is permissible only * under the terms of the existing license agreement. ***************************************************************************//* Revision History: * 1.1.0 Dec 05,2004 sec - prep for linux-compatible driver release * 1.2 02-Feb-2005 sec - fix warnings */#include <stdio.h>#include "sec2drvTest.h"#include "Sec2.h"#define RNG_TESTSIZE (160)extern int waitCompletion(char *testname, int iostat, void *req);extern volatile char proceed;extern void armCompletion(void *req);extern int SEC2_ioctl(register int ioctlCode, register void *param);static unsigned char rngBuf[RNG_TESTSIZE];int testRng(int fd){ RNG_REQ rngReq; int status; int algoType; /* RNG test */ printf("\n*** Test RNG ***\n"); memset(&rngReq, 0, sizeof(rngReq)); memset(rngBuf, 0, RNG_TESTSIZE); rngReq.opId = DPD_RNG_GETRN; rngReq.rngBytes = RNG_TESTSIZE; algoType = 1; /*DRV_IPSEC_RNG_NUM*/ rngReq.rngData = rngBuf; armCompletion(&rngReq); status = SEC2_ioctl(IOCTL_PROC_REQ, (int*)&rngReq); if (status == waitCompletion("testRng(): data extraction test", status, (void*)&rngReq)) { return status; } /* check random buffer content for nonzero */ if (rngBuf[0]) { printf("*** Test RNG Data ***\n"); status = 0; } else { printf("*** Test RNG Failed ***\n"); status = -1; } return status;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -