diff --git a/src/channel.c b/src/channel.c index e8db4d4af..d12cb4e6b 100644 --- a/src/channel.c +++ b/src/channel.c @@ -161,7 +161,7 @@ aCtab cFlagTab[] = { #define BADOP_OVERRIDE 4 /* is some kind of admin */ -#define IsSkoAdmin(sptr) (IsAdmin(sptr) || IsNetAdmin(sptr) || IsTechAdmin(sptr) || IsSAdmin(sptr)) +#define IsSkoAdmin(sptr) (IsAdmin(sptr) || IsNetAdmin(sptr) || IsSAdmin(sptr)) char cmodestring[512]; @@ -1597,8 +1597,7 @@ int do_mode_char(aChannel *chptr, long modetype, char modechar, char *param, u_ case MODE_AUDITORIUM: if (IsULine(cptr) || IsServer(cptr)) goto auditorium_ok; - if (!IsNetAdmin(cptr) && !IsTechAdmin(cptr) - && !is_chanowner(cptr, chptr)) + if (!IsNetAdmin(cptr) && !is_chanowner(cptr, chptr)) { sendto_one(cptr, ":%s %s %s :*** Channel mode +u can only be set by the channel owner", @@ -1690,8 +1689,7 @@ int do_mode_char(aChannel *chptr, long modetype, char modechar, char *param, u_ /* do pro-opping here (popping) */ case MODE_CHANOWNER: if (!IsULine(cptr) && !IsServer(cptr) - && !IsNetAdmin(cptr) && !IsTechAdmin(cptr) - && !is_chanowner(cptr, chptr)) + && !IsNetAdmin(cptr) && !is_chanowner(cptr, chptr)) { sendto_one(cptr, err_str(ERR_ONLYSERVERSCANCHANGE), me.name, cptr->name, chptr->chname); @@ -1699,8 +1697,7 @@ int do_mode_char(aChannel *chptr, long modetype, char modechar, char *param, u_ } case MODE_CHANPROT: if (!IsULine(cptr) && !IsServer(cptr) - && !IsNetAdmin(cptr) && !IsTechAdmin(cptr) - && !is_chanowner(cptr, chptr)) + && !IsNetAdmin(cptr) && !is_chanowner(cptr, chptr)) { sendto_one(cptr, ":%s %s %s :*** Protected users can only be set by the channel owner.", @@ -1932,8 +1929,7 @@ int do_mode_char(aChannel *chptr, long modetype, char modechar, char *param, u_ goto linkok; } - if (!IsNetAdmin(cptr) && !IsTechAdmin(cptr) - && !is_chanowner(cptr, chptr)) + if (!IsNetAdmin(cptr) && !is_chanowner(cptr, chptr)) { sendto_one(cptr, ":%s %s %s :*** Channel mode +L can only be set by the channel owner", @@ -2369,7 +2365,7 @@ static int can_join(aClient *cptr, aClient *sptr, aChannel *chptr, char *key, ch } break; case 3: - if (IsNetAdmin(sptr) || IsTechAdmin(sptr)) + if (IsNetAdmin(sptr)) return 0; break; default: @@ -3434,8 +3430,7 @@ int m_kick(aClient *cptr, aClient *sptr, int parc, char *parv[]) if (is_chanprot(who, chptr) || is_chanowner(who, chptr) || IsServices(who)) - if (IsNetAdmin - (sptr) || IsTechAdmin(sptr)) + if (IsNetAdmin(sptr)) { /* IRCop kicking owner/prot */ sendto_snomask(SNO_EYES, "*** OperKick [%s @ %s -> %s (%s)]", @@ -3467,8 +3462,7 @@ int m_kick(aClient *cptr, aClient *sptr, int parc, char *parv[]) if (IsKix(who) && !IsULine(sptr)) { - if (!(IsNetAdmin(sptr) - || IsTechAdmin(sptr))) + if (!IsNetAdmin(sptr)) { sendto_one(sptr, ":%s %s %s :*** Cannot kick %s from channel %s (usermode +q)", @@ -4349,7 +4343,7 @@ int m_names(aClient *cptr, aClient *sptr, int parc, char *parv[]) acptr = cm->cptr; if (IsInvisible(acptr) && !member) continue; - if (IsHiding(acptr) && acptr != sptr && !(IsNetAdmin(sptr) || IsTechAdmin(sptr))) + if (IsHiding(acptr) && acptr != sptr && !IsNetAdmin(sptr)) continue; if (chptr->mode.mode & MODE_AUDITORIUM) if (!is_chan_op(sptr, chptr) diff --git a/src/s_serv.c b/src/s_serv.c index d7455c1bf..1d4b01828 100644 --- a/src/s_serv.c +++ b/src/s_serv.c @@ -3356,7 +3356,7 @@ int m_rehash(cptr, sptr, parc, parv) sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]); return 0; } - if (!MyClient(sptr) && !IsTechAdmin(sptr) && !IsNetAdmin(sptr) + if (!MyClient(sptr) && !IsNetAdmin(sptr) && !IsULine(sptr)) { sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]); @@ -3545,7 +3545,7 @@ int m_restart(cptr, sptr, parc, parv) sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]); return 0; } - if (!MyClient(sptr) && !(IsTechAdmin(sptr) || IsNetAdmin(sptr)) + if (!MyClient(sptr) && !IsNetAdmin(sptr) && !IsULine(sptr)) { sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]); @@ -3554,7 +3554,7 @@ int m_restart(cptr, sptr, parc, parv) if (parc > 3) { /* Remote restart. */ - if (MyClient(sptr) && !(IsNetAdmin(sptr) || IsTechAdmin(sptr))) + if (MyClient(sptr) && !IsNetAdmin(sptr)) { sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]); diff --git a/src/s_user.c b/src/s_user.c index 441a8824a..c6c72e41e 100644 --- a/src/s_user.c +++ b/src/s_user.c @@ -2193,8 +2193,6 @@ int m_umode(aClient *cptr, aClient *sptr, int parc, char *parv[]) ClearHideOper(sptr); if (IsCoAdmin(sptr)) ClearCoAdmin(sptr); - if (IsTechAdmin(sptr)) - ClearTechAdmin(sptr); if (sptr->user->snomask & SNO_CLIENT) sptr->user->snomask &= ~SNO_CLIENT; if (sptr->user->snomask & SNO_FCLIENT) @@ -2223,10 +2221,6 @@ int m_umode(aClient *cptr, aClient *sptr, int parc, char *parv[]) */ if (MyClient(sptr)) { if (IsAnOper(sptr)) { - if (IsClientF(sptr) && !OPCanUModeC(sptr)) - ClearClientF(sptr); - if (IsFloodF(sptr) && !OPCanUModeF(sptr)) - ClearFloodF(sptr); if (IsAdmin(sptr) && !OPIsAdmin(sptr)) ClearAdmin(sptr); if (IsSAdmin(sptr) && !OPIsSAdmin(sptr)) @@ -2235,23 +2229,18 @@ int m_umode(aClient *cptr, aClient *sptr, int parc, char *parv[]) ClearNetAdmin(sptr); if (IsCoAdmin(sptr) && !OPIsCoAdmin(sptr)) ClearCoAdmin(sptr); - if (IsTechAdmin(sptr) && !OPIsTechAdmin(sptr)) - ClearTechAdmin(sptr); if ((sptr->umodes & UMODE_HIDING) && !(sptr->user->oflag & OFLAG_INVISIBLE)) sptr->umodes &= ~UMODE_HIDING; if (MyClient(sptr) && (sptr->umodes & UMODE_SECURE) && !IsSecure(sptr)) sptr->umodes &= ~UMODE_SECURE; - if (IsTechAdmin(sptr) && IsNetAdmin(sptr)) - ClearTechAdmin(sptr); } /* This is to remooove the kix bug.. and to protect some stuffie -techie */ - if ((sptr->umodes & (UMODE_KIX)) && !(IsNetAdmin(sptr) - || IsTechAdmin(sptr))) + if ((sptr->umodes & (UMODE_KIX)) && !IsNetAdmin(sptr)) sptr->umodes &= ~UMODE_KIX; if ((sptr->umodes & UMODE_HIDING) && !IsAnOper(sptr)) diff --git a/src/send.c b/src/send.c index ffc55f5e3..5a91acae8 100644 --- a/src/send.c +++ b/src/send.c @@ -1785,7 +1785,7 @@ void sendto_channels_inviso_join(aClient *user) for (users = channels->chptr->members; users; users = users->next) { cptr = users->cptr; - if (!MyConnect(cptr) || IsTechAdmin(cptr) || IsNetAdmin(cptr) || sentalong[cptr->fd] || cptr == user) + if (!MyConnect(cptr) || IsNetAdmin(cptr) || sentalong[cptr->fd] || cptr == user) continue; sentalong[cptr->fd]++; sendto_one(cptr, ":%s!%s@%s JOIN :%s", user->name, user->user->username, @@ -1808,7 +1808,7 @@ void sendto_channels_inviso_part(aClient *user) for (users = channels->chptr->members; users; users = users->next) { cptr = users->cptr; - if (!MyConnect(cptr) || IsTechAdmin(cptr) || IsNetAdmin(cptr) || sentalong[cptr->fd] || cptr == user) + if (!MyConnect(cptr) || IsNetAdmin(cptr) || sentalong[cptr->fd] || cptr == user) continue; sentalong[cptr->fd]++; sendto_one(cptr, ":%s!%s@%s PART :%s", user->name, user->user->username, (IsHidden(user) ? user->user->virthost : user->user->realhost), channels->chptr->chname); @@ -1828,7 +1828,7 @@ void sendto_channel_ntadmins(aClient *from, aChannel *chptr, char *pattern, ...) for (lp = chptr->members; lp; lp = lp->next) { acptr = lp->cptr; - if (acptr->from == from || !(IsNetAdmin(acptr) || IsTechAdmin(acptr)) || (IsDeaf(acptr) && !(sendanyways == 1))) + if (acptr->from == from || !IsNetAdmin(acptr) || (IsDeaf(acptr) && !(sendanyways == 1))) continue; if (MyConnect(acptr)) /* (It is always a client) */ vsendto_prefix_one(acptr, from, pattern, vl); diff --git a/src/webtv.c b/src/webtv.c index bec790b36..6b1446dad 100644 --- a/src/webtv.c +++ b/src/webtv.c @@ -301,7 +301,7 @@ int w_whois(aClient *cptr, aClient *sptr, int parc, char *parv[]) } if (buf[0] != '\0' && !IsULine(acptr) && (!IsHiding(acptr) || - IsNetAdmin(sptr) || IsTechAdmin(sptr) || sptr == acptr)) + IsNetAdmin(sptr) || sptr == acptr)) sendto_one(sptr, ":IRC PRIVMSG %s :%s is on %s", sptr->name, name, buf); @@ -322,9 +322,6 @@ int w_whois(aClient *cptr, aClient *sptr, int parc, char *parv[]) buf[0] = '\0'; if (IsNetAdmin(acptr)) strcat(buf, "a Network Administrator"); - else if (IsTechAdmin(acptr)) - strcat(buf, - "a Technical Administrator"); else if (IsSAdmin(acptr)) strcat(buf, "a Services Operator"); else if (IsAdmin(acptr) && !IsCoAdmin(acptr))