Skip to content

Commit f733ade

Browse files
committed
linuxkm/{linuxkm_wc_port.h,module_hooks.c}: add feature gates around wolfCrypt_FIPS_*_sanity() references matching those in fips_test.c.
1 parent 3f83ed2 commit f733ade

2 files changed

Lines changed: 84 additions & 0 deletions

File tree

linuxkm/linuxkm_wc_port.h

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -475,21 +475,49 @@
475475
extern int wolfCrypt_FIPS_first(void);
476476
extern int wolfCrypt_FIPS_last(void);
477477
#if FIPS_VERSION3_GE(6,0,0)
478+
#ifndef NO_AES
478479
extern int wolfCrypt_FIPS_AES_sanity(void);
480+
#if defined(WOLFSSL_CMAC) && defined(WOLFSSL_AES_DIRECT)
479481
extern int wolfCrypt_FIPS_CMAC_sanity(void);
482+
#endif
483+
#endif
484+
#ifndef NO_DH
480485
extern int wolfCrypt_FIPS_DH_sanity(void);
486+
#endif
487+
#ifdef HAVE_ECC
481488
extern int wolfCrypt_FIPS_ECC_sanity(void);
489+
#endif
490+
#ifdef HAVE_ED25519
482491
extern int wolfCrypt_FIPS_ED25519_sanity(void);
492+
#endif
493+
#ifdef HAVE_ED448
483494
extern int wolfCrypt_FIPS_ED448_sanity(void);
495+
#endif
484496
extern int wolfCrypt_FIPS_HMAC_sanity(void);
497+
#ifndef NO_KDF
485498
extern int wolfCrypt_FIPS_KDF_sanity(void);
499+
#endif
500+
#ifdef HAVE_PBKDF2
486501
extern int wolfCrypt_FIPS_PBKDF_sanity(void);
502+
#endif
503+
#ifdef HAVE_HASHDRBG
487504
extern int wolfCrypt_FIPS_DRBG_sanity(void);
505+
#endif
506+
#ifndef NO_RSA
488507
extern int wolfCrypt_FIPS_RSA_sanity(void);
508+
#endif
509+
#ifndef NO_SHA
489510
extern int wolfCrypt_FIPS_SHA_sanity(void);
511+
#endif
512+
#ifndef NO_SHA256
490513
extern int wolfCrypt_FIPS_SHA256_sanity(void);
514+
#endif
515+
#ifdef WOLFSSL_SHA512
491516
extern int wolfCrypt_FIPS_SHA512_sanity(void);
517+
#endif
518+
#ifdef WOLFSSL_SHA3
492519
extern int wolfCrypt_FIPS_SHA3_sanity(void);
520+
#endif
493521
extern int wolfCrypt_FIPS_FT_sanity(void);
494522
extern int wc_RunAllCast_fips(void);
495523
#endif
@@ -660,21 +688,49 @@
660688
typeof(wolfCrypt_FIPS_first) *wolfCrypt_FIPS_first;
661689
typeof(wolfCrypt_FIPS_last) *wolfCrypt_FIPS_last;
662690
#if FIPS_VERSION3_GE(6,0,0)
691+
#ifndef NO_AES
663692
typeof(wolfCrypt_FIPS_AES_sanity) *wolfCrypt_FIPS_AES_sanity;
693+
#if defined(WOLFSSL_CMAC) && defined(WOLFSSL_AES_DIRECT)
664694
typeof(wolfCrypt_FIPS_CMAC_sanity) *wolfCrypt_FIPS_CMAC_sanity;
695+
#endif
696+
#endif
697+
#ifndef NO_DH
665698
typeof(wolfCrypt_FIPS_DH_sanity) *wolfCrypt_FIPS_DH_sanity;
699+
#endif
700+
#ifdef HAVE_ECC
666701
typeof(wolfCrypt_FIPS_ECC_sanity) *wolfCrypt_FIPS_ECC_sanity;
702+
#endif
703+
#ifdef HAVE_ED25519
667704
typeof(wolfCrypt_FIPS_ED25519_sanity) *wolfCrypt_FIPS_ED25519_sanity;
705+
#endif
706+
#ifdef HAVE_ED448
668707
typeof(wolfCrypt_FIPS_ED448_sanity) *wolfCrypt_FIPS_ED448_sanity;
708+
#endif
669709
typeof(wolfCrypt_FIPS_HMAC_sanity) *wolfCrypt_FIPS_HMAC_sanity;
710+
#ifndef NO_KDF
670711
typeof(wolfCrypt_FIPS_KDF_sanity) *wolfCrypt_FIPS_KDF_sanity;
712+
#endif
713+
#ifdef HAVE_PBKDF2
671714
typeof(wolfCrypt_FIPS_PBKDF_sanity) *wolfCrypt_FIPS_PBKDF_sanity;
715+
#endif
716+
#ifdef HAVE_HASHDRBG
672717
typeof(wolfCrypt_FIPS_DRBG_sanity) *wolfCrypt_FIPS_DRBG_sanity;
718+
#endif
719+
#ifndef NO_RSA
673720
typeof(wolfCrypt_FIPS_RSA_sanity) *wolfCrypt_FIPS_RSA_sanity;
721+
#endif
722+
#ifndef NO_SHA
674723
typeof(wolfCrypt_FIPS_SHA_sanity) *wolfCrypt_FIPS_SHA_sanity;
724+
#endif
725+
#ifndef NO_SHA256
675726
typeof(wolfCrypt_FIPS_SHA256_sanity) *wolfCrypt_FIPS_SHA256_sanity;
727+
#endif
728+
#ifdef WOLFSSL_SHA512
676729
typeof(wolfCrypt_FIPS_SHA512_sanity) *wolfCrypt_FIPS_SHA512_sanity;
730+
#endif
731+
#ifdef WOLFSSL_SHA3
677732
typeof(wolfCrypt_FIPS_SHA3_sanity) *wolfCrypt_FIPS_SHA3_sanity;
733+
#endif
678734
typeof(wolfCrypt_FIPS_FT_sanity) *wolfCrypt_FIPS_FT_sanity;
679735
typeof(wc_RunAllCast_fips) *wc_RunAllCast_fips;
680736
#endif

