aboutsummaryrefslogtreecommitdiffstats
path: root/root_commands.c
diff options
context:
space:
mode:
authorDennis Kaarsemaker <dennis@kaarsemaker.net>2016-02-22 22:26:15 +0100
committerDennis Kaarsemaker <dennis@kaarsemaker.net>2016-03-23 07:44:13 +0100
commite41ba05c0a9002b30e9e2475f56fd207e856a9f8 (patch)
tree29392d95d252822f506d61ea9dfcf4c19f9f74f5 /root_commands.c
parent3ac6d9fe93279d74d36a6bf2b6e2ba182ed3bf34 (diff)
Allow individual settings to be locked down
This allows a site admin who pregenerates configs to mark certain settings as untouchable, ensuring that users cannot mess up their settings too badly.
Diffstat (limited to 'root_commands.c')
-rw-r--r--root_commands.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/root_commands.c b/root_commands.c
index f9c6e8e9..80873c79 100644
--- a/root_commands.c
+++ b/root_commands.c
@@ -339,6 +339,10 @@ static int cmd_set_real(irc_t *irc, char **cmd, set_t **head, cmd_set_checkflags
set_t *s = set_find(head, set_name);
int st;
+ if (s && s->flags & SET_LOCKED) {
+ irc_rootmsg(irc, "This setting can not be changed");
+ return 0;
+ }
if (s && checkflags && checkflags(irc, s) == 0) {
return 0;
}