KFW - Correct identity validation algorithm
authorJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 14 Dec 2005 19:21:10 +0000 (19:21 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 14 Dec 2005 19:21:10 +0000 (19:21 +0000)
Do not restrict the characters permitted in identity names

ticket: new
target_version: 1.4.4
tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17557 dc483132-0cff-0310-8789-dd5450dbe970

src/windows/identity/include/khmsgtypes.h
src/windows/identity/kcreddb/identity.c
src/windows/identity/kcreddb/kcreddb.h

index 9b63455e76d0a469b6a49c04d372964421978d01..c2237ca19163e50bf707da0d607fe1751784b8cd 100644 (file)
         name to be validated will be in the \a name_src member.  The\r
         buffer will be NULL terminated with a maximum limit of\r
         KCDB_IDENT_MAXCCH_NAME characters including the terminating\r
-        NULL, consisting only of characters in KCDB_IDENT_VALID_CHARS\r
+        NULL.\r
         The \a result member should be set to one of the following\r
         depending on the result of the validation:\r
 \r
index 896f723c5935a287426ba084281721bea20baa4d..e96c996081bfd76dcfdac1dba852fb0a65488b81 100644 (file)
@@ -1146,8 +1146,6 @@ kcdb_identpro_validate_name(const wchar_t * name)
        before calling the identity provider */\r
     if(FAILED(StringCchLength(name, KCDB_IDENT_MAXCCH_NAME, &cch)))\r
         return KHM_ERROR_TOO_LONG;\r
-    if(wcsspn(name, KCDB_IDENT_VALID_CHARS) != cch)\r
-        return KHM_ERROR_INVALID_NAME;\r
     \r
     EnterCriticalSection(&cs_ident);\r
     if(kcdb_ident_sub != NULL) {\r
@@ -1218,8 +1216,7 @@ kcdb_identpro_canon_name(
     khm_size cch;\r
 \r
     if(cb_name_out == 0 ||\r
-       FAILED(StringCchLength(name_in, KCDB_IDENT_MAXCCH_NAME, &cch)) ||\r
-       wcsspn(name_in, KCDB_IDENT_VALID_CHARS) != cch)\r
+       FAILED(StringCchLength(name_in, KCDB_IDENT_MAXCCH_NAME, &cch)))\r
         return KHM_ERROR_INVALID_NAME;\r
 \r
     EnterCriticalSection(&cs_ident);\r
index e1bbfb0bd605a8fdeaeee05ff02501a02bd3a4a2..52ca980ef5a7843f5c41dabd8510fc66af850661 100644 (file)
@@ -99,9 +99,6 @@ Functions, macros etc. for manipulating identities.
            name */\r
 #define KCDB_IDENT_MAXCB_NAME (sizeof(wchar_t) * KCDB_IDENT_MAXCCH_NAME)\r
 \r
-/*! \brief Valid characters in an identity name */\r
-#define KCDB_IDENT_VALID_CHARS L"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ._@-/"\r
-\r
 /*!\r
 \name Flags for identities */\r
 /*@{*/\r