linuxkm/module_hooks.c

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -598,36 +598,64 @@ static int set_up_wolfssl_linuxkm_pie_redirect_table(void) {
598598
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_last =
599599
wolfCrypt_FIPS_last;
600600
#if FIPS_VERSION3_GE(6,0,0)
601+
#ifndef NO_AES
601602
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_AES_sanity =
602603
wolfCrypt_FIPS_AES_sanity;
604+
#if defined(WOLFSSL_CMAC) && defined(WOLFSSL_AES_DIRECT)
603605
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_CMAC_sanity =
604606
wolfCrypt_FIPS_CMAC_sanity;
607+
#endif
608+
#endif
609+
#ifndef NO_DH
605610
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_DH_sanity =
606611
wolfCrypt_FIPS_DH_sanity;
612+
#endif
613+
#ifdef HAVE_ECC
607614
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_ECC_sanity =
608615
wolfCrypt_FIPS_ECC_sanity;
616+
#endif
617+
#ifdef HAVE_ED25519
609618
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_ED25519_sanity =
610619
wolfCrypt_FIPS_ED25519_sanity;
620+
#endif
621+
#ifdef HAVE_ED448
611622
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_ED448_sanity =
612623
wolfCrypt_FIPS_ED448_sanity;
624+
#endif
613625
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_HMAC_sanity =
614626
wolfCrypt_FIPS_HMAC_sanity;
627+
#ifndef NO_KDF
615628
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_KDF_sanity =
616629
wolfCrypt_FIPS_KDF_sanity;
630+
#endif
631+
#ifdef HAVE_PBKDF2
617632
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_PBKDF_sanity =
618633
wolfCrypt_FIPS_PBKDF_sanity;
634+
#endif
635+
#ifdef HAVE_HASHDRBG
619636
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_DRBG_sanity =
620637
wolfCrypt_FIPS_DRBG_sanity;
638+
#endif
639+
#ifndef NO_RSA
621640
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_RSA_sanity =
622641
wolfCrypt_FIPS_RSA_sanity;
642+
#endif
643+
#ifndef NO_SHA
623644
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_SHA_sanity =
624645
wolfCrypt_FIPS_SHA_sanity;
646+
#endif
647+
#ifndef NO_SHA256
625648
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_SHA256_sanity =
626649
wolfCrypt_FIPS_SHA256_sanity;
650+
#endif
651+
#ifdef WOLFSSL_SHA512
627652
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_SHA512_sanity =
628653
wolfCrypt_FIPS_SHA512_sanity;
654+
#endif
655+
#ifdef WOLFSSL_SHA3
629656
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_SHA3_sanity =
630657
wolfCrypt_FIPS_SHA3_sanity;
658+
#endif
631659
wolfssl_linuxkm_pie_redirect_table.wolfCrypt_FIPS_FT_sanity =
632660
wolfCrypt_FIPS_FT_sanity;
633661
wolfssl_linuxkm_pie_redirect_table.wc_RunAllCast_fips =

0 commit comments

Comments
 (0)