diff -up kdebase-4.5.1/apps/kdepasswd/kcm/chfnprocess.cpp.orig kdebase-4.5.1/apps/kdepasswd/kcm/chfnprocess.cpp
--- kdebase-4.5.1/apps/kdepasswd/kcm/chfnprocess.cpp.orig 2010-09-29 18:28:02.000000000 +0200
+++ kdebase-4.5.1/apps/kdepasswd/kcm/chfnprocess.cpp 2010-09-30 14:39:38.000000000 +0200
@@ -63,19 +63,16 @@ int ChfnProcess::ConverseChfn(const char
break;
}
- if ( line.contains( "Password: " )/*isPrompt( line, "password" )*/ )
+ if ( line.contains( "Changing finger info" ) )
+ {
+ // do nothing
+ }
+ else if ( line.contains( "Password: " )/*isPrompt( line, "password" )*/ )
{
WaitSlave();
write(fd(), pass, strlen(pass));
write(fd(), "\n", 1);
}
-
- line = readLine(); // Let's see what the outcome was
-
- if ( line.contains( "Changing finger info" ) )
- {
- // do nothing
- }
else if ( line.contains( "information changed" ) )
{
status=0;
@@ -86,7 +83,7 @@ int ChfnProcess::ConverseChfn(const char
status=0;
break;
}
- else if ( line.contains( "Password error" ) || line.contains("Incorrect password") )
+ else if ( line.contains( "Password error" ) || line.contains("Incorrect password") || line.contains("Authentication failure") )
{
status=PasswordError;
break;