/***************************************************************************
- * Copyright (C) 2005-2016 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 *
bool Network::saslMaybeSupports(const QString &saslMechanism) const
{
+ if (!capAvailable(IrcCap::SASL)) {
+ // If SASL's not advertised at all, it's likely the mechanism isn't supported, as per specs.
+ // Unfortunately, we don't know for sure, but Quassel won't request SASL without it being
+ // advertised, anyways.
+ // This may also occur if the network's disconnected or negotiation hasn't yet happened.
+ return false;
+ }
+
// Get the SASL capability value
QString saslCapValue = capValue(IrcCap::SASL);
// SASL mechanisms are only specified in capability values as part of SASL 3.2. In SASL 3.1,
if (burstSize < 1) {
// Can't go slower than one message at a time. Also blocks old clients from trying to set
// this to 0.
- qWarning() << "Received invalid setMessageRateBurstSize data - message burst size must be "
- "non-zero positive, given" << burstSize;
+ qDebug() << "Received invalid setMessageRateBurstSize data - message burst size must be "
+ "non-zero positive, given" << burstSize;
return;
}
if (_messageRateBurstSize != burstSize) {
if (messageDelay == 0) {
// Nonsensical to have no delay - just check the Unlimited box instead. Also blocks old
// clients from trying to set this to 0.
- qWarning() << "Received invalid setMessageRateDelay data - message delay must be non-zero "
- "positive, given" << messageDelay;
+ qDebug() << "Received invalid setMessageRateDelay data - message delay must be non-zero "
+ "positive, given" << messageDelay;
return;
}
if (_messageRateDelay != messageDelay) {