Software / code / prosody
Comparison
plugins/mod_compression.lua @ 2885:ae72c0dd6f1f
mod_compression: More robust stanza processing.
| author | Waqas Hussain <waqas20@gmail.com> |
|---|---|
| date | Tue, 09 Mar 2010 18:19:50 +0500 |
| parent | 2884:6807f5fa0eb4 |
| child | 2886:3baee526d714 |
comparison
equal
deleted
inserted
replaced
| 2884:6807f5fa0eb4 | 2885:ae72c0dd6f1f |
|---|---|
| 45 session.log("warn", "Tried to establish another compression layer."); | 45 session.log("warn", "Tried to establish another compression layer."); |
| 46 return; | 46 return; |
| 47 end | 47 end |
| 48 | 48 |
| 49 -- checking if the compression method is supported | 49 -- checking if the compression method is supported |
| 50 local method = stanza:child_with_name("method")[1]; | 50 local method = stanza:child_with_name("method"); |
| 51 method = method and method[1]; | |
| 51 if method == "zlib" then | 52 if method == "zlib" then |
| 52 -- create deflate and inflate streams | 53 -- create deflate and inflate streams |
| 53 local status, deflate_stream = pcall(zlib.deflate, compression_level); | 54 local status, deflate_stream = pcall(zlib.deflate, compression_level); |
| 54 if status == false then | 55 if status == false then |
| 55 local error_st = st.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("setup-failed"); | 56 local error_st = st.stanza("failure", {xmlns=xmlns_compression_protocol}):tag("setup-failed"); |