X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Foidentdconfiggenerator.h;h=375636cedfa25c0e69a2cd07d18d3ea3adda79e7;hb=6422c61b11d97f905b6a27f2d280e9ec0d8bb3e2;hp=eb936d8e9c108f3cd302f5c482fddffa80b90ddf;hpb=9d54503555534a2c554f09a33df6afa33d6308ec;p=quassel.git diff --git a/src/core/oidentdconfiggenerator.h b/src/core/oidentdconfiggenerator.h index eb936d8e..375636ce 100644 --- a/src/core/oidentdconfiggenerator.h +++ b/src/core/oidentdconfiggenerator.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2014 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -22,6 +22,7 @@ #define OIDENTDCONFIGGENERATOR_H #include +#include #include #include #include @@ -58,7 +59,11 @@ class OidentdConfigGenerator : public QObject { Q_OBJECT public: - explicit OidentdConfigGenerator(QObject *parent = 0); + /** + * @param strict If false, any identity a user chooses is reported to servers as authoritative. + * If true, the user's quassel username is always reported. + */ + explicit OidentdConfigGenerator(bool strict = false, QObject *parent = 0); ~OidentdConfigGenerator(); public slots: @@ -66,12 +71,14 @@ public slots: bool removeSocket(const CoreIdentity *identity, const QHostAddress &localAddress, quint16 localPort, const QHostAddress &peerAddress, quint16 peerPort); private: + QString sysIdentForIdentity(const CoreIdentity *identity) const; bool init(); bool writeConfig(); bool parseConfig(bool readQuasselStanzas = false); bool lineByUs(const QByteArray &line); bool _initialized; + bool _strict; QDateTime _lastSync; QFile *_configFile; QByteArray _parsedConfig;