- std::string host, ip;
-
- if (!ReadCGIIRCExt("cgiirc_webirc_hostname", user, host))
- {
- host = user->host;
- }
- if (!ReadCGIIRCExt("cgiirc_webirc_ip", user, ip))
- {
- ip = user->GetIPString();
- }
- else
- {
- /* IP addresses starting with a : on irc are a Bad Thing (tm) */
- if (ip.c_str()[0] == ':')
- ip.insert(ip.begin(),1,'0');
- }
-
- parameterlist params;
- params.push_back(sasl_target);
- params.push_back("SASL");
- params.push_back(user->uuid);
- params.push_back("*");
- params.push_back("H");
- params.push_back(host);
- params.push_back(ip);
+ std::vector<std::string> params;
+ params.push_back(user->GetRealHost());
+ params.push_back(user->GetIPString());
+ params.push_back(sslapi && sslapi->GetCertificate(user) ? "S" : "P");