diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 99 |
1 files changed, 39 insertions, 60 deletions
@@ -1,48 +1,37 @@ | |||
1 | 1 | manual | |
2 | comment the need of a content-length header in the post method... | 2 | add shutdown |
3 | 3 | add gethostname | |
4 | comment the callback.lua module and the new mime module. | 4 | the need of a content-length header in the post method... |
5 | escape and unescape are missing! | 5 | notice the change in callback conventions |
6 | 6 | the callback.lua module and the new mime module. | |
7 | escape and unescape in url, not in code! | ||
8 | add timeout and proxy to request table | ||
9 | change stay to redirect | ||
10 | socket.time and socket.sleep | ||
11 | connect with timeout | ||
12 | local connect | ||
13 | add thanks to 'carlos cassino' and 'david burgess' | ||
14 | add new ip- options and reuseaddr option | ||
15 | |||
16 | tests | ||
17 | checar todos os metodos | ||
18 | checar todas as globais | ||
19 | checar garbage collection | ||
20 | check for interrupts | ||
21 | |||
22 | new option.c module to put all options (TCP and UDP share...)? | ||
23 | testar os options! | ||
7 | add _tostring methods! | 24 | add _tostring methods! |
8 | add callback module to manual | 25 | change all modules to use the new namespace scheme |
9 | change stay to redirect in http.lua and in manual | ||
10 | add timeout to request table | ||
11 | |||
12 | change code to mime | ||
13 | change *all* modules to be namespace independent | ||
14 | 26 | ||
15 | write some utilities that use the code.lua module and put them | 27 | write some utilities that use the code.lua module and put them |
16 | in etc, modify the README.etc file and makefile.dist (eol.lua is done) | 28 | in etc, modify the README.etc file and makefile.dist (eol.lua is done) |
17 | 29 | ||
18 | check for interrupt compliance | 30 | use gethostname it in SMTP |
19 | add connect with timeout | ||
20 | add gethostname and use it in HTTP, SMTP etc, and add manual entry. | ||
21 | add thanks for cassino and david burgess | ||
22 | |||
23 | add local connect, and manual entry | ||
24 | |||
25 | add shutdown manual entry | ||
26 | |||
27 | only allocate in case of success | ||
28 | only call select if io fails... | ||
29 | Proxy support pro http | ||
30 | |||
31 | make REUSEADDR an option... | ||
32 | 31 | ||
33 | make sure modules know if their dependencies are there. | 32 | make sure modules know if their dependencies are there. |
34 | _ | ||
35 | one thing i noticed in usocket.c is that it doesn't check for EINTR | ||
36 | after write(), sendto(), read(), recvfrom() etc. ? the usual trick is | ||
37 | to loop while you get EINTR: | ||
38 | |||
39 | do | ||
40 | ret = write(...); | ||
41 | while(ret < 0 && errno == EINTR) | ||
42 | |||
43 | 33 | ||
44 | Read about | 34 | Read about |
45 | |||
46 | 250-ENHANCEDSTATUSCODES | 35 | 250-ENHANCEDSTATUSCODES |
47 | 250-PIPELINING | 36 | 250-PIPELINING |
48 | 250-8BITMIME | 37 | 250-8BITMIME |
@@ -62,29 +51,30 @@ Make sure nobody can fuck up with the metatables... | |||
62 | 51 | ||
63 | Create a passive mode option for the FTP (good for firewall). | 52 | Create a passive mode option for the FTP (good for firewall). |
64 | 53 | ||
65 | Use environments in module definitions or declare all local and create the | ||
66 | function with exported symbols later? | ||
67 | |||
68 | local P = {} | ||
69 | complex = P | ||
70 | setfenv(1, P) | ||
71 | |||
72 | Modules should return their namespace table in the end of the chunk. | 54 | Modules should return their namespace table in the end of the chunk. |
73 | 55 | ||
74 | Adjust dates in all files | 56 | Adjust dates in all files |
75 | 57 | ||
76 | Test the library on every system possible | 58 | Test the library on every system possible |
77 | 59 | ||
78 | Document socket.time and socket.sleep | ||
79 | |||
80 | Implement time critical stuff from code module in C. | ||
81 | Add service name translation. | 60 | Add service name translation. |
82 | |||
83 | Ajeitar o protocolo da luaopen_socket()... sei lá qual é. | 61 | Ajeitar o protocolo da luaopen_socket()... sei lá qual é. |
84 | 62 | ||
85 | - testar os options! | 63 | |
86 | - adicionar exemplos de expansão: pipe, local, named pipe | 64 | - adicionar exemplos de expansão: pipe, local, named pipe |
87 | 65 | ||
66 | * should be interrupt-safe | ||
67 | * notice the change in callback conventions | ||
68 | * new mime module replacing old code module (faster, more functionality) | ||
69 | * new socket options (many) | ||
70 | * only allocate in case of success | ||
71 | * optimize for success (only call select if fails) | ||
72 | * add proxy support to http | ||
73 | * add gethostname | ||
74 | * local connect | ||
75 | * connect with timeout | ||
76 | * change code to mime | ||
77 | * change stay to redirect | ||
88 | * add shutdown | 78 | * add shutdown |
89 | * change send/recv to avoid using select | 79 | * change send/recv to avoid using select |
90 | * O location do "redirect" pode ser relativo ao servidor atual (não pode, | 80 | * O location do "redirect" pode ser relativo ao servidor atual (não pode, |
@@ -93,24 +83,13 @@ Ajeitar o protocolo da luaopen_socket()... sei lá qual é. | |||
93 | * Padronizar os retornos de funccao | 83 | * Padronizar os retornos de funccao |
94 | * Separar as classes em arquivos | 84 | * Separar as classes em arquivos |
95 | * Retorno de sendto em datagram sockets pode ser refused | 85 | * Retorno de sendto em datagram sockets pode ser refused |
96 | * Fazer compilar com g++ | ||
97 | 86 | ||
87 | - Fazer compilar com g++ | ||
98 | - Thread-safe | 88 | - Thread-safe |
99 | - proteger gethostby*.* com um mutex GLOBAL! | 89 | - proteger gethostby*.* com um mutex GLOBAL! |
100 | - proteger ou atomizar o conjunto (timedout, receive), (timedout, send) | 90 | - proteger ou atomizar o conjunto (timedout, receive), (timedout, send) |
101 | - inet_ntoa também é uma merda. | 91 | - inet_ntoa também é uma merda. |
102 | - SSL | 92 | - SSL |
103 | 93 | ||
104 | - checar operações em closed sockets | ||
105 | - checar teste de writable socket com select | ||
106 | |||
107 | |||
108 | - checar todos os metodos | ||
109 | - checar options em UDP | ||
110 | - checar todas as globais | ||
111 | - checar os metodos virtuais | ||
112 | - checar garbage collection | ||
113 | |||
114 | - unix 92 bytes maximo no endereço, incluindo o zero | 94 | - unix 92 bytes maximo no endereço, incluindo o zero |
115 | - unix 9216 maximo de datagram size | 95 | - unix 9216 maximo de datagram size |
116 | |||