diff options
author | Andreas Schneider <asn@samba.org> | 2020-09-01 13:28:12 +0200 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2021-04-28 03:43:34 +0000 |
commit | f65a32fac10e2d96d95bddee37f12abea7036ba3 (patch) | |
tree | 477fc9965c3929d2dd85ac27757ffe17ed450ec4 /auth | |
parent | 2fbc63cacc81ab9e1dfdbe6d979c248c3bdea686 (diff) | |
download | samba-f65a32fac10e2d96d95bddee37f12abea7036ba3.tar.gz |
auth:creds:tests: Add test for cli_credentials_set_gensec_features()
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'auth')
-rw-r--r-- | auth/credentials/tests/test_creds.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/auth/credentials/tests/test_creds.c b/auth/credentials/tests/test_creds.c index fac8fa62de8..ea0a9f3bd6e 100644 --- a/auth/credentials/tests/test_creds.c +++ b/auth/credentials/tests/test_creds.c @@ -241,6 +241,32 @@ static void torture_creds_krb5_state(void **state) } +static void torture_creds_gensec_feature(void **state) +{ + TALLOC_CTX *mem_ctx = *state; + struct cli_credentials *creds = NULL; + bool ok; + + creds = cli_credentials_init(mem_ctx); + assert_non_null(creds); + assert_int_equal(creds->gensec_features_obtained, CRED_UNINITIALISED); + assert_int_equal(creds->gensec_features, 0); + + ok = cli_credentials_set_gensec_features(creds, + GENSEC_FEATURE_SIGN, + CRED_SPECIFIED); + assert_true(ok); + assert_int_equal(creds->gensec_features_obtained, CRED_SPECIFIED); + assert_int_equal(creds->gensec_features, GENSEC_FEATURE_SIGN); + + ok = cli_credentials_set_gensec_features(creds, + GENSEC_FEATURE_SEAL, + CRED_SMB_CONF); + assert_false(ok); + assert_int_equal(creds->gensec_features_obtained, CRED_SPECIFIED); + assert_int_equal(creds->gensec_features, GENSEC_FEATURE_SIGN); +} + int main(int argc, char *argv[]) { int rc; @@ -251,6 +277,7 @@ int main(int argc, char *argv[]) cmocka_unit_test(torture_creds_anon_guess), cmocka_unit_test(torture_creds_parse_string), cmocka_unit_test(torture_creds_krb5_state), + cmocka_unit_test(torture_creds_gensec_feature), }; if (argc == 2) { |