int sleepInterval = DEFAULT_SLEEP_INTERVAL; /* seconds */
BOOLEAN afsWillAutoStart;
CHAR RandomName[MAXRANDOMNAMELEN];
+ BOOLEAN uppercased_name = TRUE;
/* Initialize Logon Script to none */
*lpLogonScript=NULL;
ctemp = strchr(uname, '@');
if (ctemp) *ctemp = 0;
+ /* is the name all uppercase? */
+ for ( ctemp = uname; *ctemp ; ctemp++) {
+ if ( islower(*ctemp) ) {
+ uppercased_name = FALSE;
+ break;
+ }
+ }
+
(void) RegOpenKeyEx(HKEY_LOCAL_MACHINE, REG_CLIENT_PARMS_KEY,
0, KEY_QUERY_VALUE, &NPKey);
LSPsize=sizeof(TraceOption);
RegCloseKey (NPKey);
if ((code!=0) || (LSPtype!=REG_DWORD))
LogonOption=LOGON_OPTION_INTEGRATED; /*default to integrated logon only*/
- DebugEvent("AFS AfsLogon - NPLogonNotify","LogonOption[%x], Service AutoStart[%d]",
- LogonOption,AFSWillAutoStart());
+ afsWillAutoStart = AFSWillAutoStart();
+
+ DebugEvent("AFS AfsLogon - NPLogonNotify","LogonOption[%x], Service AutoStart[%d]",
+ LogonOption,afsWillAutoStart);
/* Get local machine specified login behavior (or defaults) */
GetLoginBehavior(&retryInterval, &failSilently);
- afsWillAutoStart = AFSWillAutoStart();
-
/* Check for zero length password if integrated logon*/
if ( ISLOGONINTEGRATED(LogonOption) ) {
if ( password[0] == 0 ) {
&reason);
DebugEvent("AFS AfsLogon - (INTEGRATED only)ka_UserAuthenticateGeneral2","Code[%x]",
code);
+ if ( code && code != KTC_NOCM && code != KTC_NOCMRPC && uppercased_name ) {
+ for ( ctemp = uname; *ctemp ; ctemp++) {
+ *ctemp = tolower(*ctemp);
+ }
+ uppercased_name = FALSE;
+ continue;
+ }
}
/* if Integrated Logon and High Security pass random generated name*/
else if (ISLOGONINTEGRATED(LogonOption) && ISHIGHSECURITY(LogonOption))
&reason);
DebugEvent("AFS AfsLogon - (Both)ka_UserAuthenticateGeneral2","Code[%x] RandomName[%s]",
code, RandomName);
+
+ if ( code && code != KTC_NOCM && code != KTC_NOCMRPC && uppercased_name ) {
+ for ( ctemp = uname; *ctemp ; ctemp++) {
+ *ctemp = tolower(*ctemp);
+ }
+ uppercased_name = FALSE;
+ continue;
+ }
} else {
/*JUST check to see if its running*/
if (IsServiceRunning())