aboutsummaryrefslogtreecommitdiff
path: root/samples/README
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--samples/README90
1 files changed, 87 insertions, 3 deletions
diff --git a/samples/README b/samples/README
index e63a6f5..4ee06b6 100644
--- a/samples/README
+++ b/samples/README
@@ -1,11 +1,95 @@
1This directory contains some sample programs using 1This directory contains some sample programs using
2LuaSocket. This code is not supported. 2LuaSocket. This code is not supported.
3 3
4 tftp.lua -- Trivial FTP client
5
6This module implements file retrieval by the TFTP protocol.
7Its main use was to test the UDP code, but since someone
8found it usefull, I turned it into a module that is almost
9official (no uploads, yet).
10
11 dict.lua -- Dict client
12
13The dict.lua module started with a cool simple client
14for the DICT protocol, written by Luiz Henrique Figueiredo.
15This new version has been converted into a library, similar
16to the HTTP and FTP libraries, that can be used from within
17any luasocket application. Take a look on the source code
18and you will be able to figure out how to use it.
19
20 lp.lua -- LPD client library
21
22The lp.lua module implements the client part of the Line
23Printer Daemon protocol, used to print files on Unix
24machines. It is courtesy of David Burgess! See the source
25code and the lpr.lua in the examples directory.
26
27 b64.lua
28 qp.lua
29 eol.lua
30
31These are tiny programs that perform Base64,
32Quoted-Printable and end-of-line marker conversions.
33
34 get.lua -- file retriever
35
36This little program is a client that uses the FTP and
37HTTP code to implement a command line file graber. Just
38run
39
40 lua get.lua <remote-file> [<local-file>]
41
42to download a remote file (either ftp:// or http://) to
43the specified local file. The program also prints the
44download throughput, elapsed time, bytes already downloaded
45etc during download.
46
47 check-memory.lua -- checks memory consumption
48
49This is just to see how much memory each module uses.
50
51 dispatch.lua -- coroutine based dispatcher
52
53This is a first try at a coroutine based non-blocking
54dispatcher for LuaSocket. Take a look at 'check-links.lua'
55and at 'forward.lua' to see how to use it.
56
57 check-links.lua -- HTML link checker program
58
59This little program scans a HTML file and checks for broken
60links. It is similar to check-links.pl by Jamie Zawinski,
61but uses all facilities of the LuaSocket library and the Lua
62language. It has not been thoroughly tested, but it should
63work. Just run
64
65 lua check-links.lua [-n] {<url>} > output
66
67and open the result to see a list of broken links. Make sure
68you check the '-n' switch. It runs in non-blocking mode,
69using coroutines, and is MUCH faster!
70
71 forward.lua -- coroutine based forward server
72
73This is a forward server that can accept several connections
74and transfers simultaneously using non-blocking I/O and the
75coroutine-based dispatcher. You can run, for example
76
77 lua forward.lua 8080:proxy.com:3128
78
79to redirect all local conections to port 8080 to the host
80'proxy.com' at port 3128.
81
82 unix.c and unix.h
83
84This is an implementation of Unix local domain sockets and
85demonstrates how to extend LuaSocket with a new type of
86transport. It has been tested on Linux and on Mac OS X.
87
4 listener.lua -- socket to stdout 88 listener.lua -- socket to stdout
5 talker.lua -- stdin to socket 89 talker.lua -- stdin to socket
6 90
7listener.lua and talker.lua are about the simplest 91listener.lua and talker.lua are about the simplest
8applications you can write using LuaSocket. Run 92applications you can write using LuaSocket. Run
9 93
10 'lua listener.lua' and 'lua talker.lua' 94 'lua listener.lua' and 'lua talker.lua'
11 95
@@ -17,13 +101,13 @@ be printed by listen.lua.
17This is a cool program written by David Burgess to print 101This is a cool program written by David Burgess to print
18files using the Line Printer Daemon protocol, widely used in 102files using the Line Printer Daemon protocol, widely used in
19Unix machines. It uses the lp.lua implementation, in the 103Unix machines. It uses the lp.lua implementation, in the
20etc directory. Just run 'lua lpr.lua <filename> 104samples directory. Just run 'lua lpr.lua <filename>
21queue=<printername>' and the file will print! 105queue=<printername>' and the file will print!
22 106
23 cddb.lua -- CDDB client 107 cddb.lua -- CDDB client
24 108
25This is the first try on a simple CDDB client. Not really 109This is the first try on a simple CDDB client. Not really
26useful, but one day it might become a module. 110useful, but one day it might become a module.
27 111
28 daytimeclnt.lua -- day time client 112 daytimeclnt.lua -- day time client
29 113