mod_s2s_never_encrypt_blacklist/mod_s2s_never_encrypt_blacklist.lua
author Marco Cirillo <maranda@lightwitch.org>
Fri, 02 Sep 2011 23:35:25 +0000
changeset 413 e4d33cdfed21
parent 412 8963f4026f3a
child 417 8fe1b47c9bde
permissions -rw-r--r--
mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
412
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     1
-- Filter out servers which gets choppy and buggy when it comes to starttls.
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     2
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     3
local bad_servers = module:get_option_set("tls_s2s_blacklist");
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     4
413
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
     5
local function disable_tls_for_baddies_in(event)
412
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     6
	if bad_servers:contains(event.origin.to_host) then event.origin.conn.starttls = nil; end
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     7
end
8963f4026f3a mod_s2s_never_encrypt_blacklist: first commit.
Marco Cirillo <maranda@lightwitch.org>
parents:
diff changeset
     8
413
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
     9
local function disable_tls_for_baddies_out(event)
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    10
	if bad_servers:contains(event.origin.from_host) then event.origin.conn.starttls = nil; end
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    11
end
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    12
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    13
module:hook("s2s-stream-features", disable_tls_for_baddies_out, 10)
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    14
module:hook("stanza/http://etherx.jabber.org/streams:features", disable_tls_for_baddies_in, 510)
e4d33cdfed21 mod_s2s_never_encrypt_blacklist: filter both incoming and outgoing streams.
Marco Cirillo <maranda@lightwitch.org>
parents: 412
diff changeset
    15