1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-09 04:43:13 +02:00

- #0002932 reported by therock247uk, patched by WolfSage, regarding Local

opers can /chghost /chgident /chgname on someone thats on another server on
  the network.
This commit is contained in:
Bram Matthys
2007-04-25 12:33:43 +00:00
parent f6a0ef0cc2
commit 33bbe5ea8f
4 changed files with 24 additions and 0 deletions
+3
View File
@@ -1452,3 +1452,6 @@
- Fixed #0003171 reported by danieldg (typo) doc/technical
- #0003146 reported by vonitsanet, regarding Modes O,S (etc) not rejected for modes-on-connect
fixed by djGrrr
- #0002932 reported by therock247uk, patched by WolfSage, regarding Local
opers can /chghost /chgident /chgname on someone thats on another server on
the network.
+7
View File
@@ -146,6 +146,13 @@ DLLFUNC int m_chghost(aClient *cptr, aClient *sptr, int parc, char *parv[])
if ((acptr = find_person(parv[1], NULL)))
{
if (MyClient(sptr) && (IsLocOp(sptr) && !MyClient(acptr)))
{
sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name,
parv[0]);
return 0;
}
DYN_LOCAL(char, did_parts, acptr->user->joined);
if (!strcmp(GetHost(acptr), parv[2]))
{
+7
View File
@@ -158,6 +158,13 @@ int legalident = 1;
if ((acptr = find_person(parv[1], NULL)))
{
if (MyClient(sptr) && (IsLocOp(sptr) && !MyClient(acptr)))
{
sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name,
parv[0]);
return 0;
}
DYN_LOCAL(char, did_parts, acptr->user->joined);
switch (UHOST_ALLOWED)
{
+7
View File
@@ -146,6 +146,13 @@ DLLFUNC int m_chgname(aClient *cptr, aClient *sptr, int parc, char *parv[])
if ((acptr = find_person(parv[1], NULL)))
{
if (MyClient(sptr) && (IsLocOp(sptr) && !MyClient(acptr)))
{
sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name,
parv[0]);
return 0;
}
/* set the realname first to make n:line checking work */
ircsprintf(acptr->info, "%s", parv[2]);
/* only check for n:lines if the person who's name is being changed is not an oper */