test parsing enterprise-names.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@20224 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -232,6 +232,87 @@ test_princ(krb5_context context)
|
||||
krb5_free_principal(context, p);
|
||||
}
|
||||
|
||||
static void
|
||||
test_enterprise(krb5_context context)
|
||||
{
|
||||
krb5_error_code ret;
|
||||
char *unparsed;
|
||||
krb5_principal p;
|
||||
|
||||
ret = krb5_set_default_realm(context, "SAMBA.ORG");
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name");
|
||||
|
||||
ret = krb5_parse_name_flags(context, "lha@su.se@WIN.SU.SE",
|
||||
KRB5_PRINCIPAL_PARSE_ENTERPRISE, &p);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags");
|
||||
|
||||
ret = krb5_unparse_name(context, p, &unparsed);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_unparse_name");
|
||||
|
||||
krb5_free_principal(context, p);
|
||||
|
||||
if (strcmp(unparsed, "lha\\@su.se@WIN.SU.SE") != 0)
|
||||
krb5_errx(context, 1, "enterprise name failed 1");
|
||||
free(unparsed);
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
|
||||
ret = krb5_parse_name_flags(context, "lha\\@su.se@WIN.SU.SE",
|
||||
KRB5_PRINCIPAL_PARSE_ENTERPRISE, &p);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags");
|
||||
|
||||
ret = krb5_unparse_name(context, p, &unparsed);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_unparse_name");
|
||||
|
||||
krb5_free_principal(context, p);
|
||||
if (strcmp(unparsed, "lha\\@su.se\\@WIN.SU.SE@SAMBA.ORG") != 0)
|
||||
krb5_errx(context, 1, "enterprise name failed 2: %s", unparsed);
|
||||
free(unparsed);
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
|
||||
ret = krb5_parse_name_flags(context, "lha\\@su.se@WIN.SU.SE", 0, &p);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags");
|
||||
|
||||
ret = krb5_unparse_name(context, p, &unparsed);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_unparse_name");
|
||||
|
||||
krb5_free_principal(context, p);
|
||||
if (strcmp(unparsed, "lha\\@su.se@WIN.SU.SE") != 0)
|
||||
krb5_errx(context, 1, "enterprise name failed 3");
|
||||
free(unparsed);
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
|
||||
ret = krb5_parse_name_flags(context, "lha@su.se",
|
||||
KRB5_PRINCIPAL_PARSE_ENTERPRISE, &p);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags");
|
||||
|
||||
ret = krb5_unparse_name(context, p, &unparsed);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_unparse_name");
|
||||
|
||||
krb5_free_principal(context, p);
|
||||
if (strcmp(unparsed, "lha\\@su.se@SAMBA.ORG") != 0)
|
||||
krb5_errx(context, 1, "enterprise name failed 2: %s", unparsed);
|
||||
free(unparsed);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
@@ -246,6 +327,8 @@ main(int argc, char **argv)
|
||||
|
||||
test_princ(context);
|
||||
|
||||
test_enterprise(context);
|
||||
|
||||
krb5_free_context(context);
|
||||
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user