aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2014-09-02 17:56:42 +0100
committerMatthew Wild <mwild1@gmail.com>2014-09-02 17:56:42 +0100
commit47afff47de08625886081cef5e523c7d64c510d5 (patch)
tree05f331e7be0678dbf158f8ee9d7af918cef2293f
parentd92d76dff18b169b625bbd603236801b6994238c (diff)
downloadprosody-47afff47de08625886081cef5e523c7d64c510d5.tar.gz
prosody-47afff47de08625886081cef5e523c7d64c510d5.zip
util.hex: Small util lib for converting to/from hex strings
-rw-r--r--util/hex.lua19
1 files changed, 19 insertions, 0 deletions
diff --git a/util/hex.lua b/util/hex.lua
new file mode 100644
index 00000000..72fc22bd
--- /dev/null
+++ b/util/hex.lua
@@ -0,0 +1,19 @@
+local s_char = string.char;
+
+local function char_to_hex(c)
+ return ("%02x"):format(c:byte())
+end
+
+local function hex_to_char(h)
+ return s_char(tonumber(h, 16));
+end
+
+function to(s)
+ return s:gsub(".", char_to_hex);
+end
+
+function from(s)
+ return s:gsub("..", hex_to_char);
+end
+
+return { to = to, from = from }