History log of /curl/lib/urldata.h (Results 201 – 225 of 1084)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 0a582757 16-Jan-2021 Erik Olsson

lib: save a bit of space with some structure packing

- Reorder some internal struct members so that less padding is used.

This is an attempt at saving a bit of space by packing some

lib: save a bit of space with some structure packing

- Reorder some internal struct members so that less padding is used.

This is an attempt at saving a bit of space by packing some structs
(using pahole to find the holes) where it might make sense to do
so without losing readability.

I.e., I tried to avoid separating fields that seem grouped
together (like the cwd... fields in struct ftp_conn for instance).
Also abstained from touching fields behind conditional macros as
that quickly can get complicated.

Closes https://github.com/curl/curl/pull/6483

show more ...


# 6246a1d8 19-Jan-2021 Daniel Stenberg

doh: allocate state struct on demand

... instead of having it static within the Curl_easy struct. This takes
away 1176 bytes (18%) from the Curl_easy struct that aren't used very
oft

doh: allocate state struct on demand

... instead of having it static within the Curl_easy struct. This takes
away 1176 bytes (18%) from the Curl_easy struct that aren't used very
often and instead makes the code allocate it when needed.

Closes #6492

show more ...


# d0688dcb 19-Jan-2021 Daniel Stenberg

socks: use the download buffer instead

The SOCKS code now uses the generic download buffer for temporary
storage during the connection procedure, instead of having its own
private 60

socks: use the download buffer instead

The SOCKS code now uses the generic download buffer for temporary
storage during the connection procedure, instead of having its own
private 600 byte buffer that adds to the connectdata struct size. This
works fine because this point the buffer is allocated but is not use for
download yet since the connection hasn't completed.

This reduces the connection struct size by 22% on a 64bit arch!

The SOCKS buffer needs to be at least 600 bytes, and the download buffer
is guaranteed to never be smaller than 1000 bytes.

Closes #6491

show more ...


# 942cf12c 19-Jan-2021 Daniel Stenberg

urldata: make magic be the first struct field

By making the `magic` identifier the same size and at the same place
within the structs (easy, multi, share), libcurl will be able to more

urldata: make magic be the first struct field

By making the `magic` identifier the same size and at the same place
within the structs (easy, multi, share), libcurl will be able to more
reliably detect and safely error out if an application passes in the
wrong handle to APIs. Easier to detect and less likely to cause crashes
if done.

Such mixups can't be detected at compile-time due to them being
typedefed void pointers - unless `CURL_STRICTER` is defined.

Closes #6484

show more ...


# 215db086 08-Jan-2021 Daniel Stenberg

lib: pass in 'struct Curl_easy *' to most functions

... in most cases instead of 'struct connectdata *' but in some cases in
addition to.

- We mostly operate on transfers and no

lib: pass in 'struct Curl_easy *' to most functions

... in most cases instead of 'struct connectdata *' but in some cases in
addition to.

- We mostly operate on transfers and not connections.

- We need the transfer handle to log, store data and more. Everything in
libcurl is driven by a transfer (the CURL * in the public API).

- This work clarifies and separates the transfers from the connections
better.

- We should avoid "conn->data". Since individual connections can be used
by many transfers when multiplexing, making sure that conn->data
points to the current and correct transfer at all times is difficult
and has been notoriously error-prone over the years. The goal is to
ultimately remove the conn->data pointer for this reason.

Closes #6425

show more ...


# 08e8455d 09-Jul-2020 Matthias Gatto

http: introduce AWS HTTP v4 Signature

It is a security process for HTTP.

It doesn't seems to be standard, but it is used by some cloud providers.

Aws:
https://docs.aws.

http: introduce AWS HTTP v4 Signature

It is a security process for HTTP.

It doesn't seems to be standard, but it is used by some cloud providers.

