X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fldapauthenticator.cpp;h=02f927d03d5da39cf4071b8b1e89359ea6cb9071;hp=0eedc3c99691b7379000be3ae514dae9a131663f;hb=HEAD;hpb=a95ad2de573027f9bee36db972bcae4195168d0c diff --git a/src/core/ldapauthenticator.cpp b/src/core/ldapauthenticator.cpp index 0eedc3c9..89b390fc 100644 --- a/src/core/ldapauthenticator.cpp +++ b/src/core/ldapauthenticator.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2020 by the Quassel Project * + * Copyright (C) 2005-2022 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -28,11 +28,12 @@ #include "ldapauthenticator.h" +#include "ldapescaper.h" #include "network.h" #include "quassel.h" /* We should use openldap on windows if at all possible, rather than trying to - * write some kind of compatiblity routine. + * write some kind of compatibility routine. #ifdef Q_CC_MSVC #include #include @@ -241,7 +242,7 @@ bool LdapAuthenticator::ldapAuth(const QString& username, const QString& passwor LDAPMessage *msg = nullptr, *entry = nullptr; - const QByteArray ldapQuery = "(&(" + uidAttribute + '=' + username.toLocal8Bit() + ")" + _filter.toLocal8Bit() + ")"; + const QByteArray ldapQuery = "(&(" + uidAttribute + '=' + LdapEscaper::escapeQuery(username).toLatin1() + ")" + _filter.toLocal8Bit() + ")"; res = ldap_search_ext_s(_connection, baseDN.constData(),