Software /
code /
prosody
Annotate
plugins/mod_motd.lua @ 10721:3a1b1d3084fb 0.11
core.certmanager: Move EECDH ciphers before EDH in default cipherstring (fixes #1513)
Backport of 94e341dee51c
The original intent of having kEDH before kEECDH was that if a `dhparam`
file was specified, this would be interpreted as a preference by the
admin for old and well-tested Diffie-Hellman key agreement over newer
elliptic curve ones. Otherwise the faster elliptic curve ciphersuites
would be preferred. This didn't really work as intended since this
affects the ClientHello on outgoing s2s connections, leading to some
servers using poorly configured kEDH.
With Debian shipping OpenSSL settings that enforce a higher security
level, this caused interoperability problems with servers that use DH
params smaller than 2048 bits. E.g. jabber.org at the time of this
writing has 1024 bit DH params.
MattJ says
> Curves have won, and OpenSSL is less weird about them now
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 25 Aug 2019 20:22:35 +0200 |
parent | 9791:ca0473cadd1c |
child | 12977:74b9e05af71e |
rev | line source |
---|---|
3169
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
1 -- Prosody IM |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
2 -- Copyright (C) 2008-2010 Matthew Wild |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
3 -- Copyright (C) 2008-2010 Waqas Hussain |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
4 -- Copyright (C) 2010 Jeff Mitchell |
5776
bd0ff8ae98a8
Remove all trailing whitespace
Florian Zeitz <florob@babelmonkeys.de>
parents:
5371
diff
changeset
|
5 -- |
3169
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
6 -- This project is MIT/X11 licensed. Please see the |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
7 -- COPYING file in the source package for more information. |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
8 -- |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
9 |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
10 local host = module:get_host(); |
4390
5e84fb3c4ba0
mod_motd: Update to use module:get_option_string
Matthew Wild <mwild1@gmail.com>
parents:
4389
diff
changeset
|
11 local motd_text = module:get_option_string("motd_text"); |
5e84fb3c4ba0
mod_motd: Update to use module:get_option_string
Matthew Wild <mwild1@gmail.com>
parents:
4389
diff
changeset
|
12 local motd_jid = module:get_option_string("motd_jid", host); |
3169
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
13 |
4389
886eebf10802
mod_motd: Send no message (instead of 'blank') if no message is set in the config (thanks medics)
Matthew Wild <mwild1@gmail.com>
parents:
4083
diff
changeset
|
14 if not motd_text then return; end |
886eebf10802
mod_motd: Send no message (instead of 'blank') if no message is set in the config (thanks medics)
Matthew Wild <mwild1@gmail.com>
parents:
4083
diff
changeset
|
15 |
3169
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
16 local st = require "util.stanza"; |
e37e83660114
Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff
changeset
|
17 |
6009
1579b53351e2
mod_motd: Strip indentation only, leave multiple newlines
Kim Alvefur <zash@zash.se>
parents:
5371
diff
changeset
|
18 motd_text = motd_text:gsub("^%s*(.-)%s*$", "%1"):gsub("\n[ \t]+", "\n"); -- Strip indentation from the config |
4083
4d0599e85411
mod_motd: Process value to strip any indentation from the config
Matthew Wild <mwild1@gmail.com>
parents:
3170
diff
changeset
|
19 |
8135
e20c27e04ecc
mod_motd: Use initial presence event (saves some checking)
Kim Alvefur <zash@zash.se>
parents:
6010
diff
changeset
|
20 module:hook("presence/initial", function (event) |
9791
ca0473cadd1c
mod_motd: Remove unused variable [luacheck]
Kim Alvefur <zash@zash.se>
parents:
9789
diff
changeset
|
21 local session = event.origin; |
9789
abd32bc33a9c
mod_motd: Remove redundant conditions
Kim Alvefur <zash@zash.se>
parents:
8135
diff
changeset
|
22 local motd_stanza = |
abd32bc33a9c
mod_motd: Remove redundant conditions
Kim Alvefur <zash@zash.se>
parents:
8135
diff
changeset
|
23 st.message({ to = session.full_jid, from = motd_jid }) |
abd32bc33a9c
mod_motd: Remove redundant conditions
Kim Alvefur <zash@zash.se>
parents:
8135
diff
changeset
|
24 :tag("body"):text(motd_text); |
abd32bc33a9c
mod_motd: Remove redundant conditions
Kim Alvefur <zash@zash.se>
parents:
8135
diff
changeset
|
25 module:send(motd_stanza); |
abd32bc33a9c
mod_motd: Remove redundant conditions
Kim Alvefur <zash@zash.se>
parents:
8135
diff
changeset
|
26 module:log("debug", "MOTD send to user %s", session.full_jid); |
4654
0975505f5a54
mod_motd: Use presence/bare to catch a client's initial presence and send the MOTD then (fixes #282)
Matthew Wild <mwild1@gmail.com>
parents:
4649
diff
changeset
|
27 end, 1); |