Commit Graph

284 Commits

Author SHA1 Message Date
root
e716e7347b mime: Remove io dependency
This dependency was spuriously added, maybe for debug reasons,
as confirmed to me by Diego Nehab by mail.
Some systems based in Lua (e.g. Ginga) prohibit the use of
io module for security reasons, so this dependency makes
mime unusable; even worse this makes other modules, based
on mime, unusable too (e.g. html).
2012-04-11 13:45:59 -07:00
Sam Roberts
b1f7c349b5 Add support for serial devices as socket streams on unix. 2012-04-11 13:45:59 -07:00
Sam Roberts
f63d616bc0 Use poll by default for socket.connect(), instead of select().
Connect timeouts are implemented by waiting on the new socket
descriptor. When select() is used for this, it imposes an arbitrary
limit on the number of connections that can be made, usually 1024-3.
Using poll() removes this limit on the number of simultaneous TCP
connections can be made using luasocket. The previous default
implementation using select() is available by defining SOCKET_SELECT.
Note that using socket.select() always uses select(), so it isn't
possible to wait on an arbitrary number of connections at once.
2012-04-11 13:45:59 -07:00
Sam Roberts
21698c7665 Receive of zero for UDP is now possible.
Previously, receive of zero was considered to be "closed", but that
is only true for stream-based protocols, like TCP.
2012-04-11 13:45:59 -07:00
Sam Roberts
51acb54760 Stop returning an error after successful send of zero length UDP packets
A zero-length send is invalid with TCP, but well defined with UDP.
udp:send"" was returning (nil,"refused"), indicating that it failed when
the packet was actually sent. The test script reproduces the bug, and
includes a tcpdump of the zero length packet being sent.
2012-04-11 13:45:59 -07:00
Sam Roberts
1f704cfb89 Add all-unix and install-unix targets which include all modules supported on unix.
Besides standard socket and mime modules, this includes unix domain
socket support.
2012-04-11 13:45:59 -07:00
Florian Zeitz
f399ab25fc inet: Honor the strict aliasing rule 2012-04-11 13:33:35 -07:00
Liam Devine
e81a6ff623 Conditional creation of p_timeout instance 'tm' 2012-04-11 13:33:34 -07:00
Liam Devine
c8eed36788 This is a replacement for luaL_typerror , removed from Lua 5.2, which corrects the spelling.
NOTE:
There is one failing test in.the /test/testsrvr.lua and /test/testclnt.lua combination which was present in the repo I cloned from.
2012-04-11 13:33:34 -07:00
Liam Devine
e15ed19db6 Compiles with Lua 5.1.4 and Lua 5.2.0-beta, although the makefile needs sorting out to take maybe a version number and also the local paths need removing. 2012-04-11 13:33:34 -07:00
Paul Aurich
a984607f28 inet: return more useful errors 2012-04-11 13:33:34 -07:00
Paul Aurich
7893d9ece2 inet: refactor getpeername to allocate the struct on the stack 2012-04-11 13:33:34 -07:00
Florian Zeitz
8393c76180 Fix getpeername to work with IPv6 addresses 2012-04-11 13:33:34 -07:00
Florian Zeitz
594f826aa1 Add support for connecting to IPv6 hosts 2012-04-11 13:33:34 -07:00
Florian Zeitz
5874d47f55 dns.getaddrinfo: Return proper error messages 2012-04-11 13:33:34 -07:00
Florian Zeitz
f871a29f27 Add support for the IPV6_V6ONLY socket option defaulting to on. 2012-04-11 13:33:34 -07:00
Florian Zeitz
4df1618aab Adapt socket.bind() to create a IPv4 or IPv6 depending on the address given 2012-04-11 13:33:34 -07:00
Florian Zeitz
5065a2585c dns: Rename toip6() to getaddrinfo() since the old name is misleading 2012-04-11 13:33:34 -07:00
Florian Zeitz
923eef1929 Rework binding IPv6 sockets by harmonizing it with the IPv4 variant 2012-04-11 13:33:34 -07:00
Matthew Wild
5c33ef9997 url.escape/url.unescape: Fix to return *only* the encoded/decoded string (thanks moodydeath) 2012-04-11 13:33:34 -07:00
Paul Aurich
908ee2cce1 Fix two crashes and add -Wshadow so that this can't happen again.
The two crashes are the s/const char *// changes in tcp.c.  The rest
is cleanup so it will build.
2012-04-11 13:33:34 -07:00
Matthew Wild
dd83e0a849 #ifdef EAI_BADHINTS and EAI_PROTOCOL which don't seem available on my system (Linux/glibc 2.11) 2012-04-11 13:33:34 -07:00
Diego Nehab
2778766d67 Preliminary IPv6 support for v2.1 2012-04-11 13:25:11 -07:00
Diego Nehab
3a8ba90dfb Saving before big changes to support IPv6. 2011-05-25 20:57:22 +00:00
Diego Nehab
bce60be30f Decent makefiles! 2009-05-27 09:31:38 +00:00
Diego Nehab
d1a72435d5 New release. 2007-10-13 23:55:20 +00:00
Diego Nehab
e394956cde Global variable references. 2007-07-11 19:25:47 +00:00
Diego Nehab
3cd10f5ab6 Crashy bug fixed in recvraw.
Also fixed returns on closed socket.
2007-06-11 23:44:54 +00:00
Diego Nehab
be2e467929 Couple bug fixes. 2007-03-12 04:08:40 +00:00
Diego Nehab
75f51d5bc7 Almost ready to release 2.0.1 2006-04-20 04:16:23 +00:00
Diego Nehab
e8650bbf16 http.request was using old host header during redirects. 2006-04-13 07:00:24 +00:00
Diego Nehab
be57b387d2 Stupid bug was reusing the nreqt.headers.host during redirect. 2006-04-12 08:04:09 +00:00
Diego Nehab
11282d17c8 Almost done 2.0.1. 2006-04-03 04:45:42 +00:00
Diego Nehab
e9d477aba3 Final patches... 2006-04-03 03:10:56 +00:00
Diego Nehab
93806208c7 Updates for 2.0.1 on the way. 2006-03-19 21:22:21 +00:00
Diego Nehab
09ad4b299c Chose option 1) for http.lua.
Need to fix everything to make sure it works with the new compat-5.1
2006-03-14 09:04:15 +00:00
Diego Nehab
6248b915cb Fixing bugs... 2006-03-13 07:16:39 +00:00
Diego Nehab
d55a5826e8 Few tweaks in installation, some missing files, etc. 2005-11-22 08:33:29 +00:00
Diego Nehab
71f483496d Works in Finnish now! Who would say... 2005-11-21 07:04:18 +00:00
Diego Nehab
f20f4889bf Changed prefix of function names to match module names.
Removed some warnings and useless code.
2005-11-20 07:20:26 +00:00
Diego Nehab
f4dadea763 Before compiling on Windows. 2005-10-07 04:40:59 +00:00
Diego Nehab
64d7b02490 Returning a function. 2005-10-05 03:17:29 +00:00
Diego Nehab
72eceedc62 Bugs sent by David. 2005-10-05 03:16:17 +00:00
Diego Nehab
a32c6d9140 Almost ready to release. 2005-09-29 06:11:42 +00:00
Diego Nehab
773e35ced3 Compiled on Windows. Fixed a bunch of stuff. Almost ready to release.
Implemented a nice dispatcher! Non-blocking check-links and forward server
use the dispatcher.
2005-08-23 05:53:14 +00:00
Diego Nehab
0c3cdd5ef2 Final push for release... 2005-08-12 05:56:32 +00:00
Diego Nehab
37f7af4b9f Added check-links-nb.lua that check links in a non-blocking way. 2005-06-20 04:51:55 +00:00
Diego Nehab
4d455c6206 Using core.so instead of csocket.so and cmime.so. 2005-06-17 04:04:55 +00:00
Diego Nehab
65c35845c5 Working on the manual. 2005-06-14 04:29:23 +00:00
Diego Nehab
8b114f3bf4 Stupid bug in http.lua. 2005-06-12 22:02:21 +00:00
Diego Nehab
9596c7f95d Bug in forward.lua. Wasn't breaking from the loop. 2005-04-21 05:38:07 +00:00
Diego Nehab
434e8e014c Better connection handling. 2005-04-21 03:15:34 +00:00
Diego Nehab
2a00a5ad50 Trying to get non-blocking connect to work. 2005-04-20 18:57:47 +00:00
Diego Nehab
5e75dc0857 Wrong class... 2005-04-13 22:18:21 +00:00
Diego Nehab
6dc9c1096a Seems to be working on windows. 2005-03-11 02:21:27 +00:00
Diego Nehab
e57f9e9964 Apparently, non-blocking connect doesn't work on windows if you use 0
timeout in the select call...
2005-03-11 00:20:21 +00:00
Diego Nehab
63e3d7c5b0 Forward server works for multiple tunnels.
Http.lua has been patched to support non-blocking everything.
Makefile for linux has been updated with new names.
2005-03-10 02:15:04 +00:00
Diego Nehab
7350bad6f4 Just to check out in the office. 2005-02-27 18:30:32 +00:00
Diego Nehab
8d4e240f6a Forward server working on Mac OS X... 2005-02-08 10:01:01 +00:00
Diego Nehab
5d32848674 No coroutines needed. 2005-02-03 19:14:09 +00:00
Diego Nehab
c5fefd5529 Simplified use for sock:send. 2005-01-27 21:30:01 +00:00
Diego Nehab
2cd2a5d4a4 Stupid bug. 2005-01-22 22:38:43 +00:00
Diego Nehab
49445951a8 Few extra changes... 2005-01-02 22:51:33 +00:00
Diego Nehab
97b26e0b66 Almost ready to release beta3 2005-01-02 22:44:00 +00:00
Diego Nehab
a8254e94f8 Last line of modules was simplified. 2004-12-23 23:17:01 +00:00
Diego Nehab
2f970d782e Changes due to new compat-5.1 2004-12-23 22:32:12 +00:00
Diego Nehab
4e5ad6d5ee Bug in poll.
Debug garbage in compat-5.1.c.
Improvements to the user manual.
2004-11-29 06:55:47 +00:00
Diego Nehab
6abfbc742b Host is overridable. 2004-11-28 19:53:17 +00:00
Diego Nehab
534b0cedf7 Added new instalation section to the manual. 2004-11-28 08:17:16 +00:00
Diego Nehab
297b32e828 LTN12 bug removed. 2004-11-28 02:36:07 +00:00
Diego Nehab
05e8f24385 New LTN12 test procedures (still short, but growing)
LTN12 avoids coroutines.
2004-11-28 00:59:12 +00:00
Diego Nehab
50da56dbee Using poll instead of select by default. 2004-11-27 08:47:09 +00:00
Diego Nehab
7c97e8e40a Almost ready for beta3 2004-11-27 07:58:04 +00:00
Diego Nehab
bdc3e241bb Little bug in manual. 2004-11-17 04:55:57 +00:00
Diego Nehab
4964552718 My own ltn12.filter.chain is done.
Implemented part of DB's suggestion for ftp.
Mimetest.lua generates the test file for base64 instead of loading from disk.
2004-10-12 22:35:20 +00:00
Diego Nehab
396946b63a Using Wim's filter.chain... 2004-10-12 19:47:02 +00:00
Diego Nehab
1e5e8b5ce5 Fine tunned modules scheme.
Adjusted client modules.
Fixed proxy bug in http.
2004-10-11 06:18:57 +00:00
Diego Nehab
a04f15d1ca Using new module scheme. Still needs fine tuning. 2004-09-27 04:01:18 +00:00
Diego Nehab
e1d318f26c Select wasn't calling tm_markstart. 2004-09-21 18:59:19 +00:00
Diego Nehab
e4d4c828d9 nanosleep patch. 2004-08-04 20:51:57 +00:00
Diego Nehab
e27fa00e1c Gettime returns time in the Unix Epoch time both on windows and unix. 2004-08-04 20:42:02 +00:00
Diego Nehab
ecb8db95a4 Coroutine-free filter.chain. 2004-07-29 05:11:21 +00:00
Diego Nehab
911e8d7e7f Beta2 is out! Total timeout works on Windows. 2004-07-26 05:17:37 +00:00
Diego Nehab
cd994f306a Gonna try my luck on windows... 2004-07-26 04:03:55 +00:00
Diego Nehab
c8b402e004 Changed send function. 2004-07-18 22:56:14 +00:00
Diego Nehab
e4e2223cff Fixed a bunch of stuff. Added mike's patches. 2004-07-16 06:48:48 +00:00
Diego Nehab
9a79d500eb Still need to fix windows. :o/ 2004-07-15 06:11:53 +00:00
Diego Nehab
b2b7e9cef1 tiny bug in test. 2004-07-02 18:58:23 +00:00
Diego Nehab
b1a4ad2b19 Compiles and runs on windows. 2004-07-02 18:44:05 +00:00
Diego Nehab
63807d6476 Added getstats. 2004-07-01 06:09:29 +00:00
Diego Nehab
197aef23ce Compiles with g++. 2004-07-01 05:35:35 +00:00
Diego Nehab
a7d5362caf Fixed unix domain sockets. 2004-07-01 05:26:59 +00:00
Diego Nehab
596602f2ca Seems good. 2004-07-01 03:47:22 +00:00
Diego Nehab
7115c12fbc Moving on to beta2. 2004-07-01 03:32:09 +00:00
Diego Nehab
a193c087a4 Fixing send/recv and optimizing. 2004-06-23 01:08:54 +00:00
Diego Nehab
1ce47ebe39 Added support for unix stream sockets. 2004-06-22 16:12:53 +00:00
Diego Nehab
7195ab620b Few extra changes. 2004-06-22 04:49:57 +00:00
Diego Nehab
bce1cb30d8 More adjustments/bugfixes. 2004-06-21 06:07:58 +00:00
Diego Nehab
f7579db9e8 Fixing bugs... 2004-06-20 22:19:54 +00:00
Diego Nehab
5dc5c3ebe8 tiny bug... 2004-06-19 16:35:43 +00:00