identd: Remove unneeded strict attribute
[quassel.git] / src / core / oidentdconfiggenerator.cpp
index 1f877cb..c1bd71a 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-2015 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  *
@@ -18,6 +18,9 @@
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
+#include <QString>
+
+#include "corenetwork.h"
 #include "oidentdconfiggenerator.h"
 
 OidentdConfigGenerator::OidentdConfigGenerator(QObject *parent) :
@@ -66,10 +69,17 @@ bool OidentdConfigGenerator::init()
 }
 
 
+QString OidentdConfigGenerator::sysIdentForIdentity(const CoreIdentity *identity) const {
+    // Make sure the identity's ident complies with strict mode if enabled
+    const CoreNetwork *network = qobject_cast<CoreNetwork *>(sender());
+    return network->coreSession()->strictCompliantIdent(identity);
+}
+
+
 bool OidentdConfigGenerator::addSocket(const CoreIdentity *identity, const QHostAddress &localAddress, quint16 localPort, const QHostAddress &peerAddress, quint16 peerPort)
 {
     Q_UNUSED(localAddress) Q_UNUSED(peerAddress) Q_UNUSED(peerPort)
-    QString ident = identity->ident();
+    const QString ident = sysIdentForIdentity(identity);
 
     _quasselConfig.append(_quasselStanzaTemplate.arg(localPort).arg(ident).arg(_configTag).toLatin1());