Software /
code /
verse
Annotate
plugins/compression.lua @ 498:50d0bd035bb7
util.sasl.oauthbearer: Don't send authzid
It's not needed and not recommended in XMPP unless we want to act as
someone other than who we authenticate as. We find out the JID during
resource binding.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 23 Jun 2023 12:09:49 +0200 |
parent | 380:0891b4e27766 |
rev | line source |
---|---|
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 -- Copyright (C) 2009-2010 Matthew Wild |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 -- Copyright (C) 2009-2010 Tobias Markmann |
380 | 3 -- |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 -- This project is MIT/X11 licensed. Please see the |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 -- COPYING file in the source package for more information. |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 -- |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 |
250 | 8 local verse = require "verse"; |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 local zlib = require "zlib"; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 local xmlns_compression_feature = "http://jabber.org/features/compress" |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 local xmlns_compression_protocol = "http://jabber.org/protocol/compress" |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 local xmlns_stream = "http://etherx.jabber.org/streams"; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 local compression_level = 9; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 -- returns either nil or a fully functional ready to use inflate stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 local function get_deflate_stream(session) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 local status, deflate_stream = pcall(zlib.deflate, compression_level); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 if status == false then |
197
7e98cf2c1d8d
plugins.*: Use verse.stanza() & co instead of require util.stanza
Kim Alvefur <zash@zash.se>
parents:
176
diff
changeset
|
21 local error_st = verse.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("setup-failed"); |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
22 session:send(error_st); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
23 session:error("Failed to create zlib.deflate filter: %s", tostring(deflate_stream)); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
24 return |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 return deflate_stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
28 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
29 -- returns either nil or a fully functional ready to use inflate stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
30 local function get_inflate_stream(session) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 local status, inflate_stream = pcall(zlib.inflate); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
32 if status == false then |
197
7e98cf2c1d8d
plugins.*: Use verse.stanza() & co instead of require util.stanza
Kim Alvefur <zash@zash.se>
parents:
176
diff
changeset
|
33 local error_st = verse.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("setup-failed"); |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
34 session:send(error_st); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
35 session:error("Failed to create zlib.inflate filter: %s", tostring(inflate_stream)); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
36 return |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
37 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
38 return inflate_stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
39 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
40 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
41 -- setup compression for a stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
42 local function setup_compression(session, deflate_stream) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
43 function session:send(t) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
44 --TODO: Better code injection in the sending process |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
45 local status, compressed, eof = pcall(deflate_stream, tostring(t), 'sync'); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
46 if status == false then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
47 session:close({ |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
48 condition = "undefined-condition"; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
49 text = compressed; |
197
7e98cf2c1d8d
plugins.*: Use verse.stanza() & co instead of require util.stanza
Kim Alvefur <zash@zash.se>
parents:
176
diff
changeset
|
50 extra = verse.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("processing-failed"); |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
51 }); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
52 session:warn("Compressed send failed: %s", tostring(compressed)); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
53 return; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
54 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
55 session.conn:write(compressed); |
380 | 56 end; |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
57 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
58 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
59 -- setup decompression for a stream |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
60 local function setup_decompression(session, inflate_stream) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
61 local old_data = session.data |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
62 session.data = function(conn, data) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
63 session:debug("Decompressing data..."); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
64 local status, decompressed, eof = pcall(inflate_stream, data); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
65 if status == false then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
66 session:close({ |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
67 condition = "undefined-condition"; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
68 text = decompressed; |
197
7e98cf2c1d8d
plugins.*: Use verse.stanza() & co instead of require util.stanza
Kim Alvefur <zash@zash.se>
parents:
176
diff
changeset
|
69 extra = verse.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("processing-failed"); |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
70 }); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
71 stream:warn("%s", tostring(decompressed)); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
72 return; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
73 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
74 return old_data(conn, decompressed); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
75 end; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
76 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
77 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
78 function verse.plugins.compression(stream) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
79 local function handle_features(features) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
80 if not stream.compressed then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
81 -- does remote server support compression? |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
82 local comp_st = features:child_with_name("compression"); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
83 if comp_st then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
84 -- do we support the mechanism |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
85 for a in comp_st:children() do |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
86 local algorithm = a[1] |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
87 if algorithm == "zlib" then |
197
7e98cf2c1d8d
plugins.*: Use verse.stanza() & co instead of require util.stanza
Kim Alvefur <zash@zash.se>
parents:
176
diff
changeset
|
88 stream:send(verse.stanza("compress", {xmlns=xmlns_compression_protocol}):tag("method"):text("zlib")) |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
89 stream:debug("Enabled compression using zlib.") |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
90 return true; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
91 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
92 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
93 session:debug("Remote server supports no compression algorithm we support.") |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
94 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
95 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
96 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
97 local function handle_compressed(stanza) |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
98 if stanza.name == "compressed" then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
99 stream:debug("Activating compression...") |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
100 |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
101 -- create deflate and inflate streams |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
102 local deflate_stream = get_deflate_stream(stream); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
103 if not deflate_stream then return end |
380 | 104 |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
105 local inflate_stream = get_inflate_stream(stream); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
106 if not inflate_stream then return end |
380 | 107 |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
108 -- setup compression for stream.w |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
109 setup_compression(stream, deflate_stream); |
380 | 110 |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
111 -- setup decompression for stream.data |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
112 setup_decompression(stream, inflate_stream); |
380 | 113 |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
114 stream.compressed = true; |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
115 stream:reopen(); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
116 elseif stanza.name == "failure" then |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
117 stream:warn("Failed to establish compression"); |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
118 end |
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
119 end |
72
1649a6022adb
verse.plugins.compression: Bump priority of stream-features handler to negotiate compression before resource binding
Matthew Wild <mwild1@gmail.com>
parents:
71
diff
changeset
|
120 stream:hook("stream-features", handle_features, 250); |
71
5b74d155036d
verse.plugins.compression: Support for stream compression (requires brimworks lua-zlib)
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
121 stream:hook("stream/"..xmlns_compression_protocol, handle_compressed); |
79
da06d4996992
plugins.compression: Add newline at end of file (helps old versions of squish for one thing)
Matthew Wild <mwild1@gmail.com>
parents:
74
diff
changeset
|
122 end |