/***************************************************************************
- * Copyright (C) 2005-2015 by the Quassel Project *
+ * Copyright (C) 2005-2016 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
*
*/
-#ifndef LDAPAUTHENTICATOR_H
-#define LDAPAUTHENTICATOR_H
+#pragma once
#include "authenticator.h"
//#endif
// Default LDAP server port.
-#define DEFAULT_LDAP_PORT 389
+constexpr int DEFAULT_LDAP_PORT = 389;
class LdapAuthenticator : public Authenticator
{
public:
LdapAuthenticator(QObject *parent = 0);
- virtual ~LdapAuthenticator();
+ ~LdapAuthenticator() override;
public slots:
/* General */
- bool isAvailable() const;
- QString backendId() const;
- QString description() const;
- virtual QStringList setupKeys() const;
- virtual QVariantMap setupDefaults() const;
+ bool isAvailable() const override;
+ QString backendId() const override;
+ QString displayName() const override;
+ QString description() const override;
+ QVariantList setupData() const override;
- virtual inline bool canChangePassword() const { return false; }
+ bool canChangePassword() const override { return false; }
- bool setup(const QVariantMap &settings = QVariantMap());
- State init(const QVariantMap &settings = QVariantMap());
- UserId validateUser(const QString &user, const QString &password);
+ bool setup(const QVariantMap &settings = {}) override;
+ State init(const QVariantMap &settings = {}) override;
+ UserId validateUser(const QString &user, const QString &password) override;
protected:
- virtual void setConnectionProperties(const QVariantMap &properties);
+ void setAuthProperties(const QVariantMap &properties);
bool ldapConnect();
void ldapDisconnect();
bool ldapAuth(const QString &username, const QString &password);
// Protected methods for retrieving info about the LDAP connection.
- inline virtual QString hostName() { return _hostName; }
- inline virtual int port() { return _port; }
- inline virtual QString bindDN() { return _bindDN; }
- inline virtual QString baseDN() { return _baseDN; }
+ QString hostName() const { return _hostName; }
+ int port() const { return _port; }
+ QString bindDN() const { return _bindDN; }
+ QString baseDN() const { return _baseDN; }
private:
QString _hostName;
QString _uidAttribute;
// The actual connection object.
- LDAP *_connection;
-
+ LDAP *_connection {nullptr};
};
-
-
-#endif