diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ldapbonding.cpp | 14 | ||||
-rw-r--r-- | src/ldapconfigbase.ui | 35 |
2 files changed, 49 insertions, 0 deletions
diff --git a/src/ldapbonding.cpp b/src/ldapbonding.cpp index bf20050..abe4e95 100644 --- a/src/ldapbonding.cpp +++ b/src/ldapbonding.cpp @@ -102,6 +102,9 @@ LDAPConfig::LDAPConfig(TQWidget *parent, const char *name, const TQStringList&) connect(base->passwordHash, TQT_SIGNAL(activated(int)), this, TQT_SLOT(changed())); connect(base->ignoredUsers, TQT_SIGNAL(textChanged(const TQString&)), this, TQT_SLOT(changed())); + connect(base->pamEnablePKCS11Logons, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed())); + connect(base->pamEnablePKCS11Logons, TQT_SIGNAL(clicked()), this, TQT_SLOT(processLockouts())); + connect(base->pamPKCS11LoginCardSlot, TQT_SIGNAL(valueChanged(int)), this, TQT_SLOT(changed())); connect(base->pamEnableCachedLogons, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed())); connect(base->pamCreateHomeDirectory, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed())); connect(base->pamCreateHomeDirectory, TQT_SIGNAL(clicked()), this, TQT_SLOT(processLockouts())); @@ -165,6 +168,8 @@ void LDAPConfig::load(bool useDefaults ) } base->ignoredUsers->setText(m_clientRealmConfig.ignoredUsers); + base->pamEnablePKCS11Logons->setChecked(m_clientRealmConfig.pamConfig.enable_pkcs11_login); + base->pamPKCS11LoginCardSlot->setValue(m_clientRealmConfig.pamConfig.pkcs11_login_card_slot); base->pamEnableCachedLogons->setChecked(m_clientRealmConfig.pamConfig.enable_cached_credentials); base->pamCreateHomeDirectory->setChecked(m_clientRealmConfig.pamConfig.autocreate_user_directories_enable); base->pamCreateHomeDirectoryUmask->setValue(m_clientRealmConfig.pamConfig.autocreate_user_directories_umask); @@ -217,6 +222,8 @@ void LDAPConfig::save() { m_clientRealmConfig.passwordHash = base->passwordHash->currentText(); m_clientRealmConfig.ignoredUsers = base->ignoredUsers->text(); + m_clientRealmConfig.pamConfig.enable_pkcs11_login = base->pamEnablePKCS11Logons->isChecked(); + m_clientRealmConfig.pamConfig.pkcs11_login_card_slot = base->pamPKCS11LoginCardSlot->value(); m_clientRealmConfig.pamConfig.enable_cached_credentials = base->pamEnableCachedLogons->isChecked(); m_clientRealmConfig.pamConfig.autocreate_user_directories_enable = base->pamCreateHomeDirectory->isChecked(); m_clientRealmConfig.pamConfig.autocreate_user_directories_umask = base->pamCreateHomeDirectoryUmask->value(); @@ -343,6 +350,13 @@ void LDAPConfig::processLockouts() { base->pamCreateHomeDirectoryUmask->setEnabled(false); base->pamCreateHomeDirectorySkelDir->setEnabled(false); } + + if (base->pamEnablePKCS11Logons->isChecked()) { + base->pamPKCS11LoginCardSlot->setEnabled(true); + } + else { + base->pamPKCS11LoginCardSlot->setEnabled(false); + } } void LDAPConfig::bondToNewRealm() { diff --git a/src/ldapconfigbase.ui b/src/ldapconfigbase.ui index a889ac9..8c9b2db 100644 --- a/src/ldapconfigbase.ui +++ b/src/ldapconfigbase.ui @@ -454,6 +454,14 @@ <string>&Enable logon credentials cache</string> </property> </widget> + <widget class="TQCheckBox" row="2" column="0" colspan="2"> + <property name="name"> + <cstring>pamEnablePKCS11Logons</cstring> + </property> + <property name="text"> + <string>&Enable PKCS#11 card login</string> + </property> + </widget> <widget class="TQLabel" row="0" column="2"> <property name="name"> <cstring>unnamed</cstring> @@ -500,6 +508,33 @@ </sizepolicy> </property> </widget> + <widget class="TQLabel" row="2" column="2"> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <property name="text"> + <string>PKCS#11 certificate slot</string> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>0</hsizetype> + <vsizetype>0</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + <widget class="KIntNumInput" row="2" column="3" > + <property name="name"> + <cstring>pamPKCS11LoginCardSlot</cstring> + </property> + <property name="minValue"> + <number>0</number> + </property> + <property name="maxValue"> + <number>999</number> + </property> + </widget> <widget class="KURLRequester" row="1" column="3" > <property name="name"> <cstring>pamCreateHomeDirectorySkelDir</cstring> |