Commit Graph

478 Commits (master)

Author SHA1 Message Date
Caleb Maclennan 26b524e1d7
Revert "fix(usocket): Fix typo in return value function name"
This reverts commit 88c72acd77.

See discussion on #390
2022-08-31 00:34:39 +03:00
zhaozg 159890c366
style(usocket): Remove trailing space at EOL 2022-08-30 13:16:38 +03:00
zhaozg 88c72acd77
fix(usocket): Fix typo in return value function name 2022-08-30 13:15:53 +03:00
George Zhao 30ddf0eaea
style(core) Remove lingering c-style comment (#388) 2022-08-27 21:31:54 +03:00
rpatters1 5a7e3f0888
fix(build): Use gai_strerrorA not gai_strerror on Windows
* Explicitly call gai_strerrorA (for Windows builds), so that the code work correctly in 32bit or 64bit builds.

* Implement GAI_STRERROR macro to deal with Windows vs. Non-Windows compiles for 64-bit.

* make usocket.c consistent with other modules that call macro GAI_STRERROR

* Use different name not just different case for macro wrapping function

Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2022-07-27 09:51:35 +03:00
Kim Alvefur d1ad8160cb
feat(tcp): Add support for TCP Defer Accept
This makes it so that a listening socket does not become readable for
accept() until a connection has been fully established *and* started
sending something, thus the program doesn't have to wait for the first
data. This only makes sense for client-speaks-first protocols.

Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2022-07-27 09:40:18 +03:00
Kim Alvefur 0c7df119c2
feat(tcp): Add support for TCP Fast Open 2022-07-27 09:16:43 +03:00
Robert Scheck 1d61853ab8
chore: Update internal version references to match release (#370) 2022-03-28 11:53:32 +00:00
Thijs Schreijer d9c08114da chore; add Lua 5.4 to make files 2022-03-23 17:11:43 +01:00
Julian Squires 2a76cb906c http.lua: set transfer-encoding if source and no content-length
If a source is specified without a content-length header, LuaSocket
sends the data in the chunked transfer coding; however, it doesn't set
the transfer-encoding header.  While I recognize that the user can set
this manually, this is a gotcha that has caught me multiple times.

RFC7230, section 3.3.3
  (https://tools.ietf.org/html/rfc7230#section-3.3.3)
is clear about this; if neither content-length nor transfer-encoding
chunked are specified, the request message body length is zero.  While
some servers may ignore this, I have encountered several that follow
the RFC in this regard, most recently golang's net/http.
2022-03-22 09:38:14 +01:00
david 46ecb7e2dc src/ltn12.lua: remove duplicated codes 2022-03-21 11:07:26 +01:00
Caleb Maclennan a36818d3f3
Merge pull request #354 from lunarmodules/linter 2022-03-19 17:42:53 +03:00
Thijs Schreijer 601ad8d59f
refactor: Address issues raised by linter 2022-03-19 17:13:15 +03:00
Caleb Maclennan 6952262e6a
style: Use C-style comment syntax throughout (#309)
Co-authored-by: Denise Cullassnekuff <19711487+BlackCutpoint@users.noreply.github.com>
2022-03-18 17:54:11 +03:00
Paul Kulchenko d9cc531e3b
Fixe an issue with aux buffer init overwriting optional parameters in receive() (#334)
Fixes use on Lua >= 5.4.3
2022-03-18 12:23:09 +03:00
E. Westbrook 78a1657c7d src/makefile: remove -DLUASOCKET_INET_PTON as current mingw builds don't want it 2020-03-28 16:46:49 +00:00
E. Westbrook 21514304be wrap visibility pragmas in #ifndef _WIN32 2019-03-10 00:04:20 -07:00
E. Westbrook c8d0fdda54 src/makefile: serial += compat 2019-03-10 00:04:20 -07:00
E. Westbrook 8b2dcdcf7d usocket: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 4e363330a3 unixstream: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook d27b1a7945 unixdgram: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 5d07d9b227 unix: include reorg 2019-03-10 00:04:20 -07:00
E. Westbrook d71e6bc459 udp: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 42a1a732b7 timeout: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 86e1b3f45f tcp: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 1fa10673f7 socket.h: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook c8b9b40eda serial.c: pragma visibiliity 2019-03-10 00:04:20 -07:00
E. Westbrook c2245f35c5 select: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook ce6a08d57d options: pragma visibility 2019-03-10 00:04:20 -07:00
E. Westbrook 83648f8df2 mime: include reorg 2019-03-10 00:04:20 -07:00
E. Westbrook 2015290cb4 luasocket: include centralization 2019-03-10 00:03:04 -07:00
E. Westbrook ee30e4643d io: pragma visibility 2019-03-10 00:03:04 -07:00
E. Westbrook 611cdd19cc inet: pragma visibility 2019-03-10 00:03:04 -07:00
E. Westbrook 4bf3eb6db2 except: pragma visibility 2019-03-10 00:03:04 -07:00
E. Westbrook 133774cd3d compat: pragma visibility 2019-03-10 00:03:04 -07:00
E. Westbrook e3ac49efbd buffer: pragma visibility 2019-03-10 00:03:04 -07:00
E. Westbrook 98800e9129 auxiliar: pragma visibility 2019-03-10 00:03:04 -07:00
Diego Nehab 2af4872a40 Fix formatting. 2019-03-10 00:47:17 -03:00
Diego Nehab 03b72d8f7e Use static initialization
This helps with multi-threaded apps.
2019-03-09 23:23:48 -03:00
Diego Nehab 1e4255e2a9 Update Windows projects vor Visual Studio 2017 2019-03-01 20:46:37 -03:00
E. Westbrook 297f9d0277 bugfix: http.lua multischeme change that got dropped during PR conflict resolution 2019-02-28 18:40:30 -07:00
Mojca Miklavec d9afe3fd9c Only use EAI_OVERFLOW, AI_NUMERICSERV if defined
Some systems like Mac OS X 10.5 (and lower) do not have EAI_OVERFLOW and
AI_NUMERICSERV defined.

These variables are used to avoid a potentially slow name resolution
for the hostname (which will always be an ip address)
and for service name (which will always be an actual port number).

The code might be slower, but it should still work.

Closes: #242
2019-02-26 09:30:15 +01:00
E. Westbrook 2d8f0d9901 src/makefile: remove visibility and dllexport defines in favor of in-source labeling 2019-02-25 16:04:49 -07:00
E. Westbrook f8183bab87 usocket.c: use LUASOCKET_PRIVATE 2019-02-25 16:04:29 -07:00
E. Westbrook d7ffc2f4e6 usocket.c use LUASOCKET_PRIVATE 2019-02-25 16:04:16 -07:00
E. Westbrook fe437ee844 unixstream.c: use LUASOCKET_PRIVATE 2019-02-25 16:01:44 -07:00
E. Westbrook 678d558c5f unixdgram.c: use LUASOCKET_PRIVATE 2019-02-25 16:01:33 -07:00
E. Westbrook 30a0a6003b udp.c: use LUASOCKET_PRIVATE 2019-02-25 16:01:21 -07:00
E. Westbrook 87c2dee13e timeout.c: use LUASOCKET_PRIVATE 2019-02-25 16:01:04 -07:00
E. Westbrook 525d703e16 tcp.c: use LUASOCKET_PRIVATE 2019-02-25 16:00:51 -07:00