xref: /illumos-gate/usr/src/test/crypto-tests/tests/hmac/hmac_sha1_gen.c (revision 29316b9c834da1aab0c095f56a69bd1e71121080)
112b0348cSMatt Barden /*
212b0348cSMatt Barden  * This file and its contents are supplied under the terms of the
312b0348cSMatt Barden  * Common Development and Distribution License (), version 1.0.
412b0348cSMatt Barden  * You may only use this file in accordance with the terms of version
512b0348cSMatt Barden  * 1.0 of the CDDL.
612b0348cSMatt Barden  *
712b0348cSMatt Barden  * A full copy of the text of the CDDL should have accompanied this
812b0348cSMatt Barden  * source.  A copy of the CDDL is also available via the Internet at
912b0348cSMatt Barden  * http://www.illumos.org/license/CDDL.
1012b0348cSMatt Barden  */
1112b0348cSMatt Barden 
1212b0348cSMatt Barden /*
1312b0348cSMatt Barden  * Copyright 2019 Joyent, Inc.
1412b0348cSMatt Barden  * Copyright 2023 RackTop Systems, Inc.
1512b0348cSMatt Barden  */
1612b0348cSMatt Barden 
1712b0348cSMatt Barden #include <sys/crypto/ioctl.h>
1812b0348cSMatt Barden #include <sys/sha1.h>
1912b0348cSMatt Barden 
20*29316b9cSGordon Ross #include "hmac_sha1_data.h"
2112b0348cSMatt Barden 
2212b0348cSMatt Barden uint8_t *DATA[] = { DATA0, DATA1, DATA2, DATA3, DATA4, DATA5, DATA6 };
2312b0348cSMatt Barden 
2412b0348cSMatt Barden size_t DATALEN[] = {
2512b0348cSMatt Barden 	sizeof (DATA0), sizeof (DATA1), sizeof (DATA2), sizeof (DATA3),
2612b0348cSMatt Barden 	sizeof (DATA4), sizeof (DATA5), sizeof (DATA6)
2712b0348cSMatt Barden };
2812b0348cSMatt Barden 
2912b0348cSMatt Barden uint8_t *KEY[] = { KEY0, KEY1, KEY2, KEY3, KEY4, KEY5, KEY6 };
3012b0348cSMatt Barden 
3112b0348cSMatt Barden size_t KEYLEN[] = {
3212b0348cSMatt Barden 	sizeof (KEY0), sizeof (KEY1), sizeof (KEY2), sizeof (KEY3),
3312b0348cSMatt Barden 	sizeof (KEY4), sizeof (KEY5), sizeof (KEY6)
3412b0348cSMatt Barden };
3512b0348cSMatt Barden 
3612b0348cSMatt Barden uint8_t *HMAC[] = { HMAC0, HMAC1, HMAC2, HMAC3, HMAC4, HMAC5, HMAC6 };
3712b0348cSMatt Barden 
3812b0348cSMatt Barden /*
3912b0348cSMatt Barden  * SUN_CKM_SHA1_HMAC_GENERAL is like SUN_CKM_SHA1_HMAC except that it
4012b0348cSMatt Barden  * allows returning a truncated digest with length specified in the
4112b0348cSMatt Barden  * parameter passed to the crypto mechanism.  The length specified
4212b0348cSMatt Barden  * here is an arbitrary value less than SHA1_DIGEST_LENGTH.
4312b0348cSMatt Barden  */
4412b0348cSMatt Barden char *mechname = SUN_CKM_SHA1_HMAC_GENERAL;
4512b0348cSMatt Barden size_t msgcount = 7;
46*29316b9cSGordon Ross size_t hmac_len = SHA1_DIGEST_LENGTH - 5; /* truncated MAC */
47