Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions ircd/s_misc.c
Original file line number Diff line number Diff line change
Expand Up @@ -756,8 +756,10 @@ static void exit_one_client(aClient *cptr, aClient *sptr, aClient *from,
}
#ifdef USE_SERVICES
check_services_butone(SERVICE_WANT_SQUIT, sptr->serv, sptr,
":%s SQUIT %s :%s", from->name,
sptr->name, comment);
":%s SQUIT %s :%s",
sptr->serv->up->serv->sid,
sptr->serv->sid,
comment);
#endif
del_from_sid_hash_table(sptr->serv);
remove_server_from_tree(sptr);
Expand Down
30 changes: 24 additions & 6 deletions ircd/s_serv.c
Original file line number Diff line number Diff line change
Expand Up @@ -546,7 +546,16 @@ int m_smask(aClient *cptr, aClient *sptr, int parc, char *parv[])
add_to_sid_hash_table(parv[1], acptr);

add_server_to_tree(acptr);

#ifdef USE_SERVICES
check_services_butone(SERVICE_WANT_SERVER, acptr->serv, acptr,
":%s SERVER %s %d %s %s :%s",
acptr->serv->up->serv->sid,
acptr->name,
acptr->hopcount + 1,
acptr->serv->sid,
acptr->serv->verstr,
acptr->info);
#endif
/* And introduce the server to others. */
introduce_server(cptr, acptr);

Expand Down Expand Up @@ -804,9 +813,13 @@ int m_server(aClient *cptr, aClient *sptr, int parc, char *parv[])
introduce_server(cptr, acptr);
#ifdef USE_SERVICES
check_services_butone(SERVICE_WANT_SERVER, acptr->serv, acptr,
":%s SERVER %s %d %s :%s", parv[0],
acptr->name, hop+1, acptr->serv->sid,
acptr->info);
":%s SERVER %s %d %s %s :%s",
acptr->serv->up->serv->sid,
acptr->name,
hop + 1,
acptr->serv->sid,
acptr->serv->verstr,
acptr->info);
#endif
sendto_flag(SCH_SERVER, "Received SERVER %s from %s (%d %s)",
acptr->name, parv[0], hop+1, acptr->info);
Expand Down Expand Up @@ -1219,8 +1232,13 @@ int m_server_estab(aClient *cptr, char *sid, char *versionbuf)
add_fd(cptr->fd, &fdas);
#ifdef USE_SERVICES
check_services_butone(SERVICE_WANT_SERVER, cptr->serv, cptr,
":%s SERVER %s %d %s :%s", ME, cptr->name,
cptr->hopcount+1, cptr->serv->sid, cptr->info);
":%s SERVER %s %d %s %s :%s",
cptr->serv->up->serv->sid,
cptr->name,
cptr->hopcount + 1,
cptr->serv->sid,
cptr->serv->verstr,
cptr->info);
#endif
sendto_flag(SCH_SERVER, "Received SERVER %s from %s (%d %s)",
cptr->name, ME, 1, cptr->info);
Expand Down
33 changes: 18 additions & 15 deletions ircd/s_service.c
Original file line number Diff line number Diff line change
Expand Up @@ -197,15 +197,16 @@ static void sendnum_toone(aClient *cptr, int wants, aClient *sptr,
umode = "+";

if ((wants & SERVICE_WANT_UID) && sptr->user)
sendto_one(cptr, ":%s UNICK %s %s %s %s %s %s :%s",
sptr->user->servp->sid,
(wants & SERVICE_WANT_NICK) ? sptr->name : ".",
sptr->uid,
(wants & SERVICE_WANT_USER) ? sptr->user->username : ".",
(wants & SERVICE_WANT_USER) ? sptr->user->host : ".",
(wants & SERVICE_WANT_USER) ? get_client_ip(sptr) : ".",
(wants & (SERVICE_WANT_UMODE|SERVICE_WANT_OPER)) ? umode : "+",
(wants & SERVICE_WANT_USER) ? sptr->info : "");
sendto_one(cptr, ":%s UNICK %s %s %s %s %s %s %s :%s",
sptr->user->servp->sid,
(wants & SERVICE_WANT_NICK) ? sptr->name : ".",
sptr->uid,
(wants & SERVICE_WANT_USER) ? sptr->user->username : ".",
(wants & SERVICE_WANT_USER) ? sptr->user->host : ".",
(wants & SERVICE_WANT_USER) ? get_client_ip(sptr) : ".",
(wants & (SERVICE_WANT_UMODE | SERVICE_WANT_OPER)) ? umode : "+",
(wants & SERVICE_WANT_USER) ? (IsSASLAuthed(sptr) ? sptr->sasl_user : "*") : "",
(wants & SERVICE_WANT_USER) ? sptr->info : "");
else
if (wants & SERVICE_WANT_EXTNICK)
/* extended NICK syntax */
Expand Down Expand Up @@ -671,12 +672,14 @@ int m_servset(aClient *cptr, aClient *sptr, int parc, char *parv[])
continue;
split = (MyConnect(acptr) &&
mycmp(acptr->name, acptr->sockhost));
sendto_one(sptr, ":%s SERVER %s %d %s :%s",
acptr->serv->up->name, acptr->name,
acptr->hopcount+1,
acptr->serv->sid,
acptr->info);
}
sendto_one(sptr, ":%s SERVER %s %d %s %s :%s",
acptr->serv->up->serv->sid,
acptr->name,
acptr->hopcount + 1,
acptr->serv->sid,
acptr->serv->verstr,
acptr->info);
}
}

if (burst & (SERVICE_WANT_NICK|SERVICE_WANT_USER|SERVICE_WANT_SERVICE))
Expand Down
Loading