Skip to content

Instantly share code, notes, and snippets.

@viq
Created September 27, 2015 19:30
Show Gist options
  • Save viq/56de2bd50bbe951f52da to your computer and use it in GitHub Desktop.
Save viq/56de2bd50bbe951f52da to your computer and use it in GitHub Desktop.
Metronome daemonize kdump
This file has been truncated, but you can view the full file.
28868 EMUL "native"
28868 ktrace RET ktrace 0
28868 ktrace CALL execve(0x7f7ffffdbbe5,0x7f7ffffdbae0,0x7f7ffffdbaf0)
28868 ktrace NAMI "/usr/local/sbin/metronome"
28868 ktrace NAMI "/usr/local/bin/lua51"
28868 lua51 NAMI "/usr/libexec/ld.so"
28868 EMUL "native"
28868 lua51 RET execve 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL mprotect(0xbe556b0d000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getentropy(0xbe556c10024,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077355888640/0xbe4cf270000
28868 lua51 CALL mprotect(0xbe4cf270000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe4cf273000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getentropy(0x7f7ffffbd420,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL getentropy(0xbe4cf2724a0,256)
28868 lua51 RET getentropy 0
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080325406720/0xbe580264000
28868 lua51 CALL mprotect(0xbe556c10000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077132611584/0xbe4c1d81000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079904419840/0xbe5670e8000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077029552128/0xbe4bbb38000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078563782656/0xbe517260000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080213372928/0xbe57978c000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078473195520/0xbe511bfc000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077905121280/0xbe4efe3a000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080978956288/0xbe5a71aa000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079180349440/0xbe53be61000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078740623360/0xbe521b06000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078802305024/0xbe5255d9000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080361340928/0xbe5824a9000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077620842496/0xbe4def1e000
28868 lua51 CALL getentropy(0x7f7ffffbd3ec,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL getentropy(0x7f7ffffbd3ec,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL getentropy(0x7f7ffffbd3ec,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL open(0xbe55690b5b1,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/var/run/ld.so.hints"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbd1b0)
28868 lua51 STRU struct stat { dev=4, ino=27446, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=0<"wheel">, rdev=110888, atime=1443377314<"Sep 27 18:08:34 2015">.326890149, mtime=1443377314<"Sep 27 18:08:34 2015">.266893976, ctime=1443377314<"Sep 27 18:08:34 2015">.266893976, size=12946, blocks=28, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x3292,0x1<PROT_READ>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13079855472640/0xbe56423a000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079612043264/0xbe555a13000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080128929792/0xbe574704000
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423bc71,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libcurses.so.14.0"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc260)
28868 lua51 STRU struct stat { dev=5, ino=77956, mode=-r--r--r-- , nlink=5, uid=0<"root">, gid=7<"bin">, rdev=317496, atime=1443380769<"Sep 27 19:06:09 2015">.847847980, mtime=1442715522<"Sep 20 02:18:42 2015">, ctime=1442782577<"Sep 20 20:56:17 2015">.335548139, size=1441593, blocks=2848, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbc2e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M^PA\^A\0\0\0\0\0@\0\0\0\0\0\0\0\M^XW\^U\0\0\
\0\0\0\0\0\0\0@\08\0 \0@\0#\0 \0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^^6\^D\0\0\0\0\0\^^6\^D\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0 6\^D\0\0\0\0\0 6\^T\
\0\0\0\0\0 6\^T\0\0\0\0\0\M^P\^Y\^A\0\0\0\0\0\M^P\^Y\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\
\0\0\0\0P\^E\0\0\0\0\0\0P%\0\0\0\0\0\0P%\0\0\0\0\0\M-X1\0\0\0\0\0\0\M-X1\0\0\0\0\0\0\0\0\^P\0\0\
\0\0\0\^A\0\0\0\^F\0\0\0\M-X\M^A\^E\0\0\0\0\0\M-X\M^A5\0\0\0\0\0\M-X\M^A5\0\0\0\0\0\M-`\f\0\0\0\
\0\0\0\M-`\f\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-@\M^N\^E\0\0\0\0\0\M-@\M^NE\0\0\0\
\0\0\M-@\M^NE\0\0\0\0\0\M-P\b\0\0\0\0\0\0\^X\v\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\
\M^X\M^@\^E\0\0\0\0\0\M^X\M^@%\0\0\0\0\0\M^X\M^@%\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\
\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M^XO\^E\0\0\0\0\0\M^XO\^U\0\0\0\0\0\M^XO\^U\0\0\0\0\0\^X\0\0\0\0\
\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-4\M-e\^D\0\0\0\0\0\M-4\M-e\^T\0\0\0\
\0\0\M-4\M-e\^T\0\0\0\0\0\M-d\^U\0\0\0\0\0\0\M-d\^U\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\
\^F\0\0\0\0P\^E\0\0\0\0\0\0P%\0\0\0\0\0\0P%\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^B\0\0\M-l\^B\0\0\0\0\0\0w\^B\0\0\M-1\^B\0\0\
\M-C\^B\0\0\^Q\^A\0\0g\^A\0\0\0\0\0\0\0\0\0\0=\0\0\0`\0\0\0\^P\^B\0\0\0\0\0\0\0\0\0\0\M^T\^B\0\
\0\M-0\^B\0\0\0\0\0\0\0\0\0\0\r\^A\0\0\^Z\^B\0\0^\^A\0\0\M-E\^A\0\0m\^A\0\0\0\0\0\0-\^B\0\0\M^[\
\0\0\0q\0\0\0\^B\^B\0\0z\^B\0\0\0\0\0\0o\^B\0\0\0\0\0\0o\^A\0\0\M-@\0\0\0X\^A\0\0\M^^\^A\0\0`\
\^A\0\0\M-U\^B\0\0\M-w\0\0\0?\^B\0\0C\^A\0\0007\^B\0\0\0\0\0\0\M-k\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0Y\^A\0\0\^\\^B\0\0\0\0\0\0c\^B\0\0\^?\^A\0\0\0\0\0\0\M^Y\^A\0\0\0\0\0\0\M-P\0\0\0\0\0\0\0\0\0\
\0\0\M->\0\0\0\0\0\0\0\M-h\0\0\0\M-u\^A\0\0\^T\^B\0\0b\^B\0\0\M^R\^B\0\09\^B\0\0\M^P\^A\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0u\^B\0\0#\^B\0\0000\^B\0\0\0\0\0\0\0\0\0\0\^_\^B\0\0\0\0\0\0n\0\0\0\
U\^A\0\0\0\0\0\0j\^A\0\0\^A\^B\0\0\M-,\^B\0\0\^O\^A\0\0:\^B\0\0\M--\0\0\0\M^N\^A\0\0l\^A\0\0\0\
\0\0\0\M-s\^A\0\0\M-e\^B\0\0\0\0\0\0z\^A\0\0\M-k\0\0\0\M^^\^B\0\0O\^A\0\0\^Q\^B\0\0\M--\^B\0\0\
\M^M\^B\0\0\v\^B\0\0\M-V\^A\0\0\0\0\0\0\0\0\0\0\M^N\^B\0\0\M-&\^B\0\0\M-P\^B\0\0\M^Y\^B\0\0\M-G\
\^B\0\0\M-(\^A\0\0\0\0\0\0'\^B\0\0\M-*\^B\0\0\M-i\^B\0\0\M-+\^A\0\0l\^B\0\0(\^B\0\0\M-n\^A\0\0\
\M-[\^B\0\0004\^A\0\0C\^B\0\0\M-6\^A\0\0\0\0\0\0\240\^A\0\0\^?\^B\0\0\0\0\0\0\240\0\0\0\M-6\^B\
\0\0*\^B\0\0\0\0\0\0\0\0\0\0c\^A\0\0\M^F\^B\0\0\M^@\^B\0\0\M-K\^B\0\0\0\0\0\0\^\\0\0\0\^V\^B\0\
\0K\^B\0\0\M-6\0\0\0\0\0\0\0/\^B\0\0\f\^A\0\0\0\0\0\0\^P\0\0\0\^O\^B\0\0\0\0\0\0\M^P\0\0\0E\^B\
\0\0N\^A\0\0002\^B\0\0\M^N\0\0\0\M-@\^B\0\0\0\0\0\0^\^B\0\0\M-.\^A\0\0\M-f\0\0\0\M-0\^A\0\0\M-4\
\^B\0\0\M-D\^A\0\0\M-J\^B\0\0]\^B\0\0j\^B\0\0\M-%\^B\0\0\M-{\^A\0\0\0\0\0\0\0\0\0\0t\^B\0\0\M^J\
\^B\0\0\0\0\0\0\M-j\^B\0\0\M-l\^A\0\0\M-<\^B\0\0\M-(\^B\0\0007\^A\0\0s\^B\0\0+\0\0\0@\^B\0\0A\
\^A\0\0\M^U\^A\0\0\0\0\0\0d\^B\0\0 \^B\0\0\0\0\0\0e\^B\0\0\0\0\0\0\M-W\^B\0\0\M-g\^B\0\0\
\^A\0\0m\^B\0\0002\0\0\0\0\0\0\0\0\0\0\0\M^O\^B\0\0\0\0\0\0\^S\^B\0\0\0\0\0\0\M^B\^A\0\0\M-c\
\^B\0\0\f\^B\0\0,\^B\0\0\M-l\0\0\0\^D\^A\0\0\M^E\0\0\0\0\0\0\0\0\0\0\0\M-2\0\0\0\0\0\0\0\M-|\^A\
\0\0\0\0\0\0p\^B\0\0~\^B\0\0\M-'\^B\0\0\M-Z\^A\0\0\M-I\^B\0\0G\^B\0\0\0\0\0\0\M-b\^B\0\0f\0\0\0\
Q\^B\0\0O\^B\0\0\0\0\0\0\M-9\^B\0\0\M^Q\0\0\0\M^]\0\0\0\M-,\0\0\0\M-X\^B\0\0\M^F\^A\0\0\M^B\^B\
\0\0\M-=\^A\0\0\M-]\^B\0\0\M-8\^B\0\0y\^B\0\0\0\0\0\0I\^B\0\0\M-d\^B\0\0\0\0\0\0\M^K\^B\0\0\0\0\
\0\0\M-I\^A\0\0\M-x\^A\0\0\M^I\^B\0\0\0\0\0\0\M^M\^A\0\0\0\0\0\0\M-O\^B\0\0\M-D\^B\0\0\M-j\0\0\
\0\M-X\0\0\0\0\0\0\0\M^?\^A\0\0\^F\^B\0\0f\^B\0\0\0\0\0\0q\^A\0\0\0\0\0\0007\0\0\0\M-[\0\0\0\
\M^]\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\^B\0\0\0\0\0\0\^R\^B\0\0;\^B\0\0\240\^B\0\0\0\0\
\0\0.\0\0\0@\^A\0\0\0\0\0\0\M-3\^B\0\0\0\0\0\0\M^]\^B\0\0v\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^N\^A\
\0\0\M^W\^A\0\0)\^B\0\0\M-2\^B\0\0\M-$\^B\0\0\b\^B\0\0\M-?\^A\0\0\^]\^A\0\0E\0\0\0\M^C\^B\0\0\
\M-k\^A\0\0\0\0\0\0\M^_\^B\0\0\M-"\^B\0\0\^Z\^A\0\0\0\0\0\0\M-H\^A\0\0\M^E\^B\0\0\M-:\^B\0\0\
\M-9\^A\0\0\M^R\^A\0\0\0\0\0\0Y\^B\0\0\0\0\0\0K\0\0\0\M^L\^A\0\0\M^?\0\0\0\M-M\^B\0\0\M-q\^A\0\
\0Y\0\0\0Z\^B\0\0\M-Z\^B\0\0F\0\0\0\M-*\^A\0\0'\^A\0\0\0\0\0\0\0\0\0\0~\^A\0\0F\^A\0\0r\0\0\0\0\
\0\0\0%\^B\0\0\M-7\^A\0\0\M-U\0\0\0V\^A\0\0<\^B\0\0\0\0\0\0\0\0\0\0\M-i\0\0\0r\^A\0\0\0\0\0\0\
\M^G\^B\0\0\0\0\0\0\M-h\^A\0\0006\^B\0\0\M->\^B\0\0,\^A\0\0\0\0\0\0\M-R\^B\0\0\0\0\0\0\0\0\0\0\
\M-.\^B\0\0\M^[\^A\0\0\M-f\^A\0\0\M^E\^A\0\0r\^B\0\0|\^B\0\0\M-d\0\0\0\M^L\^B\0\0\0\0\0\0\M-Q\
\^A\0\0F\^B\0\0B\0\0\0\M^@\0\0\0\0\0\0\0(\^A\0\08\0\0\0\M-'\^A\0\0\0\0\0\0|\^A\0\0h\^A\0\0\M-T\
\0\0\0\M-F\^A\0\0\M-A\^A\0\0\M-J\^A\0\0\0\0\0\0a\^A\0\0\0\0\0\0\M-`\^B\0\0\M-8\^A\0\0\0\0\0\0\0\
\0\0\0\M-T\^B\0\0\0\0\0\0}\0\0\0\M^Q\^B\0\0\M^X\^A\0\0\M-A\^B\0\0\M-_\^B\0\0\0\0\0\0\0\0\0\0T\
\^B\0\0\0\0\0\0\M-a\0\0\0i\0\0\0\0\0\0\0\M-Q\^B\0\0\M-'\0\0\0\0\0\0\0\0\0\0\0\M^G\^A\0\0_\^B\0\
\0\M-?\^B\0\0\0\0\0\0\M-#\^B\0\0\M-/\^A\0\0\0\0\0\0\M-h\^B\0\0\r\^B\0\0\M-^\^B\0\0\M-+\^B\0\0\
\M-F\^B\0\0\M-t\^A\0\0\0\0\0\0\M-!\^B\0\0\M-;\^B\0\0\M-"\0\0\0\0\0\0\0\M-Y\^B\0\0\M^[\^B\0\0\
\M-H\^B\0\0\0\0\0\0\^U\^B\0\0\M-)\^B\0\0\M--\^A\0\0E\^A\0\0v\^B\0\0\M-D\0\0\0\0\0\0\0\M^X\^B\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0N\^B\0\0\0\0\0\0003\^B\0\0\0\0\0\0\M-V\^B\0\0\M^S\^B\0\0\M-d\
\^A\0\0\^B\^A\0\0\M^\\^B\0\0\^U\^A\0\0=\^B\0\0\M-=\^B\0\0{\^A\0\0\\\^B\0\0\0\0\0\0\0\0\0\0q\^B\
\0\0\^N\^B\0\0\M-c\^A\0\0\M^Z\^B\0\0N\0\0\0\0\0\0\0\^E\^B\0\0\M-a\^A\0\0\0\0\0\0\M-N\^B\0\0\M^A\
\^B\0\0\^C\^A\0\0\0\0\0\0\M^\\0\0\0\M-B\0\0\0\0\0\0\0{\^B\0\0\0\0\0\0\M-L\^B\0\0\M-j\^A\0\0
\^B\0\0\M^S\^A\0\0\0\0\0\0\M-:\^A\0\0W\^B\0\0\0\0\0\0"\^A\0\0k\^A\0\0\M^A\^A\0\0\0\0\0\0h\0\0\0\
:\^A\0\0a\^B\0\0\0\0\0\0/\^A\0\0\M-!\^A\0\0\0\0\0\0D\^B\0\0\0\0\0\0\M-a\^B\0\0\M-S\^B\0\0001\^B\
\0\0\M^H\^B\0\0\M-4\^A\0\0U\^B\0\0\M-%\^A\0\0R\^B\0\0W\0\0\0\M^P\^B\0\0-\^A\0\0T\^A\0\0\M-9\0\0\
\0\0\0\0\0\M-\\^B\0\0\M-B\^B\0\0\M^W\^B\0\0\0\0\0\0\0\0\0\0001\0\0\0v\0\0\0\M-`\^A\0\0\0\0\0\0\
\0\0\0\0\M-L\^A\0\0\M^D\^B\0\0$\0\0\0\0\0\0\0\^W\^B\0\0>\^B\0\0\M-5\0\0\0\M-7\^B\0\0\0\0\0\0+\
\^B\0\0|\0\0\0\M-f\^B\0\0\0\0\0\0\M-S\^A\0\0p\0\0\0\M-K\^A\0\0\0\0\0\0\M-)\^A\0\0\M-z\^A\0\0005\
\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^^\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\0\0\0\0U\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0j\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0003\0\0\0*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0/\0\0\0x\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^T\0\0\0\0\0\0\0\0\0\0\0\M^D\0\0\0Z\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^G\0\0\0\^Y\0\0\
\0\0\0\0\0k\0\0\0\0\0\0\0\0\0\0\0z\0\0\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0\0\0\0\0\0\0\
\^?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\0\0\0;\0\0\0\0\0\0\
\0\M-$\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"\0\0\0\0\0\0\0X\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\M^W\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\M-C\0\0\0\0\0\0\0\M-K\0\0\0\0\0\0\0,\0\0\0\^_\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-L\0\0\0\0\0\0\0\0\0\0\0-\0\0\0T\0\0\0\0\0\0\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-\\0\0\0\M-M\0\0\0C\0\0\0\0\0\0\0\M^L\0\0\0\M-/\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\M-(\0\0\0\0\0\0\0c\0\0\0\M^_\0\0\0\M^O\0\0\0005\0\0\0!\0\0\0\M-;\
\0\0\0\0\0\0\0\0\0\0\0P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^M\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^A\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0V\0\0\0D\0\0\0\
\0\0\0\0\0\0\0\0Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\b\^A\0\0\^P\^A\0\0\M^V\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-1\0\0\0\0\0\0\0\M-S\0\0\0\0\0\0\0\M-8\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0\^[\^A\0\0\
\M-I\0\0\0\^Y\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0R\0\0\0\0\0\0\0m\0\0\0\0\0\0\0s\0\0\0\0\0\0\0\0\0\0\
\0\M-A\0\0\0\M-y\0\0\0\^W\^A\0\0\0\0\0\0*\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-?\0\0\0\0\0\
\0\0\0\0\0\0\^_\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0\0\0\0\0\0\0\0\0\0\0\
\M^X\0\0\0\M-Q\0\0\0\0\0\0\0\^\\^A\0\0\M-+\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x45a000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13080785936384/0xbe59b996000
28868 lua51 CALL mmap(0xbe59b996000,0x44000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13080785936384/0xbe59b996000
28868 lua51 CALL mmap(0xbe59bad9000,0x12000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x43000)
28868 lua51 RET mmap 13080787259392/0xbe59bad9000
28868 lua51 CALL mmap(0xbe59bbeb000,0x4000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x55000)
28868 lua51 RET mmap 13080788381696/0xbe59bbeb000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079484207104/0xbe54e029000
28868 lua51 CALL mmap(0xbe59bcee000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x58000)
28868 lua51 RET mmap 13080789442560/0xbe59bcee000
28868 lua51 CALL mmap(0xbe59bdee000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x58000)
28868 lua51 RET mmap 13080790491136/0xbe59bdee000
28868 lua51 CALL getentropy(0xbe59bbeb000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078399156224/0xbe50d560000
28868 lua51 CALL open(0xbe56423bd81,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libm.so.9.0"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc260)
28868 lua51 STRU struct stat { dev=5, ino=77964, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=319376, atime=1443380769<"Sep 27 19:06:09 2015">.847847980, mtime=1442715556<"Sep 20 02:19:16 2015">, ctime=1442782576<"Sep 20 20:56:16 2015">.104773622, size=586530, blocks=1184, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbc2e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-PM\0\0\0\0\0\0@\0\0\0\0\0\0\0H\M^A\b\0\0\0\
\0\0\0\0\0\0@\08\0 \0@\0"\0\^_\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\M^N\M-d\^A\0\0\0\0\0\M^N\M-d\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\240\M-d\
\^A\0\0\0\0\0\240\M-d\^Q\0\0\0\0\0\240\M-d\^Q\0\0\0\0\0\M-@\M^F\0\0\0\0\0\0\M-@\M^F\0\0\0\0\0\0\
\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0`k\^B\0\0\0\0\0`k"\0\0\0\0\0`k"\0\0\0\0\0P\^A\0\0\0\0\0\0P\
\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-0l\^B\0\0\0\0\0\M-0l2\0\0\0\0\0\M-0l2\0\0\
\0\0\08\^E\0\0\0\0\0\08\^E\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0r\^B\0\0\0\0\0\0rB\0\
\0\0\0\0\0rB\0\0\0\0\0`\v\0\0\0\0\0\0\M-@\f\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0pk\^B\
\0\0\0\0\0pk"\0\0\0\0\0pk"\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\
\^D\0\0\0Hk\^B\0\0\0\0\0Hk\^R\0\0\0\0\0Hk\^R\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\
\0\0\0\0\0P\M-etd\^D\0\0\0PG\^B\0\0\0\0\0PG\^R\0\0\0\0\0PG\^R\0\0\0\0\0D\b\0\0\0\0\0\0D\b\0\0\0\
\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0`k\^B\0\0\0\0\0`k"\0\0\0\0\0`k"\0\0\0\0\0\b\0\0\0\
\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\a\^A\0\0a\^A\0\0!\
\^A\0\0\M-t\0\0\0\M^[\0\0\0J\^A\0\0\0\0\0\0S\^A\0\0\M-j\0\0\0\0\0\0\0)\^A\0\0\0\0\0\0\M-g\0\0\0\
>\^A\0\0\M-J\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0P\^A\0\0|\0\0\0\0\0\0\0\M-M\0\0\0\0\0\0\0\0\0\0\0\M-5\
\0\0\0003\^A\0\0<\0\0\0\0\0\0\0\^Y\^A\0\0\^R\0\0\0B\^A\0\0s\0\0\0=\0\0\0\0\0\0\0\M-@\0\0\0\^C\
\^A\0\0\0\0\0\0\M^O\0\0\0\0\0\0\0\0\0\0\0\M^U\0\0\0\240\0\0\0006\^A\0\0T\0\0\0k\0\0\0\^[\0\0\0\
\0\0\0\0002\^A\0\0\M-a\0\0\0\M-?\0\0\0\M-6\0\0\0\M-v\0\0\0\0\0\0\0\M^G\0\0\0c\0\0\0\0\0\0\0\0\0\
\0\0W\^A\0\0\M-G\0\0\0\0\0\0\0\0\0\0\0\M-9\0\0\0\0\0\0\0+\^A\0\0\0\0\0\08\0\0\0C\0\0\0M\^A\0\0W\
\0\0\0#\^A\0\0\M-Z\0\0\0\0\0\0\0\0\0\0\0\^_\^A\0\0\M-A\0\0\0\M-~\0\0\0F\^A\0\0\M-3\0\0\0&\^A\0\
\0\M-d\0\0\0/\^A\0\0\0\0\0\0\^W\^A\0\0\0\0\0\0\^Q\^A\0\0\0\0\0\0000\^A\0\0\0\0\0\0=\^A\0\0\0\0\
\0\0O\0\0\0\0\0\0\0\^\\^A\0\0\0\0\0\0\^O\^A\0\0\M-\\0\0\0\M-<\0\0\0X\^A\0\0\M-O\0\0\0\^U\^A\0\0\
,\0\0\0\M-P\0\0\0P\0\0\0I\^A\0\0@\^A\0\0\^S\^A\0\0004\^A\0\0F\0\0\0\0\0\0\0\r\0\0\0\M-h\0\0\0\
\M-c\0\0\0\0\0\0\0$\^A\0\0\M-k\0\0\0\M-u\0\0\0\0\0\0\0K\^A\0\0]\0\0\0\M-]\0\0\0\0\0\0\0\0\0\0\0\
\^B\^A\0\0Z\^A\0\0\M-i\0\0\0\M-B\0\0\0i\0\0\0\0\0\0\0\0\0\0\0\M-F\0\0\0C\^A\0\0\M^L\0\0\0[\^A\0\
\0E\^A\0\0\^P\^A\0\0\b\^A\0\0,\^A\0\0\M^Z\0\0\0007\^A\0\0*\^A\0\0D\^A\0\0\M-f\0\0\0\0\0\0\0\\\
\^A\0\0\M-I\0\0\0?\^A\0\0Y\^A\0\0G\0\0\0\^F\^A\0\0\M-x\0\0\0\M-!\0\0\0\M--\0\0\0\^R\^A\0\0_\0\0\
\0%\^A\0\0 \^A\0\0\^V\^A\0\0\0\0\0\0\0\0\0\0V\^A\0\0\0\0\0\0\0\0\0\0\M-H\0\0\0\M-|\0\0\0'\
\^A\0\09\^A\0\0\0\0\0\08\^A\0\0H\^A\0\0d\0\0\0\M-}\0\0\0M\0\0\0\0\0\0\0\M-e\0\0\0\^A\^A\0\0\M-o\
\0\0\0\a\^A\0\0\M^W\0\0\0\0\0\0\0\0\0\0\0(\^A\0\0\0\0\0\0001\^A\0\0~\0\0\0\M-p\0\0\0\M-R\0\0\0\
\M^]\0\0\0\M-D\0\0\0A\^A\0\0\^_\0\0\0\M^Q\0\0\0\M^Y\0\0\0O\^A\0\0m\0\0\0\M-;\0\0\0\0\0\0\0!\0\0\
\0\^?\0\0\0Q\^A\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0\0\0\0`\^A\0\0\M^_\0\0\0001\0\0\0\f\^A\0\0U\^A\0\
\0\M-V\0\0\0Q\0\0\0\^X\^A\0\0\M-$\0\0\0\M-(\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0X\0\0\0\0\0\0\0005\^A\
\0\0\0\0\0\0\M-/\0\0\0;\^A\0\0\r\^A\0\0\M-T\0\0\0\0\0\0\0g\0\0\0\M-W\0\0\0\M-&\0\0\0]\^A\0\0\0\
\0\0\0\M-`\0\0\0\M-U\0\0\0\M^M\0\0\0\M-,\0\0\0+\0\0\0y\0\0\09\0\0\0N\^A\0\0_\^A\0\0o\0\0\0\0\0\
\0\0\0\0\0\0\M^S\0\0\0\M^B\0\0\0\0\0\0\0\M-{\0\0\0 \^A\0\0\0\0\0\0&\0\0\0j\0\0\0\0\0\0\0T\^A\0\
\0\^[\^A\0\0\0\0\0\0\0\0\0\0\^D\^A\0\0^\^A\0\0\^]\^A\0\0\^T\^A\0\0000\0\0\0L\^A\0\0t\0\0\0\M^N\
\0\0\0\M-^\0\0\0<\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0004\0\0\0\0\0\0\0\0\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^S\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0>\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0.\0\0\0\0\0\0\0\^Y\0\0\0(\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0H\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\
\0\0\0\0\0\0\0"\0\0\0\0\0\0\0\^\\0\0\0\0\0\0\0002\0\0\0\0\0\0\0\0\0\0\0E\0\0\0\0\0\0\0D\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0 \0\0\0\0\0\0\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0K\0\0\0f\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0\0\0\M^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M^K\0\0\0007\0\0\0a\0\0\0p\0\0\0\0\0\0\0V\0\0\0\0\0\0\0w\0\0\0\0\0\0\0\0\0\0\0\M^T\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\0\0\0\M^J\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0z\0\0\0\0\0\0\0\0\0\0\0\M-"\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-+\0\0\0\0\0\0\0v\0\0\0b\0\0\0\0\0\0\0h\0\
\0\0R\0\0\0\0\0\0\0u\0\0\0\0\0\0\0\0\0\0\0\M-=\0\0\0\0\0\0\0I\0\0\0\M^A\0\0\0n\0\0\0\M-1\0\0\0\
\M-2\0\0\0\0\0\0\0\0\0\0\0\M-*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\0\0\0\0\
\M^\\0\0\0005\0\0\0\0\0\0\0\^]\0\0\0S\0\0\0\0\0\0\0\M-K\0\0\0\M-7\0\0\0/\0\0\0\0\0\0\0\M^@\0\0\
\0\0\0\0\0\0\0\0\0\M^I\0\0\0\0\0\0\0\0\0\0\0-\0\0\0U\0\0\0\M-S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-Y\0\0\0\0\0\0\0\\\0\0\0\0\0\0\0\M-8\0\0\0\0\0\0\0^\0\0\0\M-X\0\0\0\0\0\0\0\M-)\
\0\0\0\M^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-L\0\0\0\0\0\0\0\M-w\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^V\0\0\0\M-q\0\0\0\M-#\0\0\0\M^^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-%\0\0\0q\0\0\0\
\0\0\0\0\0\0\0\0\M^F\0\0\0\0\0\0\0\M-.\0\0\0\0\0\0\0\^Z\0\0\0\0\0\0\0*\0\0\0\^X\0\0\0006\0\0\0\
\^W\0\0\0\M-4\0\0\0\0\0\0\0N\0\0\0\M^R\0\0\0\M-s\0\0\0\^P\0\0\0\0\0\0\0?\0\0\0\M-z\0\0\0:\0\0\0\
\0\0\0\0}\0\0\0\M-b\0\0\0\0\0\0\0\^^\^A\0\0\M^V\0\0\0\0\0\0\0\0\0\0\0;\0\0\0\0\0\0\0\M^H\0\0\0\
\0\0\0\0L\0\0\0\M-r\0\0\0\M-N\0\0\0l\0\0\0\M-m\0\0\0
\^A\0\0\M-:\0\0\0Y\0\0\0\0\0\0\0\v\^A\0\0\^T\0\0\0\0\0\0\0\^E\^A\0\0\0\0\0\0\M-_\0\0\0\0\0\0\0\
\M^P\0\0\0-\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0J\0\0\0\^O\0\0\0@\0\0\0\M-'\0\0\0\M-l\0\0\0\M^D\0\0\0\
\0\0\0\0\0\0\0\0\M-Q\0\0\0\^N\^A\0\0\M-[\0\0\0\0\0\0\0\M^?\0\0\0r\0\0\0'\0\0\0B\0\0\0:\^A\0\0\0\
\0\0\0\M-0\0\0\0\M-n\0\0\0"\^A\0\0003\0\0\0.\^A\0\0\^Z\^A\0\0\M->\0\0\0\M^X\0\0\0G\^A\0\0R\^A\0\
\0\M-C\0\0\0\0\0\0\0x\0\0\0{\0\0\0A\0\0\0\M-y\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\^F\0\0E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0\M-PM\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0 \0\M^@\M-d\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\240\M-d\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0PG\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M^XO\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0`k"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^C\0\^O\0hk"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^R\0\M-Hq2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^S\0\M-Xq2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\0rB\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^U\0`}B\0\0\0\0\0\0\0\0\0\0\0\0\0K\^A\0\0\^R\0\b\0Pi\0\0\0\0\0\0\M-_\^B\0\0\0\0\
\0\0\M-p\0\0\0\^R\0\b\0@p\^A\0\0\0\0\0D\0\0\0\0\0\0\0\M-<\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-Y\^A\0\0\^Q\0
\0@ \^R\0\0\0\0\0@\0\0\0\0\0\0\0k\^B\0\0\^R\0\b\0\M-0\M^F\^A\0\0\0\0\0\M-4\^C\0\0\0\0\0\0\
\M-h\^C\0\0\^R\0\b\0@\M-8\0\0\0\0\0\0\M-9\^A\0\0\0\0\0\0\M-Y\^D\0\0\^R\0\b\0@m\^A\0\0\0\0\0\0\0\
\0\0\0\0\0\0\M-S\^D\0\0\^R\0\b\0\M-0m\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\M-D\^B\0\0\^R\0\b\0@\M^C\0\0\
\0\0\0\0\M-)\0\0\0\0\0\0\0\M^I\^E\0\0\^R\0\b\0@\M^C\^A\0\0\0\0\0F\^A\0\0\0\0\0\0\M-j\0\0\0\^R\0\
\b\0p\\\0\0\0\0\0\0^\^A\0\0\0\0\0\0\M-R\^B\0\0\^R\0\b\0\0\M^G\0\0\0\0\0\0R\^A\0\0\0\0\0\0\M-t\
\^B\0\0\^R\0\b\0\M-@\M^J\0\0\0\0\0\0\M-K\0\0\0\0\0\0\0\^_\^C\0\0\^R\0\b\0 U\0\0\0\0\0\0\M-T\0\0\
\0\0\0\0\0\M-a\^B\0\0\^R\0\b\0`\M^H\0\0\0\0\0\0^\^A\0\0\0\0\0\0\M-3\a\0\0\^R\0\b\0`\M-!\^A\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-R\^D\0\0\^R\0\b\0000\^U\^A\0\0\0\0\0\M-8\^B\0\0\0\0\0\0\0\^C\0\0\^R\0\
\b\0\M^@\M^L\0\0\0\0\0\0\M-.\0\0\0\0\0\0\0\M-e\^A\0\0\^Q\0
\0\240\b\^R\0\0\0\0\0\^P\0\0\0\0\0\0\0]\^B\0\0\^R\0\b\0p\M-\\0\0\0\0\0\0\M-J\^C\0\0\0\0\0\0\M-,\
\^A\0\0\^R\0\b\0\M-08\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\^R\b\0\0\^R\0\b\0`\M-_\^A\0\0\0\0\0\^V\0\0\0\
\0\0\0\0w\^C\0\0\^R\0\b\0 p\^A\0\0\0\0\0\^_\0\0\0\0\0\0\0\M-F\^C\0\0\^R\0\b\0\240\M-c\^A\0\0\0\
\0\0\0\0\0\0\0\0\0\0y\^B\0\0\^R\0\b\0\0\M-U\0\0\0\0\0\0\M-A\0\0\0\0\0\0\0\M-S\^A\0\0\^R\0\b\0\
\M-@\M-X\0\0\0\0\0\0\^E\0\0\0\0\0\0\0X\a\0\0\^R\0\b\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x428000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13078882160640/0xbe52a201000
28868 lua51 CALL mmap(0xbe52a201000,0x1f000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13078882160640/0xbe52a201000
28868 lua51 CALL mmap(0xbe52a31f000,0x9000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x1e000)
28868 lua51 RET mmap 13078883332096/0xbe52a31f000
28868 lua51 CALL mmap(0xbe52a427000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x26000)
28868 lua51 RET mmap 13078884413440/0xbe52a427000
28868 lua51 CALL mmap(0xbe52a527000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x26000)
28868 lua51 RET mmap 13078885462016/0xbe52a527000
28868 lua51 CALL mmap(0xbe52a628000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x27000)
28868 lua51 RET mmap 13078886514688/0xbe52a628000
28868 lua51 CALL getentropy(0xbe52a427b60,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079452045312/0xbe54c17d000
28868 lua51 CALL open(0xbe56423bc91,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libedit.so.5.2"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc260)
28868 lua51 STRU struct stat { dev=5, ino=77957, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=318208, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1442715554<"Sep 20 02:19:14 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.924770068, size=494666, blocks=1024, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbc2e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-`\M^I\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-x \a\0\
\0\0\0\0\0\0\0\0@\08\0 \0@\0#\0 \0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-.\^P\^B\0\0\0\0\0\M-.\^P\^B\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-@\^P\^B\0\0\
\0\0\0\M-@\^P\^R\0\0\0\0\0\M-@\^P\^R\0\0\0\0\0 \M-4\0\0\0\0\0\0 \M-4\0\0\0\0\0\0\0\0\^P\0\0\0\0\
\0\^A\0\0\0\^F\0\0\0\0\M-P\^B\0\0\0\0\0\0\M-P"\0\0\0\0\0\0\M-P"\0\0\0\0\0@\^X\0\0\0\0\0\0@\^X\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0@\M-h\^B\0\0\0\0\0@\M-h2\0\0\0\0\0@\M-h2\0\0\0\0\0\
\a\0\0\0\0\0\0 \a\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0`\M-o\^B\0\0\0\0\0`\M-oB\0\0\0\
\0\0`\M-oB\0\0\0\0\0\M-t\^A\0\0\0\0\0\0\M^@?\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\0\
\M-g\^B\0\0\0\0\0\0\M-g"\0\0\0\0\0\0\M-g"\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\
\0\0\^D\0\0\0\^D\0\0\0\M-H\M-D\^B\0\0\0\0\0\M-H\M-D\^R\0\0\0\0\0\M-H\M-D\^R\0\0\0\0\0\^X\0\0\0\
\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-4\M^F\^B\0\0\0\0\0\M-4\M^F\^R\0\0\
\0\0\0\M-4\M^F\^R\0\0\0\0\0\\\f\0\0\0\0\0\0\\\f\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\
\0\0\0\M-P\^B\0\0\0\0\0\0\M-P"\0\0\0\0\0\0\M-P"\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\a\^A\0\0:\^A\0\0\0\0\0\0!\^A\0\0\M-l\0\0\0g\0\0\
\0\M-w\0\0\0\0\0\0\0:\0\0\0\0\0\0\0\0\0\0\09\^A\0\0\^X\^A\0\0\M-M\0\0\0\M^^\0\0\0\M-A\0\0\0#\0\
\0\0007\^A\0\0\^P\0\0\0\0\0\0\0k\0\0\0u\0\0\0\0\0\0\0\r\^A\0\0\0\0\0\0%\^A\0\0 \^A\0\0\0\0\0\0\
\^F\^A\0\0\0\0\0\0\b\^A\0\0\0\0\0\0L\0\0\0\0\0\0\0\M-9\0\0\0A\0\0\0"\^A\0\0\M^C\0\0\0\0\0\0\0\
\M-p\0\0\0\0\0\0\0\M^V\0\0\0*\^A\0\0F\0\0\0\0\0\0\0\0\0\0\0\M-<\0\0\0\M-!\0\0\0 \0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0001\^A\0\0\^T\0\0\0\0\0\0\0\M-v\0\0\0\0\0\0\0003\^A\0\0\M-j\0\0\0\0\0\0\0\M-x\0\
\0\0\0\0\0\0C\0\0\0\0\0\0\0)\^A\0\0j\0\0\0\0\0\0\0h\0\0\0`\0\0\0\M-z\0\0\0\0\0\0\0\M-S\0\0\0\0\
\0\0\0\^N\^A\0\0\M-^\0\0\0\M-6\0\0\0\M-y\0\0\0M\0\0\0Z\0\0\0\a\^A\0\0\M^\\0\0\0\M-\\0\0\0\M^J\0\
\0\0\M^[\0\0\0\M^D\0\0\0\M-I\0\0\0\M-)\0\0\0\0\0\0\0\M^U\0\0\08\^A\0\0\^C\^A\0\0c\0\0\0\240\0\0\
\0\0\0\0\0a\0\0\0\0\0\0\0\0\0\0\0y\0\0\0\^E\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^W\0\0\0-\^A\0\0X\0\
\0\0I\0\0\0\M-V\0\0\0>\0\0\0\M^B\0\0\0\0\0\0\0\M-n\0\0\0 \^A\0\0\M-,\0\0\0\0\0\0\0\M-Q\0\0\0\0\
\0\0\0\0\0\0\0\M-G\0\0\0\0\0\0\0\0\0\0\0004\^A\0\0\M^S\0\0\0\0\0\0\0\0\0\0\0\M^@\0\0\0\^Q\0\0\0\
\0\0\0\0\M-_\0\0\0\0\0\0\0\M^Z\0\0\0\0\0\0\0\M-'\0\0\0\M-0\0\0\0\0\0\0\08\0\0\0\M-U\0\0\0\M-&\0\
\0\0D\0\0\0\0\0\0\0\0\0\0\0\M-C\0\0\0\0\0\0\0\M-J\0\0\0\0\0\0\0005\0\0\0+\^A\0\0\^]\^A\0\0000\
\^A\0\0\^W\^A\0\0\v\^A\0\0\M-{\0\0\0\^[\^A\0\0\M-/\0\0\0\0\0\0\0\0\0\0\0\M-(\0\0\0\M^?\0\0\0\^P\
\^A\0\0\0\0\0\0|\0\0\0\0\0\0\0\M-+\0\0\0\0\0\0\0\f\^A\0\0\0\0\0\0005\^A\0\0'\^A\0\0\M-o\0\0\0&\
\^A\0\0\0\0\0\0\M-"\0\0\0\^]\0\0\0\M^I\0\0\0\M-$\0\0\0\0\0\0\0\M-t\0\0\0\0\0\0\0\M-e\0\0\0\M^X\
\0\0\0\M-R\0\0\0\M-`\0\0\0\0\0\0\0\^^\0\0\0#\^A\0\0\M-m\0\0\0\^^\^A\0\0o\0\0\0\M-L\0\0\0\0\0\0\
\0\0\0\0\0\M-P\0\0\0\M^N\0\0\0,\^A\0\0%\0\0\0\M-~\0\0\0/\^A\0\0\M-s\0\0\0\0\0\0\0\M-]\0\0\0\0\0\
\0\0004\0\0\0\0\0\0\0\M-E\0\0\0\M-?\0\0\0\0\0\0\0$\^A\0\0\0\0\0\0\^_\^A\0\0\M-Y\0\0\0\M-;\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\^D\^A\0\0\0\0\0\0\0\0\0\0\M-[\0\0\0\M-#\0\0\0\0\0\0\0\0\0\0\0T\0\0\0\\\
\0\0\0\0\0\0\0\M-K\0\0\0\0\0\0\0\M-Z\0\0\0\M-g\0\0\0\0\0\0\0\M-8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-1\0\0\0002\^A\0\0\M^_\0\0\0s\0\0\0\^Q\^A\0\0\^A\^A\0\0\M-b\0\0\0\^O\^A\0\0\M-3\0\0\0\M-h\0\0\
\0U\0\0\0(\^A\0\0.\^A\0\0\0\0\0\0\0\^A\0\0}\0\0\0\0\0\0\0\M-T\0\0\0\^B\^A\0\0\M^P\0\0\0\M-7\0\0\
\0\M-k\0\0\0\^Z\^A\0\0\0\0\0\0=\0\0\0\0\0\0\0006\^A\0\0E\0\0\0\^\\0\0\0\0\0\0\0\0\0\0\0\^\\^A\0\
\0\M-r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0\^V\0\0\0\^Z\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0,\0\0\0\0\0\0\0(\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0J\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^R\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0*\0\0\0\0\0\0\0\0\0\0\0<\0\0\0\0\0\0\0\0\0\0\0001\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0H\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0B\0\0\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0n\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0i\0\0\0\0\0\0\0\0\0\0\0W\0\0\0z\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0d\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0007\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0w\0\0\
\0\0\0\0\0\0\0\0\0\M^H\0\0\0'\0\0\0\0\0\0\0\0\0\0\0;\0\0\0\0\0\0\0002\0\0\0Y\0\0\0\^X\0\0\0G\0\
\0\0\0\0\0\0\0\0\0\0003\0\0\0\0\0\0\0"\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0000\0\0\0\M^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0\0\0Q\0\0\0^\0\0\0\0\0\0\0K\
\0\0\0\0\0\0\0N\0\0\0\0\0\0\0\0\0\0\0]\0\0\0@\0\0\0\M-=\0\0\0\0\0\0\0m\0\0\0_\0\0\0\0\0\0\0\M-B\
\0\0\0\0\0\0\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0\0\0\M-2\0\0\0\M->\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\M-4\0\0\0\0\0\0\0r\0\0\0\0\0\0\0\0\0\0\0p\0\0\0\0\0\0\0~\0\0\0\M^L\0\0\
\0v\0\0\0\0\0\0\0.\0\0\0\0\0\0\0\M^Y\0\0\0\M--\0\0\0\M-W\0\0\0\M-N\0\0\0\M^G\0\0\0\M^K\0\0\0\0\
\0\0\0t\0\0\0\0\0\0\0q\0\0\0\M-:\0\0\0\0\0\0\0\0\0\0\0\M-i\0\0\0\0\0\0\0\0\0\0\0+\0\0\0\M-O\0\0\
\0\0\0\0\0\0\0\0\0l\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^T\0\0\0\^?\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\M^Q\
\0\0\0\M-*\0\0\0\M-@\0\0\0x\0\0\0\0\0\0\0[\0\0\0\0\0\0\0\M^O\0\0\0\0\0\0\0\M-.\0\0\0\M-a\0\0\0\
\0\0\0\0\M^M\0\0\0\M-}\0\0\0\M-D\0\0\0006\0\0\0\M-u\0\0\0\M-c\0\0\0\0\0\0\0\M-H\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-f\0\0\0\M^F\0\0\0\M-d\0\0\0R\0\0\0!\0\0\0\0\0\0\0\0\0\0\0\M^]\0\0\0\^S\^A\0\0\
\M-5\0\0\0\^T\^A\0\0\M-q\0\0\0\0\0\0\0\0\0\0\0\^R\^A\0\0
\^A\0\0\M^R\0\0\0\^[\0\0\0\^U\^A\0\0\M-F\0\0\0?\0\0\0\0\0\0\0\0\0\0\0\M-X\0\0\0P\0\0\0\0\0\0\0{\
\0\0\0\M^E\0\0\0-\0\0\0\^Y\^A\0\0\M-%\0\0\0\^V\^A\0\0\M-|\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M^@~\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\
\0\b\0\M-`\M^I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\240\^P\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^C\0
\0\M-@\^P\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-4\M^F\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\f\0\^P\M^S\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\0\M-P"\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^O\0\b\M-P"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0 \M-P"\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^C\0\^S\0@\M-o2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0P\M-o2\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0`\M-oB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^V\0`\M-qB\
\0\0\0\0\0\0\0\0\0\0\0\0\0F\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0N\0\0\0\^Q\0\^U\0\M-P\
\M-pB\0\0\0\0\0\b\0\0\0\0\0\0\0f\0\0\0\^Q\0\^U\0\M^P\M-oB\0\0\0\0\0\b\0\0\0\0\0\0\0u\0\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-=\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0|\0\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^B\0\0\0\^R\0\b\0\^P\M^L\0\0\0\0\0\0\^C\0\0\0\0\0\0\
\0\M^O\0\0\0\^Q\0\^U\0x\M-oB\0\0\0\0\0\b\0\0\0\0\0\0\0\M^[\0\0\0\^R\0\b\0\M-0\M^Q\0\0\0\0\0\0\
\^R\0\0\0\0\0\0\0\M-E\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M--\0\0\0\^Q\0\^U\0\M-X\
\M-oB\0\0\0\0\0\b\0\0\0\0\0\0\0\M-X\0\0\0\^R\0\b\0\M-`\M^M\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-K\0\0\
\0\^R\0\b\0\M^@\M^Y\0\0\0\0\0\0\a\0\0\0\0\0\0\0\M-M\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\M-x\0\0\0\^R\0\b\0 \M^V\0\0\0\0\0\0\M-<\0\0\0\0\0\0\0\b\^A\0\0\^R\0\b\0\M-P\M-M\0\0\0\0\0\
\0\M-#\0\0\0\0\0\0\0?\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j \0\0\^R\0\b\0\M^P\M^Y\0\
\0\0\0\0\0
\0\0\0\0\0\0\0\^P\^A\0\0\^Q\0\^U\0\M-P\M-oB\0\0\0\0\0\b\0\0\0\0\0\0\0003\^A\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0<\^A\0\0\^R\0\b\0\M-0\M-1\0\0\0\0\0\0\M-&\0\0\0\0\0\0\0J\^A\0\0\^R\0\
\b\0@\M^U\0\0\0\0\0\0p\0\0\0\0\0\0\0g\^A\0\0\^R\0\b\0@\M^R\0\0\0\0\0\0R\0\0\0\0\0\0\0t\^A\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0|\^A\0\0\^R\0\b\0000\M-9\0\0\0\0\0\0]\^O\0\0\0\0\0\0\
\M^K\^A\0\0\^Q\0\^U\0\^P\M-pB\0\0\0\0\0\^D\0\0\0\0\0\0\0`\^N\0\0\^P\0\M-q\M^?`\M-o2\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-Y\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-_\v\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-f\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0-\v\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0004\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x433000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13079098044416/0xbe536fe3000
28868 lua51 CALL mmap(0xbe536fe3000,0x22000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13079098044416/0xbe536fe3000
28868 lua51 CALL mmap(0xbe537104000,0xc000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x21000)
28868 lua51 RET mmap 13079099228160/0xbe537104000
28868 lua51 CALL mmap(0xbe537210000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2d000)
28868 lua51 RET mmap 13079100325888/0xbe537210000
28868 lua51 CALL mmap(0xbe537311000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2e000)
28868 lua51 RET mmap 13079101378560/0xbe537311000
28868 lua51 CALL mmap(0xbe537411000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2e000)
28868 lua51 RET mmap 13079102427136/0xbe537411000
28868 lua51 CALL mmap(0xbe537413000,0x3000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079102435328/0xbe537413000
28868 lua51 CALL getentropy(0xbe537210000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423bc32,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libc.so.83.0"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc260)
28868 lua51 STRU struct stat { dev=5, ino=77954, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=312648, atime=1443380783<"Sep 27 19:06:23 2015">.496875161, mtime=1442715537<"Sep 20 02:18:57 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.424771744, size=3213460, blocks=6336, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbc2e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-`i\^A\0\0\0\0\0@\0\0\0\0\0\0\0\M-8\M^T.\0\
\0\0\0\0\0\0\0\0@\08\0 \0@\0001\0.\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^^\M-J \0\0\0\0\0\^^\M-J \0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0 \M-J\
\0\0\0\0\0 \M-J\^Y\0\0\0\0\0 \M-J\^Y\0\0\0\0\0000\M^L\^A\0\0\0\0\0000\M^L\^A\0\0\0\0\0\0\
\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0PV\v\0\0\0\0\0PV+\0\0\0\0\0PV+\0\0\0\0\0X\^S\0\0\0\0\0\0X\^S\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-(i\v\0\0\0\0\0\M-(i;\0\0\0\0\0\M-(i;\0\0\0\0\0p\
\^D\0\0\0\0\0\0p\^D\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0 n\v\0\0\0\0\0 nK\0\0\0\0\0 n\
K\0\0\0\0\0,'\0\0\0\0\0\0\M-(\^Z\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0hh\v\0\0\0\0\0h\
h+\0\0\0\0\0hh+\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\08V\v\
\0\0\0\0\08V\^[\0\0\0\0\08V\^[\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\
\M-etd\^D\0\0\0\M-DO
\0\0\0\0\0\M-DO\^Z\0\0\0\0\0\M-DO\^Z\0\0\0\0\0\M-d3\0\0\0\0\0\0\M-d3\0\0\0\0\0\0\^D\0\0\0\0\0\0\
\0\M-f\M-[\M-#e\^F\0\0\0PV\v\0\0\0\0\0PV+\0\0\0\0\0PV+\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\a\^D\0\0I\^F\0\0\M-k\^C\0\0d\^C\0\0\M-t\
\^A\0\0\M-u\^A\0\0004\^C\0\0\M^Q\^B\0\0{\^E\0\0>\^F\0\0\0\0\0\0\M^]\^B\0\0\M-K\^E\0\0\a\^F\0\0\
\0\0\0\0003\^E\0\0\^X\^E\0\0\v\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\^A\0\0\0\0\0\0\M^[\0\0\0\M--\^B\
\0\0!\^E\0\0 \^B\0\0M\0\0\0\^T\^F\0\0\240\^B\0\0\0\0\0\0\M^M\^E\0\0\0\0\0\0\0\0\0\0\M-G\^C\0\0c\
\^D\0\0\M^M\^D\0\0\M-k\^A\0\0\0\0\0\08\^B\0\0\M-d\^E\0\0\0\0\0\0D\^E\0\0\0\0\0\0\M-2\^D\0\0-\^B\
\0\0\M-M\^E\0\0\0\0\0\0s\^C\0\0\0\0\0\0\M-(\^C\0\0\M^M\^B\0\0.\^D\0\0001\^E\0\0]\^B\0\0\M-C\^E\
\0\0002\^D\0\0\0\0\0\0\0\0\0\0\M-1\^B\0\0\0\0\0\0.\^F\0\0\M-(\^D\0\0\0\0\0\0<\^E\0\0\M-8\^A\0\0\
}\^A\0\0\0\0\0\0\M-o\^E\0\0\M--\0\0\0\M^F\^B\0\0\M-?\^A\0\0\0\0\0\0D\^F\0\0\0\0\0\0\M-$\^D\0\0\
\M-|\^B\0\0\M-j\^E\0\0\M^A\^E\0\0V\^D\0\08\^E\0\0\M^B\^D\0\0006\^F\0\0\0\0\0\0\M-0\^E\0\0\^T\^D\
\0\0\0\0\0\0M\^A\0\0\^D\^F\0\0\0\0\0\0\0\0\0\0g\^E\0\0\M-l\^E\0\0\M^D\^E\0\0\M-&\^C\0\0\M-,\^E\
\0\0\0\0\0\0\M-X\^E\0\0\M^J\^B\0\0\^_\^F\0\0005\^D\0\0\0\0\0\0\0\0\0\0\M-y\^B\0\0{\^D\0\0\M^B\
\^C\0\0o\^E\0\0\0\0\0\0\M-7\0\0\0\0\0\0\0[\^A\0\0\^\\^E\0\0\M--\^E\0\0\0\0\0\0\M-R\^E\0\0\M-3\
\^E\0\0\M^I\^E\0\0\0\0\0\0\M-P\^A\0\0\0\0\0\0\0\0\0\0o\0\0\0\M-u\^B\0\0\M-x\^A\0\0\^P\^D\0\0\
\M-^\^E\0\0\0\0\0\0\M^S\^C\0\0F\^A\0\0\M-a\0\0\0\0\0\0\0\^A\^F\0\0\M-h\^E\0\0\0\0\0\0\0\0\0\0\
\M^V\^D\0\0\M^X\^B\0\0>\^C\0\0\M-x\^E\0\0_\^A\0\0\M-%\^D\0\0+\^C\0\0\M^?\^D\0\0I\^E\0\0\M-5\^A\
\0\0\M^C\^D\0\0\M-^\^D\0\0\M^K\^B\0\0\0\0\0\0\0\0\0\0#\^C\0\0\M^V\^C\0\0004\^E\0\0\M-.\^E\0\0\
\M-x\^C\0\0\M-n\^E\0\0\0\0\0\0\M^L\0\0\0Z\^C\0\0\^^\^D\0\0\M^J\^E\0\0m\^E\0\0\M^G\^B\0\0\0\0\0\
\0\0\0\0\0\M-F\^E\0\0
\^C\0\0\0\0\0\0\M-q\^D\0\0\0\0\0\0=\^A\0\0\M-6\^B\0\0000\^D\0\0.\^A\0\0\M-E\^E\0\0\a\^E\0\0?\0\
\0\0\M^Z\^D\0\0O\^E\0\0"\^A\0\0\^P\^F\0\0\M^K\^E\0\0R\^E\0\0\0\0\0\0\M-]\^D\0\0\M-"\^B\0\0\^Q\
\^C\0\0\0\0\0\0\0\0\0\0\M-R\^C\0\0\M-$\^E\0\0\^P\^B\0\0\^]\^B\0\0r\^E\0\0\f\^B\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^N\^B\0\0\M-~\^B\0\0\^U\^E\0\0\\\^E\0\0\0\0\0\0\M-Q\^E\0\0\0\0\0\
\0\0\0\0\0\M^[\^E\0\0\0\0\0\0A\^F\0\0\0\0\0\0\^[\^E\0\0\M-C\^D\0\0\v\^F\0\0\M^G\^E\0\0\^F\^F\0\
\0O\^C\0\0\v\^E\0\0\0\0\0\0\M-r\^C\0\0\M^P\^E\0\0\M-n\^C\0\0\M-9\^B\0\0\0\0\0\0\0\0\0\0\M-{\^C\
\0\0\^F\^A\0\0?\^E\0\0\^_\^C\0\0\0\0\0\0G\^E\0\0\M-9\^E\0\0&\^F\0\0\M-}\^E\0\0`\^D\0\0
\^F\0\0\^V\^E\0\0\M-^\^B\0\0b\^E\0\0\M^V\^B\0\0\M-G\^D\0\0\M-v\^A\0\0\M^F\0\0\0\M-U\^A\0\0\0\0\
\0\0\0\0\0\0\M^T\^E\0\0\M-v\^D\0\0\0\0\0\0]\^A\0\0\0\0\0\0\M-B\^E\0\0\^[\^A\0\0Q\^C\0\0\M^D\^C\
\0\0\M-m\^D\0\0\^R\^F\0\0\r\^E\0\0\M-5\^D\0\0\M-O\^E\0\0\M-v\^B\0\0\M-<\^E\0\0\M-4\^B\0\0\M-Q\
\^D\0\0Y\^C\0\0\^X\^C\0\0\M^H\0\0\0u\^B\0\0\M-3\^D\0\0%\^A\0\0\M-.\^A\0\0\0\0\0\0\M-S\^C\0\0B\
\^E\0\0D\^A\0\0\M-Z\^E\0\0P\^D\0\0+\^F\0\0s\^E\0\0\^A\^D\0\0\M-\\^E\0\0\M-k\^D\0\0O\^B\0\0\0\0\
\0\0.\^C\0\0\0\0\0\0\M-~\^E\0\0\^E\^E\0\0\0\0\0\0\240\^C\0\0\M-?\^C\0\0\0\0\0\0=\^E\0\0\0\0\0\0\
t\^E\0\0\M-5\0\0\0W\0\0\0\0\0\0\0\^O\^D\0\0\M-[\^E\0\0F\^E\0\0d\^E\0\0\0\0\0\0\M-H\^C\0\0\0\0\0\
\09\^A\0\0x\^A\0\0?\^D\0\0#\^E\0\0\0\0\0\0\^N\^E\0\0\^X\^F\0\0\r\^F\0\0@\^E\0\0\M-w\^E\0\0\M-p\
\^B\0\0z\^C\0\0\^A\^B\0\0R\^A\0\0\0\0\0\0\^_\^D\0\0Z\^D\0\0\M-m\^C\0\0\M-W\^C\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^I\^B\0\0\M^^\^B\0\0\M-I\0\0\0\M^H\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\0B\^D\0\0\0\0\0\0\
\M-q\^E\0\0\M-A\^D\0\0W\^B\0\0n\^C\0\0v\^C\0\0\M-)\^D\0\0c\^A\0\0\M-y\^E\0\0>\^E\0\0\r\^C\0\0\0\
\0\0\0\^T\^E\0\0\M-?\^D\0\0\0\0\0\0007\^D\0\0\M-V\0\0\0/\^D\0\0\0\0\0\0\^W\^E\0\0\M-]\^C\0\0\
\M-5\^E\0\0\0\0\0\0\M-&\^D\0\0\M-:\^E\0\0\M-N\^A\0\0\M-.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-(\^E\0\
\0\^A\^A\0\0y\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0m\^B\0\0\M-+\^D\0\0\0\0\0\0S\^E\0\0\M-8\^E\
\0\0\M-*\^E\0\0\M-#\^A\0\0C\^D\0\0\M^Z\^E\0\0000\^C\0\0\^V\^F\0\0]\^D\0\0\^E\^C\0\0\M-D\^A\0\0\
\0\0\0\0b\^D\0\0\M-8\^C\0\0^\^C\0\0\0\0\0\0\0\^D\0\0?\^F\0\0G\^F\0\0\M-!\^E\0\0\M-S\^E\0\0\M^Q\
\^D\0\0H\^F\0\0\M-n\^B\0\0001\^D\0\0\^X\^D\0\0a\^D\0\0\M^U\^D\0\0\M-S\^D\0\0\M-.\^B\0\0\M-N\0\0\
\0U\^E\0\0,\^F\0\0\M-@\^E\0\0\0\0\0\0I\^C\0\0\^S\^D\0\0L\^D\0\0u\^C\0\0l\^E\0\0 \0\0\0/\^F\0\0Y\
\^D\0\0\^Y\^F\0\0*\^C\0\0H\^D\0\0p\^C\0\0\M^^\^C\0\0J\^A\0\0\0\0\0\0=\^D\0\0{\^A\0\0\0\0\0\0\
\M-+\^A\0\0\M-u\^C\0\0\M-9\^A\0\0?\^C\0\0f\^B\0\0\M-4\^D\0\0\^C\^D\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\M-E\^D\0\0v\^B\0\0\M^Q\^E\0\0\M-V\^D\0\0\M-Q\^C\0\0005\^C\0\0\0\0\0\0\0\0\0\0J\^E\0\0(\
\^A\0\0\M-T\^A\0\0\M-e\^E\0\0F\^C\0\0\0\0\0\0\M-b\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\^D\0\0\0\0\0\
\0\0\0\0\0[\^D\0\0r\^C\0\0(\^D\0\0h\^B\0\0-\^C\0\0\0\0\0\0\M^X\^D\0\0\0\0\0\0\M-f\^B\0\0_\^D\0\
\0\M-D\^E\0\0o\^B\0\0 \^C\0\0\0\0\0\0E\^D\0\0\M^K\^A\0\0\M^G\^C\0\0\0\0\0\0d\0\0\0}\^D\0\0\M-"\
\^E\0\0S\^B\0\0\0\0\0\0\M-n\^D\0\0,\^E\0\0002\^F\0\0\0\0\0\0\M^O\^C\0\0\M-F\^B\0\0\M-|\^E\0\0\
\^N\^F\0\0\^S\^F\0\0\M^B\^E\0\0\M^L\^D\0\0\0\0\0\0\M-V\^E\0\0\0\0\0\0r\^D\0\0F\^F\0\0\0\0\0\0\
\M^P\^C\0\0\M-q\^B\0\0\M-I\^B\0\0\M-^\^C\0\0!\^F\0\0\M^H\^D\0\0i\0\0\0\^_\^E\0\0a\^B\0\0;\^F\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M^A\^A\0\0\M-d\^D\0\0\0\0\0\0$\^F\0\0\M-5\^C\0\0\^Y\^E\0\0\M-U\^D\0\
\0\0\0\0\0\0\0\0\0;\^A\0\0N\^A\0\0i\^E\0\0\^D\^B\0\0\M-r\^B\0\0j\^E\0\0\0\0\0\0\0\0\0\0003\^C\0\
\0?\^A\0\0 \^F\0\0\b\^F\0\0\M-L\^E\0\0\0\0\0\09\^F\0\0\a\^A\0\0\M-J\^C\0\0J\^D\0\0\^X\^A\0\
\0\M-w\^C\0\0\0\0\0\0C\^E\0\0,\^B\0\0\M-0\^D\0\0\^Z\^C\0\0\M-]\^A\0\0\M-x\^B\0\0005\^F\0\0\M-b\
\^C\0\0\M-k\^E\0\0\M-_\0\0\0\^B\^F\0\0
\^A\0\0\0\0\0\0x\^C\0\0\M^O\^D\0\0\M-t\^D\0\0>\^D\0\0'\^F\0\0'\^C\0\0M\^E\0\0\0\0\0\0\M-N\^D\0\
\0\0\0\0\0Q\^E\0\0\M-e\^D\0\0X\^D\0\0\M-c\^D\0\0\0\0\0\0\0\0\0\0\M-o\0\0\0\0\0\0\0L\0\0\0\M-/\0\
\0\0T\^B\0\0}\^E\0\0^\^D\0\0\0\0\0\0003\^D\0\0\0\0\0\0\M-9\^C\0\08\^F\0\0\M^M\^C\0\0>\0\0\0\^E\
\^D\0\0k\^E\0\0\M-{\^B\0\0\M-\\^B\0\0\^V\^B\0\0\^]\^A\0\0,\^A\0\0\M-W\^E\0\0\^Z\^A\0\0\M-a\^C\0\
\0\0\0\0\0\M-t\^B\0\0T\^E\0\0\M^R\^E\0\0\M-{\^E\0\08\^A\0\0j\^D\0\0\M-u\^D\0\0E\^C\0\0\0\0\0\0\
\^\\^F\0\0\M-m\^A\0\0\M-1\^D\0\0\M-g\^A\0\0H\^E\0\0q\^A\0\0\0\0\0\0V\^E\0\0M\^C\0\0\a\^D\0\0\
\M-4\^C\0\0\M-z\^A\0\0\0\^E\0\0\M-`\^E\0\0|\^D\0\0\M-[\^D\0\0)\^F\0\0\M-J\^B\0\0\M-/\^D\0\0\M^_\
\^A\0\0\M^K\^D\0\0!\^D\0\0\M^V\0\0\0P\^B\0\0}\^B\0\0004\^F\0\0\0\0\0\0l\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M^F\^C\0\0\M-_\^E\0\0\0\0\0\0\0\0\0\0T\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^_\^E\0\0\
N\^E\0\0\0\0\0\0\0\0\0\0\M-0\^A\0\0\M-+\^E\0\0"\^F\0\0\^Z\^D\0\0\M-4\^E\0\0\0\0\0\0\M-i\^E\0\0\
\0\0\0\0[\^C\0\0\M-=\^A\0\0\^P\^C\0\0q\^D\0\0\M-f\^D\0\0@\^F\0\0\M^^\^D\0\0K\0\0\0\M-7\^B\0\0}\
\^C\0\0007\^F\0\0\0\0\0\0\M-2\^A\0\0\0\0\0\0\0\0\0\0003\^B\0\0\0\0\0\0P\^C\0\0b\^C\0\0\0\0\0\0\
\M^A\^D\0\0007\^B\0\0*\^F\0\0\M^N\^C\0\0\M-4\^A\0\0\M-m\^E\0\0\0\0\0\0\0\0\0\0\M-1\^C\0\0\M^K\
\^C\0\0\M-Y\^A\0\0\^[\^F\0\0\M->\^E\0\0\M-,\^D\0\0\M^Q\0\0\0\M-,\^C\0\0\M-*\^B\0\0a\0\0\0m\^C\0\
\0u\^D\0\0\M^E\^E\0\0\M-P\^E\0\0\M-M\^B\0\0\M-<\^D\0\0\0\0\0\0\0\0\0\0\M-R\^D\0\0\M-}\^C\0\0\
\M-.\^D\0\0\M-Z\^C\0\0\\\^B\0\0-\^E\0\0\M-N\^E\0\0U\^A\0\0\0\0\0\0\M-:\^C\0\0\M-R\0\0\0\^R\^E\0\
\0:\^E\0\0\M-/\^C\0\0e\^E\0\0`\^C\0\0\M-2\^C\0\0w\^E\0\0\M-h\^B\0\0\^T\^C\0\0\M^F\^E\0\0&\^C\0\
\0\M-T\^B\0\0\0\0\0\0 \^F\0\08\^D\0\0\M-I\^C\0\0s\^B\0\0\M-g\^E\0\0\M-{\^D\0\0@\^D\0\0\0\^F\0\0\
\0\0\0\0-\^F\0\0\M-V\^C\0\0\M-H\^D\0\0'\^E\0\0E\^F\0\0v\^D\0\0\0\0\0\0%\^D\0\0\M--\^D\0\0\0\0\0\
\0\0\0\0\0\M-X\^D\0\0\0\0\0\0%\^C\0\0\M-Z\^B\0\0\M^W\^E\0\0\M-r\^E\0\0\M-c\^A\0\0\0\0\0\0\0\0\0\
\0W\^C\0\0\0\0\0\0\^E\^F\0\0\0\0\0\0[\0\0\0J\^C\0\0\0\0\0\0\0\0\0\0)\^D\0\0\M-p\^E\0\0\^O\0\0\0\
\M-O\^B\0\0\M-q\0\0\0006\^C\0\0\M-(\^B\0\0\0\0\0\0:\^F\0\0\M^[\^C\0\0#\^D\0\0~\^B\0\0\M-l\^B\0\
\0\M^]\^E\0\0\M-=\^E\0\0\M-~\^D\0\0\M-'\^E\0\0)\^B\0\0+\^D\0\0\^W\^C\0\0\^T\^B\0\0\0\0\0\0003\
\^F\0\0E\^E\0\0q\^E\0\0\0\0\0\0\^Q\^F\0\0\0\0\0\0\M-Y\^B\0\0\0\0\0\0c\^E\0\0\M-E\^C\0\0\f\^E\0\
\0\M^J\^C\0\0\M-v\^E\0\0H\^B\0\0\M-+\^B\0\0\M-$\^C\0\0\M-]\^E\0\0\M-J\^D\0\0\M-*\^A\0\0G\^D\0\0\
\M-U\^E\0\0\M^C\^E\0\0=\^F\0\0\M-f\^E\0\0\0\0\0\0004\0\0\0\M^[\^D\0\0q\^C\0\0r\^A\0\0\M-k\^B\0\
\0\0\0\0\0\M-_\^C\0\09\^C\0\0\M-;\^D\0\0v\^E\0\0\M-#\^E\0\0\0\0\0\0%\^F\0\0\0\0\0\0j\^B\0\0\M^C\
\0\0\0\M-&\0\0\0\M-I\^D\0\0\0\0\0\0\M-I\^A\0\0\M-X\0\0\0\^C\^C\0\0\M-'\^D\0\0\M-N\^C\0\0W\^E\0\
\0U\^C\0\0\0\0\0\0\M^G\0\0\0k\^A\0\0\M-B\^A\0\0\M^X\0\0\0\0\0\0\0\^R\^C\0\0,\^D\0\0\M-P\^D\0\0\
\M-F\^C\0\0\0\0\0\0\M^O\^E\0\0\M-B\0\0\0"\^E\0\0\^D\^E\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x4c9000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13076917784576/0xbe4b50a1000
28868 lua51 CALL mmap(0xbe4b50a1000,0x9d000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13076917784576/0xbe4b50a1000
28868 lua51 CALL mmap(0xbe4b523d000,0x1a000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x9c000)
28868 lua51 RET mmap 13076919472128/0xbe4b523d000
28868 lua51 CALL mmap(0xbe4b5356000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb5000)
28868 lua51 RET mmap 13076920623104/0xbe4b5356000
28868 lua51 CALL mmap(0xbe4b5457000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb6000)
28868 lua51 RET mmap 13076921675776/0xbe4b5457000
28868 lua51 CALL mmap(0xbe4b5557000,0x4000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb6000)
28868 lua51 RET mmap 13076922724352/0xbe4b5557000
28868 lua51 CALL mmap(0xbe4b555b000,0xf000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076922740736/0xbe4b555b000
28868 lua51 CALL getentropy(0xbe4b5356650,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077581193216/0xbe4dc94e000
28868 lua51 CALL mmap(0,0xa000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077354659840/0xbe4cf144000
28868 lua51 CALL mprotect(0xbe4b5457000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL munmap(0xbe4cf144000,0xa000)
28868 lua51 RET munmap 0
28868 lua51 CALL mmap(0,0x5000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080790499328/0xbe59bdf0000
28868 lua51 CALL mprotect(0xbe59bcee000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL munmap(0xbe59bdf0000,0x5000)
28868 lua51 RET munmap 0
28868 lua51 CALL mprotect(0xbe537311000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe52a527000,0x2000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe2aeb2b000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL kbind(0x7f7ffffbd498,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL sysctl(6.7<hw.pagesize>,0xbe4b5566038,0x7f7ffffbd4f0,0,0)
28868 lua51 RET sysctl 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080662896640/0xbe59443f000
28868 lua51 CALL mprotect(0xbe59443f000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe59443f000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe59443f000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL kbind(0x7f7ffffbd3f8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbd378,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL readlink(0xbe4b5244cc1,0x7f7ffffbd3c0,63)
28868 lua51 NAMI "/etc/malloc.conf"
28868 lua51 RET readlink -1 errno 2 No such file or directory
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL getentropy(0x7f7ffffbd340,40)
28868 lua51 RET getentropy 0
28868 lua51 CALL mmap(0,0x450,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078703669248/0xbe51f7c8000
28868 lua51 CALL minherit(0xbe51f7c8000,0x450,MAP_INHERIT_ZERO)
28868 lua51 RET minherit 0
28868 lua51 CALL kbind(0x7f7ffffbd278,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078399164416/0xbe50d562000
28868 lua51 CALL mprotect(0xbe50d562000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe50d565000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078094667776/0xbe4fb2fe000
28868 lua51 CALL mprotect(0xbe4b5565000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080626601984/0xbe5921a2000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078340939776/0xbe509ddb000
28868 lua51 CALL kbind(0x7f7ffffbd358,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080298430464/0xbe57e8aa000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078106439680/0xbe4fbe38000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077565812736/0xbe4dbaa3000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078302289920/0xbe5078ff000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079835193344/0xbe562ee3000
28868 lua51 CALL kbind(0x7f7ffffbd258,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079591698432/0xbe5546ac000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076887408640/0xbe4b33a9000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078091091968/0xbe4faf95000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079893905408/0xbe5666e1000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080477618176/0xbe58938d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079471194112/0xbe54d3c0000
28868 lua51 CALL kbind(0x7f7ffffbd2d8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078259232768/0xbe504fef000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080939458560/0xbe5a4bff000
28868 lua51 CALL kbind(0x7f7ffffbd298,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079253893120/0xbe540484000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079459524608/0xbe54c89f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076845158400/0xbe4b0b5e000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079905030144/0xbe56717d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080913264640/0xbe5a3304000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078657048576/0xbe51cb52000
28868 lua51 CALL kbind(0x7f7ffffbd078,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077880889344/0xbe4ee71e000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080745672704/0xbe599330000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080659640320/0xbe594124000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079168204800/0xbe53b2cc000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077152702464/0xbe4c30aa000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078119149568/0xbe4fca57000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080298782720/0xbe57e900000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077946650624/0xbe4f25d5000
28868 lua51 CALL kbind(0x7f7ffffbd0c8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081102692352/0xbe5ae7ab000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077624205312/0xbe4df253000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078192214016/0xbe501005000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078800785408/0xbe525466000
28868 lua51 CALL kbind(0x7f7ffffbcdc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd28,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd28,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mprotect(0xbe59443f000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe59443f000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL kbind(0x7f7ffffbcd58,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd98,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0x7f7ffffbd6bd,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/sbin/metronome"
28868 lua51 RET open 3
28868 lua51 CALL kbind(0x7f7ffffbcdc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL fstat(3,0x7f7ffffbcd60)
28868 lua51 STRU struct stat { dev=7, ino=129926, mode=-r-xr-xr-x , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=520128, atime=1443380783<"Sep 27 19:06:23 2015">.496875161, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=11612, blocks=24, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL kbind(0x7f7ffffbcd48,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079581028352/0xbe553c7f000
28868 lua51 CALL kbind(0x7f7ffffbcd68,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 GIO fd 3 read 4096 bytes
"#!/usr/local/bin/lua51
-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
CFG_SOURCEDIR='/usr/local/lib/metronome';
CFG_CONFIGDIR='/etc/metronome';
CFG_PLUGINDIR='/usr/local/lib/metronome/modules/';
CFG_DATADIR='/var/metronome';
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
local function is_relative(path)
local path_sep = package.config:sub(1,1);
return ((path_sep == "/" and path:sub(1,1) ~= "/")
or (path_sep == "\\\\" and (path:sub(1,1) ~= "/" and path:sub(2,3) ~= ":\\\\")))
end
if CFG_SOURCEDIR then
local function filter_relative_paths(path)
if is_relative(path) then return ""; end
end
local function sanitise_paths(paths)
return (paths:gsub("[^;]+;?", filter_relative_paths):gsub(";;+", ";"));
end
package.path = sanitise_paths(CFG_SOURCEDIR.."/?.lua;"..package.path);
package.cpath = sanitise_paths(CFG_SOURCEDIR.."/?.so;"..package.cpath);
end
if CFG_DATADIR then
if os.getenv("HOME") then
CFG_DATADIR = CFG_DATADIR:gsub("^~", os.getenv("HOME"));
end
end
local metronome = { events = require "util.events".new(); incoming_s2s = {} };
_G.metronome = metronome;
local dependencies = require "util.dependencies";
if not dependencies.check_dependencies() then
os.exit(1);
end
config = require "core.configmanager"
function read_config()
local filenames = {};
local filename;
if arg[1] == "--config" and arg[2] then
table.insert(filenames, arg[2]);
if CFG_CONFIGDIR then
table.insert(filenames, CFG_CONFIGDIR.."/"..arg[2]);
end
else
for _, format in ipairs(config.parsers()) do
table.insert(filenames, (CFG_CONFIGDIR or ".").."/metronome.cfg."..form\
at);
end
end
for _,_filename in ipairs(filenames) do
filename = _filename;
local file = io.open(filename);
if file then
file:close();
CFG_CONFIGDIR = filename:match("^(.*)[\\\\/][^\\\\/]*$");
break;
end
end
local ok, level, err = config.load(filename);
if not ok then
print("\\n");
print("**************************");
if level == "parser" then
print("A problem occured while reading the config file "..(CFG_CONFIGDI\
R or ".").."/metronome.cfg.lua"..":");
print("");
local err_line, err_message = tostring(err):match("%[string .-%]:(%d*):\
(.*)");
if err:match("chunk has too many syntax levels$") then
print("An Include statement in a config file is including an al\
ready-included");
print("file and causing an infinite loop. An Include statement \
in a config file is...");
else
print("Error"..(err_line and (" on line "..err_line) or "")..":\
"..(err_message or tostring(err)));
end
print("");
elseif level == "file" then
print("Metronome was unable to find the configuration file.");
print("We looked for: "..(CFG_CONFIGDIR or ".").."/metronome.cfg.lua");
end
print("**************************");
print("");
os.exit(1);
end
end
function files_serialization_format()
metronome.serialization = config.get("*", "flat_files_serialization") or "internal";
end
function preload_libraries()
local libs = config.get("*", "metronome_preload_libraries");
libs = type(libs) ~= "table" and {} or libs;
for _, name in ipairs(libs) do pcall(require, name); end
end
function init_net_server()
server = require "net.server"
end
function init_logging()
require "core.loggingmanager"
end
function log_dependency_warnings()
dependencies.log_warnings();
end
function sanity_check()
for host, host_config in pairs(config.getconfig()) do
if host ~= "*"
and host_config.enabled ~= false
and not host_config.component_module then
return;
end
end
log("error", "No enabled VirtualHost entries found in the config file.");
log("error", "At least one active host is required for Metronome to function. Exiting..\
.");
os.exit(1);
end
function sandbox_require()
local _realG = _G;
local _real_require = require;
if not getfenv then
-- FIXME: This is a hack to replace getfenv() in Lua 5.2
function getfenv(f) return debug.getupvalue(d"
28868 lua51 GIO fd 3 read 4096 bytes
"ebug.getinfo(f or 1).func, 1); end
end
function require(...)
local curr_env = getfenv(2);
local curr_env_mt = getmetatable(curr_env);
local _realG_mt = getmetatable(_realG);
if curr_env_mt and curr_env_mt.__index and not curr_env_mt.__newindex and _real\
G_mt then
local old_newindex, old_index;
old_newindex, _realG_mt.__newindex = _realG_mt.__newindex, curr_env;
old_index, _realG_mt.__index = _realG_mt.__index, function (_G, k)
return rawget(curr_env, k);
end;
local ret = _real_require(...);
_realG_mt.__newindex = old_newindex;
_realG_mt.__index = old_index;
return ret;
end
return _real_require(...);
end
end
function set_function_metatable()
local mt = {};
function mt.__index(f, upvalue)
local i, name, value = 0;
repeat
i = i + 1;
name, value = debug.getupvalue(f, i);
until name == upvalue or name == nil;
return value;
end
function mt.__newindex(f, upvalue, value)
local i, name = 0;
repeat
i = i + 1;
name = debug.getupvalue(f, i);
until name == upvalue or name == nil;
if name then
debug.setupvalue(f, i, value);
end
end
function mt.__tostring(f)
local info = debug.getinfo(f);
return ("function(%s:%d)"):format(info.short_src:match("[^\\\\/]*$"), info.line\
defined);
end
debug.setmetatable(function() end, mt);
end
function init_global_state()
bare_sessions = {};
full_sessions = {};
hosts = {};
metronome.bare_sessions = bare_sessions;
metronome.full_sessions = full_sessions;
metronome.hosts = hosts;
local data_path = config.get("*", "data_path") or CFG_DATADIR or "data";
local custom_plugin_paths = config.get("*", "plugin_paths");
if custom_plugin_paths then
local path_sep = package.config:sub(3,3);
-- path1;path2;path3;defaultpath...
CFG_PLUGINDIR = table.concat(custom_plugin_paths, path_sep)..path_sep..(CFG_PLU\
GINDIR or "plugins");
end
metronome.paths = { source = CFG_SOURCEDIR, config = CFG_CONFIGDIR or ".",
plugins = CFG_PLUGINDIR or "plugins", data = data_path };
metronome.arg = _G.arg;
metronome.platform = "unknown";
if package.config:sub(1,1) == "/" then metronome.platform = "posix"; end
metronome.installed = nil;
if CFG_SOURCEDIR and CFG_SOURCEDIR:match("^/") then metronome.installed = true; end
if metronome.installed then require "lfs".chdir(data_path); end
function metronome.reload_config()
log("info", "Reloading configuration file");
metronome.events.fire_event("reloading-config");
local ok, level, err = config.load((rawget(_G, "CFG_CONFIGDIR") or ".").."/metr\
onome.cfg.lua");
if not ok then
if level == "parser" then
log("error", "There was an error parsing the configuration file\
: %s", tostring(err));
elseif level == "file" then
log("error", "Couldn't read the config file when trying to relo\
ad: %s", tostring(err));
end
else
metronome.set_gc();
end
return ok, (err and tostring(level)..": "..tostring(err)) or nil;
end
function metronome.reopen_logfiles()
log("info", "Re-opening log files");
metronome.events.fire_event("reopen-log-files");
end
function metronome.shutdown(reason)
log("info", "Shutting down: %s", reason or "unknown reason");
metronome.shutdown_reason = reason;
metronome.events.fire_event("server-stopping", {reason = reason});
server.setquitting(true);
end
function metronome.set_gc()
local settings = config.get("*", "metronome_gc");
settings = type(settings) ~= "table" and {} or settings;
collectgarbage("setpause", settings.setpause or 100);
collectgarbage("setstepmul", settings.setstepmul or 150);
collectgarbage("restart");
end
local certmanager = require "util.certmanager";
local global_ssl_ctx = certmanager.create_context("*", "server");
metronome.global_ssl_ctx = global_ssl_ctx;
metronome.set_gc();
end
read_version = require "util.auxiliary".read_version;
ripairs = require "util.auxiliary".ripairs;
function load_secondary_libraries()
require "util.import";
require "util.xmppstream";
require "core.hostmanager";
require "core.portmanager";
require "core.modulemanager";
require "core.user"
28868 lua51 GIO fd 3 read 3420 bytes
"manager";
require "core.sessionmanager";
require "net.http";
require "util.array";
require "util.datetime";
require "util.iterators";
require "util.timer";
require "util.helpers";
pcall(require, "util.signal");
require "util.stanza";
require "util.jid";
end
function init_data_store()
require "core.storagemanager";
end
function prepare_to_start()
log("info", "Metronome is using the %s backend for connection handling", server.get_bac\
kend());
metronome.events.fire_event("server-starting");
metronome.start_time = os.time();
end
function init_global_protection()
local locked_globals_mt = {
__index = function (t, k) log("warn", "%s", debug.traceback("Attempt to read a \
non-existent global '"..tostring(k).."'", 2)); end;
__newindex = function (t, k, v) error("Attempt to set a global: "..tostring(k).\
." = "..tostring(v), 2); end;
};
function metronome.unlock_globals()
setmetatable(_G, nil);
end
function metronome.lock_globals()
setmetatable(_G, locked_globals_mt);
end
metronome.lock_globals();
end
function loop()
local function catch_uncaught_error(err)
if type(err) == "string" and err:match("interrupted!$") then
return "quitting";
end
log("error", "Top-level error, please report:\\n%s", tostring(err));
local traceback = debug.traceback("", 2);
if traceback then
log("error", "%s", traceback);
end
metronome.events.fire_event("very-bad-error", {error = err, traceback = traceba\
ck});
end
while select(2, xpcall(server.loop, catch_uncaught_error)) ~= "quitting" do
socket.sleep(0.2);
end
end
function cleanup()
log("info", "Shutdown status: Cleaning up");
metronome.events.fire_event("server-cleanup");
server.setquitting(false);
log("info", "Shutdown status: Closing all active sessions");
for hostname, host in pairs(hosts) do
log("debug", "Shutdown status: Closing client connections for %s", hostname)
if host.sessions then
local reason = { condition = "system-shutdown", text = "Server is shutt\
ing down" };
if metronome.shutdown_reason then
reason.text = reason.text..": "..metronome.shutdown_reason;
end
for username, user in pairs(host.sessions) do
for resource, session in pairs(user.sessions) do
log("debug", "Closing connection for %s@%s/%s", usernam\
e, hostname, resource);
session:close(reason);
end
end
end
log("debug", "Shutdown status: Closing outgoing s2s connections from %s", hostn\
ame);
if host.s2sout then
for remotehost, session in pairs(host.s2sout) do
if session.close then
session:close("system-shutdown");
else
log("warn", "Unable to close outgoing s2s session to %s\
, no session:close()?!", remotehost);
end
end
end
end
log("info", "Shutdown status: Closing all server connections");
server.closeall();
server.setquitting(true);
end
read_config();
files_serialization_format();
init_logging();
sanity_check();
sandbox_require();
set_function_metatable();
preload_libraries();
init_net_server();
init_global_state();
read_version();
log("info", "Hello and welcome to Metronome version %s", metronome.version);
log_dependency_warnings();
load_secondary_libraries();
init_data_store();
init_global_protection();
prepare_to_start();
metronome.events.fire_event("server-started");
loop();
log("info", "Shutting down...");
cleanup();
metronome.events.fire_event("server-stopped");
log("info", "Shutdown complete");
"
28868 lua51 RET read 11612/0x2d5c
28868 lua51 CALL kbind(0x7f7ffffbcdc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbc818,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077465350144/0xbe4d5ad4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077201027072/0xbe4c5ec0000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078561820672/0xbe517081000
28868 lua51 CALL kbind(0x7f7ffffbc0a8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbbfa8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080093667328/0xbe572563000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077049675776/0xbe4bce69000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077014999040/0xbe4bad57000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078542893056/0xbe515e74000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077827543040/0xbe4eb43e000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079547920384/0xbe551cec000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078813597696/0xbe52609e000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076825313280/0xbe4af871000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077419925504/0xbe4d2f82000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080805662720/0xbe59cc66000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080737337344/0xbe598b3d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078433558528/0xbe50f62f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079132008448/0xbe539047000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080351395840/0xbe581b2d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078864814080/0xbe529176000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078772002816/0xbe5238f3000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080475267072/0xbe58914f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079114485760/0xbe537f91000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079856066560/0xbe5642cb000
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL kbind(0x7f7ffffbcdc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd98,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbcd98,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbd1e8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbd1a8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL sigaction(SIGINT,0x7f7ffffbd280,0x7f7ffffbd270)
28868 lua51 STRU struct sigaction { handler=0xbe2ae8069b0, mask=0<>, flags=0x2<SA_RESTART> }
28868 lua51 STRU struct sigaction { handler=SIG_DFL, mask=~0x10102<SIGINT|SIGKILL|SIGSTOP>, flags=0x2<SA_RESTART> }
28868 lua51 RET sigaction 0
28868 lua51 CALL kbind(0x7f7ffffbc958,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe572563518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/events.lua"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe572563518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/events.lua"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211919, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864062, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=2121, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 GIO fd 3 read 2121 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2010, Matthew Wild, Waqas Hussain
local pairs = pairs;
local t_insert = table.insert;
local t_sort = table.sort;
local setmetatable = setmetatable;
local next = next;
module "events"
function new()
local handlers = {};
local event_map = {};
local function _rebuild_index(handlers, event)
local _handlers = event_map[event];
if not _handlers or next(_handlers) == nil then return; end
local index = {};
for handler in pairs(_handlers) do
t_insert(index, handler);
end
t_sort(index, function(a, b) return _handlers[a] > _handlers[b]; end);
handlers[event] = index;
return index;
end;
setmetatable(handlers, { __index = _rebuild_index });
local function add_handler(event, handler, priority)
local map = event_map[event];
if map then
map[handler] = priority or 0;
else
map = {[handler] = priority or 0};
event_map[event] = map;
end
handlers[event] = nil;
end;
local function remove_handler(event, handler)
local map = event_map[event];
if map then
map[handler] = nil;
handlers[event] = nil;
if next(map) == nil then
event_map[event] = nil;
end
end
end;
local function add_handlers(handlers)
for event, handler in pairs(handlers) do
add_handler(event, handler);
end
end;
local function remove_handlers(handlers)
for event, handler in pairs(handlers) do
remove_handler(event, handler);
end
end;
local function fire_event(event, ...)
local h = handlers[event];
if h then
for i=1,#h do
local ret = h[i](...);
if ret ~= nil then return ret; end
end
end
end;
return {
add_handler = add_handler;
remove_handler = remove_handler;
add_handlers = add_handlers;
remove_handlers = remove_handlers;
fire_event = fire_event;
_handlers = handlers;
_event_map = event_map;
};
end
return _M;
"
28868 lua51 RET read 2121/0x849
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbccc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe58938d698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/dependencies.lua"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe58938d698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/dependencies.lua"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211916, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864084, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=5110, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 GIO fd 3 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2011, Matthew Wild, Waqas Hussain
local metronome = metronome;
module("dependencies", package.seeall)
function softreq(...) local ok, lib = pcall(require, ...); if ok then return lib; else return \
nil, lib; end end
-- Required to be able to find packages installed with luarocks
if not softreq "luarocks.loader" then -- LuaRocks 2.x
softreq "luarocks.require"; -- LuaRocks <1.x
end
function missingdep(name, sources, msg)
print("");
print("**************************");
print("Metronome was unable to find "..tostring(name));
print("This package can be obtained in the following ways:");
print("");
local longest_platform = 0;
for platform in pairs(sources) do
longest_platform = math.max(longest_platform, #platform);
end
for platform, source in pairs(sources) do
print("", platform..":"..(" "):rep(4+longest_platform-#platform)..source);
end
print("");
print(msg or (name.." is required for Metronome to run, so we will now exit."));
print("**************************");
print("");
end
package.preload["util.ztact"] = function ()
if not package.loaded["core.loggingmanager"] then
error("util.ztact has been removed from Metronome and you need to fix your conf\
ig file.", 0);
else
error("module 'util.ztact' has been deprecated in Metronome.");
end
end;
function check_dependencies()
local fatal;
local lxp = softreq "lxp"
if not lxp then
missingdep("luaexpat", {
["Debian/Ubuntu"] = "sudo apt-get install liblua5.1-expat0";
["luarocks"] = "luarocks install luaexpat";
["Source"] = "http://www.keplerproject.org/luaexpat/";
});
fatal = true;
end
local socket = softreq "socket"
if not socket then
missingdep("luasocket", {
["Debian/Ubuntu"] = "sudo apt-get install liblua5.1-socket2";
["luarocks"] = "luarocks install luasocket";
["Source"] = "http://www.tecgraf.puc-rio.br/~diego/professional\
/luasocket/";
});
fatal = true;
end
local luaevent = softreq "luaevent" or softreq "luaevent.core"
if not luaevent then
missingdep("luaevent", {
["Debian/Ubuntu"] = "sudo apt-get install liblua5.1-event0";
["luarocks"] = "luarocks install luaevent";
["Source"] = "https://github.com/harningt/luaevent";
});
fatal = true;
end
local lfs, err = softreq "lfs"
if not lfs then
missingdep("luafilesystem", {
["luarocks"] = "luarocks install luafilesystem";
["Debian/Ubuntu"] = "sudo apt-get install liblua5.1-filesystem0\
";
["Source"] = "http://www.keplerproject.org/luafilesystem/";
});
fatal = true;
end
local ssl = softreq "ssl"
if not ssl then
missingdep("LuaSec", {
["Debian/Ubuntu"] = "http://prosody.im/download/start#debian_an\
d_ubuntu";
["luarocks"] = "luarocks install luasec";
["Source"] = "http://www.inf.puc-rio.br/~brunoos/luasec/";
}, "SSL/TLS support will not be available");
metronome.no_encryption = true;
end
local encodings, err = softreq "util.encodings"
if not encodings then
if err:match("not found") then
missingdep("util.encodings", {
["GNU/Linux"] = "Run './configure' and 'make' i\
n the Metronome source directory to build util/encodings.so";
});
else
print "***********************************"
print("util/encodings couldn't be loaded. Check that you have a recent \
version of libidn");
print ""
print("The full error was:");
print(err)
print "***********************************"
end
fatal = true;
end
local hashes, err = softreq "util.hashes"
if not hashes then
if err:match("not found") then
missingdep("util.hashes", {
["GNU/Linux"] = "Run './configure' and 'make' i\
n the Metronome source directory to build util/hashes.so";
});
else
print "***********************************"
print("util/hashes couldn't be loaded. Check "
28868 lua51 GIO fd 3 read 1014 bytes
"that you have a recent version of OpenSSL (libcrypto in particular)");
print ""
print("The full error was:");
print(err)
print "***********************************"
end
fatal = true;
end
return not fatal;
end
function log_warnings()
if ssl then
local major, minor, veryminor, patched = ssl._VERSION:match("(%d+)%.(%d+)%.?(%d\
*)(M?)");
if not major or ((tonumber(major) == 0 and (tonumber(minor) or 0) <= 3 and (ton\
umber(veryminor) or 0) <= 2) and patched ~= "M") then
log("error", "This version of LuaSec contains a known bug that causes d\
isconnects, see http://lightwitch.org/metronome/building");
end
end
if lxp then
if not pcall(lxp.new, { StartDoctypeDecl = false }) then
log("error", "The version of LuaExpat on your system leaves Metronome "
.."vulnerable to denial-of-service attacks. You should upgrade \
to "
.."LuaExpat 1.1.1 or higher as soon as possible. See "
.."http://lightwitch.org/metronome/building for more informatio\
n.");
end
end
end
return _M;
"
28868 lua51 RET read 5110/0x13f6
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077660643328/0xbe4e1513000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077056356352/0xbe4bd4c8000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080622792704/0xbe591e00000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076938432512/0xbe4b6452000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076849094656/0xbe4b0f1f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079417851904/0xbe54a0e1000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077398933504/0xbe4d1b7d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080543166464/0xbe58d210000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078211846144/0xbe5022be000
28868 lua51 CALL read(3,0xbe553c7f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079718191104/0xbe55bf4e000
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1b7dc98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks/loader.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4e1513198,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luarocks/loader.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452a98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luarocks/loader/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/loader.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe551cec598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/loader/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4e1513798,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks/loader.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe551cec618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/loader.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58d210f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58d210e18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL kbind(0x7f7ffffbc8f8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbc9f8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe4b6452c98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks/require.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452d98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luarocks/require.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d1b7dd18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luarocks/require/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/require.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/require/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452e18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks/require.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4e1513b18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks/require.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58d210f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luarocks.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58d210e18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luarocks.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58d210a98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/lxp.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54a0e11d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/lxp.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d798,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/lxp/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3dd58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lxp.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54a0e12d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lxp/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe598b3d1d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/lxp.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54a0e1718,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lxp.so"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbcbc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe555a131c0,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbca40)
28868 lua51 STRU struct stat { dev=7, ino=155964, mode=drwxr-xr-x , nlink=5, uid=0<"root">, gid=0<"wheel">, rdev=660105, atime=1443380744<"Sep 27 19:05:44 2015">.877552035, mtime=1443360533<"Sep 27 13:28:53 2015">.654927416, ctime=1443360533<"Sep 27 13:28:53 2015">.654927416, size=512, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x5000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078742126592/0xbe521c75000
28868 lua51 CALL mprotect(0xbe521c79000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(3,0xbe521c75000,0x4000)
28868 lua51 RET getdents 336/0x150
28868 lua51 CALL getdents(3,0xbe521c75000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe521c79000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lxp.so"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbbaa0)
28868 lua51 STRU struct stat { dev=7, ino=155969, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632416, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1443255821<"Sep 26 08:23:41 2015">, ctime=1443360531<"Sep 27 13:28:51 2015">.485795306, size=49436, blocks=100, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbbb20,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M^P#\0\0\0\0\0\0@\0\0\0\0\0\0\0\b\M-!\0\0\0\
\0\0\0\0\0\0\0@\08\0 \0@\0"\0\^_\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\M->>\0\0\0\0\0\0\M->>\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-@>\0\0\0\0\0\0\
\M-@>\^P\0\0\0\0\0\M-@>\^P\0\0\0\0\0\M-@
\0\0\0\0\0\0\M-@
\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^@I\0\0\0\0\0\0\M^@I \0\0\0\0\0\M^@I \0\0\0\0\
\0\M-`\^B\0\0\0\0\0\0\M-`\^B\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0`L\0\0\0\0\0\0`L0\0\
\0\0\0\0`L0\0\0\0\0\0\240\^B\0\0\0\0\0\0\240\^B\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\
\0O\0\0\0\0\0\0\0O@\0\0\0\0\0\0O@\0\0\0\0\0\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\
\^B\0\0\0\^F\0\0\0\^PK\0\0\0\0\0\0\^PK \0\0\0\0\0\^PK \0\0\0\0\0P\^A\0\0\0\0\0\0P\^A\0\0\0\0\0\
\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0hI\0\0\0\0\0\0hI\^P\0\0\0\0\0hI\^P\0\0\0\0\0\^X\0\0\0\0\0\0\
\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\^XB\0\0\0\0\0\0\^XB\^P\0\0\0\0\0\^XB\^P\0\
\0\0\0\0l\^A\0\0\0\0\0\0l\^A\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\M^@I\0\0\0\0\0\
\0\M^@I \0\0\0\0\0\M^@I \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0C\0\0\0`\0\0\0U\0\0\0[\0\0\0-\0\0\0\^O\0\0\0C\0\0\0\0\0\0\0\0\0\0\0O\0\
\0\0\0\0\0\0\^P\0\0\0N\0\0\0M\0\0\0\0\0\0\0"\0\0\0\0\0\0\0\0\0\0\0\^V\0\0\0\0\0\0\0G\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0?\0\0\0*\0\0\0L\0\0\0Q\0\0\0X\0\0\0+\0\0\0^\0\0\0\\\0\0\0\0\0\0\0\0\0\0\0W\
\0\0\0\0\0\0\0'\0\0\0Y\0\0\0I\0\0\0\0\0\0\08\0\0\0,\0\0\0@\0\0\0\0\0\0\0\0\0\0\0(\0\0\0)\0\0\0T\
\0\0\0;\0\0\0D\0\0\0Z\0\0\0B\0\0\0\0\0\0\0\^W\0\0\0\0\0\0\0\0\0\0\0004\0\0\0%\0\0\0]\0\0\0<\0\0\
\0J\0\0\0\0\0\0\0\0\0\0\0_\0\0\0\0\0\0\0000\0\0\0>\0\0\0.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0!\
\0\0\0\0\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\^Z\0\0\0\^_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\0\0\0\0\0\0\
\0\^]\0\0\0\0\0\0\0\0\0\0\0#\0\0\0003\0\0\0\^Q\0\0\0&\0\0\0\^R\0\0\0\0\0\0\0007\0\0\0\0\0\0\0\0\
\0\0\0=\0\0\0\r\0\0\0\^X\0\0\0 \0\0\0\0\0\0\0\^\\0\0\0\0\0\0\0/\0\0\0\0\0\0\0A\0\0\0005\0\0\000\
2\0\0\0\^T\0\0\0F\0\0\0\0\0\0\0\0\0\0\0\^^\0\0\0\0\0\0\0001\0\0\0\0\0\0\0\0\0\0\0H\0\0\0\0\0\0\
\09\0\0\0R\0\0\0006\0\0\0E\0\0\0K\0\0\0\^Y\0\0\0\0\0\0\0P\0\0\0:\0\0\0V\0\0\0S\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M-P\^^\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\b\0\M^P#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\M-0>\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^C\0
\0\M-@>\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\^XB\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M^HC\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\M^@I \0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^O\0\M^HI \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\240I \0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\^S\0\M-`N0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-pN0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^C\0\^U\0\0O@\0\0\0\0\0\0\0\0\0\0\0\0\0d\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0B\0\
\0\0\0\0\0\0\M^V\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-h\0\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M^J\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0%\0\0\0\0\0\0\0003\^A\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0 \0\0\0\0\0\0\0\M-_\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-)\^C\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\\\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\
\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0.\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0#\0\0\0\0\0\0\
\0b\^E\0\0\^P\0\M-q\M^?\0O0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-"\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-%\
\^A\0\0\0\0\0\0\M-W\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-3\^B\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\M-i\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-{\^D\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-t\^C\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Z\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\
\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0L\^B\0\0\0\0\0\0\M-[\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\
\0\0\0\^T\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Z\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0N\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M^V\^B\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^R\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0o\^D\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0_\0\0\0\0\0\0\0\^\\^E\0\0\^R\0\b\0\M^@=\0\0\0\0\0\0'\^A\0\0\0\0\0\0\M-J\^B\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^_\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\^E\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0z\^B\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\^R\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\^_\0\0\0\^R\0\^F\0\M-P\^^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-m\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-=\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\M^V\0\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\^D\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-9\^C\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0V\^E\0\0\^P\0\M-q\M^?`L0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-w\^A\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0003\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0Z\b\0\0\0\0\0\0\M^M\
\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-t\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0i\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-*\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^F\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0P\0\0\0\0\0\0\0(\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0L\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-:\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\
\0 \0\0\0\0\0\0\0\M-U\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0 \0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M^@\^E\0\0\^P\0\M-q\M^?\^PO@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-M\^D\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^I\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0z\0\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0I\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\
\M-W\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\^R\0 \0\M-0>\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0w\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-q\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\
\0\^X\0\0\0\0\0\0\0\M-7\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^^\^D\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0^\0\0\0\0\0\0\0\M-e\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^@\0\0\0\0\0\0\0y\^E\0\0\^P\0\
\M-q\M^?\^PO@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-,\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\a\0\0\0\0\0\0\0g\^E\
\0\0\^P\0\M-q\M^?\^PO@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-G\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0R\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0^\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\a\0\0\
\0\0\0\0\0:\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-"\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-K\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0d\^B\0\0\^R\0\0\0\0\0\0\0\0\
\0\0\0\b\0\0\0\0\0\0\0l\^E\0\0\^P\0\^U\0\0O@\0\0\0\0\0\0\0\0\0\0\0\0\0V\^D\0\0\^R\0\0\0\0\0\0\0\
\0\0\0\0U\0\0\0\0\0\0\0\M-<\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^W\^A\0\0\^R\0\0\
\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0}\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0F\^D\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\0_init\0__cxa_atexit\0_f\
ini\0_Jv_RegisterClasses\0lua_newuserdata\0lua_getfield\0lua_setmetatable\0lua_pushstring\0lua_\
gettable\0lua_type\0lua_settop\0luaL_optlstring\0XML_ParserCreate\0luaL_checktype\0lua_pushvalu\
e\0luaL_ref\0XML_SetUserData\0XML_SetXmlDeclHandler\0XML_SetNamespaceDeclHandler\0XML_SetElemen\
tHandler\0XML_SetCdataSectionHandler\0XML_ParserCreateNS\0XML_SetStartDoctypeDeclHandler\0XML_S\
etUnparsedEntityDeclHandler\0XML_SetPr"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x405000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13078607974400/0xbe519c85000
28868 lua51 CALL mmap(0xbe519c85000,0x4000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13078607974400/0xbe519c85000
28868 lua51 CALL mmap(0xbe519d88000,0x2000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x3000)
28868 lua51 RET mmap 13078609035264/0xbe519d88000
28868 lua51 CALL mmap(0xbe519e89000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x4000)
28868 lua51 RET mmap 13078610087936/0xbe519e89000
28868 lua51 CALL mmap(0xbe519f89000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x4000)
28868 lua51 RET mmap 13078611136512/0xbe519f89000
28868 lua51 CALL mmap(0xbe51a089000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x4000)
28868 lua51 RET mmap 13078612185088/0xbe51a089000
28868 lua51 CALL getentropy(0xbe519e89980,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423bcce,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libexpat.so.11.0"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbba30)
28868 lua51 STRU struct stat { dev=5, ino=77959, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=318536, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1442715555<"Sep 20 02:19:15 2015">, ctime=1442782576<"Sep 20 20:56:16 2015">.044769364, size=428384, blocks=896, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbbab0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0P>\0\0\0\0\0\0@\0\0\0\0\0\0\0\M^@>\^F\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0"\0\^_\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0.\M-a\^A\0\0\0\0\0.\M-a\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0@\M-a\^A\0\0\0\0\
\0@\M-a\^Q\0\0\0\0\0@\M-a\^Q\0\0\0\0\0\M-P?\0\0\0\0\0\0\M-P?\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\
\0\0\^F\0\0\0\0000\^B\0\0\0\0\0\0000"\0\0\0\0\0\0000"\0\0\0\0\0\240\^^\0\0\0\0\0\0\240\^^\0\0\0\
\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\240N\^B\0\0\0\0\0\240N2\0\0\0\0\0\240N2\0\0\0\0\0P\^A\
\0\0\0\0\0\0P\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-pO\^B\0\0\0\0\0\M-pOB\0\0\0\0\
\0\M-pOB\0\0\0\0\0\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0`M\^B\0\
\0\0\0\0`M"\0\0\0\0\0`M"\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\
\0\0\0\M-x \^B\0\0\0\0\0\M-x \^R\0\0\0\0\0\M-x \^R\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\
\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-d\M-r\^A\0\0\0\0\0\M-d\M-r\^Q\0\0\0\0\0\M-d\M-r\^Q\0\0\0\0\
\0| \0\0\0\0\0\0| \0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0000\^B\0\0\0\0\0\
\0000"\0\0\0\0\0\0000"\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0a\0\0\0s\0\0\0\0\0\0\0005\0\0\0@\0\0\0\^O\0\0\0\0\0\0\0002\0\0\0'\0\0\0\0\
\0\0\0003\0\0\0b\0\0\0[\0\0\0]\0\0\0\0\0\0\0\0\0\0\0k\0\0\0\0\0\0\0E\0\0\0a\0\0\0f\0\0\0\0\0\0\
\0^\0\0\0N\0\0\0\^]\0\0\0\0\0\0\0>\0\0\0A\0\0\0\0\0\0\0`\0\0\0\0\0\0\0\0\0\0\0Q\0\0\0J\0\0\0g\0\
\0\0H\0\0\0n\0\0\0&\0\0\0(\0\0\0001\0\0\0\0\0\0\0M\0\0\0\0\0\0\0o\0\0\0\0\0\0\0W\0\0\0"\0\0\0:\
\0\0\0\^N\0\0\0p\0\0\0\^\\0\0\0\0\0\0\0006\0\0\0R\0\0\0\0\0\0\0I\0\0\0 \0\0\0F\0\0\0c\0\0\0Y\0\
\0\0\^^\0\0\0l\0\0\0j\0\0\0m\0\0\0\0\0\0\0;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0U\0\0\0\0\0\0\0V\0\0\0h\0\0\0\0\0\0\0X\0\0\0O\0\0\0P\0\0\0\r\
\0\0\0\0\0\0\0\0\0\0\0<\0\0\0$\0\0\0Z\0\0\0\^X\0\0\0G\0\0\0,\0\0\0\0\0\0\0\0\0\0\0T\0\0\0=\0\0\
\0004\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^V\0\0\0\0\0\0\0\0\0\0\0)\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0-\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0%\0\0\0.\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0\^Y\0\0\0007\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0!\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0+\0\0\0*\0\0\0\0\0\0\0#\0\0\0\0\0\0\0\0\0\0\0D\0\0\0\0\0\0\0\0\0\0\0\^R\0\
\0\0L\0\0\0\^S\0\0\09\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0S\0\0\0\0\0\0\0C\0\0\0?\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^T\0\0\0/\0\0\0\0\0\0\0000\0\0\0\0\0\0\0\0\0\0\0d\0\0\0_\0\0\0\^_\0\0\0e\0\0\
\0K\0\0\0\0\0\0\0\0\0\0\0i\0\0\0\0\0\0\0\\\0\0\0\0\0\0\0B\0\0\0\^W\0\0\0q\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M-@<\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\
\0\b\0P>\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0 \M-a\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0
\0@\M-a\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-d\M-r\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^C\0\f\0`\M-|\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\0000"\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^O\0\b0"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0 0"\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^S\0\M-PO2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-`O2\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^U\0\M-pOB\0\0\0\0\0\0\0\0\0\0\0\0\0L\0\0\0\^R\0\b\0\M-p\M^F\0\0\0\0\0\0B\
\0\0\0\0\0\0\0_\0\0\0\^R\0\b\0`F\0\0\0\0\0\0\b\0\0\0\0\0\0\0p\0\0\0\^R\0\b\0\M-pA\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0\M^Q\0\0\0\^R\0\b\0\M-0D\0\0\0\0\0\0%\0\0\0\0\0\0\0\M-)\0\0\0\^R\0\b\0\^PA\0\0\0\
\0\0\0 \0\0\0\0\0\0\0\M-?\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-G\0\0\0\^R\0\b\0\
\M-0A\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-c\0\0\0\^R\0\b\0\M-`D\0\0\0\0\0\0#\0\0\0\0\0\0\0\M-d\a\0\0\
\^P\0\M-q\M^?\M-pO2\0\0\0\0\0\0\0\0\0\0\0\0\0\M-{\0\0\0\^R\0\b\0\240o\0\0\0\0\0\0\M-%\^A\0\0\0\
\0\0\0\^E\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^[\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0&\^A\0\0\^R\0\b\0\M-@A\0\0\0\0\0\0\^O\0\0\0\0\0\0\0@\^A\0\0\^R\0\b\0\M^PF\0\0\0\0\
\0\0\b\0\0\0\0\0\0\0S\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0Z\^A\0\0\^R\0\b\0pR\0\0\0\0\0\0L\^B\0\0\0\0\0\0i\^A\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0p\^A\0\0\^R\0\b\0\0\M-a\^A\0\0\0\0\0\^Y\0\0\0\0\0\0\0\M^Q\^A\0\0\^R\0\b\
\0\M-p\M-B\^A\0\0\0\0\0\b\0\0\0\0\0\0\0\M-,\^A\0\0\^R\0\b\0 A\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-G\
\^A\0\0\^R\0\b\0\0A\0\0\0\0\0\0\a\0\0\0\0\0\0\0\M-_\^A\0\0\^R\0\b\0@B\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\M-{\^A\0\0\^R\0\b\0\240A\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\^Q\^B\0\0\^R\0\b\0\M-0B\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0*\^B\0\0\^R\0\b\0p@\0\0\0\0\0\0&\0\0\0\0\0\0\0<\^B\0\0\^R\0\b\0PB\0\0\0\0\0\0\b\0\
\0\0\0\0\0\0\\\^B\0\0\^R\0\b\0\240E\0\0\0\0\0\0_\0\0\0\0\0\0\0w\^B\0\0\^R\0\b\0\M-`A\0\0\0\0\0\
\0\b\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^T\^B\0\0\^R\0\b\0@A\0\0\0\
\0\0\0\^E\0\0\0\0\0\0\0\M-0\^B\0\0\^R\0\b\0\M-`@\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0\
\M-@<\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-<\^B\0\0\^R\0\b\0\0F\0\0\0\0\0\0\r\0\0\0\0\0\0\0\M-Q\^B\0\0\
\^R\0\b\0@F\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\M-a\^B\0\0\^R\0\b\0\M-p\M-9\^A\0\0\0\0\0\M-3\0\0\0\0\0\
\0\0\M-o\^B\0\0\^R\0\b\0000n\0\0\0\0\0\0i\^A\0\0\0\0\0\0\M^?\^B\0\0\^R\0\b\0 F\0\0\0\0\0\0\^P\0\
\0\0\0\0\0\0\M-X\a\0\0\^P\0\M-q\M^?\240N2\0\0\0\0\0\0\0\0\0\0\0\0\0\^N\^C\0\0\^R\0\b\0\0B\0\0\0\
\0\0\0\b\0\0\0\0\0\0\0)\^C\0\0\^R\0\b\0\M^@~\0\0\0\0\0\0Z\b\0\0\0\0\0\0H\^C\0\0\^R\0\b\0\^P\M-;\
\^A\0\0\0\0\0\^F\0\0\0\0\0\0\0a\^C\0\0\^R\0\b\0\M-PB\0\0\0\0\0\0#\0\0\0\0\0\0\0{\^C\0\0\^R\0\b\
\0P\M-E\^A\0\0\0\0\0g\0\0\0\0\0\0\0\M^O\a\0\0\^R\0\b\0\M-0\M-:\^A\0\0\0\0\0S\0\0\0\0\0\0\0\M^M\
\^C\0\0\^R\0\b\0\M-`Y\0\0\0\0\0\0P\0\0\0\0\0\0\0\M^Y\^C\0\0\^R\0\b\0\0C\0\0\0\0\0\0#\0\0\0\0\0\
\0\0\M-<\^C\0\0\^R\0\b\0\M^@B\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-)\^C\0\0\^R\0\b\0000N\0\0\0\0\0\0R\
\0\0\0\0\0\0\0\M-Z\^C\0\0\^R\0\b\0\^PF\0\0\0\0\0\0\r\0\0\0\0\0\0\0\M-h\^C\0\0\^R\0\b\0@\M^G\0\0\
\0\0\0\0 \0\0\0\0\0\0\0\M-y\^C\0\0\^R\0\b\0000A\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\^R\^D\0\0\
\^R\0\b\0\240@\0\0\0\0\0\0\^[\0\0\0\0\0\0\0)\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0003\
\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0;\
\^D\0\0\^R\0\b\0 B\0\0\0\0\0\0\b\0\0\0\0\0\0\0\\\^D\0\0\^R\0\b\0\240B\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\^B\b\0\0\^P\0\M-q\M^?\0PB\0\0\0\0\0\0\0\0\0\0\0\0\0v\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0}\^D\0\0\^R\0\b\0\240\M-F\^A\0\0\0\0\0O\0\0\0\0\0\0\0\M^O\^D\0\0\^R\0\b\0@W\0\0\0\0\0\0\
>\0\0\0\0\0\0\0\M-$\^D\0\0\^R\0\b\0\M-0C\0\0\0\0\0\0\M-c\0\0\0\0\0\0\0\M-5\^D\0\0\^R\0\b\0\M-p\
\M-D\^A\0\0\0\0\0\b\0\0\0\0\0\0\0\M-R\^D\0\0\^R\0\b\0pA\0\0\0\0\0\0\^O\0\0\0\0\0\0\0002\0\0\0\
\^R\0 \0 \M-a\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\M-m\^D\0\0\^R\0\b\0\M-PA\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\f\^E\0\0\^R\0\b\0\M-@@\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^\\^E\0\0\^R\0\b\0\M^PA\0\0\0\0\0\0\b\0\
\0\0\0\0\0\0:\^E\0\0\^R\0\b\0\M-p\M-F\^A\0\0\0\0\0\^Z\0\0\0\0\0\0\0S\^E\0\0\^R\0\b\0\M^PB\0\0\0\
\0\0\0\b\0\0\0\0\0\0\0m\^E\0\0\^R\0\b\0PA\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M^Q\^E\0\0\^R\0\b\0000F\0\
\0\0\0\0\0\r\0\0\0\0\0\0\0\M^]\^E\0\0\^R\0\b\0\M^@A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-=\^E\0\0\^R\0\
\b\0000Z\0\0\0\0\0\0^\0\0\0\0\0\0\0\M-M\^E\0\0\^R\0\b\0P\M-C\^A\0\0\0\0\0g\0\0\0\0\0\0\0\M-]\^E\
\0\0\^R\0\b\0`@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M^^\a\0\0\^R\0\b\0\0\M-E\^A\0\0\0\0\0\b\0\0\0\0\0\
\0\0\M-w\^E\0\0\^R\0\b\0000C\0\0\0\0\0\0\M^@\0\0\0\0\0\0\0\^F\^F\0\0\^R\0\b\0\M-P\M-=\^A\0\0\0\
\0\0\M-S\^B\0\0\0\0\0\0\^]\^F\0\0\^R\0\b\0`B\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-{\a\0\0\^P\0\M-q\
\M^?\0PB\0\0\0\0\0\0\0\0\0\0\0\0\0@\^F\0\0\^R\0\b\0\240D\0\0\0\0\0\0\a\0\0\0\0\0\0\0\M-i\a\0\0\
\^P\0\M-q\M^?\0PB\0\0\0\0\0\0\0\0\0\0\0\0\0Q\^F\0\0\^R\0\b\0\240c\0\0\0\0\0\0\M-v\^A\0\0\0\0\0\
\0_\^F\0\0\^R\0\b\0\M-p@\0\0\0\0\0\0\a\0\0\0\0\0\0\0~\^F\0\0\^R\0\b\0\M-px\0\0\0\0\0\0)\^B\0\0\
\0\0\0\0\M^N\^F\0\0\^R\0\b\0pB\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-*\^F\0\0\^R\0\b\0\M-`\M-`\^A\0\0\0\
\0\0 \0\0\0\0\0\0\0\M-=\^F\0\0\^R\0\b\0\240\M-D\^A\0\0\0\0\0O\0\0\0\0\0\0\0\M-M\^F\0\0\^R\0\b\
\0000B\0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-<\a\0\0\^R\0\b\0\0\M-C\^A\0\0\0\0\0\b\0\0\0\0\0\0\0\M-l\^F\
\0\0\^R\0\b\0\M-`\M^F\0\0\0\0\0\0\a\0\0\0\0\0\0\0\0\a\0\0\^R\0\b\0`A\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x425000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13078631636992/0xbe51b316000
28868 lua51 CALL mmap(0xbe51b316000,0x1f000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13078631636992/0xbe51b316000
28868 lua51 CALL mmap(0xbe51b434000,0x5000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x1e000)
28868 lua51 RET mmap 13078632808448/0xbe51b434000
28868 lua51 CALL mmap(0xbe51b539000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x23000)
28868 lua51 RET mmap 13078633877504/0xbe51b539000
28868 lua51 CALL mmap(0xbe51b63a000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x24000)
28868 lua51 RET mmap 13078634930176/0xbe51b63a000
28868 lua51 CALL mmap(0xbe51b73a000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x24000)
28868 lua51 RET mmap 13078635978752/0xbe51b73a000
28868 lua51 CALL getentropy(0xbe51b539000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe51b63a000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe519f89000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL kbind(0x7f7ffffbcbc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe53b2cc658,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/socket.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe553c80d18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/socket.lua"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe553c80d18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/socket.lua"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc740)
28868 lua51 STRU struct stat { dev=7, ino=236073, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=956080, atime=1443380744<"Sep 27 19:05:44 2015">.787543947, mtime=1443255939<"Sep 26 08:25:39 2015">, ctime=1443360532<"Sep 27 13:28:52 2015">.414905011, size=4451, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080088547328/0xbe572081000
28868 lua51 CALL read(3,0xbe572081000,0x4000)
28868 lua51 GIO fd 3 read 4096 bytes
"-----------------------------------------------------------------------------
-- LuaSocket helper module
-- Author: Diego Nehab
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
-- Declare module and import dependencies
-----------------------------------------------------------------------------
local base = _G
local string = require("string")
local math = require("math")
local socket = require("socket.core")
local _M = socket
-----------------------------------------------------------------------------
-- Exported auxiliar functions
-----------------------------------------------------------------------------
function _M.connect4(address, port, laddress, lport)
return socket.connect(address, port, laddress, lport, "inet")
end
function _M.connect6(address, port, laddress, lport)
return socket.connect(address, port, laddress, lport, "inet6")
end
function _M.bind(host, port, backlog)
if host == "*" then host = "0.0.0.0" end
local addrinfo, err = socket.dns.getaddrinfo(host);
if not addrinfo then return nil, err end
local sock, res
err = "no info on address"
for i, alt in base.ipairs(addrinfo) do
if alt.family == "inet" then
sock, err = socket.tcp()
else
sock, err = socket.tcp6()
end
if not sock then return nil, err end
sock:setoption("reuseaddr", true)
res, err = sock:bind(alt.addr, port)
if not res then
sock:close()
else
res, err = sock:listen(backlog)
if not res then
sock:close()
else
return sock
end
end
end
return nil, err
end
_M.try = _M.newtry()
function _M.choose(table)
return function(name, opt1, opt2)
if base.type(name) ~= "string" then
name, opt1, opt2 = "default", name, opt1
end
local f = table[name or "nil"]
if not f then base.error("unknown key (".. base.tostring(name) ..")", 3)
else return f(opt1, opt2) end
end
end
-----------------------------------------------------------------------------
-- Socket sources and sinks, conforming to LTN12
-----------------------------------------------------------------------------
-- create namespaces inside LuaSocket namespace
local sourcet, sinkt = {}, {}
_M.sourcet = sourcet
_M.sinkt = sinkt
_M.BLOCKSIZE = 2048
sinkt["close-when-done"] = function(sock)
return base.setmetatable({
getfd = function() return sock:getfd() end,
dirty = function() return sock:dirty() end
}, {
__call = function(self, chunk, err)
if not chunk then
sock:close()
return 1
else return sock:send(chunk) end
end
})
end
sinkt["keep-open"] = function(sock)
return base.setmetatable({
getfd = function() return sock:getfd() end,
dirty = function() return sock:dirty() end
}, {
__call = function(self, chunk, err)
if chunk then return sock:send(chunk)
else return 1 end
end
})
end
sinkt["default"] = sinkt["keep-open"]
_M.sink = _M.choose(sinkt)
sourcet["by-length"] = function(sock, length)
return base.setmetatable({
getfd = function() return sock:getfd() end,
dirty = function() return sock:dirty() end
}, {
__call = function()
if length <= 0 then return nil end
local size = math.min(socket.BLOCKSIZE, length)
local chunk, err = sock:receive(size)
if err then return nil, err end
length = length - string.len(chunk)
return chunk
end
})
end
sourcet["until-closed"] = function(sock)
local done
return base.setmetatable({
getfd = function() return sock:getfd() end,
dirty = function() return sock:dirty() end
}, {
__call = function()
if done then return nil end
local chunk, err, pa"
28868 lua51 GIO fd 3 read 355 bytes
"rtial = sock:receive(socket.BLOCKSIZE)
if not err then return chunk
elseif err == "closed" then
sock:close()
done = 1
return partial
else return nil, err end
end
})
end
sourcet["default"] = sourcet["until-closed"]
_M.source = _M.choose(sourcet)
return _M
"
28868 lua51 RET read 4451/0x1163
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077168652288/0xbe4c3fe0000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078490398720/0xbe512c64000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080960086016/0xbe5a5fab000
28868 lua51 CALL read(3,0xbe572081000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe551cec418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/socket/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d1b7da98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/socket/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d1b7db98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/socket/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54a0e1258,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/socket/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d1b7d598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/socket/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe553c80c58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/socket/core.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54a0e10d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/socket/core.so"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1d81c00,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/socket"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc870)
28868 lua51 STRU struct stat { dev=7, ino=155972, mode=drwxr-xr-x , nlink=2, uid=0<"root">, gid=0<"wheel">, rdev=644430, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443360532<"Sep 27 13:28:52 2015">.394917834, ctime=1443360532<"Sep 27 13:28:52 2015">.394917834, size=512, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe521c79000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(3,0xbe521c75000,0x4000)
28868 lua51 RET getdents 128/0x80
28868 lua51 CALL getentropy(0xbe4cf2724a0,256)
28868 lua51 RET getentropy 0
28868 lua51 CALL getdents(3,0xbe521c75000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe521c79000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/socket/core.so"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbb8d0)
28868 lua51 STRU struct stat { dev=7, ino=155973, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632448, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255939<"Sep 26 08:25:39 2015">, ctime=1443360532<"Sep 27 13:28:52 2015">.394917834, size=75222, blocks=148, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbb950,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0`T\0\0\0\0\0\0@\0\0\0\0\0\0\0h\M-o\0\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^N\M-7\0\0\0\0\0\0\M^N\M-7\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M^P\M-7\0\
\0\0\0\0\0\M^P\M-7\^P\0\0\0\0\0\M^P\M-7\^P\0\0\0\0\0\M-0(\0\0\0\0\0\0\M-0(\0\0\0\0\0\0\0\0\^P\0\
\0\0\0\0\^A\0\0\0\^F\0\0\0@\M-`\0\0\0\0\0\0@\M-` \0\0\0\0\0@\M-` \0\0\0\0\0\M-p\^A\0\0\0\0\0\0\
\M-p\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0000\M-b\0\0\0\0\0\0000\M-b0\0\0\0\0\0000\
\M-b0\0\0\0\0\0 \^E\0\0\0\0\0\0 \^E\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0`\M-g\0\0\0\0\
\0\0`\M-g@\0\0\0\0\0`\M-g@\0\0\0\0\0000\a\0\0\0\0\0\0000\a\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\
\0\^F\0\0\0\M-p\M-`\0\0\0\0\0\0\M-p\M-` \0\0\0\0\0\M-p\M-` \0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\
\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0(\M-`\0\0\0\0\0\0(\M-`\^P\0\0\0\0\0(\M-`\^P\0\0\0\0\0\
\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-X\M-C\0\0\0\0\0\0\M-X\M-C\
\^P\0\0\0\0\0\M-X\M-C\^P\0\0\0\0\0\M-,\^E\0\0\0\0\0\0\M-,\^E\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\
\M-[\M-#e\^F\0\0\0@\M-`\0\0\0\0\0\0@\M-` \0\0\0\0\0@\M-` \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\
\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\M-Z\0\0\0\0\0\0\0\M-@\0\0\0\
\M-M\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0006\0\0\0|\0\0\0000\
\0\0\0I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-%\0\0\0m\0\0\0\M-,\0\0\0\0\0\0\0\0\0\0\0\M^J\0\
\0\0\M-&\0\0\0a\0\0\0o\0\0\0\M-E\0\0\0\M-3\0\0\0\^N\0\0\0\M-W\0\0\0\^[\0\0\0\M-$\0\0\0\M^N\0\0\
\0"\0\0\0u\0\0\0\0\0\0\0=\0\0\0W\0\0\0q\0\0\0\0\0\0\0\0\0\0\0\M-+\0\0\0\M-O\0\0\0\0\0\0\0\0\0\0\
\0\M^I\0\0\0\M-<\0\0\0\M-;\0\0\0\M^O\0\0\0P\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\M^F\0\0\0\M-*\0\0\0\
\M^G\0\0\0d\0\0\0\M-:\0\0\0\M-5\0\0\0\240\0\0\0\0\0\0\0\M-P\0\0\0J\0\0\0\M-H\0\0\0\^X\0\0\0\M^\\
\0\0\0\0\0\0\0l\0\0\0\0\0\0\0\M^E\0\0\0\0\0\0\0\M-Q\0\0\0\0\0\0\0\M-1\0\0\0t\0\0\0\M^B\0\0\0001\
\0\0\0\M^Q\0\0\0^\0\0\0\0\0\0\0\0\0\0\0.\0\0\0V\0\0\0f\0\0\0\0\0\0\0\M-!\0\0\0\0\0\0\0#\0\0\0\
\M-U\0\0\0\^\\0\0\0\\\0\0\0_\0\0\0\M^W\0\0\0\M-6\0\0\0\M-B\0\0\0j\0\0\0\0\0\0\0\M-D\0\0\0\M-Y\0\
\0\0\0\0\0\0\0\0\0\0\M-I\0\0\0T\0\0\0\M^Z\0\0\0\M--\0\0\0\0\0\0\0/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0,\0\0\0\^_\0\0\0\0\0\0\0\M-4\0\0\0\M^L\0\0\0\0\0\0\0\0\0\0\0`\0\0\0}\0\0\0\0\0\0\0N\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-=\0\0\0\M-J\0\0\0\M^]\0\0\0\M-R\0\0\0\^?\0\0\0\M^X\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\M-.\0\0\0\0\0\0\0\0\0\0\0\M-A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M->\0\0\0\
\M^^\0\0\0\0\0\0\0\0\0\0\0\M-#\0\0\0\M-8\0\0\0\M^Y\0\0\0003\0\0\0\M-(\0\0\0\M-L\0\0\0\M^P\0\0\0\
\0\0\0\0\M^H\0\0\0\0\0\0\0\M-'\0\0\0\0\0\0\0p\0\0\0\0\0\0\0\M-C\0\0\0\M^D\0\0\0\0\0\0\0\M-G\0\0\
\0\0\0\0\0\0\0\0\0\M-S\0\0\0s\0\0\0\M-N\0\0\0\M-?\0\0\0\M-K\0\0\0x\0\0\0\0\0\0\0\0\0\0\0\M-X\0\
\0\0\0\0\0\0\M^M\0\0\0\M^[\0\0\0\0\0\0\0\M-7\0\0\0\M^S\0\0\0\M-0\0\0\0\M-2\0\0\0\M-/\0\0\0\M-9\
\0\0\0X\0\0\0\M-V\0\0\0[\0\0\0\M^T\0\0\0?\0\0\0\^V\0\0\0\0\0\0\0\0\0\0\0\M^_\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^U\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^^\0\0\0'\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0\^]\0\0\0\
\0\0\0\0\0\0\0\0<\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0:\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0 \0\0\0;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0004\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0007\0\0\0\0\0\0\0\0\0\0\0F\0\0\0H\0\
\0\0\0\0\0\0\0\0\0\0!\0\0\0A\0\0\0B\0\0\0\0\0\0\0\0\0\0\0R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0+\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0M\0\0\0\^Z\0\0\0\0\0\0\0\0\0\0\0E\0\0\0\0\0\0\
\0\0\0\0\0g\0\0\0\0\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Q\0\0\0b\0\0\0\
\0\0\0\0Y\0\0\0005\0\0\0\M^C\0\0\0002\0\0\0\0\0\0\0\0\0\0\0(\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0-\0\0\0\0\0\0\0\0\0\0\0\^T\0\0\0z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^K\0\0\0\0\0\0\0\0\0\0\0G\
\0\0\0v\0\0\0\0\0\0\0@\0\0\0\M^U\0\0\0\0\0\0\0\M^A\0\0\0\0\0\0\0\0\0\0\0\M^V\0\0\0]\0\0\0\0\0\0\
\0~\0\0\0D\0\0\0\M^@\0\0\0\0\0\0\0\^R\0\0\0\0\0\0\0%\0\0\0\0\0\0\0\M^R\0\0\0\0\0\0\0\M-"\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0Z\0\0\0{\0\0\08\0\0\0S\0\0\0K\0\0\0\0\0\0\0\0\0\0\0y\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0w\0\0\0\0\0\0\0k\0\0\0\0\0\0\0\0\0\0\0>\0\0\0L\0\0\0\0\0\0\0\M-F\0\0\0\0\0\0\0\M-)\
\0\0\0h\0\0\0\0\0\0\0C\0\0\0e\0\0\0U\0\0\0n\0\0\09\0\0\0&\0\0\0i\0\0\0c\0\0\0r\0\0\0*\0\0\0\M-T\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\^F\0\M-`J\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0`T\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^C\0 \0\M^@\M-7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\M^P\M-7\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-X\M-C\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\f\0\M^H\M-I\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0@\M-` \0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^O\0H\M-` \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0`\M-` \0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^C\0\^S\0000\M-g0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0@\M-g0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0`\M-g@\0\0\0\0\0\0\0\0\0\0\0\0\0\f\^E\0\0\^R\0\b\0`j\0\
\0\0\0\0\0\M^[\0\0\0\0\0\0\0\M-e\^F\0\0\^R\0\b\0\M-0n\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-[\^C\0\0\
\^R\0\b\0\M-0e\0\0\0\0\0\0A\0\0\0\0\0\0\0\M^B\^D\0\0\^R\0\b\0\0h\0\0\0\0\0\0\r\^A\0\0\0\0\0\0\
\M-A
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-g\^E\0\0\^R\0\b\0\M-`l\0\0\0\0\0\0\^O\0\0\0\0\0\
\0\0\M-L\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"\^C\0\0\^R\0\b\0@d\0\0\0\0\0\0(\0\0\0\
\0\0\0\0\M^^\b\0\0\^R\0\b\0@\M^S\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0\M-1\^F\0\0\^R\0\b\0\M^Pn\0\0\0\0\
\0\0\f\0\0\0\0\0\0\0U\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-[\^B\0\0\^R\0\b\0pb\0\0\
\0\0\0\0\M-j\0\0\0\0\0\0\0\^S\^A\0\0\^R\0\b\0\M-0\M^V\0\0\0\0\0\0L\0\0\0\0\0\0\0%
\0\0\^R\0\b\0 \M^L\0\0\0\0\0\09\0\0\0\0\0\0\0\M-"
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Y\b\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0t\b\0\0\^R\0\b\0\M-0\M^L\0\0\0\0\0\0Z\0\0\0\0\0\0\0f\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0* \0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-~\^F\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-5\^B\0\0\^R\0\b\0\M-p_\0\0\0\0\0\0~\^B\0\0\0\0\0\0\^N\^B\0\0\^R\0\b\0\M-pZ\0\0\0\0\
\0\0\^O\0\0\0\0\0\0\0\M-L
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0E\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-m\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0003 \0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^^\v\0\0\^P\0\M-q\M^?P\M-g0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-h\0\0\0\^R\0\b\0\M-`Z\0\0\0\0\0\
\0\^C\0\0\0\0\0\0\0\M-,\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0F\0\0\0\^R\0\b\0\0V\0\0\
\0\0\0\0\M^]\0\0\0\0\0\0\0\^Z\^C\0\0\^R\0\b\0000d\0\0\0\0\0\0\^P\0\0\0\0\0\0\0_\^D\0\0\^R\0\b\0\
\M^Pg\0\0\0\0\0\0a\0\0\0\0\0\0\0\M-<\b\0\0\^R\0\b\0\M-@\M^K\0\0\0\0\0\0000\0\0\0\0\0\0\0\M-6\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0|\a\0\0\^R\0\b\0\M-Pr\0\0\0\0\0\0\M^N\0\0\0\0\0\0\
\0\M-q\^A\0\0\^R\0\b\0pY\0\0\0\0\0\0\M-N\0\0\0\0\0\0\0_
\0\0\^R\0\b\0p\M^N\0\0\0\0\0\0\M-j\0\0\0\0\0\0\0\^^\b\0\0\^R\0\b\0\M-0w\0\0\0\0\0\0\^V\0\0\0\0\
\0\0\0\M^[
\0\0\^R\0\b\0P\M^Q\0\0\0\0\0\0\M^\\0\0\0\0\0\0\0\M-%\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-I\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\M^B\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\a\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M^R
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-,\b\0\0\^R\0\b\0\M-`y\0\0\0\0\0\0'\^A\0\0\0\0\0\
\0H\a\0\0\^R\0\b\0\M-0r\0\0\0\0\0\0\f\0\0\0\0\0\0\0\^V \0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-4 \0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0C
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Q
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-!\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M^K\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0;\^D\0\0\^R\0\b\0@g\0\0\0\0\0\0O\0\0\0\0\
\0\0\0\M-B \0\0\^R\0\b\0 \M^K\0\0\0\0\0\0F\0\0\0\0\0\0\0r\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-<\^D\0\0\^R\0\b\0\^Pi\0\0\0\0\0\0\M-@\0\0\0\0\0\0\0\M-" \0\0\^P\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0~\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^@\b\0\0\^R\0\
\b\0 \M^N\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x40f000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13078317379584/0xbe508763000
28868 lua51 CALL mmap(0xbe508763000,0xc000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13078317379584/0xbe508763000
28868 lua51 CALL mmap(0xbe50886e000,0x4000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb000)
28868 lua51 RET mmap 13078318473216/0xbe50886e000
28868 lua51 CALL mmap(0xbe508971000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xe000)
28868 lua51 RET mmap 13078319534080/0xbe508971000
28868 lua51 CALL mmap(0xbe508a71000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xe000)
28868 lua51 RET mmap 13078320582656/0xbe508a71000
28868 lua51 CALL mmap(0xbe508b71000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xe000)
28868 lua51 RET mmap 13078321631232/0xbe508b71000
28868 lua51 CALL getentropy(0xbe508971040,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe508a71000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL sigaction(SIGPIPE,0x7f7ffffbcab0,0x7f7ffffbcaa0)
28868 lua51 STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0x2<SA_RESTART> }
28868 lua51 STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0x2<SA_RESTART> }
28868 lua51 RET sigaction 0
28868 lua51 CALL open(0xbe5642cbc98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luaevent.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5642cb918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luaevent.lua"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5642cb918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luaevent.lua"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc740)
28868 lua51 STRU struct stat { dev=7, ino=236147, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=956198, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255867<"Sep 26 08:24:27 2015">, ctime=1443360533<"Sep 27 13:28:53 2015">.354911911, size=3498, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0xbe572081000,0x4000)
28868 lua51 GIO fd 3 read 3498 bytes
"--[[
LuaEvent - Copyright (C) 2007 Thomas Harning <[email protected]>
Licensed as LGPL - See doc/COPYING for details.
]]
module("luaevent", package.seeall)
require("luaevent.core")
_NAME = "luaevent-prosody";
_VERSION = "0.1.0";
local EV_READ = luaevent.core.EV_READ
local EV_WRITE = luaevent.core.EV_WRITE
local base = luaevent.core.new()
local function addevent(...)
return base:addevent(...)
end
local function getWrapper()
local running = coroutine.running()
return function(...)
return select(2, coroutine.resume(running, ...))
end
end
-- Weak keys.. the keys are the client sockets
local clientTable = setmetatable({}, {'__mode', 'kv'})
local function socketWait(sock, event)
if not clientTable[sock] then clientTable[sock] = addevent(sock, event, getWrapper()) e\
nd
coroutine.yield(event)
end
function send(sock, data, start, stop)
local s, err
local from = start or 1
local sent = 0
repeat
from = from + sent
s, err, sent = sock:send(data, from, stop)
if s or err ~= "timeout" then return s, err, sent end
socketWait(sock, EV_WRITE)
until false
end
function receive(sock, pattern, part)
local s, err
pattern = pattern or '*l'
repeat
s, err, part = sock:receive(pattern, part)
if s or err ~= "timeout" then return s, err, part end
socketWait(sock, EV_READ)
until false
end
-- same as above but with special treatment when reading chunks,
-- unblocks on any data received.
function receivePartial(client, pattern)
local s, err, part
pattern = pattern or "*l"
repeat
s, err, part = client:receive(pattern)
if s or ( (type(pattern)=="number") and part~="" and part ~=nil ) or
err ~= "timeout" then return s, err, part end
socketWait(sock, EV_READ)
until false
end
function connect(sock, ...)
sock:settimeout(0)
local ret, err = sock:connect(...)
if ret or err ~= "timeout" then return ret, err end
socketWait(sock, EV_WRITE)
ret, err = sock:connect(...)
if err == "already connected" then
return 1
end
return ret, err
end
-- Deprecated..
function flush(sock)
end
local function clientCoroutine(sock, handler)
-- Figure out what to do ......
return handler(sock)
end
local function handleClient(co, client, handler)
local ok, res, event = coroutine.resume(co, client, handler)
end
local function serverCoroutine(sock, callback)
local listenItem = addevent(sock, EV_READ, getWrapper())
repeat
local event = coroutine.yield(EV_READ)
-- Get new socket
local client = sock:accept()
if client then
client:settimeout(0)
local co = coroutine.create(clientCoroutine)
handleClient(co, client, callback)
end
until false
end
function addserver(sock, callback)
local coro = coroutine.create(serverCoroutine)
assert(coroutine.resume(coro, sock, callback))
end
function addthread(func, ...)
return coroutine.resume(coroutine.create(func), ...)
end
local _skt_mt = {__index = {
connect = function(self, ...)
return connect(self.socket, ...)
end,
send = function (self, data)
return send(self.socket, data)
end,
receive = function (self, pattern)
if (self.timeout==0) then
return receivePartial(self.socket, pattern)
end
return receive(self.socket, pattern)
end,
flush = function (self)
return flush(self.socket)
end,
settimeout = function (self,time)
self.timeout=time
return
end,
close = function(self)
clientTable[self.socket]:close()
self.socket:close()
end
}}
function wrap(sock)
return setmetatable({socket = sock}, _skt_mt)
end
loop = function(...) base:loop(...) end
"
28868 lua51 RET read 3498/0xdaa
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078639333376/0xbe51ba6d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078939242496/0xbe52d871000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077970259968/0xbe4f3c59000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080405970944/0xbe584f39000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080066072576/0xbe570b12000
28868 lua51 CALL read(3,0xbe572081000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1b7de18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luaevent/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452198,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luaevent/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4b6452598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/luaevent/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe572082b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luaevent/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4e1513518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luaevent/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4e1513718,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/luaevent/core.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5642cbcd8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luaevent/core.so"
28868 lua51 RET open 3
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4bbb38840,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luaevent"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbc870)
28868 lua51 STRU struct stat { dev=7, ino=155977, mode=drwxr-xr-x , nlink=2, uid=0<"root">, gid=0<"wheel">, rdev=660085, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443360533<"Sep 27 13:28:53 2015">.354911911, ctime=1443360533<"Sep 27 13:28:53 2015">.354911911, size=512, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x5000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080887742464/0xbe5a1aad000
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(3,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 96/0x60
28868 lua51 CALL getdents(3,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/luaevent/core.so"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbb8d0)
28868 lua51 STRU struct stat { dev=7, ino=155978, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632544, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255867<"Sep 26 08:24:27 2015">, ctime=1443360533<"Sep 27 13:28:53 2015">.354911911, size=32527, blocks=64, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbb950,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0 +\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-(^\0\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0\^X\0\^U\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0^H\0\0\0\0\0\0^H\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0`H\0\0\0\0\0\0`H\^P\0\
\0\0\0\0`H\^P\0\0\0\0\0\M-P\r\0\0\0\0\0\0\M-P\r\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\
\0000V\0\0\0\0\0\0000V \0\0\0\0\0000V \0\0\0\0\0p\^A\0\0\0\0\0\0p\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\
\0\^A\0\0\0\^F\0\0\0\240W\0\0\0\0\0\0\240W0\0\0\0\0\0\240W0\0\0\0\0\0\^X\^C\0\0\0\0\0\0\^X\^C\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-@Z\0\0\0\0\0\0\M-@Z@\0\0\0\0\0\M-@Z@\0\0\0\0\0 \
\^C\0\0\0\0\0\0 \^C\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0@V\0\0\0\0\0\0@V \0\0\0\0\0@V\
\0\0\0\0\0`\^A\0\0\0\0\0\0`\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\^XV\0\0\0\0\0\0\
\^XV\^P\0\0\0\0\0\^XV\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\
\0\0\0\M-,L\0\0\0\0\0\0\M-,L\^P\0\0\0\0\0\M-,L\^P\0\0\0\0\0\M-t\^A\0\0\0\0\0\0\M-t\^A\0\0\0\0\0\
\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0000V\0\0\0\0\0\0000V \0\0\0\0\0000V \0\0\0\0\0\b\0\0\0\
\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0t\0\0\0001\0\
\0\0a\0\0\0X\0\0\0\^T\0\0\0[\0\0\0I\0\0\0\^Z\0\0\0\0\0\0\0<\0\0\0r\0\0\0\0\0\0\0e\0\0\0j\0\0\0J\
\0\0\0i\0\0\0\^Q\0\0\0l\0\0\0\^V\0\0\0g\0\0\0\0\0\0\0h\0\0\0V\0\0\0\0\0\0\0\0\0\0\0s\0\0\0\0\0\
\0\0c\0\0\0^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0005\0\0\0k\0\0\0\0\0\0\0\0\0\0\0007\0\
\0\0f\0\0\0Q\0\0\0\0\0\0\0o\0\0\0K\0\0\0N\0\0\0P\0\0\0>\0\0\0\0\0\0\0S\0\0\0U\0\0\0004\0\0\0b\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0B\0\0\0\0\0\0\0F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0n\0\0\
\0\0\0\0\0006\0\0\0E\0\0\0C\0\0\0@\0\0\0q\0\0\0p\0\0\0/\0\0\0_\0\0\0\^R\0\0\0\0\0\0\0m\0\0\0\0\
\0\0\0=\0\0\0*\0\0\0R\0\0\0\0\0\0\0W\0\0\0\0\0\0\0\^U\0\0\0?\0\0\0!\0\0\0\0\0\0\0\^P\0\0\0\0\0\
\0\0D\0\0\0T\0\0\0 \0\0\0\0\0\0\0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^W\
\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^^\0\0\0\^_\0\0\0#\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0-\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0.\0\0\
\0(\0\0\0\r\0\0\0\0\0\0\0002\0\0\0\0\0\0\0\0\0\0\0%\0\0\0A\0\0\0;\0\0\0\0\0\0\0003\0\0\0000\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0H\0\0\0\0\0\0\0G\0\0\0L\0\0\0&\0\0\0M\
\0\0\0\0\0\0\0"\0\0\0\0\0\0\09\0\0\0Y\0\0\0\0\0\0\08\0\0\0\^N\0\0\0\0\0\0\0\^]\0\0\0'\0\0\0\0\0\
\0\0\0\0\0\0+\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0\0\0O\0\0\0,\0\0\0\0\0\0\0Z\0\0\0\^Y\0\0\0\0\0\0\
\0:\0\0\0\0\0\0\0`\0\0\0\^\\0\0\0\\\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^F\0\M^P%\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0 +\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^C\0 \0PH\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0`H\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-,L\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\
\0\f\0\240N\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0000V \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\^C\0\^O\08V \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^R\0\M^XZ0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^C\0\^S\0\M-(Z0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-@Z@\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-<\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0B\0\0\0\0\0\0\0\M-B\^D\0\0\^R\0\b\0p@\0\0\0\0\0\0^\0\0\0\
\0\0\0\0X\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\0\0\0\0e\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^T\
\0\0\0\0\0\0\0'\^C\0\0\^R\0\b\0\M-p?\0\0\0\0\0\0V\0\0\0\0\0\0\0002\^A\0\0\^R\0\b\0\^P.\0\0\0\0\
\0\0\M-7\0\0\0\0\0\0\0\M-{\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0G\^A\0\0\0\0\0\0>\^A\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0V\0\0\0\0\0\0\0Q\^E\0\0\^R\0\b\0\M-0F\0\0\0\0\0\0q\0\0\0\0\0\0\0\^X\^E\0\0\^R\0\0\0\
\0\0\0\0\0\0\0\0\M-s\0\0\0\0\0\0\0g\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0M\0\0\0\0\0\0\0F\0\0\0\^R\0\
\b\0\M-@,\0\0\0\0\0\0%\0\0\0\0\0\0\0t\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-C\0\0\0\0\0\0\0g\^A\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0\M^V\0\0\0\0\0\0\0\M-k\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-t\^D\0\0\0\0\
\0\0\M-\\^E\0\0\^P\0\M-q\M^?\M-8Z0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^R\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\
\0x\0\0\0\0\0\0\0\M-U\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\^C\0\0\^R\0\0\0\0\0\0\0\
\0\0\0\0\^A\^A\0\0\0\0\0\0<\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^T\0\0\0\0\0\0\0\M-%\^B\0\0\^R\0\0\
\0\0\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\M-w\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-*\0\0\0\0\0\0\0\M^_\^A\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0"\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\
\M-P\0\0\0\^R\0\b\0\M-p1\0\0\0\0\0\0\M^X\0\0\0\0\0\0\0\M-|\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0Y\0\0\
\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0i\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0M\0\
\0\0\0\0\0\0t\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^Z\0\0\0\0\0\0\0\M^W\^D\0\0\^R\0\0\0\0\0\0\0\0\0\
\0\0n\0\0\0\0\0\0\0\M-M\^C\0\0\^R\0\b\0\M^@;\0\0\0\0\0\0W\0\0\0\0\0\0\0\M-\\^D\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0\^Z\0\0\0\0\0\0\0\M^H\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0(\0\0\0\0\0\0\0\M--\^A\0\0\^R\
\0\b\0\^PC\0\0\0\0\0\0\M-C\0\0\0\0\0\0\0\M-`\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\
\M-"\0\0\0\^R\0\b\0pB\0\0\0\0\0\0\M^S\0\0\0\0\0\0\0}\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0
\^A\0\0\0\0\0\0K\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0T\0\0\0\0\0\0\0\M-f\0\0\0\^R\0\0\0\0\0\0\0\0\0\
\0\0Z\0\0\0\0\0\0\0S\0\0\0\^R\0\b\0\M-p,\0\0\0\0\0\0?\0\0\0\0\0\0\0!\^A\0\0\^R\0\0\0\0\0\0\0\0\
\0\0\0\M^Y\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-0\^B\0\0\^R\0\0\0\0\
\0\0\0\0\0\0\0c\0\0\0\0\0\0\0\M^\\0\0\0\^R\0\^F\0\M^P%\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-i\^D\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0\M^[\0\0\0\0\0\0\0t\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\M-'\
\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0#\0\0\0\0\0\0\0\M^T\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\
\0\0\0\M-P\^E\0\0\^P\0\M-q\M^?\240W0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-#\^E\0\0\^R\0\b\0\M-pG\0\0\0\0\
\0\0^\0\0\0\0\0\0\0{\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0/\0\0\0\0\0\0\0\M-l\^C\0\0\^R\0\b\0\M-P9\0\
\0\0\0\0\0^\0\0\0\0\0\0\0d\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^]\0\0\0\0\0\0\0!\^E\0\0\^R\0\b\0\
\M-`C\0\0\0\0\0\0_\0\0\0\0\0\0\0\^[\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^O\0\0\0\0\0\0\0\M-q\0\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0p\0\0\0\0\0\0\0\b\^B\0\0\^R\0\b\0\M-p/\0\0\0\0\0\0#\0\0\0\0\0\0\0\M^E\
\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-|\0\0\0\0\0\0\0T\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0S\0\0\0\0\0\
\0\0G\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-5\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M^W\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0#\
\0\0\0\0\0\0\0\M^V\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0U\0\0\0\0\0\0\0\M-z\^E\0\0\^P\0\M-q\M^?\M-`]@\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M-~\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-r\^A\0\0\0\0\0\0\^Z\^D\0\0\^R\
\0\b\0000:\0\0\0\0\0\0W\0\0\0\0\0\0\0\M-%\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M--\0\0\0\0\0\0\0v\^D\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0V\0\0\0\0\0\0\0\M-R\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0u\0\0\0\0\0\0\0\
\M-o\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0&\0\0\0\0\0\0\0\M^H\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0(\0\0\0\
\0\0\0\0004\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0S\0\0\0\0\0\0\0-\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\0 \^A\
\0\0\0\0\0\0,\0\0\0\^R\0 \0PH\0\0\0\0\0\0\0\0\0\0\0\0\0\0C\^B\0\0\^R\0\b\0 0\0\0\0\0\0\0\
c\0\0\0\0\0\0\0\M^U\^E\0\0\^R\0\b\0\240G\0\0\0\0\0\0G\0\0\0\0\0\0\0\M-A\^A\0\0\^R\0\0\0\0\0\0\0\
\0\0\0\0_\0\0\0\0\0\0\0\M-S\^A\0\0\^R\0\b\0pD\0\0\0\0\0\09\^B\0\0\0\0\0\0u\^B\0\0\^R\0\b\0\M^P0\
\0\0\0\0\0\0\f\0\0\0\0\0\0\0E\^C\0\0\^R\0\b\0`G\0\0\0\0\0\0?\0\0\0\0\0\0\0\M-s\^E\0\0\^P\0\M-q\
\M^?\M-`]@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-a\^E\0\0\^P\0\M-q\M^?\M-`]@\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M^D\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-%\0\0\0\0\0\0\09\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^Y\0\0\
\0\0\0\0\0\M-A\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^\\0\0\0\0\0\0\0;\^D\0\0\^R\0\0\0\0\0\0\0\0\0\0\
\0t\^A\0\0\0\0\0\0002\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-e\0\0\0\0\0\0\0\M^A\0\0\0\^R\0\b\0000-\
\0\0\0\0\0\0\M-Q\0\0\0\0\0\0\0]\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0H\0\0\0\0\0\0\0\^D\^E\0\0\^R\0\0\
\0\0\0\0\0\0\0\0\0\M-d\0\0\0\0\0\0\0~\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0p\0\0\0\0\0\0\0X\^A\0\0\^R\
\0\0\0\0\0\0\0\0\0\0\0V\0\0\0\0\0\0\0\M-f\^E\0\0\^P\0\^T\0\M-@Z@\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\
\^A\0\0\^R\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x406000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13080058957824/0xbe570449000
28868 lua51 CALL mmap(0xbe570449000,0x5000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13080058957824/0xbe570449000
28868 lua51 CALL mmap(0xbe57054d000,0x2000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x4000)
28868 lua51 RET mmap 13080060022784/0xbe57054d000
28868 lua51 CALL mmap(0xbe57064e000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x5000)
28868 lua51 RET mmap 13080061075456/0xbe57064e000
28868 lua51 CALL mmap(0xbe57074e000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x5000)
28868 lua51 RET mmap 13080062124032/0xbe57074e000
28868 lua51 CALL mmap(0xbe57084e000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x5000)
28868 lua51 RET mmap 13080063172608/0xbe57084e000
28868 lua51 CALL getentropy(0xbe57064e630,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL getentropy(0x7f7ffffbc9ec,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL open(0xbe56423d24b,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/liblua5.1.so.5.1"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbb860)
28868 lua51 STRU struct stat { dev=7, ino=155967, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632304, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255448<"Sep 26 08:17:28 2015">, ctime=1443360531<"Sep 27 13:28:51 2015">.134896798, size=206945, blocks=448, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbb8e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0pp\0\0\0\0\0\0@\0\0\0\0\0\0\0\M^X\M-7\^B\0\0\
\0\0\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0~!\^B\0\0\0\0\0~!\^B\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M^@!\^B\0\0\0\0\0\
\M^@!\^R\0\0\0\0\0\M^@!\^R\0\0\0\0\0@}\0\0\0\0\0\0@}\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\
\0\0\0\240\^B\0\0\0\0\0\0\240"\0\0\0\0\0\0\240"\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\
\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0\M-0\^B\0\0\0\0\0\0\M-02\0\0\0\0\0\0\M-02\0\0\0\0\0\M-0\^F\0\0\
\0\0\0\0\M-0\^F\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-0\M-6\^B\0\0\0\0\0\M-0\M-6B\0\
\0\0\0\0\M-0\M-6B\0\0\0\0\0\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\
\0\M-0\M-.\^B\0\0\0\0\0\M-0\M-."\0\0\0\0\0\M-0\M-."\0\0\0\0\0P\^A\0\0\0\0\0\0P\^A\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M-(\M^^\^B\0\0\0\0\0\M-(\M^^\^R\0\0\0\0\0\M-(\M^^\^R\0\0\0\0\0\
\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\\A\^B\0\0\0\0\0\\A\^R\0\0\0\
\0\0\\A\^R\0\0\0\0\0|\^R\0\0\0\0\0\0|\^R\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0\
\240\^B\0\0\0\0\0\0\240"\0\0\0\0\0\0\240"\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\M-t\0\0\0\M-\\0\0\0\M^S\0\0\0\M-p\0\0\0\0\0\
\0\0=\0\0\0\M-7\0\0\0\M-<\0\0\0\M-O\0\0\0,\0\0\0f\0\0\0\0\0\0\0C\0\0\0\M-d\0\0\0\0\0\0\0[\0\0\0\
\0\0\0\0\M-a\0\0\0\0\0\0\0\M^I\0\0\0\M-R\0\0\0\0\0\0\0(\0\0\0\^[\0\0\0\M-;\0\0\0\M-&\0\0\0\^U\0\
\0\0\0\0\0\0y\0\0\0\M-[\0\0\0\0\0\0\0\0\0\0\0\M-r\0\0\0\M^N\0\0\0X\0\0\0Q\0\0\0\M-S\0\0\0\M-l\0\
\0\0\M^U\0\0\0P\0\0\0u\0\0\0\M-j\0\0\0\M^C\0\0\0\0\0\0\0\0\0\0\0\M-g\0\0\0\M^M\0\0\0}\0\0\0\0\0\
\0\0\M-P\0\0\0{\0\0\0\M^[\0\0\0\0\0\0\0+\0\0\0\0\0\0\0\M-"\0\0\0I\0\0\0\^W\0\0\0\M-!\0\0\0o\0\0\
\0U\0\0\0\M-H\0\0\0`\0\0\0\0\0\0\0\M-n\0\0\0\\\0\0\0\0\0\0\0\M^R\0\0\0\M-:\0\0\0\0\0\0\0\M^\\0\
\0\0\M-i\0\0\0B\0\0\0\0\0\0\0|\0\0\0\M-G\0\0\0\0\0\0\0\M^H\0\0\0\M^Z\0\0\0\0\0\0\0\0\0\0\0x\0\0\
\0\M-M\0\0\0\0\0\0\0]\0\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\0\0\0.\0\0\0\0\0\0\0\M-L\
\0\0\0\^?\0\0\0\M-)\0\0\0J\0\0\0\M-T\0\0\0\^V\0\0\0\M^P\0\0\0H\0\0\0\M-s\0\0\0\M-e\0\0\0\0\0\0\
\0\M-^\0\0\0\M^E\0\0\0\M-3\0\0\0\0\0\0\0\0\0\0\0\240\0\0\0\M^^\0\0\0000\0\0\0\M-+\0\0\0\M-`\0\0\
\0\M-?\0\0\0\0\0\0\0\M-J\0\0\0\0\0\0\0\M-9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-V\0\0\0\0\0\
\0\0\M-q\0\0\0\0\0\0\0\0\0\0\0v\0\0\0\M^L\0\0\0\0\0\0\0\M^T\0\0\0;\0\0\0\M-*\0\0\0\0\0\0\0\0\0\
\0\0\M-_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0005\0\0\0\M-C\0\0\0\0\0\0\0001\0\0\0\0\0\0\0\0\0\0\0\M-/\
\0\0\0\0\0\0\0\0\0\0\0D\0\0\0\M-o\0\0\0\M-U\0\0\0\M^F\0\0\0\M-B\0\0\0\M-X\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M^K\0\0\0\0\0\0\0\M^A\0\0\0\0\0\0\0\M-c\0\0\0\M-m\0\0\0O\0\0\0\M-]\0\0\0\0\0\0\
\0\0\0\0\0n\0\0\0\M-(\0\0\0\M-f\0\0\0\M^J\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\M^X\0\0\0\0\0\0\0\M-W\
\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\M-I\0\0\0R\0\0\0\0\0\0\0\M^B\0\0\0\M-'\0\0\0\M-K\0\0\0\M-Z\0\0\
\0\M-k\0\0\0\M-,\0\0\0\M-0\0\0\0?\0\0\0\M-N\0\0\0j\0\0\0\0\0\0\0\M-6\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0\^]\0\
\0\0\0\0\0\0\^T\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^^\0\0\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0003\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0G\0\0\0\0\0\0\0\0\0\0\0F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\09\0\0\0\0\0\0\0A\0\
\0\0\0\0\0\0@\0\0\0\0\0\0\0\0\0\0\0'\0\0\0b\0\0\0\0\0\0\0N\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0^\0\0\0\0\0\0\0\0\0\0\0m\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^N\0\0\0*\0\0\0!\0\0\0h\0\0\0\0\0\0\0\0\0\0\0l\0\0\0#\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0\^Z\
\0\0\0\0\0\0\0%\0\0\0"\0\0\0004\0\0\0\0\0\0\0\0\0\0\0W\0\0\0S\0\0\0\0\0\0\0007\0\0\0~\0\0\0\0\0\
\0\0\0\0\0\0\M^D\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\0\0\0T\0\0\0\^O\0\0\0i\
\0\0\0\0\0\0\0V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0-\0\0\0:\0\0\0e\0\0\0K\0\0\0\0\0\0\0z\0\0\0\0\0\0\
\0006\0\0\0k\0\0\0\0\0\0\0g\0\0\0\M^@\0\0\0\0\0\0\0\M-#\0\0\0\M-.\0\0\0\0\0\0\0\^X\0\0\0\M^Y\0\
\0\0\0\0\0\0\0\0\0\0\M-5\0\0\0\0\0\0\0\M--\0\0\0\0\0\0\0\M-4\0\0\0L\0\0\0M\0\0\0\M^_\0\0\0c\0\0\
\0\^_\0\0\0>\0\0\0\0\0\0\0\M-%\0\0\0t\0\0\0\M-1\0\0\0\0\0\0\0E\0\0\0\M^V\0\0\0\0\0\0\0a\0\0\0\
\M-F\0\0\0\0\0\0\0\M-@\0\0\0\M^W\0\0\0\M^Q\0\0\0\0\0\0\0\0\0\0\0\M-=\0\0\0r\0\0\0\M-2\0\0\0/\0\
\0\0\M-D\0\0\0_\0\0\0\0\0\0\0\^\\0\0\0\M->\0\0\0d\0\0\0\0\0\0\0\M-A\0\0\08\0\0\0\M-Q\0\0\0\M-8\
\0\0\0\0\0\0\0\0\0\0\0s\0\0\0\M-Y\0\0\0\M^O\0\0\0\0\0\0\0\M-$\0\0\0w\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M^]\0\0\0\M-h\0\0\0\^R\0\0\0\M-b\0\0\0\0\0\0\0p\0\0\0q\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M-pc\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\b\0pp\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0p!\^B\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0
\0\M^@!\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\\A\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M-XS\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\0\240"\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^C\0\^O\0\b\240"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0 \240"\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^C\0\^S\0\M^P\M-62\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\240\M-62\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0\M-0\M-6B\0\0\0\0\0\0\0\0\0\0\0\0\0\M^J\^D\0\0\^R\0\b\0000\
\M-F\0\0\0\0\0\0\M->\0\0\0\0\0\0\0\M-c\^A\0\0\^R\0\b\0\M^@y\0\0\0\0\0\0s\0\0\0\0\0\0\0\M-9\^D\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^\\0\0\0\^R\0\b\0pt\0\0\0\0\0\0L\0\0\0\0\0\0\0>\b\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^V\b\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^U\^A\0\0\^R\0\b\0 v\0\0\0\0\0\0002\0\0\0\0\0\0\0Y\b\0\0\^R\0\0\0\0\0\0\0\0\0\0\0F\^A\0\0\0\0\
\0\0z\^A\0\0\^R\0\b\0\M^Pw\0\0\0\0\0\0\^T\0\0\0\0\0\0\0\M-9\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0o\0\0\0\^R\0\b\0\M^Ps\0\0\0\0\0\0\^S\0\0\0\0\0\0\0000 \0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-X\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^W\^C\0\0\^R\0\b\0p\
\M^I\0\0\0\0\0\0V\0\0\0\0\0\0\0\M-G\^A\0\0\^R\0\b\0\M-Px\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\M^\\^E\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-W\^E\0\0\^R\0\b\0\M^P\M^C\^A\0\0\0\0\0\M-s\0\0\0\
\0\0\0\0\M^U\^F\0\0\^R\0\b\0\0\M^L\^A\0\0\0\0\0b\^A\0\0\0\0\0\0r\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^E\^D\0\0\^R\0\b\0\M^@\M-(\0\0\0\0\0\0&\0\0\0\0\0\0\0q\^B\0\0\^R\0\b\0p~\0\0\
\0\0\0\0\^?\0\0\0\0\0\0\0c\^C\0\0\^R\0\b\0\M^P\M^G\0\0\0\0\0\0\^?\0\0\0\0\0\0\0\M-}\a\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^E\^B\0\0\^R\0\b\0P\^?\0\0\0\0\0\0\M-C\0\0\0\0\0\0\0\^N\
\^F\0\0\^R\0\b\0@\M^F\^A\0\0\0\0\0_\0\0\0\0\0\0\0\^S \0\0\^R\0\b\0\M^@\^Q\^B\0\0\0\0\0\M-C\0\
\0\0\0\0\0\0\M^U\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0(\^C\0\0\^R\0\b\0\M^P\M^E\0\0\0\
\0\0\0\M^V\0\0\0\0\0\0\0j\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^]\^D\0\0\^R\0\b\0\
\M-@\M-(\0\0\0\0\0\0\^E\0\0\0\0\0\0\0003\^B\0\0\^R\0\b\0\M-@{\0\0\0\0\0\0\M^W\0\0\0\0\0\0\0q\^F\
\0\0\^R\0\b\0\M-`\M^I\^A\0\0\0\0\0}\0\0\0\0\0\0\0\M^^\a\0\0\^R\0\b\0P\M-,\^A\0\0\0\0\0!\0\0\0\0\
\0\0\0q \0\0\^P\0\M-q\M^?\M-0\M-62\0\0\0\0\0\0\0\0\0\0\0\0\0\^E\^A\0\0\^R\0\b\0\M-pu\0\0\0\0\0\
\0%\0\0\0\0\0\0\0\M-#\b\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0^\b\0\0\^R\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-r\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-9\^E\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0N\^B\0\0\^R\0\b\0\M-P|\0\0\0\0\0\0;\0\0\0\0\0\0\0\M-{\^C\0\0\^R\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-A\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-3\a\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-L\^E\0\0\^R\0\b\0\M-p\M^B\^A\0\0\0\0\0\M^T\0\0\
\0\0\0\0\0{\0\0\0\^R\0\b\0\M-0s\0\0\0\0\0\0\r\0\0\0\0\0\0\0\M^^\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0B\^C\0\0\^R\0\b\0`\M^F\0\0\0\0\0\0P\0\0\0\0\0\0\0\^E\^E\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-^\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\^A\0\0\^R\0\b\0`v\0\
\0\0\0\0\0\^\\0\0\0\0\0\0\0|\^C\0\0\^R\0\b\0\M-0\M^H\0\0\0\0\0\0Z\0\0\0\0\0\0\0\M-0\^F\0\0\^R\0\
\b\0\M^@\M^M\^A\0\0\0\0\0P\0\0\0\0\0\0\0\M^_\^A\0\0\^R\0\b\0\M-`w\0\0\0\0\0\0Y\0\0\0\0\0\0\0\^A\
\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\a\0\0\^R\0\b\0000\M^R\^A\0\0\0\0\0Q\0\0\0\0\0\0\
\0-\^F\0\0\^R\0\b\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x42c000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13079925432320/0xbe5684f2000
28868 lua51 CALL mmap(0xbe5684f2000,0x23000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13079925432320/0xbe5684f2000
28868 lua51 CALL mmap(0xbe568614000,0x8000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x22000)
28868 lua51 RET mmap 13079926620160/0xbe568614000
28868 lua51 CALL mmap(0xbe56871c000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2a000)
28868 lua51 RET mmap 13079927701504/0xbe56871c000
28868 lua51 CALL mmap(0xbe56881d000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2b000)
28868 lua51 RET mmap 13079928754176/0xbe56881d000
28868 lua51 CALL mmap(0xbe56891d000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x2b000)
28868 lua51 RET mmap 13079929802752/0xbe56891d000
28868 lua51 CALL getentropy(0xbe56871c000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423bcaf,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libevent.so.4.1"
28868 lua51 RET open 3
28868 lua51 CALL fstat(3,0x7f7ffffbb860)
28868 lua51 STRU struct stat { dev=5, ino=77958, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=318464, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1442715525<"Sep 20 02:18:45 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.934772733, size=156898, blocks=308, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(3,0x7f7ffffbb8e0,0x1000)
28868 lua51 GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-p/\0\0\0\0\0\0@\0\0\0\0\0\0\088\^B\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0#\0 \0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-^\M^N\0\0\0\0\0\0\M-^\M^N\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-`\M^N\0\0\0\
\0\0\0\M-`\M^N\^P\0\0\0\0\0\M-`\M^N\^P\0\0\0\0\0x\^Z\0\0\0\0\0\0x\^Z\0\0\0\0\0\0\0\0\^P\0\0\0\0\
\0\^A\0\0\0\^F\0\0\0X\M-)\0\0\0\0\0\0X\M-) \0\0\0\0\0X\M-) \0\0\0\0\0H\^B\0\0\0\0\0\0H\^B\0\0\0\
\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\240\M-+\0\0\0\0\0\0\240\M-+0\0\0\0\0\0\240\M-+0\0\0\0\
\0\0H\^C\0\0\0\0\0\0H\^C\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-h\M-.\0\0\0\0\0\0\M-h\
\M-.@\0\0\0\0\0\M-h\M-.@\0\0\0\0\0(\0\0\0\0\0\0\0H\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\
\0\0`\M-*\0\0\0\0\0\0`\M-* \0\0\0\0\0`\M-* \0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\
\0\0\0\^D\0\0\0\^D\0\0\0@\M-)\0\0\0\0\0\0@\M-)\^P\0\0\0\0\0@\M-)\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\
\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M^\\M^T\0\0\0\0\0\0\M^\\M^T\^P\0\0\0\0\0\M^\\
\M^T\^P\0\0\0\0\0<\^D\0\0\0\0\0\0<\^D\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0X\M-)\0\
\0\0\0\0\0X\M-) \0\0\0\0\0X\M-) \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^C\0\0\0\M-(\0\0\0R\0\0\0u\0\0\0\M^Z\0\0\0\M^D\0\0\0l\0\0\0%\
\0\0\0006\0\0\0\0\0\0\0\M^]\0\0\0\M^C\0\0\0i\0\0\0*\0\0\0\M^Y\0\0\0\M^^\0\0\0+\0\0\0\0\0\0\0[\0\
\0\0\0\0\0\0\M-&\0\0\0<\0\0\0h\0\0\0\M^Q\0\0\0\^R\0\0\0N\0\0\0]\0\0\0#\0\0\0\M^U\0\0\0\0\0\0\0\
\M^X\0\0\0t\0\0\0a\0\0\0\M^K\0\0\0\0\0\0\0M\0\0\08\0\0\0e\0\0\0\0\0\0\0\^P\0\0\0S\0\0\0y\0\0\0p\
\0\0\0.\0\0\0-\0\0\0\0\0\0\0\0\0\0\0)\0\0\0D\0\0\0\0\0\0\0\0\0\0\0F\0\0\0\0\0\0\0z\0\0\0\M^\\0\
\0\0`\0\0\0\0\0\0\0\M^N\0\0\0\0\0\0\0\M-!\0\0\0_\0\0\0\M^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^_\0\
\0\0\^_\0\0\0\0\0\0\0\0\0\0\0\M^O\0\0\0\0\0\0\0;\0\0\0\M-$\0\0\0{\0\0\0\0\0\0\0\M^S\0\0\0\0\0\0\
\0j\0\0\0\M^E\0\0\0,\0\0\0 \0\0\0\0\0\0\0g\0\0\0k\0\0\0\0\0\0\0\0\0\0\0q\0\0\0\M^H\0\0\0\0\0\0\
\0:\0\0\0\M-%\0\0\0\^\\0\0\0/\0\0\0Q\0\0\0n\0\0\0Y\0\0\0\M^B\0\0\0\M-'\0\0\0\0\0\0\0&\0\0\0\M-#\
\0\0\0m\0\0\0\^T\0\0\0\^Y\0\0\0c\0\0\0\M^@\0\0\0\M-"\0\0\0\0\0\0\0\0\0\0\0\^?\0\0\0K\0\0\0\M^G\
\0\0\0\0\0\0\0\0\0\0\0\M^W\0\0\0L\0\0\0\M^[\0\0\0o\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^I\0\0\0f\0\0\0\^S\0\0\0\0\0\0\0\M^M\0\0\0\M^T\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\
\0\0\0\0\^]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0005\0\0\0003\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0A\0\0\0\0\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0\^^\0\0\0>\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^U\0\0\0(\0\0\0\0\0\0\0002\0\0\0\0\0\0\0\^W\0\0\0000\0\0\0W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0@\0\0\0E\0\0\0V\0\0\0\0\0\0\0B\0\0\0\^Z\0\0\0\0\0\0\0!\0\0\0H\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0b\0\0\0P\0\0\0Z\0\0\0007\0\0\0C\0\0\0\0\0\0\0I\0\0\0\0\
\0\0\0\0\0\0\0G\0\0\0$\0\0\0s\0\0\0J\0\0\0U\0\0\0x\0\0\0=\0\0\0}\0\0\0~\0\0\0O\0\0\0|\0\0\0\0\0\
\0\0X\0\0\0\0\0\0\0v\0\0\0d\0\0\0"\0\0\0004\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\\\0\0\0\M^L\0\0\0\M^P\0\0\0\M^R\0\0\0001\0\0\0w\0\0\0\M^J\0\0\0\M^V\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M^F\0\0\0r\0\0\0^\0\0\0T\0\0\0\^V\0\0\0\240\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\0\0\
\09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0P*\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0\M-p/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\M-P\
\M^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\M-`\M^N\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M^\\M^T\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\f\0\M-X\M^X\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0X\M-) \0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^O\0`\M-) \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\M^@\M-) \0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^S\0\M-H\M-.0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-X\M-.\
0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0\M-h\M-.@\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\
\^V\0\^P\M-/@\0\0\0\0\0\0\0\0\0\0\0\0\0\M^O\^B\0\0\^R\0\b\0\^PB\0\0\0\0\0\0B\0\0\0\0\0\0\0<\^E\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-f\0\0\0\^R\0\b\0@:\0\0\0\0\0\0\M-<\0\0\0\0\0\0\
\0\v\a\0\0\^R\0\b\0\240\M^D\0\0\0\0\0\0\^?\^A\0\0\0\0\0\0 \^D\0\0\^R\0\b\0\M-pM\0\0\0\0\0\0A\^B\
\0\0\0\0\0\0000\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0J\^E\0\0\^R\0\b\0\240f\0\0\0\0\0\
\0)\0\0\0\0\0\0\0Z\^E\0\0\^R\0\b\0\M-Pf\0\0\0\0\0\0G\^A\0\0\0\0\0\0\M--\^D\0\0\^R\0\b\0\M-@\M^A\
\0\0\0\0\0\0\M^Z\0\0\0\0\0\0\0F\0\0\0\^R\0\b\0\M-@1\0\0\0\0\0\0.\0\0\0\0\0\0\0[\a\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\^E\0\0\^R\0\b\0\^P`\0\0\0\0\0\0\M-(\^A\0\0\0\0\0\0y\^E\0\0\^Q\
\0\^U\0\0\M-/@\0\0\0\0\0\b\0\0\0\0\0\0\0o\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\240\^B\
\0\0\^R\0\b\0000I\0\0\0\0\0\0M\0\0\0\0\0\0\0006\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-|\0\0\0\^R\0\b\0\M^@8\0\0\0\0\0\0\M-L\0\0\0\0\0\0\0>\^D\0\0\^R\0\b\0\M-@H\0\0\0\0\0\0m\0\0\0\
\0\0\0\0\M^G\^E\0\0\^R\0\b\0\M-@r\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\M-*\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0L\^D\0\0\^R\0\b\0@Q\0\0\0\0\0\0000\^A\0\0\0\0\0\0\M^R\^E\0\0\^R\0\b\0\M-@m\0\
\0\0\0\0\0\M-t\^D\0\0\0\0\0\0\M-/\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-"\^E\0\0\^R\
\0\b\0\M-P\M^J\0\0\0\0\0\0\M-J\0\0\0\0\0\0\0\M--\^E\0\0\^R\0\b\0\0s\0\0\0\0\0\0\M-T\0\0\0\0\0\0\
\0\M-B\a\0\0\^P\0\M-q\M^?\M-h\M-.0\0\0\0\0\0\0\0\0\0\0\0\0\0\^T\^A\0\0\^R\0\b\0\M-`5\0\0\0\0\0\
\0\M-]\0\0\0\0\0\0\0\M-:\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-7\^B\0\0\^R\0\b\0\0@\
\0\0\0\0\0\0x\0\0\0\0\0\0\0W\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-J\^B\0\0\^R\0\b\0\
@G\0\0\0\0\0\0\^A\^A\0\0\0\0\0\0\M-:\^E\0\0\^R\0\b\0@Y\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\M-O\^E\0\0\
\^R\0\b\0\M-`r\0\0\0\0\0\0\a\0\0\0\0\0\0\0x\a\0\0\^R\0\b\0\240\M^K\0\0\0\0\0\0\M-J\0\0\0\0\0\0\
\0\M->\^D\0\0\^R\0\b\0 \M^G\0\0\0\0\0\0\M-b\0\0\0\0\0\0\0!\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0&\^A\0\0\^R\0\b\0PL\0\0\0\0\0\0\M-*\0\0\0\0\0\0\0003\^A\0\0\^R\0\b\0\M-@6\0\0\0\0\0\0\
\^P\0\0\0\0\0\0\0>\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-^\^E\0\0\^R\0\b\0\M-p_\0\0\
\0\0\0\0\^Q\0\0\0\0\0\0\0\M-r\^E\0\0\^R\0\b\0000Z\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\^F\0\0\^R\0\b\
\0 Y\0\0\0\0\0\0\a\0\0\0\0\0\0\0a\^D\0\0\^R\0\b\0pR\0\0\0\0\0\0\M-8\0\0\0\0\0\0\0\^A\0\0\0 \0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0u\^D\0\0\^R\0\b\0\0J\0\0\0\0\0\0\M-L\0\0\0\0\0\0\0\M-Z\^B\0\0\
\^R\0\b\0\M-p@\0\0\0\0\0\0W\0\0\0\0\0\0\0\M^E\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0M\
\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^[\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0E\^A\0\0\^R\0\b\0 =\0\0\0\0\0\0M\0\0\0\0\0\0\0\M-k\^B\0\0\^R\0\b\0\M^@>\0\0\0\0\0\0\^]\0\0\
\0\0\0\0\0\M-L\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\^F\0\0\^R\0\b\0Pm\0\0\0\0\0\0\
\0\0\0\0\0\0\0(\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\^A\0\0\^R\0\b\0 5\0\0\0\0\0\0\
\M-4\0\0\0\0\0\0\0m\0\0\0\^R\0\b\0 \M^M\0\0\0\0\0\0\M-U\0\0\0\0\0\0\0h\^A\0\0\^R\0\b\0\0\M^N\0\
\0\0\0\0\0\M-B\0\0\0\0\0\0\0`\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-V\^A\0\0\^R\0\^F\0P*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-}\^B\0\0\^R\
\0\b\0\0E\0\0\0\0\0\0B\0\0\0\0\0\0\0\^V\^C\0\0\^R\0\b\0\240>\0\0\0\0\0\0Q\0\0\0\0\0\0\0\M^\\^F\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\^A\0\0\^R\0\b\0\0;\0\0\0\0\0\0\M^S\0\0\0\0\0\0\0\
\M^C\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-S\^D\0\0\^R\0\b\0\M-@\M^C\0\0\0\0\0\0\\\
\0\0\0\0\0\0\0+\^C\0\0\^R\0\b\0000S\0\0\0\0\0\0#\0\0\0\0\0\0\0%\^F\0\0\^R\0\b\0@Z\0\0\0\0\0\0\
\^Q\0\0\0\0\0\0\0006\^F\0\0\^R\0\b\0\M-`k\0\0\0\0\0\0e\^A\0\0\0\0\0\0\M-)\^B\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\09\^C\0\0\^R\0\b\0`B\0\0\0\0\0\0N\0\0\0\0\0\0\0\M^J\^A\0\0\^R\0\b\0\
\M-p=\0\0\0\0\0\0G\0\0\0\0\0\0\0\M-6\a\0\0\^P\0\M-q\M^?\240\M-+0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^D\
\a\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0/\a\0\0\^R\0\b\0`\M^B\0\0\0\0\0\0u\0\0\0\0\0\0\0\
x\0\0\0\^R\0\b\00003\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M^_\^A\0\0\^R\0\b\0\M-P6\0\0\0\0\0\0
\0\0\0\0\0\0\0F\^F\0\0\^Q\0\^V\0 \M-/@\0\0\0\0\0\b\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x40b000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
28868 lua51 RET mmap 13079022116864/0xbe53277a000
28868 lua51 CALL mmap(0xbe53277a000,0x9000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
28868 lua51 RET mmap 13079022116864/0xbe53277a000
28868 lua51 CALL mmap(0xbe532882000,0x3000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x8000)
28868 lua51 RET mmap 13079023198208/0xbe532882000
28868 lua51 CALL mmap(0xbe532984000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xa000)
28868 lua51 RET mmap 13079024254976/0xbe532984000
28868 lua51 CALL mmap(0xbe532a84000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xa000)
28868 lua51 RET mmap 13079025303552/0xbe532a84000
28868 lua51 CALL mmap(0xbe532b84000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xa000)
28868 lua51 RET mmap 13079026352128/0xbe532b84000
28868 lua51 CALL getentropy(0xbe532984958,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(3)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe532a84000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe56881d000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe57074e000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbcab0)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.513653268 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbca80)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.513670868 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL kqueue()
28868 lua51 RET kqueue 3
28868 lua51 CALL getpid()
28868 lua51 RET getpid 28868/0x70c4
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077264642048/0xbe4c9b6b000
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbcba0)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.513787084 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbcb70)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.513804125 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL kqueue()
28868 lua51 RET kqueue 4
28868 lua51 CALL getpid()
28868 lua51 RET getpid 28868/0x70c4
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080736124928/0xbe598a15000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080781803520/0xbe59b5a5000
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080555212800/0xbe58dd8d000
28868 lua51 CALL open(0xbe52d871358,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/lfs.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5642cb418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/lfs.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5642cb358,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/lfs/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d8713d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lfs.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d8716d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lfs/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d871258,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/lfs.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe584f39698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lfs.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5255d9ec0,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbca40)
28868 lua51 STRU struct stat { dev=7, ino=155964, mode=drwxr-xr-x , nlink=5, uid=0<"root">, gid=0<"wheel">, rdev=660105, atime=1443380783<"Sep 27 19:06:23 2015">.496875161, mtime=1443360533<"Sep 27 13:28:53 2015">.654927416, ctime=1443360533<"Sep 27 13:28:53 2015">.654927416, size=512, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 336/0x150
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/lfs.so"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbbaa0)
28868 lua51 STRU struct stat { dev=7, ino=155979, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632560, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255806<"Sep 26 08:23:26 2015">, ctime=1443360533<"Sep 27 13:28:53 2015">.654927416, size=22391, blocks=44, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbb20,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0`\^^\0\0\0\0\0\0@\0\0\0\0\0\0\0h?\0\0\0\0\0\0\
\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M->/\0\0\0\0\0\0\M->/\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-@/\0\0\0\0\0\0\M-@/\
\^P\0\0\0\0\0\M-@/\^P\0\0\0\0\0000 \0\0\0\0\0\0000 \0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\
\^F\0\0\0\M-p8\0\0\0\0\0\0\M-p8 \0\0\0\0\0\M-p8 \0\0\0\0\0H\^B\0\0\0\0\0\0H\^B\0\0\0\0\0\0\0\0\
\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\08;\0\0\0\0\0\08;0\0\0\0\0\08;0\0\0\0\0\0000\^B\0\0\0\0\0\0000\^B\
\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^@=\0\0\0\0\0\0\M^@=@\0\0\0\0\0\M^@=@\0\0\0\0\
\0\^P\^A\0\0\0\0\0\0\^P\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M-x9\0\0\0\0\0\0\M-x9\
\0\0\0\0\0\M-x9 \0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\
\M-X8\0\0\0\0\0\0\M-X8\^P\0\0\0\0\0\M-X8\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\
\0\0\0\0\0P\M-etd\^D\0\0\0\M-`2\0\0\0\0\0\0\M-`2\^P\0\0\0\0\0\M-`2\^P\0\0\0\0\0L\^A\0\0\0\0\0\0\
L\^A\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\M-p8\0\0\0\0\0\0\M-p8 \0\0\0\0\0\M-p8 \
\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0C\
\0\0\0Q\0\0\0F\0\0\0K\0\0\0\0\0\0\0006\0\0\0\^]\0\0\0B\0\0\0\^Y\0\0\0004\0\0\0\0\0\0\0L\0\0\0>\
\0\0\0\0\0\0\0003\0\0\0\^Z\0\0\0$\0\0\08\0\0\0\0\0\0\0\0\0\0\0;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0!\0\0\0\0\0\0\0@\0\0\0G\0\0\0"\0\0\0O\0\0\0?\0\0\0\0\0\0\0C\0\0\0(\0\0\0\^\\0\0\0M\0\0\0\
\^[\0\0\0'\0\0\0\0\0\0\0A\0\0\0#\0\0\0D\0\0\0,\0\0\0\0\0\0\0007\0\0\0 \0\0\0E\0\0\0.\0\0\0\0\0\
\0\0J\0\0\0005\0\0\0\0\0\0\0\^S\0\0\0\^O\0\0\0\0\0\0\0:\0\0\0\^_\0\0\0-\0\0\0\0\0\0\0H\0\0\0\0\
\0\0\0\0\0\0\0P\0\0\0\^X\0\0\0&\0\0\0I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^V\0\
\0\0\0\0\0\0\^^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0/\0\0\0%\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0001\0\0\0\0\0\0\0002\0\0\0)\0\0\0+\0\0\0\^W\0\0\0\
\^P\0\0\0\0\0\0\0=\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\09\0\0\0\^Q\0\0\0000\0\0\0\^T\0\
\0\0\0\0\0\0\0\0\0\0\^N\0\0\0<\0\0\0*\0\0\0N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\^F\0\M-`\^Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0`\^^\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^C\0 \0\M-0/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\M-@/\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-`2\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\00004\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\M-p8 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^O\0\M-x8 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\09 \0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^S\0H=0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0X=0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^U\0\M^@=@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-1\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0I\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^?\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-(\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-b\0\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\240\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-O\^B\0\0\^P\0\M-q\
\M^?h=0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-L\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\^A\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0k\0\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^M\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0}\
\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-&\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-j\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^V\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^]\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^X\^B\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\M^T\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\^A\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\^B\0\0\^R\0\b\0\240-\0\0\0\0\0\0\^D\^B\0\0\0\0\0\0\^D\^B\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0E\^A\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0\M-`\^Z\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-#\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-@\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0U\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-C\^B\0\0\^P\0\M-q\M^?8;0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-8\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-6\^B\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0C\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-o\0\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-d\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0k\^B\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0}\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0X\^B\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-?\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^[\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-m\^B\0\0\^P\0\M-q\M^?\M^P>@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-1\^A\0\0\^Q\0\^U\0\240=@\0\0\0\0\0\
\M-p\0\0\0\0\0\0\0\^U\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-9\^A\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\\\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\^B\0\0\^P\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\^R\0\
\0\M-0/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-e\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-f\
\^B\0\0\^P\0\M-q\M^?\M^P>@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-T\^B\0\0\^P\0\M-q\M^?\M^P>@\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-B\0\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0p\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0005\^A\0\0\^P\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0.\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Y\^A\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^E\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Y\^B\0\0\
\^P\0\^U\0\M^@=@\0\0\0\0\0\0\0\0\0\0\0\0\0003\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M^J\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-v\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0(\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-p\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-G\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\M-I\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0L\0\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\0_init\0__cxa_atexit\0_fini\0_Jv_Regis\
terClasses\0lua_pushinteger\0lua_pushstring\0luaL_checklstring\0lua_newuserdata\0malloc\0lua_pu\
shnil\0__errno\0strerror\0strcpy\0strcat\0symlink\0free\0__stack_smash_handler\0lua_getfield\0l\
ua_setmetatable\0luaL_checkudata\0luaL_error\0__isthreaded\0fcntl\0fileno\0luaL_optinteger\0lua\
_pushfstring\0lua_pushboolean\0lua_gettop\0luaL_optnumber\0utime\0luaL_checkoption\0lua_isstrin\
g\0lua_tolstring\0members\0strcmp\0lua_type\0lua_createtable\0lua_rawset\0lstat\0rmdir\0mkdir\0\
lua_toboolean\0lua_pushcclosure\0opendir\0readdir\0luaL_argerror\0closedir\0getcwd\0chdir\0lua_\
touserdata\0unlink\0luaopen_lfs\0luaL_newmetatable\0lua_setfield\0luaL_register\0lua_pushvalue\
\0lua_pushlstring\0lua_settable\0__got_start\0__got_end\0__data_start\0_edata\0__bss_start\0\0\
\0\0\0\0\0\0\09 \0\0\0\0\0\b\0\0\0\0\0\0\0n1\^P\0\0\0\0\0\b9 \0\0\0\0\0\b\0\0\0\0\0\0\0@)\0\0\0\
\0\0\0\^P9 \0\0\0\0\0\b\0\0\0\0\0\0\0J1\^P\0\0\0\0\0\^X9 \0\0\0\0\0\b\0\0\0\0\0\0\0\M-0,\0\0\0\
\0\0\0 9 \0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x404000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13078201397248/0xbe5018c7000
28868 lua51 CALL mmap(0xbe5018c7000,0x3000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13078201397248/0xbe5018c7000
28868 lua51 CALL mmap(0xbe5019c9000,0x2000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x2000)
28868 lua51 RET mmap 13078202454016/0xbe5019c9000
28868 lua51 CALL mmap(0xbe501aca000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x3000)
28868 lua51 RET mmap 13078203506688/0xbe501aca000
28868 lua51 CALL mmap(0xbe501bca000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x3000)
28868 lua51 RET mmap 13078204555264/0xbe501bca000
28868 lua51 CALL mmap(0xbe501cca000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x3000)
28868 lua51 RET mmap 13078205603840/0xbe501cca000
28868 lua51 CALL getentropy(0xbe501aca8f0,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe501bca000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe584f39658,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5642cb618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5642cb618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc740)
28868 lua51 STRU struct stat { dev=7, ino=236135, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=956169, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255891<"Sep 26 08:24:51 2015">, ctime=1443360532<"Sep 27 13:28:52 2015">.864913322, size=4299, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078637105152/0xbe51b84d000
28868 lua51 CALL read(5,0xbe51b84d000,0x4000)
28868 lua51 GIO fd 5 read 4096 bytes
"------------------------------------------------------------------------------
-- LuaSec 0.5
-- Copyright (C) 2006-2014 Bruno Silvestre
--
------------------------------------------------------------------------------
local core = require("ssl.core")
local context = require("ssl.context")
local x509 = require("ssl.x509")
module("ssl", package.seeall)
_VERSION = "0.5.PR"
_COPYRIGHT = core.copyright()
-- Export
loadcertificate = x509.load
-- We must prevent the contexts to be collected before the connections,
-- otherwise the C registry will be cleared.
local registry = setmetatable({}, {__mode="k"})
--
--
--
local function optexec(func, param, ctx)
if param then
if type(param) == "table" then
return func(ctx, unpack(param))
else
return func(ctx, param)
end
end
return true
end
--
--
--
function newcontext(cfg)
local succ, msg, ctx
-- Create the context
ctx, msg = context.create(cfg.protocol)
if not ctx then return nil, msg end
-- Mode
succ, msg = context.setmode(ctx, cfg.mode)
if not succ then return nil, msg end
-- Load the key
if cfg.key then
if cfg.password and
type(cfg.password) ~= "function" and
type(cfg.password) ~= "string"
then
return nil, "invalid password type"
end
succ, msg = context.loadkey(ctx, cfg.key, cfg.password)
if not succ then return nil, msg end
end
-- Load the certificate
if cfg.certificate then
succ, msg = context.loadcert(ctx, cfg.certificate)
if not succ then return nil, msg end
end
-- Load the CA certificates
if cfg.cafile or cfg.capath then
succ, msg = context.locations(ctx, cfg.cafile, cfg.capath)
if not succ then return nil, msg end
end
-- Set SSL ciphers
if cfg.ciphers then
succ, msg = context.setcipher(ctx, cfg.ciphers)
if not succ then return nil, msg end
end
-- Set the verification options
succ, msg = optexec(context.setverify, cfg.verify, ctx)
if not succ then return nil, msg end
-- Set SSL options
succ, msg = optexec(context.setoptions, cfg.options, ctx)
if not succ then return nil, msg end
-- Set the depth for certificate verification
if cfg.depth then
succ, msg = context.setdepth(ctx, cfg.depth)
if not succ then return nil, msg end
end
-- NOTE: Setting DH parameters and elliptic curves needs to come after
-- setoptions(), in case the user has specified the single_{dh,ecdh}_use
-- options.
-- Set DH parameters
if cfg.dhparam then
if type(cfg.dhparam) ~= "function" then
return nil, "invalid DH parameter type"
end
context.setdhparam(ctx, cfg.dhparam)
end
-- Set elliptic curve
if cfg.curve then
succ, msg = context.setcurve(ctx, cfg.curve)
if not succ then return nil, msg end
end
-- Set extra verification options
if cfg.verifyext and ctx.setverifyext then
succ, msg = optexec(ctx.setverifyext, cfg.verifyext, ctx)
if not succ then return nil, msg end
end
return ctx
end
--
--
--
function wrap(sock, cfg)
local ctx, msg
if type(cfg) == "table" then
ctx, msg = newcontext(cfg)
if not ctx then return nil, msg end
else
ctx = cfg
end
local s, msg = core.create(ctx)
if s then
core.setfd(s, sock:getfd())
sock:setfd(core.invalidfd)
registry[s] = ctx
return s
end
return nil, msg
end
--
-- Extract connection information.
--
local function info(ssl, field)
local str, comp, err, protocol
comp, err = core.compression(ssl)
if err then
return comp, err
end
-- Avoid parser
if field == "compression" then
return comp
end
local info = {compression = comp}
str, info.bits, info.algbits, protocol = core.info(ssl)
if str then
info.cipher, info.protocol, info.key,
info.authentication, info.encryption, info.mac =
string.match(str,
"^(%S+)%s+(%S+)%s+Kx=(%S+)%s+Au=(%S+)%s+Enc=(%S+)%s+Mac=(%S+)")
info.export = (string.match(str, "%sexport%s*$") ~= nil)
end
if protocol then
"
28868 lua51 GIO fd 5 read 203 bytes
" info.protocol = protocol
end
if field then
return info[field]
end
-- Empty?
return ( (next(info)) and info )
end
--
-- Set method for SSL connections.
--
core.setmethod("info", info)
"
28868 lua51 RET read 4299/0x10cb
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078868000768/0xbe529480000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077489442816/0xbe4d71ce000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079281184768/0xbe541e8b000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079505985536/0xbe54f4ee000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080633856000/0xbe59288d000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077403271168/0xbe4d1fa0000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079969009664/0xbe56ae81000
28868 lua51 CALL read(5,0xbe51b84d000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c9b6b218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe584f39e58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d71cef18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4c9b6bd98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/core.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ae81118,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/core/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b158,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/core.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe584f39398,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/core.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b198,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d8717d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d871598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe511bfc500,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc870)
28868 lua51 STRU struct stat { dev=7, ino=155964, mode=drwxr-xr-x , nlink=5, uid=0<"root">, gid=0<"wheel">, rdev=660105, atime=1443380783<"Sep 27 19:06:23 2015">.506873917, mtime=1443360533<"Sep 27 13:28:53 2015">.654927416, ctime=1443360533<"Sep 27 13:28:53 2015">.654927416, size=512, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 336/0x150
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl.so"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbb8d0)
28868 lua51 STRU struct stat { dev=7, ino=155975, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=632504, atime=1443380744<"Sep 27 19:05:44 2015">.797556672, mtime=1443255891<"Sep 26 08:24:51 2015">, ctime=1443360532<"Sep 27 13:28:52 2015">.834909229, size=74190, blocks=148, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbb950,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\0b\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-H\M-f\0\0\0\
\0\0\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^N\M-1\0\0\0\0\0\0\M^N\M-1\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M^P\M-1\0\
\0\0\0\0\0\M^P\M-1\^P\0\0\0\0\0\M^P\M-1\^P\0\0\0\0\0\M-p"\0\0\0\0\0\0\M-p"\0\0\0\0\0\0\0\0\^P\0\
\0\0\0\0\^A\0\0\0\^F\0\0\0\M^@\M-T\0\0\0\0\0\0\M^@\M-T \0\0\0\0\0\M^@\M-T \0\0\0\0\0x\^A\0\0\0\
\0\0\0x\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-x\M-U\0\0\0\0\0\0\M-x\M-U0\0\0\0\0\
\0\M-x\M-U0\0\0\0\0\0\M-`\^F\0\0\0\0\0\0\M-`\^F\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\
\M-`\M-\\0\0\0\0\0\0\M-`\M-\@\0\0\0\0\0\M-`\M-\@\0\0\0\0\0\^P \0\0\0\0\0\0\^P \0\0\0\0\0\0\0\
\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M^X\M-T\0\0\0\0\0\0\M^X\M-T \0\0\0\0\0\M^X\M-T \0\0\0\0\0`\^A\
\0\0\0\0\0\0`\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0h\M-T\0\0\0\0\0\0h\M-T\^P\0\0\0\0\
\0h\M-T\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-`\M-?\
\0\0\0\0\0\0\M-`\M-?\^P\0\0\0\0\0\M-`\M-?\^P\0\0\0\0\0\M-t\^C\0\0\0\0\0\0\M-t\^C\0\0\0\0\0\0\^D\
\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\M^@\M-T\0\0\0\0\0\0\M^@\M-T \0\0\0\0\0\M^@\M-T \0\0\0\0\0\
\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\
\^A\^A\0\0\M-p\0\0\0\M-{\0\0\0\M-t\0\0\0\0\0\0\0\0\0\0\0t\0\0\0\M^X\0\0\0\M-"\0\0\0\0\0\0\0\0\0\
\0\0\M-j\0\0\0\M^T\0\0\0\M^M\0\0\0005\0\0\0Y\0\0\0#\0\0\0\M^[\0\0\0=\0\0\0\0\0\0\0\M-i\0\0\0\
\M-;\0\0\0z\0\0\0\M-\\0\0\0\0\0\0\0\M-#\0\0\0\M-A\0\0\0\M-~\0\0\0\^?\0\0\0\M-o\0\0\0\0\0\0\0\0\
\0\0\0\0\^A\0\0\^U\0\0\0i\0\0\0\M-&\0\0\0\0\0\0\0\M^H\0\0\0\0\0\0\0\M-Q\0\0\0\M-n\0\0\0\M^D\0\0\
\0\0\0\0\0\0\0\0\0\M-$\0\0\0\M-%\0\0\0\M->\0\0\0\M-I\0\0\0\M-!\0\0\0\M-d\0\0\0\M-e\0\0\0\M-'\0\
\0\0\M-q\0\0\0P\0\0\0\M^Y\0\0\0\M^E\0\0\0\M^]\0\0\0\M-F\0\0\0\M^_\0\0\0s\0\0\0\0\0\0\0\M-g\0\0\
\0\M-<\0\0\0\0\0\0\0\M-v\0\0\0\M-N\0\0\0\0\0\0\0\^S\0\0\0\M-5\0\0\0\M-^\0\0\0{\0\0\0006\0\0\0;\
\0\0\0\0\0\0\0\M-w\0\0\0\0\0\0\0}\0\0\0\M^F\0\0\0\M-9\0\0\0007\0\0\0\0\0\0\0\M-@\0\0\0\0\0\0\0\
\0\0\0\0003\0\0\0\M-?\0\0\0\^_\0\0\0\0\0\0\0\M-}\0\0\0\M^U\0\0\0\M-U\0\0\0'\0\0\0\^W\0\0\0\M-_\
\0\0\0\M-8\0\0\0\^R\0\0\0\M-X\0\0\0\M-k\0\0\0w\0\0\0\M^N\0\0\0\M^Q\0\0\0\0\0\0\0\M-u\0\0\0Z\0\0\
\0\M-f\0\0\0\^Z\0\0\0\M-2\0\0\0\M^K\0\0\0T\0\0\0V\0\0\0\0\0\0\0\M-L\0\0\0\M^L\0\0\0\M-B\0\0\0\
\M-b\0\0\0\0\0\0\0\M-V\0\0\0\0\0\0\0\0\0\0\0\M-/\0\0\0\M-M\0\0\0\M^O\0\0\0\0\0\0\0\M-[\0\0\0\
\M-O\0\0\0\M^?\0\0\0\M-6\0\0\0\M-)\0\0\0v\0\0\0\M-7\0\0\0\M-x\0\0\0\M^R\0\0\0\M-G\0\0\0\r\0\0\0\
\M^A\0\0\0\M-m\0\0\0\M^C\0\0\0\M^Z\0\0\0\M-J\0\0\0\M-C\0\0\0\0\0\0\0\M-`\0\0\0\0\0\0\0\0\0\0\0\
\M-z\0\0\0\0\0\0\0\M-,\0\0\0\M-P\0\0\0\0\0\0\0\M--\0\0\0[\0\0\0\M-1\0\0\0|\0\0\0\M-D\0\0\0\M-s\
\0\0\0\M-(\0\0\0\M^^\0\0\0\240\0\0\0G\0\0\0S\0\0\0\0\0\0\0y\0\0\0000\0\0\0\M-l\0\0\0\M^\\0\0\0\
\M-S\0\0\0\^\\0\0\0\M-4\0\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0b\0\0\0\M^J\0\0\0\M-r\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M^V\0\0\0\0\0\0\0\M-3\0\0\0\0\0\0\0\M-Z\0\0\0\M-*\0\0\0\M-K\0\0\0\0\0\0\0\
\0\0\0\0\M-]\0\0\0d\0\0\0\M-|\0\0\0f\0\0\0\M-+\0\0\0\M-c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-T\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0004\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^V\0\0\0!\0\0\0I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \0\0\0H\0\0\
\0\0\0\0\0R\0\0\0*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0>\0\0\0\0\0\0\0-\0\0\0:\0\0\0\0\0\0\0X\
\0\0\0\^N\0\0\0\0\0\0\0)\0\0\0\0\0\0\0O\0\0\0\0\0\0\0\0\0\0\0k\0\0\0\0\0\0\0W\0\0\0K\0\0\0\0\0\
\0\09\0\0\0001\0\0\0\0\0\0\0%\0\0\0\^X\0\0\08\0\0\0(\0\0\0\0\0\0\0C\0\0\0\^O\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0\0\0p\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0n\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^@\0\0\0L\0\0\0\0\0\0\0\0\0\0\0<\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^S\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0A\0\0\0q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0~\0\0\0\0\0\
\0\0002\0\0\0\0\0\0\0\0\0\0\0,\0\0\0l\0\0\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0N\0\0\0\M-.\0\0\0U\0\
\0\0\M^I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\0\0\0o\0\0\0\0\0\0\0\0\0\0\0_\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0j\0\0\0\M^P\0\0\0\0\0\0\0\M^B\0\0\0\M^W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^]\0\0\0\0\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0D\0\0\0\0\0\0\0J\0\0\0\0\0\0\0\0\0\0\0\M-R\0\0\0\\\
\0\0\0e\0\0\0\0\0\0\0B\0\0\0h\0\0\0a\0\0\0]\0\0\0\0\0\0\0\M-0\0\0\0+\0\0\0\M-Y\0\0\0x\0\0\0F\0\
\0\0\^[\0\0\0M\0\0\0\M-H\0\0\0\M-a\0\0\0\M-E\0\0\0\M-W\0\0\0\M-:\0\0\0\0\0\0\0\0\0\0\0.\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\0\0\0^\0\0\0\^^\0\0\0Q\0\0\0u\0\0\0\M-h\0\0\0`\0\0\0&\0\0\0/\0\
\0\0\^T\0\0\0\0\0\0\0\0\0\0\0\M-y\0\0\0\M-=\0\0\0m\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M-PT\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0\
\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\M^@\M-1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0
\0\M^P\M-1\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-`\M-?\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\f\0\M-X\M-C\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\M^@\M-T \0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^C\0\^O\0\M^H\M-T \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\M^P\M-T \0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^S\0\M-8\M-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\
\M-H\M-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0\M-`\M-\@\0\0\0\0\0\0\0\0\0\0\0\0\0\M^I\^D\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0K\0\0\0\0\0\0\0*\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^@\0\0\0\0\0\0\0\
\M-J\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-<\v\0\0\^R\0\b\0\M-0\M^W\0\0\0\0\0\0(\0\
\0\0\0\0\0\0\M-h\r\0\0\^R\0\b\0 \M-0\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0\M-H\v\0\0\^R\0\b\0\M-`\M^W\0\
\0\0\0\0\0\^C\0\0\0\0\0\0\0\^B\f\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\r\0\0\^R\0\b\0\0\
\M-)\0\0\0\0\0\09\0\0\0\0\0\0\0\M-I\r\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0^\r\0\0\^R\0\
\b\0\M^P\M-)\0\0\0\0\0\0Z\0\0\0\0\0\0\0\M-}\r\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-,\
\b\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^J\0\0\0\0\0\0\0\\\f\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0L \0\0\^R\0\b\0\0\M^Y\0\0\0\0\0\0?\0\0\0\0\0\0\0\M-R\f\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^Z
\0\0\^R\0\b\0@\M^Y\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0! \0\0\^R\0\0\0\0\0\0\0\0\0\0\0N\0\0\0\0\
\0\0\0\^T\b\0\0\^R\0\0\0\0\0\0\0\0\0\0\0*\^A\0\0\0\0\0\0\M^^\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-s\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0\M-/
\0\0\^R\0\0\0\0\0\0\0\0\0\0\09\0\0\0\0\0\0\0\M-r\v\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M^N\v\0\0\^R\0\0\0\0\0\0\0\0\0\0\0k\0\0\0\0\0\0\0:\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0"\0\0\0\0\0\
\0\0\M-j\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0} \0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^Q\^N\0\0\^P\0\M-q\M^?\M-X\M-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-K\a\0\0\^R\0\0\0\0\0\
\0\0\0\0\0\0\a\0\0\0\0\0\0\0c\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0@\^A\0\0\^R\0\0\0\
\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0\M^^ \0\0\^R\0\0\0\0\0\0\0\0\0\0\0o\^A\0\0\0\0\0\0\M-0\0\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-W
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^R\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0I\0\0\0\0\0\0\
\0:\a\0\0\^R\0\0\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\^?\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^N\0\
\0\0\0\0\0\0007 \0\0\^R\0\b\0\240\M^W\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\M^V\b\0\0\^R\0\b\0\240\M-(\0\
\0\0\0\0\0000\0\0\0\0\0\0\0W\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\^C\0\0\^R\0\0\0\
\0\0\0\0\0\0\0\0t\0\0\0\0\0\0\0\M^Q\f\0\0\^R\0\b\0000\M-$\0\0\0\0\0\0\M-N\0\0\0\0\0\0\0E\^D\0\0\
\^R\0\b\0\M^Pq\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\M-; \0\0\^R\0\b\0P\M-+\0\0\0\0\0\0\M-j\0\0\0\0\0\0\
\0\M-B\r\0\0\^R\0\b\0000\M-.\0\0\0\0\0\0\M^\\0\0\0\0\0\0\0\M^U \0\0\^R\0\0\0\0\0\0\0\0\0\0\0W\
\0\0\0\0\0\0\0!\b\0\0\^R\0\b\0\M^@\M^C\0\0\0\0\0\0\M-M\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^]\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P \0\0\^R\0\0\0\0\
\0\0\0\0\0\0\0\M-C\^C\0\0\0\0\0\0\^D\^E\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0}\^F\0\0\^R\
\0\0\0\0\0\0\0\0\0\0\0\M-W\^C\0\0\0\0\0\0\M-E
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-`
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^G\0\0\0\^P\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x40f000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13079689641984/0xbe55a414000
28868 lua51 CALL mmap(0xbe55a414000,0xc000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13079689641984/0xbe55a414000
28868 lua51 CALL mmap(0xbe55a51f000,0x3000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xb000)
28868 lua51 RET mmap 13079690735616/0xbe55a51f000
28868 lua51 CALL mmap(0xbe55a621000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xd000)
28868 lua51 RET mmap 13079691792384/0xbe55a621000
28868 lua51 CALL mmap(0xbe55a721000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xd000)
28868 lua51 RET mmap 13079692840960/0xbe55a721000
28868 lua51 CALL mmap(0xbe55a821000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xd000)
28868 lua51 RET mmap 13079693889536/0xbe55a821000
28868 lua51 CALL getentropy(0xbe55a621480,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL getentropy(0x7f7ffffbc9ec,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL open(0xbe56423c010,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libssl.so.37.0"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbb860)
28868 lua51 STRU struct stat { dev=5, ino=77979, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=325344, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1442715560<"Sep 20 02:19:20 2015">, ctime=1442782576<"Sep 20 20:56:16 2015">.934776924, size=1468394, blocks=2912, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbb8e0,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-p\M^H\^A\0\0\0\0\0@\0\0\0\0\0\0\0\M-`\M-+\
\^U\0\0\0\0\0\0\0\0\0@\08\0 \0@\0"\0\^_\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0^R\^D\0\0\0\0\0^R\^D\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0`R\^D\0\0\0\0\
\0`R\^T\0\0\0\0\0`R\^T\0\0\0\0\0\M-h\M-=\0\0\0\0\0\0\M-h\M-=\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\
\0\0\^F\0\0\0H\^P\^E\0\0\0\0\0H\^P%\0\0\0\0\0H\^P%\0\0\0\0\0P$\0\0\0\0\0\0P$\0\0\0\0\0\0\0\0\^P\
\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^X4\^E\0\0\0\0\0\M^X45\0\0\0\0\0\M^X45\0\0\0\0\0h\^U\0\0\0\0\0\0h\
\^U\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0J\^E\0\0\0\0\0\0JE\0\0\0\0\0\0JE\0\0\0\0\0\
\^XI\0\0\0\0\0\0\^XI\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0H3\^E\0\0\0\0\0H3%\0\0\0\0\0\
H3%\0\0\0\0\0P\^A\0\0\0\0\0\0P\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0000\^P\^E\0\0\0\
\0\0000\^P\^U\0\0\0\0\0000\^P\^U\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\
\M-etd\^D\0\0\0\M-x\M-4\^D\0\0\0\0\0\M-x\M-4\^T\0\0\0\0\0\M-x\M-4\^T\0\0\0\0\0,\^S\0\0\0\0\0\0,\
\^S\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0H\^P\^E\0\0\0\0\0H\^P%\0\0\0\0\0H\^P%\0\0\
\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^B\0\0\M-$\^C\0\0}\^C\0\0p\^B\0\0~\^B\0\0D\0\0\0w\^B\0\0/\^C\0\0l\0\0\0\M-M\^A\0\0001\^C\
\0\0;\^C\0\0\M-#\^B\0\0\^R\^C\0\0\b\^B\0\0e\^C\0\0\f\^C\0\0\M-d\^B\0\0\M-.\^B\0\0H\0\0\0\0\0\0\
\0\M-V\^B\0\0\0\0\0\0\0\0\0\0[\^A\0\0\^E\^A\0\0\M-|\^A\0\0\M-9\^B\0\0"\0\0\0\0\0\0\0D\^C\0\0v\
\^B\0\0\M^D\^B\0\0\0\0\0\0a\^C\0\0\M-#\^C\0\0'\^B\0\0\M-Y\^B\0\0\v\^C\0\0\0\0\0\0\^D\^B\0\0G\^B\
\0\0/\^B\0\0\0\0\0\0,\^A\0\0=\^C\0\0\0\0\0\0\M-`\^B\0\0\0\0\0\0\M^@\^C\0\0S\^B\0\0\0\0\0\0)\^C\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^?\^B\0\0<\0\0\0\^O\^A\0\0001\^B\0\0\M^W\0\0\0\0\0\0\0\M^R\0\0\0\
\M-A\^A\0\0\M-f\0\0\0\^N\^B\0\0[\^B\0\0F\^A\0\0\M-y\^B\0\0$\^B\0\0\0\0\0\0\0\0\0\0>\0\0\0\0\0\0\
\0\M^C\^B\0\0\M^Z\^A\0\0\^[\^B\0\0\M^Z\^C\0\0\M-%\^B\0\0H\^C\0\0\M^D\^C\0\0\M-!\^C\0\0.\^C\0\0\
\^]\0\0\0+\^C\0\0\M^Y\^C\0\0\M-@\^B\0\0\M^I\0\0\0>\^C\0\0p\^C\0\0\M-v\^B\0\0\0\0\0\09\^A\0\0\0\
\0\0\0\M-:\^A\0\0\a\^C\0\0\M-c\^B\0\0:\^A\0\0\M-g\^B\0\0%\^C\0\0?\^C\0\0\M^U\^C\0\0\0\0\0\0j\^B\
\0\0\b\^A\0\0#\^C\0\0\M-1\^B\0\0\M^^\^A\0\0\0\0\0\0\r\^A\0\0\M^]\^B\0\0\^B\^C\0\0S\0\0\0\M^E\^C\
\0\0\M^[\^C\0\0\M-"\^B\0\0\M^]\^A\0\0\0\0\0\0\0\0\0\0\M^^\^C\0\0\M-C\^A\0\0\^Z\^C\0\0\M-W\^B\0\
\0\240\^C\0\0\0\0\0\0z\^B\0\0I\0\0\0r\^A\0\0P\^C\0\0000\^C\0\0x\^C\0\0/\^A\0\0\0\0\0\0\M^S\^C\0\
\0:\^B\0\0\^^\^C\0\0\^X\^A\0\0\0\0\0\0\M^G\^C\0\0\0\0\0\0U\^B\0\0U\^C\0\0 \^B\0\0\^?\0\0\
\0L\^B\0\0\M-T\^A\0\0\M-[\^B\0\0\0\0\0\0\M-o\^B\0\0\M-0\^A\0\0\M-N\0\0\0N\^C\0\0\^P\^A\0\0\0\0\
\0\0\M-l\^B\0\0k\^C\0\0\0\^A\0\0&\^C\0\0\M-0\^B\0\0\M-0\0\0\0\M-/\^A\0\0R\^C\0\0}\^A\0\0\M-:\^B\
\0\0\M^B\^B\0\0\M^N\^B\0\0\M-z\^B\0\0\0\0\0\0E\^B\0\0\^E\^B\0\0\M-2\^B\0\0\a\^A\0\0\^C\^C\0\0\
\M^B\^C\0\0h\^C\0\0\^F\^B\0\0H\^B\0\0\0\0\0\0\M-+\^B\0\0\M^U\^A\0\0\M-E\0\0\0K\^A\0\0\^F\^C\0\0\
v\^A\0\0\M-{\^A\0\0A\^B\0\0D\^A\0\0*\0\0\0\M-&\^A\0\0{\^A\0\0{\^B\0\0\M^_\^B\0\0\0\0\0\0\0\0\0\
\0\240\^B\0\0\M-$\^B\0\0M\^C\0\0\M-+\^A\0\0d\0\0\0(\^A\0\0\0\0\0\0\^V\0\0\0 \^A\0\0\0\0\0\0L\^C\
\0\0\M-_\^B\0\0F\^C\0\0\M-*\^A\0\0N\^A\0\0\0\0\0\0002\^C\0\0 \^C\0\0\0\0\0\0\M-B\^B\0\0t\0\0\0\
\M-L\0\0\0\0\0\0\0\b\^C\0\0\M-h\^B\0\0\M^L\^C\0\0s\^C\0\0\M^O\^C\0\0\M^M\^C\0\0B\^C\0\0\M-'\^A\
\0\0\0\0\0\0\\\^B\0\0\0\0\0\0\M-E\^A\0\0\M-{\^B\0\0\M^J\^C\0\0\M-'\^B\0\0\0\0\0\0003\^C\0\0\M-u\
\^B\0\0\M-*\^B\0\08\^C\0\0\M-B\^A\0\0006\0\0\0\M^\\^C\0\0\^V\^C\0\0\M-x\0\0\0K\^C\0\0005\^B\0\0\
\M^_\^C\0\0B\^B\0\0\M-C\^B\0\0\M-m\^A\0\0\M^X\^C\0\0w\^C\0\0\M-Y\0\0\0\^]\^A\0\0\0\0\0\0'\^C\0\
\0\M^[\0\0\0\M-h\^A\0\0\0\0\0\0O\^A\0\0\0\0\0\0\M-7\^B\0\0\M-!\^A\0\0f\^A\0\0\v\^B\0\0\M-3\^B\0\
\0Y\^C\0\0\^V\^B\0\0*\^B\0\0\M^I\^B\0\0u\^C\0\0Q\^A\0\0\0\0\0\0\^B\^A\0\0]\0\0\0_\^C\0\0x\^A\0\
\0C\^B\0\0\M^F\^C\0\0005\^C\0\0\M^X\^B\0\0<\^A\0\0\0\0\0\0002\^A\0\0@\0\0\0f\^C\0\0j\^C\0\0\M-)\
\^B\0\0\^C\^A\0\0T\^B\0\0\M^M\^B\0\0\M^]\^C\0\0C\^C\0\0\M-&\^B\0\0\0\0\0\0h\^B\0\0n\^C\0\0\M-Z\
\^A\0\0\^X\^C\0\0\0\0\0\0\0\0\0\0#\0\0\0\M-}\^B\0\0\M^Q\^B\0\0z\^C\0\0\M-A\^B\0\0 \^B\0\0\^T\0\
\0\0\M^C\^C\0\0A\^C\0\0,\^B\0\0\M-n\^B\0\0>\^A\0\0\M^U\^B\0\0\M^E\^A\0\0\f\^B\0\0\0\0\0\0\^N\^C\
\0\0\0\0\0\0@\^C\0\0\0\0\0\0\M-D\^B\0\0Z\^C\0\0\M--\^A\0\0{\^C\0\0\M-!\0\0\0\^U\^A\0\0\M-i\^B\0\
\0\0\0\0\0\^?\^C\0\0k\0\0\0o\^B\0\0\M-E\^B\0\0F\0\0\0m\^B\0\0\^B\^B\0\0\0\0\0\0\M-<\^A\0\0\M^V\
\^A\0\0G\^C\0\0\M^P\^C\0\0|\^B\0\0\M-8\0\0\0J\^C\0\0\^W\^B\0\0\^E\^C\0\0W\0\0\0\0\0\0\0\^V\^A\0\
\0\M-~\^B\0\0\0\0\0\0\0\0\0\0v\^C\0\0y\^C\0\0\f\^A\0\0\M-/\0\0\0\^O\^C\0\0\M-H\^A\0\0q\^A\0\0\
\M-f\^B\0\0y\^B\0\0\M^?\^B\0\0\0\0\0\0\M^L\^A\0\0\^P\^C\0\0\M-"\^C\0\0\M^Q\^C\0\0T\^C\0\0\0\0\0\
\0,\^C\0\0\M-y\0\0\0\0\0\0\0\M-2\^A\0\0\0\0\0\0\M^K\^C\0\0q\^C\0\0\M^W\^B\0\0\M-3\0\0\0\M^T\^B\
\0\0\M-7\^A\0\0&\^B\0\0\M-r\^B\0\0*\^C\0\0r\0\0\0\M^P\0\0\0\M-J\^B\0\0`\^A\0\0\^U\^C\0\0\M^S\^A\
\0\0\M-^\^B\0\0\^W\^C\0\0\M^T\^C\0\0\M-D\^A\0\0\M-b\^A\0\0c\^C\0\0\M-\\^A\0\0\^A\^B\0\0\0\0\0\0\
]\^C\0\0\M-M\^B\0\0\M^H\^C\0\0E\^C\0\0\0\0\0\0t\^C\0\0\0\0\0\0\0\0\0\0\M^I\^C\0\0\0\0\0\0\0\0\0\
\0%\^A\0\0004\^A\0\0U\0\0\0m\^A\0\0\M-N\^B\0\0\0\0\0\0\M^X\^A\0\0000\^A\0\0\^Q\^C\0\0\M-v\^A\0\
\0\M^T\^A\0\0\M^P\^A\0\0\0\0\0\0\M-m\^B\0\0\M^R\^B\0\0\M-?\0\0\0\0\0\0\0\M-F\^B\0\0Q\^C\0\0d\^A\
\0\0\M-H\^B\0\0`\^C\0\0\M-4\^B\0\0\M-%\^A\0\0\0\0\0\0\0\0\0\0~\^C\0\0\0\0\0\0E\^A\0\0\0\0\0\0^\
\^B\0\0\0\0\0\0b\^C\0\0-\^B\0\0\0\^B\0\0g\^C\0\0\M^F\0\0\0\M-N\^A\0\0\0\0\0\0\^O\^B\0\0\M^S\^B\
\0\0\M^L\^B\0\0O\^B\0\0o\^C\0\0\M-X\^A\0\0u\^A\0\0\M-)\0\0\0\M^V\^C\0\0!\^C\0\0\0\0\0\0\0\0\0\0\
\M-Z\^B\0\0\M^S\0\0\0>\^B\0\0\0\0\0\0\M^A\^C\0\0\M-i\0\0\0\0\0\0\0\0\0\0\0\M-?\^B\0\0004\^C\0\0\
\M-u\^A\0\0\0\0\0\0\M^M\^A\0\0M\^A\0\0\M^R\^C\0\0\0\0\0\0\0\0\0\0\\\0\0\0\0\0\0\0\M-]\^B\0\0\
\^C\0\0\^\\^C\0\0W\^C\0\0\r\^B\0\0\0\0\0\0007\^C\0\0\\\^C\0\0\0\0\0\0u\^B\0\0\0\0\0\0i\^C\0\
\0P\^B\0\0006\^C\0\0\0\0\0\0\^_\^C\0\0\0\0\0\0|\^C\0\0\M-F\^A\0\0c\^A\0\09\^B\0\0\^_\^A\0\0e\^A\
\0\0o\^A\0\0<\^C\0\0I\^A\0\0\0\0\0\0&\^A\0\0002\^B\0\0V\^C\0\0\M^@\^B\0\0t\^B\0\0;\0\0\0\M^G\^A\
\0\0\M-f\^A\0\0\0\0\0\08\0\0\0\M^N\^C\0\0\M-a\^B\0\0\0\0\0\0\M-T\^B\0\0g\^B\0\0\0\0\0\0\M^Y\0\0\
\0\M^W\^C\0\0^\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^S\0\0\0\
\0\0\0\0\0\0\0\0001\0\0\0\0\0\0\0\0\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^Z\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0C\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0/\0\0\0\0\0\0\0i\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0K\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0007\0\0\0\
\M^E\0\0\0\0\0\0\0\M^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\0\0\0\0\0\0\0\^\\0\0\0J\0\0\0\0\0\0\0\M-4\0\0\0\M^_\0\0\0\M-'\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0004\0\0\0\M-7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-5\0\0\0\0\0\0\0M\0\0\0\
\M->\0\0\0\0\0\0\0p\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\0\0\
\0j\0\0\0\0\0\0\0o\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\0\0\0\0\0\0\0\0Y\0\0\0\0\0\0\0L\
\0\0\0\0\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0\0\0\M-6\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\M-I\0\0\0\0\0\0\0\M-A\0\0\0\0\0\0\0A\0\0\0\M-h\0\0\0\M-k\0\0\0\0\0\0\0\0\0\0\
\0=\0\0\0\M-K\0\0\0\0\0\0\0\0\0\0\0\M-\\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\M-]\0\0\0N\0\0\0\
\0\0\0\0\0\0\0\0\M-z\0\0\0^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-B\0\0\0{\0\0\0\0\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^A\0\0g\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-.\0\0\0\0\0\0\0\0\0\0\0003\0\0\0\0\0\0\0\0\0\0\0\M-Z\
\0\0\0\M-+\0\0\0\0\0\0\0\0\0\0\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^D\0\0\0x\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^\\^A\0\0\0\0\0\0\M-"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-H\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x45a000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13078813601792/0xbe52609f000
28868 lua51 CALL mmap(0xbe52609f000,0x46000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13078813601792/0xbe52609f000
28868 lua51 CALL mmap(0xbe5261e4000,0xd000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x45000)
28868 lua51 RET mmap 13078814932992/0xbe5261e4000
28868 lua51 CALL mmap(0xbe5262f0000,0x3000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x51000)
28868 lua51 RET mmap 13078816030720/0xbe5262f0000
28868 lua51 CALL mmap(0xbe5263f2000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x53000)
28868 lua51 RET mmap 13078817087488/0xbe5263f2000
28868 lua51 CALL mmap(0xbe5264f3000,0x6000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x54000)
28868 lua51 RET mmap 13078818140160/0xbe5264f3000
28868 lua51 CALL getentropy(0xbe5262f0048,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL getentropy(0xbe4cf2724a0,256)
28868 lua51 RET getentropy 0
28868 lua51 CALL open(0xbe56423bc4f,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/lib/libcrypto.so.36.0"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbb860)
28868 lua51 STRU struct stat { dev=5, ino=77955, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=314232, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1442715547<"Sep 20 02:19:07 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.874767638, size=6659008, blocks=13056, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbb8e0,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M^@\^Q\a\0\0\0\0\0@\0\0\0\0\0\0\0\M^H\M-$a\0\
\0\0\0\0\0\0\0\0@\08\0 \0@\0#\0 \0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-^\M-M\^T\0\0\0\0\0\M-^\M-M\^T\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-`\M-M\^T\
\0\0\0\0\0\M-`\M-M$\0\0\0\0\0\M-`\M-M$\0\0\0\0\0(\M^@\^E\0\0\0\0\0(\M^@\^E\0\0\0\0\0\0\0\^P\0\0\
\0\0\0\^A\0\0\0\^F\0\0\0\bN\^Z\0\0\0\0\0\bN:\0\0\0\0\0\bN:\0\0\0\0\0\M-0\M^O\^A\0\0\0\0\0\M-0\
\M^O\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-8\M-]\^[\0\0\0\0\0\M-8\M-]K\0\0\0\0\0\
\M-8\M-]K\0\0\0\0\0HJ\0\0\0\0\0\0HJ\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0(\^\\0\0\0\
\0\0\0(\\\0\0\0\0\0\0(\\\0\0\0\0\0\M-x\M^U\0\0\0\0\0\0@\M-7\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\
\0\^F\0\0\0x\M-\\^[\0\0\0\0\0x\M-\;\0\0\0\0\0x\M-\;\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M-pM\^Z\0\0\0\0\0\M-pM*\0\0\0\0\0\M-pM*\0\0\0\0\0\^X\0\0\0\0\0\
\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-(\M-9\^W\0\0\0\0\0\M-(\M-9'\0\0\0\0\0\
\M-(\M-9'\0\0\0\0\0\M-|\M^K\0\0\0\0\0\0\M-|\M^K\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\
\0\0\bN\^Z\0\0\0\0\0\bN:\0\0\0\0\0\bN:\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^E\b\0\0D\^O\0\0\0\0\0\0\M-u\^N\0\0\0\0\0\0,
\0\0\0\0\0\0\0\0\0\08\^N\0\0\M-H\^N\0\0\0\0\0\0\0\0\0\0\M-, \0\0
\^C\0\0\M-!\v\0\0\^]\^N\0\0)\^E\0\0\M-,\^N\0\0\M-s\v\0\0\M-3\^N\0\0M\^N\0\0\M^^\b\0\0\^C\^E\0\
\0002\^E\0\0\M-c\f\0\0'\v\0\0\M^Y\b\0\0\^N\b\0\0\^F\a\0\0c\^E\0\0 \f\0\0*\v\0\0\M-C\r\0\0\
\0\0\0\0\M-W\^D\0\0\M-}\r\0\0002 \0\0\M^@\^N\0\0\0\0\0\0\M-" \0\0\0\0\0\0\M^X\b\0\0\
\b\^N\0\0\M-p\f\0\0}\^N\0\0\0\0\0\0\M-E\f\0\0\M-+\f\0\0\0\0\0\0\^R\0\0\0\M-P
\0\0\M^S\f\0\0\M-G\^N\0\0\M^?\f\0\0\^[\f\0\0\0\0\0\0;\r\0\0'\^B\0\0j\f\0\0+\f\0\0\0\0\0\0\M-l\
\^F\0\0?\v\0\0:\^E\0\0\^Y\^D\0\0\M-%\^N\0\0N\^F\0\0\M-x\a\0\0\M-Y\b\0\0\M-f\b\0\0\M-V\0\0\0\M-8\
\^E\0\0V\v\0\0Y \0\0~\v\0\0\^O\^N\0\0\M-R\a\0\0\M-i\^A\0\0A\^O\0\0\M^[\f\0\0$\^N\0\0\0\0\0\0\
\M^K\^E\0\0\M-M\r\0\0\0\0\0\0e\^F\0\0\M-V\v\0\0\^_\^B\0\0\M-6\r\0\0[\r\0\0\M^Q\^N\0\0001\^O\0\0\
\M^X\^N\0\0\M^U\^N\0\0\^F\^N\0\0\M--\^N\0\0<\^E\0\0\M-2\r\0\0\M-6\v\0\0\M-G\f\0\0\^P\^C\0\0\M^^\
\f\0\0\M^M\r\0\0\v\b\0\0\^[\^N\0\0N\^N\0\0\M-l\f\0\0\^\\f\0\0\M-6 \0\0/\f\0\0\^A\^E\0\0I
\0\0\0\0\0\0\M-:\r\0\0@\^N\0\0\240\r\0\0003\r\0\0,\^O\0\0\0\0\0\0S\^B\0\0\0\0\0\0K\^N\0\0\M-A\b\
\0\0C\b\0\0y\^F\0\0\^Y\^F\0\0\M-l\^B\0\0^\r\0\0\M-R\v\0\0\M-*\^N\0\0\M-^\^B\0\0\0\0\0\0,\r\0\0\
\M^Z\r\0\0\M-^\^N\0\0\^Z\^A\0\0\M-{\^B\0\0\M-d \0\0\M-Q\^F\0\0d\r\0\0\M^U\r\0\0\M^V\a\0\0Q\a\0\
\0\0\0\0\0\M-P\r\0\0\0\0\0\0\M^A\f\0\0\M-r\^D\0\0%\^O\0\0v\^E\0\0P\^N\0\0\M-p\v\0\0\M-d\^N\0\0_\
\^N\0\0S\v\0\0\^O\^O\0\0
\0\0007\^O\0\0\^Q\^O\0\0\M-b\r\0\0\0\0\0\0c\v\0\0i\a\0\0\M-h\^N\0\0\M^J\^N\0\0\M-q\^D\0\0^\f\0\
\0\M^F
\0\0\M-C \0\0\0\0\0\0\M-v
\0\0\M^H\a\0\0\M^F\^N\0\0\0\0\0\0\^\ \0\0\M-a\f\0\0\M-$\r\0\0\M-t\r\0\0\^N\^O\0\0\M-D\b\0\0\
\M-e\^N\0\0,\^N\0\0]\^F\0\0\M^R\f\0\0\M-A\^N\0\0)\f\0\0\0\0\0\0\0\0\0\0\M-J
\0\0\M-f\^C\0\0\M-:\b\0\0\^O\f\0\0V\^F\0\0\M-f\r\0\0\M-4\r\0\0\0\0\0\0w \0\0\M-\\^D\0\0\M-+\a\0\
\0\M^P\a\0\0\M^Z\f\0\0\M^P
\0\0\M-F\f\0\0\v\^O\0\0\M->\f\0\0\r\^C\0\0\0\0\0\0W\a\0\0\M->\b\0\0\M-\
\0\0d\^N\0\0005\v\0\0\M-Y\^B\0\0\240\v\0\0\M^R\^B\0\0\^?\^F\0\0\M-!\^N\0\0\0\0\0\0-\f\0\0u\r\0\
\0\M-#\v\0\0\0\0\0\0\M-e\v\0\0\0\0\0\0
\^O\0\0\M-a\^C\0\0\M-~\b\0\0O\v\0\0\0\0\0\0\M-.\r\0\0P\^C\0\0\0\0\0\0!\b\0\0\M-,\f\0\0 \f\0\0.\
\a\0\0005\b\0\0\M^V \0\0R\^D\0\0\M-Z\r\0\0006\a\0\0
\0\0\M^D\r\0\0:\r\0\0\0\0\0\0\M-"
\0\0\0\0\0\09\^D\0\0}\0\0\0\M-r\^F\0\0|\^N\0\0\M-Q\f\0\0\M-S\^N\0\0007\^N\0\0004\^O\0\0J\f\0\0\
\M-R\f\0\0\M-~\^B\0\0c
\0\0\M^R\a\0\0\M-! \0\0\M-;\^N\0\0\M-v\^B\0\0r\v\0\0\M-4\^B\0\0\M-&\^B\0\0\M-W\v\0\0\M-=\r\
\0\0\0\0\0\0\M-T\r\0\0U\^N\0\0\M-W\0\0\0\M-E\r\0\09\^B\0\0\^T\^F\0\0"\^N\0\0\^R\^O\0\0E\^N\0\0\
\M-^ \0\0\^D\f\0\0\0\0\0\0\^X\^N\0\0\0\0\0\0\0\0\0\0\M-J\^F\0\0\M-0
\0\0U\r\0\0\0\0\0\0\M-K\f\0\0\0\0\0\0\M-;\^F\0\0\M-N\^F\0\0\M^I
\0\0\M-l\a\0\0\M-O\^E\0\0\M^S\^F\0\0A\r\0\0E\^E\0\0\0\0\0\0_\r\0\0< \0\0\M-l\^N\0\0\M^V\f\0\
\0\^]\f\0\0[\v\0\0o\^D\0\0?\^E\0\0\M^T\a\0\0]\^N\0\0\0\0\0\0\^D\^N\0\0#\^N\0\0\^P\f\0\0005\^C\0\
\0\M-<\r\0\0s\^F\0\0\M-p\r\0\0\^B\v\0\0\M-_\b\0\0\0\0\0\0\0\0\0\0\M-u\r\0\0\M-`\a\0\0\M-H\v\0\0\
\M^P\v\0\0j\^C\0\0\M-S\b\0\0\M-o\^F\0\0
\f\0\0\M--\a\0\0-\v\0\0h\^C\0\0\0\0\0\0&\0\0\0\240\f\0\0\M-?\^E\0\0\M-R\^A\0\0^\a\0\0\M-9\b\0\0\
G\^N\0\0\^X\^O\0\0\^S\^O\0\0\M-a\^D\0\0\^N \0\09 \0\0\M^]\r\0\0\M-/\^E\0\0\^T\^B\0\0d\^A\
\0\0\0\0\0\0\0\^O\0\0G\a\0\0\M-8\r\0\0\M-&\r\0\0\M^Q\r\0\0.\0\0\0\^Z\^O\0\0\M^^\^D\0\0j\r\0\0\
\M-q\r\0\0\0\0\0\0\M-7\^F\0\0\M-E
\0\0\M-#\r\0\0\M-)
\0\0\0\0\0\0\0\0\0\0X
\0\0\M^S\^B\0\0\0\0\0\0\0\0\0\0P \0\0\^A\f\0\0\0\0\0\0,\^D\0\0\M-&\a\0\0\0\0\0\0\M-r\
\0\0r\b\0\0N
\0\0\M-Z\f\0\0\M-4\^N\0\0\M-s\f\0\0\0\0\0\0\M-I\^N\0\0C\a\0\0\0\0\0\0\0\0\0\0\M-z\v\0\0\0\0\0\0\
o\v\0\0\^B\b\0\0&\b\0\0z\r\0\0\0\0\0\0\0\0\0\0n\r\0\0@\v\0\0\M-*\f\0\0\M-m\r\0\0\\
\0\0\M-#\^N\0\0 \^O\0\0;\^F\0\0\0\0\0\0\0\0\0\0Q\r\0\0\M->\a\0\0\^^\^C\0\0\0\0\0\0x\^A\0\0\M^?\
\0\0\M-$\^N\0\0\M-'\r\0\0\M^M\f\0\0>\^O\0\0\r\^F\0\0\v\v\0\0\M^V\^N\0\0\0\0\0\0\M-9 \0\0\0\
\0\0\0V \0\0\M-P\f\0\0\^N
\0\08\^F\0\0/\^N\0\0\M-1\f\0\0\0\0\0\0Q \0\0p
\0\0\M-8 \0\0\M-L\^N\0\0|\^E\0\0k \0\0I\^N\0\0\M-u\v\0\0\M-=\v\0\0~\^N\0\0\M^U\a\
\0\0\M-8\^C\0\0\M-F\^E\0\0\M^@\r\0\0\M^B\f\0\0L\^N\0\0\M-'\^F\0\0\240
\0\0-\^F\0\0n\f\0\0d \0\0l\^N\0\0\M-8\v\0\0\^F\f\0\0\M-W\^N\0\0\M^U\^D\0\0\^\\^D\0\0<\r\0\0\
\M-(\r\0\0\0\0\0\0\M-@\a\0\0\M-\\0\0\0\M-G\^E\0\0\0\0\0\0\M-t\^B\0\0\M-S\0\0\0\0\0\0\0\M-D\
\0\0\0\0\0\0q\^D\0\0\M^K\^N\0\0\0\0\0\0x\r\0\0\M^H\^A\0\0v\v\0\0\M-B\a\0\0\M^A\^D\0\0\M-p
\0\0\0\0\0\0\M^N\^N\0\0\^V\0\0\0\0\0\0\0P\^B\0\0?\^B\0\0\M-y\r\0\0004\^E\0\0T \0\09\r\0\0\^B\
\^N\0\0z\^N\0\0\M-O\r\0\0\M^Y\v\0\0\M-J\0\0\0\0\0\0\0T\r\0\0\M-/
\0\0\0\0\0\0\M-x\v\0\0\M^B\^B\0\0\240\^N\0\0\M-Z\b\0\0C\r\0\0\^]\^F\0\0\M-]\b\0\0\M^P\r\0\0\^R\
\b\0\0\M-N\f\0\0\0\0\0\0\0\0\0\0\M-I\r\0\0\0\0\0\0\M-M\^E\0\0?\f\0\0\0\0\0\0=\^O\0\0\M-t\^N\0\0\
\M-r\^B\0\0\M-R\^N\0\0\M-"\f\0\0\^E\r\0\0\0\0\0\0X\r\0\0\M-8\f\0\0\M^H
\0\0\M-*\^C\0\0\M-{\^C\0\0\M-K\^B\0\0\M^_ \0\0\M-@\^E\0\0#\f\0\0\M-%\v\0\0\M-o\^A\0\0\^P\
\^B\0\0\M-V \0\0\0\0\0\0.\^F\0\0 \^E\0\0\M-<\0\0\0\0\0\0\0\M^E\^B\0\0\0\0\0\0\M^@\
\0\0\M-K\a\0\0\0\0\0\0\0\0\0\0a\^C\0\0\^^
\0\0\M-r\f\0\0\^] \0\0\a\^O\0\0\^\\a\0\0\M-Q\v\0\0(\f\0\0Z\v\0\0\M^S\r\0\0\^?\^N\0\0\M-?\
\^F\0\0\0\0\0\0\M-O\^F\0\0\M-w\^D\0\0\M-\\^N\0\0W\v\0\0\M-p\^C\0\0\M^R\0\0\0\0\0\0\0n\^B\0\0000\
\f\0\0x\a\0\0-\^O\0\0?\^O\0\0\M-?\r\0\0\M-!
\0\08\b\0\0\M-"\b\0\0\M-:
\0\0{\^N\0\0\M-W
\0\0\0\0\0\0\0\0\0\0U \0\0Z\r\0\0G\r\0\0\M-m\^B\0\0_
\0\0\M-H\b\0\0\0\0\0\0\^U\a\0\0\^C\f\0\0,\f\0\0s\^D\0\0M\r\0\0%\^N\0\0Y\v\0\0\M^J\^F\0\0<\^F\0\
\0\0\0\0\0q\^C\0\0U\f\0\0\0\0\0\0\0\0\0\0\M-i\r\0\0\M-T
\0\0\M-I\^F\0\0c\0\0\0\M^L\r\0\0\M-m\b\0\0\0\0\0\0\M-a\^N\0\0p\v\0\0\M-t \0\0\M-r\b\0\0\
\0\0\0\0\M-.\f\0\0\M-)\0\0\0i\^N\0\0\M-l\^E\0\0\M-W\^E\0\0=\r\0\0\0\0\0\0\M-0\^N\0\0\M-c
\0\0\0\0\0\0\^D\r\0\0#\0\0\0D \0\0\M^X\^A\0\0\0\0\0\0\0\0\0\0\M-{\f\0\0\f \0\0\0\0\0\0\a\
\a\0\0H\v\0\0\M-*\r\0\0\0\^N\0\0$\^O\0\0\M-Q
\0\0%\f\0\0\0\0\0\0\^Y\^N\0\0\0\0\0\0\M-Y\a\0\0z\^F\0\0L\a\0\0\M-e\r\0\0\^_\^O\0\0\^Z
\0\0j \0\0.\f\0\0\M-f\v\0\0\M-}\f\0\0\^X\a\0\0\M^]\^C\0\0s \0\0y\b\0\0\^Z\f\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0>\f\0\0\M-$\b\0\0\M^N\v\0\0\0\0\0\0\M-q\^N\0\0\M-K\^C\0\0\M-w\f\0\0\0\0\0\0\M-b\
\0\0\0\0\0\0<\^D\0\0\M-n\v\0\0\M-{\b\0\0\M-^
\0\0\0\0\0\0_\0\0\0\^Y\r\0\0\M^_\f\0\0\M^Q\b\0\0\M^]\a\0\0/\0\0\0\0\0\0\0N\^B\0\0\0\0\0\0\^_\^N\
\0\0|\r\0\0\M-$\f\0\0\M-5
\0\0\M^V\b\0\0\0\0\0\0\M-9\r\0\0\M-a
\0\0^\^N\0\0}\^D\0\0b\f\0\0\M-F\r\0\0\M-<\v\0\0W\f\0\0\M-+\r\0\0z\^D\0\0\0\0\0\0\M-q \0\0\
\M-h\f\0\0|\f\0\0\0\0\0\0C\^O\0\0\M-W\^A\0\0\M-c\v\0\0\^U\^N\0\0\M-1\^N\0\0\0\0\0\0l\v\0\0\0\0\
\0\0\M^H\f\0\0\M-)\a\0\0\^]\r\0\0\M^A\^N\0\0e\a\0\0\M-}\^N\0\0\M-5\b\0\0\M^U \0\0\M-&\
\0\0X\f\0\0\\\v\0\0\M-A \0\0F\^N\0\0\M^P\^D\0\0\M^\\^C\0\0\\\a\0\0g\r\0\0\0\0\0\0)
\0\0\M-c\^C\0\0\M-J\v\0\0\M-} \0\0!\r\0\0\M-f\^E\0\0\0\0\0\0\M-i\f\0\0}\^F\0\0\0\0\0\0W\^B\0\
\0\M-)\v\0\0\v\a\0\0.
\0\0\M^B\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0h \0\0\0\0\0\0\M^V\^E\0\0\M-%\^E\0\0,\v\0\0\M-,\r\
\0\0\M-M \0\0\M^L\^E\0\0\M-C\^C\0\0\M^Q\^E\0\0\M-{\r\0\0]
\0\0*\r\0\0\v\^N\0\0\M-3\^C\0\0 \0\0A\f\0\0\M-*\^E\0\0\0\0\0\0\M-d
\0\0\M-$ \0\0J \0\0\M-=\^N\0\0\M-P\^D\0\0#\^O\0\0$\r\0\0\M-:\f\0\0\M-K\r\0\0d\^C\0\0!\
\^O\0\0#\^A\0\0\M-D\a\0\0\240\b\0\0\0\0\0\0\M-[\r\0\0\M^@\^C\0\0G\v\0\0(\^N\0\0\0\0\0\0_\v\0\0Y\
\^N\0\0\M^_\^F\0\0y\^B\0\0\0\0\0\0[\^N\0\0
\b\0\0\M^Z\^B\0\0\M^N\r\0\0O\^N\0\0000\a\0\0|\v\0\0\M^T\b\0\0\M-8\^B\0\0005\0\0\0\M^V\^F\0\0\
\M-5\^F\0\0"\b\0\0\0\0\0\0D\^N\0\0)\r\0\0\0\0\0\0\\\^D\0\0}\v\0\0\M^_\^B\0\0'\^O\0\0&\v\0\0\M-(\
\v\0\0\M^S
\0\0r\f\0\0p\a\0\0\0\0\0\0\0\0\0\0\M^M\^N\0\0v\^D\0\0\M^D\^N\0\0\M-B
\0\0\M-(\^F\0\0\M-( \0\0\M-?\f\0\0\0\0\0\0F\b\0\0\0\0\0\0w\v\0\0U\a\0\0\^V \0\0Q\^F\0\0000\
\^N\0\0\M-U\^B\0\0;\^D\0\0\0\0\0\0\M^R
\0\0\0\0\0\0\M-b\^B\0\0\M-p\^N\0\0O\a\0\0-\a\0\0\M-D\v\0\0x\^C\0\0\0\0\0\0\0\0\0\0\^_\f\0\0\M-u\
\f\0\0\0\0\0\0\M-c\^F\0\0J\^N\0\0\M^[
\0\0w\^N\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x5ce000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13081054740480/0xbe5ab9f0000
28868 lua51 CALL mmap(0xbe5ab9f0000,0x14d000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13081054740480/0xbe5ab9f0000
28868 lua51 CALL mmap(0xbe5abc3c000,0x59000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x14c000)
28868 lua51 RET mmap 13081057148928/0xbe5abc3c000
28868 lua51 CALL mmap(0xbe5abd94000,0x1a000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1a4000)
28868 lua51 RET mmap 13081058557952/0xbe5abd94000
28868 lua51 CALL mmap(0xbe5abead000,0x6000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1bd000)
28868 lua51 RET mmap 13081059708928/0xbe5abead000
28868 lua51 CALL mmap(0xbe5abfb2000,0xa000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1c2000)
28868 lua51 RET mmap 13081060777984/0xbe5abfb2000
28868 lua51 CALL mmap(0xbe5abfbc000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081060818944/0xbe5abfbc000
28868 lua51 CALL getentropy(0xbe5abd94e08,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x17000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076838699008/0xbe4b0535000
28868 lua51 CALL mprotect(0xbe5abead000,0x6000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL munmap(0xbe4b0535000,0x17000)
28868 lua51 RET munmap 0
28868 lua51 CALL mmap(0,0x6000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078387892224/0xbe50caa2000
28868 lua51 CALL mprotect(0xbe5263f2000,0x2000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL munmap(0xbe50caa2000,0x6000)
28868 lua51 RET munmap 0
28868 lua51 CALL mprotect(0xbe55a721000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL kbind(0x7f7ffffbc978,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080552050688/0xbe58da89000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077368074240/0xbe4cfe0f000
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078803795968/0xbe525745000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe525745000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080590729216/0xbe58ff6c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe58ff6c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078914711552/0xbe52c10c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe52c10c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079824506880/0xbe5624b2000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5624b2000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078213857280/0xbe5024a9000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5024a9000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077229211648/0xbe4c79a1000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4c79a1000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080588697600/0xbe58fd7c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe58fd7c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077984976896/0xbe4f4a62000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4f4a62000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079124295680/0xbe5388ec000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5388ec000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079318904832/0xbe544284000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe544284000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080907464704/0xbe5a2d7c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a2d7c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077578305536/0xbe4dc68d000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4dc68d000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077817888768/0xbe4eab09000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4eab09000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076987428864/0xbe4b930c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b930c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080774512640/0xbe59aeb1000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe59aeb1000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077003026432/0xbe4ba1ec000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4ba1ec000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080108871680/0xbe5733e3000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5733e3000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078647787520/0xbe51c27d000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe51c27d000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079340302336/0xbe5456ec000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5456ec000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080647643136/0xbe5935b3000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5935b3000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078988234752/0xbe53072a000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe53072a000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080871403520/0xbe5a0b18000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a0b18000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077767938048/0xbe4e7b66000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4e7b66000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080960303104/0xbe5a5fe0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a5fe0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078779809792/0xbe524065000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe524065000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079764443136/0xbe55eb6a000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe55eb6a000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079475240960/0xbe54d79c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe54d79c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077658267648/0xbe4e12cf000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4e12cf000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078252650496/0xbe5049a8000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5049a8000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079362981888/0xbe546c8d000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe546c8d000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080222130176/0xbe579fe6000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe579fe6000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076959297536/0xbe4b7838000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b7838000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076816228352/0xbe4aefc7000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4aefc7000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077379698688/0xbe4d0925000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4d0925000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080844517376/0xbe59f174000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe59f174000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077153693696/0xbe4c319c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4c319c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077339213824/0xbe4ce289000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4ce289000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079142621184/0xbe539a66000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe539a66000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076867579904/0xbe4b20c0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b20c0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078939181056/0xbe52d862000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe52d862000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079536590848/0xbe55121e000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe55121e000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077460836352/0xbe4d5686000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4d5686000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076988092416/0xbe4b93ae000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b93ae000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079774617600/0xbe55f51e000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe55f51e000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080630927360/0xbe5925c2000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5925c2000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079649140736/0xbe557d74000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe557d74000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080063176704/0xbe57084f000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe57084f000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13081037971456/0xbe5aa9f2000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5aa9f2000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077364887552/0xbe4cfb05000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4cfb05000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077238616064/0xbe4c8299000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4c8299000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079914487808/0xbe567a82000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe567a82000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080790499328/0xbe59bdf0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe59bdf0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076886552576/0xbe4b32d8000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b32d8000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078423683072/0xbe50ecc4000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe50ecc4000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076922802176/0xbe4b556a000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b556a000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13081016598528/0xbe5a9590000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a9590000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080264667136/0xbe57c877000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe57c877000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080733589504/0xbe5987aa000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5987aa000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077571538944/0xbe4dc019000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4dc019000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078475485184/0xbe511e2b000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe511e2b000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080685694976/0xbe5959fd000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5959fd000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079327600640/0xbe544acf000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe544acf000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076817682432/0xbe4af12a000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4af12a000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080898990080/0xbe5a2567000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a2567000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077805748224/0xbe4e9f75000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4e9f75000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077522034688/0xbe4d90e3000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4d90e3000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080551673856/0xbe58da2d000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe58da2d000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077561053184/0xbe4db619000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4db619000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077273886720/0xbe4ca43c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4ca43c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079860133888/0xbe5646ac000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5646ac000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080658518016/0xbe594012000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe594012000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077620781056/0xbe4def0f000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4def0f000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080790499328/0xbe59bdf0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe59bdf0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077085519872/0xbe4bf098000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4bf098000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079296802816/0xbe542d70000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe542d70000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079682334720/0xbe559d1c000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe559d1c000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076980396032/0xbe4b8c57000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b8c57000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077327527936/0xbe4cd764000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4cd764000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077947682816/0xbe4f26d1000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4f26d1000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077251198976/0xbe4c8e99000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4c8e99000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079475093504/0xbe54d778000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe54d778000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078359093248/0xbe50af2b000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe50af2b000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079818956800/0xbe561f67000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe561f67000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077673136128/0xbe4e20fd000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4e20fd000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080021626880/0xbe56e0af000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe56e0af000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078244032512/0xbe504170000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe504170000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080830042112/0xbe59e3a6000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe59e3a6000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077615665152/0xbe4dea2e000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4dea2e000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079295680512/0xbe542c5e000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe542c5e000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079732887552/0xbe55cd52000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe55cd52000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079278317568/0xbe541bcf000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe541bcf000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13076974469120/0xbe4b86b0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4b86b0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080873201664/0xbe5a0ccf000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a0ccf000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080635514880/0xbe592a22000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe592a22000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078852317184/0xbe52858b000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe52858b000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077086994432/0xbe4bf200000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4bf200000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079870111744/0xbe565030000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe565030000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078002368512/0xbe4f5af8000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4f5af8000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078211293184/0xbe502237000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe502237000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077186592768/0xbe4c50fc000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4c50fc000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078977191936/0xbe52fca2000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe52fca2000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078945566720/0xbe52de79000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe52de79000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080290471936/0xbe57e113000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe57e113000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077867208704/0xbe4eda12000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4eda12000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079437979648/0xbe54b413000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe54b413000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079763734528/0xbe55eabd000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe55eabd000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077760573440/0xbe4e7460000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4e7460000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078290419712/0xbe506dad000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe506dad000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080141144064/0xbe5752aa000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5752aa000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080886530048/0xbe5a1985000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a1985000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078852820992/0xbe528606000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe528606000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077868855296/0xbe4edba4000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4edba4000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078114586624/0xbe4fc5fd000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4fc5fd000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079301005312/0xbe543172000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe543172000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077939347456/0xbe4f1ede000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4f1ede000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079343050752/0xbe54598b000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe54598b000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080413011968/0xbe5855f0000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5855f0000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078354038784/0xbe50aa59000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe50aa59000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080023523328/0xbe56e27e000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe56e27e000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079122051072/0xbe5386c8000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5386c8000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13077454557184/0xbe4d5089000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe4d5089000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13078211727360/0xbe5022a1000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5022a1000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080539025408/0xbe58ce1d000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe58ce1d000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079080562688/0xbe535f37000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe535f37000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080133926912/0xbe574bc8000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe574bc8000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13080937353216/0xbe5a49fd000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe5a49fd000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffbc590,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/share/nls/C/libc.cat"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc4c0)
28868 lua51 STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,5,0)
28868 lua51 RET mmap 13079354048512/0xbe546408000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL munmap(0xbe546408000,0xff0)
28868 lua51 RET munmap 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078828494848/0xbe526ed3000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080790499328/0xbe59bdf0000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079495196672/0xbe54eaa4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080496820224/0xbe58a5dd000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080064983040/0xbe570a08000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079804112896/0xbe56113f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080170962944/0xbe576f1a000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077754884096/0xbe4e6ef3000
28868 lua51 CALL mquery(0xbe58a5de000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
28868 lua51 RET mquery 13080496824320/0xbe58a5de000
28868 lua51 CALL mmap(0xbe58a5de000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080496824320/0xbe58a5de000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079016411136/0xbe532209000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080190140416/0xbe578164000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079557419008/0xbe5525fb000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078159564800/0xbe4ff0e2000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078370852864/0xbe50ba62000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080273117184/0xbe57d086000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080326529024/0xbe580376000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077868208128/0xbe4edb06000
28868 lua51 CALL mquery(0xbe58a5df000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
28868 lua51 RET mquery 13080496828416/0xbe58a5df000
28868 lua51 CALL mmap(0xbe58a5df000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080496828416/0xbe58a5df000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078562111488/0xbe5170c8000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077236699136/0xbe4c80c5000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077595242496/0xbe4dd6b4000
28868 lua51 CALL sigaction(SIGPIPE,0x7f7ffffbcac0,0x7f7ffffbcab0)
28868 lua51 STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0x2<SA_RESTART> }
28868 lua51 STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0x2<SA_RESTART> }
28868 lua51 RET sigaction 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078517047296/0xbe5145ce000
28868 lua51 CALL open(0xbe56ae81b18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/context.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d1b7d798,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/context.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d71cea18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/context/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5145ce698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/context.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080035028992/0xbe56ed77000
28868 lua51 CALL open(0xbe56ed77118,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/context/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4c9b6b518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/context.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b098,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/context.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b198,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078220783616/0xbe502b44000
28868 lua51 CALL open(0xbe52d8717d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d871598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079451561984/0xbe54c107000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078154113024/0xbe4febaf000
28868 lua51 CALL open(0xbe54c107a58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/x509.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8ba18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/x509.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ae81298,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/ssl/x509/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe54c107258,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/x509.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ae81d18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/x509/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8bad8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl/x509.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b4d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl/x509.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe541e8b198,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/loadall.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d8717d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/ssl.so"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe52d871598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/ssl.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080082923520/0xbe571b24000
28868 lua51 CALL open(0xbe56ae81e98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/encodings.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe572082098,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/encodings.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d71ce298,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/encodings/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ae81418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/encodings.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe572082318,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/encodings/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ae81b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/encodings.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1d81200,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbca40)
28868 lua51 STRU struct stat { dev=7, ino=211906, mode=drwxr-xr-x , nlink=3, uid=0<"root">, gid=0<"wheel">, rdev=864031, atime=1443380744<"Sep 27 19:05:44 2015">.867544897, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=1536, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 1960/0x7a8
28868 lua51 CALL getdents(5,0xbe5a1aad000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe5a1ab1000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/encodings.so"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbbaa0)
28868 lua51 STRU struct stat { dev=7, ino=211917, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864088, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=14109, blocks=28, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbb20,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0@\^Q\0\0\0\0\0\0@\0\0\0\0\0\0\0\M^X$\0\0\0\0\
\0\0\0\0\0\0@\08\0 \0@\0\^[\0\^X\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-N\^Z\0\0\0\0\0\0\M-N\^Z\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-`\^Z\0\0\
\0\0\0\0\M-`\^Z\^P\0\0\0\0\0\M-`\^Z\^P\0\0\0\0\0(\^D\0\0\0\0\0\0(\^D\0\0\0\0\0\0\0\0\^P\0\0\0\0\
\0\^A\0\0\0\^F\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0 \0\0\0\0\0p\^B\0\0\0\0\0\0p\^B\0\0\0\0\0\0\
\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0p"\0\0\0\0\0\0p"0\0\0\0\0\0p"0\0\0\0\0\0(\^A\0\0\0\0\0\0(\^A\
\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^X#\0\0\0\0\0\0\M^X#@\0\0\0\0\0\M^X#@\0\0\0\0\
\0\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M-p \0\0\0\0\0\0\M-p \
\0\0\0\0\0\M-p \0\0\0\0\0\M^@\^A\0\0\0\0\0\0\M^@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\
\0\0\M-p\^^\0\0\0\0\0\0\M-p\^^\^P\0\0\0\0\0\M-p\^^\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\
\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0$\^\\0\0\0\0\0\0$\^\\^P\0\0\0\0\0$\^\\^P\0\0\0\0\0\M^\\0\0\0\
\0\0\0\0\M^\\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\
\0 \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0%\0\0\0001\0\0\0,\0\0\0.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\0\0\0\0\0\^T\0\0\0&\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0"\0\0\0/\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0\^Y\0\0\0(\0\0\0\^W\0\0\0\0\0\0\0*\0\
\0\0\0\0\0\0$\0\0\0000\0\0\0'\0\0\0!\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0)\0\0\0-\0\0\0\0\0\
\0\0+\0\0\0%\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\
\0\0\0\0\0\0\0\0\0\^U\0\0\0\^]\0\0\0\^X\0\0\0\^^\0\0\0\0\0\0\0\^[\0\0\0 \0\0\0\^V\0\0\0\r\0\0\0\
\0\0\0\0\^\\0\0\0\^R\0\0\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\b\0\M-0\^O\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0@\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-@\^Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M-`\^Z\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\r\0$\^\\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^C\0\^N\0\M-@\^\\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\0 \0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^Q\0\b \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^R\0 \0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^U\0x#0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^V\0\M^H#0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^C\0\^W\0\M^X#@\0\0\0\0\0\0\0\0\0\0\0\0\0+\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M^[\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-k\^A\0\0\^P\0\M-q\M^?\M^X#\
0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-i\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^^\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0q\0\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-]\0\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\
\0\0\0\^R\0\b\0\M-0\^O\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-T\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^E\0\0\0\
\0\0\0\0\^]\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0n\^A\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0P\
\^A\0\0\0\0\0\0\M-+\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-_\^A\0\0\^P\0\M-q\M^?p"0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Q\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-@\^A\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\^A\0\0\^R\0\0\0\0\0\0\0\0\0\0\0U\^A\0\0\0\0\0\0\M^G\^A\0\
\0\^Q\0\0\0\0\0\0\0\0\0\0\0 \^A\0\0\0\0\0\0=\^A\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0000\^A\0\0\0\0\0\0%\
\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0L\0\0\0\^R\0
\0\M-`\^R\0\0\0\0\0\0\^U\^A\0\0\0\0\0\0Q\^A\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0 \^A\0\0\0\0\0\0\
\^B\0\0\^P\0\M-q\M^?\M-(#@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0002\0\0\0\^R\0\v\0\M-@\^Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^B\^B\0\0\^P\0\M-q\M^?\
\M-(#@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-p\^A\0\0\^P\0\M-q\M^?\M-(#@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-0\0\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0z\0\0\0\0\0\0\0\M-9\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-u\^A\0\0\^P\0\^W\0\M^X#@\0\0\0\0\0\0\0\0\0\0\0\0\0c\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^?\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M^W\0\
\0\0\0\0\0\0\M^A\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\
\0_init\0__cxa_atexit\0_fini\0_Jv_RegisterClasses\0luaopen_util_encodings\0luaL_register\0lua_p\
ushlstring\0lua_createtable\0lua_settable\0luaL_checklstring\0idna_to_unicode_8z8z\0lua_pushstr\
ing\0idn_free\0lua_pushnil\0__stack_smash_handler\0idna_to_ascii_8z\0lua_isstring\0lua_tolstrin\
g\0strcpy\0stringprep\0stringprep_saslprep\0stringprep_xmpp_resourceprep\0stringprep_xmpp_nodep\
rep\0stringprep_nameprep\0luaL_addlstring\0luaL_buffinit\0strchr\0luaL_pushresult\0libidn.so.17\
.2\0__got_start\0__got_end\0__data_start\0_edata\0__bss_start\0LIBIDN_1.0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\^B\0\0\0\^B\0\0\
\0\^A\0\0\0\0\0\^B\0\^B\0\^B\0\0\0\^A\0\^B\0\^A\0\0\0\^A\0\^A\0\^A\0\^B\0\0\0\^A\0\0\0\0\0\^B\0\
\0\0\0\0\0\0\0\0\^A\0\^A\0\M-P\^A\0\0\^P\0\0\0\0\0\0\0p/\M^W\r\0\0\^B\0\^U\^B\0\0\0\0\0\0 \0\
\0\0\0\0\b\0\0\0\0\0\0\0\^O\^[\^P\0\0\0\0\0( \0\0\0\0\0\b\0\0\0\0\0\0\0\240\^Y\0\0\0\0\0\0000 \
\0\0\0\0\0\b\0\0\0\0\0\0\0\^V\^[\^P\0\0\0\0\08 \0\0\0\0\0\b\0\0\0\0\0\0\0\M-p\^V\0\0\0\0\0\0`\
\0\0\0\0\0\b\0\0\0\0\0\0\0\^]\^[\^P\0\0\0\0\0h \0\0\0\0\0\b\0\0\0\0\0\0\0P\^V\0\0\0\0\0\0p \
\0\0\0\0\0\b\0\0\0\0\0\0\0&\^[\^P\0\0\0\0\0x \0\0\0\0\0\b\0\0\0\0\0\0\0@\^V\0\0\0\0\0\0\M^@ \
\0\0\0\0\0\b\0\0\0\0\0\0\0/\^[\^P\0\0\0\0\0\M^H \0\0\0\0\0\b\0\0\0\0\0\0\0000\^V\0\0\0\0\0\0\
\M^P \0\0\0\0\0\b\0\0\0\0\0\0\0<\^[\^P\0\0\0\0\0\M^X \0\0\0\0\0\b\0\0\0\0\0\0\0 \^V\0\0\0\0\0\
\0\M-@ \0\0\0\0\0\b\0\0\0\0\0\0\0E\^[\^P\0\0\0\0\0\M-H \0\0\0\0\0\b\0\0\0\0\0\0\0\240\^T\0\0\
\0\0\0\0\M-P \0\0\0\0\0\b\0\0\0\0\0\0\0N\^[\^P\0\0\0\0\0\M-X \0\0\0\0\0\b\0\0\0\0\0\0\0\0\^T\
\0\0\0\0\0\0H#0\0\0\0\0\0\b\0\0\0\0\0\0\0\240#@\0\0\0\0\0\240#@\0\0\0\0\0\b\0\0\0\0\0\0\0\240#@\
\0\0\0\0\0@#0\0\0\0\0\0\^F\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0P#0\0\0\0\0\0\^F\0\0\0\^Z\0\0\0\0\0\0\
\0\0\0\0\0X#0\0\0\0\0\0\^F\0\0\0 \0\0\0\0\0\0\0\0\0\0\0`#0\0\0\0\0\0\^F\0\0\0!\0\0\0\0\0\0\0\0\
\0\0\0h#0\0\0\0\0\0\^F\0\0\0$\0\0\0\0\0\0\0\0\0\0\0p#0\0\0\0\0\0\^F\0\0\0.\0\0\0\0\0\0\0\0\0\0\
\0\M^H"0\0\0\0\0\0\a\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0\M^P"0\0\0\0\0\0\a\0\0\0\^N\0\0\0\0\0\0\0\0\0\
\0\0\M^X"0\0\0\0\0\0\a\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\240"0\0\0\0\0\0\a\0\0\0\^Q\0\0\0\0\0\0\0\
\0\0\0\0\M-("0\0\0\0\0\0\a\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-0"0\0\0\0\0\0\a\0\0\0\^S\0\0\0\0\0\
\0\0\0\0\0\0\M-8"0\0\0\0\0\0\a\0\0\0\^T\0\0\0\0\0\0\0\0\0\0\0\M-@"0\0\0\0\0\0\a\0\0\0\^U\0\0\0\
\0\0\0\0\0\0\0\0\M-H"0\0\0\0\0\0\a\0\0\0\^V\0\0\0\0\0\0\0\0\0\0\0\M-P"0\0\0\0\0\0\a\0\0\0\^X\0\
\0\0\0\0\0\0\0\0\0\0\M-X"0\0\0\0\0\0\a\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0\M-`"0\0\0\0\0\0\a\0\0\0\
\^[\0\0\0\0\0\0\0\0\0\0\0\M-h"0\0\0\0\0\0\a\0\0\0\^]\0\0\0\0\0\0\0\0\0\0\0\M-p"0\0\0\0\0\0\a\0\
\0\0\^^\0\0\0\0\0\0\0\0\0\0\0\M-x"0\0\0\0\0\0\a\0\0\0\^_\0\0\0\0\0\0\0\0\0\0\0\0#0\0\0\0\0\0\a\
\0\0\0"\0\0\0\0\0\0\0\0\0\0\0\b#0\0\0\0\0\0\a\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\^P#0\0\0\0\0\0\a\0\0\
\0*\0\0\0\0\0\0\0\0\0\0\0\^X#0\0\0\0\0\0\a\0\0\0+\0\0\0\0\0\0\0\0\0\0\0 #0\0\0\0\0\0\a\0\0\0-\0\
\0\0\0\0\0\0\0\0\0\0(#0\0\0\0\0\0\a\0\0\0.\0\0\0\0\0\0\0\0\0\0\0000#0\0\0\0\0\0\a\0\0\0/\0\0\0\
\0\0\0\0\0\0\0\08#0\0\0\0\0\0\a\0\0\0000\0\0\0\0\0\0\0\0\0\0\0H\M^C\M-l\b\M-hG\^B\0\0H\M^C\M-D\
\b\M-C\0\0\M^?5\M-2\^R0\0\M^?%\M-4\^R0\0\M^P\M^P\M^P\M^P\M^?%\M-2\^R0\0h\0\0\0\0\M-i\M-`\M^?\
\M^?\M^?\M^?%\M-*\^R0\0h\^A\0\0\0\M-i\M-P\M^?\M^?\M^?\M^?%\M-"\^R0\0h\^B\0\0\0\M-i\M-@\M^?\M^?\
\M^?"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x403000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13080154107904/0xbe575f07000
28868 lua51 CALL mmap(0xbe575f07000,0x2000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13080154107904/0xbe575f07000
28868 lua51 CALL mmap(0xbe576008000,0x1000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1000)
28868 lua51 RET mmap 13080155160576/0xbe576008000
28868 lua51 CALL mmap(0xbe576109000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x2000)
28868 lua51 RET mmap 13080156213248/0xbe576109000
28868 lua51 CALL mmap(0xbe576209000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x2000)
28868 lua51 RET mmap 13080157261824/0xbe576209000
28868 lua51 CALL mmap(0xbe576309000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x2000)
28868 lua51 RET mmap 13080158310400/0xbe576309000
28868 lua51 CALL getentropy(0xbe576109000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423d05f,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/libidn.so.17.2"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbba30)
28868 lua51 STRU struct stat { dev=7, ino=155926, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=627024, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1442448292<"Sep 17 00:04:52 2015">, ctime=1442775462<"Sep 20 18:57:42 2015">.012720934, size=219809, blocks=480, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbab0,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\0002\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-(/\^C\0\0\
\0\0\0\0\0\0\0@\08\0 \0@\0\^[\0\^X\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0Nz\0\0\0\0\0\0Nz\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0`z\0\0\0\0\0\0`z\^P\0\
\0\0\0\0`z\^P\0\0\0\0\0\M-0\M^\\^B\0\0\0\0\0\M-0\M^\\^B\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\
\0\0\0\0 \^C\0\0\0\0\0\0 #\0\0\0\0\0\0 #\0\0\0\0\0\M^@\f\0\0\0\0\0\0\M^@\f\0\0\0\0\0\0\0\0\^P\0\
\0\0\0\0\^A\0\0\0\^F\0\0\0\M^@,\^C\0\0\0\0\0\M^@,3\0\0\0\0\0\M^@,3\0\0\0\0\0\b\^B\0\0\0\0\0\0\b\
\^B\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^P.\^C\0\0\0\0\0\M^P.C\0\0\0\0\0\M^P.C\0\0\
\0\0\0(\0\0\0\0\0\0\0(\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M-p*\^C\0\0\0\0\0\M-p*#\
\0\0\0\0\0\M-p*#\0\0\0\0\0\M^P\^A\0\0\0\0\0\0\M^P\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\
\0\0\M-x\^V\^C\0\0\0\0\0\M-x\^V\^S\0\0\0\0\0\M-x\^V\^S\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\
\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\0 \^C\0\0\0\0\0\0 \^S\0\0\0\0\0\0 \^S\0\0\0\0\0\M-L\^B\0\
\0\0\0\0\0\M-L\^B\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0 \^C\0\0\0\0\0\0 #\0\0\0\
\0\0\0 #\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0a\0\0\0s\0\0\0004\0\0\0\0\0\0\0002\0\0\0\0\0\0\0W\0\0\0b\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\0\
\0\0\0\0\0\0\0\0006\0\0\0j\0\0\0&\0\0\0c\0\0\0\0\0\0\0\0\0\0\0e\0\0\0\0\0\0\0\0\0\0\0#\0\0\0=\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0F\0\0\0\0\0\0\0O\0\0\0\0\0\0\0r\0\0\0\0\0\0\0V\0\0\0p\0\0\0\
n\0\0\0\0\0\0\0@\0\0\0\^O\0\0\0B\0\0\0L\0\0\0)\0\0\0\0\0\0\0\0\0\0\0N\0\0\0h\0\0\0\0\0\0\0S\0\0\
\0Q\0\0\0$\0\0\0_\0\0\0H\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0U\0\0\0m\0\0\0\0\0\0\0J\0\0\0a\0\0\0\\\0\
\0\0 \0\0\0Y\0\0\0\0\0\0\0005\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0q\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0i\0\0\0007\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0\0\0\0\0\0\0E\0\0\0P\0\0\0l\0\0\0\0\0\0\0;\0\0\0\
C\0\0\0Z\0\0\0^\0\0\0\^W\0\0\0]\0\0\09\0\0\0(\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0o\0\0\0<\0\0\0d\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0!\0\0\0\
\0\0\0\0\0\0\0\0\^\\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0%\0\0\0\0\0\
\0\0-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^]\0\0\0\^^\0\0\0\0\0\0\0\r\0\0\0\0\
\0\0\0\0\0\0\0"\0\0\0001\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0+\0\0\0>\0\0\0\0\0\0\0.\0\0\0\0\0\
\0\0\^[\0\0\0?\0\0\0\^V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0M\0\0\0\0\0\0\08\0\0\0,\0\0\0D\0\0\
\0\0\0\0\0000\0\0\0\^T\0\0\0\^R\0\0\0K\0\0\0:\0\0\0\0\0\0\0G\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0I\0\0\
\0\0\0\0\0*\0\0\0/\0\0\0R\0\0\0\^X\0\0\0\0\0\0\0T\0\0\0\0\0\0\0\0\0\0\0f\0\0\0\0\0\0\0A\0\0\0g\
\0\0\0`\0\0\0X\0\0\0'\0\0\0k\0\0\0003\0\0\0\^_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0\240.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\0002\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0@z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\
\f\0`z\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\r\0\0 \^S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\^N\0\M-P\v\^S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\0 #\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^Q\0\b #\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^R\0 #\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^U\0h.3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^V\0x.3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^W\0\M^P.C\0\0\0\0\0\0\0\0\0\0\0\0\0\M-E\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\09\^F\0\0\^R\0
\0000i\0\0\0\0\0\0\^P\^A\0\0\0\0\0\0\M-J\0\0\0\^R\0
\0\M-p@\0\0\0\0\0\0K\0\0\0\0\0\0\0+\^F\0\0\^R\0
\0\M-ph\0\0\0\0\0\0:\0\0\0\0\0\0\0\M-5\^E\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\M^X\^C\
\0\0\^Q\0\^R\0\M-`!#\0\0\0\0\0 \^A\0\0\0\0\0\0\M-A\^C\0\0\^Q\0\^R\0 $#\0\0\0\0\0P\^A\0\0\0\0\0\
\0C\^F\0\0\^R\0
\0@j\0\0\0\0\0\0\M^\\0\0\0\0\0\0\0\M-k\^E\0\0\^R\0
\0`d\0\0\0\0\0\0\M-0\0\0\0\0\0\0\0`\^D\0\0\^Q\0\f\0\M-@\M-k\^R\0\0\0\0\0\^X\^F\0\0\0\0\0\0\^N\
\^C\0\0\^Q\0\f\0\M^@\M-B\^R\0\0\0\0\0\M^P\0\0\0\0\0\0\0\M^X\^D\0\0\^R\0
\0\M^PL\0\0\0\0\0\0<\^C\0\0\0\0\0\0\M-*\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-;\^F\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-0\^B\0\0\^Q\0\f\0`\M->\^R\0\0\0\0\0\M^X\^A\0\0\
\0\0\0\0\M-_\^A\0\0\^Q\0\^R\0@!#\0\0\0\0\0\240\0\0\0\0\0\0\0005\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0H\^A\0\0\^R\0
\0000C\0\0\0\0\0\0$\0\0\0\0\0\0\0}\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0T\^F\0\0\^R\0
\0\M-`j\0\0\0\0\0\0006\0\0\0\0\0\0\0\M^U\^A\0\0\^R\0
\0\M^@D\0\0\0\0\0\0\M^L\^D\0\0\0\0\0\0\M-#\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\^C\
\0\0\^Q\0\f\0@\M-E\^R\0\0\0\0\0H\^C\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
v\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\^F\0\0\^R\0
\0\^Pg\0\0\0\0\0\0\M-t\0\0\0\0\0\0\0b\^A\0\0\^R\0
\0`C\0\0\0\0\0\0$\0\0\0\0\0\0\0S\^C\0\0\^Q\0\f\0\M-`\M-D\^R\0\0\0\0\0H\0\0\0\0\0\0\0\^?\^F\0\0\
\^R\0
\0\M-Pk\0\0\0\0\0\0\M-@\0\0\0\0\0\0\0N\^B\0\0\^Q\0\f\0@m\^R\0\0\0\0\0\M-(N\0\0\0\0\0\0@\0\0\0\
\^R\0
\0`8\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-L\^A\0\0\^R\0
\0pJ\0\0\0\0\0\0\M-z\0\0\0\0\0\0\0\M^G\^E\0\0\^R\0
\0\0`\0\0\0\0\0\0n\^A\0\0\0\0\0\0 \^B\0\0\^Q\0\f\0\0\M-j\^Q\0\0\0\0\0\240\^B\0\0\0\0\0\0\M-L\^E\
\0\0\^R\0\0\0\0\0\0\0\0\0\0\0
\0\0\0\0\0\0\0\M-`\^F\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-C\^F\0\0\^R\0\0\0\0\0\0\0\
\0\0\0\0\M-J\b\0\0\0\0\0\0\^T\a\0\0\^Q\0\M-q\M^?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Y\^D\0\0\^Q\0\^R\0\M-@)#\0\0\0\0\0000\^A\0\0\0\0\0\0\M-I\^D\
\0\0\^R\0
\0 V\0\0\0\0\0\0w\^B\0\0\0\0\0\0\b\^A\0\0\^R\0
\0\M-PB\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\M-Q\^F\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0z\^D\0\
\0\^Q\0\f\0\M-`\M-q\^R\0\0\0\0\0\M-0\^A\0\0\0\0\0\0<\^C\0\0\^Q\0\f\0`\M-C\^R\0\0\0\0\0\M^@\^A\0\
\0\0\0\0\0|\^A\0\0\^R\0
\0\M^PC\0\0\0\0\0\0002\0\0\0\0\0\0\0\M-%\^F\0\0\^R\0
\0\M-0m\0\0\0\0\0\0:\0\0\0\0\0\0\0M\^F\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^A\^C\0\0\
\^Q\0\f\0\240\M-H\^R\0\0\0\0\0\M-X!\0\0\0\0\0\0\M-I\^B\0\0\^Q\0\f\0\0\M-@\^R\0\0\0\0\0`\0\0\0\0\
\0\0\0~\^B\0\0\^Q\0\f\0@\M-<\^R\0\0\0\0\0\M-0\^A\0\0\0\0\0\0>\^D\0\0\^Q\0\f\0\M-`\M-j\^R\0\0\0\
\0\0\M-X\0\0\0\0\0\0\0\M-]\^E\0\0\^R\0
\0\M-Pc\0\0\0\0\0\0\M^H\0\0\0\0\0\0\0\M-a\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^W\
\^B\0\0\^Q\0\f\0\0\M->\^R\0\0\0\0\0H\0\0\0\0\0\0\0<\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0
\^E\0\0\^R\0
\0\M-0Y\0\0\0\0\0\0a\^B\0\0\0\0\0\0\^^\^E\0\0\^R\0
\0 \\\0\0\0\0\0\0\M-]\^A\0\0\0\0\0\0\M-w\^C\0\0\^Q\0\^R\0\240&#\0\0\0\0\0\M-P\0\0\0\0\0\0\0\M^K\
\^F\0\0\^R\0
\0\M^Pl\0\0\0\0\0\0\M-$\0\0\0\0\0\0\0\M^^\^E\0\0\^R\0
\0\M-`a\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-=\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\b\^D\0\
\0\^Q\0\^R\0\M^@'#\0\0\0\0\0\M-P\0\0\0\0\0\0\0\^_\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\
\^E\0\0\^R\0
\0 _\0\0\0\0\0\0o\0\0\0\0\0\0\0m\^F\0\0\^R\0
\0\M^Pk\0\0\0\0\0\0<\0\0\0\0\0\0\0\M-Z\^D\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0007\^B\0\
\0\^Q\0\f\0\240\M-l\^Q\0\0\0\0\0\240\M^@\0\0\0\0\0\0\M^V\^E\0\0\^R\0
\0\M^Pa\0\0\0\0\0\0L\0\0\0\0\0\0\0\M^S\0\0\0\^R\0
\0\M^P@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-8\^D\0\0\^R\0
\0\M^@R\0\0\0\0\0\0\M^R\^C\0\0\0\0\0\0003\^E\0\0\^R\0
\0\0^\0\0\0\0\0\0\M^W\0\0\0\0\0\0\0\M-}\^E\0\0\^R\0
\0\^Pe\0\0\0\0\0\0\M-x\^A\0\0\0\0\0\0\M-s\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\^F\0\
\0\^R\0
\0 k\0\0\0\0\0\0k\0\0\0\0\0\0\0\M-z\^A\0\0\^R\0
\0pK\0\0\0\0\0\0\M^T\0\0\0\0\0\0\0\M-,\^C\0\0\^Q\0\^R\0\0##\0\0\0\0\0 \^A\0\0\0\0\0\0\M-`\^B\0\
\0\^Q\0\f\0`\M-@\^R\0\0\0\0\0\M-H\^A\0\0\0\0\0\0\^^\^F\0\0\^R\0
\0\^Ph\0\0\0\0\0\0\M-T\0\0\0\0\0\0\0\M-'\^E\0\0\^R\0
\0\M-pa\0\0\0\0\0\0\M-`\^A\0\0\0\0\0\0%\^C\0\0\^Q\0\f\0 \M-C\^R\0\0\0\0\0000\0\0\0\0\0\0\0\M-w\
\^B\0\0\^Q\0\f\0@\M-B\^R\0\0\0\0\0000\0\0\0\0\0\0\0e\^B\0\0\^Q\0\f\0\0\M-<\^R\0\0\0\0\0000\0\0\
\0\0\0\0\0H\^E\0\0\^R\0
\0\240^\0\0\0\0\0\0z\0\0\0\0\0\0\0\M-2\^A\0\0\^R\0
\0\^PI\0\0\0\0\0\0U\^A\0\0\0\0\0\0\M-Z\^C\0\0\^Q\0\^R\0\M^@%#\0\0\0\0\0 \^A\0\0\0\0\0\0\M^N\^E\
\0\0\^R\0
\0pa\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\M-h\^D\0\0\^R\0
\0\240X\0\0\0\0\0\0\M^W\0\0\0\0\0\0\0\M-2\^F\0\0\^R\0\0\0\0\0\0\0\0\0\0\0-\0\0\0\0\0\0\0-\^D\0\
\0\^Q\0\^R\0`(#\0\0\0\0\0P\^A\0\0\0\0\0\0\M-(\^D\0\0\^R\0
\0\M-PO\0\0\0\0\0\0\M-"\^B\0\0\0\0\0\0 \^B\0\0\^Q\0\f\0\M-@\M-D\^Q\0\0\0\0\08%\0\0\0\0\0\0\^A\
\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\^E\0\0\^R\0
\0\M^P_\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x433000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13077575557120/0xbe4dc3ee000
28868 lua51 CALL mmap(0xbe4dc3ee000,0x8000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13077575557120/0xbe4dc3ee000
28868 lua51 CALL mmap(0xbe4dc4f5000,0x2b000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x7000)
28868 lua51 RET mmap 13077576634368/0xbe4dc4f5000
28868 lua51 CALL mmap(0xbe4dc620000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x32000)
28868 lua51 RET mmap 13077577859072/0xbe4dc620000
28868 lua51 CALL mmap(0xbe4dc720000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x32000)
28868 lua51 RET mmap 13077578907648/0xbe4dc720000
28868 lua51 CALL mmap(0xbe4dc820000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x32000)
28868 lua51 RET mmap 13077579956224/0xbe4dc820000
28868 lua51 CALL getentropy(0xbe4dc620000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL getentropy(0x7f7ffffbcbbc,4)
28868 lua51 RET getentropy 0
28868 lua51 CALL open(0xbe56423cfc3,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/libiconv.so.6.0"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbba30)
28868 lua51 STRU struct stat { dev=7, ino=155912, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=624208, atime=1443380769<"Sep 27 19:06:09 2015">.847847980, mtime=1442447054<"Sep 16 23:44:14 2015">, ctime=1442775458<"Sep 20 18:57:38 2015">.872684701, size=1090778, blocks=2176, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbab0,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0 /\0\0\0\0\0\0@\0\0\0\0\0\0\0X\M-Z\^O\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0\^Z\0\^W\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^N\M-9\^A\0\0\0\0\0\^N\M-9\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0 \M-9\^A\0\
\0\0\0\0 \M-9\^Q\0\0\0\0\0 \M-9\^Q\0\0\0\0\0P\M^?\r\0\0\0\0\0P\M^?\r\0\0\0\0\0\0\0\^P\0\0\0\0\0\
\^A\0\0\0\^F\0\0\0\0\M-@\^O\0\0\0\0\0\0\M-@/\0\0\0\0\0\0\M-@/\0\0\0\0\0\b\^X\0\0\0\0\0\0\b\^X\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\b\M-X\^O\0\0\0\0\0\b\M-X?\0\0\0\0\0\b\M-X?\0\0\0\
\0\0`\^A\0\0\0\0\0\0`\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0h\M-Y\^O\0\0\0\0\0h\M-YO\
\0\0\0\0\0h\M-YO\0\0\0\0\0\^T\0\0\0\0\0\0\0P\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\
\M-H\M-V\^O\0\0\0\0\0\M-H\M-V/\0\0\0\0\0\M-H\M-V/\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\
\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0X\M-8\^O\0\0\0\0\0X\M-8\^_\0\0\0\0\0X\M-8\^_\0\0\0\0\0\^X\0\0\0\0\
\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0`\M^G\^O\0\0\0\0\0`\M^G\^_\0\0\0\0\0`\
\M^G\^_\0\0\0\0\0\^\\v\0\0\0\0\0\0\^\\v\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0\
\M-@\^O\0\0\0\0\0\0\M-@/\0\0\0\0\0\0\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0@\0\0\0;\0\0\0<\0\0\0\^X\0\0\0$\0\0\0\0\0\0\0\^T\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\0\0\0\0\0\0\0\0/\0\0\0>\0\0\0\0\
\0\0\0003\0\0\0007\0\0\0&\0\0\0:\0\0\0\^P\0\0\0\^\\0\0\0=\0\0\0001\0\0\0\0\0\0\0(\0\0\0006\0\0\
\09\0\0\0005\0\0\0?\0\0\0-\0\0\0\^^\0\0\0%\0\0\0,\0\0\0.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\0\0\0\0\
\0\0\0\^[\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\^R\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0#\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0*\0\0\0\^V\0\0\0\0\0\0\0\^W\0\0\0\^Z\0\0\0\
)\0\0\0\0\0\0\0 \0\0\0\^Y\0\0\0"\0\0\0!\0\0\0+\0\0\0\0\0\0\0\0\0\0\0'\0\0\0000\0\0\08\0\0\0\^]\
\0\0\0004\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\0-\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0 /\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\0\
\M-9\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0 \M-9\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0`\M^G\^_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M^@\M^R\^_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\0\M-@/\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^C\0\^O\0\b\M-@/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0 \M-@/\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\^C\0\^S\0H\M-Y?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0X\M-Y?\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0h\M-YO\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^V\0\M^@\M-YO\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-^\0\0\0\^R\0\b\0`\M^\\^A\0\0\0\0\0\^X\^C\0\0\0\0\0\0h\^A\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Q\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-P\^A\0\0\
\^P\0\M-q\M^?h\M-Y?\0\0\0\0\0\0\0\0\0\0\0\0\0M\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0L\
\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^E\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0x\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0o\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0j\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^_\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-B\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0!\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-5\0\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M^U\^A\0\0\^R\0\b\0\240\M-5\^A\0\0\0\0\0\M-S\0\0\0\0\0\0\0\M^Y\0\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\^A\0\0\^R\0\b\0 \M-(\^A\0\0\0\0\0\M-J\b\0\0\0\0\0\0\
\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0\0-\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\M-J\0\0\0\^R\0\b\0@\M^K\^A\0\0\0\0\0\^P\0\0\0\0\0\0\0\M-D\^A\0\0\^P\0\M-q\M^?\b\M-X?\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-q\0\0\0\^R\0\b\0\M-p\M-0\^A\0\0\0\0\0\M-)\^D\0\0\0\0\0\0:\^A\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0v\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-4\^A\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^M\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\
\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0T\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\
\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-n\^A\0\0\^P\0\M-q\M^?|\M-YO\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-&\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-<\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0~\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0~\0\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0002\0\0\0\^R\0 \0\0\M-9\^A\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\^R\0\b\0\
\M^@\M^_\^A\0\0\0\0\0\M^X\b\0\0\0\0\0\0\M-g\^A\0\0\^P\0\M-q\M^?|\M-YO\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-U\^A\0\0\^P\0\M-q\M^?\M-8\M-YO\0\0\0\0\0\0\0\0\0\0\0\0\0b\0\0\0\^R\0\b\0P\M-a\0\0\0\0\0\0-\0\
\0\0\0\0\0\0(\^A\0\0\^Q\0\^U\0x\M-YO\0\0\0\0\0\^D\0\0\0\0\0\0\0\M^E\0\0\0\^R\0\b\0\M-@\M-e\0\0\
\0\0\0\0u\^A\0\0\0\0\0\0k\0\0\0\^R\0\b\0\M^P\M-a\0\0\0\0\0\0\M^B\^A\0\0\0\0\0\0F\^A\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^\\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Z\^A\0\
\0\^P\0\^U\0h\M-YO\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M--\
\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-S\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\M-Y\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\0_init\
\0__cxa_atexit\0_fini\0_Jv_RegisterClasses\0__stack_smash_handler\0libiconv\0libiconvlist\0qsor\
t\0strcmp\0libiconvctl\0__errno\0abort\0memcpy\0memset\0wcrtomb\0__mb_cur_max\0mbrtowc\0libicon\
v_close\0free\0iconv_canonicalize\0locale_charset\0libiconv_open_into\0libiconv_open\0malloc\0_\
libiconv_version\0nl_langinfo\0strlen\0getenv\0fdopen\0__isthreaded\0ungetc\0fscanf\0strlcpy\0f\
close\0__srget\0realloc\0libiconv_set_relocation_prefix\0strncmp\0strlcat\0__got_start\0__got_e\
nd\0__data_start\0_edata\0__bss_start\0\0\0\0\0\0\0 \M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-@0\0\0\0\
\0\0\0000\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-`0\0\0\0\0\0\0H\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\0001\
\0\0\0\0\0\0X\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\M^P3\0\0\0\0\0\0p\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\
\M-04\0\0\0\0\0\0\M^@\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0P5\0\0\0\0\0\0\M^X\M-@/\0\0\0\0\0\b\0\0\0\0\
\0\0\0\M^P5\0\0\0\0\0\0\M-(\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-@5\0\0\0\0\0\0\M-@\M-@/\0\0\0\0\0\
\b\0\0\0\0\0\0\0\0006\0\0\0\0\0\0\M-P\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\00006\0\0\0\0\0\0\M-h\M-@/\0\
\0\0\0\0\b\0\0\0\0\0\0\0p6\0\0\0\0\0\0\M-x\M-@/\0\0\0\0\0\b\0\0\0\0\0\0\00007\0\0\0\0\0\0\^P\
\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0p7\0\0\0\0\0\0 \M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-07\0\0\0\0\0\08\
\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-`7\0\0\0\0\0\0H\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0 8\0\0\0\0\0\0`\
\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0P8\0\0\0\0\0\0p\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0P9\0\0\0\0\0\0\M^H\
\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0\^P:\0\0\0\0\0\0\M^X\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0\240:\0\0\0\0\
\0\0\M-0\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0000;\0\0\0\0\0\0\M-@\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-@;\
\0\0\0\0\0\0\M-X\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\0@<\0\0\0\0\0\0\M-h\M-A/\0\0\0\0\0\b\0\0\0\0\0\0\
\0 =\0\0\0\0\0\0\0\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-0=\0\0\0\0\0\0\^P\M-B/\0\0\0\0\0\b\0\0\0\0\
\0\0\0\^P>\0\0\0\0\0\0(\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0`>\0\0\0\0\0\08\M-B/\0\0\0\0\0\b\0\0\0\0\
\0\0\0\M-@>\0\0\0\0\0\0P\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-pz\^A\0\0\0\0\0`\M-B/\0\0\0\0\0\b\0\0\
\0\0\0\0\0\M-Pw\^A\0\0\0\0\0h\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0Pw\^A\0\0\0\0\0x\M-B/\0\0\0\0\0\b\0\
\0\0\0\0\0\0\0?\0\0\0\0\0\0\M^H\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0000?\0\0\0\0\0\0\240\M-B/\0\0\0\0\
\0\b\0\0\0\0\0\0\0p?\0\0\0\0\0\0\M-0\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0\M-0?\0\0\0\0\0\0\M-H\M-B/\0\
\0\0\0\0\b\0\0\0\0\0\0\0\M-p?\0\0\0\0\0\0\M-X\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0\^P@\0\0\0\0\0\0\
\M-p\M-B/\0\0\0\0\0\b\0\0\0\0\0\0\0000@\0\0\0\0\0\0\0\M-C/\0\0\0\0\0\b\0\0\0\0\0\0\0p@\0\0\0\0\
\0\0\^X\M-C/\0\0\0\0\0\b\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x4fe000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13079184359424/0xbe53c234000
28868 lua51 CALL mmap(0xbe53c234000,0x1c000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13079184359424/0xbe53c234000
28868 lua51 CALL mmap(0xbe53c34f000,0xe1000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1b000)
28868 lua51 RET mmap 13079185518592/0xbe53c34f000
28868 lua51 CALL mmap(0xbe53c530000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xfc000)
28868 lua51 RET mmap 13079187488768/0xbe53c530000
28868 lua51 CALL mmap(0xbe53c631000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xfd000)
28868 lua51 RET mmap 13079188541440/0xbe53c631000
28868 lua51 CALL mmap(0xbe53c731000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0xfd000)
28868 lua51 RET mmap 13079189590016/0xbe53c731000
28868 lua51 CALL getentropy(0xbe53c530000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56423d03d,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/libintl.so.6.0"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbba30)
28868 lua51 STRU struct stat { dev=7, ino=155922, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=626864, atime=1443380769<"Sep 27 19:06:09 2015">.847847980, mtime=1442447231<"Sep 16 23:47:11 2015">, ctime=1442775461<"Sep 20 18:57:41 2015">.392710011, size=49076, blocks=96, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbab0,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\0"\0\0\0\0\0\0@\0\0\0\0\0\0\08\M^V\0\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0\^Z\0\^W\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-n\M^@\0\0\0\0\0\0\M-n\M^@\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\0\M^A\0\0\
\0\0\0\0\0\M^A\^P\0\0\0\0\0\0\M^A\^P\0\0\0\0\0X\^O\0\0\0\0\0\0X\^O\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\
\^A\0\0\0\^F\0\0\0X\M^P\0\0\0\0\0\0X\M^P \0\0\0\0\0X\M^P \0\0\0\0\0\M^X\^A\0\0\0\0\0\0\M^X\^A\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-p\M^Q\0\0\0\0\0\0\M-p\M^Q0\0\0\0\0\0\M-p\M^Q0\0\
\0\0\0\0\M-p\^B\0\0\0\0\0\0\M-p\^B\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-`\M^T\0\0\0\
\0\0\0\M-`\M^T@\0\0\0\0\0\M-`\M^T@\0\0\0\0\0|\0\0\0\0\0\0\0000\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\
\^B\0\0\0\^F\0\0\0\240\M^P\0\0\0\0\0\0\240\M^P \0\0\0\0\0\240\M^P \0\0\0\0\0P\^A\0\0\0\0\0\0P\
\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0@\M^P\0\0\0\0\0\0@\M^P\^P\0\0\0\0\0@\M^P\^P\0\
\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\^T\M^F\0\0\0\0\0\0\
\^T\M^F\^P\0\0\0\0\0\^T\M^F\^P\0\0\0\0\0\^\\^B\0\0\0\0\0\0\^\\^B\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\
\M-f\M-[\M-#e\^F\0\0\0X\M^P\0\0\0\0\0\0X\M^P \0\0\0\0\0X\M^P \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\
\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0p\0\0\0\0\0\0\0\0\0\0\0P\0\0\
\0C\0\0\0\0\0\0\0>\0\0\0m\0\0\0\0\0\0\0e\0\0\0J\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0V\0\0\0j\0\0\0\0\0\
\0\0/\0\0\0_\0\0\0\0\0\0\0\0\0\0\0\\\0\0\0X\0\0\0\^\\0\0\0b\0\0\0D\0\0\0\0\0\0\0\0\0\0\0]\0\0\0\
[\0\0\0\0\0\0\0\0\0\0\0W\0\0\0S\0\0\0R\0\0\0k\0\0\0\^S\0\0\0\0\0\0\0007\0\0\09\0\0\0G\0\0\0\0\0\
\0\0\^[\0\0\0\0\0\0\0d\0\0\0\0\0\0\0\0\0\0\0n\0\0\0\^R\0\0\0%\0\0\0\0\0\0\0c\0\0\0i\0\0\0\0\0\0\
\0002\0\0\0h\0\0\0;\0\0\0Y\0\0\0F\0\0\0003\0\0\0\0\0\0\0T\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
.\0\0\0K\0\0\0\0\0\0\0o\0\0\0l\0\0\0\0\0\0\0@\0\0\0g\0\0\0H\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0^\0\0\0\0\0\0\0`\0\0\0f\0\0\0\^]\0\0\0?\0\0\0\0\0\0\0Q\0\0\0*\0\0\0U\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\0\0\0\08\0\0\0a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^V\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\
\0\0(\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\0\0\0\0+\0\0\0\^T\
\0\0\0#\0\0\0\^U\0\0\0 \0\0\0"\0\0\0\0\0\0\0\^W\0\0\0\0\0\0\0\^Y\0\0\0001\0\0\0)\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0004\0\0\0$\0\0\0\0\0\0\0'\0\0\0-\0\0\0\0\0\0\0\0\0\0\0000\0\0\0\^^\0\0\0=\0\0\0\
\^Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0006\0\0\0E\0\0\0\0\0\0\0M\0\0\0\0\0\0\0!\0\0\
\0005\0\0\0&\0\0\0<\0\0\0I\0\0\0\0\0\0\0\^_\0\0\0\0\0\0\0B\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0N\0\0\
\0A\0\0\0:\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0L\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0@\^]\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^C\0\b\0\0"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0\M-`\M^@\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\0\M^A\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\^T\M^F\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\^C\0\f\0000\M^H\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0X\M^P \0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\^O\0`\M^P \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\M^@\M^P \0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^C\0\^S\0\M-@\M^T0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-P\M^T0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0\M-`\M^T@\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^V\0\
`\M^U@\0\0\0\0\0\0\0\0\0\0\0\0\0\M^C\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\^B\0\0\
\^R\0\b\0p\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M^Z\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-`\0\0\0\^R\0\b\0\M^@'\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\M-z\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0*\^A\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^R\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M^F\^A\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0~\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^D\0\0\^P\0\M-q\M^?\
\M-`\M^T0\0\0\0\0\0\0\0\0\0\0\0\0\0I\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Q\^A\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\b\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-!\^B\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-z\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-a\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-8\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\^A\0\0\^R\0\b\0PD\0\0\0\0\0\0@\
\^A\0\0\0\0\0\0\M^L\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0F\0\0\0 \0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0j\^C\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\M-D\^B\0\0\^R\0\b\0\M^P\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M^K\^B\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\^A\0\0\^R\0\b\0\M-@\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-U\^A\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^S\0\0\0\^Q\0\^V\0\0\M^V@\0\0\0\0\0\^D\0\0\0\0\0\
\0\0\M^E\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^L\^C\0\0\^R\0\b\0\M-px\0\0\0\0\0\0\
\M-]\0\0\0\0\0\0\0\M-N\^B\0\0\^R\0\b\0\0e\0\0\0\0\0\0\^V\0\0\0\0\0\0\0\M-_\^B\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-$\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-H\0\0\0\^R\0\b\
\0P\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-*\^C\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-S\0\0\0\0\0\0\0m\^A\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^A\0\0\^R\0\b\0\M-0'\0\0\0\0\0\0
\0\0\0\0\0\0\0\M-:\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\^B\0\0\^R\0\0\0\0\0\0\0\0\0\
\0\0\M-J\b\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^T\^A\0\0\^R\0\^F\0@\^]\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0m\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\^A\0\0\^R\0\b\
\0\M-@'\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-}\^C\0\0\^P\0\M-q\M^?\M-p\M^Q0\0\0\0\0\0\0\0\0\0\0\0\0\0\
g\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^?\0\0\0\^R\0\b\0\M-0\M^@\0\0\0\0\0\0\^E\0\0\
\0\0\0\0\0\M-V\^B\0\0\^R\0\b\0\240\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0\M-g\^B\0\0\^P\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\M-@\0\0\0\^R\0\b\0`'\0\0\0\0\0\0\^[\0\0\0\0\0\0\0P\^B\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0y\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\^B\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^D\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0U\0\0\0 \0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Z\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-M\^A\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-s\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0r\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-w\0\0\0\^R\0\b\0\240'\0\0\0\0\0\0\^O\0\0\0\0\0\0\0\M-+\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-%\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'\^D\0\0\^P\0\M-q\M^?\\\M^U\
@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-I\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0*\^B\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Z\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0=\^C\0\0 \
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Q\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0k\0\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-]\^C\0\0\^Q\0\^U\0X\M^U@\0\0\0\0\0\^D\0\0\0\0\0\0\
\0\^B\^B\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0t\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-)\^B\0\0\^R\0\b\0\M-`d\0\0\0\0\0\0\^P\0\0\0\0\0\0\0,\0\0\0\^R\0 \0\M-`\M^@\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0W\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&\^C\0\0 \0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M-V\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^D\0\0\^P\0\M-q\
\M^?\\\M^U@\0\0\0\0\0\0\0\0\0\0\0\0\0\^N\^D\0\0\^P\0\M-q\M^?\^P\M^V@\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^P\^C\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\^B\0\0\^R\0\0\0\0\0\0\0\0\0\0\0-\0\0\0\0\0\0\
\0\M-g\^A\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"\^A\0\0\^R\0\b\0\M-P\M^@\0\0\0\0\0\0\^E\0\
\0\0\0\0\0\0\M-h\0\0\0\^R\0\b\0`\M^@\0\0\0\0\0\0\^E\0\0\0\0\0\0\0002\^B\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-<\^B\0\0\^R\0\b\0\M-pd\0\0\0\0\0\0\v\0\0\0\0\0\0\0\M-E\^A\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\^C\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0~\0\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M->\^A\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\^D\0\0\^P\0\^U\0\M-`\M^T@\0\0\0\0\0\0\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x40a000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13078984208384/0xbe530353000
28868 lua51 CALL mmap(0xbe530353000,0x9000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13078984208384/0xbe530353000
28868 lua51 CALL mmap(0xbe53045b000,0x2000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x8000)
28868 lua51 RET mmap 13078985289728/0xbe53045b000
28868 lua51 CALL mmap(0xbe53055c000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x9000)
28868 lua51 RET mmap 13078986342400/0xbe53055c000
28868 lua51 CALL mmap(0xbe53065c000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x9000)
28868 lua51 RET mmap 13078987390976/0xbe53065c000
28868 lua51 CALL mmap(0xbe53075c000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x9000)
28868 lua51 RET mmap 13078988439552/0xbe53075c000
28868 lua51 CALL getentropy(0xbe53055c058,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe53065c000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe53c631000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mprotect(0xbe576209000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077077139456/0xbe4be89a000
28868 lua51 CALL open(0xbe56ed77218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/hashes.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe56ed77a98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/hashes.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe572082a18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/hashes/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5145ce898,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/hashes.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d71cec18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/hashes/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4be89add8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/hashes.so"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1d818c0,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbca40)
28868 lua51 STRU struct stat { dev=7, ino=211906, mode=drwxr-xr-x , nlink=3, uid=0<"root">, gid=0<"wheel">, rdev=864031, atime=1443380783<"Sep 27 19:06:23 2015">.526878136, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=1536, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x5000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076903591936/0xbe4b4318000
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(5,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 1960/0x7a8
28868 lua51 CALL getdents(5,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/hashes.so"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbbaa0)
28868 lua51 STRU struct stat { dev=7, ino=211921, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864096, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=10743, blocks=24, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0x7f7ffffbbb20,0x1000)
28868 lua51 GIO fd 5 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0`\r\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-P\^[\0\0\0\0\
\0\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0N\^U\0\0\0\0\0\0N\^U\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0N\^U\0\0\0\0\0\0N\
\^U\^P\0\0\0\0\0N\^U\^P\0\0\0\0\0\M-Z\^B\0\0\0\0\0\0\M-Z\^B\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\
\0\^F\0\0\0(\^X\0\0\0\0\0\0(\^X \0\0\0\0\0(\^X \0\0\0\0\0\M-X\^A\0\0\0\0\0\0\M-X\^A\0\0\0\0\0\0\
\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0\^Z\0\0\0\0\0\0\0\^Z0\0\0\0\0\0\0\^Z0\0\0\0\0\0\M-`\0\0\0\
\0\0\0\0\M-`\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-`\^Z\0\0\0\0\0\0\M-`\^Z@\0\0\0\
\0\0\M-`\^Z@\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M-0\
\^X\0\0\0\0\0\0\M-0\^X \0\0\0\0\0\M-0\^X \0\0\0\0\0P\^A\0\0\0\0\0\0P\^A\0\0\0\0\0\0\b\0\0\0\0\0\
\0\0\^D\0\0\0\^D\0\0\0\^P\^X\0\0\0\0\0\0\^P\^X\^P\0\0\0\0\0\^P\^X\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\
\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-D\^U\0\0\0\0\0\0\M-D\^U\^P\0\0\0\0\0\M-D\
\^U\^P\0\0\0\0\0|\0\0\0\0\0\0\0|\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0(\^X\0\0\0\
\0\0\0(\^X \0\0\0\0\0(\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0(\0\0\0#\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^O\0\0\0\^[\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\0 \
\0\0\0\^V\0\0\0"\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0\^]\0\0\0%\0\0\0\0\0\0\0\0\0\0\0\^^\0\0\0\
\^R\0\0\0!\0\0\0$\0\0\0\0\0\0\0'\0\0\0\^\\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^T\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\^W\0\0\0\^S\0\0\0\^_\0\0\0\^X\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0000\f\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0`\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0@\^U\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0N\^U\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\M-D\^U\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\^C\0\f\0@\^V\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0(\^X \0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^O\0000\^X \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0@\^X \0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\^S\0\M-@\^Z0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\M-P\^Z0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^C\0\^U\0\M-`\^Z@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-9\0\0\0\^R\0\0\0\0\0\0\0\0\
\0\0\0\M-8\0\0\0\0\0\0\0\M-h\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-3\0\0\0\0\0\0\0L\0\0\0\^R\0\b\0\0\
\^O\0\0\0\0\0\0Q\0\0\0\0\0\0\0\^R\^A\0\0\^P\0\M-q\M^?\M-`\^Z0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-=\0\0\
\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Y\
\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0|\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0000\f\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^F\^A\0\0\^P\0\M-q\M^?\0\^Z0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^L\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0Z\0\0\0\^R\0\b\0`\^O\0\0\0\0\0\0[\0\0\0\0\0\0\0\M-S\0\0\0\^R\0\0\0\0\0\0\0\0\
\0\0\0\M-9\0\0\0\0\0\0\0%\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0000\^A\0\0\^P\0\M-q\M^?\
\M-x\^Z@\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\0\0\^R\0 \0@\^U\0\0\0\0\0\0\0\0\0\0\0\0\0\0R\0\0\
\0\^Q\0\^U\0\M-p\^Z@\0\0\0\0\0\b\0\0\0\0\0\0\0\M-Z\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-9\0\0\0\0\0\
\0\0)\^A\0\0\^P\0\M-q\M^?\M-x\^Z@\0\0\0\0\0\0\0\0\0\0\0\0\0\^W\^A\0\0\^P\0\M-q\M^?\M-x\^Z@\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-a\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-3\0\0\0\0\0\0\0\^\\^A\0\0\^P\0\^U\0\
\M-`\^Z@\0\0\0\0\0\0\0\0\0\0\0\0\0n\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-+\0\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-o\0\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0\M-8\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\0_init\0__cxa_atexi\
t\0_fini\0_Jv_RegisterClasses\0toHex\0hex_tab\0luaopen_util_hashes\0luaL_register\0lua_pushlstr\
ing\0lua_settable\0luaL_checklstring\0lua_toboolean\0MD5\0__stack_smash_handler\0SHA512\0SHA384\
\0SHA256\0SHA224\0SHA1\0libcrypto.so.36.0\0__got_start\0__got_end\0__data_start\0_edata\0__bss_\
start\0\0\0\0\0@\^X \0\0\0\0\0\b\0\0\0\0\0\0\0t\^U\^P\0\0\0\0\0H\^X \0\0\0\0\0\b\0\0\0\0\0\0\0`\
\^T\0\0\0\0\0\0P\^X \0\0\0\0\0\b\0\0\0\0\0\0\0y\^U\^P\0\0\0\0\0X\^X \0\0\0\0\0\b\0\0\0\0\0\0\0p\
\^S\0\0\0\0\0\0`\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\M^@\^U\^P\0\0\0\0\0h\^X \0\0\0\0\0\b\0\0\0\0\0\0\
\0\M^@\^R\0\0\0\0\0\0p\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\M^G\^U\^P\0\0\0\0\0x\^X \0\0\0\0\0\b\0\0\0\
\0\0\0\0\M^P\^Q\0\0\0\0\0\0\M^@\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\M^N\^U\^P\0\0\0\0\0\M^H\^X \0\0\0\
\0\0\b\0\0\0\0\0\0\0\240\^P\0\0\0\0\0\0\M^P\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\M^U\^U\^P\0\0\0\0\0\
\M^X\^X \0\0\0\0\0\b\0\0\0\0\0\0\0\M-@\^O\0\0\0\0\0\0\M-(\^Z0\0\0\0\0\0\b\0\0\0\0\0\0\0\M-h\^Z@\
\0\0\0\0\0\M-h\^Z@\0\0\0\0\0\b\0\0\0\0\0\0\0\M-h\^Z@\0\0\0\0\0\M-p\^Z@\0\0\0\0\0\b\0\0\0\0\0\0\
\0c\^U\^P\0\0\0\0\0\240\^Z0\0\0\0\0\0\^F\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\M-0\^Z0\0\0\0\0\0\^F\0\
\0\0\^^\0\0\0\0\0\0\0\0\0\0\0\M-8\^Z0\0\0\0\0\0\^F\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\^X\^Z0\0\0\0\0\
\0\a\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0 \^Z0\0\0\0\0\0\a\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0(\^Z0\0\0\0\0\
\0\a\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0000\^Z0\0\0\0\0\0\a\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\08\^Z0\0\0\
\0\0\0\a\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0@\^Z0\0\0\0\0\0\a\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0H\^Z0\0\
\0\0\0\0\a\0\0\0\^T\0\0\0\0\0\0\0\0\0\0\0P\^Z0\0\0\0\0\0\a\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0X\^Z0\
\0\0\0\0\0\a\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0`\^Z0\0\0\0\0\0\a\0\0\0\^Z\0\0\0\0\0\0\0\0\0\0\0h\^Z\
0\0\0\0\0\0\a\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0p\^Z0\0\0\0\0\0\a\0\0\0\^_\0\0\0\0\0\0\0\0\0\0\0x\
\^Z0\0\0\0\0\0\a\0\0\0"\0\0\0\0\0\0\0\0\0\0\0\M^@\^Z0\0\0\0\0\0\a\0\0\0$\0\0\0\0\0\0\0\0\0\0\0\
\M^H\^Z0\0\0\0\0\0\a\0\0\0%\0\0\0\0\0\0\0\0\0\0\0\M^P\^Z0\0\0\0\0\0\a\0\0\0&\0\0\0\0\0\0\0\0\0\
\0\0\M^X\^Z0\0\0\0\0\0\a\0\0\0'\0\0\0\0\0\0\0\0\0\0\0H\M^C\M-l\b\M-h\M-g\^A\0\0H\M^C\M-D\b\M-C\
\0\0\M^?5\M-B\r0\0\M^?%\M-D\r0\0\M^P\M^P\M^P\M^P\M^?%\M-B\r0\0h\0\0\0\0\M-i\M-`\M^?\M^?\M^?\M^?\
%\M-:\r0\0h\^A\0\0\0\M-i\M-P\M^?\M^?\M^?\M^?%\M-2\r0\0h\^B\0\0\0\M-i\M-@\M^?\M^?\M^?\M^?%\M-*\r\
0\0h\^C\0\0\0\M-i\M-0\M^?\M^?\M^?\M^?%\M-"\r0\0h\^D\0\0\0\M-i\240\M^?\M^?\M^?\M^?%\M^Z\r0\0h\^E\
\0\0\0\M-i\M^P\M^?\M^?\M^?\M^?%\M^R\r0\0h\^F\0\0\0\M-i\M^@\M^?\M^?\M^?\M^?%\M^J\r0\0h\a\0\0\0\
\M-ip\M^?\M^?\M^?\M^?%\M^B\r0\0h\b\0\0\0\M-i`\M^?\M^?\M^?\M^?%z\r0\0h \0\0\0\M-iP\M^?\M^?\M^?\
\M^?%r\r0\0h
\0\0\0\M-i@\M^?\M^?\M^?\M^?%j\r0\0h\v\0\0\0\M-i0\M^?\M^?\M^?\M^?%b\r0\0h\f\0\0\0\M-i \M^?\M^?\
\M^?\M^?%Z\r0\0h\r\0\0\0\M-i\^P\M^?\M^?\M^?\M^?%R\r0\0h\^N\0\0\0\M-i\0\M^?\M^?\M^?\M^?%J\r0\0h\
\^O\0\0\0\M-i\M-p\M-~\M^?\M^?\M^?%B\r0\0h\^P\0\0\0\M-i\M-`\M-~\M^?\M^?UH\M^I\M-eATSH\M^C\M-l\^P\
H\M^K\^]N\r0\0H\M^C\M-{\M^?t5H\M^M\^EA\r0\0L\M^M$\M-XH\M^C\M-k\^A\M-k\^Ufff\M^Pff\M^PI\M^K\^D$H\
\M^C\M-k\^AI\M^C\M-l\b\M^?\M-PH\M^C\M-{\M^?u\M-lH\M^C\M-D\^P[A\\\M-I\M-CH\M^C=\^S\r0\0\0t\M-mH\
\M^M\r\^B\r0\0\M-:\^A\0\0\0H\M^I\M-HH\M^C\M-B\^AH\M^C<\M-Q\0u\M-uL\M^Md\M-P\M-xH\M^MZ\M-~\M-k\
\M-Bfff\M^PUH\M^I\M-eSH\M^C\M-l\^XH\M^K\^E\M-h\f0\0H\M^E\M-@t\^ZH\M^M\^]\M-\\f0\0fff\M^P\M^?\
\M-PH\M^KC\bH\M^C\M-C\bH\M^E\M-@u\M-qH\M^C\M-D\^X[\M-I\M-Cfff\M^Pff\M^Pff\M^PUH\M^I\M-eH\M^C\
\M-l\^P\M^K\^E\M-2\f@\0\M^E\M-@u0H\M^C=\M-v \0\0\M-G\^E\M^\\f@\0\^A\0\0\0t\^VH\M^C=j\f0\0\
\0t\fH\M^M=\M-Y \0\M-h\M-d\M-~\M^?\M^?\M-I\M-i\M-~\M-~\M^?\M^?\M-I\M-Cfff\M^Pfff\M^Pfff\M^PUH\
\M^I\M-eH\M^C\M-l\^P\M^K\^Uf\f@\0\M^E\M-Ru.H\M^C=\^V\f0\0\0\M-G\^EP\f@\0\^A\0\0\0t\^OH\M^K\^E\v\
\f0\0H\M^K8\M-h\M-k\M-}\M^?\M^?\M-I\M-i5\M^?\M^?\M^?ff\M^Pf\M^P\M-I\M-Cfff\M^Pfff\M^Pff\M^Pff\
\M^PUH\M^K\r\M-`\v0\0H\M^I\M-e\M-I\M-i\M-o\M-}\M^?\M^?fff\M^Pfff\M^Pfff\M^Pff\M^PUH\M^K\^U\M-@\
\v0\0001\M-vH\M^I\M-e\M-I\M-i\M-}\M-}\M^?\M^?\M^P\M^P\M^P\M^P\M^P\M^P\M^P\M^P\M^P\M^P\M^P\M^P\
\M^P\M^E\M-vI\M^I\M-S~HL\M^K\r\M-"\v0\0L\M^MR\^AE1\M-@\^O\M-6\aI\M^K\^QC\M^M\f\0A\M^C\M-@\^AHc\
\M-I\M-@\M-x\^D\M^C\M-`\^O\^O\M-6\^D\^PB\M^H\^D\^YH\^O\M->\aH\M^C\M-G\^AI\M^K\^Q\M^C\M-`\^OA9\
\M-p\^O\M-6\^D\^PB\M^H\^D\^Qu\M-F\M-s\M-Cfff\M^Pfff\M^Pfff\M^Pff\M^PSH\M^M\^U\M-X\b \0H\M^M5\
\M-_\^E\^P\0H\M^I\M-{H\M^C\M-l\^P\M-h\M-%\M-}\M^?\M^?H\M^M5\M-S\^E\^P\0H\M^I\M-_\M-:\a\0\0\0\
\M-h!\M-}\M^?\M^?H\M^M5\M-G\^E\^P\0H\M^I\M-_\M-:\^E\0\0\0\M-h\r\M-}\M^?\M^?H\M^I\M-_\M->\M-}\
\M^?\M^?\M^?\M-h \M-}\M^?\M^?H\M^C\M-D\^P\M-8\^A\0\0\0[\M-Cff\M^Pf\M^PH\M^I\\$\M-`H\M^Il$\M-h\
\M->\^A\0\0\0L\M^Id$\M-pL\M^Il$\M-xH\M^C\M-lxH\M^MT$\bH\M^I\M-}L\M^Ml$0H\M^K\^E7\b \0H\M^ID$H1\
\M-@\M-h\M-#\M-|\M^?\M^?\M->\^B\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x402000,0<PROT_NONE>,0x2<MAP_PRIVATE>,5,0)
28868 lua51 RET mmap 13079812534272/0xbe561947000
28868 lua51 CALL mmap(0xbe561947000,0x2000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0)
28868 lua51 RET mmap 13079812534272/0xbe561947000
28868 lua51 CALL mmap(0xbe561a48000,0x1000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1000)
28868 lua51 RET mmap 13079813586944/0xbe561a48000
28868 lua51 CALL mmap(0xbe561b48000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1000)
28868 lua51 RET mmap 13079814635520/0xbe561b48000
28868 lua51 CALL mmap(0xbe561c48000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1000)
28868 lua51 RET mmap 13079815684096/0xbe561c48000
28868 lua51 CALL mmap(0xbe561d48000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,5,0x1000)
28868 lua51 RET mmap 13079816732672/0xbe561d48000
28868 lua51 CALL getentropy(0xbe561b48828,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL getentropy(0xbe4cf2724a0,256)
28868 lua51 RET getentropy 0
28868 lua51 CALL mprotect(0xbe561c48000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078913007616/0xbe52bf6c000
28868 lua51 CALL open(0xbe572082f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/configmanager.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe572082f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/configmanager.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211736, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863244, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.449530876, size=7297, blocks=16, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079617916928/0xbe555fad000
28868 lua51 CALL read(5,0xbe555fad000,0x4000)
28868 lua51 GIO fd 5 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Florian Zeitz, Kim Alvefur, Matthew Wild, Waqas Hussain
local _G = _G;
local setmetatable, rawget, rawset, io, error, dofile, type, pairs, table =
setmetatable, rawget, rawset, io, error, dofile, type, pairs, table;
local format, math_max = string.format, math.max;
local fire_event = metronome and metronome.events.fire_event or function () end;
local envload = require"util.envload".envload;
local lfs = require "lfs";
local path_sep = package.config:sub(1,1);
module "configmanager"
local parsers = {};
local config_mt = { __index = function (t, k) return rawget(t, "*"); end};
local config = setmetatable({ ["*"] = {} }, config_mt);
local host_mt = { };
function section_mt(section_name)
return {
__index = function (t, k)
local section = rawget(config["*"], section_name);
if not section then return nil; end
return section[k];
end
};
end
function getconfig()
return config;
end
function get(host, key, old_key)
if key == "core" then key = old_key; end
return config[host][key];
end
function is_host_defined(host)
if host == "*" then
return false;
else
if rawget(config, host) then return true; else return false; end
end
end
local function set(config, host, key, value)
if host and key then
local hostconfig = rawget(config, host);
if not hostconfig then
hostconfig = rawset(config, host, setmetatable({}, host_mt))[host];
end
hostconfig[key] = value;
return true;
end
return false;
end
function _M.set(host, key, value, old_value)
if key == "core" then key, value = value, old_value; end
return set(config, host, key, value);
end
do
local rel_path_start = ".."..path_sep;
function resolve_relative_path(parent_path, path)
if path then
parent_path = parent_path:gsub("%"..path_sep.."+$", "");
path = path:gsub("^%.%"..path_sep.."+", "");
local is_relative;
if path_sep == "/" and path:sub(1,1) ~= "/" then
is_relative = true;
elseif path_sep == "\\\\" and (path:sub(1,1) ~= "/" and (path:sub(2,3) \
~= ":\\\\" or path:sub(2,3) ~= ":/")) then
is_relative = true;
end
if is_relative then
return parent_path..path_sep..path;
end
end
return path;
end
end
local function glob_to_pattern(glob)
return "^"..glob:gsub("[%p*?]", function (c)
if c == "*" then
return ".*";
elseif c == "?" then
return ".";
else
return "%"..c;
end
end).."$";
end
function load(filename, format)
format = format or filename:match("%w+$");
if parsers[format] and parsers[format].load then
local f, err = io.open(filename);
if f then
local new_config = setmetatable({ ["*"] = {} }, config_mt);
local ok, err = parsers[format].load(f:read("*a"), filename, new_config\
);
f:close();
if ok then
config = new_config;
fire_event("config-reloaded", { filename = filename, format = f\
ormat, config = config });
end
return ok, "parser", err;
end
return f, "file", err;
end
if not format then
return nil, "file", "no parser specified";
else
return nil, "file", "no parser for "..(format);
end
end
function save(filename, format)
end
function addparser(format, parser)
if format and parser then
parsers[format] = parser;
end
end
function _M.parsers()
local p = {};
for format in pairs(parsers) do
table.insert(p, format);
end
return p;
end
do
local pcall, setmetatable = _G.pcall, _G.setmetatable;
local rawget = _G.rawget;
parsers.lua = {};
function parsers.lua.load(data, config_file, config)
local env;
-- The ' = true' are needed so as not to set off __newindex when we assign the \
functions below
env = setmetatable({
Host = true, host = true, VirtualHost = true,
Component = true, component = true,
Include = true, include = true, RunScript = true }, {
__index = function (t, k) return raw"
28868 lua51 GIO fd 5 read 3201 bytes
"get(_G, k) end,
__newindex = function (t, k, v) set(config, env.__currenthost o\
r "*", k, v); end
});
rawset(env, "__currenthost", "*")
function env.VirtualHost(name)
if rawget(config, name) and rawget(config[name], "component_module") th\
en
error(format("Host %q clashes with previously defined %s Compon\
ent %q, for services use a sub-domain like conference.%s",
name, config[name].component_module:gsub("^%a+$", { com\
ponent = "external", muc = "MUC"}), name, name), 0);
end
rawset(env, "__currenthost", name);
-- Needs at least one setting to logically exist :)
set(config, name or "*", "defined", true);
return function (config_options)
rawset(env, "__currenthost", "*");
for option_name, option_value in pairs(config_options) do
set(config, name or "*", option_name, option_value);
end
end;
end
env.Host, env.host = env.VirtualHost, env.VirtualHost;
function env.Component(name)
if rawget(config, name) and rawget(config[name], "defined") and not raw\
get(config[name], "component_module") then
error(format("Component %q clashes with previously defined Host\
%q, for services use a sub-domain like conference.%s",
name, name, name), 0);
end
set(config, name, "component_module", "component");
set(config, name, "load_global_modules", false);
rawset(env, "__currenthost", name);
local function handle_config_options(config_options)
rawset(env, "__currenthost", "*");
for option_name, option_value in pairs(config_options) do
set(config, name or "*", option_name, option_value);
end
end
return function(module)
if type(module) == "string" then
set(config, name, "component_module", module);
return handle_config_options;
end
return handle_config_options(module);
end
end
env.component = env.Component;
function env.Include(file, wildcard)
if file:match("[*?]") then
local path_pos, glob = file:match("()([^"..path_sep.."]+)$");
local path = file:sub(1, math_max(path_pos-2,0));
local config_path = config_file:gsub("[^"..path_sep.."]+$", "")\
;
if #path > 0 then
path = resolve_relative_path(config_path, path);
else
path = config_path;
end
local patt = glob_to_pattern(glob);
for f in lfs.dir(path) do
if f:sub(1,1) ~= "." and f:match(patt) then
env.Include(path..path_sep..f);
end
end
else
local file = resolve_relative_path(config_file:gsub("[^"..path_\
sep.."]+$", ""), file);
local f, err = io.open(file);
if f then
local ret, err = parsers.lua.load(f:read("*a"), file, c\
onfig);
if not ret then error(err:gsub("%[string.-%]", file), 0\
); end
end
if not f then error("Error loading included "..file..": "..err,\
0); end
return f, err;
end
end
env.include = env.Include;
function env.RunScript(file)
return dofile(resolve_relative_path(config_file:gsub("[^"..path_sep.."]\
+$", ""), file));
end
local chunk, err = envload(data, "@"..config_file, env);
if not chunk then
return nil, err;
end
local ok, err = pcall(chunk);
if not ok then
return nil, err;
end
return true;
end
end
return _M;
"
28868 lua51 RET read 7297/0x1c81
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078768533504/0xbe5235a4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079196880896/0xbe53ce25000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080643973120/0xbe593233000
28868 lua51 CALL read(5,0xbe555fad000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe572082b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/envload.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe572082b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/envload.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211918, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864079, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=963, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0xbe555fad000,0x4000)
28868 lua51 GIO fd 5 read 963 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2012, Florian Zeitz
local load, loadstring, loadfile, setfenv = load, loadstring, loadfile, setfenv;
local envload;
local envloadfile;
if setfenv then
function envload(code, source, env)
local f, err = loadstring(code, source);
if f and env then setfenv(f, env); end
return f, err;
end
function envloadfile(file, env)
local f, err = loadfile(file);
if f and env then setfenv(f, env); end
return f, err;
end
else
function envload(code, source, env)
return load(code, source, nil, env);
end
function envloadfile(file, env)
return loadfile(file, nil, env);
end
end
return { envload = envload, envloadfile = envloadfile };
"
28868 lua51 RET read 963/0x3c3
28868 lua51 CALL read(5,0xbe555fad000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56ed77618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/auxiliary.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56ed77618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/auxiliary.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211909, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864058, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=2821, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077131108352/0xbe4c1c12000
28868 lua51 CALL read(5,0xbe4c1c12000,0x4000)
28868 lua51 GIO fd 5 read 2821 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
-- This contains the auxiliary utility functions for Metronome's env.
local CFG_SOURCEDIR, metronome = _G.CFG_SOURCEDIR, _G.metronome;
local open, popen = io.open, io.popen;
local char, next, pairs, tonumber, type = string.char, next, pairs, tonumber, type;
module "auxiliary"
function read_version()
local version_file = open((CFG_SOURCEDIR or ".").."/metronome.version");
if version_file then
metronome.version = version_file:read("*a"):gsub("%s*$", "");
version_file:close();
else
metronome.version = "unknown";
end
end
function get_openssl_version()
-- will possibly work only on linux likes which have a globally installed
-- openssl.
local version = popen("openssl version"):read();
if version then
version = version:match("^LibreSSL%s([%d%p]+)"):gsub("%p", "");
return tonumber(version);
else
return false;
end
end
function ripairs(t)
local function reverse(t,index)
index = index-1;
local value = t[index];
if value == nil then return value; end
return index, value;
end
return reverse, t, #t+1;
end
function clone_table(t)
local clone = {};
for key, value in pairs(t) do
if type(value) == "table" then
clone[key] = clone_table(value);
else
clone[key] = value;
end
end
return clone;
end
function clean_table(t)
for key, value in pairs(t) do
if type(value) == "table" and not next(value) then
t[key] = nil;
elseif type(value) == "table" then
clean_table(value);
if not next(value) then t[key] = nil; end
end
end
end
function escape_magic_chars(string)
-- escape magic characters
string = string:gsub("%(", "%%(")
string = string:gsub("%)", "%%)")
string = string:gsub("%.", "%%.")
string = string:gsub("%%", "%%")
string = string:gsub("%+", "%%+")
string = string:gsub("%-", "%%-")
string = string:gsub("%*", "%%*")
string = string:gsub("%?", "%%?")
string = string:gsub("%[", "%%[")
string = string:gsub("%]", "%%]")
string = string:gsub("%^", "%%^")
string = string:gsub("%$", "%%$")
return string
end
function html_escape(t)
if t then
t = t:gsub("<", "&lt;");
t = t:gsub(">", "&gt;");
t = t:gsub("(http://[%a%d@%.:/&%?=%-_#%%~]+)", function(h)
h = h:gsub("+", " ");
h = h:gsub("%%(%x%x)", function(h) return char(tonumber(h,16)) end);
h = h:gsub("\\r\\n", "\\n");
return "<a href='" .. h .. "'>" .. h .. "</a>";
end);
t = t:gsub("\\n", "<br />");
t = t:gsub("%%", "%%%%");
else
t = "";
end
return t;
end
function load_file(f, mode)
local file, err, ret = open(f, mode or "r");
if file then
ret = file:read("*a");
file:close();
end
return ret, err;
end
return _M;
"
28868 lua51 RET read 2821/0xb05
28868 lua51 CALL read(5,0xbe4c1c12000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079340470272/0xbe545715000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54c107218,0<O_RDONLY>)
28868 lua51 NAMI "/etc/metronome/metronome.cfg.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbcef8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe54c107218,0<O_RDONLY>)
28868 lua51 NAMI "/etc/metronome/metronome.cfg.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbca00)
28868 lua51 STRU struct stat { dev=0, ino=14260, mode=-rw-r--r-- , nlink=1, uid=0<"root">, gid=1000<"vagrant">, rdev=57504, atime=1443380778<"Sep 27 19:06:18 2015">.246993402, mtime=1443380778<"Sep 27 19:06:18 2015">.246993402, ctime=1443380778<"Sep 27 19:06:18 2015">.246993402, size=4525, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079204130816/0xbe53d50f000
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 GIO fd 5 read 4096 bytes
"-- ** Metronome's config file example **
--
-- The format is exactly equal to Prosody's:
--
-- Lists are written { "like", "this", "one" }
-- Lists can also be of { 1, 2, 3 } numbers, etc.
-- Either commas, or semi-colons; may be used as seperators.
--
-- A table is a list of values, except each value has a name. An
-- example would be:
--
-- ssl = { key = "keyfile.key", certificate = "certificate.crt" }
--
-- Tip: You can check that the syntax of this file is correct when you have finished
-- by running: luac -p metronome.cfg.lua
-- If there are any errors, it will let you know what and where they are, otherwise it
-- will keep quiet.
-- Global settings go in this section
-- This is the list of modules Metronome will load on startup.
-- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too.
modules_enabled = {
-- Generally required
"roster"; -- Allow users to have a roster. Recommended.
"saslauth"; -- Authentication for clients. Recommended if you want to l\
og in.
"tls"; -- Add support for secure TLS on c2s/s2s connections
"disco"; -- Service discovery
-- Not essential, but recommended
"private"; -- Private XML storage (for room bookmarks, etc.)
"vcard"; -- Allow users to set vCards
"pep"; -- Allows setting of mood, tune, etc.
"posix"; -- POSIX functionality, sends server to background, enables sy\
slog, etc.
"bidi"; -- Enables Bidirectional Server-to-Server Streams.
-- Nice to have
"version"; -- Replies to server version requests
"uptime"; -- Report how long server has been running
"time"; -- Let others know the time here on this server
"ping"; -- Replies to XMPP pings with pongs
"register"; -- Allow users to register on this server using a client an\
d change passwords
"stream_management"; -- Allows clients and servers to use Stream Manage\
ment
"message_carbons"; -- Allows clients to enable carbon copies of message\
s
"lastactivity"; -- Enables clients to know the last presence status of \
an user
"adhoc_cm"; -- Allow to set client certificates to login through SASL E\
xternal via adhoc
"admin_adhoc"; -- administration adhoc commands
-- Other specific functionality
--"admin_telnet"; -- administration console, telnet to port 5582
--"admin_web"; -- administration web interface
--"bosh"; -- Enable support for BOSH clients, aka "XMPP over Bidirectio\
nal Streams over Synchronous HTTP"
"compression"; -- Allow clients to enable Stream Compression
--"incidents_handling"; -- Enable Incidents Handling support (can be ad\
ministered via adhoc commands)
--"mam"; -- Enable server-side message archives using Message Archive M\
anagement
--"server_presence"; -- Enables Server Buddies extension support
--"websocket"; -- Enable support for WebSocket clients, aka "XMPP over \
WebSockets"
};
-- Drop privileges
metronome_user = "_metronome"
metronome_group = "_metronome"
-- Default pidfile path
pidfile = "/var/metronome/metronome.pid";
-- Logging configuration
-- For advanced logging see http://prosody.im/doc/logging
log = {
-- info = "/var/metronome/metronome.log"; -- Change 'info' to 'debug' for verbose loggi\
ng
debug = "/var/metronome/metronome.log"; -- Change 'info' to 'debug' for verbose logging
error = "/var/metronome/metronome.err";
-- "*syslog"; -- Uncomment this for logging to syslog
-- "*console"; -- Log to the console, useful for debugging with daemonize=false
}
-- Disable account creation by default, for security
allow_registration = false;
--daemonize = false;
-- These are the SSL/TLS-related settings. If you don't want
-- to use SSL/TLS, you may comment or remove this
ssl = {
key = "/etc/metronome/certs/localhost.key";
certificate = "/etc/metronome/certs/localhost.crt";
}
-- This allows clients to connect to localhost. No harm in it.
VirtualHost "localhost"
-- Section for example.com
-- (replace example.com with your domain name)
VirtualHost "example.com"
-- Assign this host a certificate for TLS, otherwise it would use the one
-- set in the global section (if any).
-- Note tha"
28868 lua51 GIO fd 5 read 429 bytes
"t old-style SSL on port 5223 only supports one certificate, and will always
-- use the global one.
ssl = {
key = "/etc/metronome/certs/example.com.key";
certificate = "/etc/metronome/certs/example.com.crt";
}
enabled = true -- This will disable the host, preserving the config, but denying connec\
tions
-- Set up a MUC (multi-user chat) room server on conference.example.com:
Component "conference.example.com" "muc"
"
28868 lua51 RET read 4525/0x11ad
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077299150848/0xbe4cbc54000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081006522368/0xbe5a8bf4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080421748736/0xbe585e45000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d71ce918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/loggingmanager.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d71ce918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/loggingmanager.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211738, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863339, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.459522089, size=6777, blocks=16, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 GIO fd 5 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Matthew Wild, Waqas Hussain
local format = string.format;
local setmetatable, rawset, pairs, ipairs, type =
setmetatable, rawset, pairs, ipairs, type;
local io_open, io_write = io.open, io.write;
local math_max, rep = math.max, string.rep;
local os_date = os.date;
local getstyle, setstyle = require "util.termcolours".getstyle, require "util.termcolours".sets\
tyle;
if os.getenv("__FLUSH_LOG") then
local io_flush = io.flush;
local _io_write = io_write;
io_write = function(...) _io_write(...); io_flush(); end
end
local config = require "core.configmanager";
local logger = require "util.logger";
local metronome = metronome;
_G.log = logger.init("general");
module "loggingmanager"
local default_logging;
local default_file_logging;
local default_timestamp = "%b %d %H:%M:%S";
local logging_config;
local apply_sink_rules;
local log_sink_types = setmetatable({}, { __newindex = function (t, k, v) rawset(t, k, v); appl\
y_sink_rules(k); end; });
local get_levels;
local logging_levels = { "debug", "info", "warn", "error" }
local function add_rule(sink_config)
local sink_maker = log_sink_types[sink_config.to];
if sink_maker then
local sink = sink_maker(sink_config);
for level in pairs(get_levels(sink_config.levels or logging_levels)) do
logger.add_level_sink(level, sink);
end
else
-- No such sink type
end
end
function apply_sink_rules(sink_type)
if type(logging_config) == "table" then
for _, level in ipairs(logging_levels) do
if type(logging_config[level]) == "string" then
local value = logging_config[level];
if sink_type == "file" and not value:match("^%*") then
add_rule({
to = sink_type;
filename = value;
timestamps = true;
levels = { min = level };
});
elseif value == "*"..sink_type then
add_rule({
to = sink_type;
levels = { min = level };
});
end
end
end
for _, sink_config in ipairs(logging_config) do
if (type(sink_config) == "table" and sink_config.to == sink_type) then
add_rule(sink_config);
elseif (type(sink_config) == "string" and sink_config:match("^%*(.+)") \
== sink_type) then
add_rule({ levels = { min = "debug" }, to = sink_type });
end
end
elseif type(logging_config) == "string" and (not logging_config:match("^%*")) and sink_\
type == "file" then
for _, sink_config in pairs(default_file_logging) do
sink_config.filename = logging_config;
add_rule(sink_config);
sink_config.filename = nil;
end
elseif type(logging_config) == "string" and logging_config:match("^%*(.+)") == sink_typ\
e then
add_rule({ levels = { min = "debug" }, to = sink_type });
end
end
function get_levels(criteria, set)
set = set or {};
if type(criteria) == "string" then
set[criteria] = true;
return set;
end
local min, max = criteria.min, criteria.max;
if min or max then
local in_range;
for _, level in ipairs(logging_levels) do
if min == level then
set[level] = true;
in_range = true;
elseif max == level then
set[level] = true;
return set;
elseif in_range then
set[level] = true;
end
end
end
for _, level in ipairs(criteria) do
set[level] = true;
end
return set;
end
function reload_logging()
local old_sink_types = {};
for name, sink_maker in pairs(log_sink_types) do
old_sink_types[name] = sink_maker;
log_sink_types[name] = nil;
end
logger.reset();
local debug_mode = config.get("*", "debug");
default_logging = { { to = "console" , levels = { min = (debug_mode and "debug") or "in\
fo" } } };
default_file_logging = {
{ to = "file", levels = { min = (debug_mode and "debug") or "info" }, timestamp\
s = true }
};
default_timestamp = "%b %d %H:%M:%S";
logging_config = config.get("*", "log") or default_logging;
"
28868 lua51 GIO fd 5 read 2681 bytes
"
for name, sink_maker in pairs(old_sink_types) do
log_sink_types[name] = sink_maker;
end
metronome.events.fire_event("logging-reloaded");
end
reload_logging();
metronome.events.add_handler("config-reloaded", reload_logging);
--- Definition of built-in logging sinks ---
function log_sink_types.nowhere()
return function () return false; end;
end
local sourcewidth = 20;
function log_sink_types.stdout(config)
local timestamps = config.timestamps;
if timestamps == true then
timestamps = default_timestamp;
end
return function (name, level, message, ...)
sourcewidth = math_max(#name+2, sourcewidth);
local namelen = #name;
if timestamps then
io_write(os_date(timestamps), " ");
end
if ... then
io_write(name, rep(" ", sourcewidth-namelen), level, "\\t", format(mess\
age, ...), "\\n");
else
io_write(name, rep(" ", sourcewidth-namelen), level, "\\t", message, "\
\\n");
end
end
end
do
local do_pretty_printing = true;
local logstyles = {};
if do_pretty_printing then
logstyles["info"] = getstyle("bold");
logstyles["warn"] = getstyle("bold", "yellow");
logstyles["error"] = getstyle("bold", "red");
end
function log_sink_types.console(config)
if not do_pretty_printing then
return log_sink_types.stdout(config);
end
local timestamps = config.timestamps;
if timestamps == true then
timestamps = default_timestamp;
end
return function (name, level, message, ...)
sourcewidth = math_max(#name+2, sourcewidth);
local namelen = #name;
if timestamps then
io_write(os_date(timestamps), " ");
end
io_write(name, rep(" ", sourcewidth-namelen));
setstyle(logstyles[level]);
io_write(level);
setstyle();
if ... then
io_write("\\t", format(message, ...), "\\n");
else
io_write("\\t", message, "\\n");
end
end
end
end
local empty_function = function () end;
function log_sink_types.file(config)
local log = config.filename;
local logfile = io_open(log, "a+");
if not logfile then
return empty_function;
end
local write, flush = logfile.write, logfile.flush;
local timestamps = config.timestamps;
if timestamps == nil or timestamps == true then
timestamps = default_timestamp;
end
return function (name, level, message, ...)
if timestamps then
write(logfile, os_date(timestamps), " ");
end
if ... then
write(logfile, name, "\\t", level, "\\t", format(message, ...), "\\n");
else
write(logfile, name, "\\t" , level, "\\t", message, "\\n");
end
flush(logfile);
end;
end
function register_sink_type(name, sink_maker)
local old_sink_maker = log_sink_types[name];
log_sink_types[name] = sink_maker;
return old_sink_maker;
end
return _M;
"
28868 lua51 RET read 6777/0x1a79
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080888983552/0xbe5a1bdc000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079466962944/0xbe54cfb7000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079929958400/0xbe568943000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077363494912/0xbe4cf9b1000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079820255232/0xbe5620a4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080636387328/0xbe592af7000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080075517952/0xbe571414000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080070746112/0xbe570f87000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080867856384/0xbe5a07b6000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076888846336/0xbe4b3508000
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54cfb7b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/termcolours.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54cfb7b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/termcolours.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211951, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864206, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=2496, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 GIO fd 5 read 2496 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2012, Matthew Wild, Waqas Hussain
local t_concat, t_insert = table.concat, table.insert;
local char, format = string.char, string.format;
local tonumber = tonumber;
local ipairs = ipairs;
local io_write = io.write;
module "termcolours"
local stylemap = {
reset = 0; bright = 1, dim = 2, underscore = 4, blink = 5, reverse = 7, hidden = 8;
black = 30; red = 31; green = 32; yellow = 33; blue = 34; magenta = 35; cyan = 36; whit\
e = 37;
["black background"] = 40; ["red background"] = 41; ["green background"] = 42; ["yellow\
background"] = 43; ["blue background"] = 44; ["magenta background"] = 45; ["cyan background"] \
= 46; ["white background"] = 47;
bold = 1, dark = 2, underline = 4, underlined = 4, normal = 0;
};
local cssmap = {
[1] = "font-weight: bold", [2] = "opacity: 0.5", [4] = "text-decoration: underline", [8\
] = "visibility: hidden",
[30] = "color:black", [31] = "color:red", [32]="color:green", [33]="color:#FFD700",
[34] = "color:blue", [35] = "color: magenta", [36] = "color:cyan", [37] = "color: white\
",
[40] = "background-color:black", [41] = "background-color:red", [42]="background-color:\
green",
[43]="background-color:yellow", [44] = "background-color:blue", [45] = "background-colo\
r: magenta",
[46] = "background-color:cyan", [47] = "background-color: white";
};
local fmt_string = char(0x1B).."[%sm%s"..char(0x1B).."[0m";
function getstring(style, text)
if style then
return format(fmt_string, style, text);
else
return text;
end
end
function getstyle(...)
local styles, result = { ... }, {};
for i, style in ipairs(styles) do
style = stylemap[style];
if style then
t_insert(result, style);
end
end
return t_concat(result, ";");
end
local last = "0";
function setstyle(style)
style = style or "0";
if style ~= last then
io_write("\\27["..style.."m");
last = style;
end
end
local function ansi2css(ansi_codes)
if ansi_codes == "0" then return "</span>"; end
local css = {};
for code in ansi_codes:gmatch("[^;]+") do
t_insert(css, cssmap[tonumber(code)]);
end
return "</span><span style='"..t_concat(css, ";").."'>";
end
function tohtml(input)
return input:gsub("\\027%[(.-)m", ansi2css);
end
return _M;
"
28868 lua51 RET read 2496/0x9c0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079913967616/0xbe567a03000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077887692800/0xbe4eed9b000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077686329344/0xbe4e2d92000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077131194368/0xbe4c1c27000
28868 lua51 CALL read(5,0xbe53d50f000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe567a03f98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/logger.lua"
28868 lua51 RET open 5
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe567a03f98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/logger.lua"
28868 lua51 RET open 5
28868 lua51 CALL fstat(5,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211931, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864118, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=1827, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077692035072/0xbe4e3303000
28868 lua51 CALL read(5,0xbe4e3303000,0x4000)
28868 lua51 GIO fd 5 read 1827 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2011, Matthew Wild, Tobias Markmann, Waqas Hussain
local pcall = pcall;
local find = string.find;
local ipairs, pairs, setmetatable = ipairs, pairs, setmetatable;
module "logger"
local level_sinks = {};
local make_logger;
function init(name)
local log_debug = make_logger(name, "debug");
local log_info = make_logger(name, "info");
local log_warn = make_logger(name, "warn");
local log_error = make_logger(name, "error");
return function (level, message, ...)
if level == "debug" then
return log_debug(message, ...);
elseif level == "info" then
return log_info(message, ...);
elseif level == "warn" then
return log_warn(message, ...);
elseif level == "error" then
return log_error(message, ...);
end
end
end
function make_logger(source_name, level)
local level_handlers = level_sinks[level];
if not level_handlers then
level_handlers = {};
level_sinks[level] = level_handlers;
end
local logger = function (message, ...)
for i = 1,#level_handlers do
level_handlers[i](source_name, level, message, ...);
end
end
return logger;
end
function reset()
for level, handler_list in pairs(level_sinks) do
-- Clear all handlers for this level
for i = 1, #handler_list do
handler_list[i] = nil;
end
end
end
function add_level_sink(level, sink_function)
if not level_sinks[level] then
level_sinks[level] = { sink_function };
else
level_sinks[level][#level_sinks[level] + 1 ] = sink_function;
end
end
_M.new = make_logger;
return _M;
"
28868 lua51 RET read 1827/0x723
28868 lua51 CALL read(5,0xbe4e3303000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079560777728/0xbe55292f000
28868 lua51 CALL close(5)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbc838,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe545715f58,0x20a<O_RDWR|O_APPEND|O_CREAT>,0666<S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH>)
28868 lua51 NAMI "/var/metronome/metronome.log"
28868 lua51 RET open 5
28868 lua51 CALL lseek(5,0,SEEK_END)
28868 lua51 RET lseek 22109/0x565d
28868 lua51 CALL open(0xbe54c107418,0x20a<O_RDWR|O_APPEND|O_CREAT>,0666<S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH>)
28868 lua51 NAMI "/var/metronome/metronome.err"
28868 lua51 RET open 6
28868 lua51 CALL lseek(6,0,SEEK_END)
28868 lua51 RET lseek 470/0x1d6
28868 lua51 CALL open(0xbe4e3305fd8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/net/server.lua"
28868 lua51 RET open 7
28868 lua51 CALL close(7)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4e3305fd8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/net/server.lua"
28868 lua51 RET open 7
28868 lua51 CALL fstat(7,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211904, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864030, atime=1443380744<"Sep 27 19:05:44 2015">.817572903, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.520270034, size=1859, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079953698816/0xbe569fe7000
28868 lua51 CALL read(7,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 7 read 1859 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2013, Kim Alvefur, Matthew Wild
local server;
server = require "net.server_event";
local ok, signal = pcall(require, "util.signal");
if ok and signal then
local _signal_signal = signal.signal;
function signal.signal(signal_id, handler)
if type(signal_id) == "string" then
signal_id = signal[signal_id:upper()];
end
if type(signal_id) ~= "number" then
return false, "invalid-signal";
end
return server.hook_signal(signal_id, handler);
end
end
if metronome then
local config_get = require "core.configmanager".get;
local defaults = {};
for k,v in pairs(server.cfg or server.getsettings()) do
defaults[k] = v;
end
local function load_config()
local settings = config_get("*", "network_settings") or {};
local event_settings = {
ACCEPT_DELAY = settings.event_accept_retry_interval;
ACCEPT_QUEUE = settings.tcp_backlog;
CLEAR_DELAY = settings.event_clear_interval;
CONNECT_TIMEOUT = settings.connect_timeout;
DEBUG = settings.debug;
HANDSHAKE_TIMEOUT = settings.ssl_handshake_timeout;
MAX_CONNECTIONS = settings.max_connections;
MAX_HANDSHAKE_ATTEMPTS = settings.max_ssl_handshake_roundtrips;
MAX_READ_LENGTH = settings.max_receive_buffer_size;
MAX_SEND_LENGTH = settings.max_send_buffer_size;
READ_TIMEOUT = settings.read_timeout;
WRITE_TIMEOUT = settings.send_timeout;
};
for k,default in pairs(defaults) do
server.cfg[k] = event_settings[k] or default;
end
end
load_config();
metronome.events.add_handler("config-reloaded", load_config);
end
return server;
"
28868 lua51 RET read 1859/0x743
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079102447616/0xbe537416000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078951845888/0xbe52e476000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078424104960/0xbe50ed2b000
28868 lua51 CALL read(7,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081042223104/0xbe5aae00000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079157825536/0xbe53a8e6000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081045893120/0xbe5ab180000
28868 lua51 CALL close(7)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe568943018,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/net/server_event.lua"
28868 lua51 RET open 7
28868 lua51 CALL close(7)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe568943018,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/net/server_event.lua"
28868 lua51 RET open 7
28868 lua51 CALL fstat(7,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211905, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864040, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=28767, blocks=60, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(7,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 7 read 4096 bytes
"-- Please see server_event.lua.license for licensing information.
--[[
server.lua based on lua/libevent by blastbeat
notes:
-- when using luaevent, never register 2 or more EV_READ at one socket,\
same for EV_WRITE
-- you cant even register a new EV_READ/EV_WRITE callback inside anothe\
r one
-- to do some of the above, use timeout events or something that will b\
e called from outside
-- dont let eventcallbacks to be garbage collected, as long they are ru\
nning
-- when using luasec, there are 4 cases of timeout errors: wantread or \
wantwrite during reading or writing
--]]
local SCRIPT_NAME = "server_event.lua"
local SCRIPT_VERSION = "0.05"
local SCRIPT_AUTHOR = "blastbeat"
local LAST_MODIFIED = "2009/11/20"
local cfg = {
MAX_CONNECTIONS = 100000, -- max per server connections (use "ulimit -n" on *nix\
)
MAX_HANDSHAKE_ATTEMPTS= 1000, -- attempts to finish ssl handshake
HANDSHAKE_TIMEOUT = 60, -- timeout in seconds per handshake attempt
MAX_READ_LENGTH = 1024 * 1024 * 1024 * 1024, -- max bytes allowed to read from s\
ockets
MAX_SEND_LENGTH = 1024 * 1024 * 1024 * 1024, -- max bytes size of write buffer (\
for writing on sockets)
ACCEPT_QUEUE = 128, -- might influence the length of the pending sockets queu\
e
ACCEPT_DELAY = 10, -- seconds to wait until the next attempt of a full server\
to accept
READ_TIMEOUT = 60 * 60 * 6, -- timeout in seconds for read data from socket
WRITE_TIMEOUT = 180, -- timeout in seconds for write data on socket
CONNECT_TIMEOUT = 20, -- timeout in seconds for connection attempts
CLEAR_DELAY = 5, -- seconds to wait for clearing interface list (and calling\
ondisconnect listeners)
DEBUG = true, -- show debug messages
}
local function use(x) return rawget(_G, x); end
local ipairs = use "ipairs"
local string = use "string"
local select = use "select"
local require = use "require"
local tostring = use "tostring"
local coroutine = use "coroutine"
local setmetatable = use "setmetatable"
local t_insert = table.insert
local t_concat = table.concat
local ssl = use "ssl"
local socket = use "socket" or require "socket"
local log = require ("util.logger").init("socket")
local function debug(...)
return log("debug", ("%s "):rep(select('#', ...)), ...)
end
local vdebug = debug;
local bitor = ( function( ) -- thx Rici Lake
local hasbit = function( x, p )
return x % ( p + p ) >= p
end
return function( x, y )
local p = 1
local z = 0
local limit = x > y and x or y
while p <= limit do
if hasbit( x, p ) or hasbit( y, p ) then
z = z + p
end
p = p + p
end
return z
end
end )( )
local event = require "luaevent.core"
local base = event.new( )
local EV_READ = event.EV_READ
local EV_WRITE = event.EV_WRITE
local EV_TIMEOUT = event.EV_TIMEOUT
local EV_SIGNAL = event.EV_SIGNAL
local EV_READWRITE = bitor( EV_READ, EV_WRITE )
local interfacelist = ( function( ) -- holds the interfaces for sockets
local array = { }
local len = 0
return function( method, arg )
if "add" == method then
len = len + 1
array[ len ] = arg
arg:_position( len )
return len
elseif "delete" == method then
if len <= 0 then
return nil, "array is already empty"
end
local position = arg:_position() -- get position in array
if position ~= len then
local interface = array[ len ] -- get last interface
array[ position ] = interface -- copy it into free position
array[ len ] = nil -- free last position
interface:_position( position ) -- set new position in array
else -- free last position
array[ len ] = nil
end
len = len - 1
return len
else
return array
end
end
end )( )
-- Client interface methods
local interface_mt
do
interface_mt = {}; interface_mt.__index = interface_mt;
local addevent = base.addevent
local coroutine_wrap, coroutine_yield = coroutine.wrap,coroutine.yield
-- Private methods
function interface_mt:_position(new_position)
self.position = new_position or self.positio"
28868 lua51 GIO fd 7 read 4096 bytes
"n
return self.position;
end
function interface_mt:_close()
return self:_destroy();
end
function interface_mt:_start_connection(plainssl) -- should be called from addclient
local callback = function( event )
if EV_TIMEOUT == event then -- timeout during connection
self.fatalerror = "connection timeout"
self:ontimeout() -- call timeout listener
self:_close()
debug( "new connection failed. id:", self.id, "error:",\
self.fatalerror )
else
if plainssl and ssl then -- start ssl session
self:starttls(self._sslctx, true)
else -- normal connection
self:_start_session(true)
end
debug( "new connection established. id:", self.id )
end
self.eventconnect = nil
return -1
end
self.eventconnect = addevent( base, self.conn, EV_WRITE, callback, cfg.\
CONNECT_TIMEOUT )
return true
end
function interface_mt:_start_session(call_onconnect) -- new session, for example after \
startssl
if self.type == "client" then
local callback = function( )
self:_lock( false, false, false )
self.eventread = addevent( base, self.conn, EV_READ, self.readc\
allback, cfg.READ_TIMEOUT ); -- register callback
if call_onconnect then
self:onconnect()
end
self.eventsession = nil
return -1
end
self.eventsession = addevent( base, nil, EV_TIMEOUT, callback, 0 )
else
self:_lock( false )
self.eventread = addevent( base, self.conn, EV_READ, self.readcallback \
) -- register callback
end
return true
end
function interface_mt:_start_ssl(call_onconnect) -- old socket will be destroyed, there\
fore we have to close read/write events first
local _
_ = self.eventread and self.eventread:close( ) -- close events; this m\
ust be called outside of the event callbacks!
_ = self.eventwrite and self.eventwrite:close( )
self.eventread, self.eventwrite = nil, nil
local err
self.conn, err = ssl.wrap( self.conn, self._sslctx )
if err then
self.fatalerror = err
self.conn = nil -- cannot be used anymore
if call_onconnect then
self.ondisconnect = nil -- dont call this when client \
isnt really connected
end
self:_close()
debug( "fatal error while ssl wrapping:", err )
return false
end
self.conn:settimeout( 0 ) -- set non blocking
local handshakecallback = coroutine_wrap(
function( event )
local _, err
local attempt = 0
local maxattempt = cfg.MAX_HANDSHAKE_ATTEMPTS
while attempt < maxattempt do -- no endless loop
attempt = attempt + 1
debug( "ssl handshake of client with id:"..tost\
ring(self)..", attempt:"..attempt )
if attempt > maxattempt then
self.fatalerror = "max handshake attemp\
ts exceeded"
elseif EV_TIMEOUT == event then
self.fatalerror = "timeout during hands\
hake"
else
_, err = self.conn:dohandshake( )
if not err then
self:_lock( false, false, false\
) -- unlock the interface; sending, closing etc allowed
self.send = self.conn.send -- \
caching table lookups with new client object
self.receive = self.conn.receiv\
e
if not call_onconnect then -- \
trigger listener
self:onstatus("ssl-hand\
shake-complete");
end
self:_start_session( call_oncon\
nect )
debug( "ssl handshake done" )
self.eventhandshake = nil
return -1
end
if err == "wantwrite" then
event = EV_WRITE
elseif err == "wantread" then
event = EV_READ
else
debug( "ssl handshake error:", \
err )
self.fatalerror = err
end
end
if self.fatalerror then
if call_onconnect then
self.ondisconnect = nil -- don\
t call this when client isnt really connected
end
self:_close()
debug( "handshake failed because:", sel\
f.fatalerror )
self.eventhandshake = nil
return -1
end
event = coroutine_yield( event, cfg.HANDSHAKE_T\
IMEOUT ) -- yield this monster...
end
end
)
debug "starting handshake..."
self:_lock( false, true, true ) -- unlock rea"
28868 lua51 GIO fd 7 read 4096 bytes
"d/write events, but keep interface locked
self.eventhandshake = addevent( base, self.conn, EV_READWRITE, handshak\
ecallback, cfg.HANDSHAKE_TIMEOUT )
return true
end
function interface_mt:_destroy() -- close this interface + events and call last listen\
er
debug( "closing client with id:", self.id, self.fatalerror )
self:_lock( true, true, true ) -- first of all, lock the interface to \
avoid further actions
local _
_ = self.eventread and self.eventread:close( )
if self.type == "client" then
_ = self.eventwrite and self.eventwrite:close( )
_ = self.eventhandshake and self.eventhandshake:close( )
_ = self.eventstarthandshake and self.eventstarthandshake:close\
( )
_ = self.eventconnect and self.eventconnect:close( )
_ = self.eventsession and self.eventsession:close( )
_ = self.eventwritetimeout and self.eventwritetimeout:close( )
_ = self.eventreadtimeout and self.eventreadtimeout:close( )
_ = self.ondisconnect and self:ondisconnect( self.fatalerror ~=\
"client to close" and self.fatalerror) -- call ondisconnect listener (wont be the case if han\
dshake failed on connect)
_ = self.conn and self.conn:close( ) -- close connection
_ = self._server and self._server:counter(-1);
self.eventread, self.eventwrite = nil, nil
self.eventstarthandshake, self.eventhandshake, self.eventclose \
= nil, nil, nil
self.readcallback, self.writecallback = nil, nil
else
self.conn:close( )
self.eventread, self.eventclose = nil, nil
self.interface, self.readcallback = nil, nil
end
interfacelist( "delete", self )
return true
end
function interface_mt:_lock(nointerface, noreading, nowriting) -- lock or unlock this \
interface or events
self.nointerface, self.noreading, self.nowriting = nointerface, noreadi\
ng, nowriting
return nointerface, noreading, nowriting
end
--TODO: Deprecate
function interface_mt:lock_read(switch)
if switch then
return self:pause();
else
return self:resume();
end
end
function interface_mt:pause()
return self:_lock(self.nointerface, true, self.nowriting);
end
function interface_mt:resume()
self:_lock(self.nointerface, false, self.nowriting);
if not self.eventread then
self.eventread = addevent( base, self.conn, EV_READ, self.readcallback,\
cfg.READ_TIMEOUT ); -- register callback
end
end
function interface_mt:counter(c)
if c then
self._connections = self._connections + c
end
return self._connections
end
-- Public methods
function interface_mt:write(data)
if self.nowriting then return nil, "locked" end
data = tostring( data )
local len = #data
local total = len + self.writebufferlen
if total > cfg.MAX_SEND_LENGTH then -- check buffer length
local err = "send buffer exceeded"
debug( "error:", err ) -- too much, check your app
return nil, err
end
t_insert(self.writebuffer, data) -- new buffer
self.writebufferlen = total
if not self.eventwrite then -- register new write event
self.eventwrite = addevent( base, self.conn, EV_WRITE, self.writecallba\
ck, cfg.WRITE_TIMEOUT )
end
return true
end
function interface_mt:close()
if self.nointerface then return nil, "locked"; end
debug( "try to close client connection with id:", self.id )
if self.type == "client" then
self.fatalerror = "client to close"
if self.eventwrite then -- wait for incomplete write request
self:_lock( true, true, false )
debug "closing delayed until writebuffer is empty"
return nil, "writebuffer not empty, waiting"
else -- close now
self:_lock( true, true, true )
self:_close()
return true
end
else
debug( "try to close server with id:", tostring(self.id))
self.fatalerror = "server to close"
self:_lock( true )
self:_close( 0 )
return true
end
end
function interface_mt:socket()
return self.conn
end
function interface_mt:server()
return self._server or self;
end
function interface_mt:port()
return self._port
end
function interface_mt:serverport()
return self._serverport
end
function interface_mt:ip()"
28868 lua51 GIO fd 7 read 4096 bytes
"
return self._ip
end
function interface_mt:ssl()
return self._usingssl
end
function interface_mt:type()
return self._type or "client"
end
function interface_mt:connections()
return self._connections
end
function interface_mt:address()
return self.addr
end
function interface_mt:set_sslctx(sslctx)
self._sslctx = sslctx;
if sslctx then
self.starttls = nil; -- use starttls() of interface_mt
else
self.starttls = false; -- prevent starttls()
end
end
function interface_mt:set_mode(pattern)
if pattern then
self._pattern = pattern;
end
return self._pattern;
end
function interface_mt:set_send(new_send)
-- No-op, we always use the underlying connection's send
end
function interface_mt:starttls(sslctx, call_onconnect)
debug( "try to start ssl at client id:", self.id )
local err
self._sslctx = sslctx;
if self._usingssl then -- startssl was already called
err = "ssl already active"
end
if err then
debug( "error:", err )
return nil, err
end
self._usingssl = true
self.startsslcallback = function( ) -- we have to start the handshake outside \
of a read/write event
self.startsslcallback = nil
self:_start_ssl(call_onconnect);
self.eventstarthandshake = nil
return -1
end
if not self.eventwrite then
self:_lock( true, true, true ) -- lock the interface, to not disturb t\
he handshake
self.eventstarthandshake = addevent( base, nil, EV_TIMEOUT, self.starts\
slcallback, 0 ) -- add event to start handshake
else -- wait until writebuffer is empty
self:_lock( true, true, false )
debug "ssl session delayed until writebuffer is empty..."
end
self.starttls = false;
return true
end
function interface_mt:setoption(option, value)
if self.conn.setoption then
return self.conn:setoption(option, value);
end
return false, "setoption not implemented";
end
function interface_mt:setlistener(listener)
self.onconnect, self.ondisconnect, self.onincoming, self.ontimeout, self.onstat\
us
= listener.onconnect, listener.ondisconnect, listener.onincoming, liste\
ner.ontimeout, listener.onstatus;
end
-- Stub handlers
function interface_mt:onconnect()
end
function interface_mt:onincoming()
end
function interface_mt:ondisconnect()
end
function interface_mt:ontimeout()
end
function interface_mt:ondrain()
end
function interface_mt:onstatus()
end
end
-- End of client interface methods
local handleclient;
do
local string_sub = string.sub -- caching table lookups
local addevent = base.addevent
local socket_gettime = socket.gettime
function handleclient( client, ip, port, server, pattern, listener, sslctx ) -- create\
s an client interface
local interface = {
type = "client";
conn = client;
currenttime = socket_gettime( ); -- safe the origin
writebuffer = {}; -- writebuffer
writebufferlen = 0; -- length of writebuffer
send = client.send; -- caching table lookups
receive = client.receive;
onconnect = listener.onconnect; -- will be called when client disconne\
cts
ondisconnect = listener.ondisconnect; -- will be called when client di\
sconnects
onincoming = listener.onincoming; -- will be called when client sends \
data
ontimeout = listener.ontimeout; -- called when fatal socket timeout occ\
urs
onstatus = listener.onstatus; -- called for status changes (e.g. of SSL\
/TLS)
eventread = false, eventwrite = false, eventclose = false,
eventhandshake = false, eventstarthandshake = false; -- event handler
eventconnect = false, eventsession = false; -- more event handler...
eventwritetimeout = false; -- even more event handler...
eventreadtimeout = false;
fatalerror = false; -- error message
writecallback = false; -- will be called on write events
readcallback = false; -- will be called on read events
nointerface = true; -- lock/unlock parameter of this interface
noreading = false, nowriting = false; -- locks of the read/writecallba\
ck
startsslcallback = false; -- starting handshake callback
position = false; -- position of client in interfaceli"
28868 lua51 RET read 16384/0x4000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081047142400/0xbe5ab2b1000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077179609088/0xbe4c4a53000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080951083008/0xbe5a5715000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077341396992/0xbe4ce49e000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077614067712/0xbe4de8a8000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078677798912/0xbe51df1c000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079809929216/0xbe5616cb000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079263342592/0xbe540d87000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078592946176/0xbe518e30000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079106678784/0xbe53781f000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079679164416/0xbe559a16000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079355047936/0xbe5464fc000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078361841664/0xbe50b1ca000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079438503936/0xbe54b493000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077852712960/0xbe4ecc3f000
28868 lua51 CALL read(7,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 7 read 4096 bytes
"st
-- Properties
_ip = ip, _port = port, _server = server, _pattern = pattern,
_serverport = (server and server:port() or nil),
_sslctx = sslctx; -- parameters
_usingssl = false; -- client is using ssl;
}
if not ssl then interface.starttls = false; end
interface.id = tostring(interface):match("%x+$");
interface.writecallback = function( event ) -- called on write events
if interface.nowriting or ( interface.fatalerror and ( "client to close\
" ~= interface.fatalerror ) ) then -- leave this event
interface.eventwrite = false
return -1
end
if EV_TIMEOUT == event then -- took too long to write some data to soc\
ket -> disconnect
interface.fatalerror = "timeout during writing"
debug( "writing failed:", interface.fatalerror )
interface:_close()
interface.eventwrite = false
return -1
else -- can write :)
if interface._usingssl then -- handle luasec
if interface.eventreadtimeout then -- we have to read \
first
local ret = interface.readcallback( ) -- call \
readcallback
end
if interface.eventwritetimeout then -- luasec only
interface.eventwritetimeout:close( ) -- first \
we have to close timeout event which where regged after a wantread error
interface.eventwritetimeout = false
end
end
interface.writebuffer = { t_concat(interface.writebuffer) }
local succ, err, byte = interface.conn:send( interface.writebuf\
fer[1], 1, interface.writebufferlen )
if succ then -- writing succesful
interface.writebuffer[1] = nil
interface.writebufferlen = 0
interface:ondrain();
if interface.fatalerror then
debug "closing client after writing"
interface:_close() -- close interface if neede\
d
elseif interface.startsslcallback then -- start ssl co\
nnection if needed
debug "starting ssl handshake after writing"
interface.eventstarthandshake = addevent( base,\
nil, EV_TIMEOUT, interface.startsslcallback, 0 )
elseif interface.eventreadtimeout then
return EV_WRITE, EV_TIMEOUT
end
interface.eventwrite = nil
return -1
elseif byte and (err == "timeout" or err == "wantwrite") then \
-- want write again
interface.writebuffer[1] = string_sub( interface.writeb\
uffer[1], byte + 1, interface.writebufferlen ) -- new buffer
interface.writebufferlen = interface.writebufferlen - b\
yte
if "wantread" == err then -- happens only with luasec
local callback = function( )
interface:_close()
interface.eventwritetimeout = nil
return -1;
end
interface.eventwritetimeout = addevent( base, n\
il, EV_TIMEOUT, callback, cfg.WRITE_TIMEOUT ) -- reg a new timeout event
debug( "wantread during write attempt, reg it i\
n readcallback but dont know what really happens next..." )
-- hopefully this works with luasec; its simply\
not possible to use 2 different write events on a socket in luaevent
return -1
end
return EV_WRITE, cfg.WRITE_TIMEOUT
else -- connection was closed during writing or fatal error
interface.fatalerror = err or "fatal error"
debug( "connection failed in write event:", interface.f\
atalerror )
interface:_close()
interface.eventwrite = nil
return -1
end
end
end
interface.readcallback = function( event ) -- called on read events
if interface.noreading or interface.fatalerror then -- leave this even\
t
interface.eventread = nil
return -1
end
if EV_TIMEOUT == event then -- took too long to get some data from cli\
ent -> disconnect
interface.fatalerror = "timeout during receiving"
debug( "connection failed:", interface.fatalerror )
interface:_close()
interface.eventread = nil
return -1
else -- can read
if interface._usingssl then -- handle luasec
if interface.eventwritetimeout then -- ok, in the past\
writecallback was regged
local ret = interface.writecallback( ) -- call\
it
end
if interface.eventreadtimeout then
interface.eventreadtimeout:close( )
interface.eventreadtimeout = nil
"
28868 lua51 GIO fd 7 read 4096 bytes
" end
end
local buffer, err, part = interface.conn:receive( interface._pa\
ttern ) -- receive buffer with "pattern"
buffer = buffer or part
if buffer and #buffer > cfg.MAX_READ_LENGTH then -- check buff\
er length
interface.fatalerror = "receive buffer exceeded"
debug( "fatal error:", interface.fatalerror )
interface:_close()
interface.eventread = nil
return -1
end
if err and ( err ~= "timeout" and err ~= "wantread" ) then
if "wantwrite" == err then -- need to read on write eve\
nt
if not interface.eventwrite then -- register n\
ew write event if needed
interface.eventwrite = addevent( base, \
interface.conn, EV_WRITE, interface.writecallback, cfg.WRITE_TIMEOUT )
end
interface.eventreadtimeout = addevent( base, ni\
l, EV_TIMEOUT,
function( )
interface:_close()
end, cfg.READ_TIMEOUT
)
debug( "wantwrite during read attempt, reg it i\
n writecallback but dont know what really happens next..." )
-- to be honest i dont know what happens next, \
if it is allowed to first read, the write etc...
else -- connection was closed or fatal error
interface.fatalerror = err
debug( "connection failed in read event:", inte\
rface.fatalerror )
interface:_close()
interface.eventread = nil
return -1
end
else
interface.onincoming( interface, buffer, err ) -- send\
new data to listener
end
if interface.noreading then
interface.eventread = nil;
return -1;
end
return EV_READ, cfg.READ_TIMEOUT
end
end
client:settimeout( 0 ) -- set non blocking
setmetatable(interface, interface_mt)
interfacelist( "add", interface ) -- add to interfacelist
return interface
end
end
local handleserver
do
function handleserver( server, addr, port, pattern, listener, sslctx ) -- creates an s\
erver interface
debug "creating server interface..."
local interface = {
_connections = 0;
conn = server;
onconnect = listener.onconnect; -- will be called when new client conn\
ected
eventread = false; -- read event handler
eventclose = false; -- close event handler
readcallback = false; -- read event callback
fatalerror = false; -- error message
nointerface = true; -- lock/unlock parameter
_ip = addr, _port = port, _pattern = pattern,
_sslctx = sslctx;
}
interface.id = tostring(interface):match("%x+$");
interface.readcallback = function( event ) -- server handler, called on incomi\
ng connections
if interface.fatalerror then
interface.eventread = nil
return -1
end
local delay = cfg.ACCEPT_DELAY
if EV_TIMEOUT == event then
if interface._connections >= cfg.MAX_CONNECTIONS then -- check\
connection count
debug( "to many connections, seconds to wait for next a\
ccept:", delay )
return EV_TIMEOUT, delay -- timeout...
else
return EV_READ -- accept again
end
end
local client, err = server:accept() -- try to accept; TODO: check er\
r
while client do
if interface._connections >= cfg.MAX_CONNECTIONS then
client:close( ) -- refuse connection
debug( "maximal connections reached, refuse client conn\
ection; accept delay:", delay )
return EV_TIMEOUT, delay -- delay for next accept atte\
mpt
end
local client_ip, client_port = client:getpeername( )
interface._connections = interface._connections + 1 -- increas\
e connection count
local clientinterface = handleclient( client, client_ip, client\
_port, interface, pattern, listener, sslctx )
if ssl and sslctx then
clientinterface:starttls(sslctx, true)
else
clientinterface:_start_session( true )
end
debug( "accepted incoming client connection from:", client_ip o\
r "<unknown IP>", client_port or "<unknown port>", "to", port or "<unknown port>");
client, err = server:accept() -- try to accept again
end
return EV_READ
end
server:settimeout( 0 )
setmetatable(interface, interface_mt)
interfacelist( "add", interface )
interface:_start_session()
return interface
end
"
28868 lua51 GIO fd 7 read 4096 bytes
"end
local addserver = ( function( )
return function( addr, port, listener, pattern, sslcfg, startssl ) -- TODO: check argu\
ments
local server, err = socket.bind( addr, port, cfg.ACCEPT_QUEUE ) -- create serv\
er socket
if not server then
debug( "creating server socket on "..addr.." port "..port.." failed:", \
err )
return nil, err
end
local sslctx
if sslcfg then
if not ssl then
debug "fatal error: luasec not found"
return nil, "luasec not found"
end
sslctx, err = sslcfg
if err then
debug( "error while creating new ssl context for server socket:\
", err )
return nil, err
end
end
local interface = handleserver( server, addr, port, pattern, listener, sslctx, \
startssl ) -- new server handler
debug( "new server created with id:", tostring(interface))
return interface
end
end )( )
local addclient, wrapclient
do
function wrapclient( client, ip, port, listeners, pattern, sslctx )
local interface = handleclient( client, ip, port, nil, pattern, listeners, sslc\
tx )
interface:_start_connection(sslctx)
return interface, client
--function handleclient( client, ip, port, server, pattern, listener, _, sslctx\
) -- creates a client interface
end
function addclient( addr, serverport, listener, pattern, localaddr, localport, sslcfg, \
startssl )
local client, err = socket.tcp() -- creating new socket
if not client then
debug( "cannot create socket:", err )
return nil, err
end
client:settimeout( 0 ) -- set nonblocking
if localaddr then
local res, err = client:bind( localaddr, localport, -1 )
if not res then
debug( "cannot bind client:", err )
return nil, err
end
end
local sslctx
if sslcfg then -- handle ssl/new context
if not ssl then
debug "need luasec, but not available"
return nil, "luasec not found"
end
sslctx, err = sslcfg
if err then
debug( "cannot create new ssl context:", err )
return nil, err
end
end
local res, err = client:connect( addr, serverport ) -- connect
if res or ( err == "timeout" ) then
local ip, port = client:getsockname( )
local interface = wrapclient( client, ip, serverport, listener, pattern\
, sslctx, startssl )
interface:_start_connection( startssl )
debug( "new connection id:", interface.id )
return interface, err
else
debug( "new connection failed:", err )
return nil, err
end
end
end
local loop = function( ) -- starts the event loop
base:loop( )
return "quitting";
end
local newevent = ( function( )
local add = base.addevent
return function( ... )
return add( base, ... )
end
end )( )
local closeallservers = function( arg )
for _, item in ipairs( interfacelist( ) ) do
if item.type == "server" then
item:close( arg )
end
end
end
local function setquitting(yes)
if yes then
-- Quit now
closeallservers();
base:loopexit();
end
end
local function get_backend()
return base:method();
end
-- We need to hold onto the events to stop them
-- being garbage-collected
local signal_events = {}; -- [signal_num] -> event object
local function hook_signal(signal_num, handler)
local function _handler(event)
local ret = handler();
if ret ~= false then -- Continue handling this signal?
return EV_SIGNAL; -- Yes
end
return -1; -- Close this event
end
signal_events[signal_num] = base:addevent(signal_num, EV_SIGNAL, _handler);
return signal_events[signal_num];
end
local function link(sender, receiver, buffersize)
local sender_locked;
function receiver:ondrain()
if sender_locked then
sender:resume();
sender_locked = nil;
end
end
function sender:onincoming(data)
receiver:write(data);
if receiver.writebufferlen >= buffersize then
sender_locked = true;
sender:pause();
end
end
end
return {
cfg = cfg,
base = base,
loop = loop,
link = link,
event = event,
event_base = base,
addevent = newevent,
addserver = addserver,
addclient = addclient,
wrapclient = wrapclient,
setquitting = setquitting,
closeall = closeallservers,
get_backend = get_backend,
hook_signal = hook_signal,
__NAME = SC"
28868 lua51 GIO fd 7 read 95 bytes
"RIPT_NAME,
__DATE = LAST_MODIFIED,
__AUTHOR = SCRIPT_AUTHOR,
__VERSION = SCRIPT_VERSION,
}
"
28868 lua51 RET read 12383/0x305f
28868 lua51 CALL read(7,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x3000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079428546560/0xbe54ab14000
28868 lua51 CALL close(7)
28868 lua51 RET close 0
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbcbd0)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.540428179 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL clock_gettime(CLOCK_MONOTONIC,0x7f7ffffbcba0)
28868 lua51 STRU struct timespec { 3474<"Jan 1 00:57:54 1970">.540454998 }
28868 lua51 RET clock_gettime 0
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL kqueue()
28868 lua51 RET kqueue 7
28868 lua51 CALL getpid()
28868 lua51 RET getpid 28868/0x70c4
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL kbind(0x7f7ffffbcc08,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe50ed2b598,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/signal.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe567a03a18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/signal.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5616cbb98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/signal/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4de8a8218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/signal.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe5616cb698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/signal/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4af871398,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/signal.so"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1d81c00,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc7a0)
28868 lua51 STRU struct stat { dev=7, ino=211906, mode=drwxr-xr-x , nlink=3, uid=0<"root">, gid=0<"wheel">, rdev=864031, atime=1443380783<"Sep 27 19:06:23 2015">.526878136, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=1536, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(8,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 1960/0x7a8
28868 lua51 CALL getdents(8,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/signal.so"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbb800)
28868 lua51 STRU struct stat { dev=7, ino=211949, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864192, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=14269, blocks=28, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0x7f7ffffbb880,0x1000)
28868 lua51 GIO fd 8 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M^@\^T\0\0\0\0\0\0@\0\0\0\0\0\0\0p&\0\0\0\0\
\0\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0N\^]\0\0\0\0\0\0N\^]\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0N\^]\0\0\0\0\0\0N\
\^]\^P\0\0\0\0\0N\^]\^P\0\0\0\0\0002\^C\0\0\0\0\0\0002\^C\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\
\^F\0\0\0\M^@ \0\0\0\0\0\0\M^@ \0\0\0\0\0\M^@ \0\0\0\0\0\M^@\^C\0\0\0\0\0\0\M^@\^C\0\0\0\0\0\
\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0$\0\0\0\0\0\0\0$0\0\0\0\0\0\0$0\0\0\0\0\0`\^A\0\0\0\0\0\
\0`\^A\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0`%\0\0\0\0\0\0`%@\0\0\0\0\0`%@\0\0\0\0\08\
\0\0\0\0\0\0\08\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0\M-@"\0\0\0\0\0\0\M-@" \0\0\0\0\
\0\M-@" \0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0h \0\0\0\0\
\0\0h \^P\0\0\0\0\0h \^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\
\0\0\0\\\^^\0\0\0\0\0\0\\\^^\^P\0\0\0\0\0\\\^^\^P\0\0\0\0\0l\0\0\0\0\0\0\0l\0\0\0\0\0\0\0\^D\0\
\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\M^@ \0\0\0\0\0\0\M^@ \0\0\0\0\0\M^@ \0\0\0\0\0\b\0\0\0\0\0\
\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\08\0\0\0001\0\0\
\0004\0\0\0*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\0\^O\0\0\0+\0\0\0\0\0\0\0\^_\0\0\0#\0\0\0&\0\
\0\0!\0\0\0\0\0\0\0\0\0\0\0'\0\0\0\^U\0\0\0.\0\0\0\^^\0\0\0\0\0\0\0000\0\0\0\0\0\0\0\^T\0\0\000\
7\0\0\0,\0\0\0003\0\0\0\0\0\0\0\0\0\0\0-\0\0\0\^V\0\0\0006\0\0\0002\0\0\0\^]\0\0\0\0\0\0\0(\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\^\\0\0\0\0\
\0\0\0\^P\0\0\0\0\0\0\0\^S\0\0\0\^Y\0\0\0\^X\0\0\0%\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\^[\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0)\0\0\0\r\0\0\0"\0\0\0\0\0\0\0\0\0\0\0$\0\0\0/\0\0\0005\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0@\^R\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^C\0\b\0\M^@\^T\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0 \0@\^]\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\^C\0
\0N\^]\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0\\\^^\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\f\0\M-H\^^\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\M^@ \0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^C\0\^O\0\M^H \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0\240 \0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^C\0\^S\0@%0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0P%0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^C\0\^U\0`%@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-l\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-*\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^I\^A\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\M-P\^A\0\0\^P\0\M-q\M^?`%0\0\0\0\0\0\0\0\0\0\0\0\0\0'\^A\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^M\0\0\0\^P\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0v\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0>\^A\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Y\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-^\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\^V\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-y\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\v\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M-)\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0@\^R\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-:\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-H\0\0\0\^P\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-D\^A\0\0\^P\0\
\M-q\M^?\0$0\0\0\0\0\0\0\0\0\0\0\0\0\0\^F\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^\\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\
\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-6\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-n\^A\0\0\^P\0\M-q\M^?\M^X%@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-Q\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0L\0\0\0\^R\0\b\0 \^V\0\0\0\0\0\0\M-K\0\0\0\0\0\0\0n\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0002\0\0\0\^R\0 \0@\^]\0\0\0\0\0\0\0\0\0\0\0\0\0\0}\^A\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-g\^A\0\0\^P\0\M-q\M^?\M^X%@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-U\^A\0\0\
\^P\0\M-q\M^?\M^X%@\0\0\0\0\0\0\0\0\0\0\0\0\0I\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\M-Z\^A\0\0\^P\0\^U\0`%@\0\0\0\0\0\0\0\0\0\0\0\0\0`\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0X\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0!\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-?\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0}\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_atfork\0_in\
it\0__cxa_atexit\0_fini\0_Jv_RegisterClasses\0luaopen_util_signal\0luaL_register\0lua_pushstrin\
g\0lua_createtable\0lua_pushnumber\0lua_settable\0luaL_checknumber\0luaL_checkany\0lua_type\0lu\
a_gettable\0lua_pushvalue\0lua_isnumber\0lua_tonumber\0kill\0lua_settop\0luaL_error\0raise\0lua\
_gettop\0lua_pushnil\0lua_remove\0luaL_checktype\0lua_toboolean\0lua_pushboolean\0malloc\0lua_g\
ethook\0lua_gethookmask\0lua_gethookcount\0lua_sethook\0lua_call\0free\0__got_start\0__got_end\
\0__data_start\0_edata\0__bss_start\0\0\0\0\0\0\0\240 \0\0\0\0\0\b\0\0\0\0\0\0\0R\^]\^P\0\0\0\
\0\0\M-( \0\0\0\0\0\b\0\0\0\0\0\0\0`\^Y\0\0\0\0\0\0\M-0 \0\0\0\0\0\b\0\0\0\0\0\0\0o\^]\^P\0\0\
\0\0\0\M-8 \0\0\0\0\0\b\0\0\0\0\0\0\0P\^X\0\0\0\0\0\0\M-@ \0\0\0\0\0\b\0\0\0\0\0\0\0u\^]\^P\0\
\0\0\0\0\M-H \0\0\0\0\0\b\0\0\0\0\0\0\0\M-p\^V\0\0\0\0\0\0\M-` \0\0\0\0\0\b\0\0\0\0\0\0\0z\^]\
\^P\0\0\0\0\0\M-p \0\0\0\0\0\b\0\0\0\0\0\0\0\M^B\^]\^P\0\0\0\0\0\0! \0\0\0\0\0\b\0\0\0\0\0\0\0\
\M^I\^]\^P\0\0\0\0\0\^P! \0\0\0\0\0\b\0\0\0\0\0\0\0\M^P\^]\^P\0\0\0\0\0 ! \0\0\0\0\0\b\0\0\0\0\
\0\0\0\M^W\^]\^P\0\0\0\0\0000! \0\0\0\0\0\b\0\0\0\0\0\0\0\M^_\^]\^P\0\0\0\0\0@! \0\0\0\0\0\b\0\
\0\0\0\0\0\0\M-'\^]\^P\0\0\0\0\0P! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-.\^]\^P\0\0\0\0\0`! \0\0\0\0\0\
\b\0\0\0\0\0\0\0\M-6\^]\^P\0\0\0\0\0p! \0\0\0\0\0\b\0\0\0\0\0\0\0\M->\^]\^P\0\0\0\0\0\M^@! \0\0\
\0\0\0\b\0\0\0\0\0\0\0\M-F\^]\^P\0\0\0\0\0\M^P! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-N\^]\^P\0\0\0\0\0\
\240! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-V\^]\^P\0\0\0\0\0\M-0! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-^\^]\^P\
\0\0\0\0\0\M-@! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-f\^]\^P\0\0\0\0\0\M-P! \0\0\0\0\0\b\0\0\0\0\0\0\0\
\M-n\^]\^P\0\0\0\0\0\M-`! \0\0\0\0\0\b\0\0\0\0\0\0\0\M-v\^]\^P\0\0\0\0\0\M-p! \0\0\0\0\0\b\0\0\
\0\0\0\0\0\M-~\^]\^P\0\0\0\0\0\0" \0\0\0\0\0\b\0\0\0\0\0\0\0\^F\^^\^P\0\0\0\0\0\^P" \0\0\0\0\0\
\b\0\0\0\0\0\0\0\^N\^^\^P\0\0\0\0\0 " \0\0\0\0\0\b\0\0\0\0\0\0\0\^U\^^\^P\0\0\0\0\0000" \0\0\0\
\0\0\b\0\0\0\0\0\0\0\^\\^^\^P\0\0\0\0\0@" \0\0\0\0\0\b\0\0\0\0\0\0\0#\^^\^P\0\0\0\0\0P" \0\0\0\
\0\0\b\0\0\0\0\0\0\0+\^^\^P\0\0\0\0\0`" \0\0\0\0\0\b\0\0\0\0\0\0\0003\^^\^P\0\0\0\0\0p" \0\0\0\
\0\0\b\0\0\0\0\0\0\0=\^^\^P\0\0\0\0\0\M^@" \0\0\0\0\0\b\0\0\0\0\0\0\0E\^^\^P\0\0\0\0\0\M^P" \0\
\0\0\0\0\b\0\0\0\0\0\0\0N\^^\^P\0\0\0\0\0\240" \0\0\0\0\0\b\0\0\0\0\0\0\0T\^^\^P\0\0\0\0\0000%0\
\0\0\0\0\0\b\0\0\0\0\0\0\0h%@\0\0\0\0\0h%@\0\0\0\0\0\b\0\0\0\0\0\0\0h%@\0\0\0\0\0(%0\0\0\0\0\0\
\^F\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\08%0\0\0\0\0\0\^F\0\0\0004\0\0\0\0\0\0\0\0\0\0\0\^X$0\0\0\0\0\
\0\a\0\0\0\r\0\0\0\0\0\0\0\0\0\0\0 $0\0\0\0\0\0\a\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0($0\0\0\0\0\0\a\
\0\0\0\^O\0\0\0\0\0\0\0\0\0\0\0000$0\0\0\0\0\0\a\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\08$0\0\0\0\0\0\a\
\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0@$0\0\0\0\0\0\a\0\0\0\^S\0\0\0\0\0\0\0\0\0\0\0H$0\0\0\0\0\0\a\0\
\0\0\^T\0\0\0\0\0\0\0\0\0\0\0P$0\0\0\0\0\0\a\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0X$0\0\0\0\0\0\a\0\0\
\0\^V\0\0\0\0\0\0\0\0\0\0\0`$0\0\0\0\0\0\a\0\0\0\^W\0\0\0\0\0\0\0\0\0\0\0"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x403000,0<PROT_NONE>,0x2<MAP_PRIVATE>,8,0)
28868 lua51 RET mmap 13079731564544/0xbe55cc0f000
28868 lua51 CALL mmap(0xbe55cc0f000,0x2000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0)
28868 lua51 RET mmap 13079731564544/0xbe55cc0f000
28868 lua51 CALL mmap(0xbe55cd10000,0x2000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x1000)
28868 lua51 RET mmap 13079732617216/0xbe55cd10000
28868 lua51 CALL mmap(0xbe55ce11000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x2000)
28868 lua51 RET mmap 13079733669888/0xbe55ce11000
28868 lua51 CALL mmap(0xbe55cf11000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x2000)
28868 lua51 RET mmap 13079734718464/0xbe55cf11000
28868 lua51 CALL mmap(0xbe55d011000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x2000)
28868 lua51 RET mmap 13079735767040/0xbe55d011000
28868 lua51 CALL getentropy(0xbe55ce11080,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe55cf11000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL chdir(0xbe4d5ad4e98)
28868 lua51 NAMI "/var/metronome"
28868 lua51 RET chdir 0
28868 lua51 CALL open(0xbe555faff98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/certmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe555faff98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/certmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211911, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864064, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=4970, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2010-2013, Kim Alvefur, Matthew Wild, Waqas Hussain
local configmanager = require "core.configmanager";
local log = require "util.logger".init("certmanager");
local ssl = ssl;
local ssl_newcontext = ssl and ssl.newcontext;
local openssl_version = require "util.auxiliary".get_openssl_version();
local load_file = require "util.auxiliary".load_file;
local tostring, type = tostring, type;
local metronome = metronome;
local resolve_path = configmanager.resolve_relative_path;
local config_path = metronome.paths.config;
local noticket, verifyext, no_compression, disable_sslv3;
if ssl then
local luasec_major, luasec_minor = ssl._VERSION:match("^(%d+)%.(%d+)");
noticket = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=4;
verifyext = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=5;
no_compression = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=5;
end
module "certmanager"
local default_ssl_config = configmanager.get("*", "ssl");
local default_capath = "/etc/ssl/certs";
local default_ciphers = "HIGH:!DES:!3DES:!PSK:!SRP:!aNULL:@STRENGTH";
if openssl_version and openssl_version >= 101 then
disable_sslv3 = true;
end
local supports_ecdh = true;
if openssl_version and openssl_version < 100 then
supports_ecdh = false;
noticket = false;
end
local default_verify = (ssl and ssl.x509 and { "peer", "client_once" }) or "none";
local default_options = { "no_sslv2", noticket and "no_ticket" };
local default_verifyext = { "lsec_continue" };
if disable_sslv3 then default_options[#default_options + 1] = "no_sslv3"; end
if not verifyext and ssl and ssl.x509 then
default_verify[#default_verify + 1] = "continue";
end
if no_compression and configmanager.get("*", "ssl_compression") ~= true then
default_options[#default_options + 1] = "no_compression";
end
function create_context(host, mode, user_ssl_config)
user_ssl_config = user_ssl_config or default_ssl_config;
if not ssl then return nil, "LuaSec (required for encryption) was not found"; end
if not user_ssl_config then return nil, "No SSL/TLS configuration present for "..host; \
end
local dhparam;
if type(user_ssl_config.dhparam) == "string" then
-- test if it's a file
local f = load_file(resolve_path(config_path, user_ssl_config.dhparam));
if f then
dhparam = function() return f; end
else
dhparam = function() return user_ssl_config.dhparam; end
end
end
local ssl_config = {
mode = mode;
protocol = user_ssl_config.protocol or "sslv23";
key = resolve_path(config_path, user_ssl_config.key);
password = user_ssl_config.password or function() log("error", "Encrypted certi\
ficate for %s requires 'ssl' 'password' to be set in config", host); end;
certificate = resolve_path(config_path, user_ssl_config.certificate);
capath = resolve_path(config_path, user_ssl_config.capath or default_capath);
cafile = resolve_path(config_path, user_ssl_config.cafile);
verify = user_ssl_config.verify or default_verify;
verifyext = user_ssl_config.verifyext or default_verifyext;
options = user_ssl_config.options or default_options;
depth = user_ssl_config.depth;
curve = user_ssl_config.curve or (supports_ecdh and "secp384r1");
dhparam = dhparam;
};
local ctx, err = ssl_newcontext(ssl_config);
if ctx then
local success;
success, err = ssl.context.setcipher(ctx, user_ssl_config.ciphers or default_ci\
phers);
if not success then ctx = nil; end
end
if not ctx then
err = err or "invalid ssl config"
local file = err:match("^error loading (.-) %(");
if file then
if file == "private key" then
file = ssl_config.key or "your private key";
elseif file == "certificate" then
file = ssl_config.certificate or "your certificate file";
end
local reason = err:match("%((.+)%)$") or "some reason";
if reason == "Per"
28868 lua51 GIO fd 8 read 874 bytes
"mission denied" then
reason = "Check that the permissions allow Metronome to read th\
is file.";
elseif reason == "No such file or directory" then
reason = "Check that the path is correct, and the file exists."\
;
elseif reason == "system lib" then
reason = "Previous error (see logs), or other system error.";
elseif reason == "(null)" or not reason then
reason = "Check that the file exists and the permissions are co\
rrect";
else
reason = "Reason: "..tostring(reason):lower();
end
log("error", "SSL/TLS: Failed to load '%s': %s (for %s)", file, reason,\
host);
else
log("error", "SSL/TLS: Error initialising for %s: %s", host, err);
end
end
return ctx, err;
end
function reload_ssl_config()
default_ssl_config = configmanager.get("*", "ssl");
end
metronome.events.add_handler("config-reloaded", reload_ssl_config);
return _M;
"
28868 lua51 RET read 4970/0x136a
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbcd28,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd28,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcd28,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL pipe2(0x7f7ffffbcdb0,0x10000<O_CLOEXEC>)
28868 lua51 RET pipe2 0
28868 lua51 CALL kbind(0x7f7ffffbccc8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL vfork()
12168 lua51 RET vfork 0
12168 lua51 CALL dup2(9,1)
12168 lua51 RET dup2 1
12168 lua51 CALL execve(0xbe4b52414a7,0x7f7ffffbcc80,0x7f7ffffbd5c0)
12168 lua51 NAMI "/bin/sh"
12168 EMUL "native"
12168 sh RET execve 0
28868 lua51 RET vfork 12168/0x2f88
28868 lua51 CALL kbind(0x7f7ffffbcc88,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL fcntl(8,F_GETFL)
28868 lua51 RET fcntl 2
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL fcntl(8,F_GETFD)
28868 lua51 RET fcntl 1
28868 lua51 CALL fcntl(8,F_SETFD,0)
28868 lua51 RET fcntl 0
28868 lua51 CALL kbind(0x7f7ffffbc8c8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL fstat(8,0x7f7ffffbc830)
28868 lua51 STRU struct stat { dev=0, ino=0, mode=p--------- , nlink=0, uid=756<"_metronome">, gid=756<"_metronome">, rdev=0, atime=1443380783<"Sep 27 19:06:23 2015">.536875775, mtime=1443380783<"Sep 27 19:06:23 2015">.536875775, ctime=1443380783<"Sep 27 19:06:23 2015">.536875775, size=0, blocks=0, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
12168 sh CALL mprotect(0x285e1a71000,0x1000,0x1<PROT_READ>)
12168 sh RET mprotect 0
12168 sh CALL kbind(0,0x7f7ffffebfc2,0)
12168 sh RET kbind 0
12168 sh CALL sysctl(6.7<hw.pagesize>,0x285e1b7ebe0,0x7f7ffffebe00,0,0)
12168 sh RET sysctl 0
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784193282048/0x2883eda0000
12168 sh CALL mprotect(0x2883eda0000,0x1000,0x1<PROT_READ>)
12168 sh RET mprotect 0
12168 sh CALL readlink(0x285e1866421,0x7f7ffffebb60,63)
12168 sh NAMI "/etc/malloc.conf"
12168 sh RET readlink -1 errno 2 No such file or directory
12168 sh CALL issetugid()
12168 sh RET issetugid 0
12168 sh CALL getentropy(0x7f7ffffebae0,40)
12168 sh RET getentropy 0
12168 sh CALL mmap(0,0x450,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2782772105216/0x287ea249000
12168 sh CALL minherit(0x287ea249000,0x450,MAP_INHERIT_ZERO)
12168 sh RET minherit 0
12168 sh CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785956909056/0x288a7f8d000
12168 sh CALL mprotect(0x288a7f8d000,0x1000,0<PROT_NONE>)
12168 sh RET mprotect 0
12168 sh CALL mprotect(0x288a7f90000,0x1000,0<PROT_NONE>)
12168 sh RET mprotect 0
12168 sh CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786073370624/0x288aee9e000
12168 sh CALL mprotect(0x285e1b7b000,0x1000,0x1<PROT_READ>)
12168 sh RET mprotect 0
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785495638016/0x2888c7a6000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784420851712/0x2884c6a7000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786890801152/0x288dfa2e000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785062019072/0x28872a1e000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784181186560/0x2883e217000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784591749120/0x288569a2000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784291168256/0x28844afa000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784535420928/0x288533ea000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785859620864/0x288a22c5000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2783530606592/0x288175a6000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786720616448/0x288d57e1000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785199738880/0x2887ad75000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785331408896/0x28882b07000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784344862720/0x28847e2f000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785529884672/0x2888e84f000
12168 sh CALL sigaction(SIGINT,0x285e1b75400,0x7f7ffffebc20)
12168 sh STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0<> }
12168 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0x2<SA_RESTART> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGINT,0x7f7ffffebc20,0)
12168 sh STRU struct sigaction { handler=0x285e172b410, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGQUIT,0x285e1b75400,0x7f7ffffebc20)
12168 sh STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0<> }
12168 sh STRU struct sigaction { handler=SIG_DFL, mask=~0x10104<SIGQUIT|SIGKILL|SIGSTOP>, flags=0x2<SA_RESTART> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGQUIT,0x7f7ffffebc20,0)
12168 sh STRU struct sigaction { handler=0x285e172b410, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGTERM,0x285e1b75400,0x7f7ffffebc20)
12168 sh STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0<> }
12168 sh STRU struct sigaction { handler=SIG_DFL, mask=~0x14100<SIGKILL|SIGTERM|SIGSTOP>, flags=0x2<SA_RESTART> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGTERM,0x7f7ffffebc20,0)
12168 sh STRU struct sigaction { handler=0x285e172b410, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGHUP,0x285e1b75400,0x7f7ffffebc40)
12168 sh STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0<> }
12168 sh STRU struct sigaction { handler=SIG_DFL, mask=~0x10101<SIGHUP|SIGKILL|SIGSTOP>, flags=0x2<SA_RESTART> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGHUP,0x7f7ffffebc40,0)
12168 sh STRU struct sigaction { handler=0x285e172b410, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784546566144/0x28853e8b000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2782842785792/0x287ee5b1000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786342322176/0x288bef1c000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785824350208/0x288a0122000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784475602944/0x2884fade000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2783875629056/0x2882beb0000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785809002496/0x2889f27f000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786037084160/0x288acc03000
12168 sh CALL stat(0x288a22c52d5,0x7f7ffffeba80)
12168 sh NAMI "/var/mail/_metronome"
12168 sh RET stat -1 errno 2 No such file or directory
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786692689920/0x288d3d3f000
12168 sh CALL getpid()
12168 sh RET getpid 12168/0x2f88
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2786370285568/0x288c09c7000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784691073024/0x2885c85b000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785263648768/0x2887ea68000
12168 sh CALL __getcwd(0x2885c85b010,1024)
12168 sh RET __getcwd 15/0xf
12168 sh CALL getppid()
12168 sh RET getppid 28868/0x70c4
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2785396674560/0x28886945000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2784725520384/0x2885e935000
12168 sh CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
12168 sh RET mmap 2783441764352/0x288120ec000
12168 sh CALL gettimeofday(0x7f7ffffeb6a0,0)
12168 sh STRU struct timeval { 1443380783<"Sep 27 19:06:23 2015">.540491 }
12168 sh RET gettimeofday 0
12168 sh CALL gettimeofday(0x7f7ffffeb730,0)
12168 sh STRU struct timeval { 1443380783<"Sep 27 19:06:23 2015">.540507 }
12168 sh RET gettimeofday 0
12168 sh CALL geteuid()
12168 sh RET geteuid 756<"_metronome">
12168 sh CALL getuid()
12168 sh RET getuid 756<"_metronome">
12168 sh CALL getgid()
12168 sh RET getgid 756<"_metronome">
12168 sh CALL getegid()
12168 sh RET getegid 756<"_metronome">
12168 sh CALL fstat(0,0x7f7ffffebd30)
12168 sh STRU struct stat { dev=0, ino=7475, mode=crw--w---- , nlink=1, uid=1000<"vagrant">, gid=4<"tty">, rdev=1286, atime=1443380783<"Sep 27 19:06:23 2015">.326908866, mtime=1443380783<"Sep 27 19:06:23 2015">.536875775, ctime=1443380783<"Sep 27 19:06:23 2015">.536875775, size=0, blocks=0, blksize=65536, flags=0x0, gen=0x0 }
12168 sh RET fstat 0
12168 sh CALL sigprocmask(SIG_SETMASK,0<>)
12168 sh RET sigprocmask 0<>
12168 sh CALL sigaction(SIGCHLD,0x285e1b75400,0x7f7ffffebc00)
12168 sh STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0<> }
12168 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL sigaction(SIGCHLD,0x7f7ffffebc00,0)
12168 sh STRU struct sigaction { handler=0x285e172b410, mask=0<>, flags=0<> }
12168 sh RET sigaction 0
12168 sh CALL stat(0x288d3d3fa10,0x7f7ffffeb880)
12168 sh NAMI "/home/vagrant/bin/openssl"
12168 sh RET stat -1 errno 2 No such file or directory
12168 sh CALL stat(0x288d3d3fa10,0x7f7ffffeb880)
12168 sh NAMI "/bin/openssl"
12168 sh RET stat -1 errno 2 No such file or directory
12168 sh CALL stat(0x288d3d3fa10,0x7f7ffffeb880)
12168 sh NAMI "/sbin/openssl"
12168 sh RET stat -1 errno 2 No such file or directory
12168 sh CALL stat(0x288d3d3fa10,0x7f7ffffeb880)
12168 sh NAMI "/usr/bin/openssl"
12168 sh STRU struct stat { dev=5, ino=52102, mode=-r-xr-xr-x , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=213392, atime=1443380744<"Sep 27 19:05:44 2015">.827545679, mtime=1442715577<"Sep 20 02:19:37 2015">, ctime=1442782580<"Sep 20 20:56:20 2015">.034789327, size=494576, blocks=1024, blksize=16384, flags=0x0, gen=0x0 }
12168 sh RET stat 0
12168 sh CALL access(0x288d3d3fa10,0x1<X_OK>)
12168 sh NAMI "/usr/bin/openssl"
12168 sh RET access 0
12168 sh CALL sigprocmask(SIG_BLOCK,0x80000<SIGCHLD>)
12168 sh RET sigprocmask 0<>
12168 sh CALL fork()
12168 sh RET fork 30412/0x76cc
12168 sh CALL sigsuspend(0<>)
30412 sh RET fork 0
30412 sh CALL getpid()
30412 sh RET getpid 30412/0x76cc
30412 sh CALL sigprocmask(SIG_SETMASK,0<>)
30412 sh RET sigprocmask 0x80000<SIGCHLD>
30412 sh CALL sigaction(SIGHUP,0x7f7ffffeb7d0,0)
30412 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
30412 sh RET sigaction 0
30412 sh CALL sigaction(SIGINT,0x7f7ffffeb7d0,0)
30412 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
30412 sh RET sigaction 0
30412 sh CALL sigaction(SIGQUIT,0x7f7ffffeb7d0,0)
30412 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
30412 sh RET sigaction 0
30412 sh CALL sigaction(SIGTERM,0x7f7ffffeb7d0,0)
30412 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
30412 sh RET sigaction 0
30412 sh CALL sigaction(SIGCHLD,0x7f7ffffeb7d0,0)
30412 sh STRU struct sigaction { handler=SIG_DFL, mask=0<>, flags=0<> }
30412 sh RET sigaction 0
30412 sh CALL execve(0x288175a6a10,0x288a22c5358,0x28847e2fa90)
30412 sh NAMI "/usr/bin/openssl"
30412 openssl NAMI "/usr/libexec/ld.so"
30412 EMUL "native"
30412 openssl RET execve 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL mprotect(0x1ee6d30d000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL getentropy(0x1ee6d410024,4)
30412 openssl RET getentropy 0
30412 openssl CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124348641280/0x1ee9d0bd000
30412 openssl CALL mprotect(0x1ee9d0bd000,0x1000,0<PROT_NONE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9d0c0000,0x1000,0<PROT_NONE>)
30412 openssl RET mprotect 0
30412 openssl CALL getentropy(0x7f7ffffc0170,8)
30412 openssl RET getentropy 0
30412 openssl CALL getentropy(0x1ee9d0bfdf0,256)
30412 openssl RET getentropy 0
30412 openssl CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121780932608/0x1ee03ffb000
30412 openssl CALL mprotect(0x1ee6d410000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124965994496/0x1eec1d7e000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125191720960/0x1eecf4c3000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122717462528/0x1ee3bd20000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124580220928/0x1eeaad97000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123353022464/0x1ee61b3e000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121342251008/0x1ede9d9f000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122636926976/0x1ee37052000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121266470912/0x1ede555a000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121517277184/0x1edf448a000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125053489152/0x1eec70ef000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123069919232/0x1ee50d41000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121868095488/0x1ee0931b000
30412 openssl CALL getentropy(0x7f7ffffc013c,4)
30412 openssl RET getentropy 0
30412 openssl CALL getentropy(0x7f7ffffc013c,4)
30412 openssl RET getentropy 0
30412 openssl CALL open(0x1ee6d10b5b1,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/var/run/ld.so.hints"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbff00)
30412 openssl STRU struct stat { dev=4, ino=27446, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=0<"wheel">, rdev=110888, atime=1443377314<"Sep 27 18:08:34 2015">.326890149, mtime=1443377314<"Sep 27 18:08:34 2015">.266893976, ctime=1443377314<"Sep 27 18:08:34 2015">.266893976, size=12946, blocks=28, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0x3292,0x1<PROT_READ>,0x2<MAP_PRIVATE>,3,0)
30412 openssl RET mmap 2122919211008/0x1ee47d87000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125229613056/0x1eed18e6000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL open(0x1ee47d88c32,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/lib/libc.so.83.0"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbefb0)
30412 openssl STRU struct stat { dev=5, ino=77954, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=312648, atime=1443380783<"Sep 27 19:06:23 2015">.496875161, mtime=1442715537<"Sep 20 02:18:57 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.424771744, size=3213460, blocks=6336, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL read(3,0x7f7ffffbf030,0x1000)
30412 openssl GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-`i\^A\0\0\0\0\0@\0\0\0\0\0\0\0\M-8\M^T.\0\
\0\0\0\0\0\0\0\0@\08\0 \0@\0001\0.\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\^^\M-J \0\0\0\0\0\^^\M-J \0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0 \M-J\
\0\0\0\0\0 \M-J\^Y\0\0\0\0\0 \M-J\^Y\0\0\0\0\0000\M^L\^A\0\0\0\0\0000\M^L\^A\0\0\0\0\0\0\
\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0PV\v\0\0\0\0\0PV+\0\0\0\0\0PV+\0\0\0\0\0X\^S\0\0\0\0\0\0X\^S\0\
\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-(i\v\0\0\0\0\0\M-(i;\0\0\0\0\0\M-(i;\0\0\0\0\0p\
\^D\0\0\0\0\0\0p\^D\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0 n\v\0\0\0\0\0 nK\0\0\0\0\0 n\
K\0\0\0\0\0,'\0\0\0\0\0\0\M-(\^Z\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0hh\v\0\0\0\0\0h\
h+\0\0\0\0\0hh+\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\08V\v\
\0\0\0\0\08V\^[\0\0\0\0\08V\^[\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\
\M-etd\^D\0\0\0\M-DO
\0\0\0\0\0\M-DO\^Z\0\0\0\0\0\M-DO\^Z\0\0\0\0\0\M-d3\0\0\0\0\0\0\M-d3\0\0\0\0\0\0\^D\0\0\0\0\0\0\
\0\M-f\M-[\M-#e\^F\0\0\0PV\v\0\0\0\0\0PV+\0\0\0\0\0PV+\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\a\^D\0\0I\^F\0\0\M-k\^C\0\0d\^C\0\0\M-t\
\^A\0\0\M-u\^A\0\0004\^C\0\0\M^Q\^B\0\0{\^E\0\0>\^F\0\0\0\0\0\0\M^]\^B\0\0\M-K\^E\0\0\a\^F\0\0\
\0\0\0\0003\^E\0\0\^X\^E\0\0\v\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\^A\0\0\0\0\0\0\M^[\0\0\0\M--\^B\
\0\0!\^E\0\0 \^B\0\0M\0\0\0\^T\^F\0\0\240\^B\0\0\0\0\0\0\M^M\^E\0\0\0\0\0\0\0\0\0\0\M-G\^C\0\0c\
\^D\0\0\M^M\^D\0\0\M-k\^A\0\0\0\0\0\08\^B\0\0\M-d\^E\0\0\0\0\0\0D\^E\0\0\0\0\0\0\M-2\^D\0\0-\^B\
\0\0\M-M\^E\0\0\0\0\0\0s\^C\0\0\0\0\0\0\M-(\^C\0\0\M^M\^B\0\0.\^D\0\0001\^E\0\0]\^B\0\0\M-C\^E\
\0\0002\^D\0\0\0\0\0\0\0\0\0\0\M-1\^B\0\0\0\0\0\0.\^F\0\0\M-(\^D\0\0\0\0\0\0<\^E\0\0\M-8\^A\0\0\
}\^A\0\0\0\0\0\0\M-o\^E\0\0\M--\0\0\0\M^F\^B\0\0\M-?\^A\0\0\0\0\0\0D\^F\0\0\0\0\0\0\M-$\^D\0\0\
\M-|\^B\0\0\M-j\^E\0\0\M^A\^E\0\0V\^D\0\08\^E\0\0\M^B\^D\0\0006\^F\0\0\0\0\0\0\M-0\^E\0\0\^T\^D\
\0\0\0\0\0\0M\^A\0\0\^D\^F\0\0\0\0\0\0\0\0\0\0g\^E\0\0\M-l\^E\0\0\M^D\^E\0\0\M-&\^C\0\0\M-,\^E\
\0\0\0\0\0\0\M-X\^E\0\0\M^J\^B\0\0\^_\^F\0\0005\^D\0\0\0\0\0\0\0\0\0\0\M-y\^B\0\0{\^D\0\0\M^B\
\^C\0\0o\^E\0\0\0\0\0\0\M-7\0\0\0\0\0\0\0[\^A\0\0\^\\^E\0\0\M--\^E\0\0\0\0\0\0\M-R\^E\0\0\M-3\
\^E\0\0\M^I\^E\0\0\0\0\0\0\M-P\^A\0\0\0\0\0\0\0\0\0\0o\0\0\0\M-u\^B\0\0\M-x\^A\0\0\^P\^D\0\0\
\M-^\^E\0\0\0\0\0\0\M^S\^C\0\0F\^A\0\0\M-a\0\0\0\0\0\0\0\^A\^F\0\0\M-h\^E\0\0\0\0\0\0\0\0\0\0\
\M^V\^D\0\0\M^X\^B\0\0>\^C\0\0\M-x\^E\0\0_\^A\0\0\M-%\^D\0\0+\^C\0\0\M^?\^D\0\0I\^E\0\0\M-5\^A\
\0\0\M^C\^D\0\0\M-^\^D\0\0\M^K\^B\0\0\0\0\0\0\0\0\0\0#\^C\0\0\M^V\^C\0\0004\^E\0\0\M-.\^E\0\0\
\M-x\^C\0\0\M-n\^E\0\0\0\0\0\0\M^L\0\0\0Z\^C\0\0\^^\^D\0\0\M^J\^E\0\0m\^E\0\0\M^G\^B\0\0\0\0\0\
\0\0\0\0\0\M-F\^E\0\0
\^C\0\0\0\0\0\0\M-q\^D\0\0\0\0\0\0=\^A\0\0\M-6\^B\0\0000\^D\0\0.\^A\0\0\M-E\^E\0\0\a\^E\0\0?\0\
\0\0\M^Z\^D\0\0O\^E\0\0"\^A\0\0\^P\^F\0\0\M^K\^E\0\0R\^E\0\0\0\0\0\0\M-]\^D\0\0\M-"\^B\0\0\^Q\
\^C\0\0\0\0\0\0\0\0\0\0\M-R\^C\0\0\M-$\^E\0\0\^P\^B\0\0\^]\^B\0\0r\^E\0\0\f\^B\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^N\^B\0\0\M-~\^B\0\0\^U\^E\0\0\\\^E\0\0\0\0\0\0\M-Q\^E\0\0\0\0\0\
\0\0\0\0\0\M^[\^E\0\0\0\0\0\0A\^F\0\0\0\0\0\0\^[\^E\0\0\M-C\^D\0\0\v\^F\0\0\M^G\^E\0\0\^F\^F\0\
\0O\^C\0\0\v\^E\0\0\0\0\0\0\M-r\^C\0\0\M^P\^E\0\0\M-n\^C\0\0\M-9\^B\0\0\0\0\0\0\0\0\0\0\M-{\^C\
\0\0\^F\^A\0\0?\^E\0\0\^_\^C\0\0\0\0\0\0G\^E\0\0\M-9\^E\0\0&\^F\0\0\M-}\^E\0\0`\^D\0\0
\^F\0\0\^V\^E\0\0\M-^\^B\0\0b\^E\0\0\M^V\^B\0\0\M-G\^D\0\0\M-v\^A\0\0\M^F\0\0\0\M-U\^A\0\0\0\0\
\0\0\0\0\0\0\M^T\^E\0\0\M-v\^D\0\0\0\0\0\0]\^A\0\0\0\0\0\0\M-B\^E\0\0\^[\^A\0\0Q\^C\0\0\M^D\^C\
\0\0\M-m\^D\0\0\^R\^F\0\0\r\^E\0\0\M-5\^D\0\0\M-O\^E\0\0\M-v\^B\0\0\M-<\^E\0\0\M-4\^B\0\0\M-Q\
\^D\0\0Y\^C\0\0\^X\^C\0\0\M^H\0\0\0u\^B\0\0\M-3\^D\0\0%\^A\0\0\M-.\^A\0\0\0\0\0\0\M-S\^C\0\0B\
\^E\0\0D\^A\0\0\M-Z\^E\0\0P\^D\0\0+\^F\0\0s\^E\0\0\^A\^D\0\0\M-\\^E\0\0\M-k\^D\0\0O\^B\0\0\0\0\
\0\0.\^C\0\0\0\0\0\0\M-~\^E\0\0\^E\^E\0\0\0\0\0\0\240\^C\0\0\M-?\^C\0\0\0\0\0\0=\^E\0\0\0\0\0\0\
t\^E\0\0\M-5\0\0\0W\0\0\0\0\0\0\0\^O\^D\0\0\M-[\^E\0\0F\^E\0\0d\^E\0\0\0\0\0\0\M-H\^C\0\0\0\0\0\
\09\^A\0\0x\^A\0\0?\^D\0\0#\^E\0\0\0\0\0\0\^N\^E\0\0\^X\^F\0\0\r\^F\0\0@\^E\0\0\M-w\^E\0\0\M-p\
\^B\0\0z\^C\0\0\^A\^B\0\0R\^A\0\0\0\0\0\0\^_\^D\0\0Z\^D\0\0\M-m\^C\0\0\M-W\^C\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M^I\^B\0\0\M^^\^B\0\0\M-I\0\0\0\M^H\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\0B\^D\0\0\0\0\0\0\
\M-q\^E\0\0\M-A\^D\0\0W\^B\0\0n\^C\0\0v\^C\0\0\M-)\^D\0\0c\^A\0\0\M-y\^E\0\0>\^E\0\0\r\^C\0\0\0\
\0\0\0\^T\^E\0\0\M-?\^D\0\0\0\0\0\0007\^D\0\0\M-V\0\0\0/\^D\0\0\0\0\0\0\^W\^E\0\0\M-]\^C\0\0\
\M-5\^E\0\0\0\0\0\0\M-&\^D\0\0\M-:\^E\0\0\M-N\^A\0\0\M-.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-(\^E\0\
\0\^A\^A\0\0y\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0m\^B\0\0\M-+\^D\0\0\0\0\0\0S\^E\0\0\M-8\^E\
\0\0\M-*\^E\0\0\M-#\^A\0\0C\^D\0\0\M^Z\^E\0\0000\^C\0\0\^V\^F\0\0]\^D\0\0\^E\^C\0\0\M-D\^A\0\0\
\0\0\0\0b\^D\0\0\M-8\^C\0\0^\^C\0\0\0\0\0\0\0\^D\0\0?\^F\0\0G\^F\0\0\M-!\^E\0\0\M-S\^E\0\0\M^Q\
\^D\0\0H\^F\0\0\M-n\^B\0\0001\^D\0\0\^X\^D\0\0a\^D\0\0\M^U\^D\0\0\M-S\^D\0\0\M-.\^B\0\0\M-N\0\0\
\0U\^E\0\0,\^F\0\0\M-@\^E\0\0\0\0\0\0I\^C\0\0\^S\^D\0\0L\^D\0\0u\^C\0\0l\^E\0\0 \0\0\0/\^F\0\0Y\
\^D\0\0\^Y\^F\0\0*\^C\0\0H\^D\0\0p\^C\0\0\M^^\^C\0\0J\^A\0\0\0\0\0\0=\^D\0\0{\^A\0\0\0\0\0\0\
\M-+\^A\0\0\M-u\^C\0\0\M-9\^A\0\0?\^C\0\0f\^B\0\0\M-4\^D\0\0\^C\^D\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\M-E\^D\0\0v\^B\0\0\M^Q\^E\0\0\M-V\^D\0\0\M-Q\^C\0\0005\^C\0\0\0\0\0\0\0\0\0\0J\^E\0\0(\
\^A\0\0\M-T\^A\0\0\M-e\^E\0\0F\^C\0\0\0\0\0\0\M-b\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0<\^D\0\0\0\0\0\
\0\0\0\0\0[\^D\0\0r\^C\0\0(\^D\0\0h\^B\0\0-\^C\0\0\0\0\0\0\M^X\^D\0\0\0\0\0\0\M-f\^B\0\0_\^D\0\
\0\M-D\^E\0\0o\^B\0\0 \^C\0\0\0\0\0\0E\^D\0\0\M^K\^A\0\0\M^G\^C\0\0\0\0\0\0d\0\0\0}\^D\0\0\M-"\
\^E\0\0S\^B\0\0\0\0\0\0\M-n\^D\0\0,\^E\0\0002\^F\0\0\0\0\0\0\M^O\^C\0\0\M-F\^B\0\0\M-|\^E\0\0\
\^N\^F\0\0\^S\^F\0\0\M^B\^E\0\0\M^L\^D\0\0\0\0\0\0\M-V\^E\0\0\0\0\0\0r\^D\0\0F\^F\0\0\0\0\0\0\
\M^P\^C\0\0\M-q\^B\0\0\M-I\^B\0\0\M-^\^C\0\0!\^F\0\0\M^H\^D\0\0i\0\0\0\^_\^E\0\0a\^B\0\0;\^F\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\M^A\^A\0\0\M-d\^D\0\0\0\0\0\0$\^F\0\0\M-5\^C\0\0\^Y\^E\0\0\M-U\^D\0\
\0\0\0\0\0\0\0\0\0;\^A\0\0N\^A\0\0i\^E\0\0\^D\^B\0\0\M-r\^B\0\0j\^E\0\0\0\0\0\0\0\0\0\0003\^C\0\
\0?\^A\0\0 \^F\0\0\b\^F\0\0\M-L\^E\0\0\0\0\0\09\^F\0\0\a\^A\0\0\M-J\^C\0\0J\^D\0\0\^X\^A\0\
\0\M-w\^C\0\0\0\0\0\0C\^E\0\0,\^B\0\0\M-0\^D\0\0\^Z\^C\0\0\M-]\^A\0\0\M-x\^B\0\0005\^F\0\0\M-b\
\^C\0\0\M-k\^E\0\0\M-_\0\0\0\^B\^F\0\0
\^A\0\0\0\0\0\0x\^C\0\0\M^O\^D\0\0\M-t\^D\0\0>\^D\0\0'\^F\0\0'\^C\0\0M\^E\0\0\0\0\0\0\M-N\^D\0\
\0\0\0\0\0Q\^E\0\0\M-e\^D\0\0X\^D\0\0\M-c\^D\0\0\0\0\0\0\0\0\0\0\M-o\0\0\0\0\0\0\0L\0\0\0\M-/\0\
\0\0T\^B\0\0}\^E\0\0^\^D\0\0\0\0\0\0003\^D\0\0\0\0\0\0\M-9\^C\0\08\^F\0\0\M^M\^C\0\0>\0\0\0\^E\
\^D\0\0k\^E\0\0\M-{\^B\0\0\M-\\^B\0\0\^V\^B\0\0\^]\^A\0\0,\^A\0\0\M-W\^E\0\0\^Z\^A\0\0\M-a\^C\0\
\0\0\0\0\0\M-t\^B\0\0T\^E\0\0\M^R\^E\0\0\M-{\^E\0\08\^A\0\0j\^D\0\0\M-u\^D\0\0E\^C\0\0\0\0\0\0\
\^\\^F\0\0\M-m\^A\0\0\M-1\^D\0\0\M-g\^A\0\0H\^E\0\0q\^A\0\0\0\0\0\0V\^E\0\0M\^C\0\0\a\^D\0\0\
\M-4\^C\0\0\M-z\^A\0\0\0\^E\0\0\M-`\^E\0\0|\^D\0\0\M-[\^D\0\0)\^F\0\0\M-J\^B\0\0\M-/\^D\0\0\M^_\
\^A\0\0\M^K\^D\0\0!\^D\0\0\M^V\0\0\0P\^B\0\0}\^B\0\0004\^F\0\0\0\0\0\0l\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\M^F\^C\0\0\M-_\^E\0\0\0\0\0\0\0\0\0\0T\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^_\^E\0\0\
N\^E\0\0\0\0\0\0\0\0\0\0\M-0\^A\0\0\M-+\^E\0\0"\^F\0\0\^Z\^D\0\0\M-4\^E\0\0\0\0\0\0\M-i\^E\0\0\
\0\0\0\0[\^C\0\0\M-=\^A\0\0\^P\^C\0\0q\^D\0\0\M-f\^D\0\0@\^F\0\0\M^^\^D\0\0K\0\0\0\M-7\^B\0\0}\
\^C\0\0007\^F\0\0\0\0\0\0\M-2\^A\0\0\0\0\0\0\0\0\0\0003\^B\0\0\0\0\0\0P\^C\0\0b\^C\0\0\0\0\0\0\
\M^A\^D\0\0007\^B\0\0*\^F\0\0\M^N\^C\0\0\M-4\^A\0\0\M-m\^E\0\0\0\0\0\0\0\0\0\0\M-1\^C\0\0\M^K\
\^C\0\0\M-Y\^A\0\0\^[\^F\0\0\M->\^E\0\0\M-,\^D\0\0\M^Q\0\0\0\M-,\^C\0\0\M-*\^B\0\0a\0\0\0m\^C\0\
\0u\^D\0\0\M^E\^E\0\0\M-P\^E\0\0\M-M\^B\0\0\M-<\^D\0\0\0\0\0\0\0\0\0\0\M-R\^D\0\0\M-}\^C\0\0\
\M-.\^D\0\0\M-Z\^C\0\0\\\^B\0\0-\^E\0\0\M-N\^E\0\0U\^A\0\0\0\0\0\0\M-:\^C\0\0\M-R\0\0\0\^R\^E\0\
\0:\^E\0\0\M-/\^C\0\0e\^E\0\0`\^C\0\0\M-2\^C\0\0w\^E\0\0\M-h\^B\0\0\^T\^C\0\0\M^F\^E\0\0&\^C\0\
\0\M-T\^B\0\0\0\0\0\0 \^F\0\08\^D\0\0\M-I\^C\0\0s\^B\0\0\M-g\^E\0\0\M-{\^D\0\0@\^D\0\0\0\^F\0\0\
\0\0\0\0-\^F\0\0\M-V\^C\0\0\M-H\^D\0\0'\^E\0\0E\^F\0\0v\^D\0\0\0\0\0\0%\^D\0\0\M--\^D\0\0\0\0\0\
\0\0\0\0\0\M-X\^D\0\0\0\0\0\0%\^C\0\0\M-Z\^B\0\0\M^W\^E\0\0\M-r\^E\0\0\M-c\^A\0\0\0\0\0\0\0\0\0\
\0W\^C\0\0\0\0\0\0\^E\^F\0\0\0\0\0\0[\0\0\0J\^C\0\0\0\0\0\0\0\0\0\0)\^D\0\0\M-p\^E\0\0\^O\0\0\0\
\M-O\^B\0\0\M-q\0\0\0006\^C\0\0\M-(\^B\0\0\0\0\0\0:\^F\0\0\M^[\^C\0\0#\^D\0\0~\^B\0\0\M-l\^B\0\
\0\M^]\^E\0\0\M-=\^E\0\0\M-~\^D\0\0\M-'\^E\0\0)\^B\0\0+\^D\0\0\^W\^C\0\0\^T\^B\0\0\0\0\0\0003\
\^F\0\0E\^E\0\0q\^E\0\0\0\0\0\0\^Q\^F\0\0\0\0\0\0\M-Y\^B\0\0\0\0\0\0c\^E\0\0\M-E\^C\0\0\f\^E\0\
\0\M^J\^C\0\0\M-v\^E\0\0H\^B\0\0\M-+\^B\0\0\M-$\^C\0\0\M-]\^E\0\0\M-J\^D\0\0\M-*\^A\0\0G\^D\0\0\
\M-U\^E\0\0\M^C\^E\0\0=\^F\0\0\M-f\^E\0\0\0\0\0\0004\0\0\0\M^[\^D\0\0q\^C\0\0r\^A\0\0\M-k\^B\0\
\0\0\0\0\0\M-_\^C\0\09\^C\0\0\M-;\^D\0\0v\^E\0\0\M-#\^E\0\0\0\0\0\0%\^F\0\0\0\0\0\0j\^B\0\0\M^C\
\0\0\0\M-&\0\0\0\M-I\^D\0\0\0\0\0\0\M-I\^A\0\0\M-X\0\0\0\^C\^C\0\0\M-'\^D\0\0\M-N\^C\0\0W\^E\0\
\0U\^C\0\0\0\0\0\0\M^G\0\0\0k\^A\0\0\M-B\^A\0\0\M^X\0\0\0\0\0\0\0\^R\^C\0\0,\^D\0\0\M-P\^D\0\0\
\M-F\^C\0\0\0\0\0\0\M^O\^E\0\0\M-B\0\0\0"\^E\0\0\^D\^E\0\0"
30412 openssl RET read 4096/0x1000
30412 openssl CALL mmap(0,0x4c9000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
30412 openssl RET mmap 2125378265088/0x1eeda6aa000
30412 openssl CALL mmap(0x1eeda6aa000,0x9d000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
30412 openssl RET mmap 2125378265088/0x1eeda6aa000
30412 openssl CALL mmap(0x1eeda846000,0x1a000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x9c000)
30412 openssl RET mmap 2125379952640/0x1eeda846000
30412 openssl CALL mmap(0x1eeda95f000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb5000)
30412 openssl RET mmap 2125381103616/0x1eeda95f000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123518820352/0x1ee6b95c000
30412 openssl CALL mmap(0x1eedaa60000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb6000)
30412 openssl RET mmap 2125382156288/0x1eedaa60000
30412 openssl CALL mmap(0x1eedab60000,0x4000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0xb6000)
30412 openssl RET mmap 2125383204864/0x1eedab60000
30412 openssl CALL mmap(0x1eedab64000,0xf000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125383221248/0x1eedab64000
30412 openssl CALL getentropy(0x1eeda95f650,8)
30412 openssl RET getentropy 0
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122592047104/0x1ee34585000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123958292480/0x1ee85c79000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124463239168/0x1eea3e07000
30412 openssl CALL open(0x1ee47d89010,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/lib/libssl.so.37.0"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbefb0)
30412 openssl STRU struct stat { dev=5, ino=77979, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=325344, atime=1443380783<"Sep 27 19:06:23 2015">.506873917, mtime=1442715560<"Sep 20 02:19:20 2015">, ctime=1442782576<"Sep 20 20:56:16 2015">.934776924, size=1468394, blocks=2912, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL read(3,0x7f7ffffbf030,0x1000)
30412 openssl GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-p\M^H\^A\0\0\0\0\0@\0\0\0\0\0\0\0\M-`\M-+\
\^U\0\0\0\0\0\0\0\0\0@\08\0 \0@\0"\0\^_\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0^R\^D\0\0\0\0\0^R\^D\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0`R\^D\0\0\0\0\
\0`R\^T\0\0\0\0\0`R\^T\0\0\0\0\0\M-h\M-=\0\0\0\0\0\0\M-h\M-=\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\
\0\0\^F\0\0\0H\^P\^E\0\0\0\0\0H\^P%\0\0\0\0\0H\^P%\0\0\0\0\0P$\0\0\0\0\0\0P$\0\0\0\0\0\0\0\0\^P\
\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M^X4\^E\0\0\0\0\0\M^X45\0\0\0\0\0\M^X45\0\0\0\0\0h\^U\0\0\0\0\0\0h\
\^U\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0J\^E\0\0\0\0\0\0JE\0\0\0\0\0\0JE\0\0\0\0\0\
\^XI\0\0\0\0\0\0\^XI\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0H3\^E\0\0\0\0\0H3%\0\0\0\0\0\
H3%\0\0\0\0\0P\^A\0\0\0\0\0\0P\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0000\^P\^E\0\0\0\
\0\0000\^P\^U\0\0\0\0\0000\^P\^U\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\
\M-etd\^D\0\0\0\M-x\M-4\^D\0\0\0\0\0\M-x\M-4\^T\0\0\0\0\0\M-x\M-4\^T\0\0\0\0\0,\^S\0\0\0\0\0\0,\
\^S\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0H\^P\^E\0\0\0\0\0H\^P%\0\0\0\0\0H\^P%\0\0\
\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^B\0\0\M-$\^C\0\0}\^C\0\0p\^B\0\0~\^B\0\0D\0\0\0w\^B\0\0/\^C\0\0l\0\0\0\M-M\^A\0\0001\^C\
\0\0;\^C\0\0\M-#\^B\0\0\^R\^C\0\0\b\^B\0\0e\^C\0\0\f\^C\0\0\M-d\^B\0\0\M-.\^B\0\0H\0\0\0\0\0\0\
\0\M-V\^B\0\0\0\0\0\0\0\0\0\0[\^A\0\0\^E\^A\0\0\M-|\^A\0\0\M-9\^B\0\0"\0\0\0\0\0\0\0D\^C\0\0v\
\^B\0\0\M^D\^B\0\0\0\0\0\0a\^C\0\0\M-#\^C\0\0'\^B\0\0\M-Y\^B\0\0\v\^C\0\0\0\0\0\0\^D\^B\0\0G\^B\
\0\0/\^B\0\0\0\0\0\0,\^A\0\0=\^C\0\0\0\0\0\0\M-`\^B\0\0\0\0\0\0\M^@\^C\0\0S\^B\0\0\0\0\0\0)\^C\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^?\^B\0\0<\0\0\0\^O\^A\0\0001\^B\0\0\M^W\0\0\0\0\0\0\0\M^R\0\0\0\
\M-A\^A\0\0\M-f\0\0\0\^N\^B\0\0[\^B\0\0F\^A\0\0\M-y\^B\0\0$\^B\0\0\0\0\0\0\0\0\0\0>\0\0\0\0\0\0\
\0\M^C\^B\0\0\M^Z\^A\0\0\^[\^B\0\0\M^Z\^C\0\0\M-%\^B\0\0H\^C\0\0\M^D\^C\0\0\M-!\^C\0\0.\^C\0\0\
\^]\0\0\0+\^C\0\0\M^Y\^C\0\0\M-@\^B\0\0\M^I\0\0\0>\^C\0\0p\^C\0\0\M-v\^B\0\0\0\0\0\09\^A\0\0\0\
\0\0\0\M-:\^A\0\0\a\^C\0\0\M-c\^B\0\0:\^A\0\0\M-g\^B\0\0%\^C\0\0?\^C\0\0\M^U\^C\0\0\0\0\0\0j\^B\
\0\0\b\^A\0\0#\^C\0\0\M-1\^B\0\0\M^^\^A\0\0\0\0\0\0\r\^A\0\0\M^]\^B\0\0\^B\^C\0\0S\0\0\0\M^E\^C\
\0\0\M^[\^C\0\0\M-"\^B\0\0\M^]\^A\0\0\0\0\0\0\0\0\0\0\M^^\^C\0\0\M-C\^A\0\0\^Z\^C\0\0\M-W\^B\0\
\0\240\^C\0\0\0\0\0\0z\^B\0\0I\0\0\0r\^A\0\0P\^C\0\0000\^C\0\0x\^C\0\0/\^A\0\0\0\0\0\0\M^S\^C\0\
\0:\^B\0\0\^^\^C\0\0\^X\^A\0\0\0\0\0\0\M^G\^C\0\0\0\0\0\0U\^B\0\0U\^C\0\0 \^B\0\0\^?\0\0\
\0L\^B\0\0\M-T\^A\0\0\M-[\^B\0\0\0\0\0\0\M-o\^B\0\0\M-0\^A\0\0\M-N\0\0\0N\^C\0\0\^P\^A\0\0\0\0\
\0\0\M-l\^B\0\0k\^C\0\0\0\^A\0\0&\^C\0\0\M-0\^B\0\0\M-0\0\0\0\M-/\^A\0\0R\^C\0\0}\^A\0\0\M-:\^B\
\0\0\M^B\^B\0\0\M^N\^B\0\0\M-z\^B\0\0\0\0\0\0E\^B\0\0\^E\^B\0\0\M-2\^B\0\0\a\^A\0\0\^C\^C\0\0\
\M^B\^C\0\0h\^C\0\0\^F\^B\0\0H\^B\0\0\0\0\0\0\M-+\^B\0\0\M^U\^A\0\0\M-E\0\0\0K\^A\0\0\^F\^C\0\0\
v\^A\0\0\M-{\^A\0\0A\^B\0\0D\^A\0\0*\0\0\0\M-&\^A\0\0{\^A\0\0{\^B\0\0\M^_\^B\0\0\0\0\0\0\0\0\0\
\0\240\^B\0\0\M-$\^B\0\0M\^C\0\0\M-+\^A\0\0d\0\0\0(\^A\0\0\0\0\0\0\^V\0\0\0 \^A\0\0\0\0\0\0L\^C\
\0\0\M-_\^B\0\0F\^C\0\0\M-*\^A\0\0N\^A\0\0\0\0\0\0002\^C\0\0 \^C\0\0\0\0\0\0\M-B\^B\0\0t\0\0\0\
\M-L\0\0\0\0\0\0\0\b\^C\0\0\M-h\^B\0\0\M^L\^C\0\0s\^C\0\0\M^O\^C\0\0\M^M\^C\0\0B\^C\0\0\M-'\^A\
\0\0\0\0\0\0\\\^B\0\0\0\0\0\0\M-E\^A\0\0\M-{\^B\0\0\M^J\^C\0\0\M-'\^B\0\0\0\0\0\0003\^C\0\0\M-u\
\^B\0\0\M-*\^B\0\08\^C\0\0\M-B\^A\0\0006\0\0\0\M^\\^C\0\0\^V\^C\0\0\M-x\0\0\0K\^C\0\0005\^B\0\0\
\M^_\^C\0\0B\^B\0\0\M-C\^B\0\0\M-m\^A\0\0\M^X\^C\0\0w\^C\0\0\M-Y\0\0\0\^]\^A\0\0\0\0\0\0'\^C\0\
\0\M^[\0\0\0\M-h\^A\0\0\0\0\0\0O\^A\0\0\0\0\0\0\M-7\^B\0\0\M-!\^A\0\0f\^A\0\0\v\^B\0\0\M-3\^B\0\
\0Y\^C\0\0\^V\^B\0\0*\^B\0\0\M^I\^B\0\0u\^C\0\0Q\^A\0\0\0\0\0\0\^B\^A\0\0]\0\0\0_\^C\0\0x\^A\0\
\0C\^B\0\0\M^F\^C\0\0005\^C\0\0\M^X\^B\0\0<\^A\0\0\0\0\0\0002\^A\0\0@\0\0\0f\^C\0\0j\^C\0\0\M-)\
\^B\0\0\^C\^A\0\0T\^B\0\0\M^M\^B\0\0\M^]\^C\0\0C\^C\0\0\M-&\^B\0\0\0\0\0\0h\^B\0\0n\^C\0\0\M-Z\
\^A\0\0\^X\^C\0\0\0\0\0\0\0\0\0\0#\0\0\0\M-}\^B\0\0\M^Q\^B\0\0z\^C\0\0\M-A\^B\0\0 \^B\0\0\^T\0\
\0\0\M^C\^C\0\0A\^C\0\0,\^B\0\0\M-n\^B\0\0>\^A\0\0\M^U\^B\0\0\M^E\^A\0\0\f\^B\0\0\0\0\0\0\^N\^C\
\0\0\0\0\0\0@\^C\0\0\0\0\0\0\M-D\^B\0\0Z\^C\0\0\M--\^A\0\0{\^C\0\0\M-!\0\0\0\^U\^A\0\0\M-i\^B\0\
\0\0\0\0\0\^?\^C\0\0k\0\0\0o\^B\0\0\M-E\^B\0\0F\0\0\0m\^B\0\0\^B\^B\0\0\0\0\0\0\M-<\^A\0\0\M^V\
\^A\0\0G\^C\0\0\M^P\^C\0\0|\^B\0\0\M-8\0\0\0J\^C\0\0\^W\^B\0\0\^E\^C\0\0W\0\0\0\0\0\0\0\^V\^A\0\
\0\M-~\^B\0\0\0\0\0\0\0\0\0\0v\^C\0\0y\^C\0\0\f\^A\0\0\M-/\0\0\0\^O\^C\0\0\M-H\^A\0\0q\^A\0\0\
\M-f\^B\0\0y\^B\0\0\M^?\^B\0\0\0\0\0\0\M^L\^A\0\0\^P\^C\0\0\M-"\^C\0\0\M^Q\^C\0\0T\^C\0\0\0\0\0\
\0,\^C\0\0\M-y\0\0\0\0\0\0\0\M-2\^A\0\0\0\0\0\0\M^K\^C\0\0q\^C\0\0\M^W\^B\0\0\M-3\0\0\0\M^T\^B\
\0\0\M-7\^A\0\0&\^B\0\0\M-r\^B\0\0*\^C\0\0r\0\0\0\M^P\0\0\0\M-J\^B\0\0`\^A\0\0\^U\^C\0\0\M^S\^A\
\0\0\M-^\^B\0\0\^W\^C\0\0\M^T\^C\0\0\M-D\^A\0\0\M-b\^A\0\0c\^C\0\0\M-\\^A\0\0\^A\^B\0\0\0\0\0\0\
]\^C\0\0\M-M\^B\0\0\M^H\^C\0\0E\^C\0\0\0\0\0\0t\^C\0\0\0\0\0\0\0\0\0\0\M^I\^C\0\0\0\0\0\0\0\0\0\
\0%\^A\0\0004\^A\0\0U\0\0\0m\^A\0\0\M-N\^B\0\0\0\0\0\0\M^X\^A\0\0000\^A\0\0\^Q\^C\0\0\M-v\^A\0\
\0\M^T\^A\0\0\M^P\^A\0\0\0\0\0\0\M-m\^B\0\0\M^R\^B\0\0\M-?\0\0\0\0\0\0\0\M-F\^B\0\0Q\^C\0\0d\^A\
\0\0\M-H\^B\0\0`\^C\0\0\M-4\^B\0\0\M-%\^A\0\0\0\0\0\0\0\0\0\0~\^C\0\0\0\0\0\0E\^A\0\0\0\0\0\0^\
\^B\0\0\0\0\0\0b\^C\0\0-\^B\0\0\0\^B\0\0g\^C\0\0\M^F\0\0\0\M-N\^A\0\0\0\0\0\0\^O\^B\0\0\M^S\^B\
\0\0\M^L\^B\0\0O\^B\0\0o\^C\0\0\M-X\^A\0\0u\^A\0\0\M-)\0\0\0\M^V\^C\0\0!\^C\0\0\0\0\0\0\0\0\0\0\
\M-Z\^B\0\0\M^S\0\0\0>\^B\0\0\0\0\0\0\M^A\^C\0\0\M-i\0\0\0\0\0\0\0\0\0\0\0\M-?\^B\0\0004\^C\0\0\
\M-u\^A\0\0\0\0\0\0\M^M\^A\0\0M\^A\0\0\M^R\^C\0\0\0\0\0\0\0\0\0\0\\\0\0\0\0\0\0\0\M-]\^B\0\0\
\^C\0\0\^\\^C\0\0W\^C\0\0\r\^B\0\0\0\0\0\0007\^C\0\0\\\^C\0\0\0\0\0\0u\^B\0\0\0\0\0\0i\^C\0\
\0P\^B\0\0006\^C\0\0\0\0\0\0\^_\^C\0\0\0\0\0\0|\^C\0\0\M-F\^A\0\0c\^A\0\09\^B\0\0\^_\^A\0\0e\^A\
\0\0o\^A\0\0<\^C\0\0I\^A\0\0\0\0\0\0&\^A\0\0002\^B\0\0V\^C\0\0\M^@\^B\0\0t\^B\0\0;\0\0\0\M^G\^A\
\0\0\M-f\^A\0\0\0\0\0\08\0\0\0\M^N\^C\0\0\M-a\^B\0\0\0\0\0\0\M-T\^B\0\0g\^B\0\0\0\0\0\0\M^Y\0\0\
\0\M^W\^C\0\0^\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\^[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^S\0\0\0\
\0\0\0\0\0\0\0\0001\0\0\0\0\0\0\0\0\0\0\0&\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\^Z\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0C\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0/\0\0\0\0\0\0\0i\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0K\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0007\0\0\0\
\M^E\0\0\0\0\0\0\0\M^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\0\0\0\0\0\0\0\^\\0\0\0J\0\0\0\0\0\0\0\M-4\0\0\0\M^_\0\0\0\M-'\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0004\0\0\0\M-7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-5\0\0\0\0\0\0\0M\0\0\0\
\M->\0\0\0\0\0\0\0p\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\0\0\
\0j\0\0\0\0\0\0\0o\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0O\0\0\0\0\0\0\0\0\0\0\0Y\0\0\0\0\0\0\0L\
\0\0\0\0\0\0\0\^R\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0\0\0\M-6\0\0\0\0\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\M-I\0\0\0\0\0\0\0\M-A\0\0\0\0\0\0\0A\0\0\0\M-h\0\0\0\M-k\0\0\0\0\0\0\0\0\0\0\
\0=\0\0\0\M-K\0\0\0\0\0\0\0\0\0\0\0\M-\\0\0\0\0\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\M-]\0\0\0N\0\0\0\
\0\0\0\0\0\0\0\0\M-z\0\0\0^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-B\0\0\0{\0\0\0\0\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^A\0\0g\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-.\0\0\0\0\0\0\0\0\0\0\0003\0\0\0\0\0\0\0\0\0\0\0\M-Z\
\0\0\0\M-+\0\0\0\0\0\0\0\0\0\0\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^D\0\0\0x\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\^\\^A\0\0\0\0\0\0\M-"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-H\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\M^G\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
30412 openssl RET read 4096/0x1000
30412 openssl CALL mmap(0,0x45a000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
30412 openssl RET mmap 2124718587904/0x1eeb318c000
30412 openssl CALL mmap(0x1eeb318c000,0x46000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
30412 openssl RET mmap 2124718587904/0x1eeb318c000
30412 openssl CALL mmap(0x1eeb32d1000,0xd000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x45000)
30412 openssl RET mmap 2124719919104/0x1eeb32d1000
30412 openssl CALL mmap(0x1eeb33dd000,0x3000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x51000)
30412 openssl RET mmap 2124721016832/0x1eeb33dd000
30412 openssl CALL mmap(0x1eeb34df000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x53000)
30412 openssl RET mmap 2124722073600/0x1eeb34df000
30412 openssl CALL mmap(0x1eeb35e0000,0x6000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x54000)
30412 openssl RET mmap 2124723126272/0x1eeb35e0000
30412 openssl CALL getentropy(0x1eeb33dd048,8)
30412 openssl RET getentropy 0
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL open(0x1ee47d88c4f,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/lib/libcrypto.so.36.0"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbefb0)
30412 openssl STRU struct stat { dev=5, ino=77955, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=314232, atime=1443380783<"Sep 27 19:06:23 2015">.506873917, mtime=1442715547<"Sep 20 02:19:07 2015">, ctime=1442782575<"Sep 20 20:56:15 2015">.874767638, size=6659008, blocks=13056, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL read(3,0x7f7ffffbf030,0x1000)
30412 openssl GIO fd 3 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M^@\^Q\a\0\0\0\0\0@\0\0\0\0\0\0\0\M^H\M-$a\0\
\0\0\0\0\0\0\0\0@\08\0 \0@\0#\0 \0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-^\M-M\^T\0\0\0\0\0\M-^\M-M\^T\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M-`\M-M\^T\
\0\0\0\0\0\M-`\M-M$\0\0\0\0\0\M-`\M-M$\0\0\0\0\0(\M^@\^E\0\0\0\0\0(\M^@\^E\0\0\0\0\0\0\0\^P\0\0\
\0\0\0\^A\0\0\0\^F\0\0\0\bN\^Z\0\0\0\0\0\bN:\0\0\0\0\0\bN:\0\0\0\0\0\M-0\M^O\^A\0\0\0\0\0\M-0\
\M^O\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-8\M-]\^[\0\0\0\0\0\M-8\M-]K\0\0\0\0\0\
\M-8\M-]K\0\0\0\0\0HJ\0\0\0\0\0\0HJ\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0(\^\\0\0\0\
\0\0\0(\\\0\0\0\0\0\0(\\\0\0\0\0\0\M-x\M^U\0\0\0\0\0\0@\M-7\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\
\0\^F\0\0\0x\M-\\^[\0\0\0\0\0x\M-\;\0\0\0\0\0x\M-\;\0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M-pM\^Z\0\0\0\0\0\M-pM*\0\0\0\0\0\M-pM*\0\0\0\0\0\^X\0\0\0\0\0\
\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0\M-(\M-9\^W\0\0\0\0\0\M-(\M-9'\0\0\0\0\0\
\M-(\M-9'\0\0\0\0\0\M-|\M^K\0\0\0\0\0\0\M-|\M^K\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\
\0\0\bN\^Z\0\0\0\0\0\bN:\0\0\0\0\0\bN:\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\b\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^E\b\0\0D\^O\0\0\0\0\0\0\M-u\^N\0\0\0\0\0\0,
\0\0\0\0\0\0\0\0\0\08\^N\0\0\M-H\^N\0\0\0\0\0\0\0\0\0\0\M-, \0\0
\^C\0\0\M-!\v\0\0\^]\^N\0\0)\^E\0\0\M-,\^N\0\0\M-s\v\0\0\M-3\^N\0\0M\^N\0\0\M^^\b\0\0\^C\^E\0\
\0002\^E\0\0\M-c\f\0\0'\v\0\0\M^Y\b\0\0\^N\b\0\0\^F\a\0\0c\^E\0\0 \f\0\0*\v\0\0\M-C\r\0\0\
\0\0\0\0\M-W\^D\0\0\M-}\r\0\0002 \0\0\M^@\^N\0\0\0\0\0\0\M-" \0\0\0\0\0\0\M^X\b\0\0\
\b\^N\0\0\M-p\f\0\0}\^N\0\0\0\0\0\0\M-E\f\0\0\M-+\f\0\0\0\0\0\0\^R\0\0\0\M-P
\0\0\M^S\f\0\0\M-G\^N\0\0\M^?\f\0\0\^[\f\0\0\0\0\0\0;\r\0\0'\^B\0\0j\f\0\0+\f\0\0\0\0\0\0\M-l\
\^F\0\0?\v\0\0:\^E\0\0\^Y\^D\0\0\M-%\^N\0\0N\^F\0\0\M-x\a\0\0\M-Y\b\0\0\M-f\b\0\0\M-V\0\0\0\M-8\
\^E\0\0V\v\0\0Y \0\0~\v\0\0\^O\^N\0\0\M-R\a\0\0\M-i\^A\0\0A\^O\0\0\M^[\f\0\0$\^N\0\0\0\0\0\0\
\M^K\^E\0\0\M-M\r\0\0\0\0\0\0e\^F\0\0\M-V\v\0\0\^_\^B\0\0\M-6\r\0\0[\r\0\0\M^Q\^N\0\0001\^O\0\0\
\M^X\^N\0\0\M^U\^N\0\0\^F\^N\0\0\M--\^N\0\0<\^E\0\0\M-2\r\0\0\M-6\v\0\0\M-G\f\0\0\^P\^C\0\0\M^^\
\f\0\0\M^M\r\0\0\v\b\0\0\^[\^N\0\0N\^N\0\0\M-l\f\0\0\^\\f\0\0\M-6 \0\0/\f\0\0\^A\^E\0\0I
\0\0\0\0\0\0\M-:\r\0\0@\^N\0\0\240\r\0\0003\r\0\0,\^O\0\0\0\0\0\0S\^B\0\0\0\0\0\0K\^N\0\0\M-A\b\
\0\0C\b\0\0y\^F\0\0\^Y\^F\0\0\M-l\^B\0\0^\r\0\0\M-R\v\0\0\M-*\^N\0\0\M-^\^B\0\0\0\0\0\0,\r\0\0\
\M^Z\r\0\0\M-^\^N\0\0\^Z\^A\0\0\M-{\^B\0\0\M-d \0\0\M-Q\^F\0\0d\r\0\0\M^U\r\0\0\M^V\a\0\0Q\a\0\
\0\0\0\0\0\M-P\r\0\0\0\0\0\0\M^A\f\0\0\M-r\^D\0\0%\^O\0\0v\^E\0\0P\^N\0\0\M-p\v\0\0\M-d\^N\0\0_\
\^N\0\0S\v\0\0\^O\^O\0\0
\0\0007\^O\0\0\^Q\^O\0\0\M-b\r\0\0\0\0\0\0c\v\0\0i\a\0\0\M-h\^N\0\0\M^J\^N\0\0\M-q\^D\0\0^\f\0\
\0\M^F
\0\0\M-C \0\0\0\0\0\0\M-v
\0\0\M^H\a\0\0\M^F\^N\0\0\0\0\0\0\^\ \0\0\M-a\f\0\0\M-$\r\0\0\M-t\r\0\0\^N\^O\0\0\M-D\b\0\0\
\M-e\^N\0\0,\^N\0\0]\^F\0\0\M^R\f\0\0\M-A\^N\0\0)\f\0\0\0\0\0\0\0\0\0\0\M-J
\0\0\M-f\^C\0\0\M-:\b\0\0\^O\f\0\0V\^F\0\0\M-f\r\0\0\M-4\r\0\0\0\0\0\0w \0\0\M-\\^D\0\0\M-+\a\0\
\0\M^P\a\0\0\M^Z\f\0\0\M^P
\0\0\M-F\f\0\0\v\^O\0\0\M->\f\0\0\r\^C\0\0\0\0\0\0W\a\0\0\M->\b\0\0\M-\
\0\0d\^N\0\0005\v\0\0\M-Y\^B\0\0\240\v\0\0\M^R\^B\0\0\^?\^F\0\0\M-!\^N\0\0\0\0\0\0-\f\0\0u\r\0\
\0\M-#\v\0\0\0\0\0\0\M-e\v\0\0\0\0\0\0
\^O\0\0\M-a\^C\0\0\M-~\b\0\0O\v\0\0\0\0\0\0\M-.\r\0\0P\^C\0\0\0\0\0\0!\b\0\0\M-,\f\0\0 \f\0\0.\
\a\0\0005\b\0\0\M^V \0\0R\^D\0\0\M-Z\r\0\0006\a\0\0
\0\0\M^D\r\0\0:\r\0\0\0\0\0\0\M-"
\0\0\0\0\0\09\^D\0\0}\0\0\0\M-r\^F\0\0|\^N\0\0\M-Q\f\0\0\M-S\^N\0\0007\^N\0\0004\^O\0\0J\f\0\0\
\M-R\f\0\0\M-~\^B\0\0c
\0\0\M^R\a\0\0\M-! \0\0\M-;\^N\0\0\M-v\^B\0\0r\v\0\0\M-4\^B\0\0\M-&\^B\0\0\M-W\v\0\0\M-=\r\
\0\0\0\0\0\0\M-T\r\0\0U\^N\0\0\M-W\0\0\0\M-E\r\0\09\^B\0\0\^T\^F\0\0"\^N\0\0\^R\^O\0\0E\^N\0\0\
\M-^ \0\0\^D\f\0\0\0\0\0\0\^X\^N\0\0\0\0\0\0\0\0\0\0\M-J\^F\0\0\M-0
\0\0U\r\0\0\0\0\0\0\M-K\f\0\0\0\0\0\0\M-;\^F\0\0\M-N\^F\0\0\M^I
\0\0\M-l\a\0\0\M-O\^E\0\0\M^S\^F\0\0A\r\0\0E\^E\0\0\0\0\0\0_\r\0\0< \0\0\M-l\^N\0\0\M^V\f\0\
\0\^]\f\0\0[\v\0\0o\^D\0\0?\^E\0\0\M^T\a\0\0]\^N\0\0\0\0\0\0\^D\^N\0\0#\^N\0\0\^P\f\0\0005\^C\0\
\0\M-<\r\0\0s\^F\0\0\M-p\r\0\0\^B\v\0\0\M-_\b\0\0\0\0\0\0\0\0\0\0\M-u\r\0\0\M-`\a\0\0\M-H\v\0\0\
\M^P\v\0\0j\^C\0\0\M-S\b\0\0\M-o\^F\0\0
\f\0\0\M--\a\0\0-\v\0\0h\^C\0\0\0\0\0\0&\0\0\0\240\f\0\0\M-?\^E\0\0\M-R\^A\0\0^\a\0\0\M-9\b\0\0\
G\^N\0\0\^X\^O\0\0\^S\^O\0\0\M-a\^D\0\0\^N \0\09 \0\0\M^]\r\0\0\M-/\^E\0\0\^T\^B\0\0d\^A\
\0\0\0\0\0\0\0\^O\0\0G\a\0\0\M-8\r\0\0\M-&\r\0\0\M^Q\r\0\0.\0\0\0\^Z\^O\0\0\M^^\^D\0\0j\r\0\0\
\M-q\r\0\0\0\0\0\0\M-7\^F\0\0\M-E
\0\0\M-#\r\0\0\M-)
\0\0\0\0\0\0\0\0\0\0X
\0\0\M^S\^B\0\0\0\0\0\0\0\0\0\0P \0\0\^A\f\0\0\0\0\0\0,\^D\0\0\M-&\a\0\0\0\0\0\0\M-r\
\0\0r\b\0\0N
\0\0\M-Z\f\0\0\M-4\^N\0\0\M-s\f\0\0\0\0\0\0\M-I\^N\0\0C\a\0\0\0\0\0\0\0\0\0\0\M-z\v\0\0\0\0\0\0\
o\v\0\0\^B\b\0\0&\b\0\0z\r\0\0\0\0\0\0\0\0\0\0n\r\0\0@\v\0\0\M-*\f\0\0\M-m\r\0\0\\
\0\0\M-#\^N\0\0 \^O\0\0;\^F\0\0\0\0\0\0\0\0\0\0Q\r\0\0\M->\a\0\0\^^\^C\0\0\0\0\0\0x\^A\0\0\M^?\
\0\0\M-$\^N\0\0\M-'\r\0\0\M^M\f\0\0>\^O\0\0\r\^F\0\0\v\v\0\0\M^V\^N\0\0\0\0\0\0\M-9 \0\0\0\
\0\0\0V \0\0\M-P\f\0\0\^N
\0\08\^F\0\0/\^N\0\0\M-1\f\0\0\0\0\0\0Q \0\0p
\0\0\M-8 \0\0\M-L\^N\0\0|\^E\0\0k \0\0I\^N\0\0\M-u\v\0\0\M-=\v\0\0~\^N\0\0\M^U\a\
\0\0\M-8\^C\0\0\M-F\^E\0\0\M^@\r\0\0\M^B\f\0\0L\^N\0\0\M-'\^F\0\0\240
\0\0-\^F\0\0n\f\0\0d \0\0l\^N\0\0\M-8\v\0\0\^F\f\0\0\M-W\^N\0\0\M^U\^D\0\0\^\\^D\0\0<\r\0\0\
\M-(\r\0\0\0\0\0\0\M-@\a\0\0\M-\\0\0\0\M-G\^E\0\0\0\0\0\0\M-t\^B\0\0\M-S\0\0\0\0\0\0\0\M-D\
\0\0\0\0\0\0q\^D\0\0\M^K\^N\0\0\0\0\0\0x\r\0\0\M^H\^A\0\0v\v\0\0\M-B\a\0\0\M^A\^D\0\0\M-p
\0\0\0\0\0\0\M^N\^N\0\0\^V\0\0\0\0\0\0\0P\^B\0\0?\^B\0\0\M-y\r\0\0004\^E\0\0T \0\09\r\0\0\^B\
\^N\0\0z\^N\0\0\M-O\r\0\0\M^Y\v\0\0\M-J\0\0\0\0\0\0\0T\r\0\0\M-/
\0\0\0\0\0\0\M-x\v\0\0\M^B\^B\0\0\240\^N\0\0\M-Z\b\0\0C\r\0\0\^]\^F\0\0\M-]\b\0\0\M^P\r\0\0\^R\
\b\0\0\M-N\f\0\0\0\0\0\0\0\0\0\0\M-I\r\0\0\0\0\0\0\M-M\^E\0\0?\f\0\0\0\0\0\0=\^O\0\0\M-t\^N\0\0\
\M-r\^B\0\0\M-R\^N\0\0\M-"\f\0\0\^E\r\0\0\0\0\0\0X\r\0\0\M-8\f\0\0\M^H
\0\0\M-*\^C\0\0\M-{\^C\0\0\M-K\^B\0\0\M^_ \0\0\M-@\^E\0\0#\f\0\0\M-%\v\0\0\M-o\^A\0\0\^P\
\^B\0\0\M-V \0\0\0\0\0\0.\^F\0\0 \^E\0\0\M-<\0\0\0\0\0\0\0\M^E\^B\0\0\0\0\0\0\M^@\
\0\0\M-K\a\0\0\0\0\0\0\0\0\0\0a\^C\0\0\^^
\0\0\M-r\f\0\0\^] \0\0\a\^O\0\0\^\\a\0\0\M-Q\v\0\0(\f\0\0Z\v\0\0\M^S\r\0\0\^?\^N\0\0\M-?\
\^F\0\0\0\0\0\0\M-O\^F\0\0\M-w\^D\0\0\M-\\^N\0\0W\v\0\0\M-p\^C\0\0\M^R\0\0\0\0\0\0\0n\^B\0\0000\
\f\0\0x\a\0\0-\^O\0\0?\^O\0\0\M-?\r\0\0\M-!
\0\08\b\0\0\M-"\b\0\0\M-:
\0\0{\^N\0\0\M-W
\0\0\0\0\0\0\0\0\0\0U \0\0Z\r\0\0G\r\0\0\M-m\^B\0\0_
\0\0\M-H\b\0\0\0\0\0\0\^U\a\0\0\^C\f\0\0,\f\0\0s\^D\0\0M\r\0\0%\^N\0\0Y\v\0\0\M^J\^F\0\0<\^F\0\
\0\0\0\0\0q\^C\0\0U\f\0\0\0\0\0\0\0\0\0\0\M-i\r\0\0\M-T
\0\0\M-I\^F\0\0c\0\0\0\M^L\r\0\0\M-m\b\0\0\0\0\0\0\M-a\^N\0\0p\v\0\0\M-t \0\0\M-r\b\0\0\
\0\0\0\0\M-.\f\0\0\M-)\0\0\0i\^N\0\0\M-l\^E\0\0\M-W\^E\0\0=\r\0\0\0\0\0\0\M-0\^N\0\0\M-c
\0\0\0\0\0\0\^D\r\0\0#\0\0\0D \0\0\M^X\^A\0\0\0\0\0\0\0\0\0\0\M-{\f\0\0\f \0\0\0\0\0\0\a\
\a\0\0H\v\0\0\M-*\r\0\0\0\^N\0\0$\^O\0\0\M-Q
\0\0%\f\0\0\0\0\0\0\^Y\^N\0\0\0\0\0\0\M-Y\a\0\0z\^F\0\0L\a\0\0\M-e\r\0\0\^_\^O\0\0\^Z
\0\0j \0\0.\f\0\0\M-f\v\0\0\M-}\f\0\0\^X\a\0\0\M^]\^C\0\0s \0\0y\b\0\0\^Z\f\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0>\f\0\0\M-$\b\0\0\M^N\v\0\0\0\0\0\0\M-q\^N\0\0\M-K\^C\0\0\M-w\f\0\0\0\0\0\0\M-b\
\0\0\0\0\0\0<\^D\0\0\M-n\v\0\0\M-{\b\0\0\M-^
\0\0\0\0\0\0_\0\0\0\^Y\r\0\0\M^_\f\0\0\M^Q\b\0\0\M^]\a\0\0/\0\0\0\0\0\0\0N\^B\0\0\0\0\0\0\^_\^N\
\0\0|\r\0\0\M-$\f\0\0\M-5
\0\0\M^V\b\0\0\0\0\0\0\M-9\r\0\0\M-a
\0\0^\^N\0\0}\^D\0\0b\f\0\0\M-F\r\0\0\M-<\v\0\0W\f\0\0\M-+\r\0\0z\^D\0\0\0\0\0\0\M-q \0\0\
\M-h\f\0\0|\f\0\0\0\0\0\0C\^O\0\0\M-W\^A\0\0\M-c\v\0\0\^U\^N\0\0\M-1\^N\0\0\0\0\0\0l\v\0\0\0\0\
\0\0\M^H\f\0\0\M-)\a\0\0\^]\r\0\0\M^A\^N\0\0e\a\0\0\M-}\^N\0\0\M-5\b\0\0\M^U \0\0\M-&\
\0\0X\f\0\0\\\v\0\0\M-A \0\0F\^N\0\0\M^P\^D\0\0\M^\\^C\0\0\\\a\0\0g\r\0\0\0\0\0\0)
\0\0\M-c\^C\0\0\M-J\v\0\0\M-} \0\0!\r\0\0\M-f\^E\0\0\0\0\0\0\M-i\f\0\0}\^F\0\0\0\0\0\0W\^B\0\
\0\M-)\v\0\0\v\a\0\0.
\0\0\M^B\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0h \0\0\0\0\0\0\M^V\^E\0\0\M-%\^E\0\0,\v\0\0\M-,\r\
\0\0\M-M \0\0\M^L\^E\0\0\M-C\^C\0\0\M^Q\^E\0\0\M-{\r\0\0]
\0\0*\r\0\0\v\^N\0\0\M-3\^C\0\0 \0\0A\f\0\0\M-*\^E\0\0\0\0\0\0\M-d
\0\0\M-$ \0\0J \0\0\M-=\^N\0\0\M-P\^D\0\0#\^O\0\0$\r\0\0\M-:\f\0\0\M-K\r\0\0d\^C\0\0!\
\^O\0\0#\^A\0\0\M-D\a\0\0\240\b\0\0\0\0\0\0\M-[\r\0\0\M^@\^C\0\0G\v\0\0(\^N\0\0\0\0\0\0_\v\0\0Y\
\^N\0\0\M^_\^F\0\0y\^B\0\0\0\0\0\0[\^N\0\0
\b\0\0\M^Z\^B\0\0\M^N\r\0\0O\^N\0\0000\a\0\0|\v\0\0\M^T\b\0\0\M-8\^B\0\0005\0\0\0\M^V\^F\0\0\
\M-5\^F\0\0"\b\0\0\0\0\0\0D\^N\0\0)\r\0\0\0\0\0\0\\\^D\0\0}\v\0\0\M^_\^B\0\0'\^O\0\0&\v\0\0\M-(\
\v\0\0\M^S
\0\0r\f\0\0p\a\0\0\0\0\0\0\0\0\0\0\M^M\^N\0\0v\^D\0\0\M^D\^N\0\0\M-B
\0\0\M-(\^F\0\0\M-( \0\0\M-?\f\0\0\0\0\0\0F\b\0\0\0\0\0\0w\v\0\0U\a\0\0\^V \0\0Q\^F\0\0000\
\^N\0\0\M-U\^B\0\0;\^D\0\0\0\0\0\0\M^R
\0\0\0\0\0\0\M-b\^B\0\0\M-p\^N\0\0O\a\0\0-\a\0\0\M-D\v\0\0x\^C\0\0\0\0\0\0\0\0\0\0\^_\f\0\0\M-u\
\f\0\0\0\0\0\0\M-c\^F\0\0J\^N\0\0\M^[
\0\0w\^N\0\0"
30412 openssl RET read 4096/0x1000
30412 openssl CALL mmap(0,0x5ce000,0<PROT_NONE>,0x2<MAP_PRIVATE>,3,0)
30412 openssl RET mmap 2122848067584/0x1ee439ae000
30412 openssl CALL mmap(0x1ee439ae000,0x14d000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0)
30412 openssl RET mmap 2122848067584/0x1ee439ae000
30412 openssl CALL mmap(0x1ee43bfa000,0x59000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x14c000)
30412 openssl RET mmap 2122850476032/0x1ee43bfa000
30412 openssl CALL mmap(0x1ee43d52000,0x1a000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x1a4000)
30412 openssl RET mmap 2122851885056/0x1ee43d52000
30412 openssl CALL mmap(0x1ee43e6b000,0x6000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x1bd000)
30412 openssl RET mmap 2122853036032/0x1ee43e6b000
30412 openssl CALL mmap(0x1ee43f70000,0xa000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,3,0x1c2000)
30412 openssl RET mmap 2122854105088/0x1ee43f70000
30412 openssl CALL mmap(0x1ee43f7a000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122854146048/0x1ee43f7a000
30412 openssl CALL getentropy(0x1ee43d52e08,8)
30412 openssl RET getentropy 0
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123543007232/0x1ee6d06d000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124746825728/0x1eeb4c7a000
30412 openssl CALL mmap(0,0xa000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124968189952/0x1eec1f96000
30412 openssl CALL mprotect(0x1eedaa60000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL munmap(0x1eec1f96000,0xa000)
30412 openssl RET munmap 0
30412 openssl CALL mmap(0,0x17000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121774936064/0x1ee03a43000
30412 openssl CALL mprotect(0x1ee43e6b000,0x6000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL munmap(0x1ee03a43000,0x17000)
30412 openssl RET munmap 0
30412 openssl CALL mmap(0,0x6000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123441999872/0x1ee67019000
30412 openssl CALL mprotect(0x1eeb34df000,0x2000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL munmap(0x1ee67019000,0x6000)
30412 openssl RET munmap 0
30412 openssl CALL mmap(0,0x7000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123753459712/0x1ee79921000
30412 openssl CALL mprotect(0x1ebe1970000,0x3000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL munmap(0x1ee79921000,0x7000)
30412 openssl RET munmap 0
30412 openssl CALL kbind(0x7f7ffffc0038,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffc01e8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL sysctl(6.7<hw.pagesize>,0x1eedab6f038,0x7f7ffffc0240,0,0)
30412 openssl RET sysctl 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124366413824/0x1ee9e1b0000
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc68,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL readlink(0x1eeda84dcc1,0x7f7ffffbfcb0,63)
30412 openssl NAMI "/etc/malloc.conf"
30412 openssl RET readlink -1 errno 2 No such file or directory
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL getentropy(0x7f7ffffbfc30,40)
30412 openssl RET getentropy 0
30412 openssl CALL mmap(0,0x450,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124766830592/0x1eeb5f8e000
30412 openssl CALL minherit(0x1eeb5f8e000,0x450,MAP_INHERIT_ZERO)
30412 openssl RET minherit 0
30412 openssl CALL kbind(0x7f7ffffbfb68,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121827098624/0x1ee06c02000
30412 openssl CALL mprotect(0x1ee06c02000,0x1000,0<PROT_NONE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee06c05000,0x1000,0<PROT_NONE>)
30412 openssl RET mprotect 0
30412 openssl CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122226688000/0x1ee1e916000
30412 openssl CALL mprotect(0x1eedab6e000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123394183168/0x1ee6427f000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124279894016/0x1ee98f2d000
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc78,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124223565824/0x1ee95975000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122117566464/0x1ee18105000
30412 openssl CALL kbind(0x7f7ffffbfb88,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfb88,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122043850752/0x1ee13ab8000
30412 openssl CALL kbind(0x7f7ffffbfbe8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121225441280/0x1ede2e39000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123215454208/0x1ee5980c000
30412 openssl CALL kbind(0x7f7ffffbfbe8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbe8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124652154880/0x1eeaf231000
30412 openssl CALL kbind(0x7f7ffffbfbe8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123900502016/0x1ee8255c000
30412 openssl CALL kbind(0x7f7ffffbfc28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL sigaction(SIGPIPE,0x7f7ffffbfda0,0x7f7ffffbfd90)
30412 openssl STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0x2<SA_RESTART> }
30412 openssl STRU struct sigaction { handler=SIG_IGN, mask=0<>, flags=0x2<SA_RESTART> }
30412 openssl RET sigaction 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc78,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123597950976/0x1ee704d3000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122294939648/0x1ee22a2d000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121632972800/0x1edfb2e0000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121806233600/0x1ee0581c000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123245719552/0x1ee5b4e9000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123015475200/0x1ee4d955000
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121470504960/0x1edf17ef000
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121281425408/0x1ede639d000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123255738368/0x1ee5be77000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121588359168/0x1edf8854000
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124141854720/0x1ee90b88000
30412 openssl CALL kbind(0x7f7ffffbfc98,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL kbind(0x7f7ffffbf6b8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125383282688/0x1eedab73000
30412 openssl CALL kbind(0x7f7ffffbf6b8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL kbind(0x7f7ffffbf6b8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123927945216/0x1ee83f88000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124576239616/0x1eeaa9cb000
30412 openssl CALL munmap(0x1eedab73000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL kbind(0x7f7ffffbfbb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc98,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124914024448/0x1eebebee000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124750450688/0x1eeb4fef000
30412 openssl CALL munmap(0x1eebebee000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121692557312/0x1edfebb3000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edfebb3000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125460463616/0x1eedf50e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eedf50e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125148618752/0x1eeccba8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeccba8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122145157120/0x1ee19b55000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee19b55000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122537304064/0x1ee31150000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee31150000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123461087232/0x1ee6824d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee6824d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122222559232/0x1ee1e526000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121725874176/0x1ee00b79000
30412 openssl CALL munmap(0x1ee1e526000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122904969216/0x1ee46ff2000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee46ff2000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121307164672/0x1ede7c29000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ede7c29000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122854154240/0x1ee43f7c000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee43f7c000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121220513792/0x1ede2986000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ede2986000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122195722240/0x1ee1cb8e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee1cb8e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124644331520/0x1eeaeabb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeaeabb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121380798464/0x1edec262000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edec262000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123369353216/0x1ee62ad1000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee62ad1000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123523112960/0x1ee6bd74000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee6bd74000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124925407232/0x1eebf6c9000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eebf6c9000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124240191488/0x1ee96950000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee96950000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123461500928/0x1ee682b2000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee682b2000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123739488256/0x1ee78bce000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee78bce000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123236597760/0x1ee5ac36000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee5ac36000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121862836224/0x1ee08e17000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee08e17000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122735935488/0x1ee3cebe000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee3cebe000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123014275072/0x1ee4d830000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee4d830000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121923940352/0x1ee0c85d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee0c85d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123049803776/0x1ee4fa12000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee4fa12000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125149831168/0x1eecccd0000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eecccd0000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124821192704/0x1eeb9366000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb9366000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123440656384/0x1ee66ed1000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee66ed1000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121450987520/0x1edf0552000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edf0552000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121802895360/0x1ee054ed000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee054ed000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124835524608/0x1eeba111000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeba111000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122376871936/0x1ee27850000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee27850000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122399821824/0x1ee28e33000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee28e33000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123495100416/0x1ee6a2bd000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee6a2bd000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122842877952/0x1ee434bb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee434bb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124041756672/0x1ee8ac12000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8ac12000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124997668864/0x1eec3bb3000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eec3bb3000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125311344640/0x1eed66d8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed66d8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122686328832/0x1ee39f6f000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee39f6f000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124887212032/0x1eebd25c000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eebd25c000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125131472896/0x1eecbb4e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eecbb4e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123253358592/0x1ee5bc32000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee5bc32000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124710428672/0x1eeb29c4000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb29c4000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125369380864/0x1eed9e31000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed9e31000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123990855680/0x1ee87b87000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee87b87000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121321984000/0x1ede8a4b000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ede8a4b000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125455052800/0x1eedefe5000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eedefe5000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124700286976/0x1eeb2018000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb2018000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124264697856/0x1ee980af000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee980af000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123992592384/0x1ee87d2f000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee87d2f000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121692897280/0x1edfec06000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edfec06000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123964461056/0x1ee8625b000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8625b000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125061713920/0x1eec78c7000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eec78c7000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122664779776/0x1ee38ae2000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee38ae2000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123337977856/0x1ee60ce5000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee60ce5000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121368903680/0x1edeb70a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edeb70a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124079751168/0x1ee8d04e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8d04e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123375046656/0x1ee6303f000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee6303f000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121572057088/0x1edf78c8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edf78c8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125251534848/0x1eed2dce000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed2dce000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122324627456/0x1ee2467d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee2467d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124948099072/0x1eec0c6d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eec0c6d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123841269760/0x1ee7ecdf000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee7ecdf000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124074913792/0x1ee8cbb1000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8cbb1000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125104304128/0x1eeca165000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeca165000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122464264192/0x1ee2cba8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee2cba8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124193910784/0x1ee93d2d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee93d2d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123020611584/0x1ee4de3b000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee4de3b000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124217860096/0x1ee95404000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee95404000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121436590080/0x1edef797000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edef797000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121525784576/0x1edf4ca7000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edf4ca7000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123750989824/0x1ee796c6000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee796c6000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125020241920/0x1eec513a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eec513a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122144706560/0x1ee19ae7000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee19ae7000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121655042048/0x1edfc7ec000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edfc7ec000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122223685632/0x1ee1e639000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee1e639000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124534620160/0x1eea821a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eea821a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122565967872/0x1ee32ca6000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee32ca6000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123335110656/0x1ee60a29000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee60a29000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123310071808/0x1ee5f248000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee5f248000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122507882496/0x1ee2f541000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee2f541000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124268175360/0x1ee98400000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee98400000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122303873024/0x1ee232b2000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee232b2000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122344988672/0x1ee259e8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee259e8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124705931264/0x1eeb257a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb257a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125461483520/0x1eedf607000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eedf607000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124803080192/0x1eeb8220000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb8220000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123823538176/0x1ee7dbf6000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee7dbf6000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124279812096/0x1ee98f19000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee98f19000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124088836096/0x1ee8d8f8000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8d8f8000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121537765376/0x1edf5814000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edf5814000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121954873344/0x1ee0e5dd000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee0e5dd000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122429435904/0x1ee2aa71000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee2aa71000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124684439552/0x1eeb10fb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb10fb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122918764544/0x1ee47d1a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee47d1a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124183470080/0x1ee93338000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee93338000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123148251136/0x1ee557f5000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee557f5000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122654085120/0x1ee380af000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee380af000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123385921536/0x1ee63a9e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee63a9e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122807586816/0x1ee41313000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee41313000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122240012288/0x1ee1f5cb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee1f5cb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122766589952/0x1ee3ebfa000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee3ebfa000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121436860416/0x1edef7d9000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edef7d9000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121295458304/0x1ede70ff000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ede70ff000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124085227520/0x1ee8d587000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee8d587000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125256003584/0x1eed3211000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed3211000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122984632320/0x1ee4bbeb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee4bbeb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124736233472/0x1eeb4260000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb4260000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124593778688/0x1eeaba85000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeaba85000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125310402560/0x1eed65f2000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed65f2000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122076966912/0x1ee15a4d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee15a4d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123919704064/0x1ee837ac000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee837ac000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123675193344/0x1ee74e7d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee74e7d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121252524032/0x1ede480d000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ede480d000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2123197026304/0x1ee58679000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee58679000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124768129024/0x1eeb60cb000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb60cb000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2125342273536/0x1eed8457000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eed8457000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2122686439424/0x1ee39f8a000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee39f8a000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121363677184/0x1edeb20e000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edeb20e000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124772556800/0x1eeb6504000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb6504000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124825513984/0x1eeb9785000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eeb9785000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124146966528/0x1ee91068000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1ee91068000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2121587015680/0x1edf870c000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1edf870c000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL issetugid()
30412 openssl RET issetugid 0
30412 openssl CALL open(0x7f7ffffbf850,0x10000<O_RDONLY|O_CLOEXEC>)
30412 openssl NAMI "/usr/share/nls/C/libc.cat"
30412 openssl RET open 3
30412 openssl CALL fstat(3,0x7f7ffffbf780)
30412 openssl STRU struct stat { dev=5, ino=26333, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=121676, atime=1443377314<"Sep 27 18:08:34 2015">.036898823, mtime=1442715516<"Sep 20 02:18:36 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.094810347, size=4080, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0xff0,0x1<PROT_READ>,0x1<MAP_SHARED>,3,0)
30412 openssl RET mmap 2124945735680/0x1eec0a2c000
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL munmap(0x1eec0a2c000,0xff0)
30412 openssl RET munmap 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124060794880/0x1ee8be3a000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122560274432/0x1ee32738000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121481080832/0x1edf2205000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121669636096/0x1edfd5d7000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121351565312/0x1edea681000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122181046272/0x1ee1bd8f000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124947615744/0x1eec0bf7000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125409599488/0x1eedc48c000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124078161920/0x1ee8ceca000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122712064000/0x1ee3b7fa000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mquery(0x1ee1bd90000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
30412 openssl RET mquery 2122181050368/0x1ee1bd90000
30412 openssl CALL mmap(0x1ee1bd90000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122181050368/0x1ee1bd90000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121942368256/0x1ee0d9f0000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122289954816/0x1ee2256c000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121633021952/0x1edfb2ec000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124809695232/0x1eeb886f000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122256990208/0x1ee205fc000
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125239271424/0x1eed221c000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125007056896/0x1eec44a7000
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124537315328/0x1eea84ac000
30412 openssl CALL mquery(0x1ee1bd91000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1012<MAP_PRIVATE|MAP_FIXED|MAP_ANON>,-1,0)
30412 openssl RET mquery 2122181054464/0x1ee1bd91000
30412 openssl CALL mmap(0x1ee1bd91000,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122181054464/0x1ee1bd91000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121537429504/0x1edf57c2000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125383282688/0x1eedab73000
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2125049380864/0x1eec6d04000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122715230208/0x1ee3baff000
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123085017088/0x1ee51ba7000
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123904761856/0x1ee8296c000
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL kbind(0x7f7ffffbfc38,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL open(0x1eea84ac160,0<O_RDONLY>)
30412 openssl NAMI "/etc/ssl/openssl.cnf"
30412 openssl RET open 3
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2124519436288/0x1eea739f000
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbe8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL fstat(3,0x7f7ffffbfb50)
30412 openssl STRU struct stat { dev=0, ino=14118, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=57004, atime=1443380744<"Sep 27 19:05:44 2015">.847540120, mtime=1442715491<"Sep 20 02:18:11 2015">, ctime=1442782586<"Sep 20 20:56:26 2015">.744817638, size=745, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123894673408/0x1ee81fcd000
30412 openssl CALL kbind(0x7f7ffffbfb58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL read(3,0x1ee81fcd000,0x4000)
30412 openssl GIO fd 3 read 745 bytes
"[ req ]
#default_bits = 2048
#default_md = sha256
#default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_min = 2
countryName_max = 2
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
emailAddress = Email Address
emailAddress_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
"
30412 openssl RET read 745/0x2e9
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122483126272/0x1ee2dda5000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2121314779136/0x1ede836c000
30412 openssl CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2122399223808/0x1ee28da1000
30412 openssl CALL read(3,0x1ee81fcd000,0x4000)
30412 openssl RET read 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc98,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL close(3)
30412 openssl RET close 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfbc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbf928,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbf928,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbf928,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbf858,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbf888,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfb28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfb28,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc48,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc88,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL fstat(1,0x7f7ffffbfb50)
30412 openssl STRU struct stat { dev=0, ino=0, mode=p--------- , nlink=0, uid=756<"_metronome">, gid=756<"_metronome">, rdev=0, atime=1443380783<"Sep 27 19:06:23 2015">.536875775, mtime=1443380783<"Sep 27 19:06:23 2015">.536875775, ctime=1443380783<"Sep 27 19:06:23 2015">.536875775, size=0, blocks=0, blksize=16384, flags=0x0, gen=0x0 }
30412 openssl RET fstat 0
30412 openssl CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
30412 openssl RET mmap 2123719577600/0x1ee778d1000
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc58,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfca8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc18,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcc8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcd8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfc68,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfcb8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfce8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfa78,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffbfd08,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffc01e8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffc01c8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL kbind(0x7f7ffffc00f8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffc00f8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
30412 openssl RET mprotect 0
30412 openssl CALL mprotect(0x1ee9e1b0000,0x1000,0x1<PROT_READ>)
30412 openssl RET mprotect 0
30412 openssl CALL kbind(0x7f7ffffc0168,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL kbind(0x7f7ffffc00c8,0x18,0x3b216c27d9106ccf)
30412 openssl RET kbind 0
30412 openssl CALL write(1,0x1ee778d1000,0xf)
30412 openssl GIO fd 1 wrote 15 bytes
"LibreSSL 2.3.0
"
30412 openssl RET write 15/0xf
28868 lua51 GIO fd 8 read 15 bytes
"LibreSSL 2.3.0
"
28868 lua51 RET read 15/0xf
28868 lua51 CALL open(0xbe4be89a318,0<O_RDONLY>)
28868 lua51 NAMI "/etc/metronome/certs/localhost.key"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc690)
28868 lua51 STRU struct stat { dev=0, ino=14258, mode=-r-------- , nlink=1, uid=756<"_metronome">, gid=1000<"vagrant">, rdev=56989, atime=1443380744<"Sep 27 19:05:44 2015">.898419770, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=3243, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076905144320/0xbe4b4493000
28868 lua51 CALL read(9,0xbe4b4493000,0x4000)
28868 lua51 GIO fd 9 read 3243 bytes
"-----BEGIN RSA PRIVATE KEY-----
MIIJKAIBAAKCAgEA24znGi2DqtHjRbXcZ3G8n0BY3isrV3NZKvT/kn2u6qvhG0YS
1Jl4fstcgJZMYkarLIQA2k6daauRMC3Uvj6GpK4LL8WFHm05le/inqo7EosFifEY
HiqLxMuztBOfWja0qY+lNf4cL46M7rJtYv8iIJhU2DytKsFVfR5x/gu/vgz7S36/
f/PREag3f9woL7P8GZjToGKMn0mz32oWgVatkoFe+Od6s5NAYMjpIGWHuVE3iF2F
oQ2zjqTEpKvyvFSVyjGsNl+Oa+XApHEly+JFfSxa695IdNOxDMpOliELq3HEFObe
7hy5+bUG+ZRj0U4zWDf9uXHXnEktfs+8wjuqQEJPJ3m4/QVMxZhU+iCVlSqPZ1Bn
epSxODiQrRpEYsc7B3s3IDKje54bVjsUhNZogUju/WMSAk2qRz1kl0cHR+NFkWXH
ranMIxqeVOK/Tvwnnfxlweb/ntydyBf+ccqxeSVLxB55LOAXddEEnzQLMbUPDj7e
7ey+evpJK2lJP06uQjoC9d4f6LI7a+Ap5BLHM1hrevv3HGg5zIcIl8cFpv0C3nKC
nMUFxleGREPI5iGnOy8hPPaK9aIoRJ/D9e92wcPBegCWg3htHvf77Xfj7HnJn3ve
jr6K+Fv3tVsVK0GEd+IZlfvxyTaKNUiiGhazZwbifAQfajsryxKpk96F0UMCAwEA
AQKCAgBv/cHs8oaVXhcGeiwBgFztBw/N1Et5gldbuDmd6gqNnjtnhCka1WZHl0iK
NyCjiNTMElG1CiD1xBR9dQNuP8rCuhzus1yiFqknOIRq1v7nCI88vATHboB5VEdI
djH0/K7PR3zIu+R4xchSAiYWN3qbEdlFrD3Q72nCNwOCyU93jHurGO5qQF7HGP2m
dRDytGbGT9SznVGJ9ziPoDf2pdZIQ0HEyZ8ndteCBzoT0naXKzyejMYbTzfmbVn5
fdSGCMeXqhrkaX3mv/2yZB0ZkURNA5Ele++N2GYZ1iCcKCMhwxh4aQQShgi/vX3f
VbhNDgzW1UjRjaakDBfu9dydX34J82m0Qjul3/YExp/jj7bNcK2QswUe6OUoApow
ydKT7e6w4wQRr6xpnz2vSEtz0edctCEuqoxcYFtnXpRs1xcl8MWXQwTfJcnHvR3h
OujehbmZvwKNN1FZeFZvRVA551m+zxPVBi+FNbAHlm7ZOU5dEM6XA9ZyLeWjhhVs
dKTeJU9+xgykgeNpkFpDPPFzYh+KU5EMiN+4/6JUStLjQs4NzdhpJDvr3/XTCbiL
D//LDdeBIEXUJznIB9eXGTedyj/bVGwcvHhgoDk7SlFz3B1UpXQrvdGtwxn+QKjV
/Muj9Dg4fuBYCWEoGJxr6XWXvD4R51SiOLcYHO8kGcF7k23kIQKCAQEA7u4yKhxT
Ae+/Cc3/EX+s6FkdriJFltQZwgw+Nwbg9s2NDwJXUB9+jRdR6uFGeGpncvBjU8a6
ZmDJdkyERTvzEKD4+3USc4GFkA89M0M6mdBuxQvz1duQm5vivwcGoy8EJuMc/2w3
3WkyzB9tCo0YuKQdTA4IncJkPUmRSrXBv/HCTnbpHORr/gIJQerBlvey6tNtPX6F
h17ZVrCvUAyF+Bc6rDvs4ydTH3/TeKmmFgpBt9z6nZR/gtX8aTtgFZTP+doiaTjV
XJ0ijp2u67QZasu2pXPKaJuoXxa01ebB6pk/ZLNBqsV73tEMoNASjMCWbZz160M7
g/IFeTv/bOyaeQKCAQEA6zxDvhlsjgA5DBwnL6i2r6Jb8mM19Nek912kuMpSCnv5
zf0nMz5HA0SBu5ZhagWGOmtxjVVd5CI9VHFx87gl+Rqd9HPycdDn8+rz5vjn7ws9
Dow8yMki5thkxm5J8CV9fNWD5TMRHuHtQ3ybwwjSxTkXIIGrB7UXF7iAwZ2fknX0
mQQO+LS+q4a3fOY5qMz4ncgVJF0ZT4+8Vbwpyb5rcDwxMZWTqBXmcQSFKLWExOmD
rOjp7C04Z0blOOL8TE7bWWZQlmxUJ9YV1sL9J0NoQcmRJ+ps8GEJHhr7XJkMVDy9
c4udpnTXOwxs9sar5EQX8Xw4HXmuflGUZhfo2zQamwKCAQEAp75tU6k9Eb/69Gw+
Zk+n2hwuvUFsb98LEnQ7/bADouJe5Sm0mRjzZST5Kxjru8CgTk68vWVpGlVbO4Wu
21iiZotNImVoBdXqKmC4i9PoQXLXQdoJX5xd4xHHWGwbWde5Z3/NrPmSIw0nT63E
hULYF1GJDAtSO0ftziVnLvd6RkL6MtJDCTjJJLTTQQcK0O2oHDtBl4nLP2X02msD
OgUAzVOpqqALyNKkBhpdInqgkxqyVt56yMUn3HhVVKAN7jji5rwhqpPvH61mRJAp
7Wss6RCKc5Bei6C0zcWIQiBXBlh+7Dj5omYxeBZ2cjSCwXS4Z85pzLkQAKua8imQ
Qy29qQKCAQBVTQwvoh6IO7J0Hr1i/eYJOHHpKmrFd3E9tjpmPA+V97D1LmiJn3q2
x5/Xu0dl38z14EJUAvHCKVxeA6lTvKIge7NtkqIG/b8u5zM8vWO1fjjMzrO4B5/d
X/jjL9kl+SJRI0fp1CPQNBMKluQQzGFJ3VLymbLAX72Y/3HJQ/Q6cwWYey1GqJw/
rOFarE2aVYGODaEFB7GG9VNRL6NjoeZp05nvJhNeL1rZ/s6enXwgv6DdEbTJzPgY
E1BJ2Z2tuia2e3Cbq3q022Ad+aU9GKd0u7gkZlDMthNNVHFz+ZfL8B6vCKDJXLMz
mWTl89MfOkYIbogWwCozajfK8b6hxnojAoIBAFWDJhJSKc1YTtGXhAbNpOZ9mSmk
cI+2pueikBWExeS9r1sYWtYw56JG984S3K2kX3NgDtJbw/sMPjc0hZrBxKV7FHjo
Bxv6Ajbnch8JIwYMnrFDDPks9QzUPdvGVxz72abZzRNZ8pt6rzZVCdrmRQpSbpFA
8YtMEjM+imKCl614UeJAurRDOs5quZpk7/f0cz+9N7rbtiNxhFhb2o/T80A29P3k
sS5WJzo5fjMfQB1b8foHMKLzpqNqDYtZ/GeBWPLOAFDx+oWxU9+bmudCLbg7rA4S
zaHO/alzzcngOXq6tFhNgMkMFM8omY1OnYivHMEOWdE7VPU2+gFag7JcIwc=
-----END RSA PRIVATE KEY-----
"
28868 lua51 RET read 3243/0xcab
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4be89a558,0<O_RDONLY>)
28868 lua51 NAMI "/etc/metronome/certs/localhost.crt"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbca90)
28868 lua51 STRU struct stat { dev=0, ino=14253, mode=-rw-r--r-- , nlink=1, uid=0<"root">, gid=1000<"vagrant">, rdev=56962, atime=1443380744<"Sep 27 19:05:44 2015">.898419770, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=2407, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe4b4493000,0x4000)
28868 lua51 GIO fd 9 read 2407 bytes
"-----BEGIN CERTIFICATE-----
MIIGxTCCBK2gAwIBAgIJAPPHqef8zGKrMA0GCSqGSIb3DQEBBQUAMIGNMRIwEAYD
VQQDDAlsb2NhbGhvc3QxCzAJBgNVBAYTAkdCMRUwEwYDVQQHDAxUaGUgSW50ZXJu
ZXQxGjAYBgNVBAoMEVlvdXIgT3JnYW5pc2F0aW9uMRgwFgYDVQQLDA9YTVBQIERl
cGFydG1lbnQxHTAbBgkqhkiG9w0BCQEWDnhtcHBAbG9jYWxob3N0MB4XDTE1MDky
NzE4NDQyNVoXDTIwMDkyNTE4NDQyNVowgY0xEjAQBgNVBAMMCWxvY2FsaG9zdDEL
MAkGA1UEBhMCR0IxFTATBgNVBAcMDFRoZSBJbnRlcm5ldDEaMBgGA1UECgwRWW91
ciBPcmdhbmlzYXRpb24xGDAWBgNVBAsMD1hNUFAgRGVwYXJ0bWVudDEdMBsGCSqG
SIb3DQEJARYOeG1wcEBsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
ggIKAoICAQDbjOcaLYOq0eNFtdxncbyfQFjeKytXc1kq9P+Sfa7qq+EbRhLUmXh+
y1yAlkxiRqsshADaTp1pq5EwLdS+PoakrgsvxYUebTmV7+KeqjsSiwWJ8RgeKovE
y7O0E59aNrSpj6U1/hwvjozusm1i/yIgmFTYPK0qwVV9HnH+C7++DPtLfr9/89ER
qDd/3Cgvs/wZmNOgYoyfSbPfahaBVq2SgV7453qzk0BgyOkgZYe5UTeIXYWhDbOO
pMSkq/K8VJXKMaw2X45r5cCkcSXL4kV9LFrr3kh007EMyk6WIQurccQU5t7uHLn5
tQb5lGPRTjNYN/25cdecSS1+z7zCO6pAQk8nebj9BUzFmFT6IJWVKo9nUGd6lLE4
OJCtGkRixzsHezcgMqN7nhtWOxSE1miBSO79YxICTapHPWSXRwdH40WRZcetqcwj
Gp5U4r9O/Ced/GXB5v+e3J3IF/5xyrF5JUvEHnks4Bd10QSfNAsxtQ8OPt7t7L56
+kkraUk/Tq5COgL13h/osjtr4CnkEsczWGt6+/ccaDnMhwiXxwWm/QLecoKcxQXG
V4ZEQ8jmIac7LyE89or1oihEn8P173bBw8F6AJaDeG0e9/vtd+Psecmfe96Ovor4
W/e1WxUrQYR34hmV+/HJNoo1SKIaFrNnBuJ8BB9qOyvLEqmT3oXRQwIDAQABo4IB
JDCCASAwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUH
AwEGCCsGAQUFBwMCMIHmBgNVHREEgd4wgduCCWxvY2FsaG9zdKAXBggrBgEFBQcI
BaALDAlsb2NhbGhvc3SgJAYIKwYBBQUHCAegGBYWX3htcHAtY2xpZW50LmxvY2Fs
aG9zdKAkBggrBgEFBQcIB6AYFhZfeG1wcC1zZXJ2ZXIubG9jYWxob3N0ghRjb25m
ZXJlbmNlLmxvY2FsaG9zdKAiBggrBgEFBQcIBaAWDBRjb25mZXJlbmNlLmxvY2Fs
aG9zdKAvBggrBgEFBQcIB6AjFiFfeG1wcC1zZXJ2ZXIuY29uZmVyZW5jZS5sb2Nh
bGhvc3QwDQYJKoZIhvcNAQEFBQADggIBAJgBKijPQCQyCir4S/pQTZYzfw0qpsDG
+mBv/OIf3/oatbcD43DnIUEIQIixC63xwZoaWZ/UVMzSONI+yXoo4YhNtK5IRklL
gdF6RW1DfhZDV4A1axexL1/H10a0WpT7tSyordD8qqDh4S4RaoUrsD1k012iNAy2
mGFoVc/b3TWmQXNobjS94iZk+IyX5+ScFAo80FxLWbGq0VRxEv64iocruJ1fYHd4
0qnC2OEAWxWfvmApskCoeKVFc0bCcYTiGYpy9GYys2GcHy0BQsfkAATlVid/iwxM
CNQVxImX2JUEPx/Vy3aPA9DEFeKu+83ehVs8439FgbHaeGjy1FBegGhWLIbyMGPD
wR5+r8v9Y9fA3wyauQwENEr0XHGFDLJ1O1VmWagYvA0R5hZVn45dTTkhocq2Uc35
CM+ES8wbRB2xveZG+NPMGG6bnOf837iFmogJ8yl9RYWSMlYagjXmKNh/6J0PLSrG
sg35cGdDGOiaNogPZ5LCMHLcv+DW4Nkh0Xw6k1yTXxiLT7viQSAVSf6PeNaB6gVS
9RQLR1oawydTCfjCnWdDz/3yYRMdPIVEqmsJO3lk/bTTTjedE0URIpNfYBVIdVIv
otTWRJzZ04UZTZm0nQqLaR3ROJSlTRbtP+X1IRzYciDroQm1HtBQYg+mX/dZ/TWw
ktiRrK0FPyLI
-----END CERTIFICATE-----
"
28868 lua51 RET read 2407/0x967
28868 lua51 CALL read(9,0xbe4b4493000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
30412 openssl CALL munmap(0x1ee9e1b0000,0x1000)
30412 openssl RET munmap 0
30412 openssl CALL exit(0)
12168 sh PSIG SIGCHLD caught handler=0x285e172b410 mask=0x80000<SIGCHLD>
12168 sh RET sigsuspend -1 errno 4 Interrupted system call
12168 sh CALL getrusage(RUSAGE_CHILDREN,0x7f7ffffeb6f0)
12168 sh STRU struct rusage { utime=0, stime=0, maxrss=0, ixrss=0, idrss=0, isrss=0, minflt=0, majflt=0, nswap=0, inblock=0, oublock=0, msgsnd=0, msgrcv=0, nsignals=0, nvcsw=0, nivcsw=0 }
12168 sh RET getrusage 0
12168 sh CALL wait4(WAIT_ANY,0x7f7ffffeb784,0x3<WNOHANG|WUNTRACED>,0)
12168 sh RET wait4 30412/0x76cc
12168 sh CALL getrusage(RUSAGE_CHILDREN,0x7f7ffffeb660)
12168 sh STRU struct rusage { utime=0, stime=0.020000, maxrss=2992, ixrss=0, idrss=0, isrss=0, minflt=829, majflt=0, nswap=0, inblock=0, oublock=17, msgsnd=0, msgrcv=0, nsignals=0, nvcsw=0, nivcsw=1 }
12168 sh RET getrusage 0
12168 sh CALL wait4(WAIT_ANY,0x7f7ffffeb784,0x3<WNOHANG|WUNTRACED>,0)
12168 sh RET wait4 -1 errno 10 No child processes
12168 sh CALL sigreturn(0x7f7ffffeb800)
12168 sh RET sigreturn JUSTRETURN
12168 sh CALL sigprocmask(SIG_SETMASK,0<>)
12168 sh RET sigprocmask 0x80000<SIGCHLD>
12168 sh CALL sigprocmask(SIG_BLOCK,0x80000<SIGCHLD>)
12168 sh RET sigprocmask 0<>
12168 sh CALL sigprocmask(SIG_SETMASK,0<>)
12168 sh RET sigprocmask 0x80000<SIGCHLD>
12168 sh CALL mprotect(0x2883eda0000,0x1000,0x3<PROT_READ|PROT_WRITE>)
12168 sh RET mprotect 0
12168 sh CALL mprotect(0x2883eda0000,0x1000,0x1<PROT_READ>)
12168 sh RET mprotect 0
12168 sh CALL munmap(0x2883eda0000,0x1000)
12168 sh RET munmap 0
12168 sh CALL exit(0)
28868 lua51 CALL kbind(0x7f7ffffbcec8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL open(0xbe53d512018,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/metronome.version"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbca00)
28868 lua51 STRU struct stat { dev=7, ino=211745, mode=-r-xr-xr-x , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=862369, atime=1443380744<"Sep 27 19:05:44 2015">.847540120, mtime=1443379473<"Sep 27 18:44:33 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.469543475, size=4, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe4b4493000,0x4000)
28868 lua51 GIO fd 9 read 4 bytes
"3.7
"
28868 lua51 RET read 4
28868 lua51 CALL read(9,0xbe4b4493000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbc9e8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL gettimeofday(0x7f7ffffbca80,0)
28868 lua51 STRU struct timeval { 1443380783<"Sep 27 19:06:23 2015">.569336 }
28868 lua51 RET gettimeofday 0
28868 lua51 CALL kbind(0x7f7ffffbc9e8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbc9c8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbc998,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL mmap(0,0x5000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077635637248/0xbe4dfd3a000
28868 lua51 CALL mmap(0,0xb000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080066318336/0xbe570b4e000
28868 lua51 CALL access(0xbe4b5245884,0x4<R_OK>)
28868 lua51 NAMI "/etc/localtime"
28868 lua51 RET access 0
28868 lua51 CALL open(0xbe4b5245884,0<O_RDONLY>)
28868 lua51 NAMI "/etc/localtime"
28868 lua51 RET open 9
28868 lua51 CALL read(9,0xbe570b4e000,0xa1e8)
28868 lua51 GIO fd 9 read 118 bytes
"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0\^A\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0\^D\0\0\0\0\
\0\0UTC\0\0\0TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\0\^A\0\0\0\0\0\0\0\0\0\0\0\^A\0\0\
\0\^D\0\0\0\0\0\0UTC\0\0\0
UTC0
"
28868 lua51 RET read 118/0x76
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0xb000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077396930560/0xbe4d1994000
28868 lua51 CALL issetugid()
28868 lua51 RET issetugid 0
28868 lua51 CALL open(0x7f7ffffb7920,0<O_RDONLY>)
28868 lua51 NAMI "/usr/share/zoneinfo/posixrules"
28868 lua51 RET open 9
28868 lua51 CALL read(9,0xbe4d1994000,0xa1e8)
28868 lua51 GIO fd 9 read 2819 bytes
"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\0\0\0\0\M-9\0\0\0\^D\0\0\0\^P\M^^\
\M-&H\240\M^_\M-;\^U\M^P\240\M^F*\240\M-!\M^Z\M-w\M^P\M-K\M^I\^Z\240\M-R#\M-tp\M-Ra&\^P\M-V\M-~\
t \M-X\M^@\M--\M^P\M-Z\M-~\M-Q\240\M-[\M-@\M^P\^P\M-\\M-^\M-3\240\M-]\M-)\M-,\M^P\M-^\M->\M^U\
\240\M-_\M^I\M^N\M^P\M-`\M^^w\240\M-aip\M^P\M-b~Y\240\M-cIR\M^P\M-d^;\240\M-e)4\M^P\M-fGX \M-g\
\^RQ\^P\M-h': \M-h\M-r3\^P\M-j\a\^\ \M-j\M-R\^U\^P\M-k\M-f\M-~ \M-l\M-1\M-w\^P\M-m\M-F\M-` \M-n\
\M^Q\M-Y\^P\M-o\M-/\M-|\240\M-pq\M-;\^P\M-q\M^O\M-^\240\M-r\^?\M-A\M^P\M-so\M-@\240\M-t_\M-#\
\M^P\M-uO\M-"\240\M-v?\M^E\M^P\M-w/\M^D\240\M-x(\M-"\^P\M-y\^Of\240\M-z\b\M^D\^P\M-z\M-x\M^C \
\M-{\M-hf\^P\M-|\M-Xe \M-}\M-HH\^P\M-~\M-8G \M^?\M-(*\^P\0\M^X) \^A\M^H\f\^P\^Bx\v \^Cq(\M^P\^D\
a'\240\^EQ
\M^P\^FA \240\a0\M-l\M^P\a\M^MC\240 \^P\M-N\M^P \M--\M-?
\M-p\M-0\M^P\v\M-`\M-/\240\f\M-Y\M-M\^P\r\M-@\M^Q\240\^N\M-9\M-/\^P\^O\M-)\M-. \^P\M^Y\M^Q\^P\
\^Q\M^I\M^P \^Rys\^P\^Sir \^TYU\^P\^UIT \^V97\^P\^W)6 \^X"S\M^P\^Y \^X \^Z\^B5\M^P\^Z\M-r4\
\240\^[\M-b\^W\M^P\^\\M-R\^V\240\^]\M-A\M-y\M^P\^^\M-1\M-x\240\^_\M-!\M-[\M^P v+ !\M^A\M-=\M^P"\
V\r #j\M-Z\^P$5\M-o %J\M-<\^P&\^U\M-Q '*\M^^\^P'\M-~\M-m\240)
\M^@\^P)\M-^\M-O\240*\M-jb\^P+\M->\M-1\240,\M-S~\M^P-\M^^\M^S\240.\M-3`\M^P/~u\2400\M^SB\M^P1g\
\M^R 2s$\M^P3Gt 4S\^F\M^P5'V 62\M-h\M^P7\a8 8\^\\^E\^P8\M-g\^Z 9\M-{\M-g\^P:\M-F\M-| ;\M-[\M-I\
\^P<\M-0\^X\240=\M-;\M-+\^P>\M^O\M-z\240?\M^[\M^M\^P@o\M-\\240A\M^D\M-)\M^PBO\M->\240Cd\M^K\M^P\
D/\240\240EDm\M^PE\M-s\M-S G-\M^J\^PG\M-S\M-5 I\rl\^PI\M-3\M^W J\M-mN\^PK\M^\\M-3\240L\M-Vj\M^P\
M|\M^U\240N\M-6L\M^PO\\w\240P\M^V.\M^PQ<Y\240Rv\^P\M^PS\^\;\240TU\M-r\M^PT\M-|\^]\240V5\M-T\M^P\
V\M-e: X\^^\M-q\^PX\M-E\^\ Y\M-~\M-S\^PZ\M-$\M-~ [\M-^\M-5\^P\\\M^D\M-` ]\M->\M^W\^P^d\M-B _\
\M^^y\^P`M\M-^\240a\M^G\M^U\M^Pb-\M-@\240cgw\M^Pd\r\M-"\240eGY\M^Pe\M-m\M^D\240g';\M^Pg\M-Mf\
\240i\a\^]\M^Pi\M--H\240j\M-f\M^?\M^Pk\M^Ve l\M-P\^\\^PmvG n\M-/\M-~\^PoV) p\M^O\M-`\^Pq6\v ro\
\M-B\^Ps\^U\M-m tO\M-$\^Pt\M^? \240v8\M-@\M^Pv\M-^\M-k\240x\^X\M-"\M^Px\M->\M-M\240y\M-x\M^D\
\M^Pz\M^^\M-/\240{\M-Xf\M^P|~\M^Q\240}\M-8H\M^P~^s\240\^?\M^X*\M^P\0\^A\0\^A\^B\^C\^A\0\^A\0\^A\
\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\
\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\
\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\
\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\
\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\0\^A\M^?\M^?\M^]\M^P\^A\0\M^?\M^?\M^O\M^@\0\
\^D\M^?\M^?\M^]\M^P\^A\b\M^?\M^?\M^]\M^P\^A\fPDT\0PST\0PWT\0PPT\0\0\0\0\^A\0\0\0\^ATZif2\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^E\0\0\0\^E\0\0\0\0\0\0\0\M-:\0\0\0\^E\0\0\0\^T\M^?\M^?\M^?\M^?^\
\^D\^Z\M-@\M^?\M^?\M^?\M^?\M^^\M-&H\240\M^?\M^?\M^?\M^?\M^_\M-;\^U\M^P\M^?\M^?\M^?\M^?\240\M^F*\
\240\M^?\M^?\M^?\M^?\M-!\M^Z\M-w\M^P\M^?\M^?\M^?\M^?\M-K\M^I\^Z\240\M^?\M^?\M^?\M^?\M-R#\M-tp\
\M^?\M^?\M^?\M^?\M-Ra&\^P\M^?\M^?\M^?\M^?\M-V\M-~t \M^?\M^?\M^?\M^?\M-X\M^@\M--\M^P\M^?\M^?\M^?\
\M^?\M-Z\M-~\M-Q\240\M^?\M^?\M^?\M^?\M-[\M-@\M^P\^P\M^?\M^?\M^?\M^?\M-\\M-^\M-3\240\M^?\M^?\M^?\
\M^?\M-]\M-)\M-,\M^P\M^?\M^?\M^?\M^?\M-^\M->\M^U\240\M^?\M^?\M^?\M^?\M-_\M^I\M^N\M^P\M^?\M^?\
\M^?\M^?\M-`\M^^w\240\M^?\M^?\M^?\M^?\M-aip\M^P\M^?\M^?\M^?\M^?\M-b~Y\240\M^?\M^?\M^?\M^?\M-cIR\
\M^P\M^?\M^?\M^?\M^?\M-d^;\240\M^?\M^?\M^?\M^?\M-e)4\M^P\M^?\M^?\M^?\M^?\M-fGX \M^?\M^?\M^?\M^?\
\M-g\^RQ\^P\M^?\M^?\M^?\M^?\M-h': \M^?\M^?\M^?\M^?\M-h\M-r3\^P\M^?\M^?\M^?\M^?\M-j\a\^\ \M^?\
\M^?\M^?\M^?\M-j\M-R\^U\^P\M^?\M^?\M^?\M^?\M-k\M-f\M-~ \M^?\M^?\M^?\M^?\M-l\M-1\M-w\^P\M^?\M^?\
\M^?\M^?\M-m\M-F\M-` \M^?\M^?\M^?\M^?\M-n\M^Q\M-Y\^P\M^?\M^?\M^?\M^?\M-o\M-/\M-|\240\M^?\M^?\
\M^?\M^?\M-pq\M-;\^P\M^?\M^?\M^?\M^?\M-q\M^O\M-^\240\M^?\M^?\M^?\M^?\M-r\^?\M-A\M^P\M^?\M^?\M^?\
\M^?\M-so\M-@\240\M^?\M^?\M^?\M^?\M-t_\M-#\M^P\M^?\M^?\M^?\M^?\M-uO\M-"\240\M^?\M^?\M^?\M^?\M-v\
?\M^E\M^P\M^?\M^?\M^?\M^?\M-w/\M^D\240\M^?\M^?\M^?\M^?\M-x(\M-"\^P\M^?\M^?\M^?\M^?\M-y\^Of\240\
\M^?\M^?\M^?\M^?\M-z\b\M^D\^P\M^?\M^?\M^?\M^?\M-z\M-x\M^C \M^?\M^?\M^?\M^?\M-{\M-hf\^P\M^?\M^?\
\M^?\M^?\M-|\M-Xe \M^?\M^?\M^?\M^?\M-}\M-HH\^P\M^?\M^?\M^?\M^?\M-~\M-8G \M^?\M^?\M^?\M^?\M^?\
\M-(*\^P\0\0\0\0\0\M^X) \0\0\0\0\^A\M^H\f\^P\0\0\0\0\^Bx\v \0\0\0\0\^Cq(\M^P\0\0\0\0\^Da'\240\0\
\0\0\0\^EQ
\M^P\0\0\0\0\^FA \240\0\0\0\0\a0\M-l\M^P\0\0\0\0\a\M^MC\240\0\0\0\0 \^P\M-N\M^P\0\0\
\0\0 \M--\M-? \0\0\0\0
\M-p\M-0\M^P\0\0\0\0\v\M-`\M-/\240\0\0\0\0\f\M-Y\M-M\^P\0\0\0\0\r\M-@\M^Q\240\0\0\0\0\^N\M-9\
\M-/\^P\0\0\0\0\^O\M-)\M-. \0\0\0\0\^P\M^Y\M^Q\^P\0\0\0\0\^Q\M^I\M^P \0\0\0\0\^Rys\^P\0\0\0\0\
\^Sir \0\0\0\0\^TYU\^P\0\0\0\0\^UIT \0\0\0\0\^V97\^P\0\0\0\0\^W)6 \0\0\0\0\^X"S\M^P\0\0\0\0\^Y\
\^X \0\0\0\0\^Z\^B5\M^P\0\0\0\0\^Z\M-r4\240\0\0\0\0\^[\M-b\^W\M^P\0\0\0\0\^\\M-R\^V\240\0\0\0\
\0\^]\M-A\M-y\M^P\0\0\0\0\^^\M-1\M-x\240\0\0\0\0\^_\M-!\M-[\M^P\0\0\0\0 v+ \0\0\0\0!\M^A\M-=\
\M^P\0\0\0\0"V\r \0\0\0\0#j\M-Z\^P\0\0\0\0$5\M-o \0\0\0\0%J\M-<\^P\0\0\0\0&\^U\M-Q \0\0\0\0'*\
\M^^\^P\0\0\0\0'\M-~\M-m\240\0\0\0\0)
\M^@\^P\0\0\0\0)\M-^\M-O\240\0\0\0\0*\M-jb\^P\0\0\0\0+\M->\M-1\240\0\0\0\0,\M-S~\M^P\0\0\0\0-\
\M^^\M^S\240\0\0\0\0.\M-3`\M^P\0\0\0\0/~u\240\0\0\0\0000\M^SB\M^P\0\0\0\0001g\M^R \0\0\0\0002s$\
\M^P\0\0\0\0003Gt \0\0\0\0004S\^F\M^P\0\0\0\0005'V \0\0\0\00062\M-h\M^P\0\0\0\0007\a8 \0\0\0\08\
\^\\^E\^P\0\0\0\08\M-g\^Z \0\0\0\09\M-{\M-g\^P\0\0\0\0:\M-F\M-| \0\0\0\0;\M-[\M-I\^P\0\0\0\0<\
\M-0\^X\240\0\0\0\0=\M-;\M-+\^P\0\0\0\0>\M^O\M-z\240\0\0\0\0?\M^[\M^M\^P\0\0\0\0@o\M-\\240\0\0\
\0\0A\M^D\M-)\M^P\0\0\0\0BO\M->\240\0\0\0\0Cd\M^K\M^P\0\0\0\0D/\240\240\0\0\0\0EDm\M^P\0\0\0\0E\
\M-s\M-S \0\0\0\0G-\M^J\^P\0\0\0\0G\M-S\M-5 \0\0\0\0I\rl\^P\0\0\0\0I\M-3\M^W \0\0\0\0J\M-mN\^P\
\0\0\0\0K\M^\\M-3\240\0\0\0\0L\M-Vj\M^P\0\0\0\0M|\M^U\240\0\0\0\0N\M-6L\M^P\0\0\0\0O\\w\240\0\0\
\0\0P\M^V.\M^P\0\0\0\0Q<Y\240\0\0\0\0Rv\^P\M^P\0\0\0\0S\^\;\240\0\0\0\0TU\M-r\M^P\0\0\0\0T\M-|\
\^]\240\0\0\0\0V5\M-T\M^P\0\0\0\0V\M-e: \0\0\0\0X\^^\M-q\^P\0\0\0\0X\M-E\^\ \0\0\0\0Y\M-~\M-S\
\^P\0\0\0\0Z\M-$\M-~ \0\0\0\0[\M-^\M-5\^P\0\0\0\0\\\M^D\M-` \0\0\0\0]\M->\M^W\^P\0\0\0\0^d\M-B \
\0\0\0\0_\M^^y\^P\0\0\0\0`M\M-^\240\0\0\0\0a\M^G\M^U\M^P\0\0\0\0b-\M-@\240\0\0\0\0cgw\M^P\0\0\0\
\0d\r\M-"\240\0\0\0\0eGY\M^P\0\0\0\0e\M-m\M^D\240\0\0\0\0g';\M^P\0\0\0\0g\M-Mf\240\0\0\0\0i\a\
\^]\M^P\0\0\0\0i\M--H\240\0\0\0\0j\M-f\M^?\M^P\0\0\0\0k\M^Ve \0\0\0\0l\M-P\^\\^P\0\0\0\0mvG \0\
\0\0\0n\M-/\M-~\^P\0\0\0\0oV) \0\0\0\0p\M^O\M-`\^P\0\0\0\0q6\v \0\0\0\0ro\M-B\^P\0\0\0\0s\^U\
\M-m \0\0\0\0tO\M-$\^P\0\0\0\0t\M^? \240\0\0\0\0v8\M-@\M^P\0\0\0\0v\M-^\M-k\240\0\0\0\0x\^X\
\M-"\M^P\0\0\0\0x\M->\M-M\240\0\0\0\0y\M-x\M^D\M^P\0\0\0\0z\M^^\M-/\240\0\0\0\0{\M-Xf\M^P\0\0\0\
\0|~\M^Q\240\0\0\0\0}\M-8H\M^P\0\0\0\0~^s\240\0\0\0\0\^?\M^X*\M^P\^B\^A\^B\^A\^B\^C\^D\^B\^A\^B\
\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\
\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\
\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\
\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\
\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\
\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\^A\^B\M^?\M^?\M^Q&\0\0\M^?\M^?\M^]\
\M^P\^A\^D\M^?\M^?\M^O\M^@\0\b\M^?\M^?\M^]\M^P\^A\f\M^?\M^?\M^]\M^P\^A\^PLMT\0PDT\0PST\0PWT\0PP\
T\0\0\0\0\0\^A\0\0\0\0\^A
PST8PDT,M3.2.0,M11.1.0
"
28868 lua51 RET read 2819/0xb03
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbc9e8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbcee8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL fstat(5,0x7f7ffffbcdd0)
28868 lua51 STRU struct stat { dev=4, ino=33, mode=-rw-rw---- , nlink=1, uid=756<"_metronome">, gid=756<"_metronome">, rdev=1632, atime=1443380759<"Sep 27 19:05:59 2015">.687285394, mtime=1443380759<"Sep 27 19:05:59 2015">.667318890, ctime=1443380759<"Sep 27 19:05:59 2015">.667318890, size=22109, blocks=44, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL kbind(0x7f7ffffbce88,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL write(5,0xbe4b4493000,0x48)
28868 lua51 GIO fd 5 wrote 72 bytes
"Sep 27 19:06:23 general info Hello and welcome to Metronome version 3.7
"
28868 lua51 RET write 72/0x48
28868 lua51 CALL open(0xbe5616cb218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/import.lua"
28868 lua51 RET open 9
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5616cb218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/import.lua"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211925, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864095, atime=1443380744<"Sep 27 19:05:44 2015">.847540120, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=609, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 GIO fd 9 read 609 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2010, Matthew Wild
local t_insert = table.insert;
function import(module, ...)
local m = package.loaded[module] or require(module);
if type(m) == "table" and ... then
local ret = {};
for _, f in ipairs{...} do
t_insert(ret, m[f]);
end
return unpack(ret);
end
return m;
end
"
28868 lua51 RET read 609/0x261
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe555fafc98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/xmppstream.lua"
28868 lua51 RET open 9
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe555fafc98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/xmppstream.lua"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211958, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864212, atime=1443380744<"Sep 27 19:05:44 2015">.847540120, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=5837, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 GIO fd 9 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2010-2012, Matthew Wild, Waqas Hussain
local lxp = require "lxp";
local st = require "util.stanza";
local stanza_mt = st.stanza_mt;
local error = error;
local next = next;
local tostring = tostring;
local t_insert = table.insert;
local t_concat = table.concat;
local t_remove = table.remove;
local setmetatable = setmetatable;
-- COMPAT: w/LuaExpat 1.1.0
local lxp_supports_doctype = pcall(lxp.new, { StartDoctypeDecl = false });
module "xmppstream"
local new_parser = lxp.new;
local xml_namespace = {
["http://www.w3.org/XML/1998/namespace\\1lang"] = "xml:lang";
["http://www.w3.org/XML/1998/namespace\\1space"] = "xml:space";
["http://www.w3.org/XML/1998/namespace\\1base"] = "xml:base";
["http://www.w3.org/XML/1998/namespace\\1id"] = "xml:id";
};
local xmlns_streams = "http://etherx.jabber.org/streams";
local ns_separator = "\\1";
local ns_pattern = "^([^"..ns_separator.."]*)"..ns_separator.."?(.*)$";
_M.ns_separator = ns_separator;
_M.ns_pattern = ns_pattern;
function new_sax_handlers(session, stream_callbacks)
local xml_handlers = {};
local cb_streamopened = stream_callbacks.streamopened;
local cb_streamclosed = stream_callbacks.streamclosed;
local cb_error = stream_callbacks.error or function(session, e) error("XML stream error\
: "..tostring(e)); end;
local cb_handlestanza = stream_callbacks.handlestanza;
local stream_ns = stream_callbacks.stream_ns or xmlns_streams;
local stream_tag = stream_callbacks.stream_tag or "stream";
if stream_ns ~= "" then
stream_tag = stream_ns..ns_separator..stream_tag;
end
local stream_error_tag = stream_ns..ns_separator..(stream_callbacks.error_tag or "error\
");
local stream_default_ns = stream_callbacks.default_ns;
local stack = {};
local chardata, stanza = {};
local non_streamns_depth = 0;
session.stream_declared_ns = {};
function xml_handlers:StartNamespaceDecl(prefix, uri)
if session.notopen then
if prefix and prefix ~= "stream" then
session.stream_declared_ns[prefix] = uri;
end
else
-- Drop this callback after session is initialized
xml_handlers.StartNamespaceDecl = false;
if session.stream_declared_ns and not next(session.stream_declared_ns) \
then
session.stream_declared_ns = nil;
end
end
end
function xml_handlers:StartElement(tagname, attr)
if stanza and #chardata > 0 then
-- We have some character data in the buffer
t_insert(stanza, t_concat(chardata));
chardata = {};
end
local curr_ns,name = tagname:match(ns_pattern);
if name == "" then
curr_ns, name = "", curr_ns;
end
if curr_ns ~= stream_default_ns or non_streamns_depth > 0 then
attr.xmlns = curr_ns;
non_streamns_depth = non_streamns_depth + 1;
end
for i=1,#attr do
local k = attr[i];
attr[i] = nil;
local xmlk = xml_namespace[k];
if xmlk then
attr[xmlk] = attr[k];
attr[k] = nil;
end
end
if not stanza then --if we are not currently inside a stanza
if session.notopen then
if tagname == stream_tag then
non_streamns_depth = 0;
if cb_streamopened then
cb_streamopened(session, attr);
end
else
-- Garbage before stream?
cb_error(session, "no-stream");
end
return;
end
if curr_ns == "jabber:client" and name ~= "iq" and name ~= "presence" a\
nd name ~= "message" then
cb_error(session, "invalid-top-level-element");
end
stanza = setmetatable({ name = name, attr = attr, tags = {} }, stanza_m\
t);
else -- we are inside a stanza, so add a tag
t_insert(stack, stanza);
local oldstanza = stanza;
stanza = setmetatable({ name = name, attr = attr, tags = {} }, stanza_m\
t);
t_insert(oldstanza, stanza);
t_insert(oldstanza.tags, stanza);
end
end
function xml_handlers:CharacterData(data)
if stanza then
t_insert(chardata, data);"
28868 lua51 GIO fd 9 read 1741 bytes
"
end
end
function xml_handlers:EndElement(tagname)
if non_streamns_depth > 0 then
non_streamns_depth = non_streamns_depth - 1;
end
if stanza then
if #chardata > 0 then
-- We have some character data in the buffer
t_insert(stanza, t_concat(chardata));
chardata = {};
end
-- Complete stanza
if #stack == 0 then
if tagname ~= stream_error_tag then
cb_handlestanza(session, stanza);
else
cb_error(session, "stream-error", stanza);
end
stanza = nil;
else
stanza = t_remove(stack);
end
else
if cb_streamclosed then
cb_streamclosed(session);
end
end
end
local function restricted_handler(parser)
cb_error(session, "parse-error", "restricted-xml", "Restricted XML, see RFC 612\
0 section 11.1.");
if not parser.stop or not parser:stop() then
error("Failed to abort parsing");
end
end
if lxp_supports_doctype then
xml_handlers.StartDoctypeDecl = restricted_handler;
end
xml_handlers.Comment = restricted_handler;
xml_handlers.ProcessingInstruction = restricted_handler;
local function reset()
stanza, chardata = nil, {};
stack = {};
end
local function set_session(stream, new_session)
session = new_session;
end
return xml_handlers, { reset = reset, set_session = set_session };
end
function new(session, stream_callbacks)
local handlers, meta = new_sax_handlers(session, stream_callbacks);
local parser = new_parser(handlers, ns_separator);
local parse = parser.parse;
return {
reset = function ()
parser = new_parser(handlers, ns_separator);
parse = parser.parse;
meta.reset();
end,
feed = function (self, data)
return parse(parser, data);
end,
set_session = meta.set_session;
};
end
return _M;
"
28868 lua51 RET read 5837/0x16cd
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe53d512518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/stanza.lua"
28868 lua51 RET open 9
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe53d512518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/stanza.lua"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211950, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864200, atime=1443380744<"Sep 27 19:05:44 2015">.847540120, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=10511, blocks=24, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 GIO fd 9 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2012, Kim Alvefur, Matthew Wild, Waqas Hussain
local t_insert, t_remove, t_concat = table.insert, table.remove, table.concat;
local s_format, s_match, s_gsub, s_find = string.format, string.match, string.gsub, string.find\
;
local tostring, setmetatable, pairs, ipairs, type, os =
tostring, setmetatable, pairs, ipairs, type, os;
local getstyle, getstring, do_pretty_printing;
local ok, termcolours = pcall(require, "util.termcolours");
if ok then
do_pretty_printing = true;
getstyle, getstring = termcolours.getstyle, termcolours.getstring;
end
local xmlns_stanzas = "urn:ietf:params:xml:ns:xmpp-stanzas";
module "stanza"
stanza_mt = { __type = "stanza" };
stanza_mt.__index = stanza_mt;
local stanza_mt = stanza_mt;
function stanza(name, attr)
local stanza = { name = name, attr = attr or {}, tags = {} };
return setmetatable(stanza, stanza_mt);
end
local stanza = stanza;
function stanza_mt:query(xmlns)
return self:tag("query", { xmlns = xmlns });
end
function stanza_mt:body(text, attr)
return self:tag("body", attr):text(text);
end
function stanza_mt:tag(name, attrs)
local s = stanza(name, attrs);
local last_add = self.last_add;
if not last_add then last_add = {}; self.last_add = last_add; end
(last_add[#last_add] or self):add_direct_child(s);
t_insert(last_add, s);
return self;
end
function stanza_mt:text(text)
local last_add = self.last_add;
if type(text) == "string" then
(last_add and last_add[#last_add] or self):add_direct_child(text);
end
return self;
end
function stanza_mt:up()
local last_add = self.last_add;
if last_add then t_remove(last_add); end
return self;
end
function stanza_mt:reset()
self.last_add = nil;
return self;
end
function stanza_mt:add_direct_child(child)
if type(child) == "table" then
t_insert(self.tags, child);
end
t_insert(self, child);
end
function stanza_mt:add_child(child)
local last_add = self.last_add;
(last_add and last_add[#last_add] or self):add_direct_child(child);
return self;
end
function stanza_mt:get_child(name, xmlns)
for _, child in ipairs(self.tags) do
if (not name or child.name == name)
and ((not xmlns and self.attr.xmlns == child.attr.xmlns)
or child.attr.xmlns == xmlns) then
return child;
end
end
end
function stanza_mt:get_child_text(name, xmlns)
local tag = self:get_child(name, xmlns);
if tag then
return tag:get_text();
end
return nil;
end
function stanza_mt:child_with_attr_value(name, attr, value)
for _, child in ipairs(self.tags) do
if child.name == name and child.attr[attr] and
child.attr[attr] == value then
return child;
end
end
end
function stanza_mt:child_with_name(name)
for _, child in ipairs(self.tags) do
if child.name == name then return child; end
end
end
function stanza_mt:child_with_ns(ns)
for _, child in ipairs(self.tags) do
if child.attr.xmlns == ns then return child; end
end
end
function stanza_mt:children()
local i = 0;
return function (a)
i = i + 1
return a[i];
end, self, i;
end
function stanza_mt:childtags(name, xmlns)
local tags = self.tags;
local start_i, max_i = 1, #tags;
return function ()
for i = start_i, max_i do
local v = tags[i];
if (not name or v.name == name)
and ((not xmlns and self.attr.xmlns == v.attr.xmlns)
or v.attr.xmlns == xmlns) then
start_i = i+1;
return v;
end
end
end;
end
function stanza_mt:maptags(callback)
local tags, curr_tag = self.tags, 1;
local n_children, n_tags = #self, #tags;
local i = 1;
while n_tags > 0 and curr_tag <= n_tags do
if self[i] == tags[curr_tag] then
local ret = callback(self[i]);
if ret == nil then
t_remove(self, i);
t_remove(tags, curr_tag);
i, curr_tag, n_children, n_tags =
i - 1, curr_tag - 1, n_children - 1, n_tags - 1;
else
self"
28868 lua51 GIO fd 9 read 4096 bytes
"[i] = ret;
tags[curr_tag] = ret;
end
curr_tag = curr_tag + 1;
end
i = i + 1;
end
return self;
end
local xml_escape
do
local escape_table = { ["'"] = "&apos;", ["\\""] = "&quot;", ["<"] = "&lt;", [">"] = "&\
gt;", ["&"] = "&amp;" };
function xml_escape(str) return (s_gsub(str, "['&<>\\"]", escape_table)); end
_M.xml_escape = xml_escape;
end
local function _dostring(t, buf, self, xml_escape, parentns)
local nsid = 0;
local name = t.name
t_insert(buf, "<"..name);
for k, v in pairs(t.attr) do
if s_find(k, "\\1", 1, true) then
local ns, attrk = s_match(k, "^([^\\1]*)\\1?(.*)$");
nsid = nsid + 1;
t_insert(buf, " xmlns:ns"..nsid.."='"..xml_escape(ns).."' ".."ns"..nsid\
..":"..attrk.."='"..xml_escape(v).."'");
elseif not(k == "xmlns" and v == parentns) then
t_insert(buf, " "..k.."='"..xml_escape(v).."'");
end
end
local len = #t;
if len == 0 then
t_insert(buf, "/>");
else
t_insert(buf, ">");
for n=1,len do
local child = t[n];
if child.name then
self(child, buf, self, xml_escape, t.attr.xmlns);
else
t_insert(buf, xml_escape(child));
end
end
t_insert(buf, "</"..name..">");
end
end
function stanza_mt.__tostring(t)
local buf = {};
_dostring(t, buf, _dostring, xml_escape, nil);
return t_concat(buf);
end
function stanza_mt.top_tag(t)
local attr_string = "";
if t.attr then
for k, v in pairs(t.attr) do if type(k) == "string" then attr_string = attr_str\
ing .. s_format(" %s='%s'", k, xml_escape(tostring(v))); end end
end
return s_format("<%s%s>", t.name, attr_string);
end
function stanza_mt.get_text(t)
if #t.tags == 0 then
return t_concat(t);
end
end
function stanza_mt.get_error(stanza)
local type, condition, text;
local error_tag = stanza:get_child("error");
if not error_tag then
return nil, nil, nil;
end
type = error_tag.attr.type;
for _, child in ipairs(error_tag.tags) do
if child.attr.xmlns == xmlns_stanzas then
if not text and child.name == "text" then
text = child:get_text();
elseif not condition then
condition = child.name;
end
if condition and text then
break;
end
end
end
return type, condition or "undefined-condition", text;
end
do
local id = 0;
function new_id()
id = id + 1;
return "lx"..id;
end
end
function preserialize(stanza)
local s = { name = stanza.name, attr = stanza.attr };
for _, child in ipairs(stanza) do
if type(child) == "table" then
t_insert(s, preserialize(child));
else
t_insert(s, child);
end
end
return s;
end
function deserialize(stanza)
-- Set metatable
if stanza then
local attr = stanza.attr;
for i=1,#attr do attr[i] = nil; end
local attrx = {};
for att in pairs(attr) do
if s_find(att, "|", 1, true) and not s_find(att, "\\1", 1, true) then
local ns,na = s_match(att, "^([^|]+)|(.+)$");
attrx[ns.."\\1"..na] = attr[att];
attr[att] = nil;
end
end
for a, v in pairs(attrx) do
attr[a] = v;
end
setmetatable(stanza, stanza_mt);
for _, child in ipairs(stanza) do
if type(child) == "table" then
deserialize(child);
end
end
if not stanza.tags then
-- Rebuild tags
local tags = {};
for _, child in ipairs(stanza) do
if type(child) == "table" then
t_insert(tags, child);
end
end
stanza.tags = tags;
end
end
return stanza;
end
local function _clone(stanza)
local attr, tags = {}, {};
for k, v in pairs(stanza.attr) do attr[k] = v; end
local new = { name = stanza.name, attr = attr, tags = tags };
for i=1,#stanza do
local child = stanza[i];
if child.name then
child = _clone(child);
t_insert(tags, child);
end
t_insert(new, child);
end
return setmetatable(new, stanza_mt);
end
clone = _clone;
function message(attr, body)
if not body then
return stanza("message", attr);
else
return stanza("message", attr):tag("body"):text(body):up();
end
end
function iq(attr)
if attr and not attr.id then attr.id = new_id(); end
return stanza("iq", attr or { id = new_id() });
end
function reply(orig)
return stanza(orig.name, orig.attr and { to = orig.attr.from, from = orig.attr.to, id =\
"
28868 lua51 GIO fd 9 read 2319 bytes
"orig.attr.id, type = ((orig.name == "iq" and "result") or orig.attr.type) });
end
do
local xmpp_stanzas_attr = { xmlns = xmlns_stanzas };
function error_reply(orig, type, condition, message)
local t = reply(orig);
t.attr.type = "error";
t:tag("error", {type = type}) --COMPAT: Some day xmlns:stanzas goes here
:tag(condition, xmpp_stanzas_attr):up();
if (message) then t:tag("text", xmpp_stanzas_attr):text(message):up(); end
return t; -- stanza ready for adding app-specific errors
end
end
function presence(attr)
return stanza("presence", attr);
end
if do_pretty_printing then
local style_attrk = getstyle("yellow");
local style_attrv = getstyle("red");
local style_tagname = getstyle("red");
local style_punc = getstyle("magenta");
local attr_format = " "..getstring(style_attrk, "%s")..getstring(style_punc, "=")..gets\
tring(style_attrv, "'%s'");
local top_tag_format = getstring(style_punc, "<")..getstring(style_tagname, "%s").."%s"\
..getstring(style_punc, ">");
--local tag_format = getstring(style_punc, "<")..getstring(style_tagname, "%s").."%s"..\
getstring(style_punc, ">").."%s"..getstring(style_punc, "</")..getstring(style_tagname, "%s")..\
getstring(style_punc, ">");
local tag_format = top_tag_format.."%s"..getstring(style_punc, "</")..getstring(style_t\
agname, "%s")..getstring(style_punc, ">");
function stanza_mt.pretty_print(t)
local children_text = "";
for n, child in ipairs(t) do
if type(child) == "string" then
children_text = children_text .. xml_escape(child);
else
children_text = children_text .. child:pretty_print();
end
end
local attr_string = "";
if t.attr then
for k, v in pairs(t.attr) do if type(k) == "string" then attr_string = \
attr_string .. s_format(attr_format, k, tostring(v)); end end
end
return s_format(tag_format, t.name, attr_string, children_text, t.name);
end
function stanza_mt.pretty_top_tag(t)
local attr_string = "";
if t.attr then
for k, v in pairs(t.attr) do if type(k) == "string" then attr_string = \
attr_string .. s_format(attr_format, k, tostring(v)); end end
end
return s_format(top_tag_format, t.name, attr_string);
end
else
-- Sorry, fresh out of colours for you guys ;)
stanza_mt.pretty_print = stanza_mt.__tostring;
stanza_mt.pretty_top_tag = stanza_mt.top_tag;
end
return _M;
"
28868 lua51 RET read 10511/0x290f
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13076982968320/0xbe4b8ecb000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077140021248/0xbe4c2492000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077142355968/0xbe4c26cc000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080055177216/0xbe5700ae000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077716512768/0xbe4e4a5b000
28868 lua51 CALL read(9,0xbe4d1994000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b4e298,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/hostmanager.lua"
28868 lua51 RET open 9
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b4e298,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/hostmanager.lua"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211737, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863117, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.449530876, size=4700, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078620196864/0xbe51a82d000
28868 lua51 CALL read(9,0xbe51a82d000,0x4000)
28868 lua51 GIO fd 9 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Matthew Wild, Paul Aurich, Waqas Hussain
local configmanager = require "core.configmanager";
local modulemanager = require "core.modulemanager";
local events_new = require "util.events".new;
local mt_new = require "util.multitable".new;
local set_new = require "util.set".new;
local disco_items = mt_new();
local NULL = {};
local jid_section = require "util.jid".section;
local uuid_gen = require "util.uuid".generate;
local log = require "util.logger".init("hostmanager");
local hosts = hosts;
local metronome_events = metronome.events;
local fire_event = metronome_events.fire_event;
local pairs, tostring, type = pairs, tostring, type;
module "hostmanager"
local hosts_loaded_once;
local function load_enabled_hosts()
local disabled = configmanager.get("*", "modules_disabled");
if disabled then
disabled = set_new(disabled);
if disabled:contains("router") then
log("warn", "You intentionally disabled core routing functions.");
log("warn", "Be aware that if you don't have any replacement this will \
cause Metronome to NOT work correctly.");
end
end
local defined_hosts = configmanager.getconfig();
local activated_any_host;
for host, host_config in pairs(defined_hosts) do
if host ~= "*" and host_config.enabled ~= false then
if not host_config.component_module then
activated_any_host = true;
end
activate(host, host_config);
end
end
if not activated_any_host then
log("error", "No active VirtualHost entries in the config file. This may cause \
unexpected behaviour as no modules will be loaded.");
end
metronome_events.fire_event("hosts-activated", defined_hosts);
hosts_loaded_once = true;
end
metronome_events.add_handler("server-starting", load_enabled_hosts);
local function rebuild_disco_data()
disco_items = mt_new(); --reset
for name in pairs(hosts) do
local config = configmanager.getconfig()[name];
if not name:match("[@/]") then
disco_items:set(name:match("%.(.*)") or "*", name, config.name or true)\
;
end
end
end
metronome_events.add_handler("config-reloaded", rebuild_disco_data);
local function host_send(stanza)
local name, type = stanza.name, stanza.attr.type;
if type == "error" or (name == "iq" and type == "result") then
local dest_host_name = jid_section(stanza.attr.to, "host");
local dest_host = hosts[dest_host_name] or { type = "unknown" };
log("warn", "Unhandled response sent to %s host %s: %s", dest_host.type, dest_h\
ost_name, tostring(stanza));
return;
end
fire_event("route/local", nil, stanza);
end
function activate(host)
if hosts[host] then return nil, "The host "..host.." is already activated"; end
host_config = configmanager.getconfig()[host];
local host_session = {
host = host;
s2sout = {};
events = events_new();
dialback_secret = configmanager.get(host, "dialback_secret") or uuid_gen();
send = host_send;
modules = {};
};
if not host_config.component_module then
host_session.type = "local";
host_session.sessions = {};
else
host_session.type = "component";
end
hosts[host] = host_session;
if not host:match("[@/]") then
disco_items:set(host:match("%.(.*)") or "*", host, host_config.name or true);
end
for option_name in pairs(host_config) do
if option_name:match("_ports$") or option_name:match("_interface$") then
log("warn", "%s: Option '%s' has no effect for virtual hosts - put it i\
n the server-wide section instead", host, option_name);
end
end
log((hosts_loaded_once and "info") or "debug", "Activated host: %s", host);
metronome_events.fire_event("host-activated", host);
return true;
end
function deactivate(host, reason)
local host_session = hosts[host];
if not host_session then return nil, "The host "..tostring(host).." is not activated"; \
end
log("info", "Deact"
28868 lua51 GIO fd 9 read 604 bytes
"ivating host: %s", host);
if type(reason) ~= "table" then
reason = { condition = "host-gone", text = tostring(reason or "This server has \
stopped serving "..host) };
end
metronome_events.fire_event("host-deactivating", { host = host, host_session = host_ses\
sion, reason = reason });
hosts[host] = nil;
if not host:match("[@/]") then
disco_items:remove(host:match("%.(.*)") or "*", host);
end
metronome_events.fire_event("host-deactivated", host);
log("info", "Deactivated host: %s", host);
return true;
end
function get_children(host)
return disco_items:get(host) or NULL;
end
return _M;
"
28868 lua51 RET read 4700/0x125c
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077589979136/0xbe4dd1af000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079072776192/0xbe5357ca000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078979645440/0xbe52fef9000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078528344064/0xbe515094000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080456851456/0xbe587fbf000
28868 lua51 CALL read(9,0xbe51a82d000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56ae81918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/modulemanager.lua"
28868 lua51 RET open 9
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe56ae81918,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/modulemanager.lua"
28868 lua51 RET open 9
28868 lua51 CALL fstat(9,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211740, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863352, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.459522089, size=9998, blocks=20, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(9,0xbe51a82d000,0x4000)
28868 lua51 GIO fd 9 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Florian Zeitz, Kim Alvefur, Jeff Mitchell, Marco Cirillo, Matthe\
w Wild, Paul Aurich, Waqas Hussain
local logger = require "util.logger";
local log = logger.init("modulemanager");
local config = require "core.configmanager";
local pluginloader = require "util.pluginloader";
local set = require "util.set";
local new_multitable = require "util.multitable".new;
local hosts = hosts;
local metronome = metronome;
local pcall, xpcall = pcall, xpcall;
local setmetatable, rawget = setmetatable, rawget;
local ipairs, pairs, type, tostring, t_insert = ipairs, pairs, type, tostring, table.insert;
local debug_traceback = debug.traceback;
local unpack, select = unpack, select;
pcall = function(f, ...)
local n = select("#", ...);
local params = { ... };
return xpcall(function() return f(unpack(params, 1, n)) end, function(e) return tostrin\
g(e).."\\n"..debug_traceback(); end);
end
local autoload_modules = { "router", "bind_session", "presence", "message", "iq", "offline", "c\
2s", "s2s" };
local component_inheritable_modules = { "tls", "iq", "bidi", "compression", "host_guard", "s2s"\
, "stream_management" };
local _G = _G;
module "modulemanager"
local api = _G.require "core.moduleapi"; -- Module API container
local modulemap = { ["*"] = {} };
function load_modules_for_host(host)
local component = config.get(host, "component_module");
local global_modules_enabled = config.get("*", "modules_enabled");
local global_modules_disabled = config.get("*", "modules_disabled");
local host_modules_enabled = config.get(host, "modules_enabled");
local host_modules_disabled = config.get(host, "modules_disabled");
if host_modules_enabled == global_modules_enabled then host_modules_enabled = nil; end
if host_modules_disabled == global_modules_disabled then host_modules_disabled = nil; e\
nd
local global_modules = set.new(autoload_modules) + set.new(global_modules_enabled) - se\
t.new(global_modules_disabled);
if component then
global_modules = set.intersection(set.new(component_inheritable_modules), globa\
l_modules);
end
local modules = (global_modules + set.new(host_modules_enabled)) - set.new(host_modules\
_disabled);
if component then
load(host, component);
end
for module in modules do
if not is_loaded(host, module) then load(host, module); end
end
end
metronome.events.add_handler("host-activated", load_modules_for_host);
metronome.events.add_handler("host-deactivating", function (event)
local host, host_session = event.host, event.host_session;
if host_session.modules then
for module in pairs(host_session.modules) do unload(host, module); end
end
end, -3);
metronome.events.add_handler("host-deactivated", function (host)
modulemap[host] = nil;
end);
--- Private helpers ---
local function do_unload_module(host, name, reload)
local mod = get_module(host, name);
if not mod then return nil, "module-not-loaded"; end
if module_has_method(mod, "unload") then
local ok, err = call_module_method(mod, "unload", reload);
if (not ok) and err then
log("warn", "Non-fatal error unloading module '%s' on '%s': %s", name, \
host, err);
end
end
for object, event, handler in mod.module.event_handlers:iter(nil, nil, nil) do
object.remove_handler(event, handler);
end
if mod.module.items then
local events = (host == "*" and metronome.events) or hosts[host].events;
for key,t in pairs(mod.module.items) do
for i = #t,1,-1 do
local value = t[i];
t[i] = nil;
events.fire_event("item-removed/"..key, {source = mod.module, i\
tem = value});
end
end
end
mod.module.loaded = false;
modulemap[host][name] = nil;
return true;
end
local function do_load_module(host, module_name)
if not (host and module_name) then
return nil, "insufficient-parameters";
elseif not hosts[host] and h"
28868 lua51 GIO fd 9 read 4096 bytes
"ost ~= "*"then
return nil, "unknown-host";
end
if not modulemap[host] then modulemap[host] = hosts[host].modules; end
if modulemap[host][module_name] then
log("warn", "%s is already loaded for %s, so not loading again", module_name, h\
ost);
return nil, "module-already-loaded";
elseif modulemap["*"][module_name] then
local mod = modulemap["*"][module_name];
if module_has_method(mod, "add_host") then
local _log = logger.init(host..":"..module_name);
local host_module_api = setmetatable({
host = host, event_handlers = new_multitable(), items = {};
_log = _log, log = function (self, ...) return _log(...); end;
},{
__index = modulemap["*"][module_name].module;
});
local host_module = setmetatable({ module = host_module_api }, { __inde\
x = mod });
host_module_api.environment = host_module;
modulemap[host][module_name] = host_module;
local ok, result, module_err = call_module_method(mod, "add_host", host\
_module_api);
if not ok or result == false then
modulemap[host][module_name] = nil;
return nil, ok and module_err or result;
end
return host_module;
end
return nil, "global-module-already-loaded";
end
local _log = logger.init(host..":"..module_name);
local api_instance = setmetatable({ name = module_name, host = host,
_log = _log, log = function (self, ...) return _log(...); end, event_handlers =\
new_multitable() }
, { __index = api });
local pluginenv = setmetatable({ module = api_instance }, { __index = _G });
api_instance.environment = pluginenv;
local mod, err = pluginloader.load_code(module_name, nil, pluginenv);
if not mod then
log("error", "Unable to load module '%s': %s", module_name or "nil", err or "ni\
l");
return nil, err;
end
api_instance.path = err;
modulemap[host][module_name] = pluginenv;
local ok, err = pcall(mod);
if ok then
if module_has_method(pluginenv, "load") then
ok, err = call_module_method(pluginenv, "load");
if not ok then
log("warn", "Error loading module '%s' on '%s': %s", module_nam\
e, host, err or "nil");
end
end
if api_instance.host == "*" then
if not api_instance.global then
if host ~= "*" then
log("warn", "mod_%s: Setting module.host = '*' deprecat\
ed, call module:set_global() instead", module_name);
end
api_instance:set_global();
end
modulemap[host][module_name] = nil;
modulemap[api_instance.host][module_name] = pluginenv;
if host ~= api_instance.host and module_has_method(pluginenv, "add_host\
") then
ok, err = do_load_module(host, module_name);
end
end
end
if not ok then
modulemap[api_instance.host][module_name] = nil;
log("error", "Error initializing module '%s' on '%s': %s", module_name, host, e\
rr or "nil");
end
return ok and pluginenv, err;
end
local function do_reload_module(host, name)
local mod = get_module(host, name);
if not mod then return nil, "module-not-loaded"; end
local _mod, err = pluginloader.load_code(name);
if not _mod then
log("error", "Unable to load module '%s': %s", name or "nil", err or "nil");
return nil, err;
end
local saved;
if module_has_method(mod, "save") then
local ok, ret, err = call_module_method(mod, "save");
if ok then
saved = ret;
else
log("warn", "Error saving module '%s:%s' state: %s", host, name, ret);
if not config.get(host, "force_module_reload") then
log("warn", "Aborting reload due to error, set force_module_rel\
oad to ignore this");
return nil, "save-state-failed";
else
log("warn", "Continuing with reload (using the force)");
end
end
end
do_unload_module(host, name, true);
local ok, err = do_load_module(host, name);
if ok then
mod = get_module(host, name);
if module_has_method(mod, "restore") then
local ok, err = call_module_method(mod, "restore", saved or {})
if (not ok) and err then
log("warn", "Error restoring module '%s' from '%s': %s", name, \
host, err);
end
end
end
return ok and mod, err;
end
--- Public API ---
function load(host, name)
local mod, err = do_load_module(host, name);
if mod then
(hosts[mod.m"
28868 lua51 GIO fd 9 read 1806 bytes
"odule.host] or metronome).events.fire_event("module-loaded",
{ module = name, host = mod.module.host, storage = mod.module.storage }
);
end
return mod, err;
end
function unload(host, name)
local mod = get_module(host, name);
local ok, err = do_unload_module(host, name);
if ok then
(hosts[host] or metronome).events.fire_event("module-unloaded",
{ module = name, host = host, storage = mod.module.storage }
);
end
return ok, err;
end
function reload(host, name)
local mod, err = do_reload_module(host, name);
if mod then
modulemap[host][name].module.reloading = true;
(hosts[host] or metronome).events.fire_event("module-reloaded", { module = name\
, host = host });
mod.module.reloading = nil;
elseif not is_loaded(host, name) then
(hosts[host] or metronome).events.fire_event("module-unloaded", { module = name\
, host = host });
end
return mod, err;
end
function get_module(host, name)
return modulemap[host] and modulemap[host][name];
end
function get_items(key, host)
local result = {};
local modules = modulemap[host];
if not key or not host or not modules then return nil; end
for _, module in pairs(modules) do
local mod = module.module;
if mod.items and mod.items[key] then
for _, value in ipairs(mod.items[key]) do
t_insert(result, value);
end
end
end
return result;
end
function get_modules(host)
return modulemap[host];
end
function is_loaded(host, name)
return modulemap[host] and modulemap[host][name] and true;
end
function module_has_method(module, method)
return type(rawget(module.module, method)) == "function";
end
function call_module_method(module, method, ...)
local f = rawget(module.module, method);
if type(f) == "function" then
return pcall(f, ...);
else
return false, "no-such-method";
end
end
return _M;
"
28868 lua51 RET read 9998/0x270e
28868 lua51 CALL kbind(0x7f7ffffbbee8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL kbind(0x7f7ffffbbeb8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL kbind(0x7f7ffffbbeb8,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL wait4(12168,0x7f7ffffbbf84,0<>,0)
28868 lua51 RET wait4 12168/0x2f88
28868 lua51 CALL read(9,0xbe51a82d000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(9)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1fa0618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/pluginloader.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1fa0618,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/pluginloader.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211935, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864119, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=1840, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 1840 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2012, Florian Zeitz, Matthew Wild, Waqas Hussain
local dir_sep, path_sep = package.config:match("^(%S+)%s(%S+)");
local plugin_dir = {};
for path in (CFG_PLUGINDIR or "./plugins/"):gsub("[/\\\\]", dir_sep):gmatch("[^"..path_sep.."]+\
") do
path = path..dir_sep; -- add path separator to path end
path = path:gsub(dir_sep..dir_sep.."+", dir_sep); -- coalesce multiple separaters
plugin_dir[#plugin_dir + 1] = path;
end
local io_open = io.open;
local envload = require "util.envload".envload;
module "pluginloader"
function load_file(names)
local file, err, path;
for i=1,#plugin_dir do
for j=1,#names do
path = plugin_dir[i]..names[j];
file, err = io_open(path);
if file then
local content = file:read("*a");
file:close();
return content, path;
end
end
end
return file, err;
end
function load_resource(plugin, resource)
resource = resource or "mod_"..plugin..".lua";
local names = {
"mod_"..plugin.."/"..plugin.."/"..resource; -- mod_hello/hello/mod_hello.lua
"mod_"..plugin.."/"..resource; -- mod_hello/mod_hello.lua
plugin.."/"..resource; -- hello/mod_hello.lua
resource; -- mod_hello.lua
};
return load_file(names);
end
function load_code(plugin, resource, env)
local content, err = load_resource(plugin, resource);
if not content then return content, err; end
local path = err;
local f, err = envload(content, "@"..path, env);
if not f then return f, err; end
return f, path;
end
return _M;
"
28868 lua51 RET read 1840/0x730
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe540d87c18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/set.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe540d87c18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/set.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211948, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864186, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=3193, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 3193 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2012, Matthew Wild, Waqas Hussain
local ipairs, pairs, setmetatable, next, tostring, type =
ipairs, pairs, setmetatable, next, tostring, type;
local t_concat = table.concat;
module "set"
local set_mt = {};
function set_mt.__call(set, _, k)
return next(set._items, k);
end
function set_mt.__add(set1, set2)
return _M.union(set1, set2);
end
function set_mt.__sub(set1, set2)
return _M.difference(set1, set2);
end
function set_mt.__div(set, func)
local new_set, new_items = _M.new();
local items, new_items = set._items, new_set._items;
for item in pairs(items) do
local new_item = func(item);
if new_item ~= nil then
new_items[new_item] = true;
end
end
return new_set;
end
function set_mt.__eq(set1, set2)
local set1, set2 = set1._items, set2._items;
for item in pairs(set1) do
if not set2[item] then
return false;
end
end
for item in pairs(set2) do
if not set1[item] then
return false;
end
end
return true;
end
function set_mt.__tostring(set)
local s, items = { }, set._items;
for item in pairs(items) do
s[#s+1] = tostring(item);
end
return t_concat(s, ", ");
end
local items_mt = {};
function items_mt.__call(items, _, k)
return next(items, k);
end
function new(list)
local items = setmetatable({}, items_mt);
local set = { _items = items };
function set:add(item)
items[item] = true;
end
function set:contains(item)
return items[item];
end
function set:items()
return items;
end
function set:remove(item)
items[item] = nil;
end
function set:add_list(list)
if list then
if type(list) == "string" then
list = { list };
elseif type(list) == "function" then
list = list();
end
if type(list) == "table" then
for _, item in ipairs(list) do
items[item] = true;
end
end
end
end
function set:include(otherset)
for item in pairs(otherset) do
items[item] = true;
end
end
function set:exclude(otherset)
for item in pairs(otherset) do
items[item] = nil;
end
end
function set:empty()
return not next(items);
end
if list then
set:add_list(list);
end
return setmetatable(set, set_mt);
end
function union(set1, set2)
local set = new();
local items = set._items;
for item in pairs(set1._items) do
items[item] = true;
end
for item in pairs(set2._items) do
items[item] = true;
end
return set;
end
function difference(set1, set2)
local set = new();
local items = set._items;
for item in pairs(set1._items) do
items[item] = (not set2._items[item]) or nil;
end
return set;
end
function intersection(set1, set2)
local set = new();
local items = set._items;
set1, set2 = set1._items, set2._items;
for item in pairs(set1) do
items[item] = (not not set2[item]) or nil;
end
return set;
end
function xor(set1, set2)
return union(set1, set2) - intersection(set1, set2);
end
return _M;
"
28868 lua51 RET read 3193/0xc79
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1999b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/multitable.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d1999b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/multitable.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211933, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864126, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=3732, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 3732 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2012, Matthew Wild, Waqas Hussain
local select = select;
local t_insert = table.insert;
local unpack, pairs, next, type = unpack, pairs, next, type;
module "multitable"
local function get(self, ...)
local t = self.data;
for n = 1,select('#', ...) do
t = t[select(n, ...)];
if not t then break; end
end
return t;
end
local function add(self, ...)
local t = self.data;
local count = select('#', ...);
for n = 1,count-1 do
local key = select(n, ...);
local tab = t[key];
if not tab then tab = {}; t[key] = tab; end
t = tab;
end
t_insert(t, (select(count, ...)));
end
local function set(self, ...)
local t = self.data;
local count = select('#', ...);
for n = 1,count-2 do
local key = select(n, ...);
local tab = t[key];
if not tab then tab = {}; t[key] = tab; end
t = tab;
end
t[(select(count-1, ...))] = (select(count, ...));
end
local function r(t, n, _end, ...)
if t == nil then return; end
local k = select(n, ...);
if n == _end then
t[k] = nil;
return;
end
if k then
local v = t[k];
if v then
r(v, n+1, _end, ...);
if not next(v) then
t[k] = nil;
end
end
else
for _,b in pairs(t) do
r(b, n+1, _end, ...);
if not next(b) then
t[_] = nil;
end
end
end
end
local function remove(self, ...)
local _end = select('#', ...);
for n = _end,1 do
if select(n, ...) then _end = n; break; end
end
r(self.data, 1, _end, ...);
end
local function s(t, n, results, _end, ...)
if t == nil then return; end
local k = select(n, ...);
if n == _end then
if k == nil then
for _, v in pairs(t) do
t_insert(results, v);
end
else
t_insert(results, t[k]);
end
return;
end
if k then
local v = t[k];
if v then
s(v, n+1, results, _end, ...);
end
else
for _,b in pairs(t) do
s(b, n+1, results, _end, ...);
end
end
end
-- Search for keys, nil == wildcard
local function search(self, ...)
local _end = select('#', ...);
for n = _end,1 do
if select(n, ...) then _end = n; break; end
end
local results = {};
s(self.data, 1, results, _end, ...);
return results;
end
-- Append results to an existing list
local function search_add(self, results, ...)
if not results then results = {}; end
local _end = select('#', ...);
for n = _end,1 do
if select(n, ...) then _end = n; break; end
end
s(self.data, 1, results, _end, ...);
return results;
end
function iter(self, ...)
local query = { ... };
local maxdepth = select("#", ...);
local stack = { self.data };
local keys = { };
local function it(self)
local depth = #stack;
local key = next(stack[depth], keys[depth]);
if key == nil then -- Go up the stack
stack[depth], keys[depth] = nil, nil;
if depth > 1 then
return it(self);
end
return; -- The end
else
keys[depth] = key;
end
local value = stack[depth][key];
if query[depth] == nil or key == query[depth] then
if depth == maxdepth then -- Result
local result = {}; -- Collect keys forming path to result
for i = 1, depth do
result[i] = keys[i];
end
result[depth+1] = value;
return unpack(result, 1, depth+1);
elseif type(value) == "table" then
t_insert(stack, value); -- Descend
end
end
return it(self);
end;
return it, self;
end
function new()
return {
data = {};
get = get;
add = add;
set = set;
remove = remove;
search = search;
search_add = search_add;
iter = iter;
};
end
return _M;
"
28868 lua51 RET read 3732/0xe94
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b55c18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/moduleapi.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b55c18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/moduleapi.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211739, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863419, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.459522089, size=9978, blocks=20, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Florian Zeitz, Kim Alvefur, Marco Cirillo, Matthew Wild
local config = require "core.configmanager";
local modulemanager = require "modulemanager";
local array = require "util.array";
local set = require "util.set";
local logger = require "util.logger";
local pluginloader = require "util.pluginloader";
local timer = require "util.timer";
local t_insert, t_remove, t_concat = table.insert, table.remove, table.concat;
local error, setmetatable, type = error, setmetatable, type;
local ipairs, pairs, select, unpack = ipairs, pairs, select, unpack;
local tonumber, tostring = tonumber, tostring;
local metronome = metronome;
local hosts = metronome.hosts;
local fire_global_event = metronome.events.fire_event;
local shared_data = setmetatable({}, { __mode = "v" });
local NULL = {};
local api = {};
function api:get_name()
return self.name;
end
function api:get_host()
return self.host;
end
function api:get_host_type()
return self.host ~= "*" and hosts[self.host].type or nil;
end
function api:set_global()
self.host = "*";
local _log = logger.init("mod_"..self.name);
self.log = function (self, ...) return _log(...); end;
self._log = _log;
self.global = true;
end
function api:add_feature(xmlns)
self:add_item("feature", xmlns);
end
function api:add_identity(category, type, name)
self:add_item("identity", {category = category, type = type, name = name});
end
function api:add_extension(data)
self:add_item("extension", data);
end
function api:has_feature(xmlns, host)
for _, feature in ipairs(self:get_items("feature", host)) do
if feature == xmlns then return true; end
end
return false;
end
function api:has_identity(category, type, name, host)
for _, id in ipairs(self:get_items("identity", host)) do
if id.category == category and id.type == type and id.name == name then
return true;
end
end
return false;
end
function api:fire_event(...)
return (hosts[self.host] or metronome).events.fire_event(...);
end
function api:fire_global_event(...)
return metronome.events.fire_event(...);
end
function api:hook_object_event(object, event, handler, priority)
self.event_handlers:set(object, event, handler, true);
return object.add_handler(event, handler, priority);
end
function api:unhook_object_event(object, event, handler)
return object.remove_handler(event, handler);
end
function api:hook(event, handler, priority)
return self:hook_object_event((hosts[self.host] or metronome).events, event, handler, p\
riority);
end
function api:hook_global(event, handler, priority)
return self:hook_object_event(metronome.events, event, handler, priority);
end
function api:hook_tag(xmlns, name, handler, priority)
if not handler and type(name) == "function" then
xmlns, name, handler, priority = nil, xmlns, name, handler;
elseif not (handler and name) then
self:log("warn", "Error: Insufficient parameters to module:hook_stanza()");
return;
end
return self:hook("stanza/"..(xmlns and (xmlns..":") or "")..name, function (data) retur\
n handler(data.origin, data.stanza, data); end, priority);
end
api.hook_stanza = api.hook_tag;
function api:require(lib)
local e;
local f, n = pluginloader.load_code(self.name, lib..".lib.lua", self.environment);
if not f then
e = n;
f, n = pluginloader.load_code(lib, lib..".lib.lua", self.environment);
end
if not f then error("Failed to load plugin library '"..lib.."', error 1: "..e..", error\
2: "..n); end
return f();
end
function api:depends(name)
if not self.dependencies then
self.dependencies = {};
self:hook("module-reloaded", function (event)
if self.dependencies[event.module] and not self.reloading then
self:log("info", "Auto-reloading due to reload of %s:%s", event\
.host, event.module);
modulemanager.reload(self.host, self.name);
"
28868 lua51 GIO fd 8 read 4096 bytes
"return;
end
end);
self:hook("module-unloaded", function (event)
if self.dependencies[event.module] then
self:log("info", "Auto-unloading due to unload of %s:%s", event\
.host, event.module);
modulemanager.unload(self.host, self.name);
end
end);
end
local mod = modulemanager.get_module(self.host, name) or modulemanager.get_module("*", \
name);
if mod and mod.module.host == "*" and self.host ~= "*"
and modulemanager.module_has_method(mod, "add_host") then
mod = nil; -- Target is a shared module, so we still want to load it on our hos\
t
end
if not mod then
local err;
mod, err = modulemanager.load(self.host, name);
if not mod then
return error(("Unable to load required module, mod_%s: %s"):format(name\
, ((err or "unknown error"):gsub("%-", " ")) ));
end
end
self.dependencies[name] = true;
return mod;
end
function api:shared(...)
if not self.shared_data then self.shared_data = {}; end
local paths = { n = select("#", ...), ... };
local data_array = {};
local default_path_components = { self.host, self.name };
for i = 1, paths.n do
local path = paths[i];
if path:sub(1,1) ~= "/" then
local n_components = select(2, path:gsub("/", "%1"));
path = (n_components<#default_path_components and "/" or "")..t_concat(\
default_path_components, "/", 1, #default_path_components-n_components).."/"..path;
end
local shared = shared_data[path];
if not shared then
shared = {};
if path:match("%-cache$") then
setmetatable(shared, { __mode = "kv" });
end
shared_data[path] = shared;
end
t_insert(data_array, shared);
self.shared_data[path] = shared;
end
return unpack(data_array);
end
function api:get_option(name, default_value)
local value = config.get(self.host, name);
if value == nil then
value = config.get("*", name);
value = value == nil and default_value or value;
end
return value;
end
function api:get_option_string(name, default_value)
local value = self:get_option(name, default_value);
if type(value) == "table" then
if #value > 1 then
self:log("error", "Config option '%s' does not take a list, using just \
the first item", name);
end
value = value[1];
end
if value == nil then
return nil;
end
return tostring(value);
end
function api:get_option_number(name, ...)
local value = self:get_option(name, ...);
if type(value) == "table" then
if #value > 1 then
self:log("error", "Config option '%s' does not take a list, using just \
the first item", name);
end
value = value[1];
end
local ret = tonumber(value);
if value ~= nil and ret == nil then
self:log("error", "Config option '%s' not understood, expecting a number", name\
);
end
return ret;
end
function api:get_option_boolean(name, ...)
local value = self:get_option(name, ...);
if type(value) == "table" then
if #value > 1 then
self:log("error", "Config option '%s' does not take a list, using just \
the first item", name);
end
value = value[1];
end
if value == nil then
return nil;
end
local ret = value == true or value == "true" or value == 1 or nil;
if ret == nil then
ret = (value == false or value == "false" or value == 0);
if ret then
ret = false;
else
ret = nil;
end
end
if ret == nil then
self:log("error", "Config option '%s' not understood, expecting true/false", na\
me);
end
return ret;
end
function api:get_option_array(name, ...)
local value = self:get_option(name, ...);
if value == nil then
return nil;
end
if type(value) ~= "table" then
return array{ value };
end
return array():append(value);
end
function api:get_option_set(name, ...)
local value = self:get_option_array(name, ...);
if value == nil then
return nil;
end
return set.new(value);
end
function api:get_option_table(name, ...)
local value = self:get_option(name, ...);
if value == nil then
return nil;
end
if type(value) ~= "table" then
self:log("error", "Config option '%s' not understood, expecting a table", name)\
;
return nil;
else
return value;
end
end
function api:add_item(key, value)
self.items = self.items or {};
self.items[key] = se"
28868 lua51 GIO fd 8 read 1786 bytes
"lf.items[key] or {};
t_insert(self.items[key], value);
self:fire_event("item-added/"..key, {source = self, item = value});
end
function api:remove_item(key, value)
local t = self.items and self.items[key] or NULL;
for i = #t,1,-1 do
if t[i] == value then
t_remove(self.items[key], i);
self:fire_event("item-removed/"..key, {source = self, item = value});
return value;
end
end
end
function api:get_items(key, host)
local result = modulemanager.get_items(key, host or self.host) or {};
return result;
end
function api:handle_items(type, added_cb, removed_cb, existing)
self:hook("item-added/"..type, added_cb);
self:hook("item-removed/"..type, removed_cb);
if existing ~= false then
for _, item in ipairs(self:get_items(type)) do
added_cb({ item = item });
end
end
end
function api:provides(name, item)
if not item then item = self.environment; end
if not item.name then
local item_name = self.name;
-- Strip a provider prefix to find the item name
-- (e.g. "auth_foo" -> "foo" for an auth provider)
if item_name:find(name.."_", 1, true) == 1 then
item_name = item_name:sub(#name+2);
end
item.name = item_name;
end
self:add_item(name.."-provider", item);
end
function api:send(stanza)
return fire_global_event("route/post", hosts[self.host], stanza);
end
function api:add_timer(delay, callback)
return timer.add_task(delay, function (t)
if self.loaded == false then return; end
return callback(t);
end);
end
local path_sep = package.config:sub(1,1);
function api:get_directory()
return self.path and (self.path:gsub("%"..path_sep.."[^"..path_sep.."]*$", "")) or nil;
end
function api:load_resource(path, mode)
path = config.resolve_relative_path(self:get_directory(), path);
return io.open(path, mode);
end
return api;
"
28868 lua51 RET read 9978/0x26fa
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5a5716018,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/array.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5a5716018,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/array.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc3d0)
28868 lua51 STRU struct stat { dev=7, ino=211908, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864056, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=3557, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 GIO fd 8 read 3557 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2012, Matthew Wild, Waqas Hussain
local t_insert, t_sort, t_remove, t_concat
= table.insert, table.sort, table.remove, table.concat;
local setmetatable = setmetatable;
local math_random = math.random;
local pairs, ipairs = pairs, ipairs;
local tostring = tostring;
local array = {};
local array_base = {};
local array_methods = {};
local array_mt = { __index = array_methods, __tostring = function (array) return array:concat("\
, "); end };
local function new_array(self, t, _s, _var)
if type(t) == "function" then -- Assume iterator
t = self.collect(t, _s, _var);
end
return setmetatable(t or {}, array_mt);
end
function array_mt.__add(a1, a2)
local res = new_array();
return res:append(a1):append(a2);
end
setmetatable(array, { __call = new_array });
-- Read-only methods
function array_methods:random()
return self[math_random(1,#self)];
end
-- These methods can be called two ways:
-- array.method(existing_array, [params [, ...]]) -- Create new array for result
-- existing_array:method([params, ...]) -- Transform existing array into result
--
function array_base.map(outa, ina, func)
for k,v in ipairs(ina) do
outa[k] = func(v);
end
return outa;
end
function array_base.filter(outa, ina, func)
local inplace, start_length = ina == outa, #ina;
local write = 1;
for read=1,start_length do
local v = ina[read];
if func(v) then
outa[write] = v;
write = write + 1;
end
end
if inplace and write <= start_length then
for i=write,start_length do
outa[i] = nil;
end
end
return outa;
end
function array_base.sort(outa, ina, ...)
if ina ~= outa then
outa:append(ina);
end
t_sort(outa, ...);
return outa;
end
function array_base.pluck(outa, ina, key)
for i=1,#ina do
outa[i] = ina[i][key];
end
return outa;
end
--- These methods only mutate the array
function array_methods:shuffle(outa, ina)
local len = #self;
for i=1,#self do
local r = math_random(i,len);
self[i], self[r] = self[r], self[i];
end
return self;
end
function array_methods:reverse()
local len = #self-1;
for i=len,1,-1 do
self:push(self[i]);
self:pop(i);
end
return self;
end
function array_methods:append(array)
local len,len2 = #self, #array;
for i=1,len2 do
self[len+i] = array[i];
end
return self;
end
function array_methods:push(x)
t_insert(self, x);
return self;
end
function array_methods:pop(x)
local v = self[x];
t_remove(self, x);
return v;
end
function array_methods:concat(sep)
return t_concat(array.map(self, tostring), sep);
end
function array_methods:length()
return #self;
end
--- These methods always create a new array
function array.collect(f, s, var)
local t = {};
while true do
var = f(s, var);
if var == nil then break; end
t_insert(t, var);
end
return setmetatable(t, array_mt);
end
---
-- Setup methods from array_base
for method, f in pairs(array_base) do
local base_method = f;
-- Setup global array method which makes new array
array[method] = function (old_a, ...)
local a = new_array();
return base_method(a, old_a, ...);
end
-- Setup per-array (mutating) method
array_methods[method] = function (self, ...)
return base_method(self, self, ...);
end
end
_G.array = array;
module("array");
return array;
"
28868 lua51 RET read 3557/0xde5
28868 lua51 CALL read(8,0xbe569fe7000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54ab15d58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/timer.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54ab15d58,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/timer.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc3d0)
28868 lua51 STRU struct stat { dev=7, ino=211953, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864183, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=904, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe51a82d000,0x4000)
28868 lua51 GIO fd 8 read 904 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2011, Matthew Wild, Waqas Hussain
local server = require "net.server";
local math_min = math.min;
local math_huge = math.huge;
local get_time = require "socket".gettime;
module "timer"
local event = server.event;
local event_base = server.event_base;
local EVENT_LEAVE = (event.core and event.core.LEAVE) or -1;
function add_task(delay, callback)
local event_handle;
event_handle = event_base:addevent(nil, 0, function ()
local ret = callback(get_time());
if ret then
return 0, ret;
elseif event_handle then
return EVENT_LEAVE;
end
end
, delay);
end
return _M;
"
28868 lua51 RET read 904/0x388
28868 lua51 CALL read(8,0xbe51a82d000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1c121d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/jid.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4c1c121d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/jid.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211928, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864116, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=3548, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe51a82d000,0x4000)
28868 lua51 GIO fd 8 read 3548 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2011, Matthew Wild, Waqas Hussain
local match = string.match;
local nodeprep = require "util.encodings".stringprep.nodeprep;
local nameprep = require "util.encodings".stringprep.nameprep;
local resourceprep = require "util.encodings".stringprep.resourceprep;
local escapes = {
[" "] = "\\\\20"; ['"'] = "\\\\22";
["&"] = "\\\\26"; ["'"] = "\\\\27";
["/"] = "\\\\2f"; [":"] = "\\\\3a";
["<"] = "\\\\3c"; [">"] = "\\\\3e";
["@"] = "\\\\40"; ["\\\\"] = "\\\\5c";
};
local unescapes = {};
for k, v in pairs(escapes) do unescapes[v] = k; end
module "jid"
local function _split(jid)
if not jid then return; end
local node, host, resource, pos;
node, pos = match(jid, "^([^@/]+)@()");
host, pos = match(jid, "^([^@/]+)()", pos);
if node and not host then return nil, nil, nil; end
resource = match(jid, "^/(.+)$", pos);
if (not host) or ((not resource) and #jid >= pos) then return nil, nil, nil; end
return node, host, resource;
end
split = _split;
function bare(jid)
local node, host = _split(jid);
if node and host then
return node.."@"..host;
end
return host;
end
function section(jid, type)
if not jid then return; end
local node, host, resource, pos;
node, pos = match(jid, "^([^@/]+)@()");
host, pos = match(jid, "^([^@/]+)()", pos);
if host then resource = match(jid, "^/(.+)$", pos); end
if type == "node" then return node;
elseif type == "host" then return host;
elseif type == "resource" then return resource; end
end
function prepped_section(jid, type)
local bit = section(jid, type);
if not bit then return; end
if type == "node" then return nodeprep(bit);
elseif type == "host" then return nameprep(bit);
elseif type == "resource" then return resourceprep(bit); end
end
local function _prepped_split(jid)
local node, host, resource = _split(jid);
if host then
host = nameprep(host);
if not host then return; end
if node then
node = nodeprep(node);
if not node then return; end
end
if resource then
resource = resourceprep(resource);
if not resource then return; end
end
return node, host, resource;
end
end
prepped_split = _prepped_split;
function prep(jid)
local node, host, resource = _prepped_split(jid);
if host then
if node then
host = node .. "@" .. host;
end
if resource then
host = host .. "/" .. resource;
end
end
return host;
end
function join(node, host, resource)
if node and host and resource then
return node.."@"..host.."/"..resource;
elseif node and host then
return node.."@"..host;
elseif host and resource then
return host.."/"..resource;
elseif host then
return host;
end
return nil; -- Invalid JID
end
function compare(jid, acl)
-- compare jid to single acl rule
-- TODO compare to table of rules?
local jid_node, jid_host, jid_resource = _split(jid);
local acl_node, acl_host, acl_resource = _split(acl);
if ((acl_node ~= nil and acl_node == jid_node) or acl_node == nil) and
((acl_host ~= nil and acl_host == jid_host) or acl_host == nil) and
((acl_resource ~= nil and acl_resource == jid_resource) or acl_resource == nil)\
then
return true
end
return false
end
function escape(s) return s and (s:gsub(".", escapes)); end
function unescape(s) return s and (s:gsub("\\\\%x%x", unescapes)); end
return _M;
"
28868 lua51 RET read 3548/0xddc
28868 lua51 CALL read(8,0xbe51a82d000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54ab15a18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/uuid.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe54ab15a18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/uuid.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211954, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864199, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=1404, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080242954240/0xbe57b3c2000
28868 lua51 CALL read(8,0xbe57b3c2000,0x4000)
28868 lua51 GIO fd 8 read 1404 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2010, Matthew Wild, Waqas Hussain
local m_random = math.random;
local tostring = tostring;
local os_time = os.time;
local os_clock = os.clock;
local sha1 = require "util.hashes".sha1;
module "uuid"
local last_uniq_time = 0;
local function uniq_time()
local new_uniq_time = os_time();
if last_uniq_time >= new_uniq_time then new_uniq_time = last_uniq_time + 1; end
last_uniq_time = new_uniq_time;
return new_uniq_time;
end
local function new_random(x)
return sha1(x..os_clock()..tostring({}), true);
end
local buffer = new_random(uniq_time());
local function _seed(x)
buffer = new_random(buffer..x);
end
local function get_nibbles(n)
if #buffer < n then _seed(uniq_time()); end
local r = buffer:sub(0, n);
buffer = buffer:sub(n+1);
return r;
end
local function get_twobits()
return ("%x"):format(get_nibbles(1):byte() % 4 + 8);
end
function generate()
-- generate RFC 4122 complaint UUIDs (version 4 - random)
return get_nibbles(8).."-"..get_nibbles(4).."-4"..get_nibbles(3).."-"..(get_twobits()).\
.get_nibbles(3).."-"..get_nibbles(12);
end
seed = _seed;
return _M;
"
28868 lua51 RET read 1404/0x57c
28868 lua51 CALL read(8,0xbe57b3c2000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL gettimeofday(0x7f7ffffbcbd0,0)
28868 lua51 STRU struct timeval { 1443380783<"Sep 27 19:06:23 2015">.576420 }
28868 lua51 RET gettimeofday 0
28868 lua51 CALL kbind(0x7f7ffffbcb78,0x18,0x1482f90836128560)
28868 lua51 RET kbind 0
28868 lua51 CALL getrusage(RUSAGE_SELF,0x7f7ffffbcb90)
28868 lua51 STRU struct rusage { utime=0.010000, stime=0.040000, maxrss=5400, ixrss=0, idrss=0, isrss=0, minflt=1476, majflt=0, nswap=0, inblock=0, oublock=57, msgsnd=1, msgrcv=0, nsignals=0, nvcsw=5, nivcsw=7 }
28868 lua51 RET getrusage 0
28868 lua51 CALL open(0xbe515094318,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/portmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe515094318,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/portmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211741, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863424, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.459522089, size=7786, blocks=16, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077499797504/0xbe4d7bae000
28868 lua51 CALL read(8,0xbe4d7bae000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Marco Cirillo, Matthew Wild, Waqas Hussain
local config = require "core.configmanager";
local certmanager = require "util.certmanager";
local server = require "net.server";
local log = require "util.logger".init("portmanager");
local multitable = require "util.multitable";
local set = require "util.set";
local clone_table = require "util.auxiliary".clone_table;
local table = table;
local setmetatable, rawset, rawget = setmetatable, rawset, rawget;
local type, pairs, tonumber, ipairs = type, pairs, tonumber, ipairs;
local NULL = {};
local metronome = metronome;
local fire_event = metronome.events.fire_event;
module "portmanager";
--- Config
local default_interfaces = { "*" };
local default_local_interfaces = { "127.0.0.1" };
if config.get("*", "use_ipv6") then
table.insert(default_interfaces, "::");
table.insert(default_local_interfaces, "::1");
end
--- Private state
local services = setmetatable({}, { __index = function (t, k) rawset(t, k, {}); return rawget(t\
, k); end });
local active_services = multitable.new();
--- Private helpers
local function error_to_friendly_message(service_name, port, err)
local friendly_message = err;
if err:match(" in use") then
if port == 5222 or port == 5223 or port == 5269 then
friendly_message = "check that Metronome or another XMPP server is "
.."not already running and using this port";
elseif port == 80 or port == 81 then
friendly_message = "check that a HTTP server is not already using "
.."this port";
elseif port == 5280 then
friendly_message = "check that Metronome or a BOSH connection manager "
.."is not already running";
else
friendly_message = "this port is in use by another application";
end
elseif err:match("permission") then
friendly_message = "Metronome does not have sufficient privileges to use this p\
ort";
end
return friendly_message;
end
metronome.events.add_handler("item-added/net-provider", function (event)
local item = event.item;
register_service(item.name, item);
end);
metronome.events.add_handler("item-removed/net-provider", function (event)
local item = event.item;
unregister_service(item.name, item);
end);
local function duplicate_ssl_config(ssl_config)
if type(ssl_config) ~= "table" then return NULL; end
return clone_table(ssl_config);
end
--- Public API
function activate(service_name)
local service_info = services[service_name][1];
if not service_info then
return nil, "Unknown service: "..service_name;
end
local listener = service_info.listener;
local config_prefix = (service_info.config_prefix or service_name).."_";
if config_prefix == "_" then
config_prefix = "";
end
local bind_interfaces = config.get("*", config_prefix.."interfaces")
or config.get("*", config_prefix.."interface")
or (service_info.private and default_local_interfaces)
or config.get("*", "interfaces")
or config.get("*", "interface")
or listener.default_interface
or default_interfaces
bind_interfaces = set.new(bind_interfaces);
local bind_ports = set.new(config.get("*", config_prefix.."ports")
or service_info.default_ports
or {service_info.default_port
or listener.default_port
});
local mode, ssl = listener.default_mode or "*a";
for interface in bind_interfaces do
for port in bind_ports do
port = tonumber(port);
if #active_services:search(nil, interface, port) > 0 then
log("error", "Multiple services configured to listen on the sam\
e port ([%s]:%d): %s, %s", interface, port, active_services:search(nil, interface, port)[1][1].\
service.name or "<unnamed>", service_name or "<unnamed>");
else
local err;
if service_info.encryption == "ssl" then
local ssl_config = duplicate_ssl_config((config.get("*"\
, config_prefix.."ssl") and confi"
28868 lua51 GIO fd 8 read 3690 bytes
"g.get("*", config_prefix.."ssl")[interface])
or (config.get("*", config_pref\
ix.."ssl") and config.get("*", config_prefix.."ssl")[port])
or config.get("*", config_prefi\
x.."ssl")
or (config.get("*", "ssl") and \
config.get("*", "ssl")[interface])
or (config.get("*", "ssl") and \
config.get("*", "ssl")[port])
or config.get("*", "ssl"));
-- add default entries for, or override ssl configurati\
on
if ssl_config and service_info.ssl_config then
for key, value in pairs(service_info.ssl_config\
) do
if not service_info.ssl_config_override\
and not ssl_config[key] then
ssl_config[key] = value;
elseif service_info.ssl_config_override\
then
ssl_config[key] = value;
end
end
end
ssl, err = certmanager.create_context(service_info.name\
.." port "..port, "server", ssl_config);
if not ssl then
log("error", "Error binding encrypted port for \
%s: %s", service_info.name, error_to_friendly_message(service_name, port, err) or "unknown erro\
r");
end
end
if not err then
local handler, err = server.addserver(interface, port, \
listener, mode, ssl);
if not handler then
log("error", "Failed to open server port %d on \
%s, %s", port, interface, error_to_friendly_message(service_name, port, err));
else
log("debug", "Added listening service %s to [%s\
]:%d", service_name, interface, port);
active_services:add(service_name, interface, po\
rt, {
server = handler;
service = service_info;
});
end
end
end
end
end
log("info", "Activated service '%s'", service_name);
return true;
end
function deactivate(service_name, service_info)
for name, interface, port, n, active_service
in active_services:iter(service_name or service_info and service_info.name, nil\
, nil, nil) do
if service_info == nil or active_service.service == service_info then
close(interface, port);
end
end
log("info", "Deactivated service '%s'", service_name or service_info.name);
end
function register_service(service_name, service_info)
table.insert(services[service_name], service_info);
if not active_services:get(service_name) then
log("debug", "No active service for %s, activating...", service_name);
local ok, err = activate(service_name);
if not ok then
log("error", "Failed to activate service '%s': %s", service_name, err o\
r "unknown error");
end
end
fire_event("service-added", { name = service_name, service = service_info });
return true;
end
function unregister_service(service_name, service_info)
log("debug", "Unregistering service: %s", service_name);
local service_info_list = services[service_name];
for i, service in ipairs(service_info_list) do
if service == service_info then
table.remove(service_info_list, i);
end
end
deactivate(nil, service_info);
if #service_info_list > 0 then
activate(service_name);
end
fire_event("service-removed", { name = service_name, service = service_info });
end
function close(interface, port)
local service, server = get_service_at(interface, port);
if not service then
return false, "port-not-open";
end
server:close();
active_services:remove(service.name, interface, port);
log("debug", "Removed listening service %s from [%s]:%d", service.name, interface, port\
);
return true;
end
function get_service_at(interface, port)
local data = active_services:search(nil, interface, port)[1][1];
return data.service, data.server;
end
function get_service(service_name)
return services[service_name];
end
function get_active_services()
return active_services;
end
function get_registered_services()
return services;
end
return _M;
"
28868 lua51 RET read 7786/0x1e6a
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078259998720/0xbe5050aa000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077041111040/0xbe4bc63e000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079939391488/0xbe569242000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081018368000/0xbe5a9740000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080852869120/0xbe59f96b000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080442073088/0xbe5871a7000
28868 lua51 CALL read(8,0xbe4d7bae000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13081098129408/0xbe5ae351000
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe515094e18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/usermanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe515094e18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/usermanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211744, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863357, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.469543475, size=5562, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079546339328/0xbe551b6a000
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Jeff Mitchell, Matthew Wild, Waqas Hussain
local modulemanager = require "core.modulemanager";
local log = require "util.logger".init("usermanager");
local type = type;
local ipairs = ipairs;
local jid_bare = require "util.jid".bare;
local jid_join = require "util.jid".join;
local jid_prep = require "util.jid".prep;
local config = require "core.configmanager";
local hosts = hosts;
local sasl_new = require "util.sasl".new;
local storagemanager = require "core.storagemanager";
local metronome = _G.metronome;
local setmetatable = setmetatable;
local default_provider = "internal_plain";
module "usermanager"
function new_null_provider()
local function dummy() return nil, "method not implemented"; end;
local function dummy_get_sasl_handler() return sasl_new(nil, {}); end
return setmetatable({name = "null", get_sasl_handler = dummy_get_sasl_handler}, {
__index = function(self, method) return dummy; end
});
end
local provider_mt = { __index = new_null_provider() };
function initialize_host(host)
local host_session = hosts[host];
if host_session.type ~= "local" then return; end
host_session.events.add_handler("item-added/auth-provider", function (event)
local provider = event.item;
local auth_provider = config.get(host, "authentication") or default_provider;
if provider.name == auth_provider then
host_session.users = setmetatable(provider, provider_mt);
end
if host_session.users ~= nil and host_session.users.name ~= nil then
log("debug", "host '%s' now set to use user provider '%s'", host, host_\
session.users.name);
end
end);
host_session.events.add_handler("item-removed/auth-provider", function (event)
local provider = event.item;
if host_session.users == provider then
host_session.users = new_null_provider();
end
end);
host_session.users = new_null_provider();
local auth_provider = config.get(host, "authentication") or default_provider;
if auth_provider ~= "null" then
modulemanager.load(host, "auth_"..auth_provider);
end
end;
metronome.events.add_handler("host-activated", initialize_host, 100);
local host_unknown = "host unknown or deactivated";
function test_password(username, host, password)
if hosts[host] then return hosts[host].users.test_password(username, password); end
return nil, host_unknown;
end
function get_password(username, host)
if hosts[host] then return hosts[host].users.get_password(username); end
return nil, host_unknown;
end
function set_password(username, password, host)
if hosts[host] then return hosts[host].users.set_password(username, password); end
return nil, host_unknown;
end
function user_exists(username, host)
if hosts[host] then return hosts[host].users.user_exists(username); end
return nil, host_unknown;
end
function create_user(username, password, host)
local ok, err = hosts[host].users.create_user(username, password);
if not ok then
return nil, err;
else
metronome.events.fire_event("user-created", { username = username, host = host \
});
return true;
end
end
function delete_user(username, host, source)
local hostname = hosts[host];
local session = hostname.sessions and hostname.sessions[username];
local ok, err = hostname.users.delete_user(username);
if not ok then return nil, err; end
hostname.events.fire_event("user-pre-delete", { username = username, host = host, sessi\
on = session, source = source });
metronome.events.fire_event("user-deleted", { username = username, host = host, session\
= session, source = source });
return storagemanager.purge(username, host);
end
function get_sasl_handler(host, session)
if hosts[host] then return hosts[host].users.get_sasl_handler(session); end
return nil, host_unknown;
end
function get_provider(host)
return hosts[host] and hosts[host]."
28868 lua51 GIO fd 8 read 1466 bytes
"users or nil;
end
function is_admin(jid, host)
if host and not hosts[host] then return false; end
if type(jid) ~= "string" then return false; end
local is_admin;
jid = jid_bare(jid);
host = host or "*";
local host_admins = config.get(host, "admins");
local global_admins = config.get("*", "admins");
if host_admins and host_admins ~= global_admins then
if type(host_admins) == "table" then
for _,admin in ipairs(host_admins) do
if jid_prep(admin) == jid then
is_admin = true;
break;
end
end
elseif host_admins then
log("error", "Option 'admins' for host '%s' is not a list", host);
end
end
if not is_admin and global_admins then
if type(global_admins) == "table" then
for _,admin in ipairs(global_admins) do
if jid_prep(admin) == jid then
is_admin = true;
break;
end
end
elseif global_admins then
log("error", "Global option 'admins' is not a list");
end
end
if not is_admin and host ~= "*" and hosts[host].users and hosts[host].users.is_admin th\
en
is_admin = hosts[host].users.is_admin(jid);
end
return is_admin or false;
end
function account_type(user, host)
local host_session = hosts[host];
if not host_session or host_session.type ~= "local" then return; end
if is_admin(jid_join(user, host), host) then
return "admin";
elseif host_session.anonymous_host then
return "anonymous";
elseif user_exists(user, host) then
return "registered";
end
end
return _M;
"
28868 lua51 RET read 5562/0x15ba
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080746594304/0xbe599411000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077351239680/0xbe4cee01000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079683211264/0xbe559df2000
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe559df2158,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe559df2158,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211940, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864134, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=2558, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 GIO fd 8 read 2558 bytes
"-- Please see signal.lua.license for licensing information.
local pairs, ipairs = pairs, ipairs;
local t_insert = table.insert;
local type = type
local setmetatable = setmetatable;
local assert = assert;
local require = require;
module "sasl"
--[[
Authentication Backend Prototypes:
state = false : disabled
state = true : enabled
state = nil : non-existant
]]
local method = {};
method.__index = method;
local mechanisms = {};
local backend_mechanism = {};
-- register a new SASL mechanims
function registerMechanism(name, backends, f)
assert(type(name) == "string", "Parameter name MUST be a string.");
assert(type(backends) == "string" or type(backends) == "table", "Parameter backends MUS\
T be either a string or a table.");
assert(type(f) == "function", "Parameter f MUST be a function.");
mechanisms[name] = f
for _, backend_name in ipairs(backends) do
if backend_mechanism[backend_name] == nil then backend_mechanism[backend_name] \
= {}; end
t_insert(backend_mechanism[backend_name], name);
end
end
-- create a new SASL object which can be used to authenticate clients,
-- new() expects an array, profile.order, to be present in the profile
-- and which specifies the order of preference in which mechanisms are
-- presented by the server
function new(realm, profile)
local order = profile.order;
local mechanisms = {};
if type(order) == "table" and #order ~= 0 then
for b = 1, #order do
local backend = backend_mechanism[order[b]];
if backend then
for i = 1, #backend do
local sasl = backend[i];
t_insert(mechanisms, sasl);
mechanisms[sasl] = true;
end
end
end
end
return setmetatable({ profile = profile, realm = realm, mechs = mechanisms }, method);
end
-- get a fresh clone with the same realm and profile
function method:clean_clone()
return new(self.realm, self.profile)
end
-- get a list of possible SASL mechanims to use
function method:mechanisms()
return self.mechs;
end
-- select a mechanism to use
function method:select(mechanism)
if not self.selected and self.mechs[mechanism] then
self.selected = mechanism;
return true;
end
end
-- feed new messages to process into the library
function method:process(message)
return mechanisms[self.selected](self, message);
end
-- load the mechanisms
require "util.sasl.external".init(registerMechanism);
require "util.sasl.scram".init(registerMechanism);
require "util.sasl.digest-md5".init(registerMechanism);
require "util.sasl.plain".init(registerMechanism);
require "util.sasl.anonymous".init(registerMechanism);
return _M;
"
28868 lua51 RET read 2558/0x9fe
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b56e98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/external.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b56e98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/external.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211944, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864167, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=1394, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 GIO fd 8 read 1394 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
local log = require "util.logger".init("sasl");
local nodeprep = require "util.encodings".stringprep.nodeprep;
local ipairs = ipairs;
module "sasl.external"
--[[
Supported Authentication Backends
external:
function(sasl, session, authid)
return nil (internal-server-error) or true (invalid-authzid) or false o\
r username, err.
end
]]--
local function external(self, authid)
local username, err = self.profile.external(self, self.profile.session, authid);
if username == nil then
log("debug", "A server error was caught while attempting EXTERNAL SASL: %s", er\
r);
return "failure", "internal-server-error", err;
end
if username == true then return "failure", "invalid-authzid", err; end
if username == false then return "failure", "not-authorized", err; end
self.username = nodeprep(username);
if self.username then
return "success";
else
log("debug", "Username %s in the certificate, violates the NodePREP profile", u\
sername);
return "failure", "malformed-request", "Username in the certificate violates th\
e NodePREP profile";
end
end
function init(registerMechanism)
registerMechanism("EXTERNAL", {"external"}, external);
end
return _M;
"
28868 lua51 RET read 1394/0x572
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe569fe9998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/scram.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe569fe9998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/scram.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211946, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864178, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=8242, blocks=20, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- Please see sasl.lua.license for licensing information.
local s_match = string.match;
local type = type
local string = string
local base64 = require "util.encodings".base64;
local hmac_sha1 = require "util.hmac".sha1;
local sha1 = require "util.hashes".sha1;
local generate_uuid = require "util.uuid".generate;
local nodeprep = require "util.encodings".stringprep.nodeprep;
local saslprep = require "util.encodings".stringprep.saslprep;
local log = require "util.logger".init("sasl");
local t_concat = table.concat;
local char = string.char;
local byte = string.byte;
module "sasl.scram"
--=========================
--SASL SCRAM-SHA-1 according to RFC 5802
--[[
Supported Authentication Backends
scram_{MECH}:
-- MECH being a standard hash name (like those at IANA's hash registry) with '-' replac\
ed with '_'
function(username, realm)
return stored_key, server_key, iteration_count, salt, state;
end
]]
local default_i = 4096
local function bp( b )
local result = ""
for i=1, b:len() do
result = result.."\\\\"..b:byte(i)
end
return result
end
local xor_map = {0;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;1;0;3;2;5;4;7;6;9;8;11;10;13;12;15;14;2;\
3;0;1;6;7;4;5;10;11;8;9;14;15;12;13;3;2;1;0;7;6;5;4;11;10;9;8;15;14;13;12;4;5;6;7;0;1;2;3;12;13\
;14;15;8;9;10;11;5;4;7;6;1;0;3;2;13;12;15;14;9;8;11;10;6;7;4;5;2;3;0;1;14;15;12;13;10;11;8;9;7;\
6;5;4;3;2;1;0;15;14;13;12;11;10;9;8;8;9;10;11;12;13;14;15;0;1;2;3;4;5;6;7;9;8;11;10;13;12;15;14\
;1;0;3;2;5;4;7;6;10;11;8;9;14;15;12;13;2;3;0;1;6;7;4;5;11;10;9;8;15;14;13;12;3;2;1;0;7;6;5;4;12\
;13;14;15;8;9;10;11;4;5;6;7;0;1;2;3;13;12;15;14;9;8;11;10;5;4;7;6;1;0;3;2;14;15;12;13;10;11;8;9\
;6;7;4;5;2;3;0;1;15;14;13;12;11;10;9;8;7;6;5;4;3;2;1;0;};
local result = {};
local function binaryXOR( a, b )
for i=1, #a do
local x, y = byte(a, i), byte(b, i);
local lowx, lowy = x % 16, y % 16;
local hix, hiy = (x - lowx) / 16, (y - lowy) / 16;
local lowr, hir = xor_map[lowx * 16 + lowy + 1], xor_map[hix * 16 + hiy + 1];
local r = hir * 16 + lowr;
result[i] = char(r)
end
return t_concat(result);
end
-- hash algorithm independent Hi(PBKDF2) implementation
function Hi(hmac, str, salt, i)
local Ust = hmac(str, salt.."\\0\\0\\0\\1");
local res = Ust;
for n=1,i-1 do
local Und = hmac(str, Ust)
res = binaryXOR(res, Und)
Ust = Und
end
return res
end
local function validate_username(username, _nodeprep)
-- check for forbidden char sequences
for eq in username:gmatch("=(.?.?)") do
if eq ~= "2C" and eq ~= "3D" then
return false
end
end
-- replace =2C with , and =3D with =
username = username:gsub("=2C", ",");
username = username:gsub("=3D", "=");
-- apply SASLprep
username = saslprep(username);
-- apply NODEprep
if username and _nodeprep ~= false then username = (_nodeprep or nodeprep)(username); e\
nd
return username and #username>0 and username;
end
local function hashprep(hashname)
return hashname:lower():gsub("-", "_");
end
function getAuthenticationDatabaseSHA1(password, salt, iteration_count)
if type(password) ~= "string" or type(salt) ~= "string" or type(iteration_count) ~= "nu\
mber" then
return false, "inappropriate argument types"
end
if iteration_count < 4096 then
log("warn", "Iteration count < 4096 which is the suggested minimum according to\
RFC 5802.")
end
local salted_password = Hi(hmac_sha1, password, salt, iteration_count);
local stored_key = sha1(hmac_sha1(salted_password, "Client Key"))
local server_key = hmac_sha1(salted_password, "Server Key");
return true, stored_key, server_key
end
local function scram_gen(hash_name, H_f, HMAC_f)
local function scram_hash(self, message)
if not self.state then self["state"] = {} end
if type(message) ~= "string" or #message == 0 then return "failure", "malformed\
-request" end
if not self.state.name then
-- we are processing client_first_message
local client_first_message = message;
-- TODO: fail if authzid is provided, since we don't support them yet
self.state["client_first_message"] = client_first_message;
self.state["gs2_cbind_flag"], self.state["authzid"], self.state["name"]\
, self.sta"
28868 lua51 GIO fd 8 read 4096 bytes
"te["clientnonce"]
= client_first_message:match("^(%a),(.*),n=(.*),r=([^,]*).*");
-- we don't do any channel binding yet
if self.state.gs2_cbind_flag ~= "n" and self.state.gs2_cbind_flag ~= "y\
" then
return "failure", "malformed-request";
end
if not self.state.name or not self.state.clientnonce then
return "failure", "malformed-request", "Channel binding isn't s\
upported at this time";
end
self.state.name = validate_username(self.state.name, self.profile.nodep\
rep);
if not self.state.name then
log("debug", "Username violates either SASLprep or contains for\
bidden character sequences")
return "failure", "malformed-request", "Invalid username";
end
self.state["servernonce"] = generate_uuid();
-- retreive credentials
if self.profile.plain then
local password, state = self.profile.plain(self, self.state.nam\
e, self.realm)
if state == nil then return "failure", "not-authorized"
elseif state == false then return "failure", "account-disabled"\
end
password = saslprep(password);
if not password then
log("debug", "Password violates SASLprep.");
return "failure", "not-authorized", "Invalid password"
end
self.state.salt = generate_uuid();
self.state.iteration_count = default_i;
local succ = false;
succ, self.state.stored_key, self.state.server_key = getAuthent\
icationDatabaseSHA1(password, self.state.salt, default_i, self.state.iteration_count);
if not succ then
log("error", "Generating authentication database failed\
. Reason: %s", self.state.stored_key);
return "failure", "temporary-auth-failure";
end
elseif self.profile["scram_"..hashprep(hash_name)] then
local stored_key, server_key, iteration_count, salt, state = se\
lf.profile["scram_"..hashprep(hash_name)](self, self.state.name, self.realm);
if state == nil then return "failure", "not-authorized"
elseif state == false then return "failure", "account-disabled"\
end
self.state.stored_key = stored_key;
self.state.server_key = server_key;
self.state.iteration_count = iteration_count;
self.state.salt = salt
end
local server_first_message = "r="..self.state.clientnonce..self.state.s\
ervernonce..",s="..base64.encode(self.state.salt)..",i="..self.state.iteration_count;
self.state["server_first_message"] = server_first_message;
return "challenge", server_first_message
else
-- we are processing client_final_message
local client_final_message = message;
self.state["channelbinding"], self.state["nonce"], self.state["proof"] \
= client_final_message:match("^c=(.*),r=(.*),.*p=(.*)");
if not self.state.proof or not self.state.nonce or not self.state.chann\
elbinding then
return "failure", "malformed-request", "Missing an attribute(p,\
r or c) in SASL message";
end
if self.state.nonce ~= self.state.clientnonce..self.state.servernonce t\
hen
return "failure", "malformed-request", "Wrong nonce in client-f\
inal-message";
end
local ServerKey = self.state.server_key;
local StoredKey = self.state.stored_key;
local AuthMessage = "n=" .. s_match(self.state.client_first_message,"n=\
(.+)") .. "," .. self.state.server_first_message .. "," .. s_match(client_final_message, "(.+),\
p=.+")
local ClientSignature = HMAC_f(StoredKey, AuthMessage)
local ClientKey = binaryXOR(ClientSignature, base64.decode(self.state.p\
roof))
local ServerSignature = HMAC_f(ServerKey, AuthMessage)
if StoredKey == H_f(ClientKey) then
local server_final_message = "v="..base64.encode(ServerSignatur\
e);
self["username"] = self.state.name;
return "success", server_final_message;
else
return "failure", "not-authorized", "The response provided by t\
he client doesn't match the one we calculated";
end
end
end
return scram_hash;
end
function init(registerMechanism)
local function registerSCRAMMechanism(hash_name, hash, hmac_hash)
registerMechanism("SCRAM-"..hash_name, {"plain", "scram_"..(hashprep(hash_name)\
)}, scram_gen(hash_name:lower(), hash, hmac_hash));
end
registerSCRAMMec"
28868 lua51 GIO fd 8 read 50 bytes
"hanism("SHA-1", sha1, hmac_sha1);
end
return _M;
"
28868 lua51 RET read 8242/0x2032
28868 lua51 CALL mmap(0,0x8000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077031366656/0xbe4bbcf3000
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe559df2998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/hmac.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe559df2998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/hmac.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc3d0)
28868 lua51 STRU struct stat { dev=7, ino=211923, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864104, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=2368, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 GIO fd 8 read 2368 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2009-2010, Dwayne Bent, Matthew Wild, Tobias Markmann, Waqas Hussain
local hashes = require "util.hashes"
local s_char = string.char;
local s_gsub = string.gsub;
local s_rep = string.rep;
module "hmac"
local xor_map = {0;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;1;0;3;2;5;4;7;6;9;8;11;10;13;12;15;14;2;\
3;0;1;6;7;4;5;10;11;8;9;14;15;12;13;3;2;1;0;7;6;5;4;11;10;9;8;15;14;13;12;4;5;6;7;0;1;2;3;12;13\
;14;15;8;9;10;11;5;4;7;6;1;0;3;2;13;12;15;14;9;8;11;10;6;7;4;5;2;3;0;1;14;15;12;13;10;11;8;9;7;\
6;5;4;3;2;1;0;15;14;13;12;11;10;9;8;8;9;10;11;12;13;14;15;0;1;2;3;4;5;6;7;9;8;11;10;13;12;15;14\
;1;0;3;2;5;4;7;6;10;11;8;9;14;15;12;13;2;3;0;1;6;7;4;5;11;10;9;8;15;14;13;12;3;2;1;0;7;6;5;4;12\
;13;14;15;8;9;10;11;4;5;6;7;0;1;2;3;13;12;15;14;9;8;11;10;5;4;7;6;1;0;3;2;14;15;12;13;10;11;8;9\
;6;7;4;5;2;3;0;1;15;14;13;12;11;10;9;8;7;6;5;4;3;2;1;0;};
local function xor(x, y)
local lowx, lowy = x % 16, y % 16;
local hix, hiy = (x - lowx) / 16, (y - lowy) / 16;
local lowr, hir = xor_map[lowx * 16 + lowy + 1], xor_map[hix * 16 + hiy + 1];
local r = hir * 16 + lowr;
return r;
end
local opadc, ipadc = s_char(0x5c), s_char(0x36);
local ipad_map = {};
local opad_map = {};
for i=0,255 do
ipad_map[s_char(i)] = s_char(xor(0x36, i));
opad_map[s_char(i)] = s_char(xor(0x5c, i));
end
--[[
key
the key to use in the hash
message
the message to hash
hash
the hash function
blocksize
the blocksize for the hash function in bytes
hex
return raw hash or hexadecimal string
--]]
function hmac(key, message, hash, blocksize, hex)
if #key > blocksize then
key = hash(key)
end
local padding = blocksize - #key;
local ipad = s_gsub(key, ".", ipad_map)..s_rep(ipadc, padding);
local opad = s_gsub(key, ".", opad_map)..s_rep(opadc, padding);
return hash(opad..hash(ipad..message), hex)
end
function md5(key, message, hex)
return hmac(key, message, hashes.md5, 64, hex)
end
function sha1(key, message, hex)
return hmac(key, message, hashes.sha1, 64, hex)
end
function sha256(key, message, hex)
return hmac(key, message, hashes.sha256, 64, hex)
end
return _M
"
28868 lua51 RET read 2368/0x940
28868 lua51 CALL read(8,0xbe551b6a000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL mmap(0,0x3000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078603583488/0xbe519855000
28868 lua51 CALL mmap(0,0x3000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078517981184/0xbe5146b2000
28868 lua51 CALL open(0xbe570b53b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/digest-md5.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe570b53b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/digest-md5.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211943, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864171, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=7813, blocks=16, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079777099776/0xbe55f77c000
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- Please see sasl.lua.license for licensing information.
local tostring = tostring;
local type = type;
local s_gmatch = string.gmatch;
local s_match = string.match;
local t_concat = table.concat;
local t_insert = table.insert;
local to_byte, to_char = string.byte, string.char;
local md5 = require "util.hashes".md5;
local log = require "util.logger".init("sasl");
local generate_uuid = require "util.uuid".generate;
local nodeprep = require "util.encodings".stringprep.nodeprep;
module "sasl.digest-md5"
--=========================
--SASL DIGEST-MD5 according to RFC 2831
--[[
Supported Authentication Backends
digest_md5:
function(username, domain, realm, encoding) -- domain and realm are usually the same; f\
or some broken
-- implementations it's not
return digesthash, state;
end
digest_md5_test:
function(username, domain, realm, encoding, digesthash)
return true or false, state;
end
]]
local function digest(self, message)
--TODO complete support for authzid
local function serialize(message)
local data = ""
-- testing all possible values
if message["realm"] then data = data..[[realm="]]..message.realm..[[",]] end
if message["nonce"] then data = data..[[nonce="]]..message.nonce..[[",]] end
if message["qop"] then data = data..[[qop="]]..message.qop..[[",]] end
if message["charset"] then data = data..[[charset=]]..message.charset.."," end
if message["algorithm"] then data = data..[[algorithm=]]..message.algorithm..",\
" end
if message["rspauth"] then data = data..[[rspauth=]]..message.rspauth.."," end
data = data:gsub(",$", "")
return data
end
local function utf8tolatin1ifpossible(passwd)
local i = 1;
while i <= #passwd do
local passwd_i = to_byte(passwd:sub(i, i));
if passwd_i > 0x7F then
if passwd_i < 0xC0 or passwd_i > 0xC3 then
return passwd;
end
i = i + 1;
passwd_i = to_byte(passwd:sub(i, i));
if passwd_i < 0x80 or passwd_i > 0xBF then
return passwd;
end
end
i = i + 1;
end
local p = {};
local j = 0;
i = 1;
while (i <= #passwd) do
local passwd_i = to_byte(passwd:sub(i, i));
if passwd_i > 0x7F then
i = i + 1;
local passwd_i_1 = to_byte(passwd:sub(i, i));
t_insert(p, to_char(passwd_i%4*64 + passwd_i_1%64)); -- I'm so \
clever
else
t_insert(p, to_char(passwd_i));
end
i = i + 1;
end
return t_concat(p);
end
local function latin1toutf8(str)
local p = {};
for ch in s_gmatch(str, ".") do
ch = to_byte(ch);
if (ch < 0x80) then
t_insert(p, to_char(ch));
elseif (ch < 0xC0) then
t_insert(p, to_char(0xC2, ch));
else
t_insert(p, to_char(0xC3, ch - 64));
end
end
return t_concat(p);
end
local function parse(data)
local message = {}
-- COMPAT: %z in the pattern to work around jwchat bug (sends "charset=utf-8\\0\
")
for k, v in s_gmatch(data or "", [[([%w%-]+)="?([^",%z]*)"?,?]]) do -- FIXME Th\
e hacky regex makes me shudder
message[k] = v;
end
return message;
end
if not self.nonce then
self.nonce = generate_uuid();
self.step = 0;
self.nonce_count = {};
end
self.step = self.step + 1;
if (self.step == 1) then
local challenge = serialize({
nonce = self.nonce,
qop = "auth",
charset = "utf-8",
algorithm = "md5-sess",
realm = self.realm
});
return "challenge", challenge;
elseif (self.step == 2) then
local response = parse(message);
-- check for replay attack
if response["nc"] then
if self.nonce_count[response["nc"]] then return "failure", "not-authori\
zed" end
end
-- check for username, it's REQUIRED by RFC 2831
local username = response["username"];
local _nodeprep = self.profile.nodeprep;
if username and _nodeprep ~= false then
username = (_nodeprep or nodeprep)(username);
end
if not username or username == "" then
return "failure", "malformed-request";
end
self.username = username;
-- check for nonce, ...
if not response["nonce"] then
return "failure", "malformed-request";
else
-- check if it's the right nonce
if response["nonce"] ~= tostring(self.nonce) then return "failur"
28868 lua51 GIO fd 8 read 3717 bytes
"e", "malformed-request" end
end
if not response["cnonce"] then return "failure", "malformed-request", "Missing \
entry for cnonce in SASL message" end
if not response["qop"] then response["qop"] = "auth" end
if response["realm"] == nil or response["realm"] == "" then
response["realm"] = "";
elseif response["realm"] ~= self.realm then
return "failure", "not-authorized", "Incorrect realm value";
end
local decoder;
if response["charset"] == nil then
decoder = utf8tolatin1ifpossible;
elseif response["charset"] ~= "utf-8" then
return "failure", "incorrect-encoding", "The client's response uses "..\
response["charset"].." for encoding with isn't supported by sasl.lua, supported encodings are l\
atin or utf-8";
end
local domain = "";
local protocol = "";
if response["digest-uri"] then
protocol, domain = response["digest-uri"]:match("(%w+)/(.*)$");
if protocol == nil or domain == nil then return "failure", "malformed-r\
equest" end
else
return "failure", "malformed-request", "Missing entry for digest-uri in\
SASL message"
end
--TODO maybe realm support
local Y, state;
if self.profile.plain then
local password, state = self.profile.plain(self, response["username"], \
self.realm)
if state == nil then return "failure", "not-authorized"
elseif state == false then return "failure", "account-disabled" end
Y = md5(response["username"]..":"..response["realm"]..":"..password);
elseif self.profile["digest-md5"] then
Y, state = self.profile["digest-md5"](self, response["username"], self.\
realm, response["realm"], response["charset"])
if state == nil then return "failure", "not-authorized"
elseif state == false then return "failure", "account-disabled" end
elseif self.profile["digest-md5-test"] then
-- TODO
end
--local password_encoding, Y = self.credentials_handler("DIGEST-MD5", response[\
"username"], self.realm, response["realm"], decoder);
--if Y == nil then return "failure", "not-authorized"
--elseif Y == false then return "failure", "account-disabled" end
local A1 = "";
if response.authzid then
if response.authzid == self.username or response.authzid == self.userna\
me.."@"..self.realm then
-- COMPAT
log("warn", "Client is violating RFC 3920 (section 6.1, point 7\
).");
A1 = Y..":"..response["nonce"]..":"..response["cnonce"]..":"..r\
esponse.authzid;
else
return "failure", "invalid-authzid";
end
else
A1 = Y..":"..response["nonce"]..":"..response["cnonce"];
end
local A2 = "AUTHENTICATE:"..protocol.."/"..domain;
local HA1 = md5(A1, true);
local HA2 = md5(A2, true);
local KD = HA1..":"..response["nonce"]..":"..response["nc"]..":"..response["cno\
nce"]..":"..response["qop"]..":"..HA2;
local response_value = md5(KD, true);
if response_value == response["response"] then
-- calculate rspauth
A2 = ":"..protocol.."/"..domain;
HA1 = md5(A1, true);
HA2 = md5(A2, true);
KD = HA1..":"..response["nonce"]..":"..response["nc"]..":"..response["c\
nonce"]..":"..response["qop"]..":"..HA2
local rspauth = md5(KD, true);
self.authenticated = true;
--TODO: considering sending the rspauth in a success node for saving on\
e roundtrip; allowed according to http://tools.ietf.org/html/draft-saintandre-rfc3920bis-09#sec\
tion-7.3.6
return "challenge", serialize({rspauth = rspauth});
else
return "failure", "not-authorized", "The response provided by the clien\
t doesn't match the one we calculated"
end
elseif self.step == 3 then
if self.authenticated ~= nil then return "success"
else return "failure", "malformed-request" end
end
end
function init(registerMechanism)
registerMechanism("DIGEST-MD5", {"plain"}, digest);
end
return _M;
"
28868 lua51 RET read 7813/0x1e85
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080191238144/0xbe578270000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078629679104/0xbe51b138000
28868 lua51 CALL mmap(0,0x2000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078733889536/0xbe52149a000
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4e3306418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/plain.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4e3306418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/plain.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211945, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864176, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=2317, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 2317 bytes
"-- Please see sasl.lua.license for licensing information.
local s_match = string.match;
local nodeprep = require "util.encodings".stringprep.nodeprep;
local saslprep = require "util.encodings".stringprep.saslprep;
local log = require "util.logger".init("sasl");
module "sasl.plain"
-- ================================
-- SASL PLAIN according to RFC 4616
--[[
Supported Authentication Backends
plain:
function(username, realm)
return password, state;
end
plain_test:
function(username, password, realm)
return true or false, state;
end
]]
local function plain(self, message)
if not message then
return "failure", "malformed-request";
end
local authorization, authentication, password = s_match(message, "^([^%z]*)%z([^%z]+)%z\
([^%z]+)");
if not authorization then
return "failure", "malformed-request";
end
-- SASLprep password and authentication
authentication = saslprep(authentication);
password = saslprep(password);
if (not password) or (password == "") or (not authentication) or (authentication == "")\
then
log("debug", "Username or password violates SASLprep.");
return "failure", "malformed-request", "Invalid username or password.";
end
local _nodeprep = self.profile.nodeprep;
if _nodeprep ~= false then
authentication = (_nodeprep or nodeprep)(authentication);
if not authentication or authentication == "" then
return "failure", "malformed-request", "Invalid username or password"
end
end
local correct, state = false, false;
if self.profile.plain then
local correct_password;
correct_password, state = self.profile.plain(self, authentication, self.realm);
correct = (correct_password == password);
elseif self.profile.plain_test then
correct, state = self.profile.plain_test(self, authentication, password, self.r\
ealm);
end
self.username = authentication
if state == false then
return "failure", "account-disabled";
elseif state == nil then
return "failure", "not-authorized", "Unable to authorize you with the authentic\
ation credentials you've sent";
end
if correct then
return "success";
else
return "failure", "not-authorized", "Unable to authorize you with the authentic\
ation credentials you've sent";
end
end
function init(registerMechanism)
registerMechanism("PLAIN", {"plain", "plain_test"}, plain);
end
return _M;
"
28868 lua51 RET read 2317/0x90d
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13079050940416/0xbe5342f7000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080116772864/0xbe573b6c000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077449342976/0xbe4d4b90000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078723190784/0xbe520a66000
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4e3306b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/anonymous.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4e3306b98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/sasl/anonymous.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211942, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864166, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=845, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 845 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
local s_match = string.match;
local log = require "util.logger".init("sasl");
module "sasl.anonymous"
--=========================
--SASL ANONYMOUS according to RFC 4505
--[[
Supported Authentication Backends
anonymous:
function(session, realm)
return username, error;
end
]]
local function anonymous(self, message)
local username, err;
username, err = self.profile.anonymous(self, self.profile.session, realm);
if err then return "failure", err; end
self.username = username;
return "success";
end
function init(registerMechanism)
registerMechanism("ANONYMOUS", {"anonymous"}, anonymous);
end
return _M;
"
28868 lua51 RET read 845/0x34d
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077040443392/0xbe4bc59b000
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe55292f698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/storagemanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe55292f698,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/storagemanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc770)
28868 lua51 STRU struct stat { dev=7, ino=211743, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863333, atime=1443380744<"Sep 27 19:05:44 2015">.858293162, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.469543475, size=5117, blocks=12, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- Additional Contributors: John Regan
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Matthew Wild, Waqas Hussain
local error, type, pairs = error, type, pairs;
local setmetatable = setmetatable;
local config = require "core.configmanager";
local datamanager = require "util.datamanager";
local modulemanager = require "core.modulemanager";
local multitable = require "util.multitable";
local hosts = hosts;
local log = require "util.logger".init("storagemanager");
local metronome = metronome;
module("storagemanager")
local olddm = {}; -- maintain old datamanager, for backwards compatibility
for k,v in pairs(datamanager) do olddm[k] = v; end
_M.olddm = olddm;
local null_storage_method = function () return false, "no data storage active"; end
local null_storage_driver = setmetatable(
{
name = "null",
open = function (self) return self; end
}, {
__index = function (self, method)
return null_storage_method;
end
}
);
local stores_available = multitable.new();
local stores_overrides = multitable.new();
function initialize_host(host)
local host_session = hosts[host];
host_session.events.add_handler("item-added/data-driver", function (event)
local item = event.item;
stores_available:set(host, item.name, item);
end);
host_session.events.add_handler("item-removed/data-driver", function (event)
local item = event.item;
stores_available:set(host, item.name, nil);
end);
host_session.events.add_handler("module-loaded", function (event)
local host, storage = event.host, event.storage;
if type(storage) == "table" then
for store, driver in pairs(storage) do
stores_overrides:set(host, store, driver);
end
end
end);
host_session.events.add_handler("module-unloaded", function (event)
local host, storage = event.host, event.storage;
if type(storage) == "table" then
for store, driver in pairs(storage) do
stores_overrides:set(host, store, nil);
end
end
end);
end
metronome.events.add_handler("host-activated", initialize_host, 101);
function load_driver(host, driver_name)
if driver_name == "null" then
return null_storage_driver;
end
local driver = stores_available:get(host, driver_name);
if driver then return driver; end
local ok, err;
ok, err = modulemanager.load(host, "storage_"..driver_name);
if err == "module-already-loaded" then -- force unload and reload;
modulemanager.unload(host, "storage_"..driver_name);
ok, err = modulemanager.load(host, "storage_"..driver_name);
end
if not ok then
log("error", "Failed to load storage driver plugin %s on %s: %s", driver_name, \
host, err);
end
return stores_available:get(host, driver_name);
end
function get_driver(host, store)
local storage = stores_overrides:get(host, store) or config.get(host, "storage");
local driver_name;
local option_type = type(storage);
if option_type == "string" then
driver_name = storage;
elseif option_type == "table" then
driver_name = storage[store];
end
if not driver_name then
if config.get(host, authentication) == "anonymous" then
driver_name = config.get(host, "default_storage") or "null";
else
driver_name = config.get(host, "default_storage") or "internal";
end
end
local driver = load_driver(host, driver_name);
if not driver then
log("warn", "Falling back to null driver for %s storage on %s", store, host);
driver_name = "null";
driver = null_storage_driver;
end
return driver, driver_name;
end
function open(host, store, typ)
local driver, driver_name = get_driver(host, store);
local ret, err = driver:open(store, typ);
if not ret then
if err == "unsupported-store" then
log("debug", "Storage driver %s does not support store %s (%s), falling\
back to null driver",
driver_name, store, typ);
ret = null_storage_driver;
err = nil;
end
end
ret"
28868 lua51 GIO fd 8 read 1021 bytes
"urn ret, err;
end
function purge(user, host)
local storage = config.get(host, "storage");
local driver_name;
if type(storage) == "table" then
local purged = {};
for store, driver in pairs(storage) do
if not purged[driver] then purged[driver] = get_driver(host, store):pur\
ge(user); end
end
end
get_driver(host):purge(user);
olddm.purge(user, host);
return true;
end
function datamanager.load(username, host, datastore)
return open(host, datastore):get(username);
end
function datamanager.store(username, host, datastore, data)
return open(host, datastore):set(username, data);
end
function datamanager.stores(username, host, type, pattern)
return get_driver(host):stores(username, type, pattern);
end
function datamanager.store_exists(username, host, datastore, type)
return get_driver(host):store_exists(username, datastore, type);
end
function datamanager.purge(username, host)
return purge(username, host);
end
function datamanager.users(host)
return get_driver(host):users();
end
return _M;
"
28868 lua51 RET read 5117/0x13fd
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077264838656/0xbe4c9b9b000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080511143936/0xbe58b386000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077355294720/0xbe4cf1df000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080454844416/0xbe587dd5000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077432434688/0xbe4d3b70000
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077147193344/0xbe4c2b69000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13078898237440/0xbe52b156000
28868 lua51 CALL mmap(0,0x1000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13077496197120/0xbe4d783f000
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe569fe9998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/datamanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe569fe9998,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/datamanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc5a0)
28868 lua51 STRU struct stat { dev=7, ino=211913, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864072, atime=1443380744<"Sep 27 19:05:44 2015">.867544897, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.529518974, size=12492, blocks=28, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- Additional Contributors: John Regan
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Marco Cirillo, Matthew Wild, Waqas Hussain
local format = string.format;
local setmetatable = setmetatable;
local ipairs = ipairs;
local char = string.char;
local pcall = pcall;
local log = require "util.logger".init("datamanager");
local io_open = io.open;
local os_remove = os.remove;
local os_rename = os.rename;
local tonumber = tonumber;
local type = type;
local next = next;
local t_insert = table.insert;
local t_concat = table.concat;
local _load_file = require "util.envload".envloadfile;
local _serialize = require "util.serialization".serialize;
local path_separator = assert ( package.config:match ( "^([^\\n]+)" ) , "package.config not in \
standard form" ) -- Extract directory seperator from package.config (an undocumented string tha\
t comes with lua)
local lfs = require "lfs";
local metronome = metronome;
local load_file = _load_file;
local serialize = function(data)
return "return " .. _serialize(data) .. ";";
end
if metronome.serialization == "json" then
local json = require "util.jsonload";
if json then
load_file = json.loadfile;
serialize = json.serialize;
end
end
local raw_mkdir = lfs.mkdir;
local function fallocate(f, offset, len)
-- This assumes that current position == offset
local fake_data = (" "):rep(len);
local ok, msg = f:write(fake_data);
if not ok then
return ok, msg;
end
f:seek("set", offset);
return true;
end;
pcall(function()
local pposix = require "util.pposix";
raw_mkdir = pposix.mkdir or raw_mkdir; -- Doesn't trample on umask
fallocate = pposix.fallocate or fallocate;
end);
module "datamanager"
---- utils -----
local encode, decode;
do
local urlcodes = setmetatable({}, { __index = function (t, k) t[k] = char(tonumber("0x"\
..k)); return t[k]; end });
decode = function (s)
return s and (s:gsub("+", " "):gsub("%%([a-fA-F0-9][a-fA-F0-9])", urlcodes));
end
encode = function (s)
return s and (s:gsub("%W", function (c) return format("%%%02x", c:byte()); end)\
);
end
end
local _mkdir = {};
local function mkdir(path)
path = path:gsub("/", path_separator); -- TODO as an optimization, do this during path \
creation rather than here
if not _mkdir[path] then
raw_mkdir(path);
_mkdir[path] = true;
end
return path;
end
local data_path = (metronome and metronome.paths and metronome.paths.data) or ".";
local callbacks = {};
------- API -------------
function set_data_path(path)
log("debug", "Setting data path to: %s", path);
data_path = path;
end
local function callback(username, host, datastore, data)
for _, f in ipairs(callbacks) do
username, host, datastore, data = f(username, host, datastore, data);
if username == false then break; end
end
return username, host, datastore, data;
end
function add_callback(func)
if not callbacks[func] then -- Would you really want to set the same callback more than\
once?
callbacks[func] = true;
callbacks[#callbacks+1] = func;
return true;
end
end
function remove_callback(func)
if callbacks[func] then
for i, f in ipairs(callbacks) do
if f == func then
callbacks[i] = nil;
callbacks[f] = nil;
return true;
end
end
end
end
local function recursive_ds_create(host, datastore)
local last_done;
local host_data_path = data_path.."/"..host;
for dir in datastore:gmatch("[^/]+") do
if not last_done then
mkdir(host_data_path.."/"..dir);
last_done = dir;
else
last_done = last_done.."/"..dir;
mkdir(host_data_path.."/"..last_done);
end
end
end
function getpath(username, host, datastore, ext, create)
ext = ext or "dat";
host = (host and encode(host)) or "_global";
username = username and encode(username);
if username then
if create then
mkdir(mkdir(data_path).."/"..host);
recursive_ds_create(host, dat"
28868 lua51 GIO fd 8 read 4096 bytes
"astore);
end
return format("%s/%s/%s/%s.%s", data_path, host, datastore, username, ext);
else
if create then
mkdir(mkdir(data_path).."/"..host);
if datastore:find("/") then recursive_ds_create(host, datastore); end
end
return format("%s/%s/%s.%s", data_path, host, datastore, ext);
end
end
function load(username, host, datastore)
local data, ret = load_file(getpath(username, host, datastore), {});
if not data then
local mode = lfs.attributes(getpath(username, host, datastore), "mode");
if not mode then
log("debug", "Assuming empty %s storage ('%s') for user: %s@%s", datast\
ore, ret or "File not found", username or "nil", host or "nil");
return nil;
else -- file exists, but can't be read
log("error", "Failed to load %s storage ('%s') for user: %s@%s", datast\
ore, ret or "File can't be read", username or "nil", host or "nil");
return nil, "Error reading storage";
end
end
if type(data) ~= "function" then return data; end
local success, ret = pcall(data);
if not success then
log("error", "Unable to load %s storage ('%s') for user: %s@%s", datastore, ret\
, username or "nil", host or "nil");
return nil, "Error reading storage";
end
return ret;
end
local function atomic_store(filename, data)
local scratch = filename.."~";
local f, ok, msg;
repeat
f, msg = io_open(scratch, "w");
if not f then break end
ok, msg = f:write(data);
if not ok then break end
ok, msg = f:close();
if not ok then break end
return os_rename(scratch, filename);
until false;
-- Cleanup
if f then f:close(); end
os_remove(scratch);
return nil, msg;
end
if metronome.platform ~= "posix" then
function atomic_store(filename, data)
local f, err = io_open(filename, "w");
if not f then return f, err; end
local ok, msg = f:write(data);
if not ok then f:close(); return ok, msg; end
return f:close();
end
end
function store(username, host, datastore, data)
if not data then
data = {};
end
username, host, datastore, data = callback(username, host, datastore, data);
if username == false then
return true; -- Don't save this data at all
end
-- save the datastore
local d = serialize(data) .. "\\n";
local mkdir_cache_cleared;
repeat
local ok, msg = atomic_store(getpath(username, host, datastore, nil, true), d);
if not ok then
if not mkdir_cache_cleared then -- We may need to recreate a removed di\
rectory
_mkdir = {};
mkdir_cache_cleared = true;
else
log("error", "Unable to write to %s storage ('%s') for user: %s\
@%s", datastore, msg, username or "nil", host or "nil");
return nil, "Error saving to storage";
end
end
if next(data) == nil then -- try to delete empty datastore
log("debug", "Removing empty %s datastore for user %s@%s", datastore, u\
sername or "nil", host or "nil");
os_remove(getpath(username, host, datastore));
end
-- we write data even when we are deleting because lua doesn't have a
-- platform independent way of checking for non-exisitng files
until ok;
return true;
end
function list_append(username, host, datastore, data)
if not data then return; end
if callback(username, host, datastore) == false then return true; end
-- save the datastore
local f, msg = io_open(getpath(username, host, datastore, "list", true), "r+");
if not f then
f, msg = io_open(getpath(username, host, datastore, "list", true), "w");
end
if not f then
log("error", "Unable to write to %s storage ('%s') for user: %s@%s", datastore,\
msg, username or "nil", host or "nil");
return;
end
local data = "item(" .. _serialize(data) .. ");\\n";
local pos = f:seek("end");
local ok, msg = fallocate(f, pos, #data);
f:seek("set", pos);
if ok then
f:write(data);
else
log("error", "Unable to write to %s storage ('%s') for user: %s@%s", datastore,\
msg, username or "nil", host or "nil");
return ok, msg;
end
f:close();
return true;
end
function list_store(username, host, datastore, data)
if not data then
data = {};
end
if callback(username, host, datastore) == false then return true; end
-- save the datastore
local d = {};
for _"
28868 lua51 GIO fd 8 read 4096 bytes
", item in ipairs(data) do
d[#d+1] = "item(" .. _serialize(item) .. ");\\n";
end
local ok, msg = atomic_store(getpath(username, host, datastore, "list", true), t_concat\
(d));
if not ok then
log("error", "Unable to write to %s storage ('%s') for user: %s@%s", datastore,\
msg, username or "nil", host or "nil");
return;
end
if next(data) == nil then -- try to delete empty datastore
log("debug", "Removing empty %s datastore for user %s@%s", datastore, username \
or "nil", host or "nil");
os_remove(getpath(username, host, datastore, "list"));
end
-- we write data even when we are deleting because lua doesn't have a
-- platform independent way of checking for non-exisitng files
return true;
end
function list_load(username, host, datastore)
local items = {};
local data, ret = _load_file(getpath(username, host, datastore, "list"), {item = functi\
on(i) t_insert(items, i); end});
if not data then
local mode = lfs.attributes(getpath(username, host, datastore, "list"), "mode")\
;
if not mode then
log("debug", "Assuming empty %s storage ('%s') for user: %s@%s", datast\
ore, ret, username or "nil", host or "nil");
return nil;
else -- file exists, but can't be read
-- TODO more detailed error checking and logging?
log("error", "Failed to load %s storage ('%s') for user: %s@%s", datast\
ore, ret, username or "nil", host or "nil");
return nil, "Error reading storage";
end
end
local success, ret = pcall(data);
if not success then
log("error", "Unable to load %s storage ('%s') for user: %s@%s", datastore, ret\
, username or "nil", host or "nil");
return nil, "Error reading storage";
end
return items;
end
local type_map = { keyval = "dat", list = "list" }
function stores(username, host, type, pattern)
if not host then
return nil, "bad argument #2 to 'stores' (string expected, got nothing)";
end
type = type_map[type or "keyval"];
local store_dir;
if pattern then
store_dir = format("%s/%s/%s", data_path, encode(host), pattern);
else
store_dir = format("%s/%s/", data_path, encode(host));
end
local mode, err = lfs.attributes(store_dir, "mode");
if not mode then
return function() log("debug", err or (store_dir .. " does not exist")) end
end
local next, state = lfs.dir(store_dir);
return function(state)
for node in next, state do
if not node:match("^%.") then
if username == true then
if lfs.attributes(store_dir..node, "mode") == "director\
y" then
return (pattern and pattern .. "/" .. decode(no\
de)) or decode(node);
end
elseif username then
local store = (pattern and pattern .. "/" .. decode(nod\
e)) or decode(node);
if lfs.attributes(getpath(username, host, store, type),\
"mode") then
return store;
end
elseif lfs.attributes(node, "mode") == "file" then
local file, ext = node:match("^(.*)%.([dalist]+)$");
if ext == type then
return (pattern and pattern .. "/" .. decode(fi\
le)) or decode(file);
end
end
end
end
end, state;
end
function store_exists(username, host, datastore, type)
if not username or not host or not datastore then
return nil, "syntax error store_exists requires to supply at least 3 arguments \
(username, host, datastore)";
end
type = type_map[type or "keyval"];
if username == true then
if lfs.attributes(format("%s/%s/%s", data_path, encode(host) ,datastore), "mode\
") == "directory" then
return true;
end
return false;
elseif username then
if lfs.attributes(getpath(username, host, datastore, type), "mode") then
return true;
end
return false;
end
end
local function do_remove(path)
local ok, err = os_remove(path);
if not ok and lfs.attributes(path, "mode") then
return ok, err;
end
return true;
end
function purge(username, host)
local host_dir = format("%s/%s/", data_path, encode(host));
local errs = {};
for file in lfs.dir(host_dir) do
if lfs.attributes(host_dir..file, "mode") == "directory" then
local store = decode(file);
local ok, err = do_remove(getpath(username, host, store));
if not ok then errs[#errs+1] = err; end
local ok, err = do_remove"
28868 lua51 GIO fd 8 read 204 bytes
"(getpath(username, host, store, "list"));
if not ok then errs[#errs+1] = err; end
end
end
return #errs == 0, t_concat(errs, ", ");
end
_M.path_decode = decode;
_M.path_encode = encode;
return _M;
"
28868 lua51 RET read 12492/0x30cc
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d7bb0f98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/serialization.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe4d7bb0f98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/serialization.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc3d0)
28868 lua51 STRU struct stat { dev=7, ino=211947, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864184, atime=1443380744<"Sep 27 19:05:44 2015">.867544897, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=2588, blocks=8, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 GIO fd 8 read 2588 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2012, Florian Zeitz, Matthew Wild, Waqas Hussain
local string_rep = string.rep;
local type = type;
local tostring = tostring;
local t_insert = table.insert;
local t_concat = table.concat;
local error = error;
local pairs = pairs;
local next = next;
local loadstring = loadstring;
local pcall = pcall;
local debug_traceback = debug.traceback;
local log = require "util.logger".init("serialization");
local envload = require"util.envload".envload;
module "serialization"
local indent = function(i)
return string_rep("\\t", i);
end
local function basicSerialize (o)
if type(o) == "number" or type(o) == "boolean" then
-- no need to check for NaN, as that's not a valid table index
if o == 1/0 then return "(1/0)";
elseif o == -1/0 then return "(-1/0)";
else return tostring(o); end
else -- assume it is a string -- FIXME make sure it's a string. throw an error otherwis\
e.
return (("%q"):format(tostring(o)):gsub("\\\\\\n", "\\\\n"));
end
end
local function _simplesave(o, ind, t, func)
if type(o) == "number" then
if o ~= o then func(t, "(0/0)");
elseif o == 1/0 then func(t, "(1/0)");
elseif o == -1/0 then func(t, "(-1/0)");
else func(t, tostring(o)); end
elseif type(o) == "string" then
func(t, (("%q"):format(o):gsub("\\\\\\n", "\\\\n")));
elseif type(o) == "table" then
if next(o) ~= nil then
func(t, "{\\n");
for k,v in pairs(o) do
func(t, indent(ind));
func(t, "[");
func(t, basicSerialize(k));
func(t, "] = ");
if ind == 0 then
_simplesave(v, 0, t, func);
else
_simplesave(v, ind+1, t, func);
end
func(t, ";\\n");
end
func(t, indent(ind-1));
func(t, "}");
else
func(t, "{}");
end
elseif type(o) == "boolean" then
func(t, (o and "true" or "false"));
else
log("error", "cannot serialize a %s: %s", type(o), debug_traceback())
func(t, "nil");
end
end
function append(t, o)
_simplesave(o, 1, t, t.write or t_insert);
return t;
end
function serialize(o)
return t_concat(append({}, o));
end
function deserialize(str)
if type(str) ~= "string" then return nil; end
str = "return "..str;
local f, err = envload(str, "@data", {});
if not f then return nil, err; end
local success, ret = pcall(f);
if not success then return nil, ret; end
return ret;
end
return _M;
"
28868 lua51 RET read 2588/0xa1c
28868 lua51 CALL read(8,0xbe55f77c000,0x4000)
28868 lua51 RET read 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe57b3c4518,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/pposix.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe57b3c4818,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/pposix.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe51a82fd98,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/share/lua/5.1/util/pposix/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58b3864d8,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/pposix.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe4d7bb0418,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/lua/5.1/util/pposix/init.lua"
28868 lua51 RET open -1 errno 2 No such file or directory
28868 lua51 CALL open(0xbe58b386f18,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/pposix.so"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe5824a9900,0x30000<O_RDONLY|O_CLOEXEC|O_DIRECTORY>)
28868 lua51 NAMI "/usr/local/lib/metronome/util"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc400)
28868 lua51 STRU struct stat { dev=7, ino=211906, mode=drwxr-xr-x , nlink=3, uid=0<"root">, gid=0<"wheel">, rdev=864031, atime=1443380783<"Sep 27 19:06:23 2015">.536875775, mtime=1443379474<"Sep 27 18:44:34 2015">.549518444, ctime=1443379474<"Sep 27 18:44:34 2015">.549518444, size=1536, blocks=4, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0<PROT_NONE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL getdents(8,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 1960/0x7a8
28868 lua51 CALL getdents(8,0xbe4b4318000,0x4000)
28868 lua51 RET getdents 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe4b431c000,0x1000,0x3<PROT_READ|PROT_WRITE>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe556c140e0,0x10000<O_RDONLY|O_CLOEXEC>)
28868 lua51 NAMI "/usr/local/lib/metronome/util/pposix.so"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbb460)
28868 lua51 STRU struct stat { dev=7, ino=211936, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=864136, atime=1443380744<"Sep 27 19:05:44 2015">.867544897, mtime=1443379470<"Sep 27 18:44:30 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.539516614, size=23850, blocks=48, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL read(8,0x7f7ffffbb4e0,0x1000)
28868 lua51 GIO fd 8 read 4096 bytes
"\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0000"\0\0\0\0\0\0@\0\0\0\0\0\0\0000G\0\0\0\0\0\
\0\0\0\0\0@\08\0 \0@\0\^Y\0\^V\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0~3\0\0\0\0\0\0~3\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^D\0\0\0\M^@3\0\0\0\0\0\0\M^@3\
\^P\0\0\0\0\0\M^@3\^P\0\0\0\0\0000\a\0\0\0\0\0\0000\a\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\
\0\0\0\0@\0\0\0\0\0\0\0@ \0\0\0\0\0\0@ \0\0\0\0\0p\^C\0\0\0\0\0\0p\^C\0\0\0\0\0\0\0\0\^P\0\0\0\
\0\0\^A\0\0\0\^F\0\0\0pC\0\0\0\0\0\0pC0\0\0\0\0\0pC0\0\0\0\0\0@\^B\0\0\0\0\0\0@\^B\0\0\0\0\0\0\
\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\M-@E\0\0\0\0\0\0\M-@E@\0\0\0\0\0\M-@E@\0\0\0\0\0\M^X\0\0\0\
\0\0\0\0\M^X\0\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0000B\0\0\0\0\0\0000B \0\0\0\0\0000\
B \0\0\0\0\0@\^A\0\0\0\0\0\0@\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M^X:\0\0\0\0\0\0\
\M^X:\^P\0\0\0\0\0\M^X:\^P\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\
\^D\0\0\0p6\0\0\0\0\0\0p6\^P\0\0\0\0\0p6\^P\0\0\0\0\0\M-\\0\0\0\0\0\0\0\M-\\0\0\0\0\0\0\0\^D\0\
\0\0\0\0\0\0\M-f\M-[\M-#e\^F\0\0\0\0@\0\0\0\0\0\0\0@ \0\0\0\0\0\0@ \0\0\0\0\0\b\0\0\0\0\0\0\0\b\
\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0e\0\0\0*\0\0\0\0\0\0\0\
F\0\0\0\0\0\0\0P\0\0\0\0\0\0\0\0\0\0\0^\0\0\0005\0\0\0c\0\0\0\0\0\0\0\^_\0\0\0\\\0\0\0\^[\0\0\0\
Z\0\0\0H\0\0\0000\0\0\0+\0\0\0\0\0\0\0L\0\0\0T\0\0\0M\0\0\0`\0\0\0\0\0\0\0d\0\0\0\0\0\0\0\0\0\0\
\0U\0\0\0D\0\0\0!\0\0\0<\0\0\0\^Z\0\0\0#\0\0\0,\0\0\0]\0\0\0\0\0\0\09\0\0\0-\0\0\0\0\0\0\0W\0\0\
\0$\0\0\0I\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0N\0\0\0G\0\0\0007\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0Y\0\0\0\0\0\0\0\^O\0\0\0>\0\0\0\^T\0\0\0\0\0\0\0O\0\0\0002\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0&\0\0\0\0\0\0\0Q\0\0\0b\0\0\0a\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
@\0\0\0[\0\0\0\^N\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\0\0\0_\0\0\0\0\0\0\0\0\0\0\0;\0\0\0\0\
\0\0\0K\0\0\0=\0\0\0\0\0\0\0X\0\0\0\0\0\0\0R\0\0\0\^]\0\0\0C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Q\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^R\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Y\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\r\0\0\0\0\0\0\0\^U\0\0\0\0\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\^V\0\0\0003\0\0\0\0\0\0\0004\0\0\0\0\0\0\08\0\0\0\0\0\0\0\0\0\0\0\^\\0\0\
\0\^P\0\0\0%\0\0\0)\0\0\0\0\0\0\0\0\0\0\0\^W\0\0\0\0\0\0\0\0\0\0\0\^^\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0E\0\0\0\^S\0\0\0\0\0\0\0?\0\0\0001\0\0\0\0\0\0\0J\0\0\0\0\0\0\0/\0\0\0.\0\0\0\0\0\0\
\0:\0\0\0B\0\0\0(\0\0\0S\0\0\0\0\0\0\0006\0\0\0V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^F\0\M^@\^^\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\b\0000"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\
\0p3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0
\0\M^@3\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\v\0p6\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\
\0\f\0P7\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^N\0\0@ \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\^O\0\b@ \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^P\0 @ \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\^S\0\M^PE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^C\0\^T\0\240E0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\^C\0\^U\0\M-@E@\0\0\0\0\0\0\0\0\0\0\0\0\0'\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0M\^B\0\0\^R\0\b\0\M^@1\0\0\0\0\0\0"\0\0\0\0\0\0\0\M--\^B\0\0\^R\0\b\00002\0\0\0\0\0\0-\0\0\0\
\0\0\0\0e\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0006\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\^F\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^^\^A\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0000\^A\0\0\^R\0\b\0`&\0\0\0\0\0\0=\^A\0\0\0\0\0\0\M-3\^A\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^V\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0;\^C\0\0\^P\0\
\M-q\M^?\M-0E0\0\0\0\0\0\0\0\0\0\0\0\0\0a\^B\0\0\^R\0\b\0\M-`1\0\0\0\0\0\0J\0\0\0\0\0\0\0\M^R\0\
\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Y\^A\0\0\^R\0\b\0 ,\0\0\0\0\0\0`\0\0\0\0\0\0\0Z\
\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0o\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0`\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-n\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0s\^B\0\0\^Q\0\^P\0\M-@@ \0\0\0\0\0000\0\0\0\0\0\0\0\^A\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\M-{\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-S\0\0\0\^P\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0P\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\r\^C\0\0\^Q\0\^U\0\M-`E@\
\0\0\0\0\0T\0\0\0\0\0\0\0\M^E\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-+\^A\0\0\^P\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0u\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-J\^A\0\0\
\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-G\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^S\
\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0L\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\^P\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^_\0\0\0\^R\0\^F\0\M^@\^^\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\M-W\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0003\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\r\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\^B\0\0\^R\0\b\0\M-01\0\0\
\0\0\0\0#\0\0\0\0\0\0\0\M^R\^B\0\0\^Q\0\^U\0@F@\0\0\0\0\0\^X\0\0\0\0\0\0\0}\^A\0\0\^P\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-7\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0/\^C\0\0\^P\0\
\M-q\M^?pC0\0\0\0\0\0\0\0\0\0\0\0\0\0z\^A\0\0\^R\0\b\0@*\0\0\0\0\0\0\M-Q\^A\0\0\0\0\0\0L\0\0\0\
\^R\0\b\0\M-P#\0\0\0\0\0\0\M-A\0\0\0\0\0\0\0\M-?\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\M-%\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^?\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\M-m\^B\0\0\^R\0\b\0\M-P2\0\0\0\0\0\0\240\0\0\0\0\0\0\0'\^C\0\0\^P\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\M-<\^A\0\0\^R\0\b\0\^P-\0\0\0\0\0\0\M^^\^A\0\0\0\0\0\0b\^A\0\0\^R\0\b\0\
\M-p(\0\0\0\0\0\0J\^A\0\0\0\0\0\0\M-=\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0R\^A\0\0\
\^R\0\b\0\M-0'\0\0\0\0\0\0<\^A\0\0\0\0\0\0\M-t\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0%\
\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^Z\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\^C\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\^C\0\0\^P\0\M-q\M^?XF@\0\0\0\0\0\0\0\0\0\0\0\
\0\0\M-"\^A\0\0\^R\0\b\0\M^@,\0\0\0\0\0\0\M^N\0\0\0\0\0\0\0\M-(\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0I\^A\0\0\^R\0\b\0\240'\0\0\0\0\0\0 \0\0\0\0\0\0\0\M-q\0\0\0\^R\0\b\0\M-@%\
\0\0\0\0\0\0\M^W\0\0\0\0\0\0\0\M-f\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-b\0\0\0\^P\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-e\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0002\0\
\0\0\^R\0 \0p3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-"\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\M-|\^A\0\0\^R\0\b\0\M-0.\0\0\0\0\0\0C\^A\0\0\0\0\0\0\M^G\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\M-X\^B\0\0\^R\0\b\0`2\0\0\0\0\0\0k\0\0\0\0\0\0\0\M-F\^B\0\0\^Q\0\^U\08F@\0\0\0\
\0\0\b\0\0\0\0\0\0\0\M-|\^B\0\0\^Q\0\^P\0 @ \0\0\0\0\0\240\0\0\0\0\0\0\0R\^C\0\0\^P\0\M-q\M^?XF\
@\0\0\0\0\0\0\0\0\0\0\0\0\0@\^C\0\0\^P\0\M-q\M^?XF@\0\0\0\0\0\0\0\0\0\0\0\0\0-\0\0\0\^P\0\0\0\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^A\^B\0\0\^P\0\
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0)\^B\0\0\^R\0\b\0\0000\0\0\0\0\0\0C\^A\0\0\0\0\0\0E\^C\0\0\
\^P\0\^U\0\M-@E@\0\0\0\0\0\0\0\0\0\0\0\0\0\M-0\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\
\0\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\08\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\
\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0003\^B\0\0\^R\0\b\0P1\0\0\0\0\0\0"\0\0\0\0\0\0\
\0\M^\\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M-7\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\M-S\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\09\^A\0\0\^P\0\0\0\0\0\0\0\0\0\0\
\0\0\0\0\0\0\0\0\0=\^B\0\0\^P\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0__cxa_finalize\0_thread_at\
fork\0_init\0__cxa_atexit\0_fini\0_Jv_RegisterClasses\0luaopen_util_pposix\0memcpy\0luaL_regist\
er\0lua_pushlstring\0lua_setfield\0__stack_smash_handler\0getppid\0setsid\0lua_pushb"
28868 lua51 RET read 4096/0x1000
28868 lua51 CALL mmap(0,0x405000,0<PROT_NONE>,0x2<MAP_PRIVATE>,8,0)
28868 lua51 RET mmap 13078572552192/0xbe517abd000
28868 lua51 CALL mmap(0xbe517abd000,0x4000,0x5<PROT_READ|PROT_EXEC>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0)
28868 lua51 RET mmap 13078572552192/0xbe517abd000
28868 lua51 CALL mmap(0xbe517bc0000,0x1000,0x1<PROT_READ>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x3000)
28868 lua51 RET mmap 13078573613056/0xbe517bc0000
28868 lua51 CALL mmap(0xbe517cc1000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x4000)
28868 lua51 RET mmap 13078574665728/0xbe517cc1000
28868 lua51 CALL mmap(0xbe517dc1000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x4000)
28868 lua51 RET mmap 13078575714304/0xbe517dc1000
28868 lua51 CALL mmap(0xbe517ec1000,0x1000,0x3<PROT_READ|PROT_WRITE>,0x12<MAP_PRIVATE|MAP_FIXED>,8,0x4000)
28868 lua51 RET mmap 13078576762880/0xbe517ec1000
28868 lua51 CALL getentropy(0xbe517cc1000,8)
28868 lua51 RET getentropy 0
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL mprotect(0xbe517dc1000,0x1000,0x1<PROT_READ>)
28868 lua51 RET mprotect 0
28868 lua51 CALL open(0xbe573b6c218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/sessionmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL close(8)
28868 lua51 RET close 0
28868 lua51 CALL open(0xbe573b6c218,0<O_RDONLY>)
28868 lua51 NAMI "/usr/local/lib/metronome/core/sessionmanager.lua"
28868 lua51 RET open 8
28868 lua51 CALL fstat(8,0x7f7ffffbc940)
28868 lua51 STRU struct stat { dev=7, ino=211742, mode=-r--r--r-- , nlink=1, uid=0<"root">, gid=7<"bin">, rdev=863428, atime=1443380744<"Sep 27 19:05:44 2015">.867544897, mtime=1443379469<"Sep 27 18:44:29 2015">, ctime=1443379474<"Sep 27 18:44:34 2015">.469543475, size=6466, blocks=16, blksize=16384, flags=0x0, gen=0x0 }
28868 lua51 RET fstat 0
28868 lua51 CALL mmap(0,0x4000,0x3<PROT_READ|PROT_WRITE>,0x1002<MAP_PRIVATE|MAP_ANON>,-1,0)
28868 lua51 RET mmap 13080508534784/0xbe58b109000
28868 lua51 CALL read(8,0xbe58b109000,0x4000)
28868 lua51 GIO fd 8 read 4096 bytes
"-- * Metronome IM *
--
-- This file is part of the Metronome XMPP server and is released under the
-- ISC License, please see the LICENSE file in this source package for more
-- information about copyright and licensing.
--
-- As per the sublicensing clause, this file is also MIT/X11 Licensed.
-- ** Copyright (c) 2008-2013, Kim Alvefur, Matthew Wild, Paul Aurich, Waqas Hussain
local tostring, setmetatable = tostring, setmetatable;
local pairs, next= pairs, next;
local hosts = hosts;
local full_sessions = full_sessions;
local bare_sessions = bare_sessions;
local logger = require "util.logger";
local log = logger.init("sessionmanager");
local config_get = require "core.configmanager".get;
local resourceprep = require "util.encodings".stringprep.resourceprep;
local nodeprep = require "util.encodings".stringprep.nodeprep;
local uuid_generate = require "util.uuid".generate;
local initialize_filters = require "util.filters".initialize;
local gettime = require "socket".gettime;
local getmetatable = getmetatable;
module "sessionmanager"
function new_session(conn)
local session = { conn = conn, type = "c2s_unauthed", conntime = gettime() };
local filter = initialize_filters(session);
local w = conn.write;
session.send = function (t)
if t.name then
t = filter("stanzas/out", t);
end
if t then
t = filter("bytes/out", tostring(t));
if t then
return w(conn, t);
end
end
end
session.ip = conn:ip();
local conn_name = "c2s"..tostring(conn):match("[a-f0-9]+$");
session.log = logger.init(conn_name);
return session;
end
local resting_session = { -- Resting, not dead
destroyed = true;
type = "c2s_destroyed";
close = function (session)
session.log("debug", "Attempt to close already-closed session");
end;
filter = function (type, data) return data; end;
}; resting_session.__index = resting_session;
function retire_session(session)
local log = session.log or log;
for k in pairs(session) do
if k ~= "log" and k ~= "id" and k ~= "ip" and k ~= "full_jid" and k ~= "usernam\
e" and k ~= "host" then
session[k] = nil;
end
end
function session.send(data) log("debug", "Discarding data sent to resting session: %s",\
tostring(data)); return false; end
function session.data(data) log("debug", "Discarding data received from resting session\
: %s", tostring(data)); end
return setmetatable(session, resting_session);
end
function destroy_session(session, err)
if session.destroyed then return; end
if not session.detached then
(session.log or log)("debug", "Destroying session for %s (%s@%s)%s", session.fu\
ll_jid or "(unknown)", session.username or "(unknown)", session.host or "(unknown)", err and ("\
: "..err) or "");
end
if session.full_jid then
local host_session = hosts[session.host];
if host_session.events.fire_event("pre-resource-unbind", {session=session, erro\
r=err}) then
return;
end
host_session.sessions[session.username].sessions[session.resource] = nil;
full_sessions[session.full_jid] = nil;
if not next(host_session.sessions[session.username].sessions) then
log("debug", "All resources of %s are now offline", session.username);
host_session.sessions[session.username] = nil;
bare_sessions[session.username..'@'..session.host] = nil;
end
host_session.events.fire_event("resource-unbind", {session=session, error=err})\
;
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment