mirror of
https://github.com/curl/curl.git
synced 2026-08-15 10:23:37 +03:00
connect: add support for new TCP Fast Open API on Linux
The new API added in Linux 4.11 only requires setting a socket option before connecting, without the whole sento() machinery. Notably, this makes it possible to use TFO with SSL connections on Linux as well, without the need to mess around with OpenSSL (or whatever other SSL library) internals. Closes #2056
This commit is contained in:
parent
9f691be3d4
commit
979b012eeb
4 changed files with 28 additions and 5 deletions
|
|
@ -22,6 +22,10 @@
|
|||
|
||||
#include "curl_setup.h"
|
||||
|
||||
#ifdef HAVE_LINUX_TCP_H
|
||||
#include <linux/tcp.h>
|
||||
#endif
|
||||
|
||||
#include <curl/curl.h>
|
||||
|
||||
#include "urldata.h"
|
||||
|
|
@ -360,7 +364,7 @@ ssize_t Curl_send_plain(struct connectdata *conn, int num,
|
|||
available. */
|
||||
pre_receive_plain(conn, num);
|
||||
|
||||
#ifdef MSG_FASTOPEN /* Linux */
|
||||
#if defined(MSG_FASTOPEN) && !defined(TCP_FASTOPEN_CONNECT) /* Linux */
|
||||
if(conn->bits.tcp_fastopen) {
|
||||
bytes_written = sendto(sockfd, mem, len, MSG_FASTOPEN,
|
||||
conn->ip_addr->ai_addr, conn->ip_addr->ai_addrlen);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue