diff options
author | daurnimator <quae@daurnimator.com> | 2015-08-09 00:47:35 +1000 |
---|---|---|
committer | daurnimator <quae@daurnimator.com> | 2015-08-09 00:47:35 +1000 |
commit | b34f9c0fd6a815f498c03717384ba8dd543e75f7 (patch) | |
tree | dae19a751b0a6149af6a78e514be6fb7b44e421b | |
parent | 60fc10973eb348cb3d99d27f083437ddeab03f14 (diff) | |
download | luaossl-b34f9c0fd6a815f498c03717384ba8dd543e75f7.tar.gz luaossl-b34f9c0fd6a815f498c03717384ba8dd543e75f7.tar.bz2 luaossl-b34f9c0fd6a815f498c03717384ba8dd543e75f7.zip |
Allow passing openssl.ssl.context:setCipherList a vararg of ciphers, or an array
-rw-r--r-- | src/openssl.ssl.context.lua | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/openssl.ssl.context.lua b/src/openssl.ssl.context.lua index 44a9163..2da84de 100644 --- a/src/openssl.ssl.context.lua +++ b/src/openssl.ssl.context.lua | |||
@@ -1,3 +1,16 @@ | |||
1 | local ctx = require"_openssl.ssl.context" | 1 | local ctx = require"_openssl.ssl.context" |
2 | 2 | ||
3 | local pack = table.pack or function(...) return { n = select("#", ...); ... } end | ||
4 | |||
5 | -- Allow passing a vararg of ciphers, or an array | ||
6 | local setCipherList; setCipherList = ctx.interpose("setCipherList", function (self, ciphers, ...) | ||
7 | if (...) then | ||
8 | local ciphers_t = pack(...) | ||
9 | ciphers = table.concat(ciphers_t, ":", 1, ciphers_t.n) | ||
10 | elseif type(ciphers) == "table" then | ||
11 | ciphers = table.concat(ciphers, ":") | ||
12 | end | ||
13 | return setCipherList(self, ciphers) | ||
14 | end) | ||
15 | |||
3 | return ctx | 16 | return ctx |