Sam Roberts
0716cb868e
Bounds check the argument to FD_SET
...
Failing to check the FD_SET argument against FD_SETSIZE causes
undefined behaviour (segfaults, for example).
2012-04-11 13:54:01 -07:00
Sam Roberts
27a3964ff7
socket_strerror() sometimes maps errno, instead of its argument
...
Looks like a historical bug. Its err argument is an error number, but
if it isn't using a custom error message for it, it just calls
strerror() with the errno global, effectively ignoring its argument
and returning a semi-random string.
2012-04-11 13:54:01 -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
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
Diego Nehab
3cd10f5ab6
Crashy bug fixed in recvraw.
...
Also fixed returns on closed socket.
2007-06-11 23:44:54 +00:00
Diego Nehab
d55a5826e8
Few tweaks in installation, some missing files, etc.
2005-11-22 08:33:29 +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
a32c6d9140
Almost ready to release.
2005-09-29 06:11:42 +00:00
Diego Nehab
2a00a5ad50
Trying to get non-blocking connect to work.
2005-04-20 18:57:47 +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
8d4e240f6a
Forward server working on Mac OS X...
2005-02-08 10:01:01 +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
50da56dbee
Using poll instead of select by default.
2004-11-27 08:47:09 +00:00
Diego Nehab
cd994f306a
Gonna try my luck on windows...
2004-07-26 04:03:55 +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
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
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
5ca1049ab4
Fine tuning the "require" business.
2004-05-30 21:36:22 +00:00
Diego Nehab
c98dc99199
Bug feioso no UDP e possivelmente no TCP também.
2004-05-28 07:24:43 +00:00
Diego Nehab
0b2542d1a6
Worked on the manual.
...
Implemented stuffing (needs test)
Added cddb and qp examples.
2004-02-04 14:29:11 +00:00
Diego Nehab
0c9f420a35
New accept/connect code.
...
Better error checking.
Better tests.
__tostring implemented.
2004-01-24 00:18:19 +00:00
Diego Nehab
42e0e74487
Adjusted wsocket to match usocket. Adjusted windows projects.
2004-01-21 20:16:48 +00:00
Diego Nehab
195069cf5f
Fixed functions that return messages in ?socket.c.
...
Moved complexity of connect and accept there.
Created a new options.c module to take care of options.
Auxiliar.c is now cleaner.
2004-01-21 18:40:52 +00:00
Diego Nehab
46d8f4eabe
Changed to be able to compile with -ansi and -pedantic!
...
Have to try in MacOS X again...
2004-01-19 15:54:42 +00:00
Diego Nehab
51fcb5a7bd
Still needs testing, but "worked" in Linux.
2004-01-18 00:18:56 +00:00
Diego Nehab
c8d58798f0
Trying to get connect-with-timeout to work. Darwin works...
2004-01-18 00:04:20 +00:00
Diego Nehab
02ef4e7daa
Trying to get rid of EINTR problems...
2004-01-17 08:02:04 +00:00
Diego Nehab
076451c753
Tested in windows. Still needs more testing, but progress has been made.
2004-01-17 00:17:46 +00:00
Diego Nehab
89f3ecf782
http.lua updated. still needs proxy support.
...
code.lua updated. looks neat.
2004-01-16 07:06:31 +00:00
Diego Nehab
3febb302ad
Killed a few bugs found by Tomas.
2003-11-27 00:30:54 +00:00
Diego Nehab
c51d4acf1c
Adjusted a few inconsistencies with the manual.
2003-08-16 00:06:04 +00:00
Diego Nehab
71f6bb60bf
Finished implementation of LuaSocket 2.0 alpha on Linux.
...
Some testing still needed.
2003-06-26 18:47:49 +00:00
Diego Nehab
58bdb658aa
Select re-implemented in a nicer way.
...
Few changes in internal class and group registration.
Lua modules are compiled and built into library.
Dynamic library tested in Linux and Mac OS X.
2003-06-09 18:23:40 +00:00
Diego Nehab
0f6c8d50a9
Porting to LUA 5.0 final
2003-05-25 01:54:13 +00:00