Aws:
https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
Outscale:
https://wiki.outscale.net/display/EN/Creating+a+Canonical+Request
GCP (I didn't test that this code work with GCP though):
https://cloud.google.com/storage/docs/access-control/signing-urls-manually

most of the code is in lib/http_v4_signature.c

Information require by the algorithm:
- The URL
- Current time
- some prefix that are append to some of the signature parameters.

The data extracted from the URL are: the URI, the region,
the host and the API type

example:
https://api.eu-west-2.outscale.com/api/latest/ReadNets
~~~ ~~~~~~~~ ~~~~~~~~~~~~~~~~~~~
^ ^ ^
/ \ URI
API type region

Small description of the algorithm:
- make canonical header using content type, the host, and the date
- hash the post data
- make canonical_request using custom request, the URI,
the get data, the canonical header, the signed header
and post data hash
- hash canonical_request
- make str_to_sign using one of the prefix pass in parameter,
the date, the credential scope and the canonical_request hash
- compute hmac from date, using secret key as key.
- compute hmac from region, using above hmac as key
- compute hmac from api_type, using above hmac as key
- compute hmac from request_type, using above hmac as key
- compute hmac from str_to_sign using above hmac as key
- create Authorization header using above hmac, prefix pass in parameter,
the date, and above hash

Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>

Closes #5703

show more ...


# abb68c19 18-Dec-2020 Daniel Stenberg

build: repair http disabled but mqtt enabled build

... as the mqtt code reuses the "method" originally used for HTTP.

Closes #6344


# 58974d25 14-Dec-2020 Daniel Stenberg

lib: introduce c-hyper for using Hyper

... as an alternative HTTP backend within libcurl.


# a5bc2722 15-Dec-2020 Daniel Stenberg

http: show the request as headers even when split-sending

When the initial request isn't possible to send in its entirety, the
remainder of request would be delivered to the debug callba

http: show the request as headers even when split-sending

When the initial request isn't possible to send in its entirety, the
remainder of request would be delivered to the debug callback as data
and would wrongly be counted internally as body-bytes sent.

Extended test 1295 to verify.

Closes #6328

show more ...


# 6d338a87 07-Dec-2020 Jacob Hoffman-Andrews

urldata: restore comment on ssl_connect_data.use

This comment was originally on the `use` field, but was separated from
its field in 62a2534.

Closes https://github.com/curl/curl

urldata: restore comment on ssl_connect_data.use

This comment was originally on the `use` field, but was separated from
its field in 62a2534.

Closes https://github.com/curl/curl/pull/6287

show more ...


# 37cdc2a0 23-Nov-2020 Daniel Stenberg

asyn: use 'struct thread_data *' instead of 'void *'

To reduce use of types that can't be checked at compile time. Also
removes several typecasts.

... and rename the struct fiel

asyn: use 'struct thread_data *' instead of 'void *'

To reduce use of types that can't be checked at compile time. Also
removes several typecasts.

... and rename the struct field from 'os_specific' to 'tdata'.

Closes #6239
Reviewed-by: Jay Satiro

show more ...


# a95a6ce6 23-Nov-2020 Daniel Stenberg

urldata: remove 'void *protop' and create the union 'p'

... to avoid the use of 'void *' for the protocol specific structs done
per transfer.

Closes #6238


# c49d205a 09-Nov-2020 Daniel Stenberg

http_proxy: use enum with state names for 'keepon'

To make the code clearer, change the 'keepon' from an int to an enum
with better state names.

Reported-by: Niranjan Hasabnis

http_proxy: use enum with state names for 'keepon'

To make the code clearer, change the 'keepon' from an int to an enum
with better state names.

Reported-by: Niranjan Hasabnis
Bug: https://curl.se/mail/lib-2020-11/0026.html
Closes #6193

show more ...


# 4d2f8006 04-Nov-2020 Daniel Stenberg

curl.se: new home

Closes #6172


# 2cfc4ed9 02-Nov-2020 Daniel Stenberg

hsts: add read/write callbacks

- read/write callback options
- man pages for the 4 new setopts
- test 1915 verifies the callbacks

Closes #5896


# 7385610d 02-Nov-2020 Daniel Stenberg

hsts: add support for Strict-Transport-Security

- enable in the build (configure)
- header parsing
- host name lookup
- unit tests for the above
- CI build
- CURL_VERSION

hsts: add support for Strict-Transport-Security

- enable in the build (configure)
- header parsing
- host name lookup
- unit tests for the above
- CI build
- CURL_VERSION_HSTS bit
- curl_version_info support
- curl -V output
- curl-config --features
- CURLOPT_HSTS_CTRL
- man page for CURLOPT_HSTS_CTRL
- curl --hsts (sets CURLOPT_HSTS_CTRL and works with --libcurl)
- man page for --hsts
- save cache to disk
- load cache from disk
- CURLOPT_HSTS
- man page for CURLOPT_HSTS
- added docs/HSTS.md
- fixed --version docs
- adjusted curl_easy_duphandle

Closes #5896

show more ...


# 96450a1a 25-Oct-2020 Daniel Stenberg

alt-svc: enable by default

Remove CURLALTSVC_IMMEDIATELY, which was never implemented/supported.

alt-svc support in curl is no longer considered experimental

Closes #5868


# 1397a7de 21-Sep-2020 Daniel Stenberg

ftp: separate FTPS from FTP over "HTTPS proxy"

When using HTTPS proxy, SSL is used but not in the view of the FTP
protocol handler itself so separate the connection's use of SSL from the

ftp: separate FTPS from FTP over "HTTPS proxy"

When using HTTPS proxy, SSL is used but not in the view of the FTP
protocol handler itself so separate the connection's use of SSL from the
FTP control connection's sue.

Reported-by: Mingtao Yang
Fixes #5523
Closes #6006

show more ...


# 3d64031f 21-Sep-2020 Daniel Stenberg

symbian: drop support

The OS is deprecated. I see no traces of anyone having actually built
curl for Symbian after 2012.

The public headers are unmodified.

Closes #5989


# 6434a739 21-Sep-2020 Daniel Stenberg

Curl_handler: add 'family' to each protocol

Makes get_protocol_family() faster and it moves the knowledge about the
"families" to each protocol handler, where it belongs.

Closes

Curl_handler: add 'family' to each protocol

Makes get_protocol_family() faster and it moves the knowledge about the
"families" to each protocol handler, where it belongs.

Closes #5986

show more ...


Revision tags: curl-7_71_1
# 182ff2d6 29-Jun-2020 Gergely Nagy

vtls: deduplicate client certificates in ssl_config_data

Closes #5629


# 3acb2abd 02-Sep-2020 Daniel Stenberg

vtls: make it 'struct Curl_ssl_session'

Use uppercase C for internal symbols.

Closes #5906


# 9e90ff08 02-Sep-2020 Daniel Stenberg

hash: make it 'struct Curl_hash'

As internal global names should use captical C.

Closes #5906


# 9b3f888a 02-Sep-2020 Daniel Stenberg

llist: make it "struct Curl_llist"

As internal global names should use captical C.

Closes #5906


# ede125b7 29-Aug-2020 Michael Baentsch <57787676+baentsch@users.noreply.github.com>

tls: add CURLOPT_SSL_EC_CURVES and --curves

Closes #5892


12345678910>>...44