summaryrefslogtreecommitdiff
path: root/source4/torture/krb5
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2015-01-23 14:28:56 +1300
committerAndrew Bartlett <abartlet@samba.org>2015-01-23 05:42:08 +0100
commit157539c5ad9b819e43dceee6bb47d2027de1d982 (patch)
tree893854a6fc83a6f4d64163e13816e42ffe31a69c /source4/torture/krb5
parent9d7719b62ba0453b7c4e4b8a4c2062dc55ac4abd (diff)
downloadsamba-157539c5ad9b819e43dceee6bb47d2027de1d982.tar.gz
torture-krb5: Move checking of server and client names to krb5.kdc.canon
This keeps this test in one place, rather than duplicated between krb5.kdc and krb5.kdc.canon Signed-off-by: Garming Sam <garming@catalyst.net.nz> Pair-programmed-with: Garming Sam <garming@catalyst.net.nz> Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/torture/krb5')
-rw-r--r--source4/torture/krb5/kdc-canon.c26
-rw-r--r--source4/torture/krb5/kdc.c19
2 files changed, 25 insertions, 20 deletions
diff --git a/source4/torture/krb5/kdc-canon.c b/source4/torture/krb5/kdc-canon.c
index 018e61d6e97..a12ee865aa2 100644
--- a/source4/torture/krb5/kdc-canon.c
+++ b/source4/torture/krb5/kdc-canon.c
@@ -391,16 +391,40 @@ static bool torture_krb5_as_req_canon(struct torture_context *tctx, const void *
my_creds.client, expected_principal),
assertion_message);
+
torture_assert_int_equal(tctx,
krb5_principal_get_type(smb_krb5_context->krb5_context,
my_creds.server), KRB5_NT_SRV_INST,
- "smb_krb5_init_context gave incorrect client->name.name_type");
+ "smb_krb5_init_context gave incorrect server->name.name_type");
+
+ torture_assert_int_equal(tctx,
+ krb5_principal_get_num_comp(smb_krb5_context->krb5_context,
+ my_creds.server), 2,
+ "smb_krb5_init_context gave incorrect number of components in my_creds.server->name");
torture_assert_str_equal(tctx, krb5_principal_get_comp_string(smb_krb5_context->krb5_context,
my_creds.server, 0),
"krbtgt",
"smb_krb5_init_context gave incorrect my_creds.server->name.name_string[0]");
+ if (test_data->canonicalize || test_data->enterprise) {
+ torture_assert_str_equal(tctx, krb5_principal_get_comp_string(smb_krb5_context->krb5_context,
+ my_creds.server, 1),
+ test_data->real_realm,
+
+ "smb_krb5_init_context gave incorrect my_creds.server->name.name_string[1]");
+ } else {
+ torture_assert_str_equal(tctx, krb5_principal_get_comp_string(smb_krb5_context->krb5_context,
+ my_creds.server, 1),
+ realm,
+
+ "smb_krb5_init_context gave incorrect my_creds.server->name.name_string[1]");
+ }
+ torture_assert_str_equal(tctx, krb5_principal_get_realm(smb_krb5_context->krb5_context,
+ my_creds.server),
+ test_data->real_realm,
+ "smb_krb5_init_context gave incorrect my_creds.server->realm");
+
krb5_free_principal(smb_krb5_context->krb5_context, principal);
k5ret = krb5_free_cred_contents(smb_krb5_context->krb5_context, &my_creds);
diff --git a/source4/torture/krb5/kdc.c b/source4/torture/krb5/kdc.c
index 3eec5280977..a7b6ac83a3a 100644
--- a/source4/torture/krb5/kdc.c
+++ b/source4/torture/krb5/kdc.c
@@ -386,25 +386,6 @@ static bool torture_krb5_as_req_creds(struct torture_context *tctx,
}
- torture_assert_int_equal(tctx,
- krb5_principal_get_type(smb_krb5_context->krb5_context,
- my_creds.client), KRB5_NT_PRINCIPAL,
- "smb_krb5_init_context gave incorrect client->name.name_type");
-
- torture_assert(tctx, krb5_principal_compare(smb_krb5_context->krb5_context,
- principal, my_creds.client),
- "krb5_get_init_creds_password returned a different principal");
-
- torture_assert_int_equal(tctx,
- krb5_principal_get_type(smb_krb5_context->krb5_context,
- my_creds.server), KRB5_NT_SRV_INST,
- "smb_krb5_init_context gave incorrect client->name.name_type");
-
- torture_assert_str_equal(tctx, krb5_principal_get_comp_string(smb_krb5_context->krb5_context,
- my_creds.server, 0),
- "krbtgt",
- "smb_krb5_init_context gave incorrect my_creds.server->name.name_string[0]");
-
k5ret = krb5_free_cred_contents(smb_krb5_context->krb5_context, &my_creds);
torture_assert_int_equal(tctx, k5ret, 0, "krb5_free_creds failed");