]> jfr.im git - irc/quakenet/snircd-patchqueue.git/blame - forcedinvis.patch
rename patch files
[irc/quakenet/snircd-patchqueue.git] / forcedinvis.patch
CommitLineData
edb26b39
P
1# HG changeset patch
2# Parent 7e97fdb380bf69c9efbdda9f58bca4aa841fbd0d
3
4diff -r 7e97fdb380bf include/ircd_features.h
5--- a/include/ircd_features.h Sun Jul 14 18:56:59 2013 +0100
6+++ b/include/ircd_features.h Fri Jul 19 21:53:36 2013 +0100
7@@ -54,6 +54,7 @@
8 FEAT_HOST_HIDING,
9 FEAT_HIDDEN_HOST,
10 FEAT_HIDDEN_IP,
11+ FEAT_AUTOINVISIBLE,
12 FEAT_CONNEXIT_NOTICES,
13 FEAT_OPLEVELS,
14 FEAT_ZANNELS,
15diff -r 7e97fdb380bf ircd/ircd_features.c
16--- a/ircd/ircd_features.c Sun Jul 14 18:56:59 2013 +0100
17+++ b/ircd/ircd_features.c Fri Jul 19 21:53:36 2013 +0100
18@@ -319,6 +319,7 @@
19 F_B(HOST_HIDING, 0, 1, 0),
20 F_S(HIDDEN_HOST, FEAT_CASE, "users.undernet.org", 0),
21 F_S(HIDDEN_IP, 0, "127.0.0.1", 0),
22+ F_B(AUTOINVISIBLE, 0, 1, 0),
23 F_B(CONNEXIT_NOTICES, 0, 0, 0),
24 F_B(OPLEVELS, 0, 1, 0),
25 F_B(ZANNELS, 0, 1, 0),
26diff -r 7e97fdb380bf ircd/s_user.c
27--- a/ircd/s_user.c Sun Jul 14 18:56:59 2013 +0100
28+++ b/ircd/s_user.c Fri Jul 19 21:53:36 2013 +0100
29@@ -365,6 +365,9 @@
30 set_user_mode(cptr, sptr, 3, umodev, ALLOWMODES_ANY);
31 }
32
33+ if (feature_bool(FEAT_AUTOINVISIBLE))
34+ SetInvisible(sptr);
35+
36 SetUser(sptr);
37 cli_handler(sptr) = CLIENT_HANDLER;
38 SetLocalNumNick(sptr);
39@@ -1053,7 +1056,8 @@
40 if (what == MODE_ADD)
41 SetInvisible(sptr);
42 else
43- ClearInvisible(sptr);
44+ if (!feature_bool(FEAT_AUTOINVISIBLE) || IsOper(sptr)) /* Don't allow non-opers to -i if FEAT_AUTOINVISIBLE is set */
45+ ClearInvisible(sptr);
46 break;
47 case 'd':
48 if (what == MODE_ADD)