mirror of
https://github.com/curl/curl.git
synced 2026-08-24 21:53:37 +03:00
lib: separate scheme info from protocol implementation
This allows builds know about all schemes - but only have the protocol implementations for those actually built-in. It further allows multiple protocols to reuse the same protocol setup and functions for both TLS and non-TLS implementations instead of needing two (or more) structs. The scheme information is now in 'struct Curl_scheme' and all the function pointers for each scheme/protocol implementation are in struct Curl_protocol. The URL API now always work with all known protocols. Closes #20351
This commit is contained in:
parent
63baa10951
commit
8edc0338f3
59 changed files with 831 additions and 1040 deletions
|
|
@ -993,7 +993,7 @@ static void set_local_ip(struct Curl_cfilter *cf,
|
|||
|
||||
#ifdef HAVE_GETSOCKNAME
|
||||
if((ctx->sock != CURL_SOCKET_BAD) &&
|
||||
!(data->conn->handler->protocol & CURLPROTO_TFTP)) {
|
||||
!(data->conn->scheme->protocol & CURLPROTO_TFTP)) {
|
||||
/* TFTP does not connect, so it cannot get the IP like this */
|
||||
|
||||
char buffer[STRERROR_LEN];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue