Mercurial > prosody-hg
comparison plugins/mod_console.lua @ 3029:0c7beabfed5b
Merge 0.7->trunk
| author | Waqas Hussain <waqas20@gmail.com> |
|---|---|
| date | Fri, 07 May 2010 16:21:04 +0500 |
| parents | e095d2a98936 |
| children | a6f89c72d305 |
comparison
equal
deleted
inserted
replaced
| 3022:948d511f479c | 3029:0c7beabfed5b |
|---|---|
| 56 function console_listener.onconnect(conn) | 56 function console_listener.onconnect(conn) |
| 57 -- Handle new connection | 57 -- Handle new connection |
| 58 local session = console:new_session(conn); | 58 local session = console:new_session(conn); |
| 59 sessions[conn] = session; | 59 sessions[conn] = session; |
| 60 printbanner(session); | 60 printbanner(session); |
| 61 session.send(string.char(0)); | |
| 61 end | 62 end |
| 62 | 63 |
| 63 function console_listener.onincoming(conn, data) | 64 function console_listener.onincoming(conn, data) |
| 64 local session = sessions[conn]; | 65 local session = sessions[conn]; |
| 65 | 66 |
| 82 end | 83 end |
| 83 end | 84 end |
| 84 | 85 |
| 85 session.env._ = data; | 86 session.env._ = data; |
| 86 | 87 |
| 87 local chunk, err = loadstring("return "..data); | 88 local chunkname = "=console"; |
| 89 local chunk, err = loadstring("return "..data, chunkname); | |
| 88 if not chunk then | 90 if not chunk then |
| 89 chunk, err = loadstring(data); | 91 chunk, err = loadstring(data, chunkname); |
| 90 if not chunk then | 92 if not chunk then |
| 91 err = err:gsub("^%[string .-%]:%d+: ", ""); | 93 err = err:gsub("^%[string .-%]:%d+: ", ""); |
| 92 err = err:gsub("^:%d+: ", ""); | 94 err = err:gsub("^:%d+: ", ""); |
| 93 err = err:gsub("'<eof>'", "the end of the line"); | 95 err = err:gsub("'<eof>'", "the end of the line"); |
| 94 session.print("Sorry, I couldn't understand that... "..err); | 96 session.print("Sorry, I couldn't understand that... "..err); |
