mirror of
https://github.com/lunarmodules/luasocket.git
synced 2024-12-27 21:08:21 +01:00
135 lines
4.5 KiB
Plaintext
135 lines
4.5 KiB
Plaintext
This directory contains some sample programs using
|
|
LuaSocket. This code is not supported.
|
|
|
|
tftp.lua -- Trivial FTP client
|
|
|
|
This module implements file retrieval by the TFTP protocol.
|
|
Its main use was to test the UDP code, but since someone
|
|
found it usefull, I turned it into a module that is almost
|
|
official (no uploads, yet).
|
|
|
|
dict.lua -- Dict client
|
|
|
|
The dict.lua module started with a cool simple client
|
|
for the DICT protocol, written by Luiz Henrique Figueiredo.
|
|
This new version has been converted into a library, similar
|
|
to the HTTP and FTP libraries, that can be used from within
|
|
any luasocket application. Take a look on the source code
|
|
and you will be able to figure out how to use it.
|
|
|
|
lp.lua -- LPD client library
|
|
|
|
The lp.lua module implements the client part of the Line
|
|
Printer Daemon protocol, used to print files on Unix
|
|
machines. It is courtesy of David Burgess! See the source
|
|
code and the lpr.lua in the examples directory.
|
|
|
|
b64.lua
|
|
qp.lua
|
|
eol.lua
|
|
|
|
These are tiny programs that perform Base64,
|
|
Quoted-Printable and end-of-line marker conversions.
|
|
|
|
get.lua -- file retriever
|
|
|
|
This little program is a client that uses the FTP and
|
|
HTTP code to implement a command line file graber. Just
|
|
run
|
|
|
|
lua get.lua <remote-file> [<local-file>]
|
|
|
|
to download a remote file (either ftp:// or http://) to
|
|
the specified local file. The program also prints the
|
|
download throughput, elapsed time, bytes already downloaded
|
|
etc during download.
|
|
|
|
check-memory.lua -- checks memory consumption
|
|
|
|
This is just to see how much memory each module uses.
|
|
|
|
dispatch.lua -- coroutine based dispatcher
|
|
|
|
This is a first try at a coroutine based non-blocking
|
|
dispatcher for LuaSocket. Take a look at 'check-links.lua'
|
|
and at 'forward.lua' to see how to use it.
|
|
|
|
check-links.lua -- HTML link checker program
|
|
|
|
This little program scans a HTML file and checks for broken
|
|
links. It is similar to check-links.pl by Jamie Zawinski,
|
|
but uses all facilities of the LuaSocket library and the Lua
|
|
language. It has not been thoroughly tested, but it should
|
|
work. Just run
|
|
|
|
lua check-links.lua [-n] {<url>} > output
|
|
|
|
and open the result to see a list of broken links. Make sure
|
|
you check the '-n' switch. It runs in non-blocking mode,
|
|
using coroutines, and is MUCH faster!
|
|
|
|
forward.lua -- coroutine based forward server
|
|
|
|
This is a forward server that can accept several connections
|
|
and transfers simultaneously using non-blocking I/O and the
|
|
coroutine-based dispatcher. You can run, for example
|
|
|
|
lua forward.lua 8080:proxy.com:3128
|
|
|
|
to redirect all local conections to port 8080 to the host
|
|
'proxy.com' at port 3128.
|
|
|
|
unix.c and unix.h
|
|
|
|
This is an implementation of Unix local domain sockets and
|
|
demonstrates how to extend LuaSocket with a new type of
|
|
transport. It has been tested on Linux and on Mac OS X.
|
|
|
|
listener.lua -- socket to stdout
|
|
talker.lua -- stdin to socket
|
|
|
|
listener.lua and talker.lua are about the simplest
|
|
applications you can write using LuaSocket. Run
|
|
|
|
'lua listener.lua' and 'lua talker.lua'
|
|
|
|
on different terminals. Whatever you type on talk.lua will
|
|
be printed by listen.lua.
|
|
|
|
lpr.lua -- lpr client
|
|
|
|
This is a cool program written by David Burgess to print
|
|
files using the Line Printer Daemon protocol, widely used in
|
|
Unix machines. It uses the lp.lua implementation, in the
|
|
samples directory. Just run 'lua lpr.lua <filename>
|
|
queue=<printername>' and the file will print!
|
|
|
|
cddb.lua -- CDDB client
|
|
|
|
This is the first try on a simple CDDB client. Not really
|
|
useful, but one day it might become a module.
|
|
|
|
daytimeclnt.lua -- day time client
|
|
|
|
Just run the program to retrieve the hour and date in
|
|
readable form from any server running an UDP daytime daemon.
|
|
|
|
echoclnt.lua -- UDP echo client
|
|
echosrvr.lua -- UDP echo server
|
|
|
|
These are a UDP echo client/server pair. They work with
|
|
other client and servers as well.
|
|
|
|
tinyirc.lua -- irc like broadcast server
|
|
|
|
This is a simple server that waits simultaneously on two
|
|
server sockets for telnet connections. Everything it
|
|
receives from the telnet clients is broadcasted to every
|
|
other connected client. It tests the select function and
|
|
shows how to create a simple server whith LuaSocket. Just
|
|
run tinyirc.lua and then open as many telnet connections
|
|
as you want to ports 8080 and 8081.
|
|
|
|
Good luck,
|
|
Diego.
|