X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcore.h;h=f9746451f4c9fdd54543beac683977f061da6a19;hp=a17211d82dde273fa0121dc7109af164f27fbaaf;hb=10e6f4629e39c66cfb8db6ab2806bf8f13ec700b;hpb=1cb02004ee5973b89368bd84f234d4652794690d diff --git a/src/core/core.h b/src/core/core.h index a17211d8..f9746451 100644 --- a/src/core/core.h +++ b/src/core/core.h @@ -1,5 +1,5 @@ /*************************************************************************** - * 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 * @@ -74,6 +74,15 @@ public: return instance()->_storage->validateUser(userName, password); } + + //! Change a user's password + /** + * \param userId The user's ID + * \param password The user's unencrypted new password + * \return true, if the password change was successful + */ + static bool changeUserPassword(UserId userId, const QString &password); + //! Store a user setting persistently /** * \param userId The users Id @@ -485,8 +494,29 @@ public: static inline QDateTime startTime() { return instance()->_startTime; } static inline bool isConfigured() { return instance()->_configured; } static bool sslSupported(); + + /** + * Reloads SSL certificates used for connection with clients + * + * @return True if certificates reloaded successfully, otherwise false. + */ + static bool reloadCerts(); + static QVariantList backendInfo(); + /** + * Checks if a storage backend is the default storage backend. This + * hardcodes this information into the core (not the client). + * + * \param backend The backend to check. + * + * @return True if storage backend is default, false otherwise. + */ + static inline bool isStorageBackendDefault(const Storage *backend) + { + return (backend->displayName() == "SQLite") ? true : false; + } + static QString setup(const QString &adminUser, const QString &adminPassword, const QString &backend, const QVariantMap &setupData); static inline QTimer &syncTimer() { return instance()->_storageSyncTimer; } @@ -524,6 +554,8 @@ private slots: void socketError(QAbstractSocket::SocketError err, const QString &errorString); void setupClientSession(RemotePeer *, UserId); + bool changeUserPass(const QString &username); + private: Core(); ~Core(); @@ -540,9 +572,8 @@ private: void unregisterStorageBackends(); void unregisterStorageBackend(Storage *); bool selectBackend(const QString &backend); - void createUser(); - void changeUserPass(const QString &username); - void saveBackendSettings(const QString &backend, const QVariantMap &settings); + bool createUser(); + bool saveBackendSettings(const QString &backend, const QVariantMap &settings); QVariantMap promptForSettings(const Storage *storage); private: