summaryrefslogtreecommitdiffstats
path: root/mbbsd/user.c
diff options
context:
space:
mode:
authorptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-05-06 22:58:30 +0800
committerptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-05-06 22:58:30 +0800
commit349546bad375aaeae458ed989c691a1fe00b1c39 (patch)
tree14439a7a38943a75f808eaa642cea7aabfd11f5f /mbbsd/user.c
parent1a3e5b7119064b6d9e21d2c8531e091624d17f10 (diff)
downloadpttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar.gz
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar.bz2
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar.lz
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar.xz
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.tar.zst
pttbbs-349546bad375aaeae458ed989c691a1fe00b1c39.zip
1.kick people before give them ticket.
2.set bad post -> 1 hour can't post. 3.maxiam 9 post whin 3 min. 4.one ticket for every 5 bad post. git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2716 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/user.c')
-rw-r--r--mbbsd/user.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/mbbsd/user.c b/mbbsd/user.c
index 2788aebc..e67d4c68 100644
--- a/mbbsd/user.c
+++ b/mbbsd/user.c
@@ -196,6 +196,19 @@ mail_violatelaw(const char *crime, const char *police, const char *reason, const
append_record(genbuf, &fhdr, sizeof(fhdr));
}
+void
+kick_all(char *user)
+{
+ userinfo_t *ui;
+ int num = searchuser(user, NULL);
+ while(!(ui = (userinfo_t *) search_ulist(num)))
+ {
+ if(ui == currutmp) continue;
+ kill(ui->pid, SIGHUP);
+ log_usies("KICK ALL", user);
+ }
+}
+
static void
violate_law(userec_t * u, int unum)
{
@@ -241,6 +254,7 @@ violate_law(userec_t * u, int unum)
kill_user(unum);
} else {
+ kick_all(u->userid);
u->userlevel |= PERM_VIOLATELAW;
u->vl_count++;
passwd_update(unum, u);