Skip to content

Commit

Permalink
SUNRPC: Let Kunit tests run with some enctypes compiled out
Browse files Browse the repository at this point in the history
Allow the new GSS Kerberos encryption type test suites to run
outside of the kunit infrastructure. Replace the assertion that
fires when lookup_enctype() so that the case is skipped instead of
failing outright.

Reported-by: Geert Uytterhoeven <[email protected]>
Tested-by: Geert Uytterhoeven <[email protected]>
Signed-off-by: Chuck Lever <[email protected]>
  • Loading branch information
chucklever committed Feb 27, 2023
1 parent 4b471a8 commit fe90151
Showing 1 changed file with 12 additions and 6 deletions.
18 changes: 12 additions & 6 deletions net/sunrpc/auth_gss/gss_krb5_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,8 @@ static void kdf_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

derivedkey.data = kunit_kzalloc(test, param->expected_result->len,
GFP_KERNEL);
Expand Down Expand Up @@ -83,7 +84,8 @@ static void checksum_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

Kc.len = gk5e->Kc_length;
Kc.data = kunit_kzalloc(test, Kc.len, GFP_KERNEL);
Expand Down Expand Up @@ -725,7 +727,8 @@ static void rfc3962_encrypt_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

cbc_tfm = crypto_alloc_sync_skcipher(gk5e->aux_cipher, 0, 0);
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cbc_tfm);
Expand Down Expand Up @@ -1319,7 +1322,8 @@ static void rfc6803_encrypt_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

usage.data[3] = param->constant;

Expand Down Expand Up @@ -1810,7 +1814,8 @@ static void rfc8009_encrypt_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

*(__be32 *)usage.data = cpu_to_be32(2);

Expand Down Expand Up @@ -1975,7 +1980,8 @@ static void encrypt_selftest_case(struct kunit *test)

/* Arrange */
gk5e = gss_krb5_lookup_enctype(param->enctype);
KUNIT_ASSERT_NOT_NULL(test, gk5e);
if (!gk5e)
kunit_skip(test, "Encryption type is not available");

cbc_tfm = crypto_alloc_sync_skcipher(gk5e->aux_cipher, 0, 0);
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, cbc_tfm);
Expand Down

0 comments on commit fe90151

Please sign in to comment.