mirror of
https://github.com/lunarmodules/luasocket.git
synced 2024-12-26 04:28:20 +01:00
5b8d7dec54
Update get.lua to use the new callbacks. The old "code" module is now the "mime" module. Updated all modules that depended on it. Updated url.lua to use the new namespace scheme, and moved the escape and unescape functions that used to be in the code.lua module to it, since these are specific to urls. Updated the callback entries in the manual.
117 lines
2.9 KiB
Plaintext
117 lines
2.9 KiB
Plaintext
|
||
comment the need of a content-length header in the post method...
|
||
|
||
comment the callback.lua module and the new mime module.
|
||
escape and unescape are missing!
|
||
|
||
add _tostring methods!
|
||
add callback module to manual
|
||
change stay to redirect in http.lua and in manual
|
||
add timeout to request table
|
||
|
||
change code to mime
|
||
change *all* modules to be namespace independent
|
||
|
||
write some utilities that use the code.lua module and put them
|
||
in etc, modify the README.etc file and makefile.dist (eol.lua is done)
|
||
|
||
check for interrupt compliance
|
||
add connect with timeout
|
||
add gethostname and use it in HTTP, SMTP etc, and add manual entry.
|
||
add thanks for cassino and david burgess
|
||
|
||
add local connect, and manual entry
|
||
|
||
add shutdown manual entry
|
||
|
||
only allocate in case of success
|
||
only call select if io fails...
|
||
Proxy support pro http
|
||
|
||
make REUSEADDR an option...
|
||
|
||
make sure modules know if their dependencies are there.
|
||
_
|
||
one thing i noticed in usocket.c is that it doesn't check for EINTR
|
||
after write(), sendto(), read(), recvfrom() etc. ? the usual trick is
|
||
to loop while you get EINTR:
|
||
|
||
do
|
||
ret = write(...);
|
||
while(ret < 0 && errno == EINTR)
|
||
|
||
|
||
Read about
|
||
|
||
250-ENHANCEDSTATUSCODES
|
||
250-PIPELINING
|
||
250-8BITMIME
|
||
250-SIZE
|
||
250-DSN
|
||
250-ETRN
|
||
250-AUTH GSSAPI
|
||
250-DELIVERBY
|
||
250 HELP
|
||
|
||
Change return of send and receive callbacks to allow for
|
||
new functions. "" signals end of transmission. Pass total
|
||
number of bytes in request table for HTTP. Callback has nothing
|
||
to do with it.
|
||
|
||
Make sure nobody can fuck up with the metatables...
|
||
|
||
Create a passive mode option for the FTP (good for firewall).
|
||
|
||
Use environments in module definitions or declare all local and create the
|
||
function with exported symbols later?
|
||
|
||
local P = {}
|
||
complex = P
|
||
setfenv(1, P)
|
||
|
||
Modules should return their namespace table in the end of the chunk.
|
||
|
||
Adjust dates in all files
|
||
|
||
Test the library on every system possible
|
||
|
||
Document socket.time and socket.sleep
|
||
|
||
Implement time critical stuff from code module in C.
|
||
Add service name translation.
|
||
|
||
Ajeitar o protocolo da luaopen_socket()... sei l<> qual <20>.
|
||
|
||
- testar os options!
|
||
- adicionar exemplos de expans<6E>o: pipe, local, named pipe
|
||
|
||
* add shutdown
|
||
* change send/recv to avoid using select
|
||
* O location do "redirect" pode ser relativo ao servidor atual (n<>o pode,
|
||
mas os servidores fazem merda...)
|
||
* Ajeitar para Lua 5.0
|
||
* Padronizar os retornos de funccao
|
||
* Separar as classes em arquivos
|
||
* Retorno de sendto em datagram sockets pode ser refused
|
||
* Fazer compilar com g++
|
||
|
||
- Thread-safe
|
||
- proteger gethostby*.* com um mutex GLOBAL!
|
||
- proteger ou atomizar o conjunto (timedout, receive), (timedout, send)
|
||
- inet_ntoa tamb<6D>m <20> uma merda.
|
||
- SSL
|
||
|
||
- checar opera<72><61>es em closed sockets
|
||
- checar teste de writable socket com select
|
||
|
||
|
||
- checar todos os metodos
|
||
- checar options em UDP
|
||
- checar todas as globais
|
||
- checar os metodos virtuais
|
||
- checar garbage collection
|
||
|
||
- unix 92 bytes maximo no endere<72>o, incluindo o zero
|
||
- unix 9216 maximo de datagram size
|
||
|