]> jfr.im git - irc/quakenet/newserv.git/blobdiff - helpmod2/hban.c
we can just call deref here
[irc/quakenet/newserv.git] / helpmod2 / hban.c
index 314ab7805d6be704f919da47efe91853d9d1b61b..496271a67aa9b21600cf5e9313fdb54ac96cdb96 100644 (file)
@@ -52,7 +52,7 @@ hban *hban_add(const char* pat, const char* rsn, time_t exp, int now)
                     }
                     assert_hchan = tmpu->hchannels->hchan;
                     helpmod_setban(tmpu->hchannels->hchan, bantostring(ptr->real_ban), HELPMOD_BAN_DURATION, MCB_ADD, now);
-                    helpmod_kick(tmpu->hchannels->hchan, tmpu, hban_get_reason(ptr));
+                    helpmod_kick(tmpu->hchannels->hchan, tmpu, "%s", hban_get_reason(ptr));
                 }
            }
     }
@@ -165,13 +165,18 @@ const char *hban_ban_string(nick *nck, int banflags)
 
     strcat(buffer, "@");
 
-    if ((banflags & HBAN_HOST) && IsAccount(nck))
+    if ((banflags & HBAN_HOST) && IsAccount(nck) && IsHideHost(nck))
     {
         strcat(buffer, nck->authname);
         strcat(buffer, ".users.quakenet.org");
     }
-    else if ((banflags & HBAN_REAL_HOST) || ((banflags & HBAN_HOST) && !IsAccount(nck)))
+    else if ((banflags & HBAN_REAL_HOST) || ((banflags & HBAN_HOST)))
+    {
+      if (IsSetHost(nck))
+        strcat(buffer, nck->sethost->content);
+      else
         strcat(buffer, nck->host->name->content);
+    }
     else
         strcat(buffer, "*");