]> jfr.im git - irc/quakenet/snircd-patchqueue.git/blobdiff - autosethost.patch
sethost: minor overhaul of sethost - see file for more info
[irc/quakenet/snircd-patchqueue.git] / autosethost.patch
index 5192489e6117166efe70d1694f596bf4a4d49a67..0793b8cb07ad9012305f61f84643c6172e1c9581 100644 (file)
@@ -1,49 +1,74 @@
-when autoapplying spoof blocks notify user what their hidden host is (same as /sethost or +rx)
-update numeric reply to reflect new conf format, blocks instead of lines
+when autoapplying spoof blocks notify user what their hidden host is (same as when the host is hidden normally)
 
-diff -r 6eb88b2e3b90 ircd/s_conf.c
---- a/ircd/s_conf.c    Wed Mar 17 17:18:13 2010 +0100
-+++ b/ircd/s_conf.c    Wed Mar 17 17:40:43 2010 +0100
-@@ -1270,8 +1270,11 @@
+send "Using Spoof block privilege" as NOTICE AUTH, preventing sending any other numeric reples before the 001 002 etc replies
+send RPL_HOSTHIDDEN after all connect stuff, same place this reply is sent in case IAUTH set the user +rx
+commented out numeric reply RPL_USINGSLINE, no longer used
+
+diff -r 350a7bb87be2 include/numeric.h
+--- a/include/numeric.h
++++ b/include/numeric.h
+@@ -314,7 +314,7 @@
+ /*      RPL_NOUSERS          395        Dalnet/EFnet/IRCnet */
+ #define RPL_HOSTHIDDEN       396      /* UMODE +x completed succesfuly */
+ #define RPL_STATSSLINE       398      /* QuakeNet extension -froo */
+-#define RPL_USINGSLINE       399      /* QuakeNet extension -froo */
++/*      RPL_USINGSLINE       399         QuakeNet extension -froo */
+ /*
+  * Errors are in the range from 400-599 currently and are grouped by what
+diff -r 350a7bb87be2 ircd/s_conf.c
+--- a/ircd/s_conf.c
++++ b/ircd/s_conf.c
+@@ -1270,8 +1270,9 @@
          continue;
  
        ircd_strncpy(cli_user(cptr)->host, hostonly, HOSTLEN);
 -      log_write(LS_USER, L_INFO, LOG_NOSNOTICE, "S-Line (%s@%s) by (%#R)",
 +      log_write(LS_USER, L_INFO, LOG_NOSNOTICE, "Spoofhost (%s@%s) by (%#R)",
            cli_user(cptr)->username, hostonly, cptr);
-+      send_reply(cptr, RPL_USINGSLINE);
-+      send_reply(cptr, RPL_HOSTHIDDEN, cli_user(cptr)->host);
 +      SetSetHost(cptr);
        return 1;
      }
    }
-diff -r 6eb88b2e3b90 ircd/s_err.c
---- a/ircd/s_err.c     Wed Mar 17 17:18:13 2010 +0100
-+++ b/ircd/s_err.c     Wed Mar 17 17:40:43 2010 +0100
+diff -r 350a7bb87be2 ircd/s_err.c
+--- a/ircd/s_err.c
++++ b/ircd/s_err.c
 @@ -830,7 +830,7 @@
  /* 398 */
    { RPL_STATSSLINE, "%d %s %s %s %s", "398" },
  /* 399 */
 -  { RPL_USINGSLINE, ":Using S-line privilege", "399" },
-+  { RPL_USINGSLINE, ":Using Spoof block privilege", "399" },
++  { 0 },
  /* 400 */
    { 0 },
  /* 401 */
-diff -r 6eb88b2e3b90 ircd/s_user.c
---- a/ircd/s_user.c    Wed Mar 17 17:18:13 2010 +0100
-+++ b/ircd/s_user.c    Wed Mar 17 17:40:43 2010 +0100
-@@ -374,12 +374,8 @@
+diff -r 350a7bb87be2 ircd/s_user.c
+--- a/ircd/s_user.c
++++ b/ircd/s_user.c
+@@ -373,12 +373,11 @@
      if (feature_bool(FEAT_AUTOINVISIBLE))
        SetInvisible(sptr);
-     
--    if(feature_bool(FEAT_SETHOST_AUTO)) {
+-    
++
++    /* apply auto sethost if needed */
+     if(feature_bool(FEAT_SETHOST_AUTO)) {
 -      if (conf_check_slines(sptr)) {
 -        send_reply(sptr, RPL_USINGSLINE);
 -        SetSetHost(sptr);
 -      }
--    }
-+    if(feature_bool(FEAT_SETHOST_AUTO))
-+      conf_check_slines(sptr);
++      if (conf_check_slines(sptr))
++        sendrawto_one(sptr, "NOTICE AUTH :*** Using Spoof block privilege");
+     }
  
      SetUser(sptr);
-     cli_handler(sptr) = CLIENT_HANDLER;
+@@ -456,6 +455,9 @@
+    */
+   if (HasHiddenHost(sptr))
+     hide_hostmask(sptr, FLAG_HIDDENHOST);
++  /* my user has sethost, inform them of their hidden host from auto applied sethost */
++  if (IsSetHost(sptr) && MyConnect(sptr))
++    send_reply(sptr, RPL_HOSTHIDDEN, cli_user(sptr)->host);
+   if (IsInvisible(sptr))
+     ++UserStats.inv_clients;
+   if (IsOper(sptr))