//============================================================================= // // File : KviProxy.cpp // Creation date : Wed Dec 29 2010 01:58:01 by Elvio Basello // // This file is part of the KVIrc IRC client distribution // Copyright (C) 2010 Elvio Basello (hellvis69 at gmail dot com) // // This program is FREE software. You can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the HOPE that it will be USEFUL, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. // See the GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, write to the Free Software Foundation, // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // //============================================================================= #include "KviProxy.h" #include KviProxy::KviProxy() { m_szHostname = "proxy.example.net"; m_uPort = 1080; m_protocol = Socks4; m_bIsIPv6 = false; } KviProxy::~KviProxy() = default; static const QStringList proxy_protocols_table{ "SOCKSv4", "SOCKSv5", "HTTP" }; const QString KviProxy::protocolName() const { switch(m_protocol) { case Socks5: return proxy_protocols_table[1]; break; case Http: return proxy_protocols_table[2]; break; default: return proxy_protocols_table[0]; } } void KviProxy::setNamedProtocol(const QString & proto) { if(proto.compare(proxy_protocols_table[1], Qt::CaseInsensitive) == 0) m_protocol = KviProxy::Socks5; else if(proto.compare(proxy_protocols_table[2], Qt::CaseInsensitive) == 0) m_protocol = KviProxy::Http; else m_protocol = KviProxy::Socks4; } QStringList KviProxy::getSupportedProtocolNames() { return proxy_protocols_table; } void KviProxy::normalizeUserAndPass() { m_szUser = m_szUser.trimmed(); m_szPass = m_szPass.trimmed(); }