if (s)
{
params[0] = s->GetName();
- Utils->DoOneToOne(user->nick, "MOTD", params, s->GetName());
+ Utils->DoOneToOne(user->uuid, "MOTD", params, s->GetName());
}
else
user->WriteServ( "402 %s %s :No such server", user->nick, parameters[0]);
if (s)
{
params[0] = s->GetName();
- Utils->DoOneToOne(user->nick, "ADMIN", params, s->GetName());
+ Utils->DoOneToOne(user->uuid, "ADMIN", params, s->GetName());
}
else
user->WriteServ( "402 %s %s :No such server", user->nick, parameters[0]);
if (s)
{
params[0] = s->GetName();
- Utils->DoOneToOne(user->nick, "MODULES", params, s->GetName());
+ Utils->DoOneToOne(user->uuid, "MODULES", params, s->GetName());
}
else
user->WriteServ( "402 %s %s :No such server", user->nick, parameters[0]);
if (s)
{
params[1] = s->GetName();
- Utils->DoOneToOne(user->nick, "STATS", params, s->GetName());
+ Utils->DoOneToOne(user->uuid, "STATS", params, s->GetName());
}
else
{
std::deque<std::string> params;
params.push_back(found->GetName());
- params.push_back(user->nick);
+ params.push_back(user->uuid);
Utils->DoOneToOne(ServerInstance->Config->ServerName,"TIME",params,found->GetName());
}
else
{
std::deque<std::string> params;
params.push_back(parameters[1]);
- Utils->DoOneToOne(user->nick,"IDLE",params,remote->server);
+ Utils->DoOneToOne(user->uuid,"IDLE",params,remote->server);
return 1;
}
else if (!remote)
user->WriteServ("NOTICE %s :%s", user->nick, text);
else
{
- params.push_back(user->nick);
+ params.push_back(user->uid);
params.push_back(std::string("::") + ServerInstance->Config->ServerName + " NOTICE " + user->nick + " :*** From " +
ServerInstance->Config->ServerName+ ": " + text);
Utils->DoOneToMany(ServerInstance->Config->ServerName, "PUSH", params);
params.clear();
for (int j = 0; j < pcnt; j++)
{
+ /* XXX UID: Translate nicks in this list to UIDs, potentially using some form of lookup
+ * table that specifies a value type for each parameter, as part of the command_t.
+ */
if (strchr(parameters[j],' '))
{
params.push_back(":" + std::string(parameters[j]));
if (IS_LOCAL(source))
{
std::deque<std::string> params;
- params.push_back(dest->nick);
+ params.push_back(dest->uuid);
params.push_back(channel->name);
Utils->DoOneToMany(source->uuid,"INVITE",params);
}
{
std::deque<std::string> params;
params.clear();
- params.push_back(d->nick);
+ params.push_back(d->uuid);
params.push_back(":"+text);
Utils->DoOneToOne(user->uuid,"NOTICE",params,d->server);
}
{
std::deque<std::string> params;
params.clear();
- params.push_back(d->nick);
+ params.push_back(d->uuid);
params.push_back(":"+text);
Utils->DoOneToOne(user->uuid,"PRIVMSG",params,d->server);
}
{
std::deque<std::string> params;
params.push_back(chan->name);
- params.push_back(user->nick);
+ params.push_back(user->uuid);
params.push_back(":"+reason);
Utils->DoOneToMany(source->uuid,"KICK",params);
}
{
std::deque<std::string> params;
params.push_back(chan->name);
- params.push_back(user->nick);
+ params.push_back(user->uuid);
params.push_back(":"+reason);
Utils->DoOneToMany(ServerInstance->Config->ServerName,"KICK",params);
}
params.push_back(":"+reason);
Utils->DoOneToMany(dest->uuid,"OPERQUIT",params);
params.clear();
- params.push_back(dest->nick);
+ params.push_back(dest->uuid);
params.push_back(":"+reason);
dest->SetOperQuit(operreason);
Utils->DoOneToMany(source->uuid,"KILL",params);
if (target_type == TYPE_USER)
{
userrec* u = (userrec*)dest;
- params.push_back(u->nick);
+ params.push_back(u->uuid);
params.push_back(text);
command = "MODE";
}
params.push_back(text);
command = "FMODE";
}
+ /* XXX UID: Translate nick parameters to uuids */
Utils->DoOneToMany(user->uuid, command, params);
}
}
if (target_type == TYPE_USER)
{
userrec* u = (userrec*)target;
- s->WriteLine(std::string(":")+ServerInstance->Config->ServerName+" FMODE "+u->nick+" "+ConvToStr(u->age)+" "+modeline);
+ s->WriteLine(std::string(":")+ServerInstance->Config->ServerName+" FMODE "+u->uuid+" "+ConvToStr(u->age)+" "+modeline);
}
else
{
chanrec* c = (chanrec*)target;
+ /* XXX UID: Translate nicks in modeline to uids */
s->WriteLine(std::string(":")+ServerInstance->Config->ServerName+" FMODE "+c->name+" "+ConvToStr(c->age)+" "+modeline);
}
}
if (target_type == TYPE_USER)
{
userrec* u = (userrec*)target;
- s->WriteLine(std::string(":")+ServerInstance->Config->ServerName+" METADATA "+u->nick+" "+extname+" :"+extdata);
+ s->WriteLine(std::string(":")+ServerInstance->Config->ServerName+" METADATA "+u->uuid+" "+extname+" :"+extdata);
}
else if (target_type == TYPE_CHANNEL)
{
userrec* a = ServerInstance->FindNick((*params)[0]);
if (a)
{
+ *(params)[0] = a->uuid;
ourTS = a->age;
Utils->DoOneToMany(ServerInstance->Config->ServerName,"MODE",*params);
return;
{
ourTS = a->age;
params->insert(params->begin() + 1,ConvToStr(ourTS));
+ /* XXX UID: Translate modes in string to uids */
Utils->DoOneToMany(ServerInstance->Config->ServerName,"FMODE",*params);
}
}
{
if (params->size() < 2)
return;
+ /* XXX UID: Translate modes in string to uids */
Utils->DoOneToMany(ServerInstance->Config->ServerName,"MODE",*params);
}
else if (event->GetEventID() == "send_opers")
if (!a)
return;
-
+
+ (*params)[0] = a->uuid;
(*params)[1] = ":" + (*params)[1];
Utils->DoOneToOne(ServerInstance->Config->ServerName, "PUSH", *params, a->server);
}