diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-05-05 11:11:17 +0300 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-05-05 11:11:17 +0300 |
commit | b174e2c9c6177e3bdac8edaa8f60d861a2631933 (patch) | |
tree | 2876909e33266808fb7409b11b6686823beaaa82 /src/mod_muc_log.erl | |
parent | Make it possible to validate second-level options (diff) |
Improve validation of second-level options
Diffstat (limited to '')
-rw-r--r-- | src/mod_muc_log.erl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mod_muc_log.erl b/src/mod_muc_log.erl index 820cbd3bd..45ee645fc 100644 --- a/src/mod_muc_log.erl +++ b/src/mod_muc_log.erl @@ -1185,11 +1185,13 @@ mod_opt_type(file_format) -> end; mod_opt_type(file_permissions) -> fun (SubOpts) -> - F = fun ({mode, Mode}, {_M, G}) -> {Mode, G}; - ({group, Group}, {M, _G}) -> {M, Group} - end, - lists:foldl(F, {644, 33}, SubOpts) + {proplists:get_value(mode, SubOpts, 644), + proplists:get_value(group, SubOpts, 33)} end; +mod_opt_type({file_permissions, mode}) -> + fun(I) when is_integer(I), I>=0 -> I end; +mod_opt_type({file_permissions, group}) -> + fun(I) when is_integer(I), I>=0 -> I end; mod_opt_type(outdir) -> fun iolist_to_binary/1; mod_opt_type(spam_prevention) -> fun (B) when is_boolean(B) -> B end; @@ -1203,5 +1205,5 @@ mod_opt_type(top_link) -> end; mod_opt_type(_) -> [access_log, cssfile, dirname, dirtype, file_format, - file_permissions, outdir, spam_prevention, timezone, - top_link]. + {file_permissions, mode}, {file_permissions, group}, + outdir, spam_prevention, timezone, top_link]. |