diff --git a/src/libtdeldap.cpp b/src/libtdeldap.cpp index 1f35469..3220f7c 100644 --- a/src/libtdeldap.cpp +++ b/src/libtdeldap.cpp @@ -978,10 +978,18 @@ int LDAPManager::setPasswordForUser(LDAPUserInfo user, TQString *errstr) { } if (prompt.endsWith(" Password:")) { if (admincreds.password == "") { - TQCString password; - int result = KPasswordDialog::getPassword(password, prompt); - if (result == KPasswordDialog::Accepted) { - admincreds.password = password; + if (tqApp->type() != TQApplication::Tty) { + TQCString password; + int result = KPasswordDialog::getPassword(password, prompt); + if (result == KPasswordDialog::Accepted) { + admincreds.password = password; + } + } + else { + TQFile file; + file.open(IO_ReadOnly, stdin); + TQTextStream qtin(&file); + admincreds.password = qtin.readLine(); } } if (admincreds.password != "") { @@ -1633,10 +1641,18 @@ int LDAPManager::addServiceInfo(LDAPServiceInfo service, TQString *errstr) { while (prompt != "kadmin>") { if (prompt.endsWith(" Password:")) { if (admincreds.password == "") { - TQCString password; - int result = KPasswordDialog::getPassword(password, prompt); - if (result == KPasswordDialog::Accepted) { - admincreds.password = password; + if (tqApp->type() != TQApplication::Tty) { + TQCString password; + int result = KPasswordDialog::getPassword(password, prompt); + if (result == KPasswordDialog::Accepted) { + admincreds.password = password; + } + } + else { + TQFile file; + file.open(IO_ReadOnly, stdin); + TQTextStream qtin(&file); + admincreds.password = qtin.readLine(); } } if (admincreds.password != "") {