summaryrefslogtreecommitdiffstats
path: root/tdm/kfrontend/kgreeter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tdm/kfrontend/kgreeter.cpp')
-rw-r--r--tdm/kfrontend/kgreeter.cpp92
1 files changed, 53 insertions, 39 deletions
diff --git a/tdm/kfrontend/kgreeter.cpp b/tdm/kfrontend/kgreeter.cpp
index 7f45ca197..a9901b08c 100644
--- a/tdm/kfrontend/kgreeter.cpp
+++ b/tdm/kfrontend/kgreeter.cpp
@@ -22,6 +22,10 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include "kgreeter.h"
#include "kconsole.h"
#include "tdmconfig.h"
@@ -35,17 +39,18 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include <dmctl.h>
+#ifdef WITH_TDEHWLIB
#include <ksslcertificate.h>
-
#include <tdehardwaredevices.h>
#include <tdecryptographiccarddevice.h>
+#endif
#include <tdeapplication.h>
#include <tdelocale.h>
-#include <kstandarddirs.h>
+#include <tdestandarddirs.h>
#include <kseparator.h>
#include <tdelistview.h>
-#include <ksimpleconfig.h>
+#include <tdesimpleconfig.h>
#include <kstringhandler.h>
#include <kdebug.h>
#include <kdialog.h>
@@ -99,9 +104,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include <X11/Xlib.h>
-#ifdef HAVE_KRB5
-#include <libtdeldap.h>
-#endif
#define FIFO_DIR "/tmp/tdesocket-global/tdm"
#define FIFO_FILE "/tmp/tdesocket-global/tdm/tdmctl-%1"
@@ -121,8 +123,8 @@ class UserListView : public TDEListView {
// FIXME: This must be configurable, so disable
// painting of list background for now.
// if (themed) {
-// setBackgroundMode( Qt::NoBackground );
-// viewport()->setBackgroundMode( Qt::NoBackground );
+// setBackgroundMode( TQt::NoBackground );
+// viewport()->setBackgroundMode( TQt::NoBackground );
// setFrameStyle( TQFrame::NoFrame );
// }
}
@@ -167,7 +169,7 @@ public:
// painting of list background for now.
return TDEListView::paintEmptyArea(p, rect );
- const TQPixmap *pm = TQT_TQPIXMAP_CONST(paletteBackgroundPixmap());
+ const TQPixmap *pm = paletteBackgroundPixmap();
if (!pm || pm->isNull()) {
return;
}
@@ -199,24 +201,24 @@ KGreeter::KGreeter( bool framed )
, showInfoMessages( true )
, closingDown( false )
{
- stsFile = new KSimpleConfig( _stsFile );
+ stsFile = new TDESimpleConfig( _stsFile );
stsFile->setGroup( "PrevUser" );
if (_userList) {
readFacesList();
userView = new UserListView( framed, this );
- connect( userView, TQT_SIGNAL(clicked( TQListViewItem * )),
- TQT_SLOT(slotUserClicked( TQListViewItem * )) );
- connect( userView, TQT_SIGNAL(doubleClicked( TQListViewItem * )),
- TQT_SLOT(accept()) );
+ connect( userView, TQ_SIGNAL(clicked( TQListViewItem * )),
+ TQ_SLOT(slotUserClicked( TQListViewItem * )) );
+ connect( userView, TQ_SIGNAL(doubleClicked( TQListViewItem * )),
+ TQ_SLOT(accept()) );
}
if (_userCompletion) {
userList = new TQStringList;
}
sessMenu = new TQPopupMenu( this );
- connect( sessMenu, TQT_SIGNAL(activated( int )),
- TQT_SLOT(slotSessionSelected( int )) );
+ connect( sessMenu, TQ_SIGNAL(activated( int )),
+ TQ_SLOT(slotSessionSelected( int )) );
insertSessions();
if (curPlugin < 0) {
@@ -228,8 +230,8 @@ KGreeter::KGreeter( bool framed )
mControlPipeHandler = new ControlPipeHandlerObject();
mControlPipeHandler->mKGreeterParent = this;
mControlPipeHandler->moveToThread(mControlPipeHandlerThread);
- TQObject::connect(mControlPipeHandler, SIGNAL(processCommand(TQString)), this, SLOT(processInputPipeCommand(TQString)));
- TQTimer::singleShot(0, mControlPipeHandler, SLOT(run()));
+ TQObject::connect(mControlPipeHandler, TQ_SIGNAL(processCommand(TQString)), this, TQ_SLOT(processInputPipeCommand(TQString)));
+ TQTimer::singleShot(0, mControlPipeHandler, TQ_SLOT(run()));
mControlPipeHandlerThread->start();
}
@@ -249,16 +251,18 @@ KGreeter::~KGreeter()
void KGreeter::cryptographicCardWatcherSetup() {
cardLoginUser = TQString::null;
+#ifdef WITH_TDEHWLIB
// Initialize SmartCard readers
TDEGenericDevice *hwdevice;
TDEHardwareDevices *hwdevices = TDEGlobal::hardwareDevices();
TDEGenericHardwareList cardReaderList = hwdevices->listByDeviceClass(TDEGenericDeviceType::CryptographicCard);
for (hwdevice = cardReaderList.first(); hwdevice; hwdevice = cardReaderList.next()) {
TDECryptographicCardDevice* cdevice = static_cast<TDECryptographicCardDevice*>(hwdevice);
- connect(cdevice, TQT_SIGNAL(certificateListAvailable(TDECryptographicCardDevice*)), this, TQT_SLOT(cryptographicCardInserted(TDECryptographicCardDevice*)));
- connect(cdevice, TQT_SIGNAL(cardRemoved(TDECryptographicCardDevice*)), this, TQT_SLOT(cryptographicCardRemoved(TDECryptographicCardDevice*)));
+ connect(cdevice, TQ_SIGNAL(certificateListAvailable(TDECryptographicCardDevice*)), this, TQ_SLOT(cryptographicCardInserted(TDECryptographicCardDevice*)));
+ connect(cdevice, TQ_SIGNAL(cardRemoved(TDECryptographicCardDevice*)), this, TQ_SLOT(cryptographicCardRemoved(TDECryptographicCardDevice*)));
cdevice->enableCardMonitoring(true);
}
+#endif
}
void KGreeter::done(int r) {
@@ -389,7 +393,7 @@ KGreeter::insertUser( const TQImage &default_pix,
TQBuffer buf( fc );
buf.open( IO_ReadOnly );
TQImageIO ir;
- ir.setIODevice( TQT_TQIODEVICE(&buf) );
+ ir.setIODevice( &buf );
if (!ir.read()) {
LogInfo( "%s is no valid image\n", fn.data() );
continue;
@@ -397,7 +401,7 @@ KGreeter::insertUser( const TQImage &default_pix,
p = ir.image();
TQSize ns( 48, 48 );
if (p.size() != ns) {
- p = p.convertDepth( 32 ).smoothScale( ns, TQ_ScaleMin );
+ p = p.convertDepth( 32 ).smoothScale( ns, TQImage::ScaleMin );
}
break;
} while (--nd >= 0);
@@ -486,7 +490,7 @@ KGreeter::insertUsers(int limit_users)
TQSize ns( 48, 48 );
if (default_pix.size() != ns)
default_pix =
- default_pix.convertDepth( 32 ).smoothScale( ns, TQ_ScaleMin );
+ default_pix.convertDepth( 32 ).smoothScale( ns, TQImage::ScaleMin );
}
if (_showUsers == SHOW_ALL) {
KGreeterUserList noUsers( _noUsers );
@@ -611,7 +615,7 @@ KGreeter::insertSessions()
TQStringList ents = TQDir( *dit ).entryList();
for (TQStringList::ConstIterator it = ents.begin(); it != ents.end(); ++it)
if ((*it).endsWith( ".desktop" ) && !(*it).endsWith("admin.desktop")) {
- KSimpleConfig dsk( TQString( *dit ).append( '/' ).append( *it ) );
+ TDESimpleConfig dsk( TQString( *dit ).append( '/' ).append( *it ) );
dsk.setGroup( "Desktop Entry" );
putSession( (*it).left( (*it).length() - 8 ),
dsk.readEntry( "Name" ),
@@ -652,7 +656,7 @@ KGreeter::slotUserEntered()
if (isVisible())
slotLoadPrevWM();
else
- TQTimer::singleShot( 0, this, TQT_SLOT(slotLoadPrevWM()) );
+ TQTimer::singleShot( 0, this, TQ_SLOT(slotLoadPrevWM()) );
}
void
@@ -861,15 +865,20 @@ KGreeter::verifySetUser( const TQString &user )
}
void KGreeter::cryptographicCardInserted(TDECryptographicCardDevice* cdevice) {
-#ifdef HAVE_KRB5
- // Make sure card logins are enabled before attempting one
- if (!LDAPManager::pkcsLoginEnabled()) {
- return;
- }
-#else
+#ifdef WITH_TDEHWLIB
+#ifndef HAVE_KRB5
// Don't enable card-based logins if Kerberos integration was disabled
return;
#endif
+ // Make sure card logins are enabled before attempting one
+ TDESimpleConfig *systemconfig = new TDESimpleConfig( TQString::fromLatin1( KDE_CONFDIR "/ldap/ldapconfigrc" ));
+ systemconfig->setGroup(NULL);
+ bool enabled = systemconfig->readBoolEntry("EnablePKCS11Login", false);
+ delete systemconfig;
+ if (!enabled)
+ {
+ return;
+ }
TQString login_name = TQString::null;
X509CertificatePtrList certList = cdevice->cardX509Certificates();
@@ -936,9 +945,11 @@ void KGreeter::cryptographicCardInserted(TDECryptographicCardDevice* cdevice) {
verify->accept();
}
}
+#endif
}
void KGreeter::cryptographicCardRemoved(TDECryptographicCardDevice* cdevice) {
+#ifdef WITH_TDEHWLIB
cardLoginUser = TQString::null;
userView->setEnabled(false);
verify->lockUserEntry(false);
@@ -950,6 +961,7 @@ void KGreeter::cryptographicCardRemoved(TDECryptographicCardDevice* cdevice) {
verify->cardLoginInProgress = false;
verify->cardLoginDevice = NULL;
+#endif
}
KStdGreeter::KStdGreeter()
@@ -981,7 +993,7 @@ KStdGreeter::KStdGreeter()
"open windows on it or intercept your input.") );
complainLabel->setAlignment( AlignCenter );
complainLabel->setFont( _failFont );
- complainLabel->setPaletteForegroundColor( Qt::red );
+ complainLabel->setPaletteForegroundColor( TQt::red );
inner_box->addWidget( complainLabel );
}
if (_logoArea == LOGO_NONE) {
@@ -1008,7 +1020,7 @@ KStdGreeter::KStdGreeter()
case LOGO_LOGO:
{
TQMovie movie( _logo );
- kapp->eventLoop()->processEvents( TQEventLoop::ExcludeUserInput | TQEventLoop::ExcludeSocketNotifiers, 100 );
+ tdeApp->eventLoop()->processEvents( TQEventLoop::ExcludeUserInput | TQEventLoop::ExcludeSocketNotifiers, 100 );
TQPixmap pixmap;
if (!movie.framePixmap().isNull() || pixmap.load( _logo )) {
pixLabel = new TQLabel( this );
@@ -1041,7 +1053,7 @@ KStdGreeter::KStdGreeter()
goButton = new TQPushButton( i18n("L&ogin"), this );
goButton->setDefault( true );
- connect( goButton, TQT_SIGNAL(clicked()), TQT_SLOT(accept()) );
+ connect( goButton, TQ_SIGNAL(clicked()), TQ_SLOT(accept()) );
menuButton = new TQPushButton( i18n("&Menu"), this );
//helpButton
@@ -1100,7 +1112,7 @@ KStdGreeter::KStdGreeter()
verify->setInfoMessageDisplay(showInfoMessages);
verify->start();
- TQTimer::singleShot(0, this, SLOT(cryptographicCardWatcherSetup()));
+ TQTimer::singleShot(0, this, TQ_SLOT(cryptographicCardWatcherSetup()));
}
void
@@ -1156,8 +1168,8 @@ KThemedGreeter::KThemedGreeter()
return;
}
- connect( themer, TQT_SIGNAL(activated( const TQString & )),
- TQT_SLOT(slotThemeActivated( const TQString & )) );
+ connect( themer, TQ_SIGNAL(activated( const TQString & )),
+ TQ_SLOT(slotThemeActivated( const TQString & )) );
console_rect = themer->findNode( "xconsole" ); // tdm ext
userlist_rect = themer->findNode( "userlist" );
@@ -1244,14 +1256,14 @@ KThemedGreeter::KThemedGreeter()
system_button = themer->findNode( "system_button" );
TQAccel *accel = new TQAccel( this );
accel->insertItem( ALT+Key_M, 0 );
- connect( accel, TQT_SIGNAL(activated( int )), TQT_SLOT(slotActionMenu()) );
+ connect( accel, TQ_SIGNAL(activated( int )), TQ_SLOT(slotActionMenu()) );
pluginSetup();
verify->setInfoMessageDisplay(showInfoMessages);
verify->start();
- TQTimer::singleShot(0, this, SLOT(cryptographicCardWatcherSetup()));
+ TQTimer::singleShot(0, this, TQ_SLOT(cryptographicCardWatcherSetup()));
}
bool
@@ -1330,9 +1342,11 @@ KThemedGreeter::updateStatus( bool fail, bool caps, int timedleft )
}
}
+#ifdef WITH_TDEHWLIB
if (cardLoginUser != TQString::null) {
verify->setPasswordPrompt(i18n("PIN:"));
}
+#endif
}
void