From 0a18f91d26c816c23cdeccd7f675619467af0860 Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Tue, 8 Aug 2000 01:53:16 +0000 Subject: [PATCH] krb5_principal_match git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@8913 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/principal.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/lib/krb5/principal.c b/lib/krb5/principal.c index 473f8601d..fea18d49e 100644 --- a/lib/krb5/principal.c +++ b/lib/krb5/principal.c @@ -539,6 +539,28 @@ krb5_realm_compare(krb5_context context, return strcmp(princ_realm(princ1), princ_realm(princ2)) == 0; } +/* + * return TRUE iff princ matches pattern + */ + +krb5_boolean +krb5_principal_match(krb5_context context, + krb5_const_principal princ, + krb5_const_principal pattern) +{ + int i; + if(princ_num_comp(princ) != princ_num_comp(pattern)) + return FALSE; + if(fnmatch(princ_realm(pattern), princ_realm(princ), 0) != 0) + return FALSE; + for(i = 0; i < princ_num_comp(princ); i++){ + if(fnmatch(princ_ncomp(pattern, i), princ_ncomp(princ, i), 0) != 0) + return FALSE; + } + return TRUE; +} + + struct v4_name_convert { const char *from; const char *to;