You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
651 B
31 lines
651 B
14 years ago
|
#ifndef SMARTCARDAUTH_H
|
||
|
#define SMARTCARDAUTH_H
|
||
|
|
||
|
#include <private/qopensslhook_p.h>
|
||
|
#include <QtCore/QMutex>
|
||
|
|
||
|
class QWidget;
|
||
|
|
||
|
struct enum_certs_s;
|
||
|
|
||
|
class SmartCardAuth : public QOpenSslHook {
|
||
|
|
||
|
public:
|
||
|
SmartCardAuth(QWidget* parent=0);
|
||
|
~SmartCardAuth();
|
||
|
static void setPinDlgParent(QWidget* parent);
|
||
|
|
||
|
virtual bool hookInitSslContext(SSL_CTX* ctx);
|
||
|
|
||
|
private:
|
||
|
static int client_cert_cb(SSL *ssl, X509 **x509, EVP_PKEY **pkey);
|
||
|
static ENGINE* e;
|
||
|
static enum_certs_s* certs_found;
|
||
|
static QWidget* parent;
|
||
|
static bool pin_configured;
|
||
|
static bool pin_rejected;
|
||
|
static QMutex _mutex;
|
||
|
};
|
||
|
|
||
|
#endif // SMARTCARDAUTH_H
|