From: wiebe Date: Wed, 17 Mar 2010 13:10:30 +0000 (+0100) Subject: removed addnickchasetomodenick.patch X-Git-Url: https://jfr.im/git/irc/quakenet/snircd-patchqueue.git/commitdiff_plain/ecaa86143ff380ef43e4201b85244c650d522b91?hp=e9693c132a2fd0c7a53532fbd934bee62556103c removed addnickchasetomodenick.patch --- diff --git a/addnickchasetomodenick.patch b/addnickchasetomodenick.patch deleted file mode 100644 index 7a1ba7d..0000000 --- a/addnickchasetomodenick.patch +++ /dev/null @@ -1,87 +0,0 @@ -ircu uses nick chasing for whowas, but also for targetting /kill, /kick, /mode o/v, in case a nick isnt found, the whowas history is check and the intented victim is chased (time limit is 30 seconds) - -example without this patch: -00:01 > NICK newnick -00:01 > MODE oldnick +w -00:01 < oldnick!user@host NICK newnick -00:01 < irc.quakenet.org 403 newnick oldnick :no such channel -usermode change failed because of the nick change getting in the way - -example with this patch: -00:01 > NICK newnick -00:01 > MODE oldnick +w -00:01 < oldnick!user@host NICK newnick -00:01 < newnick!user@host MODE newnick +w -usermode change succeeded because ircd uses whowas history and found the previous user with this nick was this user -much friendlier and simply achieved by using information already available - -diff -r 85f3d4ad0a52 include/channel.h ---- a/include/channel.h Mon Jan 26 12:10:57 2009 +0100 -+++ b/include/channel.h Mon Jan 26 12:29:23 2009 +0100 -@@ -390,7 +390,7 @@ - extern void make_zombie(struct Membership* member, struct Client* who, - struct Client* cptr, struct Client* sptr, - struct Channel* chptr); --extern struct Client* find_chasing(struct Client* sptr, const char* user, int* chasing); -+extern struct Client* find_chasing(struct Client* sptr, const char* user, int* chasing, int error); - void add_invite(struct Client *cptr, struct Channel *chptr); - int number_of_zombies(struct Channel *chptr); - -diff -r 85f3d4ad0a52 ircd/channel.c ---- a/ircd/channel.c Mon Jan 26 12:10:57 2009 +0100 -+++ b/ircd/channel.c Mon Jan 26 12:29:23 2009 +0100 -@@ -218,9 +218,10 @@ - * @param user a string representing the client to be found - * @param chasing a variable set to 0 if the user was found directly, - * 1 otherwise -+ * @param error send error to source when set to 1, else not - * @returns a pointer the client, or NULL if the client wasn't found. - */ --struct Client* find_chasing(struct Client* sptr, const char* user, int* chasing) -+struct Client* find_chasing(struct Client* sptr, const char* user, int* chasing, int error) - { - struct Client* who = FindClient(user); - -@@ -230,7 +231,8 @@ - return who; - - if (!(who = get_history(user, feature_int(FEAT_KILLCHASETIMELIMIT)))) { -- send_reply(sptr, ERR_NOSUCHNICK, user); -+ if (error) -+ send_reply(sptr, ERR_NOSUCHNICK, user); - return 0; - } - if (chasing) -@@ -3120,7 +3122,7 @@ - oplevel = req_oplevel; - } - /* find client we're manipulating */ -- acptr = find_chasing(state->sptr, t_str, NULL); -+ acptr = find_chasing(state->sptr, t_str, NULL, 1); - } else { - if (t_str[5] == ':') { - t_str[5] = '\0'; -diff -r 85f3d4ad0a52 ircd/m_kick.c ---- a/ircd/m_kick.c Mon Jan 26 12:10:57 2009 +0100 -+++ b/ircd/m_kick.c Mon Jan 26 12:29:23 2009 +0100 -@@ -127,7 +127,7 @@ - || !IsChanOp(member2)) - return send_reply(sptr, ERR_CHANOPRIVSNEEDED, name); - -- if (!(who = find_chasing(sptr, parv[2], 0))) -+ if (!(who = find_chasing(sptr, parv[2], 0, 1))) - return 0; /* find_chasing sends the reply for us */ - - /* Don't allow the channel service to be kicked */ -diff -r 85f3d4ad0a52 ircd/m_mode.c ---- a/ircd/m_mode.c Mon Jan 26 12:10:57 2009 +0100 -+++ b/ircd/m_mode.c Mon Jan 26 12:29:23 2009 +0100 -@@ -117,7 +117,7 @@ - struct Client *acptr; - - acptr = FindUser(parv[1]); -- if (!acptr) -+ if (!(acptr = find_chasing(sptr, parv[1], 0, 0))) - { - send_reply(sptr, ERR_NOSUCHCHANNEL, parv[1]); - return 0; diff --git a/series b/series index 88df8dc..c968bd4 100644 --- a/series +++ b/series @@ -4,7 +4,6 @@ realusernamesethost.patch cprivmsgerracconly.patch badchanzombie.patch nserverflag.patch -addnickchasetomodenick.patch chanopaccountabilityforkickdelayedjoin.patch ischannelservice.patch ulined.patch