if (Quassel::isOptionSet("oidentd")) {
_oidentdConfigGenerator = new OidentdConfigGenerator(Quassel::isOptionSet("oidentd-strict"), this);
if (Quassel::isOptionSet("oidentd-strict")) {
- cacheSysident();
+ cacheSysIdent();
}
}
}
quInfo() << qPrintable(tr("Creating admin user..."));
_storage->addUser(adminUser, adminPassword);
- cacheSysident();
+ cacheSysIdent();
startListening(); // TODO check when we need this
return QString();
}
#endif
}
-void Core::cacheSysident() {
- if(isConfigured()) {
- instance()->_authusernames = instance()->_storage->getAllAuthusernames();
+
+void Core::cacheSysIdent()
+{
+ if (isConfigured()) {
+ instance()->_authUserNames = instance()->_storage->getAllAuthUserNames();
}
}
-QString Core::strictSysident(UserId user) {
- QMap<UserId, QString> *allAuthusernames = &instance()->_authusernames;
- auto authusername = allAuthusernames->find(user);
- if (authusername == allAuthusernames->end()) {
- // A new user got added since we last pulled our cache from the database.
- // There's no way to avoid a database hit - we don't even know the authname!
- cacheSysident();
- authusername = allAuthusernames->find(user);
- if (authusername == allAuthusernames->end()) {
- // ...something very weird is going on if we ended up here (an active CoreSession without a corresponding database entry?)
- QDebug d = qWarning();
- d << "Unable to find authusername for UserId" << user;
- d.nospace();
- d << ", this should never happen!";
- return "unknown"; // Should we just terminate the program instead?
- }
+
+QString Core::strictSysIdent(UserId user) const
+{
+ if (_authUserNames.contains(user)) {
+ return _authUserNames[user];
}
- return *authusername;
+
+ // A new user got added since we last pulled our cache from the database.
+ // There's no way to avoid a database hit - we don't even know the authname!
+ cacheSysIdent();
+
+ if (_authUserNames.contains(user)) {
+ return _authUserNames[user];
+ }
+
+ // ...something very weird is going on if we ended up here (an active CoreSession without a corresponding database entry?)
+ qWarning().nospace() << "Unable to find authusername for UserId " << user << ", this should never happen!";
+ return "unknown"; // Should we just terminate the program instead?
}
+
bool Core::startListening()
{
// in mono mode we only start a local port if a port is specified in the cli call